@ledgerhq/device-signer-kit-ethereum 1.0.0 → 1.1.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 (997) hide show
  1. package/README.md +19 -19
  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/Transaction.js +2 -3
  27. package/lib/cjs/api/model/Transaction.js.map +7 -1
  28. package/lib/cjs/api/model/TransactionOptions.js +2 -3
  29. package/lib/cjs/api/model/TransactionOptions.js.map +7 -1
  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/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.js +2 -161
  125. package/lib/cjs/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.js.map +7 -1
  126. package/lib/cjs/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.test.js +2 -0
  127. package/lib/cjs/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.test.js.map +7 -0
  128. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js +2 -285
  129. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js.map +7 -1
  130. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js +2 -0
  131. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js.map +7 -0
  132. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js +2 -245
  133. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js.map +7 -1
  134. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js +2 -0
  135. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js.map +7 -0
  136. package/lib/cjs/internal/app-binder/device-action/__test-utils__/makeInternalApi.js +2 -18
  137. package/lib/cjs/internal/app-binder/device-action/__test-utils__/makeInternalApi.js.map +7 -1
  138. package/lib/cjs/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js +2 -31
  139. package/lib/cjs/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js.map +7 -1
  140. package/lib/cjs/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js +2 -35
  141. package/lib/cjs/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js.map +7 -1
  142. package/lib/cjs/internal/app-binder/di/appBinderModule.js +2 -11
  143. package/lib/cjs/internal/app-binder/di/appBinderModule.js.map +7 -1
  144. package/lib/cjs/internal/app-binder/di/appBinderTypes.js +2 -7
  145. package/lib/cjs/internal/app-binder/di/appBinderTypes.js.map +7 -1
  146. package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.js +2 -72
  147. package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.js.map +7 -1
  148. package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.test.js +2 -0
  149. package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.test.js.map +7 -0
  150. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.js +2 -31
  151. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.js.map +7 -1
  152. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.test.js +2 -0
  153. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.test.js.map +7 -0
  154. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.js +2 -188
  155. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.js.map +7 -1
  156. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.test.js +2 -0
  157. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.test.js.map +7 -0
  158. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.js +2 -112
  159. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.js.map +7 -1
  160. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.test.js +2 -0
  161. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.test.js.map +7 -0
  162. package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js +2 -0
  163. package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js.map +7 -0
  164. package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js +2 -0
  165. package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js.map +7 -0
  166. package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.js +2 -0
  167. package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.js.map +7 -0
  168. package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js +2 -0
  169. package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js.map +7 -0
  170. package/lib/cjs/internal/app-binder/task/SendCommandInChunksTask.js +2 -0
  171. package/lib/cjs/internal/app-binder/task/SendCommandInChunksTask.js.map +7 -0
  172. package/lib/cjs/internal/app-binder/task/SendEIP712StructImplemTask.js +2 -42
  173. package/lib/cjs/internal/app-binder/task/SendEIP712StructImplemTask.js.map +7 -1
  174. package/lib/cjs/internal/app-binder/task/SendEIP712StructImplemTask.test.js +2 -0
  175. package/lib/cjs/internal/app-binder/task/SendEIP712StructImplemTask.test.js.map +7 -0
  176. package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.js +2 -0
  177. package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.js.map +7 -0
  178. package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.test.js +2 -0
  179. package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.test.js.map +7 -0
  180. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.js +2 -53
  181. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.js.map +7 -1
  182. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.test.js +2 -0
  183. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.test.js.map +7 -0
  184. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.js +2 -53
  185. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.js.map +7 -1
  186. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.test.js +2 -0
  187. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.test.js.map +7 -0
  188. package/lib/cjs/internal/di.js +2 -27
  189. package/lib/cjs/internal/di.js.map +7 -1
  190. package/lib/cjs/internal/externalTypes.js +2 -9
  191. package/lib/cjs/internal/externalTypes.js.map +7 -1
  192. package/lib/cjs/internal/message/di/messageModule.js +2 -11
  193. package/lib/cjs/internal/message/di/messageModule.js.map +7 -1
  194. package/lib/cjs/internal/message/di/messageModule.test.js +2 -0
  195. package/lib/cjs/internal/message/di/messageModule.test.js.map +7 -0
  196. package/lib/cjs/internal/message/di/messageTypes.js +2 -7
  197. package/lib/cjs/internal/message/di/messageTypes.js.map +7 -1
  198. package/lib/cjs/internal/message/use-case/SignMessageUseCase.js +2 -38
  199. package/lib/cjs/internal/message/use-case/SignMessageUseCase.js.map +7 -1
  200. package/lib/cjs/internal/message/use-case/SignMessageUseCase.test.js +2 -0
  201. package/lib/cjs/internal/message/use-case/SignMessageUseCase.test.js.map +7 -0
  202. package/lib/cjs/internal/shared/utils/PayloadUtils.js +2 -0
  203. package/lib/cjs/internal/shared/utils/PayloadUtils.js.map +7 -0
  204. package/lib/cjs/internal/shared/utils/PayloadUtils.test.js +2 -0
  205. package/lib/cjs/internal/shared/utils/PayloadUtils.test.js.map +7 -0
  206. package/lib/cjs/internal/transaction/di/transactionModule.js +2 -17
  207. package/lib/cjs/internal/transaction/di/transactionModule.js.map +7 -1
  208. package/lib/cjs/internal/transaction/di/transactionModule.test.js +2 -0
  209. package/lib/cjs/internal/transaction/di/transactionModule.test.js.map +7 -0
  210. package/lib/cjs/internal/transaction/di/transactionTypes.js +2 -9
  211. package/lib/cjs/internal/transaction/di/transactionTypes.js.map +7 -1
  212. package/lib/cjs/internal/transaction/service/mapper/EthersV5TransactionMapper.js +2 -60
  213. package/lib/cjs/internal/transaction/service/mapper/EthersV5TransactionMapper.js.map +7 -1
  214. package/lib/cjs/internal/transaction/service/mapper/EthersV5TransactionMapper.test.js +2 -0
  215. package/lib/cjs/internal/transaction/service/mapper/EthersV5TransactionMapper.test.js.map +7 -0
  216. package/lib/cjs/internal/transaction/service/mapper/EthersV6TransactionMapper.js +2 -36
  217. package/lib/cjs/internal/transaction/service/mapper/EthersV6TransactionMapper.js.map +7 -1
  218. package/lib/cjs/internal/transaction/service/mapper/EthersV6TransactionMapper.test.js +2 -0
  219. package/lib/cjs/internal/transaction/service/mapper/EthersV6TransactionMapper.test.js.map +7 -0
  220. package/lib/cjs/internal/transaction/service/mapper/TransactionMapper.js +2 -3
  221. package/lib/cjs/internal/transaction/service/mapper/TransactionMapper.js.map +7 -1
  222. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.js +2 -41
  223. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.js.map +7 -1
  224. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.test.js +2 -0
  225. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.test.js.map +7 -0
  226. package/lib/cjs/internal/transaction/service/mapper/model/TransactionMapperResult.js +2 -3
  227. package/lib/cjs/internal/transaction/service/mapper/model/TransactionMapperResult.js.map +7 -1
  228. package/lib/cjs/internal/transaction/service/parser/TransactionParserService.js +2 -0
  229. package/lib/cjs/internal/transaction/service/parser/TransactionParserService.js.map +7 -0
  230. package/lib/cjs/internal/transaction/service/parser/TransactionParserService.test.js +2 -0
  231. package/lib/cjs/internal/transaction/service/parser/TransactionParserService.test.js.map +7 -0
  232. package/lib/cjs/internal/transaction/use-case/SignTransactionUseCase.js +2 -38
  233. package/lib/cjs/internal/transaction/use-case/SignTransactionUseCase.js.map +7 -1
  234. package/lib/cjs/internal/transaction/use-case/SignTransactionUseCase.test.js +2 -0
  235. package/lib/cjs/internal/transaction/use-case/SignTransactionUseCase.test.js.map +7 -0
  236. package/lib/cjs/internal/typed-data/di/typedDataModule.js +2 -13
  237. package/lib/cjs/internal/typed-data/di/typedDataModule.js.map +7 -1
  238. package/lib/cjs/internal/typed-data/di/typedDataModule.test.js +2 -0
  239. package/lib/cjs/internal/typed-data/di/typedDataModule.test.js.map +7 -0
  240. package/lib/cjs/internal/typed-data/di/typedDataTypes.js +2 -8
  241. package/lib/cjs/internal/typed-data/di/typedDataTypes.js.map +7 -1
  242. package/lib/cjs/internal/typed-data/model/Types.js +2 -64
  243. package/lib/cjs/internal/typed-data/model/Types.js.map +7 -1
  244. package/lib/cjs/internal/typed-data/service/DefaultTypedDataParserService.js +2 -29
  245. package/lib/cjs/internal/typed-data/service/DefaultTypedDataParserService.js.map +7 -1
  246. package/lib/cjs/internal/typed-data/service/TypedDataEncoder.js +2 -101
  247. package/lib/cjs/internal/typed-data/service/TypedDataEncoder.js.map +7 -1
  248. package/lib/cjs/internal/typed-data/service/TypedDataEncoder.test.js +2 -0
  249. package/lib/cjs/internal/typed-data/service/TypedDataEncoder.test.js.map +7 -0
  250. package/lib/cjs/internal/typed-data/service/TypedDataParser.js +2 -211
  251. package/lib/cjs/internal/typed-data/service/TypedDataParser.js.map +7 -1
  252. package/lib/cjs/internal/typed-data/service/TypedDataParser.test.js +2 -0
  253. package/lib/cjs/internal/typed-data/service/TypedDataParser.test.js.map +7 -0
  254. package/lib/cjs/internal/typed-data/service/TypedDataParserService.js +2 -3
  255. package/lib/cjs/internal/typed-data/service/TypedDataParserService.js.map +7 -1
  256. package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.js +2 -42
  257. package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.js.map +7 -1
  258. package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.test.js +2 -0
  259. package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.test.js.map +7 -0
  260. package/lib/cjs/package.json +63 -0
  261. package/lib/esm/api/SignerEth.js +1 -0
  262. package/lib/esm/api/SignerEth.js.map +7 -0
  263. package/lib/esm/api/SignerEthBuilder.js +2 -0
  264. package/lib/esm/api/SignerEthBuilder.js.map +7 -0
  265. package/lib/esm/api/SignerEthBuilder.test.js +2 -0
  266. package/lib/esm/api/SignerEthBuilder.test.js.map +7 -0
  267. package/lib/esm/api/app-binder/GetAddressCommandTypes.js +1 -2
  268. package/lib/esm/api/app-binder/GetAddressCommandTypes.js.map +7 -1
  269. package/lib/esm/api/app-binder/GetAddressDeviceActionTypes.js +1 -2
  270. package/lib/esm/api/app-binder/GetAddressDeviceActionTypes.js.map +7 -1
  271. package/lib/esm/api/app-binder/SignPersonalMessageDeviceActionTypes.js +1 -2
  272. package/lib/esm/api/app-binder/SignPersonalMessageDeviceActionTypes.js.map +7 -1
  273. package/lib/esm/api/app-binder/SignTransactionDeviceActionTypes.js +1 -2
  274. package/lib/esm/api/app-binder/SignTransactionDeviceActionTypes.js.map +7 -1
  275. package/lib/esm/api/app-binder/SignTypedDataDeviceActionTypes.js +1 -2
  276. package/lib/esm/api/app-binder/SignTypedDataDeviceActionTypes.js.map +7 -1
  277. package/lib/esm/api/index.js +2 -10
  278. package/lib/esm/api/index.js.map +7 -1
  279. package/lib/esm/api/model/Address.js +1 -2
  280. package/lib/esm/api/model/Address.js.map +7 -1
  281. package/lib/esm/api/model/AddressOptions.js +1 -2
  282. package/lib/esm/api/model/AddressOptions.js.map +7 -1
  283. package/lib/esm/api/model/Signature.js +1 -2
  284. package/lib/esm/api/model/Signature.js.map +7 -1
  285. package/lib/esm/api/model/Transaction.js +2 -2
  286. package/lib/esm/api/model/Transaction.js.map +7 -1
  287. package/lib/esm/api/model/TransactionOptions.js +1 -2
  288. package/lib/esm/api/model/TransactionOptions.js.map +7 -1
  289. package/lib/esm/api/model/TypedData.js +1 -3
  290. package/lib/esm/api/model/TypedData.js.map +7 -1
  291. package/lib/esm/index.js +2 -4
  292. package/lib/esm/index.js.map +7 -1
  293. package/lib/esm/internal/DefaultSignerEth.js +2 -0
  294. package/lib/esm/internal/DefaultSignerEth.js.map +7 -0
  295. package/lib/esm/internal/DefaultSignerEth.test.js +2 -0
  296. package/lib/esm/internal/DefaultSignerEth.test.js.map +7 -0
  297. package/lib/esm/internal/address/di/addressModule.js +2 -7
  298. package/lib/esm/internal/address/di/addressModule.js.map +7 -1
  299. package/lib/esm/internal/address/di/addressModule.test.js +2 -0
  300. package/lib/esm/internal/address/di/addressModule.test.js.map +7 -0
  301. package/lib/esm/internal/address/di/addressTypes.js +2 -4
  302. package/lib/esm/internal/address/di/addressTypes.js.map +7 -1
  303. package/lib/esm/internal/address/use-case/GetAddressUseCase.js +2 -35
  304. package/lib/esm/internal/address/use-case/GetAddressUseCase.js.map +7 -1
  305. package/lib/esm/internal/address/use-case/GetAddressUseCase.test.js +2 -0
  306. package/lib/esm/internal/address/use-case/GetAddressUseCase.test.js.map +7 -0
  307. package/lib/esm/internal/app-binder/EthAppBinder.js +2 -97
  308. package/lib/esm/internal/app-binder/EthAppBinder.js.map +7 -1
  309. package/lib/esm/internal/app-binder/EthAppBinder.test.js +2 -0
  310. package/lib/esm/internal/app-binder/EthAppBinder.test.js.map +7 -0
  311. package/lib/esm/internal/app-binder/command/GetAddressCommand.js +2 -84
  312. package/lib/esm/internal/app-binder/command/GetAddressCommand.js.map +7 -1
  313. package/lib/esm/internal/app-binder/command/GetAddressCommand.test.js +2 -0
  314. package/lib/esm/internal/app-binder/command/GetAddressCommand.test.js.map +7 -0
  315. package/lib/esm/internal/app-binder/command/GetChallengeCommand.js +2 -35
  316. package/lib/esm/internal/app-binder/command/GetChallengeCommand.js.map +7 -1
  317. package/lib/esm/internal/app-binder/command/GetChallengeCommand.test.js +2 -0
  318. package/lib/esm/internal/app-binder/command/GetChallengeCommand.test.js.map +7 -0
  319. package/lib/esm/internal/app-binder/command/ProvideEnumCommand.js +2 -0
  320. package/lib/esm/internal/app-binder/command/ProvideEnumCommand.js.map +7 -0
  321. package/lib/esm/internal/app-binder/command/ProvideEnumCommand.test.js +2 -0
  322. package/lib/esm/internal/app-binder/command/ProvideEnumCommand.test.js.map +7 -0
  323. package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.js +2 -46
  324. package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.js.map +7 -1
  325. package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.test.js +2 -0
  326. package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.test.js.map +7 -0
  327. package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.js +2 -30
  328. package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.js.map +7 -1
  329. package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.test.js +2 -0
  330. package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.test.js.map +7 -0
  331. package/lib/esm/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.js +2 -0
  332. package/lib/esm/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.js.map +7 -0
  333. package/lib/esm/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.js +2 -0
  334. package/lib/esm/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.js.map +7 -0
  335. package/lib/esm/internal/app-binder/command/ProvideTransactionInformationCommand.js +2 -0
  336. package/lib/esm/internal/app-binder/command/ProvideTransactionInformationCommand.js.map +7 -0
  337. package/lib/esm/internal/app-binder/command/ProvideTransactionInformationCommand.test.js +2 -0
  338. package/lib/esm/internal/app-binder/command/ProvideTransactionInformationCommand.test.js.map +7 -0
  339. package/lib/esm/internal/app-binder/command/ProvideTrustedNameCommand.js +2 -0
  340. package/lib/esm/internal/app-binder/command/ProvideTrustedNameCommand.js.map +7 -0
  341. package/lib/esm/internal/app-binder/command/ProvideTrustedNameCommand.test.js +2 -0
  342. package/lib/esm/internal/app-binder/command/ProvideTrustedNameCommand.test.js.map +7 -0
  343. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.js +2 -65
  344. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.js.map +7 -1
  345. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.test.js +2 -0
  346. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.test.js.map +7 -0
  347. package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.js +2 -127
  348. package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.js.map +7 -1
  349. package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.js +2 -0
  350. package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.js.map +7 -0
  351. package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.js +2 -47
  352. package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.js.map +7 -1
  353. package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.test.js +2 -0
  354. package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.test.js.map +7 -0
  355. package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.js +2 -52
  356. package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.js.map +7 -1
  357. package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.test.js +7 -0
  358. package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.test.js.map +7 -0
  359. package/lib/esm/internal/app-binder/command/SetPluginCommand.js +2 -47
  360. package/lib/esm/internal/app-binder/command/SetPluginCommand.js.map +7 -1
  361. package/lib/esm/internal/app-binder/command/SetPluginCommand.test.js +6 -0
  362. package/lib/esm/internal/app-binder/command/SetPluginCommand.test.js.map +7 -0
  363. package/lib/esm/internal/app-binder/command/SignEIP712Command.js +2 -65
  364. package/lib/esm/internal/app-binder/command/SignEIP712Command.js.map +7 -1
  365. package/lib/esm/internal/app-binder/command/SignEIP712Command.test.js +2 -0
  366. package/lib/esm/internal/app-binder/command/SignEIP712Command.test.js.map +7 -0
  367. package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.js +2 -56
  368. package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.js.map +7 -1
  369. package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.test.js +2 -0
  370. package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.test.js.map +7 -0
  371. package/lib/esm/internal/app-binder/command/SignTransactionCommand.js +2 -55
  372. package/lib/esm/internal/app-binder/command/SignTransactionCommand.js.map +7 -1
  373. package/lib/esm/internal/app-binder/command/SignTransactionCommand.test.js +2 -0
  374. package/lib/esm/internal/app-binder/command/SignTransactionCommand.test.js.map +7 -0
  375. package/lib/esm/internal/app-binder/command/StartTransactionCommand.js +2 -0
  376. package/lib/esm/internal/app-binder/command/StartTransactionCommand.js.map +7 -0
  377. package/lib/esm/internal/app-binder/command/StartTransactionCommand.test.js +2 -0
  378. package/lib/esm/internal/app-binder/command/StartTransactionCommand.test.js.map +7 -0
  379. package/lib/esm/internal/app-binder/command/StoreTransactionCommand.js +2 -0
  380. package/lib/esm/internal/app-binder/command/StoreTransactionCommand.js.map +7 -0
  381. package/lib/esm/internal/app-binder/command/StoreTransactionCommand.test.js +2 -0
  382. package/lib/esm/internal/app-binder/command/StoreTransactionCommand.test.js.map +7 -0
  383. package/lib/esm/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.js +2 -157
  384. package/lib/esm/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.js.map +7 -1
  385. package/lib/esm/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.test.js +2 -0
  386. package/lib/esm/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.test.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/EthersV5TransactionMapper.js +2 -57
  472. package/lib/esm/internal/transaction/service/mapper/EthersV5TransactionMapper.js.map +7 -1
  473. package/lib/esm/internal/transaction/service/mapper/EthersV5TransactionMapper.test.js +2 -0
  474. package/lib/esm/internal/transaction/service/mapper/EthersV5TransactionMapper.test.js.map +7 -0
  475. package/lib/esm/internal/transaction/service/mapper/EthersV6TransactionMapper.js +2 -33
  476. package/lib/esm/internal/transaction/service/mapper/EthersV6TransactionMapper.js.map +7 -1
  477. package/lib/esm/internal/transaction/service/mapper/EthersV6TransactionMapper.test.js +2 -0
  478. package/lib/esm/internal/transaction/service/mapper/EthersV6TransactionMapper.test.js.map +7 -0
  479. package/lib/esm/internal/transaction/service/mapper/TransactionMapper.js +1 -2
  480. package/lib/esm/internal/transaction/service/mapper/TransactionMapper.js.map +7 -1
  481. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.js +2 -38
  482. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.js.map +7 -1
  483. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.test.js +2 -0
  484. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.test.js.map +7 -0
  485. package/lib/esm/internal/transaction/service/mapper/model/TransactionMapperResult.js +1 -2
  486. package/lib/esm/internal/transaction/service/mapper/model/TransactionMapperResult.js.map +7 -1
  487. package/lib/esm/internal/transaction/service/parser/TransactionParserService.js +2 -0
  488. package/lib/esm/internal/transaction/service/parser/TransactionParserService.js.map +7 -0
  489. package/lib/esm/internal/transaction/service/parser/TransactionParserService.test.js +2 -0
  490. package/lib/esm/internal/transaction/service/parser/TransactionParserService.test.js.map +7 -0
  491. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.js +2 -35
  492. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.js.map +7 -1
  493. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.test.js +2 -0
  494. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.test.js.map +7 -0
  495. package/lib/esm/internal/typed-data/di/typedDataModule.js +2 -9
  496. package/lib/esm/internal/typed-data/di/typedDataModule.js.map +7 -1
  497. package/lib/esm/internal/typed-data/di/typedDataModule.test.js +2 -0
  498. package/lib/esm/internal/typed-data/di/typedDataModule.test.js.map +7 -0
  499. package/lib/esm/internal/typed-data/di/typedDataTypes.js +2 -5
  500. package/lib/esm/internal/typed-data/di/typedDataTypes.js.map +7 -1
  501. package/lib/esm/internal/typed-data/model/Types.js +2 -55
  502. package/lib/esm/internal/typed-data/model/Types.js.map +7 -1
  503. package/lib/esm/internal/typed-data/service/DefaultTypedDataParserService.js +2 -26
  504. package/lib/esm/internal/typed-data/service/DefaultTypedDataParserService.js.map +7 -1
  505. package/lib/esm/internal/typed-data/service/TypedDataEncoder.js +2 -98
  506. package/lib/esm/internal/typed-data/service/TypedDataEncoder.js.map +7 -1
  507. package/lib/esm/internal/typed-data/service/TypedDataEncoder.test.js +2 -0
  508. package/lib/esm/internal/typed-data/service/TypedDataEncoder.test.js.map +7 -0
  509. package/lib/esm/internal/typed-data/service/TypedDataParser.js +2 -207
  510. package/lib/esm/internal/typed-data/service/TypedDataParser.js.map +7 -1
  511. package/lib/esm/internal/typed-data/service/TypedDataParser.test.js +2 -0
  512. package/lib/esm/internal/typed-data/service/TypedDataParser.test.js.map +7 -0
  513. package/lib/esm/internal/typed-data/service/TypedDataParserService.js +1 -2
  514. package/lib/esm/internal/typed-data/service/TypedDataParserService.js.map +7 -1
  515. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.js +2 -39
  516. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.js.map +7 -1
  517. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.test.js +2 -0
  518. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.test.js.map +7 -0
  519. package/lib/esm/package.json +63 -0
  520. package/lib/types/api/SignerEth.d.ts +15 -0
  521. package/lib/types/api/SignerEth.d.ts.map +1 -0
  522. package/lib/types/api/SignerEthBuilder.d.ts +37 -0
  523. package/lib/types/api/SignerEthBuilder.d.ts.map +1 -0
  524. package/lib/types/api/SignerEthBuilder.test.d.ts +2 -0
  525. package/lib/types/api/SignerEthBuilder.test.d.ts.map +1 -0
  526. package/lib/{cjs → types}/api/app-binder/GetAddressDeviceActionTypes.d.ts +1 -1
  527. package/lib/types/api/app-binder/GetAddressDeviceActionTypes.d.ts.map +1 -0
  528. package/lib/{esm → types}/api/app-binder/SignPersonalMessageDeviceActionTypes.d.ts +3 -3
  529. package/lib/types/api/app-binder/SignPersonalMessageDeviceActionTypes.d.ts.map +1 -0
  530. package/lib/types/api/app-binder/SignTransactionDeviceActionTypes.d.ts +37 -0
  531. package/lib/types/api/app-binder/SignTransactionDeviceActionTypes.d.ts.map +1 -0
  532. package/lib/{cjs → types}/api/app-binder/SignTypedDataDeviceActionTypes.d.ts +5 -5
  533. package/lib/types/api/app-binder/SignTypedDataDeviceActionTypes.d.ts.map +1 -0
  534. package/lib/{cjs → types}/api/index.d.ts +2 -2
  535. package/lib/{cjs → types}/api/index.d.ts.map +1 -1
  536. package/lib/types/api/model/Address.d.ts +7 -0
  537. package/lib/types/api/model/Address.d.ts.map +1 -0
  538. package/lib/types/api/model/Signature.d.ts +7 -0
  539. package/lib/types/api/model/Signature.d.ts.map +1 -0
  540. package/lib/types/api/model/Transaction.d.ts +14 -0
  541. package/lib/types/api/model/Transaction.d.ts.map +1 -0
  542. package/lib/types/internal/DefaultSignerEth.d.ts +26 -0
  543. package/lib/types/internal/DefaultSignerEth.d.ts.map +1 -0
  544. package/lib/types/internal/DefaultSignerEth.test.d.ts +2 -0
  545. package/lib/types/internal/DefaultSignerEth.test.d.ts.map +1 -0
  546. package/lib/types/internal/address/di/addressModule.test.d.ts +2 -0
  547. package/lib/types/internal/address/di/addressModule.test.d.ts.map +1 -0
  548. package/lib/types/internal/address/use-case/GetAddressUseCase.test.d.ts +2 -0
  549. package/lib/types/internal/address/use-case/GetAddressUseCase.test.d.ts.map +1 -0
  550. package/lib/{cjs → types}/internal/app-binder/EthAppBinder.d.ts +6 -4
  551. package/lib/types/internal/app-binder/EthAppBinder.d.ts.map +1 -0
  552. package/lib/types/internal/app-binder/EthAppBinder.test.d.ts +2 -0
  553. package/lib/types/internal/app-binder/EthAppBinder.test.d.ts.map +1 -0
  554. package/lib/{cjs → types}/internal/app-binder/command/GetAddressCommand.d.ts +2 -2
  555. package/lib/types/internal/app-binder/command/GetAddressCommand.d.ts.map +1 -0
  556. package/lib/types/internal/app-binder/command/GetAddressCommand.test.d.ts +2 -0
  557. package/lib/types/internal/app-binder/command/GetAddressCommand.test.d.ts.map +1 -0
  558. package/lib/{esm → types}/internal/app-binder/command/GetChallengeCommand.d.ts +1 -1
  559. package/lib/types/internal/app-binder/command/GetChallengeCommand.d.ts.map +1 -0
  560. package/lib/types/internal/app-binder/command/GetChallengeCommand.test.d.ts +2 -0
  561. package/lib/types/internal/app-binder/command/GetChallengeCommand.test.d.ts.map +1 -0
  562. package/lib/types/internal/app-binder/command/ProvideEnumCommand.d.ts +18 -0
  563. package/lib/types/internal/app-binder/command/ProvideEnumCommand.d.ts.map +1 -0
  564. package/lib/types/internal/app-binder/command/ProvideEnumCommand.test.d.ts +2 -0
  565. package/lib/types/internal/app-binder/command/ProvideEnumCommand.test.d.ts.map +1 -0
  566. package/lib/{cjs → types}/internal/app-binder/command/ProvideNFTInformationCommand.d.ts +1 -1
  567. package/lib/types/internal/app-binder/command/ProvideNFTInformationCommand.d.ts.map +1 -0
  568. package/lib/types/internal/app-binder/command/ProvideNFTInformationCommand.test.d.ts +2 -0
  569. package/lib/types/internal/app-binder/command/ProvideNFTInformationCommand.test.d.ts.map +1 -0
  570. package/lib/{cjs → types}/internal/app-binder/command/ProvideTokenInformationCommand.d.ts +1 -1
  571. package/lib/types/internal/app-binder/command/ProvideTokenInformationCommand.d.ts.map +1 -0
  572. package/lib/types/internal/app-binder/command/ProvideTokenInformationCommand.test.d.ts +2 -0
  573. package/lib/types/internal/app-binder/command/ProvideTokenInformationCommand.test.d.ts.map +1 -0
  574. package/lib/types/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.d.ts +18 -0
  575. package/lib/types/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.d.ts.map +1 -0
  576. package/lib/types/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.d.ts +2 -0
  577. package/lib/types/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.d.ts.map +1 -0
  578. package/lib/types/internal/app-binder/command/ProvideTransactionInformationCommand.d.ts +18 -0
  579. package/lib/types/internal/app-binder/command/ProvideTransactionInformationCommand.d.ts.map +1 -0
  580. package/lib/types/internal/app-binder/command/ProvideTransactionInformationCommand.test.d.ts +2 -0
  581. package/lib/types/internal/app-binder/command/ProvideTransactionInformationCommand.test.d.ts.map +1 -0
  582. package/lib/types/internal/app-binder/command/ProvideTrustedNameCommand.d.ts +19 -0
  583. package/lib/types/internal/app-binder/command/ProvideTrustedNameCommand.d.ts.map +1 -0
  584. package/lib/types/internal/app-binder/command/ProvideTrustedNameCommand.test.d.ts +2 -0
  585. package/lib/types/internal/app-binder/command/ProvideTrustedNameCommand.test.d.ts.map +1 -0
  586. package/lib/{cjs → types}/internal/app-binder/command/SendEIP712FilteringCommand.d.ts +9 -1
  587. package/lib/types/internal/app-binder/command/SendEIP712FilteringCommand.d.ts.map +1 -0
  588. package/lib/types/internal/app-binder/command/SendEIP712FilteringCommand.test.d.ts +2 -0
  589. package/lib/types/internal/app-binder/command/SendEIP712FilteringCommand.test.d.ts.map +1 -0
  590. package/lib/{esm → types}/internal/app-binder/command/SendEIP712StructDefinitionCommand.d.ts +1 -1
  591. package/lib/types/internal/app-binder/command/SendEIP712StructDefinitionCommand.d.ts.map +1 -0
  592. package/lib/types/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.d.ts +2 -0
  593. package/lib/types/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.d.ts.map +1 -0
  594. package/lib/{esm → types}/internal/app-binder/command/SendEIP712StructImplemCommand.d.ts +1 -1
  595. package/lib/types/internal/app-binder/command/SendEIP712StructImplemCommand.d.ts.map +1 -0
  596. package/lib/types/internal/app-binder/command/SendEIP712StructImplemCommand.test.d.ts +2 -0
  597. package/lib/types/internal/app-binder/command/SendEIP712StructImplemCommand.test.d.ts.map +1 -0
  598. package/lib/{esm → types}/internal/app-binder/command/SetExternalPluginCommand.d.ts +1 -1
  599. package/lib/types/internal/app-binder/command/SetExternalPluginCommand.d.ts.map +1 -0
  600. package/lib/types/internal/app-binder/command/SetExternalPluginCommand.test.d.ts +2 -0
  601. package/lib/types/internal/app-binder/command/SetExternalPluginCommand.test.d.ts.map +1 -0
  602. package/lib/{cjs → types}/internal/app-binder/command/SetPluginCommand.d.ts +1 -1
  603. package/lib/types/internal/app-binder/command/SetPluginCommand.d.ts.map +1 -0
  604. package/lib/types/internal/app-binder/command/SetPluginCommand.test.d.ts +2 -0
  605. package/lib/types/internal/app-binder/command/SetPluginCommand.test.d.ts.map +1 -0
  606. package/lib/{esm → types}/internal/app-binder/command/SignEIP712Command.d.ts +2 -2
  607. package/lib/types/internal/app-binder/command/SignEIP712Command.d.ts.map +1 -0
  608. package/lib/types/internal/app-binder/command/SignEIP712Command.test.d.ts +2 -0
  609. package/lib/types/internal/app-binder/command/SignEIP712Command.test.d.ts.map +1 -0
  610. package/lib/{cjs → types}/internal/app-binder/command/SignPersonalMessageCommand.d.ts +3 -3
  611. package/lib/types/internal/app-binder/command/SignPersonalMessageCommand.d.ts.map +1 -0
  612. package/lib/types/internal/app-binder/command/SignPersonalMessageCommand.test.d.ts +2 -0
  613. package/lib/types/internal/app-binder/command/SignPersonalMessageCommand.test.d.ts.map +1 -0
  614. package/lib/{esm → types}/internal/app-binder/command/SignTransactionCommand.d.ts +2 -2
  615. package/lib/types/internal/app-binder/command/SignTransactionCommand.d.ts.map +1 -0
  616. package/lib/types/internal/app-binder/command/SignTransactionCommand.test.d.ts +2 -0
  617. package/lib/types/internal/app-binder/command/SignTransactionCommand.test.d.ts.map +1 -0
  618. package/lib/types/internal/app-binder/command/StartTransactionCommand.d.ts +12 -0
  619. package/lib/types/internal/app-binder/command/StartTransactionCommand.d.ts.map +1 -0
  620. package/lib/types/internal/app-binder/command/StartTransactionCommand.test.d.ts +2 -0
  621. package/lib/types/internal/app-binder/command/StartTransactionCommand.test.d.ts.map +1 -0
  622. package/lib/types/internal/app-binder/command/StoreTransactionCommand.d.ts +23 -0
  623. package/lib/types/internal/app-binder/command/StoreTransactionCommand.d.ts.map +1 -0
  624. package/lib/types/internal/app-binder/command/StoreTransactionCommand.test.d.ts +2 -0
  625. package/lib/types/internal/app-binder/command/StoreTransactionCommand.test.d.ts.map +1 -0
  626. package/lib/{esm → types}/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.d.ts +4 -4
  627. package/lib/types/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.d.ts.map +1 -0
  628. package/lib/types/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.test.d.ts +2 -0
  629. package/lib/types/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.test.d.ts.map +1 -0
  630. package/lib/types/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts +54 -0
  631. package/lib/types/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts.map +1 -0
  632. package/lib/types/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.d.ts +2 -0
  633. package/lib/types/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.d.ts.map +1 -0
  634. package/lib/{cjs → types}/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts +6 -6
  635. package/lib/types/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts.map +1 -0
  636. package/lib/types/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.d.ts +2 -0
  637. package/lib/types/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.d.ts.map +1 -0
  638. package/lib/types/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts +3 -0
  639. package/lib/{cjs → types}/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts.map +1 -1
  640. package/lib/{cjs → types}/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts +2 -2
  641. package/lib/types/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts.map +1 -0
  642. package/lib/{cjs → types}/internal/app-binder/task/BuildEIP712ContextTask.d.ts.map +1 -1
  643. package/lib/types/internal/app-binder/task/BuildEIP712ContextTask.test.d.ts +2 -0
  644. package/lib/types/internal/app-binder/task/BuildEIP712ContextTask.test.d.ts.map +1 -0
  645. package/lib/types/internal/app-binder/task/BuildTransactionContextTask.d.ts +27 -0
  646. package/lib/types/internal/app-binder/task/BuildTransactionContextTask.d.ts.map +1 -0
  647. package/lib/types/internal/app-binder/task/BuildTransactionContextTask.test.d.ts +2 -0
  648. package/lib/types/internal/app-binder/task/BuildTransactionContextTask.test.d.ts.map +1 -0
  649. package/lib/types/internal/app-binder/task/ProvideEIP712ContextTask.d.ts +28 -0
  650. package/lib/types/internal/app-binder/task/ProvideEIP712ContextTask.d.ts.map +1 -0
  651. package/lib/types/internal/app-binder/task/ProvideEIP712ContextTask.test.d.ts +2 -0
  652. package/lib/types/internal/app-binder/task/ProvideEIP712ContextTask.test.d.ts.map +1 -0
  653. package/lib/{esm → types}/internal/app-binder/task/ProvideTransactionContextTask.d.ts +7 -24
  654. package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.d.ts.map +1 -0
  655. package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.test.d.ts +2 -0
  656. package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.test.d.ts.map +1 -0
  657. package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.d.ts +38 -0
  658. package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.d.ts.map +1 -0
  659. package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.d.ts +2 -0
  660. package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.d.ts.map +1 -0
  661. package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.d.ts +27 -0
  662. package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.d.ts.map +1 -0
  663. package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.test.d.ts +2 -0
  664. package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.test.d.ts.map +1 -0
  665. package/lib/types/internal/app-binder/task/SendCommandInChunksTask.d.ts +16 -0
  666. package/lib/types/internal/app-binder/task/SendCommandInChunksTask.d.ts.map +1 -0
  667. package/lib/types/internal/app-binder/task/SendEIP712StructImplemTask.test.d.ts +2 -0
  668. package/lib/types/internal/app-binder/task/SendEIP712StructImplemTask.test.d.ts.map +1 -0
  669. package/lib/types/internal/app-binder/task/SendPayloadInChunksTask.d.ts +14 -0
  670. package/lib/types/internal/app-binder/task/SendPayloadInChunksTask.d.ts.map +1 -0
  671. package/lib/types/internal/app-binder/task/SendPayloadInChunksTask.test.d.ts +2 -0
  672. package/lib/types/internal/app-binder/task/SendPayloadInChunksTask.test.d.ts.map +1 -0
  673. package/lib/{esm → types}/internal/app-binder/task/SendSignPersonalMessageTask.d.ts +3 -3
  674. package/lib/types/internal/app-binder/task/SendSignPersonalMessageTask.d.ts.map +1 -0
  675. package/lib/types/internal/app-binder/task/SendSignPersonalMessageTask.test.d.ts +2 -0
  676. package/lib/types/internal/app-binder/task/SendSignPersonalMessageTask.test.d.ts.map +1 -0
  677. package/lib/types/internal/app-binder/task/SendSignTransactionTask.d.ts +20 -0
  678. package/lib/types/internal/app-binder/task/SendSignTransactionTask.d.ts.map +1 -0
  679. package/lib/types/internal/app-binder/task/SendSignTransactionTask.test.d.ts +2 -0
  680. package/lib/types/internal/app-binder/task/SendSignTransactionTask.test.d.ts.map +1 -0
  681. package/lib/types/internal/di.d.ts +10 -0
  682. package/lib/types/internal/di.d.ts.map +1 -0
  683. package/lib/{cjs → types}/internal/externalTypes.d.ts +1 -1
  684. package/lib/types/internal/message/di/messageModule.test.d.ts +2 -0
  685. package/lib/types/internal/message/di/messageModule.test.d.ts.map +1 -0
  686. package/lib/{esm → types}/internal/message/use-case/SignMessageUseCase.d.ts +2 -2
  687. package/lib/{cjs → types}/internal/message/use-case/SignMessageUseCase.d.ts.map +1 -1
  688. package/lib/types/internal/message/use-case/SignMessageUseCase.test.d.ts +2 -0
  689. package/lib/types/internal/message/use-case/SignMessageUseCase.test.d.ts.map +1 -0
  690. package/lib/types/internal/shared/utils/PayloadUtils.d.ts +5 -0
  691. package/lib/types/internal/shared/utils/PayloadUtils.d.ts.map +1 -0
  692. package/lib/types/internal/shared/utils/PayloadUtils.test.d.ts +2 -0
  693. package/lib/types/internal/shared/utils/PayloadUtils.test.d.ts.map +1 -0
  694. package/lib/{cjs → types}/internal/transaction/di/transactionModule.d.ts.map +1 -1
  695. package/lib/types/internal/transaction/di/transactionModule.test.d.ts +2 -0
  696. package/lib/types/internal/transaction/di/transactionModule.test.d.ts.map +1 -0
  697. package/lib/{cjs → types}/internal/transaction/di/transactionTypes.d.ts +1 -0
  698. package/lib/{cjs → types}/internal/transaction/di/transactionTypes.d.ts.map +1 -1
  699. package/lib/{cjs → types}/internal/transaction/service/mapper/EthersV5TransactionMapper.d.ts.map +1 -1
  700. package/lib/types/internal/transaction/service/mapper/EthersV5TransactionMapper.test.d.ts +2 -0
  701. package/lib/types/internal/transaction/service/mapper/EthersV5TransactionMapper.test.d.ts.map +1 -0
  702. package/lib/{esm → types}/internal/transaction/service/mapper/EthersV6TransactionMapper.d.ts +1 -1
  703. package/lib/types/internal/transaction/service/mapper/EthersV6TransactionMapper.d.ts.map +1 -0
  704. package/lib/types/internal/transaction/service/mapper/EthersV6TransactionMapper.test.d.ts +2 -0
  705. package/lib/types/internal/transaction/service/mapper/EthersV6TransactionMapper.test.d.ts.map +1 -0
  706. package/lib/types/internal/transaction/service/mapper/TransactionMapper.d.ts +7 -0
  707. package/lib/types/internal/transaction/service/mapper/TransactionMapper.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/types/internal/transaction/use-case/SignTransactionUseCase.test.d.ts +2 -0
  717. package/lib/types/internal/transaction/use-case/SignTransactionUseCase.test.d.ts.map +1 -0
  718. package/lib/types/internal/typed-data/di/typedDataModule.test.d.ts +2 -0
  719. package/lib/types/internal/typed-data/di/typedDataModule.test.d.ts.map +1 -0
  720. package/lib/{cjs → types}/internal/typed-data/model/Types.d.ts +1 -1
  721. package/lib/types/internal/typed-data/model/Types.d.ts.map +1 -0
  722. package/lib/{esm → types}/internal/typed-data/service/TypedDataEncoder.d.ts +1 -1
  723. package/lib/{cjs → types}/internal/typed-data/service/TypedDataEncoder.d.ts.map +1 -1
  724. package/lib/types/internal/typed-data/service/TypedDataEncoder.test.d.ts +2 -0
  725. package/lib/types/internal/typed-data/service/TypedDataEncoder.test.d.ts.map +1 -0
  726. package/lib/{esm → types}/internal/typed-data/service/TypedDataParser.d.ts +3 -3
  727. package/lib/types/internal/typed-data/service/TypedDataParser.d.ts.map +1 -0
  728. package/lib/types/internal/typed-data/service/TypedDataParser.test.d.ts +2 -0
  729. package/lib/types/internal/typed-data/service/TypedDataParser.test.d.ts.map +1 -0
  730. package/lib/{esm → types}/internal/typed-data/service/TypedDataParserService.d.ts +3 -3
  731. package/lib/types/internal/typed-data/service/TypedDataParserService.d.ts.map +1 -0
  732. package/lib/types/internal/typed-data/use-case/SignTypedDataUseCase.test.d.ts +2 -0
  733. package/lib/types/internal/typed-data/use-case/SignTypedDataUseCase.test.d.ts.map +1 -0
  734. package/lib/types/tsconfig.prod.tsbuildinfo +1 -0
  735. package/package.json +28 -32
  736. package/lib/cjs/api/KeyringEth.d.ts +0 -15
  737. package/lib/cjs/api/KeyringEth.d.ts.map +0 -1
  738. package/lib/cjs/api/KeyringEth.js +0 -3
  739. package/lib/cjs/api/KeyringEth.js.map +0 -1
  740. package/lib/cjs/api/KeyringEthBuilder.d.ts +0 -38
  741. package/lib/cjs/api/KeyringEthBuilder.d.ts.map +0 -1
  742. package/lib/cjs/api/KeyringEthBuilder.js +0 -49
  743. package/lib/cjs/api/KeyringEthBuilder.js.map +0 -1
  744. package/lib/cjs/api/app-binder/GetAddressDeviceActionTypes.d.ts.map +0 -1
  745. package/lib/cjs/api/app-binder/SignPersonalMessageDeviceActionTypes.d.ts +0 -20
  746. package/lib/cjs/api/app-binder/SignPersonalMessageDeviceActionTypes.d.ts.map +0 -1
  747. package/lib/cjs/api/app-binder/SignTransactionDeviceActionTypes.d.ts +0 -31
  748. package/lib/cjs/api/app-binder/SignTransactionDeviceActionTypes.d.ts.map +0 -1
  749. package/lib/cjs/api/app-binder/SignTypedDataDeviceActionTypes.d.ts.map +0 -1
  750. package/lib/cjs/api/model/Address.d.ts +0 -7
  751. package/lib/cjs/api/model/Address.d.ts.map +0 -1
  752. package/lib/cjs/api/model/Signature.d.ts +0 -7
  753. package/lib/cjs/api/model/Signature.d.ts.map +0 -1
  754. package/lib/cjs/api/model/Transaction.d.ts +0 -4
  755. package/lib/cjs/api/model/Transaction.d.ts.map +0 -1
  756. package/lib/cjs/internal/DefaultKeyringEth.d.ts +0 -26
  757. package/lib/cjs/internal/DefaultKeyringEth.d.ts.map +0 -1
  758. package/lib/cjs/internal/DefaultKeyringEth.js +0 -36
  759. package/lib/cjs/internal/DefaultKeyringEth.js.map +0 -1
  760. package/lib/cjs/internal/app-binder/EthAppBinder.d.ts.map +0 -1
  761. package/lib/cjs/internal/app-binder/command/GetAddressCommand.d.ts.map +0 -1
  762. package/lib/cjs/internal/app-binder/command/GetChallengeCommand.d.ts +0 -10
  763. package/lib/cjs/internal/app-binder/command/GetChallengeCommand.d.ts.map +0 -1
  764. package/lib/cjs/internal/app-binder/command/ProvideDomainNameCommand.d.ts +0 -19
  765. package/lib/cjs/internal/app-binder/command/ProvideDomainNameCommand.d.ts.map +0 -1
  766. package/lib/cjs/internal/app-binder/command/ProvideDomainNameCommand.js +0 -41
  767. package/lib/cjs/internal/app-binder/command/ProvideDomainNameCommand.js.map +0 -1
  768. package/lib/cjs/internal/app-binder/command/ProvideNFTInformationCommand.d.ts.map +0 -1
  769. package/lib/cjs/internal/app-binder/command/ProvideTokenInformationCommand.d.ts.map +0 -1
  770. package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.d.ts.map +0 -1
  771. package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.d.ts +0 -25
  772. package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.d.ts.map +0 -1
  773. package/lib/cjs/internal/app-binder/command/SendEIP712StructImplemCommand.d.ts +0 -30
  774. package/lib/cjs/internal/app-binder/command/SendEIP712StructImplemCommand.d.ts.map +0 -1
  775. package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.d.ts +0 -17
  776. package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.d.ts.map +0 -1
  777. package/lib/cjs/internal/app-binder/command/SetPluginCommand.d.ts.map +0 -1
  778. package/lib/cjs/internal/app-binder/command/SignEIP712Command.d.ts +0 -25
  779. package/lib/cjs/internal/app-binder/command/SignEIP712Command.d.ts.map +0 -1
  780. package/lib/cjs/internal/app-binder/command/SignPersonalMessageCommand.d.ts.map +0 -1
  781. package/lib/cjs/internal/app-binder/command/SignTransactionCommand.d.ts +0 -24
  782. package/lib/cjs/internal/app-binder/command/SignTransactionCommand.d.ts.map +0 -1
  783. package/lib/cjs/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.d.ts +0 -17
  784. package/lib/cjs/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.d.ts.map +0 -1
  785. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts +0 -39
  786. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts.map +0 -1
  787. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts.map +0 -1
  788. package/lib/cjs/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts +0 -3
  789. package/lib/cjs/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts.map +0 -1
  790. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.d.ts +0 -21
  791. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.d.ts.map +0 -1
  792. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.d.ts +0 -21
  793. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.d.ts.map +0 -1
  794. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.d.ts +0 -57
  795. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.d.ts.map +0 -1
  796. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.d.ts +0 -14
  797. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.d.ts.map +0 -1
  798. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.d.ts +0 -14
  799. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.d.ts.map +0 -1
  800. package/lib/cjs/internal/di.d.ts +0 -10
  801. package/lib/cjs/internal/di.d.ts.map +0 -1
  802. package/lib/cjs/internal/message/use-case/SignMessageUseCase.d.ts +0 -8
  803. package/lib/cjs/internal/shared/utils/DerivationPathUtils.d.ts +0 -5
  804. package/lib/cjs/internal/shared/utils/DerivationPathUtils.d.ts.map +0 -1
  805. package/lib/cjs/internal/shared/utils/DerivationPathUtils.js +0 -24
  806. package/lib/cjs/internal/shared/utils/DerivationPathUtils.js.map +0 -1
  807. package/lib/cjs/internal/transaction/service/mapper/EthersV6TransactionMapper.d.ts +0 -9
  808. package/lib/cjs/internal/transaction/service/mapper/EthersV6TransactionMapper.d.ts.map +0 -1
  809. package/lib/cjs/internal/transaction/service/mapper/TransactionMapper.d.ts +0 -7
  810. package/lib/cjs/internal/transaction/service/mapper/TransactionMapper.d.ts.map +0 -1
  811. package/lib/cjs/internal/transaction/service/mapper/model/TransactionMapperResult.d.ts +0 -12
  812. package/lib/cjs/internal/transaction/service/mapper/model/TransactionMapperResult.d.ts.map +0 -1
  813. package/lib/cjs/internal/typed-data/model/Types.d.ts.map +0 -1
  814. package/lib/cjs/internal/typed-data/service/TypedDataEncoder.d.ts +0 -10
  815. package/lib/cjs/internal/typed-data/service/TypedDataParser.d.ts +0 -73
  816. package/lib/cjs/internal/typed-data/service/TypedDataParser.d.ts.map +0 -1
  817. package/lib/cjs/internal/typed-data/service/TypedDataParserService.d.ts +0 -12
  818. package/lib/cjs/internal/typed-data/service/TypedDataParserService.d.ts.map +0 -1
  819. package/lib/esm/api/KeyringEth.d.ts +0 -15
  820. package/lib/esm/api/KeyringEth.d.ts.map +0 -1
  821. package/lib/esm/api/KeyringEth.js +0 -2
  822. package/lib/esm/api/KeyringEth.js.map +0 -1
  823. package/lib/esm/api/KeyringEthBuilder.d.ts +0 -38
  824. package/lib/esm/api/KeyringEthBuilder.d.ts.map +0 -1
  825. package/lib/esm/api/KeyringEthBuilder.js +0 -45
  826. package/lib/esm/api/KeyringEthBuilder.js.map +0 -1
  827. package/lib/esm/api/app-binder/GetAddressCommandTypes.d.ts +0 -11
  828. package/lib/esm/api/app-binder/GetAddressCommandTypes.d.ts.map +0 -1
  829. package/lib/esm/api/app-binder/GetAddressDeviceActionTypes.d.ts +0 -9
  830. package/lib/esm/api/app-binder/GetAddressDeviceActionTypes.d.ts.map +0 -1
  831. package/lib/esm/api/app-binder/SignPersonalMessageDeviceActionTypes.d.ts.map +0 -1
  832. package/lib/esm/api/app-binder/SignTransactionDeviceActionTypes.d.ts +0 -31
  833. package/lib/esm/api/app-binder/SignTransactionDeviceActionTypes.d.ts.map +0 -1
  834. package/lib/esm/api/app-binder/SignTypedDataDeviceActionTypes.d.ts +0 -27
  835. package/lib/esm/api/app-binder/SignTypedDataDeviceActionTypes.d.ts.map +0 -1
  836. package/lib/esm/api/index.d.ts +0 -13
  837. package/lib/esm/api/index.d.ts.map +0 -1
  838. package/lib/esm/api/model/Address.d.ts +0 -7
  839. package/lib/esm/api/model/Address.d.ts.map +0 -1
  840. package/lib/esm/api/model/AddressOptions.d.ts +0 -5
  841. package/lib/esm/api/model/AddressOptions.d.ts.map +0 -1
  842. package/lib/esm/api/model/Signature.d.ts +0 -7
  843. package/lib/esm/api/model/Signature.d.ts.map +0 -1
  844. package/lib/esm/api/model/Transaction.d.ts +0 -4
  845. package/lib/esm/api/model/Transaction.d.ts.map +0 -1
  846. package/lib/esm/api/model/TransactionOptions.d.ts +0 -4
  847. package/lib/esm/api/model/TransactionOptions.d.ts.map +0 -1
  848. package/lib/esm/api/model/TypedData.d.ts +0 -18
  849. package/lib/esm/api/model/TypedData.d.ts.map +0 -1
  850. package/lib/esm/index.d.ts +0 -3
  851. package/lib/esm/index.d.ts.map +0 -1
  852. package/lib/esm/internal/DefaultKeyringEth.d.ts +0 -26
  853. package/lib/esm/internal/DefaultKeyringEth.d.ts.map +0 -1
  854. package/lib/esm/internal/DefaultKeyringEth.js +0 -32
  855. package/lib/esm/internal/DefaultKeyringEth.js.map +0 -1
  856. package/lib/esm/internal/address/di/addressModule.d.ts +0 -3
  857. package/lib/esm/internal/address/di/addressModule.d.ts.map +0 -1
  858. package/lib/esm/internal/address/di/addressTypes.d.ts +0 -4
  859. package/lib/esm/internal/address/di/addressTypes.d.ts.map +0 -1
  860. package/lib/esm/internal/address/use-case/GetAddressUseCase.d.ts +0 -9
  861. package/lib/esm/internal/address/use-case/GetAddressUseCase.d.ts.map +0 -1
  862. package/lib/esm/internal/app-binder/EthAppBinder.d.ts +0 -38
  863. package/lib/esm/internal/app-binder/EthAppBinder.d.ts.map +0 -1
  864. package/lib/esm/internal/app-binder/command/GetAddressCommand.d.ts +0 -9
  865. package/lib/esm/internal/app-binder/command/GetAddressCommand.d.ts.map +0 -1
  866. package/lib/esm/internal/app-binder/command/GetChallengeCommand.d.ts.map +0 -1
  867. package/lib/esm/internal/app-binder/command/ProvideDomainNameCommand.d.ts +0 -19
  868. package/lib/esm/internal/app-binder/command/ProvideDomainNameCommand.d.ts.map +0 -1
  869. package/lib/esm/internal/app-binder/command/ProvideDomainNameCommand.js +0 -37
  870. package/lib/esm/internal/app-binder/command/ProvideDomainNameCommand.js.map +0 -1
  871. package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.d.ts +0 -15
  872. package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.d.ts.map +0 -1
  873. package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.d.ts +0 -14
  874. package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.d.ts.map +0 -1
  875. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.d.ts +0 -41
  876. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.d.ts.map +0 -1
  877. package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.d.ts.map +0 -1
  878. package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.d.ts.map +0 -1
  879. package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.d.ts.map +0 -1
  880. package/lib/esm/internal/app-binder/command/SetPluginCommand.d.ts +0 -18
  881. package/lib/esm/internal/app-binder/command/SetPluginCommand.d.ts.map +0 -1
  882. package/lib/esm/internal/app-binder/command/SignEIP712Command.d.ts.map +0 -1
  883. package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.d.ts +0 -21
  884. package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.d.ts.map +0 -1
  885. package/lib/esm/internal/app-binder/command/SignTransactionCommand.d.ts.map +0 -1
  886. package/lib/esm/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.d.ts.map +0 -1
  887. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts +0 -39
  888. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts.map +0 -1
  889. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts +0 -31
  890. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts.map +0 -1
  891. package/lib/esm/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts +0 -3
  892. package/lib/esm/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts.map +0 -1
  893. package/lib/esm/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.d.ts +0 -2
  894. package/lib/esm/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.d.ts.map +0 -1
  895. package/lib/esm/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts +0 -12
  896. package/lib/esm/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts.map +0 -1
  897. package/lib/esm/internal/app-binder/di/appBinderModule.d.ts +0 -3
  898. package/lib/esm/internal/app-binder/di/appBinderModule.d.ts.map +0 -1
  899. package/lib/esm/internal/app-binder/di/appBinderTypes.d.ts +0 -4
  900. package/lib/esm/internal/app-binder/di/appBinderTypes.d.ts.map +0 -1
  901. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.d.ts +0 -16
  902. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.d.ts.map +0 -1
  903. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.d.ts +0 -21
  904. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.d.ts.map +0 -1
  905. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.d.ts +0 -21
  906. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.d.ts.map +0 -1
  907. package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.d.ts.map +0 -1
  908. package/lib/esm/internal/app-binder/task/SendEIP712StructImplemTask.d.ts +0 -19
  909. package/lib/esm/internal/app-binder/task/SendEIP712StructImplemTask.d.ts.map +0 -1
  910. package/lib/esm/internal/app-binder/task/SendSignPersonalMessageTask.d.ts.map +0 -1
  911. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.d.ts +0 -14
  912. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.d.ts.map +0 -1
  913. package/lib/esm/internal/di.d.ts +0 -10
  914. package/lib/esm/internal/di.d.ts.map +0 -1
  915. package/lib/esm/internal/externalTypes.d.ts +0 -6
  916. package/lib/esm/internal/externalTypes.d.ts.map +0 -1
  917. package/lib/esm/internal/message/di/messageModule.d.ts +0 -3
  918. package/lib/esm/internal/message/di/messageModule.d.ts.map +0 -1
  919. package/lib/esm/internal/message/di/messageTypes.d.ts +0 -4
  920. package/lib/esm/internal/message/di/messageTypes.d.ts.map +0 -1
  921. package/lib/esm/internal/message/use-case/SignMessageUseCase.d.ts.map +0 -1
  922. package/lib/esm/internal/shared/utils/DerivationPathUtils.d.ts +0 -5
  923. package/lib/esm/internal/shared/utils/DerivationPathUtils.d.ts.map +0 -1
  924. package/lib/esm/internal/shared/utils/DerivationPathUtils.js +0 -20
  925. package/lib/esm/internal/shared/utils/DerivationPathUtils.js.map +0 -1
  926. package/lib/esm/internal/transaction/di/transactionModule.d.ts +0 -3
  927. package/lib/esm/internal/transaction/di/transactionModule.d.ts.map +0 -1
  928. package/lib/esm/internal/transaction/di/transactionTypes.d.ts +0 -6
  929. package/lib/esm/internal/transaction/di/transactionTypes.d.ts.map +0 -1
  930. package/lib/esm/internal/transaction/service/mapper/EthersV5TransactionMapper.d.ts +0 -10
  931. package/lib/esm/internal/transaction/service/mapper/EthersV5TransactionMapper.d.ts.map +0 -1
  932. package/lib/esm/internal/transaction/service/mapper/EthersV6TransactionMapper.d.ts.map +0 -1
  933. package/lib/esm/internal/transaction/service/mapper/TransactionMapper.d.ts +0 -7
  934. package/lib/esm/internal/transaction/service/mapper/TransactionMapper.d.ts.map +0 -1
  935. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.d.ts +0 -10
  936. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.d.ts.map +0 -1
  937. package/lib/esm/internal/transaction/service/mapper/model/TransactionMapperResult.d.ts +0 -12
  938. package/lib/esm/internal/transaction/service/mapper/model/TransactionMapperResult.d.ts.map +0 -1
  939. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.d.ts +0 -10
  940. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.d.ts.map +0 -1
  941. package/lib/esm/internal/typed-data/di/typedDataModule.d.ts +0 -3
  942. package/lib/esm/internal/typed-data/di/typedDataModule.d.ts.map +0 -1
  943. package/lib/esm/internal/typed-data/di/typedDataTypes.d.ts +0 -5
  944. package/lib/esm/internal/typed-data/di/typedDataTypes.d.ts.map +0 -1
  945. package/lib/esm/internal/typed-data/model/Types.d.ts +0 -41
  946. package/lib/esm/internal/typed-data/model/Types.d.ts.map +0 -1
  947. package/lib/esm/internal/typed-data/service/DefaultTypedDataParserService.d.ts +0 -7
  948. package/lib/esm/internal/typed-data/service/DefaultTypedDataParserService.d.ts.map +0 -1
  949. package/lib/esm/internal/typed-data/service/TypedDataEncoder.d.ts.map +0 -1
  950. package/lib/esm/internal/typed-data/service/TypedDataParser.d.ts.map +0 -1
  951. package/lib/esm/internal/typed-data/service/TypedDataParserService.d.ts.map +0 -1
  952. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.d.ts +0 -11
  953. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.d.ts.map +0 -1
  954. /package/lib/{cjs → types}/api/app-binder/GetAddressCommandTypes.d.ts +0 -0
  955. /package/lib/{cjs → types}/api/app-binder/GetAddressCommandTypes.d.ts.map +0 -0
  956. /package/lib/{cjs → types}/api/model/AddressOptions.d.ts +0 -0
  957. /package/lib/{cjs → types}/api/model/AddressOptions.d.ts.map +0 -0
  958. /package/lib/{cjs → types}/api/model/TransactionOptions.d.ts +0 -0
  959. /package/lib/{cjs → types}/api/model/TransactionOptions.d.ts.map +0 -0
  960. /package/lib/{cjs → types}/api/model/TypedData.d.ts +0 -0
  961. /package/lib/{cjs → types}/api/model/TypedData.d.ts.map +0 -0
  962. /package/lib/{cjs → types}/index.d.ts +0 -0
  963. /package/lib/{cjs → types}/index.d.ts.map +0 -0
  964. /package/lib/{cjs → types}/internal/address/di/addressModule.d.ts +0 -0
  965. /package/lib/{cjs → types}/internal/address/di/addressModule.d.ts.map +0 -0
  966. /package/lib/{cjs → types}/internal/address/di/addressTypes.d.ts +0 -0
  967. /package/lib/{cjs → types}/internal/address/di/addressTypes.d.ts.map +0 -0
  968. /package/lib/{cjs → types}/internal/address/use-case/GetAddressUseCase.d.ts +0 -0
  969. /package/lib/{cjs → types}/internal/address/use-case/GetAddressUseCase.d.ts.map +0 -0
  970. /package/lib/{cjs → types}/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.d.ts +0 -0
  971. /package/lib/{cjs → types}/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.d.ts.map +0 -0
  972. /package/lib/{cjs → types}/internal/app-binder/di/appBinderModule.d.ts +0 -0
  973. /package/lib/{cjs → types}/internal/app-binder/di/appBinderModule.d.ts.map +0 -0
  974. /package/lib/{cjs → types}/internal/app-binder/di/appBinderTypes.d.ts +0 -0
  975. /package/lib/{cjs → types}/internal/app-binder/di/appBinderTypes.d.ts.map +0 -0
  976. /package/lib/{cjs → types}/internal/app-binder/task/BuildEIP712ContextTask.d.ts +0 -0
  977. /package/lib/{cjs → types}/internal/app-binder/task/SendEIP712StructImplemTask.d.ts +0 -0
  978. /package/lib/{cjs → types}/internal/app-binder/task/SendEIP712StructImplemTask.d.ts.map +0 -0
  979. /package/lib/{cjs → types}/internal/externalTypes.d.ts.map +0 -0
  980. /package/lib/{cjs → types}/internal/message/di/messageModule.d.ts +0 -0
  981. /package/lib/{cjs → types}/internal/message/di/messageModule.d.ts.map +0 -0
  982. /package/lib/{cjs → types}/internal/message/di/messageTypes.d.ts +0 -0
  983. /package/lib/{cjs → types}/internal/message/di/messageTypes.d.ts.map +0 -0
  984. /package/lib/{cjs → types}/internal/transaction/di/transactionModule.d.ts +0 -0
  985. /package/lib/{cjs → types}/internal/transaction/service/mapper/EthersV5TransactionMapper.d.ts +0 -0
  986. /package/lib/{cjs → types}/internal/transaction/service/mapper/TransactionMapperService.d.ts +0 -0
  987. /package/lib/{cjs → types}/internal/transaction/service/mapper/TransactionMapperService.d.ts.map +0 -0
  988. /package/lib/{cjs → types}/internal/transaction/use-case/SignTransactionUseCase.d.ts +0 -0
  989. /package/lib/{cjs → types}/internal/transaction/use-case/SignTransactionUseCase.d.ts.map +0 -0
  990. /package/lib/{cjs → types}/internal/typed-data/di/typedDataModule.d.ts +0 -0
  991. /package/lib/{cjs → types}/internal/typed-data/di/typedDataModule.d.ts.map +0 -0
  992. /package/lib/{cjs → types}/internal/typed-data/di/typedDataTypes.d.ts +0 -0
  993. /package/lib/{cjs → types}/internal/typed-data/di/typedDataTypes.d.ts.map +0 -0
  994. /package/lib/{cjs → types}/internal/typed-data/service/DefaultTypedDataParserService.d.ts +0 -0
  995. /package/lib/{cjs → types}/internal/typed-data/service/DefaultTypedDataParserService.d.ts.map +0 -0
  996. /package/lib/{cjs → types}/internal/typed-data/use-case/SignTypedDataUseCase.d.ts +0 -0
  997. /package/lib/{cjs → types}/internal/typed-data/use-case/SignTypedDataUseCase.d.ts.map +0 -0
@@ -1,65 +1,2 @@
1
- // https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#sign-eth-eip-712
2
- import { ApduBuilder, ApduParser, CommandResultFactory, CommandUtils, GlobalCommandErrorHandler, InvalidStatusWordError, } from "@ledgerhq/device-management-kit";
3
- import { DerivationPathUtils } from "../../shared/utils/DerivationPathUtils";
4
- const R_LENGTH = 32;
5
- const S_LENGTH = 32;
6
- export class SignEIP712Command {
7
- args;
8
- constructor(args) {
9
- this.args = args;
10
- }
11
- getApdu() {
12
- const { derivationPath, legacyArgs } = this.args;
13
- const signEIP712Args = {
14
- cla: 0xe0,
15
- ins: 0x0c,
16
- p1: 0x00,
17
- p2: legacyArgs.isJust() ? 0x00 : 0x01,
18
- };
19
- const paths = DerivationPathUtils.splitPath(derivationPath);
20
- const builder = new ApduBuilder(signEIP712Args);
21
- builder.add8BitUIntToData(paths.length);
22
- for (const path of paths) {
23
- builder.add32BitUIntToData(path);
24
- }
25
- legacyArgs.ifJust(({ domainHash, messageHash }) => {
26
- builder.addHexaStringToData(domainHash);
27
- builder.addHexaStringToData(messageHash);
28
- });
29
- return builder.build();
30
- }
31
- parseResponse(apduResponse) {
32
- const parser = new ApduParser(apduResponse);
33
- if (!CommandUtils.isSuccessResponse(apduResponse)) {
34
- return CommandResultFactory({
35
- error: GlobalCommandErrorHandler.handle(apduResponse),
36
- });
37
- }
38
- const v = parser.extract8BitUInt();
39
- if (v === undefined) {
40
- return CommandResultFactory({
41
- error: new InvalidStatusWordError("V is missing"),
42
- });
43
- }
44
- const r = parser.encodeToHexaString(parser.extractFieldByLength(R_LENGTH), true);
45
- if (!r) {
46
- return CommandResultFactory({
47
- error: new InvalidStatusWordError("R is missing"),
48
- });
49
- }
50
- const s = parser.encodeToHexaString(parser.extractFieldByLength(S_LENGTH), true);
51
- if (!s) {
52
- return CommandResultFactory({
53
- error: new InvalidStatusWordError("S is missing"),
54
- });
55
- }
56
- return CommandResultFactory({
57
- data: {
58
- r,
59
- s,
60
- v,
61
- },
62
- });
63
- }
64
- }
65
- //# sourceMappingURL=SignEIP712Command.js.map
1
+ import{ApduBuilder as m,ApduParser as g,CommandResultFactory as s,CommandUtils as p,GlobalCommandErrorHandler as u,InvalidStatusWordError as i}from"@ledgerhq/device-management-kit";import{DerivationPathUtils as l}from"@ledgerhq/signer-utils";const c=32,y=32;class C{constructor(r){this.args=r}getApdu(){const{derivationPath:r,legacyArgs:t}=this.args,o={cla:224,ins:12,p1:0,p2:t.isJust()?0:1},n=l.splitPath(r),e=new m(o);e.add8BitUIntToData(n.length);for(const a of n)e.add32BitUIntToData(a);return t.ifJust(({domainHash:a,messageHash:d})=>{e.addHexaStringToData(a),e.addHexaStringToData(d)}),e.build()}parseResponse(r){const t=new g(r);if(!p.isSuccessResponse(r))return s({error:u.handle(r)});const o=t.extract8BitUInt();if(o===void 0)return s({error:new i("V is missing")});const n=t.encodeToHexaString(t.extractFieldByLength(c),!0);if(!n)return s({error:new i("R is missing")});const e=t.encodeToHexaString(t.extractFieldByLength(y),!0);return e?s({data:{r:n,s:e,v:o}}):s({error:new i("S is missing")})}}export{C as SignEIP712Command};
2
+ //# sourceMappingURL=SignEIP712Command.js.map
@@ -1 +1,7 @@
1
- {"version":3,"file":"SignEIP712Command.js","sourceRoot":"","sources":["../../../../../src/internal/app-binder/command/SignEIP712Command.ts"],"names":[],"mappings":"AAAA,yFAAyF;AACzF,OAAO,EAEL,WAAW,EAEX,UAAU,EAIV,oBAAoB,EACpB,YAAY,EACZ,yBAAyB,EACzB,sBAAsB,GACvB,MAAM,iCAAiC,CAAC;AAIzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AAEjF,MAAM,QAAQ,GAAG,EAAE,CAAC;AACpB,MAAM,QAAQ,GAAG,EAAE,CAAC;AAoBpB,MAAM,OAAO,iBAAiB;IAGC;IAA7B,YAA6B,IAA2B;QAA3B,SAAI,GAAJ,IAAI,CAAuB;IAAG,CAAC;IAE5D,OAAO;QACL,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC;QAEjD,MAAM,cAAc,GAAoB;YACtC,GAAG,EAAE,IAAI;YACT,GAAG,EAAE,IAAI;YACT,EAAE,EAAE,IAAI;YACR,EAAE,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;SACtC,CAAC;QACF,MAAM,KAAK,GAAG,mBAAmB,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,cAAc,CAAC,CAAC;QAChD,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACxC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;QAED,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,EAAE;YAChD,OAAO,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;YACxC,OAAO,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;IAED,aAAa,CACX,YAA0B;QAE1B,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,YAAY,CAAC,CAAC;QAE5C,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,CAAC;YAClD,OAAO,oBAAoB,CAAC;gBAC1B,KAAK,EAAE,yBAAyB,CAAC,MAAM,CAAC,YAAY,CAAC;aACtD,CAAC,CAAC;QACL,CAAC;QAED,MAAM,CAAC,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC;QACnC,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YACpB,OAAO,oBAAoB,CAAC;gBAC1B,KAAK,EAAE,IAAI,sBAAsB,CAAC,cAAc,CAAC;aAClD,CAAC,CAAC;QACL,CAAC;QAED,MAAM,CAAC,GAAG,MAAM,CAAC,kBAAkB,CACjC,MAAM,CAAC,oBAAoB,CAAC,QAAQ,CAAC,EACrC,IAAI,CACL,CAAC;QACF,IAAI,CAAC,CAAC,EAAE,CAAC;YACP,OAAO,oBAAoB,CAAC;gBAC1B,KAAK,EAAE,IAAI,sBAAsB,CAAC,cAAc,CAAC;aAClD,CAAC,CAAC;QACL,CAAC;QAED,MAAM,CAAC,GAAG,MAAM,CAAC,kBAAkB,CACjC,MAAM,CAAC,oBAAoB,CAAC,QAAQ,CAAC,EACrC,IAAI,CACL,CAAC;QACF,IAAI,CAAC,CAAC,EAAE,CAAC;YACP,OAAO,oBAAoB,CAAC;gBAC1B,KAAK,EAAE,IAAI,sBAAsB,CAAC,cAAc,CAAC;aAClD,CAAC,CAAC;QACL,CAAC;QAED,OAAO,oBAAoB,CAAC;YAC1B,IAAI,EAAE;gBACJ,CAAC;gBACD,CAAC;gBACD,CAAC;aACF;SACF,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/command/SignEIP712Command.ts"],
4
+ "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#sign-eth-eip-712\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n ApduParser,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n CommandUtils,\n GlobalCommandErrorHandler,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\nimport { DerivationPathUtils } from \"@ledgerhq/signer-utils\";\nimport { type Maybe } from \"purify-ts\";\n\nimport { type Signature } from \"@api/model/Signature\";\n\nconst R_LENGTH = 32;\nconst S_LENGTH = 32;\n\n/**\n * Legacy implementation parameters. It is now replaced with prior calls to the following commands:\n * - SendEIP712StructDefinitionCommand\n * - SendEIP712StructImplemCommand\n * - SendEIP712FilteringCommand\n */\nexport type SignEIP712CommandV0Args = {\n domainHash: string;\n messageHash: string;\n};\n\nexport type SignEIP712CommandArgs = {\n readonly derivationPath: string;\n readonly legacyArgs: Maybe<SignEIP712CommandV0Args>;\n};\n\nexport type SignEIP712CommandResponse = Signature;\n\nexport class SignEIP712Command\n implements Command<SignEIP712CommandResponse, SignEIP712CommandArgs>\n{\n constructor(private readonly args: SignEIP712CommandArgs) {}\n\n getApdu(): Apdu {\n const { derivationPath, legacyArgs } = this.args;\n\n const signEIP712Args: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x0c,\n p1: 0x00,\n p2: legacyArgs.isJust() ? 0x00 : 0x01,\n };\n const paths = DerivationPathUtils.splitPath(derivationPath);\n const builder = new ApduBuilder(signEIP712Args);\n builder.add8BitUIntToData(paths.length);\n for (const path of paths) {\n builder.add32BitUIntToData(path);\n }\n\n legacyArgs.ifJust(({ domainHash, messageHash }) => {\n builder.addHexaStringToData(domainHash);\n builder.addHexaStringToData(messageHash);\n });\n\n return builder.build();\n }\n\n parseResponse(\n apduResponse: ApduResponse,\n ): CommandResult<SignEIP712CommandResponse> {\n const parser = new ApduParser(apduResponse);\n\n if (!CommandUtils.isSuccessResponse(apduResponse)) {\n return CommandResultFactory({\n error: GlobalCommandErrorHandler.handle(apduResponse),\n });\n }\n\n const v = parser.extract8BitUInt();\n if (v === undefined) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"V is missing\"),\n });\n }\n\n const r = parser.encodeToHexaString(\n parser.extractFieldByLength(R_LENGTH),\n true,\n );\n if (!r) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"R is missing\"),\n });\n }\n\n const s = parser.encodeToHexaString(\n parser.extractFieldByLength(S_LENGTH),\n true,\n );\n if (!s) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"S is missing\"),\n });\n }\n\n return CommandResultFactory({\n data: {\n r,\n s,\n v,\n },\n });\n }\n}\n"],
5
+ "mappings": "AACA,OAEE,eAAAA,EAEA,cAAAC,EAIA,wBAAAC,EACA,gBAAAC,EACA,6BAAAC,EACA,0BAAAC,MACK,kCACP,OAAS,uBAAAC,MAA2B,yBAKpC,MAAMC,EAAW,GACXC,EAAW,GAoBV,MAAMC,CAEb,CACE,YAA6BC,EAA6B,CAA7B,UAAAA,CAA8B,CAE3D,SAAgB,CACd,KAAM,CAAE,eAAAC,EAAgB,WAAAC,CAAW,EAAI,KAAK,KAEtCC,EAAkC,CACtC,IAAK,IACL,IAAK,GACL,GAAI,EACJ,GAAID,EAAW,OAAO,EAAI,EAAO,CACnC,EACME,EAAQR,EAAoB,UAAUK,CAAc,EACpDI,EAAU,IAAIf,EAAYa,CAAc,EAC9CE,EAAQ,kBAAkBD,EAAM,MAAM,EACtC,UAAWE,KAAQF,EACjBC,EAAQ,mBAAmBC,CAAI,EAGjC,OAAAJ,EAAW,OAAO,CAAC,CAAE,WAAAK,EAAY,YAAAC,CAAY,IAAM,CACjDH,EAAQ,oBAAoBE,CAAU,EACtCF,EAAQ,oBAAoBG,CAAW,CACzC,CAAC,EAEMH,EAAQ,MAAM,CACvB,CAEA,cACEI,EAC0C,CAC1C,MAAMC,EAAS,IAAInB,EAAWkB,CAAY,EAE1C,GAAI,CAAChB,EAAa,kBAAkBgB,CAAY,EAC9C,OAAOjB,EAAqB,CAC1B,MAAOE,EAA0B,OAAOe,CAAY,CACtD,CAAC,EAGH,MAAME,EAAID,EAAO,gBAAgB,EACjC,GAAIC,IAAM,OACR,OAAOnB,EAAqB,CAC1B,MAAO,IAAIG,EAAuB,cAAc,CAClD,CAAC,EAGH,MAAMiB,EAAIF,EAAO,mBACfA,EAAO,qBAAqBb,CAAQ,EACpC,EACF,EACA,GAAI,CAACe,EACH,OAAOpB,EAAqB,CAC1B,MAAO,IAAIG,EAAuB,cAAc,CAClD,CAAC,EAGH,MAAMkB,EAAIH,EAAO,mBACfA,EAAO,qBAAqBZ,CAAQ,EACpC,EACF,EACA,OAAKe,EAMErB,EAAqB,CAC1B,KAAM,CACJ,EAAAoB,EACA,EAAAC,EACA,EAAAF,CACF,CACF,CAAC,EAXQnB,EAAqB,CAC1B,MAAO,IAAIG,EAAuB,cAAc,CAClD,CAAC,CAUL,CACF",
6
+ "names": ["ApduBuilder", "ApduParser", "CommandResultFactory", "CommandUtils", "GlobalCommandErrorHandler", "InvalidStatusWordError", "DerivationPathUtils", "R_LENGTH", "S_LENGTH", "SignEIP712Command", "args", "derivationPath", "legacyArgs", "signEIP712Args", "paths", "builder", "path", "domainHash", "messageHash", "apduResponse", "parser", "v", "r", "s"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{CommandResultFactory as s,isSuccessCommandResult as a}from"@ledgerhq/device-management-kit";import{Just as o,Nothing as r}from"purify-ts";import{SignEIP712Command as t}from"./SignEIP712Command";const n=Uint8Array.from([224,12,0,1,21,5,128,0,0,44,128,0,0,60,128,0,0,0,0,0,0,0,0,0,0,0]),d=Uint8Array.from([224,12,0,0,85,5,128,0,0,44,128,0,0,60,128,0,0,0,0,0,0,0,0,0,0,0,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34]),c=Uint8Array.from([28,138,84,5,16,225,59,15,43,17,164,81,39,87,22,210,158,8,202,173,7,232,154,28,132,150,71,130,251,94,26,215,136,100,160,222,35,91,39,15,190,129,232,228,6,136,244,169,249,173,157,40,61,105,5,82,201,51,29,119,115,206,175,165,19]),i={statusCode:Uint8Array.from([144,0]),data:c},p={statusCode:Uint8Array.from([85,21]),data:new Uint8Array},m=Uint8Array.from([1,2]),f={statusCode:Uint8Array.from([144,0]),data:m};describe("SignEIP712Command",()=>{let e;beforeEach(()=>{e=new t({derivationPath:"44'/60'/0'/0/0",legacyArgs:r})}),describe("getApdu",()=>{it("should provide the derivation path",()=>{const x=e.getApdu();expect(x.getRawApdu()).toStrictEqual(n)})}),describe("parseResponse",()=>{it("should parse the response",()=>{const x=e.parseResponse(i);expect(x).toStrictEqual(s({data:{v:28,r:"0x8a540510e13b0f2b11a451275716d29e08caad07e89a1c84964782fb5e1ad788",s:"0x64a0de235b270fbe81e8e40688f4a9f9ad9d283d690552c9331d7773ceafa513"}}))}),it("should return an error if the response is not successful",()=>{const x=e.parseResponse(p);expect(a(x)).toBe(!1)}),it("should return an error if the response is too short",()=>{const x=e.parseResponse(f);expect(a(x)).toBe(!1)})})});describe("SignEIP712Command V0",()=>{describe("getApdu",()=>{it("should provide the derivation path and hashes",()=>{const x=new t({derivationPath:"44'/60'/0'/0/0",legacyArgs:o({domainHash:"0x1111111111111111111111111111111111111111111111111111111111111111",messageHash:"0x2222222222222222222222222222222222222222222222222222222222222222"})}).getApdu();expect(x.getRawApdu()).toStrictEqual(d)})})});
2
+ //# sourceMappingURL=SignEIP712Command.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/command/SignEIP712Command.test.ts"],
4
+ "sourcesContent": ["import {\n type Command,\n CommandResultFactory,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\nimport { Just, Nothing } from \"purify-ts\";\n\nimport {\n SignEIP712Command,\n type SignEIP712CommandResponse,\n} from \"./SignEIP712Command\";\n\nconst SIGN_EIP712_APDU = Uint8Array.from([\n 0xe0, 0x0c, 0x00, 0x01, 0x15, 0x05, 0x80, 0x00, 0x00, 0x2c, 0x80, 0x00, 0x00,\n 0x3c, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n]);\n\nconst SIGN_EIP712_APDU_V0 = Uint8Array.from([\n 0xe0, 0x0c, 0x00, 0x00, 0x55, 0x05, 0x80, 0x00, 0x00, 0x2c, 0x80, 0x00, 0x00,\n 0x3c, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,\n 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,\n 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,\n 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,\n 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,\n]);\n\nconst LNX_RESPONSE_DATA_GOOD = Uint8Array.from([\n 0x1c, 0x8a, 0x54, 0x05, 0x10, 0xe1, 0x3b, 0x0f, 0x2b, 0x11, 0xa4, 0x51, 0x27,\n 0x57, 0x16, 0xd2, 0x9e, 0x08, 0xca, 0xad, 0x07, 0xe8, 0x9a, 0x1c, 0x84, 0x96,\n 0x47, 0x82, 0xfb, 0x5e, 0x1a, 0xd7, 0x88, 0x64, 0xa0, 0xde, 0x23, 0x5b, 0x27,\n 0x0f, 0xbe, 0x81, 0xe8, 0xe4, 0x06, 0x88, 0xf4, 0xa9, 0xf9, 0xad, 0x9d, 0x28,\n 0x3d, 0x69, 0x05, 0x52, 0xc9, 0x33, 0x1d, 0x77, 0x73, 0xce, 0xaf, 0xa5, 0x13,\n]);\n\nconst LNX_RESPONSE_GOOD = {\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: LNX_RESPONSE_DATA_GOOD,\n};\n\nconst LNX_RESPONSE_LOCKED = {\n statusCode: Uint8Array.from([0x55, 0x15]),\n data: new Uint8Array(),\n};\n\nconst LNX_RESPONSE_DATA_TOO_SHORT = Uint8Array.from([0x01, 0x02]);\n\nconst LNX_RESPONSE_TOO_SHORT = {\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: LNX_RESPONSE_DATA_TOO_SHORT,\n};\n\ndescribe(\"SignEIP712Command\", () => {\n let command: Command<SignEIP712CommandResponse, void>;\n\n beforeEach(() => {\n command = new SignEIP712Command({\n derivationPath: \"44'/60'/0'/0/0\",\n legacyArgs: Nothing,\n });\n });\n\n describe(\"getApdu\", () => {\n it(\"should provide the derivation path\", () => {\n const apdu = command.getApdu();\n expect(apdu.getRawApdu()).toStrictEqual(SIGN_EIP712_APDU);\n });\n });\n\n describe(\"parseResponse\", () => {\n it(\"should parse the response\", () => {\n const parsedResponse = command.parseResponse(LNX_RESPONSE_GOOD);\n expect(parsedResponse).toStrictEqual(\n CommandResultFactory({\n data: {\n v: 0x1c,\n r: \"0x8a540510e13b0f2b11a451275716d29e08caad07e89a1c84964782fb5e1ad788\",\n s: \"0x64a0de235b270fbe81e8e40688f4a9f9ad9d283d690552c9331d7773ceafa513\",\n },\n }),\n );\n });\n\n it(\"should return an error if the response is not successful\", () => {\n const response = command.parseResponse(LNX_RESPONSE_LOCKED);\n expect(isSuccessCommandResult(response)).toBe(false);\n });\n\n it(\"should return an error if the response is too short\", () => {\n const response = command.parseResponse(LNX_RESPONSE_TOO_SHORT);\n expect(isSuccessCommandResult(response)).toBe(false);\n });\n });\n});\n\ndescribe(\"SignEIP712Command V0\", () => {\n describe(\"getApdu\", () => {\n it(\"should provide the derivation path and hashes\", () => {\n const command = new SignEIP712Command({\n derivationPath: \"44'/60'/0'/0/0\",\n legacyArgs: Just({\n domainHash:\n \"0x1111111111111111111111111111111111111111111111111111111111111111\",\n messageHash:\n \"0x2222222222222222222222222222222222222222222222222222222222222222\",\n }),\n });\n const apdu = command.getApdu();\n expect(apdu.getRawApdu()).toStrictEqual(SIGN_EIP712_APDU_V0);\n });\n });\n});\n"],
5
+ "mappings": "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",
6
+ "names": ["CommandResultFactory", "isSuccessCommandResult", "Just", "Nothing", "SignEIP712Command", "SIGN_EIP712_APDU", "SIGN_EIP712_APDU_V0", "LNX_RESPONSE_DATA_GOOD", "LNX_RESPONSE_GOOD", "LNX_RESPONSE_LOCKED", "LNX_RESPONSE_DATA_TOO_SHORT", "LNX_RESPONSE_TOO_SHORT", "command", "apdu", "parsedResponse", "response"]
7
+ }
@@ -1,56 +1,2 @@
1
- // https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#sign-eth-personal-message
2
- import { ApduBuilder, ApduParser, CommandResultFactory, CommandUtils, GlobalCommandErrorHandler, InvalidStatusWordError, } from "@ledgerhq/device-management-kit";
3
- import { Just, Nothing } from "purify-ts";
4
- const R_LENGTH = 32;
5
- const S_LENGTH = 32;
6
- export class SignPersonalMessageCommand {
7
- args;
8
- constructor(args) {
9
- this.args = args;
10
- }
11
- getApdu() {
12
- const { data, isFirstChunk } = this.args;
13
- const signPersonalMessageArgs = {
14
- cla: 0xe0,
15
- ins: 0x08,
16
- p1: isFirstChunk ? 0x00 : 0x80,
17
- p2: 0x00,
18
- };
19
- return new ApduBuilder(signPersonalMessageArgs)
20
- .addBufferToData(data)
21
- .build();
22
- }
23
- parseResponse(apduResponse) {
24
- const parser = new ApduParser(apduResponse);
25
- if (!CommandUtils.isSuccessResponse(apduResponse)) {
26
- return CommandResultFactory({
27
- error: GlobalCommandErrorHandler.handle(apduResponse),
28
- });
29
- }
30
- // The data is returned only for the last chunk
31
- const v = parser.extract8BitUInt();
32
- if (v === undefined) {
33
- return CommandResultFactory({ data: Nothing });
34
- }
35
- const r = parser.encodeToHexaString(parser.extractFieldByLength(R_LENGTH), true);
36
- if (!r) {
37
- return CommandResultFactory({
38
- error: new InvalidStatusWordError("R is missing"),
39
- });
40
- }
41
- const s = parser.encodeToHexaString(parser.extractFieldByLength(S_LENGTH), true);
42
- if (!s) {
43
- return CommandResultFactory({
44
- error: new InvalidStatusWordError("S is missing"),
45
- });
46
- }
47
- return CommandResultFactory({
48
- data: Just({
49
- r,
50
- s,
51
- v,
52
- }),
53
- });
54
- }
55
- }
56
- //# sourceMappingURL=SignPersonalMessageCommand.js.map
1
+ import{ApduBuilder as i,ApduParser as d,CommandResultFactory as s,CommandUtils as m,GlobalCommandErrorHandler as g,InvalidStatusWordError as o}from"@ledgerhq/device-management-kit";import{Just as p,Nothing as u}from"purify-ts";const l=32,c=32;class S{args;constructor(e){this.args=e}getApdu(){const{data:e,isFirstChunk:r}=this.args,n={cla:224,ins:8,p1:r?0:128,p2:0};return new i(n).addBufferToData(e).build()}parseResponse(e){const r=new d(e);if(!m.isSuccessResponse(e))return s({error:g.handle(e)});const n=r.extract8BitUInt();if(n===void 0)return s({data:u});const a=r.encodeToHexaString(r.extractFieldByLength(l),!0);if(!a)return s({error:new o("R is missing")});const t=r.encodeToHexaString(r.extractFieldByLength(c),!0);return t?s({data:p({r:a,s:t,v:n})}):s({error:new o("S is missing")})}}export{S as SignPersonalMessageCommand};
2
+ //# sourceMappingURL=SignPersonalMessageCommand.js.map
@@ -1 +1,7 @@
1
- {"version":3,"file":"SignPersonalMessageCommand.js","sourceRoot":"","sources":["../../../../../src/internal/app-binder/command/SignPersonalMessageCommand.ts"],"names":[],"mappings":"AAAA,kGAAkG;AAClG,OAAO,EAEL,WAAW,EAEX,UAAU,EAIV,oBAAoB,EACpB,YAAY,EACZ,yBAAyB,EACzB,sBAAsB,GACvB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,IAAI,EAAS,OAAO,EAAE,MAAM,WAAW,CAAC;AAIjD,MAAM,QAAQ,GAAG,EAAE,CAAC;AACpB,MAAM,QAAQ,GAAG,EAAE,CAAC;AAepB,MAAM,OAAO,0BAA0B;IAI5B,IAAI,CAAiC;IAE9C,YAAY,IAAoC;QAC9C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,OAAO;QACL,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC;QACzC,MAAM,uBAAuB,GAAoB;YAC/C,GAAG,EAAE,IAAI;YACT,GAAG,EAAE,IAAI;YACT,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;YAC9B,EAAE,EAAE,IAAI;SACT,CAAC;QAEF,OAAO,IAAI,WAAW,CAAC,uBAAuB,CAAC;aAC5C,eAAe,CAAC,IAAI,CAAC;aACrB,KAAK,EAAE,CAAC;IACb,CAAC;IAED,aAAa,CACX,YAA0B;QAE1B,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,YAAY,CAAC,CAAC;QAE5C,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,CAAC;YAClD,OAAO,oBAAoB,CAAC;gBAC1B,KAAK,EAAE,yBAAyB,CAAC,MAAM,CAAC,YAAY,CAAC;aACtD,CAAC,CAAC;QACL,CAAC;QAED,+CAA+C;QAC/C,MAAM,CAAC,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC;QACnC,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YACpB,OAAO,oBAAoB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,CAAC,GAAG,MAAM,CAAC,kBAAkB,CACjC,MAAM,CAAC,oBAAoB,CAAC,QAAQ,CAAC,EACrC,IAAI,CACL,CAAC;QACF,IAAI,CAAC,CAAC,EAAE,CAAC;YACP,OAAO,oBAAoB,CAAC;gBAC1B,KAAK,EAAE,IAAI,sBAAsB,CAAC,cAAc,CAAC;aAClD,CAAC,CAAC;QACL,CAAC;QAED,MAAM,CAAC,GAAG,MAAM,CAAC,kBAAkB,CACjC,MAAM,CAAC,oBAAoB,CAAC,QAAQ,CAAC,EACrC,IAAI,CACL,CAAC;QACF,IAAI,CAAC,CAAC,EAAE,CAAC;YACP,OAAO,oBAAoB,CAAC;gBAC1B,KAAK,EAAE,IAAI,sBAAsB,CAAC,cAAc,CAAC;aAClD,CAAC,CAAC;QACL,CAAC;QAED,OAAO,oBAAoB,CAAC;YAC1B,IAAI,EAAE,IAAI,CAAC;gBACT,CAAC;gBACD,CAAC;gBACD,CAAC;aACF,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/command/SignPersonalMessageCommand.ts"],
4
+ "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#sign-eth-personal-message\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n ApduParser,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n CommandUtils,\n GlobalCommandErrorHandler,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\nimport { Just, type Maybe, Nothing } from \"purify-ts\";\n\nimport { type Signature } from \"@api/model/Signature\";\n\nconst R_LENGTH = 32;\nconst S_LENGTH = 32;\n\nexport type SignPersonalMessageCommandArgs = {\n /**\n * The data to sign in max 150 bytes chunks\n */\n readonly data: Uint8Array;\n /**\n * If this is the first chunk of the message\n */\n readonly isFirstChunk: boolean;\n};\n\nexport type SignPersonalMessageCommandResponse = Maybe<Signature>;\n\nexport class SignPersonalMessageCommand\n implements\n Command<SignPersonalMessageCommandResponse, SignPersonalMessageCommandArgs>\n{\n readonly args: SignPersonalMessageCommandArgs;\n\n constructor(args: SignPersonalMessageCommandArgs) {\n this.args = args;\n }\n\n getApdu(): Apdu {\n const { data, isFirstChunk } = this.args;\n const signPersonalMessageArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x08,\n p1: isFirstChunk ? 0x00 : 0x80,\n p2: 0x00,\n };\n\n return new ApduBuilder(signPersonalMessageArgs)\n .addBufferToData(data)\n .build();\n }\n\n parseResponse(\n apduResponse: ApduResponse,\n ): CommandResult<SignPersonalMessageCommandResponse> {\n const parser = new ApduParser(apduResponse);\n\n if (!CommandUtils.isSuccessResponse(apduResponse)) {\n return CommandResultFactory({\n error: GlobalCommandErrorHandler.handle(apduResponse),\n });\n }\n\n // The data is returned only for the last chunk\n const v = parser.extract8BitUInt();\n if (v === undefined) {\n return CommandResultFactory({ data: Nothing });\n }\n\n const r = parser.encodeToHexaString(\n parser.extractFieldByLength(R_LENGTH),\n true,\n );\n if (!r) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"R is missing\"),\n });\n }\n\n const s = parser.encodeToHexaString(\n parser.extractFieldByLength(S_LENGTH),\n true,\n );\n if (!s) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"S is missing\"),\n });\n }\n\n return CommandResultFactory({\n data: Just({\n r,\n s,\n v,\n }),\n });\n }\n}\n"],
5
+ "mappings": "AACA,OAEE,eAAAA,EAEA,cAAAC,EAIA,wBAAAC,EACA,gBAAAC,EACA,6BAAAC,EACA,0BAAAC,MACK,kCACP,OAAS,QAAAC,EAAkB,WAAAC,MAAe,YAI1C,MAAMC,EAAW,GACXC,EAAW,GAeV,MAAMC,CAGb,CACW,KAET,YAAYC,EAAsC,CAChD,KAAK,KAAOA,CACd,CAEA,SAAgB,CACd,KAAM,CAAE,KAAAC,EAAM,aAAAC,CAAa,EAAI,KAAK,KAC9BC,EAA2C,CAC/C,IAAK,IACL,IAAK,EACL,GAAID,EAAe,EAAO,IAC1B,GAAI,CACN,EAEA,OAAO,IAAIb,EAAYc,CAAuB,EAC3C,gBAAgBF,CAAI,EACpB,MAAM,CACX,CAEA,cACEG,EACmD,CACnD,MAAMC,EAAS,IAAIf,EAAWc,CAAY,EAE1C,GAAI,CAACZ,EAAa,kBAAkBY,CAAY,EAC9C,OAAOb,EAAqB,CAC1B,MAAOE,EAA0B,OAAOW,CAAY,CACtD,CAAC,EAIH,MAAME,EAAID,EAAO,gBAAgB,EACjC,GAAIC,IAAM,OACR,OAAOf,EAAqB,CAAE,KAAMK,CAAQ,CAAC,EAG/C,MAAMW,EAAIF,EAAO,mBACfA,EAAO,qBAAqBR,CAAQ,EACpC,EACF,EACA,GAAI,CAACU,EACH,OAAOhB,EAAqB,CAC1B,MAAO,IAAIG,EAAuB,cAAc,CAClD,CAAC,EAGH,MAAMc,EAAIH,EAAO,mBACfA,EAAO,qBAAqBP,CAAQ,EACpC,EACF,EACA,OAAKU,EAMEjB,EAAqB,CAC1B,KAAMI,EAAK,CACT,EAAAY,EACA,EAAAC,EACA,EAAAF,CACF,CAAC,CACH,CAAC,EAXQf,EAAqB,CAC1B,MAAO,IAAIG,EAAuB,cAAc,CAClD,CAAC,CAUL,CACF",
6
+ "names": ["ApduBuilder", "ApduParser", "CommandResultFactory", "CommandUtils", "GlobalCommandErrorHandler", "InvalidStatusWordError", "Just", "Nothing", "R_LENGTH", "S_LENGTH", "SignPersonalMessageCommand", "args", "data", "isFirstChunk", "signPersonalMessageArgs", "apduResponse", "parser", "v", "r", "s"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{ApduResponse as a,CommandResultFactory as r,InvalidStatusWordError as o,isSuccessCommandResult as p}from"@ledgerhq/device-management-kit";import{Just as d,Nothing as f}from"purify-ts";import{SignPersonalMessageCommand as t}from"./SignPersonalMessageCommand";const i=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,0]),m=new Uint8Array([224,8,0,0,25,...i]),u=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,15,66,84,67,32,116,111,32,116,104,101,32,109,111,111,110]),A=new Uint8Array([224,8,0,0,40,...u]),S=new Uint8Array([100,117,104,122,97,117,105,103,100,122,97,117,105,103,100,117,122,97,103,100,105,117,122,103,97,117,100,103,122,97,117,105,103,100,117,122,105,97,103,100,117,105,122,97,103]),E=new Uint8Array([224,8,128,0,45,...S]),_=new Uint8Array([27,151,164,202,143,105,70,51,89,38,1,245,162,62,11,204,85,60,157,10,144,211,163,66,45,87,85,8,169,40,152,185,110,105,80,208,46,116,233,193,2,193,100,162,37,83,48,130,202,189,216,144,239,196,99,246,127,96,206,254,140,63,135,207,206]),c=new Uint8Array([27,25,16,14,83,56,188,108,119,32,187,71,207,57,35,123,79,39,49,108,178,228,226,255,0,70,24,183,99,200,108,138,6,15,240,26,133,87,24,215,151,92,28,84,171,207,125,50,255,150,48,124,11,218,141,105,93,20,41,13,75,197,77,39,139]);describe("SignPersonalMessageCommand",()=>{const n={data:new Uint8Array([]),isFirstChunk:!0};describe("getApdu",()=>{it("should return correct apdu for an empty message",()=>{const x=new t({data:i,isFirstChunk:!0}).getApdu();expect(x.getRawApdu()).toStrictEqual(m)}),it("should return correct apdu for a short message",()=>{const x=new t({data:u,isFirstChunk:!0}).getApdu();expect(x.getRawApdu()).toStrictEqual(A)}),it("should return correct apdu for a not first chunk of a long message",()=>{const x=new t({data:S,isFirstChunk:!1}).getApdu();expect(x.getRawApdu()).toStrictEqual(E)})}),describe("parseResponse",()=>{it("should return correct response after signing success for a short message",()=>{const e=new t({...n}),x=new a({statusCode:new Uint8Array([144,0]),data:_}),s=e.parseResponse(x);expect(s).toStrictEqual(r({data:d({r:"0x97a4ca8f694633592601f5a23e0bcc553c9d0a90d3a3422d575508a92898b96e",s:"0x6950d02e74e9c102c164a225533082cabdd890efc463f67f60cefe8c3f87cfce",v:27})}))}),it("should return an error if user refused on device",()=>{const e=new t({...n}),x=new a({statusCode:new Uint8Array([85,21]),data:new Uint8Array([])}),s=e.parseResponse(x);expect(p(s)).toBe(!1)}),it("should return nothing if not last index of a long message",()=>{const x=new t({...n}).parseResponse(new a({statusCode:new Uint8Array([144,0]),data:new Uint8Array([])}));expect(x).toStrictEqual(r({data:f}))}),it("should return correct response of a long message",()=>{const e=new t({...n}),x=new a({statusCode:new Uint8Array([144,0]),data:c}),s=e.parseResponse(x);expect(s).toStrictEqual(r({data:d({r:"0x19100e5338bc6c7720bb47cf39237b4f27316cb2e4e2ff004618b763c86c8a06",s:"0x0ff01a855718d7975c1c54abcf7d32ff96307c0bda8d695d14290d4bc54d278b",v:27})}))}),it("should return an error if r is missing",()=>{const e=new t({...n}),x=new a({statusCode:new Uint8Array([144,0]),data:c.slice(0,32)}),s=e.parseResponse(x);expect(s).toStrictEqual(r({error:new o("R is missing")}))}),it("should return an error if s is missing",()=>{const e=new t({...n}),x=new a({statusCode:new Uint8Array([144,0]),data:c.slice(0,64)}),s=e.parseResponse(x);expect(s).toStrictEqual(r({error:new o("S is missing")}))})})});
2
+ //# sourceMappingURL=SignPersonalMessageCommand.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/command/SignPersonalMessageCommand.test.ts"],
4
+ "sourcesContent": ["import {\n ApduResponse,\n CommandResultFactory,\n InvalidStatusWordError,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\nimport { Just, Nothing } from \"purify-ts\";\n\nimport { SignPersonalMessageCommand } from \"./SignPersonalMessageCommand\";\n\nconst SIGN_PERSONAL_EMPTY_MESSAGE_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, 0x00,\n]);\nconst SIGN_PERSONAL_EMPTY_MESSAGE_APDU = new Uint8Array([\n 0xe0,\n 0x08,\n 0x00,\n 0x00,\n 0x19,\n ...SIGN_PERSONAL_EMPTY_MESSAGE_DATA,\n]);\n\nconst SIGN_PERSONAL_MESSAGE_SHORT_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, 0x0f, 0x42,\n 0x54, 0x43, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6d, 0x6f, 0x6f,\n 0x6e,\n]);\nconst SIGN_PERSONAL_MESSAGE_SHORT_APDU = new Uint8Array([\n 0xe0,\n 0x08,\n 0x00,\n 0x00,\n 0x28,\n ...SIGN_PERSONAL_MESSAGE_SHORT_DATA,\n]);\n\nconst SIGN_PERSONAL_MESSAGE_NOT_FIRST_CHUNK_DATA = new Uint8Array([\n 0x64, 0x75, 0x68, 0x7a, 0x61, 0x75, 0x69, 0x67, 0x64, 0x7a, 0x61, 0x75, 0x69,\n 0x67, 0x64, 0x75, 0x7a, 0x61, 0x67, 0x64, 0x69, 0x75, 0x7a, 0x67, 0x61, 0x75,\n 0x64, 0x67, 0x7a, 0x61, 0x75, 0x69, 0x67, 0x64, 0x75, 0x7a, 0x69, 0x61, 0x67,\n 0x64, 0x75, 0x69, 0x7a, 0x61, 0x67,\n]);\n\nconst SIGN_PERSONAL_MESSAGE_NOT_FIRST_CHUNK_APDU = new Uint8Array([\n 0xe0,\n 0x08,\n 0x80,\n 0x00,\n 0x2d,\n ...SIGN_PERSONAL_MESSAGE_NOT_FIRST_CHUNK_DATA,\n]);\n\nconst SIGN_PERSONAL_MESSAGE_SHORT_SUCCESS_RESPONSE = new Uint8Array([\n 0x1b, 0x97, 0xa4, 0xca, 0x8f, 0x69, 0x46, 0x33, 0x59, 0x26, 0x01, 0xf5, 0xa2,\n 0x3e, 0x0b, 0xcc, 0x55, 0x3c, 0x9d, 0x0a, 0x90, 0xd3, 0xa3, 0x42, 0x2d, 0x57,\n 0x55, 0x08, 0xa9, 0x28, 0x98, 0xb9, 0x6e, 0x69, 0x50, 0xd0, 0x2e, 0x74, 0xe9,\n 0xc1, 0x02, 0xc1, 0x64, 0xa2, 0x25, 0x53, 0x30, 0x82, 0xca, 0xbd, 0xd8, 0x90,\n 0xef, 0xc4, 0x63, 0xf6, 0x7f, 0x60, 0xce, 0xfe, 0x8c, 0x3f, 0x87, 0xcf, 0xce,\n]);\n\nconst SIGN_PERSONAL_LONG_MESSAGE_SUCCESS_RESPONSE = new Uint8Array([\n 0x1b, 0x19, 0x10, 0x0e, 0x53, 0x38, 0xbc, 0x6c, 0x77, 0x20, 0xbb, 0x47, 0xcf,\n 0x39, 0x23, 0x7b, 0x4f, 0x27, 0x31, 0x6c, 0xb2, 0xe4, 0xe2, 0xff, 0x00, 0x46,\n 0x18, 0xb7, 0x63, 0xc8, 0x6c, 0x8a, 0x06, 0x0f, 0xf0, 0x1a, 0x85, 0x57, 0x18,\n 0xd7, 0x97, 0x5c, 0x1c, 0x54, 0xab, 0xcf, 0x7d, 0x32, 0xff, 0x96, 0x30, 0x7c,\n 0x0b, 0xda, 0x8d, 0x69, 0x5d, 0x14, 0x29, 0x0d, 0x4b, 0xc5, 0x4d, 0x27, 0x8b,\n]);\n\ndescribe(\"SignPersonalMessageCommand\", (): void => {\n const defaultArgs = {\n data: new Uint8Array([]),\n isFirstChunk: true,\n };\n\n describe(\"getApdu\", () => {\n it(\"should return correct apdu for an empty message\", () => {\n // given\n const command = new SignPersonalMessageCommand({\n data: SIGN_PERSONAL_EMPTY_MESSAGE_DATA,\n isFirstChunk: true,\n });\n // when\n const apdu = command.getApdu();\n // then\n expect(apdu.getRawApdu()).toStrictEqual(SIGN_PERSONAL_EMPTY_MESSAGE_APDU);\n });\n\n it(\"should return correct apdu for a short message\", () => {\n // given\n const command = new SignPersonalMessageCommand({\n data: SIGN_PERSONAL_MESSAGE_SHORT_DATA,\n isFirstChunk: true,\n });\n // when\n const apdu = command.getApdu();\n // then\n expect(apdu.getRawApdu()).toStrictEqual(SIGN_PERSONAL_MESSAGE_SHORT_APDU);\n });\n\n it(\"should return correct apdu for a not first chunk of a long message\", () => {\n // given\n const command = new SignPersonalMessageCommand({\n data: SIGN_PERSONAL_MESSAGE_NOT_FIRST_CHUNK_DATA,\n isFirstChunk: false,\n });\n // when\n const apdu = command.getApdu();\n // then\n expect(apdu.getRawApdu()).toStrictEqual(\n SIGN_PERSONAL_MESSAGE_NOT_FIRST_CHUNK_APDU,\n );\n });\n });\n\n describe(\"parseResponse\", () => {\n it(\"should return correct response after signing success for a short message\", () => {\n // given\n const command = new SignPersonalMessageCommand({\n ...defaultArgs,\n });\n const apduResponse = new ApduResponse({\n statusCode: new Uint8Array([0x90, 0x00]),\n data: SIGN_PERSONAL_MESSAGE_SHORT_SUCCESS_RESPONSE,\n });\n // when\n const response = command.parseResponse(apduResponse);\n // then\n expect(response).toStrictEqual(\n CommandResultFactory({\n data: Just({\n r: \"0x97a4ca8f694633592601f5a23e0bcc553c9d0a90d3a3422d575508a92898b96e\",\n s: \"0x6950d02e74e9c102c164a225533082cabdd890efc463f67f60cefe8c3f87cfce\",\n v: 27,\n }),\n }),\n );\n });\n it(\"should return an error if user refused on device\", () => {\n const command = new SignPersonalMessageCommand({\n ...defaultArgs,\n });\n const apduResponse = new ApduResponse({\n statusCode: new Uint8Array([0x55, 0x15]),\n data: new Uint8Array([]),\n });\n // when\n const response = command.parseResponse(apduResponse);\n // then\n expect(isSuccessCommandResult(response)).toBe(false);\n });\n\n it(\"should return nothing if not last index of a long message\", () => {\n // given\n const command = new SignPersonalMessageCommand({\n ...defaultArgs,\n });\n // when\n const response = command.parseResponse(\n new ApduResponse({\n statusCode: new Uint8Array([0x90, 0x00]),\n data: new Uint8Array([]),\n }),\n );\n // then\n expect(response).toStrictEqual(CommandResultFactory({ data: Nothing }));\n });\n\n it(\"should return correct response of a long message\", () => {\n // given\n const command = new SignPersonalMessageCommand({\n ...defaultArgs,\n });\n const apduResponse = new ApduResponse({\n statusCode: new Uint8Array([0x90, 0x00]),\n data: SIGN_PERSONAL_LONG_MESSAGE_SUCCESS_RESPONSE,\n });\n // when\n const response = command.parseResponse(apduResponse);\n // then\n expect(response).toStrictEqual(\n CommandResultFactory({\n data: Just({\n r: \"0x19100e5338bc6c7720bb47cf39237b4f27316cb2e4e2ff004618b763c86c8a06\",\n s: \"0x0ff01a855718d7975c1c54abcf7d32ff96307c0bda8d695d14290d4bc54d278b\",\n v: 27,\n }),\n }),\n );\n });\n\n it(\"should return an error if r is missing\", () => {\n // given\n const command = new SignPersonalMessageCommand({\n ...defaultArgs,\n });\n const apduResponse = new ApduResponse({\n statusCode: new Uint8Array([0x90, 0x00]),\n data: SIGN_PERSONAL_LONG_MESSAGE_SUCCESS_RESPONSE.slice(0, 32),\n });\n // when\n const response = command.parseResponse(apduResponse);\n // then\n expect(response).toStrictEqual(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"R is missing\"),\n }),\n );\n });\n\n it(\"should return an error if s is missing\", () => {\n // given\n const command = new SignPersonalMessageCommand({\n ...defaultArgs,\n });\n const apduResponse = new ApduResponse({\n statusCode: new Uint8Array([0x90, 0x00]),\n data: SIGN_PERSONAL_LONG_MESSAGE_SUCCESS_RESPONSE.slice(0, 64),\n });\n // when\n const result = command.parseResponse(apduResponse);\n // then\n expect(result).toStrictEqual(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"S is missing\"),\n }),\n );\n });\n });\n});\n"],
5
+ "mappings": "AAAA,OACE,gBAAAA,EACA,wBAAAC,EACA,0BAAAC,EACA,0BAAAC,MACK,kCACP,OAAS,QAAAC,EAAM,WAAAC,MAAe,YAE9B,OAAS,8BAAAC,MAAkC,+BAE3C,MAAMC,EAAmC,IAAI,WAAW,CACtD,EAAM,IAAM,EAAM,EAAM,GAAM,IAAM,EAAM,EAAM,GAAM,IAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,CACpE,CAAC,EACKC,EAAmC,IAAI,WAAW,CACtD,IACA,EACA,EACA,EACA,GACA,GAAGD,CACL,CAAC,EAEKE,EAAmC,IAAI,WAAW,CACtD,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,GAAM,GAAM,GAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IACxE,GACF,CAAC,EACKC,EAAmC,IAAI,WAAW,CACtD,IACA,EACA,EACA,EACA,GACA,GAAGD,CACL,CAAC,EAEKE,EAA6C,IAAI,WAAW,CAChE,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IACxE,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IACxE,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IACxE,IAAM,IAAM,IAAM,IAAM,GAAM,GAChC,CAAC,EAEKC,EAA6C,IAAI,WAAW,CAChE,IACA,EACA,IACA,EACA,GACA,GAAGD,CACL,CAAC,EAEKE,EAA+C,IAAI,WAAW,CAClE,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,GAAM,GAAM,GAAM,EAAM,IAAM,IACxE,GAAM,GAAM,IAAM,GAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,GAAM,GACxE,GAAM,EAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,GAAM,IAAM,IACxE,IAAM,EAAM,IAAM,IAAM,IAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IACxE,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAC1E,CAAC,EAEKC,EAA8C,IAAI,WAAW,CACjE,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,GAAM,IACxE,GAAM,GAAM,IAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,EAAM,GACxE,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,EAAM,GAAM,IAAM,GAAM,IAAM,GAAM,GACxE,IAAM,IAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IACxE,GAAM,IAAM,IAAM,IAAM,GAAM,GAAM,GAAM,GAAM,GAAM,IAAM,GAAM,GAAM,GAC1E,CAAC,EAED,SAAS,6BAA8B,IAAY,CACjD,MAAMC,EAAc,CAClB,KAAM,IAAI,WAAW,CAAC,CAAC,EACvB,aAAc,EAChB,EAEA,SAAS,UAAW,IAAM,CACxB,GAAG,kDAAmD,IAAM,CAO1D,MAAMC,EALU,IAAIV,EAA2B,CAC7C,KAAMC,EACN,aAAc,EAChB,CAAC,EAEoB,QAAQ,EAE7B,OAAOS,EAAK,WAAW,CAAC,EAAE,cAAcR,CAAgC,CAC1E,CAAC,EAED,GAAG,iDAAkD,IAAM,CAOzD,MAAMQ,EALU,IAAIV,EAA2B,CAC7C,KAAMG,EACN,aAAc,EAChB,CAAC,EAEoB,QAAQ,EAE7B,OAAOO,EAAK,WAAW,CAAC,EAAE,cAAcN,CAAgC,CAC1E,CAAC,EAED,GAAG,qEAAsE,IAAM,CAO7E,MAAMM,EALU,IAAIV,EAA2B,CAC7C,KAAMK,EACN,aAAc,EAChB,CAAC,EAEoB,QAAQ,EAE7B,OAAOK,EAAK,WAAW,CAAC,EAAE,cACxBJ,CACF,CACF,CAAC,CACH,CAAC,EAED,SAAS,gBAAiB,IAAM,CAC9B,GAAG,2EAA4E,IAAM,CAEnF,MAAMK,EAAU,IAAIX,EAA2B,CAC7C,GAAGS,CACL,CAAC,EACKG,EAAe,IAAIlB,EAAa,CACpC,WAAY,IAAI,WAAW,CAAC,IAAM,CAAI,CAAC,EACvC,KAAMa,CACR,CAAC,EAEKM,EAAWF,EAAQ,cAAcC,CAAY,EAEnD,OAAOC,CAAQ,EAAE,cACflB,EAAqB,CACnB,KAAMG,EAAK,CACT,EAAG,qEACH,EAAG,qEACH,EAAG,EACL,CAAC,CACH,CAAC,CACH,CACF,CAAC,EACD,GAAG,mDAAoD,IAAM,CAC3D,MAAMa,EAAU,IAAIX,EAA2B,CAC7C,GAAGS,CACL,CAAC,EACKG,EAAe,IAAIlB,EAAa,CACpC,WAAY,IAAI,WAAW,CAAC,GAAM,EAAI,CAAC,EACvC,KAAM,IAAI,WAAW,CAAC,CAAC,CACzB,CAAC,EAEKmB,EAAWF,EAAQ,cAAcC,CAAY,EAEnD,OAAOf,EAAuBgB,CAAQ,CAAC,EAAE,KAAK,EAAK,CACrD,CAAC,EAED,GAAG,4DAA6D,IAAM,CAMpE,MAAMA,EAJU,IAAIb,EAA2B,CAC7C,GAAGS,CACL,CAAC,EAEwB,cACvB,IAAIf,EAAa,CACf,WAAY,IAAI,WAAW,CAAC,IAAM,CAAI,CAAC,EACvC,KAAM,IAAI,WAAW,CAAC,CAAC,CACzB,CAAC,CACH,EAEA,OAAOmB,CAAQ,EAAE,cAAclB,EAAqB,CAAE,KAAMI,CAAQ,CAAC,CAAC,CACxE,CAAC,EAED,GAAG,mDAAoD,IAAM,CAE3D,MAAMY,EAAU,IAAIX,EAA2B,CAC7C,GAAGS,CACL,CAAC,EACKG,EAAe,IAAIlB,EAAa,CACpC,WAAY,IAAI,WAAW,CAAC,IAAM,CAAI,CAAC,EACvC,KAAMc,CACR,CAAC,EAEKK,EAAWF,EAAQ,cAAcC,CAAY,EAEnD,OAAOC,CAAQ,EAAE,cACflB,EAAqB,CACnB,KAAMG,EAAK,CACT,EAAG,qEACH,EAAG,qEACH,EAAG,EACL,CAAC,CACH,CAAC,CACH,CACF,CAAC,EAED,GAAG,yCAA0C,IAAM,CAEjD,MAAMa,EAAU,IAAIX,EAA2B,CAC7C,GAAGS,CACL,CAAC,EACKG,EAAe,IAAIlB,EAAa,CACpC,WAAY,IAAI,WAAW,CAAC,IAAM,CAAI,CAAC,EACvC,KAAMc,EAA4C,MAAM,EAAG,EAAE,CAC/D,CAAC,EAEKK,EAAWF,EAAQ,cAAcC,CAAY,EAEnD,OAAOC,CAAQ,EAAE,cACflB,EAAqB,CACnB,MAAO,IAAIC,EAAuB,cAAc,CAClD,CAAC,CACH,CACF,CAAC,EAED,GAAG,yCAA0C,IAAM,CAEjD,MAAMe,EAAU,IAAIX,EAA2B,CAC7C,GAAGS,CACL,CAAC,EACKG,EAAe,IAAIlB,EAAa,CACpC,WAAY,IAAI,WAAW,CAAC,IAAM,CAAI,CAAC,EACvC,KAAMc,EAA4C,MAAM,EAAG,EAAE,CAC/D,CAAC,EAEKM,EAASH,EAAQ,cAAcC,CAAY,EAEjD,OAAOE,CAAM,EAAE,cACbnB,EAAqB,CACnB,MAAO,IAAIC,EAAuB,cAAc,CAClD,CAAC,CACH,CACF,CAAC,CACH,CAAC,CACH,CAAC",
6
+ "names": ["ApduResponse", "CommandResultFactory", "InvalidStatusWordError", "isSuccessCommandResult", "Just", "Nothing", "SignPersonalMessageCommand", "SIGN_PERSONAL_EMPTY_MESSAGE_DATA", "SIGN_PERSONAL_EMPTY_MESSAGE_APDU", "SIGN_PERSONAL_MESSAGE_SHORT_DATA", "SIGN_PERSONAL_MESSAGE_SHORT_APDU", "SIGN_PERSONAL_MESSAGE_NOT_FIRST_CHUNK_DATA", "SIGN_PERSONAL_MESSAGE_NOT_FIRST_CHUNK_APDU", "SIGN_PERSONAL_MESSAGE_SHORT_SUCCESS_RESPONSE", "SIGN_PERSONAL_LONG_MESSAGE_SUCCESS_RESPONSE", "defaultArgs", "apdu", "command", "apduResponse", "response", "result"]
7
+ }
@@ -1,55 +1,2 @@
1
- // https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#sign-eth-transaction
2
- import { ApduBuilder, ApduParser, CommandResultFactory, CommandUtils, GlobalCommandErrorHandler, InvalidStatusWordError, } from "@ledgerhq/device-management-kit";
3
- import { Just, Nothing } from "purify-ts";
4
- const R_LENGTH = 32;
5
- const S_LENGTH = 32;
6
- export class SignTransactionCommand {
7
- args;
8
- constructor(args) {
9
- this.args = args;
10
- }
11
- getApdu() {
12
- const { serializedTransaction, isFirstChunk } = this.args;
13
- const signEthTransactionArgs = {
14
- cla: 0xe0,
15
- ins: 0x04,
16
- p1: isFirstChunk ? 0x00 : 0x80,
17
- p2: 0x00,
18
- };
19
- const builder = new ApduBuilder(signEthTransactionArgs);
20
- return builder.addBufferToData(serializedTransaction).build();
21
- }
22
- parseResponse(response) {
23
- const parser = new ApduParser(response);
24
- if (!CommandUtils.isSuccessResponse(response)) {
25
- return CommandResultFactory({
26
- error: GlobalCommandErrorHandler.handle(response),
27
- });
28
- }
29
- // The data is returned only for the last chunk
30
- const v = parser.extract8BitUInt();
31
- if (v === undefined) {
32
- return CommandResultFactory({ data: Nothing });
33
- }
34
- const r = parser.encodeToHexaString(parser.extractFieldByLength(R_LENGTH), true);
35
- if (!r) {
36
- return CommandResultFactory({
37
- error: new InvalidStatusWordError("R is missing"),
38
- });
39
- }
40
- const s = parser.encodeToHexaString(parser.extractFieldByLength(S_LENGTH), true);
41
- if (!s) {
42
- return CommandResultFactory({
43
- error: new InvalidStatusWordError("S is missing"),
44
- });
45
- }
46
- return CommandResultFactory({
47
- data: Just({
48
- v,
49
- r,
50
- s,
51
- }),
52
- });
53
- }
54
- }
55
- //# sourceMappingURL=SignTransactionCommand.js.map
1
+ import{ApduBuilder as i,ApduParser as d,CommandResultFactory as e,CommandUtils as m,GlobalCommandErrorHandler as u,InvalidStatusWordError as o}from"@ledgerhq/device-management-kit";import{Just as p,Nothing as c}from"purify-ts";const g=32,l=32;class S{args;constructor(n){this.args=n}getApdu(){const{serializedTransaction:n,isFirstChunk:r}=this.args,t={cla:224,ins:4,p1:r?0:128,p2:0};return new i(t).addBufferToData(n).build()}parseResponse(n){const r=new d(n);if(!m.isSuccessResponse(n))return e({error:u.handle(n)});const t=r.extract8BitUInt();if(t===void 0)return e({data:c});const a=r.encodeToHexaString(r.extractFieldByLength(g),!0);if(!a)return e({error:new o("R is missing")});const s=r.encodeToHexaString(r.extractFieldByLength(l),!0);return s?e({data:p({v:t,r:a,s})}):e({error:new o("S is missing")})}}export{S as SignTransactionCommand};
2
+ //# sourceMappingURL=SignTransactionCommand.js.map
@@ -1 +1,7 @@
1
- {"version":3,"file":"SignTransactionCommand.js","sourceRoot":"","sources":["../../../../../src/internal/app-binder/command/SignTransactionCommand.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAC7F,OAAO,EAEL,WAAW,EAEX,UAAU,EAIV,oBAAoB,EACpB,YAAY,EACZ,yBAAyB,EAEzB,sBAAsB,GACvB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,IAAI,EAAS,OAAO,EAAE,MAAM,WAAW,CAAC;AAEjD,MAAM,QAAQ,GAAG,EAAE,CAAC;AACpB,MAAM,QAAQ,GAAG,EAAE,CAAC;AAmBpB,MAAM,OAAO,sBAAsB;IAIjC,IAAI,CAA6B;IAEjC,YAAY,IAAgC;QAC1C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,OAAO;QACL,MAAM,EAAE,qBAAqB,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC;QAE1D,MAAM,sBAAsB,GAAoB;YAC9C,GAAG,EAAE,IAAI;YACT,GAAG,EAAE,IAAI;YACT,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;YAC9B,EAAE,EAAE,IAAI;SACT,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,sBAAsB,CAAC,CAAC;QACxD,OAAO,OAAO,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC,KAAK,EAAE,CAAC;IAChE,CAAC;IAED,aAAa,CACX,QAAsB;QAEtB,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC;QAExC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9C,OAAO,oBAAoB,CAAC;gBAC1B,KAAK,EAAE,yBAAyB,CAAC,MAAM,CAAC,QAAQ,CAAC;aAClD,CAAC,CAAC;QACL,CAAC;QAED,+CAA+C;QAC/C,MAAM,CAAC,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC;QACnC,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YACpB,OAAO,oBAAoB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,CAAC,GAAG,MAAM,CAAC,kBAAkB,CACjC,MAAM,CAAC,oBAAoB,CAAC,QAAQ,CAAC,EACrC,IAAI,CACL,CAAC;QACF,IAAI,CAAC,CAAC,EAAE,CAAC;YACP,OAAO,oBAAoB,CAAC;gBAC1B,KAAK,EAAE,IAAI,sBAAsB,CAAC,cAAc,CAAC;aAClD,CAAC,CAAC;QACL,CAAC;QAED,MAAM,CAAC,GAAG,MAAM,CAAC,kBAAkB,CACjC,MAAM,CAAC,oBAAoB,CAAC,QAAQ,CAAC,EACrC,IAAI,CACL,CAAC;QACF,IAAI,CAAC,CAAC,EAAE,CAAC;YACP,OAAO,oBAAoB,CAAC;gBAC1B,KAAK,EAAE,IAAI,sBAAsB,CAAC,cAAc,CAAC;aAClD,CAAC,CAAC;QACL,CAAC;QAED,OAAO,oBAAoB,CAAC;YAC1B,IAAI,EAAE,IAAI,CAAC;gBACT,CAAC;gBACD,CAAC;gBACD,CAAC;aACF,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/command/SignTransactionCommand.ts"],
4
+ "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#sign-eth-transaction\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n ApduParser,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n CommandUtils,\n GlobalCommandErrorHandler,\n type HexaString,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\nimport { Just, type Maybe, Nothing } from \"purify-ts\";\n\nconst R_LENGTH = 32;\nconst S_LENGTH = 32;\n\nexport type SignTransactionCommandResponse = Maybe<{\n v: number;\n r: HexaString;\n s: HexaString;\n}>;\n\nexport type SignTransactionCommandArgs = {\n /**\n * The transaction to sign in max 150 bytes chunks\n */\n readonly serializedTransaction: Uint8Array;\n /**\n * If this is the first chunk of the message\n */\n readonly isFirstChunk: boolean;\n};\n\nexport class SignTransactionCommand\n implements Command<SignTransactionCommandResponse, SignTransactionCommandArgs>\n{\n args: SignTransactionCommandArgs;\n\n constructor(args: SignTransactionCommandArgs) {\n this.args = args;\n }\n\n getApdu(): Apdu {\n const { serializedTransaction, isFirstChunk } = this.args;\n\n const signEthTransactionArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x04,\n p1: isFirstChunk ? 0x00 : 0x80,\n p2: 0x00,\n };\n\n const builder = new ApduBuilder(signEthTransactionArgs);\n\n return builder.addBufferToData(serializedTransaction).build();\n }\n\n parseResponse(\n response: ApduResponse,\n ): CommandResult<SignTransactionCommandResponse> {\n const parser = new ApduParser(response);\n\n if (!CommandUtils.isSuccessResponse(response)) {\n return CommandResultFactory({\n error: GlobalCommandErrorHandler.handle(response),\n });\n }\n\n // The data is returned only for the last chunk\n const v = parser.extract8BitUInt();\n if (v === undefined) {\n return CommandResultFactory({ data: Nothing });\n }\n\n const r = parser.encodeToHexaString(\n parser.extractFieldByLength(R_LENGTH),\n true,\n );\n if (!r) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"R is missing\"),\n });\n }\n\n const s = parser.encodeToHexaString(\n parser.extractFieldByLength(S_LENGTH),\n true,\n );\n if (!s) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"S is missing\"),\n });\n }\n\n return CommandResultFactory({\n data: Just({\n v,\n r,\n s,\n }),\n });\n }\n}\n"],
5
+ "mappings": "AACA,OAEE,eAAAA,EAEA,cAAAC,EAIA,wBAAAC,EACA,gBAAAC,EACA,6BAAAC,EAEA,0BAAAC,MACK,kCACP,OAAS,QAAAC,EAAkB,WAAAC,MAAe,YAE1C,MAAMC,EAAW,GACXC,EAAW,GAmBV,MAAMC,CAEb,CACE,KAEA,YAAYC,EAAkC,CAC5C,KAAK,KAAOA,CACd,CAEA,SAAgB,CACd,KAAM,CAAE,sBAAAC,EAAuB,aAAAC,CAAa,EAAI,KAAK,KAE/CC,EAA0C,CAC9C,IAAK,IACL,IAAK,EACL,GAAID,EAAe,EAAO,IAC1B,GAAI,CACN,EAIA,OAFgB,IAAIb,EAAYc,CAAsB,EAEvC,gBAAgBF,CAAqB,EAAE,MAAM,CAC9D,CAEA,cACEG,EAC+C,CAC/C,MAAMC,EAAS,IAAIf,EAAWc,CAAQ,EAEtC,GAAI,CAACZ,EAAa,kBAAkBY,CAAQ,EAC1C,OAAOb,EAAqB,CAC1B,MAAOE,EAA0B,OAAOW,CAAQ,CAClD,CAAC,EAIH,MAAME,EAAID,EAAO,gBAAgB,EACjC,GAAIC,IAAM,OACR,OAAOf,EAAqB,CAAE,KAAMK,CAAQ,CAAC,EAG/C,MAAMW,EAAIF,EAAO,mBACfA,EAAO,qBAAqBR,CAAQ,EACpC,EACF,EACA,GAAI,CAACU,EACH,OAAOhB,EAAqB,CAC1B,MAAO,IAAIG,EAAuB,cAAc,CAClD,CAAC,EAGH,MAAM,EAAIW,EAAO,mBACfA,EAAO,qBAAqBP,CAAQ,EACpC,EACF,EACA,OAAK,EAMEP,EAAqB,CAC1B,KAAMI,EAAK,CACT,EAAAW,EACA,EAAAC,EACA,CACF,CAAC,CACH,CAAC,EAXQhB,EAAqB,CAC1B,MAAO,IAAIG,EAAuB,cAAc,CAClD,CAAC,CAUL,CACF",
6
+ "names": ["ApduBuilder", "ApduParser", "CommandResultFactory", "CommandUtils", "GlobalCommandErrorHandler", "InvalidStatusWordError", "Just", "Nothing", "R_LENGTH", "S_LENGTH", "SignTransactionCommand", "args", "serializedTransaction", "isFirstChunk", "signEthTransactionArgs", "response", "parser", "v", "r"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{ApduResponse as o,CommandResultFactory as x,InvalidStatusWordError as c,isSuccessCommandResult as s,UnknownDeviceExchangeError as d}from"@ledgerhq/device-management-kit";import{Just as i,Nothing as p}from"purify-ts";import{SignTransactionCommand as n}from"./SignTransactionCommand";const m=new o({statusCode:Uint8Array.from([144,0]),data:new Uint8Array([])}),r=new Uint8Array([38,141,39,68,71,17,187,237,68,43,155,252,119,5,192,115,22,183,228,17,80,197,51,18,114,228,210,9,212,34,249,250,57,0,204,63,12,25,56,192,241,255,198,45,240,55,34,90,19,54,251,161,249,254,250,17,245,175,197,188,185,126,177,179,209,144,0]),u=new o({statusCode:Uint8Array.from([144,0]),data:r});describe("SignTransactionCommand",()=>{const t={serializedTransaction:new Uint8Array,isFirstChunk:!0};describe("getApdu",()=>{describe("Legacy",()=>{it("should return the correct APDU when the data is empty",()=>{const e=new n({...t}).getApdu();expect(e.data).toStrictEqual(new Uint8Array),expect(e.cla).toBe(224),expect(e.ins).toBe(4),expect(e.p1).toBe(0),expect(e.p2).toBe(0)}),it("should return the correct APDU when the data is not empty",()=>{const e=new n({...t,serializedTransaction:new Uint8Array([1,2,3])}).getApdu();expect(e.data).toStrictEqual(new Uint8Array([1,2,3])),expect(e.cla).toBe(224),expect(e.ins).toBe(4),expect(e.p1).toBe(0),expect(e.p2).toBe(0)}),it("should return the correct APDU when it is not the first chunk",()=>{const e=new n({...t,isFirstChunk:!1}).getApdu();expect(e.data).toStrictEqual(new Uint8Array),expect(e.cla).toBe(224),expect(e.ins).toBe(4),expect(e.p1).toBe(128),expect(e.p2).toBe(0)})}),describe("Store and start",()=>{}),describe("Start",()=>{})}),describe("parseResponse",()=>{it("should return Nothing when the response data is empty",()=>{const e=new n({...t}).parseResponse(m);expect(e).toStrictEqual(x({data:p}))}),it("should return Just the response data when the response data is not empty",()=>{const e=new n({...t}).parseResponse(u);expect(e).toStrictEqual(x({data:i({r:"0x8d27444711bbed442b9bfc7705c07316b7e41150c5331272e4d209d422f9fa39",s:"0x00cc3f0c1938c0f1ffc62df037225a1336fba1f9fefa11f5afc5bcb97eb1b3d1",v:38})}))}),it("should return a UnknownDeviceExchangeError when the response status code is not 0x9000",()=>{const e=new n({...t}).parseResponse(new o({statusCode:Uint8Array.from([81,85]),data:new Uint8Array}));expect(s(e)).toBe(!1),expect(e.error).toBeInstanceOf(d)}),it("should return an InvalidStatusWord error when the response data r is not valid",()=>{const e=new n({...t}).parseResponse(new o({statusCode:Uint8Array.from([144,0]),data:r.slice(0,1)}));expect(s(e)).toBe(!1),expect(e.error).toBeInstanceOf(c)}),it("should return an error when the response data s is not valid",()=>{const e=new n({...t}).parseResponse(new o({statusCode:Uint8Array.from([144,0]),data:r.slice(0,33)}));expect(s(e)).toBe(!1)})})});
2
+ //# sourceMappingURL=SignTransactionCommand.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/command/SignTransactionCommand.test.ts"],
4
+ "sourcesContent": ["import {\n ApduResponse,\n CommandResultFactory,\n InvalidStatusWordError,\n isSuccessCommandResult,\n UnknownDeviceExchangeError,\n} from \"@ledgerhq/device-management-kit\";\nimport { Just, Nothing } from \"purify-ts\";\n\nimport {\n SignTransactionCommand,\n type SignTransactionCommandArgs,\n} from \"./SignTransactionCommand\";\n\nconst LNX_RESPONSE_GOOD = new ApduResponse({\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: new Uint8Array([]),\n});\n\nconst LNX_RESPONSE_DATA = new Uint8Array([\n 0x26, 0x8d, 0x27, 0x44, 0x47, 0x11, 0xbb, 0xed, 0x44, 0x2b, 0x9b, 0xfc, 0x77,\n 0x05, 0xc0, 0x73, 0x16, 0xb7, 0xe4, 0x11, 0x50, 0xc5, 0x33, 0x12, 0x72, 0xe4,\n 0xd2, 0x09, 0xd4, 0x22, 0xf9, 0xfa, 0x39, 0x00, 0xcc, 0x3f, 0x0c, 0x19, 0x38,\n 0xc0, 0xf1, 0xff, 0xc6, 0x2d, 0xf0, 0x37, 0x22, 0x5a, 0x13, 0x36, 0xfb, 0xa1,\n 0xf9, 0xfe, 0xfa, 0x11, 0xf5, 0xaf, 0xc5, 0xbc, 0xb9, 0x7e, 0xb1, 0xb3, 0xd1,\n 0x90, 0x00,\n]);\n\nconst LNX_RESPONSE_DATA_GOOD = new ApduResponse({\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: LNX_RESPONSE_DATA,\n});\n\ndescribe(\"SignTransactionCommand\", () => {\n const defaultArgs: SignTransactionCommandArgs = {\n serializedTransaction: new Uint8Array(),\n isFirstChunk: true,\n };\n\n describe(\"getApdu\", () => {\n describe(\"Legacy\", () => {\n it(\"should return the correct APDU when the data is empty\", () => {\n // GIVEN\n const command = new SignTransactionCommand({\n ...defaultArgs,\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.data).toStrictEqual(new Uint8Array());\n expect(apdu.cla).toBe(0xe0);\n expect(apdu.ins).toBe(0x04);\n expect(apdu.p1).toBe(0x00);\n expect(apdu.p2).toBe(0x00);\n });\n\n it(\"should return the correct APDU when the data is not empty\", () => {\n // GIVEN\n const command = new SignTransactionCommand({\n ...defaultArgs,\n serializedTransaction: new Uint8Array([0x01, 0x02, 0x03]),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.data).toStrictEqual(new Uint8Array([0x01, 0x02, 0x03]));\n expect(apdu.cla).toBe(0xe0);\n expect(apdu.ins).toBe(0x04);\n expect(apdu.p1).toBe(0x00);\n expect(apdu.p2).toBe(0x00);\n });\n\n it(\"should return the correct APDU when it is not the first chunk\", () => {\n // GIVEN\n const command = new SignTransactionCommand({\n ...defaultArgs,\n isFirstChunk: false,\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.data).toStrictEqual(new Uint8Array());\n expect(apdu.cla).toBe(0xe0);\n expect(apdu.ins).toBe(0x04);\n expect(apdu.p1).toBe(0x80);\n expect(apdu.p2).toBe(0x00);\n });\n });\n\n describe(\"Store and start\", () => {\n // TODO\n });\n\n describe(\"Start\", () => {\n // TODO\n });\n });\n\n describe(\"parseResponse\", () => {\n it(\"should return Nothing when the response data is empty\", () => {\n // GIVEN\n const command = new SignTransactionCommand({\n ...defaultArgs,\n });\n\n // WHEN\n const response = command.parseResponse(LNX_RESPONSE_GOOD);\n\n // THEN\n expect(response).toStrictEqual(CommandResultFactory({ data: Nothing }));\n });\n\n it(\"should return Just the response data when the response data is not empty\", () => {\n // GIVEN\n const command = new SignTransactionCommand({\n ...defaultArgs,\n });\n\n // WHEN\n const response = command.parseResponse(LNX_RESPONSE_DATA_GOOD);\n\n // THEN\n expect(response).toStrictEqual(\n CommandResultFactory({\n data: Just({\n r: \"0x8d27444711bbed442b9bfc7705c07316b7e41150c5331272e4d209d422f9fa39\",\n s: \"0x00cc3f0c1938c0f1ffc62df037225a1336fba1f9fefa11f5afc5bcb97eb1b3d1\",\n v: 38,\n }),\n }),\n );\n });\n\n it(\"should return a UnknownDeviceExchangeError when the response status code is not 0x9000\", () => {\n // GIVEN\n const command = new SignTransactionCommand({\n ...defaultArgs,\n });\n\n // WHEN\n const response = command.parseResponse(\n new ApduResponse({\n statusCode: Uint8Array.from([0x51, 0x55]),\n data: new Uint8Array(),\n }),\n );\n\n // THEN\n expect(isSuccessCommandResult(response)).toBe(false);\n // @ts-expect-error `error`is not typed because we did not narrow it\n expect(response.error).toBeInstanceOf(UnknownDeviceExchangeError);\n });\n\n it(\"should return an InvalidStatusWord error when the response data r is not valid\", () => {\n // GIVEN\n const command = new SignTransactionCommand({\n ...defaultArgs,\n });\n\n // WHEN\n const response = command.parseResponse(\n new ApduResponse({\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: LNX_RESPONSE_DATA.slice(0, 1),\n }),\n );\n\n // THEN\n expect(isSuccessCommandResult(response)).toBe(false);\n // @ts-expect-error `error`is not typed because we did not narrow it\n expect(response.error).toBeInstanceOf(InvalidStatusWordError);\n });\n\n it(\"should return an error when the response data s is not valid\", () => {\n // GIVEN\n const command = new SignTransactionCommand({\n ...defaultArgs,\n });\n\n // WHEN\n const response = command.parseResponse(\n new ApduResponse({\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: LNX_RESPONSE_DATA.slice(0, 33),\n }),\n );\n\n // THEN\n expect(isSuccessCommandResult(response)).toBe(false);\n });\n });\n});\n"],
5
+ "mappings": "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",
6
+ "names": ["ApduResponse", "CommandResultFactory", "InvalidStatusWordError", "isSuccessCommandResult", "UnknownDeviceExchangeError", "Just", "Nothing", "SignTransactionCommand", "LNX_RESPONSE_GOOD", "LNX_RESPONSE_DATA", "LNX_RESPONSE_DATA_GOOD", "defaultArgs", "apdu", "response"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{ApduBuilder as a,ApduParser as d,CommandResultFactory as r,CommandUtils as m,GlobalCommandErrorHandler as u,InvalidStatusWordError as t}from"@ledgerhq/device-management-kit";import{Just as p}from"purify-ts";const c=32,l=32;class C{getApdu(){const n={cla:224,ins:4,p1:0,p2:2};return new a(n).build()}parseResponse(n){const e=new d(n);if(!m.isSuccessResponse(n))return r({error:u.handle(n)});const s=e.extract8BitUInt();if(s===void 0)return r({error:new t("V is missing")});const o=e.encodeToHexaString(e.extractFieldByLength(c),!0);if(!o)return r({error:new t("R is missing")});const i=e.encodeToHexaString(e.extractFieldByLength(l),!0);return i?r({data:p({v:s,r:o,s:i})}):r({error:new t("S is missing")})}}export{C as StartTransactionCommand};
2
+ //# sourceMappingURL=StartTransactionCommand.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/command/StartTransactionCommand.ts"],
4
+ "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#sign-eth-transaction\n// https://github.com/LedgerHQ/generic_parser/blob/master/specs.md#sign (to be removed when the top link has been updated)\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n ApduParser,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n CommandUtils,\n GlobalCommandErrorHandler,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\nimport { Just } from \"purify-ts\";\n\nimport { type SignTransactionCommandResponse } from \"./SignTransactionCommand\";\n\nconst R_LENGTH = 32;\nconst S_LENGTH = 32;\n\n/**\n * StartTransactionCommand is a SignTransactionCommand that is used to sign the transaction.\n * It signature differs from the SignTransactionCommand because\n * the command does not need a Transaction to be provided.\n */\nexport class StartTransactionCommand\n implements Command<SignTransactionCommandResponse, void>\n{\n getApdu(): Apdu {\n const signEthTransactionArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x04,\n p1: 0x00,\n p2: 0x02,\n };\n const builder = new ApduBuilder(signEthTransactionArgs);\n return builder.build();\n }\n\n parseResponse(\n response: ApduResponse,\n ): CommandResult<SignTransactionCommandResponse> {\n const parser = new ApduParser(response);\n\n if (!CommandUtils.isSuccessResponse(response)) {\n return CommandResultFactory({\n error: GlobalCommandErrorHandler.handle(response),\n });\n }\n\n // The data is returned only for the last chunk\n const v = parser.extract8BitUInt();\n if (v === undefined) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"V is missing\"),\n });\n }\n\n const r = parser.encodeToHexaString(\n parser.extractFieldByLength(R_LENGTH),\n true,\n );\n if (!r) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"R is missing\"),\n });\n }\n\n const s = parser.encodeToHexaString(\n parser.extractFieldByLength(S_LENGTH),\n true,\n );\n if (!s) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"S is missing\"),\n });\n }\n\n return CommandResultFactory({\n data: Just({\n v,\n r,\n s,\n }),\n });\n }\n}\n"],
5
+ "mappings": "AAEA,OAEE,eAAAA,EAEA,cAAAC,EAIA,wBAAAC,EACA,gBAAAC,EACA,6BAAAC,EACA,0BAAAC,MACK,kCACP,OAAS,QAAAC,MAAY,YAIrB,MAAMC,EAAW,GACXC,EAAW,GAOV,MAAMC,CAEb,CACE,SAAgB,CACd,MAAMC,EAA0C,CAC9C,IAAK,IACL,IAAK,EACL,GAAI,EACJ,GAAI,CACN,EAEA,OADgB,IAAIV,EAAYU,CAAsB,EACvC,MAAM,CACvB,CAEA,cACEC,EAC+C,CAC/C,MAAMC,EAAS,IAAIX,EAAWU,CAAQ,EAEtC,GAAI,CAACR,EAAa,kBAAkBQ,CAAQ,EAC1C,OAAOT,EAAqB,CAC1B,MAAOE,EAA0B,OAAOO,CAAQ,CAClD,CAAC,EAIH,MAAME,EAAID,EAAO,gBAAgB,EACjC,GAAIC,IAAM,OACR,OAAOX,EAAqB,CAC1B,MAAO,IAAIG,EAAuB,cAAc,CAClD,CAAC,EAGH,MAAMS,EAAIF,EAAO,mBACfA,EAAO,qBAAqBL,CAAQ,EACpC,EACF,EACA,GAAI,CAACO,EACH,OAAOZ,EAAqB,CAC1B,MAAO,IAAIG,EAAuB,cAAc,CAClD,CAAC,EAGH,MAAMU,EAAIH,EAAO,mBACfA,EAAO,qBAAqBJ,CAAQ,EACpC,EACF,EACA,OAAKO,EAMEb,EAAqB,CAC1B,KAAMI,EAAK,CACT,EAAAO,EACA,EAAAC,EACA,EAAAC,CACF,CAAC,CACH,CAAC,EAXQb,EAAqB,CAC1B,MAAO,IAAIG,EAAuB,cAAc,CAClD,CAAC,CAUL,CACF",
6
+ "names": ["ApduBuilder", "ApduParser", "CommandResultFactory", "CommandUtils", "GlobalCommandErrorHandler", "InvalidStatusWordError", "Just", "R_LENGTH", "S_LENGTH", "StartTransactionCommand", "signEthTransactionArgs", "response", "parser", "v", "r", "s"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{InvalidStatusWordError as s,isSuccessCommandResult as n,UnknownDeviceExchangeError as a}from"@ledgerhq/device-management-kit";import{StartTransactionCommand as t}from"./StartTransactionCommand";describe("StartTransactionCommand",()=>{describe("getApdu",()=>{it("should return the raw APDU",()=>{const o=new t().getApdu();expect(o.getRawApdu()).toStrictEqual(Uint8Array.from([224,4,0,2,0]))})}),describe("parseResponse",()=>{it("should return an error if the response status code is invalid",()=>{const e={data:Uint8Array.from([]),statusCode:Uint8Array.from([109,0])},r=new t().parseResponse(e);n(r)?fail("Expected an error"):expect(r.error).toBeInstanceOf(a)}),it("should return the correct response",()=>{const e={data:Uint8Array.from([1,...Array(32).fill(2),...Array(32).fill(3)]),statusCode:Uint8Array.from([144,0])},r=new t().parseResponse(e);n(r)?expect(r.data.extract()).toEqual({r:"0x0202020202020202020202020202020202020202020202020202020202020202",s:"0x0303030303030303030303030303030303030303030303030303030303030303",v:1}):fail("Expected a success")}),it("should return an error if v is not valid",()=>{const e={data:Uint8Array.from([]),statusCode:Uint8Array.from([144,0])},r=new t().parseResponse(e);n(r)?fail("Expected an error"):(expect(r.error).toBeInstanceOf(s),expect(r.error.originalError).toEqual(new Error("V is missing")))}),it("should return an error if r is not valid",()=>{const e={data:Uint8Array.from([1,...Array(20).fill(2)]),statusCode:Uint8Array.from([144,0])},r=new t().parseResponse(e);n(r)?fail("Expected an error"):(expect(r.error).toBeInstanceOf(s),expect(r.error.originalError).toEqual(new Error("R is missing")))}),it("should return an error if s is not valid",()=>{const e={data:Uint8Array.from([1,...Array(32).fill(2),...Array(20).fill(2)]),statusCode:Uint8Array.from([144,0])},r=new t().parseResponse(e);n(r)?fail("Expected an error"):(expect(r.error).toBeInstanceOf(s),expect(r.error.originalError).toEqual(new Error("S is missing")))})})});
2
+ //# sourceMappingURL=StartTransactionCommand.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/command/StartTransactionCommand.test.ts"],
4
+ "sourcesContent": ["import {\n InvalidStatusWordError,\n isSuccessCommandResult,\n UnknownDeviceExchangeError,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { StartTransactionCommand } from \"./StartTransactionCommand\";\n\ndescribe(\"StartTransactionCommand\", () => {\n describe(\"getApdu\", () => {\n it(\"should return the raw APDU\", () => {\n // WHEN\n const command = new StartTransactionCommand();\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n Uint8Array.from([0xe0, 0x04, 0x00, 0x02, 0x00]),\n );\n });\n });\n\n describe(\"parseResponse\", () => {\n it(\"should return an error if the response status code is invalid\", () => {\n // GIVEN\n const response = {\n data: Uint8Array.from([]),\n statusCode: Uint8Array.from([0x6d, 0x00]), // Invalid status code\n };\n\n // WHEN\n const command = new StartTransactionCommand();\n const result = command.parseResponse(response);\n\n // THEN\n if (isSuccessCommandResult(result)) {\n fail(\"Expected an error\");\n } else {\n expect(result.error).toBeInstanceOf(UnknownDeviceExchangeError);\n }\n });\n\n it(\"should return the correct response\", () => {\n // GIVEN\n const response = {\n data: Uint8Array.from([\n 0x01,\n ...Array<number>(32).fill(0x02),\n ...Array<number>(32).fill(0x03),\n ]), // Some data\n statusCode: Uint8Array.from([0x90, 0x00]), // Success status code\n };\n\n // WHEN\n const command = new StartTransactionCommand();\n const result = command.parseResponse(response);\n\n // THEN\n if (isSuccessCommandResult(result)) {\n expect(result.data.extract()).toEqual({\n r: \"0x0202020202020202020202020202020202020202020202020202020202020202\",\n s: \"0x0303030303030303030303030303030303030303030303030303030303030303\",\n v: 1,\n });\n } else {\n fail(\"Expected a success\");\n }\n });\n\n it(\"should return an error if v is not valid\", () => {\n // GIVEN\n const response = {\n data: Uint8Array.from([]), // No data\n statusCode: Uint8Array.from([0x90, 0x00]), // Success status code\n };\n\n // WHEN\n const command = new StartTransactionCommand();\n const result = command.parseResponse(response);\n\n // THEN\n if (isSuccessCommandResult(result)) {\n fail(\"Expected an error\");\n } else {\n expect(result.error).toBeInstanceOf(InvalidStatusWordError);\n expect(result.error.originalError).toEqual(new Error(\"V is missing\"));\n }\n });\n\n it(\"should return an error if r is not valid\", () => {\n // GIVEN\n const response = {\n data: Uint8Array.from([0x01, ...Array<number>(20).fill(0x02)]), // Invalid r\n statusCode: Uint8Array.from([0x90, 0x00]), // Success status code\n };\n\n // WHEN\n const command = new StartTransactionCommand();\n const result = command.parseResponse(response);\n\n // THEN\n if (isSuccessCommandResult(result)) {\n fail(\"Expected an error\");\n } else {\n expect(result.error).toBeInstanceOf(InvalidStatusWordError);\n expect(result.error.originalError).toEqual(new Error(\"R is missing\"));\n }\n });\n\n it(\"should return an error if s is not valid\", () => {\n // GIVEN\n const response = {\n data: Uint8Array.from([\n 0x01,\n ...Array<number>(32).fill(0x02),\n ...Array<number>(20).fill(0x02),\n ]), // Invalid s\n statusCode: Uint8Array.from([0x90, 0x00]), // Success status code\n };\n\n // WHEN\n const command = new StartTransactionCommand();\n const result = command.parseResponse(response);\n\n // THEN\n if (isSuccessCommandResult(result)) {\n fail(\"Expected an error\");\n } else {\n expect(result.error).toBeInstanceOf(InvalidStatusWordError);\n expect(result.error.originalError).toEqual(new Error(\"S is missing\"));\n }\n });\n });\n});\n"],
5
+ "mappings": "AAAA,OACE,0BAAAA,EACA,0BAAAC,EACA,8BAAAC,MACK,kCAEP,OAAS,2BAAAC,MAA+B,4BAExC,SAAS,0BAA2B,IAAM,CACxC,SAAS,UAAW,IAAM,CACxB,GAAG,6BAA8B,IAAM,CAGrC,MAAMC,EADU,IAAID,EAAwB,EACvB,QAAQ,EAG7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cACxB,WAAW,KAAK,CAAC,IAAM,EAAM,EAAM,EAAM,CAAI,CAAC,CAChD,CACF,CAAC,CACH,CAAC,EAED,SAAS,gBAAiB,IAAM,CAC9B,GAAG,gEAAiE,IAAM,CAExE,MAAMC,EAAW,CACf,KAAM,WAAW,KAAK,CAAC,CAAC,EACxB,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAIMC,EADU,IAAIH,EAAwB,EACrB,cAAcE,CAAQ,EAGzCJ,EAAuBK,CAAM,EAC/B,KAAK,mBAAmB,EAExB,OAAOA,EAAO,KAAK,EAAE,eAAeJ,CAA0B,CAElE,CAAC,EAED,GAAG,qCAAsC,IAAM,CAE7C,MAAMG,EAAW,CACf,KAAM,WAAW,KAAK,CACpB,EACA,GAAG,MAAc,EAAE,EAAE,KAAK,CAAI,EAC9B,GAAG,MAAc,EAAE,EAAE,KAAK,CAAI,CAChC,CAAC,EACD,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAIMC,EADU,IAAIH,EAAwB,EACrB,cAAcE,CAAQ,EAGzCJ,EAAuBK,CAAM,EAC/B,OAAOA,EAAO,KAAK,QAAQ,CAAC,EAAE,QAAQ,CACpC,EAAG,qEACH,EAAG,qEACH,EAAG,CACL,CAAC,EAED,KAAK,oBAAoB,CAE7B,CAAC,EAED,GAAG,2CAA4C,IAAM,CAEnD,MAAMD,EAAW,CACf,KAAM,WAAW,KAAK,CAAC,CAAC,EACxB,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAIMC,EADU,IAAIH,EAAwB,EACrB,cAAcE,CAAQ,EAGzCJ,EAAuBK,CAAM,EAC/B,KAAK,mBAAmB,GAExB,OAAOA,EAAO,KAAK,EAAE,eAAeN,CAAsB,EAC1D,OAAOM,EAAO,MAAM,aAAa,EAAE,QAAQ,IAAI,MAAM,cAAc,CAAC,EAExE,CAAC,EAED,GAAG,2CAA4C,IAAM,CAEnD,MAAMD,EAAW,CACf,KAAM,WAAW,KAAK,CAAC,EAAM,GAAG,MAAc,EAAE,EAAE,KAAK,CAAI,CAAC,CAAC,EAC7D,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAIMC,EADU,IAAIH,EAAwB,EACrB,cAAcE,CAAQ,EAGzCJ,EAAuBK,CAAM,EAC/B,KAAK,mBAAmB,GAExB,OAAOA,EAAO,KAAK,EAAE,eAAeN,CAAsB,EAC1D,OAAOM,EAAO,MAAM,aAAa,EAAE,QAAQ,IAAI,MAAM,cAAc,CAAC,EAExE,CAAC,EAED,GAAG,2CAA4C,IAAM,CAEnD,MAAMD,EAAW,CACf,KAAM,WAAW,KAAK,CACpB,EACA,GAAG,MAAc,EAAE,EAAE,KAAK,CAAI,EAC9B,GAAG,MAAc,EAAE,EAAE,KAAK,CAAI,CAChC,CAAC,EACD,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAIMC,EADU,IAAIH,EAAwB,EACrB,cAAcE,CAAQ,EAGzCJ,EAAuBK,CAAM,EAC/B,KAAK,mBAAmB,GAExB,OAAOA,EAAO,KAAK,EAAE,eAAeN,CAAsB,EAC1D,OAAOM,EAAO,MAAM,aAAa,EAAE,QAAQ,IAAI,MAAM,cAAc,CAAC,EAExE,CAAC,CACH,CAAC,CACH,CAAC",
6
+ "names": ["InvalidStatusWordError", "isSuccessCommandResult", "UnknownDeviceExchangeError", "StartTransactionCommand", "apdu", "response", "result"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{ApduBuilder as o,CommandResultFactory as e,CommandUtils as s,GlobalCommandErrorHandler as t}from"@ledgerhq/device-management-kit";class u{constructor(r){this.args=r}getApdu(){const{serializedTransaction:r,isFirstChunk:n}=this.args,a={cla:224,ins:4,p1:n?0:128,p2:1};return new o(a).addBufferToData(r).build()}parseResponse(r){return s.isSuccessResponse(r)?e({data:void 0}):e({error:t.handle(r)})}}export{u as StoreTransactionCommand};
2
+ //# sourceMappingURL=StoreTransactionCommand.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/command/StoreTransactionCommand.ts"],
4
+ "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#sign-eth-transaction\n// https://github.com/LedgerHQ/generic_parser/blob/master/specs.md#sign (to be removed when the top link has been updated)\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n CommandUtils,\n GlobalCommandErrorHandler,\n} from \"@ledgerhq/device-management-kit\";\n\nexport type StoreTransactionCommandArgs = {\n /**\n * The transaction to sign in max 150 bytes chunks\n */\n readonly serializedTransaction: Uint8Array;\n /**\n * If this is the first chunk of the message\n */\n readonly isFirstChunk: boolean;\n};\n\n/**\n * StoreTransactionCommand is a SignTransactionCommand that is used to initiate\n * the sign transaction flow. It signature differs from the SignTransactionCommand\n * because the command does not return any data.\n */\nexport class StoreTransactionCommand\n implements Command<void, StoreTransactionCommandArgs>\n{\n constructor(private readonly args: StoreTransactionCommandArgs) {}\n\n getApdu(): Apdu {\n const { serializedTransaction, isFirstChunk } = this.args;\n\n const signEthTransactionArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x04,\n p1: isFirstChunk ? 0x00 : 0x80,\n p2: 0x01,\n };\n const builder = new ApduBuilder(signEthTransactionArgs);\n return builder.addBufferToData(serializedTransaction).build();\n }\n\n parseResponse(response: ApduResponse): CommandResult<void> {\n if (!CommandUtils.isSuccessResponse(response)) {\n return CommandResultFactory({\n error: GlobalCommandErrorHandler.handle(response),\n });\n }\n\n return CommandResultFactory({ data: undefined });\n }\n}\n"],
5
+ "mappings": "AAEA,OAEE,eAAAA,EAKA,wBAAAC,EACA,gBAAAC,EACA,6BAAAC,MACK,kCAkBA,MAAMC,CAEb,CACE,YAA6BC,EAAmC,CAAnC,UAAAA,CAAoC,CAEjE,SAAgB,CACd,KAAM,CAAE,sBAAAC,EAAuB,aAAAC,CAAa,EAAI,KAAK,KAE/CC,EAA0C,CAC9C,IAAK,IACL,IAAK,EACL,GAAID,EAAe,EAAO,IAC1B,GAAI,CACN,EAEA,OADgB,IAAIP,EAAYQ,CAAsB,EACvC,gBAAgBF,CAAqB,EAAE,MAAM,CAC9D,CAEA,cAAcG,EAA6C,CACzD,OAAKP,EAAa,kBAAkBO,CAAQ,EAMrCR,EAAqB,CAAE,KAAM,MAAU,CAAC,EALtCA,EAAqB,CAC1B,MAAOE,EAA0B,OAAOM,CAAQ,CAClD,CAAC,CAIL,CACF",
6
+ "names": ["ApduBuilder", "CommandResultFactory", "CommandUtils", "GlobalCommandErrorHandler", "StoreTransactionCommand", "args", "serializedTransaction", "isFirstChunk", "signEthTransactionArgs", "response"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{isSuccessCommandResult as s,UnknownDeviceExchangeError as o}from"@ledgerhq/device-management-kit";import{StoreTransactionCommand as t}from"./StoreTransactionCommand";describe("StoreTransactionCommand",()=>{describe("getApdu",()=>{it("should return the raw APDU for the first chunk",()=>{const r={serializedTransaction:Uint8Array.from([1,2,3]),isFirstChunk:!0},e=new t(r).getApdu();expect(e.getRawApdu()).toStrictEqual(Uint8Array.from([224,4,0,1,3,1,2,3]))}),it("should return the raw APDU for the subsequent chunk",()=>{const r={serializedTransaction:Uint8Array.from([4,5,6]),isFirstChunk:!1},e=new t(r).getApdu();expect(e.getRawApdu()).toStrictEqual(Uint8Array.from([224,4,128,1,3,4,5,6]))})}),describe("parseResponse",()=>{it("should return an error if the response status code is invalid",()=>{const r={data:Uint8Array.from([]),statusCode:Uint8Array.from([109,0])},e=new t({serializedTransaction:new Uint8Array(0),isFirstChunk:!0}).parseResponse(r);if(s(e))throw new Error("Expected error");expect(e.error).toBeInstanceOf(o)}),it("should return the correct response",()=>{const r={data:Uint8Array.from([]),statusCode:Uint8Array.from([144,0])},e=new t({serializedTransaction:new Uint8Array(0),isFirstChunk:!0}).parseResponse(r);if(s(e))expect(e.data).toBeUndefined();else throw new Error("Expected success")})})});
2
+ //# sourceMappingURL=StoreTransactionCommand.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/app-binder/command/StoreTransactionCommand.test.ts"],
4
+ "sourcesContent": ["import {\n type ApduResponse,\n isSuccessCommandResult,\n UnknownDeviceExchangeError,\n} from \"@ledgerhq/device-management-kit\";\n\nimport {\n StoreTransactionCommand,\n type StoreTransactionCommandArgs,\n} from \"./StoreTransactionCommand\";\n\ndescribe(\"StoreTransactionCommand\", () => {\n describe(\"getApdu\", () => {\n it(\"should return the raw APDU for the first chunk\", () => {\n // GIVEN\n const args: StoreTransactionCommandArgs = {\n serializedTransaction: Uint8Array.from([0x01, 0x02, 0x03]),\n isFirstChunk: true,\n };\n\n // WHEN\n const command = new StoreTransactionCommand(args);\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n Uint8Array.from([0xe0, 0x04, 0x00, 0x01, 0x03, 0x01, 0x02, 0x03]),\n );\n });\n\n it(\"should return the raw APDU for the subsequent chunk\", () => {\n // GIVEN\n const args: StoreTransactionCommandArgs = {\n serializedTransaction: Uint8Array.from([0x04, 0x05, 0x06]),\n isFirstChunk: false,\n };\n\n // WHEN\n const command = new StoreTransactionCommand(args);\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n Uint8Array.from([0xe0, 0x04, 0x80, 0x01, 0x03, 0x04, 0x05, 0x06]),\n );\n });\n });\n\n describe(\"parseResponse\", () => {\n it(\"should return an error if the response status code is invalid\", () => {\n // GIVEN\n const response: ApduResponse = {\n data: Uint8Array.from([]),\n statusCode: Uint8Array.from([0x6d, 0x00]), // Invalid status code\n };\n\n // WHEN\n const command = new StoreTransactionCommand({\n serializedTransaction: new Uint8Array(0),\n isFirstChunk: true,\n });\n const result = command.parseResponse(response);\n\n // THEN\n if (isSuccessCommandResult(result)) {\n throw new Error(\"Expected error\");\n } else {\n expect(result.error).toBeInstanceOf(UnknownDeviceExchangeError);\n }\n });\n\n it(\"should return the correct response\", () => {\n // GIVEN\n const response: ApduResponse = {\n data: Uint8Array.from([]),\n statusCode: Uint8Array.from([0x90, 0x00]), // Success status code\n };\n\n // WHEN\n const command = new StoreTransactionCommand({\n serializedTransaction: new Uint8Array(0),\n isFirstChunk: true,\n });\n const result = command.parseResponse(response);\n\n // THEN\n if (isSuccessCommandResult(result)) {\n expect(result.data).toBeUndefined();\n } else {\n throw new Error(\"Expected success\");\n }\n });\n });\n});\n"],
5
+ "mappings": "AAAA,OAEE,0BAAAA,EACA,8BAAAC,MACK,kCAEP,OACE,2BAAAC,MAEK,4BAEP,SAAS,0BAA2B,IAAM,CACxC,SAAS,UAAW,IAAM,CACxB,GAAG,iDAAkD,IAAM,CAEzD,MAAMC,EAAoC,CACxC,sBAAuB,WAAW,KAAK,CAAC,EAAM,EAAM,CAAI,CAAC,EACzD,aAAc,EAChB,EAIMC,EADU,IAAIF,EAAwBC,CAAI,EAC3B,QAAQ,EAG7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cACxB,WAAW,KAAK,CAAC,IAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,CAAI,CAAC,CAClE,CACF,CAAC,EAED,GAAG,sDAAuD,IAAM,CAE9D,MAAMD,EAAoC,CACxC,sBAAuB,WAAW,KAAK,CAAC,EAAM,EAAM,CAAI,CAAC,EACzD,aAAc,EAChB,EAIMC,EADU,IAAIF,EAAwBC,CAAI,EAC3B,QAAQ,EAG7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cACxB,WAAW,KAAK,CAAC,IAAM,EAAM,IAAM,EAAM,EAAM,EAAM,EAAM,CAAI,CAAC,CAClE,CACF,CAAC,CACH,CAAC,EAED,SAAS,gBAAiB,IAAM,CAC9B,GAAG,gEAAiE,IAAM,CAExE,MAAMC,EAAyB,CAC7B,KAAM,WAAW,KAAK,CAAC,CAAC,EACxB,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAOMC,EAJU,IAAIJ,EAAwB,CAC1C,sBAAuB,IAAI,WAAW,CAAC,EACvC,aAAc,EAChB,CAAC,EACsB,cAAcG,CAAQ,EAG7C,GAAIL,EAAuBM,CAAM,EAC/B,MAAM,IAAI,MAAM,gBAAgB,EAEhC,OAAOA,EAAO,KAAK,EAAE,eAAeL,CAA0B,CAElE,CAAC,EAED,GAAG,qCAAsC,IAAM,CAE7C,MAAMI,EAAyB,CAC7B,KAAM,WAAW,KAAK,CAAC,CAAC,EACxB,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAOMC,EAJU,IAAIJ,EAAwB,CAC1C,sBAAuB,IAAI,WAAW,CAAC,EACvC,aAAc,EAChB,CAAC,EACsB,cAAcG,CAAQ,EAG7C,GAAIL,EAAuBM,CAAM,EAC/B,OAAOA,EAAO,IAAI,EAAE,cAAc,MAElC,OAAM,IAAI,MAAM,kBAAkB,CAEtC,CAAC,CACH,CAAC,CACH,CAAC",
6
+ "names": ["isSuccessCommandResult", "UnknownDeviceExchangeError", "StoreTransactionCommand", "args", "apdu", "response", "result"]
7
+ }