@ledgerhq/dmk-ledger-wallet 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (580) hide show
  1. package/lib/cjs/api/command/OsUpdate/Backup/BackupAppStorageCommand.js +2 -0
  2. package/lib/cjs/api/command/OsUpdate/Backup/BackupAppStorageCommand.js.map +7 -0
  3. package/lib/cjs/api/command/OsUpdate/Backup/BackupAppStorageCommand.test.js +2 -0
  4. package/lib/cjs/api/command/OsUpdate/Backup/BackupAppStorageCommand.test.js.map +7 -0
  5. package/lib/cjs/api/command/OsUpdate/Backup/GetAppStorageInfoCommand.js +2 -0
  6. package/lib/cjs/api/command/OsUpdate/Backup/GetAppStorageInfoCommand.js.map +7 -0
  7. package/lib/cjs/api/command/OsUpdate/Backup/GetAppStorageInfoCommand.test.js +2 -0
  8. package/lib/cjs/api/command/OsUpdate/Backup/GetAppStorageInfoCommand.test.js.map +7 -0
  9. package/lib/cjs/api/command/OsUpdate/Restore/CommitRestoreAppStorageCommand.js +2 -0
  10. package/lib/cjs/api/command/OsUpdate/Restore/CommitRestoreAppStorageCommand.js.map +7 -0
  11. package/lib/cjs/api/command/OsUpdate/Restore/CommitRestoreAppStorageCommand.test.js +2 -0
  12. package/lib/cjs/api/command/OsUpdate/Restore/CommitRestoreAppStorageCommand.test.js.map +7 -0
  13. package/lib/cjs/api/command/OsUpdate/Restore/InitRestoreAppStorageCommand.js +2 -0
  14. package/lib/cjs/api/command/OsUpdate/Restore/InitRestoreAppStorageCommand.js.map +7 -0
  15. package/lib/cjs/api/command/OsUpdate/Restore/InitRestoreAppStorageCommand.test.js +2 -0
  16. package/lib/cjs/api/command/OsUpdate/Restore/InitRestoreAppStorageCommand.test.js.map +7 -0
  17. package/lib/cjs/api/command/OsUpdate/Restore/RequestMasterConsentCommand.js +2 -0
  18. package/lib/cjs/api/command/OsUpdate/Restore/RequestMasterConsentCommand.js.map +7 -0
  19. package/lib/cjs/api/command/OsUpdate/Restore/RequestMasterConsentCommand.test.js +2 -0
  20. package/lib/cjs/api/command/OsUpdate/Restore/RequestMasterConsentCommand.test.js.map +7 -0
  21. package/lib/cjs/api/command/OsUpdate/Restore/RestoreAppStorageCommand.js +2 -0
  22. package/lib/cjs/api/command/OsUpdate/Restore/RestoreAppStorageCommand.js.map +7 -0
  23. package/lib/cjs/api/command/OsUpdate/Restore/RestoreAppStorageCommand.test.js +2 -0
  24. package/lib/cjs/api/command/OsUpdate/Restore/RestoreAppStorageCommand.test.js.map +7 -0
  25. package/lib/cjs/api/device-action/OsUpdate/Backup/CreateBackupDeviceAction.js +2 -0
  26. package/lib/cjs/api/device-action/OsUpdate/Backup/CreateBackupDeviceAction.js.map +7 -0
  27. package/lib/cjs/api/device-action/OsUpdate/Backup/CreateBackupDeviceAction.test.js +2 -0
  28. package/lib/cjs/api/device-action/OsUpdate/Backup/CreateBackupDeviceAction.test.js.map +7 -0
  29. package/lib/cjs/api/device-action/OsUpdate/Backup/CreateBackupDeviceActionErrors.js +2 -0
  30. package/lib/cjs/api/device-action/OsUpdate/Backup/CreateBackupDeviceActionErrors.js.map +7 -0
  31. package/lib/cjs/api/device-action/OsUpdate/Backup/Substeps/BackupAppsStorage.js +2 -0
  32. package/lib/cjs/api/device-action/OsUpdate/Backup/Substeps/BackupAppsStorage.js.map +7 -0
  33. package/lib/cjs/api/device-action/OsUpdate/Backup/Substeps/BackupAppsStorage.test.js +2 -0
  34. package/lib/cjs/api/device-action/OsUpdate/Backup/Substeps/BackupAppsStorage.test.js.map +7 -0
  35. package/lib/cjs/api/device-action/OsUpdate/Backup/Substeps/DownloadCustomLockScreen.js +2 -0
  36. package/lib/cjs/api/device-action/OsUpdate/Backup/Substeps/DownloadCustomLockScreen.js.map +7 -0
  37. package/lib/cjs/api/device-action/OsUpdate/Backup/Substeps/DownloadCustomLockScreen.test.js +2 -0
  38. package/lib/cjs/api/device-action/OsUpdate/Backup/Substeps/DownloadCustomLockScreen.test.js.map +7 -0
  39. package/lib/cjs/api/device-action/OsUpdate/Backup/Substeps/GetIsOnboarded.js +2 -0
  40. package/lib/cjs/api/device-action/OsUpdate/Backup/Substeps/GetIsOnboarded.js.map +7 -0
  41. package/lib/cjs/api/device-action/OsUpdate/Backup/Substeps/GetIsOnboarded.test.js +2 -0
  42. package/lib/cjs/api/device-action/OsUpdate/Backup/Substeps/GetIsOnboarded.test.js.map +7 -0
  43. package/lib/cjs/api/device-action/OsUpdate/Backup/Substeps/GetLanguageId.js +2 -0
  44. package/lib/cjs/api/device-action/OsUpdate/Backup/Substeps/GetLanguageId.js.map +7 -0
  45. package/lib/cjs/api/device-action/OsUpdate/Backup/Substeps/GetLanguageId.test.js +2 -0
  46. package/lib/cjs/api/device-action/OsUpdate/Backup/Substeps/GetLanguageId.test.js.map +7 -0
  47. package/lib/cjs/api/device-action/OsUpdate/Backup/types.js +2 -0
  48. package/lib/cjs/api/device-action/OsUpdate/Backup/types.js.map +7 -0
  49. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/CleanDeviceDeviceAction.js +2 -0
  50. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/CleanDeviceDeviceAction.js.map +7 -0
  51. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/CleanDeviceDeviceAction.test.js +2 -0
  52. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/CleanDeviceDeviceAction.test.js.map +7 -0
  53. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/Substeps/DeleteLanguagePack.js +2 -0
  54. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/Substeps/DeleteLanguagePack.js.map +7 -0
  55. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/Substeps/DeleteLanguagePack.test.js +2 -0
  56. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/Substeps/DeleteLanguagePack.test.js.map +7 -0
  57. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/Substeps/GetCustomLockScreenInfo.js +2 -0
  58. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/Substeps/GetCustomLockScreenInfo.js.map +7 -0
  59. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/Substeps/GetCustomLockScreenInfo.test.js +2 -0
  60. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/Substeps/GetCustomLockScreenInfo.test.js.map +7 -0
  61. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/Substeps/RemoveCustomLockScreen.js +2 -0
  62. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/Substeps/RemoveCustomLockScreen.js.map +7 -0
  63. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/Substeps/RemoveCustomLockScreen.test.js +2 -0
  64. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/Substeps/RemoveCustomLockScreen.test.js.map +7 -0
  65. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/Substeps/UninstallApp.js +2 -0
  66. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/Substeps/UninstallApp.js.map +7 -0
  67. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/Substeps/UninstallApp.test.js +2 -0
  68. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/Substeps/UninstallApp.test.js.map +7 -0
  69. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/types.js +2 -0
  70. package/lib/cjs/api/device-action/OsUpdate/CleanDevice/types.js.map +7 -0
  71. package/lib/cjs/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceAction.js +2 -0
  72. package/lib/cjs/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceAction.js.map +7 -0
  73. package/lib/cjs/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceAction.test.js +2 -0
  74. package/lib/cjs/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceAction.test.js.map +7 -0
  75. package/lib/cjs/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceActionErrors.js +2 -0
  76. package/lib/cjs/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceActionErrors.js.map +7 -0
  77. package/lib/cjs/api/device-action/OsUpdate/Resolve/Substeps/ResolveOsUpdatePath.js +2 -0
  78. package/lib/cjs/api/device-action/OsUpdate/Resolve/Substeps/ResolveOsUpdatePath.js.map +7 -0
  79. package/lib/cjs/api/device-action/OsUpdate/Resolve/Substeps/ResolveOsUpdatePath.test.js +2 -0
  80. package/lib/cjs/api/device-action/OsUpdate/Resolve/Substeps/ResolveOsUpdatePath.test.js.map +7 -0
  81. package/lib/cjs/api/device-action/OsUpdate/Resolve/types.js +2 -0
  82. package/lib/cjs/api/device-action/OsUpdate/Resolve/types.js.map +7 -0
  83. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceAction.js +2 -0
  84. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceAction.js.map +7 -0
  85. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceAction.test.js +2 -0
  86. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceAction.test.js.map +7 -0
  87. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceActionErrors.js +2 -0
  88. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceActionErrors.js.map +7 -0
  89. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage.js +2 -0
  90. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage.js.map +7 -0
  91. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage.test.js +2 -0
  92. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage.test.js.map +7 -0
  93. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/InitRestoreAppStorage.js +2 -0
  94. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/InitRestoreAppStorage.js.map +7 -0
  95. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/InitRestoreAppStorage.test.js +2 -0
  96. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/InitRestoreAppStorage.test.js.map +7 -0
  97. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/RestoreAppStorage.js +2 -0
  98. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/RestoreAppStorage.js.map +7 -0
  99. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/RestoreAppStorage.test.js +2 -0
  100. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/RestoreAppStorage.test.js.map +7 -0
  101. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreAppsStorage/types.js +2 -0
  102. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreAppsStorage/types.js.map +7 -0
  103. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/RestoreBackupDeviceAction.js +2 -0
  104. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/RestoreBackupDeviceAction.js.map +7 -0
  105. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/RestoreBackupDeviceAction.test.js +2 -0
  106. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/RestoreBackupDeviceAction.test.js.map +7 -0
  107. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/RestoreBackupDeviceActionErrors.js +2 -0
  108. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/RestoreBackupDeviceActionErrors.js.map +7 -0
  109. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/GetIsOnboarded.js +2 -0
  110. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/GetIsOnboarded.js.map +7 -0
  111. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/GetIsOnboarded.test.js +2 -0
  112. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/GetIsOnboarded.test.js.map +7 -0
  113. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallLanguagePackage.js +2 -0
  114. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallLanguagePackage.js.map +7 -0
  115. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallLanguagePackage.test.js +2 -0
  116. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallLanguagePackage.test.js.map +7 -0
  117. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallOrUpdateApps.js +2 -0
  118. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallOrUpdateApps.js.map +7 -0
  119. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallOrUpdateApps.test.js +2 -0
  120. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallOrUpdateApps.test.js.map +7 -0
  121. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RequestMasterConsent.js +2 -0
  122. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RequestMasterConsent.js.map +7 -0
  123. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RequestMasterConsent.test.js +2 -0
  124. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RequestMasterConsent.test.js.map +7 -0
  125. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RestoreAppsStorage.js +2 -0
  126. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RestoreAppsStorage.js.map +7 -0
  127. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RestoreAppsStorage.test.js +2 -0
  128. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RestoreAppsStorage.test.js.map +7 -0
  129. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/UploadCustomLockScreen.js +2 -0
  130. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/UploadCustomLockScreen.js.map +7 -0
  131. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/UploadCustomLockScreen.test.js +2 -0
  132. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/UploadCustomLockScreen.test.js.map +7 -0
  133. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/types.js +2 -0
  134. package/lib/cjs/api/device-action/OsUpdate/Restore/RestoreBackup/types.js.map +7 -0
  135. package/lib/cjs/api/device-action/OsUpdate/Shared/OsUpdateDeviceActionErrors.js +2 -0
  136. package/lib/cjs/api/device-action/OsUpdate/Shared/OsUpdateDeviceActionErrors.js.map +7 -0
  137. package/lib/cjs/api/device-action/OsUpdate/Shared/OsUpdateUtils.js +2 -0
  138. package/lib/cjs/api/device-action/OsUpdate/Shared/OsUpdateUtils.js.map +7 -0
  139. package/lib/cjs/api/device-action/OsUpdate/Shared/Substeps/GetOsVersion.js +2 -0
  140. package/lib/cjs/api/device-action/OsUpdate/Shared/Substeps/GetOsVersion.js.map +7 -0
  141. package/lib/cjs/api/device-action/OsUpdate/Shared/Substeps/GetOsVersion.test.js +2 -0
  142. package/lib/cjs/api/device-action/OsUpdate/Shared/Substeps/GetOsVersion.test.js.map +7 -0
  143. package/lib/cjs/api/device-action/OsUpdate/Shared/Substeps/GoToDashboard.js +2 -0
  144. package/lib/cjs/api/device-action/OsUpdate/Shared/Substeps/GoToDashboard.js.map +7 -0
  145. package/lib/cjs/api/device-action/OsUpdate/Shared/Substeps/GoToDashboard.test.js +2 -0
  146. package/lib/cjs/api/device-action/OsUpdate/Shared/Substeps/GoToDashboard.test.js.map +7 -0
  147. package/lib/cjs/api/device-action/OsUpdate/Shared/Substeps/ListInstalledApps.js +2 -0
  148. package/lib/cjs/api/device-action/OsUpdate/Shared/Substeps/ListInstalledApps.js.map +7 -0
  149. package/lib/cjs/api/device-action/OsUpdate/Shared/Substeps/ListInstalledApps.test.js +2 -0
  150. package/lib/cjs/api/device-action/OsUpdate/Shared/Substeps/ListInstalledApps.test.js.map +7 -0
  151. package/lib/cjs/api/device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion.js +2 -0
  152. package/lib/cjs/api/device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion.js.map +7 -0
  153. package/lib/cjs/api/device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion.test.js +2 -0
  154. package/lib/cjs/api/device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion.test.js.map +7 -0
  155. package/lib/cjs/api/device-action/OsUpdate/Shared/types.js +2 -0
  156. package/lib/cjs/api/device-action/OsUpdate/Shared/types.js.map +7 -0
  157. package/lib/cjs/api/device-action/OsUpdate/Update/FlashMcu/FlashMcuDeviceAction.js +2 -0
  158. package/lib/cjs/api/device-action/OsUpdate/Update/FlashMcu/FlashMcuDeviceAction.js.map +7 -0
  159. package/lib/cjs/api/device-action/OsUpdate/Update/FlashMcu/FlashMcuDeviceAction.test.js +2 -0
  160. package/lib/cjs/api/device-action/OsUpdate/Update/FlashMcu/FlashMcuDeviceAction.test.js.map +7 -0
  161. package/lib/cjs/api/device-action/OsUpdate/Update/FlashMcu/FlashMcuDeviceActionErrors.js +2 -0
  162. package/lib/cjs/api/device-action/OsUpdate/Update/FlashMcu/FlashMcuDeviceActionErrors.js.map +7 -0
  163. package/lib/cjs/api/device-action/OsUpdate/Update/FlashMcu/Substeps/FlashMcu.js +2 -0
  164. package/lib/cjs/api/device-action/OsUpdate/Update/FlashMcu/Substeps/FlashMcu.js.map +7 -0
  165. package/lib/cjs/api/device-action/OsUpdate/Update/FlashMcu/Substeps/FlashMcu.test.js +2 -0
  166. package/lib/cjs/api/device-action/OsUpdate/Update/FlashMcu/Substeps/FlashMcu.test.js.map +7 -0
  167. package/lib/cjs/api/device-action/OsUpdate/Update/FlashMcu/Substeps/ResolveMcuVersion.js +2 -0
  168. package/lib/cjs/api/device-action/OsUpdate/Update/FlashMcu/Substeps/ResolveMcuVersion.js.map +7 -0
  169. package/lib/cjs/api/device-action/OsUpdate/Update/FlashMcu/Substeps/ResolveMcuVersion.test.js +2 -0
  170. package/lib/cjs/api/device-action/OsUpdate/Update/FlashMcu/Substeps/ResolveMcuVersion.test.js.map +7 -0
  171. package/lib/cjs/api/device-action/OsUpdate/Update/FlashMcu/types.js +2 -0
  172. package/lib/cjs/api/device-action/OsUpdate/Update/FlashMcu/types.js.map +7 -0
  173. package/lib/cjs/api/device-action/OsUpdate/Update/InstallOsUpdate/InstallOsUpdateDeviceAction.js +2 -0
  174. package/lib/cjs/api/device-action/OsUpdate/Update/InstallOsUpdate/InstallOsUpdateDeviceAction.js.map +7 -0
  175. package/lib/cjs/api/device-action/OsUpdate/Update/InstallOsUpdate/InstallOsUpdateDeviceAction.test.js +2 -0
  176. package/lib/cjs/api/device-action/OsUpdate/Update/InstallOsUpdate/InstallOsUpdateDeviceAction.test.js.map +7 -0
  177. package/lib/cjs/api/device-action/OsUpdate/Update/InstallOsUpdate/Substeps/InstallFirmware.js +2 -0
  178. package/lib/cjs/api/device-action/OsUpdate/Update/InstallOsUpdate/Substeps/InstallFirmware.js.map +7 -0
  179. package/lib/cjs/api/device-action/OsUpdate/Update/InstallOsUpdate/Substeps/InstallFirmware.test.js +2 -0
  180. package/lib/cjs/api/device-action/OsUpdate/Update/InstallOsUpdate/Substeps/InstallFirmware.test.js.map +7 -0
  181. package/lib/cjs/api/device-action/OsUpdate/Update/InstallOsUpdate/types.js +2 -0
  182. package/lib/cjs/api/device-action/OsUpdate/Update/InstallOsUpdate/types.js.map +7 -0
  183. package/lib/cjs/api/task/OsUpdate/Backup/BackupAppStorageTask.js +2 -0
  184. package/lib/cjs/api/task/OsUpdate/Backup/BackupAppStorageTask.js.map +7 -0
  185. package/lib/cjs/api/task/OsUpdate/Backup/BackupAppStorageTask.test.js +2 -0
  186. package/lib/cjs/api/task/OsUpdate/Backup/BackupAppStorageTask.test.js.map +7 -0
  187. package/lib/cjs/api/task/OsUpdate/Restore/RestoreAppStorageTask.js +2 -0
  188. package/lib/cjs/api/task/OsUpdate/Restore/RestoreAppStorageTask.js.map +7 -0
  189. package/lib/cjs/api/task/OsUpdate/Restore/RestoreAppStorageTask.test.js +2 -0
  190. package/lib/cjs/api/task/OsUpdate/Restore/RestoreAppStorageTask.test.js.map +7 -0
  191. package/lib/cjs/index.js +1 -1
  192. package/lib/cjs/index.js.map +3 -3
  193. package/lib/cjs/package.json +5 -2
  194. package/lib/esm/api/command/OsUpdate/Backup/BackupAppStorageCommand.js +2 -0
  195. package/lib/esm/api/command/OsUpdate/Backup/BackupAppStorageCommand.js.map +7 -0
  196. package/lib/esm/api/command/OsUpdate/Backup/BackupAppStorageCommand.test.js +2 -0
  197. package/lib/esm/api/command/OsUpdate/Backup/BackupAppStorageCommand.test.js.map +7 -0
  198. package/lib/esm/api/command/OsUpdate/Backup/GetAppStorageInfoCommand.js +2 -0
  199. package/lib/esm/api/command/OsUpdate/Backup/GetAppStorageInfoCommand.js.map +7 -0
  200. package/lib/esm/api/command/OsUpdate/Backup/GetAppStorageInfoCommand.test.js +2 -0
  201. package/lib/esm/api/command/OsUpdate/Backup/GetAppStorageInfoCommand.test.js.map +7 -0
  202. package/lib/esm/api/command/OsUpdate/Restore/CommitRestoreAppStorageCommand.js +2 -0
  203. package/lib/esm/api/command/OsUpdate/Restore/CommitRestoreAppStorageCommand.js.map +7 -0
  204. package/lib/esm/api/command/OsUpdate/Restore/CommitRestoreAppStorageCommand.test.js +2 -0
  205. package/lib/esm/api/command/OsUpdate/Restore/CommitRestoreAppStorageCommand.test.js.map +7 -0
  206. package/lib/esm/api/command/OsUpdate/Restore/InitRestoreAppStorageCommand.js +2 -0
  207. package/lib/esm/api/command/OsUpdate/Restore/InitRestoreAppStorageCommand.js.map +7 -0
  208. package/lib/esm/api/command/OsUpdate/Restore/InitRestoreAppStorageCommand.test.js +2 -0
  209. package/lib/esm/api/command/OsUpdate/Restore/InitRestoreAppStorageCommand.test.js.map +7 -0
  210. package/lib/esm/api/command/OsUpdate/Restore/RequestMasterConsentCommand.js +2 -0
  211. package/lib/esm/api/command/OsUpdate/Restore/RequestMasterConsentCommand.js.map +7 -0
  212. package/lib/esm/api/command/OsUpdate/Restore/RequestMasterConsentCommand.test.js +2 -0
  213. package/lib/esm/api/command/OsUpdate/Restore/RequestMasterConsentCommand.test.js.map +7 -0
  214. package/lib/esm/api/command/OsUpdate/Restore/RestoreAppStorageCommand.js +2 -0
  215. package/lib/esm/api/command/OsUpdate/Restore/RestoreAppStorageCommand.js.map +7 -0
  216. package/lib/esm/api/command/OsUpdate/Restore/RestoreAppStorageCommand.test.js +2 -0
  217. package/lib/esm/api/command/OsUpdate/Restore/RestoreAppStorageCommand.test.js.map +7 -0
  218. package/lib/esm/api/device-action/OsUpdate/Backup/CreateBackupDeviceAction.js +2 -0
  219. package/lib/esm/api/device-action/OsUpdate/Backup/CreateBackupDeviceAction.js.map +7 -0
  220. package/lib/esm/api/device-action/OsUpdate/Backup/CreateBackupDeviceAction.test.js +2 -0
  221. package/lib/esm/api/device-action/OsUpdate/Backup/CreateBackupDeviceAction.test.js.map +7 -0
  222. package/lib/esm/api/device-action/OsUpdate/Backup/CreateBackupDeviceActionErrors.js +2 -0
  223. package/lib/esm/api/device-action/OsUpdate/Backup/CreateBackupDeviceActionErrors.js.map +7 -0
  224. package/lib/esm/api/device-action/OsUpdate/Backup/Substeps/BackupAppsStorage.js +2 -0
  225. package/lib/esm/api/device-action/OsUpdate/Backup/Substeps/BackupAppsStorage.js.map +7 -0
  226. package/lib/esm/api/device-action/OsUpdate/Backup/Substeps/BackupAppsStorage.test.js +2 -0
  227. package/lib/esm/api/device-action/OsUpdate/Backup/Substeps/BackupAppsStorage.test.js.map +7 -0
  228. package/lib/esm/api/device-action/OsUpdate/Backup/Substeps/DownloadCustomLockScreen.js +2 -0
  229. package/lib/esm/api/device-action/OsUpdate/Backup/Substeps/DownloadCustomLockScreen.js.map +7 -0
  230. package/lib/esm/api/device-action/OsUpdate/Backup/Substeps/DownloadCustomLockScreen.test.js +2 -0
  231. package/lib/esm/api/device-action/OsUpdate/Backup/Substeps/DownloadCustomLockScreen.test.js.map +7 -0
  232. package/lib/esm/api/device-action/OsUpdate/Backup/Substeps/GetIsOnboarded.js +2 -0
  233. package/lib/esm/api/device-action/OsUpdate/Backup/Substeps/GetIsOnboarded.js.map +7 -0
  234. package/lib/esm/api/device-action/OsUpdate/Backup/Substeps/GetIsOnboarded.test.js +2 -0
  235. package/lib/esm/api/device-action/OsUpdate/Backup/Substeps/GetIsOnboarded.test.js.map +7 -0
  236. package/lib/esm/api/device-action/OsUpdate/Backup/Substeps/GetLanguageId.js +2 -0
  237. package/lib/esm/api/device-action/OsUpdate/Backup/Substeps/GetLanguageId.js.map +7 -0
  238. package/lib/esm/api/device-action/OsUpdate/Backup/Substeps/GetLanguageId.test.js +2 -0
  239. package/lib/esm/api/device-action/OsUpdate/Backup/Substeps/GetLanguageId.test.js.map +7 -0
  240. package/lib/esm/api/device-action/OsUpdate/Backup/types.js +2 -0
  241. package/lib/esm/api/device-action/OsUpdate/Backup/types.js.map +7 -0
  242. package/lib/esm/api/device-action/OsUpdate/CleanDevice/CleanDeviceDeviceAction.js +2 -0
  243. package/lib/esm/api/device-action/OsUpdate/CleanDevice/CleanDeviceDeviceAction.js.map +7 -0
  244. package/lib/esm/api/device-action/OsUpdate/CleanDevice/CleanDeviceDeviceAction.test.js +2 -0
  245. package/lib/esm/api/device-action/OsUpdate/CleanDevice/CleanDeviceDeviceAction.test.js.map +7 -0
  246. package/lib/esm/api/device-action/OsUpdate/CleanDevice/Substeps/DeleteLanguagePack.js +2 -0
  247. package/lib/esm/api/device-action/OsUpdate/CleanDevice/Substeps/DeleteLanguagePack.js.map +7 -0
  248. package/lib/esm/api/device-action/OsUpdate/CleanDevice/Substeps/DeleteLanguagePack.test.js +2 -0
  249. package/lib/esm/api/device-action/OsUpdate/CleanDevice/Substeps/DeleteLanguagePack.test.js.map +7 -0
  250. package/lib/esm/api/device-action/OsUpdate/CleanDevice/Substeps/GetCustomLockScreenInfo.js +2 -0
  251. package/lib/esm/api/device-action/OsUpdate/CleanDevice/Substeps/GetCustomLockScreenInfo.js.map +7 -0
  252. package/lib/esm/api/device-action/OsUpdate/CleanDevice/Substeps/GetCustomLockScreenInfo.test.js +2 -0
  253. package/lib/esm/api/device-action/OsUpdate/CleanDevice/Substeps/GetCustomLockScreenInfo.test.js.map +7 -0
  254. package/lib/esm/api/device-action/OsUpdate/CleanDevice/Substeps/RemoveCustomLockScreen.js +2 -0
  255. package/lib/esm/api/device-action/OsUpdate/CleanDevice/Substeps/RemoveCustomLockScreen.js.map +7 -0
  256. package/lib/esm/api/device-action/OsUpdate/CleanDevice/Substeps/RemoveCustomLockScreen.test.js +2 -0
  257. package/lib/esm/api/device-action/OsUpdate/CleanDevice/Substeps/RemoveCustomLockScreen.test.js.map +7 -0
  258. package/lib/esm/api/device-action/OsUpdate/CleanDevice/Substeps/UninstallApp.js +2 -0
  259. package/lib/esm/api/device-action/OsUpdate/CleanDevice/Substeps/UninstallApp.js.map +7 -0
  260. package/lib/esm/api/device-action/OsUpdate/CleanDevice/Substeps/UninstallApp.test.js +2 -0
  261. package/lib/esm/api/device-action/OsUpdate/CleanDevice/Substeps/UninstallApp.test.js.map +7 -0
  262. package/lib/esm/api/device-action/OsUpdate/CleanDevice/types.js +2 -0
  263. package/lib/esm/api/device-action/OsUpdate/CleanDevice/types.js.map +7 -0
  264. package/lib/esm/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceAction.js +2 -0
  265. package/lib/esm/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceAction.js.map +7 -0
  266. package/lib/esm/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceAction.test.js +2 -0
  267. package/lib/esm/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceAction.test.js.map +7 -0
  268. package/lib/esm/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceActionErrors.js +2 -0
  269. package/lib/esm/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceActionErrors.js.map +7 -0
  270. package/lib/esm/api/device-action/OsUpdate/Resolve/Substeps/ResolveOsUpdatePath.js +2 -0
  271. package/lib/esm/api/device-action/OsUpdate/Resolve/Substeps/ResolveOsUpdatePath.js.map +7 -0
  272. package/lib/esm/api/device-action/OsUpdate/Resolve/Substeps/ResolveOsUpdatePath.test.js +2 -0
  273. package/lib/esm/api/device-action/OsUpdate/Resolve/Substeps/ResolveOsUpdatePath.test.js.map +7 -0
  274. package/lib/esm/api/device-action/OsUpdate/Resolve/types.js +2 -0
  275. package/lib/esm/api/device-action/OsUpdate/Resolve/types.js.map +7 -0
  276. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceAction.js +2 -0
  277. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceAction.js.map +7 -0
  278. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceAction.test.js +2 -0
  279. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceAction.test.js.map +7 -0
  280. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceActionErrors.js +2 -0
  281. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceActionErrors.js.map +7 -0
  282. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage.js +2 -0
  283. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage.js.map +7 -0
  284. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage.test.js +2 -0
  285. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage.test.js.map +7 -0
  286. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/InitRestoreAppStorage.js +2 -0
  287. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/InitRestoreAppStorage.js.map +7 -0
  288. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/InitRestoreAppStorage.test.js +2 -0
  289. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/InitRestoreAppStorage.test.js.map +7 -0
  290. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/RestoreAppStorage.js +2 -0
  291. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/RestoreAppStorage.js.map +7 -0
  292. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/RestoreAppStorage.test.js +2 -0
  293. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/RestoreAppStorage.test.js.map +7 -0
  294. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreAppsStorage/types.js +2 -0
  295. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreAppsStorage/types.js.map +7 -0
  296. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/RestoreBackupDeviceAction.js +2 -0
  297. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/RestoreBackupDeviceAction.js.map +7 -0
  298. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/RestoreBackupDeviceAction.test.js +2 -0
  299. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/RestoreBackupDeviceAction.test.js.map +7 -0
  300. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/RestoreBackupDeviceActionErrors.js +2 -0
  301. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/RestoreBackupDeviceActionErrors.js.map +7 -0
  302. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/GetIsOnboarded.js +2 -0
  303. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/GetIsOnboarded.js.map +7 -0
  304. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/GetIsOnboarded.test.js +2 -0
  305. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/GetIsOnboarded.test.js.map +7 -0
  306. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallLanguagePackage.js +2 -0
  307. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallLanguagePackage.js.map +7 -0
  308. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallLanguagePackage.test.js +2 -0
  309. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallLanguagePackage.test.js.map +7 -0
  310. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallOrUpdateApps.js +2 -0
  311. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallOrUpdateApps.js.map +7 -0
  312. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallOrUpdateApps.test.js +2 -0
  313. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallOrUpdateApps.test.js.map +7 -0
  314. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RequestMasterConsent.js +2 -0
  315. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RequestMasterConsent.js.map +7 -0
  316. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RequestMasterConsent.test.js +2 -0
  317. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RequestMasterConsent.test.js.map +7 -0
  318. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RestoreAppsStorage.js +2 -0
  319. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RestoreAppsStorage.js.map +7 -0
  320. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RestoreAppsStorage.test.js +2 -0
  321. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RestoreAppsStorage.test.js.map +7 -0
  322. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/UploadCustomLockScreen.js +2 -0
  323. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/UploadCustomLockScreen.js.map +7 -0
  324. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/UploadCustomLockScreen.test.js +2 -0
  325. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/UploadCustomLockScreen.test.js.map +7 -0
  326. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/types.js +2 -0
  327. package/lib/esm/api/device-action/OsUpdate/Restore/RestoreBackup/types.js.map +7 -0
  328. package/lib/esm/api/device-action/OsUpdate/Shared/OsUpdateDeviceActionErrors.js +2 -0
  329. package/lib/esm/api/device-action/OsUpdate/Shared/OsUpdateDeviceActionErrors.js.map +7 -0
  330. package/lib/esm/api/device-action/OsUpdate/Shared/OsUpdateUtils.js +2 -0
  331. package/lib/esm/api/device-action/OsUpdate/Shared/OsUpdateUtils.js.map +7 -0
  332. package/lib/esm/api/device-action/OsUpdate/Shared/Substeps/GetOsVersion.js +2 -0
  333. package/lib/esm/api/device-action/OsUpdate/Shared/Substeps/GetOsVersion.js.map +7 -0
  334. package/lib/esm/api/device-action/OsUpdate/Shared/Substeps/GetOsVersion.test.js +2 -0
  335. package/lib/esm/api/device-action/OsUpdate/Shared/Substeps/GetOsVersion.test.js.map +7 -0
  336. package/lib/esm/api/device-action/OsUpdate/Shared/Substeps/GoToDashboard.js +2 -0
  337. package/lib/esm/api/device-action/OsUpdate/Shared/Substeps/GoToDashboard.js.map +7 -0
  338. package/lib/esm/api/device-action/OsUpdate/Shared/Substeps/GoToDashboard.test.js +2 -0
  339. package/lib/esm/api/device-action/OsUpdate/Shared/Substeps/GoToDashboard.test.js.map +7 -0
  340. package/lib/esm/api/device-action/OsUpdate/Shared/Substeps/ListInstalledApps.js +2 -0
  341. package/lib/esm/api/device-action/OsUpdate/Shared/Substeps/ListInstalledApps.js.map +7 -0
  342. package/lib/esm/api/device-action/OsUpdate/Shared/Substeps/ListInstalledApps.test.js +2 -0
  343. package/lib/esm/api/device-action/OsUpdate/Shared/Substeps/ListInstalledApps.test.js.map +7 -0
  344. package/lib/esm/api/device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion.js +2 -0
  345. package/lib/esm/api/device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion.js.map +7 -0
  346. package/lib/esm/api/device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion.test.js +2 -0
  347. package/lib/esm/api/device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion.test.js.map +7 -0
  348. package/lib/esm/api/device-action/OsUpdate/Shared/types.js +1 -0
  349. package/lib/esm/api/device-action/OsUpdate/Shared/types.js.map +7 -0
  350. package/lib/esm/api/device-action/OsUpdate/Update/FlashMcu/FlashMcuDeviceAction.js +2 -0
  351. package/lib/esm/api/device-action/OsUpdate/Update/FlashMcu/FlashMcuDeviceAction.js.map +7 -0
  352. package/lib/esm/api/device-action/OsUpdate/Update/FlashMcu/FlashMcuDeviceAction.test.js +2 -0
  353. package/lib/esm/api/device-action/OsUpdate/Update/FlashMcu/FlashMcuDeviceAction.test.js.map +7 -0
  354. package/lib/esm/api/device-action/OsUpdate/Update/FlashMcu/FlashMcuDeviceActionErrors.js +2 -0
  355. package/lib/esm/api/device-action/OsUpdate/Update/FlashMcu/FlashMcuDeviceActionErrors.js.map +7 -0
  356. package/lib/esm/api/device-action/OsUpdate/Update/FlashMcu/Substeps/FlashMcu.js +2 -0
  357. package/lib/esm/api/device-action/OsUpdate/Update/FlashMcu/Substeps/FlashMcu.js.map +7 -0
  358. package/lib/esm/api/device-action/OsUpdate/Update/FlashMcu/Substeps/FlashMcu.test.js +2 -0
  359. package/lib/esm/api/device-action/OsUpdate/Update/FlashMcu/Substeps/FlashMcu.test.js.map +7 -0
  360. package/lib/esm/api/device-action/OsUpdate/Update/FlashMcu/Substeps/ResolveMcuVersion.js +2 -0
  361. package/lib/esm/api/device-action/OsUpdate/Update/FlashMcu/Substeps/ResolveMcuVersion.js.map +7 -0
  362. package/lib/esm/api/device-action/OsUpdate/Update/FlashMcu/Substeps/ResolveMcuVersion.test.js +2 -0
  363. package/lib/esm/api/device-action/OsUpdate/Update/FlashMcu/Substeps/ResolveMcuVersion.test.js.map +7 -0
  364. package/lib/esm/api/device-action/OsUpdate/Update/FlashMcu/types.js +2 -0
  365. package/lib/esm/api/device-action/OsUpdate/Update/FlashMcu/types.js.map +7 -0
  366. package/lib/esm/api/device-action/OsUpdate/Update/InstallOsUpdate/InstallOsUpdateDeviceAction.js +2 -0
  367. package/lib/esm/api/device-action/OsUpdate/Update/InstallOsUpdate/InstallOsUpdateDeviceAction.js.map +7 -0
  368. package/lib/esm/api/device-action/OsUpdate/Update/InstallOsUpdate/InstallOsUpdateDeviceAction.test.js +2 -0
  369. package/lib/esm/api/device-action/OsUpdate/Update/InstallOsUpdate/InstallOsUpdateDeviceAction.test.js.map +7 -0
  370. package/lib/esm/api/device-action/OsUpdate/Update/InstallOsUpdate/Substeps/InstallFirmware.js +2 -0
  371. package/lib/esm/api/device-action/OsUpdate/Update/InstallOsUpdate/Substeps/InstallFirmware.js.map +7 -0
  372. package/lib/esm/api/device-action/OsUpdate/Update/InstallOsUpdate/Substeps/InstallFirmware.test.js +2 -0
  373. package/lib/esm/api/device-action/OsUpdate/Update/InstallOsUpdate/Substeps/InstallFirmware.test.js.map +7 -0
  374. package/lib/esm/api/device-action/OsUpdate/Update/InstallOsUpdate/types.js +2 -0
  375. package/lib/esm/api/device-action/OsUpdate/Update/InstallOsUpdate/types.js.map +7 -0
  376. package/lib/esm/api/task/OsUpdate/Backup/BackupAppStorageTask.js +2 -0
  377. package/lib/esm/api/task/OsUpdate/Backup/BackupAppStorageTask.js.map +7 -0
  378. package/lib/esm/api/task/OsUpdate/Backup/BackupAppStorageTask.test.js +2 -0
  379. package/lib/esm/api/task/OsUpdate/Backup/BackupAppStorageTask.test.js.map +7 -0
  380. package/lib/esm/api/task/OsUpdate/Restore/RestoreAppStorageTask.js +2 -0
  381. package/lib/esm/api/task/OsUpdate/Restore/RestoreAppStorageTask.js.map +7 -0
  382. package/lib/esm/api/task/OsUpdate/Restore/RestoreAppStorageTask.test.js +2 -0
  383. package/lib/esm/api/task/OsUpdate/Restore/RestoreAppStorageTask.test.js.map +7 -0
  384. package/lib/esm/index.js +1 -1
  385. package/lib/esm/index.js.map +3 -3
  386. package/lib/esm/package.json +5 -2
  387. package/lib/types/api/command/OsUpdate/Backup/BackupAppStorageCommand.d.ts +18 -0
  388. package/lib/types/api/command/OsUpdate/Backup/BackupAppStorageCommand.d.ts.map +1 -0
  389. package/lib/types/api/command/OsUpdate/Backup/BackupAppStorageCommand.test.d.ts +2 -0
  390. package/lib/types/api/command/OsUpdate/Backup/BackupAppStorageCommand.test.d.ts.map +1 -0
  391. package/lib/types/api/command/OsUpdate/Backup/GetAppStorageInfoCommand.d.ts +26 -0
  392. package/lib/types/api/command/OsUpdate/Backup/GetAppStorageInfoCommand.d.ts.map +1 -0
  393. package/lib/types/api/command/OsUpdate/Backup/GetAppStorageInfoCommand.test.d.ts +2 -0
  394. package/lib/types/api/command/OsUpdate/Backup/GetAppStorageInfoCommand.test.d.ts.map +1 -0
  395. package/lib/types/api/command/OsUpdate/Restore/CommitRestoreAppStorageCommand.d.ts +14 -0
  396. package/lib/types/api/command/OsUpdate/Restore/CommitRestoreAppStorageCommand.d.ts.map +1 -0
  397. package/lib/types/api/command/OsUpdate/Restore/CommitRestoreAppStorageCommand.test.d.ts +2 -0
  398. package/lib/types/api/command/OsUpdate/Restore/CommitRestoreAppStorageCommand.test.d.ts.map +1 -0
  399. package/lib/types/api/command/OsUpdate/Restore/InitRestoreAppStorageCommand.d.ts +20 -0
  400. package/lib/types/api/command/OsUpdate/Restore/InitRestoreAppStorageCommand.d.ts.map +1 -0
  401. package/lib/types/api/command/OsUpdate/Restore/InitRestoreAppStorageCommand.test.d.ts +2 -0
  402. package/lib/types/api/command/OsUpdate/Restore/InitRestoreAppStorageCommand.test.d.ts.map +1 -0
  403. package/lib/types/api/command/OsUpdate/Restore/RequestMasterConsentCommand.d.ts +24 -0
  404. package/lib/types/api/command/OsUpdate/Restore/RequestMasterConsentCommand.d.ts.map +1 -0
  405. package/lib/types/api/command/OsUpdate/Restore/RequestMasterConsentCommand.test.d.ts +2 -0
  406. package/lib/types/api/command/OsUpdate/Restore/RequestMasterConsentCommand.test.d.ts.map +1 -0
  407. package/lib/types/api/command/OsUpdate/Restore/RestoreAppStorageCommand.d.ts +19 -0
  408. package/lib/types/api/command/OsUpdate/Restore/RestoreAppStorageCommand.d.ts.map +1 -0
  409. package/lib/types/api/command/OsUpdate/Restore/RestoreAppStorageCommand.test.d.ts +2 -0
  410. package/lib/types/api/command/OsUpdate/Restore/RestoreAppStorageCommand.test.d.ts.map +1 -0
  411. package/lib/types/api/device-action/OsUpdate/Backup/CreateBackupDeviceAction.d.ts +6 -0
  412. package/lib/types/api/device-action/OsUpdate/Backup/CreateBackupDeviceAction.d.ts.map +1 -0
  413. package/lib/types/api/device-action/OsUpdate/Backup/CreateBackupDeviceAction.test.d.ts +2 -0
  414. package/lib/types/api/device-action/OsUpdate/Backup/CreateBackupDeviceAction.test.d.ts.map +1 -0
  415. package/lib/types/api/device-action/OsUpdate/Backup/CreateBackupDeviceActionErrors.d.ts +18 -0
  416. package/lib/types/api/device-action/OsUpdate/Backup/CreateBackupDeviceActionErrors.d.ts.map +1 -0
  417. package/lib/types/api/device-action/OsUpdate/Backup/Substeps/BackupAppsStorage.d.ts +14 -0
  418. package/lib/types/api/device-action/OsUpdate/Backup/Substeps/BackupAppsStorage.d.ts.map +1 -0
  419. package/lib/types/api/device-action/OsUpdate/Backup/Substeps/BackupAppsStorage.test.d.ts +2 -0
  420. package/lib/types/api/device-action/OsUpdate/Backup/Substeps/BackupAppsStorage.test.d.ts.map +1 -0
  421. package/lib/types/api/device-action/OsUpdate/Backup/Substeps/DownloadCustomLockScreen.d.ts +6 -0
  422. package/lib/types/api/device-action/OsUpdate/Backup/Substeps/DownloadCustomLockScreen.d.ts.map +1 -0
  423. package/lib/types/api/device-action/OsUpdate/Backup/Substeps/DownloadCustomLockScreen.test.d.ts +2 -0
  424. package/lib/types/api/device-action/OsUpdate/Backup/Substeps/DownloadCustomLockScreen.test.d.ts.map +1 -0
  425. package/lib/types/api/device-action/OsUpdate/Backup/Substeps/GetIsOnboarded.d.ts +8 -0
  426. package/lib/types/api/device-action/OsUpdate/Backup/Substeps/GetIsOnboarded.d.ts.map +1 -0
  427. package/lib/types/api/device-action/OsUpdate/Backup/Substeps/GetIsOnboarded.test.d.ts +2 -0
  428. package/lib/types/api/device-action/OsUpdate/Backup/Substeps/GetIsOnboarded.test.d.ts.map +1 -0
  429. package/lib/types/api/device-action/OsUpdate/Backup/Substeps/GetLanguageId.d.ts +8 -0
  430. package/lib/types/api/device-action/OsUpdate/Backup/Substeps/GetLanguageId.d.ts.map +1 -0
  431. package/lib/types/api/device-action/OsUpdate/Backup/Substeps/GetLanguageId.test.d.ts +2 -0
  432. package/lib/types/api/device-action/OsUpdate/Backup/Substeps/GetLanguageId.test.d.ts.map +1 -0
  433. package/lib/types/api/device-action/OsUpdate/Backup/types.d.ts +43 -0
  434. package/lib/types/api/device-action/OsUpdate/Backup/types.d.ts.map +1 -0
  435. package/lib/types/api/device-action/OsUpdate/CleanDevice/CleanDeviceDeviceAction.d.ts +6 -0
  436. package/lib/types/api/device-action/OsUpdate/CleanDevice/CleanDeviceDeviceAction.d.ts.map +1 -0
  437. package/lib/types/api/device-action/OsUpdate/CleanDevice/CleanDeviceDeviceAction.test.d.ts +2 -0
  438. package/lib/types/api/device-action/OsUpdate/CleanDevice/CleanDeviceDeviceAction.test.d.ts.map +1 -0
  439. package/lib/types/api/device-action/OsUpdate/CleanDevice/Substeps/DeleteLanguagePack.d.ts +7 -0
  440. package/lib/types/api/device-action/OsUpdate/CleanDevice/Substeps/DeleteLanguagePack.d.ts.map +1 -0
  441. package/lib/types/api/device-action/OsUpdate/CleanDevice/Substeps/DeleteLanguagePack.test.d.ts +2 -0
  442. package/lib/types/api/device-action/OsUpdate/CleanDevice/Substeps/DeleteLanguagePack.test.d.ts.map +1 -0
  443. package/lib/types/api/device-action/OsUpdate/CleanDevice/Substeps/GetCustomLockScreenInfo.d.ts +6 -0
  444. package/lib/types/api/device-action/OsUpdate/CleanDevice/Substeps/GetCustomLockScreenInfo.d.ts.map +1 -0
  445. package/lib/types/api/device-action/OsUpdate/CleanDevice/Substeps/GetCustomLockScreenInfo.test.d.ts +2 -0
  446. package/lib/types/api/device-action/OsUpdate/CleanDevice/Substeps/GetCustomLockScreenInfo.test.d.ts.map +1 -0
  447. package/lib/types/api/device-action/OsUpdate/CleanDevice/Substeps/RemoveCustomLockScreen.d.ts +6 -0
  448. package/lib/types/api/device-action/OsUpdate/CleanDevice/Substeps/RemoveCustomLockScreen.d.ts.map +1 -0
  449. package/lib/types/api/device-action/OsUpdate/CleanDevice/Substeps/RemoveCustomLockScreen.test.d.ts +2 -0
  450. package/lib/types/api/device-action/OsUpdate/CleanDevice/Substeps/RemoveCustomLockScreen.test.d.ts.map +1 -0
  451. package/lib/types/api/device-action/OsUpdate/CleanDevice/Substeps/UninstallApp.d.ts +5 -0
  452. package/lib/types/api/device-action/OsUpdate/CleanDevice/Substeps/UninstallApp.d.ts.map +1 -0
  453. package/lib/types/api/device-action/OsUpdate/CleanDevice/Substeps/UninstallApp.test.d.ts +2 -0
  454. package/lib/types/api/device-action/OsUpdate/CleanDevice/Substeps/UninstallApp.test.d.ts.map +1 -0
  455. package/lib/types/api/device-action/OsUpdate/CleanDevice/types.d.ts +33 -0
  456. package/lib/types/api/device-action/OsUpdate/CleanDevice/types.d.ts.map +1 -0
  457. package/lib/types/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceAction.d.ts +6 -0
  458. package/lib/types/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceAction.d.ts.map +1 -0
  459. package/lib/types/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceAction.test.d.ts +2 -0
  460. package/lib/types/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceAction.test.d.ts.map +1 -0
  461. package/lib/types/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceActionErrors.d.ts +9 -0
  462. package/lib/types/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceActionErrors.d.ts.map +1 -0
  463. package/lib/types/api/device-action/OsUpdate/Resolve/Substeps/ResolveOsUpdatePath.d.ts +14 -0
  464. package/lib/types/api/device-action/OsUpdate/Resolve/Substeps/ResolveOsUpdatePath.d.ts.map +1 -0
  465. package/lib/types/api/device-action/OsUpdate/Resolve/Substeps/ResolveOsUpdatePath.test.d.ts +2 -0
  466. package/lib/types/api/device-action/OsUpdate/Resolve/Substeps/ResolveOsUpdatePath.test.d.ts.map +1 -0
  467. package/lib/types/api/device-action/OsUpdate/Resolve/types.d.ts +29 -0
  468. package/lib/types/api/device-action/OsUpdate/Resolve/types.d.ts.map +1 -0
  469. package/lib/types/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceAction.d.ts +6 -0
  470. package/lib/types/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceAction.d.ts.map +1 -0
  471. package/lib/types/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceAction.test.d.ts +2 -0
  472. package/lib/types/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceAction.test.d.ts.map +1 -0
  473. package/lib/types/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceActionErrors.d.ts +18 -0
  474. package/lib/types/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceActionErrors.d.ts.map +1 -0
  475. package/lib/types/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage.d.ts +8 -0
  476. package/lib/types/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage.d.ts.map +1 -0
  477. package/lib/types/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage.test.d.ts +2 -0
  478. package/lib/types/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage.test.d.ts.map +1 -0
  479. package/lib/types/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/InitRestoreAppStorage.d.ts +15 -0
  480. package/lib/types/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/InitRestoreAppStorage.d.ts.map +1 -0
  481. package/lib/types/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/InitRestoreAppStorage.test.d.ts +2 -0
  482. package/lib/types/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/InitRestoreAppStorage.test.d.ts.map +1 -0
  483. package/lib/types/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/RestoreAppStorage.d.ts +13 -0
  484. package/lib/types/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/RestoreAppStorage.d.ts.map +1 -0
  485. package/lib/types/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/RestoreAppStorage.test.d.ts +2 -0
  486. package/lib/types/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/RestoreAppStorage.test.d.ts.map +1 -0
  487. package/lib/types/api/device-action/OsUpdate/Restore/RestoreAppsStorage/types.d.ts +48 -0
  488. package/lib/types/api/device-action/OsUpdate/Restore/RestoreAppsStorage/types.d.ts.map +1 -0
  489. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/RestoreBackupDeviceAction.d.ts +6 -0
  490. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/RestoreBackupDeviceAction.d.ts.map +1 -0
  491. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/RestoreBackupDeviceAction.test.d.ts +2 -0
  492. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/RestoreBackupDeviceAction.test.d.ts.map +1 -0
  493. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/RestoreBackupDeviceActionErrors.d.ts +13 -0
  494. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/RestoreBackupDeviceActionErrors.d.ts.map +1 -0
  495. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/GetIsOnboarded.d.ts +11 -0
  496. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/GetIsOnboarded.d.ts.map +1 -0
  497. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/GetIsOnboarded.test.d.ts +2 -0
  498. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/GetIsOnboarded.test.d.ts.map +1 -0
  499. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallLanguagePackage.d.ts +5 -0
  500. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallLanguagePackage.d.ts.map +1 -0
  501. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallLanguagePackage.test.d.ts +2 -0
  502. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallLanguagePackage.test.d.ts.map +1 -0
  503. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallOrUpdateApps.d.ts +5 -0
  504. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallOrUpdateApps.d.ts.map +1 -0
  505. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallOrUpdateApps.test.d.ts +2 -0
  506. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/InstallOrUpdateApps.test.d.ts.map +1 -0
  507. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RequestMasterConsent.d.ts +17 -0
  508. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RequestMasterConsent.d.ts.map +1 -0
  509. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RequestMasterConsent.test.d.ts +2 -0
  510. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RequestMasterConsent.test.d.ts.map +1 -0
  511. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RestoreAppsStorage.d.ts +6 -0
  512. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RestoreAppsStorage.d.ts.map +1 -0
  513. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RestoreAppsStorage.test.d.ts +2 -0
  514. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/RestoreAppsStorage.test.d.ts.map +1 -0
  515. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/UploadCustomLockScreen.d.ts +6 -0
  516. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/UploadCustomLockScreen.d.ts.map +1 -0
  517. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/UploadCustomLockScreen.test.d.ts +2 -0
  518. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/Substeps/UploadCustomLockScreen.test.d.ts.map +1 -0
  519. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/types.d.ts +55 -0
  520. package/lib/types/api/device-action/OsUpdate/Restore/RestoreBackup/types.d.ts.map +1 -0
  521. package/lib/types/api/device-action/OsUpdate/Shared/OsUpdateDeviceActionErrors.d.ts +7 -0
  522. package/lib/types/api/device-action/OsUpdate/Shared/OsUpdateDeviceActionErrors.d.ts.map +1 -0
  523. package/lib/types/api/device-action/OsUpdate/Shared/OsUpdateUtils.d.ts +3 -0
  524. package/lib/types/api/device-action/OsUpdate/Shared/OsUpdateUtils.d.ts.map +1 -0
  525. package/lib/types/api/device-action/OsUpdate/Shared/Substeps/GetOsVersion.d.ts +8 -0
  526. package/lib/types/api/device-action/OsUpdate/Shared/Substeps/GetOsVersion.d.ts.map +1 -0
  527. package/lib/types/api/device-action/OsUpdate/Shared/Substeps/GetOsVersion.test.d.ts +2 -0
  528. package/lib/types/api/device-action/OsUpdate/Shared/Substeps/GetOsVersion.test.d.ts.map +1 -0
  529. package/lib/types/api/device-action/OsUpdate/Shared/Substeps/GoToDashboard.d.ts +5 -0
  530. package/lib/types/api/device-action/OsUpdate/Shared/Substeps/GoToDashboard.d.ts.map +1 -0
  531. package/lib/types/api/device-action/OsUpdate/Shared/Substeps/GoToDashboard.test.d.ts +2 -0
  532. package/lib/types/api/device-action/OsUpdate/Shared/Substeps/GoToDashboard.test.d.ts.map +1 -0
  533. package/lib/types/api/device-action/OsUpdate/Shared/Substeps/ListInstalledApps.d.ts +5 -0
  534. package/lib/types/api/device-action/OsUpdate/Shared/Substeps/ListInstalledApps.d.ts.map +1 -0
  535. package/lib/types/api/device-action/OsUpdate/Shared/Substeps/ListInstalledApps.test.d.ts +2 -0
  536. package/lib/types/api/device-action/OsUpdate/Shared/Substeps/ListInstalledApps.test.d.ts.map +1 -0
  537. package/lib/types/api/device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion.d.ts +5 -0
  538. package/lib/types/api/device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion.d.ts.map +1 -0
  539. package/lib/types/api/device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion.test.d.ts +2 -0
  540. package/lib/types/api/device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion.test.d.ts.map +1 -0
  541. package/lib/types/api/device-action/OsUpdate/Shared/types.d.ts +36 -0
  542. package/lib/types/api/device-action/OsUpdate/Shared/types.d.ts.map +1 -0
  543. package/lib/types/api/device-action/OsUpdate/Update/FlashMcu/FlashMcuDeviceAction.d.ts +6 -0
  544. package/lib/types/api/device-action/OsUpdate/Update/FlashMcu/FlashMcuDeviceAction.d.ts.map +1 -0
  545. package/lib/types/api/device-action/OsUpdate/Update/FlashMcu/FlashMcuDeviceAction.test.d.ts +2 -0
  546. package/lib/types/api/device-action/OsUpdate/Update/FlashMcu/FlashMcuDeviceAction.test.d.ts.map +1 -0
  547. package/lib/types/api/device-action/OsUpdate/Update/FlashMcu/FlashMcuDeviceActionErrors.d.ts +14 -0
  548. package/lib/types/api/device-action/OsUpdate/Update/FlashMcu/FlashMcuDeviceActionErrors.d.ts.map +1 -0
  549. package/lib/types/api/device-action/OsUpdate/Update/FlashMcu/Substeps/FlashMcu.d.ts +12 -0
  550. package/lib/types/api/device-action/OsUpdate/Update/FlashMcu/Substeps/FlashMcu.d.ts.map +1 -0
  551. package/lib/types/api/device-action/OsUpdate/Update/FlashMcu/Substeps/FlashMcu.test.d.ts +2 -0
  552. package/lib/types/api/device-action/OsUpdate/Update/FlashMcu/Substeps/FlashMcu.test.d.ts.map +1 -0
  553. package/lib/types/api/device-action/OsUpdate/Update/FlashMcu/Substeps/ResolveMcuVersion.d.ts +15 -0
  554. package/lib/types/api/device-action/OsUpdate/Update/FlashMcu/Substeps/ResolveMcuVersion.d.ts.map +1 -0
  555. package/lib/types/api/device-action/OsUpdate/Update/FlashMcu/Substeps/ResolveMcuVersion.test.d.ts +2 -0
  556. package/lib/types/api/device-action/OsUpdate/Update/FlashMcu/Substeps/ResolveMcuVersion.test.d.ts.map +1 -0
  557. package/lib/types/api/device-action/OsUpdate/Update/FlashMcu/types.d.ts +28 -0
  558. package/lib/types/api/device-action/OsUpdate/Update/FlashMcu/types.d.ts.map +1 -0
  559. package/lib/types/api/device-action/OsUpdate/Update/InstallOsUpdate/InstallOsUpdateDeviceAction.d.ts +6 -0
  560. package/lib/types/api/device-action/OsUpdate/Update/InstallOsUpdate/InstallOsUpdateDeviceAction.d.ts.map +1 -0
  561. package/lib/types/api/device-action/OsUpdate/Update/InstallOsUpdate/InstallOsUpdateDeviceAction.test.d.ts +2 -0
  562. package/lib/types/api/device-action/OsUpdate/Update/InstallOsUpdate/InstallOsUpdateDeviceAction.test.d.ts.map +1 -0
  563. package/lib/types/api/device-action/OsUpdate/Update/InstallOsUpdate/Substeps/InstallFirmware.d.ts +17 -0
  564. package/lib/types/api/device-action/OsUpdate/Update/InstallOsUpdate/Substeps/InstallFirmware.d.ts.map +1 -0
  565. package/lib/types/api/device-action/OsUpdate/Update/InstallOsUpdate/Substeps/InstallFirmware.test.d.ts +2 -0
  566. package/lib/types/api/device-action/OsUpdate/Update/InstallOsUpdate/Substeps/InstallFirmware.test.d.ts.map +1 -0
  567. package/lib/types/api/device-action/OsUpdate/Update/InstallOsUpdate/types.d.ts +29 -0
  568. package/lib/types/api/device-action/OsUpdate/Update/InstallOsUpdate/types.d.ts.map +1 -0
  569. package/lib/types/api/task/OsUpdate/Backup/BackupAppStorageTask.d.ts +19 -0
  570. package/lib/types/api/task/OsUpdate/Backup/BackupAppStorageTask.d.ts.map +1 -0
  571. package/lib/types/api/task/OsUpdate/Backup/BackupAppStorageTask.test.d.ts +2 -0
  572. package/lib/types/api/task/OsUpdate/Backup/BackupAppStorageTask.test.d.ts.map +1 -0
  573. package/lib/types/api/task/OsUpdate/Restore/RestoreAppStorageTask.d.ts +14 -0
  574. package/lib/types/api/task/OsUpdate/Restore/RestoreAppStorageTask.d.ts.map +1 -0
  575. package/lib/types/api/task/OsUpdate/Restore/RestoreAppStorageTask.test.d.ts +2 -0
  576. package/lib/types/api/task/OsUpdate/Restore/RestoreAppStorageTask.test.d.ts.map +1 -0
  577. package/lib/types/index.d.ts +23 -0
  578. package/lib/types/index.d.ts.map +1 -1
  579. package/lib/types/tsconfig.prod.tsbuildinfo +1 -1
  580. package/package.json +8 -5
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../../src/api/device-action/OsUpdate/CleanDevice/Substeps/UninstallApp.test.ts"],
4
+ "sourcesContent": ["import { UninstallAppDeviceAction } from \"@ledgerhq/device-management-kit\";\n\nimport { makeDeviceActionInternalApiMock } from \"@api/device-action/__test-utils__/makeInternalApi\";\nimport { uninstallApp } from \"@api/device-action/OsUpdate/CleanDevice/Substeps/UninstallApp\";\n\nvi.mock(\"@ledgerhq/device-management-kit\", async (importOriginal) => {\n const original =\n await importOriginal<typeof import(\"@ledgerhq/device-management-kit\")>();\n return {\n ...original,\n UninstallAppDeviceAction: vi.fn(),\n };\n});\n\ndescribe(\"UninstallApp\", () => {\n const apiMock = makeDeviceActionInternalApiMock();\n const MockDA = vi.mocked(UninstallAppDeviceAction);\n\n beforeEach(() => {\n vi.resetAllMocks();\n });\n describe(\"Success\", () => {\n it(\"Should uninstall the given app on the device\", () => {\n const fakeStateMachine = Symbol(\"stateMachine\");\n const makeStateMachineMock = vi.fn().mockReturnValue(fakeStateMachine);\n MockDA.mockImplementation(\n () => ({ makeStateMachine: makeStateMachineMock }) as never,\n );\n\n const result = uninstallApp(apiMock, 5000);\n\n expect(MockDA).toHaveBeenCalledWith({\n input: { unlockTimeout: 5000, appName: \"\" },\n });\n expect(makeStateMachineMock).toHaveBeenCalledWith(apiMock);\n expect(result).toBe(fakeStateMachine);\n });\n });\n describe(\"Error\", () => {\n it(\"Should return the error from the device action\", () => {\n const error = new Error(\"Device action failed\");\n const makeStateMachineMock = vi.fn().mockImplementation(() => {\n throw error;\n });\n MockDA.mockImplementation(\n () => ({ makeStateMachine: makeStateMachineMock }) as never,\n );\n\n expect(() => uninstallApp(apiMock, 5000)).toThrow(error);\n });\n });\n});\n"],
5
+ "mappings": "aAAA,IAAAA,EAAyC,2CAEzCC,EAAgD,6DAChDC,EAA6B,yEAE7B,GAAG,KAAK,kCAAmC,MAAOC,IAGzC,CACL,GAFA,MAAMA,EAAiE,EAGvE,yBAA0B,GAAG,GAAG,CAClC,EACD,EAED,SAAS,eAAgB,IAAM,CAC7B,MAAMC,KAAU,mCAAgC,EAC1CC,EAAS,GAAG,OAAO,0BAAwB,EAEjD,WAAW,IAAM,CACf,GAAG,cAAc,CACnB,CAAC,EACD,SAAS,UAAW,IAAM,CACxB,GAAG,+CAAgD,IAAM,CACvD,MAAMC,EAAmB,OAAO,cAAc,EACxCC,EAAuB,GAAG,GAAG,EAAE,gBAAgBD,CAAgB,EACrED,EAAO,mBACL,KAAO,CAAE,iBAAkBE,CAAqB,EAClD,EAEA,MAAMC,KAAS,gBAAaJ,EAAS,GAAI,EAEzC,OAAOC,CAAM,EAAE,qBAAqB,CAClC,MAAO,CAAE,cAAe,IAAM,QAAS,EAAG,CAC5C,CAAC,EACD,OAAOE,CAAoB,EAAE,qBAAqBH,CAAO,EACzD,OAAOI,CAAM,EAAE,KAAKF,CAAgB,CACtC,CAAC,CACH,CAAC,EACD,SAAS,QAAS,IAAM,CACtB,GAAG,iDAAkD,IAAM,CACzD,MAAMG,EAAQ,IAAI,MAAM,sBAAsB,EACxCF,EAAuB,GAAG,GAAG,EAAE,mBAAmB,IAAM,CAC5D,MAAME,CACR,CAAC,EACDJ,EAAO,mBACL,KAAO,CAAE,iBAAkBE,CAAqB,EAClD,EAEA,OAAO,OAAM,gBAAaH,EAAS,GAAI,CAAC,EAAE,QAAQK,CAAK,CACzD,CAAC,CACH,CAAC,CACH,CAAC",
6
+ "names": ["import_device_management_kit", "import_makeInternalApi", "import_UninstallApp", "importOriginal", "apiMock", "MockDA", "fakeStateMachine", "makeStateMachineMock", "result", "error"]
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";var a=Object.defineProperty;var A=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var s=Object.prototype.hasOwnProperty;var u=(r,e)=>{for(var n in e)a(r,n,{get:e[n],enumerable:!0})},c=(r,e,n,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of l(e))!s.call(r,o)&&o!==n&&a(r,o,{get:()=>e[o],enumerable:!(i=A(e,o))||i.enumerable});return r};var D=r=>c(a({},"__esModule",{value:!0}),r);var d={};u(d,{CleanDeviceSteps:()=>p});module.exports=D(d);var p=(t=>(t.Idle="idle",t.WaitForAppAndVersion="waitForAppAndVersion",t.GoToDashboard="goToDashboard",t.ListInstalledApps="listInstalledApps",t.UninstallApps="uninstallApps",t.DeleteLanguagePack="deleteLanguagePack",t.GetCustomLockScreenInfo="getCustomLockScreenInfo",t.RemoveCustomLockScreen="removeCustomLockScreen",t))(p||{});0&&(module.exports={CleanDeviceSteps});
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../src/api/device-action/OsUpdate/CleanDevice/types.ts"],
4
+ "sourcesContent": ["import {\n type DeleteLanguagePackDAError,\n type DeviceActionState,\n type GoToDashboardDAError,\n type GoToDashboardDAIntermediateValue,\n type GoToDashboardDARequiredInteraction,\n type InstalledApp,\n type ListInstalledAppsDAError,\n type ListInstalledAppsDAIntermediateValue,\n type ListInstalledAppsDARequiredInteraction,\n type UninstallAppDAError,\n type UninstallAppDAIntermediateValue,\n type UninstallAppDARequiredInteraction,\n type UserInteractionRequired,\n type WaitForAppAndVersionDAError,\n type WaitForAppAndVersionDAIntermediateValue,\n type WaitForAppAndVersionDARequiredInteraction,\n} from \"@ledgerhq/device-management-kit\";\n\nimport {\n type GetCustomLockScreenInfoDAError,\n type GetCustomLockScreenInfoDAIntermediateValue,\n type GetCustomLockScreenInfoDARequiredInteraction,\n} from \"@api/device-action/GetCustomLockScreenInfo/types\";\nimport {\n type RemoveCustomLockScreenDAError,\n type RemoveCustomLockScreenDAIntermediateValue,\n type RemoveCustomLockScreenDARequiredInteraction,\n} from \"@api/device-action/RemoveCustomLockScreen/types\";\n\nexport type CleanDeviceDAInput = {\n unlockTimeout: number;\n};\n\nexport type CleanDeviceDAOutput = void;\n\nexport type CleanDeviceDAError =\n | WaitForAppAndVersionDAError\n | GoToDashboardDAError\n | ListInstalledAppsDAError\n | UninstallAppDAError\n | DeleteLanguagePackDAError\n | GetCustomLockScreenInfoDAError\n | RemoveCustomLockScreenDAError;\n\nexport type CleanDeviceDAIntermediateValue = (\n | WaitForAppAndVersionDAIntermediateValue\n | GoToDashboardDAIntermediateValue\n | ListInstalledAppsDAIntermediateValue\n | UninstallAppDAIntermediateValue\n | GetCustomLockScreenInfoDAIntermediateValue\n | RemoveCustomLockScreenDAIntermediateValue\n | { readonly requiredUserInteraction: UserInteractionRequired.None }\n) & {\n step: CleanDeviceSteps;\n};\n\nexport type CleanDeviceDARequiredInteraction =\n | WaitForAppAndVersionDARequiredInteraction\n | GoToDashboardDARequiredInteraction\n | ListInstalledAppsDARequiredInteraction\n | UninstallAppDARequiredInteraction\n | GetCustomLockScreenInfoDARequiredInteraction\n | RemoveCustomLockScreenDARequiredInteraction\n | UserInteractionRequired.None;\n\nexport type CleanDeviceDAInternalState = {\n error: CleanDeviceDAError | null;\n currentApp: string | null;\n installedApps: InstalledApp[];\n currentAppIndex: number;\n hasCustomLockScreen: boolean;\n};\n\nexport type CleanDeviceDAState = DeviceActionState<\n CleanDeviceDAOutput,\n CleanDeviceDAError,\n CleanDeviceDAIntermediateValue\n>;\n\nexport enum CleanDeviceSteps {\n Idle = \"idle\",\n WaitForAppAndVersion = \"waitForAppAndVersion\",\n GoToDashboard = \"goToDashboard\",\n ListInstalledApps = \"listInstalledApps\",\n UninstallApps = \"uninstallApps\",\n DeleteLanguagePack = \"deleteLanguagePack\",\n GetCustomLockScreenInfo = \"getCustomLockScreenInfo\",\n RemoveCustomLockScreen = \"removeCustomLockScreen\",\n}\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,sBAAAE,IAAA,eAAAC,EAAAH,GAgFO,IAAKE,OACVA,EAAA,KAAO,OACPA,EAAA,qBAAuB,uBACvBA,EAAA,cAAgB,gBAChBA,EAAA,kBAAoB,oBACpBA,EAAA,cAAgB,gBAChBA,EAAA,mBAAqB,qBACrBA,EAAA,wBAA0B,0BAC1BA,EAAA,uBAAyB,yBARfA,OAAA",
6
+ "names": ["types_exports", "__export", "CleanDeviceSteps", "__toCommonJS"]
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";var l=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var O=Object.getOwnPropertyNames;var m=Object.prototype.hasOwnProperty;var D=(n,r)=>{for(var e in r)l(n,e,{get:r[e],enumerable:!0})},A=(n,r,e,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let i of O(r))!m.call(n,i)&&i!==e&&l(n,i,{get:()=>r[i],enumerable:!(a=v(r,i))||a.enumerable});return n};var g=n=>A(l({},"__esModule",{value:!0}),n);var S={};D(S,{ResolveOsUpdatePathDeviceAction:()=>R});module.exports=g(S);var s=require("@ledgerhq/device-management-kit"),p=require("purify-ts"),t=require("xstate"),u=require("../../../device-action/OsUpdate/Shared/Substeps/GetOsVersion"),d=require("../../../device-action/OsUpdate/Shared/Substeps/GoToDashboard"),c=require("../../../device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion"),h=require("./Substeps/ResolveOsUpdatePath"),o=require("./types");class R extends s.XStateDeviceAction{makeStateMachine(r){return(0,t.setup)({types:{input:{},output:{},context:{}},actors:{waitForAppAndVersion:(0,c.waitForAppAndVersion)(r,this.input.unlockTimeout),goToDashboard:(0,d.goToDashboard)(r,this.input.unlockTimeout),getOsVersion:(0,t.fromPromise)((0,u.getOsVersion)(r)),resolveOsUpdatePath:(0,t.fromPromise)((0,h.resolveOsUpdatePath)(r))},guards:{isDeviceOnDashboard:({context:e})=>(0,s.isDashboardName)(e._internalState.currentApp),hasError:({context:e})=>e._internalState.error!==null},actions:{assignErrorFromEvent:(0,t.assign)({_internalState:e=>({...e.context._internalState,error:e.event.error})})}}).createMachine({id:"ResolveOsUpdatePathDeviceAction",initial:"WaitForAppAndVersion",context:({input:e})=>({input:{unlockTimeout:e.unlockTimeout},intermediateValue:{requiredUserInteraction:s.UserInteractionRequired.None,step:o.ResolveOsUpdatePathSteps.Idle},_internalState:{error:null,currentApp:null,getOsVersionResponse:null,osUpdates:[]}}),states:{WaitForAppAndVersion:{entry:(0,t.assign)({intermediateValue:e=>({...e.context.intermediateValue,step:o.ResolveOsUpdatePathSteps.WaitForAppAndVersion})}),invoke:{src:"waitForAppAndVersion",input:({context:e})=>({unlockTimeout:e.input.unlockTimeout}),onSnapshot:{actions:(0,t.assign)({intermediateValue:e=>({...e.event.snapshot.context.intermediateValue,step:e.context.intermediateValue.step})})},onDone:{actions:(0,t.assign)({_internalState:e=>e.event.output.caseOf({Left:a=>({...e.context._internalState,error:a}),Right:a=>({...e.context._internalState,currentApp:a.name})})}),target:"CheckIfDeviceIsOnDashboard"},onError:{actions:"assignErrorFromEvent",target:"Error"}}},CheckIfDeviceIsOnDashboard:{always:[{guard:"hasError",target:"Error"},{guard:"isDeviceOnDashboard",target:"GetOsVersion"},{target:"GoToDashboard"}]},GoToDashboard:{entry:(0,t.assign)({intermediateValue:e=>({...e.context.intermediateValue,step:o.ResolveOsUpdatePathSteps.GoToDashboard})}),invoke:{src:"goToDashboard",input:({context:e})=>({unlockTimeout:e.input.unlockTimeout}),onSnapshot:{actions:(0,t.assign)({intermediateValue:e=>({...e.event.snapshot.context.intermediateValue,step:e.context.intermediateValue.step})})},onDone:{actions:(0,t.assign)({_internalState:e=>e.event.output.caseOf({Left:a=>({...e.context._internalState,error:a}),Right:()=>e.context._internalState})}),target:"CheckGoToDashboard"},onError:{actions:"assignErrorFromEvent",target:"Error"}}},CheckGoToDashboard:{always:[{guard:"hasError",target:"Error"},{target:"WaitForAppAndVersion"}]},GetOsVersion:{entry:(0,t.assign)({intermediateValue:e=>({...e.context.intermediateValue,step:o.ResolveOsUpdatePathSteps.GetOsVersion})}),invoke:{src:"getOsVersion",onDone:{actions:(0,t.assign)({_internalState:e=>e.event.output.caseOf({Left:a=>({...e.context._internalState,error:a}),Right:a=>({...e.context._internalState,getOsVersionResponse:a})})}),target:"CheckGetOsVersion"},onError:{actions:"assignErrorFromEvent",target:"Error"}}},CheckGetOsVersion:{always:[{guard:"hasError",target:"Error"},{target:"ResolveOsUpdatePath"}]},ResolveOsUpdatePath:{entry:(0,t.assign)({intermediateValue:e=>({...e.context.intermediateValue,step:o.ResolveOsUpdatePathSteps.ResolveOsUpdatePath})}),invoke:{src:"resolveOsUpdatePath",input:({context:e})=>({getOsVersionResponse:e._internalState.getOsVersionResponse}),onDone:{actions:(0,t.assign)({_internalState:e=>e.event.output.caseOf({Left:a=>({...e.context._internalState,error:a}),Right:a=>({...e.context._internalState,osUpdates:a})})}),target:"CheckResolveOsUpdatePath"},onError:{actions:"assignErrorFromEvent",target:"Error"}}},CheckResolveOsUpdatePath:{always:[{guard:"hasError",target:"Error"},{target:"Success"}]},Success:{type:"final"},Error:{type:"final"}},output:({context:e})=>e._internalState.error!==null?(0,p.Left)(e._internalState.error):(0,p.Right)(e._internalState.osUpdates)})}}0&&(module.exports={ResolveOsUpdatePathDeviceAction});
2
+ //# sourceMappingURL=ResolveOsUpdatePathDeviceAction.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../src/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceAction.ts"],
4
+ "sourcesContent": ["import {\n type DeviceActionStateMachine,\n type InternalApi,\n isDashboardName,\n type StateMachineTypes,\n UserInteractionRequired,\n XStateDeviceAction,\n} from \"@ledgerhq/device-management-kit\";\nimport { Left, Right } from \"purify-ts\";\nimport { assign, fromPromise, setup } from \"xstate\";\n\nimport { getOsVersion } from \"@api/device-action/OsUpdate/Shared/Substeps/GetOsVersion\";\nimport { goToDashboard } from \"@api/device-action/OsUpdate/Shared/Substeps/GoToDashboard\";\nimport { waitForAppAndVersion } from \"@api/device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion\";\n\nimport { resolveOsUpdatePath } from \"./Substeps/ResolveOsUpdatePath\";\nimport {\n type ResolveOsUpdatePathDAError,\n type ResolveOsUpdatePathDAInput,\n type ResolveOsUpdatePathDAIntermediateValue,\n type ResolveOsUpdatePathDAInternalState,\n type ResolveOsUpdatePathDAOutput,\n ResolveOsUpdatePathSteps,\n} from \"./types\";\n\nexport class ResolveOsUpdatePathDeviceAction extends XStateDeviceAction<\n ResolveOsUpdatePathDAOutput,\n ResolveOsUpdatePathDAInput,\n ResolveOsUpdatePathDAError,\n ResolveOsUpdatePathDAIntermediateValue,\n ResolveOsUpdatePathDAInternalState\n> {\n protected override makeStateMachine(\n internalApi: InternalApi,\n ): DeviceActionStateMachine<\n ResolveOsUpdatePathDAOutput,\n ResolveOsUpdatePathDAInput,\n ResolveOsUpdatePathDAError,\n ResolveOsUpdatePathDAIntermediateValue,\n ResolveOsUpdatePathDAInternalState\n > {\n type types = StateMachineTypes<\n ResolveOsUpdatePathDAOutput,\n ResolveOsUpdatePathDAInput,\n ResolveOsUpdatePathDAError,\n ResolveOsUpdatePathDAIntermediateValue,\n ResolveOsUpdatePathDAInternalState\n >;\n\n return setup({\n types: {\n input: {} as types[\"input\"],\n output: {} as types[\"output\"],\n context: {} as types[\"context\"],\n } as types,\n actors: {\n waitForAppAndVersion: waitForAppAndVersion(\n internalApi,\n this.input.unlockTimeout,\n ),\n goToDashboard: goToDashboard(internalApi, this.input.unlockTimeout),\n getOsVersion: fromPromise(getOsVersion(internalApi)),\n resolveOsUpdatePath: fromPromise(resolveOsUpdatePath(internalApi)),\n },\n guards: {\n isDeviceOnDashboard: ({ context }) =>\n isDashboardName(context._internalState.currentApp),\n hasError: ({ context }) => context._internalState.error !== null,\n },\n actions: {\n assignErrorFromEvent: assign({\n _internalState: (_) => ({\n ..._.context._internalState,\n error: _.event[\"error\"], // NOTE: should never happen\n }),\n }),\n },\n }).createMachine({\n id: \"ResolveOsUpdatePathDeviceAction\",\n initial: \"WaitForAppAndVersion\",\n context: ({ input }) => ({\n input: {\n unlockTimeout: input.unlockTimeout,\n },\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n step: ResolveOsUpdatePathSteps.Idle,\n },\n _internalState: {\n error: null,\n currentApp: null,\n getOsVersionResponse: null,\n osUpdates: [],\n },\n }),\n states: {\n WaitForAppAndVersion: {\n entry: assign({\n intermediateValue: (_) => ({\n ..._.context.intermediateValue,\n step: ResolveOsUpdatePathSteps.WaitForAppAndVersion,\n }),\n }),\n invoke: {\n src: \"waitForAppAndVersion\",\n input: ({ context }) => ({\n unlockTimeout: context.input.unlockTimeout,\n }),\n onSnapshot: {\n actions: assign({\n intermediateValue: (_) => ({\n ..._.event.snapshot.context.intermediateValue,\n step: _.context.intermediateValue.step,\n }),\n }),\n },\n onDone: {\n actions: assign({\n _internalState: (_) => {\n return _.event.output.caseOf<ResolveOsUpdatePathDAInternalState>(\n {\n Left: (error) => ({\n ..._.context._internalState,\n error,\n }),\n Right: (output) => ({\n ..._.context._internalState,\n currentApp: output.name,\n }),\n },\n );\n },\n }),\n target: \"CheckIfDeviceIsOnDashboard\",\n },\n onError: {\n actions: \"assignErrorFromEvent\",\n target: \"Error\",\n },\n },\n },\n CheckIfDeviceIsOnDashboard: {\n always: [\n {\n guard: \"hasError\",\n target: \"Error\",\n },\n {\n guard: \"isDeviceOnDashboard\",\n target: \"GetOsVersion\",\n },\n {\n target: \"GoToDashboard\",\n },\n ],\n },\n GoToDashboard: {\n entry: assign({\n intermediateValue: (_) => ({\n ..._.context.intermediateValue,\n step: ResolveOsUpdatePathSteps.GoToDashboard,\n }),\n }),\n invoke: {\n src: \"goToDashboard\",\n input: ({ context }) => ({\n unlockTimeout: context.input.unlockTimeout,\n }),\n onSnapshot: {\n actions: assign({\n intermediateValue: (_) => ({\n ..._.event.snapshot.context.intermediateValue,\n step: _.context.intermediateValue.step,\n }),\n }),\n },\n onDone: {\n actions: assign({\n _internalState: (_) => {\n return _.event.output.caseOf<ResolveOsUpdatePathDAInternalState>(\n {\n Left: (error) => ({\n ..._.context._internalState,\n error,\n }),\n Right: () => _.context._internalState,\n },\n );\n },\n }),\n target: \"CheckGoToDashboard\",\n },\n onError: {\n actions: \"assignErrorFromEvent\",\n target: \"Error\",\n },\n },\n },\n CheckGoToDashboard: {\n always: [\n {\n guard: \"hasError\",\n target: \"Error\",\n },\n {\n target: \"WaitForAppAndVersion\",\n },\n ],\n },\n GetOsVersion: {\n entry: assign({\n intermediateValue: (_) => ({\n ..._.context.intermediateValue,\n step: ResolveOsUpdatePathSteps.GetOsVersion,\n }),\n }),\n invoke: {\n src: \"getOsVersion\",\n onDone: {\n actions: assign({\n _internalState: (_) => {\n return _.event.output.caseOf<ResolveOsUpdatePathDAInternalState>(\n {\n Left: (error) => ({\n ..._.context._internalState,\n error,\n }),\n Right: (getOsVersionResponse) => ({\n ..._.context._internalState,\n getOsVersionResponse,\n }),\n },\n );\n },\n }),\n target: \"CheckGetOsVersion\",\n },\n onError: {\n actions: \"assignErrorFromEvent\",\n target: \"Error\",\n },\n },\n },\n CheckGetOsVersion: {\n always: [\n {\n guard: \"hasError\",\n target: \"Error\",\n },\n {\n target: \"ResolveOsUpdatePath\",\n },\n ],\n },\n ResolveOsUpdatePath: {\n entry: assign({\n intermediateValue: (_) => ({\n ..._.context.intermediateValue,\n step: ResolveOsUpdatePathSteps.ResolveOsUpdatePath,\n }),\n }),\n invoke: {\n src: \"resolveOsUpdatePath\",\n input: ({ context }) => ({\n getOsVersionResponse:\n context._internalState.getOsVersionResponse!,\n }),\n onDone: {\n actions: assign({\n _internalState: (_) => {\n return _.event.output.caseOf<ResolveOsUpdatePathDAInternalState>(\n {\n Left: (error) => ({\n ..._.context._internalState,\n error,\n }),\n Right: (osUpdates) => ({\n ..._.context._internalState,\n osUpdates,\n }),\n },\n );\n },\n }),\n target: \"CheckResolveOsUpdatePath\",\n },\n onError: {\n actions: \"assignErrorFromEvent\",\n target: \"Error\",\n },\n },\n },\n CheckResolveOsUpdatePath: {\n always: [\n {\n guard: \"hasError\",\n target: \"Error\",\n },\n {\n target: \"Success\",\n },\n ],\n },\n Success: {\n type: \"final\",\n },\n Error: {\n type: \"final\",\n },\n },\n output: ({ context }) =>\n context._internalState.error !== null\n ? Left(context._internalState.error)\n : Right(context._internalState.osUpdates),\n });\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["ResolveOsUpdatePathDeviceAction_exports", "__export", "ResolveOsUpdatePathDeviceAction", "__toCommonJS", "import_device_management_kit", "import_purify_ts", "import_xstate", "import_GetOsVersion", "import_GoToDashboard", "import_WaitForAppAndVersion", "import_ResolveOsUpdatePath", "import_types", "internalApi", "context", "_", "input", "error", "output", "getOsVersionResponse", "osUpdates"]
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";var i=require("@ledgerhq/device-management-kit"),a=require("purify-ts"),O=require("xstate"),d=require("../../../device-action/__test-utils__/makeInternalApi"),c=require("../../../device-action/__test-utils__/testDeviceActionStates"),R=require("../../../device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceAction"),U=require("../../../device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceActionErrors"),k=require("../../../device-action/OsUpdate/Resolve/Substeps/ResolveOsUpdatePath"),e=require("../../../device-action/OsUpdate/Resolve/types"),D=require("../../../device-action/OsUpdate/Shared/OsUpdateDeviceActionErrors"),P=require("../../../device-action/OsUpdate/Shared/Substeps/GetOsVersion"),y=require("../../../device-action/OsUpdate/Shared/Substeps/GoToDashboard"),v=require("../../../device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion");vi.mock("@api/device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion");vi.mock("@api/device-action/OsUpdate/Shared/Substeps/GoToDashboard");vi.mock("@api/device-action/OsUpdate/Shared/Substeps/GetOsVersion");vi.mock("@api/device-action/OsUpdate/Resolve/Substeps/ResolveOsUpdatePath");const o=n=>({status:i.DeviceActionStatus.Pending,intermediateValue:{requiredUserInteraction:i.UserInteractionRequired.None,step:n}}),S=n=>({status:i.DeviceActionStatus.Completed,output:n}),A=n=>({status:i.DeviceActionStatus.Error,error:n}),F=n=>(0,O.createMachine)({initial:"ready",states:{ready:{after:{0:"done"},entry:(0,O.assign)({intermediateValue:()=>({requiredUserInteraction:i.UserInteractionRequired.None})})},done:{type:"final"}},output:n}),V=n=>F(()=>n);describe("ResolveOsUpdatePathDeviceAction",()=>{const n={isBootloader:!1,isOsu:!1,targetId:857735172,seTargetId:857735172,mcuTargetId:void 0,seVersion:"1.3.0",seFlags:new Uint8Array([230,0,0,0]),mcuSephVersion:"5.24",mcuBootloaderVersion:"0.48",hwVersion:"00",langId:0,recoverState:void 0,secureElementFlags:{isPinValidated:!0,hasMcuSerialNumber:!0,hasValidCertificate:!0,isCustomAuthorityConnectionAllowed:!1,isSecureConnectionAllowed:!1,isOnboarded:!0,isMcuCodeSigned:!0,isInRecoveryMode:!1}},f=[{osuFirmware:{id:200,notes:"Update notes",perso:"perso",firmware:"osu",firmwareKey:"osu-key",hash:"osu-hash",nextFinalFirmware:300},finalFirmware:{id:300,version:"1.4.0",perso:"perso",firmware:"final",firmwareKey:"final-key",hash:"final-hash",bytes:123,mcuVersions:[1]},shouldFlashMcu:!1}];beforeEach(()=>{vi.resetAllMocks()});const l=(t="BOLOS")=>vi.mocked(v.waitForAppAndVersion).mockReturnValue(V((0,a.Right)({name:t,version:"1.0.0"}))),g=t=>{const s=[...t];vi.mocked(v.waitForAppAndVersion).mockReturnValue(F(()=>(0,a.Right)({name:s.shift()??"BOLOS",version:"1.0.0"})))},w=(t=(0,a.Right)(void 0))=>vi.mocked(y.goToDashboard).mockReturnValue(V(t)),m=(t=(0,a.Right)(n))=>vi.mocked(P.getOsVersion).mockReturnValue(()=>Promise.resolve(t)),h=(t=(0,a.Right)(f))=>vi.mocked(k.resolveOsUpdatePath).mockReturnValue(()=>Promise.resolve(t)),u=()=>new R.ResolveOsUpdatePathDeviceAction({input:{unlockTimeout:3e4}});describe("Success",()=>{it("Should complete the resolve flow when the device is already on dashboard",()=>new Promise((t,s)=>{l(),m(),h();const r=[o(e.ResolveOsUpdatePathSteps.WaitForAppAndVersion),o(e.ResolveOsUpdatePathSteps.WaitForAppAndVersion),o(e.ResolveOsUpdatePathSteps.GetOsVersion),o(e.ResolveOsUpdatePathSteps.ResolveOsUpdatePath),S(f)];(0,c.testDeviceActionStates)(u(),r,(0,d.makeDeviceActionInternalApiMock)(),{onDone:t,onError:s})})),it("Should go to dashboard and wait for app and version again when an app is open",()=>new Promise((t,s)=>{g(["Bitcoin","BOLOS"]),w(),m(),h();const r=[o(e.ResolveOsUpdatePathSteps.WaitForAppAndVersion),o(e.ResolveOsUpdatePathSteps.WaitForAppAndVersion),o(e.ResolveOsUpdatePathSteps.GoToDashboard),o(e.ResolveOsUpdatePathSteps.GoToDashboard),o(e.ResolveOsUpdatePathSteps.WaitForAppAndVersion),o(e.ResolveOsUpdatePathSteps.WaitForAppAndVersion),o(e.ResolveOsUpdatePathSteps.GetOsVersion),o(e.ResolveOsUpdatePathSteps.ResolveOsUpdatePath),S(f)];(0,c.testDeviceActionStates)(u(),r,(0,d.makeDeviceActionInternalApiMock)(),{onDone:t,onError:s})}))}),describe("Error",()=>{it("Should go to Error when waitForAppAndVersion returns Left",()=>new Promise((t,s)=>{const r=new i.UnknownDAError("waitForAppAndVersion failed");vi.mocked(v.waitForAppAndVersion).mockReturnValue(V((0,a.Left)(r)));const p=[o(e.ResolveOsUpdatePathSteps.WaitForAppAndVersion),o(e.ResolveOsUpdatePathSteps.WaitForAppAndVersion),A(r)];(0,c.testDeviceActionStates)(u(),p,(0,d.makeDeviceActionInternalApiMock)(),{onDone:t,onError:s})})),it("Should go to Error when goToDashboard returns Left",()=>new Promise((t,s)=>{l("Bitcoin");const r=new i.UnknownDAError("goToDashboard failed");w((0,a.Left)(r));const p=[o(e.ResolveOsUpdatePathSteps.WaitForAppAndVersion),o(e.ResolveOsUpdatePathSteps.WaitForAppAndVersion),o(e.ResolveOsUpdatePathSteps.GoToDashboard),o(e.ResolveOsUpdatePathSteps.GoToDashboard),A(r)];(0,c.testDeviceActionStates)(u(),p,(0,d.makeDeviceActionInternalApiMock)(),{onDone:t,onError:s})})),it("Should go to Error when getOsVersion returns Left",()=>new Promise((t,s)=>{l();const r=new D.GetOsVersionError(new Error("command failed"));m((0,a.Left)(r)),h();const p=[o(e.ResolveOsUpdatePathSteps.WaitForAppAndVersion),o(e.ResolveOsUpdatePathSteps.WaitForAppAndVersion),o(e.ResolveOsUpdatePathSteps.GetOsVersion),A(r)];(0,c.testDeviceActionStates)(u(),p,(0,d.makeDeviceActionInternalApiMock)(),{onDone:t,onError:s})})),it("Should go to Error when resolveOsUpdatePath returns Left",()=>new Promise((t,s)=>{l(),m();const r=new U.ResolveOsUpdatePathError(new Error("manager api failed"));h((0,a.Left)(r));const p=[o(e.ResolveOsUpdatePathSteps.WaitForAppAndVersion),o(e.ResolveOsUpdatePathSteps.WaitForAppAndVersion),o(e.ResolveOsUpdatePathSteps.GetOsVersion),o(e.ResolveOsUpdatePathSteps.ResolveOsUpdatePath),A(r)];(0,c.testDeviceActionStates)(u(),p,(0,d.makeDeviceActionInternalApiMock)(),{onDone:t,onError:s})}))})});
2
+ //# sourceMappingURL=ResolveOsUpdatePathDeviceAction.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../src/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceAction.test.ts"],
4
+ "sourcesContent": ["import {\n DeviceActionStatus,\n type GetOsVersionResponse,\n UnknownDAError,\n UserInteractionRequired,\n} from \"@ledgerhq/device-management-kit\";\nimport { type Either, Left, Right } from \"purify-ts\";\nimport { assign, createMachine } from \"xstate\";\n\nimport { makeDeviceActionInternalApiMock } from \"@api/device-action/__test-utils__/makeInternalApi\";\nimport { testDeviceActionStates } from \"@api/device-action/__test-utils__/testDeviceActionStates\";\nimport { ResolveOsUpdatePathDeviceAction } from \"@api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceAction\";\nimport { ResolveOsUpdatePathError } from \"@api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceActionErrors\";\nimport { resolveOsUpdatePath } from \"@api/device-action/OsUpdate/Resolve/Substeps/ResolveOsUpdatePath\";\nimport {\n type ResolveOsUpdatePathDAError,\n type ResolveOsUpdatePathDAState,\n ResolveOsUpdatePathSteps,\n} from \"@api/device-action/OsUpdate/Resolve/types\";\nimport { GetOsVersionError } from \"@api/device-action/OsUpdate/Shared/OsUpdateDeviceActionErrors\";\nimport { getOsVersion } from \"@api/device-action/OsUpdate/Shared/Substeps/GetOsVersion\";\nimport { goToDashboard } from \"@api/device-action/OsUpdate/Shared/Substeps/GoToDashboard\";\nimport { waitForAppAndVersion } from \"@api/device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion\";\nimport { type OsUpdate } from \"@api/device-action/OsUpdate/Shared/types\";\n\nvi.mock(\"@api/device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion\");\nvi.mock(\"@api/device-action/OsUpdate/Shared/Substeps/GoToDashboard\");\nvi.mock(\"@api/device-action/OsUpdate/Shared/Substeps/GetOsVersion\");\nvi.mock(\"@api/device-action/OsUpdate/Resolve/Substeps/ResolveOsUpdatePath\");\n\nconst pendingState = (\n step: ResolveOsUpdatePathSteps,\n): ResolveOsUpdatePathDAState => ({\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n step,\n },\n});\n\nconst completedState = (output: OsUpdate[]): ResolveOsUpdatePathDAState => ({\n status: DeviceActionStatus.Completed,\n output,\n});\n\nconst errorState = (\n error: ResolveOsUpdatePathDAError,\n): ResolveOsUpdatePathDAState => ({\n status: DeviceActionStatus.Error,\n error,\n});\n\nconst createMockActorMachineFromOutput = (\n output: () => Either<unknown, unknown>,\n) =>\n createMachine({\n initial: \"ready\",\n states: {\n ready: {\n after: { 0: \"done\" },\n entry: assign({\n intermediateValue: () => ({\n requiredUserInteraction: UserInteractionRequired.None,\n }),\n }),\n },\n done: { type: \"final\" },\n },\n output,\n });\n\nconst createMockActorMachine = (output: Either<unknown, unknown>) =>\n createMockActorMachineFromOutput(() => output);\n\ndescribe(\"ResolveOsUpdatePathDeviceAction\", () => {\n const getOsVersionResponse = {\n isBootloader: false,\n isOsu: false,\n targetId: 0x33200004,\n seTargetId: 0x33200004,\n mcuTargetId: undefined,\n seVersion: \"1.3.0\",\n seFlags: new Uint8Array([0xe6, 0x00, 0x00, 0x00]),\n mcuSephVersion: \"5.24\",\n mcuBootloaderVersion: \"0.48\",\n hwVersion: \"00\",\n langId: 0,\n recoverState: undefined,\n secureElementFlags: {\n isPinValidated: true,\n hasMcuSerialNumber: true,\n hasValidCertificate: true,\n isCustomAuthorityConnectionAllowed: false,\n isSecureConnectionAllowed: false,\n isOnboarded: true,\n isMcuCodeSigned: true,\n isInRecoveryMode: false,\n },\n } satisfies GetOsVersionResponse;\n\n const osUpdates = [\n {\n osuFirmware: {\n id: 200,\n notes: \"Update notes\",\n perso: \"perso\",\n firmware: \"osu\",\n firmwareKey: \"osu-key\",\n hash: \"osu-hash\",\n nextFinalFirmware: 300,\n },\n finalFirmware: {\n id: 300,\n version: \"1.4.0\",\n perso: \"perso\",\n firmware: \"final\",\n firmwareKey: \"final-key\",\n hash: \"final-hash\",\n bytes: 123,\n mcuVersions: [1],\n },\n shouldFlashMcu: false,\n },\n ] satisfies OsUpdate[];\n\n beforeEach(() => {\n vi.resetAllMocks();\n });\n\n const setupWaitForAppAndVersion = (appName = \"BOLOS\") =>\n vi.mocked(waitForAppAndVersion).mockReturnValue(\n createMockActorMachine(\n Right({\n name: appName,\n version: \"1.0.0\",\n }),\n ) as unknown as ReturnType<typeof waitForAppAndVersion>,\n );\n\n const setupWaitForAppAndVersionSequence = (appNames: string[]) => {\n const remainingAppNames = [...appNames];\n vi.mocked(waitForAppAndVersion).mockReturnValue(\n createMockActorMachineFromOutput(() =>\n Right({\n name: remainingAppNames.shift() ?? \"BOLOS\",\n version: \"1.0.0\",\n }),\n ) as unknown as ReturnType<typeof waitForAppAndVersion>,\n );\n };\n\n const setupGoToDashboard = (\n output: Either<unknown, unknown> = Right(undefined),\n ) =>\n vi\n .mocked(goToDashboard)\n .mockReturnValue(\n createMockActorMachine(output) as unknown as ReturnType<\n typeof goToDashboard\n >,\n );\n\n const setupGetOsVersion = (\n result: Either<unknown, GetOsVersionResponse> = Right(getOsVersionResponse),\n ) =>\n vi\n .mocked(getOsVersion)\n .mockReturnValue(\n () =>\n Promise.resolve(result) as ReturnType<\n ReturnType<typeof getOsVersion>\n >,\n );\n\n const setupResolveOsUpdatePath = (\n result: Either<unknown, OsUpdate[]> = Right(osUpdates),\n ) =>\n vi\n .mocked(resolveOsUpdatePath)\n .mockReturnValue(\n () =>\n Promise.resolve(result) as ReturnType<\n ReturnType<typeof resolveOsUpdatePath>\n >,\n );\n\n const makeDeviceAction = () =>\n new ResolveOsUpdatePathDeviceAction({\n input: {\n unlockTimeout: 30_000,\n },\n });\n\n describe(\"Success\", () => {\n it(\"Should complete the resolve flow when the device is already on dashboard\", () =>\n new Promise<void>((resolve, reject) => {\n setupWaitForAppAndVersion();\n setupGetOsVersion();\n setupResolveOsUpdatePath();\n\n const expectedStates: ResolveOsUpdatePathDAState[] = [\n pendingState(ResolveOsUpdatePathSteps.WaitForAppAndVersion),\n pendingState(ResolveOsUpdatePathSteps.WaitForAppAndVersion),\n pendingState(ResolveOsUpdatePathSteps.GetOsVersion),\n pendingState(ResolveOsUpdatePathSteps.ResolveOsUpdatePath),\n completedState(osUpdates),\n ];\n\n testDeviceActionStates(\n makeDeviceAction(),\n expectedStates,\n makeDeviceActionInternalApiMock(),\n { onDone: resolve, onError: reject },\n );\n }));\n\n it(\"Should go to dashboard and wait for app and version again when an app is open\", () =>\n new Promise<void>((resolve, reject) => {\n setupWaitForAppAndVersionSequence([\"Bitcoin\", \"BOLOS\"]);\n setupGoToDashboard();\n setupGetOsVersion();\n setupResolveOsUpdatePath();\n\n const expectedStates: ResolveOsUpdatePathDAState[] = [\n pendingState(ResolveOsUpdatePathSteps.WaitForAppAndVersion),\n pendingState(ResolveOsUpdatePathSteps.WaitForAppAndVersion),\n pendingState(ResolveOsUpdatePathSteps.GoToDashboard),\n pendingState(ResolveOsUpdatePathSteps.GoToDashboard),\n pendingState(ResolveOsUpdatePathSteps.WaitForAppAndVersion),\n pendingState(ResolveOsUpdatePathSteps.WaitForAppAndVersion),\n pendingState(ResolveOsUpdatePathSteps.GetOsVersion),\n pendingState(ResolveOsUpdatePathSteps.ResolveOsUpdatePath),\n completedState(osUpdates),\n ];\n\n testDeviceActionStates(\n makeDeviceAction(),\n expectedStates,\n makeDeviceActionInternalApiMock(),\n { onDone: resolve, onError: reject },\n );\n }));\n });\n\n describe(\"Error\", () => {\n it(\"Should go to Error when waitForAppAndVersion returns Left\", () =>\n new Promise<void>((resolve, reject) => {\n const error = new UnknownDAError(\"waitForAppAndVersion failed\");\n vi.mocked(waitForAppAndVersion).mockReturnValue(\n createMockActorMachine(Left(error)) as unknown as ReturnType<\n typeof waitForAppAndVersion\n >,\n );\n\n const expectedStates: ResolveOsUpdatePathDAState[] = [\n pendingState(ResolveOsUpdatePathSteps.WaitForAppAndVersion),\n pendingState(ResolveOsUpdatePathSteps.WaitForAppAndVersion),\n errorState(error),\n ];\n\n testDeviceActionStates(\n makeDeviceAction(),\n expectedStates,\n makeDeviceActionInternalApiMock(),\n { onDone: resolve, onError: reject },\n );\n }));\n\n it(\"Should go to Error when goToDashboard returns Left\", () =>\n new Promise<void>((resolve, reject) => {\n setupWaitForAppAndVersion(\"Bitcoin\");\n const error = new UnknownDAError(\"goToDashboard failed\");\n setupGoToDashboard(Left(error));\n\n const expectedStates: ResolveOsUpdatePathDAState[] = [\n pendingState(ResolveOsUpdatePathSteps.WaitForAppAndVersion),\n pendingState(ResolveOsUpdatePathSteps.WaitForAppAndVersion),\n pendingState(ResolveOsUpdatePathSteps.GoToDashboard),\n pendingState(ResolveOsUpdatePathSteps.GoToDashboard),\n errorState(error),\n ];\n\n testDeviceActionStates(\n makeDeviceAction(),\n expectedStates,\n makeDeviceActionInternalApiMock(),\n { onDone: resolve, onError: reject },\n );\n }));\n\n it(\"Should go to Error when getOsVersion returns Left\", () =>\n new Promise<void>((resolve, reject) => {\n setupWaitForAppAndVersion();\n const error = new GetOsVersionError(new Error(\"command failed\"));\n setupGetOsVersion(Left(error));\n setupResolveOsUpdatePath();\n\n const expectedStates: ResolveOsUpdatePathDAState[] = [\n pendingState(ResolveOsUpdatePathSteps.WaitForAppAndVersion),\n pendingState(ResolveOsUpdatePathSteps.WaitForAppAndVersion),\n pendingState(ResolveOsUpdatePathSteps.GetOsVersion),\n errorState(error),\n ];\n\n testDeviceActionStates(\n makeDeviceAction(),\n expectedStates,\n makeDeviceActionInternalApiMock(),\n { onDone: resolve, onError: reject },\n );\n }));\n\n it(\"Should go to Error when resolveOsUpdatePath returns Left\", () =>\n new Promise<void>((resolve, reject) => {\n setupWaitForAppAndVersion();\n setupGetOsVersion();\n const error = new ResolveOsUpdatePathError(\n new Error(\"manager api failed\"),\n );\n setupResolveOsUpdatePath(Left(error));\n\n const expectedStates: ResolveOsUpdatePathDAState[] = [\n pendingState(ResolveOsUpdatePathSteps.WaitForAppAndVersion),\n pendingState(ResolveOsUpdatePathSteps.WaitForAppAndVersion),\n pendingState(ResolveOsUpdatePathSteps.GetOsVersion),\n pendingState(ResolveOsUpdatePathSteps.ResolveOsUpdatePath),\n errorState(error),\n ];\n\n testDeviceActionStates(\n makeDeviceAction(),\n expectedStates,\n makeDeviceActionInternalApiMock(),\n { onDone: resolve, onError: reject },\n );\n }));\n });\n});\n"],
5
+ "mappings": "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",
6
+ "names": ["import_device_management_kit", "import_purify_ts", "import_xstate", "import_makeInternalApi", "import_testDeviceActionStates", "import_ResolveOsUpdatePathDeviceAction", "import_ResolveOsUpdatePathDeviceActionErrors", "import_ResolveOsUpdatePath", "import_types", "import_OsUpdateDeviceActionErrors", "import_GetOsVersion", "import_GoToDashboard", "import_WaitForAppAndVersion", "pendingState", "step", "completedState", "output", "errorState", "error", "createMockActorMachineFromOutput", "createMockActorMachine", "getOsVersionResponse", "osUpdates", "setupWaitForAppAndVersion", "appName", "setupWaitForAppAndVersionSequence", "appNames", "remainingAppNames", "setupGoToDashboard", "setupGetOsVersion", "result", "setupResolveOsUpdatePath", "makeDeviceAction", "resolve", "reject", "expectedStates"]
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";var s=Object.defineProperty;var n=Object.getOwnPropertyDescriptor;var p=Object.getOwnPropertyNames;var i=Object.prototype.hasOwnProperty;var l=(o,r)=>{for(var t in r)s(o,t,{get:r[t],enumerable:!0})},E=(o,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let e of p(r))!i.call(o,e)&&e!==t&&s(o,e,{get:()=>r[e],enumerable:!(a=n(r,e))||a.enumerable});return o};var m=o=>E(s({},"__esModule",{value:!0}),o);var O={};l(O,{ResolveOsUpdatePathError:()=>d});module.exports=m(O);class d{_tag="ResolveOsUpdatePathError";originalError;constructor(r){this.originalError=r}}0&&(module.exports={ResolveOsUpdatePathError});
2
+ //# sourceMappingURL=ResolveOsUpdatePathDeviceActionErrors.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../src/api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceActionErrors.ts"],
4
+ "sourcesContent": ["import { type DmkError } from \"@ledgerhq/device-management-kit\";\n\nimport { type GetOsVersionError } from \"@api/device-action/OsUpdate/Shared/OsUpdateDeviceActionErrors\";\n\nexport class ResolveOsUpdatePathError implements DmkError {\n readonly _tag = \"ResolveOsUpdatePathError\";\n readonly originalError?: unknown;\n\n constructor(originalError?: unknown) {\n this.originalError = originalError;\n }\n}\n\nexport type ResolveOsUpdatePathDAErrors =\n | GetOsVersionError\n | ResolveOsUpdatePathError;\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,8BAAAE,IAAA,eAAAC,EAAAH,GAIO,MAAME,CAA6C,CAC/C,KAAO,2BACP,cAET,YAAYE,EAAyB,CACnC,KAAK,cAAgBA,CACvB,CACF",
6
+ "names": ["ResolveOsUpdatePathDeviceActionErrors_exports", "__export", "ResolveOsUpdatePathError", "__toCommonJS", "originalError"]
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";var c=Object.defineProperty;var w=Object.getOwnPropertyDescriptor;var U=Object.getOwnPropertyNames;var y=Object.prototype.hasOwnProperty;var R=(r,t)=>{for(var e in t)c(r,e,{get:t[e],enumerable:!0})},A=(r,t,e,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of U(t))!y.call(r,s)&&s!==e&&c(r,s,{get:()=>t[s],enumerable:!(a=w(t,s))||a.enumerable});return r};var E=r=>A(c({},"__esModule",{value:!0}),r);var L={};R(L,{resolveOsUpdatePath:()=>f});module.exports=E(L);var o=require("purify-ts"),d=require("../../../../device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceActionErrors"),O=require("../../../../device-action/OsUpdate/Shared/OsUpdateUtils");const M=5,f=r=>({input:{getOsVersionResponse:t}})=>(0,o.EitherAsync)(async({liftEither:e,fromPromise:a})=>{const s=await a(P(r));let m=await e(v(s,t.mcuSephVersion));const u=await a(F(r,t));let n=(await a(V(r,t,u))).extractNullable();const l=[];for(;n&&l.length<M;){const p=await a(I(r,n)),h=!p.mcuVersions.includes(m);if(h){const g=r.getManagerApiService().getProvider();m=await e(v(s,(0,O.bestCompatibleMcu)(s,p,g)?.name??null))}l.push({osuFirmware:n,finalFirmware:p,shouldFlashMcu:h}),n=(await a(b(r,u,p))).extractNullable()}return l}).run(),i=r=>new d.ResolveOsUpdatePathError(r),P=r=>r.getManagerApiService().getMcuList().map(t=>t.map(e=>({id:e.id,name:e.name,fromBootloaderVersion:e.fromBootloaderVersion,providers:e.providers}))).mapLeft(i),v=(r,t)=>o.Maybe.fromNullable(r.find(e=>e.name===t)).map(e=>e.id).toEither(new d.ResolveOsUpdatePathError(`No MCU firmware found for version ${t}`)),F=(r,t)=>r.getManagerApiService().getDeviceVersion(t).mapLeft(i),V=(r,t,e)=>{const a=r.getManagerApiService();return t.isOsu?a.getOsuFirmwareVersion(t,e).map(o.Just).mapLeft(i):a.getFirmwareVersion(t,e).chain(s=>a.getLatestFirmwareVersion(s,e)).mapLeft(i)},I=(r,t)=>r.getManagerApiService().getNextFirmwareVersion(t).map(e=>({id:e.id,perso:e.perso,version:e.version,bytes:e.bytes,firmware:e.firmware,firmwareKey:e.firmwareKey,hash:e.hash,mcuVersions:e.mcuVersions})).mapLeft(i),b=(r,t,e)=>r.getManagerApiService().getLatestFirmwareVersion(e,t).mapLeft(i);0&&(module.exports={resolveOsUpdatePath});
2
+ //# sourceMappingURL=ResolveOsUpdatePath.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../../src/api/device-action/OsUpdate/Resolve/Substeps/ResolveOsUpdatePath.ts"],
4
+ "sourcesContent": ["import {\n type GetOsVersionResponse,\n type InternalApi,\n} from \"@ledgerhq/device-management-kit\";\nimport { type Either, EitherAsync, Just, Maybe } from \"purify-ts\";\n\nimport { ResolveOsUpdatePathError } from \"@api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceActionErrors\";\nimport { bestCompatibleMcu } from \"@api/device-action/OsUpdate/Shared/OsUpdateUtils\";\nimport {\n type FinalFirmware,\n type McuFirmware,\n type OsuFirmware,\n type OsUpdate,\n} from \"@api/device-action/OsUpdate/Shared/types\";\n\ntype ResolveOsUpdatePathHandlerInput = {\n getOsVersionResponse: GetOsVersionResponse;\n};\n\ntype ResolveOsUpdatePathHandlerResponse = Promise<\n Either<ResolveOsUpdatePathError, OsUpdate[]>\n>;\n\ntype ResolveOsUpdatePathHandler = ({\n input,\n}: {\n input: ResolveOsUpdatePathHandlerInput;\n}) => ResolveOsUpdatePathHandlerResponse;\n\ntype DeviceVersion = {\n id: number;\n};\n\n/**\n * Limit the number of OS updates to 5 to avoid infinite loops.\n * In practice, it should never be more than that.\n */\nconst MAX_OS_UPDATES_LIMIT = 5;\n\nexport const resolveOsUpdatePath =\n (internalApi: InternalApi): ResolveOsUpdatePathHandler =>\n ({ input: { getOsVersionResponse } }): ResolveOsUpdatePathHandlerResponse =>\n EitherAsync<ResolveOsUpdatePathError, OsUpdate[]>(\n async ({ liftEither, fromPromise }) => {\n const mcuList = await fromPromise(getMcuList(internalApi));\n let mcuId = await liftEither(\n resolveMcuId(mcuList, getOsVersionResponse.mcuSephVersion),\n );\n const deviceVersion = await fromPromise(\n getDeviceVersion(internalApi, getOsVersionResponse),\n );\n let osuFirmware = (\n await fromPromise(\n getOsuFirmware(internalApi, getOsVersionResponse, deviceVersion),\n )\n ).extractNullable();\n\n const osUpdates: OsUpdate[] = [];\n\n while (osuFirmware && osUpdates.length < MAX_OS_UPDATES_LIMIT) {\n const finalFirmware = await fromPromise(\n getNextFirmware(internalApi, osuFirmware),\n );\n const shouldFlashMcu = !finalFirmware.mcuVersions.includes(mcuId);\n\n if (shouldFlashMcu) {\n const provider = internalApi.getManagerApiService().getProvider();\n mcuId = await liftEither(\n resolveMcuId(\n mcuList,\n bestCompatibleMcu(mcuList, finalFirmware, provider)?.name ??\n null,\n ),\n );\n }\n\n osUpdates.push({ osuFirmware, finalFirmware, shouldFlashMcu });\n\n osuFirmware = (\n await fromPromise(\n getNextOsuFirmware(internalApi, deviceVersion, finalFirmware),\n )\n ).extractNullable();\n }\n\n return osUpdates;\n },\n ).run();\n\nconst toResolveOsUpdatePathError = (error: unknown): ResolveOsUpdatePathError =>\n new ResolveOsUpdatePathError(error);\n\nconst getMcuList = (\n internalApi: InternalApi,\n): EitherAsync<ResolveOsUpdatePathError, McuFirmware[]> =>\n internalApi\n .getManagerApiService()\n .getMcuList()\n .map((mcuList) =>\n mcuList.map((mcu) => ({\n id: mcu.id,\n name: mcu.name,\n fromBootloaderVersion: mcu.fromBootloaderVersion,\n providers: mcu.providers,\n })),\n )\n .mapLeft(toResolveOsUpdatePathError);\n\nconst resolveMcuId = (\n mcuList: McuFirmware[],\n mcuName: string | null,\n): Either<ResolveOsUpdatePathError, number> =>\n Maybe.fromNullable(mcuList.find((mcu) => mcu.name === mcuName))\n .map((mcu) => mcu.id)\n .toEither(\n new ResolveOsUpdatePathError(\n `No MCU firmware found for version ${mcuName}`,\n ),\n );\n\nconst getDeviceVersion = (\n internalApi: InternalApi,\n getOsVersionResponse: GetOsVersionResponse,\n): EitherAsync<ResolveOsUpdatePathError, DeviceVersion> => {\n const managerApi = internalApi.getManagerApiService();\n return managerApi\n .getDeviceVersion(getOsVersionResponse)\n .mapLeft(toResolveOsUpdatePathError);\n};\n\nconst getOsuFirmware = (\n internalApi: InternalApi,\n getOsVersionResponse: GetOsVersionResponse,\n deviceVersion: DeviceVersion,\n): EitherAsync<ResolveOsUpdatePathError, Maybe<OsuFirmware>> => {\n const managerApi = internalApi.getManagerApiService();\n return getOsVersionResponse.isOsu\n ? managerApi\n .getOsuFirmwareVersion(getOsVersionResponse, deviceVersion)\n .map(Just)\n .mapLeft(toResolveOsUpdatePathError)\n : managerApi\n .getFirmwareVersion(getOsVersionResponse, deviceVersion)\n .chain((firmwareVersion) =>\n managerApi.getLatestFirmwareVersion(firmwareVersion, deviceVersion),\n )\n .mapLeft(toResolveOsUpdatePathError);\n};\n\nconst getNextFirmware = (\n internalApi: InternalApi,\n osuFirmware: OsuFirmware,\n): EitherAsync<ResolveOsUpdatePathError, FinalFirmware> =>\n internalApi\n .getManagerApiService()\n .getNextFirmwareVersion(osuFirmware)\n .map((nextFirmware) => ({\n id: nextFirmware.id,\n perso: nextFirmware.perso,\n version: nextFirmware.version,\n bytes: nextFirmware.bytes,\n firmware: nextFirmware.firmware,\n firmwareKey: nextFirmware.firmwareKey,\n hash: nextFirmware.hash,\n mcuVersions: nextFirmware.mcuVersions,\n }))\n .mapLeft(toResolveOsUpdatePathError);\n\nconst getNextOsuFirmware = (\n internalApi: InternalApi,\n deviceVersion: DeviceVersion,\n finalFirmware: FinalFirmware,\n): EitherAsync<ResolveOsUpdatePathError, Maybe<OsuFirmware>> => {\n const managerApi = internalApi.getManagerApiService();\n return managerApi\n .getLatestFirmwareVersion(finalFirmware, deviceVersion)\n .mapLeft(toResolveOsUpdatePathError);\n};\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,yBAAAE,IAAA,eAAAC,EAAAH,GAIA,IAAAI,EAAsD,qBAEtDC,EAAyC,qFACzCC,EAAkC,4DA8BlC,MAAMC,EAAuB,EAEhBL,EACVM,GACD,CAAC,CAAE,MAAO,CAAE,qBAAAC,CAAqB,CAAE,OACjC,eACE,MAAO,CAAE,WAAAC,EAAY,YAAAC,CAAY,IAAM,CACrC,MAAMC,EAAU,MAAMD,EAAYE,EAAWL,CAAW,CAAC,EACzD,IAAIM,EAAQ,MAAMJ,EAChBK,EAAaH,EAASH,EAAqB,cAAc,CAC3D,EACA,MAAMO,EAAgB,MAAML,EAC1BM,EAAiBT,EAAaC,CAAoB,CACpD,EACA,IAAIS,GACF,MAAMP,EACJQ,EAAeX,EAAaC,EAAsBO,CAAa,CACjE,GACA,gBAAgB,EAElB,MAAMI,EAAwB,CAAC,EAE/B,KAAOF,GAAeE,EAAU,OAASb,GAAsB,CAC7D,MAAMc,EAAgB,MAAMV,EAC1BW,EAAgBd,EAAaU,CAAW,CAC1C,EACMK,EAAiB,CAACF,EAAc,YAAY,SAASP,CAAK,EAEhE,GAAIS,EAAgB,CAClB,MAAMC,EAAWhB,EAAY,qBAAqB,EAAE,YAAY,EAChEM,EAAQ,MAAMJ,EACZK,EACEH,KACA,qBAAkBA,EAASS,EAAeG,CAAQ,GAAG,MACnD,IACJ,CACF,CACF,CAEAJ,EAAU,KAAK,CAAE,YAAAF,EAAa,cAAAG,EAAe,eAAAE,CAAe,CAAC,EAE7DL,GACE,MAAMP,EACJc,EAAmBjB,EAAaQ,EAAeK,CAAa,CAC9D,GACA,gBAAgB,CACpB,CAEA,OAAOD,CACT,CACF,EAAE,IAAI,EAEJM,EAA8BC,GAClC,IAAI,2BAAyBA,CAAK,EAE9Bd,EACJL,GAEAA,EACG,qBAAqB,EACrB,WAAW,EACX,IAAKI,GACJA,EAAQ,IAAKgB,IAAS,CACpB,GAAIA,EAAI,GACR,KAAMA,EAAI,KACV,sBAAuBA,EAAI,sBAC3B,UAAWA,EAAI,SACjB,EAAE,CACJ,EACC,QAAQF,CAA0B,EAEjCX,EAAe,CACnBH,EACAiB,IAEA,QAAM,aAAajB,EAAQ,KAAMgB,GAAQA,EAAI,OAASC,CAAO,CAAC,EAC3D,IAAKD,GAAQA,EAAI,EAAE,EACnB,SACC,IAAI,2BACF,qCAAqCC,CAAO,EAC9C,CACF,EAEEZ,EAAmB,CACvBT,EACAC,IAEmBD,EAAY,qBAAqB,EAEjD,iBAAiBC,CAAoB,EACrC,QAAQiB,CAA0B,EAGjCP,EAAiB,CACrBX,EACAC,EACAO,IAC8D,CAC9D,MAAMc,EAAatB,EAAY,qBAAqB,EACpD,OAAOC,EAAqB,MACxBqB,EACG,sBAAsBrB,EAAsBO,CAAa,EACzD,IAAI,MAAI,EACR,QAAQU,CAA0B,EACrCI,EACG,mBAAmBrB,EAAsBO,CAAa,EACtD,MAAOe,GACND,EAAW,yBAAyBC,EAAiBf,CAAa,CACpE,EACC,QAAQU,CAA0B,CAC3C,EAEMJ,EAAkB,CACtBd,EACAU,IAEAV,EACG,qBAAqB,EACrB,uBAAuBU,CAAW,EAClC,IAAKc,IAAkB,CACtB,GAAIA,EAAa,GACjB,MAAOA,EAAa,MACpB,QAASA,EAAa,QACtB,MAAOA,EAAa,MACpB,SAAUA,EAAa,SACvB,YAAaA,EAAa,YAC1B,KAAMA,EAAa,KACnB,YAAaA,EAAa,WAC5B,EAAE,EACD,QAAQN,CAA0B,EAEjCD,EAAqB,CACzBjB,EACAQ,EACAK,IAEmBb,EAAY,qBAAqB,EAEjD,yBAAyBa,EAAeL,CAAa,EACrD,QAAQU,CAA0B",
6
+ "names": ["ResolveOsUpdatePath_exports", "__export", "resolveOsUpdatePath", "__toCommonJS", "import_purify_ts", "import_ResolveOsUpdatePathDeviceActionErrors", "import_OsUpdateUtils", "MAX_OS_UPDATES_LIMIT", "internalApi", "getOsVersionResponse", "liftEither", "fromPromise", "mcuList", "getMcuList", "mcuId", "resolveMcuId", "deviceVersion", "getDeviceVersion", "osuFirmware", "getOsuFirmware", "osUpdates", "finalFirmware", "getNextFirmware", "shouldFlashMcu", "provider", "getNextOsuFirmware", "toResolveOsUpdatePathError", "error", "mcu", "mcuName", "managerApi", "firmwareVersion", "nextFirmware"]
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";var s=require("purify-ts"),F=require("../../../../device-action/__test-utils__/makeInternalApi"),p=require("../../../../device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceActionErrors"),c=require("../../../../device-action/OsUpdate/Resolve/Substeps/ResolveOsUpdatePath");const r=d=>(0,s.EitherAsync)(()=>Promise.resolve(d)),v=d=>(0,s.EitherAsync)(({throwE:a})=>Promise.resolve(a(d)));describe("ResolveOsUpdatePath",()=>{const a=(0,F.makeDeviceActionInternalApiMock)(),o={isBootloader:!1,isOsu:!1,targetId:857735172,seTargetId:857735172,mcuTargetId:void 0,seVersion:"1.3.0",seFlags:new Uint8Array([230,0,0,0]),mcuSephVersion:"1.0.0",mcuBootloaderVersion:"0.48",hwVersion:"00",langId:0,recoverState:void 0,secureElementFlags:{isPinValidated:!0,hasMcuSerialNumber:!0,hasValidCertificate:!0,isCustomAuthorityConnectionAllowed:!1,isSecureConnectionAllowed:!1,isOnboarded:!0,isMcuCodeSigned:!0,isInRecoveryMode:!1}},l={id:17,target_id:"857735172",name:"Ledger Stax"},V={id:100,version:"1.3.0",perso:"perso",firmware:null,firmwareKey:null,hash:null,bytes:null,mcuVersions:[1]},n={id:200,notes:"Update notes",perso:"perso",firmware:"osu",firmwareKey:"osu-key",hash:"osu-hash",nextFinalFirmware:300},w={...n,id:201,nextFinalFirmware:301},u={id:300,version:"1.4.0",perso:"perso",firmware:"final",firmwareKey:"final-key",hash:"final-hash",bytes:123,mcuVersions:[1]},f={...u,id:301,version:"1.5.0",mcuVersions:[3]},h=[{id:1,name:"1.0.0",fromBootloaderVersion:"0.0",providers:[1]},{id:3,name:"3.0.0",fromBootloaderVersion:"0.0",providers:[1,2]}],e={getMcuList:vi.fn(),getDeviceVersion:vi.fn(),getFirmwareVersion:vi.fn(),getOsuFirmwareVersion:vi.fn(),getLatestFirmwareVersion:vi.fn(),getNextFirmwareVersion:vi.fn(),getProvider:vi.fn()};beforeEach(()=>{vi.resetAllMocks(),a.getManagerApiService.mockReturnValue(e),e.getMcuList.mockReturnValue(r(h)),e.getDeviceVersion.mockReturnValue(r(l)),e.getFirmwareVersion.mockReturnValue(r(V)),e.getLatestFirmwareVersion.mockReturnValue(r((0,s.Just)(n))),e.getOsuFirmwareVersion.mockReturnValue(r(n)),e.getNextFirmwareVersion.mockReturnValue(r(u)),e.getProvider.mockReturnValue(1)}),describe("Success",()=>{it("Should return an empty update path when no firmware update is available",async()=>{e.getLatestFirmwareVersion.mockReturnValueOnce(r(s.Nothing));const t=await(0,c.resolveOsUpdatePath)(a)({input:{getOsVersionResponse:o}});expect(t.extract()).toEqual([]),expect(e.getDeviceVersion).toHaveBeenCalledWith(o),expect(e.getFirmwareVersion).toHaveBeenCalledWith(o,l),expect(e.getLatestFirmwareVersion).toHaveBeenCalledWith(V,l),expect(e.getNextFirmwareVersion).not.toHaveBeenCalled()}),it("Should resolve a single update without MCU flash when the final firmware supports the current MCU",async()=>{e.getLatestFirmwareVersion.mockReturnValueOnce(r((0,s.Just)(n))).mockReturnValueOnce(r(s.Nothing));const t=await(0,c.resolveOsUpdatePath)(a)({input:{getOsVersionResponse:o}});expect(t.extract()).toEqual([{osuFirmware:n,finalFirmware:u,shouldFlashMcu:!1}])}),it("Should resolve OSU mode from the OSU firmware endpoint",async()=>{e.getLatestFirmwareVersion.mockReturnValueOnce(r(s.Nothing));const t={...o,isOsu:!0},i=await(0,c.resolveOsUpdatePath)(a)({input:{getOsVersionResponse:t}});expect(i.extract()).toEqual([{osuFirmware:n,finalFirmware:u,shouldFlashMcu:!1}]),expect(e.getOsuFirmwareVersion).toHaveBeenCalledWith(t,l),expect(e.getFirmwareVersion).not.toHaveBeenCalled()}),it("Should resolve multiple updates and flag the one requiring an MCU flash",async()=>{e.getLatestFirmwareVersion.mockReturnValueOnce(r((0,s.Just)(n))).mockReturnValueOnce(r((0,s.Just)(w))).mockReturnValueOnce(r(s.Nothing)),e.getNextFirmwareVersion.mockReturnValueOnce(r(u)).mockReturnValueOnce(r(f));const t=await(0,c.resolveOsUpdatePath)(a)({input:{getOsVersionResponse:o}});expect(t.extract()).toEqual([{osuFirmware:n,finalFirmware:u,shouldFlashMcu:!1},{osuFirmware:w,finalFirmware:f,shouldFlashMcu:!0}]),expect(e.getDeviceVersion).toHaveBeenCalledTimes(1),expect(e.getLatestFirmwareVersion).toHaveBeenNthCalledWith(2,u,l)}),it("Should resolve the latest compatible MCU when MCU names are not strict semver",async()=>{const t=[{id:1,name:"1.0",fromBootloaderVersion:"0.0",providers:[1]},{id:2,name:"1.1",fromBootloaderVersion:"0.0",providers:[1,2]},{id:3,name:"1.2",fromBootloaderVersion:"0.0",providers:[1,2,3]}],i={...u,mcuVersions:[2,3]},m={...f,mcuVersions:[3]};e.getMcuList.mockReturnValueOnce(r(t)),e.getLatestFirmwareVersion.mockReturnValueOnce(r((0,s.Just)(n))).mockReturnValueOnce(r((0,s.Just)(w))).mockReturnValueOnce(r(s.Nothing)),e.getNextFirmwareVersion.mockReturnValueOnce(r(i)).mockReturnValueOnce(r(m));const g=await(0,c.resolveOsUpdatePath)(a)({input:{getOsVersionResponse:{...o,mcuSephVersion:"1.0"}}});expect(g.extract()).toEqual([{osuFirmware:n,finalFirmware:i,shouldFlashMcu:!0},{osuFirmware:w,finalFirmware:m,shouldFlashMcu:!1}])})}),describe("Error",()=>{it("Should return ResolveOsUpdatePathError when the MCU list cannot be fetched",async()=>{const t=new Error("mcu list failed");e.getMcuList.mockReturnValueOnce(v(t));const i=await(0,c.resolveOsUpdatePath)(a)({input:{getOsVersionResponse:o}});expect(i.isLeft()).toBe(!0),i.mapLeft(m=>{expect(m).toBeInstanceOf(p.ResolveOsUpdatePathError),expect(m.originalError).toBe(t)})}),it("Should return ResolveOsUpdatePathError when the current MCU version is unknown",async()=>{const t=await(0,c.resolveOsUpdatePath)(a)({input:{getOsVersionResponse:{...o,mcuSephVersion:"9.9.9"}}});expect(t.isLeft()).toBe(!0),t.mapLeft(i=>{expect(i).toBeInstanceOf(p.ResolveOsUpdatePathError),expect(i.originalError).toBe("No MCU firmware found for version 9.9.9")})}),it("Should return ResolveOsUpdatePathError when no compatible MCU can be resolved for the next firmware",async()=>{e.getNextFirmwareVersion.mockReturnValueOnce(r({...u,mcuVersions:[42]}));const t=await(0,c.resolveOsUpdatePath)(a)({input:{getOsVersionResponse:o}});expect(t.isLeft()).toBe(!0),t.mapLeft(i=>{expect(i).toBeInstanceOf(p.ResolveOsUpdatePathError),expect(i.originalError).toBe("No MCU firmware found for version null")})})})});
2
+ //# sourceMappingURL=ResolveOsUpdatePath.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../../src/api/device-action/OsUpdate/Resolve/Substeps/ResolveOsUpdatePath.test.ts"],
4
+ "sourcesContent": ["import { type GetOsVersionResponse } from \"@ledgerhq/device-management-kit\";\nimport { EitherAsync, Just, Nothing } from \"purify-ts\";\n\nimport { makeDeviceActionInternalApiMock } from \"@api/device-action/__test-utils__/makeInternalApi\";\nimport { ResolveOsUpdatePathError } from \"@api/device-action/OsUpdate/Resolve/ResolveOsUpdatePathDeviceActionErrors\";\nimport { resolveOsUpdatePath } from \"@api/device-action/OsUpdate/Resolve/Substeps/ResolveOsUpdatePath\";\nimport {\n type FinalFirmware,\n type McuFirmware,\n type OsuFirmware,\n} from \"@api/device-action/OsUpdate/Shared/types\";\n\nconst rightAsync = <T>(value: T) =>\n EitherAsync<unknown, T>(() => Promise.resolve(value));\n\nconst leftAsync = (error: unknown) =>\n EitherAsync<unknown, never>(({ throwE }) => Promise.resolve(throwE(error)));\n\ndescribe(\"ResolveOsUpdatePath\", () => {\n const DEFAULT_MANAGER_API_PROVIDER = 1;\n\n const apiMock = makeDeviceActionInternalApiMock();\n\n const getOsVersionResponse = {\n isBootloader: false,\n isOsu: false,\n targetId: 0x33200004,\n seTargetId: 0x33200004,\n mcuTargetId: undefined,\n seVersion: \"1.3.0\",\n seFlags: new Uint8Array([0xe6, 0x00, 0x00, 0x00]),\n mcuSephVersion: \"1.0.0\",\n mcuBootloaderVersion: \"0.48\",\n hwVersion: \"00\",\n langId: 0,\n recoverState: undefined,\n secureElementFlags: {\n isPinValidated: true,\n hasMcuSerialNumber: true,\n hasValidCertificate: true,\n isCustomAuthorityConnectionAllowed: false,\n isSecureConnectionAllowed: false,\n isOnboarded: true,\n isMcuCodeSigned: true,\n isInRecoveryMode: false,\n },\n } satisfies GetOsVersionResponse;\n\n const deviceVersion = {\n id: 17,\n target_id: \"857735172\",\n name: \"Ledger Stax\",\n };\n\n const currentFirmware = {\n id: 100,\n version: \"1.3.0\",\n perso: \"perso\",\n firmware: null,\n firmwareKey: null,\n hash: null,\n bytes: null,\n mcuVersions: [1],\n } satisfies FinalFirmware;\n\n const firstOsuFirmware = {\n id: 200,\n notes: \"Update notes\",\n perso: \"perso\",\n firmware: \"osu\",\n firmwareKey: \"osu-key\",\n hash: \"osu-hash\",\n nextFinalFirmware: 300,\n } satisfies OsuFirmware;\n\n const secondOsuFirmware = {\n ...firstOsuFirmware,\n id: 201,\n nextFinalFirmware: 301,\n } satisfies OsuFirmware;\n\n const firstFinalFirmware = {\n id: 300,\n version: \"1.4.0\",\n perso: \"perso\",\n firmware: \"final\",\n firmwareKey: \"final-key\",\n hash: \"final-hash\",\n bytes: 123,\n mcuVersions: [1],\n } satisfies FinalFirmware;\n\n const secondFinalFirmware = {\n ...firstFinalFirmware,\n id: 301,\n version: \"1.5.0\",\n mcuVersions: [3],\n } satisfies FinalFirmware;\n\n const mcuList = [\n {\n id: 1,\n name: \"1.0.0\",\n fromBootloaderVersion: \"0.0\",\n providers: [1],\n },\n {\n id: 3,\n name: \"3.0.0\",\n fromBootloaderVersion: \"0.0\",\n providers: [1, 2],\n },\n ] satisfies McuFirmware[];\n\n const managerApiMock = {\n getMcuList: vi.fn(),\n getDeviceVersion: vi.fn(),\n getFirmwareVersion: vi.fn(),\n getOsuFirmwareVersion: vi.fn(),\n getLatestFirmwareVersion: vi.fn(),\n getNextFirmwareVersion: vi.fn(),\n getProvider: vi.fn(),\n };\n\n beforeEach(() => {\n vi.resetAllMocks();\n apiMock.getManagerApiService.mockReturnValue(managerApiMock as never);\n managerApiMock.getMcuList.mockReturnValue(rightAsync(mcuList));\n managerApiMock.getDeviceVersion.mockReturnValue(rightAsync(deviceVersion));\n managerApiMock.getFirmwareVersion.mockReturnValue(\n rightAsync(currentFirmware),\n );\n managerApiMock.getLatestFirmwareVersion.mockReturnValue(\n rightAsync(Just(firstOsuFirmware)),\n );\n managerApiMock.getOsuFirmwareVersion.mockReturnValue(\n rightAsync(firstOsuFirmware),\n );\n managerApiMock.getNextFirmwareVersion.mockReturnValue(\n rightAsync(firstFinalFirmware),\n );\n managerApiMock.getProvider.mockReturnValue(DEFAULT_MANAGER_API_PROVIDER);\n });\n\n describe(\"Success\", () => {\n it(\"Should return an empty update path when no firmware update is available\", async () => {\n managerApiMock.getLatestFirmwareVersion.mockReturnValueOnce(\n rightAsync(Nothing),\n );\n\n const result = await resolveOsUpdatePath(apiMock)({\n input: { getOsVersionResponse },\n });\n\n expect(result.extract()).toEqual([]);\n expect(managerApiMock.getDeviceVersion).toHaveBeenCalledWith(\n getOsVersionResponse,\n );\n expect(managerApiMock.getFirmwareVersion).toHaveBeenCalledWith(\n getOsVersionResponse,\n deviceVersion,\n );\n expect(managerApiMock.getLatestFirmwareVersion).toHaveBeenCalledWith(\n currentFirmware,\n deviceVersion,\n );\n expect(managerApiMock.getNextFirmwareVersion).not.toHaveBeenCalled();\n });\n\n it(\"Should resolve a single update without MCU flash when the final firmware supports the current MCU\", async () => {\n managerApiMock.getLatestFirmwareVersion\n .mockReturnValueOnce(rightAsync(Just(firstOsuFirmware)))\n .mockReturnValueOnce(rightAsync(Nothing));\n\n const result = await resolveOsUpdatePath(apiMock)({\n input: { getOsVersionResponse },\n });\n\n expect(result.extract()).toEqual([\n {\n osuFirmware: firstOsuFirmware,\n finalFirmware: firstFinalFirmware,\n shouldFlashMcu: false,\n },\n ]);\n });\n\n it(\"Should resolve OSU mode from the OSU firmware endpoint\", async () => {\n managerApiMock.getLatestFirmwareVersion.mockReturnValueOnce(\n rightAsync(Nothing),\n );\n\n const osVersionResponse = {\n ...getOsVersionResponse,\n isOsu: true,\n } satisfies GetOsVersionResponse;\n const result = await resolveOsUpdatePath(apiMock)({\n input: { getOsVersionResponse: osVersionResponse },\n });\n\n expect(result.extract()).toEqual([\n {\n osuFirmware: firstOsuFirmware,\n finalFirmware: firstFinalFirmware,\n shouldFlashMcu: false,\n },\n ]);\n expect(managerApiMock.getOsuFirmwareVersion).toHaveBeenCalledWith(\n osVersionResponse,\n deviceVersion,\n );\n expect(managerApiMock.getFirmwareVersion).not.toHaveBeenCalled();\n });\n\n it(\"Should resolve multiple updates and flag the one requiring an MCU flash\", async () => {\n managerApiMock.getLatestFirmwareVersion\n .mockReturnValueOnce(rightAsync(Just(firstOsuFirmware)))\n .mockReturnValueOnce(rightAsync(Just(secondOsuFirmware)))\n .mockReturnValueOnce(rightAsync(Nothing));\n managerApiMock.getNextFirmwareVersion\n .mockReturnValueOnce(rightAsync(firstFinalFirmware))\n .mockReturnValueOnce(rightAsync(secondFinalFirmware));\n\n const result = await resolveOsUpdatePath(apiMock)({\n input: { getOsVersionResponse },\n });\n\n expect(result.extract()).toEqual([\n {\n osuFirmware: firstOsuFirmware,\n finalFirmware: firstFinalFirmware,\n shouldFlashMcu: false,\n },\n {\n osuFirmware: secondOsuFirmware,\n finalFirmware: secondFinalFirmware,\n shouldFlashMcu: true,\n },\n ]);\n expect(managerApiMock.getDeviceVersion).toHaveBeenCalledTimes(1);\n expect(managerApiMock.getLatestFirmwareVersion).toHaveBeenNthCalledWith(\n 2,\n firstFinalFirmware,\n deviceVersion,\n );\n });\n\n it(\"Should resolve the latest compatible MCU when MCU names are not strict semver\", async () => {\n const managerMcuList = [\n {\n id: 1,\n name: \"1.0\",\n fromBootloaderVersion: \"0.0\",\n providers: [1],\n },\n {\n id: 2,\n name: \"1.1\",\n fromBootloaderVersion: \"0.0\",\n providers: [1, 2],\n },\n {\n id: 3,\n name: \"1.2\",\n fromBootloaderVersion: \"0.0\",\n providers: [1, 2, 3],\n },\n ] satisfies McuFirmware[];\n const finalFirmwareRequiringMcuFlash = {\n ...firstFinalFirmware,\n mcuVersions: [2, 3],\n } satisfies FinalFirmware;\n const finalFirmwareSupportingLatestMcu = {\n ...secondFinalFirmware,\n mcuVersions: [3],\n } satisfies FinalFirmware;\n\n managerApiMock.getMcuList.mockReturnValueOnce(rightAsync(managerMcuList));\n managerApiMock.getLatestFirmwareVersion\n .mockReturnValueOnce(rightAsync(Just(firstOsuFirmware)))\n .mockReturnValueOnce(rightAsync(Just(secondOsuFirmware)))\n .mockReturnValueOnce(rightAsync(Nothing));\n managerApiMock.getNextFirmwareVersion\n .mockReturnValueOnce(rightAsync(finalFirmwareRequiringMcuFlash))\n .mockReturnValueOnce(rightAsync(finalFirmwareSupportingLatestMcu));\n\n const result = await resolveOsUpdatePath(apiMock)({\n input: {\n getOsVersionResponse: {\n ...getOsVersionResponse,\n mcuSephVersion: \"1.0\",\n },\n },\n });\n\n expect(result.extract()).toEqual([\n {\n osuFirmware: firstOsuFirmware,\n finalFirmware: finalFirmwareRequiringMcuFlash,\n shouldFlashMcu: true,\n },\n {\n osuFirmware: secondOsuFirmware,\n finalFirmware: finalFirmwareSupportingLatestMcu,\n shouldFlashMcu: false,\n },\n ]);\n });\n });\n\n describe(\"Error\", () => {\n it(\"Should return ResolveOsUpdatePathError when the MCU list cannot be fetched\", async () => {\n const error = new Error(\"mcu list failed\");\n managerApiMock.getMcuList.mockReturnValueOnce(leftAsync(error));\n\n const result = await resolveOsUpdatePath(apiMock)({\n input: { getOsVersionResponse },\n });\n\n expect(result.isLeft()).toBe(true);\n result.mapLeft((e) => {\n expect(e).toBeInstanceOf(ResolveOsUpdatePathError);\n expect(e.originalError).toBe(error);\n });\n });\n\n it(\"Should return ResolveOsUpdatePathError when the current MCU version is unknown\", async () => {\n const result = await resolveOsUpdatePath(apiMock)({\n input: {\n getOsVersionResponse: {\n ...getOsVersionResponse,\n mcuSephVersion: \"9.9.9\",\n },\n },\n });\n\n expect(result.isLeft()).toBe(true);\n result.mapLeft((e) => {\n expect(e).toBeInstanceOf(ResolveOsUpdatePathError);\n expect(e.originalError).toBe(\"No MCU firmware found for version 9.9.9\");\n });\n });\n\n it(\"Should return ResolveOsUpdatePathError when no compatible MCU can be resolved for the next firmware\", async () => {\n managerApiMock.getNextFirmwareVersion.mockReturnValueOnce(\n rightAsync({\n ...firstFinalFirmware,\n mcuVersions: [42],\n }),\n );\n\n const result = await resolveOsUpdatePath(apiMock)({\n input: { getOsVersionResponse },\n });\n\n expect(result.isLeft()).toBe(true);\n result.mapLeft((e) => {\n expect(e).toBeInstanceOf(ResolveOsUpdatePathError);\n expect(e.originalError).toBe(\"No MCU firmware found for version null\");\n });\n });\n });\n});\n"],
5
+ "mappings": "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",
6
+ "names": ["import_purify_ts", "import_makeInternalApi", "import_ResolveOsUpdatePathDeviceActionErrors", "import_ResolveOsUpdatePath", "rightAsync", "value", "leftAsync", "error", "throwE", "apiMock", "getOsVersionResponse", "deviceVersion", "currentFirmware", "firstOsuFirmware", "secondOsuFirmware", "firstFinalFirmware", "secondFinalFirmware", "mcuList", "managerApiMock", "result", "osVersionResponse", "managerMcuList", "finalFirmwareRequiringMcuFlash", "finalFirmwareSupportingLatestMcu", "e"]
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";var p=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var d=Object.getOwnPropertyNames;var A=Object.prototype.hasOwnProperty;var D=(t,e)=>{for(var a in e)p(t,a,{get:e[a],enumerable:!0})},l=(t,e,a,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of d(e))!A.call(t,r)&&r!==a&&p(t,r,{get:()=>e[r],enumerable:!(s=i(e,r))||s.enumerable});return t};var u=t=>l(p({},"__esModule",{value:!0}),t);var O={};D(O,{ResolveOsUpdatePathSteps:()=>n});module.exports=u(O);var n=(o=>(o.Idle="idle",o.WaitForAppAndVersion="waitForAppAndVersion",o.GoToDashboard="goToDashboard",o.GetOsVersion="getOsVersion",o.ResolveOsUpdatePath="resolveOsUpdatePath",o))(n||{});0&&(module.exports={ResolveOsUpdatePathSteps});
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../src/api/device-action/OsUpdate/Resolve/types.ts"],
4
+ "sourcesContent": ["import {\n type DeviceActionState,\n type GetOsVersionResponse,\n type GoToDashboardDAError,\n type GoToDashboardDAIntermediateValue,\n type GoToDashboardDARequiredInteraction,\n type UserInteractionRequired,\n type WaitForAppAndVersionDAError,\n type WaitForAppAndVersionDAIntermediateValue,\n type WaitForAppAndVersionDARequiredInteraction,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { type OsUpdate } from \"@api/device-action/OsUpdate/Shared/types\";\n\nimport { type ResolveOsUpdatePathDAErrors } from \"./ResolveOsUpdatePathDeviceActionErrors\";\n\nexport type ResolveOsUpdatePathDAInput = {\n unlockTimeout: number;\n};\n\nexport type ResolveOsUpdatePathDAOutput = OsUpdate[];\n\nexport type ResolveOsUpdatePathDAError =\n | WaitForAppAndVersionDAError\n | GoToDashboardDAError\n | ResolveOsUpdatePathDAErrors;\n\nexport type ResolveOsUpdatePathDAIntermediateValue = (\n | WaitForAppAndVersionDAIntermediateValue\n | GoToDashboardDAIntermediateValue\n | {\n readonly requiredUserInteraction: ResolveOsUpdatePathDARequiredInteraction;\n }\n) & {\n step: ResolveOsUpdatePathSteps;\n};\n\nexport type ResolveOsUpdatePathDARequiredInteraction =\n | WaitForAppAndVersionDARequiredInteraction\n | GoToDashboardDARequiredInteraction\n | UserInteractionRequired.None;\n\nexport type ResolveOsUpdatePathDAInternalState = {\n error: ResolveOsUpdatePathDAError | null;\n currentApp: string | null;\n getOsVersionResponse: GetOsVersionResponse | null;\n osUpdates: OsUpdate[];\n};\n\nexport type ResolveOsUpdatePathDAState = DeviceActionState<\n ResolveOsUpdatePathDAOutput,\n ResolveOsUpdatePathDAError,\n ResolveOsUpdatePathDAIntermediateValue\n>;\n\nexport enum ResolveOsUpdatePathSteps {\n Idle = \"idle\",\n WaitForAppAndVersion = \"waitForAppAndVersion\",\n GoToDashboard = \"goToDashboard\",\n GetOsVersion = \"getOsVersion\",\n ResolveOsUpdatePath = \"resolveOsUpdatePath\",\n}\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,8BAAAE,IAAA,eAAAC,EAAAH,GAuDO,IAAKE,OACVA,EAAA,KAAO,OACPA,EAAA,qBAAuB,uBACvBA,EAAA,cAAgB,gBAChBA,EAAA,aAAe,eACfA,EAAA,oBAAsB,sBALZA,OAAA",
6
+ "names": ["types_exports", "__export", "ResolveOsUpdatePathSteps", "__toCommonJS"]
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";var u=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var h=Object.getOwnPropertyNames;var d=Object.prototype.hasOwnProperty;var D=(p,a)=>{for(var t in a)u(p,t,{get:a[t],enumerable:!0})},R=(p,a,t,r)=>{if(a&&typeof a=="object"||typeof a=="function")for(let s of h(a))!d.call(p,s)&&s!==t&&u(p,s,{get:()=>a[s],enumerable:!(r=m(a,s))||r.enumerable});return p};var E=p=>R(u({},"__esModule",{value:!0}),p);var x={};D(x,{RestoreAppsStorageDeviceAction:()=>I});module.exports=E(x);var n=require("@ledgerhq/device-management-kit"),i=require("purify-ts"),e=require("xstate"),g=require("../../../../device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage"),S=require("../../../../device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/InitRestoreAppStorage"),A=require("../../../../device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/RestoreAppStorage"),o=require("../../../../device-action/OsUpdate/Restore/RestoreAppsStorage/types"),c=require("../../../../device-action/OsUpdate/Shared/Substeps/GoToDashboard"),l=require("../../../../device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion");const y=p=>p.data!==void 0;class I extends n.XStateDeviceAction{makeStateMachine(a){return(0,e.setup)({types:{input:{},output:{},context:{}},actors:{waitForAppAndVersion:(0,l.waitForAppAndVersion)(a,this.input.unlockTimeout),goToDashboard:(0,c.goToDashboard)(a,this.input.unlockTimeout),initRestoreAppStorage:(0,e.fromPromise)((0,S.initRestoreAppStorage)(a)),restoreAppStorage:(0,e.fromPromise)((0,A.restoreAppStorage)(a,this.getLoggerFactory(a))),commitRestoreAppStorage:(0,e.fromPromise)((0,g.commitRestoreAppStorage)(a))},guards:{isDeviceOnDashboard:({context:t})=>(0,n.isDashboardName)(t._internalState.currentApp),hasError:({context:t})=>t._internalState.error!==null,hasMoreAppsWithStorage:({context:t})=>t._internalState.appsWithStorage.length>0&&t._internalState.currentAppStorageIndex<t._internalState.appsWithStorage.length},actions:{assignErrorFromEvent:(0,e.assign)({_internalState:t=>({...t.context._internalState,error:t.event.error})})}}).createMachine({id:"RestoreAppsStorageDeviceAction",initial:"WaitForAppAndVersion",context:({input:t})=>({input:{backupApps:t.backupApps,unlockTimeout:t.unlockTimeout,isMasterConsentGranted:t.isMasterConsentGranted},intermediateValue:{requiredUserInteraction:n.UserInteractionRequired.None,step:o.RestoreAppsStorageSteps.Idle},_internalState:{error:null,currentApp:null,appsWithStorage:[],currentAppStorageIndex:0,currentAppStorageName:null,currentAppStorageDataBytes:null,currentAppStorageDataLength:null,restoreAppsStorageResult:[]}}),states:{WaitForAppAndVersion:{entry:(0,e.assign)({intermediateValue:t=>({...t.context.intermediateValue,step:o.RestoreAppsStorageSteps.WaitForAppAndVersion})}),invoke:{src:"waitForAppAndVersion",input:({context:t})=>({unlockTimeout:t.input.unlockTimeout}),onSnapshot:{actions:(0,e.assign)({intermediateValue:t=>({...t.event.snapshot.context.intermediateValue,step:t.context.intermediateValue.step})})},onDone:{actions:(0,e.assign)({_internalState:t=>t.event.output.caseOf({Left:r=>({...t.context._internalState,error:r}),Right:r=>({...t.context._internalState,currentApp:r.name})})}),target:"CheckIfDeviceIsOnDashboard"},onError:{actions:"assignErrorFromEvent",target:"Error"}}},CheckIfDeviceIsOnDashboard:{always:[{guard:"hasError",target:"Error"},{guard:"isDeviceOnDashboard",target:"FilterAppsWithStorage"},{target:"GoToDashboard"}]},GoToDashboard:{entry:(0,e.assign)({intermediateValue:t=>({...t.context.intermediateValue,step:o.RestoreAppsStorageSteps.GoToDashboard})}),invoke:{src:"goToDashboard",input:({context:t})=>({unlockTimeout:t.input.unlockTimeout}),onSnapshot:{actions:(0,e.assign)({intermediateValue:t=>({...t.event.snapshot.context.intermediateValue,step:t.context.intermediateValue.step})})},onDone:{actions:(0,e.assign)({_internalState:t=>t.event.output.caseOf({Left:r=>({...t.context._internalState,error:r}),Right:()=>t.context._internalState})}),target:"CheckGoToDashboard"},onError:{actions:"assignErrorFromEvent",target:"Error"}}},CheckGoToDashboard:{always:[{guard:"hasError",target:"Error"},{target:"WaitForAppAndVersion"}]},FilterAppsWithStorage:{entry:(0,e.assign)({intermediateValue:t=>({...t.context.intermediateValue,step:o.RestoreAppsStorageSteps.FilterAppsWithStorage}),_internalState:t=>({...t.context._internalState,appsWithStorage:t.context.input.backupApps.filter(y)})}),always:{target:"CheckIfThereIsAppWithStorage"}},CheckIfThereIsAppWithStorage:{always:[{guard:"hasMoreAppsWithStorage",target:"ExtractAppData"},{target:"Success"}]},ExtractAppData:{entry:(0,e.assign)({intermediateValue:t=>({...t.context.intermediateValue,step:o.RestoreAppsStorageSteps.ExtractAppData}),_internalState:t=>{const r=t.context._internalState.appsWithStorage[t.context._internalState.currentAppStorageIndex],s=(0,n.hexaStringToBuffer)(r.data)??new Uint8Array(0);return{...t.context._internalState,currentAppStorageName:r.appName,currentAppStorageDataBytes:s,currentAppStorageDataLength:s.length}}}),always:{target:"InitRestoreAppStorage"}},InitRestoreAppStorage:{entry:(0,e.assign)({intermediateValue:t=>({...t.context.intermediateValue,step:o.RestoreAppsStorageSteps.InitRestoreAppStorage,requiredUserInteraction:t.context.input.isMasterConsentGranted?n.UserInteractionRequired.None:n.UserInteractionRequired.GrantConsent})}),exit:(0,e.assign)({intermediateValue:t=>({...t.context.intermediateValue,requiredUserInteraction:n.UserInteractionRequired.None})}),invoke:{src:"initRestoreAppStorage",input:({context:t})=>({appName:t._internalState.currentAppStorageName,appStorageDataLength:t._internalState.currentAppStorageDataLength}),onDone:[{guard:({event:t})=>t.output.isLeft(),actions:(0,e.assign)({_internalState:({event:t,context:r})=>({...r._internalState,error:t.output.extract()})}),target:"Error"},{guard:({event:t})=>t.output.extract()===o.InitRestoreAppStorageConsentResult.REJECTED,actions:(0,e.assign)({_internalState:({context:t})=>({...t._internalState,restoreAppsStorageResult:[...t._internalState.restoreAppsStorageResult,{appName:t._internalState.currentAppStorageName,restoredAppStorage:!1}],currentAppStorageIndex:t._internalState.currentAppStorageIndex+1,currentAppStorageName:null,currentAppStorageDataBytes:null,currentAppStorageDataLength:null})}),target:"CheckIfThereIsAppWithStorage"},{target:"RestoreAppStorage"}],onError:{actions:"assignErrorFromEvent",target:"Error"}}},RestoreAppStorage:{entry:(0,e.assign)({intermediateValue:t=>({...t.context.intermediateValue,step:o.RestoreAppsStorageSteps.RestoreAppStorage})}),invoke:{src:"restoreAppStorage",input:({context:t})=>({appStorageData:t._internalState.currentAppStorageDataBytes??new Uint8Array(0)}),onDone:{actions:(0,e.assign)({_internalState:t=>t.event.output.caseOf({Left:r=>({...t.context._internalState,error:r}),Right:()=>t.context._internalState})}),target:"CheckRestoreAppStorage"},onError:{actions:"assignErrorFromEvent",target:"Error"}}},CheckRestoreAppStorage:{always:[{guard:"hasError",target:"Error"},{target:"CommitRestoreAppStorage"}]},CommitRestoreAppStorage:{entry:(0,e.assign)({intermediateValue:t=>({...t.context.intermediateValue,step:o.RestoreAppsStorageSteps.CommitRestoreAppStorage})}),invoke:{src:"commitRestoreAppStorage",onDone:{actions:(0,e.assign)({_internalState:t=>t.event.output.caseOf({Left:r=>({...t.context._internalState,error:r}),Right:()=>({...t.context._internalState,restoreAppsStorageResult:[...t.context._internalState.restoreAppsStorageResult,{appName:t.context._internalState.currentAppStorageName,restoredAppStorage:!0}],currentAppStorageIndex:t.context._internalState.currentAppStorageIndex+1,currentAppStorageName:null,currentAppStorageDataBytes:null,currentAppStorageDataLength:null})})}),target:"CheckCommitRestoreAppStorage"},onError:{actions:"assignErrorFromEvent",target:"Error"}}},CheckCommitRestoreAppStorage:{always:[{guard:"hasError",target:"Error"},{target:"CheckIfThereIsAppWithStorage"}]},Success:{type:"final"},Error:{type:"final"}},output:({context:t})=>t._internalState.error!==null?(0,i.Left)(t._internalState.error):(0,i.Right)(t._internalState.restoreAppsStorageResult)})}}0&&(module.exports={RestoreAppsStorageDeviceAction});
2
+ //# sourceMappingURL=RestoreAppsStorageDeviceAction.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../../src/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceAction.ts"],
4
+ "sourcesContent": ["import {\n type DeviceActionStateMachine,\n hexaStringToBuffer,\n type InternalApi,\n isDashboardName,\n type StateMachineTypes,\n UserInteractionRequired,\n XStateDeviceAction,\n} from \"@ledgerhq/device-management-kit\";\nimport { Left, Right } from \"purify-ts\";\nimport { assign, fromPromise, setup } from \"xstate\";\n\nimport { type BackupApp } from \"@api/device-action/OsUpdate/Backup/types\";\nimport { type InitRestoreAppStorageError } from \"@api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceActionErrors\";\nimport { commitRestoreAppStorage } from \"@api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage\";\nimport { initRestoreAppStorage } from \"@api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/InitRestoreAppStorage\";\nimport { restoreAppStorage } from \"@api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/RestoreAppStorage\";\nimport {\n type BackupAppWithStorage,\n InitRestoreAppStorageConsentResult,\n type RestoreAppsStorageDAError,\n type RestoreAppsStorageDAInput,\n type RestoreAppsStorageDAIntermediateValue,\n type RestoreAppsStorageDAInternalState,\n type RestoreAppsStorageDAOutput,\n RestoreAppsStorageSteps,\n} from \"@api/device-action/OsUpdate/Restore/RestoreAppsStorage/types\";\nimport { goToDashboard } from \"@api/device-action/OsUpdate/Shared/Substeps/GoToDashboard\";\nimport { waitForAppAndVersion } from \"@api/device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion\";\n\nconst hasStorageData = (app: BackupApp): app is BackupAppWithStorage =>\n app.data !== undefined;\n\nexport class RestoreAppsStorageDeviceAction extends XStateDeviceAction<\n RestoreAppsStorageDAOutput,\n RestoreAppsStorageDAInput,\n RestoreAppsStorageDAError,\n RestoreAppsStorageDAIntermediateValue,\n RestoreAppsStorageDAInternalState\n> {\n makeStateMachine(\n internalAPI: InternalApi,\n ): DeviceActionStateMachine<\n RestoreAppsStorageDAOutput,\n RestoreAppsStorageDAInput,\n RestoreAppsStorageDAError,\n RestoreAppsStorageDAIntermediateValue,\n RestoreAppsStorageDAInternalState\n > {\n type types = StateMachineTypes<\n RestoreAppsStorageDAOutput,\n RestoreAppsStorageDAInput,\n RestoreAppsStorageDAError,\n RestoreAppsStorageDAIntermediateValue,\n RestoreAppsStorageDAInternalState\n >;\n\n return setup({\n types: {\n input: {} as types[\"input\"],\n output: {} as types[\"output\"],\n context: {} as types[\"context\"],\n } as types,\n actors: {\n waitForAppAndVersion: waitForAppAndVersion(\n internalAPI,\n this.input.unlockTimeout,\n ),\n goToDashboard: goToDashboard(internalAPI, this.input.unlockTimeout),\n initRestoreAppStorage: fromPromise(initRestoreAppStorage(internalAPI)),\n restoreAppStorage: fromPromise(\n restoreAppStorage(internalAPI, this.getLoggerFactory(internalAPI)),\n ),\n commitRestoreAppStorage: fromPromise(\n commitRestoreAppStorage(internalAPI),\n ),\n },\n guards: {\n isDeviceOnDashboard: ({ context }) =>\n isDashboardName(context._internalState.currentApp),\n hasError: ({ context }) => context._internalState.error !== null,\n hasMoreAppsWithStorage: ({ context }) =>\n context._internalState.appsWithStorage.length > 0 &&\n context._internalState.currentAppStorageIndex <\n context._internalState.appsWithStorage.length,\n },\n actions: {\n assignErrorFromEvent: assign({\n _internalState: (_) => ({\n ..._.context._internalState,\n error: _.event[\"error\"], // NOTE: should never happen\n }),\n }),\n },\n }).createMachine({\n id: \"RestoreAppsStorageDeviceAction\",\n initial: \"WaitForAppAndVersion\",\n context: ({ input }) => ({\n input: {\n backupApps: input.backupApps,\n unlockTimeout: input.unlockTimeout,\n isMasterConsentGranted: input.isMasterConsentGranted,\n },\n intermediateValue: {\n requiredUserInteraction: UserInteractionRequired.None,\n step: RestoreAppsStorageSteps.Idle,\n },\n _internalState: {\n error: null,\n currentApp: null,\n appsWithStorage: [],\n currentAppStorageIndex: 0,\n currentAppStorageName: null,\n currentAppStorageDataBytes: null,\n currentAppStorageDataLength: null,\n restoreAppsStorageResult: [],\n },\n }),\n states: {\n WaitForAppAndVersion: {\n entry: assign({\n intermediateValue: (_) => ({\n ..._.context.intermediateValue,\n step: RestoreAppsStorageSteps.WaitForAppAndVersion,\n }),\n }),\n invoke: {\n src: \"waitForAppAndVersion\",\n input: ({ context }) => ({\n unlockTimeout: context.input.unlockTimeout,\n }),\n onSnapshot: {\n actions: assign({\n intermediateValue: (_) => ({\n ..._.event.snapshot.context.intermediateValue,\n step: _.context.intermediateValue.step,\n }),\n }),\n },\n onDone: {\n actions: assign({\n _internalState: (_) => {\n return _.event.output.caseOf<RestoreAppsStorageDAInternalState>(\n {\n Left: (error) => ({\n ..._.context._internalState,\n error,\n }),\n Right: (output) => ({\n ..._.context._internalState,\n currentApp: output.name,\n }),\n },\n );\n },\n }),\n target: \"CheckIfDeviceIsOnDashboard\",\n },\n onError: {\n actions: \"assignErrorFromEvent\",\n target: \"Error\",\n },\n },\n },\n CheckIfDeviceIsOnDashboard: {\n always: [\n {\n guard: \"hasError\",\n target: \"Error\",\n },\n {\n guard: \"isDeviceOnDashboard\",\n target: \"FilterAppsWithStorage\",\n },\n {\n target: \"GoToDashboard\",\n },\n ],\n },\n GoToDashboard: {\n entry: assign({\n intermediateValue: (_) => ({\n ..._.context.intermediateValue,\n step: RestoreAppsStorageSteps.GoToDashboard,\n }),\n }),\n invoke: {\n src: \"goToDashboard\",\n input: ({ context }) => ({\n unlockTimeout: context.input.unlockTimeout,\n }),\n onSnapshot: {\n actions: assign({\n intermediateValue: (_) => ({\n ..._.event.snapshot.context.intermediateValue,\n step: _.context.intermediateValue.step,\n }),\n }),\n },\n onDone: {\n actions: assign({\n _internalState: (_) => {\n return _.event.output.caseOf<RestoreAppsStorageDAInternalState>(\n {\n Left: (error) => ({\n ..._.context._internalState,\n error,\n }),\n Right: () => _.context._internalState,\n },\n );\n },\n }),\n target: \"CheckGoToDashboard\",\n },\n onError: {\n actions: \"assignErrorFromEvent\",\n target: \"Error\",\n },\n },\n },\n CheckGoToDashboard: {\n always: [\n {\n guard: \"hasError\",\n target: \"Error\",\n },\n {\n target: \"WaitForAppAndVersion\",\n },\n ],\n },\n FilterAppsWithStorage: {\n entry: assign({\n intermediateValue: (_) => ({\n ..._.context.intermediateValue,\n step: RestoreAppsStorageSteps.FilterAppsWithStorage,\n }),\n _internalState: (_) => ({\n ..._.context._internalState,\n appsWithStorage:\n _.context.input.backupApps.filter(hasStorageData),\n }),\n }),\n always: {\n target: \"CheckIfThereIsAppWithStorage\",\n },\n },\n CheckIfThereIsAppWithStorage: {\n always: [\n {\n guard: \"hasMoreAppsWithStorage\",\n target: \"ExtractAppData\",\n },\n {\n target: \"Success\",\n },\n ],\n },\n ExtractAppData: {\n entry: assign({\n intermediateValue: (_) => ({\n ..._.context.intermediateValue,\n step: RestoreAppsStorageSteps.ExtractAppData,\n }),\n _internalState: (_) => {\n const currentAppWithStorage =\n _.context._internalState.appsWithStorage[\n _.context._internalState.currentAppStorageIndex\n ]!;\n const currentAppStorageDataBytes =\n hexaStringToBuffer(currentAppWithStorage.data) ??\n new Uint8Array(0);\n return {\n ..._.context._internalState,\n currentAppStorageName: currentAppWithStorage.appName,\n currentAppStorageDataBytes,\n currentAppStorageDataLength: currentAppStorageDataBytes.length,\n };\n },\n }),\n always: {\n target: \"InitRestoreAppStorage\",\n },\n },\n InitRestoreAppStorage: {\n entry: assign({\n intermediateValue: (_) => ({\n ..._.context.intermediateValue,\n step: RestoreAppsStorageSteps.InitRestoreAppStorage,\n requiredUserInteraction: _.context.input.isMasterConsentGranted\n ? UserInteractionRequired.None\n : UserInteractionRequired.GrantConsent,\n }),\n }),\n exit: assign({\n intermediateValue: (_) => ({\n ..._.context.intermediateValue,\n requiredUserInteraction: UserInteractionRequired.None,\n }),\n }),\n invoke: {\n src: \"initRestoreAppStorage\",\n input: ({ context }) => ({\n appName: context._internalState.currentAppStorageName!,\n appStorageDataLength:\n context._internalState.currentAppStorageDataLength!,\n }),\n onDone: [\n {\n guard: ({ event }) => event.output.isLeft(),\n actions: assign({\n _internalState: ({ event, context }) => ({\n ...context._internalState,\n error: event.output.extract() as InitRestoreAppStorageError,\n }),\n }),\n target: \"Error\",\n },\n {\n guard: ({ event }) =>\n event.output.extract() ===\n InitRestoreAppStorageConsentResult.REJECTED,\n actions: assign({\n _internalState: ({ context }) => ({\n ...context._internalState,\n restoreAppsStorageResult: [\n ...context._internalState.restoreAppsStorageResult,\n {\n appName: context._internalState.currentAppStorageName!,\n restoredAppStorage: false,\n },\n ],\n currentAppStorageIndex:\n context._internalState.currentAppStorageIndex + 1,\n currentAppStorageName: null,\n currentAppStorageDataBytes: null,\n currentAppStorageDataLength: null,\n }),\n }),\n target: \"CheckIfThereIsAppWithStorage\",\n },\n {\n target: \"RestoreAppStorage\",\n },\n ],\n onError: {\n actions: \"assignErrorFromEvent\",\n target: \"Error\",\n },\n },\n },\n RestoreAppStorage: {\n entry: assign({\n intermediateValue: (_) => ({\n ..._.context.intermediateValue,\n step: RestoreAppsStorageSteps.RestoreAppStorage,\n }),\n }),\n invoke: {\n src: \"restoreAppStorage\",\n input: ({ context }) => ({\n appStorageData:\n context._internalState.currentAppStorageDataBytes ??\n new Uint8Array(0),\n }),\n onDone: {\n actions: assign({\n _internalState: (_) => {\n return _.event.output.caseOf<RestoreAppsStorageDAInternalState>(\n {\n Left: (error) => ({\n ..._.context._internalState,\n error,\n }),\n Right: () => _.context._internalState,\n },\n );\n },\n }),\n target: \"CheckRestoreAppStorage\",\n },\n onError: {\n actions: \"assignErrorFromEvent\",\n target: \"Error\",\n },\n },\n },\n CheckRestoreAppStorage: {\n always: [\n {\n guard: \"hasError\",\n target: \"Error\",\n },\n {\n target: \"CommitRestoreAppStorage\",\n },\n ],\n },\n CommitRestoreAppStorage: {\n entry: assign({\n intermediateValue: (_) => ({\n ..._.context.intermediateValue,\n step: RestoreAppsStorageSteps.CommitRestoreAppStorage,\n }),\n }),\n invoke: {\n src: \"commitRestoreAppStorage\",\n onDone: {\n actions: assign({\n _internalState: (_) => {\n return _.event.output.caseOf<RestoreAppsStorageDAInternalState>(\n {\n Left: (error) => ({\n ..._.context._internalState,\n error,\n }),\n Right: () => ({\n ..._.context._internalState,\n restoreAppsStorageResult: [\n ..._.context._internalState.restoreAppsStorageResult,\n {\n appName:\n _.context._internalState.currentAppStorageName!,\n restoredAppStorage: true,\n },\n ],\n currentAppStorageIndex:\n _.context._internalState.currentAppStorageIndex + 1,\n currentAppStorageName: null,\n currentAppStorageDataBytes: null,\n currentAppStorageDataLength: null,\n }),\n },\n );\n },\n }),\n target: \"CheckCommitRestoreAppStorage\",\n },\n onError: {\n actions: \"assignErrorFromEvent\",\n target: \"Error\",\n },\n },\n },\n CheckCommitRestoreAppStorage: {\n always: [\n {\n guard: \"hasError\",\n target: \"Error\",\n },\n {\n target: \"CheckIfThereIsAppWithStorage\",\n },\n ],\n },\n Success: {\n type: \"final\",\n },\n Error: {\n type: \"final\",\n },\n },\n output: ({ context }) => {\n if (context._internalState.error !== null) {\n return Left(context._internalState.error);\n }\n return Right(context._internalState.restoreAppsStorageResult);\n },\n });\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["RestoreAppsStorageDeviceAction_exports", "__export", "RestoreAppsStorageDeviceAction", "__toCommonJS", "import_device_management_kit", "import_purify_ts", "import_xstate", "import_CommitRestoreAppStorage", "import_InitRestoreAppStorage", "import_RestoreAppStorage", "import_types", "import_GoToDashboard", "import_WaitForAppAndVersion", "hasStorageData", "app", "internalAPI", "context", "_", "input", "error", "output", "currentAppWithStorage", "currentAppStorageDataBytes", "event"]
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";var s=require("@ledgerhq/device-management-kit"),a=require("purify-ts"),E=require("xstate"),A=require("../../../../device-action/__test-utils__/makeInternalApi"),d=require("../../../../device-action/__test-utils__/testDeviceActionStates"),v=require("../../../../device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceAction"),R=require("../../../../device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceActionErrors"),V=require("../../../../device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage"),W=require("../../../../device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/InitRestoreAppStorage"),F=require("../../../../device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/RestoreAppStorage"),e=require("../../../../device-action/OsUpdate/Restore/RestoreAppsStorage/types"),b=require("../../../../device-action/OsUpdate/Shared/Substeps/GoToDashboard"),w=require("../../../../device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion");vi.mock("@api/device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion");vi.mock("@api/device-action/OsUpdate/Shared/Substeps/GoToDashboard");vi.mock("@api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/InitRestoreAppStorage");vi.mock("@api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/RestoreAppStorage");vi.mock("@api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage");const o=(n,f=s.UserInteractionRequired.None)=>({status:s.DeviceActionStatus.Pending,intermediateValue:{requiredUserInteraction:f,step:n}}),D=n=>({status:s.DeviceActionStatus.Completed,output:n}),k=n=>({status:s.DeviceActionStatus.Error,error:n}),N=n=>(0,E.createMachine)({initial:"ready",states:{ready:{after:{0:"done"},entry:(0,E.assign)({intermediateValue:()=>({requiredUserInteraction:s.UserInteractionRequired.None})})},done:{type:"final"}},output:n}),l=n=>N(()=>n);describe("RestoreAppsStorageDeviceAction",()=>{beforeEach(()=>{vi.resetAllMocks()});const n=(t="BOLOS")=>vi.mocked(w.waitForAppAndVersion).mockReturnValue(l((0,a.Right)({name:t,version:"1.0.0"}))),f=t=>{const r=[...t];vi.mocked(w.waitForAppAndVersion).mockReturnValue(N(()=>(0,a.Right)({name:r.shift()??"BOLOS",version:"1.0.0"})))},S=(t=(0,a.Right)(void 0))=>vi.mocked(b.goToDashboard).mockReturnValue(l(t)),m=(t=[(0,a.Right)(e.InitRestoreAppStorageConsentResult.GRANTED)])=>{const r=[...t];vi.mocked(W.initRestoreAppStorage).mockReturnValue(()=>Promise.resolve(r.shift()??(0,a.Right)(e.InitRestoreAppStorageConsentResult.GRANTED)))},u=(t=(0,a.Right)(void 0))=>vi.mocked(F.restoreAppStorage).mockReturnValue(()=>Promise.resolve(t)),g=(t=(0,a.Right)(void 0))=>vi.mocked(V.commitRestoreAppStorage).mockReturnValue(()=>Promise.resolve(t)),c=(t=[],r=!1)=>new v.RestoreAppsStorageDeviceAction({input:{backupApps:t,unlockTimeout:3e4,isMasterConsentGranted:r}});describe("Success",()=>{it("should restore storage for every app that has one, skipping apps without storage",()=>new Promise((t,r)=>{n(),S(),m([(0,a.Right)(e.InitRestoreAppStorageConsentResult.GRANTED),(0,a.Right)(e.InitRestoreAppStorageConsentResult.GRANTED)]),u(),g();const p=[{appName:"AppWithStorage1",data:"0xaa"},{appName:"AppNoStorage",data:void 0},{appName:"AppWithStorage2",data:"0xbb"}],i=[o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),o(e.RestoreAppsStorageSteps.InitRestoreAppStorage,s.UserInteractionRequired.GrantConsent),o(e.RestoreAppsStorageSteps.RestoreAppStorage),o(e.RestoreAppsStorageSteps.CommitRestoreAppStorage),o(e.RestoreAppsStorageSteps.InitRestoreAppStorage,s.UserInteractionRequired.GrantConsent),o(e.RestoreAppsStorageSteps.RestoreAppStorage),o(e.RestoreAppsStorageSteps.CommitRestoreAppStorage),D([{appName:"AppWithStorage1",restoredAppStorage:!0},{appName:"AppWithStorage2",restoredAppStorage:!0}])];(0,d.testDeviceActionStates)(c(p),i,(0,A.makeDeviceActionInternalApiMock)(),{onDone:t,onError:r})})),it("should not require grant consent user interaction when isMasterConsentGranted is true",()=>new Promise((t,r)=>{n(),S(),m([(0,a.Right)(e.InitRestoreAppStorageConsentResult.GRANTED)]),u(),g();const p=[{appName:"AppWithStorage1",data:"0xaa"}],i=[o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),o(e.RestoreAppsStorageSteps.InitRestoreAppStorage),o(e.RestoreAppsStorageSteps.RestoreAppStorage),o(e.RestoreAppsStorageSteps.CommitRestoreAppStorage),D([{appName:"AppWithStorage1",restoredAppStorage:!0}])];(0,d.testDeviceActionStates)(c(p,!0),i,(0,A.makeDeviceActionInternalApiMock)(),{onDone:t,onError:r})})),it("should complete with an empty result when no app has storage to restore",()=>new Promise((t,r)=>{n(),S();const p=[o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),D([])];(0,d.testDeviceActionStates)(c([]),p,(0,A.makeDeviceActionInternalApiMock)(),{onDone:t,onError:r})})),it("should go to dashboard and wait for app and version again when an app is open",()=>new Promise((t,r)=>{f(["Bitcoin","BOLOS"]),S();const p=[o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),o(e.RestoreAppsStorageSteps.GoToDashboard),o(e.RestoreAppsStorageSteps.GoToDashboard),o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),D([])];(0,d.testDeviceActionStates)(c([]),p,(0,A.makeDeviceActionInternalApiMock)(),{onDone:t,onError:r})})),it("should record restoredAppStorage: false and move on when consent is rejected",()=>new Promise((t,r)=>{n(),S(),m([(0,a.Right)(e.InitRestoreAppStorageConsentResult.REJECTED)]),u(),g();const p=[{appName:"AppWithStorage1",data:"0xaa"}],i=[o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),o(e.RestoreAppsStorageSteps.InitRestoreAppStorage,s.UserInteractionRequired.GrantConsent),D([{appName:"AppWithStorage1",restoredAppStorage:!1}])];(0,d.testDeviceActionStates)(c(p),i,(0,A.makeDeviceActionInternalApiMock)(),{onDone:t,onError:r})}))}),describe("Error",()=>{it("should go to Error when waitForAppAndVersion returns Left",()=>new Promise((t,r)=>{const p=new s.UnknownDAError("waitForAppAndVersion failed");vi.mocked(w.waitForAppAndVersion).mockReturnValue(l((0,a.Left)(p)));const i=[o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),k(p)];(0,d.testDeviceActionStates)(c([]),i,(0,A.makeDeviceActionInternalApiMock)(),{onDone:t,onError:r})})),it("should go to Error when goToDashboard returns Left",()=>new Promise((t,r)=>{n("Bitcoin");const p=new s.UnknownDAError("goToDashboard failed");S((0,a.Left)(p));const i=[o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),o(e.RestoreAppsStorageSteps.GoToDashboard),o(e.RestoreAppsStorageSteps.GoToDashboard),k(p)];(0,d.testDeviceActionStates)(c([]),i,(0,A.makeDeviceActionInternalApiMock)(),{onDone:t,onError:r})})),it("should go to Error when initRestoreAppStorage fails with a fatal error",()=>new Promise((t,r)=>{n(),S();const p=new R.InitRestoreAppStorageError(new Error("command failed"));m([(0,a.Left)(p)]),u(),g();const i=[{appName:"AppWithStorage1",data:"0xaa"}],h=[o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),o(e.RestoreAppsStorageSteps.InitRestoreAppStorage,s.UserInteractionRequired.GrantConsent),k(p)];(0,d.testDeviceActionStates)(c(i),h,(0,A.makeDeviceActionInternalApiMock)(),{onDone:t,onError:r})})),it("should go to Error when restoreAppStorage returns Left",()=>new Promise((t,r)=>{n(),S(),m([(0,a.Right)(e.InitRestoreAppStorageConsentResult.GRANTED)]);const p=new R.RestoreAppStorageError(new Error("chunk failed"));u((0,a.Left)(p)),g();const i=[{appName:"AppWithStorage1",data:"0xaa"}],h=[o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),o(e.RestoreAppsStorageSteps.InitRestoreAppStorage,s.UserInteractionRequired.GrantConsent),o(e.RestoreAppsStorageSteps.RestoreAppStorage),k(p)];(0,d.testDeviceActionStates)(c(i),h,(0,A.makeDeviceActionInternalApiMock)(),{onDone:t,onError:r})})),it("should go to Error when commitRestoreAppStorage returns Left",()=>new Promise((t,r)=>{n(),S(),m([(0,a.Right)(e.InitRestoreAppStorageConsentResult.GRANTED)]),u();const p=new R.CommitRestoreAppStorageError(new Error("commit failed"));g((0,a.Left)(p));const i=[{appName:"AppWithStorage1",data:"0xaa"}],h=[o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),o(e.RestoreAppsStorageSteps.WaitForAppAndVersion),o(e.RestoreAppsStorageSteps.InitRestoreAppStorage,s.UserInteractionRequired.GrantConsent),o(e.RestoreAppsStorageSteps.RestoreAppStorage),o(e.RestoreAppsStorageSteps.CommitRestoreAppStorage),k(p)];(0,d.testDeviceActionStates)(c(i),h,(0,A.makeDeviceActionInternalApiMock)(),{onDone:t,onError:r})}))})});
2
+ //# sourceMappingURL=RestoreAppsStorageDeviceAction.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../../src/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceAction.test.ts"],
4
+ "sourcesContent": ["import {\n DeviceActionStatus,\n UnknownDAError,\n UserInteractionRequired,\n} from \"@ledgerhq/device-management-kit\";\nimport { type Either, Left, Right } from \"purify-ts\";\nimport { assign, createMachine } from \"xstate\";\n\nimport { makeDeviceActionInternalApiMock } from \"@api/device-action/__test-utils__/makeInternalApi\";\nimport { testDeviceActionStates } from \"@api/device-action/__test-utils__/testDeviceActionStates\";\nimport { type BackupApp } from \"@api/device-action/OsUpdate/Backup/types\";\nimport { RestoreAppsStorageDeviceAction } from \"@api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceAction\";\nimport {\n CommitRestoreAppStorageError,\n InitRestoreAppStorageError,\n RestoreAppStorageError,\n} from \"@api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceActionErrors\";\nimport { commitRestoreAppStorage } from \"@api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage\";\nimport { initRestoreAppStorage } from \"@api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/InitRestoreAppStorage\";\nimport { restoreAppStorage } from \"@api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/RestoreAppStorage\";\nimport {\n InitRestoreAppStorageConsentResult,\n type RestoreAppsStorageDAError,\n type RestoreAppsStorageDAOutput,\n type RestoreAppsStorageDARequiredInteraction,\n type RestoreAppsStorageDAState,\n RestoreAppsStorageSteps,\n} from \"@api/device-action/OsUpdate/Restore/RestoreAppsStorage/types\";\nimport { goToDashboard } from \"@api/device-action/OsUpdate/Shared/Substeps/GoToDashboard\";\nimport { waitForAppAndVersion } from \"@api/device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion\";\n\nvi.mock(\"@api/device-action/OsUpdate/Shared/Substeps/WaitForAppAndVersion\");\nvi.mock(\"@api/device-action/OsUpdate/Shared/Substeps/GoToDashboard\");\nvi.mock(\n \"@api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/InitRestoreAppStorage\",\n);\nvi.mock(\n \"@api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/RestoreAppStorage\",\n);\nvi.mock(\n \"@api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage\",\n);\n\n// \u2500\u2500\u2500 State builders \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\nconst pendingState = (\n step: RestoreAppsStorageSteps,\n requiredUserInteraction: RestoreAppsStorageDARequiredInteraction = UserInteractionRequired.None,\n): RestoreAppsStorageDAState => ({\n status: DeviceActionStatus.Pending,\n intermediateValue: {\n requiredUserInteraction,\n step,\n },\n});\n\nconst completedState = (\n output: RestoreAppsStorageDAOutput,\n): RestoreAppsStorageDAState => ({\n status: DeviceActionStatus.Completed,\n output,\n});\n\nconst errorState = (\n error: RestoreAppsStorageDAError,\n): RestoreAppsStorageDAState => ({\n status: DeviceActionStatus.Error,\n error,\n});\n\n// \u2500\u2500\u2500 Mock actor factory \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n//\n// Creates a minimal XState machine that immediately completes (after 0 ms) with\n// the given Either output. The machine exposes the `intermediateValue` shape\n// required by the parent's `onSnapshot` handler.\n\nconst createMockActorMachineFromOutput = (\n output: () => Either<unknown, unknown>,\n) =>\n createMachine({\n initial: \"ready\",\n states: {\n ready: {\n after: { 0: \"done\" },\n entry: assign({\n intermediateValue: () => ({\n requiredUserInteraction: UserInteractionRequired.None,\n }),\n }),\n },\n done: { type: \"final\" },\n },\n output,\n });\n\nconst createMockActorMachine = (output: Either<unknown, unknown>) =>\n createMockActorMachineFromOutput(() => output);\n\n// \u2500\u2500\u2500 Tests \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\ndescribe(\"RestoreAppsStorageDeviceAction\", () => {\n beforeEach(() => {\n vi.resetAllMocks();\n });\n\n // \u2500\u2500\u2500 Setup helpers \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\n const setupWaitForAppAndVersion = (appName = \"BOLOS\") =>\n vi\n .mocked(waitForAppAndVersion)\n .mockReturnValue(\n createMockActorMachine(\n Right({ name: appName, version: \"1.0.0\" }),\n ) as unknown as ReturnType<typeof waitForAppAndVersion>,\n );\n\n const setupWaitForAppAndVersionSequence = (appNames: string[]) => {\n const remainingAppNames = [...appNames];\n vi.mocked(waitForAppAndVersion).mockReturnValue(\n createMockActorMachineFromOutput(() =>\n Right({\n name: remainingAppNames.shift() ?? \"BOLOS\",\n version: \"1.0.0\",\n }),\n ) as unknown as ReturnType<typeof waitForAppAndVersion>,\n );\n };\n\n const setupGoToDashboard = (\n output: Either<unknown, unknown> = Right(undefined),\n ) =>\n vi\n .mocked(goToDashboard)\n .mockReturnValue(\n createMockActorMachine(output) as unknown as ReturnType<\n typeof goToDashboard\n >,\n );\n\n const setupInitRestoreAppStorage = (\n results: Either<\n InitRestoreAppStorageError,\n InitRestoreAppStorageConsentResult\n >[] = [Right(InitRestoreAppStorageConsentResult.GRANTED)],\n ) => {\n const queue = [...results];\n vi.mocked(initRestoreAppStorage).mockReturnValue(() =>\n Promise.resolve(\n queue.shift() ?? Right(InitRestoreAppStorageConsentResult.GRANTED),\n ),\n );\n };\n\n const setupRestoreAppStorage = (\n result: Either<RestoreAppStorageError, void> = Right(undefined),\n ) =>\n vi.mocked(restoreAppStorage).mockReturnValue(() => Promise.resolve(result));\n\n const setupCommitRestoreAppStorage = (\n result: Either<CommitRestoreAppStorageError, void> = Right(undefined),\n ) =>\n vi\n .mocked(commitRestoreAppStorage)\n .mockReturnValue(() => Promise.resolve(result));\n\n const makeDeviceAction = (\n backupApp: BackupApp[] = [],\n isMasterConsentGranted = false,\n ) =>\n new RestoreAppsStorageDeviceAction({\n input: {\n backupApps: backupApp,\n unlockTimeout: 30_000,\n isMasterConsentGranted,\n },\n });\n\n // \u2500\u2500\u2500 Success \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\n describe(\"Success\", () => {\n it(\"should restore storage for every app that has one, skipping apps without storage\", () =>\n new Promise<void>((resolve, reject) => {\n setupWaitForAppAndVersion();\n setupGoToDashboard();\n setupInitRestoreAppStorage([\n Right(InitRestoreAppStorageConsentResult.GRANTED),\n Right(InitRestoreAppStorageConsentResult.GRANTED),\n ]);\n setupRestoreAppStorage();\n setupCommitRestoreAppStorage();\n\n const backupApp: BackupApp[] = [\n { appName: \"AppWithStorage1\", data: \"0xaa\" },\n { appName: \"AppNoStorage\", data: undefined },\n { appName: \"AppWithStorage2\", data: \"0xbb\" },\n ];\n\n const expectedStates: RestoreAppsStorageDAState[] = [\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n pendingState(\n RestoreAppsStorageSteps.InitRestoreAppStorage,\n UserInteractionRequired.GrantConsent,\n ),\n pendingState(RestoreAppsStorageSteps.RestoreAppStorage),\n pendingState(RestoreAppsStorageSteps.CommitRestoreAppStorage),\n pendingState(\n RestoreAppsStorageSteps.InitRestoreAppStorage,\n UserInteractionRequired.GrantConsent,\n ),\n pendingState(RestoreAppsStorageSteps.RestoreAppStorage),\n pendingState(RestoreAppsStorageSteps.CommitRestoreAppStorage),\n completedState([\n { appName: \"AppWithStorage1\", restoredAppStorage: true },\n { appName: \"AppWithStorage2\", restoredAppStorage: true },\n ]),\n ];\n\n testDeviceActionStates(\n makeDeviceAction(backupApp),\n expectedStates,\n makeDeviceActionInternalApiMock(),\n { onDone: resolve, onError: reject },\n );\n }));\n\n it(\"should not require grant consent user interaction when isMasterConsentGranted is true\", () =>\n new Promise<void>((resolve, reject) => {\n setupWaitForAppAndVersion();\n setupGoToDashboard();\n setupInitRestoreAppStorage([\n Right(InitRestoreAppStorageConsentResult.GRANTED),\n ]);\n setupRestoreAppStorage();\n setupCommitRestoreAppStorage();\n\n const backupApp: BackupApp[] = [\n { appName: \"AppWithStorage1\", data: \"0xaa\" },\n ];\n\n const expectedStates: RestoreAppsStorageDAState[] = [\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n pendingState(RestoreAppsStorageSteps.InitRestoreAppStorage),\n pendingState(RestoreAppsStorageSteps.RestoreAppStorage),\n pendingState(RestoreAppsStorageSteps.CommitRestoreAppStorage),\n completedState([\n { appName: \"AppWithStorage1\", restoredAppStorage: true },\n ]),\n ];\n\n testDeviceActionStates(\n makeDeviceAction(backupApp, true),\n expectedStates,\n makeDeviceActionInternalApiMock(),\n { onDone: resolve, onError: reject },\n );\n }));\n\n it(\"should complete with an empty result when no app has storage to restore\", () =>\n new Promise<void>((resolve, reject) => {\n setupWaitForAppAndVersion();\n setupGoToDashboard();\n\n const expectedStates: RestoreAppsStorageDAState[] = [\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n completedState([]),\n ];\n\n testDeviceActionStates(\n makeDeviceAction([]),\n expectedStates,\n makeDeviceActionInternalApiMock(),\n { onDone: resolve, onError: reject },\n );\n }));\n\n it(\"should go to dashboard and wait for app and version again when an app is open\", () =>\n new Promise<void>((resolve, reject) => {\n setupWaitForAppAndVersionSequence([\"Bitcoin\", \"BOLOS\"]);\n setupGoToDashboard();\n\n const expectedStates: RestoreAppsStorageDAState[] = [\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n pendingState(RestoreAppsStorageSteps.GoToDashboard),\n pendingState(RestoreAppsStorageSteps.GoToDashboard),\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n completedState([]),\n ];\n\n testDeviceActionStates(\n makeDeviceAction([]),\n expectedStates,\n makeDeviceActionInternalApiMock(),\n { onDone: resolve, onError: reject },\n );\n }));\n\n it(\"should record restoredAppStorage: false and move on when consent is rejected\", () =>\n new Promise<void>((resolve, reject) => {\n setupWaitForAppAndVersion();\n setupGoToDashboard();\n setupInitRestoreAppStorage([\n Right(InitRestoreAppStorageConsentResult.REJECTED),\n ]);\n setupRestoreAppStorage(); // registered in actors but never invoked (consent rejected)\n setupCommitRestoreAppStorage(); // registered in actors but never invoked (consent rejected)\n\n const backupApp: BackupApp[] = [\n { appName: \"AppWithStorage1\", data: \"0xaa\" },\n ];\n\n const expectedStates: RestoreAppsStorageDAState[] = [\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n pendingState(\n RestoreAppsStorageSteps.InitRestoreAppStorage,\n UserInteractionRequired.GrantConsent,\n ),\n completedState([\n { appName: \"AppWithStorage1\", restoredAppStorage: false },\n ]),\n ];\n\n testDeviceActionStates(\n makeDeviceAction(backupApp),\n expectedStates,\n makeDeviceActionInternalApiMock(),\n { onDone: resolve, onError: reject },\n );\n }));\n });\n\n // \u2500\u2500\u2500 Error \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\n describe(\"Error\", () => {\n it(\"should go to Error when waitForAppAndVersion returns Left\", () =>\n new Promise<void>((resolve, reject) => {\n const error = new UnknownDAError(\"waitForAppAndVersion failed\");\n vi.mocked(waitForAppAndVersion).mockReturnValue(\n createMockActorMachine(Left(error)) as unknown as ReturnType<\n typeof waitForAppAndVersion\n >,\n );\n\n const expectedStates: RestoreAppsStorageDAState[] = [\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n errorState(error),\n ];\n\n testDeviceActionStates(\n makeDeviceAction([]),\n expectedStates,\n makeDeviceActionInternalApiMock(),\n { onDone: resolve, onError: reject },\n );\n }));\n\n it(\"should go to Error when goToDashboard returns Left\", () =>\n new Promise<void>((resolve, reject) => {\n setupWaitForAppAndVersion(\"Bitcoin\");\n const error = new UnknownDAError(\"goToDashboard failed\");\n setupGoToDashboard(Left(error));\n\n const expectedStates: RestoreAppsStorageDAState[] = [\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n pendingState(RestoreAppsStorageSteps.GoToDashboard),\n pendingState(RestoreAppsStorageSteps.GoToDashboard),\n errorState(error),\n ];\n\n testDeviceActionStates(\n makeDeviceAction([]),\n expectedStates,\n makeDeviceActionInternalApiMock(),\n { onDone: resolve, onError: reject },\n );\n }));\n\n it(\"should go to Error when initRestoreAppStorage fails with a fatal error\", () =>\n new Promise<void>((resolve, reject) => {\n setupWaitForAppAndVersion();\n setupGoToDashboard();\n const error = new InitRestoreAppStorageError(\n new Error(\"command failed\"),\n );\n setupInitRestoreAppStorage([Left(error)]);\n setupRestoreAppStorage(); // registered in actors but never invoked\n setupCommitRestoreAppStorage(); // registered in actors but never invoked\n\n const backupApp: BackupApp[] = [\n { appName: \"AppWithStorage1\", data: \"0xaa\" },\n ];\n\n const expectedStates: RestoreAppsStorageDAState[] = [\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n pendingState(\n RestoreAppsStorageSteps.InitRestoreAppStorage,\n UserInteractionRequired.GrantConsent,\n ),\n errorState(error),\n ];\n\n testDeviceActionStates(\n makeDeviceAction(backupApp),\n expectedStates,\n makeDeviceActionInternalApiMock(),\n { onDone: resolve, onError: reject },\n );\n }));\n\n it(\"should go to Error when restoreAppStorage returns Left\", () =>\n new Promise<void>((resolve, reject) => {\n setupWaitForAppAndVersion();\n setupGoToDashboard();\n setupInitRestoreAppStorage([\n Right(InitRestoreAppStorageConsentResult.GRANTED),\n ]);\n const error = new RestoreAppStorageError(new Error(\"chunk failed\"));\n setupRestoreAppStorage(Left(error));\n setupCommitRestoreAppStorage(); // registered in actors but never invoked\n\n const backupApp: BackupApp[] = [\n { appName: \"AppWithStorage1\", data: \"0xaa\" },\n ];\n\n const expectedStates: RestoreAppsStorageDAState[] = [\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n pendingState(\n RestoreAppsStorageSteps.InitRestoreAppStorage,\n UserInteractionRequired.GrantConsent,\n ),\n pendingState(RestoreAppsStorageSteps.RestoreAppStorage),\n errorState(error),\n ];\n\n testDeviceActionStates(\n makeDeviceAction(backupApp),\n expectedStates,\n makeDeviceActionInternalApiMock(),\n { onDone: resolve, onError: reject },\n );\n }));\n\n it(\"should go to Error when commitRestoreAppStorage returns Left\", () =>\n new Promise<void>((resolve, reject) => {\n setupWaitForAppAndVersion();\n setupGoToDashboard();\n setupInitRestoreAppStorage([\n Right(InitRestoreAppStorageConsentResult.GRANTED),\n ]);\n setupRestoreAppStorage();\n const error = new CommitRestoreAppStorageError(\n new Error(\"commit failed\"),\n );\n setupCommitRestoreAppStorage(Left(error));\n\n const backupApp: BackupApp[] = [\n { appName: \"AppWithStorage1\", data: \"0xaa\" },\n ];\n\n const expectedStates: RestoreAppsStorageDAState[] = [\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n pendingState(RestoreAppsStorageSteps.WaitForAppAndVersion),\n pendingState(\n RestoreAppsStorageSteps.InitRestoreAppStorage,\n UserInteractionRequired.GrantConsent,\n ),\n pendingState(RestoreAppsStorageSteps.RestoreAppStorage),\n pendingState(RestoreAppsStorageSteps.CommitRestoreAppStorage),\n errorState(error),\n ];\n\n testDeviceActionStates(\n makeDeviceAction(backupApp),\n expectedStates,\n makeDeviceActionInternalApiMock(),\n { onDone: resolve, onError: reject },\n );\n }));\n });\n});\n"],
5
+ "mappings": "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",
6
+ "names": ["import_device_management_kit", "import_purify_ts", "import_xstate", "import_makeInternalApi", "import_testDeviceActionStates", "import_RestoreAppsStorageDeviceAction", "import_RestoreAppsStorageDeviceActionErrors", "import_CommitRestoreAppStorage", "import_InitRestoreAppStorage", "import_RestoreAppStorage", "import_types", "import_GoToDashboard", "import_WaitForAppAndVersion", "pendingState", "step", "requiredUserInteraction", "completedState", "output", "errorState", "error", "createMockActorMachineFromOutput", "createMockActorMachine", "setupWaitForAppAndVersion", "appName", "setupWaitForAppAndVersionSequence", "appNames", "remainingAppNames", "setupGoToDashboard", "setupInitRestoreAppStorage", "results", "queue", "setupRestoreAppStorage", "result", "setupCommitRestoreAppStorage", "makeDeviceAction", "backupApp", "isMasterConsentGranted", "resolve", "reject", "expectedStates"]
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";var n=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var s=Object.prototype.hasOwnProperty;var E=(o,r)=>{for(var t in r)n(o,t,{get:r[t],enumerable:!0})},g=(o,r,t,p)=>{if(r&&typeof r=="object"||typeof r=="function")for(let e of i(r))!s.call(o,e)&&e!==t&&n(o,e,{get:()=>r[e],enumerable:!(p=a(r,e))||p.enumerable});return o};var l=o=>g(n({},"__esModule",{value:!0}),o);var k={};E(k,{CommitRestoreAppStorageError:()=>A,InitRestoreAppStorageError:()=>m,RestoreAppStorageError:()=>c});module.exports=l(k);class m{_tag="InitRestoreAppStorageError";originalError;constructor(r){this.originalError=r}}class c{_tag="RestoreAppStorageError";originalError;constructor(r){this.originalError=r}}class A{_tag="CommitRestoreAppStorageError";originalError;constructor(r){this.originalError=r}}0&&(module.exports={CommitRestoreAppStorageError,InitRestoreAppStorageError,RestoreAppStorageError});
2
+ //# sourceMappingURL=RestoreAppsStorageDeviceActionErrors.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../../src/api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceActionErrors.ts"],
4
+ "sourcesContent": ["import { type DmkError } from \"@ledgerhq/device-management-kit\";\n\nexport class InitRestoreAppStorageError implements DmkError {\n readonly _tag = \"InitRestoreAppStorageError\";\n readonly originalError?: unknown;\n\n constructor(originalError?: unknown) {\n this.originalError = originalError;\n }\n}\n\nexport class RestoreAppStorageError implements DmkError {\n readonly _tag = \"RestoreAppStorageError\";\n readonly originalError?: unknown;\n\n constructor(originalError?: unknown) {\n this.originalError = originalError;\n }\n}\n\nexport class CommitRestoreAppStorageError implements DmkError {\n readonly _tag = \"CommitRestoreAppStorageError\";\n readonly originalError?: unknown;\n\n constructor(originalError?: unknown) {\n this.originalError = originalError;\n }\n}\n\nexport type RestoreAppsStorageDeviceActionErrors =\n | InitRestoreAppStorageError\n | RestoreAppStorageError\n | CommitRestoreAppStorageError;\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,kCAAAE,EAAA,+BAAAC,EAAA,2BAAAC,IAAA,eAAAC,EAAAL,GAEO,MAAMG,CAA+C,CACjD,KAAO,6BACP,cAET,YAAYG,EAAyB,CACnC,KAAK,cAAgBA,CACvB,CACF,CAEO,MAAMF,CAA2C,CAC7C,KAAO,yBACP,cAET,YAAYE,EAAyB,CACnC,KAAK,cAAgBA,CACvB,CACF,CAEO,MAAMJ,CAAiD,CACnD,KAAO,+BACP,cAET,YAAYI,EAAyB,CACnC,KAAK,cAAgBA,CACvB,CACF",
6
+ "names": ["RestoreAppsStorageDeviceActionErrors_exports", "__export", "CommitRestoreAppStorageError", "InitRestoreAppStorageError", "RestoreAppStorageError", "__toCommonJS", "originalError"]
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";var p=Object.defineProperty;var R=Object.getOwnPropertyDescriptor;var d=Object.getOwnPropertyNames;var g=Object.prototype.hasOwnProperty;var A=(r,e)=>{for(var t in e)p(r,t,{get:e[t],enumerable:!0})},C=(r,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of d(e))!g.call(r,o)&&o!==t&&p(r,o,{get:()=>e[o],enumerable:!(i=R(e,o))||i.enumerable});return r};var l=r=>C(p({},"__esModule",{value:!0}),r);var f={};A(f,{commitRestoreAppStorage:()=>S});module.exports=l(f);var n=require("@ledgerhq/device-management-kit"),m=require("purify-ts/Either"),s=require("../../../../../command/OsUpdate/Restore/CommitRestoreAppStorageCommand"),a=require("../../../../../device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceActionErrors");const S=r=>async()=>{const e=await r.sendCommand(new s.CommitRestoreAppStorageCommand);return(0,n.isSuccessCommandResult)(e)?(0,m.Right)(void 0):(0,m.Left)(new a.CommitRestoreAppStorageError(e.error.originalError))};0&&(module.exports={commitRestoreAppStorage});
2
+ //# sourceMappingURL=CommitRestoreAppStorage.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../../../src/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage.ts"],
4
+ "sourcesContent": ["import {\n type InternalApi,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\nimport { type Either, Left, Right } from \"purify-ts/Either\";\n\nimport { CommitRestoreAppStorageCommand } from \"@api/command/OsUpdate/Restore/CommitRestoreAppStorageCommand\";\nimport { CommitRestoreAppStorageError } from \"@api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceActionErrors\";\n\ntype CommitRestoreAppStorageHandlerResponse = Promise<\n Either<CommitRestoreAppStorageError, void>\n>;\n\ntype CommitRestoreAppStorageHandler =\n () => CommitRestoreAppStorageHandlerResponse;\n\nexport const commitRestoreAppStorage =\n (internalApi: InternalApi): CommitRestoreAppStorageHandler =>\n async (): CommitRestoreAppStorageHandlerResponse => {\n const result = await internalApi.sendCommand(\n new CommitRestoreAppStorageCommand(),\n );\n\n if (!isSuccessCommandResult(result)) {\n return Left(new CommitRestoreAppStorageError(result.error.originalError));\n }\n\n return Right(undefined);\n };\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,6BAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAGO,2CACPC,EAAyC,4BAEzCC,EAA+C,wEAC/CC,EAA6C,uGAStC,MAAML,EACVM,GACD,SAAoD,CAClD,MAAMC,EAAS,MAAMD,EAAY,YAC/B,IAAI,gCACN,EAEA,SAAK,0BAAuBC,CAAM,KAI3B,SAAM,MAAS,KAHb,QAAK,IAAI,+BAA6BA,EAAO,MAAM,aAAa,CAAC,CAI5E",
6
+ "names": ["CommitRestoreAppStorage_exports", "__export", "commitRestoreAppStorage", "__toCommonJS", "import_device_management_kit", "import_Either", "import_CommitRestoreAppStorageCommand", "import_RestoreAppsStorageDeviceActionErrors", "internalApi", "result"]
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";var e=require("@ledgerhq/device-management-kit"),s=require("../../../../../device-action/__test-utils__/makeInternalApi"),i=require("../../../../../device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceActionErrors"),t=require("../../../../../device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage");describe("CommitRestoreAppStorage",()=>{const r=(0,s.makeDeviceActionInternalApiMock)(),{sendCommand:c}=r;beforeEach(()=>{vi.resetAllMocks()}),describe("Success",()=>{it("Should commit the restored app storage",async()=>{c.mockResolvedValueOnce((0,e.CommandResultFactory)({data:void 0}));const o=await(0,t.commitRestoreAppStorage)(r)();expect(o.isRight()).toBe(!0)})}),describe("Error",()=>{it("Should return CommitRestoreAppStorageError",async()=>{const o=new e.GlobalCommandError({errorCode:"6e00",...e.GLOBAL_ERRORS["6e00"]});c.mockResolvedValueOnce((0,e.CommandResultFactory)({error:o}));const a=await(0,t.commitRestoreAppStorage)(r)();expect(a.isLeft()).toBe(!0),a.mapLeft(m=>{expect(m).toBeInstanceOf(i.CommitRestoreAppStorageError),expect(m.originalError).toBe(o.originalError)})})})});
2
+ //# sourceMappingURL=CommitRestoreAppStorage.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../../../src/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage.test.ts"],
4
+ "sourcesContent": ["import {\n CommandResultFactory,\n GLOBAL_ERRORS,\n GlobalCommandError,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { makeDeviceActionInternalApiMock } from \"@api/device-action/__test-utils__/makeInternalApi\";\nimport { CommitRestoreAppStorageError } from \"@api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceActionErrors\";\nimport { commitRestoreAppStorage } from \"@api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/CommitRestoreAppStorage\";\n\ndescribe(\"CommitRestoreAppStorage\", () => {\n const apiMock = makeDeviceActionInternalApiMock();\n const { sendCommand: sendCommandMock } = apiMock;\n\n beforeEach(() => {\n vi.resetAllMocks();\n });\n\n describe(\"Success\", () => {\n it(\"Should commit the restored app storage\", async () => {\n sendCommandMock.mockResolvedValueOnce(\n CommandResultFactory({ data: undefined }),\n );\n\n const result = await commitRestoreAppStorage(apiMock)();\n\n expect(result.isRight()).toBe(true);\n });\n });\n\n describe(\"Error\", () => {\n it(\"Should return CommitRestoreAppStorageError\", async () => {\n const error = new GlobalCommandError({\n errorCode: \"6e00\",\n ...GLOBAL_ERRORS[\"6e00\"],\n });\n sendCommandMock.mockResolvedValueOnce(CommandResultFactory({ error }));\n\n const result = await commitRestoreAppStorage(apiMock)();\n\n expect(result.isLeft()).toBe(true);\n result.mapLeft((e) => {\n expect(e).toBeInstanceOf(CommitRestoreAppStorageError);\n expect(e.originalError).toBe(error.originalError);\n });\n });\n });\n});\n"],
5
+ "mappings": "aAAA,IAAAA,EAIO,2CAEPC,EAAgD,6DAChDC,EAA6C,uGAC7CC,EAAwC,mGAExC,SAAS,0BAA2B,IAAM,CACxC,MAAMC,KAAU,mCAAgC,EAC1C,CAAE,YAAaC,CAAgB,EAAID,EAEzC,WAAW,IAAM,CACf,GAAG,cAAc,CACnB,CAAC,EAED,SAAS,UAAW,IAAM,CACxB,GAAG,yCAA0C,SAAY,CACvDC,EAAgB,yBACd,wBAAqB,CAAE,KAAM,MAAU,CAAC,CAC1C,EAEA,MAAMC,EAAS,QAAM,2BAAwBF,CAAO,EAAE,EAEtD,OAAOE,EAAO,QAAQ,CAAC,EAAE,KAAK,EAAI,CACpC,CAAC,CACH,CAAC,EAED,SAAS,QAAS,IAAM,CACtB,GAAG,6CAA8C,SAAY,CAC3D,MAAMC,EAAQ,IAAI,qBAAmB,CACnC,UAAW,OACX,GAAG,gBAAc,MAAM,CACzB,CAAC,EACDF,EAAgB,yBAAsB,wBAAqB,CAAE,MAAAE,CAAM,CAAC,CAAC,EAErE,MAAMD,EAAS,QAAM,2BAAwBF,CAAO,EAAE,EAEtD,OAAOE,EAAO,OAAO,CAAC,EAAE,KAAK,EAAI,EACjCA,EAAO,QAASE,GAAM,CACpB,OAAOA,CAAC,EAAE,eAAe,8BAA4B,EACrD,OAAOA,EAAE,aAAa,EAAE,KAAKD,EAAM,aAAa,CAClD,CAAC,CACH,CAAC,CACH,CAAC,CACH,CAAC",
6
+ "names": ["import_device_management_kit", "import_makeInternalApi", "import_RestoreAppsStorageDeviceActionErrors", "import_CommitRestoreAppStorage", "apiMock", "sendCommandMock", "result", "error", "e"]
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";var s=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var A=Object.getOwnPropertyNames;var S=Object.prototype.hasOwnProperty;var I=(t,e)=>{for(var o in e)s(t,o,{get:e[o],enumerable:!0})},l=(t,e,o,p)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of A(e))!S.call(t,r)&&r!==o&&s(t,r,{get:()=>e[r],enumerable:!(p=m(e,r))||p.enumerable});return t};var d=t=>l(s({},"__esModule",{value:!0}),t);var C={};I(C,{initRestoreAppStorage:()=>u});module.exports=d(C);var g=require("@ledgerhq/device-management-kit"),n=require("purify-ts/Either"),a=require("../../../../../command/OsUpdate/Restore/InitRestoreAppStorageCommand"),R=require("../../../../../device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceActionErrors"),i=require("../../../../../device-action/OsUpdate/Restore/RestoreAppsStorage/types");const E=["5501","5502"],u=t=>async({input:e})=>{const{appName:o,appStorageDataLength:p}=e,r=await t.sendCommand(new a.InitRestoreAppStorageCommand({appName:o,appStorageDataLength:p}));return(0,g.isSuccessCommandResult)(r)?(0,n.Right)(i.InitRestoreAppStorageConsentResult.GRANTED):r.error instanceof a.InitRestoreAppStorageCommandError&&E.includes(r.error.errorCode)?(0,n.Right)(i.InitRestoreAppStorageConsentResult.REJECTED):(0,n.Left)(new R.InitRestoreAppStorageError(r.error.originalError))};0&&(module.exports={initRestoreAppStorage});
2
+ //# sourceMappingURL=InitRestoreAppStorage.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../../../src/api/device-action/OsUpdate/Restore/RestoreAppsStorage/Substeps/InitRestoreAppStorage.ts"],
4
+ "sourcesContent": ["import {\n type InternalApi,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\nimport { type Either, Left, Right } from \"purify-ts/Either\";\n\nimport {\n InitRestoreAppStorageCommand,\n InitRestoreAppStorageCommandError,\n} from \"@api/command/OsUpdate/Restore/InitRestoreAppStorageCommand\";\nimport { InitRestoreAppStorageError } from \"@api/device-action/OsUpdate/Restore/RestoreAppsStorage/RestoreAppsStorageDeviceActionErrors\";\nimport { InitRestoreAppStorageConsentResult } from \"@api/device-action/OsUpdate/Restore/RestoreAppsStorage/types\";\n\n// \"5501\" = rejected by user, \"5502\" = pin is not set\nconst INVALID_CONSENT_ERROR_CODES: string[] = [\"5501\", \"5502\"];\n\ntype InitRestoreAppStorageHandlerArgs = {\n input: { appName: string; appStorageDataLength: number };\n};\n\ntype InitRestoreAppStorageHandlerResponse = Promise<\n Either<InitRestoreAppStorageError, InitRestoreAppStorageConsentResult>\n>;\n\ntype InitRestoreAppStorageHandler = (\n args: InitRestoreAppStorageHandlerArgs,\n) => InitRestoreAppStorageHandlerResponse;\n\nexport const initRestoreAppStorage =\n (internalApi: InternalApi): InitRestoreAppStorageHandler =>\n async ({\n input,\n }: InitRestoreAppStorageHandlerArgs): InitRestoreAppStorageHandlerResponse => {\n const { appName, appStorageDataLength } = input;\n const result = await internalApi.sendCommand(\n new InitRestoreAppStorageCommand({ appName, appStorageDataLength }),\n );\n\n if (!isSuccessCommandResult(result)) {\n if (\n result.error instanceof InitRestoreAppStorageCommandError &&\n INVALID_CONSENT_ERROR_CODES.includes(result.error.errorCode)\n ) {\n return Right(InitRestoreAppStorageConsentResult.REJECTED);\n }\n return Left(new InitRestoreAppStorageError(result.error.originalError));\n }\n\n return Right(InitRestoreAppStorageConsentResult.GRANTED);\n };\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,2BAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAGO,2CACPC,EAAyC,4BAEzCC,EAGO,sEACPC,EAA2C,uGAC3CC,EAAmD,wEAGnD,MAAMC,EAAwC,CAAC,OAAQ,MAAM,EAchDP,EACVQ,GACD,MAAO,CACL,MAAAC,CACF,IAA8E,CAC5E,KAAM,CAAE,QAAAC,EAAS,qBAAAC,CAAqB,EAAIF,EACpCG,EAAS,MAAMJ,EAAY,YAC/B,IAAI,+BAA6B,CAAE,QAAAE,EAAS,qBAAAC,CAAqB,CAAC,CACpE,EAEA,SAAK,0BAAuBC,CAAM,KAU3B,SAAM,qCAAmC,OAAO,EARnDA,EAAO,iBAAiB,qCACxBL,EAA4B,SAASK,EAAO,MAAM,SAAS,KAEpD,SAAM,qCAAmC,QAAQ,KAEnD,QAAK,IAAI,6BAA2BA,EAAO,MAAM,aAAa,CAAC,CAI1E",
6
+ "names": ["InitRestoreAppStorage_exports", "__export", "initRestoreAppStorage", "__toCommonJS", "import_device_management_kit", "import_Either", "import_InitRestoreAppStorageCommand", "import_RestoreAppsStorageDeviceActionErrors", "import_types", "INVALID_CONSENT_ERROR_CODES", "internalApi", "input", "appName", "appStorageDataLength", "result"]
7
+ }