@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/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,IAAAA,EAIO,2CAEPC,EAGO,kDAEP,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,IAAI,uCAAqCD,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,IAAI,uCAAqCD,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,IAAI,uCAAqC,CACvD,KAAM,IAAI,WAAW,CAAC,EACtB,aAAc,EAChB,CAAC,EACsB,cAAcD,CAAQ,EAG7C,MAAI,0BAAuBC,CAAM,EAC/B,MAAM,IAAI,MAAM,mBAAmB,EAEnC,OAAOA,EAAO,KAAK,EAAE,YAAY,EACjC,OAAOA,EAAO,KAAK,EAAE,eAAe,4BAA0B,CAElE,CAAC,EAED,GAAG,sEAAuE,IAAM,CAE9E,MAAMD,EAAyB,CAC7B,KAAM,WAAW,KAAK,CAAC,CAAC,EACxB,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAOMC,EAJU,IAAI,uCAAqC,CACvD,KAAM,IAAI,WAAW,CAAC,EACtB,aAAc,EAChB,CAAC,EACsB,cAAcD,CAAQ,EAG7C,MAAK,0BAAuBC,CAAM,EAGhC,OAAOA,EAAO,IAAI,EAAE,cAAc,MAFlC,OAAM,IAAI,MAAM,2BAA2B,CAI/C,CAAC,CACH,CAAC,CACH,CAAC",
6
- "names": ["import_device_management_kit", "import_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,IAAAA,EAGO,2CAEPC,EAAmC,gCACnCC,EAGO,kDAEP,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,IAAI,uCAAqCD,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,IAAI,uCAAqCD,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,IAAI,uCAAqC,CACvD,KAAM,IAAI,WAAW,CAAC,EACtB,aAAc,EAChB,CAAC,EACsB,cAAcD,CAAQ,EAG7C,MAAI,0BAAuBC,CAAM,EAC/B,MAAM,IAAI,MAAM,mBAAmB,EAEnC,OAAOA,EAAO,KAAK,EAAE,YAAY,EACjC,OAAOA,EAAO,KAAK,EAAE,eAAe,oBAAkB,CAE1D,CAAC,EAED,GAAG,sEAAuE,IAAM,CAE9E,MAAMD,EAAyB,CAC7B,KAAM,WAAW,KAAK,CAAC,CAAC,EACxB,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAC1C,EAOMC,EAJU,IAAI,uCAAqC,CACvD,KAAM,IAAI,WAAW,CAAC,EACtB,aAAc,EAChB,CAAC,EACsB,cAAcD,CAAQ,EAG7C,MAAK,0BAAuBC,CAAM,EAGhC,OAAOA,EAAO,IAAI,EAAE,cAAc,MAFlC,OAAM,IAAI,MAAM,2BAA2B,CAI/C,CAAC,CACH,CAAC,CACH,CAAC",
6
+ "names": ["import_device_management_kit", "import_ethAppErrors", "import_ProvideTransactionInformationCommand", "args", "apdu", "response", "result"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var t=Object.defineProperty;var n=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var u=Object.prototype.hasOwnProperty;var p=(d,e)=>{for(var a in e)t(d,a,{get:e[a],enumerable:!0})},i=(d,e,a,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of m(e))!u.call(d,s)&&s!==a&&t(d,s,{get:()=>e[s],enumerable:!(o=n(e,s))||o.enumerable});return d};var l=d=>i(t({},"__esModule",{value:!0}),d);var g={};p(g,{PAYLOAD_LENGTH_BYTES:()=>A,ProvideTrustedNameCommand:()=>C});module.exports=l(g);var r=require("@ledgerhq/device-management-kit");const A=2;class C{constructor(e){this.args=e}getApdu(){const e={cla:224,ins:34,p1:this.args.isFirstChunk?1:0,p2:0};return new r.ApduBuilder(e).addBufferToData(this.args.data).build()}parseResponse(e){return r.CommandUtils.isSuccessResponse(e)?(0,r.CommandResultFactory)({data:void 0}):(0,r.CommandResultFactory)({error:r.GlobalCommandErrorHandler.handle(e)})}}0&&(module.exports={PAYLOAD_LENGTH_BYTES,ProvideTrustedNameCommand});
1
+ "use strict";var s=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var A=(e,r)=>{for(var t in r)s(e,t,{get:r[t],enumerable:!0})},C=(e,r,t,m)=>{if(r&&typeof r=="object"||typeof r=="function")for(let o of i(r))!l.call(e,o)&&o!==t&&s(e,o,{get:()=>r[o],enumerable:!(m=u(r,o))||m.enumerable});return e};var E=e=>C(s({},"__esModule",{value:!0}),e);var h={};A(h,{PAYLOAD_LENGTH_BYTES:()=>y,ProvideTrustedNameCommand:()=>g});module.exports=E(h);var d=require("@ledgerhq/device-management-kit"),p=require("@ledgerhq/signer-utils"),n=require("purify-ts"),a=require("./utils/ethAppErrors");const y=2;class g{constructor(r){this.args=r}errorHelper=new p.CommandErrorHelper(a.ETH_APP_ERRORS,a.EthAppCommandErrorFactory);getApdu(){const r={cla:224,ins:34,p1:this.args.isFirstChunk?1:0,p2:0};return new d.ApduBuilder(r).addBufferToData(this.args.data).build()}parseResponse(r){return n.Maybe.fromNullable(this.errorHelper.getError(r)).orDefault((0,d.CommandResultFactory)({data:void 0}))}}0&&(module.exports={PAYLOAD_LENGTH_BYTES,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": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,0BAAAE,EAAA,8BAAAC,IAAA,eAAAC,EAAAJ,GACA,IAAAK,EAUO,2CAUA,MAAMH,EAAuB,EAK7B,MAAMC,CAEb,CACE,YAA6BG,EAAqC,CAArC,UAAAA,CAAsC,CAEnE,SAAgB,CACd,MAAMC,EAAmC,CACvC,IAAK,IACL,IAAK,GACL,GAAI,KAAK,KAAK,aAAe,EAAO,EACpC,GAAI,CACN,EAEA,OAAO,IAAI,cAAYA,CAAe,EACnC,gBAAgB,KAAK,KAAK,IAAI,EAC9B,MAAM,CACX,CAEA,cAAcC,EAA6C,CACzD,OAAK,eAAa,kBAAkBA,CAAQ,KAKrC,wBAAqB,CAC1B,KAAM,MACR,CAAC,KANQ,wBAAqB,CAC1B,MAAO,4BAA0B,OAAOA,CAAQ,CAClD,CAAC,CAKL,CACF",
6
- "names": ["ProvideTrustedNameCommand_exports", "__export", "PAYLOAD_LENGTH_BYTES", "ProvideTrustedNameCommand", "__toCommonJS", "import_device_management_kit", "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": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,0BAAAE,EAAA,8BAAAC,IAAA,eAAAC,EAAAJ,GACA,IAAAK,EAQO,2CACPC,EAAmC,kCACnCC,EAAsB,qBAEtBC,EAIO,gCAUA,MAAMN,EAAuB,EAK7B,MAAMC,CAEb,CAME,YAA6BM,EAAqC,CAArC,UAAAA,CAAsC,CALlD,YAAc,IAAI,qBACjC,iBACA,2BACF,EAIA,SAAgB,CACd,MAAMC,EAAmC,CACvC,IAAK,IACL,IAAK,GACL,GAAI,KAAK,KAAK,aAAe,EAAO,EACpC,GAAI,CACN,EAEA,OAAO,IAAI,cAAYA,CAAe,EACnC,gBAAgB,KAAK,KAAK,IAAI,EAC9B,MAAM,CACX,CAEA,cAAcC,EAA4D,CACxE,OAAO,QAAM,aAAa,KAAK,YAAY,SAASA,CAAQ,CAAC,EAAE,aAC7D,wBAAqB,CAAE,KAAM,MAAU,CAAC,CAC1C,CACF,CACF",
6
+ "names": ["ProvideTrustedNameCommand_exports", "__export", "PAYLOAD_LENGTH_BYTES", "ProvideTrustedNameCommand", "__toCommonJS", "import_device_management_kit", "import_signer_utils", "import_purify_ts", "import_ethAppErrors", "args", "apduBuilderArgs", "response"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var n=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var g=Object.prototype.hasOwnProperty;var l=(s,e)=>{for(var t in e)n(s,t,{get:e[t],enumerable:!0})},y=(s,e,t,d)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of m(e))!g.call(s,a)&&a!==t&&n(s,a,{get:()=>e[a],enumerable:!(d=p(e,a))||d.enumerable});return s};var u=s=>y(n({},"__esModule",{value:!0}),s);var h={};l(h,{Eip712FilterType:()=>o,SendEIP712FilteringCommand:()=>F});module.exports=u(h);var i=require("@ledgerhq/device-management-kit"),o=(r=>(r.Activation="activation",r.DiscardedPath="discarded_path",r.MessageInfo="message_info",r.Datetime="datetime",r.Raw="raw",r.Amount="amount",r.Token="token",r))(o||{});const c={activation:0,discarded_path:1,message_info:15,datetime:252,token:253,amount:254,raw:255};class F{constructor(e){this.args=e}getApdu(){const e={cla:224,ins:30,p1:"discarded"in this.args&&this.args.discarded?1:0,p2:c[this.args.type]},t=new i.ApduBuilder(e);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(e){return i.CommandUtils.isSuccessResponse(e)?(0,i.CommandResultFactory)({data:void 0}):(0,i.CommandResultFactory)({error:i.GlobalCommandErrorHandler.handle(e)})}}0&&(module.exports={Eip712FilterType,SendEIP712FilteringCommand});
1
+ "use strict";var o=Object.defineProperty;var l=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var u=Object.prototype.hasOwnProperty;var c=(r,e)=>{for(var t in e)o(r,t,{get:e[t],enumerable:!0})},E=(r,e,t,d)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of y(e))!u.call(r,s)&&s!==t&&o(r,s,{get:()=>e[s],enumerable:!(d=l(e,s))||d.enumerable});return r};var h=r=>E(o({},"__esModule",{value:!0}),r);var f={};c(f,{Eip712FilterType:()=>g,SendEIP712FilteringCommand:()=>A});module.exports=h(f);var a=require("@ledgerhq/device-management-kit"),p=require("@ledgerhq/signer-utils"),m=require("purify-ts"),n=require("./utils/ethAppErrors"),g=(i=>(i.Activation="activation",i.DiscardedPath="discarded_path",i.MessageInfo="message_info",i.Datetime="datetime",i.Raw="raw",i.Amount="amount",i.Token="token",i))(g||{});const F={activation:0,discarded_path:1,message_info:15,datetime:252,token:253,amount:254,raw:255};class A{constructor(e){this.args=e}errorHelper=new p.CommandErrorHelper(n.ETH_APP_ERRORS,n.EthAppCommandErrorFactory);getApdu(){const e={cla:224,ins:30,p1:"discarded"in this.args&&this.args.discarded?1:0,p2:F[this.args.type]},t=new a.ApduBuilder(e);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(e){return m.Maybe.fromNullable(this.errorHelper.getError(e)).orDefault((0,a.CommandResultFactory)({data:void 0}))}}0&&(module.exports={Eip712FilterType,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": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,sBAAAE,EAAA,+BAAAC,IAAA,eAAAC,EAAAJ,GACA,IAAAK,EAUO,2CAEKH,OACVA,EAAA,WAAa,aACbA,EAAA,cAAgB,iBAChBA,EAAA,YAAc,eACdA,EAAA,SAAW,WACXA,EAAA,IAAM,MACNA,EAAA,OAAS,SACTA,EAAA,MAAQ,QAPEA,OAAA,IA6CZ,MAAMI,EAAiD,CACpD,WAA8B,EAC9B,eAAiC,EACjC,aAA+B,GAC/B,SAA4B,IAC5B,MAAyB,IACzB,OAA0B,IAC1B,IAAuB,GAC1B,EAEO,MAAMH,CAEb,CACE,YAA6BI,EAAsC,CAAtC,UAAAA,CAAuC,CAEpE,SAAgB,CACd,MAAMC,EAAiC,CACrC,IAAK,IACL,IAAK,GACL,GAAI,cAAe,KAAK,MAAQ,KAAK,KAAK,UAAY,EAAO,EAC7D,GAAIF,EAAa,KAAK,KAAK,IAAI,CACjC,EACMG,EAAU,IAAI,cAAYD,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,OAAK,eAAa,kBAAkBA,CAAY,KAKzC,wBAAqB,CAAE,KAAM,MAAU,CAAC,KAJtC,wBAAqB,CAC1B,MAAO,4BAA0B,OAAOA,CAAY,CACtD,CAAC,CAGL,CACF",
6
- "names": ["SendEIP712FilteringCommand_exports", "__export", "Eip712FilterType", "SendEIP712FilteringCommand", "__toCommonJS", "import_device_management_kit", "FILTER_TO_P2", "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": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,sBAAAE,EAAA,+BAAAC,IAAA,eAAAC,EAAAJ,GACA,IAAAK,EAQO,2CACPC,EAAmC,kCACnCC,EAAsB,qBAEtBC,EAIO,gCAEKN,OACVA,EAAA,WAAa,aACbA,EAAA,cAAgB,iBAChBA,EAAA,YAAc,eACdA,EAAA,SAAW,WACXA,EAAA,IAAM,MACNA,EAAA,OAAS,SACTA,EAAA,MAAQ,QAPEA,OAAA,IA6CZ,MAAMO,EAAiD,CACpD,WAA8B,EAC9B,eAAiC,EACjC,aAA+B,GAC/B,SAA4B,IAC5B,MAAyB,IACzB,OAA0B,IAC1B,IAAuB,GAC1B,EAEO,MAAMN,CAEb,CAME,YAA6BO,EAAsC,CAAtC,UAAAA,CAAuC,CALnD,YAAc,IAAI,qBACjC,iBACA,2BACF,EAIA,SAAgB,CACd,MAAMC,EAAiC,CACrC,IAAK,IACL,IAAK,GACL,GAAI,cAAe,KAAK,MAAQ,KAAK,KAAK,UAAY,EAAO,EAC7D,GAAIF,EAAa,KAAK,KAAK,IAAI,CACjC,EACMG,EAAU,IAAI,cAAYD,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,OAAO,QAAM,aACX,KAAK,YAAY,SAASA,CAAY,CACxC,EAAE,aAAU,wBAAqB,CAAE,KAAM,MAAU,CAAC,CAAC,CACvD,CACF",
6
+ "names": ["SendEIP712FilteringCommand_exports", "__export", "Eip712FilterType", "SendEIP712FilteringCommand", "__toCommonJS", "import_device_management_kit", "import_signer_utils", "import_purify_ts", "import_ethAppErrors", "FILTER_TO_P2", "args", "filteringArgs", "builder", "apduResponse"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var d=Object.defineProperty;var c=Object.getOwnPropertyDescriptor;var p=Object.getOwnPropertyNames;var y=Object.prototype.hasOwnProperty;var l=(r,e)=>{for(var t in e)d(r,t,{get:e[t],enumerable:!0})},g=(r,e,t,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of p(e))!y.call(r,i)&&i!==t&&d(r,i,{get:()=>e[i],enumerable:!(a=c(e,i))||a.enumerable});return r};var f=r=>g(d({},"__esModule",{value:!0}),r);var h={};l(h,{SendEIP712StructDefinitionCommand:()=>T,StructDefinitionCommand:()=>u});module.exports=f(h);var s=require("@ledgerhq/device-management-kit"),o=require("purify-ts"),n=require("../../typed-data/model/Types"),u=(t=>(t[t.Name=0]="Name",t[t.Field=255]="Field",t))(u||{});class T{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 s.ApduBuilder(e).addAsciiStringToData(this.args.name).build();const t=new s.ApduBuilder(e),a=this.constructTypeDescByte(this.args.type);if(t.add8BitUIntToData(a),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.ArrayType){t.add8BitUIntToData(this.args.type.levels.length);for(const i of this.args.type.levels)i.caseOf({Just:m=>{t.add8BitUIntToData(1).add8BitUIntToData(m)},Nothing:()=>{t.add8BitUIntToData(0)}})}return t.encodeInLVFromAscii(this.args.name).build()}parseResponse(e){return s.CommandUtils.isSuccessResponse(e)?(0,s.CommandResultFactory)({data:void 0}):(0,s.CommandResultFactory)({error:s.GlobalCommandErrorHandler.handle(e)})}constructTypeDescByte(e){const t=e instanceof n.ArrayType?1:0,a=this.getTypeSize(e).isJust()?1:0,i=this.getType(e);return t<<7|a<<6|i}getTypeSize(e){return e instanceof n.ArrayType?this.getTypeSize(e.rootType):e instanceof n.PrimitiveType?e.size:o.Nothing}getTypeCustomName(e){return e instanceof n.ArrayType?this.getTypeCustomName(e.rootType):e instanceof n.StructType?(0,o.Just)(e.typeName):o.Nothing}getType(e){if(e instanceof n.ArrayType)return this.getType(e.rootType);if(e instanceof n.StructType)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}}}0&&(module.exports={SendEIP712StructDefinitionCommand,StructDefinitionCommand});
1
+ "use strict";var m=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var g=Object.prototype.hasOwnProperty;var f=(s,e)=>{for(var t in e)m(s,t,{get:e[t],enumerable:!0})},h=(s,e,t,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of l(e))!g.call(s,r)&&r!==t&&m(s,r,{get:()=>e[r],enumerable:!(o=y(e,r))||o.enumerable});return s};var T=s=>h(m({},"__esModule",{value:!0}),s);var B={};f(B,{SendEIP712StructDefinitionCommand:()=>A,StructDefinitionCommand:()=>c});module.exports=T(B);var a=require("@ledgerhq/device-management-kit"),p=require("@ledgerhq/signer-utils"),n=require("purify-ts"),i=require("../../typed-data/model/Types"),d=require("./utils/ethAppErrors"),c=(t=>(t[t.Name=0]="Name",t[t.Field=255]="Field",t))(c||{});class A{constructor(e){this.args=e}errorHelper=new p.CommandErrorHelper(d.ETH_APP_ERRORS,d.EthAppCommandErrorFactory);getApdu(){const e={cla:224,ins:26,p1:0,p2:this.args.command};if(this.args.command===0)return new a.ApduBuilder(e).addAsciiStringToData(this.args.name).build();const t=new a.ApduBuilder(e),o=this.constructTypeDescByte(this.args.type);if(t.add8BitUIntToData(o),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.ArrayType){t.add8BitUIntToData(this.args.type.levels.length);for(const r of this.args.type.levels)r.caseOf({Just:u=>{t.add8BitUIntToData(1).add8BitUIntToData(u)},Nothing:()=>{t.add8BitUIntToData(0)}})}return t.encodeInLVFromAscii(this.args.name).build()}parseResponse(e){return n.Maybe.fromNullable(this.errorHelper.getError(e)).orDefault((0,a.CommandResultFactory)({data:void 0}))}constructTypeDescByte(e){const t=e instanceof i.ArrayType?1:0,o=this.getTypeSize(e).isJust()?1:0,r=this.getType(e);return t<<7|o<<6|r}getTypeSize(e){return e instanceof i.ArrayType?this.getTypeSize(e.rootType):e instanceof i.PrimitiveType?e.size:n.Nothing}getTypeCustomName(e){return e instanceof i.ArrayType?this.getTypeCustomName(e.rootType):e instanceof i.StructType?(0,n.Just)(e.typeName):n.Nothing}getType(e){if(e instanceof i.ArrayType)return this.getType(e.rootType);if(e instanceof i.StructType)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}}}0&&(module.exports={SendEIP712StructDefinitionCommand,StructDefinitionCommand});
2
2
  //# sourceMappingURL=SendEIP712StructDefinitionCommand.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/SendEIP712StructDefinitionCommand.ts"],
4
- "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#eip712-send-struct-definition\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\";\nimport { Just, type Maybe, Nothing } from \"purify-ts\";\n\nimport {\n ArrayType,\n type FieldName,\n type FieldType,\n PrimitiveType,\n StructType,\n} from \"@internal/typed-data/model/Types\";\n\nexport enum StructDefinitionCommand {\n Name = 0,\n Field = 255,\n}\n\nexport type SendEIP712StructDefinitionCommandArgs =\n | { command: StructDefinitionCommand.Name; name: string }\n | {\n command: StructDefinitionCommand.Field;\n name: FieldName;\n type: FieldType;\n };\n\nenum ArraySize {\n Dynamic,\n Fixed,\n}\n\nenum Type {\n Custom,\n Int,\n Uint,\n Address,\n Bool,\n String,\n FixedSizedBytes,\n DynamicSizedBytes,\n}\n\nexport class SendEIP712StructDefinitionCommand\n implements Command<void, SendEIP712StructDefinitionCommandArgs>\n{\n constructor(private args: SendEIP712StructDefinitionCommandArgs) {}\n\n getApdu(): Apdu {\n const SendEIP712StructDefinitionArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x1a,\n p1: 0x00,\n p2: this.args.command,\n };\n\n // Struct name\n if (this.args.command === StructDefinitionCommand.Name) {\n return new ApduBuilder(SendEIP712StructDefinitionArgs)\n .addAsciiStringToData(this.args.name)\n .build();\n }\n\n // Struct field\n const builder = new ApduBuilder(SendEIP712StructDefinitionArgs);\n\n const typeDesc = this.constructTypeDescByte(this.args.type);\n\n // Add type descriptor\n builder.add8BitUIntToData(typeDesc);\n\n // Add struct name if this is a custom type\n this.getTypeCustomName(this.args.type).ifJust((customName) => {\n builder.encodeInLVFromAscii(customName);\n });\n\n // Add type size, if applicable\n this.getTypeSize(this.args.type).ifJust((size) => {\n builder.add8BitUIntToData(size);\n });\n\n // Add array levels, if it is an array\n if (this.args.type instanceof ArrayType) {\n builder.add8BitUIntToData(this.args.type.levels.length);\n for (const level of this.args.type.levels) {\n level.caseOf({\n Just: (l) => {\n builder.add8BitUIntToData(ArraySize.Fixed).add8BitUIntToData(l);\n },\n Nothing: () => {\n builder.add8BitUIntToData(ArraySize.Dynamic);\n },\n });\n }\n }\n\n // Add field name\n return builder.encodeInLVFromAscii(this.args.name).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({ data: undefined });\n }\n\n private constructTypeDescByte(type: FieldType): number {\n const isArrayBit = type instanceof ArrayType ? 1 : 0;\n const hasTypeSize = this.getTypeSize(type).isJust() ? 1 : 0;\n const typeBits = this.getType(type);\n\n // Combine the bits using bitwise operations\n const combinedBits = (isArrayBit << 7) | (hasTypeSize << 6) | typeBits;\n return combinedBits;\n }\n\n private getTypeSize(type: FieldType): Maybe<number> {\n if (type instanceof ArrayType) {\n return this.getTypeSize(type.rootType);\n }\n return type instanceof PrimitiveType ? type.size : Nothing;\n }\n\n private getTypeCustomName(type: FieldType): Maybe<string> {\n if (type instanceof ArrayType) {\n return this.getTypeCustomName(type.rootType);\n }\n return type instanceof StructType ? Just(type.typeName) : Nothing;\n }\n\n private getType(type: FieldType): Type {\n if (type instanceof ArrayType) {\n return this.getType(type.rootType);\n } else if (type instanceof StructType) {\n return Type.Custom;\n }\n switch (type.name) {\n case \"int\":\n return Type.Int;\n case \"uint\":\n return Type.Uint;\n case \"address\":\n return Type.Address;\n case \"bool\":\n return Type.Bool;\n case \"string\":\n return Type.String;\n case \"bytes\":\n return type.size.isJust()\n ? Type.FixedSizedBytes\n : Type.DynamicSizedBytes;\n }\n }\n}\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,uCAAAE,EAAA,4BAAAC,IAAA,eAAAC,EAAAJ,GACA,IAAAK,EAUO,2CACPC,EAA0C,qBAE1CC,EAMO,4CAEKJ,OACVA,IAAA,KAAO,GAAP,OACAA,IAAA,MAAQ,KAAR,QAFUA,OAAA,IA6BL,MAAMK,CAEb,CACE,YAAoBC,EAA6C,CAA7C,UAAAA,CAA8C,CAElE,SAAgB,CACd,MAAMC,EAAkD,CACtD,IAAK,IACL,IAAK,GACL,GAAI,EACJ,GAAI,KAAK,KAAK,OAChB,EAGA,GAAI,KAAK,KAAK,UAAY,EACxB,OAAO,IAAI,cAAYA,CAA8B,EAClD,qBAAqB,KAAK,KAAK,IAAI,EACnC,MAAM,EAIX,MAAMC,EAAU,IAAI,cAAYD,CAA8B,EAExDE,EAAW,KAAK,sBAAsB,KAAK,KAAK,IAAI,EAgB1D,GAbAD,EAAQ,kBAAkBC,CAAQ,EAGlC,KAAK,kBAAkB,KAAK,KAAK,IAAI,EAAE,OAAQC,GAAe,CAC5DF,EAAQ,oBAAoBE,CAAU,CACxC,CAAC,EAGD,KAAK,YAAY,KAAK,KAAK,IAAI,EAAE,OAAQC,GAAS,CAChDH,EAAQ,kBAAkBG,CAAI,CAChC,CAAC,EAGG,KAAK,KAAK,gBAAgB,YAAW,CACvCH,EAAQ,kBAAkB,KAAK,KAAK,KAAK,OAAO,MAAM,EACtD,UAAWI,KAAS,KAAK,KAAK,KAAK,OACjCA,EAAM,OAAO,CACX,KAAOC,GAAM,CACXL,EAAQ,kBAAkB,CAAe,EAAE,kBAAkBK,CAAC,CAChE,EACA,QAAS,IAAM,CACbL,EAAQ,kBAAkB,CAAiB,CAC7C,CACF,CAAC,CAEL,CAGA,OAAOA,EAAQ,oBAAoB,KAAK,KAAK,IAAI,EAAE,MAAM,CAC3D,CAEA,cAAcM,EAA6C,CACzD,OAAK,eAAa,kBAAkBA,CAAQ,KAKrC,wBAAqB,CAAE,KAAM,MAAU,CAAC,KAJtC,wBAAqB,CAC1B,MAAO,4BAA0B,OAAOA,CAAQ,CAClD,CAAC,CAGL,CAEQ,sBAAsBC,EAAyB,CACrD,MAAMC,EAAaD,aAAgB,YAAY,EAAI,EAC7CE,EAAc,KAAK,YAAYF,CAAI,EAAE,OAAO,EAAI,EAAI,EACpDG,EAAW,KAAK,QAAQH,CAAI,EAIlC,OADsBC,GAAc,EAAMC,GAAe,EAAKC,CAEhE,CAEQ,YAAYH,EAAgC,CAClD,OAAIA,aAAgB,YACX,KAAK,YAAYA,EAAK,QAAQ,EAEhCA,aAAgB,gBAAgBA,EAAK,KAAO,SACrD,CAEQ,kBAAkBA,EAAgC,CACxD,OAAIA,aAAgB,YACX,KAAK,kBAAkBA,EAAK,QAAQ,EAEtCA,aAAgB,gBAAa,QAAKA,EAAK,QAAQ,EAAI,SAC5D,CAEQ,QAAQA,EAAuB,CACrC,GAAIA,aAAgB,YAClB,OAAO,KAAK,QAAQA,EAAK,QAAQ,EAC5B,GAAIA,aAAgB,aACzB,MAAO,GAET,OAAQA,EAAK,KAAM,CACjB,IAAK,MACH,MAAO,GACT,IAAK,OACH,MAAO,GACT,IAAK,UACH,MAAO,GACT,IAAK,OACH,MAAO,GACT,IAAK,SACH,MAAO,GACT,IAAK,QACH,OAAOA,EAAK,KAAK,OAAO,EACpB,EACA,CACR,CACF,CACF",
6
- "names": ["SendEIP712StructDefinitionCommand_exports", "__export", "SendEIP712StructDefinitionCommand", "StructDefinitionCommand", "__toCommonJS", "import_device_management_kit", "import_purify_ts", "import_Types", "SendEIP712StructDefinitionCommand", "args", "SendEIP712StructDefinitionArgs", "builder", "typeDesc", "customName", "size", "level", "l", "response", "type", "isArrayBit", "hasTypeSize", "typeBits"]
4
+ "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#eip712-send-struct-definition\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 { Just, Maybe, Nothing } from \"purify-ts\";\n\nimport {\n ArrayType,\n type FieldName,\n type FieldType,\n PrimitiveType,\n StructType,\n} from \"@internal/typed-data/model/Types\";\n\nimport {\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n type EthErrorCodes,\n} from \"./utils/ethAppErrors\";\n\nexport enum StructDefinitionCommand {\n Name = 0,\n Field = 255,\n}\n\nexport type SendEIP712StructDefinitionCommandArgs =\n | { command: StructDefinitionCommand.Name; name: string }\n | {\n command: StructDefinitionCommand.Field;\n name: FieldName;\n type: FieldType;\n };\n\nenum ArraySize {\n Dynamic,\n Fixed,\n}\n\nenum Type {\n Custom,\n Int,\n Uint,\n Address,\n Bool,\n String,\n FixedSizedBytes,\n DynamicSizedBytes,\n}\n\nexport class SendEIP712StructDefinitionCommand\n implements Command<void, SendEIP712StructDefinitionCommandArgs, EthErrorCodes>\n{\n private readonly errorHelper = new CommandErrorHelper<void, EthErrorCodes>(\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n );\n\n constructor(private args: SendEIP712StructDefinitionCommandArgs) {}\n\n getApdu(): Apdu {\n const SendEIP712StructDefinitionArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x1a,\n p1: 0x00,\n p2: this.args.command,\n };\n\n // Struct name\n if (this.args.command === StructDefinitionCommand.Name) {\n return new ApduBuilder(SendEIP712StructDefinitionArgs)\n .addAsciiStringToData(this.args.name)\n .build();\n }\n\n // Struct field\n const builder = new ApduBuilder(SendEIP712StructDefinitionArgs);\n\n const typeDesc = this.constructTypeDescByte(this.args.type);\n\n // Add type descriptor\n builder.add8BitUIntToData(typeDesc);\n\n // Add struct name if this is a custom type\n this.getTypeCustomName(this.args.type).ifJust((customName) => {\n builder.encodeInLVFromAscii(customName);\n });\n\n // Add type size, if applicable\n this.getTypeSize(this.args.type).ifJust((size) => {\n builder.add8BitUIntToData(size);\n });\n\n // Add array levels, if it is an array\n if (this.args.type instanceof ArrayType) {\n builder.add8BitUIntToData(this.args.type.levels.length);\n for (const level of this.args.type.levels) {\n level.caseOf({\n Just: (l) => {\n builder.add8BitUIntToData(ArraySize.Fixed).add8BitUIntToData(l);\n },\n Nothing: () => {\n builder.add8BitUIntToData(ArraySize.Dynamic);\n },\n });\n }\n }\n\n // Add field name\n return builder.encodeInLVFromAscii(this.args.name).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 private constructTypeDescByte(type: FieldType): number {\n const isArrayBit = type instanceof ArrayType ? 1 : 0;\n const hasTypeSize = this.getTypeSize(type).isJust() ? 1 : 0;\n const typeBits = this.getType(type);\n\n // Combine the bits using bitwise operations\n const combinedBits = (isArrayBit << 7) | (hasTypeSize << 6) | typeBits;\n return combinedBits;\n }\n\n private getTypeSize(type: FieldType): Maybe<number> {\n if (type instanceof ArrayType) {\n return this.getTypeSize(type.rootType);\n }\n return type instanceof PrimitiveType ? type.size : Nothing;\n }\n\n private getTypeCustomName(type: FieldType): Maybe<string> {\n if (type instanceof ArrayType) {\n return this.getTypeCustomName(type.rootType);\n }\n return type instanceof StructType ? Just(type.typeName) : Nothing;\n }\n\n private getType(type: FieldType): Type {\n if (type instanceof ArrayType) {\n return this.getType(type.rootType);\n } else if (type instanceof StructType) {\n return Type.Custom;\n }\n switch (type.name) {\n case \"int\":\n return Type.Int;\n case \"uint\":\n return Type.Uint;\n case \"address\":\n return Type.Address;\n case \"bool\":\n return Type.Bool;\n case \"string\":\n return Type.String;\n case \"bytes\":\n return type.size.isJust()\n ? Type.FixedSizedBytes\n : Type.DynamicSizedBytes;\n }\n }\n}\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,uCAAAE,EAAA,4BAAAC,IAAA,eAAAC,EAAAJ,GACA,IAAAK,EAQO,2CACPC,EAAmC,kCACnCC,EAAqC,qBAErCC,EAMO,4CAEPC,EAIO,gCAEKN,OACVA,IAAA,KAAO,GAAP,OACAA,IAAA,MAAQ,KAAR,QAFUA,OAAA,IA6BL,MAAMO,CAEb,CAME,YAAoBC,EAA6C,CAA7C,UAAAA,CAA8C,CALjD,YAAc,IAAI,qBACjC,iBACA,2BACF,EAIA,SAAgB,CACd,MAAMC,EAAkD,CACtD,IAAK,IACL,IAAK,GACL,GAAI,EACJ,GAAI,KAAK,KAAK,OAChB,EAGA,GAAI,KAAK,KAAK,UAAY,EACxB,OAAO,IAAI,cAAYA,CAA8B,EAClD,qBAAqB,KAAK,KAAK,IAAI,EACnC,MAAM,EAIX,MAAMC,EAAU,IAAI,cAAYD,CAA8B,EAExDE,EAAW,KAAK,sBAAsB,KAAK,KAAK,IAAI,EAgB1D,GAbAD,EAAQ,kBAAkBC,CAAQ,EAGlC,KAAK,kBAAkB,KAAK,KAAK,IAAI,EAAE,OAAQC,GAAe,CAC5DF,EAAQ,oBAAoBE,CAAU,CACxC,CAAC,EAGD,KAAK,YAAY,KAAK,KAAK,IAAI,EAAE,OAAQC,GAAS,CAChDH,EAAQ,kBAAkBG,CAAI,CAChC,CAAC,EAGG,KAAK,KAAK,gBAAgB,YAAW,CACvCH,EAAQ,kBAAkB,KAAK,KAAK,KAAK,OAAO,MAAM,EACtD,UAAWI,KAAS,KAAK,KAAK,KAAK,OACjCA,EAAM,OAAO,CACX,KAAOC,GAAM,CACXL,EAAQ,kBAAkB,CAAe,EAAE,kBAAkBK,CAAC,CAChE,EACA,QAAS,IAAM,CACbL,EAAQ,kBAAkB,CAAiB,CAC7C,CACF,CAAC,CAEL,CAGA,OAAOA,EAAQ,oBAAoB,KAAK,KAAK,IAAI,EAAE,MAAM,CAC3D,CAEA,cAAcM,EAA4D,CACxE,OAAO,QAAM,aAAa,KAAK,YAAY,SAASA,CAAQ,CAAC,EAAE,aAC7D,wBAAqB,CAAE,KAAM,MAAU,CAAC,CAC1C,CACF,CAEQ,sBAAsBC,EAAyB,CACrD,MAAMC,EAAaD,aAAgB,YAAY,EAAI,EAC7CE,EAAc,KAAK,YAAYF,CAAI,EAAE,OAAO,EAAI,EAAI,EACpDG,EAAW,KAAK,QAAQH,CAAI,EAIlC,OADsBC,GAAc,EAAMC,GAAe,EAAKC,CAEhE,CAEQ,YAAYH,EAAgC,CAClD,OAAIA,aAAgB,YACX,KAAK,YAAYA,EAAK,QAAQ,EAEhCA,aAAgB,gBAAgBA,EAAK,KAAO,SACrD,CAEQ,kBAAkBA,EAAgC,CACxD,OAAIA,aAAgB,YACX,KAAK,kBAAkBA,EAAK,QAAQ,EAEtCA,aAAgB,gBAAa,QAAKA,EAAK,QAAQ,EAAI,SAC5D,CAEQ,QAAQA,EAAuB,CACrC,GAAIA,aAAgB,YAClB,OAAO,KAAK,QAAQA,EAAK,QAAQ,EAC5B,GAAIA,aAAgB,aACzB,MAAO,GAET,OAAQA,EAAK,KAAM,CACjB,IAAK,MACH,MAAO,GACT,IAAK,OACH,MAAO,GACT,IAAK,UACH,MAAO,GACT,IAAK,OACH,MAAO,GACT,IAAK,SACH,MAAO,GACT,IAAK,QACH,OAAOA,EAAK,KAAK,OAAO,EACpB,EACA,CACR,CACF,CACF",
6
+ "names": ["SendEIP712StructDefinitionCommand_exports", "__export", "SendEIP712StructDefinitionCommand", "StructDefinitionCommand", "__toCommonJS", "import_device_management_kit", "import_signer_utils", "import_purify_ts", "import_Types", "import_ethAppErrors", "SendEIP712StructDefinitionCommand", "args", "SendEIP712StructDefinitionArgs", "builder", "typeDesc", "customName", "size", "level", "l", "response", "type", "isArrayBit", "hasTypeSize", "typeBits"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var a=require("@ledgerhq/device-management-kit"),n=require("purify-ts"),r=require("../../typed-data/model/Types"),x=require("./SendEIP712StructDefinitionCommand");const d=Uint8Array.from([224,26,0,0,12,69,73,80,55,49,50,68,111,109,97,105,110]),s=Uint8Array.from([224,26,0,0,5,71,114,111,117,112]),u=Uint8Array.from([224,26,0,255,6,5,4,110,97,109,101]),i=Uint8Array.from([224,26,0,255,9,5,7,118,101,114,115,105,111,110]),p=Uint8Array.from([224,26,0,255,10,66,32,7,99,104,97,105,110,73,100]),c=Uint8Array.from([224,26,0,255,19,3,17,118,101,114,105,102,121,105,110,103,67,111,110,116,114,97,99,116]),m=Uint8Array.from([224,26,0,255,18,128,6,80,101,114,115,111,110,1,0,7,109,101,109,98,101,114,115]),f=Uint8Array.from([224,26,0,255,13,0,6,80,101,114,115,111,110,4,102,114,111,109]),E=Uint8Array.from([224,26,0,255,11,131,1,0,7,119,97,108,108,101,116,115]),A=Uint8Array.from([224,26,0,255,17,7,15,115,116,97,116,105,99,69,120,116,114,97,100,97,116,97]),y=Uint8Array.from([224,26,0,255,20,7,18,114,101,112,108,97,99,101,109,101,110,116,80,97,116,116,101,114,110]),l=Uint8Array.from([224,26,0,255,11,70,4,8,100,97,116,97,84,121,112,101]),_=Uint8Array.from([224,26,0,255,14,133,2,1,3,0,8,100,111,99,117,109,101,110,116]),w=Uint8Array.from([224,26,0,255,14,194,1,4,0,0,0,0,6,100,101,112,116,104,121]);describe("SendEIP712StructDefinitionCommand",()=>{let t;describe("getApdu",()=>{it("should return the apdu for 'EIP712Domain' name definition",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Name,name:"EIP712Domain"});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(d)}),it("should return the apdu for 'Group' name definition",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Name,name:"Group"});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(s)}),it("should return the apdu for 'name' of type 'string'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"name",type:new r.PrimitiveType("string","string",n.Nothing)});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(u)}),it("should return the apdu for 'version' of type 'string'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"version",type:new r.PrimitiveType("string","string",n.Nothing)});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(i)}),it("should return the apdu for 'chainId' of type 'uint256'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"chainId",type:new r.PrimitiveType("uint256","uint",(0,n.Just)(32))});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(p)}),it("should return the apdu for 'verifyingContract' of type 'address'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"verifyingContract",type:new r.PrimitiveType("address","address",n.Nothing)});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(c)}),it("should return the apdu for 'members' of type 'Person[]'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"members",type:new r.ArrayType("Person[]",new r.StructType("Person"),"Person",n.Nothing,[n.Nothing])});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(m)}),it("should return the apdu for 'from' of type 'Person'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"from",type:new r.StructType("Person")});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(f)}),it("should return the apdu for 'wallets' of type 'address[]'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"wallets",type:new r.ArrayType("address[]",new r.PrimitiveType("address","address",n.Nothing),"address",n.Nothing,[n.Nothing])});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(E)}),it("should return the apdu for 'staticExtradata' of type 'bytes'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"staticExtradata",type:new r.PrimitiveType("bytes","bytes",n.Nothing)});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(A)}),it("should return the apdu for 'replacementPattern' of type 'bytes'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"replacementPattern",type:new r.PrimitiveType("bytes","bytes",n.Nothing)});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(y)}),it("should return the apdu for 'dataType' of type 'bytes4'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"dataType",type:new r.PrimitiveType("bytes4","bytes",(0,n.Just)(4))});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(l)}),it("should return the apdu for 'document' of type 'string[3][]'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"document",type:new r.ArrayType("string[3][]",new r.PrimitiveType("string","string",n.Nothing),"string[3]",n.Nothing,[(0,n.Just)(3),n.Nothing])});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(_)}),it("should return the apdu for 'depthy' of type 'uint8[][][][]'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"depthy",type:new r.ArrayType("uint8[][][][]",new r.PrimitiveType("uint8","uint",(0,n.Just)(1)),"uint8[][][]",n.Nothing,[n.Nothing,n.Nothing,n.Nothing,n.Nothing])});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(w)})}),describe("parseResponse",()=>{it("should parse the response",()=>{const e={statusCode:Uint8Array.from([144,0]),data:new Uint8Array},o=t.parseResponse(e);expect(o).toStrictEqual((0,a.CommandResultFactory)({data:void 0}))}),it("should throw an error if the response is not successful",()=>{const e={statusCode:Uint8Array.from([85,21]),data:new Uint8Array},o=t.parseResponse(e);expect((0,a.isSuccessCommandResult)(o)).toBe(!1)})})});
1
+ "use strict";var o=require("@ledgerhq/device-management-kit"),n=require("purify-ts"),r=require("../../typed-data/model/Types"),x=require("./SendEIP712StructDefinitionCommand");const d=Uint8Array.from([224,26,0,0,12,69,73,80,55,49,50,68,111,109,97,105,110]),s=Uint8Array.from([224,26,0,0,5,71,114,111,117,112]),i=Uint8Array.from([224,26,0,255,6,5,4,110,97,109,101]),u=Uint8Array.from([224,26,0,255,9,5,7,118,101,114,115,105,111,110]),p=Uint8Array.from([224,26,0,255,10,66,32,7,99,104,97,105,110,73,100]),c=Uint8Array.from([224,26,0,255,19,3,17,118,101,114,105,102,121,105,110,103,67,111,110,116,114,97,99,116]),m=Uint8Array.from([224,26,0,255,18,128,6,80,101,114,115,111,110,1,0,7,109,101,109,98,101,114,115]),f=Uint8Array.from([224,26,0,255,13,0,6,80,101,114,115,111,110,4,102,114,111,109]),E=Uint8Array.from([224,26,0,255,11,131,1,0,7,119,97,108,108,101,116,115]),A=Uint8Array.from([224,26,0,255,17,7,15,115,116,97,116,105,99,69,120,116,114,97,100,97,116,97]),y=Uint8Array.from([224,26,0,255,20,7,18,114,101,112,108,97,99,101,109,101,110,116,80,97,116,116,101,114,110]),l=Uint8Array.from([224,26,0,255,11,70,4,8,100,97,116,97,84,121,112,101]),_=Uint8Array.from([224,26,0,255,14,133,2,1,3,0,8,100,111,99,117,109,101,110,116]),w=Uint8Array.from([224,26,0,255,14,194,1,4,0,0,0,0,6,100,101,112,116,104,121]);describe("SendEIP712StructDefinitionCommand",()=>{let t;describe("getApdu",()=>{it("should return the apdu for 'EIP712Domain' name definition",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Name,name:"EIP712Domain"});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(d)}),it("should return the apdu for 'Group' name definition",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Name,name:"Group"});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(s)}),it("should return the apdu for 'name' of type 'string'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"name",type:new r.PrimitiveType("string","string",n.Nothing)});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(i)}),it("should return the apdu for 'version' of type 'string'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"version",type:new r.PrimitiveType("string","string",n.Nothing)});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(u)}),it("should return the apdu for 'chainId' of type 'uint256'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"chainId",type:new r.PrimitiveType("uint256","uint",(0,n.Just)(32))});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(p)}),it("should return the apdu for 'verifyingContract' of type 'address'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"verifyingContract",type:new r.PrimitiveType("address","address",n.Nothing)});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(c)}),it("should return the apdu for 'members' of type 'Person[]'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"members",type:new r.ArrayType("Person[]",new r.StructType("Person"),"Person",n.Nothing,[n.Nothing])});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(m)}),it("should return the apdu for 'from' of type 'Person'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"from",type:new r.StructType("Person")});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(f)}),it("should return the apdu for 'wallets' of type 'address[]'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"wallets",type:new r.ArrayType("address[]",new r.PrimitiveType("address","address",n.Nothing),"address",n.Nothing,[n.Nothing])});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(E)}),it("should return the apdu for 'staticExtradata' of type 'bytes'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"staticExtradata",type:new r.PrimitiveType("bytes","bytes",n.Nothing)});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(A)}),it("should return the apdu for 'replacementPattern' of type 'bytes'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"replacementPattern",type:new r.PrimitiveType("bytes","bytes",n.Nothing)});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(y)}),it("should return the apdu for 'dataType' of type 'bytes4'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"dataType",type:new r.PrimitiveType("bytes4","bytes",(0,n.Just)(4))});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(l)}),it("should return the apdu for 'document' of type 'string[3][]'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"document",type:new r.ArrayType("string[3][]",new r.PrimitiveType("string","string",n.Nothing),"string[3]",n.Nothing,[(0,n.Just)(3),n.Nothing])});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(_)}),it("should return the apdu for 'depthy' of type 'uint8[][][][]'",()=>{t=new x.SendEIP712StructDefinitionCommand({command:x.StructDefinitionCommand.Field,name:"depthy",type:new r.ArrayType("uint8[][][][]",new r.PrimitiveType("uint8","uint",(0,n.Just)(1)),"uint8[][][]",n.Nothing,[n.Nothing,n.Nothing,n.Nothing,n.Nothing])});const e=t.getApdu();expect(e.getRawApdu()).toStrictEqual(w)})}),describe("parseResponse",()=>{it("should parse the response",()=>{const e={statusCode:Uint8Array.from([144,0]),data:new Uint8Array},a=t.parseResponse(e);expect(a).toStrictEqual((0,o.CommandResultFactory)({data:void 0}))}),it("should throw an error if the response is not successful",()=>{const e={statusCode:Uint8Array.from([85,21]),data:new Uint8Array},a=t.parseResponse(e);expect((0,o.isSuccessCommandResult)(a)).toBe(!1)})})});
2
2
  //# sourceMappingURL=SendEIP712StructDefinitionCommand.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.ts"],
4
- "sourcesContent": ["import {\n type Command,\n CommandResultFactory,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\nimport { Just, Nothing } from \"purify-ts\";\n\nimport {\n ArrayType,\n PrimitiveType,\n StructType,\n} from \"@internal/typed-data/model/Types\";\n\nimport {\n SendEIP712StructDefinitionCommand,\n type SendEIP712StructDefinitionCommandArgs,\n StructDefinitionCommand,\n} from \"./SendEIP712StructDefinitionCommand\";\n\nconst EIP712_DEF_NAME_EIP712DOMAIN = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0x00, 0x0c, 0x45, 0x49, 0x50, 0x37, 0x31, 0x32, 0x44, 0x6f,\n 0x6d, 0x61, 0x69, 0x6e,\n]);\n\nconst EIP712_DEF_NAME_GROUP = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0x00, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70,\n]);\n\n// name string\nconst EIP712_DEF_FIELD_NAME_STRING = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x06, 0x05, 0x04, 0x6e, 0x61, 0x6d, 0x65,\n]);\n\n// version string\nconst EIP712_DEF_FIELD_VERSION_STRING = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x09, 0x05, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,\n 0x6e,\n]);\n\n// chainId uint256\nconst EIP712_DEF_FIELD_CHAINID_UINT256 = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0a, 0x42, 0x20, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e,\n 0x49, 0x64,\n]);\n\n// verifyingContract address\nconst EIP712_DEF_FIELD_VERIFYINGCONTRACT_ADDRESS = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x13, 0x03, 0x11, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79,\n 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74,\n]);\n\n// members Person[]\nconst EIP712_DEF_FIELD_MEMBERS_PERSON = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x12, 0x80, 0x06, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e,\n 0x01, 0x00, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73,\n]);\n\n// from Person\nconst EIP712_DEF_FIELD_FROM_PERSON = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0d, 0x00, 0x06, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e,\n 0x04, 0x66, 0x72, 0x6f, 0x6d,\n]);\n\n// wallets address[]\nconst EIP712_DEF_FIELD_WALLETS_ADDRESS = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0b, 0x83, 0x01, 0x00, 0x07, 0x77, 0x61, 0x6c, 0x6c,\n 0x65, 0x74, 0x73,\n]);\n\n// staticExtradata bytes\nconst EIP712_DEF_FIELD_STATICEXTRADATA_BYTES = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x11, 0x07, 0x0f, 0x73, 0x74, 0x61, 0x74, 0x69, 0x63,\n 0x45, 0x78, 0x74, 0x72, 0x61, 0x64, 0x61, 0x74, 0x61,\n]);\n\n// replacementPattern bytes\nconst EIP712_DEF_FIELD_REPLACEMENTPATTERN_BYTES = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x14, 0x07, 0x12, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63,\n 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e,\n]);\n\n// dataType bytes4\nconst EIP712_DEF_FIELD_DATA_TYPE_BYTES4 = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0b, 0x46, 0x04, 0x08, 0x64, 0x61, 0x74, 0x61, 0x54,\n 0x79, 0x70, 0x65,\n]);\n\n// document string[3][]\nconst EIP712_DEF_FIELD_DOCUMENT_STRING = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0e, 0x85, 0x02, 0x01, 0x03, 0x00, 0x08, 0x64, 0x6f,\n 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,\n]);\n\n// depthy uint8[][][][]\nconst EIP712_DEF_FIELD_DEPTHY_UINT8 = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0e, 0xc2, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x06,\n 0x64, 0x65, 0x70, 0x74, 0x68, 0x79,\n]);\n\n// TODO: find examples for bool and int types.\n\ndescribe(\"SendEIP712StructDefinitionCommand\", () => {\n let command: Command<void, SendEIP712StructDefinitionCommandArgs>;\n\n describe(\"getApdu\", () => {\n it(\"should return the apdu for 'EIP712Domain' name definition\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Name,\n name: \"EIP712Domain\",\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_NAME_EIP712DOMAIN);\n });\n\n it(\"should return the apdu for 'Group' name definition\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Name,\n name: \"Group\",\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_NAME_GROUP);\n });\n\n it(\"should return the apdu for 'name' of type 'string'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"name\",\n type: new PrimitiveType(\"string\", \"string\", Nothing),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_NAME_STRING);\n });\n\n it(\"should return the apdu for 'version' of type 'string'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"version\",\n type: new PrimitiveType(\"string\", \"string\", Nothing),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_VERSION_STRING);\n });\n\n it(\"should return the apdu for 'chainId' of type 'uint256'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"chainId\",\n type: new PrimitiveType(\"uint256\", \"uint\", Just(32)),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_CHAINID_UINT256);\n });\n\n it(\"should return the apdu for 'verifyingContract' of type 'address'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"verifyingContract\",\n type: new PrimitiveType(\"address\", \"address\", Nothing),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n EIP712_DEF_FIELD_VERIFYINGCONTRACT_ADDRESS,\n );\n });\n\n it(\"should return the apdu for 'members' of type 'Person[]'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"members\",\n type: new ArrayType(\n \"Person[]\",\n new StructType(\"Person\"),\n \"Person\",\n Nothing,\n [Nothing],\n ),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_MEMBERS_PERSON);\n });\n\n it(\"should return the apdu for 'from' of type 'Person'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"from\",\n type: new StructType(\"Person\"),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_FROM_PERSON);\n });\n\n it(\"should return the apdu for 'wallets' of type 'address[]'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"wallets\",\n type: new ArrayType(\n \"address[]\",\n new PrimitiveType(\"address\", \"address\", Nothing),\n \"address\",\n Nothing,\n [Nothing],\n ),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_WALLETS_ADDRESS);\n });\n\n it(\"should return the apdu for 'staticExtradata' of type 'bytes'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"staticExtradata\",\n type: new PrimitiveType(\"bytes\", \"bytes\", Nothing),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n EIP712_DEF_FIELD_STATICEXTRADATA_BYTES,\n );\n });\n\n it(\"should return the apdu for 'replacementPattern' of type 'bytes'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"replacementPattern\",\n type: new PrimitiveType(\"bytes\", \"bytes\", Nothing),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n EIP712_DEF_FIELD_REPLACEMENTPATTERN_BYTES,\n );\n });\n\n it(\"should return the apdu for 'dataType' of type 'bytes4'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"dataType\",\n type: new PrimitiveType(\"bytes4\", \"bytes\", Just(4)),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n EIP712_DEF_FIELD_DATA_TYPE_BYTES4,\n );\n });\n\n it(\"should return the apdu for 'document' of type 'string[3][]'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"document\",\n type: new ArrayType(\n \"string[3][]\",\n new PrimitiveType(\"string\", \"string\", Nothing),\n \"string[3]\",\n Nothing,\n [Just(3), Nothing],\n ),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_DOCUMENT_STRING);\n });\n\n it(\"should return the apdu for 'depthy' of type 'uint8[][][][]'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"depthy\",\n type: new ArrayType(\n \"uint8[][][][]\",\n new PrimitiveType(\"uint8\", \"uint\", Just(1)),\n \"uint8[][][]\",\n Nothing,\n [Nothing, Nothing, Nothing, Nothing],\n ),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_DEPTHY_UINT8);\n });\n });\n\n describe(\"parseResponse\", () => {\n it(\"should parse the response\", () => {\n // GIVEN\n const response = {\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: new Uint8Array(),\n };\n\n // WHEN\n const parsedResponse = command.parseResponse(response);\n\n // THEN\n expect(parsedResponse).toStrictEqual(\n CommandResultFactory({ data: undefined }),\n );\n });\n\n it(\"should throw an error if the response is not successful\", () => {\n // GIVEN\n const response = {\n statusCode: Uint8Array.from([0x55, 0x15]),\n data: new Uint8Array(),\n };\n\n // WHEN\n const result = command.parseResponse(response);\n\n // THEN\n expect(isSuccessCommandResult(result)).toBe(false);\n });\n });\n});\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import {\n type Command,\n CommandResultFactory,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\nimport { Just, Nothing } from \"purify-ts\";\n\nimport {\n ArrayType,\n PrimitiveType,\n StructType,\n} from \"@internal/typed-data/model/Types\";\n\nimport { type EthErrorCodes } from \"./utils/ethAppErrors\";\nimport {\n SendEIP712StructDefinitionCommand,\n type SendEIP712StructDefinitionCommandArgs,\n StructDefinitionCommand,\n} from \"./SendEIP712StructDefinitionCommand\";\n\nconst EIP712_DEF_NAME_EIP712DOMAIN = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0x00, 0x0c, 0x45, 0x49, 0x50, 0x37, 0x31, 0x32, 0x44, 0x6f,\n 0x6d, 0x61, 0x69, 0x6e,\n]);\n\nconst EIP712_DEF_NAME_GROUP = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0x00, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70,\n]);\n\n// name string\nconst EIP712_DEF_FIELD_NAME_STRING = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x06, 0x05, 0x04, 0x6e, 0x61, 0x6d, 0x65,\n]);\n\n// version string\nconst EIP712_DEF_FIELD_VERSION_STRING = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x09, 0x05, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,\n 0x6e,\n]);\n\n// chainId uint256\nconst EIP712_DEF_FIELD_CHAINID_UINT256 = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0a, 0x42, 0x20, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e,\n 0x49, 0x64,\n]);\n\n// verifyingContract address\nconst EIP712_DEF_FIELD_VERIFYINGCONTRACT_ADDRESS = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x13, 0x03, 0x11, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79,\n 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74,\n]);\n\n// members Person[]\nconst EIP712_DEF_FIELD_MEMBERS_PERSON = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x12, 0x80, 0x06, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e,\n 0x01, 0x00, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73,\n]);\n\n// from Person\nconst EIP712_DEF_FIELD_FROM_PERSON = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0d, 0x00, 0x06, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e,\n 0x04, 0x66, 0x72, 0x6f, 0x6d,\n]);\n\n// wallets address[]\nconst EIP712_DEF_FIELD_WALLETS_ADDRESS = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0b, 0x83, 0x01, 0x00, 0x07, 0x77, 0x61, 0x6c, 0x6c,\n 0x65, 0x74, 0x73,\n]);\n\n// staticExtradata bytes\nconst EIP712_DEF_FIELD_STATICEXTRADATA_BYTES = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x11, 0x07, 0x0f, 0x73, 0x74, 0x61, 0x74, 0x69, 0x63,\n 0x45, 0x78, 0x74, 0x72, 0x61, 0x64, 0x61, 0x74, 0x61,\n]);\n\n// replacementPattern bytes\nconst EIP712_DEF_FIELD_REPLACEMENTPATTERN_BYTES = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x14, 0x07, 0x12, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63,\n 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e,\n]);\n\n// dataType bytes4\nconst EIP712_DEF_FIELD_DATA_TYPE_BYTES4 = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0b, 0x46, 0x04, 0x08, 0x64, 0x61, 0x74, 0x61, 0x54,\n 0x79, 0x70, 0x65,\n]);\n\n// document string[3][]\nconst EIP712_DEF_FIELD_DOCUMENT_STRING = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0e, 0x85, 0x02, 0x01, 0x03, 0x00, 0x08, 0x64, 0x6f,\n 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,\n]);\n\n// depthy uint8[][][][]\nconst EIP712_DEF_FIELD_DEPTHY_UINT8 = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0e, 0xc2, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x06,\n 0x64, 0x65, 0x70, 0x74, 0x68, 0x79,\n]);\n\n// TODO: find examples for bool and int types.\n\ndescribe(\"SendEIP712StructDefinitionCommand\", () => {\n let command: Command<\n void,\n SendEIP712StructDefinitionCommandArgs,\n EthErrorCodes\n >;\n\n describe(\"getApdu\", () => {\n it(\"should return the apdu for 'EIP712Domain' name definition\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Name,\n name: \"EIP712Domain\",\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_NAME_EIP712DOMAIN);\n });\n\n it(\"should return the apdu for 'Group' name definition\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Name,\n name: \"Group\",\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_NAME_GROUP);\n });\n\n it(\"should return the apdu for 'name' of type 'string'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"name\",\n type: new PrimitiveType(\"string\", \"string\", Nothing),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_NAME_STRING);\n });\n\n it(\"should return the apdu for 'version' of type 'string'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"version\",\n type: new PrimitiveType(\"string\", \"string\", Nothing),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_VERSION_STRING);\n });\n\n it(\"should return the apdu for 'chainId' of type 'uint256'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"chainId\",\n type: new PrimitiveType(\"uint256\", \"uint\", Just(32)),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_CHAINID_UINT256);\n });\n\n it(\"should return the apdu for 'verifyingContract' of type 'address'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"verifyingContract\",\n type: new PrimitiveType(\"address\", \"address\", Nothing),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n EIP712_DEF_FIELD_VERIFYINGCONTRACT_ADDRESS,\n );\n });\n\n it(\"should return the apdu for 'members' of type 'Person[]'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"members\",\n type: new ArrayType(\n \"Person[]\",\n new StructType(\"Person\"),\n \"Person\",\n Nothing,\n [Nothing],\n ),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_MEMBERS_PERSON);\n });\n\n it(\"should return the apdu for 'from' of type 'Person'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"from\",\n type: new StructType(\"Person\"),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_FROM_PERSON);\n });\n\n it(\"should return the apdu for 'wallets' of type 'address[]'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"wallets\",\n type: new ArrayType(\n \"address[]\",\n new PrimitiveType(\"address\", \"address\", Nothing),\n \"address\",\n Nothing,\n [Nothing],\n ),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_WALLETS_ADDRESS);\n });\n\n it(\"should return the apdu for 'staticExtradata' of type 'bytes'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"staticExtradata\",\n type: new PrimitiveType(\"bytes\", \"bytes\", Nothing),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n EIP712_DEF_FIELD_STATICEXTRADATA_BYTES,\n );\n });\n\n it(\"should return the apdu for 'replacementPattern' of type 'bytes'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"replacementPattern\",\n type: new PrimitiveType(\"bytes\", \"bytes\", Nothing),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n EIP712_DEF_FIELD_REPLACEMENTPATTERN_BYTES,\n );\n });\n\n it(\"should return the apdu for 'dataType' of type 'bytes4'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"dataType\",\n type: new PrimitiveType(\"bytes4\", \"bytes\", Just(4)),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n EIP712_DEF_FIELD_DATA_TYPE_BYTES4,\n );\n });\n\n it(\"should return the apdu for 'document' of type 'string[3][]'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"document\",\n type: new ArrayType(\n \"string[3][]\",\n new PrimitiveType(\"string\", \"string\", Nothing),\n \"string[3]\",\n Nothing,\n [Just(3), Nothing],\n ),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_DOCUMENT_STRING);\n });\n\n it(\"should return the apdu for 'depthy' of type 'uint8[][][][]'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"depthy\",\n type: new ArrayType(\n \"uint8[][][][]\",\n new PrimitiveType(\"uint8\", \"uint\", Just(1)),\n \"uint8[][][]\",\n Nothing,\n [Nothing, Nothing, Nothing, Nothing],\n ),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_DEPTHY_UINT8);\n });\n });\n\n describe(\"parseResponse\", () => {\n it(\"should parse the response\", () => {\n // GIVEN\n const response = {\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: new Uint8Array(),\n };\n\n // WHEN\n const parsedResponse = command.parseResponse(response);\n\n // THEN\n expect(parsedResponse).toStrictEqual(\n CommandResultFactory({ data: undefined }),\n );\n });\n\n it(\"should throw an error if the response is not successful\", () => {\n // GIVEN\n const response = {\n statusCode: Uint8Array.from([0x55, 0x15]),\n data: new Uint8Array(),\n };\n\n // WHEN\n const result = command.parseResponse(response);\n\n // THEN\n expect(isSuccessCommandResult(result)).toBe(false);\n });\n });\n});\n"],
5
+ "mappings": "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",
6
6
  "names": ["import_device_management_kit", "import_purify_ts", "import_Types", "import_SendEIP712StructDefinitionCommand", "EIP712_DEF_NAME_EIP712DOMAIN", "EIP712_DEF_NAME_GROUP", "EIP712_DEF_FIELD_NAME_STRING", "EIP712_DEF_FIELD_VERSION_STRING", "EIP712_DEF_FIELD_CHAINID_UINT256", "EIP712_DEF_FIELD_VERIFYINGCONTRACT_ADDRESS", "EIP712_DEF_FIELD_MEMBERS_PERSON", "EIP712_DEF_FIELD_FROM_PERSON", "EIP712_DEF_FIELD_WALLETS_ADDRESS", "EIP712_DEF_FIELD_STATICEXTRADATA_BYTES", "EIP712_DEF_FIELD_REPLACEMENTPATTERN_BYTES", "EIP712_DEF_FIELD_DATA_TYPE_BYTES4", "EIP712_DEF_FIELD_DOCUMENT_STRING", "EIP712_DEF_FIELD_DEPTHY_UINT8", "command", "apdu", "response", "parsedResponse", "result"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var u=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var i=Object.prototype.hasOwnProperty;var o=(r,e)=>{for(var d in e)u(r,d,{get:e[d],enumerable:!0})},l=(r,e,d,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of m(e))!i.call(r,s)&&s!==d&&u(r,s,{get:()=>e[s],enumerable:!(a=p(e,s))||a.enumerable});return r};var A=r=>l(u({},"__esModule",{value:!0}),r);var g={};o(g,{SendEIP712StructImplemCommand:()=>c,StructImplemType:()=>n});module.exports=A(g);var t=require("@ledgerhq/device-management-kit"),n=(a=>(a[a.ROOT=0]="ROOT",a[a.ARRAY=15]="ARRAY",a[a.FIELD=255]="FIELD",a))(n||{});class c{constructor(e){this.args=e}getApdu(){const e={cla:224,ins:28,p1:this.args.type!=255||this.args.value.isLastChunk?0:1,p2:this.args.type};switch(this.args.type){case 0:return new t.ApduBuilder(e).addAsciiStringToData(this.args.value).build();case 15:return new t.ApduBuilder(e).add8BitUIntToData(this.args.value).build();case 255:return new t.ApduBuilder(e).addBufferToData(this.args.value.data).build()}}parseResponse(e){return t.CommandUtils.isSuccessResponse(e)?(0,t.CommandResultFactory)({data:void 0}):(0,t.CommandResultFactory)({error:t.GlobalCommandErrorHandler.handle(e)})}}0&&(module.exports={SendEIP712StructImplemCommand,StructImplemType});
1
+ "use strict";var p=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var A=Object.prototype.hasOwnProperty;var E=(t,r)=>{for(var s in r)p(t,s,{get:r[s],enumerable:!0})},y=(t,r,s,e)=>{if(r&&typeof r=="object"||typeof r=="function")for(let o of l(r))!A.call(t,o)&&o!==s&&p(t,o,{get:()=>r[o],enumerable:!(e=i(r,o))||e.enumerable});return t};var c=t=>y(p({},"__esModule",{value:!0}),t);var R={};E(R,{SendEIP712StructImplemCommand:()=>g,StructImplemType:()=>n});module.exports=c(R);var a=require("@ledgerhq/device-management-kit"),m=require("@ledgerhq/signer-utils"),u=require("purify-ts"),d=require("./utils/ethAppErrors"),n=(e=>(e[e.ROOT=0]="ROOT",e[e.ARRAY=15]="ARRAY",e[e.FIELD=255]="FIELD",e))(n||{});class g{constructor(r){this.args=r}errorHelper=new m.CommandErrorHelper(d.ETH_APP_ERRORS,d.EthAppCommandErrorFactory);getApdu(){const r={cla:224,ins:28,p1:this.args.type!=255||this.args.value.isLastChunk?0:1,p2:this.args.type};switch(this.args.type){case 0:return new a.ApduBuilder(r).addAsciiStringToData(this.args.value).build();case 15:return new a.ApduBuilder(r).add8BitUIntToData(this.args.value).build();case 255:return new a.ApduBuilder(r).addBufferToData(this.args.value.data).build()}}parseResponse(r){return u.Maybe.fromNullable(this.errorHelper.getError(r)).orDefault((0,a.CommandResultFactory)({data:void 0}))}}0&&(module.exports={SendEIP712StructImplemCommand,StructImplemType});
2
2
  //# sourceMappingURL=SendEIP712StructImplemCommand.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/SendEIP712StructImplemCommand.ts"],
4
- "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#eip712-send-struct-implementation\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 StructImplemType {\n ROOT = 0x00,\n ARRAY = 0x0f,\n FIELD = 0xff,\n}\n\nexport type SendEIP712StructImplemCommandArgs =\n | {\n type: StructImplemType.ROOT;\n value: string;\n }\n | {\n type: StructImplemType.ARRAY;\n value: number;\n }\n | {\n type: StructImplemType.FIELD;\n value: {\n /**\n * The chunk of the data that is ready to send, that is to say, prefixed by its length in two bytes.\n * Eg. 01020304 => [0x00, 0x04, 0x01, 0x02, 0x03, 0x04] where [0x00, 0x04] are the length of the data.\n */\n data: Uint8Array;\n isLastChunk: boolean;\n };\n };\n\nexport class SendEIP712StructImplemCommand implements Command<void> {\n constructor(private readonly args: SendEIP712StructImplemCommandArgs) {}\n\n getApdu(): Apdu {\n const apduBuilderArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x1c,\n p1:\n this.args.type != StructImplemType.FIELD || this.args.value.isLastChunk\n ? 0x00\n : 0x01,\n p2: this.args.type,\n };\n switch (this.args.type) {\n case StructImplemType.ROOT:\n return new ApduBuilder(apduBuilderArgs)\n .addAsciiStringToData(this.args.value)\n .build();\n case StructImplemType.ARRAY:\n return new ApduBuilder(apduBuilderArgs)\n .add8BitUIntToData(this.args.value)\n .build();\n case StructImplemType.FIELD:\n return new ApduBuilder(apduBuilderArgs)\n .addBufferToData(this.args.value.data)\n .build();\n }\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({ data: undefined });\n }\n}\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,mCAAAE,EAAA,qBAAAC,IAAA,eAAAC,EAAAJ,GACA,IAAAK,EAUO,2CAEKF,OACVA,IAAA,KAAO,GAAP,OACAA,IAAA,MAAQ,IAAR,QACAA,IAAA,MAAQ,KAAR,QAHUA,OAAA,IA2BL,MAAMD,CAAuD,CAClE,YAA6BI,EAAyC,CAAzC,UAAAA,CAA0C,CAEvE,SAAgB,CACd,MAAMC,EAAmC,CACvC,IAAK,IACL,IAAK,GACL,GACE,KAAK,KAAK,MAAQ,KAA0B,KAAK,KAAK,MAAM,YACxD,EACA,EACN,GAAI,KAAK,KAAK,IAChB,EACA,OAAQ,KAAK,KAAK,KAAM,CACtB,IAAK,GACH,OAAO,IAAI,cAAYA,CAAe,EACnC,qBAAqB,KAAK,KAAK,KAAK,EACpC,MAAM,EACX,IAAK,IACH,OAAO,IAAI,cAAYA,CAAe,EACnC,kBAAkB,KAAK,KAAK,KAAK,EACjC,MAAM,EACX,IAAK,KACH,OAAO,IAAI,cAAYA,CAAe,EACnC,gBAAgB,KAAK,KAAK,MAAM,IAAI,EACpC,MAAM,CACb,CACF,CAEA,cAAcC,EAA6C,CACzD,OAAK,eAAa,kBAAkBA,CAAQ,KAKrC,wBAAqB,CAAE,KAAM,MAAU,CAAC,KAJtC,wBAAqB,CAC1B,MAAO,4BAA0B,OAAOA,CAAQ,CAClD,CAAC,CAGL,CACF",
6
- "names": ["SendEIP712StructImplemCommand_exports", "__export", "SendEIP712StructImplemCommand", "StructImplemType", "__toCommonJS", "import_device_management_kit", "args", "apduBuilderArgs", "response"]
4
+ "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#eip712-send-struct-implementation\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 StructImplemType {\n ROOT = 0x00,\n ARRAY = 0x0f,\n FIELD = 0xff,\n}\n\nexport type SendEIP712StructImplemCommandArgs =\n | {\n type: StructImplemType.ROOT;\n value: string;\n }\n | {\n type: StructImplemType.ARRAY;\n value: number;\n }\n | {\n type: StructImplemType.FIELD;\n value: {\n /**\n * The chunk of the data that is ready to send, that is to say, prefixed by its length in two bytes.\n * Eg. 01020304 => [0x00, 0x04, 0x01, 0x02, 0x03, 0x04] where [0x00, 0x04] are the length of the data.\n */\n data: Uint8Array;\n isLastChunk: boolean;\n };\n };\n\nexport class SendEIP712StructImplemCommand\n implements Command<void, SendEIP712StructImplemCommandArgs, EthErrorCodes>\n{\n private readonly errorHelper = new CommandErrorHelper<void, EthErrorCodes>(\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n );\n constructor(private readonly args: SendEIP712StructImplemCommandArgs) {}\n\n getApdu(): Apdu {\n const apduBuilderArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x1c,\n p1:\n this.args.type != StructImplemType.FIELD || this.args.value.isLastChunk\n ? 0x00\n : 0x01,\n p2: this.args.type,\n };\n switch (this.args.type) {\n case StructImplemType.ROOT:\n return new ApduBuilder(apduBuilderArgs)\n .addAsciiStringToData(this.args.value)\n .build();\n case StructImplemType.ARRAY:\n return new ApduBuilder(apduBuilderArgs)\n .add8BitUIntToData(this.args.value)\n .build();\n case StructImplemType.FIELD:\n return new ApduBuilder(apduBuilderArgs)\n .addBufferToData(this.args.value.data)\n .build();\n }\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": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,mCAAAE,EAAA,qBAAAC,IAAA,eAAAC,EAAAJ,GACA,IAAAK,EAQO,2CACPC,EAAmC,kCACnCC,EAAsB,qBAEtBC,EAIO,gCAEKL,OACVA,IAAA,KAAO,GAAP,OACAA,IAAA,MAAQ,IAAR,QACAA,IAAA,MAAQ,KAAR,QAHUA,OAAA,IA2BL,MAAMD,CAEb,CAKE,YAA6BO,EAAyC,CAAzC,UAAAA,CAA0C,CAJtD,YAAc,IAAI,qBACjC,iBACA,2BACF,EAGA,SAAgB,CACd,MAAMC,EAAmC,CACvC,IAAK,IACL,IAAK,GACL,GACE,KAAK,KAAK,MAAQ,KAA0B,KAAK,KAAK,MAAM,YACxD,EACA,EACN,GAAI,KAAK,KAAK,IAChB,EACA,OAAQ,KAAK,KAAK,KAAM,CACtB,IAAK,GACH,OAAO,IAAI,cAAYA,CAAe,EACnC,qBAAqB,KAAK,KAAK,KAAK,EACpC,MAAM,EACX,IAAK,IACH,OAAO,IAAI,cAAYA,CAAe,EACnC,kBAAkB,KAAK,KAAK,KAAK,EACjC,MAAM,EACX,IAAK,KACH,OAAO,IAAI,cAAYA,CAAe,EACnC,gBAAgB,KAAK,KAAK,MAAM,IAAI,EACpC,MAAM,CACb,CACF,CAEA,cAAcC,EAA4D,CACxE,OAAO,QAAM,aAAa,KAAK,YAAY,SAASA,CAAQ,CAAC,EAAE,aAC7D,wBAAqB,CAAE,KAAM,MAAU,CAAC,CAC1C,CACF,CACF",
6
+ "names": ["SendEIP712StructImplemCommand_exports", "__export", "SendEIP712StructImplemCommand", "StructImplemType", "__toCommonJS", "import_device_management_kit", "import_signer_utils", "import_purify_ts", "import_ethAppErrors", "args", "apduBuilderArgs", "response"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var s=Object.defineProperty;var l=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var u=Object.prototype.hasOwnProperty;var g=(n,r)=>{for(var o in r)s(n,o,{get:r[o],enumerable:!0})},p=(n,r,o,t)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of i(r))!u.call(n,a)&&a!==o&&s(n,a,{get:()=>r[a],enumerable:!(t=l(r,a))||t.enumerable});return n};var C=n=>p(s({},"__esModule",{value:!0}),n);var x={};g(x,{SetExternalPluginCommand:()=>E,SetExternalPluginCommandError:()=>m});module.exports=C(x);var e=require("@ledgerhq/device-management-kit");const d={"6a80":{message:"Invalid plugin name size"},6984:{message:"Plugin not installed on device"},"6d00":{message:"Version of Eth app not supported"}};class m extends e.DeviceExchangeError{constructor({message:r,errorCode:o}){super({tag:"SetExternalPluginCommandError",message:r,errorCode:o})}}class E{constructor(r){this.args=r}getApdu(){const r={cla:224,ins:18,p1:0,p2:0};return new e.ApduBuilder(r).addHexaStringToData(this.args.payload).addHexaStringToData(this.args.signature??"").build()}parseResponse(r){if(e.CommandUtils.isSuccessResponse(r))return(0,e.CommandResultFactory)({data:void 0});const t=new e.ApduParser(r).encodeToHexaString(r.statusCode);return(0,e.isCommandErrorCode)(t,d)?(0,e.CommandResultFactory)({error:new m({...d[t],errorCode:t})}):(0,e.CommandResultFactory)({error:e.GlobalCommandErrorHandler.handle(r)})}}0&&(module.exports={SetExternalPluginCommand,SetExternalPluginCommandError});
1
+ "use strict";var n=Object.defineProperty;var l=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var u=Object.prototype.hasOwnProperty;var g=(e,r)=>{for(var o in r)n(e,o,{get:r[o],enumerable:!0})},E=(e,r,o,s)=>{if(r&&typeof r=="object"||typeof r=="function")for(let t of i(r))!u.call(e,t)&&t!==o&&n(e,t,{get:()=>r[t],enumerable:!(s=l(r,t))||s.enumerable});return e};var A=e=>E(n({},"__esModule",{value:!0}),e);var y={};g(y,{SetExternalPluginCommand:()=>C});module.exports=A(y);var a=require("@ledgerhq/device-management-kit"),p=require("@ledgerhq/signer-utils"),m=require("purify-ts"),d=require("./utils/ethAppErrors");class C{constructor(r){this.args=r}errorHelper=new p.CommandErrorHelper(d.ETH_APP_ERRORS,d.EthAppCommandErrorFactory);getApdu(){const r={cla:224,ins:18,p1:0,p2:0};return new a.ApduBuilder(r).addHexaStringToData(this.args.payload).addHexaStringToData(this.args.signature??"").build()}parseResponse(r){return m.Maybe.fromNullable(this.errorHelper.getError(r)).orDefault((0,a.CommandResultFactory)({data:void 0}))}}0&&(module.exports={SetExternalPluginCommand});
2
2
  //# sourceMappingURL=SetExternalPluginCommand.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/SetExternalPluginCommand.ts"],
4
- "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#set-external-plugin\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\ntype SetExternalPluginCommandArgs = {\n payload: string;\n signature?: string;\n};\n\nexport type SetExternalPluginCommandErrorCodes = \"6a80\" | \"6984\" | \"6d00\";\n\nconst SET_EXTERNAL_PLUGIN_ERRORS: CommandErrors<SetExternalPluginCommandErrorCodes> =\n {\n \"6a80\": { message: \"Invalid plugin name size\" },\n \"6984\": { message: \"Plugin not installed on device\" },\n \"6d00\": { message: \"Version of Eth app not supported\" },\n };\n\nexport class SetExternalPluginCommandError extends DeviceExchangeError<SetExternalPluginCommandErrorCodes> {\n constructor({\n message,\n errorCode,\n }: CommandErrorArgs<SetExternalPluginCommandErrorCodes>) {\n super({ tag: \"SetExternalPluginCommandError\", message, errorCode });\n }\n}\n\nexport class SetExternalPluginCommand\n implements\n Command<\n void,\n SetExternalPluginCommandArgs,\n SetExternalPluginCommandErrorCodes\n >\n{\n constructor(private readonly args: SetExternalPluginCommandArgs) {}\n\n getApdu(): Apdu {\n const setExternalPluginBuilderArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x12,\n p1: 0x00,\n p2: 0x00,\n };\n return (\n new ApduBuilder(setExternalPluginBuilderArgs)\n .addHexaStringToData(this.args.payload)\n /**\n * The signature is normally integrated in the payload, but keeping this step for safety reasons and will be removed in the future.\n */\n .addHexaStringToData(this.args.signature ?? \"\")\n .build()\n );\n }\n\n parseResponse(\n apduResponse: ApduResponse,\n ): CommandResult<void, SetExternalPluginCommandErrorCodes> {\n if (CommandUtils.isSuccessResponse(apduResponse)) {\n return CommandResultFactory({ data: undefined });\n }\n\n const parser = new ApduParser(apduResponse);\n const statusCodeHex = parser.encodeToHexaString(apduResponse.statusCode);\n\n if (isCommandErrorCode(statusCodeHex, SET_EXTERNAL_PLUGIN_ERRORS)) {\n return CommandResultFactory({\n error: new SetExternalPluginCommandError({\n ...SET_EXTERNAL_PLUGIN_ERRORS[statusCodeHex],\n errorCode: statusCodeHex,\n }),\n });\n }\n return CommandResultFactory({\n error: GlobalCommandErrorHandler.handle(apduResponse),\n });\n }\n}\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,8BAAAE,EAAA,kCAAAC,IAAA,eAAAC,EAAAJ,GACA,IAAAK,EAeO,2CASP,MAAMC,EACJ,CACE,OAAQ,CAAE,QAAS,0BAA2B,EAC9C,KAAQ,CAAE,QAAS,gCAAiC,EACpD,OAAQ,CAAE,QAAS,kCAAmC,CACxD,EAEK,MAAMH,UAAsC,qBAAwD,CACzG,YAAY,CACV,QAAAI,EACA,UAAAC,CACF,EAAyD,CACvD,MAAM,CAAE,IAAK,gCAAiC,QAAAD,EAAS,UAAAC,CAAU,CAAC,CACpE,CACF,CAEO,MAAMN,CAOb,CACE,YAA6BO,EAAoC,CAApC,UAAAA,CAAqC,CAElE,SAAgB,CACd,MAAMC,EAAgD,CACpD,IAAK,IACL,IAAK,GACL,GAAI,EACJ,GAAI,CACN,EACA,OACE,IAAI,cAAYA,CAA4B,EACzC,oBAAoB,KAAK,KAAK,OAAO,EAIrC,oBAAoB,KAAK,KAAK,WAAa,EAAE,EAC7C,MAAM,CAEb,CAEA,cACEC,EACyD,CACzD,GAAI,eAAa,kBAAkBA,CAAY,EAC7C,SAAO,wBAAqB,CAAE,KAAM,MAAU,CAAC,EAIjD,MAAMC,EADS,IAAI,aAAWD,CAAY,EACb,mBAAmBA,EAAa,UAAU,EAEvE,SAAI,sBAAmBC,EAAeN,CAA0B,KACvD,wBAAqB,CAC1B,MAAO,IAAIH,EAA8B,CACvC,GAAGG,EAA2BM,CAAa,EAC3C,UAAWA,CACb,CAAC,CACH,CAAC,KAEI,wBAAqB,CAC1B,MAAO,4BAA0B,OAAOD,CAAY,CACtD,CAAC,CACH,CACF",
6
- "names": ["SetExternalPluginCommand_exports", "__export", "SetExternalPluginCommand", "SetExternalPluginCommandError", "__toCommonJS", "import_device_management_kit", "SET_EXTERNAL_PLUGIN_ERRORS", "message", "errorCode", "args", "setExternalPluginBuilderArgs", "apduResponse", "statusCodeHex"]
4
+ "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#set-external-plugin\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\ntype SetExternalPluginCommandArgs = {\n payload: string;\n signature?: string;\n};\n\nexport class SetExternalPluginCommand\n implements Command<void, SetExternalPluginCommandArgs, EthErrorCodes>\n{\n constructor(private readonly args: SetExternalPluginCommandArgs) {}\n private readonly errorHelper = new CommandErrorHelper<void, EthErrorCodes>(\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n );\n\n getApdu(): Apdu {\n const setExternalPluginBuilderArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x12,\n p1: 0x00,\n p2: 0x00,\n };\n return (\n new ApduBuilder(setExternalPluginBuilderArgs)\n .addHexaStringToData(this.args.payload)\n /**\n * The signature is normally integrated in the payload, but keeping this step for safety reasons and will be removed in the future.\n */\n .addHexaStringToData(this.args.signature ?? \"\")\n .build()\n );\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": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,8BAAAE,IAAA,eAAAC,EAAAH,GACA,IAAAI,EAQO,2CACPC,EAAmC,kCACnCC,EAAsB,qBAEtBC,EAIO,gCAOA,MAAML,CAEb,CACE,YAA6BM,EAAoC,CAApC,UAAAA,CAAqC,CACjD,YAAc,IAAI,qBACjC,iBACA,2BACF,EAEA,SAAgB,CACd,MAAMC,EAAgD,CACpD,IAAK,IACL,IAAK,GACL,GAAI,EACJ,GAAI,CACN,EACA,OACE,IAAI,cAAYA,CAA4B,EACzC,oBAAoB,KAAK,KAAK,OAAO,EAIrC,oBAAoB,KAAK,KAAK,WAAa,EAAE,EAC7C,MAAM,CAEb,CAEA,cACEC,EACoC,CACpC,OAAO,QAAM,aACX,KAAK,YAAY,SAASA,CAAY,CACxC,EAAE,aAAU,wBAAqB,CAAE,KAAM,MAAU,CAAC,CAAC,CACvD,CACF",
6
+ "names": ["SetExternalPluginCommand_exports", "__export", "SetExternalPluginCommand", "__toCommonJS", "import_device_management_kit", "import_signer_utils", "import_purify_ts", "import_ethAppErrors", "args", "setExternalPluginBuilderArgs", "apduResponse"]
7
7
  }
@@ -1,7 +1,7 @@
1
- "use strict";var e=require("@ledgerhq/device-management-kit"),r=require("../../app-binder/command/SetExternalPluginCommand");const n=[8,80,97,114,97,115,119,97,112,222,241,113,254,72,207,1,21,177,216,11,136,220,142,171,89,23,111,238,87,169,5,156,187],s=[4,130,187,242,243,79,54,123,46,91,194,24,71,182,86,111,33,240,151,107,34,211,56,138,154,94,68,106,198,45,37,207,114,91,98,162,85,91,45,212,100,164,218,10,178,244,213,6,130,5,67,175,29,36,36,112,177,177,169,105,162,117,120,243,83],d=[224,18,0,0,n.length+s.length,...n,...s];describe("Set External plugin",()=>{describe("getApdu",()=>{it("should retrieve correct apdu",()=>{const t=new r.SetExternalPluginCommand({payload:n.map(x=>x.toString(16).padStart(2,"0")).join(""),signature:s.map(x=>x.toString(16).padStart(2,"0")).join("")}).getApdu();expect(t.getRawApdu()).toStrictEqual(Uint8Array.from(d))})}),describe("parseResponse",()=>{it.each`
1
+ "use strict";var e=require("@ledgerhq/device-management-kit"),a=require("../../app-binder/command/SetExternalPluginCommand"),n=require("./utils/ethAppErrors");const s=[8,80,97,114,97,115,119,97,112,222,241,113,254,72,207,1,21,177,216,11,136,220,142,171,89,23,111,238,87,169,5,156,187],d=[4,130,187,242,243,79,54,123,46,91,194,24,71,182,86,111,33,240,151,107,34,211,56,138,154,94,68,106,198,45,37,207,114,91,98,162,85,91,45,212,100,164,218,10,178,244,213,6,130,5,67,175,29,36,36,112,177,177,169,105,162,117,120,243,83],c=[224,18,0,0,s.length+d.length,...s,...d];describe("Set External plugin",()=>{describe("getApdu",()=>{it("should retrieve correct apdu",()=>{const r=new a.SetExternalPluginCommand({payload:s.map(x=>x.toString(16).padStart(2,"0")).join(""),signature:d.map(x=>x.toString(16).padStart(2,"0")).join("")}).getApdu();expect(r.getRawApdu()).toStrictEqual(Uint8Array.from(c))})}),describe("parseResponse",()=>{it.each`
2
2
  apduResponseCode | errorCode
3
3
  ${Uint8Array.from([106,128])} | ${"6a80"}
4
4
  ${Uint8Array.from([105,132])} | ${"6984"}
5
5
  ${Uint8Array.from([109,0])} | ${"6d00"}
6
- `("should return an error for the response status code $errorCode",({apduResponseCode:o,errorCode:t})=>{const x=new e.ApduResponse({data:Uint8Array.from([]),statusCode:o}),a=new r.SetExternalPluginCommand({payload:"",signature:""}).parseResponse(x);expect((0,e.isSuccessCommandResult)(a)).toBe(!1),(0,e.isSuccessCommandResult)(a)||(expect(a.error).toBeInstanceOf(r.SetExternalPluginCommandError),a.error instanceof r.SetExternalPluginCommandError&&expect(a.error.errorCode).toStrictEqual(t))}),it("should return a global error",()=>{const o=new r.SetExternalPluginCommand({payload:"",signature:""}),t=new e.ApduResponse({statusCode:Uint8Array.from([85,21]),data:Uint8Array.from([])}),x=o.parseResponse(t);expect((0,e.isSuccessCommandResult)(x)).toBe(!1),(0,e.isSuccessCommandResult)(x)||(expect(x.error).toBeInstanceOf(e.GlobalCommandError),x.error instanceof e.GlobalCommandError&&expect(x.error.errorCode).toStrictEqual("5515"))}),it("should return void if status is success",()=>{const o=new r.SetExternalPluginCommand({payload:"",signature:""}),t=new e.ApduResponse({statusCode:Uint8Array.from([144,0]),data:Uint8Array.from([])});expect(o.parseResponse(t)).toStrictEqual((0,e.CommandResultFactory)({data:void 0}))})})});
6
+ `("should return an error for the response status code $errorCode",({apduResponseCode:o,errorCode:r})=>{const x=new e.ApduResponse({data:Uint8Array.from([]),statusCode:o}),t=new a.SetExternalPluginCommand({payload:"",signature:""}).parseResponse(x);expect((0,e.isSuccessCommandResult)(t)).toBe(!1),(0,e.isSuccessCommandResult)(t)||(expect(t.error).toBeInstanceOf(n.EthAppCommandError),t.error instanceof n.EthAppCommandError&&expect(t.error.errorCode).toStrictEqual(r))}),it("should return a global error",()=>{const o=new a.SetExternalPluginCommand({payload:"",signature:""}),r=new e.ApduResponse({statusCode:Uint8Array.from([85,21]),data:Uint8Array.from([])}),x=o.parseResponse(r);expect((0,e.isSuccessCommandResult)(x)).toBe(!1),(0,e.isSuccessCommandResult)(x)||(expect(x.error).toBeInstanceOf(e.GlobalCommandError),x.error instanceof e.GlobalCommandError&&expect(x.error.errorCode).toStrictEqual("5515"))}),it("should return void if status is success",()=>{const o=new a.SetExternalPluginCommand({payload:"",signature:""}),r=new e.ApduResponse({statusCode:Uint8Array.from([144,0]),data:Uint8Array.from([])});expect(o.parseResponse(r)).toStrictEqual((0,e.CommandResultFactory)({data:void 0}))})})});
7
7
  //# sourceMappingURL=SetExternalPluginCommand.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/SetExternalPluginCommand.test.ts"],
4
- "sourcesContent": ["import {\n ApduResponse,\n CommandResultFactory,\n GlobalCommandError,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport {\n SetExternalPluginCommand,\n SetExternalPluginCommandError,\n} from \"@internal/app-binder/command/SetExternalPluginCommand\";\n\n/**\n * Test payload contains:\n * Length of plugin name : 08\n * Plugin Name : Paraswap\n * contract address: 0xdef171fe48cf0115b1d80b88dc8eab59176fee57\n * method selector: 0xa9059cbb\n */\nconst SET_EXTERNAL_PLUGIN_PAYLOAD = [\n 0x08, 0x50, 0x61, 0x72, 0x61, 0x73, 0x77, 0x61, 0x70, 0xde, 0xf1, 0x71, 0xfe,\n 0x48, 0xcf, 0x01, 0x15, 0xb1, 0xd8, 0x0b, 0x88, 0xdc, 0x8e, 0xab, 0x59, 0x17,\n 0x6f, 0xee, 0x57, 0xa9, 0x05, 0x9c, 0xbb,\n];\n// Public signature key: https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#set-external-plugin\nconst SET_EXTERNAL_PLUGIN_SIGNATURE = [\n 0x04, 0x82, 0xbb, 0xf2, 0xf3, 0x4f, 0x36, 0x7b, 0x2e, 0x5b, 0xc2, 0x18, 0x47,\n 0xb6, 0x56, 0x6f, 0x21, 0xf0, 0x97, 0x6b, 0x22, 0xd3, 0x38, 0x8a, 0x9a, 0x5e,\n 0x44, 0x6a, 0xc6, 0x2d, 0x25, 0xcf, 0x72, 0x5b, 0x62, 0xa2, 0x55, 0x5b, 0x2d,\n 0xd4, 0x64, 0xa4, 0xda, 0x0a, 0xb2, 0xf4, 0xd5, 0x06, 0x82, 0x05, 0x43, 0xaf,\n 0x1d, 0x24, 0x24, 0x70, 0xb1, 0xb1, 0xa9, 0x69, 0xa2, 0x75, 0x78, 0xf3, 0x53,\n];\nconst SET_EXTERNAL_PLUGIN_APDU = [\n 0xe0,\n 0x12,\n 0x00,\n 0x00,\n SET_EXTERNAL_PLUGIN_PAYLOAD.length + SET_EXTERNAL_PLUGIN_SIGNATURE.length,\n ...SET_EXTERNAL_PLUGIN_PAYLOAD,\n ...SET_EXTERNAL_PLUGIN_SIGNATURE,\n];\n\ndescribe(\"Set External plugin\", () => {\n describe(\"getApdu\", () => {\n it(\"should retrieve correct apdu\", () => {\n // given\n const command = new SetExternalPluginCommand({\n payload: SET_EXTERNAL_PLUGIN_PAYLOAD.map((x) =>\n x.toString(16).padStart(2, \"0\"),\n ).join(\"\"),\n signature: SET_EXTERNAL_PLUGIN_SIGNATURE.map((x) =>\n x.toString(16).padStart(2, \"0\"),\n ).join(\"\"),\n });\n // when\n const apdu = command.getApdu();\n // then\n expect(apdu.getRawApdu()).toStrictEqual(\n Uint8Array.from(SET_EXTERNAL_PLUGIN_APDU),\n );\n });\n });\n describe(\"parseResponse\", () => {\n it.each`\n apduResponseCode | errorCode\n ${Uint8Array.from([0x6a, 0x80])} | ${\"6a80\"}\n ${Uint8Array.from([0x69, 0x84])} | ${\"6984\"}\n ${Uint8Array.from([0x6d, 0x00])} | ${\"6d00\"}\n `(\n \"should return an error for the response status code $errorCode\",\n ({\n apduResponseCode,\n errorCode,\n }: Record<\"apduResponseCode\" | \"errorCode\", Uint8Array>) => {\n // GIVEN\n const response = new ApduResponse({\n data: Uint8Array.from([]),\n statusCode: apduResponseCode,\n });\n const command = new SetExternalPluginCommand({\n payload: \"\",\n signature: \"\",\n });\n // WHEN\n const result = command.parseResponse(response);\n // THEN\n expect(isSuccessCommandResult(result)).toBe(false);\n if (!isSuccessCommandResult(result)) {\n expect(result.error).toBeInstanceOf(SetExternalPluginCommandError);\n if (result.error instanceof SetExternalPluginCommandError)\n expect(result.error.errorCode).toStrictEqual(errorCode);\n }\n },\n );\n it(\"should return a global error\", () => {\n // given\n const command = new SetExternalPluginCommand({\n payload: \"\",\n signature: \"\",\n });\n // when\n const apduResponse = new ApduResponse({\n statusCode: Uint8Array.from([0x55, 0x15]),\n data: Uint8Array.from([]),\n });\n // then\n const result = command.parseResponse(apduResponse);\n expect(isSuccessCommandResult(result)).toBe(false);\n if (!isSuccessCommandResult(result)) {\n expect(result.error).toBeInstanceOf(GlobalCommandError);\n if (result.error instanceof GlobalCommandError)\n expect(result.error.errorCode).toStrictEqual(\"5515\");\n }\n });\n it(\"should return void if status is success\", () => {\n // given\n const command = new SetExternalPluginCommand({\n payload: \"\",\n signature: \"\",\n });\n // when\n const apduResponse = new ApduResponse({\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: Uint8Array.from([]),\n });\n // then\n expect(command.parseResponse(apduResponse)).toStrictEqual(\n CommandResultFactory({ data: undefined }),\n );\n });\n });\n});\n"],
5
- "mappings": "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",
6
- "names": ["import_device_management_kit", "import_SetExternalPluginCommand", "SET_EXTERNAL_PLUGIN_PAYLOAD", "SET_EXTERNAL_PLUGIN_SIGNATURE", "SET_EXTERNAL_PLUGIN_APDU", "apdu", "apduResponseCode", "errorCode", "response", "result", "command", "apduResponse"]
4
+ "sourcesContent": ["import {\n ApduResponse,\n CommandResultFactory,\n GlobalCommandError,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { SetExternalPluginCommand } from \"@internal/app-binder/command/SetExternalPluginCommand\";\n\nimport { EthAppCommandError } from \"./utils/ethAppErrors\";\n\n/**\n * Test payload contains:\n * Length of plugin name : 08\n * Plugin Name : Paraswap\n * contract address: 0xdef171fe48cf0115b1d80b88dc8eab59176fee57\n * method selector: 0xa9059cbb\n */\nconst SET_EXTERNAL_PLUGIN_PAYLOAD = [\n 0x08, 0x50, 0x61, 0x72, 0x61, 0x73, 0x77, 0x61, 0x70, 0xde, 0xf1, 0x71, 0xfe,\n 0x48, 0xcf, 0x01, 0x15, 0xb1, 0xd8, 0x0b, 0x88, 0xdc, 0x8e, 0xab, 0x59, 0x17,\n 0x6f, 0xee, 0x57, 0xa9, 0x05, 0x9c, 0xbb,\n];\n// Public signature key: https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#set-external-plugin\nconst SET_EXTERNAL_PLUGIN_SIGNATURE = [\n 0x04, 0x82, 0xbb, 0xf2, 0xf3, 0x4f, 0x36, 0x7b, 0x2e, 0x5b, 0xc2, 0x18, 0x47,\n 0xb6, 0x56, 0x6f, 0x21, 0xf0, 0x97, 0x6b, 0x22, 0xd3, 0x38, 0x8a, 0x9a, 0x5e,\n 0x44, 0x6a, 0xc6, 0x2d, 0x25, 0xcf, 0x72, 0x5b, 0x62, 0xa2, 0x55, 0x5b, 0x2d,\n 0xd4, 0x64, 0xa4, 0xda, 0x0a, 0xb2, 0xf4, 0xd5, 0x06, 0x82, 0x05, 0x43, 0xaf,\n 0x1d, 0x24, 0x24, 0x70, 0xb1, 0xb1, 0xa9, 0x69, 0xa2, 0x75, 0x78, 0xf3, 0x53,\n];\nconst SET_EXTERNAL_PLUGIN_APDU = [\n 0xe0,\n 0x12,\n 0x00,\n 0x00,\n SET_EXTERNAL_PLUGIN_PAYLOAD.length + SET_EXTERNAL_PLUGIN_SIGNATURE.length,\n ...SET_EXTERNAL_PLUGIN_PAYLOAD,\n ...SET_EXTERNAL_PLUGIN_SIGNATURE,\n];\n\ndescribe(\"Set External plugin\", () => {\n describe(\"getApdu\", () => {\n it(\"should retrieve correct apdu\", () => {\n // given\n const command = new SetExternalPluginCommand({\n payload: SET_EXTERNAL_PLUGIN_PAYLOAD.map((x) =>\n x.toString(16).padStart(2, \"0\"),\n ).join(\"\"),\n signature: SET_EXTERNAL_PLUGIN_SIGNATURE.map((x) =>\n x.toString(16).padStart(2, \"0\"),\n ).join(\"\"),\n });\n // when\n const apdu = command.getApdu();\n // then\n expect(apdu.getRawApdu()).toStrictEqual(\n Uint8Array.from(SET_EXTERNAL_PLUGIN_APDU),\n );\n });\n });\n describe(\"parseResponse\", () => {\n it.each`\n apduResponseCode | errorCode\n ${Uint8Array.from([0x6a, 0x80])} | ${\"6a80\"}\n ${Uint8Array.from([0x69, 0x84])} | ${\"6984\"}\n ${Uint8Array.from([0x6d, 0x00])} | ${\"6d00\"}\n `(\n \"should return an error for the response status code $errorCode\",\n ({\n apduResponseCode,\n errorCode,\n }: Record<\"apduResponseCode\" | \"errorCode\", Uint8Array>) => {\n // GIVEN\n const response = new ApduResponse({\n data: Uint8Array.from([]),\n statusCode: apduResponseCode,\n });\n const command = new SetExternalPluginCommand({\n payload: \"\",\n signature: \"\",\n });\n // WHEN\n const result = command.parseResponse(response);\n // THEN\n expect(isSuccessCommandResult(result)).toBe(false);\n if (!isSuccessCommandResult(result)) {\n expect(result.error).toBeInstanceOf(EthAppCommandError);\n if (result.error instanceof EthAppCommandError)\n expect(result.error.errorCode).toStrictEqual(errorCode);\n }\n },\n );\n it(\"should return a global error\", () => {\n // given\n const command = new SetExternalPluginCommand({\n payload: \"\",\n signature: \"\",\n });\n // when\n const apduResponse = new ApduResponse({\n statusCode: Uint8Array.from([0x55, 0x15]),\n data: Uint8Array.from([]),\n });\n // then\n const result = command.parseResponse(apduResponse);\n expect(isSuccessCommandResult(result)).toBe(false);\n if (!isSuccessCommandResult(result)) {\n expect(result.error).toBeInstanceOf(GlobalCommandError);\n if (result.error instanceof GlobalCommandError)\n expect(result.error.errorCode).toStrictEqual(\"5515\");\n }\n });\n it(\"should return void if status is success\", () => {\n // given\n const command = new SetExternalPluginCommand({\n payload: \"\",\n signature: \"\",\n });\n // when\n const apduResponse = new ApduResponse({\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: Uint8Array.from([]),\n });\n // then\n expect(command.parseResponse(apduResponse)).toStrictEqual(\n CommandResultFactory({ data: undefined }),\n );\n });\n });\n});\n"],
5
+ "mappings": "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",
6
+ "names": ["import_device_management_kit", "import_SetExternalPluginCommand", "import_ethAppErrors", "SET_EXTERNAL_PLUGIN_PAYLOAD", "SET_EXTERNAL_PLUGIN_SIGNATURE", "SET_EXTERNAL_PLUGIN_APDU", "apdu", "apduResponseCode", "errorCode", "response", "result", "command", "apduResponse"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var a=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var p=Object.prototype.hasOwnProperty;var l=(o,r)=>{for(var n in r)a(o,n,{get:r[n],enumerable:!0})},C=(o,r,n,d)=>{if(r&&typeof r=="object"||typeof r=="function")for(let t of i(r))!p.call(o,t)&&t!==n&&a(o,t,{get:()=>r[t],enumerable:!(d=u(r,t))||d.enumerable});return o};var g=o=>C(a({},"__esModule",{value:!0}),o);var c={};l(c,{SetPluginCommand:()=>E,SetPluginCommandError:()=>m});module.exports=g(c);var e=require("@ledgerhq/device-management-kit");const s={6984:{message:"The requested plugin is not installed on the device"},"6d00":{message:"ETH app is not up to date"}};class m extends e.DeviceExchangeError{constructor(r){super({...r,tag:"SetPluginCommandError"})}}class E{constructor(r){this.args=r}getApdu(){const r={cla:224,ins:22,p1:0,p2:0};return new e.ApduBuilder(r).addHexaStringToData(this.args.payload).build()}parseResponse(r){if(e.CommandUtils.isSuccessResponse(r))return(0,e.CommandResultFactory)({data:void 0});const d=new e.ApduParser(r).encodeToHexaString(r.statusCode);return(0,e.isCommandErrorCode)(d,s)?(0,e.CommandResultFactory)({error:new m({...s[d],errorCode:d})}):(0,e.CommandResultFactory)({error:e.GlobalCommandErrorHandler.handle(r)})}}0&&(module.exports={SetPluginCommand,SetPluginCommandError});
1
+ "use strict";var a=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var i=Object.prototype.hasOwnProperty;var g=(e,r)=>{for(var t in r)a(e,t,{get:r[t],enumerable:!0})},A=(e,r,t,m)=>{if(r&&typeof r=="object"||typeof r=="function")for(let o of l(r))!i.call(e,o)&&o!==t&&a(e,o,{get:()=>r[o],enumerable:!(m=u(r,o))||m.enumerable});return e};var C=e=>A(a({},"__esModule",{value:!0}),e);var E={};g(E,{SetPluginCommand:()=>y});module.exports=C(E);var d=require("@ledgerhq/device-management-kit"),n=require("@ledgerhq/signer-utils"),s=require("purify-ts"),p=require("./utils/ethAppErrors");class y{constructor(r){this.args=r}errorHelper=new n.CommandErrorHelper(p.ETH_APP_ERRORS,p.EthAppCommandErrorFactory);getApdu(){const r={cla:224,ins:22,p1:0,p2:0};return new d.ApduBuilder(r).addHexaStringToData(this.args.payload).build()}parseResponse(r){return s.Maybe.fromNullable(this.errorHelper.getError(r)).orDefault((0,d.CommandResultFactory)({data:void 0}))}}0&&(module.exports={SetPluginCommand});
2
2
  //# sourceMappingURL=SetPluginCommand.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/SetPluginCommand.ts"],
4
- "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#set-plugin\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 SetPluginCommandErrorCodes = \"6984\" | \"6d00\";\n\nconst SET_PLUGIN_ERRORS: CommandErrors<SetPluginCommandErrorCodes> = {\n \"6984\": { message: \"The requested plugin is not installed on the device\" },\n \"6d00\": { message: \"ETH app is not up to date\" },\n};\n\nexport type SetPluginCommandArgs = {\n /**\n * The stringified hexa representation of the plugin signature.\n */\n payload: string;\n};\n\nexport class SetPluginCommandError extends DeviceExchangeError<SetPluginCommandErrorCodes> {\n constructor(args: CommandErrorArgs<SetPluginCommandErrorCodes>) {\n super({ ...args, tag: \"SetPluginCommandError\" });\n }\n}\n\nexport class SetPluginCommand\n implements Command<void, SetPluginCommandArgs, SetPluginCommandErrorCodes>\n{\n constructor(private readonly args: SetPluginCommandArgs) {}\n\n getApdu(): Apdu {\n const apduBuilderArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x16,\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, SetPluginCommandErrorCodes> {\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, SET_PLUGIN_ERRORS)) {\n return CommandResultFactory({\n error: new SetPluginCommandError({\n ...SET_PLUGIN_ERRORS[errorCode],\n errorCode,\n }),\n });\n }\n return CommandResultFactory({\n error: GlobalCommandErrorHandler.handle(response),\n });\n }\n}\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,sBAAAE,EAAA,0BAAAC,IAAA,eAAAC,EAAAJ,GACA,IAAAK,EAeO,2CAIP,MAAMC,EAA+D,CACnE,KAAQ,CAAE,QAAS,qDAAsD,EACzE,OAAQ,CAAE,QAAS,2BAA4B,CACjD,EASO,MAAMH,UAA8B,qBAAgD,CACzF,YAAYI,EAAoD,CAC9D,MAAM,CAAE,GAAGA,EAAM,IAAK,uBAAwB,CAAC,CACjD,CACF,CAEO,MAAML,CAEb,CACE,YAA6BK,EAA4B,CAA5B,UAAAA,CAA6B,CAE1D,SAAgB,CACd,MAAMC,EAAmC,CACvC,IAAK,IACL,IAAK,GACL,GAAI,EACJ,GAAI,CACN,EACA,OAAO,IAAI,cAAYA,CAAe,EACnC,oBAAoB,KAAK,KAAK,OAAO,EACrC,MAAM,CACX,CAEA,cACEC,EACiD,CACjD,GAAI,eAAa,kBAAkBA,CAAQ,EACzC,SAAO,wBAAqB,CAAE,KAAM,MAAU,CAAC,EAGjD,MAAMC,EADS,IAAI,aAAWD,CAAQ,EACb,mBAAmBA,EAAS,UAAU,EAE/D,SAAI,sBAAmBC,EAAWJ,CAAiB,KAC1C,wBAAqB,CAC1B,MAAO,IAAIH,EAAsB,CAC/B,GAAGG,EAAkBI,CAAS,EAC9B,UAAAA,CACF,CAAC,CACH,CAAC,KAEI,wBAAqB,CAC1B,MAAO,4BAA0B,OAAOD,CAAQ,CAClD,CAAC,CACH,CACF",
6
- "names": ["SetPluginCommand_exports", "__export", "SetPluginCommand", "SetPluginCommandError", "__toCommonJS", "import_device_management_kit", "SET_PLUGIN_ERRORS", "args", "apduBuilderArgs", "response", "errorCode"]
4
+ "sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#set-plugin\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 SetPluginCommandArgs = {\n /**\n * The stringified hexa representation of the plugin signature.\n */\n payload: string;\n};\n\nexport class SetPluginCommand\n implements Command<void, SetPluginCommandArgs, EthErrorCodes>\n{\n private readonly errorHelper = new CommandErrorHelper<void, EthErrorCodes>(\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n );\n\n constructor(private readonly args: SetPluginCommandArgs) {}\n\n getApdu(): Apdu {\n const apduBuilderArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x16,\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": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,sBAAAE,IAAA,eAAAC,EAAAH,GACA,IAAAI,EAQO,2CACPC,EAAmC,kCACnCC,EAAsB,qBAEtBC,EAIO,gCASA,MAAML,CAEb,CAME,YAA6BM,EAA4B,CAA5B,UAAAA,CAA6B,CALzC,YAAc,IAAI,qBACjC,iBACA,2BACF,EAIA,SAAgB,CACd,MAAMC,EAAmC,CACvC,IAAK,IACL,IAAK,GACL,GAAI,EACJ,GAAI,CACN,EACA,OAAO,IAAI,cAAYA,CAAe,EACnC,oBAAoB,KAAK,KAAK,OAAO,EACrC,MAAM,CACX,CAEA,cAAcC,EAA4D,CACxE,OAAO,QAAM,aAAa,KAAK,YAAY,SAASA,CAAQ,CAAC,EAAE,aAC7D,wBAAqB,CAAE,KAAM,MAAU,CAAC,CAC1C,CACF,CACF",
6
+ "names": ["SetPluginCommand_exports", "__export", "SetPluginCommand", "__toCommonJS", "import_device_management_kit", "import_signer_utils", "import_purify_ts", "import_ethAppErrors", "args", "apduBuilderArgs", "response"]
7
7
  }
@@ -1,6 +1,6 @@
1
- "use strict";var e=require("@ledgerhq/device-management-kit"),x=require("./SetPluginCommand");const t="010106455243373231c5b07a55501014f36ec5d39d950a321439f6dd7642842e0e0000000000000001020147304502206d9f515916283e08fa6cdab205668c0739c558dcd6691a69ce74cd89fbc2cc6e022100c28c17b058e6d453570a58d69ff62042037dc61149af2f5161d5c36fdc5dc301",s=Uint8Array.from([224,22,0,0,115,1,1,6,69,82,67,55,50,49,197,176,122,85,80,16,20,243,110,197,211,157,149,10,50,20,57,246,221,118,66,132,46,14,0,0,0,0,0,0,0,1,2,1,71,48,69,2,32,109,159,81,89,22,40,62,8,250,108,218,178,5,102,140,7,57,197,88,220,214,105,26,105,206,116,205,137,251,194,204,110,2,33,0,194,140,23,176,88,230,212,83,87,10,88,214,159,246,32,66,3,125,198,17,73,175,47,81,97,213,195,111,220,93,195,1]);describe("SetPluginCommand",()=>{describe("getApdu",()=>{it("returns the correct APDU",()=>{const r={payload:t},o=new x.SetPluginCommand(r).getApdu();expect(o.getRawApdu()).toStrictEqual(s)})}),describe("parseResponse",()=>{it.each`
1
+ "use strict";var x=require("@ledgerhq/device-management-kit"),t=require("./utils/ethAppErrors"),c=require("./SetPluginCommand");const s="010106455243373231c5b07a55501014f36ec5d39d950a321439f6dd7642842e0e0000000000000001020147304502206d9f515916283e08fa6cdab205668c0739c558dcd6691a69ce74cd89fbc2cc6e022100c28c17b058e6d453570a58d69ff62042037dc61149af2f5161d5c36fdc5dc301",a=Uint8Array.from([224,22,0,0,115,1,1,6,69,82,67,55,50,49,197,176,122,85,80,16,20,243,110,197,211,157,149,10,50,20,57,246,221,118,66,132,46,14,0,0,0,0,0,0,0,1,2,1,71,48,69,2,32,109,159,81,89,22,40,62,8,250,108,218,178,5,102,140,7,57,197,88,220,214,105,26,105,206,116,205,137,251,194,204,110,2,33,0,194,140,23,176,88,230,212,83,87,10,88,214,159,246,32,66,3,125,198,17,73,175,47,81,97,213,195,111,220,93,195,1]);describe("SetPluginCommand",()=>{describe("getApdu",()=>{it("returns the correct APDU",()=>{const e={payload:s},r=new c.SetPluginCommand(e).getApdu();expect(r.getRawApdu()).toStrictEqual(a)})}),describe("parseResponse",()=>{it.each`
2
2
  apduResponseCode | errorCode
3
3
  ${Uint8Array.from([105,132])} | ${"6984"}
4
4
  ${Uint8Array.from([109,0])} | ${"6d00"}
5
- `("should return an error for the response status code $errorCode",({apduResponseCode:r,errorCode:d})=>{const o=new e.ApduResponse({data:Uint8Array.from([]),statusCode:r}),c=new x.SetPluginCommand({payload:""}).parseResponse(o);expect((0,e.isSuccessCommandResult)(c)).toBe(!1),(0,e.isSuccessCommandResult)(c)||(expect(c.error).toBeInstanceOf(x.SetPluginCommandError),c.error instanceof x.SetPluginCommandError&&expect(c.error.errorCode).toStrictEqual(d))}),it("should return success if the response status code is correct",()=>{const r={data:Buffer.from([]),statusCode:Buffer.from([144,0])},o=new x.SetPluginCommand({payload:""}).parseResponse(r);expect((0,e.isSuccessCommandResult)(o)).toBe(!0)})})});
5
+ `("should return an error for the response status code $errorCode",({apduResponseCode:e,errorCode:d})=>{const r=new x.ApduResponse({data:Uint8Array.from([]),statusCode:e}),o=new c.SetPluginCommand({payload:""}).parseResponse(r);expect((0,x.isSuccessCommandResult)(o)).toBe(!1),(0,x.isSuccessCommandResult)(o)||(expect(o.error).toBeInstanceOf(t.EthAppCommandError),o.error instanceof t.EthAppCommandError&&expect(o.error.errorCode).toStrictEqual(d))}),it("should return success if the response status code is correct",()=>{const e={data:Buffer.from([]),statusCode:Buffer.from([144,0])},r=new c.SetPluginCommand({payload:""}).parseResponse(e);expect((0,x.isSuccessCommandResult)(r)).toBe(!0)})})});
6
6
  //# sourceMappingURL=SetPluginCommand.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/SetPluginCommand.test.ts"],
4
- "sourcesContent": ["import {\n ApduResponse,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport {\n SetPluginCommand,\n type SetPluginCommandArgs,\n SetPluginCommandError,\n} from \"./SetPluginCommand\";\n\nconst SET_PLUGIN_COMMAND_PAYLOAD =\n \"010106455243373231c5b07a55501014f36ec5d39d950a321439f6dd7642842e0e0000000000000001020147304502206d9f515916283e08fa6cdab205668c0739c558dcd6691a69ce74cd89fbc2cc6e022100c28c17b058e6d453570a58d69ff62042037dc61149af2f5161d5c36fdc5dc301\";\n\nconst SET_PLUGIN_COMMAND_APDU = Uint8Array.from([\n 0xe0, 0x16, 0x00, 0x00, 0x73, 0x01, 0x01, 0x06, 0x45, 0x52, 0x43, 0x37, 0x32,\n 0x31, 0xc5, 0xb0, 0x7a, 0x55, 0x50, 0x10, 0x14, 0xf3, 0x6e, 0xc5, 0xd3, 0x9d,\n 0x95, 0x0a, 0x32, 0x14, 0x39, 0xf6, 0xdd, 0x76, 0x42, 0x84, 0x2e, 0x0e, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x01, 0x47, 0x30, 0x45, 0x02,\n 0x20, 0x6d, 0x9f, 0x51, 0x59, 0x16, 0x28, 0x3e, 0x08, 0xfa, 0x6c, 0xda, 0xb2,\n 0x05, 0x66, 0x8c, 0x07, 0x39, 0xc5, 0x58, 0xdc, 0xd6, 0x69, 0x1a, 0x69, 0xce,\n 0x74, 0xcd, 0x89, 0xfb, 0xc2, 0xcc, 0x6e, 0x02, 0x21, 0x00, 0xc2, 0x8c, 0x17,\n 0xb0, 0x58, 0xe6, 0xd4, 0x53, 0x57, 0x0a, 0x58, 0xd6, 0x9f, 0xf6, 0x20, 0x42,\n 0x03, 0x7d, 0xc6, 0x11, 0x49, 0xaf, 0x2f, 0x51, 0x61, 0xd5, 0xc3, 0x6f, 0xdc,\n 0x5d, 0xc3, 0x01,\n]);\n\ndescribe(\"SetPluginCommand\", () => {\n describe(\"getApdu\", () => {\n it(\"returns the correct APDU\", () => {\n // GIVEN\n const args: SetPluginCommandArgs = {\n payload: SET_PLUGIN_COMMAND_PAYLOAD,\n };\n // WHEN\n const command = new SetPluginCommand(args);\n const apdu = command.getApdu();\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(SET_PLUGIN_COMMAND_APDU);\n });\n });\n describe(\"parseResponse\", () => {\n it.each`\n apduResponseCode | errorCode\n ${Uint8Array.from([0x69, 0x84])} | ${\"6984\"}\n ${Uint8Array.from([0x6d, 0x00])} | ${\"6d00\"}\n `(\n \"should return an error for the response status code $errorCode\",\n ({\n apduResponseCode,\n errorCode,\n }: Record<\"apduResponseCode\" | \"errorCode\", Uint8Array>) => {\n // GIVEN\n const response = new ApduResponse({\n data: Uint8Array.from([]),\n statusCode: apduResponseCode,\n });\n const command = new SetPluginCommand({ payload: \"\" });\n // WHEN\n const result = command.parseResponse(response);\n // THEN\n expect(isSuccessCommandResult(result)).toBe(false);\n if (!isSuccessCommandResult(result)) {\n expect(result.error).toBeInstanceOf(SetPluginCommandError);\n if (result.error instanceof SetPluginCommandError)\n expect(result.error.errorCode).toStrictEqual(errorCode);\n }\n },\n );\n\n it(\"should return success if the response status code is correct\", () => {\n // GIVEN\n const response: ApduResponse = {\n data: Buffer.from([]),\n statusCode: Buffer.from([0x90, 0x00]), // Success status code\n };\n // WHEN\n const command = new SetPluginCommand({ payload: \"\" });\n const result = command.parseResponse(response);\n // THEN\n expect(isSuccessCommandResult(result)).toBe(true);\n });\n });\n});\n"],
5
- "mappings": "aAAA,IAAAA,EAGO,2CAEPC,EAIO,8BAEP,MAAMC,EACJ,yOAEIC,EAA0B,WAAW,KAAK,CAC9C,IAAM,GAAM,EAAM,EAAM,IAAM,EAAM,EAAM,EAAM,GAAM,GAAM,GAAM,GAAM,GACxE,GAAM,IAAM,IAAM,IAAM,GAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IACxE,IAAM,GAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,GAAM,GAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,GAAM,GAAM,GAAM,EACxE,GAAM,IAAM,IAAM,GAAM,GAAM,GAAM,GAAM,GAAM,EAAM,IAAM,IAAM,IAAM,IACxE,EAAM,IAAM,IAAM,EAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IACxE,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,EAAM,GAAM,EAAM,IAAM,IAAM,GACxE,IAAM,GAAM,IAAM,IAAM,GAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GAAM,GACxE,EAAM,IAAM,IAAM,GAAM,GAAM,IAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IACxE,GAAM,IAAM,CACd,CAAC,EAED,SAAS,mBAAoB,IAAM,CACjC,SAAS,UAAW,IAAM,CACxB,GAAG,2BAA4B,IAAM,CAEnC,MAAMC,EAA6B,CACjC,QAASF,CACX,EAGMG,EADU,IAAI,mBAAiBD,CAAI,EACpB,QAAQ,EAE7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cAAcF,CAAuB,CACjE,CAAC,CACH,CAAC,EACD,SAAS,gBAAiB,IAAM,CAC9B,GAAG;AAAA;AAAA,QAEC,WAAW,KAAK,CAAC,IAAM,GAAI,CAAC,CAAC,MAAM,MAAM;AAAA,QACzC,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAAC,MAAM,MAAM;AAAA,MAE3C,iEACA,CAAC,CACC,iBAAAG,EACA,UAAAC,CACF,IAA4D,CAE1D,MAAMC,EAAW,IAAI,eAAa,CAChC,KAAM,WAAW,KAAK,CAAC,CAAC,EACxB,WAAYF,CACd,CAAC,EAGKG,EAFU,IAAI,mBAAiB,CAAE,QAAS,EAAG,CAAC,EAE7B,cAAcD,CAAQ,EAE7C,UAAO,0BAAuBC,CAAM,CAAC,EAAE,KAAK,EAAK,KAC5C,0BAAuBA,CAAM,IAChC,OAAOA,EAAO,KAAK,EAAE,eAAe,uBAAqB,EACrDA,EAAO,iBAAiB,yBAC1B,OAAOA,EAAO,MAAM,SAAS,EAAE,cAAcF,CAAS,EAE5D,CACF,EAEA,GAAG,+DAAgE,IAAM,CAEvE,MAAMC,EAAyB,CAC7B,KAAM,OAAO,KAAK,CAAC,CAAC,EACpB,WAAY,OAAO,KAAK,CAAC,IAAM,CAAI,CAAC,CACtC,EAGMC,EADU,IAAI,mBAAiB,CAAE,QAAS,EAAG,CAAC,EAC7B,cAAcD,CAAQ,EAE7C,UAAO,0BAAuBC,CAAM,CAAC,EAAE,KAAK,EAAI,CAClD,CAAC,CACH,CAAC,CACH,CAAC",
6
- "names": ["import_device_management_kit", "import_SetPluginCommand", "SET_PLUGIN_COMMAND_PAYLOAD", "SET_PLUGIN_COMMAND_APDU", "args", "apdu", "apduResponseCode", "errorCode", "response", "result"]
4
+ "sourcesContent": ["import {\n ApduResponse,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { EthAppCommandError } from \"./utils/ethAppErrors\";\nimport {\n SetPluginCommand,\n type SetPluginCommandArgs,\n} from \"./SetPluginCommand\";\n\nconst SET_PLUGIN_COMMAND_PAYLOAD =\n \"010106455243373231c5b07a55501014f36ec5d39d950a321439f6dd7642842e0e0000000000000001020147304502206d9f515916283e08fa6cdab205668c0739c558dcd6691a69ce74cd89fbc2cc6e022100c28c17b058e6d453570a58d69ff62042037dc61149af2f5161d5c36fdc5dc301\";\n\nconst SET_PLUGIN_COMMAND_APDU = Uint8Array.from([\n 0xe0, 0x16, 0x00, 0x00, 0x73, 0x01, 0x01, 0x06, 0x45, 0x52, 0x43, 0x37, 0x32,\n 0x31, 0xc5, 0xb0, 0x7a, 0x55, 0x50, 0x10, 0x14, 0xf3, 0x6e, 0xc5, 0xd3, 0x9d,\n 0x95, 0x0a, 0x32, 0x14, 0x39, 0xf6, 0xdd, 0x76, 0x42, 0x84, 0x2e, 0x0e, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x01, 0x47, 0x30, 0x45, 0x02,\n 0x20, 0x6d, 0x9f, 0x51, 0x59, 0x16, 0x28, 0x3e, 0x08, 0xfa, 0x6c, 0xda, 0xb2,\n 0x05, 0x66, 0x8c, 0x07, 0x39, 0xc5, 0x58, 0xdc, 0xd6, 0x69, 0x1a, 0x69, 0xce,\n 0x74, 0xcd, 0x89, 0xfb, 0xc2, 0xcc, 0x6e, 0x02, 0x21, 0x00, 0xc2, 0x8c, 0x17,\n 0xb0, 0x58, 0xe6, 0xd4, 0x53, 0x57, 0x0a, 0x58, 0xd6, 0x9f, 0xf6, 0x20, 0x42,\n 0x03, 0x7d, 0xc6, 0x11, 0x49, 0xaf, 0x2f, 0x51, 0x61, 0xd5, 0xc3, 0x6f, 0xdc,\n 0x5d, 0xc3, 0x01,\n]);\n\ndescribe(\"SetPluginCommand\", () => {\n describe(\"getApdu\", () => {\n it(\"returns the correct APDU\", () => {\n // GIVEN\n const args: SetPluginCommandArgs = {\n payload: SET_PLUGIN_COMMAND_PAYLOAD,\n };\n // WHEN\n const command = new SetPluginCommand(args);\n const apdu = command.getApdu();\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(SET_PLUGIN_COMMAND_APDU);\n });\n });\n describe(\"parseResponse\", () => {\n it.each`\n apduResponseCode | errorCode\n ${Uint8Array.from([0x69, 0x84])} | ${\"6984\"}\n ${Uint8Array.from([0x6d, 0x00])} | ${\"6d00\"}\n `(\n \"should return an error for the response status code $errorCode\",\n ({\n apduResponseCode,\n errorCode,\n }: Record<\"apduResponseCode\" | \"errorCode\", Uint8Array>) => {\n // GIVEN\n const response = new ApduResponse({\n data: Uint8Array.from([]),\n statusCode: apduResponseCode,\n });\n const command = new SetPluginCommand({ payload: \"\" });\n // WHEN\n const result = command.parseResponse(response);\n // THEN\n expect(isSuccessCommandResult(result)).toBe(false);\n if (!isSuccessCommandResult(result)) {\n expect(result.error).toBeInstanceOf(EthAppCommandError);\n if (result.error instanceof EthAppCommandError)\n expect(result.error.errorCode).toStrictEqual(errorCode);\n }\n },\n );\n\n it(\"should return success if the response status code is correct\", () => {\n // GIVEN\n const response: ApduResponse = {\n data: Buffer.from([]),\n statusCode: Buffer.from([0x90, 0x00]), // Success status code\n };\n // WHEN\n const command = new SetPluginCommand({ payload: \"\" });\n const result = command.parseResponse(response);\n // THEN\n expect(isSuccessCommandResult(result)).toBe(true);\n });\n });\n});\n"],
5
+ "mappings": "aAAA,IAAAA,EAGO,2CAEPC,EAAmC,gCACnCC,EAGO,8BAEP,MAAMC,EACJ,yOAEIC,EAA0B,WAAW,KAAK,CAC9C,IAAM,GAAM,EAAM,EAAM,IAAM,EAAM,EAAM,EAAM,GAAM,GAAM,GAAM,GAAM,GACxE,GAAM,IAAM,IAAM,IAAM,GAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IACxE,IAAM,GAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,GAAM,GAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,GAAM,GAAM,GAAM,EACxE,GAAM,IAAM,IAAM,GAAM,GAAM,GAAM,GAAM,GAAM,EAAM,IAAM,IAAM,IAAM,IACxE,EAAM,IAAM,IAAM,EAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IACxE,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,EAAM,GAAM,EAAM,IAAM,IAAM,GACxE,IAAM,GAAM,IAAM,IAAM,GAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GAAM,GACxE,EAAM,IAAM,IAAM,GAAM,GAAM,IAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IACxE,GAAM,IAAM,CACd,CAAC,EAED,SAAS,mBAAoB,IAAM,CACjC,SAAS,UAAW,IAAM,CACxB,GAAG,2BAA4B,IAAM,CAEnC,MAAMC,EAA6B,CACjC,QAASF,CACX,EAGMG,EADU,IAAI,mBAAiBD,CAAI,EACpB,QAAQ,EAE7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cAAcF,CAAuB,CACjE,CAAC,CACH,CAAC,EACD,SAAS,gBAAiB,IAAM,CAC9B,GAAG;AAAA;AAAA,QAEC,WAAW,KAAK,CAAC,IAAM,GAAI,CAAC,CAAC,MAAM,MAAM;AAAA,QACzC,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAAC,MAAM,MAAM;AAAA,MAE3C,iEACA,CAAC,CACC,iBAAAG,EACA,UAAAC,CACF,IAA4D,CAE1D,MAAMC,EAAW,IAAI,eAAa,CAChC,KAAM,WAAW,KAAK,CAAC,CAAC,EACxB,WAAYF,CACd,CAAC,EAGKG,EAFU,IAAI,mBAAiB,CAAE,QAAS,EAAG,CAAC,EAE7B,cAAcD,CAAQ,EAE7C,UAAO,0BAAuBC,CAAM,CAAC,EAAE,KAAK,EAAK,KAC5C,0BAAuBA,CAAM,IAChC,OAAOA,EAAO,KAAK,EAAE,eAAe,oBAAkB,EAClDA,EAAO,iBAAiB,sBAC1B,OAAOA,EAAO,MAAM,SAAS,EAAE,cAAcF,CAAS,EAE5D,CACF,EAEA,GAAG,+DAAgE,IAAM,CAEvE,MAAMC,EAAyB,CAC7B,KAAM,OAAO,KAAK,CAAC,CAAC,EACpB,WAAY,OAAO,KAAK,CAAC,IAAM,CAAI,CAAC,CACtC,EAGMC,EADU,IAAI,mBAAiB,CAAE,QAAS,EAAG,CAAC,EAC7B,cAAcD,CAAQ,EAE7C,UAAO,0BAAuBC,CAAM,CAAC,EAAE,KAAK,EAAI,CAClD,CAAC,CACH,CAAC,CACH,CAAC",
6
+ "names": ["import_device_management_kit", "import_ethAppErrors", "import_SetPluginCommand", "SET_PLUGIN_COMMAND_PAYLOAD", "SET_PLUGIN_COMMAND_APDU", "args", "apdu", "apduResponseCode", "errorCode", "response", "result"]
7
7
  }