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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (487) hide show
  1. package/README.md +162 -371
  2. package/lib/cjs/api/SignerEth.js +1 -1
  3. package/lib/cjs/api/SignerEth.js.map +1 -1
  4. package/lib/cjs/api/SignerEthBuilder.test.js +1 -1
  5. package/lib/cjs/api/SignerEthBuilder.test.js.map +1 -1
  6. package/lib/cjs/api/app-binder/GetAddressDeviceActionTypes.js +1 -1
  7. package/lib/cjs/api/app-binder/GetAddressDeviceActionTypes.js.map +1 -1
  8. package/lib/cjs/api/app-binder/SignPersonalMessageDeviceActionTypes.js +1 -1
  9. package/lib/cjs/api/app-binder/SignPersonalMessageDeviceActionTypes.js.map +1 -1
  10. package/lib/cjs/api/app-binder/SignTransactionDeviceActionTypes.js +1 -1
  11. package/lib/cjs/api/app-binder/SignTransactionDeviceActionTypes.js.map +1 -1
  12. package/lib/cjs/api/app-binder/SignTypedDataDeviceActionTypes.js +1 -1
  13. package/lib/cjs/api/app-binder/SignTypedDataDeviceActionTypes.js.map +1 -1
  14. package/lib/cjs/api/index.js +1 -1
  15. package/lib/cjs/api/index.js.map +2 -2
  16. package/lib/cjs/api/model/TransactionType.js +2 -0
  17. package/lib/cjs/api/model/TransactionType.js.map +7 -0
  18. package/lib/cjs/internal/DefaultSignerEth.js +1 -1
  19. package/lib/cjs/internal/DefaultSignerEth.js.map +2 -2
  20. package/lib/cjs/internal/DefaultSignerEth.test.js +1 -1
  21. package/lib/cjs/internal/DefaultSignerEth.test.js.map +2 -2
  22. package/lib/cjs/internal/address/use-case/GetAddressUseCase.test.js +1 -1
  23. package/lib/cjs/internal/address/use-case/GetAddressUseCase.test.js.map +2 -2
  24. package/lib/cjs/internal/app-binder/EthAppBinder.js +1 -1
  25. package/lib/cjs/internal/app-binder/EthAppBinder.js.map +3 -3
  26. package/lib/cjs/internal/app-binder/EthAppBinder.test.js +1 -1
  27. package/lib/cjs/internal/app-binder/EthAppBinder.test.js.map +3 -3
  28. package/lib/cjs/internal/app-binder/command/GetAddressCommand.js +1 -1
  29. package/lib/cjs/internal/app-binder/command/GetAddressCommand.js.map +3 -3
  30. package/lib/cjs/internal/app-binder/command/GetAddressCommand.test.js +1 -1
  31. package/lib/cjs/internal/app-binder/command/GetAddressCommand.test.js.map +2 -2
  32. package/lib/cjs/internal/app-binder/command/GetChallengeCommand.js +1 -1
  33. package/lib/cjs/internal/app-binder/command/GetChallengeCommand.js.map +3 -3
  34. package/lib/cjs/internal/app-binder/command/GetChallengeCommand.test.js +1 -1
  35. package/lib/cjs/internal/app-binder/command/GetChallengeCommand.test.js.map +2 -2
  36. package/lib/cjs/internal/app-binder/command/ProvideEnumCommand.js +1 -1
  37. package/lib/cjs/internal/app-binder/command/ProvideEnumCommand.js.map +3 -3
  38. package/lib/cjs/internal/app-binder/command/ProvideEnumCommand.test.js +1 -1
  39. package/lib/cjs/internal/app-binder/command/ProvideEnumCommand.test.js.map +3 -3
  40. package/lib/cjs/internal/app-binder/command/ProvideNFTInformationCommand.js +1 -1
  41. package/lib/cjs/internal/app-binder/command/ProvideNFTInformationCommand.js.map +3 -3
  42. package/lib/cjs/internal/app-binder/command/ProvideTokenInformationCommand.js +1 -1
  43. package/lib/cjs/internal/app-binder/command/ProvideTokenInformationCommand.js.map +3 -3
  44. package/lib/cjs/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.js +1 -1
  45. package/lib/cjs/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.js.map +3 -3
  46. package/lib/cjs/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.js +1 -1
  47. package/lib/cjs/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.js.map +3 -3
  48. package/lib/cjs/internal/app-binder/command/ProvideTransactionInformationCommand.js +1 -1
  49. package/lib/cjs/internal/app-binder/command/ProvideTransactionInformationCommand.js.map +3 -3
  50. package/lib/cjs/internal/app-binder/command/ProvideTransactionInformationCommand.test.js +1 -1
  51. package/lib/cjs/internal/app-binder/command/ProvideTransactionInformationCommand.test.js.map +3 -3
  52. package/lib/cjs/internal/app-binder/command/ProvideTrustedNameCommand.js +1 -1
  53. package/lib/cjs/internal/app-binder/command/ProvideTrustedNameCommand.js.map +3 -3
  54. package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.js +1 -1
  55. package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.js.map +3 -3
  56. package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.js +1 -1
  57. package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.js.map +3 -3
  58. package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.js +1 -1
  59. package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.js.map +2 -2
  60. package/lib/cjs/internal/app-binder/command/SendEIP712StructImplemCommand.js +1 -1
  61. package/lib/cjs/internal/app-binder/command/SendEIP712StructImplemCommand.js.map +3 -3
  62. package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.js +1 -1
  63. package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.js.map +3 -3
  64. package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.test.js +2 -2
  65. package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.test.js.map +3 -3
  66. package/lib/cjs/internal/app-binder/command/SetPluginCommand.js +1 -1
  67. package/lib/cjs/internal/app-binder/command/SetPluginCommand.js.map +3 -3
  68. package/lib/cjs/internal/app-binder/command/SetPluginCommand.test.js +2 -2
  69. package/lib/cjs/internal/app-binder/command/SetPluginCommand.test.js.map +3 -3
  70. package/lib/cjs/internal/app-binder/command/SignEIP712Command.js +1 -1
  71. package/lib/cjs/internal/app-binder/command/SignEIP712Command.js.map +3 -3
  72. package/lib/cjs/internal/app-binder/command/SignEIP712Command.test.js +1 -1
  73. package/lib/cjs/internal/app-binder/command/SignEIP712Command.test.js.map +2 -2
  74. package/lib/cjs/internal/app-binder/command/SignPersonalMessageCommand.js +1 -1
  75. package/lib/cjs/internal/app-binder/command/SignPersonalMessageCommand.js.map +3 -3
  76. package/lib/cjs/internal/app-binder/command/SignTransactionCommand.js +1 -1
  77. package/lib/cjs/internal/app-binder/command/SignTransactionCommand.js.map +3 -3
  78. package/lib/cjs/internal/app-binder/command/SignTransactionCommand.test.js +1 -1
  79. package/lib/cjs/internal/app-binder/command/SignTransactionCommand.test.js.map +2 -2
  80. package/lib/cjs/internal/app-binder/command/StartTransactionCommand.js +1 -1
  81. package/lib/cjs/internal/app-binder/command/StartTransactionCommand.js.map +3 -3
  82. package/lib/cjs/internal/app-binder/command/StartTransactionCommand.test.js +1 -1
  83. package/lib/cjs/internal/app-binder/command/StartTransactionCommand.test.js.map +3 -3
  84. package/lib/cjs/internal/app-binder/command/StoreTransactionCommand.js +1 -1
  85. package/lib/cjs/internal/app-binder/command/StoreTransactionCommand.js.map +3 -3
  86. package/lib/cjs/internal/app-binder/command/StoreTransactionCommand.test.js +1 -1
  87. package/lib/cjs/internal/app-binder/command/StoreTransactionCommand.test.js.map +3 -3
  88. package/lib/cjs/internal/app-binder/command/utils/ethAppErrors.js +2 -0
  89. package/lib/cjs/internal/app-binder/command/utils/ethAppErrors.js.map +7 -0
  90. package/lib/cjs/internal/app-binder/command/utils/ethAppErrors.test.js +2 -0
  91. package/lib/cjs/internal/app-binder/command/utils/ethAppErrors.test.js.map +7 -0
  92. package/lib/cjs/internal/app-binder/constant/plugins.js +2 -0
  93. package/lib/cjs/internal/app-binder/constant/plugins.js.map +7 -0
  94. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js +1 -1
  95. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js.map +3 -3
  96. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js +1 -1
  97. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js.map +3 -3
  98. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js +1 -1
  99. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js.map +3 -3
  100. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js +1 -1
  101. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js.map +3 -3
  102. package/lib/cjs/internal/app-binder/device-action/__test-utils__/makeInternalApi.js +1 -1
  103. package/lib/cjs/internal/app-binder/device-action/__test-utils__/makeInternalApi.js.map +3 -3
  104. package/lib/cjs/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js +1 -1
  105. package/lib/cjs/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js.map +2 -2
  106. package/lib/cjs/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js +1 -1
  107. package/lib/cjs/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js.map +3 -3
  108. package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.js +1 -1
  109. package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.js.map +3 -3
  110. package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.test.js +1 -1
  111. package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.test.js.map +3 -3
  112. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.js +1 -1
  113. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.js.map +3 -3
  114. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.test.js +1 -1
  115. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.test.js.map +3 -3
  116. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.js +1 -1
  117. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.js.map +3 -3
  118. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.test.js +1 -1
  119. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.test.js.map +2 -2
  120. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.js +1 -1
  121. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.js.map +2 -2
  122. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.test.js +1 -1
  123. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.test.js.map +2 -2
  124. package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js +1 -1
  125. package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js.map +3 -3
  126. package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js +1 -1
  127. package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js.map +3 -3
  128. package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.js +1 -1
  129. package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.js.map +3 -3
  130. package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js +1 -1
  131. package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js.map +3 -3
  132. package/lib/cjs/internal/app-binder/task/SendCommandInChunksTask.js +1 -1
  133. package/lib/cjs/internal/app-binder/task/SendCommandInChunksTask.js.map +2 -2
  134. package/lib/cjs/internal/app-binder/task/SendEIP712StructImplemTask.js +1 -1
  135. package/lib/cjs/internal/app-binder/task/SendEIP712StructImplemTask.js.map +2 -2
  136. package/lib/cjs/internal/app-binder/task/SendEIP712StructImplemTask.test.js +1 -1
  137. package/lib/cjs/internal/app-binder/task/SendEIP712StructImplemTask.test.js.map +2 -2
  138. package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.js +1 -1
  139. package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.js.map +2 -2
  140. package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.test.js +1 -1
  141. package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.test.js.map +2 -2
  142. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.js +1 -1
  143. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.js.map +2 -2
  144. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.test.js +1 -1
  145. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.test.js.map +2 -2
  146. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.js +1 -1
  147. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.js.map +3 -3
  148. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.test.js +1 -1
  149. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.test.js.map +3 -3
  150. package/lib/cjs/internal/message/use-case/SignMessageUseCase.test.js +1 -1
  151. package/lib/cjs/internal/message/use-case/SignMessageUseCase.test.js.map +2 -2
  152. package/lib/cjs/internal/transaction/di/transactionModule.js +1 -1
  153. package/lib/cjs/internal/transaction/di/transactionModule.js.map +3 -3
  154. package/lib/cjs/internal/transaction/di/transactionModule.test.js +1 -1
  155. package/lib/cjs/internal/transaction/di/transactionModule.test.js.map +2 -2
  156. package/lib/cjs/internal/transaction/service/mapper/EthersRawTransactionMapper.js +2 -0
  157. package/lib/cjs/internal/transaction/service/mapper/EthersRawTransactionMapper.js.map +7 -0
  158. package/lib/cjs/internal/transaction/service/mapper/EthersRawTransactionMapper.test.js +2 -0
  159. package/lib/cjs/internal/transaction/service/mapper/EthersRawTransactionMapper.test.js.map +7 -0
  160. package/lib/cjs/internal/transaction/service/mapper/TransactionMapper.js +1 -1
  161. package/lib/cjs/internal/transaction/service/mapper/TransactionMapper.js.map +1 -1
  162. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.js +1 -1
  163. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.js.map +2 -2
  164. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.test.js +1 -1
  165. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.test.js.map +2 -2
  166. package/lib/cjs/internal/transaction/service/mapper/model/TransactionMapperResult.js +1 -1
  167. package/lib/cjs/internal/transaction/service/mapper/model/TransactionMapperResult.js.map +1 -1
  168. package/lib/cjs/internal/transaction/service/parser/TransactionParserService.js +1 -1
  169. package/lib/cjs/internal/transaction/service/parser/TransactionParserService.js.map +3 -3
  170. package/lib/cjs/internal/transaction/service/parser/TransactionParserService.test.js +1 -1
  171. package/lib/cjs/internal/transaction/service/parser/TransactionParserService.test.js.map +3 -3
  172. package/lib/cjs/internal/transaction/use-case/SignTransactionUseCase.js +1 -1
  173. package/lib/cjs/internal/transaction/use-case/SignTransactionUseCase.js.map +2 -2
  174. package/lib/cjs/internal/transaction/use-case/SignTransactionUseCase.test.js +1 -1
  175. package/lib/cjs/internal/transaction/use-case/SignTransactionUseCase.test.js.map +3 -3
  176. package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.test.js +1 -1
  177. package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.test.js.map +2 -2
  178. package/lib/cjs/package.json +12 -12
  179. package/lib/esm/api/SignerEthBuilder.test.js +1 -1
  180. package/lib/esm/api/SignerEthBuilder.test.js.map +1 -1
  181. package/lib/esm/api/index.js +1 -1
  182. package/lib/esm/api/index.js.map +2 -2
  183. package/lib/esm/api/model/TransactionType.js +2 -0
  184. package/lib/esm/api/model/TransactionType.js.map +7 -0
  185. package/lib/esm/internal/DefaultSignerEth.js.map +2 -2
  186. package/lib/esm/internal/DefaultSignerEth.test.js +1 -1
  187. package/lib/esm/internal/DefaultSignerEth.test.js.map +2 -2
  188. package/lib/esm/internal/address/use-case/GetAddressUseCase.test.js +1 -1
  189. package/lib/esm/internal/address/use-case/GetAddressUseCase.test.js.map +2 -2
  190. package/lib/esm/internal/app-binder/EthAppBinder.js +1 -1
  191. package/lib/esm/internal/app-binder/EthAppBinder.js.map +3 -3
  192. package/lib/esm/internal/app-binder/EthAppBinder.test.js +1 -1
  193. package/lib/esm/internal/app-binder/EthAppBinder.test.js.map +3 -3
  194. package/lib/esm/internal/app-binder/command/GetAddressCommand.js +1 -1
  195. package/lib/esm/internal/app-binder/command/GetAddressCommand.js.map +3 -3
  196. package/lib/esm/internal/app-binder/command/GetAddressCommand.test.js +1 -1
  197. package/lib/esm/internal/app-binder/command/GetAddressCommand.test.js.map +2 -2
  198. package/lib/esm/internal/app-binder/command/GetChallengeCommand.js +1 -1
  199. package/lib/esm/internal/app-binder/command/GetChallengeCommand.js.map +3 -3
  200. package/lib/esm/internal/app-binder/command/GetChallengeCommand.test.js +1 -1
  201. package/lib/esm/internal/app-binder/command/GetChallengeCommand.test.js.map +2 -2
  202. package/lib/esm/internal/app-binder/command/ProvideEnumCommand.js +1 -1
  203. package/lib/esm/internal/app-binder/command/ProvideEnumCommand.js.map +3 -3
  204. package/lib/esm/internal/app-binder/command/ProvideEnumCommand.test.js +1 -1
  205. package/lib/esm/internal/app-binder/command/ProvideEnumCommand.test.js.map +3 -3
  206. package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.js +1 -1
  207. package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.js.map +3 -3
  208. package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.js +1 -1
  209. package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.js.map +3 -3
  210. package/lib/esm/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.js +1 -1
  211. package/lib/esm/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.js.map +3 -3
  212. package/lib/esm/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.js +1 -1
  213. package/lib/esm/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.js.map +3 -3
  214. package/lib/esm/internal/app-binder/command/ProvideTransactionInformationCommand.js +1 -1
  215. package/lib/esm/internal/app-binder/command/ProvideTransactionInformationCommand.js.map +3 -3
  216. package/lib/esm/internal/app-binder/command/ProvideTransactionInformationCommand.test.js +1 -1
  217. package/lib/esm/internal/app-binder/command/ProvideTransactionInformationCommand.test.js.map +3 -3
  218. package/lib/esm/internal/app-binder/command/ProvideTrustedNameCommand.js +1 -1
  219. package/lib/esm/internal/app-binder/command/ProvideTrustedNameCommand.js.map +3 -3
  220. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.js +1 -1
  221. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.js.map +3 -3
  222. package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.js +1 -1
  223. package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.js.map +3 -3
  224. package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.js +1 -1
  225. package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.js.map +2 -2
  226. package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.js +1 -1
  227. package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.js.map +3 -3
  228. package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.js +1 -1
  229. package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.js.map +3 -3
  230. package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.test.js +2 -2
  231. package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.test.js.map +3 -3
  232. package/lib/esm/internal/app-binder/command/SetPluginCommand.js +1 -1
  233. package/lib/esm/internal/app-binder/command/SetPluginCommand.js.map +3 -3
  234. package/lib/esm/internal/app-binder/command/SetPluginCommand.test.js +1 -1
  235. package/lib/esm/internal/app-binder/command/SetPluginCommand.test.js.map +3 -3
  236. package/lib/esm/internal/app-binder/command/SignEIP712Command.js +1 -1
  237. package/lib/esm/internal/app-binder/command/SignEIP712Command.js.map +3 -3
  238. package/lib/esm/internal/app-binder/command/SignEIP712Command.test.js +1 -1
  239. package/lib/esm/internal/app-binder/command/SignEIP712Command.test.js.map +2 -2
  240. package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.js +1 -1
  241. package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.js.map +3 -3
  242. package/lib/esm/internal/app-binder/command/SignTransactionCommand.js +1 -1
  243. package/lib/esm/internal/app-binder/command/SignTransactionCommand.js.map +3 -3
  244. package/lib/esm/internal/app-binder/command/SignTransactionCommand.test.js +1 -1
  245. package/lib/esm/internal/app-binder/command/SignTransactionCommand.test.js.map +2 -2
  246. package/lib/esm/internal/app-binder/command/StartTransactionCommand.js +1 -1
  247. package/lib/esm/internal/app-binder/command/StartTransactionCommand.js.map +3 -3
  248. package/lib/esm/internal/app-binder/command/StartTransactionCommand.test.js +1 -1
  249. package/lib/esm/internal/app-binder/command/StartTransactionCommand.test.js.map +3 -3
  250. package/lib/esm/internal/app-binder/command/StoreTransactionCommand.js +1 -1
  251. package/lib/esm/internal/app-binder/command/StoreTransactionCommand.js.map +3 -3
  252. package/lib/esm/internal/app-binder/command/StoreTransactionCommand.test.js +1 -1
  253. package/lib/esm/internal/app-binder/command/StoreTransactionCommand.test.js.map +3 -3
  254. package/lib/esm/internal/app-binder/command/utils/ethAppErrors.js +2 -0
  255. package/lib/esm/internal/app-binder/command/utils/ethAppErrors.js.map +7 -0
  256. package/lib/esm/internal/app-binder/command/utils/ethAppErrors.test.js +2 -0
  257. package/lib/esm/internal/app-binder/command/utils/ethAppErrors.test.js.map +7 -0
  258. package/lib/esm/internal/app-binder/constant/plugins.js +2 -0
  259. package/lib/esm/internal/app-binder/constant/plugins.js.map +7 -0
  260. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js +1 -1
  261. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js.map +3 -3
  262. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js +1 -1
  263. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js.map +3 -3
  264. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js +1 -1
  265. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js.map +3 -3
  266. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js +1 -1
  267. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js.map +3 -3
  268. package/lib/esm/internal/app-binder/device-action/__test-utils__/makeInternalApi.js +1 -1
  269. package/lib/esm/internal/app-binder/device-action/__test-utils__/makeInternalApi.js.map +3 -3
  270. package/lib/esm/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js +1 -1
  271. package/lib/esm/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js.map +2 -2
  272. package/lib/esm/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js +1 -1
  273. package/lib/esm/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js.map +3 -3
  274. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.js +1 -1
  275. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.js.map +3 -3
  276. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.test.js +1 -1
  277. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.test.js.map +3 -3
  278. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.js +1 -1
  279. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.js.map +3 -3
  280. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.test.js +1 -1
  281. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.test.js.map +3 -3
  282. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.js +1 -1
  283. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.js.map +3 -3
  284. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.test.js +1 -1
  285. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.test.js.map +2 -2
  286. package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.js +1 -1
  287. package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.js.map +2 -2
  288. package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.test.js +1 -1
  289. package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.test.js.map +2 -2
  290. package/lib/esm/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js +1 -1
  291. package/lib/esm/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js.map +3 -3
  292. package/lib/esm/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js +1 -1
  293. package/lib/esm/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js.map +3 -3
  294. package/lib/esm/internal/app-binder/task/ProvideTransactionGenericContextTask.js +1 -1
  295. package/lib/esm/internal/app-binder/task/ProvideTransactionGenericContextTask.js.map +3 -3
  296. package/lib/esm/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js +1 -1
  297. package/lib/esm/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js.map +3 -3
  298. package/lib/esm/internal/app-binder/task/SendCommandInChunksTask.js +1 -1
  299. package/lib/esm/internal/app-binder/task/SendCommandInChunksTask.js.map +2 -2
  300. package/lib/esm/internal/app-binder/task/SendEIP712StructImplemTask.js +1 -1
  301. package/lib/esm/internal/app-binder/task/SendEIP712StructImplemTask.js.map +2 -2
  302. package/lib/esm/internal/app-binder/task/SendEIP712StructImplemTask.test.js +1 -1
  303. package/lib/esm/internal/app-binder/task/SendEIP712StructImplemTask.test.js.map +2 -2
  304. package/lib/esm/internal/app-binder/task/SendPayloadInChunksTask.js +1 -1
  305. package/lib/esm/internal/app-binder/task/SendPayloadInChunksTask.js.map +2 -2
  306. package/lib/esm/internal/app-binder/task/SendPayloadInChunksTask.test.js +1 -1
  307. package/lib/esm/internal/app-binder/task/SendPayloadInChunksTask.test.js.map +2 -2
  308. package/lib/esm/internal/app-binder/task/SendSignPersonalMessageTask.js +1 -1
  309. package/lib/esm/internal/app-binder/task/SendSignPersonalMessageTask.js.map +2 -2
  310. package/lib/esm/internal/app-binder/task/SendSignPersonalMessageTask.test.js +1 -1
  311. package/lib/esm/internal/app-binder/task/SendSignPersonalMessageTask.test.js.map +2 -2
  312. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.js +1 -1
  313. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.js.map +3 -3
  314. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.test.js +1 -1
  315. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.test.js.map +2 -2
  316. package/lib/esm/internal/message/use-case/SignMessageUseCase.test.js +1 -1
  317. package/lib/esm/internal/message/use-case/SignMessageUseCase.test.js.map +2 -2
  318. package/lib/esm/internal/transaction/di/transactionModule.js +1 -1
  319. package/lib/esm/internal/transaction/di/transactionModule.js.map +3 -3
  320. package/lib/esm/internal/transaction/di/transactionModule.test.js +1 -1
  321. package/lib/esm/internal/transaction/di/transactionModule.test.js.map +2 -2
  322. package/lib/esm/internal/transaction/service/mapper/EthersRawTransactionMapper.js +2 -0
  323. package/lib/esm/internal/transaction/service/mapper/EthersRawTransactionMapper.js.map +7 -0
  324. package/lib/esm/internal/transaction/service/mapper/EthersRawTransactionMapper.test.js +2 -0
  325. package/lib/esm/internal/transaction/service/mapper/EthersRawTransactionMapper.test.js.map +7 -0
  326. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.js +1 -1
  327. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.js.map +2 -2
  328. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.test.js +1 -1
  329. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.test.js.map +2 -2
  330. package/lib/esm/internal/transaction/service/parser/TransactionParserService.js +1 -1
  331. package/lib/esm/internal/transaction/service/parser/TransactionParserService.js.map +2 -2
  332. package/lib/esm/internal/transaction/service/parser/TransactionParserService.test.js +1 -1
  333. package/lib/esm/internal/transaction/service/parser/TransactionParserService.test.js.map +2 -2
  334. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.js +1 -1
  335. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.js.map +2 -2
  336. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.test.js +1 -1
  337. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.test.js.map +3 -3
  338. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.test.js +1 -1
  339. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.test.js.map +2 -2
  340. package/lib/esm/package.json +12 -12
  341. package/lib/types/api/SignerEth.d.ts +1 -2
  342. package/lib/types/api/SignerEth.d.ts.map +1 -1
  343. package/lib/types/api/app-binder/GetAddressDeviceActionTypes.d.ts +3 -2
  344. package/lib/types/api/app-binder/GetAddressDeviceActionTypes.d.ts.map +1 -1
  345. package/lib/types/api/app-binder/SignPersonalMessageDeviceActionTypes.d.ts +3 -11
  346. package/lib/types/api/app-binder/SignPersonalMessageDeviceActionTypes.d.ts.map +1 -1
  347. package/lib/types/api/app-binder/SignTransactionDeviceActionTypes.d.ts +4 -4
  348. package/lib/types/api/app-binder/SignTransactionDeviceActionTypes.d.ts.map +1 -1
  349. package/lib/types/api/app-binder/SignTypedDataDeviceActionTypes.d.ts +3 -2
  350. package/lib/types/api/app-binder/SignTypedDataDeviceActionTypes.d.ts.map +1 -1
  351. package/lib/types/api/index.d.ts +2 -2
  352. package/lib/types/api/index.d.ts.map +1 -1
  353. package/lib/types/api/model/{Transaction.d.ts → TransactionType.d.ts} +1 -4
  354. package/lib/types/api/model/TransactionType.d.ts.map +1 -0
  355. package/lib/types/internal/DefaultSignerEth.d.ts +1 -2
  356. package/lib/types/internal/DefaultSignerEth.d.ts.map +1 -1
  357. package/lib/types/internal/app-binder/EthAppBinder.d.ts +1 -2
  358. package/lib/types/internal/app-binder/EthAppBinder.d.ts.map +1 -1
  359. package/lib/types/internal/app-binder/command/GetAddressCommand.d.ts +5 -3
  360. package/lib/types/internal/app-binder/command/GetAddressCommand.d.ts.map +1 -1
  361. package/lib/types/internal/app-binder/command/GetChallengeCommand.d.ts +4 -2
  362. package/lib/types/internal/app-binder/command/GetChallengeCommand.d.ts.map +1 -1
  363. package/lib/types/internal/app-binder/command/ProvideEnumCommand.d.ts +4 -2
  364. package/lib/types/internal/app-binder/command/ProvideEnumCommand.d.ts.map +1 -1
  365. package/lib/types/internal/app-binder/command/ProvideNFTInformationCommand.d.ts +4 -3
  366. package/lib/types/internal/app-binder/command/ProvideNFTInformationCommand.d.ts.map +1 -1
  367. package/lib/types/internal/app-binder/command/ProvideTokenInformationCommand.d.ts +4 -2
  368. package/lib/types/internal/app-binder/command/ProvideTokenInformationCommand.d.ts.map +1 -1
  369. package/lib/types/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.d.ts +4 -2
  370. package/lib/types/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.d.ts.map +1 -1
  371. package/lib/types/internal/app-binder/command/ProvideTransactionInformationCommand.d.ts +4 -2
  372. package/lib/types/internal/app-binder/command/ProvideTransactionInformationCommand.d.ts.map +1 -1
  373. package/lib/types/internal/app-binder/command/ProvideTrustedNameCommand.d.ts +4 -2
  374. package/lib/types/internal/app-binder/command/ProvideTrustedNameCommand.d.ts.map +1 -1
  375. package/lib/types/internal/app-binder/command/SendEIP712FilteringCommand.d.ts +4 -2
  376. package/lib/types/internal/app-binder/command/SendEIP712FilteringCommand.d.ts.map +1 -1
  377. package/lib/types/internal/app-binder/command/SendEIP712StructDefinitionCommand.d.ts +4 -2
  378. package/lib/types/internal/app-binder/command/SendEIP712StructDefinitionCommand.d.ts.map +1 -1
  379. package/lib/types/internal/app-binder/command/SendEIP712StructImplemCommand.d.ts +4 -2
  380. package/lib/types/internal/app-binder/command/SendEIP712StructImplemCommand.d.ts.map +1 -1
  381. package/lib/types/internal/app-binder/command/SetExternalPluginCommand.d.ts +5 -7
  382. package/lib/types/internal/app-binder/command/SetExternalPluginCommand.d.ts.map +1 -1
  383. package/lib/types/internal/app-binder/command/SetPluginCommand.d.ts +5 -7
  384. package/lib/types/internal/app-binder/command/SetPluginCommand.d.ts.map +1 -1
  385. package/lib/types/internal/app-binder/command/SignEIP712Command.d.ts +5 -3
  386. package/lib/types/internal/app-binder/command/SignEIP712Command.d.ts.map +1 -1
  387. package/lib/types/internal/app-binder/command/SignPersonalMessageCommand.d.ts +5 -3
  388. package/lib/types/internal/app-binder/command/SignPersonalMessageCommand.d.ts.map +1 -1
  389. package/lib/types/internal/app-binder/command/SignTransactionCommand.d.ts +5 -3
  390. package/lib/types/internal/app-binder/command/SignTransactionCommand.d.ts.map +1 -1
  391. package/lib/types/internal/app-binder/command/StartTransactionCommand.d.ts +4 -2
  392. package/lib/types/internal/app-binder/command/StartTransactionCommand.d.ts.map +1 -1
  393. package/lib/types/internal/app-binder/command/StoreTransactionCommand.d.ts +4 -2
  394. package/lib/types/internal/app-binder/command/StoreTransactionCommand.d.ts.map +1 -1
  395. package/lib/types/internal/app-binder/command/utils/ethAppErrors.d.ts +8 -0
  396. package/lib/types/internal/app-binder/command/utils/ethAppErrors.d.ts.map +1 -0
  397. package/lib/types/internal/app-binder/command/utils/ethAppErrors.test.d.ts +2 -0
  398. package/lib/types/internal/app-binder/command/utils/ethAppErrors.test.d.ts.map +1 -0
  399. package/lib/types/internal/app-binder/constant/plugins.d.ts +2 -0
  400. package/lib/types/internal/app-binder/constant/plugins.d.ts.map +1 -0
  401. package/lib/types/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts +9 -9
  402. package/lib/types/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts.map +1 -1
  403. package/lib/types/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts +11 -3
  404. package/lib/types/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts.map +1 -1
  405. package/lib/types/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts +2 -1
  406. package/lib/types/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts.map +1 -1
  407. package/lib/types/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.d.ts.map +1 -1
  408. package/lib/types/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts +5 -2
  409. package/lib/types/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts.map +1 -1
  410. package/lib/types/internal/app-binder/task/BuildEIP712ContextTask.d.ts.map +1 -1
  411. package/lib/types/internal/app-binder/task/BuildTransactionContextTask.d.ts +3 -3
  412. package/lib/types/internal/app-binder/task/BuildTransactionContextTask.d.ts.map +1 -1
  413. package/lib/types/internal/app-binder/task/ProvideEIP712ContextTask.d.ts +12 -5
  414. package/lib/types/internal/app-binder/task/ProvideEIP712ContextTask.d.ts.map +1 -1
  415. package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.d.ts +3 -6
  416. package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.d.ts.map +1 -1
  417. package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.d.ts +54 -12
  418. package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.d.ts.map +1 -1
  419. package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.d.ts +6 -6
  420. package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.d.ts.map +1 -1
  421. package/lib/types/internal/app-binder/task/SendCommandInChunksTask.d.ts +3 -2
  422. package/lib/types/internal/app-binder/task/SendCommandInChunksTask.d.ts.map +1 -1
  423. package/lib/types/internal/app-binder/task/SendEIP712StructImplemTask.d.ts +2 -1
  424. package/lib/types/internal/app-binder/task/SendEIP712StructImplemTask.d.ts.map +1 -1
  425. package/lib/types/internal/app-binder/task/SendPayloadInChunksTask.d.ts +2 -1
  426. package/lib/types/internal/app-binder/task/SendPayloadInChunksTask.d.ts.map +1 -1
  427. package/lib/types/internal/app-binder/task/SendSignPersonalMessageTask.d.ts +2 -1
  428. package/lib/types/internal/app-binder/task/SendSignPersonalMessageTask.d.ts.map +1 -1
  429. package/lib/types/internal/app-binder/task/SendSignTransactionTask.d.ts +3 -2
  430. package/lib/types/internal/app-binder/task/SendSignTransactionTask.d.ts.map +1 -1
  431. package/lib/types/internal/transaction/di/transactionModule.d.ts.map +1 -1
  432. package/lib/types/internal/transaction/service/mapper/EthersRawTransactionMapper.d.ts +7 -0
  433. package/lib/types/internal/transaction/service/mapper/EthersRawTransactionMapper.d.ts.map +1 -0
  434. package/lib/types/internal/transaction/service/mapper/EthersRawTransactionMapper.test.d.ts +2 -0
  435. package/lib/types/internal/transaction/service/mapper/EthersRawTransactionMapper.test.d.ts.map +1 -0
  436. package/lib/types/internal/transaction/service/mapper/TransactionMapper.d.ts +1 -2
  437. package/lib/types/internal/transaction/service/mapper/TransactionMapper.d.ts.map +1 -1
  438. package/lib/types/internal/transaction/service/mapper/TransactionMapperService.d.ts +1 -2
  439. package/lib/types/internal/transaction/service/mapper/TransactionMapperService.d.ts.map +1 -1
  440. package/lib/types/internal/transaction/service/mapper/model/TransactionMapperResult.d.ts +1 -1
  441. package/lib/types/internal/transaction/service/mapper/model/TransactionMapperResult.d.ts.map +1 -1
  442. package/lib/types/internal/transaction/service/parser/TransactionParserService.d.ts.map +1 -1
  443. package/lib/types/internal/transaction/use-case/SignTransactionUseCase.d.ts +1 -2
  444. package/lib/types/internal/transaction/use-case/SignTransactionUseCase.d.ts.map +1 -1
  445. package/lib/types/tsconfig.prod.tsbuildinfo +1 -1
  446. package/package.json +14 -14
  447. package/lib/cjs/api/model/Transaction.js +0 -2
  448. package/lib/cjs/api/model/Transaction.js.map +0 -7
  449. package/lib/cjs/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.js +0 -2
  450. package/lib/cjs/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.js.map +0 -7
  451. package/lib/cjs/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.test.js +0 -2
  452. package/lib/cjs/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.test.js.map +0 -7
  453. package/lib/cjs/internal/transaction/service/mapper/EthersV5TransactionMapper.js +0 -2
  454. package/lib/cjs/internal/transaction/service/mapper/EthersV5TransactionMapper.js.map +0 -7
  455. package/lib/cjs/internal/transaction/service/mapper/EthersV5TransactionMapper.test.js +0 -2
  456. package/lib/cjs/internal/transaction/service/mapper/EthersV5TransactionMapper.test.js.map +0 -7
  457. package/lib/cjs/internal/transaction/service/mapper/EthersV6TransactionMapper.js +0 -2
  458. package/lib/cjs/internal/transaction/service/mapper/EthersV6TransactionMapper.js.map +0 -7
  459. package/lib/cjs/internal/transaction/service/mapper/EthersV6TransactionMapper.test.js +0 -2
  460. package/lib/cjs/internal/transaction/service/mapper/EthersV6TransactionMapper.test.js.map +0 -7
  461. package/lib/esm/api/model/Transaction.js +0 -2
  462. package/lib/esm/api/model/Transaction.js.map +0 -7
  463. package/lib/esm/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.js +0 -2
  464. package/lib/esm/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.js.map +0 -7
  465. package/lib/esm/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.test.js +0 -2
  466. package/lib/esm/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.test.js.map +0 -7
  467. package/lib/esm/internal/transaction/service/mapper/EthersV5TransactionMapper.js +0 -2
  468. package/lib/esm/internal/transaction/service/mapper/EthersV5TransactionMapper.js.map +0 -7
  469. package/lib/esm/internal/transaction/service/mapper/EthersV5TransactionMapper.test.js +0 -2
  470. package/lib/esm/internal/transaction/service/mapper/EthersV5TransactionMapper.test.js.map +0 -7
  471. package/lib/esm/internal/transaction/service/mapper/EthersV6TransactionMapper.js +0 -2
  472. package/lib/esm/internal/transaction/service/mapper/EthersV6TransactionMapper.js.map +0 -7
  473. package/lib/esm/internal/transaction/service/mapper/EthersV6TransactionMapper.test.js +0 -2
  474. package/lib/esm/internal/transaction/service/mapper/EthersV6TransactionMapper.test.js.map +0 -7
  475. package/lib/types/api/model/Transaction.d.ts.map +0 -1
  476. package/lib/types/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.d.ts +0 -17
  477. package/lib/types/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.d.ts.map +0 -1
  478. package/lib/types/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.test.d.ts +0 -2
  479. package/lib/types/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.test.d.ts.map +0 -1
  480. package/lib/types/internal/transaction/service/mapper/EthersV5TransactionMapper.d.ts +0 -10
  481. package/lib/types/internal/transaction/service/mapper/EthersV5TransactionMapper.d.ts.map +0 -1
  482. package/lib/types/internal/transaction/service/mapper/EthersV5TransactionMapper.test.d.ts +0 -2
  483. package/lib/types/internal/transaction/service/mapper/EthersV5TransactionMapper.test.d.ts.map +0 -1
  484. package/lib/types/internal/transaction/service/mapper/EthersV6TransactionMapper.d.ts +0 -9
  485. package/lib/types/internal/transaction/service/mapper/EthersV6TransactionMapper.d.ts.map +0 -1
  486. package/lib/types/internal/transaction/service/mapper/EthersV6TransactionMapper.test.d.ts +0 -2
  487. package/lib/types/internal/transaction/service/mapper/EthersV6TransactionMapper.test.d.ts.map +0 -1
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/GetAddressCommand.test.ts"],
4
- "sourcesContent": ["import {\n ApduResponse,\n CommandResultFactory,\n InvalidStatusWordError,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { GetAddressCommand } from \"./GetAddressCommand\";\n\nconst GET_ADDRESS_APDU = Uint8Array.from([\n 0xe0, 0x02, 0x00, 0x00, 0x1d, 0x05, 0x80, 0x00, 0x00, 0x2c, 0x80, 0x00, 0x00,\n 0x3c, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,\n]);\n\nconst GET_ADDRESS_APDU_WITH_CHECK_ON_DEVICE = Uint8Array.from([\n 0xe0, 0x02, 0x01, 0x00, 0x1d, 0x05, 0x80, 0x00, 0x00, 0x2c, 0x80, 0x00, 0x00,\n 0x3c, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,\n]);\n\nconst GET_ADDRESS_APDU_WITH_RETURN_CHAIN_CODE = Uint8Array.from([\n 0xe0, 0x02, 0x00, 0x01, 0x1d, 0x05, 0x80, 0x00, 0x00, 0x2c, 0x80, 0x00, 0x00,\n 0x3c, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,\n]);\n\nconst GET_ADDRESS_APDU_WITH_CHECK_ON_DEVICE_WITH_RETURN_CHAIN_CODE =\n Uint8Array.from([\n 0xe0, 0x02, 0x01, 0x01, 0x1d, 0x05, 0x80, 0x00, 0x00, 0x2c, 0x80, 0x00,\n 0x00, 0x3c, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,\n ]);\n\nconst GET_ADDRESS_APDU_WITH_CUSTOM_DERIVATION_PATH = Uint8Array.from([\n 0xe0, 0x02, 0x00, 0x00, 0x1d, 0x05, 0x80, 0x00, 0x00, 0x2c, 0x80, 0x00, 0x00,\n 0x3c, 0x80, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,\n]);\n\nconst LNX_RESPONSE_DATA_GOOD = Uint8Array.from([\n 0x41, 0x04, 0xe3, 0x78, 0x5c, 0xa6, 0xa5, 0xaa, 0x74, 0x8c, 0x62, 0x5e, 0x3d,\n 0xdd, 0xd6, 0xd9, 0x7b, 0x59, 0xb2, 0x6f, 0xd8, 0x15, 0x2f, 0xb5, 0x2e, 0xb2,\n 0x9d, 0x24, 0x40, 0x4f, 0x01, 0x0b, 0xe4, 0xf7, 0x25, 0xc3, 0x72, 0x5e, 0x78,\n 0xbe, 0xd9, 0x53, 0xf0, 0x74, 0x77, 0x8d, 0x71, 0x79, 0x74, 0xde, 0x21, 0xf3,\n 0x47, 0x0b, 0x73, 0x57, 0x36, 0xeb, 0x3d, 0x56, 0x74, 0x7a, 0xb6, 0xd0, 0x73,\n 0xa7, 0x28, 0x46, 0x37, 0x43, 0x36, 0x39, 0x42, 0x65, 0x64, 0x42, 0x32, 0x39,\n 0x32, 0x44, 0x64, 0x33, 0x66, 0x43, 0x32, 0x63, 0x41, 0x34, 0x31, 0x30, 0x33,\n 0x39, 0x38, 0x39, 0x42, 0x35, 0x42, 0x44, 0x37, 0x30, 0x35, 0x31, 0x36, 0x34,\n 0x63, 0x34, 0x33,\n]);\n\nconst LNX_RESPONSE_GOOD = new ApduResponse({\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: LNX_RESPONSE_DATA_GOOD,\n});\n\nconst LNX_RESPONSE_DATA_GOOD_WITH_CHAIN_CODE = Uint8Array.from([\n 0x41, 0x4, 0xe3, 0x78, 0x5c, 0xa6, 0xa5, 0xaa, 0x74, 0x8c, 0x62, 0x5e, 0x3d,\n 0xdd, 0xd6, 0xd9, 0x7b, 0x59, 0xb2, 0x6f, 0xd8, 0x15, 0x2f, 0xb5, 0x2e, 0xb2,\n 0x9d, 0x24, 0x40, 0x4f, 0x1, 0xb, 0xe4, 0xf7, 0x25, 0xc3, 0x72, 0x5e, 0x78,\n 0xbe, 0xd9, 0x53, 0xf0, 0x74, 0x77, 0x8d, 0x71, 0x79, 0x74, 0xde, 0x21, 0xf3,\n 0x47, 0xb, 0x73, 0x57, 0x36, 0xeb, 0x3d, 0x56, 0x74, 0x7a, 0xb6, 0xd0, 0x73,\n 0xa7, 0x28, 0x46, 0x37, 0x43, 0x36, 0x39, 0x42, 0x65, 0x64, 0x42, 0x32, 0x39,\n 0x32, 0x44, 0x64, 0x33, 0x66, 0x43, 0x32, 0x63, 0x41, 0x34, 0x31, 0x30, 0x33,\n 0x39, 0x38, 0x39, 0x42, 0x35, 0x42, 0x44, 0x37, 0x30, 0x35, 0x31, 0x36, 0x34,\n 0x63, 0x34, 0x33, 0x42, 0x3e, 0x65, 0x1f, 0x2b, 0x16, 0xb4, 0x18, 0x6d, 0x5e,\n 0xac, 0x16, 0x7c, 0xc4, 0x9a, 0xad, 0xe4, 0xa9, 0x7e, 0xb3, 0xb1, 0x37, 0xde,\n 0x36, 0x33, 0x47, 0x99, 0x68, 0x4d, 0xc, 0x71, 0x4a,\n]);\n\nconst LNX_RESPONSE_GOOD_WITH_CHAIN_CODE = new ApduResponse({\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: LNX_RESPONSE_DATA_GOOD_WITH_CHAIN_CODE,\n});\n\ndescribe(\"GetAddressCommand\", () => {\n let command: GetAddressCommand;\n const defaultArgs = {\n derivationPath: \"44'/60'/0'/0/0\",\n checkOnDevice: false,\n returnChainCode: false,\n };\n\n beforeEach(() => {\n command = new GetAddressCommand(defaultArgs);\n });\n\n describe(\"getApdu\", () => {\n it(\"should return the GetAddress apdu with default args\", () => {\n const apdu = command.getApdu();\n expect(apdu.getRawApdu()).toStrictEqual(GET_ADDRESS_APDU);\n });\n\n it(\"should return the GetAddress apdu with checkOnDevice set to true\", () => {\n command = new GetAddressCommand({ ...defaultArgs, checkOnDevice: true });\n const apdu = command.getApdu();\n expect(apdu.getRawApdu()).toStrictEqual(\n GET_ADDRESS_APDU_WITH_CHECK_ON_DEVICE,\n );\n });\n\n it(\"should return the GetAddress apdu with returnChainCode set to true\", () => {\n command = new GetAddressCommand({\n ...defaultArgs,\n returnChainCode: true,\n });\n const apdu = command.getApdu();\n expect(apdu.getRawApdu()).toStrictEqual(\n GET_ADDRESS_APDU_WITH_RETURN_CHAIN_CODE,\n );\n });\n\n it(\"should return the GetAddress apdu with checkOnDevice and returnChainCode set to true\", () => {\n command = new GetAddressCommand({\n ...defaultArgs,\n checkOnDevice: true,\n returnChainCode: true,\n });\n const apdu = command.getApdu();\n expect(apdu.getRawApdu()).toStrictEqual(\n GET_ADDRESS_APDU_WITH_CHECK_ON_DEVICE_WITH_RETURN_CHAIN_CODE,\n );\n });\n\n it(\"should return the GetAddress apdu with a custom derivation path\", () => {\n const customDerivationPath = \"44'/60'/3'/2/1\";\n command = new GetAddressCommand({\n ...defaultArgs,\n derivationPath: customDerivationPath,\n });\n const apdu = command.getApdu();\n expect(apdu.getRawApdu()).toStrictEqual(\n GET_ADDRESS_APDU_WITH_CUSTOM_DERIVATION_PATH,\n );\n });\n });\n\n describe(\"parseResponse\", () => {\n it(\"should parse the response\", () => {\n const parsed = command.parseResponse(LNX_RESPONSE_GOOD);\n expect(parsed).toStrictEqual(\n CommandResultFactory({\n data: {\n publicKey:\n \"04e3785ca6a5aa748c625e3dddd6d97b59b26fd8152fb52eb29d24404f010be4f725c3725e78bed953f074778d717974de21f3470b735736eb3d56747ab6d073a7\",\n address: \"0xF7C69BedB292Dd3fC2cA4103989B5BD705164c43\",\n chainCode: undefined,\n },\n }),\n );\n });\n\n it(\"should parse the response with chainCode\", () => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access\n (command as any)[\"args\"].returnChainCode = true;\n const parsed = command.parseResponse(LNX_RESPONSE_GOOD_WITH_CHAIN_CODE);\n expect(parsed).toStrictEqual(\n CommandResultFactory({\n data: {\n publicKey:\n \"04e3785ca6a5aa748c625e3dddd6d97b59b26fd8152fb52eb29d24404f010be4f725c3725e78bed953f074778d717974de21f3470b735736eb3d56747ab6d073a7\",\n address: \"0xF7C69BedB292Dd3fC2cA4103989B5BD705164c43\",\n chainCode:\n \"423e651f2b16b4186d5eac167cc49aade4a97eb3b137de36334799684d0c714a\",\n },\n }),\n );\n });\n\n it(\"should not return chainCode if it is not requested\", () => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access\n (command as any)[\"args\"].returnChainCode = false;\n const parsed = command.parseResponse(LNX_RESPONSE_GOOD_WITH_CHAIN_CODE);\n expect(parsed).toStrictEqual(\n CommandResultFactory({\n data: {\n publicKey:\n \"04e3785ca6a5aa748c625e3dddd6d97b59b26fd8152fb52eb29d24404f010be4f725c3725e78bed953f074778d717974de21f3470b735736eb3d56747ab6d073a7\",\n address: \"0xF7C69BedB292Dd3fC2cA4103989B5BD705164c43\",\n chainCode: undefined,\n },\n }),\n );\n });\n\n describe(\"should return an error\", () => {\n it(\"when the response is not successfull\", () => {\n const response = new ApduResponse({\n statusCode: Uint8Array.from([0x6d, 0x00]),\n data: new Uint8Array(0),\n });\n const result = command.parseResponse(response);\n expect(isSuccessCommandResult(result)).toBe(false);\n });\n\n it(\"when publicKeyLength is invalid\", () => {\n // GIVEN\n const response = {\n data: Uint8Array.from([]), // Invalid public key length\n statusCode: Uint8Array.from([0x90, 0x00]), // Success status code\n };\n\n // WHEN\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(\n new Error(\"Public key length is missing\"),\n );\n }\n });\n\n it(\"when publicKey is invalid\", () => {\n // GIVEN\n const response = {\n data: Uint8Array.from([0x01]), // Invalid public key\n statusCode: Uint8Array.from([0x90, 0x00]), // Success status code\n };\n\n // WHEN\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(\n new Error(\"Public key is missing\"),\n );\n }\n });\n\n it(\"when addressLength is invalid\", () => {\n // GIVEN\n const response = {\n data: Uint8Array.from([0x20, ...Array<number>(32).fill(0x02)]), // Invalid address length\n statusCode: Uint8Array.from([0x90, 0x00]), // Success status code\n };\n\n // WHEN\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(\n new Error(\"Ethereum address length is missing\"),\n );\n }\n });\n\n it(\"when address is missing\", () => {\n // GIVEN\n const response = {\n data: Uint8Array.from([0x20, ...Array<number>(32).fill(0x02), 0x01]), // Invalid address\n statusCode: Uint8Array.from([0x90, 0x00]), // Success status code\n };\n\n // WHEN\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(\n new Error(\"Ethereum address is missing\"),\n );\n }\n });\n\n it(\"when the address is invalid\", () => {\n // GIVEN\n const response = {\n data: Uint8Array.from([\n 0x20,\n ...Array<number>(32).fill(0x02),\n 0x01,\n 0x02,\n ]), // Invalid address\n statusCode: Uint8Array.from([0x90, 0x00]), // Success status code\n };\n\n // WHEN\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(\n new Error(\"Invalid Ethereum address\"),\n );\n }\n });\n\n it(\"when chainCode is invalid\", () => {\n // GIVEN\n const response = {\n data: LNX_RESPONSE_DATA_GOOD_WITH_CHAIN_CODE.slice(0, -1), // Invalid chainCode\n statusCode: Uint8Array.from([0x90, 0x00]), // Success status code\n };\n\n // WHEN\n const commandWithChainCode = new GetAddressCommand({\n ...defaultArgs,\n returnChainCode: true,\n });\n const result = commandWithChainCode.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(\n new Error(\"Invalid Chaincode\"),\n );\n }\n });\n });\n });\n});\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import {\n ApduResponse,\n CommandResultFactory,\n InvalidStatusWordError,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { GetAddressCommand } from \"./GetAddressCommand\";\n\nconst GET_ADDRESS_APDU = Uint8Array.from([\n 0xe0, 0x02, 0x00, 0x00, 0x1d, 0x05, 0x80, 0x00, 0x00, 0x2c, 0x80, 0x00, 0x00,\n 0x3c, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,\n]);\n\nconst GET_ADDRESS_APDU_WITH_CHECK_ON_DEVICE = Uint8Array.from([\n 0xe0, 0x02, 0x01, 0x00, 0x1d, 0x05, 0x80, 0x00, 0x00, 0x2c, 0x80, 0x00, 0x00,\n 0x3c, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,\n]);\n\nconst GET_ADDRESS_APDU_WITH_RETURN_CHAIN_CODE = Uint8Array.from([\n 0xe0, 0x02, 0x00, 0x01, 0x1d, 0x05, 0x80, 0x00, 0x00, 0x2c, 0x80, 0x00, 0x00,\n 0x3c, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,\n]);\n\nconst GET_ADDRESS_APDU_WITH_CHECK_ON_DEVICE_WITH_RETURN_CHAIN_CODE =\n Uint8Array.from([\n 0xe0, 0x02, 0x01, 0x01, 0x1d, 0x05, 0x80, 0x00, 0x00, 0x2c, 0x80, 0x00,\n 0x00, 0x3c, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,\n ]);\n\nconst GET_ADDRESS_APDU_WITH_CUSTOM_DERIVATION_PATH = Uint8Array.from([\n 0xe0, 0x02, 0x00, 0x00, 0x1d, 0x05, 0x80, 0x00, 0x00, 0x2c, 0x80, 0x00, 0x00,\n 0x3c, 0x80, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,\n]);\n\nconst LNX_RESPONSE_DATA_GOOD = Uint8Array.from([\n 0x41, 0x04, 0xe3, 0x78, 0x5c, 0xa6, 0xa5, 0xaa, 0x74, 0x8c, 0x62, 0x5e, 0x3d,\n 0xdd, 0xd6, 0xd9, 0x7b, 0x59, 0xb2, 0x6f, 0xd8, 0x15, 0x2f, 0xb5, 0x2e, 0xb2,\n 0x9d, 0x24, 0x40, 0x4f, 0x01, 0x0b, 0xe4, 0xf7, 0x25, 0xc3, 0x72, 0x5e, 0x78,\n 0xbe, 0xd9, 0x53, 0xf0, 0x74, 0x77, 0x8d, 0x71, 0x79, 0x74, 0xde, 0x21, 0xf3,\n 0x47, 0x0b, 0x73, 0x57, 0x36, 0xeb, 0x3d, 0x56, 0x74, 0x7a, 0xb6, 0xd0, 0x73,\n 0xa7, 0x28, 0x46, 0x37, 0x43, 0x36, 0x39, 0x42, 0x65, 0x64, 0x42, 0x32, 0x39,\n 0x32, 0x44, 0x64, 0x33, 0x66, 0x43, 0x32, 0x63, 0x41, 0x34, 0x31, 0x30, 0x33,\n 0x39, 0x38, 0x39, 0x42, 0x35, 0x42, 0x44, 0x37, 0x30, 0x35, 0x31, 0x36, 0x34,\n 0x63, 0x34, 0x33,\n]);\n\nconst LNX_RESPONSE_GOOD = new ApduResponse({\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: LNX_RESPONSE_DATA_GOOD,\n});\n\nconst LNX_RESPONSE_DATA_GOOD_WITH_CHAIN_CODE = Uint8Array.from([\n 0x41, 0x4, 0xe3, 0x78, 0x5c, 0xa6, 0xa5, 0xaa, 0x74, 0x8c, 0x62, 0x5e, 0x3d,\n 0xdd, 0xd6, 0xd9, 0x7b, 0x59, 0xb2, 0x6f, 0xd8, 0x15, 0x2f, 0xb5, 0x2e, 0xb2,\n 0x9d, 0x24, 0x40, 0x4f, 0x1, 0xb, 0xe4, 0xf7, 0x25, 0xc3, 0x72, 0x5e, 0x78,\n 0xbe, 0xd9, 0x53, 0xf0, 0x74, 0x77, 0x8d, 0x71, 0x79, 0x74, 0xde, 0x21, 0xf3,\n 0x47, 0xb, 0x73, 0x57, 0x36, 0xeb, 0x3d, 0x56, 0x74, 0x7a, 0xb6, 0xd0, 0x73,\n 0xa7, 0x28, 0x46, 0x37, 0x43, 0x36, 0x39, 0x42, 0x65, 0x64, 0x42, 0x32, 0x39,\n 0x32, 0x44, 0x64, 0x33, 0x66, 0x43, 0x32, 0x63, 0x41, 0x34, 0x31, 0x30, 0x33,\n 0x39, 0x38, 0x39, 0x42, 0x35, 0x42, 0x44, 0x37, 0x30, 0x35, 0x31, 0x36, 0x34,\n 0x63, 0x34, 0x33, 0x42, 0x3e, 0x65, 0x1f, 0x2b, 0x16, 0xb4, 0x18, 0x6d, 0x5e,\n 0xac, 0x16, 0x7c, 0xc4, 0x9a, 0xad, 0xe4, 0xa9, 0x7e, 0xb3, 0xb1, 0x37, 0xde,\n 0x36, 0x33, 0x47, 0x99, 0x68, 0x4d, 0xc, 0x71, 0x4a,\n]);\n\nconst LNX_RESPONSE_GOOD_WITH_CHAIN_CODE = new ApduResponse({\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: LNX_RESPONSE_DATA_GOOD_WITH_CHAIN_CODE,\n});\n\ndescribe(\"GetAddressCommand\", () => {\n let command: GetAddressCommand;\n const defaultArgs = {\n derivationPath: \"44'/60'/0'/0/0\",\n checkOnDevice: false,\n returnChainCode: false,\n };\n\n beforeEach(() => {\n command = new GetAddressCommand(defaultArgs);\n });\n\n describe(\"getApdu\", () => {\n it(\"should return the GetAddress apdu with default args\", () => {\n const apdu = command.getApdu();\n expect(apdu.getRawApdu()).toStrictEqual(GET_ADDRESS_APDU);\n });\n\n it(\"should return the GetAddress apdu with checkOnDevice set to true\", () => {\n command = new GetAddressCommand({ ...defaultArgs, checkOnDevice: true });\n const apdu = command.getApdu();\n expect(apdu.getRawApdu()).toStrictEqual(\n GET_ADDRESS_APDU_WITH_CHECK_ON_DEVICE,\n );\n });\n\n it(\"should return the GetAddress apdu with returnChainCode set to true\", () => {\n command = new GetAddressCommand({\n ...defaultArgs,\n returnChainCode: true,\n });\n const apdu = command.getApdu();\n expect(apdu.getRawApdu()).toStrictEqual(\n GET_ADDRESS_APDU_WITH_RETURN_CHAIN_CODE,\n );\n });\n\n it(\"should return the GetAddress apdu with checkOnDevice and returnChainCode set to true\", () => {\n command = new GetAddressCommand({\n ...defaultArgs,\n checkOnDevice: true,\n returnChainCode: true,\n });\n const apdu = command.getApdu();\n expect(apdu.getRawApdu()).toStrictEqual(\n GET_ADDRESS_APDU_WITH_CHECK_ON_DEVICE_WITH_RETURN_CHAIN_CODE,\n );\n });\n\n it(\"should return the GetAddress apdu with a custom derivation path\", () => {\n const customDerivationPath = \"44'/60'/3'/2/1\";\n command = new GetAddressCommand({\n ...defaultArgs,\n derivationPath: customDerivationPath,\n });\n const apdu = command.getApdu();\n expect(apdu.getRawApdu()).toStrictEqual(\n GET_ADDRESS_APDU_WITH_CUSTOM_DERIVATION_PATH,\n );\n });\n });\n\n describe(\"parseResponse\", () => {\n it(\"should parse the response\", () => {\n const parsed = command.parseResponse(LNX_RESPONSE_GOOD);\n expect(parsed).toStrictEqual(\n CommandResultFactory({\n data: {\n publicKey:\n \"04e3785ca6a5aa748c625e3dddd6d97b59b26fd8152fb52eb29d24404f010be4f725c3725e78bed953f074778d717974de21f3470b735736eb3d56747ab6d073a7\",\n address: \"0xF7C69BedB292Dd3fC2cA4103989B5BD705164c43\",\n chainCode: undefined,\n },\n }),\n );\n });\n\n it(\"should parse the response with chainCode\", () => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access\n (command as any)[\"args\"].returnChainCode = true;\n const parsed = command.parseResponse(LNX_RESPONSE_GOOD_WITH_CHAIN_CODE);\n expect(parsed).toStrictEqual(\n CommandResultFactory({\n data: {\n publicKey:\n \"04e3785ca6a5aa748c625e3dddd6d97b59b26fd8152fb52eb29d24404f010be4f725c3725e78bed953f074778d717974de21f3470b735736eb3d56747ab6d073a7\",\n address: \"0xF7C69BedB292Dd3fC2cA4103989B5BD705164c43\",\n chainCode:\n \"423e651f2b16b4186d5eac167cc49aade4a97eb3b137de36334799684d0c714a\",\n },\n }),\n );\n });\n\n it(\"should not return chainCode if it is not requested\", () => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access\n (command as any)[\"args\"].returnChainCode = false;\n const parsed = command.parseResponse(LNX_RESPONSE_GOOD_WITH_CHAIN_CODE);\n expect(parsed).toStrictEqual(\n CommandResultFactory({\n data: {\n publicKey:\n \"04e3785ca6a5aa748c625e3dddd6d97b59b26fd8152fb52eb29d24404f010be4f725c3725e78bed953f074778d717974de21f3470b735736eb3d56747ab6d073a7\",\n address: \"0xF7C69BedB292Dd3fC2cA4103989B5BD705164c43\",\n chainCode: undefined,\n },\n }),\n );\n });\n\n describe(\"should return an error\", () => {\n it(\"when the response is not successfull\", () => {\n const response = new ApduResponse({\n statusCode: Uint8Array.from([0x6d, 0x00]),\n data: new Uint8Array(0),\n });\n const result = command.parseResponse(response);\n expect(isSuccessCommandResult(result)).toBe(false);\n });\n\n it(\"when publicKeyLength is invalid\", () => {\n // GIVEN\n const response = {\n data: Uint8Array.from([]), // Invalid public key length\n statusCode: Uint8Array.from([0x90, 0x00]), // Success status code\n };\n\n // WHEN\n const result = command.parseResponse(response);\n\n // THEN\n if (isSuccessCommandResult(result)) {\n assert.fail(\"Expected an error\");\n } else {\n expect(result.error).toBeInstanceOf(InvalidStatusWordError);\n expect(result.error.originalError).toEqual(\n new Error(\"Public key length is missing\"),\n );\n }\n });\n\n it(\"when publicKey is invalid\", () => {\n // GIVEN\n const response = {\n data: Uint8Array.from([0x01]), // Invalid public key\n statusCode: Uint8Array.from([0x90, 0x00]), // Success status code\n };\n\n // WHEN\n const result = command.parseResponse(response);\n\n // THEN\n if (isSuccessCommandResult(result)) {\n assert.fail(\"Expected an error\");\n } else {\n expect(result.error).toBeInstanceOf(InvalidStatusWordError);\n expect(result.error.originalError).toEqual(\n new Error(\"Public key is missing\"),\n );\n }\n });\n\n it(\"when addressLength is invalid\", () => {\n // GIVEN\n const response = {\n data: Uint8Array.from([0x20, ...Array<number>(32).fill(0x02)]), // Invalid address length\n statusCode: Uint8Array.from([0x90, 0x00]), // Success status code\n };\n\n // WHEN\n const result = command.parseResponse(response);\n\n // THEN\n if (isSuccessCommandResult(result)) {\n assert.fail(\"Expected an error\");\n } else {\n expect(result.error).toBeInstanceOf(InvalidStatusWordError);\n expect(result.error.originalError).toEqual(\n new Error(\"Ethereum address length is missing\"),\n );\n }\n });\n\n it(\"when address is missing\", () => {\n // GIVEN\n const response = {\n data: Uint8Array.from([0x20, ...Array<number>(32).fill(0x02), 0x01]), // Invalid address\n statusCode: Uint8Array.from([0x90, 0x00]), // Success status code\n };\n\n // WHEN\n const result = command.parseResponse(response);\n\n // THEN\n if (isSuccessCommandResult(result)) {\n assert.fail(\"Expected an error\");\n } else {\n expect(result.error).toBeInstanceOf(InvalidStatusWordError);\n expect(result.error.originalError).toEqual(\n new Error(\"Ethereum address is missing\"),\n );\n }\n });\n\n it(\"when the address is invalid\", () => {\n // GIVEN\n const response = {\n data: Uint8Array.from([\n 0x20,\n ...Array<number>(32).fill(0x02),\n 0x01,\n 0x02,\n ]), // Invalid address\n statusCode: Uint8Array.from([0x90, 0x00]), // Success status code\n };\n\n // WHEN\n const result = command.parseResponse(response);\n\n // THEN\n if (isSuccessCommandResult(result)) {\n assert.fail(\"Expected an error\");\n } else {\n expect(result.error).toBeInstanceOf(InvalidStatusWordError);\n expect(result.error.originalError).toEqual(\n new Error(\"Invalid Ethereum address\"),\n );\n }\n });\n\n it(\"when chainCode is invalid\", () => {\n // GIVEN\n const response = {\n data: LNX_RESPONSE_DATA_GOOD_WITH_CHAIN_CODE.slice(0, -1), // Invalid chainCode\n statusCode: Uint8Array.from([0x90, 0x00]), // Success status code\n };\n\n // WHEN\n const commandWithChainCode = new GetAddressCommand({\n ...defaultArgs,\n returnChainCode: true,\n });\n const result = commandWithChainCode.parseResponse(response);\n\n // THEN\n if (isSuccessCommandResult(result)) {\n assert.fail(\"Expected an error\");\n } else {\n expect(result.error).toBeInstanceOf(InvalidStatusWordError);\n expect(result.error.originalError).toEqual(\n new Error(\"Invalid Chaincode\"),\n );\n }\n });\n });\n });\n});\n"],
5
+ "mappings": "AAAA,OACE,gBAAAA,EACA,wBAAAC,EACA,0BAAAC,EACA,0BAAAC,MACK,kCAEP,OAAS,qBAAAC,MAAyB,sBAElC,MAAMC,EAAmB,WAAW,KAAK,CACvC,IAAM,EAAM,EAAM,EAAM,GAAM,EAAM,IAAM,EAAM,EAAM,GAAM,IAAM,EAAM,EACxE,GAAM,IAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,CAC5C,CAAC,EAEKC,EAAwC,WAAW,KAAK,CAC5D,IAAM,EAAM,EAAM,EAAM,GAAM,EAAM,IAAM,EAAM,EAAM,GAAM,IAAM,EAAM,EACxE,GAAM,IAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,CAC5C,CAAC,EAEKC,EAA0C,WAAW,KAAK,CAC9D,IAAM,EAAM,EAAM,EAAM,GAAM,EAAM,IAAM,EAAM,EAAM,GAAM,IAAM,EAAM,EACxE,GAAM,IAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,CAC5C,CAAC,EAEKC,EACJ,WAAW,KAAK,CACd,IAAM,EAAM,EAAM,EAAM,GAAM,EAAM,IAAM,EAAM,EAAM,GAAM,IAAM,EAClE,EAAM,GAAM,IAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAClE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,CACxD,CAAC,EAEGC,EAA+C,WAAW,KAAK,CACnE,IAAM,EAAM,EAAM,EAAM,GAAM,EAAM,IAAM,EAAM,EAAM,GAAM,IAAM,EAAM,EACxE,GAAM,IAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,CAC5C,CAAC,EAEKC,EAAyB,WAAW,KAAK,CAC7C,GAAM,EAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,GAAM,GACxE,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,GAAM,IAAM,GAAM,IACxE,IAAM,GAAM,GAAM,GAAM,EAAM,GAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IACxE,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IACxE,GAAM,GAAM,IAAM,GAAM,GAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IACxE,IAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,IAAM,IAAM,GAAM,GAAM,GACxE,GAAM,GAAM,IAAM,GAAM,IAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GACxE,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GACxE,GAAM,GAAM,EACd,CAAC,EAEKC,EAAoB,IAAIX,EAAa,CACzC,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,EACxC,KAAMU,CACR,CAAC,EAEKE,EAAyC,WAAW,KAAK,CAC7D,GAAM,EAAK,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,GAAM,GACvE,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,GAAM,IAAM,GAAM,IACxE,IAAM,GAAM,GAAM,GAAM,EAAK,GAAK,IAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IACtE,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IACxE,GAAM,GAAK,IAAM,GAAM,GAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IACvE,IAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,IAAM,IAAM,GAAM,GAAM,GACxE,GAAM,GAAM,IAAM,GAAM,IAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GACxE,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GACxE,GAAM,GAAM,GAAM,GAAM,GAAM,IAAM,GAAM,GAAM,GAAM,IAAM,GAAM,IAAM,GACxE,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,IACxE,GAAM,GAAM,GAAM,IAAM,IAAM,GAAM,GAAK,IAAM,EACjD,CAAC,EAEKC,EAAoC,IAAIb,EAAa,CACzD,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,EACxC,KAAMY,CACR,CAAC,EAED,SAAS,oBAAqB,IAAM,CAClC,IAAIE,EACJ,MAAMC,EAAc,CAClB,eAAgB,iBAChB,cAAe,GACf,gBAAiB,EACnB,EAEA,WAAW,IAAM,CACfD,EAAU,IAAIV,EAAkBW,CAAW,CAC7C,CAAC,EAED,SAAS,UAAW,IAAM,CACxB,GAAG,sDAAuD,IAAM,CAC9D,MAAMC,EAAOF,EAAQ,QAAQ,EAC7B,OAAOE,EAAK,WAAW,CAAC,EAAE,cAAcX,CAAgB,CAC1D,CAAC,EAED,GAAG,mEAAoE,IAAM,CAC3ES,EAAU,IAAIV,EAAkB,CAAE,GAAGW,EAAa,cAAe,EAAK,CAAC,EACvE,MAAMC,EAAOF,EAAQ,QAAQ,EAC7B,OAAOE,EAAK,WAAW,CAAC,EAAE,cACxBV,CACF,CACF,CAAC,EAED,GAAG,qEAAsE,IAAM,CAC7EQ,EAAU,IAAIV,EAAkB,CAC9B,GAAGW,EACH,gBAAiB,EACnB,CAAC,EACD,MAAMC,EAAOF,EAAQ,QAAQ,EAC7B,OAAOE,EAAK,WAAW,CAAC,EAAE,cACxBT,CACF,CACF,CAAC,EAED,GAAG,uFAAwF,IAAM,CAC/FO,EAAU,IAAIV,EAAkB,CAC9B,GAAGW,EACH,cAAe,GACf,gBAAiB,EACnB,CAAC,EACD,MAAMC,EAAOF,EAAQ,QAAQ,EAC7B,OAAOE,EAAK,WAAW,CAAC,EAAE,cACxBR,CACF,CACF,CAAC,EAED,GAAG,kEAAmE,IAAM,CAC1E,MAAMS,EAAuB,iBAC7BH,EAAU,IAAIV,EAAkB,CAC9B,GAAGW,EACH,eAAgBE,CAClB,CAAC,EACD,MAAMD,EAAOF,EAAQ,QAAQ,EAC7B,OAAOE,EAAK,WAAW,CAAC,EAAE,cACxBP,CACF,CACF,CAAC,CACH,CAAC,EAED,SAAS,gBAAiB,IAAM,CAC9B,GAAG,4BAA6B,IAAM,CACpC,MAAMS,EAASJ,EAAQ,cAAcH,CAAiB,EACtD,OAAOO,CAAM,EAAE,cACbjB,EAAqB,CACnB,KAAM,CACJ,UACE,qIACF,QAAS,6CACT,UAAW,MACb,CACF,CAAC,CACH,CACF,CAAC,EAED,GAAG,2CAA4C,IAAM,CAElDa,EAAgB,KAAQ,gBAAkB,GAC3C,MAAMI,EAASJ,EAAQ,cAAcD,CAAiC,EACtE,OAAOK,CAAM,EAAE,cACbjB,EAAqB,CACnB,KAAM,CACJ,UACE,qIACF,QAAS,6CACT,UACE,kEACJ,CACF,CAAC,CACH,CACF,CAAC,EAED,GAAG,qDAAsD,IAAM,CAE5Da,EAAgB,KAAQ,gBAAkB,GAC3C,MAAMI,EAASJ,EAAQ,cAAcD,CAAiC,EACtE,OAAOK,CAAM,EAAE,cACbjB,EAAqB,CACnB,KAAM,CACJ,UACE,qIACF,QAAS,6CACT,UAAW,MACb,CACF,CAAC,CACH,CACF,CAAC,EAED,SAAS,yBAA0B,IAAM,CACvC,GAAG,uCAAwC,IAAM,CAC/C,MAAMkB,EAAW,IAAInB,EAAa,CAChC,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,EACxC,KAAM,IAAI,WAAW,CAAC,CACxB,CAAC,EACKoB,EAASN,EAAQ,cAAcK,CAAQ,EAC7C,OAAOhB,EAAuBiB,CAAM,CAAC,EAAE,KAAK,EAAK,CACnD,CAAC,EAED,GAAG,kCAAmC,IAAM,CAE1C,MAAMD,EAAW,CACf,KAAM,WAAW,KAAK,CAAC,CAAC,EACxB,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAGMC,EAASN,EAAQ,cAAcK,CAAQ,EAGzChB,EAAuBiB,CAAM,EAC/B,OAAO,KAAK,mBAAmB,GAE/B,OAAOA,EAAO,KAAK,EAAE,eAAelB,CAAsB,EAC1D,OAAOkB,EAAO,MAAM,aAAa,EAAE,QACjC,IAAI,MAAM,8BAA8B,CAC1C,EAEJ,CAAC,EAED,GAAG,4BAA6B,IAAM,CAEpC,MAAMD,EAAW,CACf,KAAM,WAAW,KAAK,CAAC,CAAI,CAAC,EAC5B,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAGMC,EAASN,EAAQ,cAAcK,CAAQ,EAGzChB,EAAuBiB,CAAM,EAC/B,OAAO,KAAK,mBAAmB,GAE/B,OAAOA,EAAO,KAAK,EAAE,eAAelB,CAAsB,EAC1D,OAAOkB,EAAO,MAAM,aAAa,EAAE,QACjC,IAAI,MAAM,uBAAuB,CACnC,EAEJ,CAAC,EAED,GAAG,gCAAiC,IAAM,CAExC,MAAMD,EAAW,CACf,KAAM,WAAW,KAAK,CAAC,GAAM,GAAG,MAAc,EAAE,EAAE,KAAK,CAAI,CAAC,CAAC,EAC7D,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAGMC,EAASN,EAAQ,cAAcK,CAAQ,EAGzChB,EAAuBiB,CAAM,EAC/B,OAAO,KAAK,mBAAmB,GAE/B,OAAOA,EAAO,KAAK,EAAE,eAAelB,CAAsB,EAC1D,OAAOkB,EAAO,MAAM,aAAa,EAAE,QACjC,IAAI,MAAM,oCAAoC,CAChD,EAEJ,CAAC,EAED,GAAG,0BAA2B,IAAM,CAElC,MAAMD,EAAW,CACf,KAAM,WAAW,KAAK,CAAC,GAAM,GAAG,MAAc,EAAE,EAAE,KAAK,CAAI,EAAG,CAAI,CAAC,EACnE,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAGMC,EAASN,EAAQ,cAAcK,CAAQ,EAGzChB,EAAuBiB,CAAM,EAC/B,OAAO,KAAK,mBAAmB,GAE/B,OAAOA,EAAO,KAAK,EAAE,eAAelB,CAAsB,EAC1D,OAAOkB,EAAO,MAAM,aAAa,EAAE,QACjC,IAAI,MAAM,6BAA6B,CACzC,EAEJ,CAAC,EAED,GAAG,8BAA+B,IAAM,CAEtC,MAAMD,EAAW,CACf,KAAM,WAAW,KAAK,CACpB,GACA,GAAG,MAAc,EAAE,EAAE,KAAK,CAAI,EAC9B,EACA,CACF,CAAC,EACD,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAGMC,EAASN,EAAQ,cAAcK,CAAQ,EAGzChB,EAAuBiB,CAAM,EAC/B,OAAO,KAAK,mBAAmB,GAE/B,OAAOA,EAAO,KAAK,EAAE,eAAelB,CAAsB,EAC1D,OAAOkB,EAAO,MAAM,aAAa,EAAE,QACjC,IAAI,MAAM,0BAA0B,CACtC,EAEJ,CAAC,EAED,GAAG,4BAA6B,IAAM,CAEpC,MAAMD,EAAW,CACf,KAAMP,EAAuC,MAAM,EAAG,EAAE,EACxD,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAOMQ,EAJuB,IAAIhB,EAAkB,CACjD,GAAGW,EACH,gBAAiB,EACnB,CAAC,EACmC,cAAcI,CAAQ,EAGtDhB,EAAuBiB,CAAM,EAC/B,OAAO,KAAK,mBAAmB,GAE/B,OAAOA,EAAO,KAAK,EAAE,eAAelB,CAAsB,EAC1D,OAAOkB,EAAO,MAAM,aAAa,EAAE,QACjC,IAAI,MAAM,mBAAmB,CAC/B,EAEJ,CAAC,CACH,CAAC,CACH,CAAC,CACH,CAAC",
6
6
  "names": ["ApduResponse", "CommandResultFactory", "InvalidStatusWordError", "isSuccessCommandResult", "GetAddressCommand", "GET_ADDRESS_APDU", "GET_ADDRESS_APDU_WITH_CHECK_ON_DEVICE", "GET_ADDRESS_APDU_WITH_RETURN_CHAIN_CODE", "GET_ADDRESS_APDU_WITH_CHECK_ON_DEVICE_WITH_RETURN_CHAIN_CODE", "GET_ADDRESS_APDU_WITH_CUSTOM_DERIVATION_PATH", "LNX_RESPONSE_DATA_GOOD", "LNX_RESPONSE_GOOD", "LNX_RESPONSE_DATA_GOOD_WITH_CHAIN_CODE", "LNX_RESPONSE_GOOD_WITH_CHAIN_CODE", "command", "defaultArgs", "apdu", "customDerivationPath", "parsed", "response", "result"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{ApduBuilder as a,ApduParser as l,CommandResultFactory as t,CommandUtils as o,GlobalCommandErrorHandler as d,InvalidStatusWordError as m}from"@ledgerhq/device-management-kit";const r=4;class i{constructor(){}getApdu(){const e={cla:224,ins:32,p1:0,p2:0};return new a(e).build()}parseResponse(e){if(!o.isSuccessResponse(e))return t({error:d.handle(e)});const n=new l(e);if(n.testMinimalLength(r)===!1)return t({error:new m("Challenge key is missing")});const s=n.encodeToHexaString(n.extractFieldByLength(r));return t({data:{challenge:s}})}}export{i as GetChallengeCommand};
1
+ import{ApduBuilder as a,ApduParser as s,CommandResultFactory as o,InvalidStatusWordError as l}from"@ledgerhq/device-management-kit";import{CommandErrorHelper as p}from"@ledgerhq/signer-utils";import{Maybe as m}from"purify-ts";import{ETH_APP_ERRORS as d,EthAppCommandErrorFactory as u}from"./utils/ethAppErrors";const t=4;class A{errorHelper=new p(d,u);constructor(){}getApdu(){const e={cla:224,ins:32,p1:0,p2:0};return new a(e).build()}parseResponse(e){return m.fromNullable(this.errorHelper.getError(e)).orDefaultLazy(()=>{const r=new s(e);if(r.testMinimalLength(t)===!1)return o({error:new l("Challenge key is missing")});const n=r.encodeToHexaString(r.extractFieldByLength(t));return o({data:{challenge:n}})})}}export{A as GetChallengeCommand};
2
2
  //# sourceMappingURL=GetChallengeCommand.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/GetChallengeCommand.ts"],
4
- "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#get-challenge\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\";\n\nconst CHALLENGE_LENGTH = 4;\n\nexport type GetChallengeCommandResponse = {\n challenge: string;\n};\n\nexport class GetChallengeCommand\n implements Command<GetChallengeCommandResponse>\n{\n constructor() {}\n\n getApdu(): Apdu {\n const getChallengeArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x20,\n p1: 0x00,\n p2: 0x00,\n };\n return new ApduBuilder(getChallengeArgs).build();\n }\n\n parseResponse(\n response: ApduResponse,\n ): CommandResult<GetChallengeCommandResponse> {\n if (!CommandUtils.isSuccessResponse(response)) {\n return CommandResultFactory({\n error: GlobalCommandErrorHandler.handle(response),\n });\n }\n\n const parser = new ApduParser(response);\n\n if (parser.testMinimalLength(CHALLENGE_LENGTH) === false) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"Challenge key is missing\"),\n });\n }\n\n const challenge = parser.encodeToHexaString(\n parser.extractFieldByLength(CHALLENGE_LENGTH),\n );\n\n return CommandResultFactory({\n data: {\n challenge,\n },\n });\n }\n}\n"],
5
- "mappings": "AACA,OAEE,eAAAA,EAEA,cAAAC,EAIA,wBAAAC,EACA,gBAAAC,EACA,6BAAAC,EACA,0BAAAC,MACK,kCAEP,MAAMC,EAAmB,EAMlB,MAAMC,CAEb,CACE,aAAc,CAAC,CAEf,SAAgB,CACd,MAAMC,EAAoC,CACxC,IAAK,IACL,IAAK,GACL,GAAI,EACJ,GAAI,CACN,EACA,OAAO,IAAIR,EAAYQ,CAAgB,EAAE,MAAM,CACjD,CAEA,cACEC,EAC4C,CAC5C,GAAI,CAACN,EAAa,kBAAkBM,CAAQ,EAC1C,OAAOP,EAAqB,CAC1B,MAAOE,EAA0B,OAAOK,CAAQ,CAClD,CAAC,EAGH,MAAMC,EAAS,IAAIT,EAAWQ,CAAQ,EAEtC,GAAIC,EAAO,kBAAkBJ,CAAgB,IAAM,GACjD,OAAOJ,EAAqB,CAC1B,MAAO,IAAIG,EAAuB,0BAA0B,CAC9D,CAAC,EAGH,MAAMM,EAAYD,EAAO,mBACvBA,EAAO,qBAAqBJ,CAAgB,CAC9C,EAEA,OAAOJ,EAAqB,CAC1B,KAAM,CACJ,UAAAS,CACF,CACF,CAAC,CACH,CACF",
6
- "names": ["ApduBuilder", "ApduParser", "CommandResultFactory", "CommandUtils", "GlobalCommandErrorHandler", "InvalidStatusWordError", "CHALLENGE_LENGTH", "GetChallengeCommand", "getChallengeArgs", "response", "parser", "challenge"]
4
+ "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#get-challenge\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n ApduParser,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\nimport { CommandErrorHelper } from \"@ledgerhq/signer-utils\";\nimport { Maybe } from \"purify-ts\";\n\nimport {\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n type EthErrorCodes,\n} from \"./utils/ethAppErrors\";\n\nconst CHALLENGE_LENGTH = 4;\n\nexport type GetChallengeCommandResponse = {\n challenge: string;\n};\n\nexport class GetChallengeCommand\n implements Command<GetChallengeCommandResponse, void, EthErrorCodes>\n{\n private readonly errorHelper = new CommandErrorHelper<\n GetChallengeCommandResponse,\n EthErrorCodes\n >(ETH_APP_ERRORS, EthAppCommandErrorFactory);\n\n constructor() {}\n\n getApdu(): Apdu {\n const getChallengeArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x20,\n p1: 0x00,\n p2: 0x00,\n };\n return new ApduBuilder(getChallengeArgs).build();\n }\n\n parseResponse(\n response: ApduResponse,\n ): CommandResult<GetChallengeCommandResponse, EthErrorCodes> {\n return Maybe.fromNullable(\n this.errorHelper.getError(response),\n ).orDefaultLazy(() => {\n const parser = new ApduParser(response);\n\n if (parser.testMinimalLength(CHALLENGE_LENGTH) === false) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"Challenge key is missing\"),\n });\n }\n\n const challenge = parser.encodeToHexaString(\n parser.extractFieldByLength(CHALLENGE_LENGTH),\n );\n\n return CommandResultFactory({\n data: {\n challenge,\n },\n });\n });\n }\n}\n"],
5
+ "mappings": "AACA,OAEE,eAAAA,EAEA,cAAAC,EAIA,wBAAAC,EACA,0BAAAC,MACK,kCACP,OAAS,sBAAAC,MAA0B,yBACnC,OAAS,SAAAC,MAAa,YAEtB,OACE,kBAAAC,EACA,6BAAAC,MAEK,uBAEP,MAAMC,EAAmB,EAMlB,MAAMC,CAEb,CACmB,YAAc,IAAIL,EAGjCE,EAAgBC,CAAyB,EAE3C,aAAc,CAAC,CAEf,SAAgB,CACd,MAAMG,EAAoC,CACxC,IAAK,IACL,IAAK,GACL,GAAI,EACJ,GAAI,CACN,EACA,OAAO,IAAIV,EAAYU,CAAgB,EAAE,MAAM,CACjD,CAEA,cACEC,EAC2D,CAC3D,OAAON,EAAM,aACX,KAAK,YAAY,SAASM,CAAQ,CACpC,EAAE,cAAc,IAAM,CACpB,MAAMC,EAAS,IAAIX,EAAWU,CAAQ,EAEtC,GAAIC,EAAO,kBAAkBJ,CAAgB,IAAM,GACjD,OAAON,EAAqB,CAC1B,MAAO,IAAIC,EAAuB,0BAA0B,CAC9D,CAAC,EAGH,MAAMU,EAAYD,EAAO,mBACvBA,EAAO,qBAAqBJ,CAAgB,CAC9C,EAEA,OAAON,EAAqB,CAC1B,KAAM,CACJ,UAAAW,CACF,CACF,CAAC,CACH,CAAC,CACH,CACF",
6
+ "names": ["ApduBuilder", "ApduParser", "CommandResultFactory", "InvalidStatusWordError", "CommandErrorHelper", "Maybe", "ETH_APP_ERRORS", "EthAppCommandErrorFactory", "CHALLENGE_LENGTH", "GetChallengeCommand", "getChallengeArgs", "response", "parser", "challenge"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{CommandResultFactory as o,InvalidStatusWordError as r,isSuccessCommandResult as s}from"@ledgerhq/device-management-kit";import{GetChallengeCommand as a}from"./GetChallengeCommand";const n=Uint8Array.from([224,32,0,0,0]),d=Uint8Array.from([1,2,3,4]),c={statusCode:Uint8Array.from([144,0]),data:d},p={statusCode:Uint8Array.from([85,21]),data:new Uint8Array},m=Uint8Array.from([1,2]),l={statusCode:Uint8Array.from([144,0]),data:m};describe("GetChallengeCommand",()=>{let t;beforeEach(()=>{t=new a}),describe("getApdu",()=>{it("should return the challenge apdu",()=>{const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(n)})}),describe("parseResponse",()=>{it("should parse the response",()=>{const e=t.parseResponse(c);expect(e).toStrictEqual(o({data:{challenge:"01020304"}}))}),it("should return an error if the response is not successful",()=>{const e=t.parseResponse(p);expect(s(e)).toBe(!1)}),it("should return an error if the response is too short",()=>{const e=t.parseResponse(l);expect(s(e)).toBe(!1),expect(e.error).toBeInstanceOf(r)})})});
1
+ import{CommandResultFactory as s,InvalidStatusWordError as o,isSuccessCommandResult as r}from"@ledgerhq/device-management-kit";import{GetChallengeCommand as n}from"./GetChallengeCommand";const a=Uint8Array.from([224,32,0,0,0]),d=Uint8Array.from([1,2,3,4]),p={statusCode:Uint8Array.from([144,0]),data:d},c={statusCode:Uint8Array.from([85,21]),data:new Uint8Array},m=Uint8Array.from([1,2]),l={statusCode:Uint8Array.from([144,0]),data:m};describe("GetChallengeCommand",()=>{let t;beforeEach(()=>{t=new n}),describe("getApdu",()=>{it("should return the challenge apdu",()=>{const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(a)})}),describe("parseResponse",()=>{it("should parse the response",()=>{const e=t.parseResponse(p);expect(e).toStrictEqual(s({data:{challenge:"01020304"}}))}),it("should return an error if the response is not successful",()=>{const e=t.parseResponse(c);expect(r(e)).toBe(!1)}),it("should return an error if the response is too short",()=>{const e=t.parseResponse(l);expect(r(e)).toBe(!1),expect(e.error).toBeInstanceOf(o)})})});
2
2
  //# sourceMappingURL=GetChallengeCommand.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/GetChallengeCommand.test.ts"],
4
- "sourcesContent": ["import {\n type Command,\n CommandResultFactory,\n InvalidStatusWordError,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport {\n GetChallengeCommand,\n type GetChallengeCommandResponse,\n} from \"./GetChallengeCommand\";\n\nconst GET_CHALLENGE_APDU = Uint8Array.from([0xe0, 0x20, 0x00, 0x00, 0x00]);\n\nconst LNX_RESPONSE_DATA_GOOD = Uint8Array.from([0x01, 0x02, 0x03, 0x04]);\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(\"GetChallengeCommand\", () => {\n let command: Command<GetChallengeCommandResponse, void>;\n\n beforeEach(() => {\n command = new GetChallengeCommand();\n });\n\n describe(\"getApdu\", () => {\n it(\"should return the challenge apdu\", () => {\n const apdu = command.getApdu();\n expect(apdu.getRawApdu()).toStrictEqual(GET_CHALLENGE_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 challenge: \"01020304\",\n },\n }),\n );\n });\n\n it(\"should return an error if the response is not successful\", () => {\n const result = command.parseResponse(LNX_RESPONSE_LOCKED);\n expect(isSuccessCommandResult(result)).toBe(false);\n });\n\n it(\"should return an error if the response is too short\", () => {\n const result = command.parseResponse(LNX_RESPONSE_TOO_SHORT);\n\n expect(isSuccessCommandResult(result)).toBe(false);\n // @ts-ignore\n expect(result.error).toBeInstanceOf(InvalidStatusWordError);\n });\n });\n});\n"],
5
- "mappings": "AAAA,OAEE,wBAAAA,EACA,0BAAAC,EACA,0BAAAC,MACK,kCAEP,OACE,uBAAAC,MAEK,wBAEP,MAAMC,EAAqB,WAAW,KAAK,CAAC,IAAM,GAAM,EAAM,EAAM,CAAI,CAAC,EAEnEC,EAAyB,WAAW,KAAK,CAAC,EAAM,EAAM,EAAM,CAAI,CAAC,EAEjEC,EAAoB,CACxB,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,EACxC,KAAMD,CACR,EAEME,EAAsB,CAC1B,WAAY,WAAW,KAAK,CAAC,GAAM,EAAI,CAAC,EACxC,KAAM,IAAI,UACZ,EAEMC,EAA8B,WAAW,KAAK,CAAC,EAAM,CAAI,CAAC,EAE1DC,EAAyB,CAC7B,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,EACxC,KAAMD,CACR,EAEA,SAAS,sBAAuB,IAAM,CACpC,IAAIE,EAEJ,WAAW,IAAM,CACfA,EAAU,IAAIP,CAChB,CAAC,EAED,SAAS,UAAW,IAAM,CACxB,GAAG,mCAAoC,IAAM,CAC3C,MAAMQ,EAAOD,EAAQ,QAAQ,EAC7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cAAcP,CAAkB,CAC5D,CAAC,CACH,CAAC,EAED,SAAS,gBAAiB,IAAM,CAC9B,GAAG,4BAA6B,IAAM,CACpC,MAAMQ,EAAiBF,EAAQ,cAAcJ,CAAiB,EAC9D,OAAOM,CAAc,EAAE,cACrBZ,EAAqB,CACnB,KAAM,CACJ,UAAW,UACb,CACF,CAAC,CACH,CACF,CAAC,EAED,GAAG,2DAA4D,IAAM,CACnE,MAAMa,EAASH,EAAQ,cAAcH,CAAmB,EACxD,OAAOL,EAAuBW,CAAM,CAAC,EAAE,KAAK,EAAK,CACnD,CAAC,EAED,GAAG,sDAAuD,IAAM,CAC9D,MAAMA,EAASH,EAAQ,cAAcD,CAAsB,EAE3D,OAAOP,EAAuBW,CAAM,CAAC,EAAE,KAAK,EAAK,EAEjD,OAAOA,EAAO,KAAK,EAAE,eAAeZ,CAAsB,CAC5D,CAAC,CACH,CAAC,CACH,CAAC",
4
+ "sourcesContent": ["import {\n type Command,\n CommandResultFactory,\n InvalidStatusWordError,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { type EthErrorCodes } from \"./utils/ethAppErrors\";\nimport {\n GetChallengeCommand,\n type GetChallengeCommandResponse,\n} from \"./GetChallengeCommand\";\n\nconst GET_CHALLENGE_APDU = Uint8Array.from([0xe0, 0x20, 0x00, 0x00, 0x00]);\n\nconst LNX_RESPONSE_DATA_GOOD = Uint8Array.from([0x01, 0x02, 0x03, 0x04]);\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(\"GetChallengeCommand\", () => {\n let command: Command<GetChallengeCommandResponse, EthErrorCodes, string>;\n\n beforeEach(() => {\n command = new GetChallengeCommand();\n });\n\n describe(\"getApdu\", () => {\n it(\"should return the challenge apdu\", () => {\n const apdu = command.getApdu();\n expect(apdu.getRawApdu()).toStrictEqual(GET_CHALLENGE_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 challenge: \"01020304\",\n },\n }),\n );\n });\n\n it(\"should return an error if the response is not successful\", () => {\n const result = command.parseResponse(LNX_RESPONSE_LOCKED);\n expect(isSuccessCommandResult(result)).toBe(false);\n });\n\n it(\"should return an error if the response is too short\", () => {\n const result = command.parseResponse(LNX_RESPONSE_TOO_SHORT);\n\n expect(isSuccessCommandResult(result)).toBe(false);\n // @ts-ignore\n expect(result.error).toBeInstanceOf(InvalidStatusWordError);\n });\n });\n});\n"],
5
+ "mappings": "AAAA,OAEE,wBAAAA,EACA,0BAAAC,EACA,0BAAAC,MACK,kCAGP,OACE,uBAAAC,MAEK,wBAEP,MAAMC,EAAqB,WAAW,KAAK,CAAC,IAAM,GAAM,EAAM,EAAM,CAAI,CAAC,EAEnEC,EAAyB,WAAW,KAAK,CAAC,EAAM,EAAM,EAAM,CAAI,CAAC,EAEjEC,EAAoB,CACxB,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,EACxC,KAAMD,CACR,EAEME,EAAsB,CAC1B,WAAY,WAAW,KAAK,CAAC,GAAM,EAAI,CAAC,EACxC,KAAM,IAAI,UACZ,EAEMC,EAA8B,WAAW,KAAK,CAAC,EAAM,CAAI,CAAC,EAE1DC,EAAyB,CAC7B,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,EACxC,KAAMD,CACR,EAEA,SAAS,sBAAuB,IAAM,CACpC,IAAIE,EAEJ,WAAW,IAAM,CACfA,EAAU,IAAIP,CAChB,CAAC,EAED,SAAS,UAAW,IAAM,CACxB,GAAG,mCAAoC,IAAM,CAC3C,MAAMQ,EAAOD,EAAQ,QAAQ,EAC7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cAAcP,CAAkB,CAC5D,CAAC,CACH,CAAC,EAED,SAAS,gBAAiB,IAAM,CAC9B,GAAG,4BAA6B,IAAM,CACpC,MAAMQ,EAAiBF,EAAQ,cAAcJ,CAAiB,EAC9D,OAAOM,CAAc,EAAE,cACrBZ,EAAqB,CACnB,KAAM,CACJ,UAAW,UACb,CACF,CAAC,CACH,CACF,CAAC,EAED,GAAG,2DAA4D,IAAM,CACnE,MAAMa,EAASH,EAAQ,cAAcH,CAAmB,EACxD,OAAOL,EAAuBW,CAAM,CAAC,EAAE,KAAK,EAAK,CACnD,CAAC,EAED,GAAG,sDAAuD,IAAM,CAC9D,MAAMA,EAASH,EAAQ,cAAcD,CAAsB,EAE3D,OAAOP,EAAuBW,CAAM,CAAC,EAAE,KAAK,EAAK,EAEjD,OAAOA,EAAO,KAAK,EAAE,eAAeZ,CAAsB,CAC5D,CAAC,CACH,CAAC,CACH,CAAC",
6
6
  "names": ["CommandResultFactory", "InvalidStatusWordError", "isSuccessCommandResult", "GetChallengeCommand", "GET_CHALLENGE_APDU", "LNX_RESPONSE_DATA_GOOD", "LNX_RESPONSE_GOOD", "LNX_RESPONSE_LOCKED", "LNX_RESPONSE_DATA_TOO_SHORT", "LNX_RESPONSE_TOO_SHORT", "command", "apdu", "parsedResponse", "result"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{ApduBuilder as d,CommandResultFactory as r,CommandUtils as n,GlobalCommandErrorHandler as o}from"@ledgerhq/device-management-kit";class t{constructor(e){this.args=e}getApdu(){const e={cla:224,ins:36,p1:this.args.isFirstChunk?1:0,p2:0};return new d(e).addBufferToData(this.args.data).build()}parseResponse(e){return n.isSuccessResponse(e)?r({data:void 0}):r({error:o.handle(e)})}}export{t as ProvideEnumCommand};
1
+ import{ApduBuilder as e,CommandResultFactory as o}from"@ledgerhq/device-management-kit";import{CommandErrorHelper as d}from"@ledgerhq/signer-utils";import{Maybe as t}from"purify-ts";import{ETH_APP_ERRORS as a,EthAppCommandErrorFactory as m}from"./utils/ethAppErrors";class l{constructor(r){this.args=r}errorHelper=new d(a,m);getApdu(){const r={cla:224,ins:36,p1:this.args.isFirstChunk?1:0,p2:0};return new e(r).addBufferToData(this.args.data).build()}parseResponse(r){return t.fromNullable(this.errorHelper.getError(r)).orDefault(o({data:void 0}))}}export{l as ProvideEnumCommand};
2
2
  //# sourceMappingURL=ProvideEnumCommand.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/ProvideEnumCommand.ts"],
4
- "sourcesContent": ["// https://github.com/LedgerHQ/generic_parser/blob/master/specs.md#provide-enum\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 ProvideEnumCommandArgs = {\n /**\n * The enum data to provide in 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 class ProvideEnumCommand\n implements Command<void, ProvideEnumCommandArgs>\n{\n constructor(private readonly args: ProvideEnumCommandArgs) {}\n\n getApdu(): Apdu {\n const ProvideEnumArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x24,\n p1: this.args.isFirstChunk ? 0x01 : 0x00,\n p2: 0x00,\n };\n\n return new ApduBuilder(ProvideEnumArgs)\n .addBufferToData(this.args.data)\n .build();\n }\n\n parseResponse(response: ApduResponse): CommandResult<void> {\n if (CommandUtils.isSuccessResponse(response)) {\n return CommandResultFactory({ data: undefined });\n }\n\n return CommandResultFactory({\n error: GlobalCommandErrorHandler.handle(response),\n });\n }\n}\n"],
5
- "mappings": "AACA,OAEE,eAAAA,EAKA,wBAAAC,EACA,gBAAAC,EACA,6BAAAC,MACK,kCAaA,MAAMC,CAEb,CACE,YAA6BC,EAA8B,CAA9B,UAAAA,CAA+B,CAE5D,SAAgB,CACd,MAAMC,EAAmC,CACvC,IAAK,IACL,IAAK,GACL,GAAI,KAAK,KAAK,aAAe,EAAO,EACpC,GAAI,CACN,EAEA,OAAO,IAAIN,EAAYM,CAAe,EACnC,gBAAgB,KAAK,KAAK,IAAI,EAC9B,MAAM,CACX,CAEA,cAAcC,EAA6C,CACzD,OAAIL,EAAa,kBAAkBK,CAAQ,EAClCN,EAAqB,CAAE,KAAM,MAAU,CAAC,EAG1CA,EAAqB,CAC1B,MAAOE,EAA0B,OAAOI,CAAQ,CAClD,CAAC,CACH,CACF",
6
- "names": ["ApduBuilder", "CommandResultFactory", "CommandUtils", "GlobalCommandErrorHandler", "ProvideEnumCommand", "args", "ProvideEnumArgs", "response"]
4
+ "sourcesContent": ["// https://github.com/LedgerHQ/generic_parser/blob/master/specs.md#provide-enum\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n} from \"@ledgerhq/device-management-kit\";\nimport { CommandErrorHelper } from \"@ledgerhq/signer-utils\";\nimport { Maybe } from \"purify-ts\";\n\nimport {\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n type EthErrorCodes,\n} from \"./utils/ethAppErrors\";\n\nexport type ProvideEnumCommandArgs = {\n /**\n * The enum data to provide in 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 class ProvideEnumCommand\n implements Command<void, ProvideEnumCommandArgs, EthErrorCodes>\n{\n private readonly errorHelper = new CommandErrorHelper<void, EthErrorCodes>(\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n );\n\n constructor(private readonly args: ProvideEnumCommandArgs) {}\n\n getApdu(): Apdu {\n const ProvideEnumArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x24,\n p1: this.args.isFirstChunk ? 0x01 : 0x00,\n p2: 0x00,\n };\n\n return new ApduBuilder(ProvideEnumArgs)\n .addBufferToData(this.args.data)\n .build();\n }\n\n parseResponse(response: ApduResponse): CommandResult<void, EthErrorCodes> {\n return Maybe.fromNullable(this.errorHelper.getError(response)).orDefault(\n CommandResultFactory({ data: undefined }),\n );\n }\n}\n"],
5
+ "mappings": "AACA,OAEE,eAAAA,EAKA,wBAAAC,MACK,kCACP,OAAS,sBAAAC,MAA0B,yBACnC,OAAS,SAAAC,MAAa,YAEtB,OACE,kBAAAC,EACA,6BAAAC,MAEK,uBAaA,MAAMC,CAEb,CAME,YAA6BC,EAA8B,CAA9B,UAAAA,CAA+B,CAL3C,YAAc,IAAIL,EACjCE,EACAC,CACF,EAIA,SAAgB,CACd,MAAMG,EAAmC,CACvC,IAAK,IACL,IAAK,GACL,GAAI,KAAK,KAAK,aAAe,EAAO,EACpC,GAAI,CACN,EAEA,OAAO,IAAIR,EAAYQ,CAAe,EACnC,gBAAgB,KAAK,KAAK,IAAI,EAC9B,MAAM,CACX,CAEA,cAAcC,EAA4D,CACxE,OAAON,EAAM,aAAa,KAAK,YAAY,SAASM,CAAQ,CAAC,EAAE,UAC7DR,EAAqB,CAAE,KAAM,MAAU,CAAC,CAC1C,CACF,CACF",
6
+ "names": ["ApduBuilder", "CommandResultFactory", "CommandErrorHelper", "Maybe", "ETH_APP_ERRORS", "EthAppCommandErrorFactory", "ProvideEnumCommand", "args", "ProvideEnumArgs", "response"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{isSuccessCommandResult as n,UnknownDeviceExchangeError as o}from"@ledgerhq/device-management-kit";import{ProvideEnumCommand as t}from"./ProvideEnumCommand";describe("ProvideEnumCommand",()=>{describe("getApdu",()=>{it("should return the raw APDU for the first chunk",()=>{const r={data:Uint8Array.from([1,2,3]),isFirstChunk:!0},e=new t(r).getApdu();expect(e.getRawApdu()).toStrictEqual(Uint8Array.from([224,36,1,0,3,1,2,3]))}),it("should return the raw APDU for the subsequent chunk",()=>{const r={data:Uint8Array.from([4,5,6]),isFirstChunk:!1},e=new t(r).getApdu();expect(e.getRawApdu()).toStrictEqual(Uint8Array.from([224,36,0,0,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({data:new Uint8Array(0),isFirstChunk:!0}).parseResponse(r);if(n(e))throw new Error("Expected an error");expect(e.error).toBeDefined(),expect(e.error).toBeInstanceOf(o)}),it("should return a success result if the response status code is valid",()=>{const r={data:Uint8Array.from([]),statusCode:Uint8Array.from([144,0])},e=new t({data:new Uint8Array(0),isFirstChunk:!0}).parseResponse(r);expect(n(e)).toBe(!0)})})});
1
+ import{isSuccessCommandResult as o}from"@ledgerhq/device-management-kit";import{EthAppCommandError as n}from"./utils/ethAppErrors";import{ProvideEnumCommand as t}from"./ProvideEnumCommand";describe("ProvideEnumCommand",()=>{describe("getApdu",()=>{it("should return the raw APDU for the first chunk",()=>{const r={data:Uint8Array.from([1,2,3]),isFirstChunk:!0},e=new t(r).getApdu();expect(e.getRawApdu()).toStrictEqual(Uint8Array.from([224,36,1,0,3,1,2,3]))}),it("should return the raw APDU for the subsequent chunk",()=>{const r={data:Uint8Array.from([4,5,6]),isFirstChunk:!1},e=new t(r).getApdu();expect(e.getRawApdu()).toStrictEqual(Uint8Array.from([224,36,0,0,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({data:new Uint8Array(0),isFirstChunk:!0}).parseResponse(r);if(o(e))throw new Error("Expected an error");expect(e.error).toBeDefined(),expect(e.error).toBeInstanceOf(n)}),it("should return a success result if the response status code is valid",()=>{const r={data:Uint8Array.from([]),statusCode:Uint8Array.from([144,0])},e=new t({data:new Uint8Array(0),isFirstChunk:!0}).parseResponse(r);expect(o(e)).toBe(!0)})})});
2
2
  //# sourceMappingURL=ProvideEnumCommand.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/ProvideEnumCommand.test.ts"],
4
- "sourcesContent": ["import {\n type ApduResponse,\n isSuccessCommandResult,\n UnknownDeviceExchangeError,\n} from \"@ledgerhq/device-management-kit\";\n\nimport {\n ProvideEnumCommand,\n type ProvideEnumCommandArgs,\n} from \"./ProvideEnumCommand\";\n\ndescribe(\"ProvideEnumCommand\", () => {\n describe(\"getApdu\", () => {\n it(\"should return the raw APDU for the first chunk\", () => {\n // GIVEN\n const args: ProvideEnumCommandArgs = {\n data: Uint8Array.from([0x01, 0x02, 0x03]),\n isFirstChunk: true,\n };\n\n // WHEN\n const command = new ProvideEnumCommand(args);\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n Uint8Array.from([0xe0, 0x24, 0x01, 0x00, 0x03, 0x01, 0x02, 0x03]),\n );\n });\n\n it(\"should return the raw APDU for the subsequent chunk\", () => {\n // GIVEN\n const args: ProvideEnumCommandArgs = {\n data: Uint8Array.from([0x04, 0x05, 0x06]),\n isFirstChunk: false,\n };\n\n // WHEN\n const command = new ProvideEnumCommand(args);\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n Uint8Array.from([0xe0, 0x24, 0x00, 0x00, 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 ProvideEnumCommand({\n data: 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 an error\");\n } else {\n expect(result.error).toBeDefined();\n expect(result.error).toBeInstanceOf(UnknownDeviceExchangeError);\n }\n });\n\n it(\"should return a success result if the response status code is valid\", () => {\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 ProvideEnumCommand({\n data: new Uint8Array(0),\n isFirstChunk: true,\n });\n const result = command.parseResponse(response);\n\n // THEN\n expect(isSuccessCommandResult(result)).toBe(true);\n });\n });\n});\n"],
5
- "mappings": "AAAA,OAEE,0BAAAA,EACA,8BAAAC,MACK,kCAEP,OACE,sBAAAC,MAEK,uBAEP,SAAS,qBAAsB,IAAM,CACnC,SAAS,UAAW,IAAM,CACxB,GAAG,iDAAkD,IAAM,CAEzD,MAAMC,EAA+B,CACnC,KAAM,WAAW,KAAK,CAAC,EAAM,EAAM,CAAI,CAAC,EACxC,aAAc,EAChB,EAIMC,EADU,IAAIF,EAAmBC,CAAI,EACtB,QAAQ,EAG7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cACxB,WAAW,KAAK,CAAC,IAAM,GAAM,EAAM,EAAM,EAAM,EAAM,EAAM,CAAI,CAAC,CAClE,CACF,CAAC,EAED,GAAG,sDAAuD,IAAM,CAE9D,MAAMD,EAA+B,CACnC,KAAM,WAAW,KAAK,CAAC,EAAM,EAAM,CAAI,CAAC,EACxC,aAAc,EAChB,EAIMC,EADU,IAAIF,EAAmBC,CAAI,EACtB,QAAQ,EAG7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cACxB,WAAW,KAAK,CAAC,IAAM,GAAM,EAAM,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,EAAmB,CACrC,KAAM,IAAI,WAAW,CAAC,EACtB,aAAc,EAChB,CAAC,EACsB,cAAcG,CAAQ,EAG7C,GAAIL,EAAuBM,CAAM,EAC/B,MAAM,IAAI,MAAM,mBAAmB,EAEnC,OAAOA,EAAO,KAAK,EAAE,YAAY,EACjC,OAAOA,EAAO,KAAK,EAAE,eAAeL,CAA0B,CAElE,CAAC,EAED,GAAG,sEAAuE,IAAM,CAE9E,MAAMI,EAAyB,CAC7B,KAAM,WAAW,KAAK,CAAC,CAAC,EACxB,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAOMC,EAJU,IAAIJ,EAAmB,CACrC,KAAM,IAAI,WAAW,CAAC,EACtB,aAAc,EAChB,CAAC,EACsB,cAAcG,CAAQ,EAG7C,OAAOL,EAAuBM,CAAM,CAAC,EAAE,KAAK,EAAI,CAClD,CAAC,CACH,CAAC,CACH,CAAC",
6
- "names": ["isSuccessCommandResult", "UnknownDeviceExchangeError", "ProvideEnumCommand", "args", "apdu", "response", "result"]
4
+ "sourcesContent": ["import {\n type ApduResponse,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { EthAppCommandError } from \"./utils/ethAppErrors\";\nimport {\n ProvideEnumCommand,\n type ProvideEnumCommandArgs,\n} from \"./ProvideEnumCommand\";\n\ndescribe(\"ProvideEnumCommand\", () => {\n describe(\"getApdu\", () => {\n it(\"should return the raw APDU for the first chunk\", () => {\n // GIVEN\n const args: ProvideEnumCommandArgs = {\n data: Uint8Array.from([0x01, 0x02, 0x03]),\n isFirstChunk: true,\n };\n\n // WHEN\n const command = new ProvideEnumCommand(args);\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n Uint8Array.from([0xe0, 0x24, 0x01, 0x00, 0x03, 0x01, 0x02, 0x03]),\n );\n });\n\n it(\"should return the raw APDU for the subsequent chunk\", () => {\n // GIVEN\n const args: ProvideEnumCommandArgs = {\n data: Uint8Array.from([0x04, 0x05, 0x06]),\n isFirstChunk: false,\n };\n\n // WHEN\n const command = new ProvideEnumCommand(args);\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n Uint8Array.from([0xe0, 0x24, 0x00, 0x00, 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 ProvideEnumCommand({\n data: 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 an error\");\n } else {\n expect(result.error).toBeDefined();\n expect(result.error).toBeInstanceOf(EthAppCommandError);\n }\n });\n\n it(\"should return a success result if the response status code is valid\", () => {\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 ProvideEnumCommand({\n data: new Uint8Array(0),\n isFirstChunk: true,\n });\n const result = command.parseResponse(response);\n\n // THEN\n expect(isSuccessCommandResult(result)).toBe(true);\n });\n });\n});\n"],
5
+ "mappings": "AAAA,OAEE,0BAAAA,MACK,kCAEP,OAAS,sBAAAC,MAA0B,uBACnC,OACE,sBAAAC,MAEK,uBAEP,SAAS,qBAAsB,IAAM,CACnC,SAAS,UAAW,IAAM,CACxB,GAAG,iDAAkD,IAAM,CAEzD,MAAMC,EAA+B,CACnC,KAAM,WAAW,KAAK,CAAC,EAAM,EAAM,CAAI,CAAC,EACxC,aAAc,EAChB,EAIMC,EADU,IAAIF,EAAmBC,CAAI,EACtB,QAAQ,EAG7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cACxB,WAAW,KAAK,CAAC,IAAM,GAAM,EAAM,EAAM,EAAM,EAAM,EAAM,CAAI,CAAC,CAClE,CACF,CAAC,EAED,GAAG,sDAAuD,IAAM,CAE9D,MAAMD,EAA+B,CACnC,KAAM,WAAW,KAAK,CAAC,EAAM,EAAM,CAAI,CAAC,EACxC,aAAc,EAChB,EAIMC,EADU,IAAIF,EAAmBC,CAAI,EACtB,QAAQ,EAG7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cACxB,WAAW,KAAK,CAAC,IAAM,GAAM,EAAM,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,EAAmB,CACrC,KAAM,IAAI,WAAW,CAAC,EACtB,aAAc,EAChB,CAAC,EACsB,cAAcG,CAAQ,EAG7C,GAAIL,EAAuBM,CAAM,EAC/B,MAAM,IAAI,MAAM,mBAAmB,EAEnC,OAAOA,EAAO,KAAK,EAAE,YAAY,EACjC,OAAOA,EAAO,KAAK,EAAE,eAAeL,CAAkB,CAE1D,CAAC,EAED,GAAG,sEAAuE,IAAM,CAE9E,MAAMI,EAAyB,CAC7B,KAAM,WAAW,KAAK,CAAC,CAAC,EACxB,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAOMC,EAJU,IAAIJ,EAAmB,CACrC,KAAM,IAAI,WAAW,CAAC,EACtB,aAAc,EAChB,CAAC,EACsB,cAAcG,CAAQ,EAG7C,OAAOL,EAAuBM,CAAM,CAAC,EAAE,KAAK,EAAI,CAClD,CAAC,CACH,CAAC,CACH,CAAC",
6
+ "names": ["isSuccessCommandResult", "EthAppCommandError", "ProvideEnumCommand", "args", "apdu", "response", "result"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{ApduBuilder as a,ApduParser as m,CommandResultFactory as e,CommandUtils as t,DeviceExchangeError as s,GlobalCommandErrorHandler as i,isCommandErrorCode as p}from"@ledgerhq/device-management-kit";const d={"6d00":{message:"ETH app is not up to date"}};class C extends s{constructor(r){super({...r,tag:"ProvideNFTInformationCommandError"})}}class E{constructor(r){this.args=r}getApdu(){const r={cla:224,ins:20,p1:0,p2:0};return new a(r).addHexaStringToData(this.args.payload).build()}parseResponse(r){if(t.isSuccessResponse(r))return e({data:void 0});const o=new m(r).encodeToHexaString(r.statusCode);return p(o,d)?e({error:new C({...d[o],errorCode:o})}):e({error:i.handle(r)})}}export{E as ProvideNFTInformationCommand};
1
+ import{ApduBuilder as o,CommandResultFactory as e}from"@ledgerhq/device-management-kit";import{CommandErrorHelper as d}from"@ledgerhq/signer-utils";import{Maybe as t}from"purify-ts";import{ETH_APP_ERRORS as a,EthAppCommandErrorFactory as p}from"./utils/ethAppErrors";class l{constructor(r){this.args=r}errorHelper=new d(a,p);getApdu(){const r={cla:224,ins:20,p1:0,p2:0};return new o(r).addHexaStringToData(this.args.payload).build()}parseResponse(r){return t.fromNullable(this.errorHelper.getError(r)).orDefault(e({data:void 0}))}}export{l as ProvideNFTInformationCommand};
2
2
  //# sourceMappingURL=ProvideNFTInformationCommand.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/ProvideNFTInformationCommand.ts"],
4
- "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#provide-nft-information\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n ApduParser,\n type ApduResponse,\n type Command,\n type CommandErrorArgs,\n type CommandErrors,\n type CommandResult,\n CommandResultFactory,\n CommandUtils,\n DeviceExchangeError,\n GlobalCommandErrorHandler,\n isCommandErrorCode,\n} from \"@ledgerhq/device-management-kit\";\n\nexport type ProvideNFTInformationCommandArgs = {\n /**\n * The stringified hexa representation of the NFT data.\n */\n payload: string;\n};\n\nexport type ProvideNFTInformationCommandErrorCodes = \"6d00\";\n\nconst PROVIDE_NFT_INFO_ERRORS: CommandErrors<ProvideNFTInformationCommandErrorCodes> =\n {\n \"6d00\": { message: \"ETH app is not up to date\" },\n };\n\nclass ProvideNFTInformationCommandError extends DeviceExchangeError<ProvideNFTInformationCommandErrorCodes> {\n constructor(args: CommandErrorArgs<ProvideNFTInformationCommandErrorCodes>) {\n super({ ...args, tag: \"ProvideNFTInformationCommandError\" });\n }\n}\n\nexport class ProvideNFTInformationCommand\n implements\n Command<\n void,\n ProvideNFTInformationCommandArgs,\n ProvideNFTInformationCommandErrorCodes\n >\n{\n constructor(private readonly args: ProvideNFTInformationCommandArgs) {}\n\n getApdu(): Apdu {\n const apduBuilderArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x14,\n p1: 0x00,\n p2: 0x00,\n };\n return new ApduBuilder(apduBuilderArgs)\n .addHexaStringToData(this.args.payload)\n .build();\n }\n\n parseResponse(\n response: ApduResponse,\n ): CommandResult<void, ProvideNFTInformationCommandErrorCodes> {\n if (CommandUtils.isSuccessResponse(response)) {\n return CommandResultFactory({ data: undefined });\n }\n const parser = new ApduParser(response);\n const errorCode = parser.encodeToHexaString(response.statusCode);\n\n if (isCommandErrorCode(errorCode, PROVIDE_NFT_INFO_ERRORS)) {\n return CommandResultFactory({\n error: new ProvideNFTInformationCommandError({\n ...PROVIDE_NFT_INFO_ERRORS[errorCode],\n errorCode,\n }),\n });\n }\n\n return CommandResultFactory({\n error: GlobalCommandErrorHandler.handle(response),\n });\n }\n}\n"],
5
- "mappings": "AACA,OAEE,eAAAA,EAEA,cAAAC,EAMA,wBAAAC,EACA,gBAAAC,EACA,uBAAAC,EACA,6BAAAC,EACA,sBAAAC,MACK,kCAWP,MAAMC,EACJ,CACE,OAAQ,CAAE,QAAS,2BAA4B,CACjD,EAEF,MAAMC,UAA0CJ,CAA4D,CAC1G,YAAYK,EAAgE,CAC1E,MAAM,CAAE,GAAGA,EAAM,IAAK,mCAAoC,CAAC,CAC7D,CACF,CAEO,MAAMC,CAOb,CACE,YAA6BD,EAAwC,CAAxC,UAAAA,CAAyC,CAEtE,SAAgB,CACd,MAAME,EAAmC,CACvC,IAAK,IACL,IAAK,GACL,GAAI,EACJ,GAAI,CACN,EACA,OAAO,IAAIX,EAAYW,CAAe,EACnC,oBAAoB,KAAK,KAAK,OAAO,EACrC,MAAM,CACX,CAEA,cACEC,EAC6D,CAC7D,GAAIT,EAAa,kBAAkBS,CAAQ,EACzC,OAAOV,EAAqB,CAAE,KAAM,MAAU,CAAC,EAGjD,MAAMW,EADS,IAAIZ,EAAWW,CAAQ,EACb,mBAAmBA,EAAS,UAAU,EAE/D,OAAIN,EAAmBO,EAAWN,CAAuB,EAChDL,EAAqB,CAC1B,MAAO,IAAIM,EAAkC,CAC3C,GAAGD,EAAwBM,CAAS,EACpC,UAAAA,CACF,CAAC,CACH,CAAC,EAGIX,EAAqB,CAC1B,MAAOG,EAA0B,OAAOO,CAAQ,CAClD,CAAC,CACH,CACF",
6
- "names": ["ApduBuilder", "ApduParser", "CommandResultFactory", "CommandUtils", "DeviceExchangeError", "GlobalCommandErrorHandler", "isCommandErrorCode", "PROVIDE_NFT_INFO_ERRORS", "ProvideNFTInformationCommandError", "args", "ProvideNFTInformationCommand", "apduBuilderArgs", "response", "errorCode"]
4
+ "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#provide-nft-information\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n} from \"@ledgerhq/device-management-kit\";\nimport { CommandErrorHelper } from \"@ledgerhq/signer-utils\";\nimport { Maybe } from \"purify-ts\";\n\nimport {\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n type EthErrorCodes,\n} from \"./utils/ethAppErrors\";\n\nexport type ProvideNFTInformationCommandArgs = {\n /**\n * The stringified hexa representation of the NFT data.\n */\n payload: string;\n};\n\nexport class ProvideNFTInformationCommand\n implements Command<void, ProvideNFTInformationCommandArgs, EthErrorCodes>\n{\n private readonly errorHelper = new CommandErrorHelper<void, EthErrorCodes>(\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n );\n\n constructor(private readonly args: ProvideNFTInformationCommandArgs) {}\n\n getApdu(): Apdu {\n const apduBuilderArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x14,\n p1: 0x00,\n p2: 0x00,\n };\n return new ApduBuilder(apduBuilderArgs)\n .addHexaStringToData(this.args.payload)\n .build();\n }\n\n parseResponse(response: ApduResponse): CommandResult<void, EthErrorCodes> {\n return Maybe.fromNullable(this.errorHelper.getError(response)).orDefault(\n CommandResultFactory({ data: undefined }),\n );\n }\n}\n"],
5
+ "mappings": "AACA,OAEE,eAAAA,EAKA,wBAAAC,MACK,kCACP,OAAS,sBAAAC,MAA0B,yBACnC,OAAS,SAAAC,MAAa,YAEtB,OACE,kBAAAC,EACA,6BAAAC,MAEK,uBASA,MAAMC,CAEb,CAME,YAA6BC,EAAwC,CAAxC,UAAAA,CAAyC,CALrD,YAAc,IAAIL,EACjCE,EACAC,CACF,EAIA,SAAgB,CACd,MAAMG,EAAmC,CACvC,IAAK,IACL,IAAK,GACL,GAAI,EACJ,GAAI,CACN,EACA,OAAO,IAAIR,EAAYQ,CAAe,EACnC,oBAAoB,KAAK,KAAK,OAAO,EACrC,MAAM,CACX,CAEA,cAAcC,EAA4D,CACxE,OAAON,EAAM,aAAa,KAAK,YAAY,SAASM,CAAQ,CAAC,EAAE,UAC7DR,EAAqB,CAAE,KAAM,MAAU,CAAC,CAC1C,CACF,CACF",
6
+ "names": ["ApduBuilder", "CommandResultFactory", "CommandErrorHelper", "Maybe", "ETH_APP_ERRORS", "EthAppCommandErrorFactory", "ProvideNFTInformationCommand", "args", "apduBuilderArgs", "response"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{ApduBuilder as t,ApduParser as a,CommandResultFactory as o,CommandUtils as d,GlobalCommandErrorHandler as m}from"@ledgerhq/device-management-kit";class i{constructor(e){this.args=e}getApdu(){const e={cla:224,ins:10,p1:0,p2:0};return new t(e).addHexaStringToData(this.args.payload).build()}parseResponse(e){const n=new a(e);if(!d.isSuccessResponse(e))return o({error:m.handle(e)});const r=n.extract8BitUInt()??0;return o({data:{tokenIndex:r}})}}export{i as ProvideTokenInformationCommand};
1
+ import{ApduBuilder as e,ApduParser as n,CommandResultFactory as t}from"@ledgerhq/device-management-kit";import{CommandErrorHelper as a}from"@ledgerhq/signer-utils";import{Maybe as d}from"purify-ts";import{ETH_APP_ERRORS as m,EthAppCommandErrorFactory as p}from"./utils/ethAppErrors";class y{constructor(r){this.args=r}errorHelper=new a(m,p);getApdu(){const r={cla:224,ins:10,p1:0,p2:0};return new e(r).addHexaStringToData(this.args.payload).build()}parseResponse(r){return d.fromNullable(this.errorHelper.getError(r)).orDefaultLazy(()=>{const o=new n(r).extract8BitUInt()??0;return t({data:{tokenIndex:o}})})}}export{y as ProvideTokenInformationCommand};
2
2
  //# sourceMappingURL=ProvideTokenInformationCommand.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/ProvideTokenInformationCommand.ts"],
4
- "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#provide-erc-20-token-information\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} from \"@ledgerhq/device-management-kit\";\n\nexport type ProvideTokenInformationCommandArgs = {\n payload: string;\n};\n\nexport type ProvideTokenInformationCommandResponse = {\n tokenIndex: number;\n};\n\nexport class ProvideTokenInformationCommand\n implements\n Command<\n ProvideTokenInformationCommandResponse,\n ProvideTokenInformationCommandArgs\n >\n{\n constructor(private readonly args: ProvideTokenInformationCommandArgs) {}\n\n getApdu(): Apdu {\n const getEthAddressArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x0a,\n p1: 0x00,\n p2: 0x00,\n };\n return new ApduBuilder(getEthAddressArgs)\n .addHexaStringToData(this.args.payload)\n .build();\n }\n\n parseResponse(\n response: ApduResponse,\n ): CommandResult<ProvideTokenInformationCommandResponse> {\n const parser = new ApduParser(response);\n\n if (!CommandUtils.isSuccessResponse(response)) {\n return CommandResultFactory({\n error: GlobalCommandErrorHandler.handle(response),\n });\n }\n const tokenIndex = parser.extract8BitUInt() ?? 0;\n return CommandResultFactory({ data: { tokenIndex } });\n }\n}\n"],
5
- "mappings": "AACA,OAEE,eAAAA,EAEA,cAAAC,EAIA,wBAAAC,EACA,gBAAAC,EACA,6BAAAC,MACK,kCAUA,MAAMC,CAMb,CACE,YAA6BC,EAA0C,CAA1C,UAAAA,CAA2C,CAExE,SAAgB,CACd,MAAMC,EAAqC,CACzC,IAAK,IACL,IAAK,GACL,GAAI,EACJ,GAAI,CACN,EACA,OAAO,IAAIP,EAAYO,CAAiB,EACrC,oBAAoB,KAAK,KAAK,OAAO,EACrC,MAAM,CACX,CAEA,cACEC,EACuD,CACvD,MAAMC,EAAS,IAAIR,EAAWO,CAAQ,EAEtC,GAAI,CAACL,EAAa,kBAAkBK,CAAQ,EAC1C,OAAON,EAAqB,CAC1B,MAAOE,EAA0B,OAAOI,CAAQ,CAClD,CAAC,EAEH,MAAME,EAAaD,EAAO,gBAAgB,GAAK,EAC/C,OAAOP,EAAqB,CAAE,KAAM,CAAE,WAAAQ,CAAW,CAAE,CAAC,CACtD,CACF",
6
- "names": ["ApduBuilder", "ApduParser", "CommandResultFactory", "CommandUtils", "GlobalCommandErrorHandler", "ProvideTokenInformationCommand", "args", "getEthAddressArgs", "response", "parser", "tokenIndex"]
4
+ "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#provide-erc-20-token-information\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n ApduParser,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n} from \"@ledgerhq/device-management-kit\";\nimport { CommandErrorHelper } from \"@ledgerhq/signer-utils\";\nimport { Maybe } from \"purify-ts\";\n\nimport {\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n type EthErrorCodes,\n} from \"./utils/ethAppErrors\";\n\nexport type ProvideTokenInformationCommandArgs = {\n payload: string;\n};\n\nexport type ProvideTokenInformationCommandResponse = {\n tokenIndex: number;\n};\n\nexport class ProvideTokenInformationCommand\n implements\n Command<\n ProvideTokenInformationCommandResponse,\n ProvideTokenInformationCommandArgs,\n EthErrorCodes\n >\n{\n private readonly errorHelper = new CommandErrorHelper<\n ProvideTokenInformationCommandResponse,\n EthErrorCodes\n >(ETH_APP_ERRORS, EthAppCommandErrorFactory);\n\n constructor(private readonly args: ProvideTokenInformationCommandArgs) {}\n\n getApdu(): Apdu {\n const getEthAddressArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x0a,\n p1: 0x00,\n p2: 0x00,\n };\n return new ApduBuilder(getEthAddressArgs)\n .addHexaStringToData(this.args.payload)\n .build();\n }\n\n parseResponse(\n response: ApduResponse,\n ): CommandResult<ProvideTokenInformationCommandResponse, EthErrorCodes> {\n return Maybe.fromNullable(\n this.errorHelper.getError(response),\n ).orDefaultLazy(() => {\n const parser = new ApduParser(response);\n const tokenIndex = parser.extract8BitUInt() ?? 0;\n return CommandResultFactory({ data: { tokenIndex } });\n });\n }\n}\n"],
5
+ "mappings": "AACA,OAEE,eAAAA,EAEA,cAAAC,EAIA,wBAAAC,MACK,kCACP,OAAS,sBAAAC,MAA0B,yBACnC,OAAS,SAAAC,MAAa,YAEtB,OACE,kBAAAC,EACA,6BAAAC,MAEK,uBAUA,MAAMC,CAOb,CAME,YAA6BC,EAA0C,CAA1C,UAAAA,CAA2C,CALvD,YAAc,IAAIL,EAGjCE,EAAgBC,CAAyB,EAI3C,SAAgB,CACd,MAAMG,EAAqC,CACzC,IAAK,IACL,IAAK,GACL,GAAI,EACJ,GAAI,CACN,EACA,OAAO,IAAIT,EAAYS,CAAiB,EACrC,oBAAoB,KAAK,KAAK,OAAO,EACrC,MAAM,CACX,CAEA,cACEC,EACsE,CACtE,OAAON,EAAM,aACX,KAAK,YAAY,SAASM,CAAQ,CACpC,EAAE,cAAc,IAAM,CAEpB,MAAMC,EADS,IAAIV,EAAWS,CAAQ,EACZ,gBAAgB,GAAK,EAC/C,OAAOR,EAAqB,CAAE,KAAM,CAAE,WAAAS,CAAW,CAAE,CAAC,CACtD,CAAC,CACH,CACF",
6
+ "names": ["ApduBuilder", "ApduParser", "CommandResultFactory", "CommandErrorHelper", "Maybe", "ETH_APP_ERRORS", "EthAppCommandErrorFactory", "ProvideTokenInformationCommand", "args", "getEthAddressArgs", "response", "tokenIndex"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{ApduBuilder as n,CommandResultFactory as r,CommandUtils as o,GlobalCommandErrorHandler as d}from"@ledgerhq/device-management-kit";class s{constructor(e){this.args=e}getApdu(){const e={cla:224,ins:40,p1:this.args.isFirstChunk?1:0,p2:0};return new n(e).addBufferToData(this.args.data).build()}parseResponse(e){return o.isSuccessResponse(e)?r({data:void 0}):r({error:d.handle(e)})}}export{s as ProvideTransactionFieldDescriptionCommand};
1
+ import{ApduBuilder as e,CommandResultFactory as o}from"@ledgerhq/device-management-kit";import{CommandErrorHelper as t}from"@ledgerhq/signer-utils";import{Maybe as d}from"purify-ts";import{ETH_APP_ERRORS as a,EthAppCommandErrorFactory as i}from"./utils/ethAppErrors";class u{constructor(r){this.args=r}errorHelper=new t(a,i);getApdu(){const r={cla:224,ins:40,p1:this.args.isFirstChunk?1:0,p2:0};return new e(r).addBufferToData(this.args.data).build()}parseResponse(r){return d.fromNullable(this.errorHelper.getError(r)).orDefault(o({data:void 0}))}}export{u as ProvideTransactionFieldDescriptionCommand};
2
2
  //# sourceMappingURL=ProvideTransactionFieldDescriptionCommand.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.ts"],
4
- "sourcesContent": ["//https://github.com/LedgerHQ/generic_parser/blob/master/specs.md#tx-field-description\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 ProvideTransactionFieldDescriptionCommandArgs = {\n /**\n * The field description data to provide in 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 class ProvideTransactionFieldDescriptionCommand\n implements Command<void, ProvideTransactionFieldDescriptionCommandArgs>\n{\n constructor(\n private readonly args: ProvideTransactionFieldDescriptionCommandArgs,\n ) {}\n\n getApdu(): Apdu {\n const ProvideTransactionFieldDescriptionArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x28,\n p1: this.args.isFirstChunk ? 0x01 : 0x00,\n p2: 0x00,\n };\n\n return new ApduBuilder(ProvideTransactionFieldDescriptionArgs)\n .addBufferToData(this.args.data)\n .build();\n }\n\n parseResponse(response: ApduResponse): CommandResult<void> {\n if (CommandUtils.isSuccessResponse(response)) {\n return CommandResultFactory({ data: undefined });\n }\n\n return CommandResultFactory({\n error: GlobalCommandErrorHandler.handle(response),\n });\n }\n}\n"],
5
- "mappings": "AACA,OAEE,eAAAA,EAKA,wBAAAC,EACA,gBAAAC,EACA,6BAAAC,MACK,kCAaA,MAAMC,CAEb,CACE,YACmBC,EACjB,CADiB,UAAAA,CAChB,CAEH,SAAgB,CACd,MAAMC,EAA0D,CAC9D,IAAK,IACL,IAAK,GACL,GAAI,KAAK,KAAK,aAAe,EAAO,EACpC,GAAI,CACN,EAEA,OAAO,IAAIN,EAAYM,CAAsC,EAC1D,gBAAgB,KAAK,KAAK,IAAI,EAC9B,MAAM,CACX,CAEA,cAAcC,EAA6C,CACzD,OAAIL,EAAa,kBAAkBK,CAAQ,EAClCN,EAAqB,CAAE,KAAM,MAAU,CAAC,EAG1CA,EAAqB,CAC1B,MAAOE,EAA0B,OAAOI,CAAQ,CAClD,CAAC,CACH,CACF",
6
- "names": ["ApduBuilder", "CommandResultFactory", "CommandUtils", "GlobalCommandErrorHandler", "ProvideTransactionFieldDescriptionCommand", "args", "ProvideTransactionFieldDescriptionArgs", "response"]
4
+ "sourcesContent": ["//https://github.com/LedgerHQ/generic_parser/blob/master/specs.md#tx-field-description\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n} from \"@ledgerhq/device-management-kit\";\nimport { CommandErrorHelper } from \"@ledgerhq/signer-utils\";\nimport { Maybe } from \"purify-ts\";\n\nimport {\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n type EthErrorCodes,\n} from \"./utils/ethAppErrors\";\n\nexport type ProvideTransactionFieldDescriptionCommandArgs = {\n /**\n * The field description data to provide in 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 class ProvideTransactionFieldDescriptionCommand\n implements\n Command<void, ProvideTransactionFieldDescriptionCommandArgs, EthErrorCodes>\n{\n private readonly errorHelper = new CommandErrorHelper<void, EthErrorCodes>(\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n );\n\n constructor(\n private readonly args: ProvideTransactionFieldDescriptionCommandArgs,\n ) {}\n\n getApdu(): Apdu {\n const ProvideTransactionFieldDescriptionArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x28,\n p1: this.args.isFirstChunk ? 0x01 : 0x00,\n p2: 0x00,\n };\n\n return new ApduBuilder(ProvideTransactionFieldDescriptionArgs)\n .addBufferToData(this.args.data)\n .build();\n }\n\n parseResponse(response: ApduResponse): CommandResult<void, EthErrorCodes> {\n return Maybe.fromNullable(this.errorHelper.getError(response)).orDefault(\n CommandResultFactory({ data: undefined }),\n );\n }\n}\n"],
5
+ "mappings": "AACA,OAEE,eAAAA,EAKA,wBAAAC,MACK,kCACP,OAAS,sBAAAC,MAA0B,yBACnC,OAAS,SAAAC,MAAa,YAEtB,OACE,kBAAAC,EACA,6BAAAC,MAEK,uBAaA,MAAMC,CAGb,CAME,YACmBC,EACjB,CADiB,UAAAA,CAChB,CAPc,YAAc,IAAIL,EACjCE,EACAC,CACF,EAMA,SAAgB,CACd,MAAMG,EAA0D,CAC9D,IAAK,IACL,IAAK,GACL,GAAI,KAAK,KAAK,aAAe,EAAO,EACpC,GAAI,CACN,EAEA,OAAO,IAAIR,EAAYQ,CAAsC,EAC1D,gBAAgB,KAAK,KAAK,IAAI,EAC9B,MAAM,CACX,CAEA,cAAcC,EAA4D,CACxE,OAAON,EAAM,aAAa,KAAK,YAAY,SAASM,CAAQ,CAAC,EAAE,UAC7DR,EAAqB,CAAE,KAAM,MAAU,CAAC,CAC1C,CACF,CACF",
6
+ "names": ["ApduBuilder", "CommandResultFactory", "CommandErrorHelper", "Maybe", "ETH_APP_ERRORS", "EthAppCommandErrorFactory", "ProvideTransactionFieldDescriptionCommand", "args", "ProvideTransactionFieldDescriptionArgs", "response"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{isSuccessCommandResult as n,UnknownDeviceExchangeError as o}from"@ledgerhq/device-management-kit";import{ProvideTransactionFieldDescriptionCommand as t}from"./ProvideTransactionFieldDescriptionCommand";describe("ProvideTransactionFieldDescriptionCommand",()=>{describe("getApdu",()=>{it("should return the raw APDU for the first chunk",()=>{const r={data:Uint8Array.from([1,2,3]),isFirstChunk:!0},e=new t(r).getApdu();expect(e.getRawApdu()).toStrictEqual(Uint8Array.from([224,40,1,0,3,1,2,3]))}),it("should return the raw APDU for the subsequent chunk",()=>{const r={data:Uint8Array.from([4,5,6]),isFirstChunk:!1},e=new t(r).getApdu();expect(e.getRawApdu()).toStrictEqual(Uint8Array.from([224,40,0,0,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({data:new Uint8Array(0),isFirstChunk:!0}).parseResponse(r);if(n(e))throw new Error("Expected an error");expect(e.error).toBeDefined(),expect(e.error).toBeInstanceOf(o)}),it("should return a success result if the response status code is valid",()=>{const r={data:Uint8Array.from([]),statusCode:Uint8Array.from([144,0])},e=new t({data:new Uint8Array(0),isFirstChunk:!0}).parseResponse(r);if(n(e))expect(e.data).toBeUndefined();else throw new Error("Expected a success result")})})});
1
+ import{isSuccessCommandResult as o}from"@ledgerhq/device-management-kit";import{EthAppCommandError as n}from"./utils/ethAppErrors";import{ProvideTransactionFieldDescriptionCommand as t}from"./ProvideTransactionFieldDescriptionCommand";describe("ProvideTransactionFieldDescriptionCommand",()=>{describe("getApdu",()=>{it("should return the raw APDU for the first chunk",()=>{const r={data:Uint8Array.from([1,2,3]),isFirstChunk:!0},e=new t(r).getApdu();expect(e.getRawApdu()).toStrictEqual(Uint8Array.from([224,40,1,0,3,1,2,3]))}),it("should return the raw APDU for the subsequent chunk",()=>{const r={data:Uint8Array.from([4,5,6]),isFirstChunk:!1},e=new t(r).getApdu();expect(e.getRawApdu()).toStrictEqual(Uint8Array.from([224,40,0,0,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({data:new Uint8Array(0),isFirstChunk:!0}).parseResponse(r);if(o(e))throw new Error("Expected an error");expect(e.error).toBeDefined(),expect(e.error).toBeInstanceOf(n)}),it("should return a success result if the response status code is valid",()=>{const r={data:Uint8Array.from([]),statusCode:Uint8Array.from([144,0])},e=new t({data:new Uint8Array(0),isFirstChunk:!0}).parseResponse(r);if(o(e))expect(e.data).toBeUndefined();else throw new Error("Expected a success result")})})});
2
2
  //# sourceMappingURL=ProvideTransactionFieldDescriptionCommand.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.ts"],
4
- "sourcesContent": ["import {\n type ApduResponse,\n isSuccessCommandResult,\n UnknownDeviceExchangeError,\n} from \"@ledgerhq/device-management-kit\";\n\nimport {\n ProvideTransactionFieldDescriptionCommand,\n type ProvideTransactionFieldDescriptionCommandArgs,\n} from \"./ProvideTransactionFieldDescriptionCommand\";\n\ndescribe(\"ProvideTransactionFieldDescriptionCommand\", () => {\n describe(\"getApdu\", () => {\n it(\"should return the raw APDU for the first chunk\", () => {\n // GIVEN\n const args: ProvideTransactionFieldDescriptionCommandArgs = {\n data: Uint8Array.from([0x01, 0x02, 0x03]),\n isFirstChunk: true,\n };\n\n // WHEN\n const command = new ProvideTransactionFieldDescriptionCommand(args);\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n Uint8Array.from([0xe0, 0x28, 0x01, 0x00, 0x03, 0x01, 0x02, 0x03]),\n );\n });\n\n it(\"should return the raw APDU for the subsequent chunk\", () => {\n // GIVEN\n const args: ProvideTransactionFieldDescriptionCommandArgs = {\n data: Uint8Array.from([0x04, 0x05, 0x06]),\n isFirstChunk: false,\n };\n\n // WHEN\n const command = new ProvideTransactionFieldDescriptionCommand(args);\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n Uint8Array.from([0xe0, 0x28, 0x00, 0x00, 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 ProvideTransactionFieldDescriptionCommand({\n data: 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 an error\");\n } else {\n expect(result.error).toBeDefined();\n expect(result.error).toBeInstanceOf(UnknownDeviceExchangeError);\n }\n });\n\n it(\"should return a success result if the response status code is valid\", () => {\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 ProvideTransactionFieldDescriptionCommand({\n data: 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 a success result\");\n } else {\n expect(result.data).toBeUndefined();\n }\n });\n });\n});\n"],
5
- "mappings": "AAAA,OAEE,0BAAAA,EACA,8BAAAC,MACK,kCAEP,OACE,6CAAAC,MAEK,8CAEP,SAAS,4CAA6C,IAAM,CAC1D,SAAS,UAAW,IAAM,CACxB,GAAG,iDAAkD,IAAM,CAEzD,MAAMC,EAAsD,CAC1D,KAAM,WAAW,KAAK,CAAC,EAAM,EAAM,CAAI,CAAC,EACxC,aAAc,EAChB,EAIMC,EADU,IAAIF,EAA0CC,CAAI,EAC7C,QAAQ,EAG7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cACxB,WAAW,KAAK,CAAC,IAAM,GAAM,EAAM,EAAM,EAAM,EAAM,EAAM,CAAI,CAAC,CAClE,CACF,CAAC,EAED,GAAG,sDAAuD,IAAM,CAE9D,MAAMD,EAAsD,CAC1D,KAAM,WAAW,KAAK,CAAC,EAAM,EAAM,CAAI,CAAC,EACxC,aAAc,EAChB,EAIMC,EADU,IAAIF,EAA0CC,CAAI,EAC7C,QAAQ,EAG7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cACxB,WAAW,KAAK,CAAC,IAAM,GAAM,EAAM,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,EAA0C,CAC5D,KAAM,IAAI,WAAW,CAAC,EACtB,aAAc,EAChB,CAAC,EACsB,cAAcG,CAAQ,EAG7C,GAAIL,EAAuBM,CAAM,EAC/B,MAAM,IAAI,MAAM,mBAAmB,EAEnC,OAAOA,EAAO,KAAK,EAAE,YAAY,EACjC,OAAOA,EAAO,KAAK,EAAE,eAAeL,CAA0B,CAElE,CAAC,EAED,GAAG,sEAAuE,IAAM,CAE9E,MAAMI,EAAyB,CAC7B,KAAM,WAAW,KAAK,CAAC,CAAC,EACxB,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAOMC,EAJU,IAAIJ,EAA0C,CAC5D,KAAM,IAAI,WAAW,CAAC,EACtB,aAAc,EAChB,CAAC,EACsB,cAAcG,CAAQ,EAG7C,GAAKL,EAAuBM,CAAM,EAGhC,OAAOA,EAAO,IAAI,EAAE,cAAc,MAFlC,OAAM,IAAI,MAAM,2BAA2B,CAI/C,CAAC,CACH,CAAC,CACH,CAAC",
6
- "names": ["isSuccessCommandResult", "UnknownDeviceExchangeError", "ProvideTransactionFieldDescriptionCommand", "args", "apdu", "response", "result"]
4
+ "sourcesContent": ["import {\n type ApduResponse,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { EthAppCommandError } from \"./utils/ethAppErrors\";\nimport {\n ProvideTransactionFieldDescriptionCommand,\n type ProvideTransactionFieldDescriptionCommandArgs,\n} from \"./ProvideTransactionFieldDescriptionCommand\";\n\ndescribe(\"ProvideTransactionFieldDescriptionCommand\", () => {\n describe(\"getApdu\", () => {\n it(\"should return the raw APDU for the first chunk\", () => {\n // GIVEN\n const args: ProvideTransactionFieldDescriptionCommandArgs = {\n data: Uint8Array.from([0x01, 0x02, 0x03]),\n isFirstChunk: true,\n };\n\n // WHEN\n const command = new ProvideTransactionFieldDescriptionCommand(args);\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n Uint8Array.from([0xe0, 0x28, 0x01, 0x00, 0x03, 0x01, 0x02, 0x03]),\n );\n });\n\n it(\"should return the raw APDU for the subsequent chunk\", () => {\n // GIVEN\n const args: ProvideTransactionFieldDescriptionCommandArgs = {\n data: Uint8Array.from([0x04, 0x05, 0x06]),\n isFirstChunk: false,\n };\n\n // WHEN\n const command = new ProvideTransactionFieldDescriptionCommand(args);\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n Uint8Array.from([0xe0, 0x28, 0x00, 0x00, 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 ProvideTransactionFieldDescriptionCommand({\n data: 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 an error\");\n } else {\n expect(result.error).toBeDefined();\n expect(result.error).toBeInstanceOf(EthAppCommandError);\n }\n });\n\n it(\"should return a success result if the response status code is valid\", () => {\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 ProvideTransactionFieldDescriptionCommand({\n data: 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 a success result\");\n } else {\n expect(result.data).toBeUndefined();\n }\n });\n });\n});\n"],
5
+ "mappings": "AAAA,OAEE,0BAAAA,MACK,kCAEP,OAAS,sBAAAC,MAA0B,uBACnC,OACE,6CAAAC,MAEK,8CAEP,SAAS,4CAA6C,IAAM,CAC1D,SAAS,UAAW,IAAM,CACxB,GAAG,iDAAkD,IAAM,CAEzD,MAAMC,EAAsD,CAC1D,KAAM,WAAW,KAAK,CAAC,EAAM,EAAM,CAAI,CAAC,EACxC,aAAc,EAChB,EAIMC,EADU,IAAIF,EAA0CC,CAAI,EAC7C,QAAQ,EAG7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cACxB,WAAW,KAAK,CAAC,IAAM,GAAM,EAAM,EAAM,EAAM,EAAM,EAAM,CAAI,CAAC,CAClE,CACF,CAAC,EAED,GAAG,sDAAuD,IAAM,CAE9D,MAAMD,EAAsD,CAC1D,KAAM,WAAW,KAAK,CAAC,EAAM,EAAM,CAAI,CAAC,EACxC,aAAc,EAChB,EAIMC,EADU,IAAIF,EAA0CC,CAAI,EAC7C,QAAQ,EAG7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cACxB,WAAW,KAAK,CAAC,IAAM,GAAM,EAAM,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,EAA0C,CAC5D,KAAM,IAAI,WAAW,CAAC,EACtB,aAAc,EAChB,CAAC,EACsB,cAAcG,CAAQ,EAG7C,GAAIL,EAAuBM,CAAM,EAC/B,MAAM,IAAI,MAAM,mBAAmB,EAEnC,OAAOA,EAAO,KAAK,EAAE,YAAY,EACjC,OAAOA,EAAO,KAAK,EAAE,eAAeL,CAAkB,CAE1D,CAAC,EAED,GAAG,sEAAuE,IAAM,CAE9E,MAAMI,EAAyB,CAC7B,KAAM,WAAW,KAAK,CAAC,CAAC,EACxB,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAOMC,EAJU,IAAIJ,EAA0C,CAC5D,KAAM,IAAI,WAAW,CAAC,EACtB,aAAc,EAChB,CAAC,EACsB,cAAcG,CAAQ,EAG7C,GAAKL,EAAuBM,CAAM,EAGhC,OAAOA,EAAO,IAAI,EAAE,cAAc,MAFlC,OAAM,IAAI,MAAM,2BAA2B,CAI/C,CAAC,CACH,CAAC,CACH,CAAC",
6
+ "names": ["isSuccessCommandResult", "EthAppCommandError", "ProvideTransactionFieldDescriptionCommand", "args", "apdu", "response", "result"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{ApduBuilder as o,CommandResultFactory as n,CommandUtils as a,GlobalCommandErrorHandler as e}from"@ledgerhq/device-management-kit";class s{constructor(r){this.args=r}getApdu(){const r={cla:224,ins:38,p1:this.args.isFirstChunk?1:0,p2:0};return new o(r).addBufferToData(this.args.data).build()}parseResponse(r){return a.isSuccessResponse(r)?n({data:void 0}):n({error:e.handle(r)})}}export{s as ProvideTransactionInformationCommand};
1
+ import{ApduBuilder as o,CommandResultFactory as e}from"@ledgerhq/device-management-kit";import{CommandErrorHelper as a}from"@ledgerhq/signer-utils";import{Maybe as t}from"purify-ts";import{ETH_APP_ERRORS as n,EthAppCommandErrorFactory as d}from"./utils/ethAppErrors";class l{constructor(r){this.args=r}errorHelper=new a(n,d);getApdu(){const r={cla:224,ins:38,p1:this.args.isFirstChunk?1:0,p2:0};return new o(r).addBufferToData(this.args.data).build()}parseResponse(r){return t.fromNullable(this.errorHelper.getError(r)).orDefault(e({data:void 0}))}}export{l as ProvideTransactionInformationCommand};
2
2
  //# sourceMappingURL=ProvideTransactionInformationCommand.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/ProvideTransactionInformationCommand.ts"],
4
- "sourcesContent": ["// https://github.com/LedgerHQ/generic_parser/blob/master/specs.md#transaction-info\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 ProvideTransactionInformationCommandArgs = {\n /**\n * The transaction information to provide in 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 class ProvideTransactionInformationCommand\n implements Command<void, ProvideTransactionInformationCommandArgs>\n{\n constructor(\n private readonly args: ProvideTransactionInformationCommandArgs,\n ) {}\n\n getApdu(): Apdu {\n const ProvideTransactionInformationArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x26,\n p1: this.args.isFirstChunk ? 0x01 : 0x00,\n p2: 0x00,\n };\n\n return new ApduBuilder(ProvideTransactionInformationArgs)\n .addBufferToData(this.args.data)\n .build();\n }\n\n parseResponse(response: ApduResponse): CommandResult<void> {\n if (CommandUtils.isSuccessResponse(response)) {\n return CommandResultFactory({ data: undefined });\n }\n\n return CommandResultFactory({\n error: GlobalCommandErrorHandler.handle(response),\n });\n }\n}\n"],
5
- "mappings": "AACA,OAEE,eAAAA,EAKA,wBAAAC,EACA,gBAAAC,EACA,6BAAAC,MACK,kCAaA,MAAMC,CAEb,CACE,YACmBC,EACjB,CADiB,UAAAA,CAChB,CAEH,SAAgB,CACd,MAAMC,EAAqD,CACzD,IAAK,IACL,IAAK,GACL,GAAI,KAAK,KAAK,aAAe,EAAO,EACpC,GAAI,CACN,EAEA,OAAO,IAAIN,EAAYM,CAAiC,EACrD,gBAAgB,KAAK,KAAK,IAAI,EAC9B,MAAM,CACX,CAEA,cAAcC,EAA6C,CACzD,OAAIL,EAAa,kBAAkBK,CAAQ,EAClCN,EAAqB,CAAE,KAAM,MAAU,CAAC,EAG1CA,EAAqB,CAC1B,MAAOE,EAA0B,OAAOI,CAAQ,CAClD,CAAC,CACH,CACF",
6
- "names": ["ApduBuilder", "CommandResultFactory", "CommandUtils", "GlobalCommandErrorHandler", "ProvideTransactionInformationCommand", "args", "ProvideTransactionInformationArgs", "response"]
4
+ "sourcesContent": ["// https://github.com/LedgerHQ/generic_parser/blob/master/specs.md#transaction-info\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n} from \"@ledgerhq/device-management-kit\";\nimport { CommandErrorHelper } from \"@ledgerhq/signer-utils\";\nimport { Maybe } from \"purify-ts\";\n\nimport {\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n type EthErrorCodes,\n} from \"./utils/ethAppErrors\";\n\nexport type ProvideTransactionInformationCommandArgs = {\n /**\n * The transaction information to provide in 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 class ProvideTransactionInformationCommand\n implements\n Command<void, ProvideTransactionInformationCommandArgs, EthErrorCodes>\n{\n private readonly errorHelper = new CommandErrorHelper<void, EthErrorCodes>(\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n );\n\n constructor(\n private readonly args: ProvideTransactionInformationCommandArgs,\n ) {}\n\n getApdu(): Apdu {\n const ProvideTransactionInformationArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x26,\n p1: this.args.isFirstChunk ? 0x01 : 0x00,\n p2: 0x00,\n };\n\n return new ApduBuilder(ProvideTransactionInformationArgs)\n .addBufferToData(this.args.data)\n .build();\n }\n\n parseResponse(response: ApduResponse): CommandResult<void, EthErrorCodes> {\n return Maybe.fromNullable(this.errorHelper.getError(response)).orDefault(\n CommandResultFactory({ data: undefined }),\n );\n }\n}\n"],
5
+ "mappings": "AACA,OAEE,eAAAA,EAKA,wBAAAC,MACK,kCACP,OAAS,sBAAAC,MAA0B,yBACnC,OAAS,SAAAC,MAAa,YAEtB,OACE,kBAAAC,EACA,6BAAAC,MAEK,uBAaA,MAAMC,CAGb,CAME,YACmBC,EACjB,CADiB,UAAAA,CAChB,CAPc,YAAc,IAAIL,EACjCE,EACAC,CACF,EAMA,SAAgB,CACd,MAAMG,EAAqD,CACzD,IAAK,IACL,IAAK,GACL,GAAI,KAAK,KAAK,aAAe,EAAO,EACpC,GAAI,CACN,EAEA,OAAO,IAAIR,EAAYQ,CAAiC,EACrD,gBAAgB,KAAK,KAAK,IAAI,EAC9B,MAAM,CACX,CAEA,cAAcC,EAA4D,CACxE,OAAON,EAAM,aAAa,KAAK,YAAY,SAASM,CAAQ,CAAC,EAAE,UAC7DR,EAAqB,CAAE,KAAM,MAAU,CAAC,CAC1C,CACF,CACF",
6
+ "names": ["ApduBuilder", "CommandResultFactory", "CommandErrorHelper", "Maybe", "ETH_APP_ERRORS", "EthAppCommandErrorFactory", "ProvideTransactionInformationCommand", "args", "ProvideTransactionInformationArgs", "response"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{isSuccessCommandResult as o,UnknownDeviceExchangeError as s}from"@ledgerhq/device-management-kit";import{ProvideTransactionInformationCommand as t}from"./ProvideTransactionInformationCommand";describe("ProvideTransactionInformationCommand",()=>{describe("getApdu",()=>{it("should return the raw APDU for the first chunk",()=>{const r={data:Uint8Array.from([1,2,3]),isFirstChunk:!0},e=new t(r).getApdu();expect(e.getRawApdu()).toStrictEqual(Uint8Array.from([224,38,1,0,3,1,2,3]))}),it("should return the raw APDU for the subsequent chunk",()=>{const r={data:Uint8Array.from([4,5,6]),isFirstChunk:!1},e=new t(r).getApdu();expect(e.getRawApdu()).toStrictEqual(Uint8Array.from([224,38,0,0,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({data:new Uint8Array(0),isFirstChunk:!0}).parseResponse(r);if(o(e))throw new Error("Expected an error");expect(e.error).toBeDefined(),expect(e.error).toBeInstanceOf(s)}),it("should return a success result if the response status code is valid",()=>{const r={data:Uint8Array.from([]),statusCode:Uint8Array.from([144,0])},e=new t({data:new Uint8Array(0),isFirstChunk:!0}).parseResponse(r);if(o(e))expect(e.data).toBeUndefined();else throw new Error("Expected a success result")})})});
1
+ import{isSuccessCommandResult as n}from"@ledgerhq/device-management-kit";import{EthAppCommandError as s}from"./utils/ethAppErrors";import{ProvideTransactionInformationCommand as t}from"./ProvideTransactionInformationCommand";describe("ProvideTransactionInformationCommand",()=>{describe("getApdu",()=>{it("should return the raw APDU for the first chunk",()=>{const e={data:Uint8Array.from([1,2,3]),isFirstChunk:!0},r=new t(e).getApdu();expect(r.getRawApdu()).toStrictEqual(Uint8Array.from([224,38,1,0,3,1,2,3]))}),it("should return the raw APDU for the subsequent chunk",()=>{const e={data:Uint8Array.from([4,5,6]),isFirstChunk:!1},r=new t(e).getApdu();expect(r.getRawApdu()).toStrictEqual(Uint8Array.from([224,38,0,0,3,4,5,6]))})}),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({data:new Uint8Array(0),isFirstChunk:!0}).parseResponse(e);if(n(r))throw new Error("Expected an error");expect(r.error).toBeDefined(),expect(r.error).toBeInstanceOf(s)}),it("should return a success result if the response status code is valid",()=>{const e={data:Uint8Array.from([]),statusCode:Uint8Array.from([144,0])},r=new t({data:new Uint8Array(0),isFirstChunk:!0}).parseResponse(e);if(n(r))expect(r.data).toBeUndefined();else throw new Error("Expected a success result")})})});
2
2
  //# sourceMappingURL=ProvideTransactionInformationCommand.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/ProvideTransactionInformationCommand.test.ts"],
4
- "sourcesContent": ["import {\n type ApduResponse,\n isSuccessCommandResult,\n UnknownDeviceExchangeError,\n} from \"@ledgerhq/device-management-kit\";\n\nimport {\n ProvideTransactionInformationCommand,\n type ProvideTransactionInformationCommandArgs,\n} from \"./ProvideTransactionInformationCommand\";\n\ndescribe(\"ProvideTransactionInformationCommand\", () => {\n describe(\"getApdu\", () => {\n it(\"should return the raw APDU for the first chunk\", () => {\n // GIVEN\n const args: ProvideTransactionInformationCommandArgs = {\n data: Uint8Array.from([0x01, 0x02, 0x03]),\n isFirstChunk: true,\n };\n\n // WHEN\n const command = new ProvideTransactionInformationCommand(args);\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n Uint8Array.from([0xe0, 0x26, 0x01, 0x00, 0x03, 0x01, 0x02, 0x03]),\n );\n });\n\n it(\"should return the raw APDU for the subsequent chunk\", () => {\n // GIVEN\n const args: ProvideTransactionInformationCommandArgs = {\n data: Uint8Array.from([0x04, 0x05, 0x06]),\n isFirstChunk: false,\n };\n\n // WHEN\n const command = new ProvideTransactionInformationCommand(args);\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n Uint8Array.from([0xe0, 0x26, 0x00, 0x00, 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 ProvideTransactionInformationCommand({\n data: 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 an error\");\n } else {\n expect(result.error).toBeDefined();\n expect(result.error).toBeInstanceOf(UnknownDeviceExchangeError);\n }\n });\n\n it(\"should return a success result if the response status code is valid\", () => {\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 ProvideTransactionInformationCommand({\n data: 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 a success result\");\n } else {\n expect(result.data).toBeUndefined();\n }\n });\n });\n});\n"],
5
- "mappings": "AAAA,OAEE,0BAAAA,EACA,8BAAAC,MACK,kCAEP,OACE,wCAAAC,MAEK,yCAEP,SAAS,uCAAwC,IAAM,CACrD,SAAS,UAAW,IAAM,CACxB,GAAG,iDAAkD,IAAM,CAEzD,MAAMC,EAAiD,CACrD,KAAM,WAAW,KAAK,CAAC,EAAM,EAAM,CAAI,CAAC,EACxC,aAAc,EAChB,EAIMC,EADU,IAAIF,EAAqCC,CAAI,EACxC,QAAQ,EAG7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cACxB,WAAW,KAAK,CAAC,IAAM,GAAM,EAAM,EAAM,EAAM,EAAM,EAAM,CAAI,CAAC,CAClE,CACF,CAAC,EAED,GAAG,sDAAuD,IAAM,CAE9D,MAAMD,EAAiD,CACrD,KAAM,WAAW,KAAK,CAAC,EAAM,EAAM,CAAI,CAAC,EACxC,aAAc,EAChB,EAIMC,EADU,IAAIF,EAAqCC,CAAI,EACxC,QAAQ,EAG7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cACxB,WAAW,KAAK,CAAC,IAAM,GAAM,EAAM,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,EAAqC,CACvD,KAAM,IAAI,WAAW,CAAC,EACtB,aAAc,EAChB,CAAC,EACsB,cAAcG,CAAQ,EAG7C,GAAIL,EAAuBM,CAAM,EAC/B,MAAM,IAAI,MAAM,mBAAmB,EAEnC,OAAOA,EAAO,KAAK,EAAE,YAAY,EACjC,OAAOA,EAAO,KAAK,EAAE,eAAeL,CAA0B,CAElE,CAAC,EAED,GAAG,sEAAuE,IAAM,CAE9E,MAAMI,EAAyB,CAC7B,KAAM,WAAW,KAAK,CAAC,CAAC,EACxB,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAOMC,EAJU,IAAIJ,EAAqC,CACvD,KAAM,IAAI,WAAW,CAAC,EACtB,aAAc,EAChB,CAAC,EACsB,cAAcG,CAAQ,EAG7C,GAAKL,EAAuBM,CAAM,EAGhC,OAAOA,EAAO,IAAI,EAAE,cAAc,MAFlC,OAAM,IAAI,MAAM,2BAA2B,CAI/C,CAAC,CACH,CAAC,CACH,CAAC",
6
- "names": ["isSuccessCommandResult", "UnknownDeviceExchangeError", "ProvideTransactionInformationCommand", "args", "apdu", "response", "result"]
4
+ "sourcesContent": ["import {\n type ApduResponse,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { EthAppCommandError } from \"./utils/ethAppErrors\";\nimport {\n ProvideTransactionInformationCommand,\n type ProvideTransactionInformationCommandArgs,\n} from \"./ProvideTransactionInformationCommand\";\n\ndescribe(\"ProvideTransactionInformationCommand\", () => {\n describe(\"getApdu\", () => {\n it(\"should return the raw APDU for the first chunk\", () => {\n // GIVEN\n const args: ProvideTransactionInformationCommandArgs = {\n data: Uint8Array.from([0x01, 0x02, 0x03]),\n isFirstChunk: true,\n };\n\n // WHEN\n const command = new ProvideTransactionInformationCommand(args);\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n Uint8Array.from([0xe0, 0x26, 0x01, 0x00, 0x03, 0x01, 0x02, 0x03]),\n );\n });\n\n it(\"should return the raw APDU for the subsequent chunk\", () => {\n // GIVEN\n const args: ProvideTransactionInformationCommandArgs = {\n data: Uint8Array.from([0x04, 0x05, 0x06]),\n isFirstChunk: false,\n };\n\n // WHEN\n const command = new ProvideTransactionInformationCommand(args);\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n Uint8Array.from([0xe0, 0x26, 0x00, 0x00, 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 ProvideTransactionInformationCommand({\n data: 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 an error\");\n } else {\n expect(result.error).toBeDefined();\n expect(result.error).toBeInstanceOf(EthAppCommandError);\n }\n });\n\n it(\"should return a success result if the response status code is valid\", () => {\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 ProvideTransactionInformationCommand({\n data: 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 a success result\");\n } else {\n expect(result.data).toBeUndefined();\n }\n });\n });\n});\n"],
5
+ "mappings": "AAAA,OAEE,0BAAAA,MACK,kCAEP,OAAS,sBAAAC,MAA0B,uBACnC,OACE,wCAAAC,MAEK,yCAEP,SAAS,uCAAwC,IAAM,CACrD,SAAS,UAAW,IAAM,CACxB,GAAG,iDAAkD,IAAM,CAEzD,MAAMC,EAAiD,CACrD,KAAM,WAAW,KAAK,CAAC,EAAM,EAAM,CAAI,CAAC,EACxC,aAAc,EAChB,EAIMC,EADU,IAAIF,EAAqCC,CAAI,EACxC,QAAQ,EAG7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cACxB,WAAW,KAAK,CAAC,IAAM,GAAM,EAAM,EAAM,EAAM,EAAM,EAAM,CAAI,CAAC,CAClE,CACF,CAAC,EAED,GAAG,sDAAuD,IAAM,CAE9D,MAAMD,EAAiD,CACrD,KAAM,WAAW,KAAK,CAAC,EAAM,EAAM,CAAI,CAAC,EACxC,aAAc,EAChB,EAIMC,EADU,IAAIF,EAAqCC,CAAI,EACxC,QAAQ,EAG7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cACxB,WAAW,KAAK,CAAC,IAAM,GAAM,EAAM,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,EAAqC,CACvD,KAAM,IAAI,WAAW,CAAC,EACtB,aAAc,EAChB,CAAC,EACsB,cAAcG,CAAQ,EAG7C,GAAIL,EAAuBM,CAAM,EAC/B,MAAM,IAAI,MAAM,mBAAmB,EAEnC,OAAOA,EAAO,KAAK,EAAE,YAAY,EACjC,OAAOA,EAAO,KAAK,EAAE,eAAeL,CAAkB,CAE1D,CAAC,EAED,GAAG,sEAAuE,IAAM,CAE9E,MAAMI,EAAyB,CAC7B,KAAM,WAAW,KAAK,CAAC,CAAC,EACxB,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAOMC,EAJU,IAAIJ,EAAqC,CACvD,KAAM,IAAI,WAAW,CAAC,EACtB,aAAc,EAChB,CAAC,EACsB,cAAcG,CAAQ,EAG7C,GAAKL,EAAuBM,CAAM,EAGhC,OAAOA,EAAO,IAAI,EAAE,cAAc,MAFlC,OAAM,IAAI,MAAM,2BAA2B,CAI/C,CAAC,CACH,CAAC,CACH,CAAC",
6
+ "names": ["isSuccessCommandResult", "EthAppCommandError", "ProvideTransactionInformationCommand", "args", "apdu", "response", "result"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{ApduBuilder as d,CommandResultFactory as r,CommandUtils as s,GlobalCommandErrorHandler as a}from"@ledgerhq/device-management-kit";const n=2;class m{constructor(e){this.args=e}getApdu(){const e={cla:224,ins:34,p1:this.args.isFirstChunk?1:0,p2:0};return new d(e).addBufferToData(this.args.data).build()}parseResponse(e){return s.isSuccessResponse(e)?r({data:void 0}):r({error:a.handle(e)})}}export{n as PAYLOAD_LENGTH_BYTES,m as ProvideTrustedNameCommand};
1
+ import{ApduBuilder as e,CommandResultFactory as o}from"@ledgerhq/device-management-kit";import{CommandErrorHelper as t}from"@ledgerhq/signer-utils";import{Maybe as d}from"purify-ts";import{ETH_APP_ERRORS as a,EthAppCommandErrorFactory as s}from"./utils/ethAppErrors";const l=2;class A{constructor(r){this.args=r}errorHelper=new t(a,s);getApdu(){const r={cla:224,ins:34,p1:this.args.isFirstChunk?1:0,p2:0};return new e(r).addBufferToData(this.args.data).build()}parseResponse(r){return d.fromNullable(this.errorHelper.getError(r)).orDefault(o({data:void 0}))}}export{l as PAYLOAD_LENGTH_BYTES,A as ProvideTrustedNameCommand};
2
2
  //# sourceMappingURL=ProvideTrustedNameCommand.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/ProvideTrustedNameCommand.ts"],
4
- "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#provide-trusted-name\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 ProvideTrustedNameCommandArgs = {\n data: Uint8Array;\n isFirstChunk: boolean;\n};\n\n/**\n * The length of the payload will take 2 bytes in the APDU.\n */\nexport const PAYLOAD_LENGTH_BYTES = 2;\n\n/**\n * The command that provides a chunk of the trusted name to the device.\n */\nexport class ProvideTrustedNameCommand\n implements Command<void, ProvideTrustedNameCommandArgs>\n{\n constructor(private readonly args: ProvideTrustedNameCommandArgs) {}\n\n getApdu(): Apdu {\n const apduBuilderArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x22,\n p1: this.args.isFirstChunk ? 0x01 : 0x00,\n p2: 0x00,\n };\n\n return new ApduBuilder(apduBuilderArgs)\n .addBufferToData(this.args.data)\n .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 return CommandResultFactory({\n data: undefined,\n });\n }\n}\n"],
5
- "mappings": "AACA,OAEE,eAAAA,EAKA,wBAAAC,EACA,gBAAAC,EACA,6BAAAC,MACK,kCAUA,MAAMC,EAAuB,EAK7B,MAAMC,CAEb,CACE,YAA6BC,EAAqC,CAArC,UAAAA,CAAsC,CAEnE,SAAgB,CACd,MAAMC,EAAmC,CACvC,IAAK,IACL,IAAK,GACL,GAAI,KAAK,KAAK,aAAe,EAAO,EACpC,GAAI,CACN,EAEA,OAAO,IAAIP,EAAYO,CAAe,EACnC,gBAAgB,KAAK,KAAK,IAAI,EAC9B,MAAM,CACX,CAEA,cAAcC,EAA6C,CACzD,OAAKN,EAAa,kBAAkBM,CAAQ,EAKrCP,EAAqB,CAC1B,KAAM,MACR,CAAC,EANQA,EAAqB,CAC1B,MAAOE,EAA0B,OAAOK,CAAQ,CAClD,CAAC,CAKL,CACF",
6
- "names": ["ApduBuilder", "CommandResultFactory", "CommandUtils", "GlobalCommandErrorHandler", "PAYLOAD_LENGTH_BYTES", "ProvideTrustedNameCommand", "args", "apduBuilderArgs", "response"]
4
+ "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#provide-trusted-name\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n} from \"@ledgerhq/device-management-kit\";\nimport { CommandErrorHelper } from \"@ledgerhq/signer-utils\";\nimport { Maybe } from \"purify-ts\";\n\nimport {\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n type EthErrorCodes,\n} from \"./utils/ethAppErrors\";\n\nexport type ProvideTrustedNameCommandArgs = {\n data: Uint8Array;\n isFirstChunk: boolean;\n};\n\n/**\n * The length of the payload will take 2 bytes in the APDU.\n */\nexport const PAYLOAD_LENGTH_BYTES = 2;\n\n/**\n * The command that provides a chunk of the trusted name to the device.\n */\nexport class ProvideTrustedNameCommand\n implements Command<void, ProvideTrustedNameCommandArgs, EthErrorCodes>\n{\n private readonly errorHelper = new CommandErrorHelper<void, EthErrorCodes>(\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n );\n\n constructor(private readonly args: ProvideTrustedNameCommandArgs) {}\n\n getApdu(): Apdu {\n const apduBuilderArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x22,\n p1: this.args.isFirstChunk ? 0x01 : 0x00,\n p2: 0x00,\n };\n\n return new ApduBuilder(apduBuilderArgs)\n .addBufferToData(this.args.data)\n .build();\n }\n\n parseResponse(response: ApduResponse): CommandResult<void, EthErrorCodes> {\n return Maybe.fromNullable(this.errorHelper.getError(response)).orDefault(\n CommandResultFactory({ data: undefined }),\n );\n }\n}\n"],
5
+ "mappings": "AACA,OAEE,eAAAA,EAKA,wBAAAC,MACK,kCACP,OAAS,sBAAAC,MAA0B,yBACnC,OAAS,SAAAC,MAAa,YAEtB,OACE,kBAAAC,EACA,6BAAAC,MAEK,uBAUA,MAAMC,EAAuB,EAK7B,MAAMC,CAEb,CAME,YAA6BC,EAAqC,CAArC,UAAAA,CAAsC,CALlD,YAAc,IAAIN,EACjCE,EACAC,CACF,EAIA,SAAgB,CACd,MAAMI,EAAmC,CACvC,IAAK,IACL,IAAK,GACL,GAAI,KAAK,KAAK,aAAe,EAAO,EACpC,GAAI,CACN,EAEA,OAAO,IAAIT,EAAYS,CAAe,EACnC,gBAAgB,KAAK,KAAK,IAAI,EAC9B,MAAM,CACX,CAEA,cAAcC,EAA4D,CACxE,OAAOP,EAAM,aAAa,KAAK,YAAY,SAASO,CAAQ,CAAC,EAAE,UAC7DT,EAAqB,CAAE,KAAM,MAAU,CAAC,CAC1C,CACF,CACF",
6
+ "names": ["ApduBuilder", "CommandResultFactory", "CommandErrorHelper", "Maybe", "ETH_APP_ERRORS", "EthAppCommandErrorFactory", "PAYLOAD_LENGTH_BYTES", "ProvideTrustedNameCommand", "args", "apduBuilderArgs", "response"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{ApduBuilder as r,CommandResultFactory as s,CommandUtils as a,GlobalCommandErrorHandler as n}from"@ledgerhq/device-management-kit";var d=(e=>(e.Activation="activation",e.DiscardedPath="discarded_path",e.MessageInfo="message_info",e.Datetime="datetime",e.Raw="raw",e.Amount="amount",e.Token="token",e))(d||{});const o={activation:0,discarded_path:1,message_info:15,datetime:252,token:253,amount:254,raw:255};class g{constructor(i){this.args=i}getApdu(){const i={cla:224,ins:30,p1:"discarded"in this.args&&this.args.discarded?1:0,p2:o[this.args.type]},t=new r(i);return this.args.type==="message_info"?t.encodeInLVFromAscii(this.args.displayName).add8BitUIntToData(this.args.filtersCount).encodeInLVFromHexa(this.args.signature):this.args.type==="discarded_path"?t.encodeInLVFromAscii(this.args.path):this.args.type==="datetime"||this.args.type==="raw"?t.encodeInLVFromAscii(this.args.displayName).encodeInLVFromHexa(this.args.signature):(this.args.type==="token"||this.args.type==="amount")&&(this.args.type==="amount"&&t.encodeInLVFromAscii(this.args.displayName),t.add8BitUIntToData(this.args.tokenIndex).encodeInLVFromHexa(this.args.signature)),t.build()}parseResponse(i){return a.isSuccessResponse(i)?s({data:void 0}):s({error:n.handle(i)})}}export{d as Eip712FilterType,g as SendEIP712FilteringCommand};
1
+ import{ApduBuilder as i,CommandResultFactory as s}from"@ledgerhq/device-management-kit";import{CommandErrorHelper as a}from"@ledgerhq/signer-utils";import{Maybe as n}from"purify-ts";import{ETH_APP_ERRORS as o,EthAppCommandErrorFactory as d}from"./utils/ethAppErrors";var p=(e=>(e.Activation="activation",e.DiscardedPath="discarded_path",e.MessageInfo="message_info",e.Datetime="datetime",e.Raw="raw",e.Amount="amount",e.Token="token",e))(p||{});const m={activation:0,discarded_path:1,message_info:15,datetime:252,token:253,amount:254,raw:255};class E{constructor(r){this.args=r}errorHelper=new a(o,d);getApdu(){const r={cla:224,ins:30,p1:"discarded"in this.args&&this.args.discarded?1:0,p2:m[this.args.type]},t=new i(r);return this.args.type==="message_info"?t.encodeInLVFromAscii(this.args.displayName).add8BitUIntToData(this.args.filtersCount).encodeInLVFromHexa(this.args.signature):this.args.type==="discarded_path"?t.encodeInLVFromAscii(this.args.path):this.args.type==="datetime"||this.args.type==="raw"?t.encodeInLVFromAscii(this.args.displayName).encodeInLVFromHexa(this.args.signature):(this.args.type==="token"||this.args.type==="amount")&&(this.args.type==="amount"&&t.encodeInLVFromAscii(this.args.displayName),t.add8BitUIntToData(this.args.tokenIndex).encodeInLVFromHexa(this.args.signature)),t.build()}parseResponse(r){return n.fromNullable(this.errorHelper.getError(r)).orDefault(s({data:void 0}))}}export{p as Eip712FilterType,E as SendEIP712FilteringCommand};
2
2
  //# sourceMappingURL=SendEIP712FilteringCommand.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/SendEIP712FilteringCommand.ts"],
4
- "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#eip712-filtering\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 enum Eip712FilterType {\n Activation = \"activation\",\n DiscardedPath = \"discarded_path\",\n MessageInfo = \"message_info\",\n Datetime = \"datetime\",\n Raw = \"raw\",\n Amount = \"amount\",\n Token = \"token\",\n}\n\nexport type SendEIP712FilteringCommandArgs =\n | { type: Eip712FilterType.Activation }\n | { type: Eip712FilterType.DiscardedPath; path: string }\n | {\n type: Eip712FilterType.MessageInfo;\n displayName: string;\n filtersCount: number;\n signature: string;\n }\n | {\n type: Eip712FilterType.Datetime;\n discarded: boolean;\n displayName: string;\n signature: string;\n }\n | {\n type: Eip712FilterType.Token;\n discarded: boolean;\n tokenIndex: number;\n signature: string;\n }\n | {\n type: Eip712FilterType.Raw;\n discarded: boolean;\n displayName: string;\n signature: string;\n }\n | {\n type: Eip712FilterType.Amount;\n discarded: boolean;\n displayName: string;\n tokenIndex: number;\n signature: string;\n };\n\nconst FILTER_TO_P2: Record<Eip712FilterType, number> = {\n [Eip712FilterType.Activation]: 0x00,\n [Eip712FilterType.DiscardedPath]: 0x01,\n [Eip712FilterType.MessageInfo]: 0x0f,\n [Eip712FilterType.Datetime]: 0xfc,\n [Eip712FilterType.Token]: 0xfd,\n [Eip712FilterType.Amount]: 0xfe,\n [Eip712FilterType.Raw]: 0xff,\n};\n\nexport class SendEIP712FilteringCommand\n implements Command<void, SendEIP712FilteringCommandArgs>\n{\n constructor(private readonly args: SendEIP712FilteringCommandArgs) {}\n\n getApdu(): Apdu {\n const filteringArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x1e,\n p1: \"discarded\" in this.args && this.args.discarded ? 0x01 : 0x00,\n p2: FILTER_TO_P2[this.args.type],\n };\n const builder = new ApduBuilder(filteringArgs);\n\n if (this.args.type === Eip712FilterType.MessageInfo) {\n builder\n .encodeInLVFromAscii(this.args.displayName)\n .add8BitUIntToData(this.args.filtersCount)\n .encodeInLVFromHexa(this.args.signature);\n } else if (this.args.type === Eip712FilterType.DiscardedPath) {\n builder.encodeInLVFromAscii(this.args.path);\n } else if (\n this.args.type === Eip712FilterType.Datetime ||\n this.args.type === Eip712FilterType.Raw\n ) {\n builder\n .encodeInLVFromAscii(this.args.displayName)\n .encodeInLVFromHexa(this.args.signature);\n } else if (\n this.args.type === Eip712FilterType.Token ||\n this.args.type === Eip712FilterType.Amount\n ) {\n if (this.args.type === Eip712FilterType.Amount) {\n builder.encodeInLVFromAscii(this.args.displayName);\n }\n builder\n .add8BitUIntToData(this.args.tokenIndex)\n .encodeInLVFromHexa(this.args.signature);\n }\n\n return builder.build();\n }\n\n parseResponse(apduResponse: ApduResponse): CommandResult<void> {\n if (!CommandUtils.isSuccessResponse(apduResponse)) {\n return CommandResultFactory({\n error: GlobalCommandErrorHandler.handle(apduResponse),\n });\n }\n return CommandResultFactory({ data: undefined });\n }\n}\n"],
5
- "mappings": "AACA,OAEE,eAAAA,EAKA,wBAAAC,EACA,gBAAAC,EACA,6BAAAC,MACK,kCAEA,IAAKC,OACVA,EAAA,WAAa,aACbA,EAAA,cAAgB,iBAChBA,EAAA,YAAc,eACdA,EAAA,SAAW,WACXA,EAAA,IAAM,MACNA,EAAA,OAAS,SACTA,EAAA,MAAQ,QAPEA,OAAA,IA6CZ,MAAMC,EAAiD,CACpD,WAA8B,EAC9B,eAAiC,EACjC,aAA+B,GAC/B,SAA4B,IAC5B,MAAyB,IACzB,OAA0B,IAC1B,IAAuB,GAC1B,EAEO,MAAMC,CAEb,CACE,YAA6BC,EAAsC,CAAtC,UAAAA,CAAuC,CAEpE,SAAgB,CACd,MAAMC,EAAiC,CACrC,IAAK,IACL,IAAK,GACL,GAAI,cAAe,KAAK,MAAQ,KAAK,KAAK,UAAY,EAAO,EAC7D,GAAIH,EAAa,KAAK,KAAK,IAAI,CACjC,EACMI,EAAU,IAAIT,EAAYQ,CAAa,EAE7C,OAAI,KAAK,KAAK,OAAS,eACrBC,EACG,oBAAoB,KAAK,KAAK,WAAW,EACzC,kBAAkB,KAAK,KAAK,YAAY,EACxC,mBAAmB,KAAK,KAAK,SAAS,EAChC,KAAK,KAAK,OAAS,iBAC5BA,EAAQ,oBAAoB,KAAK,KAAK,IAAI,EAE1C,KAAK,KAAK,OAAS,YACnB,KAAK,KAAK,OAAS,MAEnBA,EACG,oBAAoB,KAAK,KAAK,WAAW,EACzC,mBAAmB,KAAK,KAAK,SAAS,GAEzC,KAAK,KAAK,OAAS,SACnB,KAAK,KAAK,OAAS,YAEf,KAAK,KAAK,OAAS,UACrBA,EAAQ,oBAAoB,KAAK,KAAK,WAAW,EAEnDA,EACG,kBAAkB,KAAK,KAAK,UAAU,EACtC,mBAAmB,KAAK,KAAK,SAAS,GAGpCA,EAAQ,MAAM,CACvB,CAEA,cAAcC,EAAiD,CAC7D,OAAKR,EAAa,kBAAkBQ,CAAY,EAKzCT,EAAqB,CAAE,KAAM,MAAU,CAAC,EAJtCA,EAAqB,CAC1B,MAAOE,EAA0B,OAAOO,CAAY,CACtD,CAAC,CAGL,CACF",
6
- "names": ["ApduBuilder", "CommandResultFactory", "CommandUtils", "GlobalCommandErrorHandler", "Eip712FilterType", "FILTER_TO_P2", "SendEIP712FilteringCommand", "args", "filteringArgs", "builder", "apduResponse"]
4
+ "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#eip712-filtering\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n} from \"@ledgerhq/device-management-kit\";\nimport { CommandErrorHelper } from \"@ledgerhq/signer-utils\";\nimport { Maybe } from \"purify-ts\";\n\nimport {\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n type EthErrorCodes,\n} from \"./utils/ethAppErrors\";\n\nexport enum Eip712FilterType {\n Activation = \"activation\",\n DiscardedPath = \"discarded_path\",\n MessageInfo = \"message_info\",\n Datetime = \"datetime\",\n Raw = \"raw\",\n Amount = \"amount\",\n Token = \"token\",\n}\n\nexport type SendEIP712FilteringCommandArgs =\n | { type: Eip712FilterType.Activation }\n | { type: Eip712FilterType.DiscardedPath; path: string }\n | {\n type: Eip712FilterType.MessageInfo;\n displayName: string;\n filtersCount: number;\n signature: string;\n }\n | {\n type: Eip712FilterType.Datetime;\n discarded: boolean;\n displayName: string;\n signature: string;\n }\n | {\n type: Eip712FilterType.Token;\n discarded: boolean;\n tokenIndex: number;\n signature: string;\n }\n | {\n type: Eip712FilterType.Raw;\n discarded: boolean;\n displayName: string;\n signature: string;\n }\n | {\n type: Eip712FilterType.Amount;\n discarded: boolean;\n displayName: string;\n tokenIndex: number;\n signature: string;\n };\n\nconst FILTER_TO_P2: Record<Eip712FilterType, number> = {\n [Eip712FilterType.Activation]: 0x00,\n [Eip712FilterType.DiscardedPath]: 0x01,\n [Eip712FilterType.MessageInfo]: 0x0f,\n [Eip712FilterType.Datetime]: 0xfc,\n [Eip712FilterType.Token]: 0xfd,\n [Eip712FilterType.Amount]: 0xfe,\n [Eip712FilterType.Raw]: 0xff,\n};\n\nexport class SendEIP712FilteringCommand\n implements Command<void, SendEIP712FilteringCommandArgs, EthErrorCodes>\n{\n private readonly errorHelper = new CommandErrorHelper<void, EthErrorCodes>(\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n );\n\n constructor(private readonly args: SendEIP712FilteringCommandArgs) {}\n\n getApdu(): Apdu {\n const filteringArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x1e,\n p1: \"discarded\" in this.args && this.args.discarded ? 0x01 : 0x00,\n p2: FILTER_TO_P2[this.args.type],\n };\n const builder = new ApduBuilder(filteringArgs);\n\n if (this.args.type === Eip712FilterType.MessageInfo) {\n builder\n .encodeInLVFromAscii(this.args.displayName)\n .add8BitUIntToData(this.args.filtersCount)\n .encodeInLVFromHexa(this.args.signature);\n } else if (this.args.type === Eip712FilterType.DiscardedPath) {\n builder.encodeInLVFromAscii(this.args.path);\n } else if (\n this.args.type === Eip712FilterType.Datetime ||\n this.args.type === Eip712FilterType.Raw\n ) {\n builder\n .encodeInLVFromAscii(this.args.displayName)\n .encodeInLVFromHexa(this.args.signature);\n } else if (\n this.args.type === Eip712FilterType.Token ||\n this.args.type === Eip712FilterType.Amount\n ) {\n if (this.args.type === Eip712FilterType.Amount) {\n builder.encodeInLVFromAscii(this.args.displayName);\n }\n builder\n .add8BitUIntToData(this.args.tokenIndex)\n .encodeInLVFromHexa(this.args.signature);\n }\n\n return builder.build();\n }\n\n parseResponse(\n apduResponse: ApduResponse,\n ): CommandResult<void, EthErrorCodes> {\n return Maybe.fromNullable(\n this.errorHelper.getError(apduResponse),\n ).orDefault(CommandResultFactory({ data: undefined }));\n }\n}\n"],
5
+ "mappings": "AACA,OAEE,eAAAA,EAKA,wBAAAC,MACK,kCACP,OAAS,sBAAAC,MAA0B,yBACnC,OAAS,SAAAC,MAAa,YAEtB,OACE,kBAAAC,EACA,6BAAAC,MAEK,uBAEA,IAAKC,OACVA,EAAA,WAAa,aACbA,EAAA,cAAgB,iBAChBA,EAAA,YAAc,eACdA,EAAA,SAAW,WACXA,EAAA,IAAM,MACNA,EAAA,OAAS,SACTA,EAAA,MAAQ,QAPEA,OAAA,IA6CZ,MAAMC,EAAiD,CACpD,WAA8B,EAC9B,eAAiC,EACjC,aAA+B,GAC/B,SAA4B,IAC5B,MAAyB,IACzB,OAA0B,IAC1B,IAAuB,GAC1B,EAEO,MAAMC,CAEb,CAME,YAA6BC,EAAsC,CAAtC,UAAAA,CAAuC,CALnD,YAAc,IAAIP,EACjCE,EACAC,CACF,EAIA,SAAgB,CACd,MAAMK,EAAiC,CACrC,IAAK,IACL,IAAK,GACL,GAAI,cAAe,KAAK,MAAQ,KAAK,KAAK,UAAY,EAAO,EAC7D,GAAIH,EAAa,KAAK,KAAK,IAAI,CACjC,EACMI,EAAU,IAAIX,EAAYU,CAAa,EAE7C,OAAI,KAAK,KAAK,OAAS,eACrBC,EACG,oBAAoB,KAAK,KAAK,WAAW,EACzC,kBAAkB,KAAK,KAAK,YAAY,EACxC,mBAAmB,KAAK,KAAK,SAAS,EAChC,KAAK,KAAK,OAAS,iBAC5BA,EAAQ,oBAAoB,KAAK,KAAK,IAAI,EAE1C,KAAK,KAAK,OAAS,YACnB,KAAK,KAAK,OAAS,MAEnBA,EACG,oBAAoB,KAAK,KAAK,WAAW,EACzC,mBAAmB,KAAK,KAAK,SAAS,GAEzC,KAAK,KAAK,OAAS,SACnB,KAAK,KAAK,OAAS,YAEf,KAAK,KAAK,OAAS,UACrBA,EAAQ,oBAAoB,KAAK,KAAK,WAAW,EAEnDA,EACG,kBAAkB,KAAK,KAAK,UAAU,EACtC,mBAAmB,KAAK,KAAK,SAAS,GAGpCA,EAAQ,MAAM,CACvB,CAEA,cACEC,EACoC,CACpC,OAAOT,EAAM,aACX,KAAK,YAAY,SAASS,CAAY,CACxC,EAAE,UAAUX,EAAqB,CAAE,KAAM,MAAU,CAAC,CAAC,CACvD,CACF",
6
+ "names": ["ApduBuilder", "CommandResultFactory", "CommandErrorHelper", "Maybe", "ETH_APP_ERRORS", "EthAppCommandErrorFactory", "Eip712FilterType", "FILTER_TO_P2", "SendEIP712FilteringCommand", "args", "filteringArgs", "builder", "apduResponse"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{ApduBuilder as a,CommandResultFactory as o,CommandUtils as u,GlobalCommandErrorHandler as c}from"@ledgerhq/device-management-kit";import{Just as p,Nothing as d}from"purify-ts";import{ArrayType as n,PrimitiveType as y,StructType as m}from"../../typed-data/model/Types";var l=(t=>(t[t.Name=0]="Name",t[t.Field=255]="Field",t))(l||{});class B{constructor(e){this.args=e}getApdu(){const e={cla:224,ins:26,p1:0,p2:this.args.command};if(this.args.command===0)return new a(e).addAsciiStringToData(this.args.name).build();const t=new a(e),s=this.constructTypeDescByte(this.args.type);if(t.add8BitUIntToData(s),this.getTypeCustomName(this.args.type).ifJust(i=>{t.encodeInLVFromAscii(i)}),this.getTypeSize(this.args.type).ifJust(i=>{t.add8BitUIntToData(i)}),this.args.type instanceof n){t.add8BitUIntToData(this.args.type.levels.length);for(const i of this.args.type.levels)i.caseOf({Just:r=>{t.add8BitUIntToData(1).add8BitUIntToData(r)},Nothing:()=>{t.add8BitUIntToData(0)}})}return t.encodeInLVFromAscii(this.args.name).build()}parseResponse(e){return u.isSuccessResponse(e)?o({data:void 0}):o({error:c.handle(e)})}constructTypeDescByte(e){const t=e instanceof n?1:0,s=this.getTypeSize(e).isJust()?1:0,i=this.getType(e);return t<<7|s<<6|i}getTypeSize(e){return e instanceof n?this.getTypeSize(e.rootType):e instanceof y?e.size:d}getTypeCustomName(e){return e instanceof n?this.getTypeCustomName(e.rootType):e instanceof m?p(e.typeName):d}getType(e){if(e instanceof n)return this.getType(e.rootType);if(e instanceof m)return 0;switch(e.name){case"int":return 1;case"uint":return 2;case"address":return 3;case"bool":return 4;case"string":return 5;case"bytes":return e.size.isJust()?6:7}}}export{B as SendEIP712StructDefinitionCommand,l as StructDefinitionCommand};
1
+ import{ApduBuilder as o,CommandResultFactory as m}from"@ledgerhq/device-management-kit";import{CommandErrorHelper as u}from"@ledgerhq/signer-utils";import{Just as p,Maybe as c,Nothing as a}from"purify-ts";import{ArrayType as i,PrimitiveType as y,StructType as d}from"../../typed-data/model/Types";import{ETH_APP_ERRORS as l,EthAppCommandErrorFactory as g}from"./utils/ethAppErrors";var f=(t=>(t[t.Name=0]="Name",t[t.Field=255]="Field",t))(f||{});class D{constructor(e){this.args=e}errorHelper=new u(l,g);getApdu(){const e={cla:224,ins:26,p1:0,p2:this.args.command};if(this.args.command===0)return new o(e).addAsciiStringToData(this.args.name).build();const t=new o(e),s=this.constructTypeDescByte(this.args.type);if(t.add8BitUIntToData(s),this.getTypeCustomName(this.args.type).ifJust(r=>{t.encodeInLVFromAscii(r)}),this.getTypeSize(this.args.type).ifJust(r=>{t.add8BitUIntToData(r)}),this.args.type instanceof i){t.add8BitUIntToData(this.args.type.levels.length);for(const r of this.args.type.levels)r.caseOf({Just:n=>{t.add8BitUIntToData(1).add8BitUIntToData(n)},Nothing:()=>{t.add8BitUIntToData(0)}})}return t.encodeInLVFromAscii(this.args.name).build()}parseResponse(e){return c.fromNullable(this.errorHelper.getError(e)).orDefault(m({data:void 0}))}constructTypeDescByte(e){const t=e instanceof i?1:0,s=this.getTypeSize(e).isJust()?1:0,r=this.getType(e);return t<<7|s<<6|r}getTypeSize(e){return e instanceof i?this.getTypeSize(e.rootType):e instanceof y?e.size:a}getTypeCustomName(e){return e instanceof i?this.getTypeCustomName(e.rootType):e instanceof d?p(e.typeName):a}getType(e){if(e instanceof i)return this.getType(e.rootType);if(e instanceof d)return 0;switch(e.name){case"int":return 1;case"uint":return 2;case"address":return 3;case"bool":return 4;case"string":return 5;case"bytes":return e.size.isJust()?6:7}}}export{D as SendEIP712StructDefinitionCommand,f as StructDefinitionCommand};
2
2
  //# sourceMappingURL=SendEIP712StructDefinitionCommand.js.map