@ledgerhq/device-management-kit 0.0.0-rnble-transport-20250324094321 → 0.0.0-rnble-transport-20250331135728

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (270) hide show
  1. package/README.md +21 -5
  2. package/lib/cjs/src/api/DeviceManagementKit.js.map +2 -2
  3. package/lib/cjs/src/api/command/use-case/SendCommandUseCase.test.js +1 -1
  4. package/lib/cjs/src/api/command/use-case/SendCommandUseCase.test.js.map +3 -3
  5. package/lib/cjs/src/api/device-action/__test-utils__/setupTestMachine.js +1 -1
  6. package/lib/cjs/src/api/device-action/__test-utils__/setupTestMachine.js.map +3 -3
  7. package/lib/cjs/src/api/device-session/use-case/DisableDeviceSessionRefresher.test.js +1 -1
  8. package/lib/cjs/src/api/device-session/use-case/DisableDeviceSessionRefresher.test.js.map +3 -3
  9. package/lib/cjs/src/api/index.js +1 -1
  10. package/lib/cjs/src/api/index.js.map +3 -3
  11. package/lib/cjs/src/api/logger-subscriber/service/WebLogsExporterLogger.test.js +1 -1
  12. package/lib/cjs/src/api/logger-subscriber/service/WebLogsExporterLogger.test.js.map +3 -3
  13. package/lib/cjs/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.js.map +2 -2
  14. package/lib/cjs/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.test.js +1 -1
  15. package/lib/cjs/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.test.js.map +3 -3
  16. package/lib/cjs/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.js +2 -0
  17. package/lib/cjs/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.js.map +7 -0
  18. package/lib/cjs/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.test.js +2 -0
  19. package/lib/cjs/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.test.js.map +7 -0
  20. package/lib/cjs/src/api/secure-channel/device-action/InstallApp/types.js +2 -0
  21. package/lib/cjs/src/api/secure-channel/device-action/InstallApp/types.js.map +7 -0
  22. package/lib/cjs/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.js.map +2 -2
  23. package/lib/cjs/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.test.js +1 -1
  24. package/lib/cjs/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.test.js.map +3 -3
  25. package/lib/cjs/src/api/secure-channel/device-action/ListInstalledApps/types.js +1 -1
  26. package/lib/cjs/src/api/secure-channel/device-action/ListInstalledApps/types.js.map +2 -2
  27. package/lib/cjs/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.js +2 -0
  28. package/lib/cjs/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.js.map +7 -0
  29. package/lib/cjs/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.test.js +2 -0
  30. package/lib/cjs/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.test.js.map +7 -0
  31. package/lib/cjs/src/api/secure-channel/device-action/UninstallApp/types.js +2 -0
  32. package/lib/cjs/src/api/secure-channel/device-action/UninstallApp/types.js.map +7 -0
  33. package/lib/cjs/src/api/secure-channel/utils.test.js +1 -1
  34. package/lib/cjs/src/api/secure-channel/utils.test.js.map +2 -2
  35. package/lib/cjs/src/api/transport/model/TransportConnectedDevice.test.js +1 -1
  36. package/lib/cjs/src/api/transport/model/TransportConnectedDevice.test.js.map +3 -3
  37. package/lib/cjs/src/api/types.js +1 -1
  38. package/lib/cjs/src/api/types.js.map +1 -1
  39. package/lib/cjs/src/internal/device-session/data/DeviceSessionRefresherConst.js +1 -1
  40. package/lib/cjs/src/internal/device-session/data/DeviceSessionRefresherConst.js.map +3 -3
  41. package/lib/cjs/src/internal/device-session/model/DevicePinger.js +2 -0
  42. package/lib/cjs/src/internal/device-session/model/DevicePinger.js.map +7 -0
  43. package/lib/cjs/src/internal/device-session/model/DevicePinger.test.js +2 -0
  44. package/lib/cjs/src/internal/device-session/model/DevicePinger.test.js.map +7 -0
  45. package/lib/cjs/src/internal/device-session/model/DeviceSession.js +1 -1
  46. package/lib/cjs/src/internal/device-session/model/DeviceSession.js.map +3 -3
  47. package/lib/cjs/src/internal/device-session/model/DeviceSession.stub.js +1 -1
  48. package/lib/cjs/src/internal/device-session/model/DeviceSession.stub.js.map +3 -3
  49. package/lib/cjs/src/internal/device-session/model/DeviceSessionEventDispatcher.js +2 -0
  50. package/lib/cjs/src/internal/device-session/model/DeviceSessionEventDispatcher.js.map +7 -0
  51. package/lib/cjs/src/internal/device-session/model/DeviceSessionEventDispatcher.test.js +2 -0
  52. package/lib/cjs/src/internal/device-session/model/DeviceSessionEventDispatcher.test.js.map +7 -0
  53. package/lib/cjs/src/internal/device-session/model/DeviceSessionRefresher.js +1 -1
  54. package/lib/cjs/src/internal/device-session/model/DeviceSessionRefresher.js.map +3 -3
  55. package/lib/cjs/src/internal/device-session/model/DeviceSessionRefresher.test.js +1 -1
  56. package/lib/cjs/src/internal/device-session/model/DeviceSessionRefresher.test.js.map +3 -3
  57. package/lib/cjs/src/internal/device-session/model/DeviceSessionStateHandler.js +2 -0
  58. package/lib/cjs/src/internal/device-session/model/DeviceSessionStateHandler.js.map +7 -0
  59. package/lib/cjs/src/internal/device-session/model/DeviceSessionStateHandler.test.js +2 -0
  60. package/lib/cjs/src/internal/device-session/model/DeviceSessionStateHandler.test.js.map +7 -0
  61. package/lib/cjs/src/internal/device-session/service/DefaultDeviceSessionService.test.js +1 -1
  62. package/lib/cjs/src/internal/device-session/service/DefaultDeviceSessionService.test.js.map +3 -3
  63. package/lib/cjs/src/internal/device-session/service/MutexService.js +2 -0
  64. package/lib/cjs/src/internal/device-session/service/MutexService.js.map +7 -0
  65. package/lib/cjs/src/internal/device-session/service/MutexService.test.js +2 -0
  66. package/lib/cjs/src/internal/device-session/service/MutexService.test.js.map +7 -0
  67. package/lib/cjs/src/internal/device-session/service/RefresherService.js +1 -1
  68. package/lib/cjs/src/internal/device-session/service/RefresherService.js.map +3 -3
  69. package/lib/cjs/src/internal/device-session/service/RefresherService.test.js +1 -1
  70. package/lib/cjs/src/internal/device-session/service/RefresherService.test.js.map +3 -3
  71. package/lib/cjs/src/internal/device-session/use-case/CloseSessionsUseCase.test.js +1 -1
  72. package/lib/cjs/src/internal/device-session/use-case/CloseSessionsUseCase.test.js.map +3 -3
  73. package/lib/cjs/src/internal/device-session/use-case/GetDeviceSessionStateUseCase.test.js +1 -1
  74. package/lib/cjs/src/internal/device-session/use-case/GetDeviceSessionStateUseCase.test.js.map +3 -3
  75. package/lib/cjs/src/internal/device-session/utils/deviceSessionUtils.js +2 -0
  76. package/lib/cjs/src/internal/device-session/utils/deviceSessionUtils.js.map +7 -0
  77. package/lib/cjs/src/internal/discovery/use-case/ConnectUseCase.js +1 -1
  78. package/lib/cjs/src/internal/discovery/use-case/ConnectUseCase.js.map +3 -3
  79. package/lib/cjs/src/internal/discovery/use-case/DisconnectUseCase.test.js +1 -1
  80. package/lib/cjs/src/internal/discovery/use-case/DisconnectUseCase.test.js.map +3 -3
  81. package/lib/cjs/src/internal/discovery/use-case/GetConnectedDeviceUseCase.test.js +1 -1
  82. package/lib/cjs/src/internal/discovery/use-case/GetConnectedDeviceUseCase.test.js.map +3 -3
  83. package/lib/cjs/src/internal/discovery/use-case/ListConnectedDevicesUseCase.test.js +1 -1
  84. package/lib/cjs/src/internal/discovery/use-case/ListConnectedDevicesUseCase.test.js.map +3 -3
  85. package/lib/cjs/src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.js +1 -1
  86. package/lib/cjs/src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.js.map +3 -3
  87. package/lib/cjs/src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.test.js +1 -1
  88. package/lib/cjs/src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.test.js.map +3 -3
  89. package/lib/cjs/src/internal/manager-api/data/AxiosManagerApiDataSource.test.js +1 -1
  90. package/lib/cjs/src/internal/manager-api/data/AxiosManagerApiDataSource.test.js.map +2 -2
  91. package/lib/cjs/src/internal/secure-channel/data/DefaultSecureChannelDataSource.test.js +1 -1
  92. package/lib/cjs/src/internal/secure-channel/data/DefaultSecureChannelDataSource.test.js.map +2 -2
  93. package/lib/cjs/src/internal/secure-channel/model/Params.js +1 -1
  94. package/lib/cjs/src/internal/secure-channel/model/Params.js.map +1 -1
  95. package/lib/cjs/src/internal/secure-channel/service/DefaultSecureChannelService.js +1 -1
  96. package/lib/cjs/src/internal/secure-channel/service/DefaultSecureChannelService.js.map +3 -3
  97. package/lib/cjs/src/internal/secure-channel/service/DefaultSecureChannelService.test.js +1 -1
  98. package/lib/cjs/src/internal/secure-channel/service/DefaultSecureChannelService.test.js.map +3 -3
  99. package/lib/cjs/src/internal/secure-channel/service/SecureChannelService.js +1 -1
  100. package/lib/cjs/src/internal/secure-channel/service/SecureChannelService.js.map +1 -1
  101. package/lib/cjs/src/internal/send/use-case/SendApduUseCase.js +1 -1
  102. package/lib/cjs/src/internal/send/use-case/SendApduUseCase.js.map +3 -3
  103. package/lib/cjs/src/internal/send/use-case/SendApduUseCase.test.js +1 -1
  104. package/lib/cjs/src/internal/send/use-case/SendApduUseCase.test.js.map +3 -3
  105. package/lib/esm/src/api/DeviceManagementKit.js.map +2 -2
  106. package/lib/esm/src/api/command/use-case/SendCommandUseCase.test.js +1 -1
  107. package/lib/esm/src/api/command/use-case/SendCommandUseCase.test.js.map +3 -3
  108. package/lib/esm/src/api/device-action/__test-utils__/setupTestMachine.js +1 -1
  109. package/lib/esm/src/api/device-action/__test-utils__/setupTestMachine.js.map +3 -3
  110. package/lib/esm/src/api/device-session/use-case/DisableDeviceSessionRefresher.test.js +1 -1
  111. package/lib/esm/src/api/device-session/use-case/DisableDeviceSessionRefresher.test.js.map +3 -3
  112. package/lib/esm/src/api/index.js +1 -1
  113. package/lib/esm/src/api/index.js.map +3 -3
  114. package/lib/esm/src/api/logger-subscriber/service/WebLogsExporterLogger.test.js +1 -1
  115. package/lib/esm/src/api/logger-subscriber/service/WebLogsExporterLogger.test.js.map +3 -3
  116. package/lib/esm/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.js.map +2 -2
  117. package/lib/esm/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.test.js +1 -1
  118. package/lib/esm/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.test.js.map +3 -3
  119. package/lib/esm/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.js +2 -0
  120. package/lib/esm/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.js.map +7 -0
  121. package/lib/esm/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.test.js +2 -0
  122. package/lib/esm/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.test.js.map +7 -0
  123. package/lib/esm/src/api/secure-channel/device-action/InstallApp/types.js +1 -0
  124. package/lib/esm/src/api/secure-channel/device-action/InstallApp/types.js.map +7 -0
  125. package/lib/esm/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.js.map +2 -2
  126. package/lib/esm/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.test.js +1 -1
  127. package/lib/esm/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.test.js.map +3 -3
  128. package/lib/esm/src/api/secure-channel/device-action/ListInstalledApps/types.js.map +2 -2
  129. package/lib/esm/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.js +2 -0
  130. package/lib/esm/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.js.map +7 -0
  131. package/lib/esm/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.test.js +2 -0
  132. package/lib/esm/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.test.js.map +7 -0
  133. package/lib/esm/src/api/secure-channel/device-action/UninstallApp/types.js +1 -0
  134. package/lib/esm/src/api/secure-channel/device-action/UninstallApp/types.js.map +7 -0
  135. package/lib/esm/src/api/secure-channel/utils.test.js +1 -1
  136. package/lib/esm/src/api/secure-channel/utils.test.js.map +2 -2
  137. package/lib/esm/src/api/transport/model/TransportConnectedDevice.test.js +1 -1
  138. package/lib/esm/src/api/transport/model/TransportConnectedDevice.test.js.map +3 -3
  139. package/lib/esm/src/internal/device-session/data/DeviceSessionRefresherConst.js +1 -1
  140. package/lib/esm/src/internal/device-session/data/DeviceSessionRefresherConst.js.map +3 -3
  141. package/lib/esm/src/internal/device-session/model/DevicePinger.js +2 -0
  142. package/lib/esm/src/internal/device-session/model/DevicePinger.js.map +7 -0
  143. package/lib/esm/src/internal/device-session/model/DevicePinger.test.js +2 -0
  144. package/lib/esm/src/internal/device-session/model/DevicePinger.test.js.map +7 -0
  145. package/lib/esm/src/internal/device-session/model/DeviceSession.js +1 -1
  146. package/lib/esm/src/internal/device-session/model/DeviceSession.js.map +3 -3
  147. package/lib/esm/src/internal/device-session/model/DeviceSession.stub.js +1 -1
  148. package/lib/esm/src/internal/device-session/model/DeviceSession.stub.js.map +3 -3
  149. package/lib/esm/src/internal/device-session/model/DeviceSessionEventDispatcher.js +2 -0
  150. package/lib/esm/src/internal/device-session/model/DeviceSessionEventDispatcher.js.map +7 -0
  151. package/lib/esm/src/internal/device-session/model/DeviceSessionEventDispatcher.test.js +2 -0
  152. package/lib/esm/src/internal/device-session/model/DeviceSessionEventDispatcher.test.js.map +7 -0
  153. package/lib/esm/src/internal/device-session/model/DeviceSessionRefresher.js +1 -1
  154. package/lib/esm/src/internal/device-session/model/DeviceSessionRefresher.js.map +3 -3
  155. package/lib/esm/src/internal/device-session/model/DeviceSessionRefresher.test.js +1 -1
  156. package/lib/esm/src/internal/device-session/model/DeviceSessionRefresher.test.js.map +3 -3
  157. package/lib/esm/src/internal/device-session/model/DeviceSessionStateHandler.js +2 -0
  158. package/lib/esm/src/internal/device-session/model/DeviceSessionStateHandler.js.map +7 -0
  159. package/lib/esm/src/internal/device-session/model/DeviceSessionStateHandler.test.js +2 -0
  160. package/lib/esm/src/internal/device-session/model/DeviceSessionStateHandler.test.js.map +7 -0
  161. package/lib/esm/src/internal/device-session/service/DefaultDeviceSessionService.test.js +1 -1
  162. package/lib/esm/src/internal/device-session/service/DefaultDeviceSessionService.test.js.map +3 -3
  163. package/lib/esm/src/internal/device-session/service/MutexService.js +2 -0
  164. package/lib/esm/src/internal/device-session/service/MutexService.js.map +7 -0
  165. package/lib/esm/src/internal/device-session/service/MutexService.test.js +2 -0
  166. package/lib/esm/src/internal/device-session/service/MutexService.test.js.map +7 -0
  167. package/lib/esm/src/internal/device-session/service/RefresherService.js +1 -1
  168. package/lib/esm/src/internal/device-session/service/RefresherService.js.map +3 -3
  169. package/lib/esm/src/internal/device-session/service/RefresherService.test.js +1 -1
  170. package/lib/esm/src/internal/device-session/service/RefresherService.test.js.map +3 -3
  171. package/lib/esm/src/internal/device-session/use-case/CloseSessionsUseCase.test.js +1 -1
  172. package/lib/esm/src/internal/device-session/use-case/CloseSessionsUseCase.test.js.map +3 -3
  173. package/lib/esm/src/internal/device-session/use-case/GetDeviceSessionStateUseCase.test.js +1 -1
  174. package/lib/esm/src/internal/device-session/use-case/GetDeviceSessionStateUseCase.test.js.map +3 -3
  175. package/lib/esm/src/internal/device-session/utils/deviceSessionUtils.js +2 -0
  176. package/lib/esm/src/internal/device-session/utils/deviceSessionUtils.js.map +7 -0
  177. package/lib/esm/src/internal/discovery/use-case/ConnectUseCase.js +1 -1
  178. package/lib/esm/src/internal/discovery/use-case/ConnectUseCase.js.map +3 -3
  179. package/lib/esm/src/internal/discovery/use-case/DisconnectUseCase.test.js +1 -1
  180. package/lib/esm/src/internal/discovery/use-case/DisconnectUseCase.test.js.map +3 -3
  181. package/lib/esm/src/internal/discovery/use-case/GetConnectedDeviceUseCase.test.js +1 -1
  182. package/lib/esm/src/internal/discovery/use-case/GetConnectedDeviceUseCase.test.js.map +3 -3
  183. package/lib/esm/src/internal/discovery/use-case/ListConnectedDevicesUseCase.test.js +1 -1
  184. package/lib/esm/src/internal/discovery/use-case/ListConnectedDevicesUseCase.test.js.map +3 -3
  185. package/lib/esm/src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.js +1 -1
  186. package/lib/esm/src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.js.map +3 -3
  187. package/lib/esm/src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.test.js +1 -1
  188. package/lib/esm/src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.test.js.map +3 -3
  189. package/lib/esm/src/internal/manager-api/data/AxiosManagerApiDataSource.test.js +1 -1
  190. package/lib/esm/src/internal/manager-api/data/AxiosManagerApiDataSource.test.js.map +2 -2
  191. package/lib/esm/src/internal/secure-channel/data/DefaultSecureChannelDataSource.test.js +1 -1
  192. package/lib/esm/src/internal/secure-channel/data/DefaultSecureChannelDataSource.test.js.map +2 -2
  193. package/lib/esm/src/internal/secure-channel/service/DefaultSecureChannelService.js +1 -1
  194. package/lib/esm/src/internal/secure-channel/service/DefaultSecureChannelService.js.map +3 -3
  195. package/lib/esm/src/internal/secure-channel/service/DefaultSecureChannelService.test.js +1 -1
  196. package/lib/esm/src/internal/secure-channel/service/DefaultSecureChannelService.test.js.map +3 -3
  197. package/lib/esm/src/internal/send/use-case/SendApduUseCase.js +1 -1
  198. package/lib/esm/src/internal/send/use-case/SendApduUseCase.js.map +3 -3
  199. package/lib/esm/src/internal/send/use-case/SendApduUseCase.test.js +1 -1
  200. package/lib/esm/src/internal/send/use-case/SendApduUseCase.test.js.map +3 -3
  201. package/lib/types/src/api/DeviceManagementKit.d.ts +5 -1
  202. package/lib/types/src/api/DeviceManagementKit.d.ts.map +1 -1
  203. package/lib/types/src/api/device-action/__test-utils__/setupTestMachine.d.ts +4 -0
  204. package/lib/types/src/api/device-action/__test-utils__/setupTestMachine.d.ts.map +1 -1
  205. package/lib/types/src/api/index.d.ts +2 -0
  206. package/lib/types/src/api/index.d.ts.map +1 -1
  207. package/lib/types/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.d.ts +3 -3
  208. package/lib/types/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.d.ts.map +1 -1
  209. package/lib/types/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.test.d.ts +1 -0
  210. package/lib/types/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.d.ts +8 -0
  211. package/lib/types/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.d.ts.map +1 -0
  212. package/lib/types/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.test.d.ts +2 -0
  213. package/lib/types/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.test.d.ts.map +1 -0
  214. package/lib/types/src/api/secure-channel/device-action/InstallApp/types.d.ts +44 -0
  215. package/lib/types/src/api/secure-channel/device-action/InstallApp/types.d.ts.map +1 -0
  216. package/lib/types/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.d.ts +3 -3
  217. package/lib/types/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.d.ts.map +1 -1
  218. package/lib/types/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.test.d.ts +1 -0
  219. package/lib/types/src/api/secure-channel/device-action/ListInstalledApps/types.d.ts +1 -3
  220. package/lib/types/src/api/secure-channel/device-action/ListInstalledApps/types.d.ts.map +1 -1
  221. package/lib/types/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.d.ts +8 -0
  222. package/lib/types/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.d.ts.map +1 -0
  223. package/lib/types/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.test.d.ts +2 -0
  224. package/lib/types/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.test.d.ts.map +1 -0
  225. package/lib/types/src/api/secure-channel/device-action/UninstallApp/types.d.ts +41 -0
  226. package/lib/types/src/api/secure-channel/device-action/UninstallApp/types.d.ts.map +1 -0
  227. package/lib/types/src/api/types.d.ts +2 -0
  228. package/lib/types/src/api/types.d.ts.map +1 -1
  229. package/lib/types/src/internal/device-session/data/DeviceSessionRefresherConst.d.ts +6 -1
  230. package/lib/types/src/internal/device-session/data/DeviceSessionRefresherConst.d.ts.map +1 -1
  231. package/lib/types/src/internal/device-session/model/DevicePinger.d.ts +18 -0
  232. package/lib/types/src/internal/device-session/model/DevicePinger.d.ts.map +1 -0
  233. package/lib/types/src/internal/device-session/model/DevicePinger.test.d.ts +2 -0
  234. package/lib/types/src/internal/device-session/model/DevicePinger.test.d.ts.map +1 -0
  235. package/lib/types/src/internal/device-session/model/DeviceSession.d.ts +19 -11
  236. package/lib/types/src/internal/device-session/model/DeviceSession.d.ts.map +1 -1
  237. package/lib/types/src/internal/device-session/model/DeviceSession.stub.d.ts +2 -2
  238. package/lib/types/src/internal/device-session/model/DeviceSession.stub.d.ts.map +1 -1
  239. package/lib/types/src/internal/device-session/model/DeviceSessionEventDispatcher.d.ts +35 -0
  240. package/lib/types/src/internal/device-session/model/DeviceSessionEventDispatcher.d.ts.map +1 -0
  241. package/lib/types/src/internal/device-session/model/DeviceSessionEventDispatcher.test.d.ts +2 -0
  242. package/lib/types/src/internal/device-session/model/DeviceSessionEventDispatcher.test.d.ts.map +1 -0
  243. package/lib/types/src/internal/device-session/model/DeviceSessionRefresher.d.ts +17 -79
  244. package/lib/types/src/internal/device-session/model/DeviceSessionRefresher.d.ts.map +1 -1
  245. package/lib/types/src/internal/device-session/model/DeviceSessionStateHandler.d.ts +20 -0
  246. package/lib/types/src/internal/device-session/model/DeviceSessionStateHandler.d.ts.map +1 -0
  247. package/lib/types/src/internal/device-session/model/DeviceSessionStateHandler.test.d.ts +2 -0
  248. package/lib/types/src/internal/device-session/model/DeviceSessionStateHandler.test.d.ts.map +1 -0
  249. package/lib/types/src/internal/device-session/service/MutexService.d.ts +7 -0
  250. package/lib/types/src/internal/device-session/service/MutexService.d.ts.map +1 -0
  251. package/lib/types/src/internal/device-session/service/MutexService.test.d.ts +2 -0
  252. package/lib/types/src/internal/device-session/service/MutexService.test.d.ts.map +1 -0
  253. package/lib/types/src/internal/device-session/service/RefresherService.d.ts +7 -2
  254. package/lib/types/src/internal/device-session/service/RefresherService.d.ts.map +1 -1
  255. package/lib/types/src/internal/device-session/utils/deviceSessionUtils.d.ts +3 -0
  256. package/lib/types/src/internal/device-session/utils/deviceSessionUtils.d.ts.map +1 -0
  257. package/lib/types/src/internal/discovery/use-case/ConnectUseCase.d.ts +8 -1
  258. package/lib/types/src/internal/discovery/use-case/ConnectUseCase.d.ts.map +1 -1
  259. package/lib/types/src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.d.ts +1 -1
  260. package/lib/types/src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.d.ts.map +1 -1
  261. package/lib/types/src/internal/secure-channel/model/Params.d.ts +3 -5
  262. package/lib/types/src/internal/secure-channel/model/Params.d.ts.map +1 -1
  263. package/lib/types/src/internal/secure-channel/service/DefaultSecureChannelService.d.ts +6 -6
  264. package/lib/types/src/internal/secure-channel/service/DefaultSecureChannelService.d.ts.map +1 -1
  265. package/lib/types/src/internal/secure-channel/service/SecureChannelService.d.ts +39 -5
  266. package/lib/types/src/internal/secure-channel/service/SecureChannelService.d.ts.map +1 -1
  267. package/lib/types/src/internal/send/use-case/SendApduUseCase.d.ts +5 -1
  268. package/lib/types/src/internal/send/use-case/SendApduUseCase.d.ts.map +1 -1
  269. package/lib/types/tsconfig.prod.tsbuildinfo +1 -1
  270. package/package.json +1 -1
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/api/index.ts"],
4
- "sourcesContent": ["\"use strict\";\n\nexport { Apdu } from \"@api/apdu/model/Apdu\";\nexport { APDU_MAX_PAYLOAD, ApduBuilder } from \"@api/apdu/utils/ApduBuilder\";\nexport { ApduParser } from \"@api/apdu/utils/ApduParser\";\nexport * from \"@api/apdu/utils/AppBuilderError\";\nexport { ByteArrayBuilder } from \"@api/apdu/utils/ByteArrayBuilder\";\nexport { ByteArrayParser } from \"@api/apdu/utils/ByteArrayParser\";\nexport { InvalidStatusWordError } from \"@api/command/Errors\";\nexport {\n CommandResultFactory,\n CommandResultStatus,\n isSuccessCommandResult,\n} from \"@api/command/model/CommandResult\";\nexport { CloseAppCommand } from \"@api/command/os/CloseAppCommand\";\nexport {\n GetAppAndVersionCommand,\n type GetAppAndVersionResponse,\n} from \"@api/command/os/GetAppAndVersionCommand\";\nexport {\n BatteryStatusType,\n type GetBatteryStatusArgs,\n GetBatteryStatusCommand,\n type GetBatteryStatusResponse,\n} from \"@api/command/os/GetBatteryStatusCommand\";\nexport {\n GetOsVersionCommand,\n type GetOsVersionResponse,\n} from \"@api/command/os/GetOsVersionCommand\";\nexport {\n type ListAppsArgs,\n ListAppsCommand,\n type ListAppsErrorCodes,\n type ListAppsResponse,\n} from \"@api/command/os/ListAppsCommand\";\nexport {\n type LoadCertificateArgs,\n LoadCertificateCommand,\n type LoadCertificateErrorCodes,\n} from \"@api/command/os/LoadCertificateCommand\";\nexport {\n type OpenAppArgs,\n OpenAppCommand,\n} from \"@api/command/os/OpenAppCommand\";\nexport { isCommandErrorCode } from \"@api/command/utils/CommandErrors\";\nexport { CommandUtils } from \"@api/command/utils/CommandUtils\";\nexport {\n GlobalCommandError,\n GlobalCommandErrorHandler,\n} from \"@api/command/utils/GlobalCommandError\";\nexport {\n DeviceModel,\n DeviceModelId,\n LEDGER_VENDOR_ID,\n} from \"@api/device/DeviceModel\";\nexport { DeviceStatus } from \"@api/device/DeviceStatus\";\nexport { type InternalApi } from \"@api/device-action/DeviceAction\";\nexport {\n type DeviceActionState,\n DeviceActionStatus,\n} from \"@api/device-action/model/DeviceActionState\";\nexport { UserInteractionRequired } from \"@api/device-action/model/UserInteractionRequired\";\nexport { CallTaskInAppDeviceAction } from \"@api/device-action/os/CallTaskInAppDeviceAction/CallTaskInAppDeviceAction\";\nexport { UnknownDAError } from \"@api/device-action/os/Errors\";\nexport { GetDeviceStatusDeviceAction } from \"@api/device-action/os/GetDeviceStatus/GetDeviceStatusDeviceAction\";\nexport { GoToDashboardDeviceAction } from \"@api/device-action/os/GoToDashboard/GoToDashboardDeviceAction\";\nexport { ListAppsDeviceAction } from \"@api/device-action/os/ListApps/ListAppsDeviceAction\";\nexport { ListAppsWithMetadataDeviceAction } from \"@api/device-action/os/ListAppsWithMetadata/ListAppsWithMetadataDeviceAction\";\nexport { OpenAppDeviceAction } from \"@api/device-action/os/OpenAppDeviceAction/OpenAppDeviceAction\";\nexport { SendCommandInAppDeviceAction } from \"@api/device-action/os/SendCommandInAppDeviceAction/SendCommandInAppDeviceAction\";\nexport {\n type DeviceActionStateMachine,\n XStateDeviceAction,\n} from \"@api/device-action/xstate-utils/XStateDeviceAction\";\nexport { StaticDeviceModelDataSource } from \"@api/device-model/data/StaticDeviceModelDataSource\";\nexport { BleDeviceInfos } from \"@api/device-model/model/BleDeviceInfos\";\nexport { TransportDeviceModel } from \"@api/device-model/model/DeviceModel\";\nexport { ApduResponse } from \"@api/device-session/ApduResponse\";\nexport * from \"@api/device-session/data/FramerConst\";\nexport {\n type DeviceSessionState,\n DeviceSessionStateType,\n} from \"@api/device-session/DeviceSessionState\";\nexport { GenuineCheckDeviceAction } from \"@api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction\";\nexport { ListInstalledAppsDeviceAction } from \"@api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction\";\n// TODO: remove from exported\nexport { defaultApduReceiverServiceStubBuilder } from \"@api/device-session/service/DefaultApduReceiverService.stub\";\nexport { defaultApduSenderServiceStubBuilder } from \"@api/device-session/service/DefaultApduSenderService.stub\";\nexport { FramerUtils } from \"@api/device-session/utils/FramerUtils\";\nexport { DeviceManagementKit } from \"@api/DeviceManagementKit\";\nexport { DeviceManagementKitBuilder } from \"@api/DeviceManagementKitBuilder\";\nexport * from \"@api/Error\";\nexport { LogLevel } from \"@api/logger-subscriber/model/LogLevel\";\nexport { ConsoleLogger } from \"@api/logger-subscriber/service/ConsoleLogger\";\nexport { WebLogsExporterLogger } from \"@api/logger-subscriber/service/WebLogsExporterLogger\";\nexport { ConnectedDevice } from \"@api/transport/model/ConnectedDevice\";\nexport { DeviceConnectionStateMachine } from \"@api/transport/model/DeviceConnectionStateMachine\";\nexport * from \"@api/transport/model/Errors\";\nexport { TransportConnectedDevice } from \"@api/transport/model/TransportConnectedDevice\";\nexport { connectedDeviceStubBuilder } from \"@api/transport/model/TransportConnectedDevice.stub\";\nexport * from \"@api/types\";\nexport { base64StringToBuffer, isBase64String } from \"@api/utils/Base64String\";\nexport {\n bufferToHexaString,\n hexaStringToBuffer,\n isHexaString,\n} from \"@api/utils/HexaString\";\n"],
5
- "mappings": "AAEA,OAAS,QAAAA,MAAY,uBACrB,OAAS,oBAAAC,EAAkB,eAAAC,MAAmB,8BAC9C,OAAS,cAAAC,MAAkB,6BAC3B,WAAc,kCACd,OAAS,oBAAAC,MAAwB,mCACjC,OAAS,mBAAAC,MAAuB,kCAChC,OAAS,0BAAAC,MAA8B,sBACvC,OACE,wBAAAC,EACA,uBAAAC,EACA,0BAAAC,MACK,mCACP,OAAS,mBAAAC,MAAuB,kCAChC,OACE,2BAAAC,MAEK,0CACP,OACE,qBAAAC,EAEA,2BAAAC,MAEK,0CACP,OACE,uBAAAC,MAEK,sCACP,OAEE,mBAAAC,MAGK,kCACP,OAEE,0BAAAC,MAEK,yCACP,OAEE,kBAAAC,MACK,iCACP,OAAS,sBAAAC,MAA0B,mCACnC,OAAS,gBAAAC,MAAoB,kCAC7B,OACE,sBAAAC,EACA,6BAAAC,MACK,wCACP,OACE,eAAAC,EACA,iBAAAC,EACA,oBAAAC,MACK,0BACP,OAAS,gBAAAC,MAAoB,2BAE7B,OAEE,sBAAAC,MACK,6CACP,OAAS,2BAAAC,MAA+B,mDACxC,OAAS,6BAAAC,MAAiC,4EAC1C,OAAS,kBAAAC,OAAsB,+BAC/B,OAAS,+BAAAC,OAAmC,oEAC5C,OAAS,6BAAAC,OAAiC,gEAC1C,OAAS,wBAAAC,OAA4B,sDACrC,OAAS,oCAAAC,OAAwC,8EACjD,OAAS,uBAAAC,OAA2B,gEACpC,OAAS,gCAAAC,OAAoC,kFAC7C,OAEE,sBAAAC,OACK,qDACP,OAAS,+BAAAC,OAAmC,qDAC5C,OAAS,kBAAAC,OAAsB,yCAC/B,OAAS,wBAAAC,OAA4B,sCACrC,OAAS,gBAAAC,OAAoB,mCAC7B,WAAc,uCACd,OAEE,0BAAAC,OACK,yCACP,OAAS,4BAAAC,OAAgC,0EACzC,OAAS,iCAAAC,OAAqC,oFAE9C,OAAS,yCAAAC,OAA6C,8DACtD,OAAS,uCAAAC,OAA2C,4DACpD,OAAS,eAAAC,OAAmB,wCAC5B,OAAS,uBAAAC,OAA2B,2BACpC,OAAS,8BAAAC,OAAkC,kCAC3C,WAAc,aACd,OAAS,YAAAC,OAAgB,wCACzB,OAAS,iBAAAC,OAAqB,+CAC9B,OAAS,yBAAAC,OAA6B,uDACtC,OAAS,mBAAAC,OAAuB,uCAChC,OAAS,gCAAAC,OAAoC,oDAC7C,WAAc,8BACd,OAAS,4BAAAC,OAAgC,gDACzC,OAAS,8BAAAC,OAAkC,qDAC3C,WAAc,aACd,OAAS,wBAAAC,GAAsB,kBAAAC,OAAsB,0BACrD,OACE,sBAAAC,GACA,sBAAAC,GACA,gBAAAC,OACK",
6
- "names": ["Apdu", "APDU_MAX_PAYLOAD", "ApduBuilder", "ApduParser", "ByteArrayBuilder", "ByteArrayParser", "InvalidStatusWordError", "CommandResultFactory", "CommandResultStatus", "isSuccessCommandResult", "CloseAppCommand", "GetAppAndVersionCommand", "BatteryStatusType", "GetBatteryStatusCommand", "GetOsVersionCommand", "ListAppsCommand", "LoadCertificateCommand", "OpenAppCommand", "isCommandErrorCode", "CommandUtils", "GlobalCommandError", "GlobalCommandErrorHandler", "DeviceModel", "DeviceModelId", "LEDGER_VENDOR_ID", "DeviceStatus", "DeviceActionStatus", "UserInteractionRequired", "CallTaskInAppDeviceAction", "UnknownDAError", "GetDeviceStatusDeviceAction", "GoToDashboardDeviceAction", "ListAppsDeviceAction", "ListAppsWithMetadataDeviceAction", "OpenAppDeviceAction", "SendCommandInAppDeviceAction", "XStateDeviceAction", "StaticDeviceModelDataSource", "BleDeviceInfos", "TransportDeviceModel", "ApduResponse", "DeviceSessionStateType", "GenuineCheckDeviceAction", "ListInstalledAppsDeviceAction", "defaultApduReceiverServiceStubBuilder", "defaultApduSenderServiceStubBuilder", "FramerUtils", "DeviceManagementKit", "DeviceManagementKitBuilder", "LogLevel", "ConsoleLogger", "WebLogsExporterLogger", "ConnectedDevice", "DeviceConnectionStateMachine", "TransportConnectedDevice", "connectedDeviceStubBuilder", "base64StringToBuffer", "isBase64String", "bufferToHexaString", "hexaStringToBuffer", "isHexaString"]
4
+ "sourcesContent": ["\"use strict\";\n\nexport { Apdu } from \"@api/apdu/model/Apdu\";\nexport { APDU_MAX_PAYLOAD, ApduBuilder } from \"@api/apdu/utils/ApduBuilder\";\nexport { ApduParser } from \"@api/apdu/utils/ApduParser\";\nexport * from \"@api/apdu/utils/AppBuilderError\";\nexport { ByteArrayBuilder } from \"@api/apdu/utils/ByteArrayBuilder\";\nexport { ByteArrayParser } from \"@api/apdu/utils/ByteArrayParser\";\nexport { InvalidStatusWordError } from \"@api/command/Errors\";\nexport {\n CommandResultFactory,\n CommandResultStatus,\n isSuccessCommandResult,\n} from \"@api/command/model/CommandResult\";\nexport { CloseAppCommand } from \"@api/command/os/CloseAppCommand\";\nexport {\n GetAppAndVersionCommand,\n type GetAppAndVersionResponse,\n} from \"@api/command/os/GetAppAndVersionCommand\";\nexport {\n BatteryStatusType,\n type GetBatteryStatusArgs,\n GetBatteryStatusCommand,\n type GetBatteryStatusResponse,\n} from \"@api/command/os/GetBatteryStatusCommand\";\nexport {\n GetOsVersionCommand,\n type GetOsVersionResponse,\n} from \"@api/command/os/GetOsVersionCommand\";\nexport {\n type ListAppsArgs,\n ListAppsCommand,\n type ListAppsErrorCodes,\n type ListAppsResponse,\n} from \"@api/command/os/ListAppsCommand\";\nexport {\n type LoadCertificateArgs,\n LoadCertificateCommand,\n type LoadCertificateErrorCodes,\n} from \"@api/command/os/LoadCertificateCommand\";\nexport {\n type OpenAppArgs,\n OpenAppCommand,\n} from \"@api/command/os/OpenAppCommand\";\nexport { isCommandErrorCode } from \"@api/command/utils/CommandErrors\";\nexport { CommandUtils } from \"@api/command/utils/CommandUtils\";\nexport {\n GlobalCommandError,\n GlobalCommandErrorHandler,\n} from \"@api/command/utils/GlobalCommandError\";\nexport {\n DeviceModel,\n DeviceModelId,\n LEDGER_VENDOR_ID,\n} from \"@api/device/DeviceModel\";\nexport { DeviceStatus } from \"@api/device/DeviceStatus\";\nexport { type InternalApi } from \"@api/device-action/DeviceAction\";\nexport {\n type DeviceActionState,\n DeviceActionStatus,\n} from \"@api/device-action/model/DeviceActionState\";\nexport { UserInteractionRequired } from \"@api/device-action/model/UserInteractionRequired\";\nexport { CallTaskInAppDeviceAction } from \"@api/device-action/os/CallTaskInAppDeviceAction/CallTaskInAppDeviceAction\";\nexport { UnknownDAError } from \"@api/device-action/os/Errors\";\nexport { GetDeviceStatusDeviceAction } from \"@api/device-action/os/GetDeviceStatus/GetDeviceStatusDeviceAction\";\nexport { GoToDashboardDeviceAction } from \"@api/device-action/os/GoToDashboard/GoToDashboardDeviceAction\";\nexport { ListAppsDeviceAction } from \"@api/device-action/os/ListApps/ListAppsDeviceAction\";\nexport { ListAppsWithMetadataDeviceAction } from \"@api/device-action/os/ListAppsWithMetadata/ListAppsWithMetadataDeviceAction\";\nexport { OpenAppDeviceAction } from \"@api/device-action/os/OpenAppDeviceAction/OpenAppDeviceAction\";\nexport { SendCommandInAppDeviceAction } from \"@api/device-action/os/SendCommandInAppDeviceAction/SendCommandInAppDeviceAction\";\nexport {\n type DeviceActionStateMachine,\n XStateDeviceAction,\n} from \"@api/device-action/xstate-utils/XStateDeviceAction\";\nexport { StaticDeviceModelDataSource } from \"@api/device-model/data/StaticDeviceModelDataSource\";\nexport { BleDeviceInfos } from \"@api/device-model/model/BleDeviceInfos\";\nexport { TransportDeviceModel } from \"@api/device-model/model/DeviceModel\";\nexport { ApduResponse } from \"@api/device-session/ApduResponse\";\nexport * from \"@api/device-session/data/FramerConst\";\nexport {\n type DeviceSessionState,\n DeviceSessionStateType,\n} from \"@api/device-session/DeviceSessionState\";\nexport { GenuineCheckDeviceAction } from \"@api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction\";\nexport { InstallAppDeviceAction } from \"@api/secure-channel/device-action/InstallApp/InstallAppDeviceAction\";\nexport { ListInstalledAppsDeviceAction } from \"@api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction\";\nexport { UninstallAppDeviceAction } from \"@api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction\";\n// TODO: remove from exported\nexport { defaultApduReceiverServiceStubBuilder } from \"@api/device-session/service/DefaultApduReceiverService.stub\";\nexport { defaultApduSenderServiceStubBuilder } from \"@api/device-session/service/DefaultApduSenderService.stub\";\nexport { FramerUtils } from \"@api/device-session/utils/FramerUtils\";\nexport { DeviceManagementKit } from \"@api/DeviceManagementKit\";\nexport { DeviceManagementKitBuilder } from \"@api/DeviceManagementKitBuilder\";\nexport * from \"@api/Error\";\nexport { LogLevel } from \"@api/logger-subscriber/model/LogLevel\";\nexport { ConsoleLogger } from \"@api/logger-subscriber/service/ConsoleLogger\";\nexport { WebLogsExporterLogger } from \"@api/logger-subscriber/service/WebLogsExporterLogger\";\nexport { ConnectedDevice } from \"@api/transport/model/ConnectedDevice\";\nexport { DeviceConnectionStateMachine } from \"@api/transport/model/DeviceConnectionStateMachine\";\nexport * from \"@api/transport/model/Errors\";\nexport { TransportConnectedDevice } from \"@api/transport/model/TransportConnectedDevice\";\nexport { connectedDeviceStubBuilder } from \"@api/transport/model/TransportConnectedDevice.stub\";\nexport * from \"@api/types\";\nexport { base64StringToBuffer, isBase64String } from \"@api/utils/Base64String\";\nexport {\n bufferToHexaString,\n hexaStringToBuffer,\n isHexaString,\n} from \"@api/utils/HexaString\";\n"],
5
+ "mappings": "AAEA,OAAS,QAAAA,MAAY,uBACrB,OAAS,oBAAAC,EAAkB,eAAAC,MAAmB,8BAC9C,OAAS,cAAAC,MAAkB,6BAC3B,WAAc,kCACd,OAAS,oBAAAC,MAAwB,mCACjC,OAAS,mBAAAC,MAAuB,kCAChC,OAAS,0BAAAC,MAA8B,sBACvC,OACE,wBAAAC,EACA,uBAAAC,EACA,0BAAAC,MACK,mCACP,OAAS,mBAAAC,MAAuB,kCAChC,OACE,2BAAAC,MAEK,0CACP,OACE,qBAAAC,EAEA,2BAAAC,MAEK,0CACP,OACE,uBAAAC,MAEK,sCACP,OAEE,mBAAAC,MAGK,kCACP,OAEE,0BAAAC,MAEK,yCACP,OAEE,kBAAAC,MACK,iCACP,OAAS,sBAAAC,MAA0B,mCACnC,OAAS,gBAAAC,MAAoB,kCAC7B,OACE,sBAAAC,EACA,6BAAAC,MACK,wCACP,OACE,eAAAC,EACA,iBAAAC,EACA,oBAAAC,MACK,0BACP,OAAS,gBAAAC,MAAoB,2BAE7B,OAEE,sBAAAC,MACK,6CACP,OAAS,2BAAAC,MAA+B,mDACxC,OAAS,6BAAAC,MAAiC,4EAC1C,OAAS,kBAAAC,OAAsB,+BAC/B,OAAS,+BAAAC,OAAmC,oEAC5C,OAAS,6BAAAC,OAAiC,gEAC1C,OAAS,wBAAAC,OAA4B,sDACrC,OAAS,oCAAAC,OAAwC,8EACjD,OAAS,uBAAAC,OAA2B,gEACpC,OAAS,gCAAAC,OAAoC,kFAC7C,OAEE,sBAAAC,OACK,qDACP,OAAS,+BAAAC,OAAmC,qDAC5C,OAAS,kBAAAC,OAAsB,yCAC/B,OAAS,wBAAAC,OAA4B,sCACrC,OAAS,gBAAAC,OAAoB,mCAC7B,WAAc,uCACd,OAEE,0BAAAC,OACK,yCACP,OAAS,4BAAAC,OAAgC,0EACzC,OAAS,0BAAAC,OAA8B,sEACvC,OAAS,iCAAAC,OAAqC,oFAC9C,OAAS,4BAAAC,OAAgC,0EAEzC,OAAS,yCAAAC,OAA6C,8DACtD,OAAS,uCAAAC,OAA2C,4DACpD,OAAS,eAAAC,OAAmB,wCAC5B,OAAS,uBAAAC,OAA2B,2BACpC,OAAS,8BAAAC,OAAkC,kCAC3C,WAAc,aACd,OAAS,YAAAC,OAAgB,wCACzB,OAAS,iBAAAC,OAAqB,+CAC9B,OAAS,yBAAAC,OAA6B,uDACtC,OAAS,mBAAAC,OAAuB,uCAChC,OAAS,gCAAAC,OAAoC,oDAC7C,WAAc,8BACd,OAAS,4BAAAC,OAAgC,gDACzC,OAAS,8BAAAC,OAAkC,qDAC3C,WAAc,aACd,OAAS,wBAAAC,GAAsB,kBAAAC,OAAsB,0BACrD,OACE,sBAAAC,GACA,sBAAAC,GACA,gBAAAC,OACK",
6
+ "names": ["Apdu", "APDU_MAX_PAYLOAD", "ApduBuilder", "ApduParser", "ByteArrayBuilder", "ByteArrayParser", "InvalidStatusWordError", "CommandResultFactory", "CommandResultStatus", "isSuccessCommandResult", "CloseAppCommand", "GetAppAndVersionCommand", "BatteryStatusType", "GetBatteryStatusCommand", "GetOsVersionCommand", "ListAppsCommand", "LoadCertificateCommand", "OpenAppCommand", "isCommandErrorCode", "CommandUtils", "GlobalCommandError", "GlobalCommandErrorHandler", "DeviceModel", "DeviceModelId", "LEDGER_VENDOR_ID", "DeviceStatus", "DeviceActionStatus", "UserInteractionRequired", "CallTaskInAppDeviceAction", "UnknownDAError", "GetDeviceStatusDeviceAction", "GoToDashboardDeviceAction", "ListAppsDeviceAction", "ListAppsWithMetadataDeviceAction", "OpenAppDeviceAction", "SendCommandInAppDeviceAction", "XStateDeviceAction", "StaticDeviceModelDataSource", "BleDeviceInfos", "TransportDeviceModel", "ApduResponse", "DeviceSessionStateType", "GenuineCheckDeviceAction", "InstallAppDeviceAction", "ListInstalledAppsDeviceAction", "UninstallAppDeviceAction", "defaultApduReceiverServiceStubBuilder", "defaultApduSenderServiceStubBuilder", "FramerUtils", "DeviceManagementKit", "DeviceManagementKitBuilder", "LogLevel", "ConsoleLogger", "WebLogsExporterLogger", "ConnectedDevice", "DeviceConnectionStateMachine", "TransportConnectedDevice", "connectedDeviceStubBuilder", "base64StringToBuffer", "isBase64String", "bufferToHexaString", "hexaStringToBuffer", "isHexaString"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{deviceModelStubBuilder as n}from"../../device-model/model/DeviceModel.stub";import{DeviceSession as a}from"../../../internal/device-session/model/DeviceSession";import{getJSONStringifyReplacer as r}from"./WebLogsExporterLogger";describe("getJSONStringifyReplacer",()=>{it("should return a function that replaces Uint8Array correctly",()=>{const e=r(),t=new Uint8Array([1,2,3]),c=e("key",t);expect(c).toEqual({hex:"0x010203",readableHex:"01 02 03",value:"1,2,3"})}),it("should return a function that replaces DeviceSession",()=>{const e=n(),t=r(),c={deviceModel:n(),type:"USB",id:"mockedDeviceId",sendApdu:vi.fn(),transport:"USB"},i=new a({connectedDevice:c,id:"mockedSessionId"},vi.fn(),{},{}),o=JSON.stringify(i,t),s=`{"id":"mockedSessionId","connectedDevice":{"deviceModel":${JSON.stringify(e)},"type":"USB","id":"mockedDeviceId"}}`;i.close(),expect(o).toEqual(s)}),it("should return a function that replaces circular references",()=>{const e={name:"Alice"};e.self=e;const t='{"name":"Alice","self":"[Circular]"}',c=JSON.stringify(e,r());expect(c).toEqual(t)})});
1
+ import{deviceModelStubBuilder as n}from"../../device-model/model/DeviceModel.stub";import{DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS as a}from"../../../internal/device-session/data/DeviceSessionRefresherConst";import{DeviceSession as l}from"../../../internal/device-session/model/DeviceSession";import{getJSONStringifyReplacer as c}from"./WebLogsExporterLogger";describe("getJSONStringifyReplacer",()=>{it("should return a function that replaces Uint8Array correctly",()=>{const e=c(),t=new Uint8Array([1,2,3]),r=e("key",t);expect(r).toEqual({hex:"0x010203",readableHex:"01 02 03",value:"1,2,3"})}),it("should return a function that replaces DeviceSession",()=>{const e=n(),t=c(),r={deviceModel:n(),type:"USB",id:"mockedDeviceId",sendApdu:vi.fn(),transport:"USB"},i=new l({connectedDevice:r,id:"mockedSessionId"},vi.fn(),{},{},a),o=JSON.stringify(i,t),s=`{"id":"mockedSessionId","connectedDevice":{"deviceModel":${JSON.stringify(e)},"type":"USB","id":"mockedDeviceId"}}`;i.close(),expect(o).toEqual(s)}),it("should return a function that replaces circular references",()=>{const e={name:"Alice"};e.self=e;const t='{"name":"Alice","self":"[Circular]"}',r=JSON.stringify(e,c());expect(r).toEqual(t)})});
2
2
  //# sourceMappingURL=WebLogsExporterLogger.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../src/api/logger-subscriber/service/WebLogsExporterLogger.test.ts"],
4
- "sourcesContent": ["import { deviceModelStubBuilder } from \"@api/device-model/model/DeviceModel.stub\";\nimport { type TransportConnectedDevice } from \"@api/transport/model/TransportConnectedDevice\";\nimport { DeviceSession } from \"@internal/device-session/model/DeviceSession\";\nimport { type ManagerApiService } from \"@internal/manager-api/service/ManagerApiService\";\nimport { type SecureChannelService } from \"@internal/secure-channel/service/SecureChannelService\";\n\nimport { getJSONStringifyReplacer } from \"./WebLogsExporterLogger\";\n\ndescribe(\"getJSONStringifyReplacer\", () => {\n it(\"should return a function that replaces Uint8Array correctly\", () => {\n const replacer = getJSONStringifyReplacer();\n const value = new Uint8Array([1, 2, 3]);\n const result = replacer(\"key\", value);\n expect(result).toEqual({\n hex: \"0x010203\",\n readableHex: \"01 02 03\",\n value: \"1,2,3\",\n });\n });\n\n it(\"should return a function that replaces DeviceSession\", () => {\n const stubDeviceModel = deviceModelStubBuilder();\n const replacer = getJSONStringifyReplacer();\n\n const connectedDevice: TransportConnectedDevice = {\n deviceModel: deviceModelStubBuilder(),\n type: \"USB\",\n id: \"mockedDeviceId\",\n sendApdu: vi.fn(),\n transport: \"USB\",\n };\n\n const value = new DeviceSession(\n {\n connectedDevice,\n id: \"mockedSessionId\",\n },\n vi.fn(),\n {} as ManagerApiService,\n {} as SecureChannelService,\n );\n const result = JSON.stringify(value, replacer);\n const expected = `{\"id\":\"mockedSessionId\",\"connectedDevice\":{\"deviceModel\":${JSON.stringify(\n stubDeviceModel,\n )},\"type\":\"USB\",\"id\":\"mockedDeviceId\"}}`;\n value.close();\n expect(result).toEqual(expected);\n });\n\n it(\"should return a function that replaces circular references\", () => {\n interface CircularObject {\n name: string;\n self?: CircularObject;\n }\n\n const obj: CircularObject = { name: \"Alice\" };\n obj.self = obj;\n\n const expected = '{\"name\":\"Alice\",\"self\":\"[Circular]\"}';\n const result = JSON.stringify(obj, getJSONStringifyReplacer());\n expect(result).toEqual(expected);\n });\n});\n"],
5
- "mappings": "AAAA,OAAS,0BAAAA,MAA8B,2CAEvC,OAAS,iBAAAC,MAAqB,+CAI9B,OAAS,4BAAAC,MAAgC,0BAEzC,SAAS,2BAA4B,IAAM,CACzC,GAAG,8DAA+D,IAAM,CACtE,MAAMC,EAAWD,EAAyB,EACpCE,EAAQ,IAAI,WAAW,CAAC,EAAG,EAAG,CAAC,CAAC,EAChCC,EAASF,EAAS,MAAOC,CAAK,EACpC,OAAOC,CAAM,EAAE,QAAQ,CACrB,IAAK,WACL,YAAa,WACb,MAAO,OACT,CAAC,CACH,CAAC,EAED,GAAG,uDAAwD,IAAM,CAC/D,MAAMC,EAAkBN,EAAuB,EACzCG,EAAWD,EAAyB,EAEpCK,EAA4C,CAChD,YAAaP,EAAuB,EACpC,KAAM,MACN,GAAI,iBACJ,SAAU,GAAG,GAAG,EAChB,UAAW,KACb,EAEMI,EAAQ,IAAIH,EAChB,CACE,gBAAAM,EACA,GAAI,iBACN,EACA,GAAG,GAAG,EACN,CAAC,EACD,CAAC,CACH,EACMF,EAAS,KAAK,UAAUD,EAAOD,CAAQ,EACvCK,EAAW,4DAA4D,KAAK,UAChFF,CACF,CAAC,wCACDF,EAAM,MAAM,EACZ,OAAOC,CAAM,EAAE,QAAQG,CAAQ,CACjC,CAAC,EAED,GAAG,6DAA8D,IAAM,CAMrE,MAAMC,EAAsB,CAAE,KAAM,OAAQ,EAC5CA,EAAI,KAAOA,EAEX,MAAMD,EAAW,uCACXH,EAAS,KAAK,UAAUI,EAAKP,EAAyB,CAAC,EAC7D,OAAOG,CAAM,EAAE,QAAQG,CAAQ,CACjC,CAAC,CACH,CAAC",
6
- "names": ["deviceModelStubBuilder", "DeviceSession", "getJSONStringifyReplacer", "replacer", "value", "result", "stubDeviceModel", "connectedDevice", "expected", "obj"]
4
+ "sourcesContent": ["import { deviceModelStubBuilder } from \"@api/device-model/model/DeviceModel.stub\";\nimport { type TransportConnectedDevice } from \"@api/transport/model/TransportConnectedDevice\";\nimport { DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS } from \"@internal/device-session/data/DeviceSessionRefresherConst\";\nimport { DeviceSession } from \"@internal/device-session/model/DeviceSession\";\nimport { type ManagerApiService } from \"@internal/manager-api/service/ManagerApiService\";\nimport { type SecureChannelService } from \"@internal/secure-channel/service/SecureChannelService\";\n\nimport { getJSONStringifyReplacer } from \"./WebLogsExporterLogger\";\n\ndescribe(\"getJSONStringifyReplacer\", () => {\n it(\"should return a function that replaces Uint8Array correctly\", () => {\n const replacer = getJSONStringifyReplacer();\n const value = new Uint8Array([1, 2, 3]);\n const result = replacer(\"key\", value);\n expect(result).toEqual({\n hex: \"0x010203\",\n readableHex: \"01 02 03\",\n value: \"1,2,3\",\n });\n });\n\n it(\"should return a function that replaces DeviceSession\", () => {\n const stubDeviceModel = deviceModelStubBuilder();\n const replacer = getJSONStringifyReplacer();\n\n const connectedDevice: TransportConnectedDevice = {\n deviceModel: deviceModelStubBuilder(),\n type: \"USB\",\n id: \"mockedDeviceId\",\n sendApdu: vi.fn(),\n transport: \"USB\",\n };\n\n const value = new DeviceSession(\n {\n connectedDevice,\n id: \"mockedSessionId\",\n },\n vi.fn(),\n {} as ManagerApiService,\n {} as SecureChannelService,\n DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS,\n );\n const result = JSON.stringify(value, replacer);\n const expected = `{\"id\":\"mockedSessionId\",\"connectedDevice\":{\"deviceModel\":${JSON.stringify(\n stubDeviceModel,\n )},\"type\":\"USB\",\"id\":\"mockedDeviceId\"}}`;\n value.close();\n expect(result).toEqual(expected);\n });\n\n it(\"should return a function that replaces circular references\", () => {\n interface CircularObject {\n name: string;\n self?: CircularObject;\n }\n\n const obj: CircularObject = { name: \"Alice\" };\n obj.self = obj;\n\n const expected = '{\"name\":\"Alice\",\"self\":\"[Circular]\"}';\n const result = JSON.stringify(obj, getJSONStringifyReplacer());\n expect(result).toEqual(expected);\n });\n});\n"],
5
+ "mappings": "AAAA,OAAS,0BAAAA,MAA8B,2CAEvC,OAAS,4CAAAC,MAAgD,4DACzD,OAAS,iBAAAC,MAAqB,+CAI9B,OAAS,4BAAAC,MAAgC,0BAEzC,SAAS,2BAA4B,IAAM,CACzC,GAAG,8DAA+D,IAAM,CACtE,MAAMC,EAAWD,EAAyB,EACpCE,EAAQ,IAAI,WAAW,CAAC,EAAG,EAAG,CAAC,CAAC,EAChCC,EAASF,EAAS,MAAOC,CAAK,EACpC,OAAOC,CAAM,EAAE,QAAQ,CACrB,IAAK,WACL,YAAa,WACb,MAAO,OACT,CAAC,CACH,CAAC,EAED,GAAG,uDAAwD,IAAM,CAC/D,MAAMC,EAAkBP,EAAuB,EACzCI,EAAWD,EAAyB,EAEpCK,EAA4C,CAChD,YAAaR,EAAuB,EACpC,KAAM,MACN,GAAI,iBACJ,SAAU,GAAG,GAAG,EAChB,UAAW,KACb,EAEMK,EAAQ,IAAIH,EAChB,CACE,gBAAAM,EACA,GAAI,iBACN,EACA,GAAG,GAAG,EACN,CAAC,EACD,CAAC,EACDP,CACF,EACMK,EAAS,KAAK,UAAUD,EAAOD,CAAQ,EACvCK,EAAW,4DAA4D,KAAK,UAChFF,CACF,CAAC,wCACDF,EAAM,MAAM,EACZ,OAAOC,CAAM,EAAE,QAAQG,CAAQ,CACjC,CAAC,EAED,GAAG,6DAA8D,IAAM,CAMrE,MAAMC,EAAsB,CAAE,KAAM,OAAQ,EAC5CA,EAAI,KAAOA,EAEX,MAAMD,EAAW,uCACXH,EAAS,KAAK,UAAUI,EAAKP,EAAyB,CAAC,EAC7D,OAAOG,CAAM,EAAE,QAAQG,CAAQ,CACjC,CAAC,CACH,CAAC",
6
+ "names": ["deviceModelStubBuilder", "DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS", "DeviceSession", "getJSONStringifyReplacer", "replacer", "value", "result", "stubDeviceModel", "connectedDevice", "expected", "obj"]
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.ts"],
4
- "sourcesContent": ["import { Left, Right } from \"purify-ts\";\nimport { assign, fromObservable, fromPromise, setup } from \"xstate\";\n\nimport { isSuccessCommandResult } from \"@api/command/model/CommandResult\";\nimport {\n GetOsVersionCommand,\n type GetOsVersionResponse,\n} from \"@api/command/os/GetOsVersionCommand\";\nimport { type InternalApi } from \"@api/device-action/DeviceAction\";\nimport { UserInteractionRequired } from \"@api/device-action/model/UserInteractionRequired\";\nimport { DEFAULT_UNLOCK_TIMEOUT_MS } from \"@api/device-action/os/Const\";\nimport { GoToDashboardDeviceAction } from \"@api/device-action/os/GoToDashboard/GoToDashboardDeviceAction\";\nimport { type StateMachineTypes } from \"@api/device-action/xstate-utils/StateMachineTypes\";\nimport {\n type DeviceActionStateMachine,\n XStateDeviceAction,\n} from \"@api/device-action/xstate-utils/XStateDeviceAction\";\nimport {\n type DeviceSessionState,\n DeviceSessionStateType,\n} from \"@api/device-session/DeviceSessionState\";\nimport {\n type GenuineCheckDAError,\n type GenuineCheckDAInput,\n type GenuineCheckDAIntermediateValue,\n type GenuineCheckDAOutput,\n type GenuineCheckStateMachineInternalState,\n type MachineDependencies,\n} from \"@api/secure-channel/device-action/GenuineCheck/types\";\nimport { ConnectToSecureChannelTask } from \"@api/secure-channel/task/ConnectToSecureChannelTask\";\nimport { SecureChannelEventType } from \"@api/secure-channel/task/types\";\nimport { type Input } from \"@api/secure-channel/types\";\nimport { isDeviceGenuine } from \"@api/secure-channel/utils\";\nimport { type DeviceVersion } from \"@internal/manager-api/model/Device\";\nimport { type FinalFirmware } from \"@internal/manager-api/model/Firmware\";\n\nexport class GenuineCheckDeviceAction extends XStateDeviceAction<\n GenuineCheckDAOutput,\n GenuineCheckDAInput,\n GenuineCheckDAError,\n GenuineCheckDAIntermediateValue,\n GenuineCheckStateMachineInternalState\n> {\n protected override makeStateMachine(\n internalApi: InternalApi,\n ): DeviceActionStateMachine<\n GenuineCheckDAOutput,\n GenuineCheckDAInput,\n GenuineCheckDAError,\n GenuineCheckDAIntermediateValue,\n GenuineCheckStateMachineInternalState\n > {\n type types = StateMachineTypes<\n GenuineCheckDAOutput,\n GenuineCheckDAInput,\n GenuineCheckDAError,\n GenuineCheckDAIntermediateValue,\n GenuineCheckStateMachineInternalState\n >;\n\n const {\n getOsVersion,\n getDeviceVersion,\n getFirmwareVersion,\n genuineCheck,\n getDeviceSessionState,\n setDeviceSessionState,\n } = this.extractDependencies(internalApi);\n\n const unlockTimeout = this.input.unlockTimeout ?? DEFAULT_UNLOCK_TIMEOUT_MS;\n\n const goToDashboardMachine = new GoToDashboardDeviceAction({\n input: {\n unlockTimeout,\n },\n }).makeStateMachine(internalApi);\n\n return setup({\n types: {\n input: {} as types[\"input\"],\n context: {} as types[\"context\"],\n output: {} as types[\"output\"],\n },\n actors: {\n goToDashboard: goToDashboardMachine,\n getOsVersion: fromPromise(getOsVersion),\n getDeviceVersion: fromPromise(getDeviceVersion),\n getFirmwareVersion: fromPromise(getFirmwareVersion),\n genuineCheck: fromObservable(genuineCheck),\n },\n guards: {\n hasError: (_) => _.context._internalState.error !== null,\n },\n actions: {\n assignErrorFromEvent: assign({\n _internalState: (_) => ({\n ..._.context._internalState,\n error: _.event[\"error\"],\n }),\n }),\n },\n }).createMachine({\n /** @xstate-layout N4IgpgJg5mDOIC5QHEwDsCuBLNYDCAFmAMYDWAImAG5bFgCCxALlgPZoB0lNdASmAEMIATwDEAbQAMAXUSgADq1hYW7OSAAeiAIwB2AGwAWDvskBOAKwAmC9YvbJADkMAaEMMQBmT2ZPazuo6SFp6SDpKG+gC+UW6omDj4RGTctAzMbJzIrAAqrOQCsAQARqwCAE4QohDsYBw4VKykdVC5+YUlZZVSskggisqqaOpaCFaGntocEwaOFkYR2oa6bh4IZsEcuta6Nmbajp76tjFx6Ni4hCQU1GmMQxzZeQVFpRVVYOXlrOUc8gA2AiYADMfgBbDitZ4dN7dGTqAYqTIjRDjSbTTyzeaGRbLVaIOa6LY7PYHI4nWIgeIXJLXVJ0e6ZR5tF6dd5XMgSeF9RFDFFjQ5WExhXQbYKGRxWKwrdyoo4cbT+UUOQz+UyeU5U86JDk3HjpB5PdqvLoQXUSbS9BRKJFqPqjKyC4V6MUWCVSmVrfySBVKsxSyxmAKSaKU6k65J6u4ZdiPMBMADysAAap9lOxqrV6mhGs1IfGk6nyum0D0ETa+favJFPNNDBtHAcQ8cQ-j1qEOJ43d5JMFG8dDJrw5dI-SDUzUImU2nMuayzyK8iq2NDELtoFVWZ9JilmY2-X9BxnNvbLYjBMzEPtSO6bcGTGsgXp8XZ5GLVb+ou7aAHaviRu1R3es220Kx-A4EMbEmVcg0kaUrwSG8UjvcdY0nMcixLTNcGzXMWnjDCZ3YedrUGJcf0QAxjElRZMWcSx5hAqxzA4Cw5i3XtRWcKUEJpXUx0ZNCCJQzDMlET5vl+AEgVBcoIRgJhCJfYjuVI21hmXKij2Y1U6PrM8230bQLE7Gs3X9MxVwpM5ENpZD9UEx9FJEoi0DnVTPzI79NB0MChSOXZRS7SQjn0Nt11Y3Z-U48xpQsXiI1vByHzjZz9VE9g50tcsvI0iiEFA0DO30QKzGC0KmJ8LYrH2OYLH2QwLF0BKkKje9DXjAAxLA5IAdwqMAMrQbC6gaJp8KYbq+oGoaSM89T+T0IxhUsGw7AcZwQIcEzvHq2xQJCZirBauy2tQpyprBfrykG1zxK+H4-kBEFwXzSaequmbXLm3lyJ8gqtNMVbbBsDbXFlAqrA7GwrCM1ddK3eKw2vU6BJSydLuu27lLct8fq-PL-qhiIFSMcZtkbZjdE9HRtC7aZlSCbd9DKkITv4lDHNSzGvpxrKP1+7yHVCYxtDJ5Y2NAyRqbbAJfF7WGJhsUVmMvZHbI55KOo1t8ahwsa8xgHXrnx3L+UdCUthZsDdG8W3dEMcGvQiIlHA2Bw4u2ZZ2dHTn0ZR80JMe6SXrk-NjbIU2FuXR1PCFUwXV7N1JWlNtHAMCCov8R2fHMbQfaS6Ntb4yN3IFgn+VCWt9HTiwQKOKZJhsCWJeCAv7KLicA9LvHsoXM3lyrkxa5AzdOwOlvtjbzU0FYCA4HUYdUb9ys1NX-6AFo6Z9A5pWCSyzBozaIY9vw5fsaxEfg9WS8L9qmTHfghDWNe-tGMXjK2Vc44mEJ7AONs3hHBnyCBYCIwZQw2Vvh3e+aEWQwlNDlaO+V-BbhMDiRsIYcSqjxBDSYJlFQBBKtsMCbsJjtzOlzI0rJYRmkjEg9eDomq+HJqYUUQYKoQw9BwSwoR9DSgONTO2FC0YdSnENBhb8vD+GAV2ckLME72H3GLaYtUdJBjFjXERK8u7iNcrqSRQtEAb0lAqSUuh971iPk7AkbEOCq28KBYmjttFa10UpEshjCajBxCZeqngaL2BCttGxBV-C1kpm6L2U8kZQMSjA86qUPGvmuF4-kh8pgGCahEJqsNTyVSmPMZu9VoqQK1BHSh-t3rTRuhI-uyD-p022PYkKys3YKIASfMCxhljRT0OYfex0b7xMqWInmtT9H0PqYw1EIVRYYL0MFJqRwtrSnHs3BwmIQiOFcZ3ISFS0kx3mMA221hHDnJqjiOm9dHasRqmVR0cx+w7OGa1URXcKkGOmVIhAkhR5Q1Yvwt0JTmL1ReXEt5OjYwAGUMDEDoLAeA3yjFjEsD0+Yug9AzFhp4ECBghQ4qMuclsl9dmwM4AAUQeuUQ5+VvA1S2JKbOzEWZ1xPm6Q8QiJSSwdkcDUMQohAA */\n id: \"GenuineCheckDeviceAction\",\n initial: \"DeviceReady\",\n context: (_) => {\n return {\n input: {\n unlockTimeout: _.input.unlockTimeout,\n },\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n _internalState: {\n error: null,\n result: { isGenuine: false },\n getOsVersionResponse: null,\n deviceVersion: null,\n firmwareVersion: null,\n },\n };\n },\n states: {\n DeviceReady: {\n always: {\n target: \"GoToDashboard\",\n },\n },\n GoToDashboard: {\n invoke: {\n id: \"goToDashboard\",\n src: \"goToDashboard\",\n input: (_) => ({\n unlockTimeout: _.context.input.unlockTimeout,\n }),\n onSnapshot: {\n actions: assign({\n intermediateValue: (_) => ({\n ..._.context.intermediateValue,\n requiredUserInteraction:\n _.event.snapshot.context.intermediateValue\n .requiredUserInteraction,\n }),\n }),\n },\n onDone: {\n target: \"GoToDashboardCheck\",\n actions: assign({\n _internalState: (_) => {\n return _.event.output.caseOf<GenuineCheckStateMachineInternalState>(\n {\n Right: () => _.context._internalState,\n Left: (error) => ({\n ..._.context._internalState,\n error,\n }),\n },\n );\n },\n }),\n },\n onError: {\n target: \"Error\",\n actions: \"assignErrorFromEvent\",\n },\n },\n },\n GoToDashboardCheck: {\n always: [\n {\n target: \"Error\",\n guard: \"hasError\",\n },\n {\n target: \"GetOsVersion\",\n },\n ],\n },\n GetOsVersion: {\n invoke: {\n id: \"getOsVersion\",\n src: \"getOsVersion\",\n input: (_) => undefined,\n onDone: {\n target: \"GetOsVersionCheck\",\n actions: assign({\n _internalState: (_) => {\n if (isSuccessCommandResult(_.event.output)) {\n const currentState: DeviceSessionState =\n getDeviceSessionState();\n const isSecureConnectionAllowed =\n _.event.output.data.secureElementFlags\n .isSecureConnectionAllowed;\n if (\n currentState.sessionStateType !==\n DeviceSessionStateType.Connected\n ) {\n setDeviceSessionState({\n ...currentState,\n isSecureConnectionAllowed,\n });\n }\n return {\n ..._.context._internalState,\n getOsVersionResponse: _.event.output.data,\n };\n }\n return {\n ..._.context._internalState,\n error: _.event.output.error,\n };\n },\n }),\n },\n },\n },\n GetOsVersionCheck: {\n always: [\n {\n target: \"Error\",\n guard: \"hasError\",\n },\n {\n target: \"GetDeviceVersion\",\n },\n ],\n },\n GetDeviceVersion: {\n invoke: {\n id: \"getDeviceVersion\",\n src: \"getDeviceVersion\",\n input: (_) => ({\n deviceInfo: _.context._internalState.getOsVersionResponse!,\n }),\n onDone: {\n target: \"GetDeviceVersionCheck\",\n actions: assign({\n _internalState: (_) => {\n return _.event.output.caseOf<GenuineCheckStateMachineInternalState>(\n {\n Right: (deviceVersion) => ({\n ..._.context._internalState,\n deviceVersion,\n }),\n Left: (error) => ({\n ..._.context._internalState,\n error,\n }),\n },\n );\n },\n }),\n },\n onError: {\n target: \"Error\",\n actions: \"assignErrorFromEvent\",\n },\n },\n },\n GetDeviceVersionCheck: {\n always: [\n {\n target: \"Error\",\n guard: \"hasError\",\n },\n { target: \"GetFirmwareVersion\" },\n ],\n },\n GetFirmwareVersion: {\n invoke: {\n id: \"getFirmwareVersion\",\n src: \"getFirmwareVersion\",\n input: (_) => ({\n deviceInfo: _.context._internalState.getOsVersionResponse!,\n deviceVersion: _.context._internalState.deviceVersion!,\n }),\n onDone: {\n target: \"GetFirmwareVersionCheck\",\n actions: assign({\n _internalState: (_) => {\n return _.event.output.caseOf<GenuineCheckStateMachineInternalState>(\n {\n Right: (firmwareVersion) => ({\n ..._.context._internalState,\n firmwareVersion,\n }),\n Left: (error) => ({\n ..._.context._internalState,\n error,\n }),\n },\n );\n },\n }),\n },\n onError: {\n target: \"Error\",\n actions: \"assignErrorFromEvent\",\n },\n },\n },\n GetFirmwareVersionCheck: {\n always: [\n {\n target: \"Error\",\n guard: \"hasError\",\n },\n { target: \"GenuineCheck\" },\n ],\n },\n GenuineCheck: {\n invoke: {\n id: \"genuineCheck\",\n src: \"genuineCheck\",\n input: (_) => ({\n deviceInfo: _.context._internalState.getOsVersionResponse!,\n finalFirmware: _.context._internalState.firmwareVersion!,\n }),\n onSnapshot: {\n actions: assign({\n intermediateValue: (_) => {\n switch (_.event.snapshot.context?.type) {\n case SecureChannelEventType.PermissionRequested: {\n return {\n requiredUserInteraction:\n UserInteractionRequired.AllowSecureConnection,\n };\n }\n case SecureChannelEventType.PermissionGranted: {\n return {\n requiredUserInteraction: UserInteractionRequired.None,\n };\n }\n default:\n return {\n ..._.context.intermediateValue,\n };\n }\n },\n _internalState: (_) => {\n if (\n _.event.snapshot.context?.type ===\n SecureChannelEventType.Result\n ) {\n return {\n ..._.context._internalState,\n result: {\n isGenuine: isDeviceGenuine(\n _.event.snapshot.context.payload,\n ),\n },\n };\n }\n return _.context._internalState;\n },\n }),\n },\n onDone: {\n target: \"GenuineCheckCheck\",\n },\n onError: {\n target: \"Error\",\n actions: \"assignErrorFromEvent\",\n },\n },\n },\n GenuineCheckCheck: {\n always: [\n {\n target: \"Error\",\n guard: \"hasError\",\n },\n {\n target: \"Success\",\n },\n ],\n },\n Success: {\n type: \"final\",\n },\n Error: {\n type: \"final\",\n },\n },\n output: (_) => {\n if (_.context._internalState.error) {\n return Left(_.context._internalState.error);\n } else {\n return Right(_.context._internalState.result);\n }\n },\n });\n }\n\n private extractDependencies(internalApi: InternalApi): MachineDependencies {\n const provider = 1; // TODO: get the provider from user configuration\n\n const getOsVersion = () =>\n internalApi.sendCommand(new GetOsVersionCommand());\n\n const getDeviceVersion = ({\n input,\n }: Input<{ deviceInfo: GetOsVersionResponse }>) => {\n const { deviceInfo } = input;\n return internalApi\n .getManagerApiService()\n .getDeviceVersion(deviceInfo, provider);\n };\n\n const getFirmwareVersion = ({\n input,\n }: Input<{\n deviceInfo: GetOsVersionResponse;\n deviceVersion: DeviceVersion;\n }>) => {\n const { deviceInfo, deviceVersion } = input;\n return internalApi\n .getManagerApiService()\n .getFirmwareVersion(deviceInfo, deviceVersion, provider);\n };\n\n const genuineCheck = ({\n input,\n }: Input<{\n deviceInfo: GetOsVersionResponse;\n finalFirmware: FinalFirmware;\n }>) => {\n const { deviceInfo, finalFirmware } = input;\n const eitherConnection = internalApi\n .getSecureChannelService()\n .genuineCheck(deviceInfo, finalFirmware);\n return new ConnectToSecureChannelTask(internalApi, {\n connection: eitherConnection,\n }).run();\n };\n\n return {\n getOsVersion,\n getDeviceVersion,\n getFirmwareVersion,\n genuineCheck,\n getDeviceSessionState: () => internalApi.getDeviceSessionState(),\n setDeviceSessionState: (state: DeviceSessionState) =>\n internalApi.setDeviceSessionState(state),\n };\n }\n}\n"],
5
- "mappings": "AAAA,OAAS,QAAAA,EAAM,SAAAC,MAAa,YAC5B,OAAS,UAAAC,EAAQ,kBAAAC,EAAgB,eAAAC,EAAa,SAAAC,MAAa,SAE3D,OAAS,0BAAAC,MAA8B,mCACvC,OACE,uBAAAC,MAEK,sCAEP,OAAS,2BAAAC,MAA+B,mDACxC,OAAS,6BAAAC,MAAiC,8BAC1C,OAAS,6BAAAC,MAAiC,gEAE1C,OAEE,sBAAAC,MACK,qDACP,OAEE,0BAAAC,MACK,yCASP,OAAS,8BAAAC,MAAkC,sDAC3C,OAAS,0BAAAC,MAA8B,iCAEvC,OAAS,mBAAAC,MAAuB,4BAIzB,MAAMC,UAAiCL,CAM5C,CACmB,iBACjBM,EAOA,CASA,KAAM,CACJ,aAAAC,EACA,iBAAAC,EACA,mBAAAC,EACA,aAAAC,EACA,sBAAAC,EACA,sBAAAC,CACF,EAAI,KAAK,oBAAoBN,CAAW,EAElCO,EAAgB,KAAK,MAAM,eAAiBf,EAE5CgB,EAAuB,IAAIf,EAA0B,CACzD,MAAO,CACL,cAAAc,CACF,CACF,CAAC,EAAE,iBAAiBP,CAAW,EAE/B,OAAOZ,EAAM,CACX,MAAO,CACL,MAAO,CAAC,EACR,QAAS,CAAC,EACV,OAAQ,CAAC,CACX,EACA,OAAQ,CACN,cAAeoB,EACf,aAAcrB,EAAYc,CAAY,EACtC,iBAAkBd,EAAYe,CAAgB,EAC9C,mBAAoBf,EAAYgB,CAAkB,EAClD,aAAcjB,EAAekB,CAAY,CAC3C,EACA,OAAQ,CACN,SAAWK,GAAMA,EAAE,QAAQ,eAAe,QAAU,IACtD,EACA,QAAS,CACP,qBAAsBxB,EAAO,CAC3B,eAAiBwB,IAAO,CACtB,GAAGA,EAAE,QAAQ,eACb,MAAOA,EAAE,MAAM,KACjB,EACF,CAAC,CACH,CACF,CAAC,EAAE,cAAc,CAEf,GAAI,2BACJ,QAAS,cACT,QAAUA,IACD,CACL,MAAO,CACL,cAAeA,EAAE,MAAM,aACzB,EACA,kBAAmB,CACjB,wBAAyBlB,EAAwB,IACnD,EACA,eAAgB,CACd,MAAO,KACP,OAAQ,CAAE,UAAW,EAAM,EAC3B,qBAAsB,KACtB,cAAe,KACf,gBAAiB,IACnB,CACF,GAEF,OAAQ,CACN,YAAa,CACX,OAAQ,CACN,OAAQ,eACV,CACF,EACA,cAAe,CACb,OAAQ,CACN,GAAI,gBACJ,IAAK,gBACL,MAAQkB,IAAO,CACb,cAAeA,EAAE,QAAQ,MAAM,aACjC,GACA,WAAY,CACV,QAASxB,EAAO,CACd,kBAAoBwB,IAAO,CACzB,GAAGA,EAAE,QAAQ,kBACb,wBACEA,EAAE,MAAM,SAAS,QAAQ,kBACtB,uBACP,EACF,CAAC,CACH,EACA,OAAQ,CACN,OAAQ,qBACR,QAASxB,EAAO,CACd,eAAiBwB,GACRA,EAAE,MAAM,OAAO,OACpB,CACE,MAAO,IAAMA,EAAE,QAAQ,eACvB,KAAOC,IAAW,CAChB,GAAGD,EAAE,QAAQ,eACb,MAAAC,CACF,EACF,CACF,CAEJ,CAAC,CACH,EACA,QAAS,CACP,OAAQ,QACR,QAAS,sBACX,CACF,CACF,EACA,mBAAoB,CAClB,OAAQ,CACN,CACE,OAAQ,QACR,MAAO,UACT,EACA,CACE,OAAQ,cACV,CACF,CACF,EACA,aAAc,CACZ,OAAQ,CACN,GAAI,eACJ,IAAK,eACL,MAAQD,GAAG,GACX,OAAQ,CACN,OAAQ,oBACR,QAASxB,EAAO,CACd,eAAiBwB,GAAM,CACrB,GAAIpB,EAAuBoB,EAAE,MAAM,MAAM,EAAG,CAC1C,MAAME,EACJN,EAAsB,EAClBO,EACJH,EAAE,MAAM,OAAO,KAAK,mBACjB,0BACL,OACEE,EAAa,mBACbhB,EAAuB,WAEvBW,EAAsB,CACpB,GAAGK,EACH,0BAAAC,CACF,CAAC,EAEI,CACL,GAAGH,EAAE,QAAQ,eACb,qBAAsBA,EAAE,MAAM,OAAO,IACvC,CACF,CACA,MAAO,CACL,GAAGA,EAAE,QAAQ,eACb,MAAOA,EAAE,MAAM,OAAO,KACxB,CACF,CACF,CAAC,CACH,CACF,CACF,EACA,kBAAmB,CACjB,OAAQ,CACN,CACE,OAAQ,QACR,MAAO,UACT,EACA,CACE,OAAQ,kBACV,CACF,CACF,EACA,iBAAkB,CAChB,OAAQ,CACN,GAAI,mBACJ,IAAK,mBACL,MAAQA,IAAO,CACb,WAAYA,EAAE,QAAQ,eAAe,oBACvC,GACA,OAAQ,CACN,OAAQ,wBACR,QAASxB,EAAO,CACd,eAAiBwB,GACRA,EAAE,MAAM,OAAO,OACpB,CACE,MAAQI,IAAmB,CACzB,GAAGJ,EAAE,QAAQ,eACb,cAAAI,CACF,GACA,KAAOH,IAAW,CAChB,GAAGD,EAAE,QAAQ,eACb,MAAAC,CACF,EACF,CACF,CAEJ,CAAC,CACH,EACA,QAAS,CACP,OAAQ,QACR,QAAS,sBACX,CACF,CACF,EACA,sBAAuB,CACrB,OAAQ,CACN,CACE,OAAQ,QACR,MAAO,UACT,EACA,CAAE,OAAQ,oBAAqB,CACjC,CACF,EACA,mBAAoB,CAClB,OAAQ,CACN,GAAI,qBACJ,IAAK,qBACL,MAAQD,IAAO,CACb,WAAYA,EAAE,QAAQ,eAAe,qBACrC,cAAeA,EAAE,QAAQ,eAAe,aAC1C,GACA,OAAQ,CACN,OAAQ,0BACR,QAASxB,EAAO,CACd,eAAiBwB,GACRA,EAAE,MAAM,OAAO,OACpB,CACE,MAAQK,IAAqB,CAC3B,GAAGL,EAAE,QAAQ,eACb,gBAAAK,CACF,GACA,KAAOJ,IAAW,CAChB,GAAGD,EAAE,QAAQ,eACb,MAAAC,CACF,EACF,CACF,CAEJ,CAAC,CACH,EACA,QAAS,CACP,OAAQ,QACR,QAAS,sBACX,CACF,CACF,EACA,wBAAyB,CACvB,OAAQ,CACN,CACE,OAAQ,QACR,MAAO,UACT,EACA,CAAE,OAAQ,cAAe,CAC3B,CACF,EACA,aAAc,CACZ,OAAQ,CACN,GAAI,eACJ,IAAK,eACL,MAAQD,IAAO,CACb,WAAYA,EAAE,QAAQ,eAAe,qBACrC,cAAeA,EAAE,QAAQ,eAAe,eAC1C,GACA,WAAY,CACV,QAASxB,EAAO,CACd,kBAAoBwB,GAAM,CACxB,OAAQA,EAAE,MAAM,SAAS,SAAS,KAAM,CACtC,KAAKZ,EAAuB,oBAC1B,MAAO,CACL,wBACEN,EAAwB,qBAC5B,EAEF,KAAKM,EAAuB,kBAC1B,MAAO,CACL,wBAAyBN,EAAwB,IACnD,EAEF,QACE,MAAO,CACL,GAAGkB,EAAE,QAAQ,iBACf,CACJ,CACF,EACA,eAAiBA,GAEbA,EAAE,MAAM,SAAS,SAAS,OAC1BZ,EAAuB,OAEhB,CACL,GAAGY,EAAE,QAAQ,eACb,OAAQ,CACN,UAAWX,EACTW,EAAE,MAAM,SAAS,QAAQ,OAC3B,CACF,CACF,EAEKA,EAAE,QAAQ,cAErB,CAAC,CACH,EACA,OAAQ,CACN,OAAQ,mBACV,EACA,QAAS,CACP,OAAQ,QACR,QAAS,sBACX,CACF,CACF,EACA,kBAAmB,CACjB,OAAQ,CACN,CACE,OAAQ,QACR,MAAO,UACT,EACA,CACE,OAAQ,SACV,CACF,CACF,EACA,QAAS,CACP,KAAM,OACR,EACA,MAAO,CACL,KAAM,OACR,CACF,EACA,OAASA,GACHA,EAAE,QAAQ,eAAe,MACpB1B,EAAK0B,EAAE,QAAQ,eAAe,KAAK,EAEnCzB,EAAMyB,EAAE,QAAQ,eAAe,MAAM,CAGlD,CAAC,CACH,CAEQ,oBAAoBT,EAA+C,CA0CzE,MAAO,CACL,aAxCmB,IACnBA,EAAY,YAAY,IAAIV,CAAqB,EAwCjD,iBAtCuB,CAAC,CACxB,MAAAyB,CACF,IAAmD,CACjD,KAAM,CAAE,WAAAC,CAAW,EAAID,EACvB,OAAOf,EACJ,qBAAqB,EACrB,iBAAiBgB,EAAY,CAAQ,CAC1C,EAgCE,mBA9ByB,CAAC,CAC1B,MAAAD,CACF,IAGO,CACL,KAAM,CAAE,WAAAC,EAAY,cAAAH,CAAc,EAAIE,EACtC,OAAOf,EACJ,qBAAqB,EACrB,mBAAmBgB,EAAYH,EAAe,CAAQ,CAC3D,EAqBE,aAnBmB,CAAC,CACpB,MAAAE,CACF,IAGO,CACL,KAAM,CAAE,WAAAC,EAAY,cAAAC,CAAc,EAAIF,EAChCG,EAAmBlB,EACtB,wBAAwB,EACxB,aAAagB,EAAYC,CAAa,EACzC,OAAO,IAAIrB,EAA2BI,EAAa,CACjD,WAAYkB,CACd,CAAC,EAAE,IAAI,CACT,EAOE,sBAAuB,IAAMlB,EAAY,sBAAsB,EAC/D,sBAAwBmB,GACtBnB,EAAY,sBAAsBmB,CAAK,CAC3C,CACF,CACF",
4
+ "sourcesContent": ["import { Left, Right } from \"purify-ts\";\nimport { assign, fromObservable, fromPromise, setup } from \"xstate\";\n\nimport { isSuccessCommandResult } from \"@api/command/model/CommandResult\";\nimport {\n GetOsVersionCommand,\n type GetOsVersionResponse,\n} from \"@api/command/os/GetOsVersionCommand\";\nimport { type InternalApi } from \"@api/device-action/DeviceAction\";\nimport { UserInteractionRequired } from \"@api/device-action/model/UserInteractionRequired\";\nimport { DEFAULT_UNLOCK_TIMEOUT_MS } from \"@api/device-action/os/Const\";\nimport { GoToDashboardDeviceAction } from \"@api/device-action/os/GoToDashboard/GoToDashboardDeviceAction\";\nimport { type StateMachineTypes } from \"@api/device-action/xstate-utils/StateMachineTypes\";\nimport {\n type DeviceActionStateMachine,\n XStateDeviceAction,\n} from \"@api/device-action/xstate-utils/XStateDeviceAction\";\nimport {\n type DeviceSessionState,\n DeviceSessionStateType,\n} from \"@api/device-session/DeviceSessionState\";\nimport {\n type GenuineCheckDAError,\n type GenuineCheckDAInput,\n type GenuineCheckDAIntermediateValue,\n type GenuineCheckDAOutput,\n type GenuineCheckStateMachineInternalState,\n type MachineDependencies,\n} from \"@api/secure-channel/device-action/GenuineCheck/types\";\nimport { ConnectToSecureChannelTask } from \"@api/secure-channel/task/ConnectToSecureChannelTask\";\nimport { SecureChannelEventType } from \"@api/secure-channel/task/types\";\nimport { type Input } from \"@api/secure-channel/types\";\nimport { isDeviceGenuine } from \"@api/secure-channel/utils\";\nimport { type DeviceVersion } from \"@internal/manager-api/model/Device\";\nimport { type FinalFirmware } from \"@internal/manager-api/model/Firmware\";\n\nexport class GenuineCheckDeviceAction extends XStateDeviceAction<\n GenuineCheckDAOutput,\n GenuineCheckDAInput,\n GenuineCheckDAError,\n GenuineCheckDAIntermediateValue,\n GenuineCheckStateMachineInternalState\n> {\n override makeStateMachine(\n internalApi: InternalApi,\n ): DeviceActionStateMachine<\n GenuineCheckDAOutput,\n GenuineCheckDAInput,\n GenuineCheckDAError,\n GenuineCheckDAIntermediateValue,\n GenuineCheckStateMachineInternalState\n > {\n type types = StateMachineTypes<\n GenuineCheckDAOutput,\n GenuineCheckDAInput,\n GenuineCheckDAError,\n GenuineCheckDAIntermediateValue,\n GenuineCheckStateMachineInternalState\n >;\n\n const {\n getOsVersion,\n getDeviceVersion,\n getFirmwareVersion,\n genuineCheck,\n getDeviceSessionState,\n setDeviceSessionState,\n } = this.extractDependencies(internalApi);\n\n const unlockTimeout = this.input.unlockTimeout ?? DEFAULT_UNLOCK_TIMEOUT_MS;\n\n const goToDashboardMachine = new GoToDashboardDeviceAction({\n input: {\n unlockTimeout,\n },\n }).makeStateMachine(internalApi);\n\n return setup({\n types: {\n input: {} as types[\"input\"],\n context: {} as types[\"context\"],\n output: {} as types[\"output\"],\n },\n actors: {\n goToDashboard: goToDashboardMachine,\n getOsVersion: fromPromise(getOsVersion),\n getDeviceVersion: fromPromise(getDeviceVersion),\n getFirmwareVersion: fromPromise(getFirmwareVersion),\n genuineCheck: fromObservable(genuineCheck),\n },\n guards: {\n hasError: (_) => _.context._internalState.error !== null,\n },\n actions: {\n assignErrorFromEvent: assign({\n _internalState: (_) => ({\n ..._.context._internalState,\n error: _.event[\"error\"],\n }),\n }),\n },\n }).createMachine({\n /** @xstate-layout N4IgpgJg5mDOIC5QHEwDsCuBLNYDCAFmAMYDWAImAG5bFgCCxALlgPZoB0lNdASmAEMIATwDEAbQAMAXUSgADq1hYW7OSAAeiAIwB2AGwAWDvskBOAKwAmC9YvbJADkMAaEMMQBmT2ZPazuo6SFp6SDpKG+gC+UW6omDj4RGTctAzMbJzIrAAqrOQCsAQARqwCAE4QohDsYBw4VKykdVC5+YUlZZVSskggisqqaOpaCFaGntocEwaOFkYR2oa6bh4IZsEcuta6Nmbajp76tjFx6Ni4hCQU1GmMQxzZeQVFpRVVYOXlrOUc8gA2AiYADMfgBbDitZ4dN7dGTqAYqTIjRDjSbTTyzeaGRbLVaIOa6LY7PYHI4nWIgeIXJLXVJ0e6ZR5tF6dd5XMgSeF9RFDFFjQ5WExhXQbYKGRxWKwrdyoo4cbT+UUOQz+UyeU5U86JDk3HjpB5PdqvLoQXUSbS9BRKJFqPqjKyC4V6MUWCVSmVrfySBVKsxSyxmAKSaKU6k65J6u4ZdiPMBMADysAAap9lOxqrV6mhGs1IfGk6nyum0D0ETa+favJFPNNDBtHAcQ8cQ-j1qEOJ43d5JMFG8dDJrw5dI-SDUzUImU2nMuayzyK8iq2NDELtoFVWZ9JilmY2-X9BxnNvbLYjBMzEPtSO6bcGTGsgXp8XZ5GLVb+ou7aAHaviRu1R3es220Kx-A4EMbEmVcg0kaUrwSG8UjvcdY0nMcixLTNcGzXMWnjDCZ3YedrUGJcf0QAxjElRZMWcSx5hAqxzA4Cw5i3XtRWcKUEJpXUx0ZNCCJQzDMlET5vl+AEgVBcoIRgJhCJfYjuVI21hmXKij2Y1U6PrM8230bQLE7Gs3X9MxVwpM5ENpZD9UEx9FJEoi0DnVTPzI79NB0MChSOXZRS7SQjn0Nt11Y3Z-U48xpQsXiI1vByHzjZz9VE9g50tcsvI0iiEFA0DO30QKzGC0KmJ8LYrH2OYLH2QwLF0BKkKje9DXjAAxLA5IAdwqMAMrQbC6gaJp8KYbq+oGoaSM89T+T0IxhUsGw7AcZwQIcEzvHq2xQJCZirBauy2tQpyprBfrykG1zxK+H4-kBEFwXzSaequmbXLm3lyJ8gqtNMVbbBsDbXFlAqrA7GwrCM1ddK3eKw2vU6BJSydLuu27lLct8fq-PL-qhiIFSMcZtkbZjdE9HRtC7aZlSCbd9DKkITv4lDHNSzGvpxrKP1+7yHVCYxtDJ5Y2NAyRqbbAJfF7WGJhsUVmMvZHbI55KOo1t8ahwsa8xgHXrnx3L+UdCUthZsDdG8W3dEMcGvQiIlHA2Bw4u2ZZ2dHTn0ZR80JMe6SXrk-NjbIU2FuXR1PCFUwXV7N1JWlNtHAMCCov8R2fHMbQfaS6Ntb4yN3IFgn+VCWt9HTiwQKOKZJhsCWJeCAv7KLicA9LvHsoXM3lyrkxa5AzdOwOlvtjbzU0FYCA4HUYdUb9ys1NX-6AFo6Z9A5pWCSyzBozaIY9vw5fsaxEfg9WS8L9qmTHfghDWNe-tGMXjK2Vc44mEJ7AONs3hHBnyCBYCIwZQw2Vvh3e+aEWQwlNDlaO+V-BbhMDiRsIYcSqjxBDSYJlFQBBKtsMCbsJjtzOlzI0rJYRmkjEg9eDomq+HJqYUUQYKoQw9BwSwoR9DSgONTO2FC0YdSnENBhb8vD+GAV2ckLME72H3GLaYtUdJBjFjXERK8u7iNcrqSRQtEAb0lAqSUuh971iPk7AkbEOCq28KBYmjttFa10UpEshjCajBxCZeqngaL2BCttGxBV-C1kpm6L2U8kZQMSjA86qUPGvmuF4-kh8pgGCahEJqsNTyVSmPMZu9VoqQK1BHSh-t3rTRuhI-uyD-p022PYkKys3YKIASfMCxhljRT0OYfex0b7xMqWInmtT9H0PqYw1EIVRYYL0MFJqRwtrSnHs3BwmIQiOFcZ3ISFS0kx3mMA221hHDnJqjiOm9dHasRqmVR0cx+w7OGa1URXcKkGOmVIhAkhR5Q1Yvwt0JTmL1ReXEt5OjYwAGUMDEDoLAeA3yjFjEsD0+Yug9AzFhp4ECBghQ4qMuclsl9dmwM4AAUQeuUQ5+VvA1S2JKbOzEWZ1xPm6Q8QiJSSwdkcDUMQohAA */\n id: \"GenuineCheckDeviceAction\",\n initial: \"DeviceReady\",\n context: (_) => {\n return {\n input: {\n unlockTimeout: _.input.unlockTimeout,\n },\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n _internalState: {\n error: null,\n result: { isGenuine: false },\n getOsVersionResponse: null,\n deviceVersion: null,\n firmwareVersion: null,\n },\n };\n },\n states: {\n DeviceReady: {\n always: {\n target: \"GoToDashboard\",\n },\n },\n GoToDashboard: {\n invoke: {\n id: \"goToDashboard\",\n src: \"goToDashboard\",\n input: (_) => ({\n unlockTimeout: _.context.input.unlockTimeout,\n }),\n onSnapshot: {\n actions: assign({\n intermediateValue: (_) => ({\n ..._.context.intermediateValue,\n requiredUserInteraction:\n _.event.snapshot.context.intermediateValue\n .requiredUserInteraction,\n }),\n }),\n },\n onDone: {\n target: \"GoToDashboardCheck\",\n actions: assign({\n _internalState: (_) =>\n _.event.output.caseOf<GenuineCheckStateMachineInternalState>({\n Right: () => _.context._internalState,\n Left: (error) => ({\n ..._.context._internalState,\n error,\n }),\n }),\n }),\n },\n onError: {\n target: \"Error\",\n actions: \"assignErrorFromEvent\",\n },\n },\n },\n GoToDashboardCheck: {\n always: [\n {\n target: \"Error\",\n guard: \"hasError\",\n },\n {\n target: \"GetOsVersion\",\n },\n ],\n },\n GetOsVersion: {\n invoke: {\n id: \"getOsVersion\",\n src: \"getOsVersion\",\n input: (_) => undefined,\n onDone: {\n target: \"GetOsVersionCheck\",\n actions: assign({\n _internalState: (_) => {\n if (isSuccessCommandResult(_.event.output)) {\n const currentState: DeviceSessionState =\n getDeviceSessionState();\n const isSecureConnectionAllowed =\n _.event.output.data.secureElementFlags\n .isSecureConnectionAllowed;\n if (\n currentState.sessionStateType !==\n DeviceSessionStateType.Connected\n ) {\n setDeviceSessionState({\n ...currentState,\n isSecureConnectionAllowed,\n });\n }\n return {\n ..._.context._internalState,\n getOsVersionResponse: _.event.output.data,\n };\n }\n return {\n ..._.context._internalState,\n error: _.event.output.error,\n };\n },\n }),\n },\n },\n },\n GetOsVersionCheck: {\n always: [\n {\n target: \"Error\",\n guard: \"hasError\",\n },\n {\n target: \"GetDeviceVersion\",\n },\n ],\n },\n GetDeviceVersion: {\n invoke: {\n id: \"getDeviceVersion\",\n src: \"getDeviceVersion\",\n input: (_) => ({\n deviceInfo: _.context._internalState.getOsVersionResponse!,\n }),\n onDone: {\n target: \"GetDeviceVersionCheck\",\n actions: assign({\n _internalState: (_) =>\n _.event.output.caseOf<GenuineCheckStateMachineInternalState>({\n Right: (deviceVersion) => ({\n ..._.context._internalState,\n deviceVersion,\n }),\n Left: (error) => ({\n ..._.context._internalState,\n error,\n }),\n }),\n }),\n },\n onError: {\n target: \"Error\",\n actions: \"assignErrorFromEvent\",\n },\n },\n },\n GetDeviceVersionCheck: {\n always: [\n {\n target: \"Error\",\n guard: \"hasError\",\n },\n { target: \"GetFirmwareVersion\" },\n ],\n },\n GetFirmwareVersion: {\n invoke: {\n id: \"getFirmwareVersion\",\n src: \"getFirmwareVersion\",\n input: (_) => ({\n deviceInfo: _.context._internalState.getOsVersionResponse!,\n deviceVersion: _.context._internalState.deviceVersion!,\n }),\n onDone: {\n target: \"GetFirmwareVersionCheck\",\n actions: assign({\n _internalState: (_) =>\n _.event.output.caseOf<GenuineCheckStateMachineInternalState>({\n Right: (firmwareVersion) => ({\n ..._.context._internalState,\n firmwareVersion,\n }),\n Left: (error) => ({\n ..._.context._internalState,\n error,\n }),\n }),\n }),\n },\n onError: {\n target: \"Error\",\n actions: \"assignErrorFromEvent\",\n },\n },\n },\n GetFirmwareVersionCheck: {\n always: [\n {\n target: \"Error\",\n guard: \"hasError\",\n },\n { target: \"GenuineCheck\" },\n ],\n },\n GenuineCheck: {\n invoke: {\n id: \"genuineCheck\",\n src: \"genuineCheck\",\n input: (_) => ({\n deviceInfo: _.context._internalState.getOsVersionResponse!,\n finalFirmware: _.context._internalState.firmwareVersion!,\n }),\n onSnapshot: {\n actions: assign({\n intermediateValue: (_) => {\n switch (_.event.snapshot.context?.type) {\n case SecureChannelEventType.PermissionRequested: {\n return {\n requiredUserInteraction:\n UserInteractionRequired.AllowSecureConnection,\n };\n }\n case SecureChannelEventType.PermissionGranted: {\n return {\n requiredUserInteraction: UserInteractionRequired.None,\n };\n }\n default:\n return {\n ..._.context.intermediateValue,\n };\n }\n },\n _internalState: (_) => {\n if (\n _.event.snapshot.context?.type ===\n SecureChannelEventType.Result\n ) {\n return {\n ..._.context._internalState,\n result: {\n isGenuine: isDeviceGenuine(\n _.event.snapshot.context.payload,\n ),\n },\n };\n }\n return _.context._internalState;\n },\n }),\n },\n onDone: {\n target: \"GenuineCheckCheck\",\n },\n onError: {\n target: \"Error\",\n actions: \"assignErrorFromEvent\",\n },\n },\n },\n GenuineCheckCheck: {\n always: [\n {\n target: \"Error\",\n guard: \"hasError\",\n },\n {\n target: \"Success\",\n },\n ],\n },\n Success: {\n type: \"final\",\n },\n Error: {\n type: \"final\",\n },\n },\n output: (_) => {\n if (_.context._internalState.error) {\n return Left(_.context._internalState.error);\n } else {\n return Right(_.context._internalState.result);\n }\n },\n });\n }\n\n extractDependencies(internalApi: InternalApi): MachineDependencies {\n const provider = 1; // TODO: get the provider from user configuration\n\n const getOsVersion = () =>\n internalApi.sendCommand(new GetOsVersionCommand());\n\n const getDeviceVersion = ({\n input,\n }: Input<{ deviceInfo: GetOsVersionResponse }>) => {\n const { deviceInfo } = input;\n return internalApi\n .getManagerApiService()\n .getDeviceVersion(deviceInfo, provider);\n };\n\n const getFirmwareVersion = ({\n input,\n }: Input<{\n deviceInfo: GetOsVersionResponse;\n deviceVersion: DeviceVersion;\n }>) => {\n const { deviceInfo, deviceVersion } = input;\n return internalApi\n .getManagerApiService()\n .getFirmwareVersion(deviceInfo, deviceVersion, provider);\n };\n\n const genuineCheck = ({\n input,\n }: Input<{\n deviceInfo: GetOsVersionResponse;\n finalFirmware: FinalFirmware;\n }>) => {\n const { deviceInfo, finalFirmware } = input;\n const eitherConnection = internalApi\n .getSecureChannelService()\n .genuineCheck(deviceInfo, finalFirmware);\n return new ConnectToSecureChannelTask(internalApi, {\n connection: eitherConnection,\n }).run();\n };\n\n return {\n getOsVersion,\n getDeviceVersion,\n getFirmwareVersion,\n genuineCheck,\n getDeviceSessionState: () => internalApi.getDeviceSessionState(),\n setDeviceSessionState: (state: DeviceSessionState) =>\n internalApi.setDeviceSessionState(state),\n };\n }\n}\n"],
5
+ "mappings": "AAAA,OAAS,QAAAA,EAAM,SAAAC,MAAa,YAC5B,OAAS,UAAAC,EAAQ,kBAAAC,EAAgB,eAAAC,EAAa,SAAAC,MAAa,SAE3D,OAAS,0BAAAC,MAA8B,mCACvC,OACE,uBAAAC,MAEK,sCAEP,OAAS,2BAAAC,MAA+B,mDACxC,OAAS,6BAAAC,MAAiC,8BAC1C,OAAS,6BAAAC,MAAiC,gEAE1C,OAEE,sBAAAC,MACK,qDACP,OAEE,0BAAAC,MACK,yCASP,OAAS,8BAAAC,MAAkC,sDAC3C,OAAS,0BAAAC,MAA8B,iCAEvC,OAAS,mBAAAC,MAAuB,4BAIzB,MAAMC,UAAiCL,CAM5C,CACS,iBACPM,EAOA,CASA,KAAM,CACJ,aAAAC,EACA,iBAAAC,EACA,mBAAAC,EACA,aAAAC,EACA,sBAAAC,EACA,sBAAAC,CACF,EAAI,KAAK,oBAAoBN,CAAW,EAElCO,EAAgB,KAAK,MAAM,eAAiBf,EAE5CgB,EAAuB,IAAIf,EAA0B,CACzD,MAAO,CACL,cAAAc,CACF,CACF,CAAC,EAAE,iBAAiBP,CAAW,EAE/B,OAAOZ,EAAM,CACX,MAAO,CACL,MAAO,CAAC,EACR,QAAS,CAAC,EACV,OAAQ,CAAC,CACX,EACA,OAAQ,CACN,cAAeoB,EACf,aAAcrB,EAAYc,CAAY,EACtC,iBAAkBd,EAAYe,CAAgB,EAC9C,mBAAoBf,EAAYgB,CAAkB,EAClD,aAAcjB,EAAekB,CAAY,CAC3C,EACA,OAAQ,CACN,SAAWK,GAAMA,EAAE,QAAQ,eAAe,QAAU,IACtD,EACA,QAAS,CACP,qBAAsBxB,EAAO,CAC3B,eAAiBwB,IAAO,CACtB,GAAGA,EAAE,QAAQ,eACb,MAAOA,EAAE,MAAM,KACjB,EACF,CAAC,CACH,CACF,CAAC,EAAE,cAAc,CAEf,GAAI,2BACJ,QAAS,cACT,QAAUA,IACD,CACL,MAAO,CACL,cAAeA,EAAE,MAAM,aACzB,EACA,kBAAmB,CACjB,wBAAyBlB,EAAwB,IACnD,EACA,eAAgB,CACd,MAAO,KACP,OAAQ,CAAE,UAAW,EAAM,EAC3B,qBAAsB,KACtB,cAAe,KACf,gBAAiB,IACnB,CACF,GAEF,OAAQ,CACN,YAAa,CACX,OAAQ,CACN,OAAQ,eACV,CACF,EACA,cAAe,CACb,OAAQ,CACN,GAAI,gBACJ,IAAK,gBACL,MAAQkB,IAAO,CACb,cAAeA,EAAE,QAAQ,MAAM,aACjC,GACA,WAAY,CACV,QAASxB,EAAO,CACd,kBAAoBwB,IAAO,CACzB,GAAGA,EAAE,QAAQ,kBACb,wBACEA,EAAE,MAAM,SAAS,QAAQ,kBACtB,uBACP,EACF,CAAC,CACH,EACA,OAAQ,CACN,OAAQ,qBACR,QAASxB,EAAO,CACd,eAAiBwB,GACfA,EAAE,MAAM,OAAO,OAA8C,CAC3D,MAAO,IAAMA,EAAE,QAAQ,eACvB,KAAOC,IAAW,CAChB,GAAGD,EAAE,QAAQ,eACb,MAAAC,CACF,EACF,CAAC,CACL,CAAC,CACH,EACA,QAAS,CACP,OAAQ,QACR,QAAS,sBACX,CACF,CACF,EACA,mBAAoB,CAClB,OAAQ,CACN,CACE,OAAQ,QACR,MAAO,UACT,EACA,CACE,OAAQ,cACV,CACF,CACF,EACA,aAAc,CACZ,OAAQ,CACN,GAAI,eACJ,IAAK,eACL,MAAQD,GAAG,GACX,OAAQ,CACN,OAAQ,oBACR,QAASxB,EAAO,CACd,eAAiBwB,GAAM,CACrB,GAAIpB,EAAuBoB,EAAE,MAAM,MAAM,EAAG,CAC1C,MAAME,EACJN,EAAsB,EAClBO,EACJH,EAAE,MAAM,OAAO,KAAK,mBACjB,0BACL,OACEE,EAAa,mBACbhB,EAAuB,WAEvBW,EAAsB,CACpB,GAAGK,EACH,0BAAAC,CACF,CAAC,EAEI,CACL,GAAGH,EAAE,QAAQ,eACb,qBAAsBA,EAAE,MAAM,OAAO,IACvC,CACF,CACA,MAAO,CACL,GAAGA,EAAE,QAAQ,eACb,MAAOA,EAAE,MAAM,OAAO,KACxB,CACF,CACF,CAAC,CACH,CACF,CACF,EACA,kBAAmB,CACjB,OAAQ,CACN,CACE,OAAQ,QACR,MAAO,UACT,EACA,CACE,OAAQ,kBACV,CACF,CACF,EACA,iBAAkB,CAChB,OAAQ,CACN,GAAI,mBACJ,IAAK,mBACL,MAAQA,IAAO,CACb,WAAYA,EAAE,QAAQ,eAAe,oBACvC,GACA,OAAQ,CACN,OAAQ,wBACR,QAASxB,EAAO,CACd,eAAiBwB,GACfA,EAAE,MAAM,OAAO,OAA8C,CAC3D,MAAQI,IAAmB,CACzB,GAAGJ,EAAE,QAAQ,eACb,cAAAI,CACF,GACA,KAAOH,IAAW,CAChB,GAAGD,EAAE,QAAQ,eACb,MAAAC,CACF,EACF,CAAC,CACL,CAAC,CACH,EACA,QAAS,CACP,OAAQ,QACR,QAAS,sBACX,CACF,CACF,EACA,sBAAuB,CACrB,OAAQ,CACN,CACE,OAAQ,QACR,MAAO,UACT,EACA,CAAE,OAAQ,oBAAqB,CACjC,CACF,EACA,mBAAoB,CAClB,OAAQ,CACN,GAAI,qBACJ,IAAK,qBACL,MAAQD,IAAO,CACb,WAAYA,EAAE,QAAQ,eAAe,qBACrC,cAAeA,EAAE,QAAQ,eAAe,aAC1C,GACA,OAAQ,CACN,OAAQ,0BACR,QAASxB,EAAO,CACd,eAAiBwB,GACfA,EAAE,MAAM,OAAO,OAA8C,CAC3D,MAAQK,IAAqB,CAC3B,GAAGL,EAAE,QAAQ,eACb,gBAAAK,CACF,GACA,KAAOJ,IAAW,CAChB,GAAGD,EAAE,QAAQ,eACb,MAAAC,CACF,EACF,CAAC,CACL,CAAC,CACH,EACA,QAAS,CACP,OAAQ,QACR,QAAS,sBACX,CACF,CACF,EACA,wBAAyB,CACvB,OAAQ,CACN,CACE,OAAQ,QACR,MAAO,UACT,EACA,CAAE,OAAQ,cAAe,CAC3B,CACF,EACA,aAAc,CACZ,OAAQ,CACN,GAAI,eACJ,IAAK,eACL,MAAQD,IAAO,CACb,WAAYA,EAAE,QAAQ,eAAe,qBACrC,cAAeA,EAAE,QAAQ,eAAe,eAC1C,GACA,WAAY,CACV,QAASxB,EAAO,CACd,kBAAoBwB,GAAM,CACxB,OAAQA,EAAE,MAAM,SAAS,SAAS,KAAM,CACtC,KAAKZ,EAAuB,oBAC1B,MAAO,CACL,wBACEN,EAAwB,qBAC5B,EAEF,KAAKM,EAAuB,kBAC1B,MAAO,CACL,wBAAyBN,EAAwB,IACnD,EAEF,QACE,MAAO,CACL,GAAGkB,EAAE,QAAQ,iBACf,CACJ,CACF,EACA,eAAiBA,GAEbA,EAAE,MAAM,SAAS,SAAS,OAC1BZ,EAAuB,OAEhB,CACL,GAAGY,EAAE,QAAQ,eACb,OAAQ,CACN,UAAWX,EACTW,EAAE,MAAM,SAAS,QAAQ,OAC3B,CACF,CACF,EAEKA,EAAE,QAAQ,cAErB,CAAC,CACH,EACA,OAAQ,CACN,OAAQ,mBACV,EACA,QAAS,CACP,OAAQ,QACR,QAAS,sBACX,CACF,CACF,EACA,kBAAmB,CACjB,OAAQ,CACN,CACE,OAAQ,QACR,MAAO,UACT,EACA,CACE,OAAQ,SACV,CACF,CACF,EACA,QAAS,CACP,KAAM,OACR,EACA,MAAO,CACL,KAAM,OACR,CACF,EACA,OAASA,GACHA,EAAE,QAAQ,eAAe,MACpB1B,EAAK0B,EAAE,QAAQ,eAAe,KAAK,EAEnCzB,EAAMyB,EAAE,QAAQ,eAAe,MAAM,CAGlD,CAAC,CACH,CAEA,oBAAoBT,EAA+C,CA0CjE,MAAO,CACL,aAxCmB,IACnBA,EAAY,YAAY,IAAIV,CAAqB,EAwCjD,iBAtCuB,CAAC,CACxB,MAAAyB,CACF,IAAmD,CACjD,KAAM,CAAE,WAAAC,CAAW,EAAID,EACvB,OAAOf,EACJ,qBAAqB,EACrB,iBAAiBgB,EAAY,CAAQ,CAC1C,EAgCE,mBA9ByB,CAAC,CAC1B,MAAAD,CACF,IAGO,CACL,KAAM,CAAE,WAAAC,EAAY,cAAAH,CAAc,EAAIE,EACtC,OAAOf,EACJ,qBAAqB,EACrB,mBAAmBgB,EAAYH,EAAe,CAAQ,CAC3D,EAqBE,aAnBmB,CAAC,CACpB,MAAAE,CACF,IAGO,CACL,KAAM,CAAE,WAAAC,EAAY,cAAAC,CAAc,EAAIF,EAChCG,EAAmBlB,EACtB,wBAAwB,EACxB,aAAagB,EAAYC,CAAa,EACzC,OAAO,IAAIrB,EAA2BI,EAAa,CACjD,WAAYkB,CACd,CAAC,EAAE,IAAI,CACT,EAOE,sBAAuB,IAAMlB,EAAY,sBAAsB,EAC/D,sBAAwBmB,GACtBnB,EAAY,sBAAsBmB,CAAK,CAC3C,CACF,CACF",
6
6
  "names": ["Left", "Right", "assign", "fromObservable", "fromPromise", "setup", "isSuccessCommandResult", "GetOsVersionCommand", "UserInteractionRequired", "DEFAULT_UNLOCK_TIMEOUT_MS", "GoToDashboardDeviceAction", "XStateDeviceAction", "DeviceSessionStateType", "ConnectToSecureChannelTask", "SecureChannelEventType", "isDeviceGenuine", "GenuineCheckDeviceAction", "internalApi", "getOsVersion", "getDeviceVersion", "getFirmwareVersion", "genuineCheck", "getDeviceSessionState", "setDeviceSessionState", "unlockTimeout", "goToDashboardMachine", "_", "error", "currentState", "isSecureConnectionAllowed", "deviceVersion", "firmwareVersion", "input", "deviceInfo", "finalFirmware", "eitherConnection", "state"]
7
7
  }
@@ -1,2 +1,2 @@
1
- describe.todo("GenuineCheckDeviceAction");
1
+ import{Left as C,Right as s}from"purify-ts";import{concat as P,of as v,throwError as I}from"rxjs";import{CommandResultFactory as g}from"../../../command/model/CommandResult";import{DeviceStatus as h}from"../../../device/DeviceStatus";import{makeDeviceActionInternalApiMock as V}from"../../../device-action/__test-utils__/makeInternalApi";import{setupGoToDashboardMock as S}from"../../../device-action/__test-utils__/setupTestMachine";import{testDeviceActionStates as k}from"../../../device-action/__test-utils__/testDeviceActionStates";import{DeviceActionStatus as e}from"../../../device-action/model/DeviceActionState";import{UserInteractionRequired as n}from"../../../device-action/model/UserInteractionRequired";import{DeviceSessionStateType as y}from"../../../device-session/DeviceSessionState";import{SecureChannelEventType as r}from"../../../secure-channel/task/types";import{HttpFetchApiError as f}from"../../../../internal/manager-api/model/Errors";import{SecureChannelError as w}from"../../../../internal/secure-channel/model/Errors";import{GenuineCheckDeviceAction as D}from"./GenuineCheckDeviceAction";vi.mock("@api/device-action/os/GoToDashboard/GoToDashboardDeviceAction");describe("GenuineCheckDeviceAction",()=>{const c=vi.fn(),u=vi.fn(),d=vi.fn(),l=vi.fn(),m=vi.fn(),A=vi.fn(),p=()=>({getOsVersion:c,getDeviceVersion:u,getFirmwareVersion:d,genuineCheck:l,getDeviceSessionState:m,setDeviceSessionState:A});beforeEach(()=>{vi.resetAllMocks()}),it("should return the result of the genuine check",()=>new Promise((i,o)=>{S(),c.mockResolvedValue(g({data:{targetId:"123456",secureElementFlags:{isSecureConnectionAllowed:!1}}})),u.mockResolvedValue(s({id:123456})),d.mockResolvedValue(s({perso:"perso_test"})),m.mockReturnValue({sessionStateType:y.ReadyWithoutSecureChannel,deviceStatus:h.CONNECTED,currentApp:{name:"BOLOS",version:"0.0.0"},isSecureConnectionAllowed:!1}),l.mockReturnValue(v({type:r.Exchange,payload:{data:new Uint8Array([0,1,2,3])}},{type:r.PermissionRequested},{type:r.PermissionGranted},{type:r.Result,payload:"0000"}));const a=[{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.AllowSecureConnection}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Completed,output:{isGenuine:!0}}],t=new D({input:{}});vi.spyOn(t,"extractDependencies").mockImplementation(p),k(t,a,V(),{onDone:i,onError:o})})),it("should return error when error occurs in fetching device version",()=>new Promise((i,o)=>{S(),c.mockResolvedValue(g({data:{targetId:"123456",secureElementFlags:{isSecureConnectionAllowed:!1}}})),u.mockResolvedValue(C(new f("Device version fetch failed"))),d.mockResolvedValue(s({perso:"perso_test"})),m.mockReturnValue({sessionStateType:y.ReadyWithoutSecureChannel,deviceStatus:h.CONNECTED,currentApp:{name:"BOLOS",version:"0.0.0"},isSecureConnectionAllowed:!1}),l.mockReturnValue(v({type:r.Exchange,payload:{data:new Uint8Array([0,1,2,3])}},{type:r.Result,payload:"0000"}));const a=[{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Error,error:new f("Device version fetch failed")}],t=new D({input:{}});vi.spyOn(t,"extractDependencies").mockImplementation(p),k(t,a,V(),{onDone:i,onError:o})})),it("should return error when error occurs in fetching firmware version",()=>new Promise((i,o)=>{S(),c.mockResolvedValue(g({data:{targetId:"123456",secureElementFlags:{isSecureConnectionAllowed:!1}}})),u.mockResolvedValue(s({id:123456})),d.mockResolvedValue(C(new f("Firmware version fetch failed"))),m.mockReturnValue({sessionStateType:y.ReadyWithoutSecureChannel,deviceStatus:h.CONNECTED,currentApp:{name:"BOLOS",version:"0.0.0"},isSecureConnectionAllowed:!1}),l.mockReturnValue(v({type:r.Exchange,payload:{data:new Uint8Array([0,1,2,3])}},{type:r.Result,payload:"0000"}));const a=[{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Error,error:new f("Firmware version fetch failed")}],t=new D({input:{}});vi.spyOn(t,"extractDependencies").mockImplementation(p),k(t,a,V(),{onDone:i,onError:o})})),it("should return error when error occurs in communicating with secure channel",()=>new Promise((i,o)=>{S(),c.mockResolvedValue(g({data:{targetId:"123456",secureElementFlags:{isSecureConnectionAllowed:!1}}})),u.mockResolvedValue(s({id:123456})),d.mockResolvedValue(s({perso:"perso_test"})),m.mockReturnValue({sessionStateType:y.ReadyWithoutSecureChannel,deviceStatus:h.CONNECTED,currentApp:{name:"BOLOS",version:"0.0.0"},isSecureConnectionAllowed:!1}),l.mockReturnValue(P(v({type:r.Exchange,payload:{data:new Uint8Array([0,1,2,3])}}),I(()=>new w("Secure channel error"))));const a=[{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Pending,intermediateValue:{requiredUserInteraction:n.None}},{status:e.Error,error:new w("Secure channel error")}],t=new D({input:{}});vi.spyOn(t,"extractDependencies").mockImplementation(p),k(t,a,V(),{onDone:i,onError:o})}))});
2
2
  //# sourceMappingURL=GenuineCheckDeviceAction.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.test.ts"],
4
- "sourcesContent": ["describe.todo(\"GenuineCheckDeviceAction\");\n"],
5
- "mappings": "AAAA,SAAS,KAAK,0BAA0B",
6
- "names": []
4
+ "sourcesContent": ["import { Left, Right } from \"purify-ts\";\nimport { concat, of, throwError } from \"rxjs\";\n\nimport { CommandResultFactory } from \"@api/command/model/CommandResult\";\nimport { DeviceStatus } from \"@api/device/DeviceStatus\";\nimport { makeDeviceActionInternalApiMock } from \"@api/device-action/__test-utils__/makeInternalApi\";\nimport { setupGoToDashboardMock } from \"@api/device-action/__test-utils__/setupTestMachine\";\nimport { testDeviceActionStates } from \"@api/device-action/__test-utils__/testDeviceActionStates\";\nimport { DeviceActionStatus } from \"@api/device-action/model/DeviceActionState\";\nimport { UserInteractionRequired } from \"@api/device-action/model/UserInteractionRequired\";\nimport { DeviceSessionStateType } from \"@api/device-session/DeviceSessionState\";\nimport {\n type SecureChannelEventPayload,\n SecureChannelEventType,\n} from \"@api/secure-channel/task/types\";\nimport { type DeviceVersion } from \"@internal/manager-api/model/Device\";\nimport { HttpFetchApiError } from \"@internal/manager-api/model/Errors\";\nimport { type FinalFirmware } from \"@internal/manager-api/model/Firmware\";\nimport { SecureChannelError } from \"@internal/secure-channel/model/Errors\";\n\nimport { GenuineCheckDeviceAction } from \"./GenuineCheckDeviceAction\";\nimport { type GenuineCheckDAState } from \"./types\";\n\nvi.mock(\"@api/device-action/os/GoToDashboard/GoToDashboardDeviceAction\");\n\ndescribe(\"GenuineCheckDeviceAction\", () => {\n const getOsVersionMock = vi.fn();\n const getDeviceVersionMock = vi.fn();\n const getFirmwareVersionMock = vi.fn();\n const genuineCheckMock = vi.fn();\n const getDeviceSessionStateMock = vi.fn();\n const setDeviceSessionStateMock = vi.fn();\n\n const extractDependenciesMock = () => ({\n getOsVersion: getOsVersionMock,\n getDeviceVersion: getDeviceVersionMock,\n getFirmwareVersion: getFirmwareVersionMock,\n genuineCheck: genuineCheckMock,\n getDeviceSessionState: getDeviceSessionStateMock,\n setDeviceSessionState: setDeviceSessionStateMock,\n });\n\n beforeEach(() => {\n vi.resetAllMocks();\n });\n\n it(\"should return the result of the genuine check\", () =>\n new Promise<void>((resolve, reject) => {\n setupGoToDashboardMock();\n getOsVersionMock.mockResolvedValue(\n CommandResultFactory({\n data: {\n targetId: \"123456\",\n secureElementFlags: {\n isSecureConnectionAllowed: false,\n },\n },\n }),\n );\n getDeviceVersionMock.mockResolvedValue(\n Right({ id: 123456 } as DeviceVersion),\n );\n getFirmwareVersionMock.mockResolvedValue(\n Right({ perso: \"perso_test\" } as FinalFirmware),\n );\n getDeviceSessionStateMock.mockReturnValue({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n currentApp: { name: \"BOLOS\", version: \"0.0.0\" },\n isSecureConnectionAllowed: false,\n });\n genuineCheckMock.mockReturnValue(\n of(\n {\n type: SecureChannelEventType.Exchange,\n payload: {\n data: new Uint8Array([0x00, 0x01, 0x02, 0x03]),\n } as SecureChannelEventPayload[\"Exchange\"],\n },\n {\n type: SecureChannelEventType.PermissionRequested,\n },\n {\n type: SecureChannelEventType.PermissionGranted,\n },\n {\n type: SecureChannelEventType.Result,\n payload: \"0000\",\n },\n ),\n );\n\n const expectedStates: Array<GenuineCheckDAState> = [\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction:\n UserInteractionRequired.AllowSecureConnection,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Completed,\n output: { isGenuine: true },\n },\n ];\n\n const genuineCheckDeviceAction = new GenuineCheckDeviceAction({\n input: {},\n });\n vi.spyOn(\n genuineCheckDeviceAction,\n \"extractDependencies\",\n ).mockImplementation(extractDependenciesMock);\n\n testDeviceActionStates(\n genuineCheckDeviceAction,\n expectedStates,\n makeDeviceActionInternalApiMock(),\n {\n onDone: resolve,\n onError: reject,\n },\n );\n }));\n it(\"should return error when error occurs in fetching device version\", () =>\n new Promise<void>((resolve, reject) => {\n setupGoToDashboardMock();\n getOsVersionMock.mockResolvedValue(\n CommandResultFactory({\n data: {\n targetId: \"123456\",\n secureElementFlags: {\n isSecureConnectionAllowed: false,\n },\n },\n }),\n );\n getDeviceVersionMock.mockResolvedValue(\n Left(new HttpFetchApiError(\"Device version fetch failed\")),\n );\n getFirmwareVersionMock.mockResolvedValue(\n Right({ perso: \"perso_test\" } as FinalFirmware),\n );\n getDeviceSessionStateMock.mockReturnValue({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n currentApp: { name: \"BOLOS\", version: \"0.0.0\" },\n isSecureConnectionAllowed: false,\n });\n genuineCheckMock.mockReturnValue(\n of(\n {\n type: SecureChannelEventType.Exchange,\n payload: {\n data: new Uint8Array([0x00, 0x01, 0x02, 0x03]),\n } as SecureChannelEventPayload[\"Exchange\"],\n },\n {\n type: SecureChannelEventType.Result,\n payload: \"0000\",\n },\n ),\n );\n\n const expectedStates: Array<GenuineCheckDAState> = [\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Error,\n error: new HttpFetchApiError(\"Device version fetch failed\"),\n },\n ];\n\n const genuineCheckDeviceAction = new GenuineCheckDeviceAction({\n input: {},\n });\n vi.spyOn(\n genuineCheckDeviceAction,\n \"extractDependencies\",\n ).mockImplementation(extractDependenciesMock);\n\n testDeviceActionStates(\n genuineCheckDeviceAction,\n expectedStates,\n makeDeviceActionInternalApiMock(),\n {\n onDone: resolve,\n onError: reject,\n },\n );\n }));\n it(\"should return error when error occurs in fetching firmware version\", () =>\n new Promise<void>((resolve, reject) => {\n setupGoToDashboardMock();\n getOsVersionMock.mockResolvedValue(\n CommandResultFactory({\n data: {\n targetId: \"123456\",\n secureElementFlags: {\n isSecureConnectionAllowed: false,\n },\n },\n }),\n );\n getDeviceVersionMock.mockResolvedValue(\n Right({ id: 123456 } as DeviceVersion),\n );\n getFirmwareVersionMock.mockResolvedValue(\n Left(new HttpFetchApiError(\"Firmware version fetch failed\")),\n );\n getDeviceSessionStateMock.mockReturnValue({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n currentApp: { name: \"BOLOS\", version: \"0.0.0\" },\n isSecureConnectionAllowed: false,\n });\n genuineCheckMock.mockReturnValue(\n of(\n {\n type: SecureChannelEventType.Exchange,\n payload: {\n data: new Uint8Array([0x00, 0x01, 0x02, 0x03]),\n } as SecureChannelEventPayload[\"Exchange\"],\n },\n {\n type: SecureChannelEventType.Result,\n payload: \"0000\",\n },\n ),\n );\n\n const expectedStates: Array<GenuineCheckDAState> = [\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Error,\n error: new HttpFetchApiError(\"Firmware version fetch failed\"),\n },\n ];\n\n const genuineCheckDeviceAction = new GenuineCheckDeviceAction({\n input: {},\n });\n vi.spyOn(\n genuineCheckDeviceAction,\n \"extractDependencies\",\n ).mockImplementation(extractDependenciesMock);\n\n testDeviceActionStates(\n genuineCheckDeviceAction,\n expectedStates,\n makeDeviceActionInternalApiMock(),\n {\n onDone: resolve,\n onError: reject,\n },\n );\n }));\n it(\"should return error when error occurs in communicating with secure channel\", () =>\n new Promise<void>((resolve, reject) => {\n setupGoToDashboardMock();\n getOsVersionMock.mockResolvedValue(\n CommandResultFactory({\n data: {\n targetId: \"123456\",\n secureElementFlags: {\n isSecureConnectionAllowed: false,\n },\n },\n }),\n );\n getDeviceVersionMock.mockResolvedValue(\n Right({ id: 123456 } as DeviceVersion),\n );\n getFirmwareVersionMock.mockResolvedValue(\n Right({ perso: \"perso_test\" } as FinalFirmware),\n );\n getDeviceSessionStateMock.mockReturnValue({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n currentApp: { name: \"BOLOS\", version: \"0.0.0\" },\n isSecureConnectionAllowed: false,\n });\n genuineCheckMock.mockReturnValue(\n concat(\n of({\n type: SecureChannelEventType.Exchange,\n payload: {\n data: new Uint8Array([0x00, 0x01, 0x02, 0x03]),\n } as SecureChannelEventPayload[\"Exchange\"],\n }),\n throwError(() => new SecureChannelError(\"Secure channel error\")),\n ),\n );\n\n const expectedStates: Array<GenuineCheckDAState> = [\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n },\n },\n {\n status: DeviceActionStatus.Error,\n error: new SecureChannelError(\"Secure channel error\"),\n },\n ];\n\n const genuineCheckDeviceAction = new GenuineCheckDeviceAction({\n input: {},\n });\n vi.spyOn(\n genuineCheckDeviceAction,\n \"extractDependencies\",\n ).mockImplementation(extractDependenciesMock);\n\n testDeviceActionStates(\n genuineCheckDeviceAction,\n expectedStates,\n makeDeviceActionInternalApiMock(),\n {\n onDone: resolve,\n onError: reject,\n },\n );\n }));\n});\n"],
5
+ "mappings": "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",
6
+ "names": ["Left", "Right", "concat", "of", "throwError", "CommandResultFactory", "DeviceStatus", "makeDeviceActionInternalApiMock", "setupGoToDashboardMock", "testDeviceActionStates", "DeviceActionStatus", "UserInteractionRequired", "DeviceSessionStateType", "SecureChannelEventType", "HttpFetchApiError", "SecureChannelError", "GenuineCheckDeviceAction", "getOsVersionMock", "getDeviceVersionMock", "getFirmwareVersionMock", "genuineCheckMock", "getDeviceSessionStateMock", "setDeviceSessionStateMock", "extractDependenciesMock", "resolve", "reject", "expectedStates", "genuineCheckDeviceAction"]
7
7
  }
@@ -0,0 +1,2 @@
1
+ import{Left as S,Right as I}from"purify-ts";import{assign as a,fromObservable as g,fromPromise as A,setup as h}from"xstate";import{isSuccessCommandResult as D}from"../../../command/model/CommandResult";import{GetOsVersionCommand as v}from"../../../command/os/GetOsVersionCommand";import{UserInteractionRequired as f}from"../../../device-action/model/UserInteractionRequired";import{DEFAULT_UNLOCK_TIMEOUT_MS as x}from"../../../device-action/os/Const";import{UnknownDAError as m}from"../../../device-action/os/Errors";import{GoToDashboardDeviceAction as y}from"../../../device-action/os/GoToDashboard/GoToDashboardDeviceAction";import{XStateDeviceAction as V}from"../../../device-action/xstate-utils/XStateDeviceAction";import{DeviceSessionStateType as E}from"../../../device-session/DeviceSessionState";import{ListInstalledAppsDeviceAction as L}from"../../../secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction";import{ConnectToSecureChannelTask as O}from"../../../secure-channel/task/ConnectToSecureChannelTask";import{SecureChannelEventType as T}from"../../../secure-channel/task/types";class X extends V{makeStateMachine(n){const{getOsVersion:l,getAppList:c,installApp:u,getDeviceSessionState:d,setDeviceSessionState:r}=this.extractDependencies(n),o=this.input.unlockTimeout??x,i=new L({input:{unlockTimeout:o}}).makeStateMachine(n),p=new y({input:{unlockTimeout:o}}).makeStateMachine(n);return h({types:{input:{},context:{},output:{}},actors:{listInstalledApps:i,goToDashboard:p,getOsVersion:A(l),getAppList:A(c),installApp:g(u)},guards:{hasError:t=>t.context._internalState.error!==null,appInstalled:t=>t.context._internalState.installedApps.some(e=>e.name===t.context.input.appName),appNotFound:t=>t.context._internalState.appList.findIndex(({versionName:e})=>e===t.context.input.appName)===-1,depAppNotInstalled:t=>{const e=t.context._internalState.appList.find(({versionName:s})=>s===t.context.input.appName);return e?.parentName?t.context._internalState.installedApps.findIndex(({name:s})=>s===e.parentName)===-1:!1}},actions:{assignErrorFromEvent:a({_internalState:t=>({...t.context._internalState,error:t.event.error})}),assignAppNotFound:a({_internalState:t=>({...t.context._internalState,error:new m("App to install not found in manager API")})}),assignDepAppNotInstalled:a({_internalState:t=>({...t.context._internalState,error:new m("Dep app is not installed on the device")})})}}).createMachine({id:"InstallAppDeviceAction",initial:"DeviceReady",context:t=>({input:{unlockTimeout:t.input.unlockTimeout,appName:t.input.appName},intermediateValue:{requiredUserInteraction:f.None,progress:0},_internalState:{error:null,installedApps:[],getOsVersionResponse:null,appList:[]}}),states:{DeviceReady:{always:{target:"ListInstalledApps"}},ListInstalledApps:{value:"ListInstalledApps",invoke:{id:"listInstalledApps",src:"listInstalledApps",input:t=>({unlockTimeout:t.context.input.unlockTimeout}),onSnapshot:{actions:a({intermediateValue:t=>({...t.context.intermediateValue,requiredUserInteraction:t.event.snapshot.context.intermediateValue.requiredUserInteraction})})},onDone:{target:"ListInstalledAppsCheck",actions:a({_internalState:t=>t.event.output.caseOf({Right:({installedApps:e})=>({...t.context._internalState,installedApps:e}),Left:e=>({...t.context._internalState,error:e})})})}}},ListInstalledAppsCheck:{always:[{target:"Error",guard:"hasError"},{target:"Success",guard:"appInstalled"},{target:"GoToDashboard"}]},GoToDashboard:{invoke:{id:"goToDashboard",src:"goToDashboard",input:t=>({unlockTimeout:t.context.input.unlockTimeout}),onSnapshot:{actions:a({intermediateValue:t=>({...t.context.intermediateValue,requiredUserInteraction:t.event.snapshot.context.intermediateValue.requiredUserInteraction})})},onDone:{target:"GoToDashboardCheck",actions:a({_internalState:t=>t.event.output.caseOf({Right:()=>t.context._internalState,Left:e=>({...t.context._internalState,error:e})})})},onError:{target:"Error",actions:"assignErrorFromEvent"}}},GoToDashboardCheck:{always:[{target:"Error",guard:"hasError"},{target:"GetOsVersion"}]},GetOsVersion:{invoke:{id:"getOsVersion",src:"getOsVersion",input:t=>{},onDone:{target:"GetOsVersionCheck",actions:a({_internalState:t=>{if(D(t.event.output)){const e=d(),s=t.event.output.data.secureElementFlags.isSecureConnectionAllowed;return e.sessionStateType!==E.Connected&&r({...e,isSecureConnectionAllowed:s}),{...t.context._internalState,getOsVersionResponse:t.event.output.data}}return{...t.context._internalState,error:t.event.output.error}}})}}},GetOsVersionCheck:{always:[{target:"Error",guard:"hasError"},{target:"GetAppList"}]},GetAppList:{invoke:{id:"getAppList",src:"getAppList",input:t=>({deviceInfo:t.context._internalState.getOsVersionResponse}),onDone:{target:"GetAppListCheck",actions:a({_internalState:t=>t.event.output.caseOf({Right:e=>({...t.context._internalState,appList:e}),Left:e=>({...t.context._internalState,error:e})})})}}},GetAppListCheck:{always:[{target:"Error",guard:"hasError"},{target:"Error",guard:"appNotFound",actions:"assignAppNotFound"},{target:"Error",guard:"depAppNotInstalled",actions:"assignDepAppNotInstalled"},{target:"InstallApp"}]},InstallApp:{invoke:{id:"installApp",src:"installApp",input:t=>({deviceInfo:t.context._internalState.getOsVersionResponse,app:t.context._internalState.appList.find(({versionName:e})=>e===t.context.input.appName)}),onSnapshot:{actions:a({intermediateValue:t=>t.event.snapshot.context?.type===T.Progress?{...t.context.intermediateValue,progress:t.event.snapshot.context.payload.progress}:{...t.context.intermediateValue}})},onDone:{target:"ListInstalledApps"},onError:{target:"Error",actions:"assignErrorFromEvent"}}},Success:{type:"final",description:"App installed successfully"},Error:{type:"final"}},output:({context:t})=>t._internalState.error?S(t._internalState.error):I(void 0)})}extractDependencies(n){return{getOsVersion:()=>n.sendCommand(new v),getAppList:({input:r})=>{const{deviceInfo:o}=r;return n.getManagerApiService().getAppList(o,1)},installApp:({input:r})=>{const{deviceInfo:o,app:i}=r,p=n.getSecureChannelService().installApp(o,i);return new O(n,{connection:p}).run()},getDeviceSessionState:()=>n.getDeviceSessionState(),setDeviceSessionState:r=>n.setDeviceSessionState(r)}}}export{X as InstallAppDeviceAction};
2
+ //# sourceMappingURL=InstallAppDeviceAction.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../../src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.ts"],
4
+ "sourcesContent": ["import { Left, Right } from \"purify-ts\";\nimport { assign, fromObservable, fromPromise, setup } from \"xstate\";\n\nimport { isSuccessCommandResult } from \"@api/command/model/CommandResult\";\nimport {\n GetOsVersionCommand,\n type GetOsVersionResponse,\n} from \"@api/command/os/GetOsVersionCommand\";\nimport { type InternalApi } from \"@api/device-action/DeviceAction\";\nimport { UserInteractionRequired } from \"@api/device-action/model/UserInteractionRequired\";\nimport { DEFAULT_UNLOCK_TIMEOUT_MS } from \"@api/device-action/os/Const\";\nimport { UnknownDAError } from \"@api/device-action/os/Errors\";\nimport { GoToDashboardDeviceAction } from \"@api/device-action/os/GoToDashboard/GoToDashboardDeviceAction\";\nimport { type StateMachineTypes } from \"@api/device-action/xstate-utils/StateMachineTypes\";\nimport {\n type DeviceActionStateMachine,\n XStateDeviceAction,\n} from \"@api/device-action/xstate-utils/XStateDeviceAction\";\nimport {\n type DeviceSessionState,\n DeviceSessionStateType,\n} from \"@api/device-session/DeviceSessionState\";\nimport { ListInstalledAppsDeviceAction } from \"@api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction\";\nimport { ConnectToSecureChannelTask } from \"@api/secure-channel/task/ConnectToSecureChannelTask\";\nimport { SecureChannelEventType } from \"@api/secure-channel/task/types\";\nimport { type Input } from \"@api/secure-channel/types\";\nimport { type Application } from \"@internal/manager-api/model/Application\";\n\nimport {\n type InstallAppDAError,\n type InstallAppDAInput,\n type InstallAppDAIntermediateValue,\n type InstallAppDAOutput,\n type InstallAppStateMachineInternalState,\n type MachineDependencies,\n} from \"./types\";\n\nexport class InstallAppDeviceAction extends XStateDeviceAction<\n InstallAppDAOutput,\n InstallAppDAInput,\n InstallAppDAError,\n InstallAppDAIntermediateValue,\n InstallAppStateMachineInternalState\n> {\n override makeStateMachine(\n internalApi: InternalApi,\n ): DeviceActionStateMachine<\n InstallAppDAOutput,\n InstallAppDAInput,\n InstallAppDAError,\n InstallAppDAIntermediateValue,\n InstallAppStateMachineInternalState\n > {\n type types = StateMachineTypes<\n InstallAppDAOutput,\n InstallAppDAInput,\n InstallAppDAError,\n InstallAppDAIntermediateValue,\n InstallAppStateMachineInternalState\n >;\n\n const {\n getOsVersion,\n getAppList,\n installApp,\n getDeviceSessionState,\n setDeviceSessionState,\n } = this.extractDependencies(internalApi);\n\n const unlockTimeout = this.input.unlockTimeout ?? DEFAULT_UNLOCK_TIMEOUT_MS;\n\n const listInstalledAppsMachine = new ListInstalledAppsDeviceAction({\n input: {\n unlockTimeout,\n },\n }).makeStateMachine(internalApi);\n\n const goToDashboardMachine = new GoToDashboardDeviceAction({\n input: {\n unlockTimeout,\n },\n }).makeStateMachine(internalApi);\n\n return setup({\n types: {\n input: {} as types[\"input\"],\n context: {} as types[\"context\"],\n output: {} as types[\"output\"],\n },\n actors: {\n listInstalledApps: listInstalledAppsMachine,\n goToDashboard: goToDashboardMachine,\n getOsVersion: fromPromise(getOsVersion),\n getAppList: fromPromise(getAppList),\n installApp: fromObservable(installApp),\n },\n guards: {\n hasError: (_) => _.context._internalState.error !== null,\n appInstalled: (_) =>\n _.context._internalState.installedApps.some(\n (app) => app.name === _.context.input.appName,\n ),\n appNotFound: (_) =>\n _.context._internalState.appList.findIndex(\n ({ versionName }) => versionName === _.context.input.appName,\n ) === -1,\n depAppNotInstalled: (_) => {\n const appToInstall = _.context._internalState.appList.find(\n ({ versionName }) => versionName === _.context.input.appName,\n );\n if (appToInstall?.parentName) {\n return (\n _.context._internalState.installedApps.findIndex(\n ({ name }) => name === appToInstall.parentName,\n ) === -1\n );\n }\n return false;\n },\n },\n actions: {\n assignErrorFromEvent: assign({\n _internalState: (_) => ({\n ..._.context._internalState,\n error: _.event[\"error\"],\n }),\n }),\n assignAppNotFound: assign({\n _internalState: (_) => ({\n ..._.context._internalState,\n error: new UnknownDAError(\n \"App to install not found in manager API\",\n ),\n }),\n }),\n assignDepAppNotInstalled: assign({\n _internalState: (_) => ({\n ..._.context._internalState,\n error: new UnknownDAError(\"Dep app is not installed on the device\"),\n }),\n }),\n },\n }).createMachine({\n /** @xstate-layout N4IgpgJg5mDOIC5QEkB2sAuBDANjgggA6EAiYAbgJYDGY+1GlA9qgHRlW0BKYWEAngGIA2gAYAuolCEmsSoxZSQAD0QBGAJyjWADgDsAFg0A2HSb2iArMbUBmADQh+iAExrjrS6KuWNtte7Glga2AL6hjmiYuATEHDR0DMxsADKUmFHYeJBEhLCCECxgrJSo5EwA1sU46RiZMTnEsGKSSCAycgqoSqoIBgaWrC6i-i6Wjs4ItqJqnt62BsYuGmoGLguW4ZHoWbGkFAn0XaxpGTsNELmwAMIAFmDUFSISSh3yyT2Ituu6vrZ64yciB0djmogGAxcLmMMwMWxA9TwuXitCOyROtUROEaeTuDyewjUrWksneijavW+tl+fgBE2BelmXnBwUsUJhq3hWORB1RSRYGLO0WylyaeMeIhcxPapK6nymPx0fzpQIQGmWYIhbOhsK55yRcV5iWOAHEmAAVJgkLCwW4AIyYWAAThACkUSmVKsUoBarTb7Y6XS1XrKPhTEEtBjNrAsbAZwYt6VNbB41KI9MNvpGbJyIgj9XsUcb0WbLdbbQ7na6wE6nUwnaxCDgsBgAGb1gC2rB9Zf9laDLzabzl4YQkdY0eMsdWCeMSbUeg0nnWZgC300vmMeuFhaNaIFpb9FcDEHFBMHJM6YdAvTTXiGQT0MOMBgsOjMSZhOgn3i17N1ebcoanDFgevrlgGVZniIRIhle5I3uoVjaNClhPqIL5vh+qq2JY1KBO+GgaBmK5hIBBY8iB+5sCaYAYAA8rAABqNZyCwbqoMUpTlFU3Z0YxLFOmxqDBkOoYISo6hsrMWhBL4OiiNCixqEm3xLsYWjWIYWgZv0mzkTulGHPyNH8cxrHJNBomXmS3SjpoqysPGL7fDoUJQgYOhJp5S7Mssr76KIfj-NuuxGXyppmYJwlWbBYnwXZiEIA5BhORhIQuG57meapiysACinBMM4IzFuBlhcBxmRRguSnBgHFcZ6vEwDVxB1dZMoJfKLgQvlsb+GhOg2Es3npmCXjGEsIxEXC5UxOFoGma1hB1VZF6dbZ3WMno+WaEFIREQELiqXhrAEWYxFQrYOhkdshmVRFJZ0bVtSxdKw7XpJCBjFoTkBTYjKmENc6qjCrDEY+Gj6E+-lPqF80PYtrC0ctq33BKwhSnBm2jplaiDLYWhmHojIaAMKmqgYmj5cYFgWKY6rERo+l3RV+xUSZyPPW1r3owStjveJiVfXjBNE8RpPk0mbLUhsG4M8sOjwwa7NVeiQGEA1Ho8Y192EB1H0SZSQSsP8gKTFDO3Mn+Oq5qzCOq49Aoa4INZ1g2TYtu2TpdqUesG0L8opgTKqTGmr4-iykK22VeaoEwEBwEoGtFtR2MjklAC0OWqpn0LLgsAwrIYaZ2Mru4c8cRY8Hwkw2RnX1rEmbiDMyaYAnt7jXeXC3UYKdQFji8DxTjSWiEmFipd4Ufahys32yrqec3VWJD2e6efb04+qu+re-qy-52-metL6a4F9ieG9G64Srg6YGaWHYN2iDd87qpHsbLKs6wDD3iN94eCC-ZTx8yvsLXoN0XB33fHYf4hMOQnR2jdf4egQQvnTMsP+jskYowEhZCShtwHqDcPhIKlgdD9BGJ5KwqkXA7WLt4FYbgrCLDKgvCuasDxRXwagdeI8G63kZNSdBgUUzTChObL4j8nILm-oTK6SwsGnyeqjWoYDurph2mMQqj4hruGOjhNwYI4ELHVAuYiSi9ycxRi9TAfD66b1cJNbQpivCeXjERSRCBUGzGUjCTKj8oSKUsZXdWFFiDqNHNvMOiltDTxtnPEJnC2AAGUACu1BaCwGHg46+30zDaGsF-EElhSkjCTCCME6wobOSMLdY+bNlECgAKK1nrJEpKmVfpFJWCUspDgcLBBpnTDCZhliLn0uEIAA */\n id: \"InstallAppDeviceAction\",\n initial: \"DeviceReady\",\n context: (_) => ({\n input: {\n unlockTimeout: _.input.unlockTimeout,\n appName: _.input.appName,\n },\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n _internalState: {\n error: null,\n installedApps: [],\n getOsVersionResponse: null,\n appList: [],\n },\n }),\n states: {\n DeviceReady: {\n always: {\n target: \"ListInstalledApps\",\n },\n },\n ListInstalledApps: {\n value: \"ListInstalledApps\",\n invoke: {\n id: \"listInstalledApps\",\n src: \"listInstalledApps\",\n input: (_) => ({\n unlockTimeout: _.context.input.unlockTimeout,\n }),\n onSnapshot: {\n actions: assign({\n intermediateValue: (_) => ({\n ..._.context.intermediateValue,\n requiredUserInteraction:\n _.event.snapshot.context.intermediateValue\n .requiredUserInteraction,\n }),\n }),\n },\n onDone: {\n target: \"ListInstalledAppsCheck\",\n actions: assign({\n _internalState: (_) =>\n _.event.output.caseOf<InstallAppStateMachineInternalState>({\n Right: ({ installedApps }) => ({\n ..._.context._internalState,\n installedApps,\n }),\n Left: (error) => ({\n ..._.context._internalState,\n error,\n }),\n }),\n }),\n },\n },\n },\n ListInstalledAppsCheck: {\n always: [\n {\n target: \"Error\",\n guard: \"hasError\",\n },\n {\n target: \"Success\",\n guard: \"appInstalled\",\n },\n {\n target: \"GoToDashboard\",\n },\n ],\n },\n GoToDashboard: {\n invoke: {\n id: \"goToDashboard\",\n src: \"goToDashboard\",\n input: (_) => ({\n unlockTimeout: _.context.input.unlockTimeout,\n }),\n onSnapshot: {\n actions: assign({\n intermediateValue: (_) => ({\n ..._.context.intermediateValue,\n requiredUserInteraction:\n _.event.snapshot.context.intermediateValue\n .requiredUserInteraction,\n }),\n }),\n },\n onDone: {\n target: \"GoToDashboardCheck\",\n actions: assign({\n _internalState: (_) =>\n _.event.output.caseOf<InstallAppStateMachineInternalState>({\n Right: () => _.context._internalState,\n Left: (error) => ({\n ..._.context._internalState,\n error,\n }),\n }),\n }),\n },\n onError: {\n target: \"Error\",\n actions: \"assignErrorFromEvent\",\n },\n },\n },\n GoToDashboardCheck: {\n always: [\n {\n target: \"Error\",\n guard: \"hasError\",\n },\n {\n target: \"GetOsVersion\",\n },\n ],\n },\n GetOsVersion: {\n invoke: {\n id: \"getOsVersion\",\n src: \"getOsVersion\",\n input: (_) => undefined,\n onDone: {\n target: \"GetOsVersionCheck\",\n actions: assign({\n _internalState: (_) => {\n if (isSuccessCommandResult(_.event.output)) {\n const currentState: DeviceSessionState =\n getDeviceSessionState();\n const isSecureConnectionAllowed =\n _.event.output.data.secureElementFlags\n .isSecureConnectionAllowed;\n if (\n currentState.sessionStateType !==\n DeviceSessionStateType.Connected\n ) {\n setDeviceSessionState({\n ...currentState,\n isSecureConnectionAllowed,\n });\n }\n return {\n ..._.context._internalState,\n getOsVersionResponse: _.event.output.data,\n };\n }\n return {\n ..._.context._internalState,\n error: _.event.output.error,\n };\n },\n }),\n },\n },\n },\n GetOsVersionCheck: {\n always: [\n {\n target: \"Error\",\n guard: \"hasError\",\n },\n {\n target: \"GetAppList\",\n },\n ],\n },\n GetAppList: {\n invoke: {\n id: \"getAppList\",\n src: \"getAppList\",\n input: (_) => ({\n deviceInfo: _.context._internalState.getOsVersionResponse!,\n }),\n onDone: {\n target: \"GetAppListCheck\",\n actions: assign({\n _internalState: (_) =>\n _.event.output.caseOf<InstallAppStateMachineInternalState>({\n Right: (appList) => ({\n ..._.context._internalState,\n appList,\n }),\n Left: (error) => ({\n ..._.context._internalState,\n error,\n }),\n }),\n }),\n },\n },\n },\n GetAppListCheck: {\n always: [\n {\n target: \"Error\",\n guard: \"hasError\",\n },\n {\n target: \"Error\",\n guard: \"appNotFound\",\n actions: \"assignAppNotFound\",\n },\n {\n target: \"Error\",\n guard: \"depAppNotInstalled\",\n actions: \"assignDepAppNotInstalled\",\n },\n {\n target: \"InstallApp\",\n },\n ],\n },\n InstallApp: {\n invoke: {\n id: \"installApp\",\n src: \"installApp\",\n input: (_) => ({\n deviceInfo: _.context._internalState.getOsVersionResponse!,\n app: _.context._internalState.appList.find(\n ({ versionName }) => versionName === _.context.input.appName,\n )!,\n }),\n onSnapshot: {\n actions: assign({\n intermediateValue: (_) => {\n if (\n _.event.snapshot.context?.type ===\n SecureChannelEventType.Progress\n ) {\n return {\n ..._.context.intermediateValue,\n progress: _.event.snapshot.context.payload.progress,\n };\n }\n return { ..._.context.intermediateValue };\n },\n }),\n },\n onDone: {\n target: \"ListInstalledApps\",\n },\n onError: {\n target: \"Error\",\n actions: \"assignErrorFromEvent\",\n },\n },\n },\n Success: {\n type: \"final\",\n description: \"App installed successfully\",\n },\n Error: {\n type: \"final\",\n },\n },\n output: ({ context }) =>\n context._internalState.error\n ? Left(context._internalState.error)\n : Right(void 0),\n });\n }\n\n extractDependencies(internalApi: InternalApi): MachineDependencies {\n const provider = 1;\n\n const getOsVersion = () =>\n internalApi.sendCommand(new GetOsVersionCommand());\n\n const getAppList = ({\n input,\n }: Input<{\n deviceInfo: GetOsVersionResponse;\n }>) => {\n const { deviceInfo } = input;\n return internalApi\n .getManagerApiService()\n .getAppList(deviceInfo, provider);\n };\n\n const installApp = ({\n input,\n }: Input<{\n deviceInfo: GetOsVersionResponse;\n app: Application;\n }>) => {\n const { deviceInfo, app } = input;\n const eitherConnection = internalApi\n .getSecureChannelService()\n .installApp(deviceInfo, app);\n return new ConnectToSecureChannelTask(internalApi, {\n connection: eitherConnection,\n }).run();\n };\n\n return {\n getOsVersion,\n getAppList,\n installApp,\n getDeviceSessionState: () => internalApi.getDeviceSessionState(),\n setDeviceSessionState: (state) =>\n internalApi.setDeviceSessionState(state),\n };\n }\n}\n"],
5
+ "mappings": "AAAA,OAAS,QAAAA,EAAM,SAAAC,MAAa,YAC5B,OAAS,UAAAC,EAAQ,kBAAAC,EAAgB,eAAAC,EAAa,SAAAC,MAAa,SAE3D,OAAS,0BAAAC,MAA8B,mCACvC,OACE,uBAAAC,MAEK,sCAEP,OAAS,2BAAAC,MAA+B,mDACxC,OAAS,6BAAAC,MAAiC,8BAC1C,OAAS,kBAAAC,MAAsB,+BAC/B,OAAS,6BAAAC,MAAiC,gEAE1C,OAEE,sBAAAC,MACK,qDACP,OAEE,0BAAAC,MACK,yCACP,OAAS,iCAAAC,MAAqC,oFAC9C,OAAS,8BAAAC,MAAkC,sDAC3C,OAAS,0BAAAC,MAA8B,iCAahC,MAAMC,UAA+BL,CAM1C,CACS,iBACPM,EAOA,CASA,KAAM,CACJ,aAAAC,EACA,WAAAC,EACA,WAAAC,EACA,sBAAAC,EACA,sBAAAC,CACF,EAAI,KAAK,oBAAoBL,CAAW,EAElCM,EAAgB,KAAK,MAAM,eAAiBf,EAE5CgB,EAA2B,IAAIX,EAA8B,CACjE,MAAO,CACL,cAAAU,CACF,CACF,CAAC,EAAE,iBAAiBN,CAAW,EAEzBQ,EAAuB,IAAIf,EAA0B,CACzD,MAAO,CACL,cAAAa,CACF,CACF,CAAC,EAAE,iBAAiBN,CAAW,EAE/B,OAAOb,EAAM,CACX,MAAO,CACL,MAAO,CAAC,EACR,QAAS,CAAC,EACV,OAAQ,CAAC,CACX,EACA,OAAQ,CACN,kBAAmBoB,EACnB,cAAeC,EACf,aAActB,EAAYe,CAAY,EACtC,WAAYf,EAAYgB,CAAU,EAClC,WAAYjB,EAAekB,CAAU,CACvC,EACA,OAAQ,CACN,SAAWM,GAAMA,EAAE,QAAQ,eAAe,QAAU,KACpD,aAAeA,GACbA,EAAE,QAAQ,eAAe,cAAc,KACpCC,GAAQA,EAAI,OAASD,EAAE,QAAQ,MAAM,OACxC,EACF,YAAcA,GACZA,EAAE,QAAQ,eAAe,QAAQ,UAC/B,CAAC,CAAE,YAAAE,CAAY,IAAMA,IAAgBF,EAAE,QAAQ,MAAM,OACvD,IAAM,GACR,mBAAqBA,GAAM,CACzB,MAAMG,EAAeH,EAAE,QAAQ,eAAe,QAAQ,KACpD,CAAC,CAAE,YAAAE,CAAY,IAAMA,IAAgBF,EAAE,QAAQ,MAAM,OACvD,EACA,OAAIG,GAAc,WAEdH,EAAE,QAAQ,eAAe,cAAc,UACrC,CAAC,CAAE,KAAAI,CAAK,IAAMA,IAASD,EAAa,UACtC,IAAM,GAGH,EACT,CACF,EACA,QAAS,CACP,qBAAsB5B,EAAO,CAC3B,eAAiByB,IAAO,CACtB,GAAGA,EAAE,QAAQ,eACb,MAAOA,EAAE,MAAM,KACjB,EACF,CAAC,EACD,kBAAmBzB,EAAO,CACxB,eAAiByB,IAAO,CACtB,GAAGA,EAAE,QAAQ,eACb,MAAO,IAAIjB,EACT,yCACF,CACF,EACF,CAAC,EACD,yBAA0BR,EAAO,CAC/B,eAAiByB,IAAO,CACtB,GAAGA,EAAE,QAAQ,eACb,MAAO,IAAIjB,EAAe,wCAAwC,CACpE,EACF,CAAC,CACH,CACF,CAAC,EAAE,cAAc,CAEf,GAAI,yBACJ,QAAS,cACT,QAAUiB,IAAO,CACf,MAAO,CACL,cAAeA,EAAE,MAAM,cACvB,QAASA,EAAE,MAAM,OACnB,EACA,kBAAmB,CACjB,wBAAyBnB,EAAwB,KACjD,SAAU,CACZ,EACA,eAAgB,CACd,MAAO,KACP,cAAe,CAAC,EAChB,qBAAsB,KACtB,QAAS,CAAC,CACZ,CACF,GACA,OAAQ,CACN,YAAa,CACX,OAAQ,CACN,OAAQ,mBACV,CACF,EACA,kBAAmB,CACjB,MAAO,oBACP,OAAQ,CACN,GAAI,oBACJ,IAAK,oBACL,MAAQmB,IAAO,CACb,cAAeA,EAAE,QAAQ,MAAM,aACjC,GACA,WAAY,CACV,QAASzB,EAAO,CACd,kBAAoByB,IAAO,CACzB,GAAGA,EAAE,QAAQ,kBACb,wBACEA,EAAE,MAAM,SAAS,QAAQ,kBACtB,uBACP,EACF,CAAC,CACH,EACA,OAAQ,CACN,OAAQ,yBACR,QAASzB,EAAO,CACd,eAAiByB,GACfA,EAAE,MAAM,OAAO,OAA4C,CACzD,MAAO,CAAC,CAAE,cAAAK,CAAc,KAAO,CAC7B,GAAGL,EAAE,QAAQ,eACb,cAAAK,CACF,GACA,KAAOC,IAAW,CAChB,GAAGN,EAAE,QAAQ,eACb,MAAAM,CACF,EACF,CAAC,CACL,CAAC,CACH,CACF,CACF,EACA,uBAAwB,CACtB,OAAQ,CACN,CACE,OAAQ,QACR,MAAO,UACT,EACA,CACE,OAAQ,UACR,MAAO,cACT,EACA,CACE,OAAQ,eACV,CACF,CACF,EACA,cAAe,CACb,OAAQ,CACN,GAAI,gBACJ,IAAK,gBACL,MAAQN,IAAO,CACb,cAAeA,EAAE,QAAQ,MAAM,aACjC,GACA,WAAY,CACV,QAASzB,EAAO,CACd,kBAAoByB,IAAO,CACzB,GAAGA,EAAE,QAAQ,kBACb,wBACEA,EAAE,MAAM,SAAS,QAAQ,kBACtB,uBACP,EACF,CAAC,CACH,EACA,OAAQ,CACN,OAAQ,qBACR,QAASzB,EAAO,CACd,eAAiByB,GACfA,EAAE,MAAM,OAAO,OAA4C,CACzD,MAAO,IAAMA,EAAE,QAAQ,eACvB,KAAOM,IAAW,CAChB,GAAGN,EAAE,QAAQ,eACb,MAAAM,CACF,EACF,CAAC,CACL,CAAC,CACH,EACA,QAAS,CACP,OAAQ,QACR,QAAS,sBACX,CACF,CACF,EACA,mBAAoB,CAClB,OAAQ,CACN,CACE,OAAQ,QACR,MAAO,UACT,EACA,CACE,OAAQ,cACV,CACF,CACF,EACA,aAAc,CACZ,OAAQ,CACN,GAAI,eACJ,IAAK,eACL,MAAQN,GAAG,GACX,OAAQ,CACN,OAAQ,oBACR,QAASzB,EAAO,CACd,eAAiByB,GAAM,CACrB,GAAIrB,EAAuBqB,EAAE,MAAM,MAAM,EAAG,CAC1C,MAAMO,EACJZ,EAAsB,EAClBa,EACJR,EAAE,MAAM,OAAO,KAAK,mBACjB,0BACL,OACEO,EAAa,mBACbrB,EAAuB,WAEvBU,EAAsB,CACpB,GAAGW,EACH,0BAAAC,CACF,CAAC,EAEI,CACL,GAAGR,EAAE,QAAQ,eACb,qBAAsBA,EAAE,MAAM,OAAO,IACvC,CACF,CACA,MAAO,CACL,GAAGA,EAAE,QAAQ,eACb,MAAOA,EAAE,MAAM,OAAO,KACxB,CACF,CACF,CAAC,CACH,CACF,CACF,EACA,kBAAmB,CACjB,OAAQ,CACN,CACE,OAAQ,QACR,MAAO,UACT,EACA,CACE,OAAQ,YACV,CACF,CACF,EACA,WAAY,CACV,OAAQ,CACN,GAAI,aACJ,IAAK,aACL,MAAQA,IAAO,CACb,WAAYA,EAAE,QAAQ,eAAe,oBACvC,GACA,OAAQ,CACN,OAAQ,kBACR,QAASzB,EAAO,CACd,eAAiByB,GACfA,EAAE,MAAM,OAAO,OAA4C,CACzD,MAAQS,IAAa,CACnB,GAAGT,EAAE,QAAQ,eACb,QAAAS,CACF,GACA,KAAOH,IAAW,CAChB,GAAGN,EAAE,QAAQ,eACb,MAAAM,CACF,EACF,CAAC,CACL,CAAC,CACH,CACF,CACF,EACA,gBAAiB,CACf,OAAQ,CACN,CACE,OAAQ,QACR,MAAO,UACT,EACA,CACE,OAAQ,QACR,MAAO,cACP,QAAS,mBACX,EACA,CACE,OAAQ,QACR,MAAO,qBACP,QAAS,0BACX,EACA,CACE,OAAQ,YACV,CACF,CACF,EACA,WAAY,CACV,OAAQ,CACN,GAAI,aACJ,IAAK,aACL,MAAQN,IAAO,CACb,WAAYA,EAAE,QAAQ,eAAe,qBACrC,IAAKA,EAAE,QAAQ,eAAe,QAAQ,KACpC,CAAC,CAAE,YAAAE,CAAY,IAAMA,IAAgBF,EAAE,QAAQ,MAAM,OACvD,CACF,GACA,WAAY,CACV,QAASzB,EAAO,CACd,kBAAoByB,GAEhBA,EAAE,MAAM,SAAS,SAAS,OAC1BX,EAAuB,SAEhB,CACL,GAAGW,EAAE,QAAQ,kBACb,SAAUA,EAAE,MAAM,SAAS,QAAQ,QAAQ,QAC7C,EAEK,CAAE,GAAGA,EAAE,QAAQ,iBAAkB,CAE5C,CAAC,CACH,EACA,OAAQ,CACN,OAAQ,mBACV,EACA,QAAS,CACP,OAAQ,QACR,QAAS,sBACX,CACF,CACF,EACA,QAAS,CACP,KAAM,QACN,YAAa,4BACf,EACA,MAAO,CACL,KAAM,OACR,CACF,EACA,OAAQ,CAAC,CAAE,QAAAU,CAAQ,IACjBA,EAAQ,eAAe,MACnBrC,EAAKqC,EAAQ,eAAe,KAAK,EACjCpC,EAAM,MAAM,CACpB,CAAC,CACH,CAEA,oBAAoBiB,EAA+C,CAgCjE,MAAO,CACL,aA9BmB,IACnBA,EAAY,YAAY,IAAIX,CAAqB,EA8BjD,WA5BiB,CAAC,CAClB,MAAA+B,CACF,IAEO,CACL,KAAM,CAAE,WAAAC,CAAW,EAAID,EACvB,OAAOpB,EACJ,qBAAqB,EACrB,WAAWqB,EAAY,CAAQ,CACpC,EAoBE,WAlBiB,CAAC,CAClB,MAAAD,CACF,IAGO,CACL,KAAM,CAAE,WAAAC,EAAY,IAAAX,CAAI,EAAIU,EACtBE,EAAmBtB,EACtB,wBAAwB,EACxB,WAAWqB,EAAYX,CAAG,EAC7B,OAAO,IAAIb,EAA2BG,EAAa,CACjD,WAAYsB,CACd,CAAC,EAAE,IAAI,CACT,EAME,sBAAuB,IAAMtB,EAAY,sBAAsB,EAC/D,sBAAwBuB,GACtBvB,EAAY,sBAAsBuB,CAAK,CAC3C,CACF,CACF",
6
+ "names": ["Left", "Right", "assign", "fromObservable", "fromPromise", "setup", "isSuccessCommandResult", "GetOsVersionCommand", "UserInteractionRequired", "DEFAULT_UNLOCK_TIMEOUT_MS", "UnknownDAError", "GoToDashboardDeviceAction", "XStateDeviceAction", "DeviceSessionStateType", "ListInstalledAppsDeviceAction", "ConnectToSecureChannelTask", "SecureChannelEventType", "InstallAppDeviceAction", "internalApi", "getOsVersion", "getAppList", "installApp", "getDeviceSessionState", "setDeviceSessionState", "unlockTimeout", "listInstalledAppsMachine", "goToDashboardMachine", "_", "app", "versionName", "appToInstall", "name", "installedApps", "error", "currentState", "isSecureConnectionAllowed", "appList", "context", "input", "deviceInfo", "eitherConnection", "state"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{Right as g}from"purify-ts";import{of as D,throwError as y}from"rxjs";import{CommandResultFactory as A}from"../../../command/model/CommandResult";import{DeviceStatus as P}from"../../../device/DeviceStatus";import{makeDeviceActionInternalApiMock as l}from"../../../device-action/__test-utils__/makeInternalApi";import{setupGoToDashboardMock as I,setupListInstalledAppsMock as u}from"../../../device-action/__test-utils__/setupTestMachine";import{testDeviceActionStates as d}from"../../../device-action/__test-utils__/testDeviceActionStates";import{DeviceActionStatus as e}from"../../../device-action/model/DeviceActionState";import{UserInteractionRequired as t}from"../../../device-action/model/UserInteractionRequired";import{UnknownDAError as S}from"../../../device-action/os/Errors";import{DeviceSessionStateType as f}from"../../../device-session/DeviceSessionState";import{SecureChannelEventType as V}from"../../../secure-channel/task/types";import{SecureChannelError as N}from"../../../../internal/secure-channel/model/Errors";import{InstallAppDeviceAction as m}from"./InstallAppDeviceAction";vi.mock("@api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction");vi.mock("@api/device-action/os/GoToDashboard/GoToDashboardDeviceAction");describe("InstallAppDeviceAction",()=>{const o=vi.fn(),a=vi.fn(),v=vi.fn(),p=vi.fn(),h=vi.fn(),c=()=>({getOsVersion:o,getAppList:a,installApp:v,getDeviceSessionState:p,setDeviceSessionState:h});beforeEach(()=>{vi.resetAllMocks()}),it("should finish successfully when the app is already installed on the device",()=>new Promise((r,s)=>{u([{installedApps:[{name:"Bitcoin"}]}]);const i=[{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Completed,output:void 0}],n=new m({input:{appName:"Bitcoin"}});vi.spyOn(n,"extractDependencies").mockImplementation(c),d(n,i,l(),{onDone:r,onError:s})})),it("should finish successfully when the app is not installed",()=>new Promise((r,s)=>{u([{installedApps:[]},{installedApps:[{name:"Bitcoin"}]}]),I(),o.mockResolvedValue(A({data:{targetId:12345678,secureElementFlags:{isSecureConnectionAllowed:!0}}})),p.mockReturnValue({sessionStateType:f.ReadyWithoutSecureChannel,deviceStatus:P.CONNECTED,currentApp:{name:"BOLOS",version:"0.0.0"},isSecureConnectionAllowed:!1}),a.mockResolvedValue(g([{versionName:"Bitcoin",perso:"test_perso",firmware:"test_firmware_for_bitcoin",firmwareKey:"test_firmware_key_for_bitcoin",hash:"test_hash_for_bitcoin"}])),v.mockImplementation(()=>D({type:V.Progress,payload:{progress:0}},{type:V.Progress,payload:{progress:.55}},{type:V.Progress,payload:{progress:1}}));const i=[{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:.55}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:1}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:1}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:1}},{status:e.Completed,output:void 0}],n=new m({input:{appName:"Bitcoin"}});vi.spyOn(n,"extractDependencies").mockImplementation(c),d(n,i,l(),{onDone:r,onError:s})})),it("should finish unsuccessfully when the dep app is not installed",()=>new Promise((r,s)=>{u([{installedApps:[]}]),I(),o.mockResolvedValue(A({data:{targetId:12345678,secureElementFlags:{isSecureConnectionAllowed:!0}}})),p.mockReturnValue({sessionStateType:f.ReadyWithoutSecureChannel,deviceStatus:P.CONNECTED,currentApp:{name:"BOLOS",version:"0.0.0"},isSecureConnectionAllowed:!1}),a.mockResolvedValue(g([{versionName:"Bitcoin",parentName:"test_parent"}]));const i=[{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Error,error:new S("Dep app is not installed on the device")}],n=new m({input:{appName:"Bitcoin"}});vi.spyOn(n,"extractDependencies").mockImplementation(c),d(n,i,l(),{onDone:r,onError:s})})),it("should finish unsuccessfully when the app is not found in manager API",()=>new Promise((r,s)=>{u([{installedApps:[]}]),I(),o.mockResolvedValue(A({data:{targetId:12345678,secureElementFlags:{isSecureConnectionAllowed:!0}}})),p.mockReturnValue({}),a.mockResolvedValueOnce(g([]));const i=[{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Error,error:new S("App to install not found in manager API")}],n=new m({input:{appName:"Bitcoin"}});vi.spyOn(n,"extractDependencies").mockImplementation(c),d(n,i,l(),{onDone:r,onError:s})})),it("should finish unsuccessfully when there is error in installApp",()=>new Promise((r,s)=>{u([{installedApps:[]}]),I(),o.mockResolvedValue(A({data:{targetId:12345678,secureElementFlags:{isSecureConnectionAllowed:!0}}})),p.mockReturnValue({}),a.mockResolvedValueOnce(g([{versionName:"Bitcoin"}])),v.mockReturnValue(y(()=>new N("Install app error in secure channel")));const i=[{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Pending,intermediateValue:{requiredUserInteraction:t.None,progress:0}},{status:e.Error,error:new N("Install app error in secure channel")}],n=new m({input:{appName:"Bitcoin"}});vi.spyOn(n,"extractDependencies").mockImplementation(c),d(n,i,l(),{onDone:r,onError:s})}))});
2
+ //# sourceMappingURL=InstallAppDeviceAction.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../../src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.test.ts"],
4
+ "sourcesContent": ["import { Right } from \"purify-ts\";\nimport { of, throwError } from \"rxjs\";\n\nimport { CommandResultFactory } from \"@api/command/model/CommandResult\";\nimport { type GetOsVersionResponse } from \"@api/command/os/GetOsVersionCommand\";\nimport { DeviceStatus } from \"@api/device/DeviceStatus\";\nimport { makeDeviceActionInternalApiMock } from \"@api/device-action/__test-utils__/makeInternalApi\";\nimport {\n setupGoToDashboardMock,\n setupListInstalledAppsMock,\n} from \"@api/device-action/__test-utils__/setupTestMachine\";\nimport { testDeviceActionStates } from \"@api/device-action/__test-utils__/testDeviceActionStates\";\nimport { DeviceActionStatus } from \"@api/device-action/model/DeviceActionState\";\nimport { UserInteractionRequired } from \"@api/device-action/model/UserInteractionRequired\";\nimport { UnknownDAError } from \"@api/device-action/os/Errors\";\nimport {\n type DeviceSessionState,\n DeviceSessionStateType,\n} from \"@api/device-session/DeviceSessionState\";\nimport { type InstalledApp } from \"@api/secure-channel/device-action/ListInstalledApps/types\";\nimport {\n type SecureChannelEventPayload,\n SecureChannelEventType,\n} from \"@api/secure-channel/task/types\";\nimport { type Application } from \"@internal/manager-api/model/Application\";\nimport { SecureChannelError } from \"@internal/secure-channel/model/Errors\";\n\nimport { InstallAppDeviceAction } from \"./InstallAppDeviceAction\";\nimport { type InstallAppDAState } from \"./types\";\n\nvi.mock(\n \"@api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction\",\n);\nvi.mock(\"@api/device-action/os/GoToDashboard/GoToDashboardDeviceAction\");\n\ndescribe(\"InstallAppDeviceAction\", () => {\n const getOsVersionMock = vi.fn();\n const getAppListMock = vi.fn();\n const installAppMock = vi.fn();\n const getDeviceSessionStateMock = vi.fn();\n const setDeviceSessionStateMock = vi.fn();\n const extractDependenciesMock = () => ({\n getOsVersion: getOsVersionMock,\n getAppList: getAppListMock,\n installApp: installAppMock,\n getDeviceSessionState: getDeviceSessionStateMock,\n setDeviceSessionState: setDeviceSessionStateMock,\n });\n\n beforeEach(() => {\n vi.resetAllMocks();\n });\n\n it(\"should finish successfully when the app is already installed on the device\", () =>\n new Promise<void>((resolve, reject) => {\n setupListInstalledAppsMock([\n { installedApps: [{ name: \"Bitcoin\" } as InstalledApp] },\n ]);\n\n const expectedStates: Array<InstallAppDAState> = [\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Completed,\n output: undefined,\n },\n ];\n\n const installAppDeviceAction = new InstallAppDeviceAction({\n input: { appName: \"Bitcoin\" },\n });\n vi.spyOn(\n installAppDeviceAction,\n \"extractDependencies\",\n ).mockImplementation(extractDependenciesMock);\n\n testDeviceActionStates(\n installAppDeviceAction,\n expectedStates,\n makeDeviceActionInternalApiMock(),\n {\n onDone: resolve,\n onError: reject,\n },\n );\n }));\n it(\"should finish successfully when the app is not installed\", () =>\n new Promise<void>((resolve, reject) => {\n setupListInstalledAppsMock([\n { installedApps: [] },\n { installedApps: [{ name: \"Bitcoin\" } as InstalledApp] },\n ]);\n setupGoToDashboardMock();\n getOsVersionMock.mockResolvedValue(\n CommandResultFactory({\n data: {\n targetId: 12345678,\n secureElementFlags: {\n isSecureConnectionAllowed: true,\n },\n } as GetOsVersionResponse,\n }),\n );\n getDeviceSessionStateMock.mockReturnValue({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n currentApp: { name: \"BOLOS\", version: \"0.0.0\" },\n isSecureConnectionAllowed: false,\n });\n getAppListMock.mockResolvedValue(\n Right([\n {\n versionName: \"Bitcoin\",\n perso: \"test_perso\",\n firmware: \"test_firmware_for_bitcoin\",\n firmwareKey: \"test_firmware_key_for_bitcoin\",\n hash: \"test_hash_for_bitcoin\",\n } as Application,\n ]),\n );\n installAppMock.mockImplementation(() =>\n of(\n {\n type: SecureChannelEventType.Progress,\n payload: {\n progress: 0,\n } as SecureChannelEventPayload[\"Progress\"],\n },\n {\n type: SecureChannelEventType.Progress,\n payload: {\n progress: 0.55,\n } as SecureChannelEventPayload[\"Progress\"],\n },\n {\n type: SecureChannelEventType.Progress,\n payload: {\n progress: 1,\n } as SecureChannelEventPayload[\"Progress\"],\n },\n ),\n );\n\n const expectedStates: Array<InstallAppDAState> = [\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0.55,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 1,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 1,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 1,\n },\n },\n {\n status: DeviceActionStatus.Completed,\n output: undefined,\n },\n ];\n\n const installAppDeviceAction = new InstallAppDeviceAction({\n input: { appName: \"Bitcoin\" },\n });\n vi.spyOn(\n installAppDeviceAction,\n \"extractDependencies\",\n ).mockImplementation(extractDependenciesMock);\n\n testDeviceActionStates(\n installAppDeviceAction,\n expectedStates,\n makeDeviceActionInternalApiMock(),\n {\n onDone: resolve,\n onError: reject,\n },\n );\n }));\n it(\"should finish unsuccessfully when the dep app is not installed\", () =>\n new Promise<void>((resolve, reject) => {\n setupListInstalledAppsMock([{ installedApps: [] }]);\n setupGoToDashboardMock();\n getOsVersionMock.mockResolvedValue(\n CommandResultFactory({\n data: {\n targetId: 12345678,\n secureElementFlags: {\n isSecureConnectionAllowed: true,\n },\n } as GetOsVersionResponse,\n }),\n );\n getDeviceSessionStateMock.mockReturnValue({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n currentApp: { name: \"BOLOS\", version: \"0.0.0\" },\n isSecureConnectionAllowed: false,\n });\n getAppListMock.mockResolvedValue(\n Right([\n {\n versionName: \"Bitcoin\",\n parentName: \"test_parent\",\n } as Application,\n ]),\n );\n\n const expectedStates: Array<InstallAppDAState> = [\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Error,\n error: new UnknownDAError(\"Dep app is not installed on the device\"),\n },\n ];\n\n const installAppDeviceAction = new InstallAppDeviceAction({\n input: { appName: \"Bitcoin\" },\n });\n vi.spyOn(\n installAppDeviceAction,\n \"extractDependencies\",\n ).mockImplementation(extractDependenciesMock);\n\n testDeviceActionStates(\n installAppDeviceAction,\n expectedStates,\n makeDeviceActionInternalApiMock(),\n {\n onDone: resolve,\n onError: reject,\n },\n );\n }));\n it(\"should finish unsuccessfully when the app is not found in manager API\", () =>\n new Promise<void>((resolve, reject) => {\n setupListInstalledAppsMock([{ installedApps: [] }]);\n setupGoToDashboardMock();\n getOsVersionMock.mockResolvedValue(\n CommandResultFactory({\n data: {\n targetId: 12345678,\n secureElementFlags: {\n isSecureConnectionAllowed: true,\n },\n } as GetOsVersionResponse,\n }),\n );\n getDeviceSessionStateMock.mockReturnValue({} as DeviceSessionState);\n getAppListMock.mockResolvedValueOnce(Right([]));\n\n const expectedStates: Array<InstallAppDAState> = [\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Error,\n error: new UnknownDAError(\"App to install not found in manager API\"),\n },\n ];\n\n const installAppDeviceAction = new InstallAppDeviceAction({\n input: { appName: \"Bitcoin\" },\n });\n vi.spyOn(\n installAppDeviceAction,\n \"extractDependencies\",\n ).mockImplementation(extractDependenciesMock);\n\n testDeviceActionStates(\n installAppDeviceAction,\n expectedStates,\n makeDeviceActionInternalApiMock(),\n {\n onDone: resolve,\n onError: reject,\n },\n );\n }));\n\n it(\"should finish unsuccessfully when there is error in installApp\", () =>\n new Promise<void>((resolve, reject) => {\n setupListInstalledAppsMock([{ installedApps: [] }]);\n setupGoToDashboardMock();\n getOsVersionMock.mockResolvedValue(\n CommandResultFactory({\n data: {\n targetId: 12345678,\n secureElementFlags: {\n isSecureConnectionAllowed: true,\n },\n } as GetOsVersionResponse,\n }),\n );\n getDeviceSessionStateMock.mockReturnValue({} as DeviceSessionState);\n getAppListMock.mockResolvedValueOnce(\n Right([{ versionName: \"Bitcoin\" } as Application]),\n );\n installAppMock.mockReturnValue(\n throwError(\n () => new SecureChannelError(\"Install app error in secure channel\"),\n ),\n );\n\n const expectedStates: Array<InstallAppDAState> = [\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n progress: 0,\n },\n },\n {\n status: DeviceActionStatus.Error,\n error: new SecureChannelError(\"Install app error in secure channel\"),\n },\n ];\n\n const installAppDeviceAction = new InstallAppDeviceAction({\n input: { appName: \"Bitcoin\" },\n });\n vi.spyOn(\n installAppDeviceAction,\n \"extractDependencies\",\n ).mockImplementation(extractDependenciesMock);\n\n testDeviceActionStates(\n installAppDeviceAction,\n expectedStates,\n makeDeviceActionInternalApiMock(),\n {\n onDone: resolve,\n onError: reject,\n },\n );\n }));\n});\n"],
5
+ "mappings": "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",
6
+ "names": ["Right", "of", "throwError", "CommandResultFactory", "DeviceStatus", "makeDeviceActionInternalApiMock", "setupGoToDashboardMock", "setupListInstalledAppsMock", "testDeviceActionStates", "DeviceActionStatus", "UserInteractionRequired", "UnknownDAError", "DeviceSessionStateType", "SecureChannelEventType", "SecureChannelError", "InstallAppDeviceAction", "getOsVersionMock", "getAppListMock", "installAppMock", "getDeviceSessionStateMock", "setDeviceSessionStateMock", "extractDependenciesMock", "resolve", "reject", "expectedStates", "installAppDeviceAction"]
7
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }