@ledgerhq/device-signer-kit-ethereum 0.0.0-rnble-transport-20250422084848 → 0.0.0-rnble-scan-permission-issue-20250929081059

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 (541) hide show
  1. package/README.md +53 -0
  2. package/lib/cjs/api/SignerEth.js +1 -1
  3. package/lib/cjs/api/SignerEth.js.map +1 -1
  4. package/lib/cjs/api/SignerEthBuilder.test.js +1 -1
  5. package/lib/cjs/api/SignerEthBuilder.test.js.map +1 -1
  6. package/lib/cjs/api/app-binder/SignDelegationAuthorizationTypes.js +2 -0
  7. package/lib/cjs/api/app-binder/SignDelegationAuthorizationTypes.js.map +7 -0
  8. package/lib/cjs/api/app-binder/SignTransactionDeviceActionTypes.js +1 -1
  9. package/lib/cjs/api/app-binder/SignTransactionDeviceActionTypes.js.map +2 -2
  10. package/lib/cjs/api/app-binder/SignTypedDataDeviceActionTypes.js +1 -1
  11. package/lib/cjs/api/app-binder/SignTypedDataDeviceActionTypes.js.map +2 -2
  12. package/lib/cjs/api/index.js +1 -1
  13. package/lib/cjs/api/index.js.map +3 -3
  14. package/lib/cjs/api/model/AddressOptions.js +1 -1
  15. package/lib/cjs/api/model/AddressOptions.js.map +1 -1
  16. package/lib/cjs/api/model/ClearSigningType.js +2 -0
  17. package/lib/cjs/api/model/ClearSigningType.js.map +7 -0
  18. package/lib/cjs/api/model/MessageOptions.js +2 -0
  19. package/lib/cjs/api/model/MessageOptions.js.map +7 -0
  20. package/lib/cjs/api/model/TransactionOptions.js +1 -1
  21. package/lib/cjs/api/model/TransactionOptions.js.map +1 -1
  22. package/lib/cjs/api/model/TypedDataOptions.js +2 -0
  23. package/lib/cjs/api/model/TypedDataOptions.js.map +7 -0
  24. package/lib/cjs/internal/DefaultSignerEth.js +1 -1
  25. package/lib/cjs/internal/DefaultSignerEth.js.map +3 -3
  26. package/lib/cjs/internal/DefaultSignerEth.test.js +1 -1
  27. package/lib/cjs/internal/DefaultSignerEth.test.js.map +3 -3
  28. package/lib/cjs/internal/address/di/addressModule.js +1 -1
  29. package/lib/cjs/internal/address/di/addressModule.js.map +3 -3
  30. package/lib/cjs/internal/address/di/addressModule.test.js +1 -1
  31. package/lib/cjs/internal/address/di/addressModule.test.js.map +2 -2
  32. package/lib/cjs/internal/address/use-case/GetAddressUseCase.js +1 -1
  33. package/lib/cjs/internal/address/use-case/GetAddressUseCase.js.map +2 -2
  34. package/lib/cjs/internal/address/use-case/GetAddressUseCase.test.js +1 -1
  35. package/lib/cjs/internal/address/use-case/GetAddressUseCase.test.js.map +2 -2
  36. package/lib/cjs/internal/app-binder/EthAppBinder.js +1 -1
  37. package/lib/cjs/internal/app-binder/EthAppBinder.js.map +3 -3
  38. package/lib/cjs/internal/app-binder/EthAppBinder.test.js +1 -1
  39. package/lib/cjs/internal/app-binder/EthAppBinder.test.js.map +3 -3
  40. package/lib/cjs/internal/app-binder/command/ProvideNetworkConfigurationCommand.js +2 -0
  41. package/lib/cjs/internal/app-binder/command/ProvideNetworkConfigurationCommand.js.map +7 -0
  42. package/lib/cjs/internal/app-binder/command/ProvideNetworkConfigurationCommand.test.js +2 -0
  43. package/lib/cjs/internal/app-binder/command/ProvideNetworkConfigurationCommand.test.js.map +7 -0
  44. package/lib/cjs/internal/app-binder/command/ProvideProxyInfoCommand.js +2 -0
  45. package/lib/cjs/internal/app-binder/command/ProvideProxyInfoCommand.js.map +7 -0
  46. package/lib/cjs/internal/app-binder/command/ProvideProxyInfoCommand.test.js +2 -0
  47. package/lib/cjs/internal/app-binder/command/ProvideProxyInfoCommand.test.js.map +7 -0
  48. package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.js +1 -1
  49. package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.js.map +3 -3
  50. package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.test.js +1 -1
  51. package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.test.js.map +3 -3
  52. package/lib/cjs/internal/app-binder/command/SignAuthorizationDelegationCommand.js +2 -0
  53. package/lib/cjs/internal/app-binder/command/SignAuthorizationDelegationCommand.js.map +7 -0
  54. package/lib/cjs/internal/app-binder/command/SignAuthorizationDelegationCommand.test.js +2 -0
  55. package/lib/cjs/internal/app-binder/command/SignAuthorizationDelegationCommand.test.js.map +7 -0
  56. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js +1 -1
  57. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js.map +3 -3
  58. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js +1 -1
  59. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js.map +3 -3
  60. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js +1 -1
  61. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js.map +3 -3
  62. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js +1 -1
  63. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js.map +3 -3
  64. package/lib/cjs/internal/app-binder/device-action/__test-utils__/makeInternalApi.js +1 -1
  65. package/lib/cjs/internal/app-binder/device-action/__test-utils__/makeInternalApi.js.map +3 -3
  66. package/lib/cjs/internal/app-binder/device-action/__test-utils__/testDeviceActionUntilStep.js +2 -0
  67. package/lib/cjs/internal/app-binder/device-action/__test-utils__/testDeviceActionUntilStep.js.map +7 -0
  68. package/lib/cjs/internal/app-binder/di/appBinderModule.js +1 -1
  69. package/lib/cjs/internal/app-binder/di/appBinderModule.js.map +3 -3
  70. package/lib/cjs/internal/app-binder/task/BuildBaseContexts.js +2 -0
  71. package/lib/cjs/internal/app-binder/task/BuildBaseContexts.js.map +7 -0
  72. package/lib/cjs/internal/app-binder/task/BuildBaseContexts.test.js +2 -0
  73. package/lib/cjs/internal/app-binder/task/BuildBaseContexts.test.js.map +7 -0
  74. package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.js +1 -1
  75. package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.js.map +3 -3
  76. package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.test.js +1 -1
  77. package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.test.js.map +3 -3
  78. package/lib/cjs/internal/app-binder/task/BuildFullContextsTask.js +2 -0
  79. package/lib/cjs/internal/app-binder/task/BuildFullContextsTask.js.map +7 -0
  80. package/lib/cjs/internal/app-binder/task/BuildFullContextsTask.test.js +2 -0
  81. package/lib/cjs/internal/app-binder/task/BuildFullContextsTask.test.js.map +7 -0
  82. package/lib/cjs/internal/app-binder/task/BuildSubcontextsTask.js +2 -0
  83. package/lib/cjs/internal/app-binder/task/BuildSubcontextsTask.js.map +7 -0
  84. package/lib/cjs/internal/app-binder/task/BuildSubcontextsTask.test.js +2 -0
  85. package/lib/cjs/internal/app-binder/task/BuildSubcontextsTask.test.js.map +7 -0
  86. package/lib/cjs/internal/app-binder/task/GetWeb3CheckTask.js +1 -1
  87. package/lib/cjs/internal/app-binder/task/GetWeb3CheckTask.js.map +3 -3
  88. package/lib/cjs/internal/app-binder/task/GetWeb3CheckTask.test.js +1 -1
  89. package/lib/cjs/internal/app-binder/task/GetWeb3CheckTask.test.js.map +3 -3
  90. package/lib/cjs/internal/app-binder/task/ParseNestedTransactionTask.js +2 -0
  91. package/lib/cjs/internal/app-binder/task/ParseNestedTransactionTask.js.map +7 -0
  92. package/lib/cjs/internal/app-binder/task/ParseNestedTransactionTask.test.js +2 -0
  93. package/lib/cjs/internal/app-binder/task/ParseNestedTransactionTask.test.js.map +7 -0
  94. package/lib/cjs/internal/app-binder/task/ParseTransactionTask.js +2 -0
  95. package/lib/cjs/internal/app-binder/task/ParseTransactionTask.js.map +7 -0
  96. package/lib/cjs/internal/app-binder/task/ParseTransactionTask.test.js +2 -0
  97. package/lib/cjs/internal/app-binder/task/ParseTransactionTask.test.js.map +7 -0
  98. package/lib/cjs/internal/app-binder/task/ProvideContextsTask.js +2 -0
  99. package/lib/cjs/internal/app-binder/task/ProvideContextsTask.js.map +7 -0
  100. package/lib/cjs/internal/app-binder/task/ProvideContextsTask.test.js +2 -0
  101. package/lib/cjs/internal/app-binder/task/ProvideContextsTask.test.js.map +7 -0
  102. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.js +1 -1
  103. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.js.map +3 -3
  104. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.test.js +1 -1
  105. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.test.js.map +3 -3
  106. package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.js +1 -1
  107. package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.js.map +3 -3
  108. package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.test.js +1 -1
  109. package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.test.js.map +3 -3
  110. package/lib/cjs/internal/app-binder/task/SendSignAuthorizationDelegationTask.js +2 -0
  111. package/lib/cjs/internal/app-binder/task/SendSignAuthorizationDelegationTask.js.map +7 -0
  112. package/lib/cjs/internal/app-binder/task/SendSignAuthorizationDelegationTask.test.js +2 -0
  113. package/lib/cjs/internal/app-binder/task/SendSignAuthorizationDelegationTask.test.js.map +7 -0
  114. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.js +1 -1
  115. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.js.map +3 -3
  116. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.test.js +1 -1
  117. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.test.js.map +3 -3
  118. package/lib/cjs/internal/app-binder/task/SignTypedDataLegacyTask.js +2 -0
  119. package/lib/cjs/internal/app-binder/task/SignTypedDataLegacyTask.js.map +7 -0
  120. package/lib/cjs/internal/app-binder/task/SignTypedDataLegacyTask.test.js +2 -0
  121. package/lib/cjs/internal/app-binder/task/SignTypedDataLegacyTask.test.js.map +7 -0
  122. package/lib/cjs/internal/di.js +1 -1
  123. package/lib/cjs/internal/di.js.map +3 -3
  124. package/lib/cjs/internal/eip7702/di/eip7702Module.js +2 -0
  125. package/lib/cjs/internal/eip7702/di/eip7702Module.js.map +7 -0
  126. package/lib/cjs/internal/eip7702/di/eip7702Module.test.js +2 -0
  127. package/lib/cjs/internal/eip7702/di/eip7702Module.test.js.map +7 -0
  128. package/lib/cjs/internal/eip7702/di/eip7702Types.js +2 -0
  129. package/lib/cjs/internal/eip7702/di/eip7702Types.js.map +7 -0
  130. package/lib/cjs/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.js +2 -0
  131. package/lib/cjs/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.js.map +7 -0
  132. package/lib/cjs/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.test.js +2 -0
  133. package/lib/cjs/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.test.js.map +7 -0
  134. package/lib/cjs/internal/message/di/messageModule.js +1 -1
  135. package/lib/cjs/internal/message/di/messageModule.js.map +3 -3
  136. package/lib/cjs/internal/message/di/messageModule.test.js +1 -1
  137. package/lib/cjs/internal/message/di/messageModule.test.js.map +2 -2
  138. package/lib/cjs/internal/message/use-case/SignMessageUseCase.js +1 -1
  139. package/lib/cjs/internal/message/use-case/SignMessageUseCase.js.map +3 -3
  140. package/lib/cjs/internal/message/use-case/SignMessageUseCase.test.js +1 -1
  141. package/lib/cjs/internal/message/use-case/SignMessageUseCase.test.js.map +2 -2
  142. package/lib/cjs/internal/shared/utils/ApplicationChecker.js +1 -1
  143. package/lib/cjs/internal/shared/utils/ApplicationChecker.js.map +3 -3
  144. package/lib/cjs/internal/shared/utils/ApplicationChecker.test.js +1 -1
  145. package/lib/cjs/internal/shared/utils/ApplicationChecker.test.js.map +2 -2
  146. package/lib/cjs/internal/transaction/di/transactionModule.js +1 -1
  147. package/lib/cjs/internal/transaction/di/transactionModule.js.map +3 -3
  148. package/lib/cjs/internal/transaction/di/transactionModule.test.js +1 -1
  149. package/lib/cjs/internal/transaction/di/transactionModule.test.js.map +2 -2
  150. package/lib/cjs/internal/transaction/service/mapper/EthersTransactionMapperService.js +2 -0
  151. package/lib/cjs/internal/transaction/service/mapper/EthersTransactionMapperService.js.map +7 -0
  152. package/lib/cjs/internal/transaction/service/mapper/EthersTransactionMapperService.test.js +2 -0
  153. package/lib/cjs/internal/transaction/service/mapper/EthersTransactionMapperService.test.js.map +7 -0
  154. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.js +1 -1
  155. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.js.map +3 -3
  156. package/lib/cjs/internal/transaction/service/parser/TransactionParserService.js +1 -1
  157. package/lib/cjs/internal/transaction/service/parser/TransactionParserService.js.map +3 -3
  158. package/lib/cjs/internal/transaction/service/parser/TransactionParserService.test.js +1 -1
  159. package/lib/cjs/internal/transaction/service/parser/TransactionParserService.test.js.map +3 -3
  160. package/lib/cjs/internal/typed-data/di/typedDataModule.js +1 -1
  161. package/lib/cjs/internal/typed-data/di/typedDataModule.js.map +3 -3
  162. package/lib/cjs/internal/typed-data/di/typedDataModule.test.js +1 -1
  163. package/lib/cjs/internal/typed-data/di/typedDataModule.test.js.map +2 -2
  164. package/lib/cjs/internal/typed-data/service/DefaultTypedDataParserService.js +1 -1
  165. package/lib/cjs/internal/typed-data/service/DefaultTypedDataParserService.js.map +2 -2
  166. package/lib/cjs/internal/typed-data/service/TypedDataParser.js +1 -1
  167. package/lib/cjs/internal/typed-data/service/TypedDataParser.js.map +3 -3
  168. package/lib/cjs/internal/typed-data/service/TypedDataParser.test.js +1 -1
  169. package/lib/cjs/internal/typed-data/service/TypedDataParser.test.js.map +2 -2
  170. package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.js +1 -1
  171. package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.js.map +3 -3
  172. package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.test.js +1 -1
  173. package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.test.js.map +2 -2
  174. package/lib/cjs/package.json +13 -14
  175. package/lib/esm/api/SignerEthBuilder.test.js +1 -1
  176. package/lib/esm/api/SignerEthBuilder.test.js.map +1 -1
  177. package/lib/esm/api/app-binder/SignDelegationAuthorizationTypes.js +1 -0
  178. package/lib/esm/api/app-binder/SignTransactionDeviceActionTypes.js +1 -1
  179. package/lib/esm/api/app-binder/SignTransactionDeviceActionTypes.js.map +2 -2
  180. package/lib/esm/api/app-binder/SignTypedDataDeviceActionTypes.js +1 -1
  181. package/lib/esm/api/app-binder/SignTypedDataDeviceActionTypes.js.map +2 -2
  182. package/lib/esm/api/index.js +1 -1
  183. package/lib/esm/api/index.js.map +2 -2
  184. package/lib/esm/api/model/ClearSigningType.js +2 -0
  185. package/lib/esm/api/model/ClearSigningType.js.map +7 -0
  186. package/lib/esm/api/model/MessageOptions.js +1 -0
  187. package/lib/esm/api/model/MessageOptions.js.map +7 -0
  188. package/lib/esm/api/model/TypedDataOptions.js +1 -0
  189. package/lib/esm/api/model/TypedDataOptions.js.map +7 -0
  190. package/lib/esm/internal/DefaultSignerEth.js +1 -1
  191. package/lib/esm/internal/DefaultSignerEth.js.map +3 -3
  192. package/lib/esm/internal/DefaultSignerEth.test.js +1 -1
  193. package/lib/esm/internal/DefaultSignerEth.test.js.map +3 -3
  194. package/lib/esm/internal/address/di/addressModule.js +1 -1
  195. package/lib/esm/internal/address/di/addressModule.js.map +3 -3
  196. package/lib/esm/internal/address/di/addressModule.test.js +1 -1
  197. package/lib/esm/internal/address/di/addressModule.test.js.map +2 -2
  198. package/lib/esm/internal/address/use-case/GetAddressUseCase.js +1 -1
  199. package/lib/esm/internal/address/use-case/GetAddressUseCase.js.map +2 -2
  200. package/lib/esm/internal/address/use-case/GetAddressUseCase.test.js +1 -1
  201. package/lib/esm/internal/address/use-case/GetAddressUseCase.test.js.map +2 -2
  202. package/lib/esm/internal/app-binder/EthAppBinder.js +1 -1
  203. package/lib/esm/internal/app-binder/EthAppBinder.js.map +3 -3
  204. package/lib/esm/internal/app-binder/EthAppBinder.test.js +1 -1
  205. package/lib/esm/internal/app-binder/EthAppBinder.test.js.map +3 -3
  206. package/lib/esm/internal/app-binder/command/ProvideNetworkConfigurationCommand.js +2 -0
  207. package/lib/esm/internal/app-binder/command/ProvideNetworkConfigurationCommand.js.map +7 -0
  208. package/lib/esm/internal/app-binder/command/ProvideNetworkConfigurationCommand.test.js +2 -0
  209. package/lib/esm/internal/app-binder/command/ProvideNetworkConfigurationCommand.test.js.map +7 -0
  210. package/lib/esm/internal/app-binder/command/ProvideProxyInfoCommand.js +2 -0
  211. package/lib/esm/internal/app-binder/command/ProvideProxyInfoCommand.js.map +7 -0
  212. package/lib/esm/internal/app-binder/command/ProvideProxyInfoCommand.test.js +2 -0
  213. package/lib/esm/internal/app-binder/command/ProvideProxyInfoCommand.test.js.map +7 -0
  214. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.js +1 -1
  215. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.js.map +3 -3
  216. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.test.js +1 -1
  217. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.test.js.map +3 -3
  218. package/lib/esm/internal/app-binder/command/SignAuthorizationDelegationCommand.js +2 -0
  219. package/lib/esm/internal/app-binder/command/SignAuthorizationDelegationCommand.js.map +7 -0
  220. package/lib/esm/internal/app-binder/command/SignAuthorizationDelegationCommand.test.js +2 -0
  221. package/lib/esm/internal/app-binder/command/SignAuthorizationDelegationCommand.test.js.map +7 -0
  222. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js +1 -1
  223. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js.map +3 -3
  224. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js +1 -1
  225. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js.map +3 -3
  226. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js +1 -1
  227. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js.map +3 -3
  228. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js +1 -1
  229. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js.map +3 -3
  230. package/lib/esm/internal/app-binder/device-action/__test-utils__/makeInternalApi.js +1 -1
  231. package/lib/esm/internal/app-binder/device-action/__test-utils__/makeInternalApi.js.map +3 -3
  232. package/lib/esm/internal/app-binder/device-action/__test-utils__/testDeviceActionUntilStep.js +2 -0
  233. package/lib/esm/internal/app-binder/device-action/__test-utils__/testDeviceActionUntilStep.js.map +7 -0
  234. package/lib/esm/internal/app-binder/di/appBinderModule.js +1 -1
  235. package/lib/esm/internal/app-binder/di/appBinderModule.js.map +3 -3
  236. package/lib/esm/internal/app-binder/task/BuildBaseContexts.js +2 -0
  237. package/lib/esm/internal/app-binder/task/BuildBaseContexts.js.map +7 -0
  238. package/lib/esm/internal/app-binder/task/BuildBaseContexts.test.js +2 -0
  239. package/lib/esm/internal/app-binder/task/BuildBaseContexts.test.js.map +7 -0
  240. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.js +1 -1
  241. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.js.map +3 -3
  242. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.test.js +1 -1
  243. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.test.js.map +3 -3
  244. package/lib/esm/internal/app-binder/task/BuildFullContextsTask.js +2 -0
  245. package/lib/esm/internal/app-binder/task/BuildFullContextsTask.js.map +7 -0
  246. package/lib/esm/internal/app-binder/task/BuildFullContextsTask.test.js +2 -0
  247. package/lib/esm/internal/app-binder/task/BuildFullContextsTask.test.js.map +7 -0
  248. package/lib/esm/internal/app-binder/task/BuildSubcontextsTask.js +2 -0
  249. package/lib/esm/internal/app-binder/task/BuildSubcontextsTask.js.map +7 -0
  250. package/lib/esm/internal/app-binder/task/BuildSubcontextsTask.test.js +2 -0
  251. package/lib/esm/internal/app-binder/task/BuildSubcontextsTask.test.js.map +7 -0
  252. package/lib/esm/internal/app-binder/task/GetWeb3CheckTask.js +1 -1
  253. package/lib/esm/internal/app-binder/task/GetWeb3CheckTask.js.map +3 -3
  254. package/lib/esm/internal/app-binder/task/GetWeb3CheckTask.test.js +1 -1
  255. package/lib/esm/internal/app-binder/task/GetWeb3CheckTask.test.js.map +3 -3
  256. package/lib/esm/internal/app-binder/task/ParseNestedTransactionTask.js +2 -0
  257. package/lib/esm/internal/app-binder/task/ParseNestedTransactionTask.js.map +7 -0
  258. package/lib/esm/internal/app-binder/task/ParseNestedTransactionTask.test.js +2 -0
  259. package/lib/esm/internal/app-binder/task/ParseNestedTransactionTask.test.js.map +7 -0
  260. package/lib/esm/internal/app-binder/task/ParseTransactionTask.js +2 -0
  261. package/lib/esm/internal/app-binder/task/ParseTransactionTask.js.map +7 -0
  262. package/lib/esm/internal/app-binder/task/ParseTransactionTask.test.js +2 -0
  263. package/lib/esm/internal/app-binder/task/ParseTransactionTask.test.js.map +7 -0
  264. package/lib/esm/internal/app-binder/task/ProvideContextsTask.js +2 -0
  265. package/lib/esm/internal/app-binder/task/ProvideContextsTask.js.map +7 -0
  266. package/lib/esm/internal/app-binder/task/ProvideContextsTask.test.js +2 -0
  267. package/lib/esm/internal/app-binder/task/ProvideContextsTask.test.js.map +7 -0
  268. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.js +1 -1
  269. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.js.map +3 -3
  270. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.test.js +1 -1
  271. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.test.js.map +3 -3
  272. package/lib/esm/internal/app-binder/task/SendPayloadInChunksTask.js +1 -1
  273. package/lib/esm/internal/app-binder/task/SendPayloadInChunksTask.js.map +3 -3
  274. package/lib/esm/internal/app-binder/task/SendPayloadInChunksTask.test.js +1 -1
  275. package/lib/esm/internal/app-binder/task/SendPayloadInChunksTask.test.js.map +3 -3
  276. package/lib/esm/internal/app-binder/task/SendSignAuthorizationDelegationTask.js +2 -0
  277. package/lib/esm/internal/app-binder/task/SendSignAuthorizationDelegationTask.js.map +7 -0
  278. package/lib/esm/internal/app-binder/task/SendSignAuthorizationDelegationTask.test.js +2 -0
  279. package/lib/esm/internal/app-binder/task/SendSignAuthorizationDelegationTask.test.js.map +7 -0
  280. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.js +1 -1
  281. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.js.map +3 -3
  282. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.test.js +1 -1
  283. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.test.js.map +3 -3
  284. package/lib/esm/internal/app-binder/task/SignTypedDataLegacyTask.js +2 -0
  285. package/lib/esm/internal/app-binder/task/SignTypedDataLegacyTask.js.map +7 -0
  286. package/lib/esm/internal/app-binder/task/SignTypedDataLegacyTask.test.js +2 -0
  287. package/lib/esm/internal/app-binder/task/SignTypedDataLegacyTask.test.js.map +7 -0
  288. package/lib/esm/internal/di.js +1 -1
  289. package/lib/esm/internal/di.js.map +3 -3
  290. package/lib/esm/internal/eip7702/di/eip7702Module.js +2 -0
  291. package/lib/esm/internal/eip7702/di/eip7702Module.js.map +7 -0
  292. package/lib/esm/internal/eip7702/di/eip7702Module.test.js +2 -0
  293. package/lib/esm/internal/eip7702/di/eip7702Module.test.js.map +7 -0
  294. package/lib/esm/internal/eip7702/di/eip7702Types.js +2 -0
  295. package/lib/esm/internal/eip7702/di/eip7702Types.js.map +7 -0
  296. package/lib/esm/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.js +2 -0
  297. package/lib/esm/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.js.map +7 -0
  298. package/lib/esm/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.test.js +2 -0
  299. package/lib/esm/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.test.js.map +7 -0
  300. package/lib/esm/internal/message/di/messageModule.js +1 -1
  301. package/lib/esm/internal/message/di/messageModule.js.map +3 -3
  302. package/lib/esm/internal/message/di/messageModule.test.js +1 -1
  303. package/lib/esm/internal/message/di/messageModule.test.js.map +2 -2
  304. package/lib/esm/internal/message/use-case/SignMessageUseCase.js +1 -1
  305. package/lib/esm/internal/message/use-case/SignMessageUseCase.js.map +3 -3
  306. package/lib/esm/internal/message/use-case/SignMessageUseCase.test.js +1 -1
  307. package/lib/esm/internal/message/use-case/SignMessageUseCase.test.js.map +2 -2
  308. package/lib/esm/internal/shared/utils/ApplicationChecker.js +1 -1
  309. package/lib/esm/internal/shared/utils/ApplicationChecker.js.map +3 -3
  310. package/lib/esm/internal/shared/utils/ApplicationChecker.test.js +1 -1
  311. package/lib/esm/internal/shared/utils/ApplicationChecker.test.js.map +2 -2
  312. package/lib/esm/internal/transaction/di/transactionModule.js +1 -1
  313. package/lib/esm/internal/transaction/di/transactionModule.js.map +3 -3
  314. package/lib/esm/internal/transaction/di/transactionModule.test.js +1 -1
  315. package/lib/esm/internal/transaction/di/transactionModule.test.js.map +2 -2
  316. package/lib/esm/internal/transaction/service/mapper/EthersTransactionMapperService.js +2 -0
  317. package/lib/esm/internal/transaction/service/mapper/EthersTransactionMapperService.js.map +7 -0
  318. package/lib/esm/internal/transaction/service/mapper/EthersTransactionMapperService.test.js +2 -0
  319. package/lib/esm/internal/transaction/service/mapper/EthersTransactionMapperService.test.js.map +7 -0
  320. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.js +0 -1
  321. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.js.map +4 -4
  322. package/lib/esm/internal/transaction/service/parser/TransactionParserService.js +1 -1
  323. package/lib/esm/internal/transaction/service/parser/TransactionParserService.js.map +3 -3
  324. package/lib/esm/internal/transaction/service/parser/TransactionParserService.test.js +1 -1
  325. package/lib/esm/internal/transaction/service/parser/TransactionParserService.test.js.map +3 -3
  326. package/lib/esm/internal/typed-data/di/typedDataModule.js +1 -1
  327. package/lib/esm/internal/typed-data/di/typedDataModule.js.map +3 -3
  328. package/lib/esm/internal/typed-data/di/typedDataModule.test.js +1 -1
  329. package/lib/esm/internal/typed-data/di/typedDataModule.test.js.map +2 -2
  330. package/lib/esm/internal/typed-data/service/DefaultTypedDataParserService.js +1 -1
  331. package/lib/esm/internal/typed-data/service/DefaultTypedDataParserService.js.map +2 -2
  332. package/lib/esm/internal/typed-data/service/TypedDataParser.js +1 -1
  333. package/lib/esm/internal/typed-data/service/TypedDataParser.js.map +3 -3
  334. package/lib/esm/internal/typed-data/service/TypedDataParser.test.js +1 -1
  335. package/lib/esm/internal/typed-data/service/TypedDataParser.test.js.map +2 -2
  336. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.js +1 -1
  337. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.js.map +3 -3
  338. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.test.js +1 -1
  339. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.test.js.map +2 -2
  340. package/lib/esm/package.json +13 -14
  341. package/lib/types/api/SignerEth.d.ts +8 -4
  342. package/lib/types/api/SignerEth.d.ts.map +1 -1
  343. package/lib/types/api/app-binder/SignDelegationAuthorizationTypes.d.ts +19 -0
  344. package/lib/types/api/app-binder/SignDelegationAuthorizationTypes.d.ts.map +1 -0
  345. package/lib/types/api/app-binder/SignTransactionDeviceActionTypes.d.ts +17 -12
  346. package/lib/types/api/app-binder/SignTransactionDeviceActionTypes.d.ts.map +1 -1
  347. package/lib/types/api/app-binder/SignTypedDataDeviceActionTypes.d.ts +11 -1
  348. package/lib/types/api/app-binder/SignTypedDataDeviceActionTypes.d.ts.map +1 -1
  349. package/lib/types/api/index.d.ts +5 -4
  350. package/lib/types/api/index.d.ts.map +1 -1
  351. package/lib/types/api/model/AddressOptions.d.ts +1 -0
  352. package/lib/types/api/model/AddressOptions.d.ts.map +1 -1
  353. package/lib/types/api/model/ClearSigningType.d.ts +5 -0
  354. package/lib/types/api/model/ClearSigningType.d.ts.map +1 -0
  355. package/lib/types/api/model/MessageOptions.d.ts +4 -0
  356. package/lib/types/api/model/MessageOptions.d.ts.map +1 -0
  357. package/lib/types/api/model/TransactionOptions.d.ts +1 -0
  358. package/lib/types/api/model/TransactionOptions.d.ts.map +1 -1
  359. package/lib/types/api/model/TypedDataOptions.d.ts +4 -0
  360. package/lib/types/api/model/TypedDataOptions.d.ts.map +1 -0
  361. package/lib/types/internal/DefaultSignerEth.d.ts +7 -3
  362. package/lib/types/internal/DefaultSignerEth.d.ts.map +1 -1
  363. package/lib/types/internal/address/di/addressModule.d.ts.map +1 -1
  364. package/lib/types/internal/address/use-case/GetAddressUseCase.d.ts.map +1 -1
  365. package/lib/types/internal/app-binder/EthAppBinder.d.ts +13 -3
  366. package/lib/types/internal/app-binder/EthAppBinder.d.ts.map +1 -1
  367. package/lib/types/internal/app-binder/command/ProvideNetworkConfigurationCommand.d.ts +28 -0
  368. package/lib/types/internal/app-binder/command/ProvideNetworkConfigurationCommand.d.ts.map +1 -0
  369. package/lib/types/internal/app-binder/command/ProvideNetworkConfigurationCommand.test.d.ts +2 -0
  370. package/lib/types/internal/app-binder/command/ProvideNetworkConfigurationCommand.test.d.ts.map +1 -0
  371. package/lib/types/internal/app-binder/command/ProvideProxyInfoCommand.d.ts +20 -0
  372. package/lib/types/internal/app-binder/command/ProvideProxyInfoCommand.d.ts.map +1 -0
  373. package/lib/types/internal/app-binder/command/ProvideProxyInfoCommand.test.d.ts +2 -0
  374. package/lib/types/internal/app-binder/command/ProvideProxyInfoCommand.test.d.ts.map +1 -0
  375. package/lib/types/internal/app-binder/command/SendEIP712FilteringCommand.d.ts +29 -1
  376. package/lib/types/internal/app-binder/command/SendEIP712FilteringCommand.d.ts.map +1 -1
  377. package/lib/types/internal/app-binder/command/SignAuthorizationDelegationCommand.d.ts +29 -0
  378. package/lib/types/internal/app-binder/command/SignAuthorizationDelegationCommand.d.ts.map +1 -0
  379. package/lib/types/internal/app-binder/command/SignAuthorizationDelegationCommand.test.d.ts +2 -0
  380. package/lib/types/internal/app-binder/command/SignAuthorizationDelegationCommand.test.d.ts.map +1 -0
  381. package/lib/types/internal/app-binder/command/utils/ethAppErrors.d.ts.map +1 -1
  382. package/lib/types/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts +15 -36
  383. package/lib/types/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts.map +1 -1
  384. package/lib/types/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts +5 -2
  385. package/lib/types/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts.map +1 -1
  386. package/lib/types/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts.map +1 -1
  387. package/lib/types/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.d.ts.map +1 -1
  388. package/lib/types/internal/app-binder/device-action/__test-utils__/testDeviceActionUntilStep.d.ts +6 -0
  389. package/lib/types/internal/app-binder/device-action/__test-utils__/testDeviceActionUntilStep.d.ts.map +1 -0
  390. package/lib/types/internal/app-binder/di/appBinderModule.d.ts.map +1 -1
  391. package/lib/types/internal/app-binder/task/BuildBaseContexts.d.ts +49 -0
  392. package/lib/types/internal/app-binder/task/BuildBaseContexts.d.ts.map +1 -0
  393. package/lib/types/internal/app-binder/task/BuildBaseContexts.test.d.ts +2 -0
  394. package/lib/types/internal/app-binder/task/BuildBaseContexts.test.d.ts.map +1 -0
  395. package/lib/types/internal/app-binder/task/BuildEIP712ContextTask.d.ts +8 -1
  396. package/lib/types/internal/app-binder/task/BuildEIP712ContextTask.d.ts.map +1 -1
  397. package/lib/types/internal/app-binder/task/BuildFullContextsTask.d.ts +39 -0
  398. package/lib/types/internal/app-binder/task/BuildFullContextsTask.d.ts.map +1 -0
  399. package/lib/types/internal/app-binder/task/BuildFullContextsTask.test.d.ts +2 -0
  400. package/lib/types/internal/app-binder/task/BuildFullContextsTask.test.d.ts.map +1 -0
  401. package/lib/types/internal/app-binder/task/BuildSubcontextsTask.d.ts +28 -0
  402. package/lib/types/internal/app-binder/task/BuildSubcontextsTask.d.ts.map +1 -0
  403. package/lib/types/internal/app-binder/task/BuildSubcontextsTask.test.d.ts +2 -0
  404. package/lib/types/internal/app-binder/task/BuildSubcontextsTask.test.d.ts.map +1 -0
  405. package/lib/types/internal/app-binder/task/GetWeb3CheckTask.d.ts +2 -3
  406. package/lib/types/internal/app-binder/task/GetWeb3CheckTask.d.ts.map +1 -1
  407. package/lib/types/internal/app-binder/task/ParseNestedTransactionTask.d.ts +21 -0
  408. package/lib/types/internal/app-binder/task/ParseNestedTransactionTask.d.ts.map +1 -0
  409. package/lib/types/internal/app-binder/task/ParseNestedTransactionTask.test.d.ts +2 -0
  410. package/lib/types/internal/app-binder/task/ParseNestedTransactionTask.test.d.ts.map +1 -0
  411. package/lib/types/internal/app-binder/task/ParseTransactionTask.d.ts +17 -0
  412. package/lib/types/internal/app-binder/task/ParseTransactionTask.d.ts.map +1 -0
  413. package/lib/types/internal/app-binder/task/ParseTransactionTask.test.d.ts +2 -0
  414. package/lib/types/internal/app-binder/task/ParseTransactionTask.test.d.ts.map +1 -0
  415. package/lib/types/internal/app-binder/task/ProvideContextsTask.d.ts +44 -0
  416. package/lib/types/internal/app-binder/task/ProvideContextsTask.d.ts.map +1 -0
  417. package/lib/types/internal/app-binder/task/ProvideContextsTask.test.d.ts +2 -0
  418. package/lib/types/internal/app-binder/task/ProvideContextsTask.test.d.ts.map +1 -0
  419. package/lib/types/internal/app-binder/task/ProvideEIP712ContextTask.d.ts +14 -5
  420. package/lib/types/internal/app-binder/task/ProvideEIP712ContextTask.d.ts.map +1 -1
  421. package/lib/types/internal/app-binder/task/SendPayloadInChunksTask.d.ts +2 -2
  422. package/lib/types/internal/app-binder/task/SendPayloadInChunksTask.d.ts.map +1 -1
  423. package/lib/types/internal/app-binder/task/SendSignAuthorizationDelegationTask.d.ts +18 -0
  424. package/lib/types/internal/app-binder/task/SendSignAuthorizationDelegationTask.d.ts.map +1 -0
  425. package/lib/types/internal/app-binder/task/SendSignAuthorizationDelegationTask.test.d.ts +2 -0
  426. package/lib/types/internal/app-binder/task/SendSignAuthorizationDelegationTask.test.d.ts.map +1 -0
  427. package/lib/types/internal/app-binder/task/SendSignTransactionTask.d.ts +2 -1
  428. package/lib/types/internal/app-binder/task/SendSignTransactionTask.d.ts.map +1 -1
  429. package/lib/types/internal/app-binder/task/SignTypedDataLegacyTask.d.ts +12 -0
  430. package/lib/types/internal/app-binder/task/SignTypedDataLegacyTask.d.ts.map +1 -0
  431. package/lib/types/internal/app-binder/task/SignTypedDataLegacyTask.test.d.ts +2 -0
  432. package/lib/types/internal/app-binder/task/SignTypedDataLegacyTask.test.d.ts.map +1 -0
  433. package/lib/types/internal/di.d.ts.map +1 -1
  434. package/lib/types/internal/eip7702/di/eip7702Module.d.ts +3 -0
  435. package/lib/types/internal/eip7702/di/eip7702Module.d.ts.map +1 -0
  436. package/lib/types/internal/eip7702/di/eip7702Module.test.d.ts +2 -0
  437. package/lib/types/internal/eip7702/di/eip7702Module.test.d.ts.map +1 -0
  438. package/lib/types/internal/eip7702/di/eip7702Types.d.ts +4 -0
  439. package/lib/types/internal/eip7702/di/eip7702Types.d.ts.map +1 -0
  440. package/lib/types/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.d.ts +8 -0
  441. package/lib/types/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.d.ts.map +1 -0
  442. package/lib/types/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.test.d.ts +2 -0
  443. package/lib/types/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.test.d.ts.map +1 -0
  444. package/lib/types/internal/message/di/messageModule.d.ts.map +1 -1
  445. package/lib/types/internal/message/use-case/SignMessageUseCase.d.ts +2 -1
  446. package/lib/types/internal/message/use-case/SignMessageUseCase.d.ts.map +1 -1
  447. package/lib/types/internal/shared/utils/ApplicationChecker.d.ts.map +1 -1
  448. package/lib/types/internal/transaction/di/transactionModule.d.ts.map +1 -1
  449. package/lib/types/internal/transaction/service/mapper/EthersTransactionMapperService.d.ts +8 -0
  450. package/lib/types/internal/transaction/service/mapper/EthersTransactionMapperService.d.ts.map +1 -0
  451. package/lib/types/internal/transaction/service/mapper/EthersTransactionMapperService.test.d.ts +2 -0
  452. package/lib/types/internal/transaction/service/mapper/EthersTransactionMapperService.test.d.ts.map +1 -0
  453. package/lib/types/internal/transaction/service/mapper/TransactionMapperService.d.ts +4 -7
  454. package/lib/types/internal/transaction/service/mapper/TransactionMapperService.d.ts.map +1 -1
  455. package/lib/types/internal/transaction/service/parser/TransactionParserService.d.ts +2 -2
  456. package/lib/types/internal/transaction/service/parser/TransactionParserService.d.ts.map +1 -1
  457. package/lib/types/internal/typed-data/di/typedDataModule.d.ts.map +1 -1
  458. package/lib/types/internal/typed-data/service/TypedDataParser.d.ts +4 -2
  459. package/lib/types/internal/typed-data/service/TypedDataParser.d.ts.map +1 -1
  460. package/lib/types/internal/typed-data/use-case/SignTypedDataUseCase.d.ts +2 -1
  461. package/lib/types/internal/typed-data/use-case/SignTypedDataUseCase.d.ts.map +1 -1
  462. package/lib/types/tsconfig.prod.tsbuildinfo +1 -1
  463. package/package.json +18 -19
  464. package/lib/cjs/internal/app-binder/constant/plugins.js +0 -2
  465. package/lib/cjs/internal/app-binder/constant/plugins.js.map +0 -7
  466. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.js +0 -2
  467. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.js.map +0 -7
  468. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.test.js +0 -2
  469. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.test.js.map +0 -7
  470. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.js +0 -2
  471. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.js.map +0 -7
  472. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.test.js +0 -2
  473. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.test.js.map +0 -7
  474. package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js +0 -2
  475. package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js.map +0 -7
  476. package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js +0 -2
  477. package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js.map +0 -7
  478. package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.js +0 -2
  479. package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.js.map +0 -7
  480. package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js +0 -2
  481. package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js.map +0 -7
  482. package/lib/cjs/internal/transaction/service/mapper/EthersRawTransactionMapper.js +0 -2
  483. package/lib/cjs/internal/transaction/service/mapper/EthersRawTransactionMapper.js.map +0 -7
  484. package/lib/cjs/internal/transaction/service/mapper/EthersRawTransactionMapper.test.js +0 -2
  485. package/lib/cjs/internal/transaction/service/mapper/EthersRawTransactionMapper.test.js.map +0 -7
  486. package/lib/cjs/internal/transaction/service/mapper/TransactionMapper.js +0 -2
  487. package/lib/cjs/internal/transaction/service/mapper/TransactionMapper.js.map +0 -7
  488. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.test.js +0 -2
  489. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.test.js.map +0 -7
  490. package/lib/esm/internal/app-binder/constant/plugins.js +0 -2
  491. package/lib/esm/internal/app-binder/constant/plugins.js.map +0 -7
  492. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.js +0 -2
  493. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.js.map +0 -7
  494. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.test.js +0 -2
  495. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.test.js.map +0 -7
  496. package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.js +0 -2
  497. package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.js.map +0 -7
  498. package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.test.js +0 -2
  499. package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.test.js.map +0 -7
  500. package/lib/esm/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js +0 -2
  501. package/lib/esm/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js.map +0 -7
  502. package/lib/esm/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js +0 -2
  503. package/lib/esm/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js.map +0 -7
  504. package/lib/esm/internal/app-binder/task/ProvideTransactionGenericContextTask.js +0 -2
  505. package/lib/esm/internal/app-binder/task/ProvideTransactionGenericContextTask.js.map +0 -7
  506. package/lib/esm/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js +0 -2
  507. package/lib/esm/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js.map +0 -7
  508. package/lib/esm/internal/transaction/service/mapper/EthersRawTransactionMapper.js +0 -2
  509. package/lib/esm/internal/transaction/service/mapper/EthersRawTransactionMapper.js.map +0 -7
  510. package/lib/esm/internal/transaction/service/mapper/EthersRawTransactionMapper.test.js +0 -2
  511. package/lib/esm/internal/transaction/service/mapper/EthersRawTransactionMapper.test.js.map +0 -7
  512. package/lib/esm/internal/transaction/service/mapper/TransactionMapper.js +0 -1
  513. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.test.js +0 -2
  514. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.test.js.map +0 -7
  515. package/lib/types/internal/app-binder/constant/plugins.d.ts +0 -2
  516. package/lib/types/internal/app-binder/constant/plugins.d.ts.map +0 -1
  517. package/lib/types/internal/app-binder/task/BuildTransactionContextTask.d.ts +0 -32
  518. package/lib/types/internal/app-binder/task/BuildTransactionContextTask.d.ts.map +0 -1
  519. package/lib/types/internal/app-binder/task/BuildTransactionContextTask.test.d.ts +0 -2
  520. package/lib/types/internal/app-binder/task/BuildTransactionContextTask.test.d.ts.map +0 -1
  521. package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.d.ts +0 -38
  522. package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.d.ts.map +0 -1
  523. package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.test.d.ts +0 -2
  524. package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.test.d.ts.map +0 -1
  525. package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.d.ts +0 -80
  526. package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.d.ts.map +0 -1
  527. package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.d.ts +0 -2
  528. package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.d.ts.map +0 -1
  529. package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.d.ts +0 -28
  530. package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.d.ts.map +0 -1
  531. package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.test.d.ts +0 -2
  532. package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.test.d.ts.map +0 -1
  533. package/lib/types/internal/transaction/service/mapper/EthersRawTransactionMapper.d.ts +0 -7
  534. package/lib/types/internal/transaction/service/mapper/EthersRawTransactionMapper.d.ts.map +0 -1
  535. package/lib/types/internal/transaction/service/mapper/EthersRawTransactionMapper.test.d.ts +0 -2
  536. package/lib/types/internal/transaction/service/mapper/EthersRawTransactionMapper.test.d.ts.map +0 -1
  537. package/lib/types/internal/transaction/service/mapper/TransactionMapper.d.ts +0 -6
  538. package/lib/types/internal/transaction/service/mapper/TransactionMapper.d.ts.map +0 -1
  539. package/lib/types/internal/transaction/service/mapper/TransactionMapperService.test.d.ts +0 -2
  540. package/lib/types/internal/transaction/service/mapper/TransactionMapperService.test.d.ts.map +0 -1
  541. /package/lib/esm/{internal/transaction/service/mapper/TransactionMapper.js.map → api/app-binder/SignDelegationAuthorizationTypes.js.map} +0 -0
@@ -1,2 +1,2 @@
1
- import{APDU_MAX_PAYLOAD as d,CommandResultFactory as i,hexaStringToBuffer as v,InvalidStatusWordError as y}from"@ledgerhq/device-management-kit";import{Transaction as k}from"ethers";import{Just as m,Nothing as C}from"purify-ts";import{SignTransactionCommand as s}from"../../app-binder/command/SignTransactionCommand";import{StartTransactionCommand as w}from"../../app-binder/command/StartTransactionCommand";import{makeDeviceActionInternalApiMock as T}from"../../app-binder/device-action/__test-utils__/makeInternalApi";import{SendSignTransactionTask as n}from"./SendSignTransactionTask";const r=new Uint8Array([5,128,0,0,44,128,0,0,60,128,0,0,0,0,0,0,0,0,0,0,0]),t=new Uint8Array([5,128,0,0,44,128,0,0,60,128,0,0,0,0,0,0,0,0,0,0,0,248,107,130,6,126,132,87,25,19,31,131,1,16,104,148,218,193,127,149,141,46,229,35,162,32,98,6,153,69,151,193,61,131,30,199,128,184,68,169,5,156,187,0,0]),l=new Uint8Array([249,8,175,38,133,1,178,61,148,131,131,5,193,252,148,222,241,192,222,217,190,199,241,161,103,8,25,131,50,64,240,39,178,94,255,128,185,8,136,65,85,101,176,0,0,0,0,0,0,0,0,0,0,0,0,31,152,64,168,93,90,245,191,29,23,98,249,37,189,173,220,66,1,249,132,0,0,0,0,0,0,0,0,0,0,0,0,160,184,105,145,198,33,139,54,193,209,157,74,46,158,176,206,54,6,235,72,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,233,51,89,83,149,108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,51,239,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,96,0,0,0,0,0,0,0,0,0]);describe("SendSignTransactionTask",()=>{const x=T(),u={v:27,r:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",s:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"},f=i({data:m(u)}),o=i({data:C});beforeEach(()=>{vi.resetAllMocks()}),describe("run",()=>{it("should send the transaction in one command",async()=>{const e={derivationPath:"44'/60'/0'/0/0",serializedTransaction:t,chainId:1,transactionType:1,isLegacy:!0};x.sendCommand.mockResolvedValueOnce(f);const a=await new n(x,e).run();expect(x.sendCommand.mock.calls).toHaveLength(1),expect(x.sendCommand.mock.calls[0][0]).toStrictEqual(new s({serializedTransaction:new Uint8Array([...r,...t]),isFirstChunk:!0})),expect(a.data).toStrictEqual(u)}),it("Generic-parser transaction should be signed without payload",async()=>{const e={derivationPath:"44'/60'/0'/0/0",serializedTransaction:t,chainId:1,transactionType:1,isLegacy:!1};x.sendCommand.mockResolvedValueOnce(f);const a=await new n(x,e).run();expect(x.sendCommand.mock.calls).toHaveLength(1),expect(x.sendCommand.mock.calls[0][0]).toStrictEqual(new w),expect(a.data).toStrictEqual(u)}),it("should send the transaction in chunks",async()=>{const e={derivationPath:"44'/60'/0'/0/0",serializedTransaction:l,chainId:1,transactionType:1,isLegacy:!0};x.sendCommand.mockResolvedValueOnce(o),x.sendCommand.mockResolvedValueOnce(f);const a=await new n(x,e).run();expect(x.sendCommand.mock.calls).toHaveLength(2),expect(x.sendCommand.mock.calls[0][0]).toStrictEqual(new s({serializedTransaction:new Uint8Array([...r,...l]).slice(0,d),isFirstChunk:!0})),expect(x.sendCommand.mock.calls[1][0]).toStrictEqual(new s({serializedTransaction:new Uint8Array([...r,...l]).slice(d,d*2),isFirstChunk:!1})),expect(a.data).toStrictEqual(u)}),it.each([[458,127,254],[458,0x818181818181,254],[452,0x818181818181,251]])("should prevent chunking legacy transactions just before the [r,s,v] for dataSize %i, chainId %i",async(e,a,h)=>{const c=new k;c.to="0x0123456789abcdef0123456789abcdef01234567",c.nonce=0,c.value=0n,c.gasLimit=1n,c.gasPrice=2n,c.data="0x"+new Array(e).fill("00").join(""),c.chainId=a,c.type=0;const p=v(c.unsignedSerialized),g={derivationPath:"44'/60'/0'/0/0",serializedTransaction:p,chainId:a,transactionType:0,isLegacy:!0};x.sendCommand.mockResolvedValueOnce(o),x.sendCommand.mockResolvedValueOnce(o),x.sendCommand.mockResolvedValue(f),await new n(x,g).run();const b=Uint8Array.from([...r,...p]);expect(x.sendCommand.mock.calls).toHaveLength(3),expect(x.sendCommand.mock.calls[0][0]).toStrictEqual(new s({serializedTransaction:b.slice(0,h),isFirstChunk:!0})),expect(x.sendCommand.mock.calls[1][0]).toStrictEqual(new s({serializedTransaction:b.slice(h,h*2),isFirstChunk:!1})),expect(x.sendCommand.mock.calls[2][0]).toStrictEqual(new s({serializedTransaction:b.slice(h*2),isFirstChunk:!1}))}),it("should return an error if the command fails",async()=>{const e={derivationPath:"44'/60'/0'/0/0",serializedTransaction:t,chainId:1,transactionType:1,isLegacy:!0};x.sendCommand.mockResolvedValueOnce(o);const a=await new n(x,e).run();expect(x.sendCommand.mock.calls).toHaveLength(1),expect(x.sendCommand.mock.calls[0][0]).toStrictEqual(new s({serializedTransaction:new Uint8Array([...r,...t]),isFirstChunk:!0})),expect(a.error).toStrictEqual(new y("no signature returned"))}),it("should return an error if the generic-parser command fails",async()=>{const e={derivationPath:"44'/60'/0'/0/0",serializedTransaction:t,chainId:1,transactionType:1,isLegacy:!1};x.sendCommand.mockResolvedValueOnce(o);const a=await new n(x,e).run();expect(x.sendCommand.mock.calls).toHaveLength(1),expect(x.sendCommand.mock.calls[0][0]).toStrictEqual(new w),expect(a.error).toStrictEqual(new y("no signature returned"))}),it("should return an error if the command fails in the middle of the transaction",async()=>{const e={derivationPath:"44'/60'/0'/0/0",serializedTransaction:l,chainId:1,transactionType:1,isLegacy:!0};x.sendCommand.mockResolvedValueOnce(o),x.sendCommand.mockResolvedValueOnce(i({error:new y("An error")}));const a=await new n(x,e).run();expect(x.sendCommand.mock.calls).toHaveLength(2),expect(x.sendCommand.mock.calls[0][0]).toStrictEqual(new s({serializedTransaction:new Uint8Array([...r,...l]).slice(0,d),isFirstChunk:!0})),expect(x.sendCommand.mock.calls[1][0]).toStrictEqual(new s({serializedTransaction:new Uint8Array([...r,...l]).slice(d,d*2),isFirstChunk:!1})),expect(a.error).toStrictEqual(new y("An error"))}),it("legacy transaction with small chainId",async()=>{const e={derivationPath:"44'/60'/0'/0/0",serializedTransaction:t,chainId:56,transactionType:0,isLegacy:!0};x.sendCommand.mockResolvedValueOnce(i({data:m({v:147,r:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",s:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"})}));const a=await new n(x,e).run();expect(a.data.v).toStrictEqual(147)}),it("legacy transaction with small chainId with positive parity",async()=>{const e={derivationPath:"44'/60'/0'/0/0",serializedTransaction:t,chainId:56,transactionType:0,isLegacy:!0};x.sendCommand.mockResolvedValueOnce(i({data:m({v:148,r:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",s:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"})}));const a=await new n(x,e).run();expect(a.data.v).toStrictEqual(148)}),it("legacy transaction with big chainId",async()=>{const e={derivationPath:"44'/60'/0'/0/0",serializedTransaction:t,chainId:11297108109,transactionType:0,isLegacy:!0};x.sendCommand.mockResolvedValueOnce(i({data:m({v:131,r:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",s:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"})}));const a=await new n(x,e).run();expect(a.data.v).toStrictEqual(22594216253)}),it("legacy transaction with big chainId with positive parity",async()=>{const e={derivationPath:"44'/60'/0'/0/0",serializedTransaction:t,chainId:11297108109,transactionType:0,isLegacy:!0};x.sendCommand.mockResolvedValueOnce(i({data:m({v:132,r:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",s:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"})}));const a=await new n(x,e).run();expect(a.data.v).toStrictEqual(22594216254)})})});
1
+ import{APDU_MAX_PAYLOAD as l,CommandResultFactory as r,hexaStringToBuffer as w,InvalidStatusWordError as y}from"@ledgerhq/device-management-kit";import{Transaction as S}from"ethers";import{Just as u,Nothing as v}from"purify-ts";import{ClearSigningType as n}from"../../../api/model/ClearSigningType";import{SignTransactionCommand as s}from"../../app-binder/command/SignTransactionCommand";import{StartTransactionCommand as C}from"../../app-binder/command/StartTransactionCommand";import{makeDeviceActionInternalApiMock as k}from"../../app-binder/device-action/__test-utils__/makeInternalApi";import{SendSignTransactionTask as t}from"./SendSignTransactionTask";const o=new Uint8Array([5,128,0,0,44,128,0,0,60,128,0,0,0,0,0,0,0,0,0,0,0]),c=new Uint8Array([5,128,0,0,44,128,0,0,60,128,0,0,0,0,0,0,0,0,0,0,0,248,107,130,6,126,132,87,25,19,31,131,1,16,104,148,218,193,127,149,141,46,229,35,162,32,98,6,153,69,151,193,61,131,30,199,128,184,68,169,5,156,187,0,0]),m=new Uint8Array([249,8,175,38,133,1,178,61,148,131,131,5,193,252,148,222,241,192,222,217,190,199,241,161,103,8,25,131,50,64,240,39,178,94,255,128,185,8,136,65,85,101,176,0,0,0,0,0,0,0,0,0,0,0,0,31,152,64,168,93,90,245,191,29,23,98,249,37,189,173,220,66,1,249,132,0,0,0,0,0,0,0,0,0,0,0,0,160,184,105,145,198,33,139,54,193,209,157,74,46,158,176,206,54,6,235,72,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,233,51,89,83,149,108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,51,239,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,96,0,0,0,0,0,0,0,0,0]);describe("SendSignTransactionTask",()=>{const x=k(),f={v:27,r:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",s:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"},p=r({data:u(f)}),d=r({data:v});beforeEach(()=>{vi.resetAllMocks()}),describe("run",()=>{it("should send the transaction in one command",async()=>{const e={derivationPath:"44'/60'/0'/0/0",serializedTransaction:c,chainId:1,transactionType:1,clearSigningType:n.BASIC};x.sendCommand.mockResolvedValueOnce(p);const a=await new t(x,e).run();expect(x.sendCommand.mock.calls).toHaveLength(1),expect(x.sendCommand.mock.calls[0][0]).toStrictEqual(new s({serializedTransaction:new Uint8Array([...o,...c]),isFirstChunk:!0})),expect(a.data).toStrictEqual(f)}),it("Generic-parser transaction should be signed without payload",async()=>{const e={derivationPath:"44'/60'/0'/0/0",serializedTransaction:c,chainId:1,transactionType:1,clearSigningType:n.EIP7730};x.sendCommand.mockResolvedValueOnce(p);const a=await new t(x,e).run();expect(x.sendCommand.mock.calls).toHaveLength(1),expect(x.sendCommand.mock.calls[0][0]).toStrictEqual(new C),expect(a.data).toStrictEqual(f)}),it("should send the transaction in chunks",async()=>{const e={derivationPath:"44'/60'/0'/0/0",serializedTransaction:m,chainId:1,transactionType:1,clearSigningType:n.BASIC};x.sendCommand.mockResolvedValueOnce(d),x.sendCommand.mockResolvedValueOnce(p);const a=await new t(x,e).run();expect(x.sendCommand.mock.calls).toHaveLength(2),expect(x.sendCommand.mock.calls[0][0]).toStrictEqual(new s({serializedTransaction:new Uint8Array([...o,...m]).slice(0,l),isFirstChunk:!0})),expect(x.sendCommand.mock.calls[1][0]).toStrictEqual(new s({serializedTransaction:new Uint8Array([...o,...m]).slice(l,l*2),isFirstChunk:!1})),expect(a.data).toStrictEqual(f)}),it.each([[458,127,254],[458,0x818181818181,254],[452,0x818181818181,251]])("should prevent chunking legacy transactions just before the [r,s,v] for dataSize %i, chainId %i",async(e,a,h)=>{const i=new S;i.to="0x0123456789abcdef0123456789abcdef01234567",i.nonce=0,i.value=0n,i.gasLimit=1n,i.gasPrice=2n,i.data="0x"+new Array(e).fill("00").join(""),i.chainId=a,i.type=0;const g=w(i.unsignedSerialized),T={derivationPath:"44'/60'/0'/0/0",serializedTransaction:g,chainId:a,transactionType:0,clearSigningType:n.BASIC};x.sendCommand.mockResolvedValueOnce(d),x.sendCommand.mockResolvedValueOnce(d),x.sendCommand.mockResolvedValue(p),await new t(x,T).run();const b=Uint8Array.from([...o,...g]);expect(x.sendCommand.mock.calls).toHaveLength(3),expect(x.sendCommand.mock.calls[0][0]).toStrictEqual(new s({serializedTransaction:b.slice(0,h),isFirstChunk:!0})),expect(x.sendCommand.mock.calls[1][0]).toStrictEqual(new s({serializedTransaction:b.slice(h,h*2),isFirstChunk:!1})),expect(x.sendCommand.mock.calls[2][0]).toStrictEqual(new s({serializedTransaction:b.slice(h*2),isFirstChunk:!1}))}),it("should return an error if the command fails",async()=>{const e={derivationPath:"44'/60'/0'/0/0",serializedTransaction:c,chainId:1,transactionType:1,clearSigningType:n.BASIC};x.sendCommand.mockResolvedValueOnce(d);const a=await new t(x,e).run();expect(x.sendCommand.mock.calls).toHaveLength(1),expect(x.sendCommand.mock.calls[0][0]).toStrictEqual(new s({serializedTransaction:new Uint8Array([...o,...c]),isFirstChunk:!0})),expect(a.error).toStrictEqual(new y("no signature returned"))}),it("should return an error if the generic-parser command fails",async()=>{const e={derivationPath:"44'/60'/0'/0/0",serializedTransaction:c,chainId:1,transactionType:1,clearSigningType:n.EIP7730};x.sendCommand.mockResolvedValueOnce(d);const a=await new t(x,e).run();expect(x.sendCommand.mock.calls).toHaveLength(1),expect(x.sendCommand.mock.calls[0][0]).toStrictEqual(new C),expect(a.error).toStrictEqual(new y("no signature returned"))}),it("should return an error if the command fails in the middle of the transaction",async()=>{const e={derivationPath:"44'/60'/0'/0/0",serializedTransaction:m,chainId:1,transactionType:1,clearSigningType:n.BASIC};x.sendCommand.mockResolvedValueOnce(d),x.sendCommand.mockResolvedValueOnce(r({error:new y("An error")}));const a=await new t(x,e).run();expect(x.sendCommand.mock.calls).toHaveLength(2),expect(x.sendCommand.mock.calls[0][0]).toStrictEqual(new s({serializedTransaction:new Uint8Array([...o,...m]).slice(0,l),isFirstChunk:!0})),expect(x.sendCommand.mock.calls[1][0]).toStrictEqual(new s({serializedTransaction:new Uint8Array([...o,...m]).slice(l,l*2),isFirstChunk:!1})),expect(a.error).toStrictEqual(new y("An error"))}),it("legacy transaction with small chainId",async()=>{const e={derivationPath:"44'/60'/0'/0/0",serializedTransaction:c,chainId:56,transactionType:0,clearSigningType:n.BASIC};x.sendCommand.mockResolvedValueOnce(r({data:u({v:147,r:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",s:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"})}));const a=await new t(x,e).run();expect(a.data.v).toStrictEqual(147)}),it("legacy transaction with small chainId with positive parity",async()=>{const e={derivationPath:"44'/60'/0'/0/0",serializedTransaction:c,chainId:56,transactionType:0,clearSigningType:n.BASIC};x.sendCommand.mockResolvedValueOnce(r({data:u({v:148,r:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",s:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"})}));const a=await new t(x,e).run();expect(a.data.v).toStrictEqual(148)}),it("legacy transaction with big chainId",async()=>{const e={derivationPath:"44'/60'/0'/0/0",serializedTransaction:c,chainId:11297108109,transactionType:0,clearSigningType:n.BASIC};x.sendCommand.mockResolvedValueOnce(r({data:u({v:131,r:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",s:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"})}));const a=await new t(x,e).run();expect(a.data.v).toStrictEqual(22594216253)}),it("legacy transaction with big chainId with positive parity",async()=>{const e={derivationPath:"44'/60'/0'/0/0",serializedTransaction:c,chainId:11297108109,transactionType:0,clearSigningType:n.BASIC};x.sendCommand.mockResolvedValueOnce(r({data:u({v:132,r:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",s:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"})}));const a=await new t(x,e).run();expect(a.data.v).toStrictEqual(22594216254)})})});
2
2
  //# sourceMappingURL=SendSignTransactionTask.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/task/SendSignTransactionTask.test.ts"],
4
- "sourcesContent": ["import {\n APDU_MAX_PAYLOAD,\n CommandResultFactory,\n hexaStringToBuffer,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\nimport { Transaction } from \"ethers\";\nimport { Just, Nothing } from \"purify-ts\";\n\nimport { SignTransactionCommand } from \"@internal/app-binder/command/SignTransactionCommand\";\nimport { StartTransactionCommand } from \"@internal/app-binder/command/StartTransactionCommand\";\nimport { makeDeviceActionInternalApiMock } from \"@internal/app-binder/device-action/__test-utils__/makeInternalApi\";\n\nimport { SendSignTransactionTask } from \"./SendSignTransactionTask\";\n\nconst PATH = new Uint8Array([\n 0x05, 0x80, 0x00, 0x00, 0x2c, 0x80, 0x00, 0x00, 0x3c, 0x80, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n]);\n\nconst SIMPLE_TRANSACTION = new Uint8Array([\n 0x05, 0x80, 0x00, 0x00, 0x2c, 0x80, 0x00, 0x00, 0x3c, 0x80, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x6b, 0x82, 0x06, 0x7e,\n 0x84, 0x57, 0x19, 0x13, 0x1f, 0x83, 0x01, 0x10, 0x68, 0x94, 0xda, 0xc1, 0x7f,\n 0x95, 0x8d, 0x2e, 0xe5, 0x23, 0xa2, 0x20, 0x62, 0x06, 0x99, 0x45, 0x97, 0xc1,\n 0x3d, 0x83, 0x1e, 0xc7, 0x80, 0xb8, 0x44, 0xa9, 0x05, 0x9c, 0xbb, 0x00, 0x00,\n]);\n\nconst BIG_TRANSACTION = new Uint8Array([\n 0xf9, 0x08, 0xaf, 0x26, 0x85, 0x01, 0xb2, 0x3d, 0x94, 0x83, 0x83, 0x05, 0xc1,\n 0xfc, 0x94, 0xde, 0xf1, 0xc0, 0xde, 0xd9, 0xbe, 0xc7, 0xf1, 0xa1, 0x67, 0x08,\n 0x19, 0x83, 0x32, 0x40, 0xf0, 0x27, 0xb2, 0x5e, 0xff, 0x80, 0xb9, 0x08, 0x88,\n 0x41, 0x55, 0x65, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x1f, 0x98, 0x40, 0xa8, 0x5d, 0x5a, 0xf5, 0xbf, 0x1d, 0x17,\n 0x62, 0xf9, 0x25, 0xbd, 0xad, 0xdc, 0x42, 0x01, 0xf9, 0x84, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xb8, 0x69, 0x91,\n 0xc6, 0x21, 0x8b, 0x36, 0xc1, 0xd1, 0x9d, 0x4a, 0x2e, 0x9e, 0xb0, 0xce, 0x36,\n 0x06, 0xeb, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x61, 0xe9, 0x33, 0x59, 0x53, 0x95, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x33,\n 0xef, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x40,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x05, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x40, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x03, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n]);\n\ndescribe(\"SendSignTransactionTask\", () => {\n const apiMock = makeDeviceActionInternalApiMock();\n const signature = {\n v: 27,\n r: \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n s: \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n };\n const resultOk = CommandResultFactory({\n data: Just(signature),\n });\n const resultNothing = CommandResultFactory({ data: Nothing });\n\n beforeEach(() => {\n vi.resetAllMocks();\n });\n\n describe(\"run\", () => {\n it(\"should send the transaction in one command\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: SIMPLE_TRANSACTION,\n chainId: 1,\n transactionType: 1,\n isLegacy: true,\n };\n apiMock.sendCommand.mockResolvedValueOnce(resultOk);\n\n // WHEN\n const result = await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n expect(apiMock.sendCommand.mock.calls).toHaveLength(1);\n expect(apiMock.sendCommand.mock.calls[0]![0]).toStrictEqual(\n new SignTransactionCommand({\n serializedTransaction: new Uint8Array([\n ...PATH,\n ...SIMPLE_TRANSACTION,\n ]),\n isFirstChunk: true,\n }),\n );\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n expect((result as any).data).toStrictEqual(signature);\n });\n\n it(\"Generic-parser transaction should be signed without payload\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: SIMPLE_TRANSACTION,\n chainId: 1,\n transactionType: 1,\n isLegacy: false,\n };\n apiMock.sendCommand.mockResolvedValueOnce(resultOk);\n\n // WHEN\n const result = await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n expect(apiMock.sendCommand.mock.calls).toHaveLength(1);\n expect(apiMock.sendCommand.mock.calls[0]![0]).toStrictEqual(\n new StartTransactionCommand(),\n );\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n expect((result as any).data).toStrictEqual(signature);\n });\n\n it(\"should send the transaction in chunks\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: BIG_TRANSACTION,\n chainId: 1,\n transactionType: 1,\n isLegacy: true,\n };\n apiMock.sendCommand.mockResolvedValueOnce(resultNothing);\n apiMock.sendCommand.mockResolvedValueOnce(resultOk);\n\n // WHEN\n const result = await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n expect(apiMock.sendCommand.mock.calls).toHaveLength(2);\n expect(apiMock.sendCommand.mock.calls[0]![0]).toStrictEqual(\n new SignTransactionCommand({\n serializedTransaction: new Uint8Array([\n ...PATH,\n ...BIG_TRANSACTION,\n ]).slice(0, APDU_MAX_PAYLOAD),\n isFirstChunk: true,\n }),\n );\n expect(apiMock.sendCommand.mock.calls[1]![0]).toStrictEqual(\n new SignTransactionCommand({\n serializedTransaction: new Uint8Array([\n ...PATH,\n ...BIG_TRANSACTION,\n ]).slice(APDU_MAX_PAYLOAD, APDU_MAX_PAYLOAD * 2),\n isFirstChunk: false,\n }),\n );\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n expect((result as any).data).toStrictEqual(signature);\n });\n\n it.each([\n [458, 127, 254],\n [458, 0x818181818181, 254],\n [452, 0x818181818181, 251],\n ])(\n \"should prevent chunking legacy transactions just before the [r,s,v] for dataSize %i, chainId %i\",\n async (dataSize, chainId, chunkSize) => {\n // GIVEN\n const transaction = new Transaction();\n transaction.to = \"0x0123456789abcdef0123456789abcdef01234567\";\n transaction.nonce = 0;\n transaction.value = 0n;\n transaction.gasLimit = 1n;\n transaction.gasPrice = 2n;\n transaction.data = \"0x\" + new Array(dataSize).fill(\"00\").join(\"\");\n transaction.chainId = chainId;\n transaction.type = 0;\n const serialized = hexaStringToBuffer(transaction.unsignedSerialized)!;\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: serialized,\n chainId,\n transactionType: 0,\n isLegacy: true,\n };\n apiMock.sendCommand.mockResolvedValueOnce(resultNothing);\n apiMock.sendCommand.mockResolvedValueOnce(resultNothing);\n apiMock.sendCommand.mockResolvedValue(resultOk);\n\n // WHEN\n await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n const payload = Uint8Array.from([...PATH, ...serialized]);\n expect(apiMock.sendCommand.mock.calls).toHaveLength(3);\n expect(apiMock.sendCommand.mock.calls[0]![0]).toStrictEqual(\n new SignTransactionCommand({\n serializedTransaction: payload.slice(0, chunkSize),\n isFirstChunk: true,\n }),\n );\n expect(apiMock.sendCommand.mock.calls[1]![0]).toStrictEqual(\n new SignTransactionCommand({\n serializedTransaction: payload.slice(chunkSize, chunkSize * 2),\n isFirstChunk: false,\n }),\n );\n expect(apiMock.sendCommand.mock.calls[2]![0]).toStrictEqual(\n new SignTransactionCommand({\n serializedTransaction: payload.slice(chunkSize * 2),\n isFirstChunk: false,\n }),\n );\n },\n );\n\n it(\"should return an error if the command fails\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: SIMPLE_TRANSACTION,\n chainId: 1,\n transactionType: 1,\n isLegacy: true,\n };\n apiMock.sendCommand.mockResolvedValueOnce(resultNothing);\n\n // WHEN\n const result = await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n expect(apiMock.sendCommand.mock.calls).toHaveLength(1);\n expect(apiMock.sendCommand.mock.calls[0]![0]).toStrictEqual(\n new SignTransactionCommand({\n serializedTransaction: new Uint8Array([\n ...PATH,\n ...SIMPLE_TRANSACTION,\n ]),\n isFirstChunk: true,\n }),\n );\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n expect((result as any).error).toStrictEqual(\n new InvalidStatusWordError(\"no signature returned\"),\n );\n });\n\n it(\"should return an error if the generic-parser command fails\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: SIMPLE_TRANSACTION,\n chainId: 1,\n transactionType: 1,\n isLegacy: false,\n };\n apiMock.sendCommand.mockResolvedValueOnce(resultNothing);\n\n // WHEN\n const result = await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n expect(apiMock.sendCommand.mock.calls).toHaveLength(1);\n expect(apiMock.sendCommand.mock.calls[0]![0]).toStrictEqual(\n new StartTransactionCommand(),\n );\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n expect((result as any).error).toStrictEqual(\n new InvalidStatusWordError(\"no signature returned\"),\n );\n });\n\n it(\"should return an error if the command fails in the middle of the transaction\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: BIG_TRANSACTION,\n chainId: 1,\n transactionType: 1,\n isLegacy: true,\n };\n apiMock.sendCommand.mockResolvedValueOnce(resultNothing);\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"An error\"),\n }),\n );\n\n // WHEN\n const result = await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n expect(apiMock.sendCommand.mock.calls).toHaveLength(2);\n expect(apiMock.sendCommand.mock.calls[0]![0]).toStrictEqual(\n new SignTransactionCommand({\n serializedTransaction: new Uint8Array([\n ...PATH,\n ...BIG_TRANSACTION,\n ]).slice(0, APDU_MAX_PAYLOAD),\n isFirstChunk: true,\n }),\n );\n expect(apiMock.sendCommand.mock.calls[1]![0]).toStrictEqual(\n new SignTransactionCommand({\n serializedTransaction: new Uint8Array([\n ...PATH,\n ...BIG_TRANSACTION,\n ]).slice(APDU_MAX_PAYLOAD, APDU_MAX_PAYLOAD * 2),\n isFirstChunk: false,\n }),\n );\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n expect((result as any).error).toStrictEqual(\n new InvalidStatusWordError(\"An error\"),\n );\n });\n\n it(\"legacy transaction with small chainId\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: SIMPLE_TRANSACTION,\n chainId: 56,\n transactionType: 0,\n isLegacy: true,\n };\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({\n data: Just({\n v: 147,\n r: \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n s: \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n }),\n }),\n );\n\n // WHEN\n const result = await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n expect((result as any).data.v).toStrictEqual(147);\n });\n\n it(\"legacy transaction with small chainId with positive parity\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: SIMPLE_TRANSACTION,\n chainId: 56,\n transactionType: 0,\n isLegacy: true,\n };\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({\n data: Just({\n v: 148,\n r: \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n s: \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n }),\n }),\n );\n\n // WHEN\n const result = await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n expect((result as any).data.v).toStrictEqual(148);\n });\n\n it(\"legacy transaction with big chainId\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: SIMPLE_TRANSACTION,\n chainId: 11297108109,\n transactionType: 0,\n isLegacy: true,\n };\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({\n data: Just({\n v: 131,\n r: \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n s: \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n }),\n }),\n );\n\n // WHEN\n const result = await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n expect((result as any).data.v).toStrictEqual(22594216253);\n });\n\n it(\"legacy transaction with big chainId with positive parity\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: SIMPLE_TRANSACTION,\n chainId: 11297108109,\n transactionType: 0,\n isLegacy: true,\n };\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({\n data: Just({\n v: 132,\n r: \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n s: \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n }),\n }),\n );\n\n // WHEN\n const result = await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n expect((result as any).data.v).toStrictEqual(22594216254);\n });\n });\n});\n"],
5
- "mappings": "AAAA,OACE,oBAAAA,EACA,wBAAAC,EACA,sBAAAC,EACA,0BAAAC,MACK,kCACP,OAAS,eAAAC,MAAmB,SAC5B,OAAS,QAAAC,EAAM,WAAAC,MAAe,YAE9B,OAAS,0BAAAC,MAA8B,sDACvC,OAAS,2BAAAC,MAA+B,uDACxC,OAAS,mCAAAC,MAAuC,oEAEhD,OAAS,2BAAAC,MAA+B,4BAExC,MAAMC,EAAO,IAAI,WAAW,CAC1B,EAAM,IAAM,EAAM,EAAM,GAAM,IAAM,EAAM,EAAM,GAAM,IAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,CAC5C,CAAC,EAEKC,EAAqB,IAAI,WAAW,CACxC,EAAM,IAAM,EAAM,EAAM,GAAM,IAAM,EAAM,EAAM,GAAM,IAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,IAAM,IAAM,IAAM,EAAM,IACxE,IAAM,GAAM,GAAM,GAAM,GAAM,IAAM,EAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IACxE,IAAM,IAAM,GAAM,IAAM,GAAM,IAAM,GAAM,GAAM,EAAM,IAAM,GAAM,IAAM,IACxE,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,EAAM,IAAM,IAAM,EAAM,CAC1E,CAAC,EAEKC,EAAkB,IAAI,WAAW,CACrC,IAAM,EAAM,IAAM,GAAM,IAAM,EAAM,IAAM,GAAM,IAAM,IAAM,IAAM,EAAM,IACxE,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,EACxE,GAAM,IAAM,GAAM,GAAM,IAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,EAAM,IACxE,GAAM,GAAM,IAAM,IAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,GAAM,IAAM,GAAM,IAAM,GAAM,GAAM,IAAM,IAAM,GAAM,GACxE,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,EAAM,IAAM,IAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,IAAM,IAAM,IAAM,IACxE,IAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GACxE,EAAM,IAAM,GAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,GAAM,IAAM,GAAM,GAAM,GAAM,IAAM,IAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,GACxE,IAAM,GAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,IAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,IAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,GACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,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",
6
- "names": ["APDU_MAX_PAYLOAD", "CommandResultFactory", "hexaStringToBuffer", "InvalidStatusWordError", "Transaction", "Just", "Nothing", "SignTransactionCommand", "StartTransactionCommand", "makeDeviceActionInternalApiMock", "SendSignTransactionTask", "PATH", "SIMPLE_TRANSACTION", "BIG_TRANSACTION", "apiMock", "signature", "resultOk", "resultNothing", "args", "result", "dataSize", "chainId", "chunkSize", "transaction", "serialized", "payload"]
4
+ "sourcesContent": ["import {\n APDU_MAX_PAYLOAD,\n CommandResultFactory,\n hexaStringToBuffer,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\nimport { Transaction } from \"ethers\";\nimport { Just, Nothing } from \"purify-ts\";\n\nimport { ClearSigningType } from \"@api/model/ClearSigningType\";\nimport { SignTransactionCommand } from \"@internal/app-binder/command/SignTransactionCommand\";\nimport { StartTransactionCommand } from \"@internal/app-binder/command/StartTransactionCommand\";\nimport { makeDeviceActionInternalApiMock } from \"@internal/app-binder/device-action/__test-utils__/makeInternalApi\";\n\nimport { SendSignTransactionTask } from \"./SendSignTransactionTask\";\n\nconst PATH = new Uint8Array([\n 0x05, 0x80, 0x00, 0x00, 0x2c, 0x80, 0x00, 0x00, 0x3c, 0x80, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n]);\n\nconst SIMPLE_TRANSACTION = new Uint8Array([\n 0x05, 0x80, 0x00, 0x00, 0x2c, 0x80, 0x00, 0x00, 0x3c, 0x80, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x6b, 0x82, 0x06, 0x7e,\n 0x84, 0x57, 0x19, 0x13, 0x1f, 0x83, 0x01, 0x10, 0x68, 0x94, 0xda, 0xc1, 0x7f,\n 0x95, 0x8d, 0x2e, 0xe5, 0x23, 0xa2, 0x20, 0x62, 0x06, 0x99, 0x45, 0x97, 0xc1,\n 0x3d, 0x83, 0x1e, 0xc7, 0x80, 0xb8, 0x44, 0xa9, 0x05, 0x9c, 0xbb, 0x00, 0x00,\n]);\n\nconst BIG_TRANSACTION = new Uint8Array([\n 0xf9, 0x08, 0xaf, 0x26, 0x85, 0x01, 0xb2, 0x3d, 0x94, 0x83, 0x83, 0x05, 0xc1,\n 0xfc, 0x94, 0xde, 0xf1, 0xc0, 0xde, 0xd9, 0xbe, 0xc7, 0xf1, 0xa1, 0x67, 0x08,\n 0x19, 0x83, 0x32, 0x40, 0xf0, 0x27, 0xb2, 0x5e, 0xff, 0x80, 0xb9, 0x08, 0x88,\n 0x41, 0x55, 0x65, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x1f, 0x98, 0x40, 0xa8, 0x5d, 0x5a, 0xf5, 0xbf, 0x1d, 0x17,\n 0x62, 0xf9, 0x25, 0xbd, 0xad, 0xdc, 0x42, 0x01, 0xf9, 0x84, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xb8, 0x69, 0x91,\n 0xc6, 0x21, 0x8b, 0x36, 0xc1, 0xd1, 0x9d, 0x4a, 0x2e, 0x9e, 0xb0, 0xce, 0x36,\n 0x06, 0xeb, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x61, 0xe9, 0x33, 0x59, 0x53, 0x95, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x33,\n 0xef, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x40,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x05, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x40, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x03, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n]);\n\ndescribe(\"SendSignTransactionTask\", () => {\n const apiMock = makeDeviceActionInternalApiMock();\n const signature = {\n v: 27,\n r: \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n s: \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n };\n const resultOk = CommandResultFactory({\n data: Just(signature),\n });\n const resultNothing = CommandResultFactory({ data: Nothing });\n\n beforeEach(() => {\n vi.resetAllMocks();\n });\n\n describe(\"run\", () => {\n it(\"should send the transaction in one command\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: SIMPLE_TRANSACTION,\n chainId: 1,\n transactionType: 1,\n clearSigningType: ClearSigningType.BASIC,\n };\n apiMock.sendCommand.mockResolvedValueOnce(resultOk);\n\n // WHEN\n const result = await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n expect(apiMock.sendCommand.mock.calls).toHaveLength(1);\n expect(apiMock.sendCommand.mock.calls[0]![0]).toStrictEqual(\n new SignTransactionCommand({\n serializedTransaction: new Uint8Array([\n ...PATH,\n ...SIMPLE_TRANSACTION,\n ]),\n isFirstChunk: true,\n }),\n );\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access\n expect((result as any).data).toStrictEqual(signature);\n });\n\n it(\"Generic-parser transaction should be signed without payload\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: SIMPLE_TRANSACTION,\n chainId: 1,\n transactionType: 1,\n clearSigningType: ClearSigningType.EIP7730,\n };\n apiMock.sendCommand.mockResolvedValueOnce(resultOk);\n\n // WHEN\n const result = await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n expect(apiMock.sendCommand.mock.calls).toHaveLength(1);\n expect(apiMock.sendCommand.mock.calls[0]![0]).toStrictEqual(\n new StartTransactionCommand(),\n );\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access\n expect((result as any).data).toStrictEqual(signature);\n });\n\n it(\"should send the transaction in chunks\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: BIG_TRANSACTION,\n chainId: 1,\n transactionType: 1,\n clearSigningType: ClearSigningType.BASIC,\n };\n apiMock.sendCommand.mockResolvedValueOnce(resultNothing);\n apiMock.sendCommand.mockResolvedValueOnce(resultOk);\n\n // WHEN\n const result = await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n expect(apiMock.sendCommand.mock.calls).toHaveLength(2);\n expect(apiMock.sendCommand.mock.calls[0]![0]).toStrictEqual(\n new SignTransactionCommand({\n serializedTransaction: new Uint8Array([\n ...PATH,\n ...BIG_TRANSACTION,\n ]).slice(0, APDU_MAX_PAYLOAD),\n isFirstChunk: true,\n }),\n );\n expect(apiMock.sendCommand.mock.calls[1]![0]).toStrictEqual(\n new SignTransactionCommand({\n serializedTransaction: new Uint8Array([\n ...PATH,\n ...BIG_TRANSACTION,\n ]).slice(APDU_MAX_PAYLOAD, APDU_MAX_PAYLOAD * 2),\n isFirstChunk: false,\n }),\n );\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access\n expect((result as any).data).toStrictEqual(signature);\n });\n\n it.each([\n [458, 127, 254],\n [458, 0x818181818181, 254],\n [452, 0x818181818181, 251],\n ])(\n \"should prevent chunking legacy transactions just before the [r,s,v] for dataSize %i, chainId %i\",\n async (dataSize, chainId, chunkSize) => {\n // GIVEN\n const transaction = new Transaction();\n transaction.to = \"0x0123456789abcdef0123456789abcdef01234567\";\n transaction.nonce = 0;\n transaction.value = 0n;\n transaction.gasLimit = 1n;\n transaction.gasPrice = 2n;\n transaction.data = \"0x\" + new Array(dataSize).fill(\"00\").join(\"\");\n transaction.chainId = chainId;\n transaction.type = 0;\n const serialized = hexaStringToBuffer(transaction.unsignedSerialized)!;\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: serialized,\n chainId,\n transactionType: 0,\n clearSigningType: ClearSigningType.BASIC,\n };\n apiMock.sendCommand.mockResolvedValueOnce(resultNothing);\n apiMock.sendCommand.mockResolvedValueOnce(resultNothing);\n apiMock.sendCommand.mockResolvedValue(resultOk);\n\n // WHEN\n await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n const payload = Uint8Array.from([...PATH, ...serialized]);\n expect(apiMock.sendCommand.mock.calls).toHaveLength(3);\n expect(apiMock.sendCommand.mock.calls[0]![0]).toStrictEqual(\n new SignTransactionCommand({\n serializedTransaction: payload.slice(0, chunkSize),\n isFirstChunk: true,\n }),\n );\n expect(apiMock.sendCommand.mock.calls[1]![0]).toStrictEqual(\n new SignTransactionCommand({\n serializedTransaction: payload.slice(chunkSize, chunkSize * 2),\n isFirstChunk: false,\n }),\n );\n expect(apiMock.sendCommand.mock.calls[2]![0]).toStrictEqual(\n new SignTransactionCommand({\n serializedTransaction: payload.slice(chunkSize * 2),\n isFirstChunk: false,\n }),\n );\n },\n );\n\n it(\"should return an error if the command fails\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: SIMPLE_TRANSACTION,\n chainId: 1,\n transactionType: 1,\n clearSigningType: ClearSigningType.BASIC,\n };\n apiMock.sendCommand.mockResolvedValueOnce(resultNothing);\n\n // WHEN\n const result = await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n expect(apiMock.sendCommand.mock.calls).toHaveLength(1);\n expect(apiMock.sendCommand.mock.calls[0]![0]).toStrictEqual(\n new SignTransactionCommand({\n serializedTransaction: new Uint8Array([\n ...PATH,\n ...SIMPLE_TRANSACTION,\n ]),\n isFirstChunk: true,\n }),\n );\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access\n expect((result as any).error).toStrictEqual(\n new InvalidStatusWordError(\"no signature returned\"),\n );\n });\n\n it(\"should return an error if the generic-parser command fails\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: SIMPLE_TRANSACTION,\n chainId: 1,\n transactionType: 1,\n clearSigningType: ClearSigningType.EIP7730,\n };\n apiMock.sendCommand.mockResolvedValueOnce(resultNothing);\n\n // WHEN\n const result = await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n expect(apiMock.sendCommand.mock.calls).toHaveLength(1);\n expect(apiMock.sendCommand.mock.calls[0]![0]).toStrictEqual(\n new StartTransactionCommand(),\n );\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access\n expect((result as any).error).toStrictEqual(\n new InvalidStatusWordError(\"no signature returned\"),\n );\n });\n\n it(\"should return an error if the command fails in the middle of the transaction\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: BIG_TRANSACTION,\n chainId: 1,\n transactionType: 1,\n clearSigningType: ClearSigningType.BASIC,\n };\n apiMock.sendCommand.mockResolvedValueOnce(resultNothing);\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"An error\"),\n }),\n );\n\n // WHEN\n const result = await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n expect(apiMock.sendCommand.mock.calls).toHaveLength(2);\n expect(apiMock.sendCommand.mock.calls[0]![0]).toStrictEqual(\n new SignTransactionCommand({\n serializedTransaction: new Uint8Array([\n ...PATH,\n ...BIG_TRANSACTION,\n ]).slice(0, APDU_MAX_PAYLOAD),\n isFirstChunk: true,\n }),\n );\n expect(apiMock.sendCommand.mock.calls[1]![0]).toStrictEqual(\n new SignTransactionCommand({\n serializedTransaction: new Uint8Array([\n ...PATH,\n ...BIG_TRANSACTION,\n ]).slice(APDU_MAX_PAYLOAD, APDU_MAX_PAYLOAD * 2),\n isFirstChunk: false,\n }),\n );\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access\n expect((result as any).error).toStrictEqual(\n new InvalidStatusWordError(\"An error\"),\n );\n });\n\n it(\"legacy transaction with small chainId\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: SIMPLE_TRANSACTION,\n chainId: 56,\n transactionType: 0,\n clearSigningType: ClearSigningType.BASIC,\n };\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({\n data: Just({\n v: 147,\n r: \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n s: \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n }),\n }),\n );\n\n // WHEN\n const result = await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access\n expect((result as any).data.v).toStrictEqual(147);\n });\n\n it(\"legacy transaction with small chainId with positive parity\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: SIMPLE_TRANSACTION,\n chainId: 56,\n transactionType: 0,\n clearSigningType: ClearSigningType.BASIC,\n };\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({\n data: Just({\n v: 148,\n r: \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n s: \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n }),\n }),\n );\n\n // WHEN\n const result = await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access\n expect((result as any).data.v).toStrictEqual(148);\n });\n\n it(\"legacy transaction with big chainId\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: SIMPLE_TRANSACTION,\n chainId: 11297108109,\n transactionType: 0,\n clearSigningType: ClearSigningType.BASIC,\n };\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({\n data: Just({\n v: 131,\n r: \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n s: \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n }),\n }),\n );\n\n // WHEN\n const result = await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access\n expect((result as any).data.v).toStrictEqual(22594216253);\n });\n\n it(\"legacy transaction with big chainId with positive parity\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n serializedTransaction: SIMPLE_TRANSACTION,\n chainId: 11297108109,\n transactionType: 0,\n clearSigningType: ClearSigningType.BASIC,\n };\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({\n data: Just({\n v: 132,\n r: \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n s: \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n }),\n }),\n );\n\n // WHEN\n const result = await new SendSignTransactionTask(apiMock, args).run();\n\n // THEN\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access\n expect((result as any).data.v).toStrictEqual(22594216254);\n });\n });\n});\n"],
5
+ "mappings": "AAAA,OACE,oBAAAA,EACA,wBAAAC,EACA,sBAAAC,EACA,0BAAAC,MACK,kCACP,OAAS,eAAAC,MAAmB,SAC5B,OAAS,QAAAC,EAAM,WAAAC,MAAe,YAE9B,OAAS,oBAAAC,MAAwB,8BACjC,OAAS,0BAAAC,MAA8B,sDACvC,OAAS,2BAAAC,MAA+B,uDACxC,OAAS,mCAAAC,MAAuC,oEAEhD,OAAS,2BAAAC,MAA+B,4BAExC,MAAMC,EAAO,IAAI,WAAW,CAC1B,EAAM,IAAM,EAAM,EAAM,GAAM,IAAM,EAAM,EAAM,GAAM,IAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,CAC5C,CAAC,EAEKC,EAAqB,IAAI,WAAW,CACxC,EAAM,IAAM,EAAM,EAAM,GAAM,IAAM,EAAM,EAAM,GAAM,IAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,IAAM,IAAM,IAAM,EAAM,IACxE,IAAM,GAAM,GAAM,GAAM,GAAM,IAAM,EAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IACxE,IAAM,IAAM,GAAM,IAAM,GAAM,IAAM,GAAM,GAAM,EAAM,IAAM,GAAM,IAAM,IACxE,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,EAAM,IAAM,IAAM,EAAM,CAC1E,CAAC,EAEKC,EAAkB,IAAI,WAAW,CACrC,IAAM,EAAM,IAAM,GAAM,IAAM,EAAM,IAAM,GAAM,IAAM,IAAM,IAAM,EAAM,IACxE,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,EACxE,GAAM,IAAM,GAAM,GAAM,IAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,EAAM,IACxE,GAAM,GAAM,IAAM,IAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,GAAM,IAAM,GAAM,IAAM,GAAM,GAAM,IAAM,IAAM,GAAM,GACxE,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,EAAM,IAAM,IAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,IAAM,IAAM,IAAM,IACxE,IAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GACxE,EAAM,IAAM,GAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,GAAM,IAAM,GAAM,GAAM,GAAM,IAAM,IAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,GACxE,IAAM,GAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,IAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,IAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,GACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,E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",
6
+ "names": ["APDU_MAX_PAYLOAD", "CommandResultFactory", "hexaStringToBuffer", "InvalidStatusWordError", "Transaction", "Just", "Nothing", "ClearSigningType", "SignTransactionCommand", "StartTransactionCommand", "makeDeviceActionInternalApiMock", "SendSignTransactionTask", "PATH", "SIMPLE_TRANSACTION", "BIG_TRANSACTION", "apiMock", "signature", "resultOk", "resultNothing", "args", "result", "dataSize", "chainId", "chunkSize", "transaction", "serialized", "payload"]
7
7
  }
@@ -0,0 +1,2 @@
1
+ import{TypedDataEncoder as e}from"ethers";import{Just as n}from"purify-ts";import{SignEIP712Command as p}from"../../app-binder/command/SignEIP712Command";class h{constructor(t,a,r){this.api=t;this.data=a;this.derivationPath=r}async run(){const t=e.hashDomain(this.data.domain);if(!this.data.types[this.data.primaryType])throw new Error(`Primary type "${this.data.primaryType}" is not defined in the types.`);const a=this.data.types,{EIP712Domain:r,...i}=a,o=e.hashStruct(this.data.primaryType,i,this.data.message);return await this.api.sendCommand(new p({derivationPath:this.derivationPath,legacyArgs:n({domainHash:t,messageHash:o})}))}}export{h as SignTypedDataLegacyTask};
2
+ //# sourceMappingURL=SignTypedDataLegacyTask.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/task/SignTypedDataLegacyTask.ts"],
4
+ "sourcesContent": ["import type {\n CommandResult,\n InternalApi,\n} from \"@ledgerhq/device-management-kit\";\nimport type { TypedDataField } from \"ethers\";\nimport { TypedDataEncoder } from \"ethers\";\nimport { Just } from \"purify-ts\";\n\nimport type { Signature } from \"@api/model/Signature\";\nimport type { TypedData } from \"@api/model/TypedData\";\nimport { SignEIP712Command } from \"@internal/app-binder/command/SignEIP712Command\";\nimport type { EthErrorCodes } from \"@internal/app-binder/command/utils/ethAppErrors\";\n\nexport class SignTypedDataLegacyTask {\n constructor(\n private readonly api: InternalApi,\n private readonly data: TypedData,\n private readonly derivationPath: string,\n ) {}\n\n async run(): Promise<CommandResult<Signature, EthErrorCodes>> {\n // Compute domain hash and message hash on client side\n const domainHash = TypedDataEncoder.hashDomain(this.data.domain);\n\n if (!this.data.types[this.data.primaryType]) {\n throw new Error(\n `Primary type \"${this.data.primaryType}\" is not defined in the types.`,\n );\n }\n\n const typesRecord: Record<string, TypedDataField[]> = this.data.types;\n const { EIP712Domain, ...rest } = typesRecord;\n const messageHash = TypedDataEncoder.hashStruct(\n this.data.primaryType,\n rest,\n this.data.message,\n );\n\n // Blind sign the hash\n return await this.api.sendCommand(\n new SignEIP712Command({\n derivationPath: this.derivationPath,\n legacyArgs: Just({\n domainHash,\n messageHash,\n }),\n }),\n );\n }\n}\n"],
5
+ "mappings": "AAKA,OAAS,oBAAAA,MAAwB,SACjC,OAAS,QAAAC,MAAY,YAIrB,OAAS,qBAAAC,MAAyB,iDAG3B,MAAMC,CAAwB,CACnC,YACmBC,EACAC,EACAC,EACjB,CAHiB,SAAAF,EACA,UAAAC,EACA,oBAAAC,CAChB,CAEH,MAAM,KAAwD,CAE5D,MAAMC,EAAaP,EAAiB,WAAW,KAAK,KAAK,MAAM,EAE/D,GAAI,CAAC,KAAK,KAAK,MAAM,KAAK,KAAK,WAAW,EACxC,MAAM,IAAI,MACR,iBAAiB,KAAK,KAAK,WAAW,gCACxC,EAGF,MAAMQ,EAAgD,KAAK,KAAK,MAC1D,CAAE,aAAAC,EAAc,GAAGC,CAAK,EAAIF,EAC5BG,EAAcX,EAAiB,WACnC,KAAK,KAAK,YACVU,EACA,KAAK,KAAK,OACZ,EAGA,OAAO,MAAM,KAAK,IAAI,YACpB,IAAIR,EAAkB,CACpB,eAAgB,KAAK,eACrB,WAAYD,EAAK,CACf,WAAAM,EACA,YAAAI,CACF,CAAC,CACH,CAAC,CACH,CACF,CACF",
6
+ "names": ["TypedDataEncoder", "Just", "SignEIP712Command", "SignTypedDataLegacyTask", "api", "data", "derivationPath", "domainHash", "typesRecord", "EIP712Domain", "rest", "messageHash"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{CommandResultFactory as n}from"@ledgerhq/device-management-kit";import{Just as s}from"purify-ts";import{SignEIP712Command as o}from"../../app-binder/command/SignEIP712Command";import{makeDeviceActionInternalApiMock as c}from"../../app-binder/device-action/__test-utils__/makeInternalApi";import{SignTypedDataLegacyTask as r}from"./SignTypedDataLegacyTask";describe("SignTypedDataLegacyTask",()=>{const e=c(),i={domain:{name:"Permit2",chainId:137,verifyingContract:"0x000000000022d473030f116ddee9f6b43ac78ba3"},primaryType:"PermitSingle",message:{details:{token:"0x7ceb23fd6bc0add59e62ac25578270cff1b9f619",amount:"69420000000000000000",expiration:"1718184249",nonce:"0"},spender:"0xec7be89e9d109e7e3fec59c222cf297125fefda2",sigDeadline:"1715594049"},types:{PermitSingle:[{name:"details",type:"PermitDetails"},{name:"spender",type:"address"},{name:"sigDeadline",type:"uint256"}],PermitDetails:[{name:"token",type:"address"},{name:"amount",type:"uint"},{name:"expiration",type:"uint"},{name:"nonce",type:"uint"}]}};beforeEach(()=>{vi.resetAllMocks()}),it("Successful legagy signing",async()=>{const t=new r(e,i,"44'/60'/0'/0/0");e.sendCommand.mockResolvedValue(n({data:{r:"0x24",s:"0x42",v:0}}));const a=await t.run();expect(e.sendCommand).toHaveBeenCalledWith(new o({derivationPath:"44'/60'/0'/0/0",legacyArgs:s({domainHash:"0xf033048cb2764f596bc4d98e089fa38bb84b4be3d5da2e77f9bfac0e4d6c68ca",messageHash:"0x1087495b5e10337738059920fe1de8216235299745e8c97e21b409009a4c362a"})})),expect(a).toStrictEqual(n({data:{r:"0x24",s:"0x42",v:0}}))}),it("Should throw error if no primary type",async()=>{const t=new r(e,{...i,primaryType:"Wat?"},"44'/60'/0'/0/0");e.sendCommand.mockResolvedValue(n({data:{r:"0x24",s:"0x42",v:0}}));try{await t.run()}catch(a){expect(a).toBeInstanceOf(Error),expect(a.message).toBe('Primary type "Wat?" is not defined in the types.')}})});
2
+ //# sourceMappingURL=SignTypedDataLegacyTask.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/task/SignTypedDataLegacyTask.test.ts"],
4
+ "sourcesContent": ["import { CommandResultFactory } from \"@ledgerhq/device-management-kit\";\nimport { Just } from \"purify-ts\";\n\nimport { SignEIP712Command } from \"@internal/app-binder/command/SignEIP712Command\";\nimport { makeDeviceActionInternalApiMock } from \"@internal/app-binder/device-action/__test-utils__/makeInternalApi\";\n\nimport { SignTypedDataLegacyTask } from \"./SignTypedDataLegacyTask\";\n\ndescribe(\"SignTypedDataLegacyTask\", () => {\n const apiMock = makeDeviceActionInternalApiMock();\n\n const TEST_DATA = {\n domain: {\n name: \"Permit2\",\n chainId: 137,\n verifyingContract: \"0x000000000022d473030f116ddee9f6b43ac78ba3\",\n },\n primaryType: \"PermitSingle\",\n message: {\n details: {\n token: \"0x7ceb23fd6bc0add59e62ac25578270cff1b9f619\",\n amount: \"69420000000000000000\",\n expiration: \"1718184249\",\n nonce: \"0\",\n },\n spender: \"0xec7be89e9d109e7e3fec59c222cf297125fefda2\",\n sigDeadline: \"1715594049\",\n },\n types: {\n PermitSingle: [\n {\n name: \"details\",\n type: \"PermitDetails\",\n },\n {\n name: \"spender\",\n type: \"address\",\n },\n {\n name: \"sigDeadline\",\n type: \"uint256\",\n },\n ],\n PermitDetails: [\n { name: \"token\", type: \"address\" },\n { name: \"amount\", type: \"uint\" },\n { name: \"expiration\", type: \"uint\" },\n { name: \"nonce\", type: \"uint\" },\n ],\n },\n };\n\n beforeEach(() => {\n vi.resetAllMocks();\n });\n\n it(\"Successful legagy signing\", async () => {\n // GIVEN\n const task = new SignTypedDataLegacyTask(\n apiMock,\n TEST_DATA,\n \"44'/60'/0'/0/0\",\n );\n apiMock.sendCommand.mockResolvedValue(\n CommandResultFactory({\n data: {\n r: \"0x24\",\n s: \"0x42\",\n v: 0,\n },\n }),\n );\n // WHEN\n const signature = await task.run();\n // THEN\n expect(apiMock.sendCommand).toHaveBeenCalledWith(\n new SignEIP712Command({\n derivationPath: \"44'/60'/0'/0/0\",\n legacyArgs: Just({\n domainHash:\n \"0xf033048cb2764f596bc4d98e089fa38bb84b4be3d5da2e77f9bfac0e4d6c68ca\",\n messageHash:\n \"0x1087495b5e10337738059920fe1de8216235299745e8c97e21b409009a4c362a\",\n }),\n }),\n );\n expect(signature).toStrictEqual(\n CommandResultFactory({\n data: {\n r: \"0x24\",\n s: \"0x42\",\n v: 0,\n },\n }),\n );\n });\n\n it(\"Should throw error if no primary type\", async () => {\n // GIVEN\n const task = new SignTypedDataLegacyTask(\n apiMock,\n {\n ...TEST_DATA,\n primaryType: \"Wat?\",\n },\n \"44'/60'/0'/0/0\",\n );\n apiMock.sendCommand.mockResolvedValue(\n CommandResultFactory({\n data: {\n r: \"0x24\",\n s: \"0x42\",\n v: 0,\n },\n }),\n );\n // WHEN\n try {\n await task.run();\n } catch (e) {\n // THEN\n expect(e).toBeInstanceOf(Error);\n // @ts-expect-error\n expect(e.message).toBe(\n 'Primary type \"Wat?\" is not defined in the types.',\n );\n }\n });\n});\n"],
5
+ "mappings": "AAAA,OAAS,wBAAAA,MAA4B,kCACrC,OAAS,QAAAC,MAAY,YAErB,OAAS,qBAAAC,MAAyB,iDAClC,OAAS,mCAAAC,MAAuC,oEAEhD,OAAS,2BAAAC,MAA+B,4BAExC,SAAS,0BAA2B,IAAM,CACxC,MAAMC,EAAUF,EAAgC,EAE1CG,EAAY,CAChB,OAAQ,CACN,KAAM,UACN,QAAS,IACT,kBAAmB,4CACrB,EACA,YAAa,eACb,QAAS,CACP,QAAS,CACP,MAAO,6CACP,OAAQ,uBACR,WAAY,aACZ,MAAO,GACT,EACA,QAAS,6CACT,YAAa,YACf,EACA,MAAO,CACL,aAAc,CACZ,CACE,KAAM,UACN,KAAM,eACR,EACA,CACE,KAAM,UACN,KAAM,SACR,EACA,CACE,KAAM,cACN,KAAM,SACR,CACF,EACA,cAAe,CACb,CAAE,KAAM,QAAS,KAAM,SAAU,EACjC,CAAE,KAAM,SAAU,KAAM,MAAO,EAC/B,CAAE,KAAM,aAAc,KAAM,MAAO,EACnC,CAAE,KAAM,QAAS,KAAM,MAAO,CAChC,CACF,CACF,EAEA,WAAW,IAAM,CACf,GAAG,cAAc,CACnB,CAAC,EAED,GAAG,4BAA6B,SAAY,CAE1C,MAAMC,EAAO,IAAIH,EACfC,EACAC,EACA,gBACF,EACAD,EAAQ,YAAY,kBAClBL,EAAqB,CACnB,KAAM,CACJ,EAAG,OACH,EAAG,OACH,EAAG,CACL,CACF,CAAC,CACH,EAEA,MAAMQ,EAAY,MAAMD,EAAK,IAAI,EAEjC,OAAOF,EAAQ,WAAW,EAAE,qBAC1B,IAAIH,EAAkB,CACpB,eAAgB,iBAChB,WAAYD,EAAK,CACf,WACE,qEACF,YACE,oEACJ,CAAC,CACH,CAAC,CACH,EACA,OAAOO,CAAS,EAAE,cAChBR,EAAqB,CACnB,KAAM,CACJ,EAAG,OACH,EAAG,OACH,EAAG,CACL,CACF,CAAC,CACH,CACF,CAAC,EAED,GAAG,wCAAyC,SAAY,CAEtD,MAAMO,EAAO,IAAIH,EACfC,EACA,CACE,GAAGC,EACH,YAAa,MACf,EACA,gBACF,EACAD,EAAQ,YAAY,kBAClBL,EAAqB,CACnB,KAAM,CACJ,EAAG,OACH,EAAG,OACH,EAAG,CACL,CACF,CAAC,CACH,EAEA,GAAI,CACF,MAAMO,EAAK,IAAI,CACjB,OAASE,EAAG,CAEV,OAAOA,CAAC,EAAE,eAAe,KAAK,EAE9B,OAAOA,EAAE,OAAO,EAAE,KAChB,kDACF,CACF,CACF,CAAC,CACH,CAAC",
6
+ "names": ["CommandResultFactory", "Just", "SignEIP712Command", "makeDeviceActionInternalApiMock", "SignTypedDataLegacyTask", "apiMock", "TEST_DATA", "task", "signature", "e"]
7
+ }
@@ -1,2 +1,2 @@
1
- import{Container as a}from"inversify";import{addressModuleFactory as i}from"./address/di/addressModule";import{appBindingModuleFactory as m}from"./app-binder/di/appBinderModule";import{externalTypes as o}from"./externalTypes";import{messageModuleFactory as d}from"./message/di/messageModule";import{transactionModuleFactory as s}from"./transaction/di/transactionModule";import{typedDataModuleFactory as p}from"./typed-data/di/typedDataModule";const x=({dmk:t,sessionId:n,contextModule:r})=>{const e=new a;return e.bind(o.Dmk).toConstantValue(t),e.bind(o.ContextModule).toConstantValue(r),e.bind(o.SessionId).toConstantValue(n),e.load(i(),m(),d(),s(),p()),e};export{x as makeContainer};
1
+ import{Container as i}from"inversify";import{addressModuleFactory as a}from"./address/di/addressModule";import{appBindingModuleFactory as m}from"./app-binder/di/appBinderModule";import{eip7702ModuleFactory as d}from"./eip7702/di/eip7702Module";import{externalTypes as o}from"./externalTypes";import{messageModuleFactory as s}from"./message/di/messageModule";import{transactionModuleFactory as p}from"./transaction/di/transactionModule";import{typedDataModuleFactory as c}from"./typed-data/di/typedDataModule";const v=({dmk:t,sessionId:n,contextModule:r})=>{const e=new i;return e.bind(o.Dmk).toConstantValue(t),e.bind(o.ContextModule).toConstantValue(r),e.bind(o.SessionId).toConstantValue(n),e.loadSync(a(),m(),d(),s(),p(),c()),e};export{v as makeContainer};
2
2
  //# sourceMappingURL=di.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/internal/di.ts"],
4
- "sourcesContent": ["import { type ContextModule } from \"@ledgerhq/context-module\";\nimport {\n type DeviceManagementKit,\n type DeviceSessionId,\n} from \"@ledgerhq/device-management-kit\";\nimport { Container } from \"inversify\";\n\n// import { makeLoggerMiddleware } from \"inversify-logger-middleware\";\nimport { addressModuleFactory } from \"@internal/address/di/addressModule\";\nimport { appBindingModuleFactory } from \"@internal/app-binder/di/appBinderModule\";\nimport { externalTypes } from \"@internal/externalTypes\";\nimport { messageModuleFactory } from \"@internal/message/di/messageModule\";\nimport { transactionModuleFactory } from \"@internal/transaction/di/transactionModule\";\nimport { typedDataModuleFactory } from \"@internal/typed-data/di/typedDataModule\";\n\n// Uncomment this line to enable the logger middleware\n// const logger = makeLoggerMiddleware();\n\nexport type MakeContainerProps = {\n dmk: DeviceManagementKit;\n sessionId: DeviceSessionId;\n contextModule: ContextModule;\n};\n\nexport const makeContainer = ({\n dmk,\n sessionId,\n contextModule,\n}: MakeContainerProps) => {\n const container = new Container();\n\n // Uncomment this line to enable the logger middleware\n // container.applyMiddleware(logger);\n\n container.bind<DeviceManagementKit>(externalTypes.Dmk).toConstantValue(dmk);\n container\n .bind<ContextModule>(externalTypes.ContextModule)\n .toConstantValue(contextModule);\n container\n .bind<DeviceSessionId>(externalTypes.SessionId)\n .toConstantValue(sessionId);\n\n container.load(\n addressModuleFactory(),\n appBindingModuleFactory(),\n messageModuleFactory(),\n transactionModuleFactory(),\n typedDataModuleFactory(),\n );\n\n return container;\n};\n"],
5
- "mappings": "AAKA,OAAS,aAAAA,MAAiB,YAG1B,OAAS,wBAAAC,MAA4B,qCACrC,OAAS,2BAAAC,MAA+B,0CACxC,OAAS,iBAAAC,MAAqB,0BAC9B,OAAS,wBAAAC,MAA4B,qCACrC,OAAS,4BAAAC,MAAgC,6CACzC,OAAS,0BAAAC,MAA8B,0CAWhC,MAAMC,EAAgB,CAAC,CAC5B,IAAAC,EACA,UAAAC,EACA,cAAAC,CACF,IAA0B,CACxB,MAAMC,EAAY,IAAIX,EAKtB,OAAAW,EAAU,KAA0BR,EAAc,GAAG,EAAE,gBAAgBK,CAAG,EAC1EG,EACG,KAAoBR,EAAc,aAAa,EAC/C,gBAAgBO,CAAa,EAChCC,EACG,KAAsBR,EAAc,SAAS,EAC7C,gBAAgBM,CAAS,EAE5BE,EAAU,KACRV,EAAqB,EACrBC,EAAwB,EACxBE,EAAqB,EACrBC,EAAyB,EACzBC,EAAuB,CACzB,EAEOK,CACT",
6
- "names": ["Container", "addressModuleFactory", "appBindingModuleFactory", "externalTypes", "messageModuleFactory", "transactionModuleFactory", "typedDataModuleFactory", "makeContainer", "dmk", "sessionId", "contextModule", "container"]
4
+ "sourcesContent": ["import { type ContextModule } from \"@ledgerhq/context-module\";\nimport {\n type DeviceManagementKit,\n type DeviceSessionId,\n} from \"@ledgerhq/device-management-kit\";\nimport { Container } from \"inversify\";\n\nimport { addressModuleFactory } from \"@internal/address/di/addressModule\";\nimport { appBindingModuleFactory } from \"@internal/app-binder/di/appBinderModule\";\nimport { eip7702ModuleFactory } from \"@internal/eip7702/di/eip7702Module\";\nimport { externalTypes } from \"@internal/externalTypes\";\nimport { messageModuleFactory } from \"@internal/message/di/messageModule\";\nimport { transactionModuleFactory } from \"@internal/transaction/di/transactionModule\";\nimport { typedDataModuleFactory } from \"@internal/typed-data/di/typedDataModule\";\n\nexport type MakeContainerProps = {\n dmk: DeviceManagementKit;\n sessionId: DeviceSessionId;\n contextModule: ContextModule;\n};\n\nexport const makeContainer = ({\n dmk,\n sessionId,\n contextModule,\n}: MakeContainerProps) => {\n const container = new Container();\n\n container.bind<DeviceManagementKit>(externalTypes.Dmk).toConstantValue(dmk);\n container\n .bind<ContextModule>(externalTypes.ContextModule)\n .toConstantValue(contextModule);\n container\n .bind<DeviceSessionId>(externalTypes.SessionId)\n .toConstantValue(sessionId);\n\n container.loadSync(\n addressModuleFactory(),\n appBindingModuleFactory(),\n eip7702ModuleFactory(),\n messageModuleFactory(),\n transactionModuleFactory(),\n typedDataModuleFactory(),\n );\n\n return container;\n};\n"],
5
+ "mappings": "AAKA,OAAS,aAAAA,MAAiB,YAE1B,OAAS,wBAAAC,MAA4B,qCACrC,OAAS,2BAAAC,MAA+B,0CACxC,OAAS,wBAAAC,MAA4B,qCACrC,OAAS,iBAAAC,MAAqB,0BAC9B,OAAS,wBAAAC,MAA4B,qCACrC,OAAS,4BAAAC,MAAgC,6CACzC,OAAS,0BAAAC,MAA8B,0CAQhC,MAAMC,EAAgB,CAAC,CAC5B,IAAAC,EACA,UAAAC,EACA,cAAAC,CACF,IAA0B,CACxB,MAAMC,EAAY,IAAIZ,EAEtB,OAAAY,EAAU,KAA0BR,EAAc,GAAG,EAAE,gBAAgBK,CAAG,EAC1EG,EACG,KAAoBR,EAAc,aAAa,EAC/C,gBAAgBO,CAAa,EAChCC,EACG,KAAsBR,EAAc,SAAS,EAC7C,gBAAgBM,CAAS,EAE5BE,EAAU,SACRX,EAAqB,EACrBC,EAAwB,EACxBC,EAAqB,EACrBE,EAAqB,EACrBC,EAAyB,EACzBC,EAAuB,CACzB,EAEOK,CACT",
6
+ "names": ["Container", "addressModuleFactory", "appBindingModuleFactory", "eip7702ModuleFactory", "externalTypes", "messageModuleFactory", "transactionModuleFactory", "typedDataModuleFactory", "makeContainer", "dmk", "sessionId", "contextModule", "container"]
7
7
  }
@@ -0,0 +1,2 @@
1
+ import{ContainerModule as e}from"inversify";import{eip7702Types as i}from"../../eip7702/di/eip7702Types";import{SignDelegationAuthorizationUseCase as t}from"../../eip7702/use-case/SignDelegationAuthorizationUseCase";const p=()=>new e(({bind:o})=>{o(i.SignDelegationAuthorizationUseCase).to(t)});export{p as eip7702ModuleFactory};
2
+ //# sourceMappingURL=eip7702Module.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/eip7702/di/eip7702Module.ts"],
4
+ "sourcesContent": ["import { ContainerModule } from \"inversify\";\n\nimport { eip7702Types } from \"@internal/eip7702/di/eip7702Types\";\nimport { SignDelegationAuthorizationUseCase } from \"@internal/eip7702/use-case/SignDelegationAuthorizationUseCase\";\n\nexport const eip7702ModuleFactory = () =>\n new ContainerModule(({ bind }) => {\n bind(eip7702Types.SignDelegationAuthorizationUseCase).to(\n SignDelegationAuthorizationUseCase,\n );\n });\n"],
5
+ "mappings": "AAAA,OAAS,mBAAAA,MAAuB,YAEhC,OAAS,gBAAAC,MAAoB,oCAC7B,OAAS,sCAAAC,MAA0C,gEAE5C,MAAMC,EAAuB,IAClC,IAAIH,EAAgB,CAAC,CAAE,KAAAI,CAAK,IAAM,CAChCA,EAAKH,EAAa,kCAAkC,EAAE,GACpDC,CACF,CACF,CAAC",
6
+ "names": ["ContainerModule", "eip7702Types", "SignDelegationAuthorizationUseCase", "eip7702ModuleFactory", "bind"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{Container as t}from"inversify";import{eip7702ModuleFactory as r}from"./eip7702Module";describe("eip7702ModuleFactory",()=>{describe("Default",()=>{let o,e;beforeEach(()=>{e=r(),o=new t,o.load(e)}),it("should return the eip7702 module",()=>{expect(e).toBeDefined()})})});
2
+ //# sourceMappingURL=eip7702Module.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/eip7702/di/eip7702Module.test.ts"],
4
+ "sourcesContent": ["import { Container } from \"inversify\";\n\nimport { eip7702ModuleFactory } from \"./eip7702Module\";\n\ndescribe(\"eip7702ModuleFactory\", () => {\n describe(\"Default\", () => {\n let container: Container;\n let mod: ReturnType<typeof eip7702ModuleFactory>;\n beforeEach(() => {\n mod = eip7702ModuleFactory();\n container = new Container();\n container.load(mod);\n });\n\n it(\"should return the eip7702 module\", () => {\n expect(mod).toBeDefined();\n });\n });\n});\n"],
5
+ "mappings": "AAAA,OAAS,aAAAA,MAAiB,YAE1B,OAAS,wBAAAC,MAA4B,kBAErC,SAAS,uBAAwB,IAAM,CACrC,SAAS,UAAW,IAAM,CACxB,IAAIC,EACAC,EACJ,WAAW,IAAM,CACfA,EAAMF,EAAqB,EAC3BC,EAAY,IAAIF,EAChBE,EAAU,KAAKC,CAAG,CACpB,CAAC,EAED,GAAG,mCAAoC,IAAM,CAC3C,OAAOA,CAAG,EAAE,YAAY,CAC1B,CAAC,CACH,CAAC,CACH,CAAC",
6
+ "names": ["Container", "eip7702ModuleFactory", "container", "mod"]
7
+ }
@@ -0,0 +1,2 @@
1
+ const e={SignDelegationAuthorizationUseCase:Symbol.for("SignDelegationAuthorizationUseCase")};export{e as eip7702Types};
2
+ //# sourceMappingURL=eip7702Types.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/eip7702/di/eip7702Types.ts"],
4
+ "sourcesContent": ["export const eip7702Types = {\n SignDelegationAuthorizationUseCase: Symbol.for(\n \"SignDelegationAuthorizationUseCase\",\n ),\n};\n"],
5
+ "mappings": "AAAO,MAAMA,EAAe,CAC1B,mCAAoC,OAAO,IACzC,oCACF,CACF",
6
+ "names": ["eip7702Types"]
7
+ }
@@ -0,0 +1,2 @@
1
+ var u=Object.defineProperty;var c=Object.getOwnPropertyDescriptor;var d=(n,r,i,t)=>{for(var p=t>1?void 0:t?c(r,i):r,o=n.length-1,m;o>=0;o--)(m=n[o])&&(p=(t?m(r,i,p):m(p))||p);return t&&p&&u(r,i,p),p},B=(n,r)=>(i,t)=>r(i,t,n);import{inject as A,injectable as h}from"inversify";import{appBinderTypes as a}from"../../app-binder/di/appBinderTypes";let e=class{_appBinder;constructor(r){this._appBinder=r}execute(r,i,t,p){return this._appBinder.signDelegationAuthorization({derivationPath:r,nonce:i,address:t,chainId:p})}};e=d([h(),B(0,A(a.AppBinding))],e);export{e as SignDelegationAuthorizationUseCase};
2
+ //# sourceMappingURL=SignDelegationAuthorizationUseCase.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.ts"],
4
+ "sourcesContent": ["import { inject, injectable } from \"inversify\";\n\nimport { SignDelegationAuthorizationDAReturnType } from \"@api/app-binder/SignDelegationAuthorizationTypes\";\nimport { appBinderTypes } from \"@internal/app-binder/di/appBinderTypes\";\nimport { EthAppBinder } from \"@internal/app-binder/EthAppBinder\";\n\n@injectable()\nexport class SignDelegationAuthorizationUseCase {\n private _appBinder: EthAppBinder;\n\n constructor(\n @inject(appBinderTypes.AppBinding)\n appBinding: EthAppBinder,\n ) {\n this._appBinder = appBinding;\n }\n\n execute(\n derivationPath: string,\n nonce: number,\n address: string,\n chainId: number,\n ): SignDelegationAuthorizationDAReturnType {\n return this._appBinder.signDelegationAuthorization({\n derivationPath,\n nonce,\n address,\n chainId,\n });\n }\n}\n"],
5
+ "mappings": "iOAAA,OAAS,UAAAA,EAAQ,cAAAC,MAAkB,YAGnC,OAAS,kBAAAC,MAAsB,yCAIxB,IAAMC,EAAN,KAAyC,CACtC,WAER,YAEEC,EACA,CACA,KAAK,WAAaA,CACpB,CAEA,QACEC,EACAC,EACAC,EACAC,EACyC,CACzC,OAAO,KAAK,WAAW,4BAA4B,CACjD,eAAAH,EACA,MAAAC,EACA,QAAAC,EACA,QAAAC,CACF,CAAC,CACH,CACF,EAvBaL,EAANM,EAAA,CADNC,EAAW,EAKPC,EAAA,EAAAC,EAAOC,EAAe,UAAU,IAJxBV",
6
+ "names": ["inject", "injectable", "appBinderTypes", "SignDelegationAuthorizationUseCase", "appBinding", "derivationPath", "nonce", "address", "chainId", "__decorateClass", "injectable", "__decorateParam", "inject", "appBinderTypes"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{SignDelegationAuthorizationUseCase as s}from"./SignDelegationAuthorizationUseCase";describe("SignDelegationAuthorizationUseCase",()=>{it("should call signPersonalMessage on appBinder with the correct arguments",()=>{const e="44'/501'/0'/0'",n="address",i={signDelegationAuthorization:vi.fn()};new s(i).execute(e,42,n,2),expect(i.signDelegationAuthorization).toHaveBeenCalledWith({derivationPath:e,nonce:42,address:n,chainId:2})})});
2
+ //# sourceMappingURL=SignDelegationAuthorizationUseCase.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.test.ts"],
4
+ "sourcesContent": ["import { type EthAppBinder } from \"@internal/app-binder/EthAppBinder\";\n\nimport { SignDelegationAuthorizationUseCase } from \"./SignDelegationAuthorizationUseCase\";\n\ndescribe(\"SignDelegationAuthorizationUseCase\", () => {\n it(\"should call signPersonalMessage on appBinder with the correct arguments\", () => {\n // Given\n const derivationPath = \"44'/501'/0'/0'\";\n const chainId = 2;\n const nonce = 42;\n const address = \"address\";\n const appBinder = {\n signDelegationAuthorization: vi.fn(),\n };\n const signMessageUseCase = new SignDelegationAuthorizationUseCase(\n appBinder as unknown as EthAppBinder,\n );\n\n // When\n signMessageUseCase.execute(derivationPath, nonce, address, chainId);\n\n // Then\n expect(appBinder.signDelegationAuthorization).toHaveBeenCalledWith({\n derivationPath,\n nonce,\n address,\n chainId,\n });\n });\n});\n"],
5
+ "mappings": "AAEA,OAAS,sCAAAA,MAA0C,uCAEnD,SAAS,qCAAsC,IAAM,CACnD,GAAG,0EAA2E,IAAM,CAElF,MAAMC,EAAiB,iBAGjBC,EAAU,UACVC,EAAY,CAChB,4BAA6B,GAAG,GAAG,CACrC,EAC2B,IAAIH,EAC7BG,CACF,EAGmB,QAAQF,EAAgB,GAAOC,EAAS,CAAO,EAGlE,OAAOC,EAAU,2BAA2B,EAAE,qBAAqB,CACjE,eAAAF,EACA,SACA,QAAAC,EACA,SACF,CAAC,CACH,CAAC,CACH,CAAC",
6
+ "names": ["SignDelegationAuthorizationUseCase", "derivationPath", "address", "appBinder"]
7
+ }
@@ -1,2 +1,2 @@
1
- import{ContainerModule as o}from"inversify";import{messageTypes as n}from"../../message/di/messageTypes";import{SignMessageUseCase as s}from"../../message/use-case/SignMessageUseCase";const p=()=>new o((e,i,t,a,r,m,d)=>{e(n.SignMessageUseCase).to(s)});export{p as messageModuleFactory};
1
+ import{ContainerModule as s}from"inversify";import{messageTypes as o}from"../../message/di/messageTypes";import{SignMessageUseCase as r}from"../../message/use-case/SignMessageUseCase";const g=()=>new s(({bind:e})=>{e(o.SignMessageUseCase).to(r)});export{g as messageModuleFactory};
2
2
  //# sourceMappingURL=messageModule.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/message/di/messageModule.ts"],
4
- "sourcesContent": ["import { ContainerModule } from \"inversify\";\n\nimport { messageTypes } from \"@internal/message/di/messageTypes\";\nimport { SignMessageUseCase } from \"@internal/message/use-case/SignMessageUseCase\";\n\nexport const messageModuleFactory = () =>\n new ContainerModule(\n (\n bind,\n _unbind,\n _isBound,\n _rebind,\n _unbindAsync,\n _onActivation,\n _onDeactivation,\n ) => {\n bind(messageTypes.SignMessageUseCase).to(SignMessageUseCase);\n },\n );\n"],
5
- "mappings": "AAAA,OAAS,mBAAAA,MAAuB,YAEhC,OAAS,gBAAAC,MAAoB,oCAC7B,OAAS,sBAAAC,MAA0B,gDAE5B,MAAMC,EAAuB,IAClC,IAAIH,EACF,CACEI,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,IACG,CACHN,EAAKH,EAAa,kBAAkB,EAAE,GAAGC,CAAkB,CAC7D,CACF",
6
- "names": ["ContainerModule", "messageTypes", "SignMessageUseCase", "messageModuleFactory", "bind", "_unbind", "_isBound", "_rebind", "_unbindAsync", "_onActivation", "_onDeactivation"]
4
+ "sourcesContent": ["import { ContainerModule } from \"inversify\";\n\nimport { messageTypes } from \"@internal/message/di/messageTypes\";\nimport { SignMessageUseCase } from \"@internal/message/use-case/SignMessageUseCase\";\n\nexport const messageModuleFactory = () =>\n new ContainerModule(({ bind }) => {\n bind(messageTypes.SignMessageUseCase).to(SignMessageUseCase);\n });\n"],
5
+ "mappings": "AAAA,OAAS,mBAAAA,MAAuB,YAEhC,OAAS,gBAAAC,MAAoB,oCAC7B,OAAS,sBAAAC,MAA0B,gDAE5B,MAAMC,EAAuB,IAClC,IAAIH,EAAgB,CAAC,CAAE,KAAAI,CAAK,IAAM,CAChCA,EAAKH,EAAa,kBAAkB,EAAE,GAAGC,CAAkB,CAC7D,CAAC",
6
+ "names": ["ContainerModule", "messageTypes", "SignMessageUseCase", "messageModuleFactory", "bind"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{Container as t}from"inversify";import{messageModuleFactory as r}from"./messageModule";describe("messageModuleFactory",()=>{describe("Default",()=>{let o,e;beforeEach(()=>{e=r(),o=new t,o.load(e)}),it("should return the message module",()=>{expect(e).toBeDefined()})})});
1
+ import{Container as t}from"inversify";import{messageModuleFactory as r}from"./messageModule";describe("messageModuleFactory",()=>{describe("Default",()=>{let o,e;beforeEach(()=>{e=r(),o=new t,o.loadSync(e)}),it("should return the message module",()=>{expect(e).toBeDefined()})})});
2
2
  //# sourceMappingURL=messageModule.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/message/di/messageModule.test.ts"],
4
- "sourcesContent": ["import { Container } from \"inversify\";\n\nimport { messageModuleFactory } from \"./messageModule\";\n\ndescribe(\"messageModuleFactory\", () => {\n describe(\"Default\", () => {\n let container: Container;\n let mod: ReturnType<typeof messageModuleFactory>;\n beforeEach(() => {\n mod = messageModuleFactory();\n container = new Container();\n container.load(mod);\n });\n\n it(\"should return the message module\", () => {\n expect(mod).toBeDefined();\n });\n });\n});\n"],
5
- "mappings": "AAAA,OAAS,aAAAA,MAAiB,YAE1B,OAAS,wBAAAC,MAA4B,kBAErC,SAAS,uBAAwB,IAAM,CACrC,SAAS,UAAW,IAAM,CACxB,IAAIC,EACAC,EACJ,WAAW,IAAM,CACfA,EAAMF,EAAqB,EAC3BC,EAAY,IAAIF,EAChBE,EAAU,KAAKC,CAAG,CACpB,CAAC,EAED,GAAG,mCAAoC,IAAM,CAC3C,OAAOA,CAAG,EAAE,YAAY,CAC1B,CAAC,CACH,CAAC,CACH,CAAC",
4
+ "sourcesContent": ["import { Container } from \"inversify\";\n\nimport { messageModuleFactory } from \"./messageModule\";\n\ndescribe(\"messageModuleFactory\", () => {\n describe(\"Default\", () => {\n let container: Container;\n let mod: ReturnType<typeof messageModuleFactory>;\n beforeEach(() => {\n mod = messageModuleFactory();\n container = new Container();\n container.loadSync(mod);\n });\n\n it(\"should return the message module\", () => {\n expect(mod).toBeDefined();\n });\n });\n});\n"],
5
+ "mappings": "AAAA,OAAS,aAAAA,MAAiB,YAE1B,OAAS,wBAAAC,MAA4B,kBAErC,SAAS,uBAAwB,IAAM,CACrC,SAAS,UAAW,IAAM,CACxB,IAAIC,EACAC,EACJ,WAAW,IAAM,CACfA,EAAMF,EAAqB,EAC3BC,EAAY,IAAIF,EAChBE,EAAU,SAASC,CAAG,CACxB,CAAC,EAED,GAAG,mCAAoC,IAAM,CAC3C,OAAOA,CAAG,EAAE,YAAY,CAC1B,CAAC,CACH,CAAC,CACH,CAAC",
6
6
  "names": ["Container", "messageModuleFactory", "container", "mod"]
7
7
  }
@@ -1,2 +1,2 @@
1
- var B=Object.defineProperty;var A=Object.getOwnPropertyDescriptor;var d=(n,r,p,i)=>{for(var t=i>1?void 0:i?A(r,p):r,o=n.length-1,a;o>=0;o--)(a=n[o])&&(t=(i?a(r,p,t):a(t))||t);return i&&t&&B(r,p,t),t},m=(n,r)=>(p,i)=>r(p,i,n);import{inject as c,injectable as s}from"inversify";import{appBinderTypes as h}from"../../app-binder/di/appBinderTypes";let e=class{_appBinder;constructor(r){this._appBinder=r}execute(r,p){return this._appBinder.signPersonalMessage({derivationPath:r,message:p})}};e=d([s(),m(0,c(h.AppBinding))],e);export{e as SignMessageUseCase};
1
+ var A=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var a=(n,p,i,r)=>{for(var e=r>1?void 0:r?d(p,i):p,o=n.length-1,s;o>=0;o--)(s=n[o])&&(e=(r?s(p,i,e):s(e))||e);return r&&e&&A(p,i,e),e},m=(n,p)=>(i,r)=>p(i,r,n);import{inject as B,injectable as c}from"inversify";import{appBinderTypes as f}from"../../app-binder/di/appBinderTypes";let t=class{_appBinder;constructor(p){this._appBinder=p}execute(p,i,r){return this._appBinder.signPersonalMessage({derivationPath:p,message:i,skipOpenApp:r?.skipOpenApp??!1})}};t=a([c(),m(0,B(f.AppBinding))],t);export{t as SignMessageUseCase};
2
2
  //# sourceMappingURL=SignMessageUseCase.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/message/use-case/SignMessageUseCase.ts"],
4
- "sourcesContent": ["import { inject, injectable } from \"inversify\";\n\nimport { SignPersonalMessageDAReturnType } from \"@api/app-binder/SignPersonalMessageDeviceActionTypes\";\nimport { appBinderTypes } from \"@internal/app-binder/di/appBinderTypes\";\nimport { EthAppBinder } from \"@internal/app-binder/EthAppBinder\";\n\n@injectable()\nexport class SignMessageUseCase {\n private _appBinder: EthAppBinder;\n\n constructor(\n @inject(appBinderTypes.AppBinding)\n appBinding: EthAppBinder,\n ) {\n this._appBinder = appBinding;\n }\n\n execute(\n derivationPath: string,\n message: string | Uint8Array,\n ): SignPersonalMessageDAReturnType {\n // 1- Sign the transaction using the app binding\n return this._appBinder.signPersonalMessage({\n derivationPath,\n message,\n });\n }\n}\n"],
5
- "mappings": "iOAAA,OAAS,UAAAA,EAAQ,cAAAC,MAAkB,YAGnC,OAAS,kBAAAC,MAAsB,yCAIxB,IAAMC,EAAN,KAAyB,CACtB,WAER,YAEEC,EACA,CACA,KAAK,WAAaA,CACpB,CAEA,QACEC,EACAC,EACiC,CAEjC,OAAO,KAAK,WAAW,oBAAoB,CACzC,eAAAD,EACA,QAAAC,CACF,CAAC,CACH,CACF,EApBaH,EAANI,EAAA,CADNC,EAAW,EAKPC,EAAA,EAAAC,EAAOC,EAAe,UAAU,IAJxBR",
6
- "names": ["inject", "injectable", "appBinderTypes", "SignMessageUseCase", "appBinding", "derivationPath", "message", "__decorateClass", "injectable", "__decorateParam", "inject", "appBinderTypes"]
4
+ "sourcesContent": ["import { inject, injectable } from \"inversify\";\n\nimport { SignPersonalMessageDAReturnType } from \"@api/app-binder/SignPersonalMessageDeviceActionTypes\";\nimport { MessageOptions } from \"@api/model/MessageOptions\";\nimport { appBinderTypes } from \"@internal/app-binder/di/appBinderTypes\";\nimport { EthAppBinder } from \"@internal/app-binder/EthAppBinder\";\n\n@injectable()\nexport class SignMessageUseCase {\n private _appBinder: EthAppBinder;\n\n constructor(\n @inject(appBinderTypes.AppBinding)\n appBinding: EthAppBinder,\n ) {\n this._appBinder = appBinding;\n }\n\n execute(\n derivationPath: string,\n message: string | Uint8Array,\n options?: MessageOptions,\n ): SignPersonalMessageDAReturnType {\n // 1- Sign the transaction using the app binding\n return this._appBinder.signPersonalMessage({\n derivationPath,\n message,\n skipOpenApp: options?.skipOpenApp ?? false,\n });\n }\n}\n"],
5
+ "mappings": "iOAAA,OAAS,UAAAA,EAAQ,cAAAC,MAAkB,YAInC,OAAS,kBAAAC,MAAsB,yCAIxB,IAAMC,EAAN,KAAyB,CACtB,WAER,YAEEC,EACA,CACA,KAAK,WAAaA,CACpB,CAEA,QACEC,EACAC,EACAC,EACiC,CAEjC,OAAO,KAAK,WAAW,oBAAoB,CACzC,eAAAF,EACA,QAAAC,EACA,YAAaC,GAAS,aAAe,EACvC,CAAC,CACH,CACF,EAtBaJ,EAANK,EAAA,CADNC,EAAW,EAKPC,EAAA,EAAAC,EAAOC,EAAe,UAAU,IAJxBT",
6
+ "names": ["inject", "injectable", "appBinderTypes", "SignMessageUseCase", "appBinding", "derivationPath", "message", "options", "__decorateClass", "injectable", "__decorateParam", "inject", "appBinderTypes"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{SignMessageUseCase as a}from"./SignMessageUseCase";describe("SignMessageUseCase",()=>{it("should call signPersonalMessage on appBinder with the correct arguments",()=>{const e="44'/501'/0'/0'",s="Hello world",n={signPersonalMessage:vi.fn()};new a(n).execute(e,s),expect(n.signPersonalMessage).toHaveBeenCalledWith({derivationPath:e,message:s})})});
1
+ import{SignMessageUseCase as a}from"./SignMessageUseCase";describe("SignMessageUseCase",()=>{it("should call signPersonalMessage on appBinder with the correct arguments",()=>{const e="44'/501'/0'/0'",s="Hello world",n={signPersonalMessage:vi.fn()};new a(n).execute(e,s),expect(n.signPersonalMessage).toHaveBeenCalledWith({derivationPath:e,message:s,skipOpenApp:!1})})});
2
2
  //# sourceMappingURL=SignMessageUseCase.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/message/use-case/SignMessageUseCase.test.ts"],
4
- "sourcesContent": ["import { type EthAppBinder } from \"@internal/app-binder/EthAppBinder\";\n\nimport { SignMessageUseCase } from \"./SignMessageUseCase\";\n\ndescribe(\"SignMessageUseCase\", () => {\n it(\"should call signPersonalMessage on appBinder with the correct arguments\", () => {\n // Given\n const derivationPath = \"44'/501'/0'/0'\";\n const message = \"Hello world\";\n const appBinder = {\n signPersonalMessage: vi.fn(),\n };\n const signMessageUseCase = new SignMessageUseCase(\n appBinder as unknown as EthAppBinder,\n );\n\n // When\n signMessageUseCase.execute(derivationPath, message);\n\n // Then\n expect(appBinder.signPersonalMessage).toHaveBeenCalledWith({\n derivationPath,\n message,\n });\n });\n});\n"],
5
- "mappings": "AAEA,OAAS,sBAAAA,MAA0B,uBAEnC,SAAS,qBAAsB,IAAM,CACnC,GAAG,0EAA2E,IAAM,CAElF,MAAMC,EAAiB,iBACjBC,EAAU,cACVC,EAAY,CAChB,oBAAqB,GAAG,GAAG,CAC7B,EAC2B,IAAIH,EAC7BG,CACF,EAGmB,QAAQF,EAAgBC,CAAO,EAGlD,OAAOC,EAAU,mBAAmB,EAAE,qBAAqB,CACzD,eAAAF,EACA,QAAAC,CACF,CAAC,CACH,CAAC,CACH,CAAC",
4
+ "sourcesContent": ["import { type EthAppBinder } from \"@internal/app-binder/EthAppBinder\";\n\nimport { SignMessageUseCase } from \"./SignMessageUseCase\";\n\ndescribe(\"SignMessageUseCase\", () => {\n it(\"should call signPersonalMessage on appBinder with the correct arguments\", () => {\n // Given\n const derivationPath = \"44'/501'/0'/0'\";\n const message = \"Hello world\";\n const appBinder = {\n signPersonalMessage: vi.fn(),\n };\n const signMessageUseCase = new SignMessageUseCase(\n appBinder as unknown as EthAppBinder,\n );\n\n // When\n signMessageUseCase.execute(derivationPath, message);\n\n // Then\n expect(appBinder.signPersonalMessage).toHaveBeenCalledWith({\n derivationPath,\n message,\n skipOpenApp: false,\n });\n });\n});\n"],
5
+ "mappings": "AAEA,OAAS,sBAAAA,MAA0B,uBAEnC,SAAS,qBAAsB,IAAM,CACnC,GAAG,0EAA2E,IAAM,CAElF,MAAMC,EAAiB,iBACjBC,EAAU,cACVC,EAAY,CAChB,oBAAqB,GAAG,GAAG,CAC7B,EAC2B,IAAIH,EAC7BG,CACF,EAGmB,QAAQF,EAAgBC,CAAO,EAGlD,OAAOC,EAAU,mBAAmB,EAAE,qBAAqB,CACzD,eAAAF,EACA,QAAAC,EACA,YAAa,EACf,CAAC,CACH,CAAC,CACH,CAAC",
6
6
  "names": ["SignMessageUseCase", "derivationPath", "message", "appBinder"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{DeviceSessionStateType as s}from"@ledgerhq/device-management-kit";import{gt as t,gte as o}from"semver";import{ETHEREUM_PLUGINS as r}from"../../app-binder/constant/plugins";class m{isCompatible=!0;version="0.0.1";modelId;constructor(e,i){if(this.modelId=e.deviceModelId,e.sessionStateType===s.Connected){this.isCompatible=!1;return}if(e.currentApp.name!=="Ethereum"&&!r.includes(e.currentApp.name)){this.isCompatible=!1;return}e.currentApp.name==="Ethereum"?this.version=e.currentApp.version:e.currentApp.name==="Exchange"?this.isCompatible=!1:this.version=i.version}withMinVersionInclusive(e){return o(this.version,e)||(this.isCompatible=!1),this}withMinVersionExclusive(e){return t(this.version,e)||(this.isCompatible=!1),this}excludeDeviceModel(e){return this.modelId===e&&(this.isCompatible=!1),this}check(){return this.isCompatible}}export{m as ApplicationChecker};
1
+ import{DeviceSessionStateType as s}from"@ledgerhq/device-management-kit";import{gt as t,gte as o}from"semver";class l{isCompatible=!0;version="0.0.1";modelId;constructor(e,i){if(this.modelId=e.deviceModelId,e.sessionStateType===s.Connected){this.isCompatible=!1;return}if(e.currentApp.name==="Exchange"){this.isCompatible=!1;return}else e.currentApp.name==="Ethereum"?this.version=e.currentApp.version:this.version=i.version}withMinVersionInclusive(e){return o(this.version,e)||(this.isCompatible=!1),this}withMinVersionExclusive(e){return t(this.version,e)||(this.isCompatible=!1),this}excludeDeviceModel(e){return this.modelId===e&&(this.isCompatible=!1),this}check(){return this.isCompatible}}export{l as ApplicationChecker};
2
2
  //# sourceMappingURL=ApplicationChecker.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/shared/utils/ApplicationChecker.ts"],
4
- "sourcesContent": ["import {\n type DeviceModelId,\n type DeviceSessionState,\n DeviceSessionStateType,\n} from \"@ledgerhq/device-management-kit\";\nimport { gt, gte } from \"semver\";\n\nimport { type GetConfigCommandResponse } from \"@api/app-binder/GetConfigCommandTypes\";\nimport { ETHEREUM_PLUGINS } from \"@internal/app-binder/constant/plugins\";\n\nexport class ApplicationChecker {\n private isCompatible: boolean = true;\n private version: string = \"0.0.1\";\n private modelId: DeviceModelId;\n\n constructor(\n deviceState: DeviceSessionState,\n appConfig: GetConfigCommandResponse,\n ) {\n this.modelId = deviceState.deviceModelId;\n\n // If device is not ready or app is unexpected, checker cannot be successful\n if (deviceState.sessionStateType === DeviceSessionStateType.Connected) {\n this.isCompatible = false;\n return;\n }\n if (\n deviceState.currentApp.name !== \"Ethereum\" &&\n !ETHEREUM_PLUGINS.includes(deviceState.currentApp.name)\n ) {\n this.isCompatible = false;\n return;\n }\n if (deviceState.currentApp.name === \"Ethereum\") {\n this.version = deviceState.currentApp.version;\n } else if (deviceState.currentApp.name === \"Exchange\") {\n // Exchanges flows are not compatibles with ethereum features appart from SignTx\n this.isCompatible = false;\n } else {\n // Fallback on appConfig version if a plugin is running.\n // It won't contain release candidate suffix but it should be enough for that edge case.\n this.version = appConfig.version;\n }\n }\n\n withMinVersionInclusive(version: string): ApplicationChecker {\n if (!gte(this.version, version)) {\n this.isCompatible = false;\n }\n return this;\n }\n\n withMinVersionExclusive(version: string): ApplicationChecker {\n if (!gt(this.version, version)) {\n this.isCompatible = false;\n }\n return this;\n }\n\n excludeDeviceModel(modelId: DeviceModelId): ApplicationChecker {\n if (this.modelId === modelId) {\n this.isCompatible = false;\n }\n return this;\n }\n\n check(): boolean {\n return this.isCompatible;\n }\n}\n"],
5
- "mappings": "AAAA,OAGE,0BAAAA,MACK,kCACP,OAAS,MAAAC,EAAI,OAAAC,MAAW,SAGxB,OAAS,oBAAAC,MAAwB,wCAE1B,MAAMC,CAAmB,CACtB,aAAwB,GACxB,QAAkB,QAClB,QAER,YACEC,EACAC,EACA,CAIA,GAHA,KAAK,QAAUD,EAAY,cAGvBA,EAAY,mBAAqBL,EAAuB,UAAW,CACrE,KAAK,aAAe,GACpB,MACF,CACA,GACEK,EAAY,WAAW,OAAS,YAChC,CAACF,EAAiB,SAASE,EAAY,WAAW,IAAI,EACtD,CACA,KAAK,aAAe,GACpB,MACF,CACIA,EAAY,WAAW,OAAS,WAClC,KAAK,QAAUA,EAAY,WAAW,QAC7BA,EAAY,WAAW,OAAS,WAEzC,KAAK,aAAe,GAIpB,KAAK,QAAUC,EAAU,OAE7B,CAEA,wBAAwBC,EAAqC,CAC3D,OAAKL,EAAI,KAAK,QAASK,CAAO,IAC5B,KAAK,aAAe,IAEf,IACT,CAEA,wBAAwBA,EAAqC,CAC3D,OAAKN,EAAG,KAAK,QAASM,CAAO,IAC3B,KAAK,aAAe,IAEf,IACT,CAEA,mBAAmBC,EAA4C,CAC7D,OAAI,KAAK,UAAYA,IACnB,KAAK,aAAe,IAEf,IACT,CAEA,OAAiB,CACf,OAAO,KAAK,YACd,CACF",
6
- "names": ["DeviceSessionStateType", "gt", "gte", "ETHEREUM_PLUGINS", "ApplicationChecker", "deviceState", "appConfig", "version", "modelId"]
4
+ "sourcesContent": ["import {\n type DeviceModelId,\n type DeviceSessionState,\n DeviceSessionStateType,\n} from \"@ledgerhq/device-management-kit\";\nimport { gt, gte } from \"semver\";\n\nimport { type GetConfigCommandResponse } from \"@api/app-binder/GetConfigCommandTypes\";\n\nexport class ApplicationChecker {\n private isCompatible: boolean = true;\n private version: string = \"0.0.1\";\n private modelId: DeviceModelId;\n\n constructor(\n deviceState: DeviceSessionState,\n appConfig: GetConfigCommandResponse,\n ) {\n this.modelId = deviceState.deviceModelId;\n\n // If device is not ready or app is unexpected, checker cannot be successful\n if (deviceState.sessionStateType === DeviceSessionStateType.Connected) {\n this.isCompatible = false;\n return;\n }\n if (deviceState.currentApp.name === \"Exchange\") {\n // Advanced clear signing is not supported in exchange flows, only basic loaders\n // such as token should be provided.\n this.isCompatible = false;\n return;\n } else if (deviceState.currentApp.name === \"Ethereum\") {\n this.version = deviceState.currentApp.version;\n } else {\n // Fallback on appConfig version if a plugin is running.\n // It won't contain release candidate suffix but it should be enough for that edge case.\n // We have the garantee that currentApp is a compatible ethereum plugin since AppConfig\n // was successfully retrieved.\n this.version = appConfig.version;\n }\n }\n\n withMinVersionInclusive(version: string): ApplicationChecker {\n if (!gte(this.version, version)) {\n this.isCompatible = false;\n }\n return this;\n }\n\n withMinVersionExclusive(version: string): ApplicationChecker {\n if (!gt(this.version, version)) {\n this.isCompatible = false;\n }\n return this;\n }\n\n excludeDeviceModel(modelId: DeviceModelId): ApplicationChecker {\n if (this.modelId === modelId) {\n this.isCompatible = false;\n }\n return this;\n }\n\n check(): boolean {\n return this.isCompatible;\n }\n}\n"],
5
+ "mappings": "AAAA,OAGE,0BAAAA,MACK,kCACP,OAAS,MAAAC,EAAI,OAAAC,MAAW,SAIjB,MAAMC,CAAmB,CACtB,aAAwB,GACxB,QAAkB,QAClB,QAER,YACEC,EACAC,EACA,CAIA,GAHA,KAAK,QAAUD,EAAY,cAGvBA,EAAY,mBAAqBJ,EAAuB,UAAW,CACrE,KAAK,aAAe,GACpB,MACF,CACA,GAAII,EAAY,WAAW,OAAS,WAAY,CAG9C,KAAK,aAAe,GACpB,MACF,MAAWA,EAAY,WAAW,OAAS,WACzC,KAAK,QAAUA,EAAY,WAAW,QAMtC,KAAK,QAAUC,EAAU,OAE7B,CAEA,wBAAwBC,EAAqC,CAC3D,OAAKJ,EAAI,KAAK,QAASI,CAAO,IAC5B,KAAK,aAAe,IAEf,IACT,CAEA,wBAAwBA,EAAqC,CAC3D,OAAKL,EAAG,KAAK,QAASK,CAAO,IAC3B,KAAK,aAAe,IAEf,IACT,CAEA,mBAAmBC,EAA4C,CAC7D,OAAI,KAAK,UAAYA,IACnB,KAAK,aAAe,IAEf,IACT,CAEA,OAAiB,CACf,OAAO,KAAK,YACd,CACF",
6
+ "names": ["DeviceSessionStateType", "gt", "gte", "ApplicationChecker", "deviceState", "appConfig", "version", "modelId"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{DeviceModelId as c,DeviceSessionStateType as i,DeviceStatus as o}from"@ledgerhq/device-management-kit";import{ApplicationChecker as l}from"./ApplicationChecker";describe("ApplicationChecker",()=>{function s(e){return{blindSigningEnabled:!1,web3ChecksEnabled:!1,web3ChecksOptIn:!1,version:e}}it("should pass the check for exclusive version",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.13.0-rc"},deviceModelId:c.FLEX,isSecureConnectionAllowed:!1},t=s("1.13.0"),n=new l(e,t).withMinVersionExclusive("1.12.0").check();expect(n).toStrictEqual(!0)}),it("should reject the check for exclusive version",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.12.0"},deviceModelId:c.FLEX,isSecureConnectionAllowed:!1},t=s("1.12.0"),n=new l(e,t).withMinVersionExclusive("1.12.0").check();expect(n).toStrictEqual(!1)}),it("should pass the check for inclusive version",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.12.0"},deviceModelId:c.FLEX,isSecureConnectionAllowed:!1},t=s("1.10.0"),n=new l(e,t).withMinVersionInclusive("1.12.0").check();expect(n).toStrictEqual(!0)}),it("should reject the check for inclusive version",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.11.0"},deviceModelId:c.FLEX,isSecureConnectionAllowed:!1},t=s("1.11.0"),n=new l(e,t).withMinVersionInclusive("1.12.0").check();expect(n).toStrictEqual(!1)}),it("should pass the check for excluded device",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.11.0"},deviceModelId:c.FLEX,isSecureConnectionAllowed:!1},t=s("1.11.0"),n=new l(e,t).excludeDeviceModel(c.NANO_S).check();expect(n).toStrictEqual(!0)}),it("should reject the check for excluded device",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.11.0"},deviceModelId:c.FLEX,isSecureConnectionAllowed:!1},t=s("1.11.0"),n=new l(e,t).excludeDeviceModel(c.FLEX).check();expect(n).toStrictEqual(!1)}),it("should pass the check for chained condition",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.11.0"},deviceModelId:c.FLEX,isSecureConnectionAllowed:!1},t=s("1.11.0"),n=new l(e,t).withMinVersionInclusive("1.11.0").excludeDeviceModel(c.NANO_S).check();expect(n).toStrictEqual(!0)}),it("should reject the check for chained condition",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.10.0"},deviceModelId:c.FLEX,isSecureConnectionAllowed:!1},t=s("1.10.0"),n=new l(e,t).withMinVersionInclusive("1.11.0").excludeDeviceModel(c.NANO_S).check();expect(n).toStrictEqual(!1)}),it("exchange app should not be compatible with eth features",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Exchange",version:"1.11.0-rc"},deviceModelId:c.FLEX,isSecureConnectionAllowed:!1},t=s("1.13.0"),n=new l(e,t).check();expect(n).toStrictEqual(!1)}),it("should pass the check in plugins",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"1inch",version:"1.11.0-rc"},deviceModelId:c.FLEX,isSecureConnectionAllowed:!1},t=s("1.13.0"),n=new l(e,t).withMinVersionExclusive("1.12.0").check();expect(n).toStrictEqual(!0)}),it("should reject the check in unknexpected app",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Bitcoin",version:"1.13.0-rc"},deviceModelId:c.FLEX,isSecureConnectionAllowed:!1},t=s("1.13.0"),n=new l(e,t).withMinVersionExclusive("1.12.0").check();expect(n).toStrictEqual(!1)}),it("should reject the check in unknexpected state",()=>{const e={sessionStateType:i.Connected,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Bitcoin",version:"1.13.0-rc"},deviceModelId:c.FLEX,isSecureConnectionAllowed:!1},t=s("1.13.0"),n=new l(e,t).withMinVersionExclusive("1.12.0").check();expect(n).toStrictEqual(!1)})});
1
+ import{DeviceModelId as n,DeviceSessionStateType as i,DeviceStatus as o}from"@ledgerhq/device-management-kit";import{ApplicationChecker as l}from"./ApplicationChecker";describe("ApplicationChecker",()=>{function s(e){return{blindSigningEnabled:!1,web3ChecksEnabled:!1,web3ChecksOptIn:!1,version:e}}it("should pass the check for exclusive version",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.13.0-rc"},deviceModelId:n.FLEX,isSecureConnectionAllowed:!1},t=s("1.13.0"),c=new l(e,t).withMinVersionExclusive("1.12.0").check();expect(c).toStrictEqual(!0)}),it("should reject the check for exchange flows",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Exchange",version:"1.13.0-rc"},deviceModelId:n.FLEX,isSecureConnectionAllowed:!1},t=s("1.13.0"),c=new l(e,t).withMinVersionExclusive("1.12.0").check();expect(c).toStrictEqual(!1)}),it("should reject the check for exclusive version",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.12.0"},deviceModelId:n.FLEX,isSecureConnectionAllowed:!1},t=s("1.12.0"),c=new l(e,t).withMinVersionExclusive("1.12.0").check();expect(c).toStrictEqual(!1)}),it("should pass the check for inclusive version",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.12.0"},deviceModelId:n.FLEX,isSecureConnectionAllowed:!1},t=s("1.10.0"),c=new l(e,t).withMinVersionInclusive("1.12.0").check();expect(c).toStrictEqual(!0)}),it("should reject the check for inclusive version",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.11.0"},deviceModelId:n.FLEX,isSecureConnectionAllowed:!1},t=s("1.11.0"),c=new l(e,t).withMinVersionInclusive("1.12.0").check();expect(c).toStrictEqual(!1)}),it("should pass the check for excluded device",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.11.0"},deviceModelId:n.FLEX,isSecureConnectionAllowed:!1},t=s("1.11.0"),c=new l(e,t).excludeDeviceModel(n.NANO_S).check();expect(c).toStrictEqual(!0)}),it("should reject the check for excluded device",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.11.0"},deviceModelId:n.FLEX,isSecureConnectionAllowed:!1},t=s("1.11.0"),c=new l(e,t).excludeDeviceModel(n.FLEX).check();expect(c).toStrictEqual(!1)}),it("should pass the check for chained condition",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.11.0"},deviceModelId:n.FLEX,isSecureConnectionAllowed:!1},t=s("1.11.0"),c=new l(e,t).withMinVersionInclusive("1.11.0").excludeDeviceModel(n.NANO_S).check();expect(c).toStrictEqual(!0)}),it("should reject the check for chained condition",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.10.0"},deviceModelId:n.FLEX,isSecureConnectionAllowed:!1},t=s("1.10.0"),c=new l(e,t).withMinVersionInclusive("1.11.0").excludeDeviceModel(n.NANO_S).check();expect(c).toStrictEqual(!1)}),it("should pass the check in plugins",()=>{const e={sessionStateType:i.ReadyWithoutSecureChannel,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"1inch",version:"1.11.0-rc"},deviceModelId:n.FLEX,isSecureConnectionAllowed:!1},t=s("1.13.0"),c=new l(e,t).withMinVersionExclusive("1.12.0").check();expect(c).toStrictEqual(!0)}),it("should reject the check in unknexpected state",()=>{const e={sessionStateType:i.Connected,deviceStatus:o.CONNECTED,installedApps:[],currentApp:{name:"Bitcoin",version:"1.13.0-rc"},deviceModelId:n.FLEX,isSecureConnectionAllowed:!1},t=s("1.13.0"),c=new l(e,t).withMinVersionExclusive("1.12.0").check();expect(c).toStrictEqual(!1)})});
2
2
  //# sourceMappingURL=ApplicationChecker.test.js.map