@ledgerhq/device-signer-kit-ethereum 1.0.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1025) hide show
  1. package/README.md +173 -382
  2. package/lib/cjs/api/SignerEth.js +2 -0
  3. package/lib/cjs/api/SignerEth.js.map +7 -0
  4. package/lib/cjs/api/SignerEthBuilder.js +2 -0
  5. package/lib/cjs/api/SignerEthBuilder.js.map +7 -0
  6. package/lib/cjs/api/SignerEthBuilder.test.js +2 -0
  7. package/lib/cjs/api/SignerEthBuilder.test.js.map +7 -0
  8. package/lib/cjs/api/app-binder/GetAddressCommandTypes.js +2 -3
  9. package/lib/cjs/api/app-binder/GetAddressCommandTypes.js.map +7 -1
  10. package/lib/cjs/api/app-binder/GetAddressDeviceActionTypes.js +2 -3
  11. package/lib/cjs/api/app-binder/GetAddressDeviceActionTypes.js.map +7 -1
  12. package/lib/cjs/api/app-binder/SignPersonalMessageDeviceActionTypes.js +2 -3
  13. package/lib/cjs/api/app-binder/SignPersonalMessageDeviceActionTypes.js.map +7 -1
  14. package/lib/cjs/api/app-binder/SignTransactionDeviceActionTypes.js +2 -3
  15. package/lib/cjs/api/app-binder/SignTransactionDeviceActionTypes.js.map +7 -1
  16. package/lib/cjs/api/app-binder/SignTypedDataDeviceActionTypes.js +2 -3
  17. package/lib/cjs/api/app-binder/SignTypedDataDeviceActionTypes.js.map +7 -1
  18. package/lib/cjs/api/index.js +2 -26
  19. package/lib/cjs/api/index.js.map +7 -1
  20. package/lib/cjs/api/model/Address.js +2 -3
  21. package/lib/cjs/api/model/Address.js.map +7 -1
  22. package/lib/cjs/api/model/AddressOptions.js +2 -3
  23. package/lib/cjs/api/model/AddressOptions.js.map +7 -1
  24. package/lib/cjs/api/model/Signature.js +2 -3
  25. package/lib/cjs/api/model/Signature.js.map +7 -1
  26. package/lib/cjs/api/model/TransactionOptions.js +2 -3
  27. package/lib/cjs/api/model/TransactionOptions.js.map +7 -1
  28. package/lib/cjs/api/model/TransactionType.js +2 -0
  29. package/lib/cjs/api/model/TransactionType.js.map +7 -0
  30. package/lib/cjs/api/model/TypedData.js +2 -4
  31. package/lib/cjs/api/model/TypedData.js.map +7 -1
  32. package/lib/cjs/index.js +2 -20
  33. package/lib/cjs/index.js.map +7 -1
  34. package/lib/cjs/internal/DefaultSignerEth.js +2 -0
  35. package/lib/cjs/internal/DefaultSignerEth.js.map +7 -0
  36. package/lib/cjs/internal/DefaultSignerEth.test.js +2 -0
  37. package/lib/cjs/internal/DefaultSignerEth.test.js.map +7 -0
  38. package/lib/cjs/internal/address/di/addressModule.js +2 -11
  39. package/lib/cjs/internal/address/di/addressModule.js.map +7 -1
  40. package/lib/cjs/internal/address/di/addressModule.test.js +2 -0
  41. package/lib/cjs/internal/address/di/addressModule.test.js.map +7 -0
  42. package/lib/cjs/internal/address/di/addressTypes.js +2 -7
  43. package/lib/cjs/internal/address/di/addressTypes.js.map +7 -1
  44. package/lib/cjs/internal/address/use-case/GetAddressUseCase.js +2 -38
  45. package/lib/cjs/internal/address/use-case/GetAddressUseCase.js.map +7 -1
  46. package/lib/cjs/internal/address/use-case/GetAddressUseCase.test.js +2 -0
  47. package/lib/cjs/internal/address/use-case/GetAddressUseCase.test.js.map +7 -0
  48. package/lib/cjs/internal/app-binder/EthAppBinder.js +2 -100
  49. package/lib/cjs/internal/app-binder/EthAppBinder.js.map +7 -1
  50. package/lib/cjs/internal/app-binder/EthAppBinder.test.js +2 -0
  51. package/lib/cjs/internal/app-binder/EthAppBinder.test.js.map +7 -0
  52. package/lib/cjs/internal/app-binder/command/GetAddressCommand.js +2 -88
  53. package/lib/cjs/internal/app-binder/command/GetAddressCommand.js.map +7 -1
  54. package/lib/cjs/internal/app-binder/command/GetAddressCommand.test.js +2 -0
  55. package/lib/cjs/internal/app-binder/command/GetAddressCommand.test.js.map +7 -0
  56. package/lib/cjs/internal/app-binder/command/GetChallengeCommand.js +2 -39
  57. package/lib/cjs/internal/app-binder/command/GetChallengeCommand.js.map +7 -1
  58. package/lib/cjs/internal/app-binder/command/GetChallengeCommand.test.js +2 -0
  59. package/lib/cjs/internal/app-binder/command/GetChallengeCommand.test.js.map +7 -0
  60. package/lib/cjs/internal/app-binder/command/ProvideEnumCommand.js +2 -0
  61. package/lib/cjs/internal/app-binder/command/ProvideEnumCommand.js.map +7 -0
  62. package/lib/cjs/internal/app-binder/command/ProvideEnumCommand.test.js +2 -0
  63. package/lib/cjs/internal/app-binder/command/ProvideEnumCommand.test.js.map +7 -0
  64. package/lib/cjs/internal/app-binder/command/ProvideNFTInformationCommand.js +2 -50
  65. package/lib/cjs/internal/app-binder/command/ProvideNFTInformationCommand.js.map +7 -1
  66. package/lib/cjs/internal/app-binder/command/ProvideNFTInformationCommand.test.js +2 -0
  67. package/lib/cjs/internal/app-binder/command/ProvideNFTInformationCommand.test.js.map +7 -0
  68. package/lib/cjs/internal/app-binder/command/ProvideTokenInformationCommand.js +2 -34
  69. package/lib/cjs/internal/app-binder/command/ProvideTokenInformationCommand.js.map +7 -1
  70. package/lib/cjs/internal/app-binder/command/ProvideTokenInformationCommand.test.js +2 -0
  71. package/lib/cjs/internal/app-binder/command/ProvideTokenInformationCommand.test.js.map +7 -0
  72. package/lib/cjs/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.js +2 -0
  73. package/lib/cjs/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.js.map +7 -0
  74. package/lib/cjs/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.js +2 -0
  75. package/lib/cjs/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.js.map +7 -0
  76. package/lib/cjs/internal/app-binder/command/ProvideTransactionInformationCommand.js +2 -0
  77. package/lib/cjs/internal/app-binder/command/ProvideTransactionInformationCommand.js.map +7 -0
  78. package/lib/cjs/internal/app-binder/command/ProvideTransactionInformationCommand.test.js +2 -0
  79. package/lib/cjs/internal/app-binder/command/ProvideTransactionInformationCommand.test.js.map +7 -0
  80. package/lib/cjs/internal/app-binder/command/ProvideTrustedNameCommand.js +2 -0
  81. package/lib/cjs/internal/app-binder/command/ProvideTrustedNameCommand.js.map +7 -0
  82. package/lib/cjs/internal/app-binder/command/ProvideTrustedNameCommand.test.js +2 -0
  83. package/lib/cjs/internal/app-binder/command/ProvideTrustedNameCommand.test.js.map +7 -0
  84. package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.js +2 -69
  85. package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.js.map +7 -1
  86. package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.test.js +2 -0
  87. package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.test.js.map +7 -0
  88. package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.js +2 -131
  89. package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.js.map +7 -1
  90. package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.js +2 -0
  91. package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.js.map +7 -0
  92. package/lib/cjs/internal/app-binder/command/SendEIP712StructImplemCommand.js +2 -51
  93. package/lib/cjs/internal/app-binder/command/SendEIP712StructImplemCommand.js.map +7 -1
  94. package/lib/cjs/internal/app-binder/command/SendEIP712StructImplemCommand.test.js +2 -0
  95. package/lib/cjs/internal/app-binder/command/SendEIP712StructImplemCommand.test.js.map +7 -0
  96. package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.js +2 -57
  97. package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.js.map +7 -1
  98. package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.test.js +7 -0
  99. package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.test.js.map +7 -0
  100. package/lib/cjs/internal/app-binder/command/SetPluginCommand.js +2 -52
  101. package/lib/cjs/internal/app-binder/command/SetPluginCommand.js.map +7 -1
  102. package/lib/cjs/internal/app-binder/command/SetPluginCommand.test.js +6 -0
  103. package/lib/cjs/internal/app-binder/command/SetPluginCommand.test.js.map +7 -0
  104. package/lib/cjs/internal/app-binder/command/SignEIP712Command.js +2 -69
  105. package/lib/cjs/internal/app-binder/command/SignEIP712Command.js.map +7 -1
  106. package/lib/cjs/internal/app-binder/command/SignEIP712Command.test.js +2 -0
  107. package/lib/cjs/internal/app-binder/command/SignEIP712Command.test.js.map +7 -0
  108. package/lib/cjs/internal/app-binder/command/SignPersonalMessageCommand.js +2 -60
  109. package/lib/cjs/internal/app-binder/command/SignPersonalMessageCommand.js.map +7 -1
  110. package/lib/cjs/internal/app-binder/command/SignPersonalMessageCommand.test.js +2 -0
  111. package/lib/cjs/internal/app-binder/command/SignPersonalMessageCommand.test.js.map +7 -0
  112. package/lib/cjs/internal/app-binder/command/SignTransactionCommand.js +2 -59
  113. package/lib/cjs/internal/app-binder/command/SignTransactionCommand.js.map +7 -1
  114. package/lib/cjs/internal/app-binder/command/SignTransactionCommand.test.js +2 -0
  115. package/lib/cjs/internal/app-binder/command/SignTransactionCommand.test.js.map +7 -0
  116. package/lib/cjs/internal/app-binder/command/StartTransactionCommand.js +2 -0
  117. package/lib/cjs/internal/app-binder/command/StartTransactionCommand.js.map +7 -0
  118. package/lib/cjs/internal/app-binder/command/StartTransactionCommand.test.js +2 -0
  119. package/lib/cjs/internal/app-binder/command/StartTransactionCommand.test.js.map +7 -0
  120. package/lib/cjs/internal/app-binder/command/StoreTransactionCommand.js +2 -0
  121. package/lib/cjs/internal/app-binder/command/StoreTransactionCommand.js.map +7 -0
  122. package/lib/cjs/internal/app-binder/command/StoreTransactionCommand.test.js +2 -0
  123. package/lib/cjs/internal/app-binder/command/StoreTransactionCommand.test.js.map +7 -0
  124. package/lib/cjs/internal/app-binder/command/utils/ethAppErrors.js +2 -0
  125. package/lib/cjs/internal/app-binder/command/utils/ethAppErrors.js.map +7 -0
  126. package/lib/cjs/internal/app-binder/command/utils/ethAppErrors.test.js +2 -0
  127. package/lib/cjs/internal/app-binder/command/utils/ethAppErrors.test.js.map +7 -0
  128. package/lib/cjs/internal/app-binder/constant/plugins.js +2 -0
  129. package/lib/cjs/internal/app-binder/constant/plugins.js.map +7 -0
  130. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js +2 -285
  131. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js.map +7 -1
  132. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js +2 -0
  133. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js.map +7 -0
  134. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js +2 -245
  135. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js.map +7 -1
  136. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js +2 -0
  137. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js.map +7 -0
  138. package/lib/cjs/internal/app-binder/device-action/__test-utils__/makeInternalApi.js +2 -18
  139. package/lib/cjs/internal/app-binder/device-action/__test-utils__/makeInternalApi.js.map +7 -1
  140. package/lib/cjs/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js +2 -31
  141. package/lib/cjs/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js.map +7 -1
  142. package/lib/cjs/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js +2 -35
  143. package/lib/cjs/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js.map +7 -1
  144. package/lib/cjs/internal/app-binder/di/appBinderModule.js +2 -11
  145. package/lib/cjs/internal/app-binder/di/appBinderModule.js.map +7 -1
  146. package/lib/cjs/internal/app-binder/di/appBinderTypes.js +2 -7
  147. package/lib/cjs/internal/app-binder/di/appBinderTypes.js.map +7 -1
  148. package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.js +2 -72
  149. package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.js.map +7 -1
  150. package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.test.js +2 -0
  151. package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.test.js.map +7 -0
  152. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.js +2 -31
  153. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.js.map +7 -1
  154. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.test.js +2 -0
  155. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.test.js.map +7 -0
  156. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.js +2 -188
  157. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.js.map +7 -1
  158. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.test.js +2 -0
  159. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.test.js.map +7 -0
  160. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.js +2 -112
  161. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.js.map +7 -1
  162. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.test.js +2 -0
  163. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.test.js.map +7 -0
  164. package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js +2 -0
  165. package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js.map +7 -0
  166. package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js +2 -0
  167. package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js.map +7 -0
  168. package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.js +2 -0
  169. package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.js.map +7 -0
  170. package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js +2 -0
  171. package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js.map +7 -0
  172. package/lib/cjs/internal/app-binder/task/SendCommandInChunksTask.js +2 -0
  173. package/lib/cjs/internal/app-binder/task/SendCommandInChunksTask.js.map +7 -0
  174. package/lib/cjs/internal/app-binder/task/SendEIP712StructImplemTask.js +2 -42
  175. package/lib/cjs/internal/app-binder/task/SendEIP712StructImplemTask.js.map +7 -1
  176. package/lib/cjs/internal/app-binder/task/SendEIP712StructImplemTask.test.js +2 -0
  177. package/lib/cjs/internal/app-binder/task/SendEIP712StructImplemTask.test.js.map +7 -0
  178. package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.js +2 -0
  179. package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.js.map +7 -0
  180. package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.test.js +2 -0
  181. package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.test.js.map +7 -0
  182. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.js +2 -53
  183. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.js.map +7 -1
  184. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.test.js +2 -0
  185. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.test.js.map +7 -0
  186. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.js +2 -53
  187. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.js.map +7 -1
  188. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.test.js +2 -0
  189. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.test.js.map +7 -0
  190. package/lib/cjs/internal/di.js +2 -27
  191. package/lib/cjs/internal/di.js.map +7 -1
  192. package/lib/cjs/internal/externalTypes.js +2 -9
  193. package/lib/cjs/internal/externalTypes.js.map +7 -1
  194. package/lib/cjs/internal/message/di/messageModule.js +2 -11
  195. package/lib/cjs/internal/message/di/messageModule.js.map +7 -1
  196. package/lib/cjs/internal/message/di/messageModule.test.js +2 -0
  197. package/lib/cjs/internal/message/di/messageModule.test.js.map +7 -0
  198. package/lib/cjs/internal/message/di/messageTypes.js +2 -7
  199. package/lib/cjs/internal/message/di/messageTypes.js.map +7 -1
  200. package/lib/cjs/internal/message/use-case/SignMessageUseCase.js +2 -38
  201. package/lib/cjs/internal/message/use-case/SignMessageUseCase.js.map +7 -1
  202. package/lib/cjs/internal/message/use-case/SignMessageUseCase.test.js +2 -0
  203. package/lib/cjs/internal/message/use-case/SignMessageUseCase.test.js.map +7 -0
  204. package/lib/cjs/internal/shared/utils/PayloadUtils.js +2 -0
  205. package/lib/cjs/internal/shared/utils/PayloadUtils.js.map +7 -0
  206. package/lib/cjs/internal/shared/utils/PayloadUtils.test.js +2 -0
  207. package/lib/cjs/internal/shared/utils/PayloadUtils.test.js.map +7 -0
  208. package/lib/cjs/internal/transaction/di/transactionModule.js +2 -17
  209. package/lib/cjs/internal/transaction/di/transactionModule.js.map +7 -1
  210. package/lib/cjs/internal/transaction/di/transactionModule.test.js +2 -0
  211. package/lib/cjs/internal/transaction/di/transactionModule.test.js.map +7 -0
  212. package/lib/cjs/internal/transaction/di/transactionTypes.js +2 -9
  213. package/lib/cjs/internal/transaction/di/transactionTypes.js.map +7 -1
  214. package/lib/cjs/internal/transaction/service/mapper/EthersRawTransactionMapper.js +2 -0
  215. package/lib/cjs/internal/transaction/service/mapper/EthersRawTransactionMapper.js.map +7 -0
  216. package/lib/cjs/internal/transaction/service/mapper/EthersRawTransactionMapper.test.js +2 -0
  217. package/lib/cjs/internal/transaction/service/mapper/EthersRawTransactionMapper.test.js.map +7 -0
  218. package/lib/cjs/internal/transaction/service/mapper/TransactionMapper.js +2 -3
  219. package/lib/cjs/internal/transaction/service/mapper/TransactionMapper.js.map +7 -1
  220. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.js +2 -41
  221. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.js.map +7 -1
  222. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.test.js +2 -0
  223. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.test.js.map +7 -0
  224. package/lib/cjs/internal/transaction/service/mapper/model/TransactionMapperResult.js +2 -3
  225. package/lib/cjs/internal/transaction/service/mapper/model/TransactionMapperResult.js.map +7 -1
  226. package/lib/cjs/internal/transaction/service/parser/TransactionParserService.js +2 -0
  227. package/lib/cjs/internal/transaction/service/parser/TransactionParserService.js.map +7 -0
  228. package/lib/cjs/internal/transaction/service/parser/TransactionParserService.test.js +2 -0
  229. package/lib/cjs/internal/transaction/service/parser/TransactionParserService.test.js.map +7 -0
  230. package/lib/cjs/internal/transaction/use-case/SignTransactionUseCase.js +2 -38
  231. package/lib/cjs/internal/transaction/use-case/SignTransactionUseCase.js.map +7 -1
  232. package/lib/cjs/internal/transaction/use-case/SignTransactionUseCase.test.js +2 -0
  233. package/lib/cjs/internal/transaction/use-case/SignTransactionUseCase.test.js.map +7 -0
  234. package/lib/cjs/internal/typed-data/di/typedDataModule.js +2 -13
  235. package/lib/cjs/internal/typed-data/di/typedDataModule.js.map +7 -1
  236. package/lib/cjs/internal/typed-data/di/typedDataModule.test.js +2 -0
  237. package/lib/cjs/internal/typed-data/di/typedDataModule.test.js.map +7 -0
  238. package/lib/cjs/internal/typed-data/di/typedDataTypes.js +2 -8
  239. package/lib/cjs/internal/typed-data/di/typedDataTypes.js.map +7 -1
  240. package/lib/cjs/internal/typed-data/model/Types.js +2 -64
  241. package/lib/cjs/internal/typed-data/model/Types.js.map +7 -1
  242. package/lib/cjs/internal/typed-data/service/DefaultTypedDataParserService.js +2 -29
  243. package/lib/cjs/internal/typed-data/service/DefaultTypedDataParserService.js.map +7 -1
  244. package/lib/cjs/internal/typed-data/service/TypedDataEncoder.js +2 -101
  245. package/lib/cjs/internal/typed-data/service/TypedDataEncoder.js.map +7 -1
  246. package/lib/cjs/internal/typed-data/service/TypedDataEncoder.test.js +2 -0
  247. package/lib/cjs/internal/typed-data/service/TypedDataEncoder.test.js.map +7 -0
  248. package/lib/cjs/internal/typed-data/service/TypedDataParser.js +2 -211
  249. package/lib/cjs/internal/typed-data/service/TypedDataParser.js.map +7 -1
  250. package/lib/cjs/internal/typed-data/service/TypedDataParser.test.js +2 -0
  251. package/lib/cjs/internal/typed-data/service/TypedDataParser.test.js.map +7 -0
  252. package/lib/cjs/internal/typed-data/service/TypedDataParserService.js +2 -3
  253. package/lib/cjs/internal/typed-data/service/TypedDataParserService.js.map +7 -1
  254. package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.js +2 -42
  255. package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.js.map +7 -1
  256. package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.test.js +2 -0
  257. package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.test.js.map +7 -0
  258. package/lib/cjs/package.json +63 -0
  259. package/lib/esm/api/SignerEth.js +1 -0
  260. package/lib/esm/api/SignerEth.js.map +7 -0
  261. package/lib/esm/api/SignerEthBuilder.js +2 -0
  262. package/lib/esm/api/SignerEthBuilder.js.map +7 -0
  263. package/lib/esm/api/SignerEthBuilder.test.js +2 -0
  264. package/lib/esm/api/SignerEthBuilder.test.js.map +7 -0
  265. package/lib/esm/api/app-binder/GetAddressCommandTypes.js +1 -2
  266. package/lib/esm/api/app-binder/GetAddressCommandTypes.js.map +7 -1
  267. package/lib/esm/api/app-binder/GetAddressDeviceActionTypes.js +1 -2
  268. package/lib/esm/api/app-binder/GetAddressDeviceActionTypes.js.map +7 -1
  269. package/lib/esm/api/app-binder/SignPersonalMessageDeviceActionTypes.js +1 -2
  270. package/lib/esm/api/app-binder/SignPersonalMessageDeviceActionTypes.js.map +7 -1
  271. package/lib/esm/api/app-binder/SignTransactionDeviceActionTypes.js +1 -2
  272. package/lib/esm/api/app-binder/SignTransactionDeviceActionTypes.js.map +7 -1
  273. package/lib/esm/api/app-binder/SignTypedDataDeviceActionTypes.js +1 -2
  274. package/lib/esm/api/app-binder/SignTypedDataDeviceActionTypes.js.map +7 -1
  275. package/lib/esm/api/index.js +2 -10
  276. package/lib/esm/api/index.js.map +7 -1
  277. package/lib/esm/api/model/Address.js +1 -2
  278. package/lib/esm/api/model/Address.js.map +7 -1
  279. package/lib/esm/api/model/AddressOptions.js +1 -2
  280. package/lib/esm/api/model/AddressOptions.js.map +7 -1
  281. package/lib/esm/api/model/Signature.js +1 -2
  282. package/lib/esm/api/model/Signature.js.map +7 -1
  283. package/lib/esm/api/model/TransactionOptions.js +1 -2
  284. package/lib/esm/api/model/TransactionOptions.js.map +7 -1
  285. package/lib/esm/api/model/TransactionType.js +2 -0
  286. package/lib/esm/api/model/TransactionType.js.map +7 -0
  287. package/lib/esm/api/model/TypedData.js +1 -3
  288. package/lib/esm/api/model/TypedData.js.map +7 -1
  289. package/lib/esm/index.js +2 -4
  290. package/lib/esm/index.js.map +7 -1
  291. package/lib/esm/internal/DefaultSignerEth.js +2 -0
  292. package/lib/esm/internal/DefaultSignerEth.js.map +7 -0
  293. package/lib/esm/internal/DefaultSignerEth.test.js +2 -0
  294. package/lib/esm/internal/DefaultSignerEth.test.js.map +7 -0
  295. package/lib/esm/internal/address/di/addressModule.js +2 -7
  296. package/lib/esm/internal/address/di/addressModule.js.map +7 -1
  297. package/lib/esm/internal/address/di/addressModule.test.js +2 -0
  298. package/lib/esm/internal/address/di/addressModule.test.js.map +7 -0
  299. package/lib/esm/internal/address/di/addressTypes.js +2 -4
  300. package/lib/esm/internal/address/di/addressTypes.js.map +7 -1
  301. package/lib/esm/internal/address/use-case/GetAddressUseCase.js +2 -35
  302. package/lib/esm/internal/address/use-case/GetAddressUseCase.js.map +7 -1
  303. package/lib/esm/internal/address/use-case/GetAddressUseCase.test.js +2 -0
  304. package/lib/esm/internal/address/use-case/GetAddressUseCase.test.js.map +7 -0
  305. package/lib/esm/internal/app-binder/EthAppBinder.js +2 -97
  306. package/lib/esm/internal/app-binder/EthAppBinder.js.map +7 -1
  307. package/lib/esm/internal/app-binder/EthAppBinder.test.js +2 -0
  308. package/lib/esm/internal/app-binder/EthAppBinder.test.js.map +7 -0
  309. package/lib/esm/internal/app-binder/command/GetAddressCommand.js +2 -84
  310. package/lib/esm/internal/app-binder/command/GetAddressCommand.js.map +7 -1
  311. package/lib/esm/internal/app-binder/command/GetAddressCommand.test.js +2 -0
  312. package/lib/esm/internal/app-binder/command/GetAddressCommand.test.js.map +7 -0
  313. package/lib/esm/internal/app-binder/command/GetChallengeCommand.js +2 -35
  314. package/lib/esm/internal/app-binder/command/GetChallengeCommand.js.map +7 -1
  315. package/lib/esm/internal/app-binder/command/GetChallengeCommand.test.js +2 -0
  316. package/lib/esm/internal/app-binder/command/GetChallengeCommand.test.js.map +7 -0
  317. package/lib/esm/internal/app-binder/command/ProvideEnumCommand.js +2 -0
  318. package/lib/esm/internal/app-binder/command/ProvideEnumCommand.js.map +7 -0
  319. package/lib/esm/internal/app-binder/command/ProvideEnumCommand.test.js +2 -0
  320. package/lib/esm/internal/app-binder/command/ProvideEnumCommand.test.js.map +7 -0
  321. package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.js +2 -46
  322. package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.js.map +7 -1
  323. package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.test.js +2 -0
  324. package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.test.js.map +7 -0
  325. package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.js +2 -30
  326. package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.js.map +7 -1
  327. package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.test.js +2 -0
  328. package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.test.js.map +7 -0
  329. package/lib/esm/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.js +2 -0
  330. package/lib/esm/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.js.map +7 -0
  331. package/lib/esm/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.js +2 -0
  332. package/lib/esm/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.js.map +7 -0
  333. package/lib/esm/internal/app-binder/command/ProvideTransactionInformationCommand.js +2 -0
  334. package/lib/esm/internal/app-binder/command/ProvideTransactionInformationCommand.js.map +7 -0
  335. package/lib/esm/internal/app-binder/command/ProvideTransactionInformationCommand.test.js +2 -0
  336. package/lib/esm/internal/app-binder/command/ProvideTransactionInformationCommand.test.js.map +7 -0
  337. package/lib/esm/internal/app-binder/command/ProvideTrustedNameCommand.js +2 -0
  338. package/lib/esm/internal/app-binder/command/ProvideTrustedNameCommand.js.map +7 -0
  339. package/lib/esm/internal/app-binder/command/ProvideTrustedNameCommand.test.js +2 -0
  340. package/lib/esm/internal/app-binder/command/ProvideTrustedNameCommand.test.js.map +7 -0
  341. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.js +2 -65
  342. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.js.map +7 -1
  343. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.test.js +2 -0
  344. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.test.js.map +7 -0
  345. package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.js +2 -127
  346. package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.js.map +7 -1
  347. package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.js +2 -0
  348. package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.js.map +7 -0
  349. package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.js +2 -47
  350. package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.js.map +7 -1
  351. package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.test.js +2 -0
  352. package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.test.js.map +7 -0
  353. package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.js +2 -52
  354. package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.js.map +7 -1
  355. package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.test.js +7 -0
  356. package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.test.js.map +7 -0
  357. package/lib/esm/internal/app-binder/command/SetPluginCommand.js +2 -47
  358. package/lib/esm/internal/app-binder/command/SetPluginCommand.js.map +7 -1
  359. package/lib/esm/internal/app-binder/command/SetPluginCommand.test.js +6 -0
  360. package/lib/esm/internal/app-binder/command/SetPluginCommand.test.js.map +7 -0
  361. package/lib/esm/internal/app-binder/command/SignEIP712Command.js +2 -65
  362. package/lib/esm/internal/app-binder/command/SignEIP712Command.js.map +7 -1
  363. package/lib/esm/internal/app-binder/command/SignEIP712Command.test.js +2 -0
  364. package/lib/esm/internal/app-binder/command/SignEIP712Command.test.js.map +7 -0
  365. package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.js +2 -56
  366. package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.js.map +7 -1
  367. package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.test.js +2 -0
  368. package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.test.js.map +7 -0
  369. package/lib/esm/internal/app-binder/command/SignTransactionCommand.js +2 -55
  370. package/lib/esm/internal/app-binder/command/SignTransactionCommand.js.map +7 -1
  371. package/lib/esm/internal/app-binder/command/SignTransactionCommand.test.js +2 -0
  372. package/lib/esm/internal/app-binder/command/SignTransactionCommand.test.js.map +7 -0
  373. package/lib/esm/internal/app-binder/command/StartTransactionCommand.js +2 -0
  374. package/lib/esm/internal/app-binder/command/StartTransactionCommand.js.map +7 -0
  375. package/lib/esm/internal/app-binder/command/StartTransactionCommand.test.js +2 -0
  376. package/lib/esm/internal/app-binder/command/StartTransactionCommand.test.js.map +7 -0
  377. package/lib/esm/internal/app-binder/command/StoreTransactionCommand.js +2 -0
  378. package/lib/esm/internal/app-binder/command/StoreTransactionCommand.js.map +7 -0
  379. package/lib/esm/internal/app-binder/command/StoreTransactionCommand.test.js +2 -0
  380. package/lib/esm/internal/app-binder/command/StoreTransactionCommand.test.js.map +7 -0
  381. package/lib/esm/internal/app-binder/command/utils/ethAppErrors.js +2 -0
  382. package/lib/esm/internal/app-binder/command/utils/ethAppErrors.js.map +7 -0
  383. package/lib/esm/internal/app-binder/command/utils/ethAppErrors.test.js +2 -0
  384. package/lib/esm/internal/app-binder/command/utils/ethAppErrors.test.js.map +7 -0
  385. package/lib/esm/internal/app-binder/constant/plugins.js +2 -0
  386. package/lib/esm/internal/app-binder/constant/plugins.js.map +7 -0
  387. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js +2 -281
  388. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js.map +7 -1
  389. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js +2 -0
  390. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js.map +7 -0
  391. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js +2 -241
  392. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js.map +7 -1
  393. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js +2 -0
  394. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js.map +7 -0
  395. package/lib/esm/internal/app-binder/device-action/__test-utils__/makeInternalApi.js +2 -15
  396. package/lib/esm/internal/app-binder/device-action/__test-utils__/makeInternalApi.js.map +7 -1
  397. package/lib/esm/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js +2 -27
  398. package/lib/esm/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js.map +7 -1
  399. package/lib/esm/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js +2 -32
  400. package/lib/esm/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js.map +7 -1
  401. package/lib/esm/internal/app-binder/di/appBinderModule.js +2 -7
  402. package/lib/esm/internal/app-binder/di/appBinderModule.js.map +7 -1
  403. package/lib/esm/internal/app-binder/di/appBinderTypes.js +2 -4
  404. package/lib/esm/internal/app-binder/di/appBinderTypes.js.map +7 -1
  405. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.js +2 -68
  406. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.js.map +7 -1
  407. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.test.js +2 -0
  408. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.test.js.map +7 -0
  409. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.js +2 -27
  410. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.js.map +7 -1
  411. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.test.js +2 -0
  412. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.test.js.map +7 -0
  413. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.js +2 -184
  414. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.js.map +7 -1
  415. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.test.js +2 -0
  416. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.test.js.map +7 -0
  417. package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.js +2 -107
  418. package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.js.map +7 -1
  419. package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.test.js +2 -0
  420. package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.test.js.map +7 -0
  421. package/lib/esm/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js +2 -0
  422. package/lib/esm/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js.map +7 -0
  423. package/lib/esm/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js +2 -0
  424. package/lib/esm/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js.map +7 -0
  425. package/lib/esm/internal/app-binder/task/ProvideTransactionGenericContextTask.js +2 -0
  426. package/lib/esm/internal/app-binder/task/ProvideTransactionGenericContextTask.js.map +7 -0
  427. package/lib/esm/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js +2 -0
  428. package/lib/esm/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js.map +7 -0
  429. package/lib/esm/internal/app-binder/task/SendCommandInChunksTask.js +2 -0
  430. package/lib/esm/internal/app-binder/task/SendCommandInChunksTask.js.map +7 -0
  431. package/lib/esm/internal/app-binder/task/SendEIP712StructImplemTask.js +2 -38
  432. package/lib/esm/internal/app-binder/task/SendEIP712StructImplemTask.js.map +7 -1
  433. package/lib/esm/internal/app-binder/task/SendEIP712StructImplemTask.test.js +2 -0
  434. package/lib/esm/internal/app-binder/task/SendEIP712StructImplemTask.test.js.map +7 -0
  435. package/lib/esm/internal/app-binder/task/SendPayloadInChunksTask.js +2 -0
  436. package/lib/esm/internal/app-binder/task/SendPayloadInChunksTask.js.map +7 -0
  437. package/lib/esm/internal/app-binder/task/SendPayloadInChunksTask.test.js +2 -0
  438. package/lib/esm/internal/app-binder/task/SendPayloadInChunksTask.test.js.map +7 -0
  439. package/lib/esm/internal/app-binder/task/SendSignPersonalMessageTask.js +2 -49
  440. package/lib/esm/internal/app-binder/task/SendSignPersonalMessageTask.js.map +7 -1
  441. package/lib/esm/internal/app-binder/task/SendSignPersonalMessageTask.test.js +2 -0
  442. package/lib/esm/internal/app-binder/task/SendSignPersonalMessageTask.test.js.map +7 -0
  443. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.js +2 -49
  444. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.js.map +7 -1
  445. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.test.js +2 -0
  446. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.test.js.map +7 -0
  447. package/lib/esm/internal/di.js +2 -23
  448. package/lib/esm/internal/di.js.map +7 -1
  449. package/lib/esm/internal/externalTypes.js +2 -6
  450. package/lib/esm/internal/externalTypes.js.map +7 -1
  451. package/lib/esm/internal/message/di/messageModule.js +2 -7
  452. package/lib/esm/internal/message/di/messageModule.js.map +7 -1
  453. package/lib/esm/internal/message/di/messageModule.test.js +2 -0
  454. package/lib/esm/internal/message/di/messageModule.test.js.map +7 -0
  455. package/lib/esm/internal/message/di/messageTypes.js +2 -4
  456. package/lib/esm/internal/message/di/messageTypes.js.map +7 -1
  457. package/lib/esm/internal/message/use-case/SignMessageUseCase.js +2 -35
  458. package/lib/esm/internal/message/use-case/SignMessageUseCase.js.map +7 -1
  459. package/lib/esm/internal/message/use-case/SignMessageUseCase.test.js +2 -0
  460. package/lib/esm/internal/message/use-case/SignMessageUseCase.test.js.map +7 -0
  461. package/lib/esm/internal/shared/utils/PayloadUtils.js +2 -0
  462. package/lib/esm/internal/shared/utils/PayloadUtils.js.map +7 -0
  463. package/lib/esm/internal/shared/utils/PayloadUtils.test.js +2 -0
  464. package/lib/esm/internal/shared/utils/PayloadUtils.test.js.map +7 -0
  465. package/lib/esm/internal/transaction/di/transactionModule.js +2 -13
  466. package/lib/esm/internal/transaction/di/transactionModule.js.map +7 -1
  467. package/lib/esm/internal/transaction/di/transactionModule.test.js +2 -0
  468. package/lib/esm/internal/transaction/di/transactionModule.test.js.map +7 -0
  469. package/lib/esm/internal/transaction/di/transactionTypes.js +2 -6
  470. package/lib/esm/internal/transaction/di/transactionTypes.js.map +7 -1
  471. package/lib/esm/internal/transaction/service/mapper/EthersRawTransactionMapper.js +2 -0
  472. package/lib/esm/internal/transaction/service/mapper/EthersRawTransactionMapper.js.map +7 -0
  473. package/lib/esm/internal/transaction/service/mapper/EthersRawTransactionMapper.test.js +2 -0
  474. package/lib/esm/internal/transaction/service/mapper/EthersRawTransactionMapper.test.js.map +7 -0
  475. package/lib/esm/internal/transaction/service/mapper/TransactionMapper.js +1 -2
  476. package/lib/esm/internal/transaction/service/mapper/TransactionMapper.js.map +7 -1
  477. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.js +2 -38
  478. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.js.map +7 -1
  479. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.test.js +2 -0
  480. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.test.js.map +7 -0
  481. package/lib/esm/internal/transaction/service/mapper/model/TransactionMapperResult.js +1 -2
  482. package/lib/esm/internal/transaction/service/mapper/model/TransactionMapperResult.js.map +7 -1
  483. package/lib/esm/internal/transaction/service/parser/TransactionParserService.js +2 -0
  484. package/lib/esm/internal/transaction/service/parser/TransactionParserService.js.map +7 -0
  485. package/lib/esm/internal/transaction/service/parser/TransactionParserService.test.js +2 -0
  486. package/lib/esm/internal/transaction/service/parser/TransactionParserService.test.js.map +7 -0
  487. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.js +2 -35
  488. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.js.map +7 -1
  489. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.test.js +2 -0
  490. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.test.js.map +7 -0
  491. package/lib/esm/internal/typed-data/di/typedDataModule.js +2 -9
  492. package/lib/esm/internal/typed-data/di/typedDataModule.js.map +7 -1
  493. package/lib/esm/internal/typed-data/di/typedDataModule.test.js +2 -0
  494. package/lib/esm/internal/typed-data/di/typedDataModule.test.js.map +7 -0
  495. package/lib/esm/internal/typed-data/di/typedDataTypes.js +2 -5
  496. package/lib/esm/internal/typed-data/di/typedDataTypes.js.map +7 -1
  497. package/lib/esm/internal/typed-data/model/Types.js +2 -55
  498. package/lib/esm/internal/typed-data/model/Types.js.map +7 -1
  499. package/lib/esm/internal/typed-data/service/DefaultTypedDataParserService.js +2 -26
  500. package/lib/esm/internal/typed-data/service/DefaultTypedDataParserService.js.map +7 -1
  501. package/lib/esm/internal/typed-data/service/TypedDataEncoder.js +2 -98
  502. package/lib/esm/internal/typed-data/service/TypedDataEncoder.js.map +7 -1
  503. package/lib/esm/internal/typed-data/service/TypedDataEncoder.test.js +2 -0
  504. package/lib/esm/internal/typed-data/service/TypedDataEncoder.test.js.map +7 -0
  505. package/lib/esm/internal/typed-data/service/TypedDataParser.js +2 -207
  506. package/lib/esm/internal/typed-data/service/TypedDataParser.js.map +7 -1
  507. package/lib/esm/internal/typed-data/service/TypedDataParser.test.js +2 -0
  508. package/lib/esm/internal/typed-data/service/TypedDataParser.test.js.map +7 -0
  509. package/lib/esm/internal/typed-data/service/TypedDataParserService.js +1 -2
  510. package/lib/esm/internal/typed-data/service/TypedDataParserService.js.map +7 -1
  511. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.js +2 -39
  512. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.js.map +7 -1
  513. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.test.js +2 -0
  514. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.test.js.map +7 -0
  515. package/lib/esm/package.json +63 -0
  516. package/lib/types/api/SignerEth.d.ts +14 -0
  517. package/lib/types/api/SignerEth.d.ts.map +1 -0
  518. package/lib/types/api/SignerEthBuilder.d.ts +37 -0
  519. package/lib/types/api/SignerEthBuilder.d.ts.map +1 -0
  520. package/lib/types/api/SignerEthBuilder.test.d.ts +2 -0
  521. package/lib/types/api/SignerEthBuilder.test.d.ts.map +1 -0
  522. package/lib/{esm → types}/api/app-binder/GetAddressDeviceActionTypes.d.ts +3 -2
  523. package/lib/types/api/app-binder/GetAddressDeviceActionTypes.d.ts.map +1 -0
  524. package/lib/types/api/app-binder/SignPersonalMessageDeviceActionTypes.d.ts +12 -0
  525. package/lib/types/api/app-binder/SignPersonalMessageDeviceActionTypes.d.ts.map +1 -0
  526. package/lib/types/api/app-binder/SignTransactionDeviceActionTypes.d.ts +37 -0
  527. package/lib/types/api/app-binder/SignTransactionDeviceActionTypes.d.ts.map +1 -0
  528. package/lib/{cjs → types}/api/app-binder/SignTypedDataDeviceActionTypes.d.ts +8 -7
  529. package/lib/types/api/app-binder/SignTypedDataDeviceActionTypes.d.ts.map +1 -0
  530. package/lib/{cjs → types}/api/index.d.ts +4 -4
  531. package/lib/types/api/index.d.ts.map +1 -0
  532. package/lib/types/api/model/Address.d.ts +7 -0
  533. package/lib/types/api/model/Address.d.ts.map +1 -0
  534. package/lib/types/api/model/Signature.d.ts +7 -0
  535. package/lib/types/api/model/Signature.d.ts.map +1 -0
  536. package/lib/types/api/model/TransactionType.d.ts +11 -0
  537. package/lib/types/api/model/TransactionType.d.ts.map +1 -0
  538. package/lib/types/internal/DefaultSignerEth.d.ts +25 -0
  539. package/lib/types/internal/DefaultSignerEth.d.ts.map +1 -0
  540. package/lib/types/internal/DefaultSignerEth.test.d.ts +2 -0
  541. package/lib/types/internal/DefaultSignerEth.test.d.ts.map +1 -0
  542. package/lib/types/internal/address/di/addressModule.test.d.ts +2 -0
  543. package/lib/types/internal/address/di/addressModule.test.d.ts.map +1 -0
  544. package/lib/types/internal/address/use-case/GetAddressUseCase.test.d.ts +2 -0
  545. package/lib/types/internal/address/use-case/GetAddressUseCase.test.d.ts.map +1 -0
  546. package/lib/{cjs → types}/internal/app-binder/EthAppBinder.d.ts +7 -6
  547. package/lib/types/internal/app-binder/EthAppBinder.d.ts.map +1 -0
  548. package/lib/types/internal/app-binder/EthAppBinder.test.d.ts +2 -0
  549. package/lib/types/internal/app-binder/EthAppBinder.test.d.ts.map +1 -0
  550. package/lib/types/internal/app-binder/command/GetAddressCommand.d.ts +11 -0
  551. package/lib/types/internal/app-binder/command/GetAddressCommand.d.ts.map +1 -0
  552. package/lib/types/internal/app-binder/command/GetAddressCommand.test.d.ts +2 -0
  553. package/lib/types/internal/app-binder/command/GetAddressCommand.test.d.ts.map +1 -0
  554. package/lib/types/internal/app-binder/command/GetChallengeCommand.d.ts +12 -0
  555. package/lib/types/internal/app-binder/command/GetChallengeCommand.d.ts.map +1 -0
  556. package/lib/types/internal/app-binder/command/GetChallengeCommand.test.d.ts +2 -0
  557. package/lib/types/internal/app-binder/command/GetChallengeCommand.test.d.ts.map +1 -0
  558. package/lib/types/internal/app-binder/command/ProvideEnumCommand.d.ts +20 -0
  559. package/lib/types/internal/app-binder/command/ProvideEnumCommand.d.ts.map +1 -0
  560. package/lib/types/internal/app-binder/command/ProvideEnumCommand.test.d.ts +2 -0
  561. package/lib/types/internal/app-binder/command/ProvideEnumCommand.test.d.ts.map +1 -0
  562. package/lib/types/internal/app-binder/command/ProvideNFTInformationCommand.d.ts +16 -0
  563. package/lib/types/internal/app-binder/command/ProvideNFTInformationCommand.d.ts.map +1 -0
  564. package/lib/types/internal/app-binder/command/ProvideNFTInformationCommand.test.d.ts +2 -0
  565. package/lib/types/internal/app-binder/command/ProvideNFTInformationCommand.test.d.ts.map +1 -0
  566. package/lib/{cjs → types}/internal/app-binder/command/ProvideTokenInformationCommand.d.ts +5 -3
  567. package/lib/types/internal/app-binder/command/ProvideTokenInformationCommand.d.ts.map +1 -0
  568. package/lib/types/internal/app-binder/command/ProvideTokenInformationCommand.test.d.ts +2 -0
  569. package/lib/types/internal/app-binder/command/ProvideTokenInformationCommand.test.d.ts.map +1 -0
  570. package/lib/types/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.d.ts +20 -0
  571. package/lib/types/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.d.ts.map +1 -0
  572. package/lib/types/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.d.ts +2 -0
  573. package/lib/types/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.d.ts.map +1 -0
  574. package/lib/types/internal/app-binder/command/ProvideTransactionInformationCommand.d.ts +20 -0
  575. package/lib/types/internal/app-binder/command/ProvideTransactionInformationCommand.d.ts.map +1 -0
  576. package/lib/types/internal/app-binder/command/ProvideTransactionInformationCommand.test.d.ts +2 -0
  577. package/lib/types/internal/app-binder/command/ProvideTransactionInformationCommand.test.d.ts.map +1 -0
  578. package/lib/types/internal/app-binder/command/ProvideTrustedNameCommand.d.ts +21 -0
  579. package/lib/types/internal/app-binder/command/ProvideTrustedNameCommand.d.ts.map +1 -0
  580. package/lib/types/internal/app-binder/command/ProvideTrustedNameCommand.test.d.ts +2 -0
  581. package/lib/types/internal/app-binder/command/ProvideTrustedNameCommand.test.d.ts.map +1 -0
  582. package/lib/{esm → types}/internal/app-binder/command/SendEIP712FilteringCommand.d.ts +13 -3
  583. package/lib/types/internal/app-binder/command/SendEIP712FilteringCommand.d.ts.map +1 -0
  584. package/lib/types/internal/app-binder/command/SendEIP712FilteringCommand.test.d.ts +2 -0
  585. package/lib/types/internal/app-binder/command/SendEIP712FilteringCommand.test.d.ts.map +1 -0
  586. package/lib/{esm → types}/internal/app-binder/command/SendEIP712StructDefinitionCommand.d.ts +5 -3
  587. package/lib/types/internal/app-binder/command/SendEIP712StructDefinitionCommand.d.ts.map +1 -0
  588. package/lib/types/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.d.ts +2 -0
  589. package/lib/types/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.d.ts.map +1 -0
  590. package/lib/{cjs → types}/internal/app-binder/command/SendEIP712StructImplemCommand.d.ts +5 -3
  591. package/lib/types/internal/app-binder/command/SendEIP712StructImplemCommand.d.ts.map +1 -0
  592. package/lib/types/internal/app-binder/command/SendEIP712StructImplemCommand.test.d.ts +2 -0
  593. package/lib/types/internal/app-binder/command/SendEIP712StructImplemCommand.test.d.ts.map +1 -0
  594. package/lib/types/internal/app-binder/command/SetExternalPluginCommand.d.ts +15 -0
  595. package/lib/types/internal/app-binder/command/SetExternalPluginCommand.d.ts.map +1 -0
  596. package/lib/types/internal/app-binder/command/SetExternalPluginCommand.test.d.ts +2 -0
  597. package/lib/types/internal/app-binder/command/SetExternalPluginCommand.test.d.ts.map +1 -0
  598. package/lib/types/internal/app-binder/command/SetPluginCommand.d.ts +16 -0
  599. package/lib/types/internal/app-binder/command/SetPluginCommand.d.ts.map +1 -0
  600. package/lib/types/internal/app-binder/command/SetPluginCommand.test.d.ts +2 -0
  601. package/lib/types/internal/app-binder/command/SetPluginCommand.test.d.ts.map +1 -0
  602. package/lib/{cjs → types}/internal/app-binder/command/SignEIP712Command.d.ts +5 -3
  603. package/lib/types/internal/app-binder/command/SignEIP712Command.d.ts.map +1 -0
  604. package/lib/types/internal/app-binder/command/SignEIP712Command.test.d.ts +2 -0
  605. package/lib/types/internal/app-binder/command/SignEIP712Command.test.d.ts.map +1 -0
  606. package/lib/{esm → types}/internal/app-binder/command/SignPersonalMessageCommand.d.ts +6 -4
  607. package/lib/types/internal/app-binder/command/SignPersonalMessageCommand.d.ts.map +1 -0
  608. package/lib/types/internal/app-binder/command/SignPersonalMessageCommand.test.d.ts +2 -0
  609. package/lib/types/internal/app-binder/command/SignPersonalMessageCommand.test.d.ts.map +1 -0
  610. package/lib/{cjs → types}/internal/app-binder/command/SignTransactionCommand.d.ts +5 -3
  611. package/lib/types/internal/app-binder/command/SignTransactionCommand.d.ts.map +1 -0
  612. package/lib/types/internal/app-binder/command/SignTransactionCommand.test.d.ts +2 -0
  613. package/lib/types/internal/app-binder/command/SignTransactionCommand.test.d.ts.map +1 -0
  614. package/lib/types/internal/app-binder/command/StartTransactionCommand.d.ts +14 -0
  615. package/lib/types/internal/app-binder/command/StartTransactionCommand.d.ts.map +1 -0
  616. package/lib/types/internal/app-binder/command/StartTransactionCommand.test.d.ts +2 -0
  617. package/lib/types/internal/app-binder/command/StartTransactionCommand.test.d.ts.map +1 -0
  618. package/lib/types/internal/app-binder/command/StoreTransactionCommand.d.ts +25 -0
  619. package/lib/types/internal/app-binder/command/StoreTransactionCommand.d.ts.map +1 -0
  620. package/lib/types/internal/app-binder/command/StoreTransactionCommand.test.d.ts +2 -0
  621. package/lib/types/internal/app-binder/command/StoreTransactionCommand.test.d.ts.map +1 -0
  622. package/lib/types/internal/app-binder/command/utils/ethAppErrors.d.ts +8 -0
  623. package/lib/types/internal/app-binder/command/utils/ethAppErrors.d.ts.map +1 -0
  624. package/lib/types/internal/app-binder/command/utils/ethAppErrors.test.d.ts +2 -0
  625. package/lib/types/internal/app-binder/command/utils/ethAppErrors.test.d.ts.map +1 -0
  626. package/lib/types/internal/app-binder/constant/plugins.d.ts +2 -0
  627. package/lib/types/internal/app-binder/constant/plugins.d.ts.map +1 -0
  628. package/lib/types/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts +54 -0
  629. package/lib/types/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts.map +1 -0
  630. package/lib/types/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.d.ts +2 -0
  631. package/lib/types/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.d.ts.map +1 -0
  632. package/lib/types/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts +39 -0
  633. package/lib/types/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts.map +1 -0
  634. package/lib/types/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.d.ts +2 -0
  635. package/lib/types/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.d.ts.map +1 -0
  636. package/lib/types/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts +4 -0
  637. package/lib/{cjs → types}/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts.map +1 -1
  638. package/lib/{cjs → types}/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.d.ts.map +1 -1
  639. package/lib/types/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts +15 -0
  640. package/lib/types/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts.map +1 -0
  641. package/lib/{cjs → types}/internal/app-binder/task/BuildEIP712ContextTask.d.ts.map +1 -1
  642. package/lib/types/internal/app-binder/task/BuildEIP712ContextTask.test.d.ts +2 -0
  643. package/lib/types/internal/app-binder/task/BuildEIP712ContextTask.test.d.ts.map +1 -0
  644. package/lib/types/internal/app-binder/task/BuildTransactionContextTask.d.ts +27 -0
  645. package/lib/types/internal/app-binder/task/BuildTransactionContextTask.d.ts.map +1 -0
  646. package/lib/types/internal/app-binder/task/BuildTransactionContextTask.test.d.ts +2 -0
  647. package/lib/types/internal/app-binder/task/BuildTransactionContextTask.test.d.ts.map +1 -0
  648. package/lib/types/internal/app-binder/task/ProvideEIP712ContextTask.d.ts +35 -0
  649. package/lib/types/internal/app-binder/task/ProvideEIP712ContextTask.d.ts.map +1 -0
  650. package/lib/types/internal/app-binder/task/ProvideEIP712ContextTask.test.d.ts +2 -0
  651. package/lib/types/internal/app-binder/task/ProvideEIP712ContextTask.test.d.ts.map +1 -0
  652. package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.d.ts +37 -0
  653. package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.d.ts.map +1 -0
  654. package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.test.d.ts +2 -0
  655. package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.test.d.ts.map +1 -0
  656. package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.d.ts +80 -0
  657. package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.d.ts.map +1 -0
  658. package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.d.ts +2 -0
  659. package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.d.ts.map +1 -0
  660. package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.d.ts +27 -0
  661. package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.d.ts.map +1 -0
  662. package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.test.d.ts +2 -0
  663. package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.test.d.ts.map +1 -0
  664. package/lib/types/internal/app-binder/task/SendCommandInChunksTask.d.ts +17 -0
  665. package/lib/types/internal/app-binder/task/SendCommandInChunksTask.d.ts.map +1 -0
  666. package/lib/{esm → types}/internal/app-binder/task/SendEIP712StructImplemTask.d.ts +2 -1
  667. package/lib/types/internal/app-binder/task/SendEIP712StructImplemTask.d.ts.map +1 -0
  668. package/lib/types/internal/app-binder/task/SendEIP712StructImplemTask.test.d.ts +2 -0
  669. package/lib/types/internal/app-binder/task/SendEIP712StructImplemTask.test.d.ts.map +1 -0
  670. package/lib/types/internal/app-binder/task/SendPayloadInChunksTask.d.ts +15 -0
  671. package/lib/types/internal/app-binder/task/SendPayloadInChunksTask.d.ts.map +1 -0
  672. package/lib/types/internal/app-binder/task/SendPayloadInChunksTask.test.d.ts +2 -0
  673. package/lib/types/internal/app-binder/task/SendPayloadInChunksTask.test.d.ts.map +1 -0
  674. package/lib/types/internal/app-binder/task/SendSignPersonalMessageTask.d.ts +15 -0
  675. package/lib/types/internal/app-binder/task/SendSignPersonalMessageTask.d.ts.map +1 -0
  676. package/lib/types/internal/app-binder/task/SendSignPersonalMessageTask.test.d.ts +2 -0
  677. package/lib/types/internal/app-binder/task/SendSignPersonalMessageTask.test.d.ts.map +1 -0
  678. package/lib/types/internal/app-binder/task/SendSignTransactionTask.d.ts +21 -0
  679. package/lib/types/internal/app-binder/task/SendSignTransactionTask.d.ts.map +1 -0
  680. package/lib/types/internal/app-binder/task/SendSignTransactionTask.test.d.ts +2 -0
  681. package/lib/types/internal/app-binder/task/SendSignTransactionTask.test.d.ts.map +1 -0
  682. package/lib/types/internal/di.d.ts +10 -0
  683. package/lib/types/internal/di.d.ts.map +1 -0
  684. package/lib/{cjs → types}/internal/externalTypes.d.ts +1 -1
  685. package/lib/types/internal/message/di/messageModule.test.d.ts +2 -0
  686. package/lib/types/internal/message/di/messageModule.test.d.ts.map +1 -0
  687. package/lib/{esm → types}/internal/message/use-case/SignMessageUseCase.d.ts +2 -2
  688. package/lib/{cjs → types}/internal/message/use-case/SignMessageUseCase.d.ts.map +1 -1
  689. package/lib/types/internal/message/use-case/SignMessageUseCase.test.d.ts +2 -0
  690. package/lib/types/internal/message/use-case/SignMessageUseCase.test.d.ts.map +1 -0
  691. package/lib/types/internal/shared/utils/PayloadUtils.d.ts +5 -0
  692. package/lib/types/internal/shared/utils/PayloadUtils.d.ts.map +1 -0
  693. package/lib/types/internal/shared/utils/PayloadUtils.test.d.ts +2 -0
  694. package/lib/types/internal/shared/utils/PayloadUtils.test.d.ts.map +1 -0
  695. package/lib/{cjs → types}/internal/transaction/di/transactionModule.d.ts.map +1 -1
  696. package/lib/types/internal/transaction/di/transactionModule.test.d.ts +2 -0
  697. package/lib/types/internal/transaction/di/transactionModule.test.d.ts.map +1 -0
  698. package/lib/{cjs → types}/internal/transaction/di/transactionTypes.d.ts +1 -0
  699. package/lib/{cjs → types}/internal/transaction/di/transactionTypes.d.ts.map +1 -1
  700. package/lib/types/internal/transaction/service/mapper/EthersRawTransactionMapper.d.ts +7 -0
  701. package/lib/types/internal/transaction/service/mapper/EthersRawTransactionMapper.d.ts.map +1 -0
  702. package/lib/types/internal/transaction/service/mapper/EthersRawTransactionMapper.test.d.ts +2 -0
  703. package/lib/types/internal/transaction/service/mapper/EthersRawTransactionMapper.test.d.ts.map +1 -0
  704. package/lib/types/internal/transaction/service/mapper/TransactionMapper.d.ts +6 -0
  705. package/lib/types/internal/transaction/service/mapper/TransactionMapper.d.ts.map +1 -0
  706. package/lib/{esm → types}/internal/transaction/service/mapper/TransactionMapperService.d.ts +1 -2
  707. package/lib/types/internal/transaction/service/mapper/TransactionMapperService.d.ts.map +1 -0
  708. package/lib/types/internal/transaction/service/mapper/TransactionMapperService.test.d.ts +2 -0
  709. package/lib/types/internal/transaction/service/mapper/TransactionMapperService.test.d.ts.map +1 -0
  710. package/lib/types/internal/transaction/service/mapper/model/TransactionMapperResult.d.ts +18 -0
  711. package/lib/types/internal/transaction/service/mapper/model/TransactionMapperResult.d.ts.map +1 -0
  712. package/lib/types/internal/transaction/service/parser/TransactionParserService.d.ts +11 -0
  713. package/lib/types/internal/transaction/service/parser/TransactionParserService.d.ts.map +1 -0
  714. package/lib/types/internal/transaction/service/parser/TransactionParserService.test.d.ts +2 -0
  715. package/lib/types/internal/transaction/service/parser/TransactionParserService.test.d.ts.map +1 -0
  716. package/lib/{cjs → types}/internal/transaction/use-case/SignTransactionUseCase.d.ts +1 -2
  717. package/lib/types/internal/transaction/use-case/SignTransactionUseCase.d.ts.map +1 -0
  718. package/lib/types/internal/transaction/use-case/SignTransactionUseCase.test.d.ts +2 -0
  719. package/lib/types/internal/transaction/use-case/SignTransactionUseCase.test.d.ts.map +1 -0
  720. package/lib/types/internal/typed-data/di/typedDataModule.test.d.ts +2 -0
  721. package/lib/types/internal/typed-data/di/typedDataModule.test.d.ts.map +1 -0
  722. package/lib/{cjs → types}/internal/typed-data/model/Types.d.ts +1 -1
  723. package/lib/types/internal/typed-data/model/Types.d.ts.map +1 -0
  724. package/lib/{esm → types}/internal/typed-data/service/TypedDataEncoder.d.ts +1 -1
  725. package/lib/{cjs → types}/internal/typed-data/service/TypedDataEncoder.d.ts.map +1 -1
  726. package/lib/types/internal/typed-data/service/TypedDataEncoder.test.d.ts +2 -0
  727. package/lib/types/internal/typed-data/service/TypedDataEncoder.test.d.ts.map +1 -0
  728. package/lib/{esm → types}/internal/typed-data/service/TypedDataParser.d.ts +3 -3
  729. package/lib/types/internal/typed-data/service/TypedDataParser.d.ts.map +1 -0
  730. package/lib/types/internal/typed-data/service/TypedDataParser.test.d.ts +2 -0
  731. package/lib/types/internal/typed-data/service/TypedDataParser.test.d.ts.map +1 -0
  732. package/lib/{esm → types}/internal/typed-data/service/TypedDataParserService.d.ts +3 -3
  733. package/lib/types/internal/typed-data/service/TypedDataParserService.d.ts.map +1 -0
  734. package/lib/types/internal/typed-data/use-case/SignTypedDataUseCase.test.d.ts +2 -0
  735. package/lib/types/internal/typed-data/use-case/SignTypedDataUseCase.test.d.ts.map +1 -0
  736. package/lib/types/tsconfig.prod.tsbuildinfo +1 -0
  737. package/package.json +30 -34
  738. package/lib/cjs/api/KeyringEth.d.ts +0 -15
  739. package/lib/cjs/api/KeyringEth.d.ts.map +0 -1
  740. package/lib/cjs/api/KeyringEth.js +0 -3
  741. package/lib/cjs/api/KeyringEth.js.map +0 -1
  742. package/lib/cjs/api/KeyringEthBuilder.d.ts +0 -38
  743. package/lib/cjs/api/KeyringEthBuilder.d.ts.map +0 -1
  744. package/lib/cjs/api/KeyringEthBuilder.js +0 -49
  745. package/lib/cjs/api/KeyringEthBuilder.js.map +0 -1
  746. package/lib/cjs/api/app-binder/GetAddressDeviceActionTypes.d.ts +0 -9
  747. package/lib/cjs/api/app-binder/GetAddressDeviceActionTypes.d.ts.map +0 -1
  748. package/lib/cjs/api/app-binder/SignPersonalMessageDeviceActionTypes.d.ts +0 -20
  749. package/lib/cjs/api/app-binder/SignPersonalMessageDeviceActionTypes.d.ts.map +0 -1
  750. package/lib/cjs/api/app-binder/SignTransactionDeviceActionTypes.d.ts +0 -31
  751. package/lib/cjs/api/app-binder/SignTransactionDeviceActionTypes.d.ts.map +0 -1
  752. package/lib/cjs/api/app-binder/SignTypedDataDeviceActionTypes.d.ts.map +0 -1
  753. package/lib/cjs/api/index.d.ts.map +0 -1
  754. package/lib/cjs/api/model/Address.d.ts +0 -7
  755. package/lib/cjs/api/model/Address.d.ts.map +0 -1
  756. package/lib/cjs/api/model/Signature.d.ts +0 -7
  757. package/lib/cjs/api/model/Signature.d.ts.map +0 -1
  758. package/lib/cjs/api/model/Transaction.d.ts +0 -4
  759. package/lib/cjs/api/model/Transaction.d.ts.map +0 -1
  760. package/lib/cjs/api/model/Transaction.js +0 -3
  761. package/lib/cjs/api/model/Transaction.js.map +0 -1
  762. package/lib/cjs/internal/DefaultKeyringEth.d.ts +0 -26
  763. package/lib/cjs/internal/DefaultKeyringEth.d.ts.map +0 -1
  764. package/lib/cjs/internal/DefaultKeyringEth.js +0 -36
  765. package/lib/cjs/internal/DefaultKeyringEth.js.map +0 -1
  766. package/lib/cjs/internal/app-binder/EthAppBinder.d.ts.map +0 -1
  767. package/lib/cjs/internal/app-binder/command/GetAddressCommand.d.ts +0 -9
  768. package/lib/cjs/internal/app-binder/command/GetAddressCommand.d.ts.map +0 -1
  769. package/lib/cjs/internal/app-binder/command/GetChallengeCommand.d.ts +0 -10
  770. package/lib/cjs/internal/app-binder/command/GetChallengeCommand.d.ts.map +0 -1
  771. package/lib/cjs/internal/app-binder/command/ProvideDomainNameCommand.d.ts +0 -19
  772. package/lib/cjs/internal/app-binder/command/ProvideDomainNameCommand.d.ts.map +0 -1
  773. package/lib/cjs/internal/app-binder/command/ProvideDomainNameCommand.js +0 -41
  774. package/lib/cjs/internal/app-binder/command/ProvideDomainNameCommand.js.map +0 -1
  775. package/lib/cjs/internal/app-binder/command/ProvideNFTInformationCommand.d.ts +0 -15
  776. package/lib/cjs/internal/app-binder/command/ProvideNFTInformationCommand.d.ts.map +0 -1
  777. package/lib/cjs/internal/app-binder/command/ProvideTokenInformationCommand.d.ts.map +0 -1
  778. package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.d.ts +0 -41
  779. package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.d.ts.map +0 -1
  780. package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.d.ts +0 -25
  781. package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.d.ts.map +0 -1
  782. package/lib/cjs/internal/app-binder/command/SendEIP712StructImplemCommand.d.ts.map +0 -1
  783. package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.d.ts +0 -17
  784. package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.d.ts.map +0 -1
  785. package/lib/cjs/internal/app-binder/command/SetPluginCommand.d.ts +0 -18
  786. package/lib/cjs/internal/app-binder/command/SetPluginCommand.d.ts.map +0 -1
  787. package/lib/cjs/internal/app-binder/command/SignEIP712Command.d.ts.map +0 -1
  788. package/lib/cjs/internal/app-binder/command/SignPersonalMessageCommand.d.ts +0 -21
  789. package/lib/cjs/internal/app-binder/command/SignPersonalMessageCommand.d.ts.map +0 -1
  790. package/lib/cjs/internal/app-binder/command/SignTransactionCommand.d.ts.map +0 -1
  791. package/lib/cjs/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.d.ts +0 -17
  792. package/lib/cjs/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.d.ts.map +0 -1
  793. package/lib/cjs/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.js +0 -161
  794. package/lib/cjs/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.js.map +0 -1
  795. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts +0 -39
  796. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts.map +0 -1
  797. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts +0 -31
  798. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts.map +0 -1
  799. package/lib/cjs/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts +0 -3
  800. package/lib/cjs/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts +0 -12
  801. package/lib/cjs/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts.map +0 -1
  802. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.d.ts +0 -21
  803. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.d.ts.map +0 -1
  804. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.d.ts +0 -21
  805. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.d.ts.map +0 -1
  806. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.d.ts +0 -57
  807. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.d.ts.map +0 -1
  808. package/lib/cjs/internal/app-binder/task/SendEIP712StructImplemTask.d.ts +0 -19
  809. package/lib/cjs/internal/app-binder/task/SendEIP712StructImplemTask.d.ts.map +0 -1
  810. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.d.ts +0 -14
  811. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.d.ts.map +0 -1
  812. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.d.ts +0 -14
  813. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.d.ts.map +0 -1
  814. package/lib/cjs/internal/di.d.ts +0 -10
  815. package/lib/cjs/internal/di.d.ts.map +0 -1
  816. package/lib/cjs/internal/message/use-case/SignMessageUseCase.d.ts +0 -8
  817. package/lib/cjs/internal/shared/utils/DerivationPathUtils.d.ts +0 -5
  818. package/lib/cjs/internal/shared/utils/DerivationPathUtils.d.ts.map +0 -1
  819. package/lib/cjs/internal/shared/utils/DerivationPathUtils.js +0 -24
  820. package/lib/cjs/internal/shared/utils/DerivationPathUtils.js.map +0 -1
  821. package/lib/cjs/internal/transaction/service/mapper/EthersV5TransactionMapper.d.ts +0 -10
  822. package/lib/cjs/internal/transaction/service/mapper/EthersV5TransactionMapper.d.ts.map +0 -1
  823. package/lib/cjs/internal/transaction/service/mapper/EthersV5TransactionMapper.js +0 -60
  824. package/lib/cjs/internal/transaction/service/mapper/EthersV5TransactionMapper.js.map +0 -1
  825. package/lib/cjs/internal/transaction/service/mapper/EthersV6TransactionMapper.d.ts +0 -9
  826. package/lib/cjs/internal/transaction/service/mapper/EthersV6TransactionMapper.d.ts.map +0 -1
  827. package/lib/cjs/internal/transaction/service/mapper/EthersV6TransactionMapper.js +0 -36
  828. package/lib/cjs/internal/transaction/service/mapper/EthersV6TransactionMapper.js.map +0 -1
  829. package/lib/cjs/internal/transaction/service/mapper/TransactionMapper.d.ts +0 -7
  830. package/lib/cjs/internal/transaction/service/mapper/TransactionMapper.d.ts.map +0 -1
  831. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.d.ts +0 -10
  832. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.d.ts.map +0 -1
  833. package/lib/cjs/internal/transaction/service/mapper/model/TransactionMapperResult.d.ts +0 -12
  834. package/lib/cjs/internal/transaction/service/mapper/model/TransactionMapperResult.d.ts.map +0 -1
  835. package/lib/cjs/internal/transaction/use-case/SignTransactionUseCase.d.ts.map +0 -1
  836. package/lib/cjs/internal/typed-data/model/Types.d.ts.map +0 -1
  837. package/lib/cjs/internal/typed-data/service/TypedDataEncoder.d.ts +0 -10
  838. package/lib/cjs/internal/typed-data/service/TypedDataParser.d.ts +0 -73
  839. package/lib/cjs/internal/typed-data/service/TypedDataParser.d.ts.map +0 -1
  840. package/lib/cjs/internal/typed-data/service/TypedDataParserService.d.ts +0 -12
  841. package/lib/cjs/internal/typed-data/service/TypedDataParserService.d.ts.map +0 -1
  842. package/lib/esm/api/KeyringEth.d.ts +0 -15
  843. package/lib/esm/api/KeyringEth.d.ts.map +0 -1
  844. package/lib/esm/api/KeyringEth.js +0 -2
  845. package/lib/esm/api/KeyringEth.js.map +0 -1
  846. package/lib/esm/api/KeyringEthBuilder.d.ts +0 -38
  847. package/lib/esm/api/KeyringEthBuilder.d.ts.map +0 -1
  848. package/lib/esm/api/KeyringEthBuilder.js +0 -45
  849. package/lib/esm/api/KeyringEthBuilder.js.map +0 -1
  850. package/lib/esm/api/app-binder/GetAddressCommandTypes.d.ts +0 -11
  851. package/lib/esm/api/app-binder/GetAddressCommandTypes.d.ts.map +0 -1
  852. package/lib/esm/api/app-binder/GetAddressDeviceActionTypes.d.ts.map +0 -1
  853. package/lib/esm/api/app-binder/SignPersonalMessageDeviceActionTypes.d.ts +0 -20
  854. package/lib/esm/api/app-binder/SignPersonalMessageDeviceActionTypes.d.ts.map +0 -1
  855. package/lib/esm/api/app-binder/SignTransactionDeviceActionTypes.d.ts +0 -31
  856. package/lib/esm/api/app-binder/SignTransactionDeviceActionTypes.d.ts.map +0 -1
  857. package/lib/esm/api/app-binder/SignTypedDataDeviceActionTypes.d.ts +0 -27
  858. package/lib/esm/api/app-binder/SignTypedDataDeviceActionTypes.d.ts.map +0 -1
  859. package/lib/esm/api/index.d.ts +0 -13
  860. package/lib/esm/api/index.d.ts.map +0 -1
  861. package/lib/esm/api/model/Address.d.ts +0 -7
  862. package/lib/esm/api/model/Address.d.ts.map +0 -1
  863. package/lib/esm/api/model/AddressOptions.d.ts +0 -5
  864. package/lib/esm/api/model/AddressOptions.d.ts.map +0 -1
  865. package/lib/esm/api/model/Signature.d.ts +0 -7
  866. package/lib/esm/api/model/Signature.d.ts.map +0 -1
  867. package/lib/esm/api/model/Transaction.d.ts +0 -4
  868. package/lib/esm/api/model/Transaction.d.ts.map +0 -1
  869. package/lib/esm/api/model/Transaction.js +0 -2
  870. package/lib/esm/api/model/Transaction.js.map +0 -1
  871. package/lib/esm/api/model/TransactionOptions.d.ts +0 -4
  872. package/lib/esm/api/model/TransactionOptions.d.ts.map +0 -1
  873. package/lib/esm/api/model/TypedData.d.ts +0 -18
  874. package/lib/esm/api/model/TypedData.d.ts.map +0 -1
  875. package/lib/esm/index.d.ts +0 -3
  876. package/lib/esm/index.d.ts.map +0 -1
  877. package/lib/esm/internal/DefaultKeyringEth.d.ts +0 -26
  878. package/lib/esm/internal/DefaultKeyringEth.d.ts.map +0 -1
  879. package/lib/esm/internal/DefaultKeyringEth.js +0 -32
  880. package/lib/esm/internal/DefaultKeyringEth.js.map +0 -1
  881. package/lib/esm/internal/address/di/addressModule.d.ts +0 -3
  882. package/lib/esm/internal/address/di/addressModule.d.ts.map +0 -1
  883. package/lib/esm/internal/address/di/addressTypes.d.ts +0 -4
  884. package/lib/esm/internal/address/di/addressTypes.d.ts.map +0 -1
  885. package/lib/esm/internal/address/use-case/GetAddressUseCase.d.ts +0 -9
  886. package/lib/esm/internal/address/use-case/GetAddressUseCase.d.ts.map +0 -1
  887. package/lib/esm/internal/app-binder/EthAppBinder.d.ts +0 -38
  888. package/lib/esm/internal/app-binder/EthAppBinder.d.ts.map +0 -1
  889. package/lib/esm/internal/app-binder/command/GetAddressCommand.d.ts +0 -9
  890. package/lib/esm/internal/app-binder/command/GetAddressCommand.d.ts.map +0 -1
  891. package/lib/esm/internal/app-binder/command/GetChallengeCommand.d.ts +0 -10
  892. package/lib/esm/internal/app-binder/command/GetChallengeCommand.d.ts.map +0 -1
  893. package/lib/esm/internal/app-binder/command/ProvideDomainNameCommand.d.ts +0 -19
  894. package/lib/esm/internal/app-binder/command/ProvideDomainNameCommand.d.ts.map +0 -1
  895. package/lib/esm/internal/app-binder/command/ProvideDomainNameCommand.js +0 -37
  896. package/lib/esm/internal/app-binder/command/ProvideDomainNameCommand.js.map +0 -1
  897. package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.d.ts +0 -15
  898. package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.d.ts.map +0 -1
  899. package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.d.ts +0 -14
  900. package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.d.ts.map +0 -1
  901. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.d.ts.map +0 -1
  902. package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.d.ts.map +0 -1
  903. package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.d.ts +0 -30
  904. package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.d.ts.map +0 -1
  905. package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.d.ts +0 -17
  906. package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.d.ts.map +0 -1
  907. package/lib/esm/internal/app-binder/command/SetPluginCommand.d.ts +0 -18
  908. package/lib/esm/internal/app-binder/command/SetPluginCommand.d.ts.map +0 -1
  909. package/lib/esm/internal/app-binder/command/SignEIP712Command.d.ts +0 -25
  910. package/lib/esm/internal/app-binder/command/SignEIP712Command.d.ts.map +0 -1
  911. package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.d.ts.map +0 -1
  912. package/lib/esm/internal/app-binder/command/SignTransactionCommand.d.ts +0 -24
  913. package/lib/esm/internal/app-binder/command/SignTransactionCommand.d.ts.map +0 -1
  914. package/lib/esm/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.d.ts +0 -17
  915. package/lib/esm/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.d.ts.map +0 -1
  916. package/lib/esm/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.js +0 -157
  917. package/lib/esm/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.js.map +0 -1
  918. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts +0 -39
  919. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts.map +0 -1
  920. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts +0 -31
  921. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts.map +0 -1
  922. package/lib/esm/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts +0 -3
  923. package/lib/esm/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts.map +0 -1
  924. package/lib/esm/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.d.ts +0 -2
  925. package/lib/esm/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.d.ts.map +0 -1
  926. package/lib/esm/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts +0 -12
  927. package/lib/esm/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts.map +0 -1
  928. package/lib/esm/internal/app-binder/di/appBinderModule.d.ts +0 -3
  929. package/lib/esm/internal/app-binder/di/appBinderModule.d.ts.map +0 -1
  930. package/lib/esm/internal/app-binder/di/appBinderTypes.d.ts +0 -4
  931. package/lib/esm/internal/app-binder/di/appBinderTypes.d.ts.map +0 -1
  932. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.d.ts +0 -16
  933. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.d.ts.map +0 -1
  934. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.d.ts +0 -21
  935. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.d.ts.map +0 -1
  936. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.d.ts +0 -21
  937. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.d.ts.map +0 -1
  938. package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.d.ts +0 -57
  939. package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.d.ts.map +0 -1
  940. package/lib/esm/internal/app-binder/task/SendEIP712StructImplemTask.d.ts.map +0 -1
  941. package/lib/esm/internal/app-binder/task/SendSignPersonalMessageTask.d.ts +0 -14
  942. package/lib/esm/internal/app-binder/task/SendSignPersonalMessageTask.d.ts.map +0 -1
  943. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.d.ts +0 -14
  944. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.d.ts.map +0 -1
  945. package/lib/esm/internal/di.d.ts +0 -10
  946. package/lib/esm/internal/di.d.ts.map +0 -1
  947. package/lib/esm/internal/externalTypes.d.ts +0 -6
  948. package/lib/esm/internal/externalTypes.d.ts.map +0 -1
  949. package/lib/esm/internal/message/di/messageModule.d.ts +0 -3
  950. package/lib/esm/internal/message/di/messageModule.d.ts.map +0 -1
  951. package/lib/esm/internal/message/di/messageTypes.d.ts +0 -4
  952. package/lib/esm/internal/message/di/messageTypes.d.ts.map +0 -1
  953. package/lib/esm/internal/message/use-case/SignMessageUseCase.d.ts.map +0 -1
  954. package/lib/esm/internal/shared/utils/DerivationPathUtils.d.ts +0 -5
  955. package/lib/esm/internal/shared/utils/DerivationPathUtils.d.ts.map +0 -1
  956. package/lib/esm/internal/shared/utils/DerivationPathUtils.js +0 -20
  957. package/lib/esm/internal/shared/utils/DerivationPathUtils.js.map +0 -1
  958. package/lib/esm/internal/transaction/di/transactionModule.d.ts +0 -3
  959. package/lib/esm/internal/transaction/di/transactionModule.d.ts.map +0 -1
  960. package/lib/esm/internal/transaction/di/transactionTypes.d.ts +0 -6
  961. package/lib/esm/internal/transaction/di/transactionTypes.d.ts.map +0 -1
  962. package/lib/esm/internal/transaction/service/mapper/EthersV5TransactionMapper.d.ts +0 -10
  963. package/lib/esm/internal/transaction/service/mapper/EthersV5TransactionMapper.d.ts.map +0 -1
  964. package/lib/esm/internal/transaction/service/mapper/EthersV5TransactionMapper.js +0 -57
  965. package/lib/esm/internal/transaction/service/mapper/EthersV5TransactionMapper.js.map +0 -1
  966. package/lib/esm/internal/transaction/service/mapper/EthersV6TransactionMapper.d.ts +0 -9
  967. package/lib/esm/internal/transaction/service/mapper/EthersV6TransactionMapper.d.ts.map +0 -1
  968. package/lib/esm/internal/transaction/service/mapper/EthersV6TransactionMapper.js +0 -33
  969. package/lib/esm/internal/transaction/service/mapper/EthersV6TransactionMapper.js.map +0 -1
  970. package/lib/esm/internal/transaction/service/mapper/TransactionMapper.d.ts +0 -7
  971. package/lib/esm/internal/transaction/service/mapper/TransactionMapper.d.ts.map +0 -1
  972. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.d.ts.map +0 -1
  973. package/lib/esm/internal/transaction/service/mapper/model/TransactionMapperResult.d.ts +0 -12
  974. package/lib/esm/internal/transaction/service/mapper/model/TransactionMapperResult.d.ts.map +0 -1
  975. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.d.ts +0 -10
  976. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.d.ts.map +0 -1
  977. package/lib/esm/internal/typed-data/di/typedDataModule.d.ts +0 -3
  978. package/lib/esm/internal/typed-data/di/typedDataModule.d.ts.map +0 -1
  979. package/lib/esm/internal/typed-data/di/typedDataTypes.d.ts +0 -5
  980. package/lib/esm/internal/typed-data/di/typedDataTypes.d.ts.map +0 -1
  981. package/lib/esm/internal/typed-data/model/Types.d.ts +0 -41
  982. package/lib/esm/internal/typed-data/model/Types.d.ts.map +0 -1
  983. package/lib/esm/internal/typed-data/service/DefaultTypedDataParserService.d.ts +0 -7
  984. package/lib/esm/internal/typed-data/service/DefaultTypedDataParserService.d.ts.map +0 -1
  985. package/lib/esm/internal/typed-data/service/TypedDataEncoder.d.ts.map +0 -1
  986. package/lib/esm/internal/typed-data/service/TypedDataParser.d.ts.map +0 -1
  987. package/lib/esm/internal/typed-data/service/TypedDataParserService.d.ts.map +0 -1
  988. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.d.ts +0 -11
  989. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.d.ts.map +0 -1
  990. /package/lib/{cjs → types}/api/app-binder/GetAddressCommandTypes.d.ts +0 -0
  991. /package/lib/{cjs → types}/api/app-binder/GetAddressCommandTypes.d.ts.map +0 -0
  992. /package/lib/{cjs → types}/api/model/AddressOptions.d.ts +0 -0
  993. /package/lib/{cjs → types}/api/model/AddressOptions.d.ts.map +0 -0
  994. /package/lib/{cjs → types}/api/model/TransactionOptions.d.ts +0 -0
  995. /package/lib/{cjs → types}/api/model/TransactionOptions.d.ts.map +0 -0
  996. /package/lib/{cjs → types}/api/model/TypedData.d.ts +0 -0
  997. /package/lib/{cjs → types}/api/model/TypedData.d.ts.map +0 -0
  998. /package/lib/{cjs → types}/index.d.ts +0 -0
  999. /package/lib/{cjs → types}/index.d.ts.map +0 -0
  1000. /package/lib/{cjs → types}/internal/address/di/addressModule.d.ts +0 -0
  1001. /package/lib/{cjs → types}/internal/address/di/addressModule.d.ts.map +0 -0
  1002. /package/lib/{cjs → types}/internal/address/di/addressTypes.d.ts +0 -0
  1003. /package/lib/{cjs → types}/internal/address/di/addressTypes.d.ts.map +0 -0
  1004. /package/lib/{cjs → types}/internal/address/use-case/GetAddressUseCase.d.ts +0 -0
  1005. /package/lib/{cjs → types}/internal/address/use-case/GetAddressUseCase.d.ts.map +0 -0
  1006. /package/lib/{cjs → types}/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.d.ts +0 -0
  1007. /package/lib/{cjs → types}/internal/app-binder/di/appBinderModule.d.ts +0 -0
  1008. /package/lib/{cjs → types}/internal/app-binder/di/appBinderModule.d.ts.map +0 -0
  1009. /package/lib/{cjs → types}/internal/app-binder/di/appBinderTypes.d.ts +0 -0
  1010. /package/lib/{cjs → types}/internal/app-binder/di/appBinderTypes.d.ts.map +0 -0
  1011. /package/lib/{cjs → types}/internal/app-binder/task/BuildEIP712ContextTask.d.ts +0 -0
  1012. /package/lib/{cjs → types}/internal/externalTypes.d.ts.map +0 -0
  1013. /package/lib/{cjs → types}/internal/message/di/messageModule.d.ts +0 -0
  1014. /package/lib/{cjs → types}/internal/message/di/messageModule.d.ts.map +0 -0
  1015. /package/lib/{cjs → types}/internal/message/di/messageTypes.d.ts +0 -0
  1016. /package/lib/{cjs → types}/internal/message/di/messageTypes.d.ts.map +0 -0
  1017. /package/lib/{cjs → types}/internal/transaction/di/transactionModule.d.ts +0 -0
  1018. /package/lib/{cjs → types}/internal/typed-data/di/typedDataModule.d.ts +0 -0
  1019. /package/lib/{cjs → types}/internal/typed-data/di/typedDataModule.d.ts.map +0 -0
  1020. /package/lib/{cjs → types}/internal/typed-data/di/typedDataTypes.d.ts +0 -0
  1021. /package/lib/{cjs → types}/internal/typed-data/di/typedDataTypes.d.ts.map +0 -0
  1022. /package/lib/{cjs → types}/internal/typed-data/service/DefaultTypedDataParserService.d.ts +0 -0
  1023. /package/lib/{cjs → types}/internal/typed-data/service/DefaultTypedDataParserService.d.ts.map +0 -0
  1024. /package/lib/{cjs → types}/internal/typed-data/use-case/SignTypedDataUseCase.d.ts +0 -0
  1025. /package/lib/{cjs → types}/internal/typed-data/use-case/SignTypedDataUseCase.d.ts.map +0 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.ts"],
4
+ "sourcesContent": ["import {\n type ClearSignContextSuccess,\n type ClearSignContextSuccessType,\n ClearSignContextType,\n ContainerPath,\n type ContextModule,\n} from \"@ledgerhq/context-module\";\nimport {\n CommandResultFactory,\n type InternalApi,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\nimport { Left, Nothing, Right } from \"purify-ts\";\n\nimport { GetChallengeCommand } from \"@internal/app-binder/command/GetChallengeCommand\";\nimport { ProvideEnumCommand } from \"@internal/app-binder/command/ProvideEnumCommand\";\nimport { ProvideNFTInformationCommand } from \"@internal/app-binder/command/ProvideNFTInformationCommand\";\nimport { ProvideTokenInformationCommand } from \"@internal/app-binder/command/ProvideTokenInformationCommand\";\nimport { ProvideTransactionFieldDescriptionCommand } from \"@internal/app-binder/command/ProvideTransactionFieldDescriptionCommand\";\nimport { ProvideTrustedNameCommand } from \"@internal/app-binder/command/ProvideTrustedNameCommand\";\nimport { type TransactionParserService } from \"@internal/transaction/service/parser/TransactionParserService\";\n\nimport { ProvideTransactionFieldDescriptionTask } from \"./ProvideTransactionFieldDescriptionTask\";\n\ndescribe(\"ProvideTransactionFieldDescriptionTask\", () => {\n const transactionParserMock = {\n extractValue: vi.fn(),\n } as unknown as TransactionParserService;\n const contextModuleMock = {\n getContext: vi.fn(),\n } as unknown as ContextModule;\n const apiMock: InternalApi = {\n sendCommand: vi.fn(),\n } as unknown as InternalApi;\n\n beforeEach(() => {\n vi.clearAllMocks();\n });\n\n describe(\"should call the right provide command\", () => {\n it.each<{\n type: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n >[\"type\"];\n commandInstanceType: unknown;\n }>([\n {\n type: ClearSignContextType.NFT,\n commandInstanceType: ProvideNFTInformationCommand,\n },\n {\n type: ClearSignContextType.TOKEN,\n commandInstanceType: ProvideTokenInformationCommand,\n },\n {\n type: ClearSignContextType.TRUSTED_NAME,\n commandInstanceType: ProvideTrustedNameCommand,\n },\n {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n commandInstanceType: ProvideTransactionFieldDescriptionCommand,\n },\n ])(\"when type is $type\", async ({ type, commandInstanceType }) => {\n // GIVEN\n const spy = vi\n .spyOn(apiMock, \"sendCommand\")\n .mockResolvedValueOnce(CommandResultFactory({ data: \"ok\" }));\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess = {\n type,\n payload,\n };\n\n // WHEN\n await new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n }).run();\n\n // THEN\n expect(spy.mock.calls[0]![0]).toBeInstanceOf(commandInstanceType);\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(1);\n });\n\n it(\"when type is transactionFieldDescription with a enum reference\", async () => {\n // GIVEN\n const spy = vi\n .spyOn(apiMock, \"sendCommand\")\n .mockResolvedValueOnce(CommandResultFactory({ data: \"ok\" }))\n .mockResolvedValueOnce(CommandResultFactory({ data: \"ok\" }));\n\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Right([new Uint8Array([0x01, 0x02, 0x03, 0x04])]),\n );\n\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess = {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n payload,\n reference: {\n type: ClearSignContextType.ENUM,\n valuePath: ContainerPath.VALUE,\n id: 0x42,\n },\n };\n\n // WHEN\n await new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [\n {\n id: 0x42,\n value: 0x01,\n type: ClearSignContextType.ENUM,\n payload: \"0x060708\",\n },\n {\n id: 0x42,\n value: 0x04,\n type: ClearSignContextType.ENUM,\n payload: \"0x080706\",\n },\n ],\n }).run();\n\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(2);\n expect(spy.mock.calls[0]![0]).toBeInstanceOf(ProvideEnumCommand);\n // @ts-expect-error args exists\n expect(spy.mock.calls[0]![0].args.data).toEqual(\n new Uint8Array([0x00, 0x03, 0x08, 0x07, 0x06]),\n ); // length + value of the enum with id 0x42 and value 0x04\n expect(spy.mock.calls[1]![0]).toBeInstanceOf(\n ProvideTransactionFieldDescriptionCommand,\n );\n });\n });\n\n describe(\"should return nothing\", () => {\n it.each<\n ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n >[\"type\"]\n >([\n ClearSignContextType.NFT,\n ClearSignContextType.TOKEN,\n ClearSignContextType.TRUSTED_NAME,\n ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n ])(\"when type is %s with no reference\", async (type) => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess = {\n type,\n payload,\n };\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({ data: \"ok\" }),\n );\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(result).toEqual(Nothing);\n });\n });\n\n describe(\"should provide a reference context\", () => {\n it.each<\n ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n >[\"type\"]\n >([ClearSignContextType.NFT, ClearSignContextType.TOKEN])(\n \"when type is %s with a reference\",\n async (type) => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess = {\n type,\n payload,\n reference: {\n type: ClearSignContextType.TOKEN,\n valuePath: ContainerPath.VALUE,\n },\n };\n // provide reference context\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({ data: \"ok\" }),\n );\n // provide context\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({ data: \"ok\" }),\n );\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Right([new Uint8Array([0x01, 0x02, 0x03, 0x04])]),\n );\n vi.spyOn(contextModuleMock, \"getContext\").mockResolvedValueOnce({\n type,\n payload,\n });\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(contextModuleMock.getContext).toHaveBeenCalledTimes(1);\n expect(contextModuleMock.getContext).toHaveBeenCalledWith({\n type: ClearSignContextType.TOKEN,\n chainId: 1,\n address: \"0x01020304\",\n });\n expect(result).toEqual(Nothing);\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(2);\n },\n );\n\n it(\"when type is trustes-name with a reference\", async () => {\n // GIVEN\n const payload1 = `0x01020304`;\n const payload2 = `0x05060708`;\n const extractedValue = new Uint8Array([0x11, 0x22, 0x33, 0x44]);\n const extractedValueAddress = \"0x11223344\";\n const field: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n > = {\n type: ClearSignContextType.TRUSTED_NAME,\n payload: payload1,\n reference: {\n type: ClearSignContextType.TRUSTED_NAME,\n valuePath: ContainerPath.VALUE,\n types: [\"type\"],\n sources: [\"source\"],\n },\n };\n\n vi.spyOn(apiMock, \"sendCommand\")\n // getChallenge\n .mockResolvedValueOnce(\n CommandResultFactory({ data: { challenge: 0x42 } }),\n )\n // provide reference context\n .mockResolvedValueOnce(CommandResultFactory({ data: \"ok\" }))\n // provide context\n .mockResolvedValueOnce(CommandResultFactory({ data: \"ok\" }));\n\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Right([extractedValue]),\n );\n\n vi.spyOn(contextModuleMock, \"getContext\").mockResolvedValueOnce({\n type: ClearSignContextType.TRUSTED_NAME,\n payload: payload2,\n });\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(contextModuleMock.getContext).toHaveBeenCalledTimes(1);\n // getContext for the extracted value address\n expect(contextModuleMock.getContext).toHaveBeenCalledWith({\n type: ClearSignContextType.TRUSTED_NAME,\n chainId: 1,\n address: extractedValueAddress,\n types: [\"type\"],\n sources: [\"source\"],\n challenge: 0x42,\n });\n expect(result).toEqual(Nothing);\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(3);\n expect(apiMock.sendCommand).toHaveBeenNthCalledWith(\n 1,\n new GetChallengeCommand(),\n );\n expect(apiMock.sendCommand).toHaveBeenNthCalledWith(\n 2,\n new ProvideTrustedNameCommand({\n data: new Uint8Array([0x00, 0x04, 0x05, 0x06, 0x07, 0x08]),\n isFirstChunk: true,\n }),\n );\n expect(apiMock.sendCommand).toHaveBeenNthCalledWith(\n 3,\n new ProvideTrustedNameCommand({\n data: new Uint8Array([0x00, 0x04, 0x01, 0x02, 0x03, 0x04]),\n isFirstChunk: true,\n }),\n );\n });\n\n it(\"when type is token with a constant reference\", async () => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess = {\n type: ClearSignContextType.TOKEN,\n payload,\n reference: {\n type: ClearSignContextType.TOKEN,\n value: \"0x09080706\",\n },\n };\n vi.spyOn(apiMock, \"sendCommand\")\n // provide reference context\n .mockResolvedValueOnce(CommandResultFactory({ data: \"ok\" }))\n // provide context\n .mockResolvedValueOnce(CommandResultFactory({ data: \"ok\" }));\n\n vi.spyOn(contextModuleMock, \"getContext\").mockResolvedValueOnce({\n type: ClearSignContextType.TOKEN,\n payload: \"0x05060708\",\n });\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(transactionParserMock.extractValue).not.toHaveBeenCalled();\n expect(contextModuleMock.getContext).toHaveBeenCalledTimes(1);\n expect(contextModuleMock.getContext).toHaveBeenCalledWith({\n type: ClearSignContextType.TOKEN,\n chainId: 1,\n address: \"0x09080706\",\n });\n expect(result).toEqual(Nothing);\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(2);\n });\n\n it(\"when type is a ntf with a constant reference\", async () => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess = {\n type: ClearSignContextType.NFT,\n payload,\n reference: {\n type: ClearSignContextType.NFT,\n value: \"0x09080706\",\n },\n };\n // provide reference context\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({ data: \"ok\" }),\n );\n // provide context\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({ data: \"ok\" }),\n );\n vi.spyOn(contextModuleMock, \"getContext\").mockResolvedValueOnce({\n type: ClearSignContextType.NFT,\n payload: \"0x05060708\",\n });\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(transactionParserMock.extractValue).not.toHaveBeenCalled();\n expect(contextModuleMock.getContext).toHaveBeenCalledTimes(1);\n expect(contextModuleMock.getContext).toHaveBeenCalledWith({\n type: ClearSignContextType.NFT,\n chainId: 1,\n address: \"0x09080706\",\n });\n expect(result).toEqual(Nothing);\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(2);\n });\n });\n\n describe(\"should not provide a reference context\", () => {\n it(\"when the path is not found in transaction payload\", async () => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n > = {\n type: ClearSignContextType.TRUSTED_NAME,\n payload,\n reference: {\n type: ClearSignContextType.TRUSTED_NAME,\n valuePath: ContainerPath.VALUE,\n types: [\"type\"],\n sources: [\"source\"],\n },\n };\n // provide context\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({ data: \"ok\" }),\n );\n\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Left(new Error(\"path not found\")),\n );\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(result).toEqual(Nothing);\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(1);\n expect(contextModuleMock.getContext).not.toHaveBeenCalled();\n });\n\n it(\"when getContext return a type error\", async () => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n > = {\n type: ClearSignContextType.TRUSTED_NAME,\n payload,\n reference: {\n type: ClearSignContextType.TRUSTED_NAME,\n valuePath: ContainerPath.VALUE,\n types: [\"type\"],\n sources: [\"source\"],\n },\n };\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Right([new Uint8Array([0x11, 0x22, 0x33, 0x44])]),\n );\n vi.spyOn(contextModuleMock, \"getContext\").mockResolvedValueOnce({\n type: ClearSignContextType.ERROR,\n error: new Error(\"getContext error\"),\n });\n // getChallenge\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({ data: { challenge: 0x42 } }),\n );\n // provide context\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({ data: \"ok\" }),\n );\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(result).toEqual(Nothing);\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(2);\n expect(contextModuleMock.getContext).toHaveBeenCalledTimes(1);\n });\n\n it(\"when no enum descriptor is found\", async () => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess = {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n payload,\n reference: {\n type: ClearSignContextType.ENUM,\n valuePath: ContainerPath.VALUE,\n id: 0x42,\n },\n };\n\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Right([new Uint8Array([0x01, 0x02, 0x03, 0x04])]),\n );\n\n const spy = vi\n .spyOn(apiMock, \"sendCommand\")\n .mockResolvedValueOnce(CommandResultFactory({ data: \"ok\" }));\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(result).toEqual(Nothing);\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(1);\n expect(spy.mock.calls[0]![0]).toBeInstanceOf(\n ProvideTransactionFieldDescriptionCommand,\n );\n });\n\n it(\"when the enum reference path value is empty\", async () => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess = {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n payload,\n reference: {\n type: ClearSignContextType.ENUM,\n valuePath: ContainerPath.VALUE,\n id: 0x42,\n },\n };\n\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Right([new Uint8Array([])]),\n ); // empty value\n\n const spy = vi\n .spyOn(apiMock, \"sendCommand\")\n .mockResolvedValueOnce(CommandResultFactory({ data: \"ok\" }));\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [\n {\n id: 0x42,\n value: 0x01,\n type: ClearSignContextType.ENUM,\n payload: \"0x060708\",\n },\n {\n id: 0x42,\n value: 0x04,\n type: ClearSignContextType.ENUM,\n payload: \"0x080706\",\n },\n ],\n });\n const result = await task.run();\n\n // THEN\n expect(result).toEqual(Nothing);\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(1);\n expect(spy.mock.calls[0]![0]).toBeInstanceOf(\n ProvideTransactionFieldDescriptionCommand,\n );\n });\n });\n\n describe(\"should return an error\", () => {\n it.each<\n ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n >[\"type\"]\n >([\n ClearSignContextType.TRANSACTION_INFO,\n ClearSignContextType.PLUGIN,\n ClearSignContextType.EXTERNAL_PLUGIN,\n ])(\"when type is %s\", async (type) => {\n // GIVEN\n const payload = `payload-${type}`;\n const field: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n > = {\n type,\n payload,\n };\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(result.extract()).toEqual(\n CommandResultFactory({\n error: new InvalidStatusWordError(\n `The context type [${type}] is not valid as a transaction field or metadata`,\n ),\n }),\n );\n });\n\n it(\"when type is unknown\", async () => {\n // GIVEN\n const payload = `payload-unknown`;\n const field = {\n type: \"unknown\" as ClearSignContextType,\n payload,\n } as ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n >;\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(result.extract()).toEqual(\n CommandResultFactory({\n error: new InvalidStatusWordError(\n `The context type [unknown] is not covered`,\n ),\n }),\n );\n });\n\n it(\"when getChallenge fails\", async () => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n > = {\n type: ClearSignContextType.TRUSTED_NAME,\n payload,\n reference: {\n type: ClearSignContextType.TRUSTED_NAME,\n valuePath: ContainerPath.VALUE,\n types: [\"type\"],\n sources: [\"source\"],\n },\n };\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"getChallenge error\"),\n }),\n );\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Right([new Uint8Array([0x11, 0x22, 0x33, 0x44])]),\n );\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(result.extract()).toEqual(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"getChallenge error\"),\n }),\n );\n });\n\n it(\"when provide reference with a token fails\", async () => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n > = {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n payload,\n reference: {\n type: ClearSignContextType.TOKEN,\n valuePath: ContainerPath.VALUE,\n },\n };\n // provide reference context\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"provide reference error\"),\n }),\n );\n // provide field\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({ data: \"ok\" }),\n );\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Right([new Uint8Array([0x11, 0x22, 0x33, 0x44])]),\n );\n vi.spyOn(contextModuleMock, \"getContext\").mockResolvedValueOnce({\n type: ClearSignContextType.TOKEN,\n payload: \"0x05060708\",\n });\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(result.extract()).toEqual(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"provide reference error\"),\n }),\n );\n });\n\n it(\"when provide reference with a trusted name fails\", async () => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n > = {\n type: ClearSignContextType.TRUSTED_NAME,\n payload,\n reference: {\n type: ClearSignContextType.TRUSTED_NAME,\n valuePath: ContainerPath.VALUE,\n types: [\"type\"],\n sources: [\"source\"],\n },\n };\n // getChallenge\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({ data: \"ok\" }),\n );\n // provide reference context\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"provide reference error\"),\n }),\n );\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Right([new Uint8Array([0x11, 0x22, 0x33, 0x44])]),\n );\n vi.spyOn(contextModuleMock, \"getContext\").mockResolvedValueOnce({\n type: ClearSignContextType.TRUSTED_NAME,\n payload: \"0x05060708\",\n });\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(result.extract()).toEqual(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"provide reference error\"),\n }),\n );\n });\n\n it(\"when provide reference with a enum reference fails\", async () => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess = {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n payload,\n reference: {\n type: ClearSignContextType.ENUM,\n valuePath: ContainerPath.VALUE,\n id: 0x42,\n },\n };\n\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Right([new Uint8Array([0x01, 0x02, 0x03, 0x04])]),\n );\n\n const spy = vi\n .spyOn(apiMock, \"sendCommand\")\n .mockResolvedValueOnce(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"provide reference error\"),\n }),\n )\n .mockResolvedValueOnce(\n CommandResultFactory({\n data: \"ok\",\n }),\n );\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [\n {\n id: 0x42,\n value: 0x04,\n type: ClearSignContextType.ENUM,\n payload: \"0x080706\",\n },\n ],\n });\n const result = await task.run();\n\n // THEN\n expect(result.extract()).toEqual(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"provide reference error\"),\n }),\n );\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(1);\n expect(spy.mock.calls[0]![0]).toBeInstanceOf(ProvideEnumCommand);\n });\n });\n});\n"],
5
+ "mappings": "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",
6
+ "names": ["ClearSignContextType", "ContainerPath", "CommandResultFactory", "InvalidStatusWordError", "Left", "Nothing", "Right", "GetChallengeCommand", "ProvideEnumCommand", "ProvideNFTInformationCommand", "ProvideTokenInformationCommand", "ProvideTransactionFieldDescriptionCommand", "ProvideTrustedNameCommand", "ProvideTransactionFieldDescriptionTask", "transactionParserMock", "contextModuleMock", "apiMock", "type", "commandInstanceType", "spy", "field", "result", "payload", "payload1", "payload2", "extractedValue", "extractedValueAddress"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{ByteArrayBuilder as c,isSuccessCommandResult as o,LoadCertificateCommand as d}from"@ledgerhq/device-management-kit";import{DerivationPathUtils as l}from"@ledgerhq/signer-utils";import{Just as s,Nothing as m}from"purify-ts";import{ProvideTransactionInformationCommand as C}from"../../app-binder/command/ProvideTransactionInformationCommand";import{StoreTransactionCommand as p}from"../../app-binder/command/StoreTransactionCommand";import{ProvideTransactionFieldDescriptionTask as u}from"./ProvideTransactionFieldDescriptionTask";import{SendCommandInChunksTask as y}from"./SendCommandInChunksTask";import{SendPayloadInChunksTask as h}from"./SendPayloadInChunksTask";class E{constructor(a,n){this.api=a;this.args=n}async run(){const a=l.splitPath(this.args.derivationPath),n=new c;n.add8BitUIntToData(a.length),a.forEach(t=>{n.add32BitUIntToData(t)}),n.addBufferToData(this.args.serializedTransaction);const e=await new y(this.api,{data:n.build(),commandFactory:t=>new p({serializedTransaction:t.chunkedData,isFirstChunk:t.isFirstChunk})}).run();if(!o(e))return s(e);if(this.args.context.transactionInfoCertificate){const{keyUsageNumber:t,payload:r}=this.args.context.transactionInfoCertificate;await this.api.sendCommand(new d({keyUsage:t,certificate:r}))}const i=await new h(this.api,{payload:this.args.context.transactionInfo,commandFactory:t=>new C({data:t.chunkedData,isFirstChunk:t.isFirstChunk})}).run();if(!o(i))return s(i);for(const t of this.args.context.transactionFields){const r=await new u(this.api,{field:t,serializedTransaction:this.args.serializedTransaction,chainId:this.args.chainId,transactionParser:this.args.transactionParser,contextModule:this.args.contextModule,transactionEnums:this.args.context.transactionEnums}).run();if(r.isJust())return r}return m}}export{E as ProvideTransactionGenericContextTask};
2
+ //# sourceMappingURL=ProvideTransactionGenericContextTask.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/task/ProvideTransactionGenericContextTask.ts"],
4
+ "sourcesContent": ["import {\n type ClearSignContextSuccess,\n type ClearSignContextSuccessType,\n type ClearSignContextType,\n type ContextModule,\n type PkiCertificate,\n} from \"@ledgerhq/context-module\";\nimport {\n ByteArrayBuilder,\n type CommandErrorResult,\n type InternalApi,\n isSuccessCommandResult,\n LoadCertificateCommand,\n} from \"@ledgerhq/device-management-kit\";\nimport { DerivationPathUtils } from \"@ledgerhq/signer-utils\";\nimport { Just, type Maybe, Nothing } from \"purify-ts\";\n\nimport { ProvideTransactionInformationCommand } from \"@internal/app-binder/command/ProvideTransactionInformationCommand\";\nimport { StoreTransactionCommand } from \"@internal/app-binder/command/StoreTransactionCommand\";\nimport { type EthErrorCodes } from \"@internal/app-binder/command/utils/ethAppErrors\";\nimport { type TransactionParserService } from \"@internal/transaction/service/parser/TransactionParserService\";\n\nimport { ProvideTransactionFieldDescriptionTask } from \"./ProvideTransactionFieldDescriptionTask\";\nimport { SendCommandInChunksTask } from \"./SendCommandInChunksTask\";\nimport { SendPayloadInChunksTask } from \"./SendPayloadInChunksTask\";\n\nexport type GenericContext = {\n readonly transactionInfo: string;\n readonly transactionInfoCertificate: PkiCertificate;\n readonly transactionFields: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n >[];\n readonly transactionEnums: ClearSignContextSuccess<ClearSignContextType.ENUM>[];\n};\n\nexport type ProvideTransactionGenericContextTaskArgs = {\n readonly contextModule: ContextModule;\n readonly transactionParser: TransactionParserService;\n readonly chainId: number;\n readonly derivationPath: string;\n readonly serializedTransaction: Uint8Array;\n readonly context: GenericContext;\n};\n\nexport type ProvideTransactionGenericContextTaskErrorCodes =\n void | EthErrorCodes;\n\nexport class ProvideTransactionGenericContextTask {\n constructor(\n private api: InternalApi,\n private args: ProvideTransactionGenericContextTaskArgs,\n ) {}\n\n async run(): Promise<\n Maybe<CommandErrorResult<ProvideTransactionGenericContextTaskErrorCodes>>\n > {\n // Store the transaction in the device memory\n const paths = DerivationPathUtils.splitPath(this.args.derivationPath);\n const builder = new ByteArrayBuilder();\n builder.add8BitUIntToData(paths.length);\n paths.forEach((path) => {\n builder.add32BitUIntToData(path);\n });\n builder.addBufferToData(this.args.serializedTransaction);\n const storeTransactionResult = await new SendCommandInChunksTask(this.api, {\n data: builder.build(),\n commandFactory: (args) =>\n new StoreTransactionCommand({\n serializedTransaction: args.chunkedData,\n isFirstChunk: args.isFirstChunk,\n }),\n }).run();\n\n if (!isSuccessCommandResult(storeTransactionResult)) {\n return Just(storeTransactionResult);\n }\n\n if (this.args.context.transactionInfoCertificate) {\n const { keyUsageNumber: keyUsage, payload: certificate } =\n this.args.context.transactionInfoCertificate;\n await this.api.sendCommand(\n new LoadCertificateCommand({\n keyUsage,\n certificate,\n }),\n );\n }\n\n // Provide the transaction information\n const transactionInfoResult = await new SendPayloadInChunksTask(this.api, {\n payload: this.args.context.transactionInfo,\n commandFactory: (args) =>\n new ProvideTransactionInformationCommand({\n data: args.chunkedData,\n isFirstChunk: args.isFirstChunk,\n }),\n }).run();\n\n if (!isSuccessCommandResult(transactionInfoResult)) {\n return Just(transactionInfoResult);\n }\n\n // Provide the transaction field description and according metadata reference\n for (const field of this.args.context.transactionFields) {\n const result = await new ProvideTransactionFieldDescriptionTask(\n this.api,\n {\n field,\n serializedTransaction: this.args.serializedTransaction,\n chainId: this.args.chainId,\n transactionParser: this.args.transactionParser,\n contextModule: this.args.contextModule,\n transactionEnums: this.args.context.transactionEnums,\n },\n ).run();\n\n if (result.isJust()) {\n return result;\n }\n }\n\n return Nothing;\n }\n}\n"],
5
+ "mappings": "AAOA,OACE,oBAAAA,EAGA,0BAAAC,EACA,0BAAAC,MACK,kCACP,OAAS,uBAAAC,MAA2B,yBACpC,OAAS,QAAAC,EAAkB,WAAAC,MAAe,YAE1C,OAAS,wCAAAC,MAA4C,oEACrD,OAAS,2BAAAC,MAA+B,uDAIxC,OAAS,0CAAAC,MAA8C,2CACvD,OAAS,2BAAAC,MAA+B,4BACxC,OAAS,2BAAAC,MAA+B,4BAuBjC,MAAMC,CAAqC,CAChD,YACUC,EACAC,EACR,CAFQ,SAAAD,EACA,UAAAC,CACP,CAEH,MAAM,KAEJ,CAEA,MAAMC,EAAQX,EAAoB,UAAU,KAAK,KAAK,cAAc,EAC9DY,EAAU,IAAIf,EACpBe,EAAQ,kBAAkBD,EAAM,MAAM,EACtCA,EAAM,QAASE,GAAS,CACtBD,EAAQ,mBAAmBC,CAAI,CACjC,CAAC,EACDD,EAAQ,gBAAgB,KAAK,KAAK,qBAAqB,EACvD,MAAME,EAAyB,MAAM,IAAIR,EAAwB,KAAK,IAAK,CACzE,KAAMM,EAAQ,MAAM,EACpB,eAAiBF,GACf,IAAIN,EAAwB,CAC1B,sBAAuBM,EAAK,YAC5B,aAAcA,EAAK,YACrB,CAAC,CACL,CAAC,EAAE,IAAI,EAEP,GAAI,CAACZ,EAAuBgB,CAAsB,EAChD,OAAOb,EAAKa,CAAsB,EAGpC,GAAI,KAAK,KAAK,QAAQ,2BAA4B,CAChD,KAAM,CAAE,eAAgBC,EAAU,QAASC,CAAY,EACrD,KAAK,KAAK,QAAQ,2BACpB,MAAM,KAAK,IAAI,YACb,IAAIjB,EAAuB,CACzB,SAAAgB,EACA,YAAAC,CACF,CAAC,CACH,CACF,CAGA,MAAMC,EAAwB,MAAM,IAAIV,EAAwB,KAAK,IAAK,CACxE,QAAS,KAAK,KAAK,QAAQ,gBAC3B,eAAiBG,GACf,IAAIP,EAAqC,CACvC,KAAMO,EAAK,YACX,aAAcA,EAAK,YACrB,CAAC,CACL,CAAC,EAAE,IAAI,EAEP,GAAI,CAACZ,EAAuBmB,CAAqB,EAC/C,OAAOhB,EAAKgB,CAAqB,EAInC,UAAWC,KAAS,KAAK,KAAK,QAAQ,kBAAmB,CACvD,MAAMC,EAAS,MAAM,IAAId,EACvB,KAAK,IACL,CACE,MAAAa,EACA,sBAAuB,KAAK,KAAK,sBACjC,QAAS,KAAK,KAAK,QACnB,kBAAmB,KAAK,KAAK,kBAC7B,cAAe,KAAK,KAAK,cACzB,iBAAkB,KAAK,KAAK,QAAQ,gBACtC,CACF,EAAE,IAAI,EAEN,GAAIC,EAAO,OAAO,EAChB,OAAOA,CAEX,CAEA,OAAOjB,CACT,CACF",
6
+ "names": ["ByteArrayBuilder", "isSuccessCommandResult", "LoadCertificateCommand", "DerivationPathUtils", "Just", "Nothing", "ProvideTransactionInformationCommand", "StoreTransactionCommand", "ProvideTransactionFieldDescriptionTask", "SendCommandInChunksTask", "SendPayloadInChunksTask", "ProvideTransactionGenericContextTask", "api", "args", "paths", "builder", "path", "storeTransactionResult", "keyUsage", "certificate", "transactionInfoResult", "field", "result"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{CommandResultFactory as e,InvalidStatusWordError as r}from"@ledgerhq/device-management-kit";import{Just as u,Nothing as m}from"purify-ts";import{makeDeviceActionInternalApiMock as S}from"../../app-binder/device-action/__test-utils__/makeInternalApi";import{ProvideTransactionFieldDescriptionTask as i}from"./ProvideTransactionFieldDescriptionTask";import{ProvideTransactionGenericContextTask as a}from"./ProvideTransactionGenericContextTask";import{SendCommandInChunksTask as s}from"./SendCommandInChunksTask";import{SendPayloadInChunksTask as c}from"./SendPayloadInChunksTask";describe("ProvideTransactionGenericContextTask",()=>{const C="44/60'/0'/0'/0/0",v=new Uint8Array([18,52]),d="0x5678",y=[],l=[],x=1,T={},k={},p={keyUsageNumber:0,payload:new Uint8Array([18,52])},t={derivationPath:C,serializedTransaction:v,context:{transactionInfo:d,transactionInfoCertificate:p,transactionFields:y,transactionEnums:l},chainId:x,transactionParser:T,contextModule:k},n=S();describe("run",()=>{beforeEach(()=>{vi.resetAllMocks()}),describe("should return an error",()=>{it("when storeTransactionResult fail",async()=>{vi.spyOn(s.prototype,"run").mockResolvedValue(e({error:new r("storeTransactionError")})),vi.spyOn(n,"sendCommand").mockResolvedValueOnce(e({data:void 0}));const o=await new a(n,t).run();expect(o).toEqual(u(e({error:new r("storeTransactionError")})))}),it("when provideTransactionInformationResult fail",async()=>{vi.spyOn(s.prototype,"run").mockResolvedValue(e({data:"0x1234"})),vi.spyOn(c.prototype,"run").mockResolvedValue(e({error:new r("provideTransactionInformationError")})),vi.spyOn(n,"sendCommand").mockResolvedValueOnce(e({data:void 0}));const o=await new a(n,t).run();expect(o).toEqual(u(e({error:new r("provideTransactionInformationError")})))}),it("when ProvideTransactionGenericContextTask fail",async()=>{vi.spyOn(s.prototype,"run").mockResolvedValue(e({data:"0x1234"})),vi.spyOn(c.prototype,"run").mockResolvedValue(e({data:"0x5678"})),vi.spyOn(i.prototype,"run").mockResolvedValue(u(e({error:new r("provideTransactionGenericContextTaskError")}))),vi.spyOn(n,"sendCommand").mockResolvedValueOnce(e({data:void 0}));const o=await new a(n,{...t,context:{transactionInfo:d,transactionInfoCertificate:p,transactionFields:[{}],transactionEnums:l}}).run();expect(o).toEqual(u(e({error:new r("provideTransactionGenericContextTaskError")})))})}),it("should call ProvideTransactionFieldDescriptionTask for each field",async()=>{const o=["field-1","field-2"];vi.spyOn(s.prototype,"run").mockResolvedValue(e({data:"0x1234"})),vi.spyOn(c.prototype,"run").mockResolvedValue(e({data:"0x5678"})),vi.spyOn(i.prototype,"run").mockResolvedValue(m),vi.spyOn(n,"sendCommand").mockResolvedValueOnce(e({data:void 0})),await new a(n,{...t,context:{transactionInfo:d,transactionInfoCertificate:p,transactionFields:o,transactionEnums:l}}).run(),expect(i.prototype.run).toHaveBeenCalledTimes(2)}),it("should return Nothing when all fields are provided",async()=>{vi.spyOn(s.prototype,"run").mockResolvedValue(e({data:"0x1234"})),vi.spyOn(c.prototype,"run").mockResolvedValue(e({data:"0x5678"})),vi.spyOn(i.prototype,"run").mockResolvedValue(m),vi.spyOn(n,"sendCommand").mockResolvedValueOnce(e({data:void 0}));const o=await new a(n,t).run();expect(o).toEqual(m)}),it("should load the transaction info certificate",async()=>{vi.spyOn(s.prototype,"run").mockResolvedValue(e({data:"0x1234"})),vi.spyOn(c.prototype,"run").mockResolvedValue(e({data:"0x5678"})),vi.spyOn(i.prototype,"run").mockResolvedValue(m),await new a(n,{...t,context:{transactionInfo:d,transactionInfoCertificate:p,transactionFields:y,transactionEnums:l}}).run(),expect(n.sendCommand).toHaveBeenCalledTimes(1)})})});
2
+ //# sourceMappingURL=ProvideTransactionGenericContextTask.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/task/ProvideTransactionGenericContextTask.test.ts"],
4
+ "sourcesContent": ["import {\n type ClearSignContextSuccess,\n type ClearSignContextSuccessType,\n type ClearSignContextType,\n type ContextModule,\n type PkiCertificate,\n} from \"@ledgerhq/context-module\";\nimport {\n type CommandErrorResult,\n CommandResultFactory,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\nimport { Just, Nothing } from \"purify-ts\";\n\nimport { makeDeviceActionInternalApiMock } from \"@internal/app-binder/device-action/__test-utils__/makeInternalApi\";\nimport { type TransactionParserService } from \"@internal/transaction/service/parser/TransactionParserService\";\n\nimport { ProvideTransactionFieldDescriptionTask } from \"./ProvideTransactionFieldDescriptionTask\";\nimport {\n ProvideTransactionGenericContextTask,\n type ProvideTransactionGenericContextTaskArgs,\n} from \"./ProvideTransactionGenericContextTask\";\nimport { SendCommandInChunksTask } from \"./SendCommandInChunksTask\";\nimport { SendPayloadInChunksTask } from \"./SendPayloadInChunksTask\";\n\ndescribe(\"ProvideTransactionGenericContextTask\", () => {\n const derivationPath = \"44/60'/0'/0'/0/0\";\n const serializedTransaction = new Uint8Array([0x12, 0x34]);\n const transactionInfo = \"0x5678\";\n const transactionFields: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n >[] = [];\n const transactionEnums: ClearSignContextSuccess<ClearSignContextType.ENUM>[] =\n [];\n const chainId = 1;\n const transactionParser = {} as TransactionParserService;\n const contextModule = {} as ContextModule;\n const transactionInfoCertificate: PkiCertificate = {\n keyUsageNumber: 0,\n payload: new Uint8Array([0x12, 0x34]),\n };\n\n const defaultArgs: ProvideTransactionGenericContextTaskArgs = {\n derivationPath,\n serializedTransaction,\n context: {\n transactionInfo,\n transactionInfoCertificate,\n transactionFields,\n transactionEnums,\n },\n chainId,\n transactionParser,\n contextModule,\n };\n\n const apiMock = makeDeviceActionInternalApiMock();\n\n describe(\"run\", () => {\n beforeEach(() => {\n vi.resetAllMocks();\n });\n\n describe(\"should return an error\", () => {\n it(\"when storeTransactionResult fail\", async () => {\n // GIVEN\n vi.spyOn(SendCommandInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"storeTransactionError\"),\n }),\n );\n // loadCertificateCommand\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({\n data: undefined,\n }),\n );\n\n // WHEN\n const result = await new ProvideTransactionGenericContextTask(\n apiMock,\n defaultArgs,\n ).run();\n\n // THEN\n expect(result).toEqual(\n Just(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"storeTransactionError\"),\n }),\n ),\n );\n });\n\n it(\"when provideTransactionInformationResult fail\", async () => {\n // GIVEN\n vi.spyOn(SendCommandInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n data: \"0x1234\",\n }),\n );\n vi.spyOn(SendPayloadInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n error: new InvalidStatusWordError(\n \"provideTransactionInformationError\",\n ),\n }),\n );\n // loadCertificateCommand\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({\n data: undefined,\n }),\n );\n\n // WHEN\n const result = await new ProvideTransactionGenericContextTask(\n apiMock,\n defaultArgs,\n ).run();\n\n // THEN\n expect(result).toEqual(\n Just(\n CommandResultFactory({\n error: new InvalidStatusWordError(\n \"provideTransactionInformationError\",\n ),\n }),\n ),\n );\n });\n\n it(\"when ProvideTransactionGenericContextTask fail\", async () => {\n // GIVEN\n vi.spyOn(SendCommandInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n data: \"0x1234\",\n }),\n );\n vi.spyOn(SendPayloadInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n data: \"0x5678\",\n }),\n );\n vi.spyOn(\n ProvideTransactionFieldDescriptionTask.prototype,\n \"run\",\n ).mockResolvedValue(\n Just(\n CommandResultFactory({\n error: new InvalidStatusWordError(\n \"provideTransactionGenericContextTaskError\",\n ),\n }) as CommandErrorResult,\n ),\n );\n // loadCertificateCommand\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({\n data: undefined,\n }),\n );\n\n // WHEN\n const result = await new ProvideTransactionGenericContextTask(apiMock, {\n ...defaultArgs,\n context: {\n transactionInfo,\n transactionInfoCertificate,\n transactionFields: [\n {} as ClearSignContextSuccess<ClearSignContextType.TRANSACTION_INFO>,\n ],\n transactionEnums,\n },\n }).run();\n\n // THEN\n expect(result).toEqual(\n Just(\n CommandResultFactory({\n error: new InvalidStatusWordError(\n \"provideTransactionGenericContextTaskError\",\n ),\n }),\n ),\n );\n });\n });\n\n it(\"should call ProvideTransactionFieldDescriptionTask for each field\", async () => {\n // GIVEN\n const fields: ClearSignContextSuccess<ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION>[] =\n [\n \"field-1\" as unknown as ClearSignContextSuccess<ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION>,\n \"field-2\" as unknown as ClearSignContextSuccess<ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION>,\n ];\n vi.spyOn(SendCommandInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n data: \"0x1234\",\n }),\n );\n vi.spyOn(SendPayloadInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n data: \"0x5678\",\n }),\n );\n vi.spyOn(\n ProvideTransactionFieldDescriptionTask.prototype,\n \"run\",\n ).mockResolvedValue(Nothing);\n // loadCertificateCommand\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({\n data: undefined,\n }),\n );\n\n // WHEN\n await new ProvideTransactionGenericContextTask(apiMock, {\n ...defaultArgs,\n context: {\n transactionInfo,\n transactionInfoCertificate,\n transactionFields: fields,\n transactionEnums,\n },\n }).run();\n\n // THEN\n expect(\n ProvideTransactionFieldDescriptionTask.prototype.run,\n ).toHaveBeenCalledTimes(2);\n });\n\n it(\"should return Nothing when all fields are provided\", async () => {\n // GIVEN\n vi.spyOn(SendCommandInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n data: \"0x1234\",\n }),\n );\n vi.spyOn(SendPayloadInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n data: \"0x5678\",\n }),\n );\n vi.spyOn(\n ProvideTransactionFieldDescriptionTask.prototype,\n \"run\",\n ).mockResolvedValue(Nothing);\n // loadCertificateCommand\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({\n data: undefined,\n }),\n );\n\n // WHEN\n const result = await new ProvideTransactionGenericContextTask(\n apiMock,\n defaultArgs,\n ).run();\n\n // THEN\n expect(result).toEqual(Nothing);\n });\n\n it(\"should load the transaction info certificate\", async () => {\n // GIVEN\n vi.spyOn(SendCommandInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n data: \"0x1234\",\n }),\n );\n vi.spyOn(SendPayloadInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n data: \"0x5678\",\n }),\n );\n vi.spyOn(\n ProvideTransactionFieldDescriptionTask.prototype,\n \"run\",\n ).mockResolvedValue(Nothing);\n\n // WHEN\n await new ProvideTransactionGenericContextTask(apiMock, {\n ...defaultArgs,\n context: {\n transactionInfo,\n transactionInfoCertificate,\n transactionFields,\n transactionEnums,\n },\n }).run();\n\n // THEN\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(1);\n });\n });\n});\n"],
5
+ "mappings": "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",
6
+ "names": ["CommandResultFactory", "InvalidStatusWordError", "Just", "Nothing", "makeDeviceActionInternalApiMock", "ProvideTransactionFieldDescriptionTask", "ProvideTransactionGenericContextTask", "SendCommandInChunksTask", "SendPayloadInChunksTask", "derivationPath", "serializedTransaction", "transactionInfo", "transactionFields", "transactionEnums", "chainId", "transactionParser", "contextModule", "transactionInfoCertificate", "defaultArgs", "apiMock", "result", "fields"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{APDU_MAX_PAYLOAD as e,ByteArrayBuilder as d,CommandResultFactory as m,InvalidStatusWordError as i,isSuccessCommandResult as u}from"@ledgerhq/device-management-kit";class h{constructor(t,o){this.api=t;this.args=o}async run(){const{data:t,commandFactory:o}=this.args,n=new d(t.length).addBufferToData(t).build();for(let a=0;a<n.length;a+=e){const s=a+e>=n.length,r=await this.api.sendCommand(o({chunkedData:n.slice(a,a+e),isFirstChunk:a===0}));if(!u(r))return r;if(s)return m({data:r.data})}throw new i("No result")}}export{h as SendCommandInChunksTask};
2
+ //# sourceMappingURL=SendCommandInChunksTask.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/task/SendCommandInChunksTask.ts"],
4
+ "sourcesContent": ["import {\n APDU_MAX_PAYLOAD,\n ByteArrayBuilder,\n type Command,\n type CommandResult,\n CommandResultFactory,\n type InternalApi,\n InvalidStatusWordError,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { type EthErrorCodes } from \"@internal/app-binder/command/utils/ethAppErrors\";\n\nexport type SendCommandInChunksTaskArgs<T> = {\n data: Uint8Array;\n commandFactory: <V extends ChunkableCommandArgs & Record<string, unknown>>(\n args: ChunkableCommandArgs,\n ) => Command<T, V, EthErrorCodes>;\n};\n\nexport type ChunkableCommandArgs = {\n chunkedData: Uint8Array;\n isFirstChunk: boolean;\n};\n\nexport class SendCommandInChunksTask<T> {\n constructor(\n private api: InternalApi,\n private args: SendCommandInChunksTaskArgs<T>,\n ) {}\n\n async run(): Promise<CommandResult<T, EthErrorCodes>> {\n const { data: payload, commandFactory } = this.args;\n\n const data = new ByteArrayBuilder(payload.length)\n .addBufferToData(payload)\n .build();\n\n for (let i = 0; i < data.length; i += APDU_MAX_PAYLOAD) {\n const isLastChunk = i + APDU_MAX_PAYLOAD >= data.length;\n const result = await this.api.sendCommand(\n commandFactory({\n chunkedData: data.slice(i, i + APDU_MAX_PAYLOAD),\n isFirstChunk: i === 0,\n }),\n );\n\n if (!isSuccessCommandResult(result)) {\n return result;\n }\n\n // return the last result\n if (isLastChunk) {\n return CommandResultFactory({\n data: result.data,\n });\n }\n }\n\n throw new InvalidStatusWordError(\"No result\");\n }\n}\n"],
5
+ "mappings": "AAAA,OACE,oBAAAA,EACA,oBAAAC,EAGA,wBAAAC,EAEA,0BAAAC,EACA,0BAAAC,MACK,kCAgBA,MAAMC,CAA2B,CACtC,YACUC,EACAC,EACR,CAFQ,SAAAD,EACA,UAAAC,CACP,CAEH,MAAM,KAAgD,CACpD,KAAM,CAAE,KAAMC,EAAS,eAAAC,CAAe,EAAI,KAAK,KAEzCC,EAAO,IAAIT,EAAiBO,EAAQ,MAAM,EAC7C,gBAAgBA,CAAO,EACvB,MAAM,EAET,QAASG,EAAI,EAAGA,EAAID,EAAK,OAAQC,GAAKX,EAAkB,CACtD,MAAMY,EAAcD,EAAIX,GAAoBU,EAAK,OAC3CG,EAAS,MAAM,KAAK,IAAI,YAC5BJ,EAAe,CACb,YAAaC,EAAK,MAAMC,EAAGA,EAAIX,CAAgB,EAC/C,aAAcW,IAAM,CACtB,CAAC,CACH,EAEA,GAAI,CAACP,EAAuBS,CAAM,EAChC,OAAOA,EAIT,GAAID,EACF,OAAOV,EAAqB,CAC1B,KAAMW,EAAO,IACf,CAAC,CAEL,CAEA,MAAM,IAAIV,EAAuB,WAAW,CAC9C,CACF",
6
+ "names": ["APDU_MAX_PAYLOAD", "ByteArrayBuilder", "CommandResultFactory", "InvalidStatusWordError", "isSuccessCommandResult", "SendCommandInChunksTask", "api", "args", "payload", "commandFactory", "data", "i", "isLastChunk", "result"]
7
+ }
@@ -1,38 +1,2 @@
1
- import { APDU_MAX_PAYLOAD, ByteArrayBuilder, CommandResultFactory, isSuccessCommandResult, } from "@ledgerhq/device-management-kit";
2
- import { SendEIP712StructImplemCommand, StructImplemType, } from "../../app-binder/command/SendEIP712StructImplemCommand";
3
- export class SendEIP712StructImplemTask {
4
- api;
5
- args;
6
- constructor(api, args) {
7
- this.api = api;
8
- this.args = args;
9
- }
10
- async run() {
11
- // No particular operation to perform on root and array implementations.
12
- if (this.args.type !== StructImplemType.FIELD) {
13
- return await this.api.sendCommand(new SendEIP712StructImplemCommand(this.args));
14
- }
15
- // If the value is a field, we should prepend its size, and chunk it if necessary.
16
- let result = CommandResultFactory({ data: undefined });
17
- // Prepend the length to the array, in uint16 big endian encoding
18
- const buffer = new ByteArrayBuilder(this.args.value.length + 2)
19
- .add16BitUIntToData(this.args.value.length)
20
- .addBufferToData(this.args.value)
21
- .build();
22
- // Split the buffer into chunks if necessary
23
- for (let i = 0; i < buffer.length; i += APDU_MAX_PAYLOAD) {
24
- result = await this.api.sendCommand(new SendEIP712StructImplemCommand({
25
- type: StructImplemType.FIELD,
26
- value: {
27
- data: buffer.slice(i, i + APDU_MAX_PAYLOAD),
28
- isLastChunk: i >= buffer.length - APDU_MAX_PAYLOAD,
29
- },
30
- }));
31
- if (!isSuccessCommandResult(result)) {
32
- return result;
33
- }
34
- }
35
- return result;
36
- }
37
- }
38
- //# sourceMappingURL=SendEIP712StructImplemTask.js.map
1
+ import{APDU_MAX_PAYLOAD as a,ByteArrayBuilder as n,CommandResultFactory as i,isSuccessCommandResult as o}from"@ledgerhq/device-management-kit";import{SendEIP712StructImplemCommand as s,StructImplemType as m}from"../../app-binder/command/SendEIP712StructImplemCommand";class d{constructor(t,r){this.api=t;this.args=r}async run(){if(this.args.type!==m.FIELD)return await this.api.sendCommand(new s(this.args));let t=i({data:void 0});const r=new n(this.args.value.length+2).add16BitUIntToData(this.args.value.length).addBufferToData(this.args.value).build();for(let e=0;e<r.length;e+=a)if(t=await this.api.sendCommand(new s({type:m.FIELD,value:{data:r.slice(e,e+a),isLastChunk:e>=r.length-a}})),!o(t))return t;return t}}export{d as SendEIP712StructImplemTask};
2
+ //# sourceMappingURL=SendEIP712StructImplemTask.js.map
@@ -1 +1,7 @@
1
- {"version":3,"file":"SendEIP712StructImplemTask.js","sourceRoot":"","sources":["../../../../../src/internal/app-binder/task/SendEIP712StructImplemTask.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAEhB,oBAAoB,EAEpB,sBAAsB,GACvB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACL,6BAA6B,EAC7B,gBAAgB,GACjB,MAAM,4DAA4D,CAAC;AAgBpE,MAAM,OAAO,0BAA0B;IAE3B;IACA;IAFV,YACU,GAAgB,EAChB,IAAoC;QADpC,QAAG,GAAH,GAAG,CAAa;QAChB,SAAI,GAAJ,IAAI,CAAgC;IAC3C,CAAC;IAEJ,KAAK,CAAC,GAAG;QACP,wEAAwE;QACxE,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,gBAAgB,CAAC,KAAK,EAAE,CAAC;YAC9C,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAC/B,IAAI,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAC7C,CAAC;QACJ,CAAC;QAED,kFAAkF;QAElF,IAAI,MAAM,GAAG,oBAAoB,CAAa,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;QACnE,iEAAiE;QACjE,MAAM,MAAM,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;aAC5D,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;aAC1C,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;aAChC,KAAK,EAAE,CAAC;QAEX,4CAA4C;QAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,gBAAgB,EAAE,CAAC;YACzD,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CACjC,IAAI,6BAA6B,CAAC;gBAChC,IAAI,EAAE,gBAAgB,CAAC,KAAK;gBAC5B,KAAK,EAAE;oBACL,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC;oBAC3C,WAAW,EAAE,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,gBAAgB;iBACnD;aACF,CAAC,CACH,CAAC;YACF,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE,CAAC;gBACpC,OAAO,MAAM,CAAC;YAChB,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/task/SendEIP712StructImplemTask.ts"],
4
+ "sourcesContent": ["import {\n APDU_MAX_PAYLOAD,\n ByteArrayBuilder,\n type CommandResult,\n CommandResultFactory,\n type InternalApi,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport {\n SendEIP712StructImplemCommand,\n StructImplemType,\n} from \"@internal/app-binder/command/SendEIP712StructImplemCommand\";\nimport { type EthErrorCodes } from \"@internal/app-binder/command/utils/ethAppErrors\";\n\nexport type SendEIP712StructImplemTaskArgs =\n | {\n type: StructImplemType.ROOT;\n value: string;\n }\n | {\n type: StructImplemType.ARRAY;\n value: number;\n }\n | {\n type: StructImplemType.FIELD;\n value: Uint8Array;\n };\n\nexport class SendEIP712StructImplemTask {\n constructor(\n private api: InternalApi,\n private args: SendEIP712StructImplemTaskArgs,\n ) {}\n\n async run(): Promise<CommandResult<void, EthErrorCodes>> {\n // No particular operation to perform on root and array implementations.\n if (this.args.type !== StructImplemType.FIELD) {\n return await this.api.sendCommand(\n new SendEIP712StructImplemCommand(this.args),\n );\n }\n\n // If the value is a field, we should prepend its size, and chunk it if necessary.\n\n let result: CommandResult<void, EthErrorCodes> = CommandResultFactory<\n void,\n EthErrorCodes\n >({ data: undefined });\n // Prepend the length to the array, in uint16 big endian encoding\n const buffer = new ByteArrayBuilder(this.args.value.length + 2)\n .add16BitUIntToData(this.args.value.length)\n .addBufferToData(this.args.value)\n .build();\n\n // Split the buffer into chunks if necessary\n for (let i = 0; i < buffer.length; i += APDU_MAX_PAYLOAD) {\n result = await this.api.sendCommand(\n new SendEIP712StructImplemCommand({\n type: StructImplemType.FIELD,\n value: {\n data: buffer.slice(i, i + APDU_MAX_PAYLOAD),\n isLastChunk: i >= buffer.length - APDU_MAX_PAYLOAD,\n },\n }),\n );\n if (!isSuccessCommandResult(result)) {\n return result;\n }\n }\n return result;\n }\n}\n"],
5
+ "mappings": "AAAA,OACE,oBAAAA,EACA,oBAAAC,EAEA,wBAAAC,EAEA,0BAAAC,MACK,kCAEP,OACE,iCAAAC,EACA,oBAAAC,MACK,6DAiBA,MAAMC,CAA2B,CACtC,YACUC,EACAC,EACR,CAFQ,SAAAD,EACA,UAAAC,CACP,CAEH,MAAM,KAAmD,CAEvD,GAAI,KAAK,KAAK,OAASH,EAAiB,MACtC,OAAO,MAAM,KAAK,IAAI,YACpB,IAAID,EAA8B,KAAK,IAAI,CAC7C,EAKF,IAAIK,EAA6CP,EAG/C,CAAE,KAAM,MAAU,CAAC,EAErB,MAAMQ,EAAS,IAAIT,EAAiB,KAAK,KAAK,MAAM,OAAS,CAAC,EAC3D,mBAAmB,KAAK,KAAK,MAAM,MAAM,EACzC,gBAAgB,KAAK,KAAK,KAAK,EAC/B,MAAM,EAGT,QAASU,EAAI,EAAGA,EAAID,EAAO,OAAQC,GAAKX,EAUtC,GATAS,EAAS,MAAM,KAAK,IAAI,YACtB,IAAIL,EAA8B,CAChC,KAAMC,EAAiB,MACvB,MAAO,CACL,KAAMK,EAAO,MAAMC,EAAGA,EAAIX,CAAgB,EAC1C,YAAaW,GAAKD,EAAO,OAASV,CACpC,CACF,CAAC,CACH,EACI,CAACG,EAAuBM,CAAM,EAChC,OAAOA,EAGX,OAAOA,CACT,CACF",
6
+ "names": ["APDU_MAX_PAYLOAD", "ByteArrayBuilder", "CommandResultFactory", "isSuccessCommandResult", "SendEIP712StructImplemCommand", "StructImplemType", "SendEIP712StructImplemTask", "api", "args", "result", "buffer", "i"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{CommandResultFactory as n,UnknownDeviceExchangeError as r}from"@ledgerhq/device-management-kit";import{SendEIP712StructImplemCommand as c,StructImplemType as a}from"../../app-binder/command/SendEIP712StructImplemCommand";import{makeDeviceActionInternalApiMock as o}from"../../app-binder/device-action/__test-utils__/makeInternalApi";import{SendEIP712StructImplemTask as t}from"./SendEIP712StructImplemTask";describe("SendEIP712StructImplemTask",()=>{const x=o();beforeEach(()=>{vi.resetAllMocks()}),it("Should forward root implementations",async()=>{const e={type:a.ROOT,value:"root name"};await new t(x,e).run(),expect(x.sendCommand.mock.calls).toHaveLength(1),expect(x.sendCommand.mock.calls[0][0]).toStrictEqual(new c({type:a.ROOT,value:"root name"}))}),it("Should forward array implementations",async()=>{const e={type:a.ARRAY,value:42};await new t(x,e).run(),expect(x.sendCommand.mock.calls).toHaveLength(1),expect(x.sendCommand.mock.calls[0][0]).toStrictEqual(new c({type:a.ARRAY,value:42}))}),it("Should prepend length to small field implementations",async()=>{const e={type:a.FIELD,value:Uint8Array.from([186,242,18,123,73,252,147,203,202,98,105,250,222,15,127,49,223,76,136,167])};x.sendCommand.mockResolvedValue(n({data:void 0})),await new t(x,e).run(),expect(x.sendCommand.mock.calls).toHaveLength(1),expect(x.sendCommand.mock.calls[0][0]).toStrictEqual(new c({type:a.FIELD,value:{data:Uint8Array.from([0,20,186,242,18,123,73,252,147,203,202,98,105,250,222,15,127,49,223,76,136,167]),isLastChunk:!0}}))}),it("Should prepend length and chunk big field implementations",async()=>{const e={type:a.FIELD,value:Uint8Array.from([150,128,159,144,0,0,0,0,0,0,0,0,0,0,0,0,17,47,7,50,229,158,118,0,118,141,252,53,186,116,75,137,242,53,108,216,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,0,0,0,0,0,0,0,0,0,0,0,0,0,73,95,148,114,118,116,156,230,70,246,138,200,194,72,66,0,69,203,123,94,189,242,101,127,252,31,173,253,115,207,10,140,222,149,213,11,98,211,223,140,0,0,0,0,0,0,7,0,0,0,0,50,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,1,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,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,0,224,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,0])};x.sendCommand.mockResolvedValue(n({data:void 0})),await new t(x,e).run(),expect(x.sendCommand.mock.calls).toHaveLength(2),expect(x.sendCommand.mock.calls[0][0]).toStrictEqual(new c({type:a.FIELD,value:{data:Uint8Array.from([1,4,150,128,159,144,0,0,0,0,0,0,0,0,0,0,0,0,17,47,7,50,229,158,118,0,118,141,252,53,186,116,75,137,242,53,108,216,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,0,0,0,0,0,0,0,0,0,0,0,0,0,73,95,148,114,118,116,156,230,70,246,138,200,194,72,66,0,69,203,123,94,189,242,101,127,252,31,173,253,115,207,10,140,222,149,213,11,98,211,223,140,0,0,0,0,0,0,7,0,0,0,0,50,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,1,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,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,0,224,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]),isLastChunk:!1}})),expect(x.sendCommand.mock.calls[1][0]).toStrictEqual(new c({type:a.FIELD,value:{data:Uint8Array.from([0,0,0,0,0,0,0]),isLastChunk:!0}}))}),it("Should fail if the command failed to be sent",async()=>{const e={type:a.ROOT,value:"root name"};x.sendCommand.mockRejectedValueOnce(new Error("error")),await expect(new t(x,e).run()).rejects.toStrictEqual(new Error("error"))}),it("Should fail if a chunked command failed to be sent",async()=>{const e={type:a.FIELD,value:Uint8Array.from([150,128,159,144,0,0,0,0,0,0,0,0,0,0,0,0,17,47,7,50,229,158,118,0,118,141,252,53,186,116,75,137,242,53,108,216,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,0,0,0,0,0,0,0,0,0,0,0,0,0,73,95,148,114,118,116,156,230,70,246,138,200,194,72,66,0,69,203,123,94,189,242,101,127,252,31,173,253,115,207,10,140,222,149,213,11,98,211,223,140,0,0,0,0,0,0,7,0,0,0,0,50,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,1,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,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,0,224,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,0])};x.sendCommand.mockResolvedValue(n({error:new r("error")})),await expect(new t(x,e).run()).resolves.toStrictEqual(n({error:new r("error")}))})});
2
+ //# sourceMappingURL=SendEIP712StructImplemTask.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/task/SendEIP712StructImplemTask.test.ts"],
4
+ "sourcesContent": ["import {\n CommandResultFactory,\n UnknownDeviceExchangeError,\n} from \"@ledgerhq/device-management-kit\";\n\nimport {\n SendEIP712StructImplemCommand,\n StructImplemType,\n} from \"@internal/app-binder/command/SendEIP712StructImplemCommand\";\nimport { makeDeviceActionInternalApiMock } from \"@internal/app-binder/device-action/__test-utils__/makeInternalApi\";\n\nimport {\n SendEIP712StructImplemTask,\n type SendEIP712StructImplemTaskArgs,\n} from \"./SendEIP712StructImplemTask\";\n\ndescribe(\"SendEIP712StructImplemTask\", () => {\n const apiMock = makeDeviceActionInternalApiMock();\n\n beforeEach(() => {\n vi.resetAllMocks();\n });\n\n it(\"Should forward root implementations\", async () => {\n // GIVEN\n const args: SendEIP712StructImplemTaskArgs = {\n type: StructImplemType.ROOT,\n value: \"root name\",\n };\n // WHEN\n await new SendEIP712StructImplemTask(apiMock, args).run();\n // THEN\n expect(apiMock.sendCommand.mock.calls).toHaveLength(1);\n expect(apiMock.sendCommand.mock.calls[0]![0]).toStrictEqual(\n new SendEIP712StructImplemCommand({\n type: StructImplemType.ROOT,\n value: \"root name\",\n }),\n );\n });\n\n it(\"Should forward array implementations\", async () => {\n // GIVEN\n const args: SendEIP712StructImplemTaskArgs = {\n type: StructImplemType.ARRAY,\n value: 42,\n };\n // WHEN\n await new SendEIP712StructImplemTask(apiMock, args).run();\n // THEN\n expect(apiMock.sendCommand.mock.calls).toHaveLength(1);\n expect(apiMock.sendCommand.mock.calls[0]![0]).toStrictEqual(\n new SendEIP712StructImplemCommand({\n type: StructImplemType.ARRAY,\n value: 42,\n }),\n );\n });\n\n it(\"Should prepend length to small field implementations\", async () => {\n // GIVEN\n const args: SendEIP712StructImplemTaskArgs = {\n type: StructImplemType.FIELD,\n value: Uint8Array.from([\n 0xba, 0xf2, 0x12, 0x7b, 0x49, 0xfc, 0x93, 0xcb, 0xca, 0x62, 0x69, 0xfa,\n 0xde, 0x0f, 0x7f, 0x31, 0xdf, 0x4c, 0x88, 0xa7,\n ]),\n };\n // WHEN\n apiMock.sendCommand.mockResolvedValue(\n CommandResultFactory({ data: undefined }),\n );\n await new SendEIP712StructImplemTask(apiMock, args).run();\n // THEN\n expect(apiMock.sendCommand.mock.calls).toHaveLength(1);\n expect(apiMock.sendCommand.mock.calls[0]![0]).toStrictEqual(\n new SendEIP712StructImplemCommand({\n type: StructImplemType.FIELD,\n value: {\n data: Uint8Array.from([\n 0x00, 0x14, 0xba, 0xf2, 0x12, 0x7b, 0x49, 0xfc, 0x93, 0xcb, 0xca,\n 0x62, 0x69, 0xfa, 0xde, 0x0f, 0x7f, 0x31, 0xdf, 0x4c, 0x88, 0xa7,\n ]),\n isLastChunk: true,\n },\n }),\n );\n });\n\n it(\"Should prepend length and chunk big field implementations\", async () => {\n // GIVEN\n const args: SendEIP712StructImplemTaskArgs = {\n type: StructImplemType.FIELD,\n value: Uint8Array.from([\n 0x96, 0x80, 0x9f, 0x90, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x11, 0x2f, 0x07, 0x32, 0xe5, 0x9e, 0x76, 0x00,\n 0x76, 0x8d, 0xfc, 0x35, 0xba, 0x74, 0x4b, 0x89, 0xf2, 0x35, 0x6c, 0xd8,\n 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,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x5f, 0x94, 0x72,\n 0x76, 0x74, 0x9c, 0xe6, 0x46, 0xf6, 0x8a, 0xc8, 0xc2, 0x48, 0x42, 0x00,\n 0x45, 0xcb, 0x7b, 0x5e, 0xbd, 0xf2, 0x65, 0x7f, 0xfc, 0x1f, 0xad, 0xfd,\n 0x73, 0xcf, 0x0a, 0x8c, 0xde, 0x95, 0xd5, 0x0b, 0x62, 0xd3, 0xdf, 0x8c,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x32,\n 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,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,\n 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,\n 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,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0,\n 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,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n ]),\n };\n // WHEN\n apiMock.sendCommand.mockResolvedValue(\n CommandResultFactory({ data: undefined }),\n );\n await new SendEIP712StructImplemTask(apiMock, args).run();\n // THEN\n expect(apiMock.sendCommand.mock.calls).toHaveLength(2);\n expect(apiMock.sendCommand.mock.calls[0]![0]).toStrictEqual(\n new SendEIP712StructImplemCommand({\n type: StructImplemType.FIELD,\n value: {\n data: Uint8Array.from([\n 0x01, 0x04, 0x96, 0x80, 0x9f, 0x90, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x2f, 0x07, 0x32,\n 0xe5, 0x9e, 0x76, 0x00, 0x76, 0x8d, 0xfc, 0x35, 0xba, 0x74, 0x4b,\n 0x89, 0xf2, 0x35, 0x6c, 0xd8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x5f, 0x94, 0x72, 0x76, 0x74,\n 0x9c, 0xe6, 0x46, 0xf6, 0x8a, 0xc8, 0xc2, 0x48, 0x42, 0x00, 0x45,\n 0xcb, 0x7b, 0x5e, 0xbd, 0xf2, 0x65, 0x7f, 0xfc, 0x1f, 0xad, 0xfd,\n 0x73, 0xcf, 0x0a, 0x8c, 0xde, 0x95, 0xd5, 0x0b, 0x62, 0xd3, 0xdf,\n 0x8c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,\n 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00,\n ]),\n isLastChunk: false,\n },\n }),\n );\n expect(apiMock.sendCommand.mock.calls[1]![0]).toStrictEqual(\n new SendEIP712StructImplemCommand({\n type: StructImplemType.FIELD,\n value: {\n data: Uint8Array.from([0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00]),\n isLastChunk: true,\n },\n }),\n );\n });\n\n it(\"Should fail if the command failed to be sent\", async () => {\n // GIVEN\n const args: SendEIP712StructImplemTaskArgs = {\n type: StructImplemType.ROOT,\n value: \"root name\",\n };\n // WHEN\n apiMock.sendCommand.mockRejectedValueOnce(new Error(\"error\"));\n // THEN\n await expect(\n new SendEIP712StructImplemTask(apiMock, args).run(),\n ).rejects.toStrictEqual(new Error(\"error\"));\n });\n\n it(\"Should fail if a chunked command failed to be sent\", async () => {\n // GIVEN\n const args: SendEIP712StructImplemTaskArgs = {\n type: StructImplemType.FIELD,\n value: Uint8Array.from([\n 0x96, 0x80, 0x9f, 0x90, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x11, 0x2f, 0x07, 0x32, 0xe5, 0x9e, 0x76, 0x00,\n 0x76, 0x8d, 0xfc, 0x35, 0xba, 0x74, 0x4b, 0x89, 0xf2, 0x35, 0x6c, 0xd8,\n 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,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x5f, 0x94, 0x72,\n 0x76, 0x74, 0x9c, 0xe6, 0x46, 0xf6, 0x8a, 0xc8, 0xc2, 0x48, 0x42, 0x00,\n 0x45, 0xcb, 0x7b, 0x5e, 0xbd, 0xf2, 0x65, 0x7f, 0xfc, 0x1f, 0xad, 0xfd,\n 0x73, 0xcf, 0x0a, 0x8c, 0xde, 0x95, 0xd5, 0x0b, 0x62, 0xd3, 0xdf, 0x8c,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x32,\n 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,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,\n 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,\n 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,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0,\n 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,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n ]),\n };\n // WHEN\n apiMock.sendCommand.mockResolvedValue(\n CommandResultFactory({\n error: new UnknownDeviceExchangeError(\"error\"),\n }),\n );\n // THEN\n await expect(\n new SendEIP712StructImplemTask(apiMock, args).run(),\n ).resolves.toStrictEqual(\n CommandResultFactory({ error: new UnknownDeviceExchangeError(\"error\") }),\n );\n });\n});\n"],
5
+ "mappings": "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",
6
+ "names": ["CommandResultFactory", "UnknownDeviceExchangeError", "SendEIP712StructImplemCommand", "StructImplemType", "makeDeviceActionInternalApiMock", "SendEIP712StructImplemTask", "apiMock", "args"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{CommandResultFactory as r,InvalidStatusWordError as n}from"@ledgerhq/device-management-kit";import{PayloadUtils as o}from"../../shared/utils/PayloadUtils";import{SendCommandInChunksTask as t}from"./SendCommandInChunksTask";class p{constructor(a,d){this.api=a;this.args=d}async run(){const a=o.getBufferFromPayload(this.args.payload);return a?new t(this.api,{data:a,commandFactory:this.args.commandFactory}).run():r({error:new n("Invalid payload")})}}export{p as SendPayloadInChunksTask};
2
+ //# sourceMappingURL=SendPayloadInChunksTask.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/task/SendPayloadInChunksTask.ts"],
4
+ "sourcesContent": ["import {\n type CommandResult,\n CommandResultFactory,\n type InternalApi,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { type EthErrorCodes } from \"@internal/app-binder/command/utils/ethAppErrors\";\nimport { PayloadUtils } from \"@internal/shared/utils/PayloadUtils\";\n\nimport {\n SendCommandInChunksTask,\n type SendCommandInChunksTaskArgs,\n} from \"./SendCommandInChunksTask\";\n\ntype SendPayloadInChunksTaskArgs<T> = {\n payload: string;\n commandFactory: SendCommandInChunksTaskArgs<T>[\"commandFactory\"];\n};\n\nexport class SendPayloadInChunksTask<T> {\n constructor(\n private api: InternalApi,\n private args: SendPayloadInChunksTaskArgs<T>,\n ) {}\n async run(): Promise<CommandResult<T, EthErrorCodes>> {\n const data = PayloadUtils.getBufferFromPayload(this.args.payload);\n\n if (!data) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"Invalid payload\"),\n });\n }\n\n return new SendCommandInChunksTask(this.api, {\n data,\n commandFactory: this.args.commandFactory,\n }).run();\n }\n}\n"],
5
+ "mappings": "AAAA,OAEE,wBAAAA,EAEA,0BAAAC,MACK,kCAGP,OAAS,gBAAAC,MAAoB,sCAE7B,OACE,2BAAAC,MAEK,4BAOA,MAAMC,CAA2B,CACtC,YACUC,EACAC,EACR,CAFQ,SAAAD,EACA,UAAAC,CACP,CACH,MAAM,KAAgD,CACpD,MAAMC,EAAOL,EAAa,qBAAqB,KAAK,KAAK,OAAO,EAEhE,OAAKK,EAME,IAAIJ,EAAwB,KAAK,IAAK,CAC3C,KAAAI,EACA,eAAgB,KAAK,KAAK,cAC5B,CAAC,EAAE,IAAI,EAREP,EAAqB,CAC1B,MAAO,IAAIC,EAAuB,iBAAiB,CACrD,CAAC,CAOL,CACF",
6
+ "names": ["CommandResultFactory", "InvalidStatusWordError", "PayloadUtils", "SendCommandInChunksTask", "SendPayloadInChunksTask", "api", "args", "data"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{CommandResultFactory as o,InvalidStatusWordError as e}from"@ledgerhq/device-management-kit";import{SendCommandInChunksTask as t}from"./SendCommandInChunksTask";import{SendPayloadInChunksTask as r}from"./SendPayloadInChunksTask";vi.mock("./SendCommandInChunksTask");describe("SendPayloadInChunksTask",()=>{describe("run",()=>{beforeAll(()=>{vi.resetAllMocks()}),it("should return a CommandResult",async()=>{const a="0x1234";vi.spyOn(t.prototype,"run").mockResolvedValue(o({data:"0x5678"}));const n=await new r({},{payload:a,commandFactory:vi.fn()}).run();expect(n).toEqual(o({data:"0x5678"}))}),it("should return an error CommandResult",async()=>{const a="invalid-payload",n=await new r({},{payload:a,commandFactory:vi.fn()}).run();expect(n).toEqual(o({error:new e("Invalid payload")}))})})});
2
+ //# sourceMappingURL=SendPayloadInChunksTask.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/task/SendPayloadInChunksTask.test.ts"],
4
+ "sourcesContent": ["import {\n CommandResultFactory,\n type InternalApi,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { SendCommandInChunksTask } from \"./SendCommandInChunksTask\";\nimport { SendPayloadInChunksTask } from \"./SendPayloadInChunksTask\";\n\n// mock SendCommandInChunksTask\nvi.mock(\"./SendCommandInChunksTask\");\n\ndescribe(\"SendPayloadInChunksTask\", () => {\n describe(\"run\", () => {\n beforeAll(() => {\n vi.resetAllMocks();\n });\n\n it(\"should return a CommandResult\", async () => {\n // GIVEN\n const payload = \"0x1234\";\n vi.spyOn(SendCommandInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({ data: \"0x5678\" }),\n );\n\n // WHEN\n const result = await new SendPayloadInChunksTask({} as InternalApi, {\n payload,\n commandFactory: vi.fn(),\n }).run();\n\n // THEN\n expect(result).toEqual(CommandResultFactory({ data: \"0x5678\" }));\n });\n\n it(\"should return an error CommandResult\", async () => {\n // GIVEN\n const payload = \"invalid-payload\";\n\n // WHEN\n const result = await new SendPayloadInChunksTask({} as InternalApi, {\n payload,\n commandFactory: vi.fn(),\n }).run();\n\n // THEN\n expect(result).toEqual(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"Invalid payload\"),\n }),\n );\n });\n });\n});\n"],
5
+ "mappings": "AAAA,OACE,wBAAAA,EAEA,0BAAAC,MACK,kCAEP,OAAS,2BAAAC,MAA+B,4BACxC,OAAS,2BAAAC,MAA+B,4BAGxC,GAAG,KAAK,2BAA2B,EAEnC,SAAS,0BAA2B,IAAM,CACxC,SAAS,MAAO,IAAM,CACpB,UAAU,IAAM,CACd,GAAG,cAAc,CACnB,CAAC,EAED,GAAG,gCAAiC,SAAY,CAE9C,MAAMC,EAAU,SAChB,GAAG,MAAMF,EAAwB,UAAW,KAAK,EAAE,kBACjDF,EAAqB,CAAE,KAAM,QAAS,CAAC,CACzC,EAGA,MAAMK,EAAS,MAAM,IAAIF,EAAwB,CAAC,EAAkB,CAClE,QAAAC,EACA,eAAgB,GAAG,GAAG,CACxB,CAAC,EAAE,IAAI,EAGP,OAAOC,CAAM,EAAE,QAAQL,EAAqB,CAAE,KAAM,QAAS,CAAC,CAAC,CACjE,CAAC,EAED,GAAG,uCAAwC,SAAY,CAErD,MAAMI,EAAU,kBAGVC,EAAS,MAAM,IAAIF,EAAwB,CAAC,EAAkB,CAClE,QAAAC,EACA,eAAgB,GAAG,GAAG,CACxB,CAAC,EAAE,IAAI,EAGP,OAAOC,CAAM,EAAE,QACbL,EAAqB,CACnB,MAAO,IAAIC,EAAuB,iBAAiB,CACrD,CAAC,CACH,CACF,CAAC,CACH,CAAC,CACH,CAAC",
6
+ "names": ["CommandResultFactory", "InvalidStatusWordError", "SendCommandInChunksTask", "SendPayloadInChunksTask", "payload", "result"]
7
+ }
@@ -1,49 +1,2 @@
1
- import { APDU_MAX_PAYLOAD, ByteArrayBuilder, CommandResultFactory, InvalidStatusWordError, isSuccessCommandResult, } from "@ledgerhq/device-management-kit";
2
- import { Nothing } from "purify-ts";
3
- import { SignPersonalMessageCommand, } from "../../app-binder/command/SignPersonalMessageCommand";
4
- import { DerivationPathUtils } from "../../shared/utils/DerivationPathUtils";
5
- const PATH_SIZE = 4;
6
- export class SendSignPersonalMessageTask {
7
- api;
8
- args;
9
- constructor(api, args) {
10
- this.api = api;
11
- this.args = args;
12
- }
13
- async run() {
14
- const { derivationPath, message } = this.args;
15
- const paths = DerivationPathUtils.splitPath(derivationPath);
16
- const builder = new ByteArrayBuilder(message.length + 1 + (paths.length + 1) * PATH_SIZE);
17
- // add the derivation paths length
18
- builder.add8BitUIntToData(paths.length);
19
- // add every derivation path
20
- paths.forEach((path) => {
21
- builder.add32BitUIntToData(path);
22
- });
23
- // add message length
24
- builder.add32BitUIntToData(message.length);
25
- // add the message
26
- builder.addAsciiStringToData(message);
27
- const buffer = builder.build();
28
- let result = CommandResultFactory({ data: Nothing });
29
- // Split the buffer into chunks
30
- for (let i = 0; i < buffer.length; i += APDU_MAX_PAYLOAD) {
31
- result = await this.api.sendCommand(new SignPersonalMessageCommand({
32
- data: buffer.slice(i, i + APDU_MAX_PAYLOAD),
33
- isFirstChunk: i === 0,
34
- }));
35
- if (!isSuccessCommandResult(result)) {
36
- return result;
37
- }
38
- }
39
- if (isSuccessCommandResult(result) && result.data.isJust()) {
40
- return CommandResultFactory({
41
- data: result.data.extract(),
42
- });
43
- }
44
- return CommandResultFactory({
45
- error: new InvalidStatusWordError("no signature returned"),
46
- });
47
- }
48
- }
49
- //# sourceMappingURL=SendSignPersonalMessageTask.js.map
1
+ import{ByteArrayBuilder as d,CommandResultFactory as o,InvalidStatusWordError as m,isSuccessCommandResult as g}from"@ledgerhq/device-management-kit";import{DerivationPathUtils as l}from"@ledgerhq/signer-utils";import{SignPersonalMessageCommand as u}from"../../app-binder/command/SignPersonalMessageCommand";import{SendCommandInChunksTask as p}from"./SendCommandInChunksTask";const c=4;class P{constructor(s,t){this.api=s;this.args=t}async run(){const{derivationPath:s,message:t}=this.args,r=l.splitPath(s),a=new d(t.length+1+(r.length+1)*c);a.add8BitUIntToData(r.length),r.forEach(e=>{a.add32BitUIntToData(e)}),a.add32BitUIntToData(t.length),typeof t=="string"?a.addAsciiStringToData(t):a.addBufferToData(t);const i=a.build(),n=await new p(this.api,{data:i,commandFactory:e=>new u({data:e.chunkedData,isFirstChunk:e.isFirstChunk})}).run();return g(n)?n.data.mapOrDefault(e=>o({data:e}),o({error:new m("no signature returned")})):n}}export{P as SendSignPersonalMessageTask};
2
+ //# sourceMappingURL=SendSignPersonalMessageTask.js.map
@@ -1 +1,7 @@
1
- {"version":3,"file":"SendSignPersonalMessageTask.js","sourceRoot":"","sources":["../../../../../src/internal/app-binder/task/SendSignPersonalMessageTask.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAEhB,oBAAoB,EAEpB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,OAAO,EACL,0BAA0B,GAE3B,MAAM,yDAAyD,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AAEjF,MAAM,SAAS,GAAG,CAAC,CAAC;AAOpB,MAAM,OAAO,2BAA2B;IAE5B;IACA;IAFV,YACU,GAAgB,EAChB,IAAqC;QADrC,QAAG,GAAH,GAAG,CAAa;QAChB,SAAI,GAAJ,IAAI,CAAiC;IAC5C,CAAC;IAEJ,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC;QAC9C,MAAM,KAAK,GAAG,mBAAmB,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAE5D,MAAM,OAAO,GAAG,IAAI,gBAAgB,CAClC,OAAO,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,SAAS,CACpD,CAAC;QACF,kCAAkC;QAClC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACxC,4BAA4B;QAC5B,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACrB,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QACH,qBAAqB;QACrB,OAAO,CAAC,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC3C,kBAAkB;QAClB,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAEtC,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;QAE/B,IAAI,MAAM,GAAG,oBAAoB,CAC/B,EAAE,IAAI,EAAE,OAAO,EAAE,CAClB,CAAC;QAEF,+BAA+B;QAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,gBAAgB,EAAE,CAAC;YACzD,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CACjC,IAAI,0BAA0B,CAAC;gBAC7B,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC;gBAC3C,YAAY,EAAE,CAAC,KAAK,CAAC;aACtB,CAAC,CACH,CAAC;YAEF,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE,CAAC;gBACpC,OAAO,MAAM,CAAC;YAChB,CAAC;QACH,CAAC;QAED,IAAI,sBAAsB,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;YAC3D,OAAO,oBAAoB,CAAC;gBAC1B,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE;aAC5B,CAAC,CAAC;QACL,CAAC;QAED,OAAO,oBAAoB,CAAC;YAC1B,KAAK,EAAE,IAAI,sBAAsB,CAAC,uBAAuB,CAAC;SAC3D,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/task/SendSignPersonalMessageTask.ts"],
4
+ "sourcesContent": ["import {\n ByteArrayBuilder,\n type CommandResult,\n CommandResultFactory,\n type InternalApi,\n InvalidStatusWordError,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\nimport { DerivationPathUtils } from \"@ledgerhq/signer-utils\";\n\nimport { type Signature } from \"@api/model/Signature\";\nimport {\n SignPersonalMessageCommand,\n type SignPersonalMessageCommandResponse,\n} from \"@internal/app-binder/command/SignPersonalMessageCommand\";\nimport { type EthErrorCodes } from \"@internal/app-binder/command/utils/ethAppErrors\";\n\nimport { SendCommandInChunksTask } from \"./SendCommandInChunksTask\";\n\nconst PATH_SIZE = 4;\n\ntype SendSignPersonalMessageTaskArgs = {\n derivationPath: string;\n message: string | Uint8Array;\n};\n\nexport class SendSignPersonalMessageTask {\n constructor(\n private api: InternalApi,\n private args: SendSignPersonalMessageTaskArgs,\n ) {}\n\n async run(): Promise<CommandResult<Signature, EthErrorCodes>> {\n const { derivationPath, message } = this.args;\n const paths = DerivationPathUtils.splitPath(derivationPath);\n\n const builder = new ByteArrayBuilder(\n message.length + 1 + (paths.length + 1) * PATH_SIZE,\n );\n // add the derivation paths length\n builder.add8BitUIntToData(paths.length);\n // add every derivation path\n paths.forEach((path) => {\n builder.add32BitUIntToData(path);\n });\n // add message length\n builder.add32BitUIntToData(message.length);\n // add the message\n if (typeof message === \"string\") {\n builder.addAsciiStringToData(message);\n } else {\n builder.addBufferToData(message);\n }\n\n const buffer = builder.build();\n\n const result =\n await new SendCommandInChunksTask<SignPersonalMessageCommandResponse>(\n this.api,\n {\n data: buffer,\n commandFactory: (args) =>\n new SignPersonalMessageCommand({\n data: args.chunkedData,\n isFirstChunk: args.isFirstChunk,\n }),\n },\n ).run();\n\n if (!isSuccessCommandResult(result)) {\n return result;\n }\n\n return result.data.mapOrDefault(\n (data) => CommandResultFactory({ data }),\n CommandResultFactory({\n error: new InvalidStatusWordError(\"no signature returned\"),\n }),\n );\n }\n}\n"],
5
+ "mappings": "AAAA,OACE,oBAAAA,EAEA,wBAAAC,EAEA,0BAAAC,EACA,0BAAAC,MACK,kCACP,OAAS,uBAAAC,MAA2B,yBAGpC,OACE,8BAAAC,MAEK,0DAGP,OAAS,2BAAAC,MAA+B,4BAExC,MAAMC,EAAY,EAOX,MAAMC,CAA4B,CACvC,YACUC,EACAC,EACR,CAFQ,SAAAD,EACA,UAAAC,CACP,CAEH,MAAM,KAAwD,CAC5D,KAAM,CAAE,eAAAC,EAAgB,QAAAC,CAAQ,EAAI,KAAK,KACnCC,EAAQT,EAAoB,UAAUO,CAAc,EAEpDG,EAAU,IAAId,EAClBY,EAAQ,OAAS,GAAKC,EAAM,OAAS,GAAKN,CAC5C,EAEAO,EAAQ,kBAAkBD,EAAM,MAAM,EAEtCA,EAAM,QAASE,GAAS,CACtBD,EAAQ,mBAAmBC,CAAI,CACjC,CAAC,EAEDD,EAAQ,mBAAmBF,EAAQ,MAAM,EAErC,OAAOA,GAAY,SACrBE,EAAQ,qBAAqBF,CAAO,EAEpCE,EAAQ,gBAAgBF,CAAO,EAGjC,MAAMI,EAASF,EAAQ,MAAM,EAEvBG,EACJ,MAAM,IAAIX,EACR,KAAK,IACL,CACE,KAAMU,EACN,eAAiBN,GACf,IAAIL,EAA2B,CAC7B,KAAMK,EAAK,YACX,aAAcA,EAAK,YACrB,CAAC,CACL,CACF,EAAE,IAAI,EAER,OAAKP,EAAuBc,CAAM,EAI3BA,EAAO,KAAK,aAChBC,GAASjB,EAAqB,CAAE,KAAAiB,CAAK,CAAC,EACvCjB,EAAqB,CACnB,MAAO,IAAIC,EAAuB,uBAAuB,CAC3D,CAAC,CACH,EARSe,CASX,CACF",
6
+ "names": ["ByteArrayBuilder", "CommandResultFactory", "InvalidStatusWordError", "isSuccessCommandResult", "DerivationPathUtils", "SignPersonalMessageCommand", "SendCommandInChunksTask", "PATH_SIZE", "SendSignPersonalMessageTask", "api", "args", "derivationPath", "message", "paths", "builder", "path", "buffer", "result", "data"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{CommandResultFactory as t}from"@ledgerhq/device-management-kit";import{InvalidStatusWordError as d}from"@ledgerhq/device-management-kit";import{Just as u,Nothing as f}from"purify-ts";import{SignPersonalMessageCommand as s}from"../../app-binder/command/SignPersonalMessageCommand";import{makeDeviceActionInternalApiMock as p}from"../../app-binder/device-action/__test-utils__/makeInternalApi";import{SendSignPersonalMessageTask as n}from"./SendSignPersonalMessageTask";const i="Hello, World!",g=new Uint8Array([72,101,108,108,111,44,32,87,111,114,108,100,33]),m=new Uint8Array([5,128,0,0,44,128,0,0,60,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,72,101,108,108,111,44,32,87,111,114,108,100,33]),E="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.",l=new Uint8Array([5,128,0,0,44,128,0,0,60,128,0,0,0,0,0,0,0,0,0,0,0,0,0,1,189,76,111,114,101,109,32,105,112,115,117,109,32,100,111,108,111,114,32,115,105,116,32,97,109,101,116,44,32,99,111,110,115,101,99,116,101,116,117,114,32,97,100,105,112,105,115,99,105,110,103,32,101,108,105,116,44,32,115,101,100,32,100,111,32,101,105,117,115,109,111,100,32,116,101,109,112,111,114,32,105,110,99,105,100,105,100,117,110,116,32,117,116,32,108,97,98,111,114,101,32,101,116,32,100,111,108,111,114,101,32,109,97,103,110,97,32,97,108,105,113,117,97,46,32,85,116,32,101,110,105,109,32,97,100,32,109,105,110,105,109,32,118,101,110,105,97,109,44,32,113,117,105,115,32,110,111,115,116,114,117,100,32,101,120,101,114,99,105,116,97,116,105,111,110,32,117,108,108,97,109,99,111,32,108,97,98,111,114,105,115,32,110,105,115,105,32,117,116,32,97,108,105,113,117,105,112,32,101,120,32,101,97,32,99,111,109,109,111,100,111,32,99,111,110,115,101,113,117,97,116,46,32,68,117,105,115,32,97,117,116,101,32,105,114,117,114,101,32,100,111,108,111,114,32,105,110,32,114,101,112,114,101,104,101,110,100,101,114,105,116,32,105,110,32,118,111,108,117,112,116,97,116,101,32,118,101,108,105,116,32,101,115,115,101,32,99,105,108,108,117,109,32,100,111,108,111,114,101,32,101,117,32,102,117,103,105,97,116,32,110,117,108,108,97,32,112,97,114,105,97,116,117,114,46,32,69,120,99,101,112,116,101,117,114,32,115,105,110,116,32,111,99,99,97,101,99,97,116,32,99,117,112,105,100,97,116,97,116,32,110,111,110,32,112,114,111,105,100,101,110,116,44,32,115,117,110,116,32,105,110,32,99,117,108,112,97,32,113,117,105,32,111,102,102,105,99,105,97,32,100,101,115,101,114,117,110,116,32,109,111,108,108,105,116,32,97,110,105,109,32,105,100,32,101,115,116,32,108,97,98,111,114,117,109,46]);describe("SendSignPersonalMessageTask",()=>{const x=p(),c={v:27,r:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",s:"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"},r=t({data:u(c)}),o=t({data:f});beforeEach(()=>{vi.resetAllMocks()}),describe("run",()=>{it("should send the message in chunks",async()=>{const e={derivationPath:"44'/60'/0'/0/0",message:i};x.sendCommand.mockResolvedValueOnce(r),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({data:new Uint8Array(m),isFirstChunk:!0})),expect(a.data).toStrictEqual(c)}),it("should send the message as byte arrays",async()=>{const e={derivationPath:"44'/60'/0'/0/0",message:g};x.sendCommand.mockResolvedValueOnce(r),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({data:new Uint8Array(m),isFirstChunk:!0})),expect(a.data).toStrictEqual(c)}),it("should send the long message in chunks",async()=>{const e={derivationPath:"44'/60'/0'/0/0",message:E};x.sendCommand.mockResolvedValueOnce(o),x.sendCommand.mockResolvedValueOnce(r);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({data:l.slice(0,255),isFirstChunk:!0})),expect(x.sendCommand.mock.calls[1][0]).toStrictEqual(new s({data:l.slice(255,510),isFirstChunk:!1})),expect(a.data).toStrictEqual(c)}),it("should return an error if the command fails",async()=>{const e={derivationPath:"44'/60'/0'/0/0",message:i};x.sendCommand.mockResolvedValueOnce(t({error:new d("An error")}));const a=await new n(x,e).run();expect(a).toStrictEqual(t({error:new d("An error")}))}),it("should return an error if the command returns no data",async()=>{const e={derivationPath:"44'/60'/0'/0/0",message:i};x.sendCommand.mockResolvedValueOnce(o);const a=await new n(x,e).run();expect(a).toStrictEqual(t({error:new d("no signature returned")}))})})});
2
+ //# sourceMappingURL=SendSignPersonalMessageTask.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/task/SendSignPersonalMessageTask.test.ts"],
4
+ "sourcesContent": ["import { CommandResultFactory } from \"@ledgerhq/device-management-kit\";\nimport { InvalidStatusWordError } from \"@ledgerhq/device-management-kit\";\nimport { Just, Nothing } from \"purify-ts\";\n\nimport { SignPersonalMessageCommand } from \"@internal/app-binder/command/SignPersonalMessageCommand\";\nimport { makeDeviceActionInternalApiMock } from \"@internal/app-binder/device-action/__test-utils__/makeInternalApi\";\n\nimport { SendSignPersonalMessageTask } from \"./SendSignPersonalMessageTask\";\n\nconst SEND_MESSAGE_HELLO_WORLD = \"Hello, World!\";\nconst SEND_MESSAGE_HELLO_WORLD_BYTES = new Uint8Array([\n 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x2c, 0x20, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x21,\n]);\nconst SEND_MESSAGE_HELLO_WORLD_DATA = 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, 0x00, 0x00, 0x00, 0x0d, 0x48,\n 0x65, 0x6c, 0x6c, 0x6f, 0x2c, 0x20, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x21,\n]);\n\nconst MESSAGE_LONG =\n \"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\";\nconst MESSAGE_LONG_DATA = 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, 0x00, 0x00, 0x01, 0xbd, 0x4c,\n 0x6f, 0x72, 0x65, 0x6d, 0x20, 0x69, 0x70, 0x73, 0x75, 0x6d, 0x20, 0x64, 0x6f,\n 0x6c, 0x6f, 0x72, 0x20, 0x73, 0x69, 0x74, 0x20, 0x61, 0x6d, 0x65, 0x74, 0x2c,\n 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x74, 0x65, 0x74, 0x75, 0x72, 0x20,\n 0x61, 0x64, 0x69, 0x70, 0x69, 0x73, 0x63, 0x69, 0x6e, 0x67, 0x20, 0x65, 0x6c,\n 0x69, 0x74, 0x2c, 0x20, 0x73, 0x65, 0x64, 0x20, 0x64, 0x6f, 0x20, 0x65, 0x69,\n 0x75, 0x73, 0x6d, 0x6f, 0x64, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6f, 0x72, 0x20,\n 0x69, 0x6e, 0x63, 0x69, 0x64, 0x69, 0x64, 0x75, 0x6e, 0x74, 0x20, 0x75, 0x74,\n 0x20, 0x6c, 0x61, 0x62, 0x6f, 0x72, 0x65, 0x20, 0x65, 0x74, 0x20, 0x64, 0x6f,\n 0x6c, 0x6f, 0x72, 0x65, 0x20, 0x6d, 0x61, 0x67, 0x6e, 0x61, 0x20, 0x61, 0x6c,\n 0x69, 0x71, 0x75, 0x61, 0x2e, 0x20, 0x55, 0x74, 0x20, 0x65, 0x6e, 0x69, 0x6d,\n 0x20, 0x61, 0x64, 0x20, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x20, 0x76, 0x65, 0x6e,\n 0x69, 0x61, 0x6d, 0x2c, 0x20, 0x71, 0x75, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x73,\n 0x74, 0x72, 0x75, 0x64, 0x20, 0x65, 0x78, 0x65, 0x72, 0x63, 0x69, 0x74, 0x61,\n 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x75, 0x6c, 0x6c, 0x61, 0x6d, 0x63, 0x6f, 0x20,\n 0x6c, 0x61, 0x62, 0x6f, 0x72, 0x69, 0x73, 0x20, 0x6e, 0x69, 0x73, 0x69, 0x20,\n 0x75, 0x74, 0x20, 0x61, 0x6c, 0x69, 0x71, 0x75, 0x69, 0x70, 0x20, 0x65, 0x78,\n 0x20, 0x65, 0x61, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x64, 0x6f, 0x20, 0x63,\n 0x6f, 0x6e, 0x73, 0x65, 0x71, 0x75, 0x61, 0x74, 0x2e, 0x20, 0x44, 0x75, 0x69,\n 0x73, 0x20, 0x61, 0x75, 0x74, 0x65, 0x20, 0x69, 0x72, 0x75, 0x72, 0x65, 0x20,\n 0x64, 0x6f, 0x6c, 0x6f, 0x72, 0x20, 0x69, 0x6e, 0x20, 0x72, 0x65, 0x70, 0x72,\n 0x65, 0x68, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x74, 0x20, 0x69, 0x6e, 0x20,\n 0x76, 0x6f, 0x6c, 0x75, 0x70, 0x74, 0x61, 0x74, 0x65, 0x20, 0x76, 0x65, 0x6c,\n 0x69, 0x74, 0x20, 0x65, 0x73, 0x73, 0x65, 0x20, 0x63, 0x69, 0x6c, 0x6c, 0x75,\n 0x6d, 0x20, 0x64, 0x6f, 0x6c, 0x6f, 0x72, 0x65, 0x20, 0x65, 0x75, 0x20, 0x66,\n 0x75, 0x67, 0x69, 0x61, 0x74, 0x20, 0x6e, 0x75, 0x6c, 0x6c, 0x61, 0x20, 0x70,\n 0x61, 0x72, 0x69, 0x61, 0x74, 0x75, 0x72, 0x2e, 0x20, 0x45, 0x78, 0x63, 0x65,\n 0x70, 0x74, 0x65, 0x75, 0x72, 0x20, 0x73, 0x69, 0x6e, 0x74, 0x20, 0x6f, 0x63,\n 0x63, 0x61, 0x65, 0x63, 0x61, 0x74, 0x20, 0x63, 0x75, 0x70, 0x69, 0x64, 0x61,\n 0x74, 0x61, 0x74, 0x20, 0x6e, 0x6f, 0x6e, 0x20, 0x70, 0x72, 0x6f, 0x69, 0x64,\n 0x65, 0x6e, 0x74, 0x2c, 0x20, 0x73, 0x75, 0x6e, 0x74, 0x20, 0x69, 0x6e, 0x20,\n 0x63, 0x75, 0x6c, 0x70, 0x61, 0x20, 0x71, 0x75, 0x69, 0x20, 0x6f, 0x66, 0x66,\n 0x69, 0x63, 0x69, 0x61, 0x20, 0x64, 0x65, 0x73, 0x65, 0x72, 0x75, 0x6e, 0x74,\n 0x20, 0x6d, 0x6f, 0x6c, 0x6c, 0x69, 0x74, 0x20, 0x61, 0x6e, 0x69, 0x6d, 0x20,\n 0x69, 0x64, 0x20, 0x65, 0x73, 0x74, 0x20, 0x6c, 0x61, 0x62, 0x6f, 0x72, 0x75,\n 0x6d, 0x2e,\n]);\n\ndescribe(\"SendSignPersonalMessageTask\", () => {\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 message in chunks\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n message: SEND_MESSAGE_HELLO_WORLD,\n };\n apiMock.sendCommand.mockResolvedValueOnce(resultOk);\n apiMock.sendCommand.mockResolvedValueOnce(resultNothing);\n\n // WHEN\n const result = await new SendSignPersonalMessageTask(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 SignPersonalMessageCommand({\n data: new Uint8Array(SEND_MESSAGE_HELLO_WORLD_DATA),\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(\"should send the message as byte arrays\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n message: SEND_MESSAGE_HELLO_WORLD_BYTES,\n };\n apiMock.sendCommand.mockResolvedValueOnce(resultOk);\n apiMock.sendCommand.mockResolvedValueOnce(resultNothing);\n\n // WHEN\n const result = await new SendSignPersonalMessageTask(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 SignPersonalMessageCommand({\n data: new Uint8Array(SEND_MESSAGE_HELLO_WORLD_DATA),\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(\"should send the long message in chunks\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n message: MESSAGE_LONG,\n };\n apiMock.sendCommand.mockResolvedValueOnce(resultNothing);\n apiMock.sendCommand.mockResolvedValueOnce(resultOk);\n\n // WHEN\n const result = await new SendSignPersonalMessageTask(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 SignPersonalMessageCommand({\n data: MESSAGE_LONG_DATA.slice(0, 255),\n isFirstChunk: true,\n }),\n );\n expect(apiMock.sendCommand.mock.calls[1]![0]).toStrictEqual(\n new SignPersonalMessageCommand({\n data: MESSAGE_LONG_DATA.slice(255, 510),\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(\"should return an error if the command fails\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n message: SEND_MESSAGE_HELLO_WORLD,\n };\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"An error\"),\n }),\n );\n\n // WHEN\n const result = await new SendSignPersonalMessageTask(apiMock, args).run();\n\n // THEN\n expect(result).toStrictEqual(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"An error\"),\n }),\n );\n });\n\n it(\"should return an error if the command returns no data\", async () => {\n // GIVEN\n const args = {\n derivationPath: \"44'/60'/0'/0/0\",\n message: SEND_MESSAGE_HELLO_WORLD,\n };\n apiMock.sendCommand.mockResolvedValueOnce(resultNothing);\n\n // WHEN\n const result = await new SendSignPersonalMessageTask(apiMock, args).run();\n\n // THEN\n expect(result).toStrictEqual(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"no signature returned\"),\n }),\n );\n });\n });\n});\n"],
5
+ "mappings": "AAAA,OAAS,wBAAAA,MAA4B,kCACrC,OAAS,0BAAAC,MAA8B,kCACvC,OAAS,QAAAC,EAAM,WAAAC,MAAe,YAE9B,OAAS,8BAAAC,MAAkC,0DAC3C,OAAS,mCAAAC,MAAuC,oEAEhD,OAAS,+BAAAC,MAAmC,gCAE5C,MAAMC,EAA2B,gBAC3BC,EAAiC,IAAI,WAAW,CACpD,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,EAC1E,CAAC,EACKC,EAAgC,IAAI,WAAW,CACnD,EAAM,IAAM,EAAM,EAAM,GAAM,IAAM,EAAM,EAAM,GAAM,IAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,GAAM,GACxE,IAAM,IAAM,IAAM,IAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,EACpE,CAAC,EAEKC,EACJ,gcACIC,EAAoB,IAAI,WAAW,CACvC,EAAM,IAAM,EAAM,EAAM,GAAM,IAAM,EAAM,EAAM,GAAM,IAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,IAAM,GACxE,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IACxE,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GACxE,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GACxE,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IACxE,IAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IAAM,IACxE,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GACxE,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IACxE,GAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IAAM,IACxE,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,GAAM,IAAM,IAAM,GAAM,GAAM,GAAM,IACxE,IAAM,IAAM,IAAM,GAAM,GAAM,GAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IACxE,GAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IACxE,IAAM,GAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IACxE,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GACxE,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,GAAM,IAAM,GACxE,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GACxE,IAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IACxE,GAAM,IAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,GACxE,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,GAAM,GAAM,GAAM,IAAM,IACxE,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GACxE,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IACxE,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GACxE,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IACxE,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IACxE,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IACxE,IAAM,IAAM,IAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,GAAM,IACxE,GAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,GAAM,GAAM,IAAM,GAAM,IACxE,IAAM,IAAM,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",
6
+ "names": ["CommandResultFactory", "InvalidStatusWordError", "Just", "Nothing", "SignPersonalMessageCommand", "makeDeviceActionInternalApiMock", "SendSignPersonalMessageTask", "SEND_MESSAGE_HELLO_WORLD", "SEND_MESSAGE_HELLO_WORLD_BYTES", "SEND_MESSAGE_HELLO_WORLD_DATA", "MESSAGE_LONG", "MESSAGE_LONG_DATA", "apiMock", "signature", "resultOk", "resultNothing", "args", "result"]
7
+ }
@@ -1,49 +1,2 @@
1
- import { APDU_MAX_PAYLOAD, ByteArrayBuilder, CommandResultFactory, InvalidStatusWordError, isSuccessCommandResult, } from "@ledgerhq/device-management-kit";
2
- import { Nothing } from "purify-ts";
3
- import { SignTransactionCommand, } from "../../app-binder/command/SignTransactionCommand";
4
- import { DerivationPathUtils } from "../../shared/utils/DerivationPathUtils";
5
- const PATH_SIZE = 4;
6
- export class SendSignTransactionTask {
7
- api;
8
- args;
9
- constructor(api, args) {
10
- this.api = api;
11
- this.args = args;
12
- }
13
- async run() {
14
- const { derivationPath, serializedTransaction } = this.args;
15
- const paths = DerivationPathUtils.splitPath(derivationPath);
16
- const builder = new ByteArrayBuilder(serializedTransaction.length + 1 + paths.length * PATH_SIZE);
17
- // add the derivation paths length
18
- builder.add8BitUIntToData(paths.length);
19
- // add every derivation path
20
- paths.forEach((path) => {
21
- builder.add32BitUIntToData(path);
22
- });
23
- // add the transaction
24
- builder.addBufferToData(serializedTransaction);
25
- const buffer = builder.build();
26
- let result = CommandResultFactory({
27
- data: Nothing,
28
- });
29
- // Split the buffer into chunks
30
- for (let i = 0; i < buffer.length; i += APDU_MAX_PAYLOAD) {
31
- result = await this.api.sendCommand(new SignTransactionCommand({
32
- serializedTransaction: buffer.slice(i, i + APDU_MAX_PAYLOAD),
33
- isFirstChunk: i === 0,
34
- }));
35
- if (!isSuccessCommandResult(result)) {
36
- return result;
37
- }
38
- }
39
- if (isSuccessCommandResult(result) && result.data.isJust()) {
40
- return CommandResultFactory({
41
- data: result.data.extract(),
42
- });
43
- }
44
- return CommandResultFactory({
45
- error: new InvalidStatusWordError("no signature returned"),
46
- });
47
- }
48
- }
49
- //# sourceMappingURL=SendSignTransactionTask.js.map
1
+ import{APDU_MAX_PAYLOAD as u,ByteArrayBuilder as g,CommandResultFactory as d,hexaStringToBuffer as y,InvalidStatusWordError as h,isSuccessCommandResult as p}from"@ledgerhq/device-management-kit";import{DerivationPathUtils as T}from"@ledgerhq/signer-utils";import{decodeRlp as A,encodeRlp as S}from"ethers";import{Nothing as C}from"purify-ts";import{TransactionType as f}from"../../../api/model/TransactionType";import{SignTransactionCommand as I}from"../../app-binder/command/SignTransactionCommand";import{StartTransactionCommand as U}from"../../app-binder/command/StartTransactionCommand";const v=4;class B{constructor(o,e){this.api=o;this.args=e}async run(){if(!this.args.isLegacy){const t=await this.api.sendCommand(new U);return p(t)?this.recoverSignature(t.data).mapOrDefault(s=>d({data:s}),d({error:new h("no signature returned")})):t}const{derivationPath:o,serializedTransaction:e}=this.args,n=T.splitPath(o),r=new g(e.length+1+n.length*v);r.add8BitUIntToData(n.length),n.forEach(t=>{r.add32BitUIntToData(t)});const i=r.build(),a=this.getChunks(i,e);let c=C;for(let t=0;t<a.length;t++){const s=await this.api.sendCommand(new I({serializedTransaction:a[t],isFirstChunk:t===0}));if(!p(s))return s;c=s.data}return this.recoverSignature(c).mapOrDefault(t=>d({data:t}),d({error:new h("no signature returned")}))}getChunks(o,e){const n=Uint8Array.from([...o,...e]);let r=u;if(n.length<=r)return[n];if(this.args.transactionType===f.LEGACY)try{const c=A(e);if(Array.isArray(c)){const t=c.slice(-3),s=S(t),m=y(s).subarray(1);for(r=u;r>o.length;r--){const l=n.length%r;if(l===0||l>m.length)break}}}catch{r=u}let i=0;const a=[];for(;i<n.length;)a.push(n.slice(i,i+r)),i+=r;return a}recoverSignature(o){return o.map(({v:e,r:n,s:r})=>{if(this.args.transactionType!==f.LEGACY)return{v:e,r:n,s:r};const i=4294967295;let a=this.args.chainId;for(;a>i;)a=a>>8;const t=a*2+35&255;return{v:(e==t?0:1)+this.args.chainId*2+35,r:n,s:r}})}}export{B as SendSignTransactionTask};
2
+ //# sourceMappingURL=SendSignTransactionTask.js.map