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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (997) hide show
  1. package/README.md +19 -19
  2. package/lib/cjs/api/SignerEth.js +2 -0
  3. package/lib/cjs/api/SignerEth.js.map +7 -0
  4. package/lib/cjs/api/SignerEthBuilder.js +2 -0
  5. package/lib/cjs/api/SignerEthBuilder.js.map +7 -0
  6. package/lib/cjs/api/SignerEthBuilder.test.js +2 -0
  7. package/lib/cjs/api/SignerEthBuilder.test.js.map +7 -0
  8. package/lib/cjs/api/app-binder/GetAddressCommandTypes.js +2 -3
  9. package/lib/cjs/api/app-binder/GetAddressCommandTypes.js.map +7 -1
  10. package/lib/cjs/api/app-binder/GetAddressDeviceActionTypes.js +2 -3
  11. package/lib/cjs/api/app-binder/GetAddressDeviceActionTypes.js.map +7 -1
  12. package/lib/cjs/api/app-binder/SignPersonalMessageDeviceActionTypes.js +2 -3
  13. package/lib/cjs/api/app-binder/SignPersonalMessageDeviceActionTypes.js.map +7 -1
  14. package/lib/cjs/api/app-binder/SignTransactionDeviceActionTypes.js +2 -3
  15. package/lib/cjs/api/app-binder/SignTransactionDeviceActionTypes.js.map +7 -1
  16. package/lib/cjs/api/app-binder/SignTypedDataDeviceActionTypes.js +2 -3
  17. package/lib/cjs/api/app-binder/SignTypedDataDeviceActionTypes.js.map +7 -1
  18. package/lib/cjs/api/index.js +2 -26
  19. package/lib/cjs/api/index.js.map +7 -1
  20. package/lib/cjs/api/model/Address.js +2 -3
  21. package/lib/cjs/api/model/Address.js.map +7 -1
  22. package/lib/cjs/api/model/AddressOptions.js +2 -3
  23. package/lib/cjs/api/model/AddressOptions.js.map +7 -1
  24. package/lib/cjs/api/model/Signature.js +2 -3
  25. package/lib/cjs/api/model/Signature.js.map +7 -1
  26. package/lib/cjs/api/model/Transaction.js +2 -3
  27. package/lib/cjs/api/model/Transaction.js.map +7 -1
  28. package/lib/cjs/api/model/TransactionOptions.js +2 -3
  29. package/lib/cjs/api/model/TransactionOptions.js.map +7 -1
  30. package/lib/cjs/api/model/TypedData.js +2 -4
  31. package/lib/cjs/api/model/TypedData.js.map +7 -1
  32. package/lib/cjs/index.js +2 -20
  33. package/lib/cjs/index.js.map +7 -1
  34. package/lib/cjs/internal/DefaultSignerEth.js +2 -0
  35. package/lib/cjs/internal/DefaultSignerEth.js.map +7 -0
  36. package/lib/cjs/internal/DefaultSignerEth.test.js +2 -0
  37. package/lib/cjs/internal/DefaultSignerEth.test.js.map +7 -0
  38. package/lib/cjs/internal/address/di/addressModule.js +2 -11
  39. package/lib/cjs/internal/address/di/addressModule.js.map +7 -1
  40. package/lib/cjs/internal/address/di/addressModule.test.js +2 -0
  41. package/lib/cjs/internal/address/di/addressModule.test.js.map +7 -0
  42. package/lib/cjs/internal/address/di/addressTypes.js +2 -7
  43. package/lib/cjs/internal/address/di/addressTypes.js.map +7 -1
  44. package/lib/cjs/internal/address/use-case/GetAddressUseCase.js +2 -38
  45. package/lib/cjs/internal/address/use-case/GetAddressUseCase.js.map +7 -1
  46. package/lib/cjs/internal/address/use-case/GetAddressUseCase.test.js +2 -0
  47. package/lib/cjs/internal/address/use-case/GetAddressUseCase.test.js.map +7 -0
  48. package/lib/cjs/internal/app-binder/EthAppBinder.js +2 -100
  49. package/lib/cjs/internal/app-binder/EthAppBinder.js.map +7 -1
  50. package/lib/cjs/internal/app-binder/EthAppBinder.test.js +2 -0
  51. package/lib/cjs/internal/app-binder/EthAppBinder.test.js.map +7 -0
  52. package/lib/cjs/internal/app-binder/command/GetAddressCommand.js +2 -88
  53. package/lib/cjs/internal/app-binder/command/GetAddressCommand.js.map +7 -1
  54. package/lib/cjs/internal/app-binder/command/GetAddressCommand.test.js +2 -0
  55. package/lib/cjs/internal/app-binder/command/GetAddressCommand.test.js.map +7 -0
  56. package/lib/cjs/internal/app-binder/command/GetChallengeCommand.js +2 -39
  57. package/lib/cjs/internal/app-binder/command/GetChallengeCommand.js.map +7 -1
  58. package/lib/cjs/internal/app-binder/command/GetChallengeCommand.test.js +2 -0
  59. package/lib/cjs/internal/app-binder/command/GetChallengeCommand.test.js.map +7 -0
  60. package/lib/cjs/internal/app-binder/command/ProvideEnumCommand.js +2 -0
  61. package/lib/cjs/internal/app-binder/command/ProvideEnumCommand.js.map +7 -0
  62. package/lib/cjs/internal/app-binder/command/ProvideEnumCommand.test.js +2 -0
  63. package/lib/cjs/internal/app-binder/command/ProvideEnumCommand.test.js.map +7 -0
  64. package/lib/cjs/internal/app-binder/command/ProvideNFTInformationCommand.js +2 -50
  65. package/lib/cjs/internal/app-binder/command/ProvideNFTInformationCommand.js.map +7 -1
  66. package/lib/cjs/internal/app-binder/command/ProvideNFTInformationCommand.test.js +2 -0
  67. package/lib/cjs/internal/app-binder/command/ProvideNFTInformationCommand.test.js.map +7 -0
  68. package/lib/cjs/internal/app-binder/command/ProvideTokenInformationCommand.js +2 -34
  69. package/lib/cjs/internal/app-binder/command/ProvideTokenInformationCommand.js.map +7 -1
  70. package/lib/cjs/internal/app-binder/command/ProvideTokenInformationCommand.test.js +2 -0
  71. package/lib/cjs/internal/app-binder/command/ProvideTokenInformationCommand.test.js.map +7 -0
  72. package/lib/cjs/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.js +2 -0
  73. package/lib/cjs/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.js.map +7 -0
  74. package/lib/cjs/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.js +2 -0
  75. package/lib/cjs/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.js.map +7 -0
  76. package/lib/cjs/internal/app-binder/command/ProvideTransactionInformationCommand.js +2 -0
  77. package/lib/cjs/internal/app-binder/command/ProvideTransactionInformationCommand.js.map +7 -0
  78. package/lib/cjs/internal/app-binder/command/ProvideTransactionInformationCommand.test.js +2 -0
  79. package/lib/cjs/internal/app-binder/command/ProvideTransactionInformationCommand.test.js.map +7 -0
  80. package/lib/cjs/internal/app-binder/command/ProvideTrustedNameCommand.js +2 -0
  81. package/lib/cjs/internal/app-binder/command/ProvideTrustedNameCommand.js.map +7 -0
  82. package/lib/cjs/internal/app-binder/command/ProvideTrustedNameCommand.test.js +2 -0
  83. package/lib/cjs/internal/app-binder/command/ProvideTrustedNameCommand.test.js.map +7 -0
  84. package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.js +2 -69
  85. package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.js.map +7 -1
  86. package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.test.js +2 -0
  87. package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.test.js.map +7 -0
  88. package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.js +2 -131
  89. package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.js.map +7 -1
  90. package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.js +2 -0
  91. package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.js.map +7 -0
  92. package/lib/cjs/internal/app-binder/command/SendEIP712StructImplemCommand.js +2 -51
  93. package/lib/cjs/internal/app-binder/command/SendEIP712StructImplemCommand.js.map +7 -1
  94. package/lib/cjs/internal/app-binder/command/SendEIP712StructImplemCommand.test.js +2 -0
  95. package/lib/cjs/internal/app-binder/command/SendEIP712StructImplemCommand.test.js.map +7 -0
  96. package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.js +2 -57
  97. package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.js.map +7 -1
  98. package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.test.js +7 -0
  99. package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.test.js.map +7 -0
  100. package/lib/cjs/internal/app-binder/command/SetPluginCommand.js +2 -52
  101. package/lib/cjs/internal/app-binder/command/SetPluginCommand.js.map +7 -1
  102. package/lib/cjs/internal/app-binder/command/SetPluginCommand.test.js +6 -0
  103. package/lib/cjs/internal/app-binder/command/SetPluginCommand.test.js.map +7 -0
  104. package/lib/cjs/internal/app-binder/command/SignEIP712Command.js +2 -69
  105. package/lib/cjs/internal/app-binder/command/SignEIP712Command.js.map +7 -1
  106. package/lib/cjs/internal/app-binder/command/SignEIP712Command.test.js +2 -0
  107. package/lib/cjs/internal/app-binder/command/SignEIP712Command.test.js.map +7 -0
  108. package/lib/cjs/internal/app-binder/command/SignPersonalMessageCommand.js +2 -60
  109. package/lib/cjs/internal/app-binder/command/SignPersonalMessageCommand.js.map +7 -1
  110. package/lib/cjs/internal/app-binder/command/SignPersonalMessageCommand.test.js +2 -0
  111. package/lib/cjs/internal/app-binder/command/SignPersonalMessageCommand.test.js.map +7 -0
  112. package/lib/cjs/internal/app-binder/command/SignTransactionCommand.js +2 -59
  113. package/lib/cjs/internal/app-binder/command/SignTransactionCommand.js.map +7 -1
  114. package/lib/cjs/internal/app-binder/command/SignTransactionCommand.test.js +2 -0
  115. package/lib/cjs/internal/app-binder/command/SignTransactionCommand.test.js.map +7 -0
  116. package/lib/cjs/internal/app-binder/command/StartTransactionCommand.js +2 -0
  117. package/lib/cjs/internal/app-binder/command/StartTransactionCommand.js.map +7 -0
  118. package/lib/cjs/internal/app-binder/command/StartTransactionCommand.test.js +2 -0
  119. package/lib/cjs/internal/app-binder/command/StartTransactionCommand.test.js.map +7 -0
  120. package/lib/cjs/internal/app-binder/command/StoreTransactionCommand.js +2 -0
  121. package/lib/cjs/internal/app-binder/command/StoreTransactionCommand.js.map +7 -0
  122. package/lib/cjs/internal/app-binder/command/StoreTransactionCommand.test.js +2 -0
  123. package/lib/cjs/internal/app-binder/command/StoreTransactionCommand.test.js.map +7 -0
  124. package/lib/cjs/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.js +2 -161
  125. package/lib/cjs/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.js.map +7 -1
  126. package/lib/cjs/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.test.js +2 -0
  127. package/lib/cjs/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.test.js.map +7 -0
  128. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js +2 -285
  129. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js.map +7 -1
  130. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js +2 -0
  131. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js.map +7 -0
  132. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js +2 -245
  133. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js.map +7 -1
  134. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js +2 -0
  135. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js.map +7 -0
  136. package/lib/cjs/internal/app-binder/device-action/__test-utils__/makeInternalApi.js +2 -18
  137. package/lib/cjs/internal/app-binder/device-action/__test-utils__/makeInternalApi.js.map +7 -1
  138. package/lib/cjs/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js +2 -31
  139. package/lib/cjs/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js.map +7 -1
  140. package/lib/cjs/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js +2 -35
  141. package/lib/cjs/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js.map +7 -1
  142. package/lib/cjs/internal/app-binder/di/appBinderModule.js +2 -11
  143. package/lib/cjs/internal/app-binder/di/appBinderModule.js.map +7 -1
  144. package/lib/cjs/internal/app-binder/di/appBinderTypes.js +2 -7
  145. package/lib/cjs/internal/app-binder/di/appBinderTypes.js.map +7 -1
  146. package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.js +2 -72
  147. package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.js.map +7 -1
  148. package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.test.js +2 -0
  149. package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.test.js.map +7 -0
  150. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.js +2 -31
  151. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.js.map +7 -1
  152. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.test.js +2 -0
  153. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.test.js.map +7 -0
  154. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.js +2 -188
  155. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.js.map +7 -1
  156. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.test.js +2 -0
  157. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.test.js.map +7 -0
  158. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.js +2 -112
  159. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.js.map +7 -1
  160. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.test.js +2 -0
  161. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.test.js.map +7 -0
  162. package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js +2 -0
  163. package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js.map +7 -0
  164. package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js +2 -0
  165. package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js.map +7 -0
  166. package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.js +2 -0
  167. package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.js.map +7 -0
  168. package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js +2 -0
  169. package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js.map +7 -0
  170. package/lib/cjs/internal/app-binder/task/SendCommandInChunksTask.js +2 -0
  171. package/lib/cjs/internal/app-binder/task/SendCommandInChunksTask.js.map +7 -0
  172. package/lib/cjs/internal/app-binder/task/SendEIP712StructImplemTask.js +2 -42
  173. package/lib/cjs/internal/app-binder/task/SendEIP712StructImplemTask.js.map +7 -1
  174. package/lib/cjs/internal/app-binder/task/SendEIP712StructImplemTask.test.js +2 -0
  175. package/lib/cjs/internal/app-binder/task/SendEIP712StructImplemTask.test.js.map +7 -0
  176. package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.js +2 -0
  177. package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.js.map +7 -0
  178. package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.test.js +2 -0
  179. package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.test.js.map +7 -0
  180. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.js +2 -53
  181. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.js.map +7 -1
  182. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.test.js +2 -0
  183. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.test.js.map +7 -0
  184. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.js +2 -53
  185. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.js.map +7 -1
  186. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.test.js +2 -0
  187. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.test.js.map +7 -0
  188. package/lib/cjs/internal/di.js +2 -27
  189. package/lib/cjs/internal/di.js.map +7 -1
  190. package/lib/cjs/internal/externalTypes.js +2 -9
  191. package/lib/cjs/internal/externalTypes.js.map +7 -1
  192. package/lib/cjs/internal/message/di/messageModule.js +2 -11
  193. package/lib/cjs/internal/message/di/messageModule.js.map +7 -1
  194. package/lib/cjs/internal/message/di/messageModule.test.js +2 -0
  195. package/lib/cjs/internal/message/di/messageModule.test.js.map +7 -0
  196. package/lib/cjs/internal/message/di/messageTypes.js +2 -7
  197. package/lib/cjs/internal/message/di/messageTypes.js.map +7 -1
  198. package/lib/cjs/internal/message/use-case/SignMessageUseCase.js +2 -38
  199. package/lib/cjs/internal/message/use-case/SignMessageUseCase.js.map +7 -1
  200. package/lib/cjs/internal/message/use-case/SignMessageUseCase.test.js +2 -0
  201. package/lib/cjs/internal/message/use-case/SignMessageUseCase.test.js.map +7 -0
  202. package/lib/cjs/internal/shared/utils/PayloadUtils.js +2 -0
  203. package/lib/cjs/internal/shared/utils/PayloadUtils.js.map +7 -0
  204. package/lib/cjs/internal/shared/utils/PayloadUtils.test.js +2 -0
  205. package/lib/cjs/internal/shared/utils/PayloadUtils.test.js.map +7 -0
  206. package/lib/cjs/internal/transaction/di/transactionModule.js +2 -17
  207. package/lib/cjs/internal/transaction/di/transactionModule.js.map +7 -1
  208. package/lib/cjs/internal/transaction/di/transactionModule.test.js +2 -0
  209. package/lib/cjs/internal/transaction/di/transactionModule.test.js.map +7 -0
  210. package/lib/cjs/internal/transaction/di/transactionTypes.js +2 -9
  211. package/lib/cjs/internal/transaction/di/transactionTypes.js.map +7 -1
  212. package/lib/cjs/internal/transaction/service/mapper/EthersV5TransactionMapper.js +2 -60
  213. package/lib/cjs/internal/transaction/service/mapper/EthersV5TransactionMapper.js.map +7 -1
  214. package/lib/cjs/internal/transaction/service/mapper/EthersV5TransactionMapper.test.js +2 -0
  215. package/lib/cjs/internal/transaction/service/mapper/EthersV5TransactionMapper.test.js.map +7 -0
  216. package/lib/cjs/internal/transaction/service/mapper/EthersV6TransactionMapper.js +2 -36
  217. package/lib/cjs/internal/transaction/service/mapper/EthersV6TransactionMapper.js.map +7 -1
  218. package/lib/cjs/internal/transaction/service/mapper/EthersV6TransactionMapper.test.js +2 -0
  219. package/lib/cjs/internal/transaction/service/mapper/EthersV6TransactionMapper.test.js.map +7 -0
  220. package/lib/cjs/internal/transaction/service/mapper/TransactionMapper.js +2 -3
  221. package/lib/cjs/internal/transaction/service/mapper/TransactionMapper.js.map +7 -1
  222. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.js +2 -41
  223. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.js.map +7 -1
  224. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.test.js +2 -0
  225. package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.test.js.map +7 -0
  226. package/lib/cjs/internal/transaction/service/mapper/model/TransactionMapperResult.js +2 -3
  227. package/lib/cjs/internal/transaction/service/mapper/model/TransactionMapperResult.js.map +7 -1
  228. package/lib/cjs/internal/transaction/service/parser/TransactionParserService.js +2 -0
  229. package/lib/cjs/internal/transaction/service/parser/TransactionParserService.js.map +7 -0
  230. package/lib/cjs/internal/transaction/service/parser/TransactionParserService.test.js +2 -0
  231. package/lib/cjs/internal/transaction/service/parser/TransactionParserService.test.js.map +7 -0
  232. package/lib/cjs/internal/transaction/use-case/SignTransactionUseCase.js +2 -38
  233. package/lib/cjs/internal/transaction/use-case/SignTransactionUseCase.js.map +7 -1
  234. package/lib/cjs/internal/transaction/use-case/SignTransactionUseCase.test.js +2 -0
  235. package/lib/cjs/internal/transaction/use-case/SignTransactionUseCase.test.js.map +7 -0
  236. package/lib/cjs/internal/typed-data/di/typedDataModule.js +2 -13
  237. package/lib/cjs/internal/typed-data/di/typedDataModule.js.map +7 -1
  238. package/lib/cjs/internal/typed-data/di/typedDataModule.test.js +2 -0
  239. package/lib/cjs/internal/typed-data/di/typedDataModule.test.js.map +7 -0
  240. package/lib/cjs/internal/typed-data/di/typedDataTypes.js +2 -8
  241. package/lib/cjs/internal/typed-data/di/typedDataTypes.js.map +7 -1
  242. package/lib/cjs/internal/typed-data/model/Types.js +2 -64
  243. package/lib/cjs/internal/typed-data/model/Types.js.map +7 -1
  244. package/lib/cjs/internal/typed-data/service/DefaultTypedDataParserService.js +2 -29
  245. package/lib/cjs/internal/typed-data/service/DefaultTypedDataParserService.js.map +7 -1
  246. package/lib/cjs/internal/typed-data/service/TypedDataEncoder.js +2 -101
  247. package/lib/cjs/internal/typed-data/service/TypedDataEncoder.js.map +7 -1
  248. package/lib/cjs/internal/typed-data/service/TypedDataEncoder.test.js +2 -0
  249. package/lib/cjs/internal/typed-data/service/TypedDataEncoder.test.js.map +7 -0
  250. package/lib/cjs/internal/typed-data/service/TypedDataParser.js +2 -211
  251. package/lib/cjs/internal/typed-data/service/TypedDataParser.js.map +7 -1
  252. package/lib/cjs/internal/typed-data/service/TypedDataParser.test.js +2 -0
  253. package/lib/cjs/internal/typed-data/service/TypedDataParser.test.js.map +7 -0
  254. package/lib/cjs/internal/typed-data/service/TypedDataParserService.js +2 -3
  255. package/lib/cjs/internal/typed-data/service/TypedDataParserService.js.map +7 -1
  256. package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.js +2 -42
  257. package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.js.map +7 -1
  258. package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.test.js +2 -0
  259. package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.test.js.map +7 -0
  260. package/lib/cjs/package.json +63 -0
  261. package/lib/esm/api/SignerEth.js +1 -0
  262. package/lib/esm/api/SignerEth.js.map +7 -0
  263. package/lib/esm/api/SignerEthBuilder.js +2 -0
  264. package/lib/esm/api/SignerEthBuilder.js.map +7 -0
  265. package/lib/esm/api/SignerEthBuilder.test.js +2 -0
  266. package/lib/esm/api/SignerEthBuilder.test.js.map +7 -0
  267. package/lib/esm/api/app-binder/GetAddressCommandTypes.js +1 -2
  268. package/lib/esm/api/app-binder/GetAddressCommandTypes.js.map +7 -1
  269. package/lib/esm/api/app-binder/GetAddressDeviceActionTypes.js +1 -2
  270. package/lib/esm/api/app-binder/GetAddressDeviceActionTypes.js.map +7 -1
  271. package/lib/esm/api/app-binder/SignPersonalMessageDeviceActionTypes.js +1 -2
  272. package/lib/esm/api/app-binder/SignPersonalMessageDeviceActionTypes.js.map +7 -1
  273. package/lib/esm/api/app-binder/SignTransactionDeviceActionTypes.js +1 -2
  274. package/lib/esm/api/app-binder/SignTransactionDeviceActionTypes.js.map +7 -1
  275. package/lib/esm/api/app-binder/SignTypedDataDeviceActionTypes.js +1 -2
  276. package/lib/esm/api/app-binder/SignTypedDataDeviceActionTypes.js.map +7 -1
  277. package/lib/esm/api/index.js +2 -10
  278. package/lib/esm/api/index.js.map +7 -1
  279. package/lib/esm/api/model/Address.js +1 -2
  280. package/lib/esm/api/model/Address.js.map +7 -1
  281. package/lib/esm/api/model/AddressOptions.js +1 -2
  282. package/lib/esm/api/model/AddressOptions.js.map +7 -1
  283. package/lib/esm/api/model/Signature.js +1 -2
  284. package/lib/esm/api/model/Signature.js.map +7 -1
  285. package/lib/esm/api/model/Transaction.js +2 -2
  286. package/lib/esm/api/model/Transaction.js.map +7 -1
  287. package/lib/esm/api/model/TransactionOptions.js +1 -2
  288. package/lib/esm/api/model/TransactionOptions.js.map +7 -1
  289. package/lib/esm/api/model/TypedData.js +1 -3
  290. package/lib/esm/api/model/TypedData.js.map +7 -1
  291. package/lib/esm/index.js +2 -4
  292. package/lib/esm/index.js.map +7 -1
  293. package/lib/esm/internal/DefaultSignerEth.js +2 -0
  294. package/lib/esm/internal/DefaultSignerEth.js.map +7 -0
  295. package/lib/esm/internal/DefaultSignerEth.test.js +2 -0
  296. package/lib/esm/internal/DefaultSignerEth.test.js.map +7 -0
  297. package/lib/esm/internal/address/di/addressModule.js +2 -7
  298. package/lib/esm/internal/address/di/addressModule.js.map +7 -1
  299. package/lib/esm/internal/address/di/addressModule.test.js +2 -0
  300. package/lib/esm/internal/address/di/addressModule.test.js.map +7 -0
  301. package/lib/esm/internal/address/di/addressTypes.js +2 -4
  302. package/lib/esm/internal/address/di/addressTypes.js.map +7 -1
  303. package/lib/esm/internal/address/use-case/GetAddressUseCase.js +2 -35
  304. package/lib/esm/internal/address/use-case/GetAddressUseCase.js.map +7 -1
  305. package/lib/esm/internal/address/use-case/GetAddressUseCase.test.js +2 -0
  306. package/lib/esm/internal/address/use-case/GetAddressUseCase.test.js.map +7 -0
  307. package/lib/esm/internal/app-binder/EthAppBinder.js +2 -97
  308. package/lib/esm/internal/app-binder/EthAppBinder.js.map +7 -1
  309. package/lib/esm/internal/app-binder/EthAppBinder.test.js +2 -0
  310. package/lib/esm/internal/app-binder/EthAppBinder.test.js.map +7 -0
  311. package/lib/esm/internal/app-binder/command/GetAddressCommand.js +2 -84
  312. package/lib/esm/internal/app-binder/command/GetAddressCommand.js.map +7 -1
  313. package/lib/esm/internal/app-binder/command/GetAddressCommand.test.js +2 -0
  314. package/lib/esm/internal/app-binder/command/GetAddressCommand.test.js.map +7 -0
  315. package/lib/esm/internal/app-binder/command/GetChallengeCommand.js +2 -35
  316. package/lib/esm/internal/app-binder/command/GetChallengeCommand.js.map +7 -1
  317. package/lib/esm/internal/app-binder/command/GetChallengeCommand.test.js +2 -0
  318. package/lib/esm/internal/app-binder/command/GetChallengeCommand.test.js.map +7 -0
  319. package/lib/esm/internal/app-binder/command/ProvideEnumCommand.js +2 -0
  320. package/lib/esm/internal/app-binder/command/ProvideEnumCommand.js.map +7 -0
  321. package/lib/esm/internal/app-binder/command/ProvideEnumCommand.test.js +2 -0
  322. package/lib/esm/internal/app-binder/command/ProvideEnumCommand.test.js.map +7 -0
  323. package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.js +2 -46
  324. package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.js.map +7 -1
  325. package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.test.js +2 -0
  326. package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.test.js.map +7 -0
  327. package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.js +2 -30
  328. package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.js.map +7 -1
  329. package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.test.js +2 -0
  330. package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.test.js.map +7 -0
  331. package/lib/esm/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.js +2 -0
  332. package/lib/esm/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.js.map +7 -0
  333. package/lib/esm/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.js +2 -0
  334. package/lib/esm/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.js.map +7 -0
  335. package/lib/esm/internal/app-binder/command/ProvideTransactionInformationCommand.js +2 -0
  336. package/lib/esm/internal/app-binder/command/ProvideTransactionInformationCommand.js.map +7 -0
  337. package/lib/esm/internal/app-binder/command/ProvideTransactionInformationCommand.test.js +2 -0
  338. package/lib/esm/internal/app-binder/command/ProvideTransactionInformationCommand.test.js.map +7 -0
  339. package/lib/esm/internal/app-binder/command/ProvideTrustedNameCommand.js +2 -0
  340. package/lib/esm/internal/app-binder/command/ProvideTrustedNameCommand.js.map +7 -0
  341. package/lib/esm/internal/app-binder/command/ProvideTrustedNameCommand.test.js +2 -0
  342. package/lib/esm/internal/app-binder/command/ProvideTrustedNameCommand.test.js.map +7 -0
  343. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.js +2 -65
  344. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.js.map +7 -1
  345. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.test.js +2 -0
  346. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.test.js.map +7 -0
  347. package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.js +2 -127
  348. package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.js.map +7 -1
  349. package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.js +2 -0
  350. package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.js.map +7 -0
  351. package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.js +2 -47
  352. package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.js.map +7 -1
  353. package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.test.js +2 -0
  354. package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.test.js.map +7 -0
  355. package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.js +2 -52
  356. package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.js.map +7 -1
  357. package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.test.js +7 -0
  358. package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.test.js.map +7 -0
  359. package/lib/esm/internal/app-binder/command/SetPluginCommand.js +2 -47
  360. package/lib/esm/internal/app-binder/command/SetPluginCommand.js.map +7 -1
  361. package/lib/esm/internal/app-binder/command/SetPluginCommand.test.js +6 -0
  362. package/lib/esm/internal/app-binder/command/SetPluginCommand.test.js.map +7 -0
  363. package/lib/esm/internal/app-binder/command/SignEIP712Command.js +2 -65
  364. package/lib/esm/internal/app-binder/command/SignEIP712Command.js.map +7 -1
  365. package/lib/esm/internal/app-binder/command/SignEIP712Command.test.js +2 -0
  366. package/lib/esm/internal/app-binder/command/SignEIP712Command.test.js.map +7 -0
  367. package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.js +2 -56
  368. package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.js.map +7 -1
  369. package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.test.js +2 -0
  370. package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.test.js.map +7 -0
  371. package/lib/esm/internal/app-binder/command/SignTransactionCommand.js +2 -55
  372. package/lib/esm/internal/app-binder/command/SignTransactionCommand.js.map +7 -1
  373. package/lib/esm/internal/app-binder/command/SignTransactionCommand.test.js +2 -0
  374. package/lib/esm/internal/app-binder/command/SignTransactionCommand.test.js.map +7 -0
  375. package/lib/esm/internal/app-binder/command/StartTransactionCommand.js +2 -0
  376. package/lib/esm/internal/app-binder/command/StartTransactionCommand.js.map +7 -0
  377. package/lib/esm/internal/app-binder/command/StartTransactionCommand.test.js +2 -0
  378. package/lib/esm/internal/app-binder/command/StartTransactionCommand.test.js.map +7 -0
  379. package/lib/esm/internal/app-binder/command/StoreTransactionCommand.js +2 -0
  380. package/lib/esm/internal/app-binder/command/StoreTransactionCommand.js.map +7 -0
  381. package/lib/esm/internal/app-binder/command/StoreTransactionCommand.test.js +2 -0
  382. package/lib/esm/internal/app-binder/command/StoreTransactionCommand.test.js.map +7 -0
  383. package/lib/esm/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.js +2 -157
  384. package/lib/esm/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.js.map +7 -1
  385. package/lib/esm/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.test.js +2 -0
  386. package/lib/esm/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.test.js.map +7 -0
  387. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js +2 -281
  388. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js.map +7 -1
  389. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js +2 -0
  390. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js.map +7 -0
  391. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js +2 -241
  392. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js.map +7 -1
  393. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js +2 -0
  394. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js.map +7 -0
  395. package/lib/esm/internal/app-binder/device-action/__test-utils__/makeInternalApi.js +2 -15
  396. package/lib/esm/internal/app-binder/device-action/__test-utils__/makeInternalApi.js.map +7 -1
  397. package/lib/esm/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js +2 -27
  398. package/lib/esm/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js.map +7 -1
  399. package/lib/esm/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js +2 -32
  400. package/lib/esm/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js.map +7 -1
  401. package/lib/esm/internal/app-binder/di/appBinderModule.js +2 -7
  402. package/lib/esm/internal/app-binder/di/appBinderModule.js.map +7 -1
  403. package/lib/esm/internal/app-binder/di/appBinderTypes.js +2 -4
  404. package/lib/esm/internal/app-binder/di/appBinderTypes.js.map +7 -1
  405. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.js +2 -68
  406. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.js.map +7 -1
  407. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.test.js +2 -0
  408. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.test.js.map +7 -0
  409. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.js +2 -27
  410. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.js.map +7 -1
  411. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.test.js +2 -0
  412. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.test.js.map +7 -0
  413. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.js +2 -184
  414. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.js.map +7 -1
  415. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.test.js +2 -0
  416. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.test.js.map +7 -0
  417. package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.js +2 -107
  418. package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.js.map +7 -1
  419. package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.test.js +2 -0
  420. package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.test.js.map +7 -0
  421. package/lib/esm/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js +2 -0
  422. package/lib/esm/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js.map +7 -0
  423. package/lib/esm/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js +2 -0
  424. package/lib/esm/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js.map +7 -0
  425. package/lib/esm/internal/app-binder/task/ProvideTransactionGenericContextTask.js +2 -0
  426. package/lib/esm/internal/app-binder/task/ProvideTransactionGenericContextTask.js.map +7 -0
  427. package/lib/esm/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js +2 -0
  428. package/lib/esm/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js.map +7 -0
  429. package/lib/esm/internal/app-binder/task/SendCommandInChunksTask.js +2 -0
  430. package/lib/esm/internal/app-binder/task/SendCommandInChunksTask.js.map +7 -0
  431. package/lib/esm/internal/app-binder/task/SendEIP712StructImplemTask.js +2 -38
  432. package/lib/esm/internal/app-binder/task/SendEIP712StructImplemTask.js.map +7 -1
  433. package/lib/esm/internal/app-binder/task/SendEIP712StructImplemTask.test.js +2 -0
  434. package/lib/esm/internal/app-binder/task/SendEIP712StructImplemTask.test.js.map +7 -0
  435. package/lib/esm/internal/app-binder/task/SendPayloadInChunksTask.js +2 -0
  436. package/lib/esm/internal/app-binder/task/SendPayloadInChunksTask.js.map +7 -0
  437. package/lib/esm/internal/app-binder/task/SendPayloadInChunksTask.test.js +2 -0
  438. package/lib/esm/internal/app-binder/task/SendPayloadInChunksTask.test.js.map +7 -0
  439. package/lib/esm/internal/app-binder/task/SendSignPersonalMessageTask.js +2 -49
  440. package/lib/esm/internal/app-binder/task/SendSignPersonalMessageTask.js.map +7 -1
  441. package/lib/esm/internal/app-binder/task/SendSignPersonalMessageTask.test.js +2 -0
  442. package/lib/esm/internal/app-binder/task/SendSignPersonalMessageTask.test.js.map +7 -0
  443. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.js +2 -49
  444. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.js.map +7 -1
  445. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.test.js +2 -0
  446. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.test.js.map +7 -0
  447. package/lib/esm/internal/di.js +2 -23
  448. package/lib/esm/internal/di.js.map +7 -1
  449. package/lib/esm/internal/externalTypes.js +2 -6
  450. package/lib/esm/internal/externalTypes.js.map +7 -1
  451. package/lib/esm/internal/message/di/messageModule.js +2 -7
  452. package/lib/esm/internal/message/di/messageModule.js.map +7 -1
  453. package/lib/esm/internal/message/di/messageModule.test.js +2 -0
  454. package/lib/esm/internal/message/di/messageModule.test.js.map +7 -0
  455. package/lib/esm/internal/message/di/messageTypes.js +2 -4
  456. package/lib/esm/internal/message/di/messageTypes.js.map +7 -1
  457. package/lib/esm/internal/message/use-case/SignMessageUseCase.js +2 -35
  458. package/lib/esm/internal/message/use-case/SignMessageUseCase.js.map +7 -1
  459. package/lib/esm/internal/message/use-case/SignMessageUseCase.test.js +2 -0
  460. package/lib/esm/internal/message/use-case/SignMessageUseCase.test.js.map +7 -0
  461. package/lib/esm/internal/shared/utils/PayloadUtils.js +2 -0
  462. package/lib/esm/internal/shared/utils/PayloadUtils.js.map +7 -0
  463. package/lib/esm/internal/shared/utils/PayloadUtils.test.js +2 -0
  464. package/lib/esm/internal/shared/utils/PayloadUtils.test.js.map +7 -0
  465. package/lib/esm/internal/transaction/di/transactionModule.js +2 -13
  466. package/lib/esm/internal/transaction/di/transactionModule.js.map +7 -1
  467. package/lib/esm/internal/transaction/di/transactionModule.test.js +2 -0
  468. package/lib/esm/internal/transaction/di/transactionModule.test.js.map +7 -0
  469. package/lib/esm/internal/transaction/di/transactionTypes.js +2 -6
  470. package/lib/esm/internal/transaction/di/transactionTypes.js.map +7 -1
  471. package/lib/esm/internal/transaction/service/mapper/EthersV5TransactionMapper.js +2 -57
  472. package/lib/esm/internal/transaction/service/mapper/EthersV5TransactionMapper.js.map +7 -1
  473. package/lib/esm/internal/transaction/service/mapper/EthersV5TransactionMapper.test.js +2 -0
  474. package/lib/esm/internal/transaction/service/mapper/EthersV5TransactionMapper.test.js.map +7 -0
  475. package/lib/esm/internal/transaction/service/mapper/EthersV6TransactionMapper.js +2 -33
  476. package/lib/esm/internal/transaction/service/mapper/EthersV6TransactionMapper.js.map +7 -1
  477. package/lib/esm/internal/transaction/service/mapper/EthersV6TransactionMapper.test.js +2 -0
  478. package/lib/esm/internal/transaction/service/mapper/EthersV6TransactionMapper.test.js.map +7 -0
  479. package/lib/esm/internal/transaction/service/mapper/TransactionMapper.js +1 -2
  480. package/lib/esm/internal/transaction/service/mapper/TransactionMapper.js.map +7 -1
  481. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.js +2 -38
  482. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.js.map +7 -1
  483. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.test.js +2 -0
  484. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.test.js.map +7 -0
  485. package/lib/esm/internal/transaction/service/mapper/model/TransactionMapperResult.js +1 -2
  486. package/lib/esm/internal/transaction/service/mapper/model/TransactionMapperResult.js.map +7 -1
  487. package/lib/esm/internal/transaction/service/parser/TransactionParserService.js +2 -0
  488. package/lib/esm/internal/transaction/service/parser/TransactionParserService.js.map +7 -0
  489. package/lib/esm/internal/transaction/service/parser/TransactionParserService.test.js +2 -0
  490. package/lib/esm/internal/transaction/service/parser/TransactionParserService.test.js.map +7 -0
  491. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.js +2 -35
  492. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.js.map +7 -1
  493. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.test.js +2 -0
  494. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.test.js.map +7 -0
  495. package/lib/esm/internal/typed-data/di/typedDataModule.js +2 -9
  496. package/lib/esm/internal/typed-data/di/typedDataModule.js.map +7 -1
  497. package/lib/esm/internal/typed-data/di/typedDataModule.test.js +2 -0
  498. package/lib/esm/internal/typed-data/di/typedDataModule.test.js.map +7 -0
  499. package/lib/esm/internal/typed-data/di/typedDataTypes.js +2 -5
  500. package/lib/esm/internal/typed-data/di/typedDataTypes.js.map +7 -1
  501. package/lib/esm/internal/typed-data/model/Types.js +2 -55
  502. package/lib/esm/internal/typed-data/model/Types.js.map +7 -1
  503. package/lib/esm/internal/typed-data/service/DefaultTypedDataParserService.js +2 -26
  504. package/lib/esm/internal/typed-data/service/DefaultTypedDataParserService.js.map +7 -1
  505. package/lib/esm/internal/typed-data/service/TypedDataEncoder.js +2 -98
  506. package/lib/esm/internal/typed-data/service/TypedDataEncoder.js.map +7 -1
  507. package/lib/esm/internal/typed-data/service/TypedDataEncoder.test.js +2 -0
  508. package/lib/esm/internal/typed-data/service/TypedDataEncoder.test.js.map +7 -0
  509. package/lib/esm/internal/typed-data/service/TypedDataParser.js +2 -207
  510. package/lib/esm/internal/typed-data/service/TypedDataParser.js.map +7 -1
  511. package/lib/esm/internal/typed-data/service/TypedDataParser.test.js +2 -0
  512. package/lib/esm/internal/typed-data/service/TypedDataParser.test.js.map +7 -0
  513. package/lib/esm/internal/typed-data/service/TypedDataParserService.js +1 -2
  514. package/lib/esm/internal/typed-data/service/TypedDataParserService.js.map +7 -1
  515. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.js +2 -39
  516. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.js.map +7 -1
  517. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.test.js +2 -0
  518. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.test.js.map +7 -0
  519. package/lib/esm/package.json +63 -0
  520. package/lib/types/api/SignerEth.d.ts +15 -0
  521. package/lib/types/api/SignerEth.d.ts.map +1 -0
  522. package/lib/types/api/SignerEthBuilder.d.ts +37 -0
  523. package/lib/types/api/SignerEthBuilder.d.ts.map +1 -0
  524. package/lib/types/api/SignerEthBuilder.test.d.ts +2 -0
  525. package/lib/types/api/SignerEthBuilder.test.d.ts.map +1 -0
  526. package/lib/{cjs → types}/api/app-binder/GetAddressDeviceActionTypes.d.ts +1 -1
  527. package/lib/types/api/app-binder/GetAddressDeviceActionTypes.d.ts.map +1 -0
  528. package/lib/{esm → types}/api/app-binder/SignPersonalMessageDeviceActionTypes.d.ts +3 -3
  529. package/lib/types/api/app-binder/SignPersonalMessageDeviceActionTypes.d.ts.map +1 -0
  530. package/lib/types/api/app-binder/SignTransactionDeviceActionTypes.d.ts +37 -0
  531. package/lib/types/api/app-binder/SignTransactionDeviceActionTypes.d.ts.map +1 -0
  532. package/lib/{cjs → types}/api/app-binder/SignTypedDataDeviceActionTypes.d.ts +5 -5
  533. package/lib/types/api/app-binder/SignTypedDataDeviceActionTypes.d.ts.map +1 -0
  534. package/lib/{cjs → types}/api/index.d.ts +2 -2
  535. package/lib/{cjs → types}/api/index.d.ts.map +1 -1
  536. package/lib/types/api/model/Address.d.ts +7 -0
  537. package/lib/types/api/model/Address.d.ts.map +1 -0
  538. package/lib/types/api/model/Signature.d.ts +7 -0
  539. package/lib/types/api/model/Signature.d.ts.map +1 -0
  540. package/lib/types/api/model/Transaction.d.ts +14 -0
  541. package/lib/types/api/model/Transaction.d.ts.map +1 -0
  542. package/lib/types/internal/DefaultSignerEth.d.ts +26 -0
  543. package/lib/types/internal/DefaultSignerEth.d.ts.map +1 -0
  544. package/lib/types/internal/DefaultSignerEth.test.d.ts +2 -0
  545. package/lib/types/internal/DefaultSignerEth.test.d.ts.map +1 -0
  546. package/lib/types/internal/address/di/addressModule.test.d.ts +2 -0
  547. package/lib/types/internal/address/di/addressModule.test.d.ts.map +1 -0
  548. package/lib/types/internal/address/use-case/GetAddressUseCase.test.d.ts +2 -0
  549. package/lib/types/internal/address/use-case/GetAddressUseCase.test.d.ts.map +1 -0
  550. package/lib/{cjs → types}/internal/app-binder/EthAppBinder.d.ts +6 -4
  551. package/lib/types/internal/app-binder/EthAppBinder.d.ts.map +1 -0
  552. package/lib/types/internal/app-binder/EthAppBinder.test.d.ts +2 -0
  553. package/lib/types/internal/app-binder/EthAppBinder.test.d.ts.map +1 -0
  554. package/lib/{cjs → types}/internal/app-binder/command/GetAddressCommand.d.ts +2 -2
  555. package/lib/types/internal/app-binder/command/GetAddressCommand.d.ts.map +1 -0
  556. package/lib/types/internal/app-binder/command/GetAddressCommand.test.d.ts +2 -0
  557. package/lib/types/internal/app-binder/command/GetAddressCommand.test.d.ts.map +1 -0
  558. package/lib/{esm → types}/internal/app-binder/command/GetChallengeCommand.d.ts +1 -1
  559. package/lib/types/internal/app-binder/command/GetChallengeCommand.d.ts.map +1 -0
  560. package/lib/types/internal/app-binder/command/GetChallengeCommand.test.d.ts +2 -0
  561. package/lib/types/internal/app-binder/command/GetChallengeCommand.test.d.ts.map +1 -0
  562. package/lib/types/internal/app-binder/command/ProvideEnumCommand.d.ts +18 -0
  563. package/lib/types/internal/app-binder/command/ProvideEnumCommand.d.ts.map +1 -0
  564. package/lib/types/internal/app-binder/command/ProvideEnumCommand.test.d.ts +2 -0
  565. package/lib/types/internal/app-binder/command/ProvideEnumCommand.test.d.ts.map +1 -0
  566. package/lib/{cjs → types}/internal/app-binder/command/ProvideNFTInformationCommand.d.ts +1 -1
  567. package/lib/types/internal/app-binder/command/ProvideNFTInformationCommand.d.ts.map +1 -0
  568. package/lib/types/internal/app-binder/command/ProvideNFTInformationCommand.test.d.ts +2 -0
  569. package/lib/types/internal/app-binder/command/ProvideNFTInformationCommand.test.d.ts.map +1 -0
  570. package/lib/{cjs → types}/internal/app-binder/command/ProvideTokenInformationCommand.d.ts +1 -1
  571. package/lib/types/internal/app-binder/command/ProvideTokenInformationCommand.d.ts.map +1 -0
  572. package/lib/types/internal/app-binder/command/ProvideTokenInformationCommand.test.d.ts +2 -0
  573. package/lib/types/internal/app-binder/command/ProvideTokenInformationCommand.test.d.ts.map +1 -0
  574. package/lib/types/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.d.ts +18 -0
  575. package/lib/types/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.d.ts.map +1 -0
  576. package/lib/types/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.d.ts +2 -0
  577. package/lib/types/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.d.ts.map +1 -0
  578. package/lib/types/internal/app-binder/command/ProvideTransactionInformationCommand.d.ts +18 -0
  579. package/lib/types/internal/app-binder/command/ProvideTransactionInformationCommand.d.ts.map +1 -0
  580. package/lib/types/internal/app-binder/command/ProvideTransactionInformationCommand.test.d.ts +2 -0
  581. package/lib/types/internal/app-binder/command/ProvideTransactionInformationCommand.test.d.ts.map +1 -0
  582. package/lib/types/internal/app-binder/command/ProvideTrustedNameCommand.d.ts +19 -0
  583. package/lib/types/internal/app-binder/command/ProvideTrustedNameCommand.d.ts.map +1 -0
  584. package/lib/types/internal/app-binder/command/ProvideTrustedNameCommand.test.d.ts +2 -0
  585. package/lib/types/internal/app-binder/command/ProvideTrustedNameCommand.test.d.ts.map +1 -0
  586. package/lib/{cjs → types}/internal/app-binder/command/SendEIP712FilteringCommand.d.ts +9 -1
  587. package/lib/types/internal/app-binder/command/SendEIP712FilteringCommand.d.ts.map +1 -0
  588. package/lib/types/internal/app-binder/command/SendEIP712FilteringCommand.test.d.ts +2 -0
  589. package/lib/types/internal/app-binder/command/SendEIP712FilteringCommand.test.d.ts.map +1 -0
  590. package/lib/{esm → types}/internal/app-binder/command/SendEIP712StructDefinitionCommand.d.ts +1 -1
  591. package/lib/types/internal/app-binder/command/SendEIP712StructDefinitionCommand.d.ts.map +1 -0
  592. package/lib/types/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.d.ts +2 -0
  593. package/lib/types/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.d.ts.map +1 -0
  594. package/lib/{esm → types}/internal/app-binder/command/SendEIP712StructImplemCommand.d.ts +1 -1
  595. package/lib/types/internal/app-binder/command/SendEIP712StructImplemCommand.d.ts.map +1 -0
  596. package/lib/types/internal/app-binder/command/SendEIP712StructImplemCommand.test.d.ts +2 -0
  597. package/lib/types/internal/app-binder/command/SendEIP712StructImplemCommand.test.d.ts.map +1 -0
  598. package/lib/{esm → types}/internal/app-binder/command/SetExternalPluginCommand.d.ts +1 -1
  599. package/lib/types/internal/app-binder/command/SetExternalPluginCommand.d.ts.map +1 -0
  600. package/lib/types/internal/app-binder/command/SetExternalPluginCommand.test.d.ts +2 -0
  601. package/lib/types/internal/app-binder/command/SetExternalPluginCommand.test.d.ts.map +1 -0
  602. package/lib/{cjs → types}/internal/app-binder/command/SetPluginCommand.d.ts +1 -1
  603. package/lib/types/internal/app-binder/command/SetPluginCommand.d.ts.map +1 -0
  604. package/lib/types/internal/app-binder/command/SetPluginCommand.test.d.ts +2 -0
  605. package/lib/types/internal/app-binder/command/SetPluginCommand.test.d.ts.map +1 -0
  606. package/lib/{esm → types}/internal/app-binder/command/SignEIP712Command.d.ts +2 -2
  607. package/lib/types/internal/app-binder/command/SignEIP712Command.d.ts.map +1 -0
  608. package/lib/types/internal/app-binder/command/SignEIP712Command.test.d.ts +2 -0
  609. package/lib/types/internal/app-binder/command/SignEIP712Command.test.d.ts.map +1 -0
  610. package/lib/{cjs → types}/internal/app-binder/command/SignPersonalMessageCommand.d.ts +3 -3
  611. package/lib/types/internal/app-binder/command/SignPersonalMessageCommand.d.ts.map +1 -0
  612. package/lib/types/internal/app-binder/command/SignPersonalMessageCommand.test.d.ts +2 -0
  613. package/lib/types/internal/app-binder/command/SignPersonalMessageCommand.test.d.ts.map +1 -0
  614. package/lib/{esm → types}/internal/app-binder/command/SignTransactionCommand.d.ts +2 -2
  615. package/lib/types/internal/app-binder/command/SignTransactionCommand.d.ts.map +1 -0
  616. package/lib/types/internal/app-binder/command/SignTransactionCommand.test.d.ts +2 -0
  617. package/lib/types/internal/app-binder/command/SignTransactionCommand.test.d.ts.map +1 -0
  618. package/lib/types/internal/app-binder/command/StartTransactionCommand.d.ts +12 -0
  619. package/lib/types/internal/app-binder/command/StartTransactionCommand.d.ts.map +1 -0
  620. package/lib/types/internal/app-binder/command/StartTransactionCommand.test.d.ts +2 -0
  621. package/lib/types/internal/app-binder/command/StartTransactionCommand.test.d.ts.map +1 -0
  622. package/lib/types/internal/app-binder/command/StoreTransactionCommand.d.ts +23 -0
  623. package/lib/types/internal/app-binder/command/StoreTransactionCommand.d.ts.map +1 -0
  624. package/lib/types/internal/app-binder/command/StoreTransactionCommand.test.d.ts +2 -0
  625. package/lib/types/internal/app-binder/command/StoreTransactionCommand.test.d.ts.map +1 -0
  626. package/lib/{esm → types}/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.d.ts +4 -4
  627. package/lib/types/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.d.ts.map +1 -0
  628. package/lib/types/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.test.d.ts +2 -0
  629. package/lib/types/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.test.d.ts.map +1 -0
  630. package/lib/types/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts +54 -0
  631. package/lib/types/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts.map +1 -0
  632. package/lib/types/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.d.ts +2 -0
  633. package/lib/types/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.d.ts.map +1 -0
  634. package/lib/{cjs → types}/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts +6 -6
  635. package/lib/types/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts.map +1 -0
  636. package/lib/types/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.d.ts +2 -0
  637. package/lib/types/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.d.ts.map +1 -0
  638. package/lib/types/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts +3 -0
  639. package/lib/{cjs → types}/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts.map +1 -1
  640. package/lib/{cjs → types}/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts +2 -2
  641. package/lib/types/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts.map +1 -0
  642. package/lib/{cjs → types}/internal/app-binder/task/BuildEIP712ContextTask.d.ts.map +1 -1
  643. package/lib/types/internal/app-binder/task/BuildEIP712ContextTask.test.d.ts +2 -0
  644. package/lib/types/internal/app-binder/task/BuildEIP712ContextTask.test.d.ts.map +1 -0
  645. package/lib/types/internal/app-binder/task/BuildTransactionContextTask.d.ts +27 -0
  646. package/lib/types/internal/app-binder/task/BuildTransactionContextTask.d.ts.map +1 -0
  647. package/lib/types/internal/app-binder/task/BuildTransactionContextTask.test.d.ts +2 -0
  648. package/lib/types/internal/app-binder/task/BuildTransactionContextTask.test.d.ts.map +1 -0
  649. package/lib/types/internal/app-binder/task/ProvideEIP712ContextTask.d.ts +28 -0
  650. package/lib/types/internal/app-binder/task/ProvideEIP712ContextTask.d.ts.map +1 -0
  651. package/lib/types/internal/app-binder/task/ProvideEIP712ContextTask.test.d.ts +2 -0
  652. package/lib/types/internal/app-binder/task/ProvideEIP712ContextTask.test.d.ts.map +1 -0
  653. package/lib/{esm → types}/internal/app-binder/task/ProvideTransactionContextTask.d.ts +7 -24
  654. package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.d.ts.map +1 -0
  655. package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.test.d.ts +2 -0
  656. package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.test.d.ts.map +1 -0
  657. package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.d.ts +38 -0
  658. package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.d.ts.map +1 -0
  659. package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.d.ts +2 -0
  660. package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.d.ts.map +1 -0
  661. package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.d.ts +27 -0
  662. package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.d.ts.map +1 -0
  663. package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.test.d.ts +2 -0
  664. package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.test.d.ts.map +1 -0
  665. package/lib/types/internal/app-binder/task/SendCommandInChunksTask.d.ts +16 -0
  666. package/lib/types/internal/app-binder/task/SendCommandInChunksTask.d.ts.map +1 -0
  667. package/lib/types/internal/app-binder/task/SendEIP712StructImplemTask.test.d.ts +2 -0
  668. package/lib/types/internal/app-binder/task/SendEIP712StructImplemTask.test.d.ts.map +1 -0
  669. package/lib/types/internal/app-binder/task/SendPayloadInChunksTask.d.ts +14 -0
  670. package/lib/types/internal/app-binder/task/SendPayloadInChunksTask.d.ts.map +1 -0
  671. package/lib/types/internal/app-binder/task/SendPayloadInChunksTask.test.d.ts +2 -0
  672. package/lib/types/internal/app-binder/task/SendPayloadInChunksTask.test.d.ts.map +1 -0
  673. package/lib/{esm → types}/internal/app-binder/task/SendSignPersonalMessageTask.d.ts +3 -3
  674. package/lib/types/internal/app-binder/task/SendSignPersonalMessageTask.d.ts.map +1 -0
  675. package/lib/types/internal/app-binder/task/SendSignPersonalMessageTask.test.d.ts +2 -0
  676. package/lib/types/internal/app-binder/task/SendSignPersonalMessageTask.test.d.ts.map +1 -0
  677. package/lib/types/internal/app-binder/task/SendSignTransactionTask.d.ts +20 -0
  678. package/lib/types/internal/app-binder/task/SendSignTransactionTask.d.ts.map +1 -0
  679. package/lib/types/internal/app-binder/task/SendSignTransactionTask.test.d.ts +2 -0
  680. package/lib/types/internal/app-binder/task/SendSignTransactionTask.test.d.ts.map +1 -0
  681. package/lib/types/internal/di.d.ts +10 -0
  682. package/lib/types/internal/di.d.ts.map +1 -0
  683. package/lib/{cjs → types}/internal/externalTypes.d.ts +1 -1
  684. package/lib/types/internal/message/di/messageModule.test.d.ts +2 -0
  685. package/lib/types/internal/message/di/messageModule.test.d.ts.map +1 -0
  686. package/lib/{esm → types}/internal/message/use-case/SignMessageUseCase.d.ts +2 -2
  687. package/lib/{cjs → types}/internal/message/use-case/SignMessageUseCase.d.ts.map +1 -1
  688. package/lib/types/internal/message/use-case/SignMessageUseCase.test.d.ts +2 -0
  689. package/lib/types/internal/message/use-case/SignMessageUseCase.test.d.ts.map +1 -0
  690. package/lib/types/internal/shared/utils/PayloadUtils.d.ts +5 -0
  691. package/lib/types/internal/shared/utils/PayloadUtils.d.ts.map +1 -0
  692. package/lib/types/internal/shared/utils/PayloadUtils.test.d.ts +2 -0
  693. package/lib/types/internal/shared/utils/PayloadUtils.test.d.ts.map +1 -0
  694. package/lib/{cjs → types}/internal/transaction/di/transactionModule.d.ts.map +1 -1
  695. package/lib/types/internal/transaction/di/transactionModule.test.d.ts +2 -0
  696. package/lib/types/internal/transaction/di/transactionModule.test.d.ts.map +1 -0
  697. package/lib/{cjs → types}/internal/transaction/di/transactionTypes.d.ts +1 -0
  698. package/lib/{cjs → types}/internal/transaction/di/transactionTypes.d.ts.map +1 -1
  699. package/lib/{cjs → types}/internal/transaction/service/mapper/EthersV5TransactionMapper.d.ts.map +1 -1
  700. package/lib/types/internal/transaction/service/mapper/EthersV5TransactionMapper.test.d.ts +2 -0
  701. package/lib/types/internal/transaction/service/mapper/EthersV5TransactionMapper.test.d.ts.map +1 -0
  702. package/lib/{esm → types}/internal/transaction/service/mapper/EthersV6TransactionMapper.d.ts +1 -1
  703. package/lib/types/internal/transaction/service/mapper/EthersV6TransactionMapper.d.ts.map +1 -0
  704. package/lib/types/internal/transaction/service/mapper/EthersV6TransactionMapper.test.d.ts +2 -0
  705. package/lib/types/internal/transaction/service/mapper/EthersV6TransactionMapper.test.d.ts.map +1 -0
  706. package/lib/types/internal/transaction/service/mapper/TransactionMapper.d.ts +7 -0
  707. package/lib/types/internal/transaction/service/mapper/TransactionMapper.d.ts.map +1 -0
  708. package/lib/types/internal/transaction/service/mapper/TransactionMapperService.test.d.ts +2 -0
  709. package/lib/types/internal/transaction/service/mapper/TransactionMapperService.test.d.ts.map +1 -0
  710. package/lib/types/internal/transaction/service/mapper/model/TransactionMapperResult.d.ts +18 -0
  711. package/lib/types/internal/transaction/service/mapper/model/TransactionMapperResult.d.ts.map +1 -0
  712. package/lib/types/internal/transaction/service/parser/TransactionParserService.d.ts +11 -0
  713. package/lib/types/internal/transaction/service/parser/TransactionParserService.d.ts.map +1 -0
  714. package/lib/types/internal/transaction/service/parser/TransactionParserService.test.d.ts +2 -0
  715. package/lib/types/internal/transaction/service/parser/TransactionParserService.test.d.ts.map +1 -0
  716. package/lib/types/internal/transaction/use-case/SignTransactionUseCase.test.d.ts +2 -0
  717. package/lib/types/internal/transaction/use-case/SignTransactionUseCase.test.d.ts.map +1 -0
  718. package/lib/types/internal/typed-data/di/typedDataModule.test.d.ts +2 -0
  719. package/lib/types/internal/typed-data/di/typedDataModule.test.d.ts.map +1 -0
  720. package/lib/{cjs → types}/internal/typed-data/model/Types.d.ts +1 -1
  721. package/lib/types/internal/typed-data/model/Types.d.ts.map +1 -0
  722. package/lib/{esm → types}/internal/typed-data/service/TypedDataEncoder.d.ts +1 -1
  723. package/lib/{cjs → types}/internal/typed-data/service/TypedDataEncoder.d.ts.map +1 -1
  724. package/lib/types/internal/typed-data/service/TypedDataEncoder.test.d.ts +2 -0
  725. package/lib/types/internal/typed-data/service/TypedDataEncoder.test.d.ts.map +1 -0
  726. package/lib/{esm → types}/internal/typed-data/service/TypedDataParser.d.ts +3 -3
  727. package/lib/types/internal/typed-data/service/TypedDataParser.d.ts.map +1 -0
  728. package/lib/types/internal/typed-data/service/TypedDataParser.test.d.ts +2 -0
  729. package/lib/types/internal/typed-data/service/TypedDataParser.test.d.ts.map +1 -0
  730. package/lib/{esm → types}/internal/typed-data/service/TypedDataParserService.d.ts +3 -3
  731. package/lib/types/internal/typed-data/service/TypedDataParserService.d.ts.map +1 -0
  732. package/lib/types/internal/typed-data/use-case/SignTypedDataUseCase.test.d.ts +2 -0
  733. package/lib/types/internal/typed-data/use-case/SignTypedDataUseCase.test.d.ts.map +1 -0
  734. package/lib/types/tsconfig.prod.tsbuildinfo +1 -0
  735. package/package.json +28 -32
  736. package/lib/cjs/api/KeyringEth.d.ts +0 -15
  737. package/lib/cjs/api/KeyringEth.d.ts.map +0 -1
  738. package/lib/cjs/api/KeyringEth.js +0 -3
  739. package/lib/cjs/api/KeyringEth.js.map +0 -1
  740. package/lib/cjs/api/KeyringEthBuilder.d.ts +0 -38
  741. package/lib/cjs/api/KeyringEthBuilder.d.ts.map +0 -1
  742. package/lib/cjs/api/KeyringEthBuilder.js +0 -49
  743. package/lib/cjs/api/KeyringEthBuilder.js.map +0 -1
  744. package/lib/cjs/api/app-binder/GetAddressDeviceActionTypes.d.ts.map +0 -1
  745. package/lib/cjs/api/app-binder/SignPersonalMessageDeviceActionTypes.d.ts +0 -20
  746. package/lib/cjs/api/app-binder/SignPersonalMessageDeviceActionTypes.d.ts.map +0 -1
  747. package/lib/cjs/api/app-binder/SignTransactionDeviceActionTypes.d.ts +0 -31
  748. package/lib/cjs/api/app-binder/SignTransactionDeviceActionTypes.d.ts.map +0 -1
  749. package/lib/cjs/api/app-binder/SignTypedDataDeviceActionTypes.d.ts.map +0 -1
  750. package/lib/cjs/api/model/Address.d.ts +0 -7
  751. package/lib/cjs/api/model/Address.d.ts.map +0 -1
  752. package/lib/cjs/api/model/Signature.d.ts +0 -7
  753. package/lib/cjs/api/model/Signature.d.ts.map +0 -1
  754. package/lib/cjs/api/model/Transaction.d.ts +0 -4
  755. package/lib/cjs/api/model/Transaction.d.ts.map +0 -1
  756. package/lib/cjs/internal/DefaultKeyringEth.d.ts +0 -26
  757. package/lib/cjs/internal/DefaultKeyringEth.d.ts.map +0 -1
  758. package/lib/cjs/internal/DefaultKeyringEth.js +0 -36
  759. package/lib/cjs/internal/DefaultKeyringEth.js.map +0 -1
  760. package/lib/cjs/internal/app-binder/EthAppBinder.d.ts.map +0 -1
  761. package/lib/cjs/internal/app-binder/command/GetAddressCommand.d.ts.map +0 -1
  762. package/lib/cjs/internal/app-binder/command/GetChallengeCommand.d.ts +0 -10
  763. package/lib/cjs/internal/app-binder/command/GetChallengeCommand.d.ts.map +0 -1
  764. package/lib/cjs/internal/app-binder/command/ProvideDomainNameCommand.d.ts +0 -19
  765. package/lib/cjs/internal/app-binder/command/ProvideDomainNameCommand.d.ts.map +0 -1
  766. package/lib/cjs/internal/app-binder/command/ProvideDomainNameCommand.js +0 -41
  767. package/lib/cjs/internal/app-binder/command/ProvideDomainNameCommand.js.map +0 -1
  768. package/lib/cjs/internal/app-binder/command/ProvideNFTInformationCommand.d.ts.map +0 -1
  769. package/lib/cjs/internal/app-binder/command/ProvideTokenInformationCommand.d.ts.map +0 -1
  770. package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.d.ts.map +0 -1
  771. package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.d.ts +0 -25
  772. package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.d.ts.map +0 -1
  773. package/lib/cjs/internal/app-binder/command/SendEIP712StructImplemCommand.d.ts +0 -30
  774. package/lib/cjs/internal/app-binder/command/SendEIP712StructImplemCommand.d.ts.map +0 -1
  775. package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.d.ts +0 -17
  776. package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.d.ts.map +0 -1
  777. package/lib/cjs/internal/app-binder/command/SetPluginCommand.d.ts.map +0 -1
  778. package/lib/cjs/internal/app-binder/command/SignEIP712Command.d.ts +0 -25
  779. package/lib/cjs/internal/app-binder/command/SignEIP712Command.d.ts.map +0 -1
  780. package/lib/cjs/internal/app-binder/command/SignPersonalMessageCommand.d.ts.map +0 -1
  781. package/lib/cjs/internal/app-binder/command/SignTransactionCommand.d.ts +0 -24
  782. package/lib/cjs/internal/app-binder/command/SignTransactionCommand.d.ts.map +0 -1
  783. package/lib/cjs/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.d.ts +0 -17
  784. package/lib/cjs/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.d.ts.map +0 -1
  785. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts +0 -39
  786. package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts.map +0 -1
  787. package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts.map +0 -1
  788. package/lib/cjs/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts +0 -3
  789. package/lib/cjs/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts.map +0 -1
  790. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.d.ts +0 -21
  791. package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.d.ts.map +0 -1
  792. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.d.ts +0 -21
  793. package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.d.ts.map +0 -1
  794. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.d.ts +0 -57
  795. package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.d.ts.map +0 -1
  796. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.d.ts +0 -14
  797. package/lib/cjs/internal/app-binder/task/SendSignPersonalMessageTask.d.ts.map +0 -1
  798. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.d.ts +0 -14
  799. package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.d.ts.map +0 -1
  800. package/lib/cjs/internal/di.d.ts +0 -10
  801. package/lib/cjs/internal/di.d.ts.map +0 -1
  802. package/lib/cjs/internal/message/use-case/SignMessageUseCase.d.ts +0 -8
  803. package/lib/cjs/internal/shared/utils/DerivationPathUtils.d.ts +0 -5
  804. package/lib/cjs/internal/shared/utils/DerivationPathUtils.d.ts.map +0 -1
  805. package/lib/cjs/internal/shared/utils/DerivationPathUtils.js +0 -24
  806. package/lib/cjs/internal/shared/utils/DerivationPathUtils.js.map +0 -1
  807. package/lib/cjs/internal/transaction/service/mapper/EthersV6TransactionMapper.d.ts +0 -9
  808. package/lib/cjs/internal/transaction/service/mapper/EthersV6TransactionMapper.d.ts.map +0 -1
  809. package/lib/cjs/internal/transaction/service/mapper/TransactionMapper.d.ts +0 -7
  810. package/lib/cjs/internal/transaction/service/mapper/TransactionMapper.d.ts.map +0 -1
  811. package/lib/cjs/internal/transaction/service/mapper/model/TransactionMapperResult.d.ts +0 -12
  812. package/lib/cjs/internal/transaction/service/mapper/model/TransactionMapperResult.d.ts.map +0 -1
  813. package/lib/cjs/internal/typed-data/model/Types.d.ts.map +0 -1
  814. package/lib/cjs/internal/typed-data/service/TypedDataEncoder.d.ts +0 -10
  815. package/lib/cjs/internal/typed-data/service/TypedDataParser.d.ts +0 -73
  816. package/lib/cjs/internal/typed-data/service/TypedDataParser.d.ts.map +0 -1
  817. package/lib/cjs/internal/typed-data/service/TypedDataParserService.d.ts +0 -12
  818. package/lib/cjs/internal/typed-data/service/TypedDataParserService.d.ts.map +0 -1
  819. package/lib/esm/api/KeyringEth.d.ts +0 -15
  820. package/lib/esm/api/KeyringEth.d.ts.map +0 -1
  821. package/lib/esm/api/KeyringEth.js +0 -2
  822. package/lib/esm/api/KeyringEth.js.map +0 -1
  823. package/lib/esm/api/KeyringEthBuilder.d.ts +0 -38
  824. package/lib/esm/api/KeyringEthBuilder.d.ts.map +0 -1
  825. package/lib/esm/api/KeyringEthBuilder.js +0 -45
  826. package/lib/esm/api/KeyringEthBuilder.js.map +0 -1
  827. package/lib/esm/api/app-binder/GetAddressCommandTypes.d.ts +0 -11
  828. package/lib/esm/api/app-binder/GetAddressCommandTypes.d.ts.map +0 -1
  829. package/lib/esm/api/app-binder/GetAddressDeviceActionTypes.d.ts +0 -9
  830. package/lib/esm/api/app-binder/GetAddressDeviceActionTypes.d.ts.map +0 -1
  831. package/lib/esm/api/app-binder/SignPersonalMessageDeviceActionTypes.d.ts.map +0 -1
  832. package/lib/esm/api/app-binder/SignTransactionDeviceActionTypes.d.ts +0 -31
  833. package/lib/esm/api/app-binder/SignTransactionDeviceActionTypes.d.ts.map +0 -1
  834. package/lib/esm/api/app-binder/SignTypedDataDeviceActionTypes.d.ts +0 -27
  835. package/lib/esm/api/app-binder/SignTypedDataDeviceActionTypes.d.ts.map +0 -1
  836. package/lib/esm/api/index.d.ts +0 -13
  837. package/lib/esm/api/index.d.ts.map +0 -1
  838. package/lib/esm/api/model/Address.d.ts +0 -7
  839. package/lib/esm/api/model/Address.d.ts.map +0 -1
  840. package/lib/esm/api/model/AddressOptions.d.ts +0 -5
  841. package/lib/esm/api/model/AddressOptions.d.ts.map +0 -1
  842. package/lib/esm/api/model/Signature.d.ts +0 -7
  843. package/lib/esm/api/model/Signature.d.ts.map +0 -1
  844. package/lib/esm/api/model/Transaction.d.ts +0 -4
  845. package/lib/esm/api/model/Transaction.d.ts.map +0 -1
  846. package/lib/esm/api/model/TransactionOptions.d.ts +0 -4
  847. package/lib/esm/api/model/TransactionOptions.d.ts.map +0 -1
  848. package/lib/esm/api/model/TypedData.d.ts +0 -18
  849. package/lib/esm/api/model/TypedData.d.ts.map +0 -1
  850. package/lib/esm/index.d.ts +0 -3
  851. package/lib/esm/index.d.ts.map +0 -1
  852. package/lib/esm/internal/DefaultKeyringEth.d.ts +0 -26
  853. package/lib/esm/internal/DefaultKeyringEth.d.ts.map +0 -1
  854. package/lib/esm/internal/DefaultKeyringEth.js +0 -32
  855. package/lib/esm/internal/DefaultKeyringEth.js.map +0 -1
  856. package/lib/esm/internal/address/di/addressModule.d.ts +0 -3
  857. package/lib/esm/internal/address/di/addressModule.d.ts.map +0 -1
  858. package/lib/esm/internal/address/di/addressTypes.d.ts +0 -4
  859. package/lib/esm/internal/address/di/addressTypes.d.ts.map +0 -1
  860. package/lib/esm/internal/address/use-case/GetAddressUseCase.d.ts +0 -9
  861. package/lib/esm/internal/address/use-case/GetAddressUseCase.d.ts.map +0 -1
  862. package/lib/esm/internal/app-binder/EthAppBinder.d.ts +0 -38
  863. package/lib/esm/internal/app-binder/EthAppBinder.d.ts.map +0 -1
  864. package/lib/esm/internal/app-binder/command/GetAddressCommand.d.ts +0 -9
  865. package/lib/esm/internal/app-binder/command/GetAddressCommand.d.ts.map +0 -1
  866. package/lib/esm/internal/app-binder/command/GetChallengeCommand.d.ts.map +0 -1
  867. package/lib/esm/internal/app-binder/command/ProvideDomainNameCommand.d.ts +0 -19
  868. package/lib/esm/internal/app-binder/command/ProvideDomainNameCommand.d.ts.map +0 -1
  869. package/lib/esm/internal/app-binder/command/ProvideDomainNameCommand.js +0 -37
  870. package/lib/esm/internal/app-binder/command/ProvideDomainNameCommand.js.map +0 -1
  871. package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.d.ts +0 -15
  872. package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.d.ts.map +0 -1
  873. package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.d.ts +0 -14
  874. package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.d.ts.map +0 -1
  875. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.d.ts +0 -41
  876. package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.d.ts.map +0 -1
  877. package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.d.ts.map +0 -1
  878. package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.d.ts.map +0 -1
  879. package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.d.ts.map +0 -1
  880. package/lib/esm/internal/app-binder/command/SetPluginCommand.d.ts +0 -18
  881. package/lib/esm/internal/app-binder/command/SetPluginCommand.d.ts.map +0 -1
  882. package/lib/esm/internal/app-binder/command/SignEIP712Command.d.ts.map +0 -1
  883. package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.d.ts +0 -21
  884. package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.d.ts.map +0 -1
  885. package/lib/esm/internal/app-binder/command/SignTransactionCommand.d.ts.map +0 -1
  886. package/lib/esm/internal/app-binder/device-action/SignPersonalMessage/SignPersonalMessageDeviceAction.d.ts.map +0 -1
  887. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts +0 -39
  888. package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts.map +0 -1
  889. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts +0 -31
  890. package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts.map +0 -1
  891. package/lib/esm/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts +0 -3
  892. package/lib/esm/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts.map +0 -1
  893. package/lib/esm/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.d.ts +0 -2
  894. package/lib/esm/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.d.ts.map +0 -1
  895. package/lib/esm/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts +0 -12
  896. package/lib/esm/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts.map +0 -1
  897. package/lib/esm/internal/app-binder/di/appBinderModule.d.ts +0 -3
  898. package/lib/esm/internal/app-binder/di/appBinderModule.d.ts.map +0 -1
  899. package/lib/esm/internal/app-binder/di/appBinderTypes.d.ts +0 -4
  900. package/lib/esm/internal/app-binder/di/appBinderTypes.d.ts.map +0 -1
  901. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.d.ts +0 -16
  902. package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.d.ts.map +0 -1
  903. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.d.ts +0 -21
  904. package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.d.ts.map +0 -1
  905. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.d.ts +0 -21
  906. package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.d.ts.map +0 -1
  907. package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.d.ts.map +0 -1
  908. package/lib/esm/internal/app-binder/task/SendEIP712StructImplemTask.d.ts +0 -19
  909. package/lib/esm/internal/app-binder/task/SendEIP712StructImplemTask.d.ts.map +0 -1
  910. package/lib/esm/internal/app-binder/task/SendSignPersonalMessageTask.d.ts.map +0 -1
  911. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.d.ts +0 -14
  912. package/lib/esm/internal/app-binder/task/SendSignTransactionTask.d.ts.map +0 -1
  913. package/lib/esm/internal/di.d.ts +0 -10
  914. package/lib/esm/internal/di.d.ts.map +0 -1
  915. package/lib/esm/internal/externalTypes.d.ts +0 -6
  916. package/lib/esm/internal/externalTypes.d.ts.map +0 -1
  917. package/lib/esm/internal/message/di/messageModule.d.ts +0 -3
  918. package/lib/esm/internal/message/di/messageModule.d.ts.map +0 -1
  919. package/lib/esm/internal/message/di/messageTypes.d.ts +0 -4
  920. package/lib/esm/internal/message/di/messageTypes.d.ts.map +0 -1
  921. package/lib/esm/internal/message/use-case/SignMessageUseCase.d.ts.map +0 -1
  922. package/lib/esm/internal/shared/utils/DerivationPathUtils.d.ts +0 -5
  923. package/lib/esm/internal/shared/utils/DerivationPathUtils.d.ts.map +0 -1
  924. package/lib/esm/internal/shared/utils/DerivationPathUtils.js +0 -20
  925. package/lib/esm/internal/shared/utils/DerivationPathUtils.js.map +0 -1
  926. package/lib/esm/internal/transaction/di/transactionModule.d.ts +0 -3
  927. package/lib/esm/internal/transaction/di/transactionModule.d.ts.map +0 -1
  928. package/lib/esm/internal/transaction/di/transactionTypes.d.ts +0 -6
  929. package/lib/esm/internal/transaction/di/transactionTypes.d.ts.map +0 -1
  930. package/lib/esm/internal/transaction/service/mapper/EthersV5TransactionMapper.d.ts +0 -10
  931. package/lib/esm/internal/transaction/service/mapper/EthersV5TransactionMapper.d.ts.map +0 -1
  932. package/lib/esm/internal/transaction/service/mapper/EthersV6TransactionMapper.d.ts.map +0 -1
  933. package/lib/esm/internal/transaction/service/mapper/TransactionMapper.d.ts +0 -7
  934. package/lib/esm/internal/transaction/service/mapper/TransactionMapper.d.ts.map +0 -1
  935. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.d.ts +0 -10
  936. package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.d.ts.map +0 -1
  937. package/lib/esm/internal/transaction/service/mapper/model/TransactionMapperResult.d.ts +0 -12
  938. package/lib/esm/internal/transaction/service/mapper/model/TransactionMapperResult.d.ts.map +0 -1
  939. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.d.ts +0 -10
  940. package/lib/esm/internal/transaction/use-case/SignTransactionUseCase.d.ts.map +0 -1
  941. package/lib/esm/internal/typed-data/di/typedDataModule.d.ts +0 -3
  942. package/lib/esm/internal/typed-data/di/typedDataModule.d.ts.map +0 -1
  943. package/lib/esm/internal/typed-data/di/typedDataTypes.d.ts +0 -5
  944. package/lib/esm/internal/typed-data/di/typedDataTypes.d.ts.map +0 -1
  945. package/lib/esm/internal/typed-data/model/Types.d.ts +0 -41
  946. package/lib/esm/internal/typed-data/model/Types.d.ts.map +0 -1
  947. package/lib/esm/internal/typed-data/service/DefaultTypedDataParserService.d.ts +0 -7
  948. package/lib/esm/internal/typed-data/service/DefaultTypedDataParserService.d.ts.map +0 -1
  949. package/lib/esm/internal/typed-data/service/TypedDataEncoder.d.ts.map +0 -1
  950. package/lib/esm/internal/typed-data/service/TypedDataParser.d.ts.map +0 -1
  951. package/lib/esm/internal/typed-data/service/TypedDataParserService.d.ts.map +0 -1
  952. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.d.ts +0 -11
  953. package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.d.ts.map +0 -1
  954. /package/lib/{cjs → types}/api/app-binder/GetAddressCommandTypes.d.ts +0 -0
  955. /package/lib/{cjs → types}/api/app-binder/GetAddressCommandTypes.d.ts.map +0 -0
  956. /package/lib/{cjs → types}/api/model/AddressOptions.d.ts +0 -0
  957. /package/lib/{cjs → types}/api/model/AddressOptions.d.ts.map +0 -0
  958. /package/lib/{cjs → types}/api/model/TransactionOptions.d.ts +0 -0
  959. /package/lib/{cjs → types}/api/model/TransactionOptions.d.ts.map +0 -0
  960. /package/lib/{cjs → types}/api/model/TypedData.d.ts +0 -0
  961. /package/lib/{cjs → types}/api/model/TypedData.d.ts.map +0 -0
  962. /package/lib/{cjs → types}/index.d.ts +0 -0
  963. /package/lib/{cjs → types}/index.d.ts.map +0 -0
  964. /package/lib/{cjs → types}/internal/address/di/addressModule.d.ts +0 -0
  965. /package/lib/{cjs → types}/internal/address/di/addressModule.d.ts.map +0 -0
  966. /package/lib/{cjs → types}/internal/address/di/addressTypes.d.ts +0 -0
  967. /package/lib/{cjs → types}/internal/address/di/addressTypes.d.ts.map +0 -0
  968. /package/lib/{cjs → types}/internal/address/use-case/GetAddressUseCase.d.ts +0 -0
  969. /package/lib/{cjs → types}/internal/address/use-case/GetAddressUseCase.d.ts.map +0 -0
  970. /package/lib/{cjs → types}/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.d.ts +0 -0
  971. /package/lib/{cjs → types}/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.d.ts.map +0 -0
  972. /package/lib/{cjs → types}/internal/app-binder/di/appBinderModule.d.ts +0 -0
  973. /package/lib/{cjs → types}/internal/app-binder/di/appBinderModule.d.ts.map +0 -0
  974. /package/lib/{cjs → types}/internal/app-binder/di/appBinderTypes.d.ts +0 -0
  975. /package/lib/{cjs → types}/internal/app-binder/di/appBinderTypes.d.ts.map +0 -0
  976. /package/lib/{cjs → types}/internal/app-binder/task/BuildEIP712ContextTask.d.ts +0 -0
  977. /package/lib/{cjs → types}/internal/app-binder/task/SendEIP712StructImplemTask.d.ts +0 -0
  978. /package/lib/{cjs → types}/internal/app-binder/task/SendEIP712StructImplemTask.d.ts.map +0 -0
  979. /package/lib/{cjs → types}/internal/externalTypes.d.ts.map +0 -0
  980. /package/lib/{cjs → types}/internal/message/di/messageModule.d.ts +0 -0
  981. /package/lib/{cjs → types}/internal/message/di/messageModule.d.ts.map +0 -0
  982. /package/lib/{cjs → types}/internal/message/di/messageTypes.d.ts +0 -0
  983. /package/lib/{cjs → types}/internal/message/di/messageTypes.d.ts.map +0 -0
  984. /package/lib/{cjs → types}/internal/transaction/di/transactionModule.d.ts +0 -0
  985. /package/lib/{cjs → types}/internal/transaction/service/mapper/EthersV5TransactionMapper.d.ts +0 -0
  986. /package/lib/{cjs → types}/internal/transaction/service/mapper/TransactionMapperService.d.ts +0 -0
  987. /package/lib/{cjs → types}/internal/transaction/service/mapper/TransactionMapperService.d.ts.map +0 -0
  988. /package/lib/{cjs → types}/internal/transaction/use-case/SignTransactionUseCase.d.ts +0 -0
  989. /package/lib/{cjs → types}/internal/transaction/use-case/SignTransactionUseCase.d.ts.map +0 -0
  990. /package/lib/{cjs → types}/internal/typed-data/di/typedDataModule.d.ts +0 -0
  991. /package/lib/{cjs → types}/internal/typed-data/di/typedDataModule.d.ts.map +0 -0
  992. /package/lib/{cjs → types}/internal/typed-data/di/typedDataTypes.d.ts +0 -0
  993. /package/lib/{cjs → types}/internal/typed-data/di/typedDataTypes.d.ts.map +0 -0
  994. /package/lib/{cjs → types}/internal/typed-data/service/DefaultTypedDataParserService.d.ts +0 -0
  995. /package/lib/{cjs → types}/internal/typed-data/service/DefaultTypedDataParserService.d.ts.map +0 -0
  996. /package/lib/{cjs → types}/internal/typed-data/use-case/SignTypedDataUseCase.d.ts +0 -0
  997. /package/lib/{cjs → types}/internal/typed-data/use-case/SignTypedDataUseCase.d.ts.map +0 -0
@@ -1 +1,7 @@
1
- {"version":3,"file":"DefaultTypedDataParserService.js","sourceRoot":"","sources":["../../../../../src/internal/typed-data/service/DefaultTypedDataParserService.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAKvC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAO7C,IAAM,6BAA6B,GAAnC,MAAM,6BAA6B;IACxC,KAAK,CAAC,IAAe;QACnB,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,MAAM,CAAC,oBAAoB,EAAE,CAAC;QAC5C,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAC/B,cAAc,EACd,IAAI,CAAC,MAAiC,CACvC,CAAC;QACF,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACnE,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,CACnC,aAAa,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC9B,KAAK;YACL,MAAM;YACN,OAAO;SACR,CAAC,CAAC,CACJ,CAAC;IACJ,CAAC;CACF,CAAA;AAjBY,6BAA6B;IADzC,UAAU,EAAE;GACA,6BAA6B,CAiBzC"}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/typed-data/service/DefaultTypedDataParserService.ts"],
4
+ "sourcesContent": ["import { injectable } from \"inversify\";\nimport { Either } from \"purify-ts\";\n\nimport { TypedData } from \"@api/model/TypedData\";\n\nimport { TypedDataParser } from \"./TypedDataParser\";\nimport {\n ParsedTypedData,\n TypedDataParserService,\n} from \"./TypedDataParserService\";\n\n@injectable()\nexport class DefaultTypedDataParserService implements TypedDataParserService {\n parse(data: TypedData): Either<Error, ParsedTypedData> {\n const parser = new TypedDataParser(data.types);\n const types = parser.getStructDefinitions();\n const domainResult = parser.parse(\n \"EIP712Domain\",\n data.domain as Record<string, unknown>,\n );\n const messageResult = parser.parse(data.primaryType, data.message);\n return domainResult.chain((domain) =>\n messageResult.map((message) => ({\n types,\n domain,\n message,\n })),\n );\n }\n}\n"],
5
+ "mappings": "wMAAA,OAAS,cAAAA,MAAkB,YAK3B,OAAS,mBAAAC,MAAuB,oBAOzB,IAAMC,EAAN,KAAsE,CAC3E,MAAMC,EAAiD,CACrD,MAAMC,EAAS,IAAIC,EAAgBF,EAAK,KAAK,EACvCG,EAAQF,EAAO,qBAAqB,EACpCG,EAAeH,EAAO,MAC1B,eACAD,EAAK,MACP,EACMK,EAAgBJ,EAAO,MAAMD,EAAK,YAAaA,EAAK,OAAO,EACjE,OAAOI,EAAa,MAAOE,GACzBD,EAAc,IAAKE,IAAa,CAC9B,MAAAJ,EACA,OAAAG,EACA,QAAAC,CACF,EAAE,CACJ,CACF,CACF,EAjBaR,EAANS,EAAA,CADNC,EAAW,GACCV",
6
+ "names": ["injectable", "TypedDataParser", "DefaultTypedDataParserService", "data", "parser", "TypedDataParser", "types", "domainResult", "messageResult", "domain", "message", "__decorateClass", "injectable"]
7
+ }
@@ -1,98 +1,2 @@
1
- import { hexaStringToBuffer } from "@ledgerhq/device-management-kit";
2
- import { Just, Maybe, Nothing } from "purify-ts";
3
- /**
4
- * Encodes a typed data value according to its type.
5
- * @param type The type of the value to encode.
6
- * @param value The value to encode into a byte array.
7
- * @returns An optional Uint8Array containing the encoded value, if the value was encodable for the given type.
8
- */
9
- export function encodeTypedDataValue(type, value) {
10
- switch (type.name) {
11
- case "string":
12
- // Encode the value as a UTF-8 string
13
- return typeof value !== "string"
14
- ? Nothing
15
- : Just(new TextEncoder().encode(value));
16
- case "bytes":
17
- case "address":
18
- // Encode the hexadecimal string as bytes
19
- return typeof value !== "string"
20
- ? Nothing
21
- : encodeTypedDataBytes(type, value);
22
- case "bool":
23
- case "uint":
24
- case "int":
25
- // Convert boolean values to numbers, so it can then be encoded as a number
26
- if (type.name === "bool" && typeof value === "boolean") {
27
- value = Number(value);
28
- }
29
- // Encode the value as a number
30
- return typeof value !== "string" &&
31
- typeof value !== "number" &&
32
- typeof value !== "bigint"
33
- ? Nothing
34
- : encodeTypedDataNumber(type.name, type.size.mapOrDefault((s) => s * 8, 1), // Size in bits
35
- value);
36
- }
37
- }
38
- function encodeTypedDataBytes(type, value) {
39
- const maxSize = type.name === "address" ? Just(20) : type.size;
40
- const buffer = Maybe.fromNullable(hexaStringToBuffer(value));
41
- return buffer.filter((b) => maxSize.mapOrDefault((s) => b.length <= s, true));
42
- }
43
- function encodeTypedDataNumber(type, sizeInBits, value) {
44
- // Convert the value to a bigint
45
- let bigintValue;
46
- switch (typeof value) {
47
- case "bigint":
48
- bigintValue = value;
49
- break;
50
- case "number":
51
- if (!Number.isInteger(value)) {
52
- return Nothing;
53
- }
54
- bigintValue = BigInt(value);
55
- break;
56
- case "string":
57
- if (value.length === 0) {
58
- return Nothing;
59
- }
60
- try {
61
- bigintValue = BigInt(value);
62
- }
63
- catch (_error) {
64
- return Nothing;
65
- }
66
- break;
67
- }
68
- // Check the bounds of the value and convert it to two's complement if it is signed and negative
69
- const signed = type === "int";
70
- return checkBoundsAndConvert(bigintValue, BigInt(sizeInBits), signed).chain((converted) => Maybe.fromNullable(hexaStringToBuffer(converted.toString(16))));
71
- }
72
- /**
73
- * Checks the bounds of a signed or unsigned integer value and converts it to two's complement if it is signed and negative.
74
- * @param value The value to check and convert.
75
- * @param sizeInBits The size of the value in bits.
76
- * @param signed Whether the value is signed or unsigned.
77
- * @returns The converted value, or null if the value is out of bounds.
78
- */
79
- function checkBoundsAndConvert(value, sizeInBits, signed) {
80
- if (!signed) {
81
- // Check if the value is within the bounds of an unsigned integer
82
- return value >= 0n && value < 1n << sizeInBits ? Just(value) : Nothing;
83
- }
84
- // Check if the value is within the bounds of a signed integer
85
- const limit = 1n << (sizeInBits - 1n);
86
- if (value >= limit || value < -limit) {
87
- return Nothing;
88
- }
89
- // Convert the value to two's complement if it is negative
90
- // https://en.wikipedia.org/wiki/Two%27s_complement
91
- if (value < 0n) {
92
- const mask = (1n << sizeInBits) - 1n;
93
- value = -value;
94
- value = (~value & mask) + 1n;
95
- }
96
- return Just(value);
97
- }
98
- //# sourceMappingURL=TypedDataEncoder.js.map
1
+ import{hexaStringToBuffer as f}from"@ledgerhq/device-management-kit";import{Just as s,Maybe as m,Nothing as i}from"purify-ts";function d(n,t){switch(n.name){case"string":return typeof t!="string"?i:s(new TextEncoder().encode(t));case"bytes":case"address":return typeof t!="string"?i:c(n,t);case"bool":case"uint":case"int":return n.name==="bool"&&typeof t=="boolean"&&(t=Number(t)),typeof t!="string"&&typeof t!="number"&&typeof t!="bigint"?i:g(n.name,n.size.mapOrDefault(r=>r*8,1),t)}}function c(n,t){const r=n.name==="address"?s(20):n.size;return m.fromNullable(f(t)).filter(o=>r.mapOrDefault(b=>o.length<=b,!0))}function g(n,t,r){let e;switch(typeof r){case"bigint":e=r;break;case"number":if(!Number.isInteger(r))return i;e=BigInt(r);break;case"string":if(r.length===0)return i;try{e=BigInt(r)}catch{return i}break}const o=n==="int";return a(e,BigInt(t),o).chain(b=>m.fromNullable(f(b.toString(16))))}function a(n,t,r){if(!r)return n>=0n&&n<1n<<t?s(n):i;const e=1n<<t-1n;if(n>=e||n<-e)return i;if(n<0n){const o=(1n<<t)-1n;n=-n,n=(~n&o)+1n}return s(n)}export{d as encodeTypedDataValue};
2
+ //# sourceMappingURL=TypedDataEncoder.js.map
@@ -1 +1,7 @@
1
- {"version":3,"file":"TypedDataEncoder.js","sourceRoot":"","sources":["../../../../../src/internal/typed-data/service/TypedDataEncoder.ts"],"names":[],"mappings":"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"}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/typed-data/service/TypedDataEncoder.ts"],
4
+ "sourcesContent": ["import { hexaStringToBuffer } from \"@ledgerhq/device-management-kit\";\nimport { Just, Maybe, Nothing } from \"purify-ts\";\n\nimport {\n type PrimitiveType,\n type PrimitiveTypeName,\n} from \"@internal/typed-data/model/Types\";\n\n/**\n * Encodes a typed data value according to its type.\n * @param type The type of the value to encode.\n * @param value The value to encode into a byte array.\n * @returns An optional Uint8Array containing the encoded value, if the value was encodable for the given type.\n */\nexport function encodeTypedDataValue(\n type: PrimitiveType,\n value: unknown,\n): Maybe<Uint8Array> {\n switch (type.name) {\n case \"string\":\n // Encode the value as a UTF-8 string\n return typeof value !== \"string\"\n ? Nothing\n : Just(new TextEncoder().encode(value));\n case \"bytes\":\n case \"address\":\n // Encode the hexadecimal string as bytes\n return typeof value !== \"string\"\n ? Nothing\n : encodeTypedDataBytes(type, value);\n case \"bool\":\n case \"uint\":\n case \"int\":\n // Convert boolean values to numbers, so it can then be encoded as a number\n if (type.name === \"bool\" && typeof value === \"boolean\") {\n value = Number(value);\n }\n // Encode the value as a number\n return typeof value !== \"string\" &&\n typeof value !== \"number\" &&\n typeof value !== \"bigint\"\n ? Nothing\n : encodeTypedDataNumber(\n type.name,\n type.size.mapOrDefault((s) => s * 8, 1), // Size in bits\n value,\n );\n }\n}\n\nfunction encodeTypedDataBytes(\n type: PrimitiveType,\n value: string,\n): Maybe<Uint8Array> {\n const maxSize = type.name === \"address\" ? Just(20) : type.size;\n const buffer = Maybe.fromNullable(hexaStringToBuffer(value));\n return buffer.filter((b) => maxSize.mapOrDefault((s) => b.length <= s, true));\n}\n\nfunction encodeTypedDataNumber(\n type: PrimitiveTypeName,\n sizeInBits: number,\n value: string | number | bigint,\n): Maybe<Uint8Array> {\n // Convert the value to a bigint\n let bigintValue: bigint;\n switch (typeof value) {\n case \"bigint\":\n bigintValue = value;\n break;\n case \"number\":\n if (!Number.isInteger(value)) {\n return Nothing;\n }\n bigintValue = BigInt(value);\n break;\n case \"string\":\n if (value.length === 0) {\n return Nothing;\n }\n try {\n bigintValue = BigInt(value);\n } catch (_error: unknown) {\n return Nothing;\n }\n break;\n }\n // Check the bounds of the value and convert it to two's complement if it is signed and negative\n const signed = type === \"int\";\n return checkBoundsAndConvert(bigintValue, BigInt(sizeInBits), signed).chain(\n (converted) =>\n Maybe.fromNullable(hexaStringToBuffer(converted.toString(16))),\n );\n}\n\n/**\n * Checks the bounds of a signed or unsigned integer value and converts it to two's complement if it is signed and negative.\n * @param value The value to check and convert.\n * @param sizeInBits The size of the value in bits.\n * @param signed Whether the value is signed or unsigned.\n * @returns The converted value, or null if the value is out of bounds.\n */\nfunction checkBoundsAndConvert(\n value: bigint,\n sizeInBits: bigint,\n signed: boolean,\n): Maybe<bigint> {\n if (!signed) {\n // Check if the value is within the bounds of an unsigned integer\n return value >= 0n && value < 1n << sizeInBits ? Just(value) : Nothing;\n }\n\n // Check if the value is within the bounds of a signed integer\n const limit = 1n << (sizeInBits - 1n);\n if (value >= limit || value < -limit) {\n return Nothing;\n }\n\n // Convert the value to two's complement if it is negative\n // https://en.wikipedia.org/wiki/Two%27s_complement\n if (value < 0n) {\n const mask = (1n << sizeInBits) - 1n;\n value = -value;\n value = (~value & mask) + 1n;\n }\n\n return Just(value);\n}\n"],
5
+ "mappings": "AAAA,OAAS,sBAAAA,MAA0B,kCACnC,OAAS,QAAAC,EAAM,SAAAC,EAAO,WAAAC,MAAe,YAa9B,SAASC,EACdC,EACAC,EACmB,CACnB,OAAQD,EAAK,KAAM,CACjB,IAAK,SAEH,OAAO,OAAOC,GAAU,SACpBH,EACAF,EAAK,IAAI,YAAY,EAAE,OAAOK,CAAK,CAAC,EAC1C,IAAK,QACL,IAAK,UAEH,OAAO,OAAOA,GAAU,SACpBH,EACAI,EAAqBF,EAAMC,CAAK,EACtC,IAAK,OACL,IAAK,OACL,IAAK,MAEH,OAAID,EAAK,OAAS,QAAU,OAAOC,GAAU,YAC3CA,EAAQ,OAAOA,CAAK,GAGf,OAAOA,GAAU,UACtB,OAAOA,GAAU,UACjB,OAAOA,GAAU,SACfH,EACAK,EACEH,EAAK,KACLA,EAAK,KAAK,aAAcI,GAAMA,EAAI,EAAG,CAAC,EACtCH,CACF,CACR,CACF,CAEA,SAASC,EACPF,EACAC,EACmB,CACnB,MAAMI,EAAUL,EAAK,OAAS,UAAYJ,EAAK,EAAE,EAAII,EAAK,KAE1D,OADeH,EAAM,aAAaF,EAAmBM,CAAK,CAAC,EAC7C,OAAQK,GAAMD,EAAQ,aAAcD,GAAME,EAAE,QAAUF,EAAG,EAAI,CAAC,CAC9E,CAEA,SAASD,EACPH,EACAO,EACAN,EACmB,CAEnB,IAAIO,EACJ,OAAQ,OAAOP,EAAO,CACpB,IAAK,SACHO,EAAcP,EACd,MACF,IAAK,SACH,GAAI,CAAC,OAAO,UAAUA,CAAK,EACzB,OAAOH,EAETU,EAAc,OAAOP,CAAK,EAC1B,MACF,IAAK,SACH,GAAIA,EAAM,SAAW,EACnB,OAAOH,EAET,GAAI,CACFU,EAAc,OAAOP,CAAK,CAC5B,MAA0B,CACxB,OAAOH,CACT,CACA,KACJ,CAEA,MAAMW,EAAST,IAAS,MACxB,OAAOU,EAAsBF,EAAa,OAAOD,CAAU,EAAGE,CAAM,EAAE,MACnEE,GACCd,EAAM,aAAaF,EAAmBgB,EAAU,SAAS,EAAE,CAAC,CAAC,CACjE,CACF,CASA,SAASD,EACPT,EACAM,EACAE,EACe,CACf,GAAI,CAACA,EAEH,OAAOR,GAAS,IAAMA,EAAQ,IAAMM,EAAaX,EAAKK,CAAK,EAAIH,EAIjE,MAAMc,EAAQ,IAAOL,EAAa,GAClC,GAAIN,GAASW,GAASX,EAAQ,CAACW,EAC7B,OAAOd,EAKT,GAAIG,EAAQ,GAAI,CACd,MAAMY,GAAQ,IAAMN,GAAc,GAClCN,EAAQ,CAACA,EACTA,GAAS,CAACA,EAAQY,GAAQ,EAC5B,CAEA,OAAOjB,EAAKK,CAAK,CACnB",
6
+ "names": ["hexaStringToBuffer", "Just", "Maybe", "Nothing", "encodeTypedDataValue", "type", "value", "encodeTypedDataBytes", "encodeTypedDataNumber", "s", "maxSize", "b", "sizeInBits", "bigintValue", "signed", "checkBoundsAndConvert", "converted", "limit", "mask"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{Just as x,Nothing as e}from"purify-ts";import{PrimitiveType as a}from"../../typed-data/model/Types";import{encodeTypedDataValue as n}from"./TypedDataEncoder";describe("TypedDataEncoder",()=>{const i=new a("address","address",e),E=new a("bytes","bytes",e),D=new a("bytes","bytes",x(7)),C=new a("string","string",e),l=new a("bool","bool",e),r=new a("int8","int",x(1)),s=new a("int16","int",x(2)),y=new a("int32","int",x(4)),u=new a("int64","int",x(8)),b=new a("int128","int",x(16)),p=new a("int256","int",x(32)),o=new a("uint8","uint",x(1)),m=new a("uint16","uint",x(2)),v=new a("uint32","uint",x(4)),A=new a("uint64","uint",x(8)),U=new a("uint128","uint",x(16)),F=new a("uint256","uint",x(32));it("Encode an address",()=>{const f=["0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC","0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826","0xDeaDbeefdEAdbeefdEadbEEFdeadbeEFdEaDbeeF","0xB0BdaBea57B0BDABeA57b0bdABEA57b0BDabEa57","0xBdaBea57B0BDABeA57b0bdABEA57b0BDabEa57"].map(t=>n(i,t)),c=[x(Uint8Array.from([204,204,204,204,204,204,204,204,204,204,204,204,204,204,204,204,204,204,204,204])),x(Uint8Array.from([205,42,61,159,147,142,19,205,148,126,192,90,188,127,231,52,223,141,216,38])),x(Uint8Array.from([222,173,190,239,222,173,190,239,222,173,190,239,222,173,190,239,222,173,190,239])),x(Uint8Array.from([176,189,171,234,87,176,189,171,234,87,176,189,171,234,87,176,189,171,234,87])),x(Uint8Array.from([189,171,234,87,176,189,171,234,87,176,189,171,234,87,176,189,171,234,87]))];expect(f).toStrictEqual(c)}),it("Encode an address with invalid size",()=>{const f=n(i,"0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccCff");expect(f).toStrictEqual(e)}),it("Encode an address with invalid value",()=>{const f=n(i,"0xbonjourcCCCCcCCCCCCcCcCccCcCCCcCcccccccC");expect(f).toStrictEqual(e)}),it("Encode an address with invalid value type",()=>{const f=n(i,17);expect(f).toStrictEqual(e)}),it("Encode an byte array",()=>{const f=["0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcc","0x13CD947Ec05AbC7FE734Df8DD826","0xDeaDbeefdEAdbeefdEadbEEFdeadbeEFdEaDbeeFbeeF","0xBDabEa57"].map(t=>n(E,t)),c=[x(Uint8Array.from([204,204,204,204,204,204,204,204,204,204,204,204,204,204,204,204,204])),x(Uint8Array.from([19,205,148,126,192,90,188,127,231,52,223,141,216,38])),x(Uint8Array.from([222,173,190,239,222,173,190,239,222,173,190,239,222,173,190,239,222,173,190,239,190,239])),x(Uint8Array.from([189,171,234,87]))];expect(f).toStrictEqual(c)}),it("Encode an byte array with size",()=>{const f=["0x13CD947Ec05AbC","0x13CD947Ec05A","0x13CD947Ec05AbCde"].map(t=>n(D,t)),c=[x(Uint8Array.from([19,205,148,126,192,90,188])),x(Uint8Array.from([19,205,148,126,192,90])),e];expect(f).toStrictEqual(c)}),it("Encode a string",()=>{const f=["Hello, Bob!",'"did:ethr:0xf7398bacf610bb4e3b567811279fcb3c41919f89"','"2021-03-04T21:08:22.615Z"^^<http://www.w3.org/2001/XMLSchema#dateTime>',"_<did:key:z6MkgFneaaMjN6zybqLNXgt4YfmVx2XZhzPdDyk4ZK81daHZ>"].map(t=>n(C,t)),c=[x(Uint8Array.from([72,101,108,108,111,44,32,66,111,98,33])),x(Uint8Array.from([34,100,105,100,58,101,116,104,114,58,48,120,102,55,51,57,56,98,97,99,102,54,49,48,98,98,52,101,51,98,53,54,55,56,49,49,50,55,57,102,99,98,51,99,52,49,57,49,57,102,56,57,34])),x(Uint8Array.from([34,50,48,50,49,45,48,51,45,48,52,84,50,49,58,48,56,58,50,50,46,54,49,53,90,34,94,94,60,104,116,116,112,58,47,47,119,119,119,46,119,51,46,111,114,103,47,50,48,48,49,47,88,77,76,83,99,104,101,109,97,35,100,97,116,101,84,105,109,101,62])),x(Uint8Array.from([95,60,100,105,100,58,107,101,121,58,122,54,77,107,103,70,110,101,97,97,77,106,78,54,122,121,98,113,76,78,88,103,116,52,89,102,109,86,120,50,88,90,104,122,80,100,68,121,107,52,90,75,56,49,100,97,72,90,62]))];expect(f).toStrictEqual(c)}),it("Encode a string with invalid value type",()=>{const f=n(C,17);expect(f).toStrictEqual(e)}),it("Encode a signed number",()=>{const f=[{type:r,value:127},{type:r,value:-128},{type:s,value:"32767"},{type:s,value:"-32768"},{type:y,value:"0x7FFFFFFF"},{type:y,value:"-2147483648"},{type:u,value:9223372036854775807n},{type:u,value:-9223372036854775808n},{type:b,value:"170141183460469231731687303715884105727"},{type:b,value:"-170141183460469231731687303715884105728"},{type:p,value:57896044618658097711785492504343953926634992332820282019728792003956564819967n},{type:p,value:-57896044618658097711785492504343953926634992332820282019728792003956564819968n}].map(t=>n(t.type,t.value)),c=[x(Uint8Array.from([127])),x(Uint8Array.from([128])),x(Uint8Array.from([127,255])),x(Uint8Array.from([128,0])),x(Uint8Array.from([127,255,255,255])),x(Uint8Array.from([128,0,0,0])),x(Uint8Array.from([127,255,255,255,255,255,255,255])),x(Uint8Array.from([128,0,0,0,0,0,0,0])),x(Uint8Array.from([127,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255])),x(Uint8Array.from([128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0])),x(Uint8Array.from([127,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255])),x(Uint8Array.from([128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]))];expect(f).toStrictEqual(c)}),it("Encode a signed number, out of bounds",()=>{const f=[{type:r,value:""},{type:r,value:128},{type:r,value:-129},{type:s,value:"32768"},{type:s,value:"-32769"},{type:y,value:"0xFFFFFFFF"},{type:y,value:"-2147483649"},{type:u,value:9223372036854775808n},{type:u,value:-9223372036854775809n},{type:b,value:"170141183460469231731687303715884105728"},{type:b,value:"-170141183460469231731687303715884105729"},{type:p,value:57896044618658097711785492504343953926634992332820282019728792003956564819968n},{type:p,value:-57896044618658097711785492504343953926634992332820282019728792003956564819969n}].map(t=>n(t.type,t.value)),c=[e,e,e,e,e,e,e,e,e,e,e,e,e];expect(f).toStrictEqual(c)}),it("Encode an unsigned number",()=>{const f=[{type:o,value:0},{type:o,value:255},{type:m,value:"65535"},{type:v,value:"0xFFFFFFFF"},{type:A,value:18446744073709551615n},{type:U,value:"340282366920938463463374607431768211455"},{type:F,value:115792089237316195423570985008687907853269984665640564039457584007913129639935n}].map(t=>n(t.type,t.value)),c=[x(Uint8Array.from([0])),x(Uint8Array.from([255])),x(Uint8Array.from([255,255])),x(Uint8Array.from([255,255,255,255])),x(Uint8Array.from([255,255,255,255,255,255,255,255])),x(Uint8Array.from([255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255])),x(Uint8Array.from([255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255]))];expect(f).toStrictEqual(c)}),it("Encode an unsigned number, out of bound",()=>{const f=[{type:o,value:""},{type:o,value:.5},{type:o,value:-1},{type:o,value:256},{type:m,value:"65536"},{type:v,value:"0x100000000"},{type:A,value:18446744073709551616n},{type:U,value:"340282366920938463463374607431768211456"},{type:F,value:115792089237316195423570985008687907853269984665640564039457584007913129639936n}].map(t=>n(t.type,t.value)),c=[e,e,e,e,e,e,e,e,e];expect(f).toStrictEqual(c)}),it("Encode a boolean",()=>{const f=[!1,!0,0,1,"0","0x1"].map(t=>n(l,t)),c=[x(Uint8Array.from([0])),x(Uint8Array.from([1])),x(Uint8Array.from([0])),x(Uint8Array.from([1])),x(Uint8Array.from([0])),x(Uint8Array.from([1]))];expect(f).toStrictEqual(c)}),it("Encode a boolean, out of bounds",()=>{const f=[-1,2].map(t=>n(l,t)),c=[e,e];expect(f).toStrictEqual(c)}),it("Encode an invalid data type",()=>{const f=[{type:o,value:!0},{type:r,value:{}},{type:l,value:void 0},{type:C,value:42},{type:E,value:42},{type:i,value:!1}].map(t=>n(t.type,t.value)),c=[e,e,e,e,e,e];expect(f).toStrictEqual(c)})});
2
+ //# sourceMappingURL=TypedDataEncoder.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/typed-data/service/TypedDataEncoder.test.ts"],
4
+ "sourcesContent": ["import { Just, Nothing } from \"purify-ts\";\n\nimport { PrimitiveType } from \"@internal/typed-data/model/Types\";\n\nimport { encodeTypedDataValue } from \"./TypedDataEncoder\";\n\ndescribe(\"TypedDataEncoder\", () => {\n const ADDRESS_TYPE = new PrimitiveType(\"address\", \"address\", Nothing);\n const BYTES_TYPE = new PrimitiveType(\"bytes\", \"bytes\", Nothing);\n const BYTES_TYPE_WITH_LENGTH = new PrimitiveType(\"bytes\", \"bytes\", Just(7));\n const STRING_TYPE = new PrimitiveType(\"string\", \"string\", Nothing);\n const BOOL_TYPE = new PrimitiveType(\"bool\", \"bool\", Nothing);\n const I8_TYPE = new PrimitiveType(\"int8\", \"int\", Just(1));\n const I16_TYPE = new PrimitiveType(\"int16\", \"int\", Just(2));\n const I32_TYPE = new PrimitiveType(\"int32\", \"int\", Just(4));\n const I64_TYPE = new PrimitiveType(\"int64\", \"int\", Just(8));\n const I128_TYPE = new PrimitiveType(\"int128\", \"int\", Just(16));\n const I256_TYPE = new PrimitiveType(\"int256\", \"int\", Just(32));\n const U8_TYPE = new PrimitiveType(\"uint8\", \"uint\", Just(1));\n const U16_TYPE = new PrimitiveType(\"uint16\", \"uint\", Just(2));\n const U32_TYPE = new PrimitiveType(\"uint32\", \"uint\", Just(4));\n const U64_TYPE = new PrimitiveType(\"uint64\", \"uint\", Just(8));\n const U128_TYPE = new PrimitiveType(\"uint128\", \"uint\", Just(16));\n const U256_TYPE = new PrimitiveType(\"uint256\", \"uint\", Just(32));\n\n it(\"Encode an address\", () => {\n // GIVEN\n const addresses = [\n \"0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC\",\n \"0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826\",\n \"0xDeaDbeefdEAdbeefdEadbEEFdeadbeEFdEaDbeeF\",\n \"0xB0BdaBea57B0BDABeA57b0bdABEA57b0BDabEa57\",\n \"0xBdaBea57B0BDABeA57b0bdABEA57b0BDabEa57\",\n ];\n // WHEN\n const encoded = addresses.map((address) =>\n encodeTypedDataValue(ADDRESS_TYPE, address),\n );\n // THEN\n const expected = [\n Just(\n Uint8Array.from([\n 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc,\n 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc,\n ]),\n ),\n Just(\n Uint8Array.from([\n 0xcd, 0x2a, 0x3d, 0x9f, 0x93, 0x8e, 0x13, 0xcd, 0x94, 0x7e, 0xc0,\n 0x5a, 0xbc, 0x7f, 0xe7, 0x34, 0xdf, 0x8d, 0xd8, 0x26,\n ]),\n ),\n Just(\n Uint8Array.from([\n 0xde, 0xad, 0xbe, 0xef, 0xde, 0xad, 0xbe, 0xef, 0xde, 0xad, 0xbe,\n 0xef, 0xde, 0xad, 0xbe, 0xef, 0xde, 0xad, 0xbe, 0xef,\n ]),\n ),\n Just(\n Uint8Array.from([\n 0xb0, 0xbd, 0xab, 0xea, 0x57, 0xb0, 0xbd, 0xab, 0xea, 0x57, 0xb0,\n 0xbd, 0xab, 0xea, 0x57, 0xb0, 0xbd, 0xab, 0xea, 0x57,\n ]),\n ),\n Just(\n Uint8Array.from([\n 0xbd, 0xab, 0xea, 0x57, 0xb0, 0xbd, 0xab, 0xea, 0x57, 0xb0, 0xbd,\n 0xab, 0xea, 0x57, 0xb0, 0xbd, 0xab, 0xea, 0x57,\n ]),\n ),\n ];\n expect(encoded).toStrictEqual(expected);\n });\n\n it(\"Encode an address with invalid size\", () => {\n // GIVEN\n const address = \"0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccCff\";\n // WHEN\n const encoded = encodeTypedDataValue(ADDRESS_TYPE, address);\n // THEN\n expect(encoded).toStrictEqual(Nothing);\n });\n\n it(\"Encode an address with invalid value\", () => {\n // GIVEN\n const address = \"0xbonjourcCCCCcCCCCCCcCcCccCcCCCcCcccccccC\";\n // WHEN\n const encoded = encodeTypedDataValue(ADDRESS_TYPE, address);\n // THEN\n expect(encoded).toStrictEqual(Nothing);\n });\n\n it(\"Encode an address with invalid value type\", () => {\n // GIVEN\n const address = 17;\n // WHEN\n const encoded = encodeTypedDataValue(ADDRESS_TYPE, address);\n // THEN\n expect(encoded).toStrictEqual(Nothing);\n });\n\n it(\"Encode an byte array\", () => {\n // GIVEN\n const bytes = [\n \"0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcc\",\n \"0x13CD947Ec05AbC7FE734Df8DD826\",\n \"0xDeaDbeefdEAdbeefdEadbEEFdeadbeEFdEaDbeeFbeeF\",\n \"0xBDabEa57\",\n ];\n // WHEN\n const encoded = bytes.map((b) => encodeTypedDataValue(BYTES_TYPE, b));\n // THEN\n const expected = [\n Just(\n Uint8Array.from([\n 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc,\n 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc,\n ]),\n ),\n Just(\n Uint8Array.from([\n 0x13, 0xcd, 0x94, 0x7e, 0xc0, 0x5a, 0xbc, 0x7f, 0xe7, 0x34, 0xdf,\n 0x8d, 0xd8, 0x26,\n ]),\n ),\n Just(\n Uint8Array.from([\n 0xde, 0xad, 0xbe, 0xef, 0xde, 0xad, 0xbe, 0xef, 0xde, 0xad, 0xbe,\n 0xef, 0xde, 0xad, 0xbe, 0xef, 0xde, 0xad, 0xbe, 0xef, 0xbe, 0xef,\n ]),\n ),\n Just(Uint8Array.from([0xbd, 0xab, 0xea, 0x57])),\n ];\n expect(encoded).toStrictEqual(expected);\n });\n\n it(\"Encode an byte array with size\", () => {\n // GIVEN\n const bytes = [\"0x13CD947Ec05AbC\", \"0x13CD947Ec05A\", \"0x13CD947Ec05AbCde\"];\n // WHEN\n const encoded = bytes.map((b) =>\n encodeTypedDataValue(BYTES_TYPE_WITH_LENGTH, b),\n );\n // THEN\n const expected = [\n Just(Uint8Array.from([0x13, 0xcd, 0x94, 0x7e, 0xc0, 0x5a, 0xbc])),\n Just(Uint8Array.from([0x13, 0xcd, 0x94, 0x7e, 0xc0, 0x5a])),\n Nothing,\n ];\n expect(encoded).toStrictEqual(expected);\n });\n\n it(\"Encode a string\", () => {\n // GIVEN\n const strings = [\n \"Hello, Bob!\",\n '\"did:ethr:0xf7398bacf610bb4e3b567811279fcb3c41919f89\"',\n '\"2021-03-04T21:08:22.615Z\"^^<http://www.w3.org/2001/XMLSchema#dateTime>',\n \"_<did:key:z6MkgFneaaMjN6zybqLNXgt4YfmVx2XZhzPdDyk4ZK81daHZ>\",\n ];\n // WHEN\n const encoded = strings.map((str) =>\n encodeTypedDataValue(STRING_TYPE, str),\n );\n // THEN\n const expected = [\n Just(\n Uint8Array.from([\n 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x2c, 0x20, 0x42, 0x6f, 0x62, 0x21,\n ]),\n ),\n Just(\n Uint8Array.from([\n 0x22, 0x64, 0x69, 0x64, 0x3a, 0x65, 0x74, 0x68, 0x72, 0x3a, 0x30,\n 0x78, 0x66, 0x37, 0x33, 0x39, 0x38, 0x62, 0x61, 0x63, 0x66, 0x36,\n 0x31, 0x30, 0x62, 0x62, 0x34, 0x65, 0x33, 0x62, 0x35, 0x36, 0x37,\n 0x38, 0x31, 0x31, 0x32, 0x37, 0x39, 0x66, 0x63, 0x62, 0x33, 0x63,\n 0x34, 0x31, 0x39, 0x31, 0x39, 0x66, 0x38, 0x39, 0x22,\n ]),\n ),\n Just(\n Uint8Array.from([\n 0x22, 0x32, 0x30, 0x32, 0x31, 0x2d, 0x30, 0x33, 0x2d, 0x30, 0x34,\n 0x54, 0x32, 0x31, 0x3a, 0x30, 0x38, 0x3a, 0x32, 0x32, 0x2e, 0x36,\n 0x31, 0x35, 0x5a, 0x22, 0x5e, 0x5e, 0x3c, 0x68, 0x74, 0x74, 0x70,\n 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f,\n 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x31, 0x2f, 0x58, 0x4d, 0x4c,\n 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x23, 0x64, 0x61, 0x74, 0x65,\n 0x54, 0x69, 0x6d, 0x65, 0x3e,\n ]),\n ),\n Just(\n Uint8Array.from([\n 0x5f, 0x3c, 0x64, 0x69, 0x64, 0x3a, 0x6b, 0x65, 0x79, 0x3a, 0x7a,\n 0x36, 0x4d, 0x6b, 0x67, 0x46, 0x6e, 0x65, 0x61, 0x61, 0x4d, 0x6a,\n 0x4e, 0x36, 0x7a, 0x79, 0x62, 0x71, 0x4c, 0x4e, 0x58, 0x67, 0x74,\n 0x34, 0x59, 0x66, 0x6d, 0x56, 0x78, 0x32, 0x58, 0x5a, 0x68, 0x7a,\n 0x50, 0x64, 0x44, 0x79, 0x6b, 0x34, 0x5a, 0x4b, 0x38, 0x31, 0x64,\n 0x61, 0x48, 0x5a, 0x3e,\n ]),\n ),\n ];\n expect(encoded).toStrictEqual(expected);\n });\n\n it(\"Encode a string with invalid value type\", () => {\n // GIVEN\n const string = 17;\n // WHEN\n const encoded = encodeTypedDataValue(STRING_TYPE, string);\n // THEN\n expect(encoded).toStrictEqual(Nothing);\n });\n\n it(\"Encode a signed number\", () => {\n // GIVEN\n const signed = [\n { type: I8_TYPE, value: 127 },\n { type: I8_TYPE, value: -128 },\n { type: I16_TYPE, value: \"32767\" },\n { type: I16_TYPE, value: \"-32768\" },\n { type: I32_TYPE, value: \"0x7FFFFFFF\" },\n { type: I32_TYPE, value: \"-2147483648\" },\n { type: I64_TYPE, value: 9223372036854775807n },\n { type: I64_TYPE, value: -9223372036854775808n },\n { type: I128_TYPE, value: \"170141183460469231731687303715884105727\" },\n { type: I128_TYPE, value: \"-170141183460469231731687303715884105728\" },\n {\n type: I256_TYPE,\n value:\n 57896044618658097711785492504343953926634992332820282019728792003956564819967n,\n },\n {\n type: I256_TYPE,\n value:\n -57896044618658097711785492504343953926634992332820282019728792003956564819968n,\n },\n ];\n // WHEN\n const encoded = signed.map((s) => encodeTypedDataValue(s.type, s.value));\n // THEN\n const expected = [\n Just(Uint8Array.from([0x7f])),\n Just(Uint8Array.from([0x80])),\n Just(Uint8Array.from([0x7f, 0xff])),\n Just(Uint8Array.from([0x80, 0x00])),\n Just(Uint8Array.from([0x7f, 0xff, 0xff, 0xff])),\n Just(Uint8Array.from([0x80, 0x00, 0x00, 0x00])),\n Just(Uint8Array.from([0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff])),\n Just(Uint8Array.from([0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00])),\n Just(\n Uint8Array.from([\n 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n 0xff, 0xff, 0xff, 0xff, 0xff,\n ]),\n ),\n Just(\n Uint8Array.from([\n 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00,\n ]),\n ),\n Just(\n Uint8Array.from([\n 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n ]),\n ),\n Just(\n Uint8Array.from([\n 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n ]),\n ),\n ];\n expect(encoded).toStrictEqual(expected);\n });\n\n it(\"Encode a signed number, out of bounds\", () => {\n // GIVEN\n const signed = [\n { type: I8_TYPE, value: \"\" },\n { type: I8_TYPE, value: 128 },\n { type: I8_TYPE, value: -129 },\n { type: I16_TYPE, value: \"32768\" },\n { type: I16_TYPE, value: \"-32769\" },\n { type: I32_TYPE, value: \"0xFFFFFFFF\" },\n { type: I32_TYPE, value: \"-2147483649\" },\n { type: I64_TYPE, value: 9223372036854775808n },\n { type: I64_TYPE, value: -9223372036854775809n },\n { type: I128_TYPE, value: \"170141183460469231731687303715884105728\" },\n { type: I128_TYPE, value: \"-170141183460469231731687303715884105729\" },\n {\n type: I256_TYPE,\n value:\n 57896044618658097711785492504343953926634992332820282019728792003956564819968n,\n },\n {\n type: I256_TYPE,\n value:\n -57896044618658097711785492504343953926634992332820282019728792003956564819969n,\n },\n ];\n // WHEN\n const encoded = signed.map((s) => encodeTypedDataValue(s.type, s.value));\n // THEN\n const expected = [\n Nothing,\n Nothing,\n Nothing,\n Nothing,\n Nothing,\n Nothing,\n Nothing,\n Nothing,\n Nothing,\n Nothing,\n Nothing,\n Nothing,\n Nothing,\n ];\n expect(encoded).toStrictEqual(expected);\n });\n\n it(\"Encode an unsigned number\", () => {\n // GIVEN\n const unsigned = [\n { type: U8_TYPE, value: 0 },\n { type: U8_TYPE, value: 255 },\n { type: U16_TYPE, value: \"65535\" },\n { type: U32_TYPE, value: \"0xFFFFFFFF\" },\n { type: U64_TYPE, value: 18446744073709551615n },\n { type: U128_TYPE, value: \"340282366920938463463374607431768211455\" },\n {\n type: U256_TYPE,\n value:\n 115792089237316195423570985008687907853269984665640564039457584007913129639935n,\n },\n ];\n // WHEN\n const encoded = unsigned.map((s) => encodeTypedDataValue(s.type, s.value));\n // THEN\n const expected = [\n Just(Uint8Array.from([0x00])),\n Just(Uint8Array.from([0xff])),\n Just(Uint8Array.from([0xff, 0xff])),\n Just(Uint8Array.from([0xff, 0xff, 0xff, 0xff])),\n Just(Uint8Array.from([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff])),\n Just(\n Uint8Array.from([\n 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n 0xff, 0xff, 0xff, 0xff, 0xff,\n ]),\n ),\n Just(\n Uint8Array.from([\n 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n ]),\n ),\n ];\n expect(encoded).toStrictEqual(expected);\n });\n\n it(\"Encode an unsigned number, out of bound\", () => {\n // GIVEN\n const unsigned = [\n { type: U8_TYPE, value: \"\" },\n { type: U8_TYPE, value: 0.5 },\n { type: U8_TYPE, value: -1 },\n { type: U8_TYPE, value: 256 },\n { type: U16_TYPE, value: \"65536\" },\n { type: U32_TYPE, value: \"0x100000000\" },\n { type: U64_TYPE, value: 18446744073709551616n },\n { type: U128_TYPE, value: \"340282366920938463463374607431768211456\" },\n {\n type: U256_TYPE,\n value:\n 115792089237316195423570985008687907853269984665640564039457584007913129639936n,\n },\n ];\n // WHEN\n const encoded = unsigned.map((s) => encodeTypedDataValue(s.type, s.value));\n // THEN\n const expected = [\n Nothing,\n Nothing,\n Nothing,\n Nothing,\n Nothing,\n Nothing,\n Nothing,\n Nothing,\n Nothing,\n ];\n expect(encoded).toStrictEqual(expected);\n });\n\n it(\"Encode a boolean\", () => {\n // GIVEN\n const bools = [false, true, 0, 1, \"0\", \"0x1\"];\n // WHEN\n const encoded = bools.map((b) => encodeTypedDataValue(BOOL_TYPE, b));\n // THEN\n const expected = [\n Just(Uint8Array.from([0x00])),\n Just(Uint8Array.from([0x01])),\n Just(Uint8Array.from([0x00])),\n Just(Uint8Array.from([0x01])),\n Just(Uint8Array.from([0x00])),\n Just(Uint8Array.from([0x01])),\n ];\n expect(encoded).toStrictEqual(expected);\n });\n\n it(\"Encode a boolean, out of bounds\", () => {\n // GIVEN\n const bools = [-1, 2];\n // WHEN\n const encoded = bools.map((b) => encodeTypedDataValue(BOOL_TYPE, b));\n // THEN\n const expected = [Nothing, Nothing];\n expect(encoded).toStrictEqual(expected);\n });\n\n it(\"Encode an invalid data type\", () => {\n // GIVEN\n const data = [\n { type: U8_TYPE, value: true },\n { type: I8_TYPE, value: {} },\n { type: BOOL_TYPE, value: undefined },\n { type: STRING_TYPE, value: 42 },\n { type: BYTES_TYPE, value: 42 },\n { type: ADDRESS_TYPE, value: false },\n ];\n // WHEN\n const encoded = data.map((d) => encodeTypedDataValue(d.type, d.value));\n // THEN\n const expected = [Nothing, Nothing, Nothing, Nothing, Nothing, Nothing];\n expect(encoded).toStrictEqual(expected);\n });\n});\n"],
5
+ "mappings": "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",
6
+ "names": ["Just", "Nothing", "PrimitiveType", "encodeTypedDataValue", "ADDRESS_TYPE", "BYTES_TYPE", "BYTES_TYPE_WITH_LENGTH", "STRING_TYPE", "BOOL_TYPE", "I8_TYPE", "I16_TYPE", "I32_TYPE", "I64_TYPE", "I128_TYPE", "I256_TYPE", "U8_TYPE", "U16_TYPE", "U32_TYPE", "U64_TYPE", "U128_TYPE", "U256_TYPE", "encoded", "address", "expected", "b", "str", "s", "d"]
7
+ }
@@ -1,207 +1,2 @@
1
- import { Just, Left, Maybe, Nothing, Right } from "purify-ts";
2
- import { ArrayType, PrimitiveType, StructType, TypedDataValueArray, TypedDataValueField, TypedDataValueRoot, } from "../../typed-data/model/Types";
3
- import { encodeTypedDataValue } from "./TypedDataEncoder";
4
- /**
5
- * A parser for EIP-712 typed data messages.
6
- *
7
- * ```typescript
8
- * const types = {
9
- * Person: [
10
- * { name: 'name', type: 'string' },
11
- * { name: 'age', type: 'uint256' },
12
- * { name: "wallets", type: "address[]" },
13
- * ],
14
- * };
15
- * const parser = new TypedDataParser(types);
16
- *
17
- * const message = {
18
- * name: 'Alice',
19
- * age: 30,
20
- * wallets: [
21
- * "0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB",
22
- * "0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB",
23
- * ],
24
- * };
25
- * const rootType = 'Person';
26
- *
27
- * const result = parser.parse(rootType, message);
28
- * ```
29
- */
30
- export class TypedDataParser {
31
- structs;
32
- /**
33
- * Creates a new instance of the TypedDataParser class.
34
- * @param types The types to be used for parsing the message.
35
- */
36
- constructor(types) {
37
- // Parse the types to be used later for parsing a message.
38
- const structs = {};
39
- for (const [typedName, typedData] of Object.entries(types)) {
40
- const parsedTypedData = {};
41
- for (const data of typedData) {
42
- parsedTypedData[data.name] = this.parseType(data.type);
43
- }
44
- structs[typedName] = parsedTypedData;
45
- }
46
- this.structs = structs;
47
- }
48
- /**
49
- * Returns the parsed definitions of custom structs as defined in the types passed to the constructor.
50
- * @returns The struct definitions.
51
- */
52
- getStructDefinitions() {
53
- return this.structs;
54
- }
55
- /**
56
- * Parses a message according to the primary type and the types passed to the constructor.
57
- * @param primaryType The root type of the message.
58
- * @param message The message to parse.
59
- * @returns An Either containing the parsed values or an error.
60
- */
61
- parse(primaryType, message) {
62
- if (!this.isRecord(message)) {
63
- return Left(new Error("Message is not a record"));
64
- }
65
- const values = [
66
- {
67
- path: "",
68
- type: "",
69
- value: new TypedDataValueRoot(primaryType),
70
- },
71
- ];
72
- return this.visitValue(primaryType, message, "", (val) => values.push(val))
73
- ? Right(values)
74
- : Left(new Error("Failed to parse"));
75
- }
76
- isRecord(value) {
77
- return typeof value === "object" && value !== null;
78
- }
79
- /**
80
- * Parses a type string description into a PrimitiveType, ArrayType, or StructType object.
81
- * The description string should match https://eips.ethereum.org/EIPS/eip-712#definition-of-typed-structured-data-%F0%9D%95%8A
82
- * Any string which doesn't match those patterns is considered a custom struct.
83
- * @param type The type string to parse.
84
- * @returns The parsed type object.
85
- */
86
- parseType(type) {
87
- return this.tryParsePrimitiveType(type).mapOrDefault((just) => just, this.tryParseArrayType(type).mapOrDefault((just) => just, new StructType(type)));
88
- }
89
- tryParsePrimitiveType(type) {
90
- // int8 to int256 and uint8 to uint256
91
- {
92
- const match = type.match(/^(((u?)int)(\d+))$/);
93
- if (match) {
94
- const size = parseInt(match[4]);
95
- if (size % 8 !== 0 || size === 0 || size > 256) {
96
- return Nothing; // Unsupported number
97
- }
98
- return Just(new PrimitiveType(match[1], // typeName such as uint64
99
- match[3] ? "uint" : "int", // name such as uint
100
- Just(size / 8)));
101
- }
102
- }
103
- // bytes1 to bytes32, or bytes (dynamic size)
104
- {
105
- const match = type.match(/^((bytes)(\d*))$/);
106
- if (match) {
107
- const size = match[3] ? parseInt(match[3]) : null;
108
- if (size !== null && (size === 0 || size > 32)) {
109
- return Nothing; // Unsupported byte array
110
- }
111
- return Just(new PrimitiveType(match[1], // typename such as bytes32
112
- "bytes", // name
113
- Maybe.fromNullable(size)));
114
- }
115
- }
116
- // Other primitive types
117
- if (type === "address" || type === "bool" || type === "string") {
118
- return Just(new PrimitiveType(type, // typeName
119
- type, // name
120
- Nothing));
121
- }
122
- // Not a primitive type
123
- return Nothing;
124
- }
125
- tryParseArrayType(type) {
126
- // Try to match an array such as: foo[2][][3]
127
- const match = type.match(/^([^[[]*)(((\[\d*\])*)\[\d*\])$/);
128
- if (match) {
129
- const matchLevels = [...match[2].matchAll(/\[(\d*)\]/g)];
130
- if (matchLevels && matchLevels.length > 0) {
131
- const levels = matchLevels.map(([, size]) => size ? Just(parseInt(size)) : Nothing);
132
- const rootType = this.tryParsePrimitiveType(match[1]).mapOrDefault((just) => just, new StructType(match[1]));
133
- return Just(new ArrayType(type, // typeName such as: foo[2][][3]
134
- rootType, // rootType such as: foo
135
- match[1] + match[3], // rowType such as: foo[2][]
136
- levels[levels.length - 1], // rows count such as: 3
137
- levels));
138
- }
139
- }
140
- // Not an array
141
- return Nothing;
142
- }
143
- /**
144
- * Visits a value and its children recursively, parsing them into TypedDataValue objects.
145
- * @param type The type of the value.
146
- * @param value The value to visit.
147
- * @param path The path of the value.
148
- * @param callback The callback to call for each parsed value.
149
- * @returns True if the value and its children were successfully parsed, false otherwise.
150
- */
151
- visitValue(type, value, path, callback) {
152
- return (this.tryVisitStructValue(type, value, path, callback) ||
153
- this.tryVisitPrimitiveValue(type, value, path, callback) ||
154
- this.tryVisitArrayValue(type, value, path, callback));
155
- }
156
- tryVisitPrimitiveValue(type, value, path, callback) {
157
- // Basic type (address, bool, uint256, etc)
158
- return (!this.isRecord(value) &&
159
- !Array.isArray(value) &&
160
- this.tryParsePrimitiveType(type)
161
- .chain((primitiveType) => encodeTypedDataValue(primitiveType, value).ifJust((encoded) => {
162
- callback({
163
- path,
164
- type,
165
- value: new TypedDataValueField(encoded),
166
- });
167
- }))
168
- .isJust());
169
- }
170
- tryVisitStructValue(type, value, path, callback) {
171
- const structType = this.structs[type];
172
- if (structType === undefined || !this.isRecord(value)) {
173
- return false;
174
- }
175
- for (const [fieldName, fieldType] of Object.entries(structType)) {
176
- const fieldValue = value[fieldName];
177
- if (fieldValue === undefined) {
178
- return false;
179
- }
180
- const nextPath = path.length ? `${path}.${fieldName}` : fieldName;
181
- if (!this.visitValue(fieldType.typeName, fieldValue, `${nextPath}`, callback)) {
182
- return false;
183
- }
184
- }
185
- return true;
186
- }
187
- tryVisitArrayValue(type, value, path, callback) {
188
- return (Array.isArray(value) &&
189
- this.tryParseArrayType(type)
190
- .filter((t) => t.count.mapOrDefault((c) => value.length == c, true))
191
- .mapOrDefault((t) => {
192
- callback({
193
- path: path,
194
- type,
195
- value: new TypedDataValueArray(value.length),
196
- });
197
- for (const entry of value) {
198
- const nextPath = path.length ? `${path}.[]` : "[]";
199
- if (!this.visitValue(t.rowType, entry, `${nextPath}`, callback)) {
200
- return false;
201
- }
202
- }
203
- return true;
204
- }, false));
205
- }
206
- }
207
- //# sourceMappingURL=TypedDataParser.js.map
1
+ import{Just as s,Left as d,Maybe as f,Nothing as o,Right as m}from"purify-ts";import{ArrayType as T,PrimitiveType as y,StructType as p,TypedDataValueArray as h,TypedDataValueField as V,TypedDataValueRoot as g}from"../../typed-data/model/Types";import{encodeTypedDataValue as v}from"./TypedDataEncoder";class R{structs;constructor(t){const e={};for(const[r,i]of Object.entries(t)){const n={};for(const a of i)n[a.name]=this.parseType(a.type);e[r]=n}this.structs=e}getStructDefinitions(){return this.structs}parse(t,e){if(!this.isRecord(e))return d(new Error("Message is not a record"));const r=[{path:"",type:"",value:new g(t)}];return this.visitValue(t,e,"",i=>r.push(i))?m(r):d(new Error("Failed to parse"))}isRecord(t){return typeof t=="object"&&t!==null}parseType(t){return this.tryParsePrimitiveType(t).mapOrDefault(e=>e,this.tryParseArrayType(t).mapOrDefault(e=>e,new p(t)))}tryParsePrimitiveType(t){{const e=t.match(/^(((u?)int)(\d+))$/);if(e){const r=parseInt(e[4]);return r%8!==0||r===0||r>256?o:s(new y(e[1],e[3]?"uint":"int",s(r/8)))}}{const e=t.match(/^((bytes)(\d*))$/);if(e){const r=e[3]?parseInt(e[3]):null;return r!==null&&(r===0||r>32)?o:s(new y(e[1],"bytes",f.fromNullable(r)))}}return t==="address"||t==="bool"||t==="string"?s(new y(t,t,o)):o}tryParseArrayType(t){const e=t.match(/^([^[[]*)(((\[\d*\])*)\[\d*\])$/);if(e){const r=[...e[2].matchAll(/\[(\d*)\]/g)];if(r&&r.length>0){const i=r.map(([,a])=>a?s(parseInt(a)):o),n=this.tryParsePrimitiveType(e[1]).mapOrDefault(a=>a,new p(e[1]));return s(new T(t,n,e[1]+e[3],i[i.length-1],i))}}return o}visitValue(t,e,r,i){return this.tryVisitStructValue(t,e,r,i)||this.tryVisitPrimitiveValue(t,e,r,i)||this.tryVisitArrayValue(t,e,r,i)}tryVisitPrimitiveValue(t,e,r,i){return!this.isRecord(e)&&!Array.isArray(e)&&this.tryParsePrimitiveType(t).chain(n=>v(n,e).ifJust(a=>{i({path:r,type:t,value:new V(a)})})).isJust()}tryVisitStructValue(t,e,r,i){const n=this.structs[t];if(n===void 0||!this.isRecord(e))return!1;for(const[a,u]of Object.entries(n)){const l=e[a];if(l===void 0)return!1;const c=r.length?`${r}.${a}`:a;if(!this.visitValue(u.typeName,l,`${c}`,i))return!1}return!0}tryVisitArrayValue(t,e,r,i){return Array.isArray(e)&&this.tryParseArrayType(t).filter(n=>n.count.mapOrDefault(a=>e.length==a,!0)).mapOrDefault(n=>{i({path:r,type:t,value:new h(e.length)});for(const a of e){const u=r.length?`${r}.[]`:"[]";if(!this.visitValue(n.rowType,a,`${u}`,i))return!1}return!0},!1)}}export{R as TypedDataParser};
2
+ //# sourceMappingURL=TypedDataParser.js.map
@@ -1 +1,7 @@
1
- {"version":3,"file":"TypedDataParser.js","sourceRoot":"","sources":["../../../../../src/internal/typed-data/service/TypedDataParser.ts"],"names":[],"mappings":"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"}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/typed-data/service/TypedDataParser.ts"],
4
+ "sourcesContent": ["import { type Either, Just, Left, Maybe, Nothing, Right } from \"purify-ts\";\n\nimport { type TypedDataField } from \"@api/model/TypedData\";\nimport {\n ArrayType,\n type FieldName,\n type FieldType,\n PrimitiveType,\n type StructName,\n StructType,\n type TypedDataValue,\n TypedDataValueArray,\n TypedDataValueField,\n TypedDataValueRoot,\n} from \"@internal/typed-data/model/Types\";\n\nimport { encodeTypedDataValue } from \"./TypedDataEncoder\";\n\n/**\n * A parser for EIP-712 typed data messages.\n *\n * ```typescript\n * const types = {\n * Person: [\n * { name: 'name', type: 'string' },\n * { name: 'age', type: 'uint256' },\n * { name: \"wallets\", type: \"address[]\" },\n * ],\n * };\n * const parser = new TypedDataParser(types);\n *\n * const message = {\n * name: 'Alice',\n * age: 30,\n * wallets: [\n * \"0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB\",\n * \"0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB\",\n * ],\n * };\n * const rootType = 'Person';\n *\n * const result = parser.parse(rootType, message);\n * ```\n */\nexport class TypedDataParser {\n private readonly structs: Record<StructName, Record<FieldName, FieldType>>;\n\n /**\n * Creates a new instance of the TypedDataParser class.\n * @param types The types to be used for parsing the message.\n */\n constructor(types: Record<string, Array<TypedDataField>>) {\n // Parse the types to be used later for parsing a message.\n const structs: Record<StructName, Record<FieldName, FieldType>> = {};\n for (const [typedName, typedData] of Object.entries(types)) {\n const parsedTypedData: Record<FieldName, FieldType> = {};\n for (const data of typedData) {\n parsedTypedData[data.name] = this.parseType(data.type);\n }\n structs[typedName] = parsedTypedData;\n }\n this.structs = structs;\n }\n\n /**\n * Returns the parsed definitions of custom structs as defined in the types passed to the constructor.\n * @returns The struct definitions.\n */\n public getStructDefinitions(): Record<\n StructName,\n Record<FieldName, FieldType>\n > {\n return this.structs;\n }\n\n /**\n * Parses a message according to the primary type and the types passed to the constructor.\n * @param primaryType The root type of the message.\n * @param message The message to parse.\n * @returns An Either containing the parsed values or an error.\n */\n public parse(\n primaryType: string,\n message: unknown,\n ): Either<Error, Array<TypedDataValue>> {\n if (!this.isRecord(message)) {\n return Left(new Error(\"Message is not a record\"));\n }\n const values: Array<TypedDataValue> = [\n {\n path: \"\",\n type: \"\",\n value: new TypedDataValueRoot(primaryType),\n },\n ];\n return this.visitValue(primaryType, message, \"\", (val) => values.push(val))\n ? Right(values)\n : Left(new Error(\"Failed to parse\"));\n }\n\n private isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === \"object\" && value !== null;\n }\n\n /**\n * Parses a type string description into a PrimitiveType, ArrayType, or StructType object.\n * The description string should match https://eips.ethereum.org/EIPS/eip-712#definition-of-typed-structured-data-%F0%9D%95%8A\n * Any string which doesn't match those patterns is considered a custom struct.\n * @param type The type string to parse.\n * @returns The parsed type object.\n */\n private parseType(type: string): PrimitiveType | ArrayType | StructType {\n return this.tryParsePrimitiveType(type).mapOrDefault(\n (just) => just,\n this.tryParseArrayType(type).mapOrDefault(\n (just) => just,\n new StructType(type),\n ),\n );\n }\n\n private tryParsePrimitiveType(type: string): Maybe<PrimitiveType> {\n // int8 to int256 and uint8 to uint256\n {\n const match = type.match(/^(((u?)int)(\\d+))$/);\n if (match) {\n const size = parseInt(match[4]!);\n if (size % 8 !== 0 || size === 0 || size > 256) {\n return Nothing; // Unsupported number\n }\n return Just(\n new PrimitiveType(\n match[1]!, // typeName such as uint64\n match[3] ? \"uint\" : \"int\", // name such as uint\n Just(size / 8), // size in bytes such as 8 for an uint64\n ),\n );\n }\n }\n\n // bytes1 to bytes32, or bytes (dynamic size)\n {\n const match = type.match(/^((bytes)(\\d*))$/);\n if (match) {\n const size = match[3] ? parseInt(match[3]) : null;\n if (size !== null && (size === 0 || size > 32)) {\n return Nothing; // Unsupported byte array\n }\n return Just(\n new PrimitiveType(\n match[1]!, // typename such as bytes32\n \"bytes\", // name\n Maybe.fromNullable(size), // size in bytes, or null for a dynamic size\n ),\n );\n }\n }\n\n // Other primitive types\n if (type === \"address\" || type === \"bool\" || type === \"string\") {\n return Just(\n new PrimitiveType(\n type, // typeName\n type, // name\n Nothing, // size not applicable for those types\n ),\n );\n }\n\n // Not a primitive type\n return Nothing;\n }\n\n private tryParseArrayType(type: string): Maybe<ArrayType> {\n // Try to match an array such as: foo[2][][3]\n const match = type.match(/^([^[[]*)(((\\[\\d*\\])*)\\[\\d*\\])$/);\n if (match) {\n const matchLevels = [...match[2]!.matchAll(/\\[(\\d*)\\]/g)];\n if (matchLevels && matchLevels.length > 0) {\n const levels = matchLevels.map(([, size]) =>\n size ? Just(parseInt(size)) : Nothing,\n );\n const rootType = this.tryParsePrimitiveType(match[1]!).mapOrDefault(\n (just) => just,\n new StructType(match[1]!),\n );\n return Just(\n new ArrayType(\n type, // typeName such as: foo[2][][3]\n rootType, // rootType such as: foo\n match[1]! + match[3], // rowType such as: foo[2][]\n levels[levels.length - 1]!, // rows count such as: 3\n levels, // All levels for that array (null for dynamic size), such as: [2, null, 3]\n ),\n );\n }\n }\n\n // Not an array\n return Nothing;\n }\n\n /**\n * Visits a value and its children recursively, parsing them into TypedDataValue objects.\n * @param type The type of the value.\n * @param value The value to visit.\n * @param path The path of the value.\n * @param callback The callback to call for each parsed value.\n * @returns True if the value and its children were successfully parsed, false otherwise.\n */\n private visitValue(\n type: string,\n value: unknown,\n path: string,\n callback: (parsedValue: TypedDataValue) => void,\n ): boolean {\n return (\n this.tryVisitStructValue(type, value, path, callback) ||\n this.tryVisitPrimitiveValue(type, value, path, callback) ||\n this.tryVisitArrayValue(type, value, path, callback)\n );\n }\n\n private tryVisitPrimitiveValue(\n type: string,\n value: unknown,\n path: string,\n callback: (parsedValue: TypedDataValue) => void,\n ): boolean {\n // Basic type (address, bool, uint256, etc)\n return (\n !this.isRecord(value) &&\n !Array.isArray(value) &&\n this.tryParsePrimitiveType(type)\n .chain((primitiveType) =>\n encodeTypedDataValue(primitiveType, value).ifJust((encoded) => {\n callback({\n path,\n type,\n value: new TypedDataValueField(encoded),\n });\n }),\n )\n .isJust()\n );\n }\n\n private tryVisitStructValue(\n type: string,\n value: unknown,\n path: string,\n callback: (parsedValue: TypedDataValue) => void,\n ): boolean {\n const structType = this.structs[type];\n if (structType === undefined || !this.isRecord(value)) {\n return false;\n }\n for (const [fieldName, fieldType] of Object.entries(structType)) {\n const fieldValue = value[fieldName];\n if (fieldValue === undefined) {\n return false;\n }\n const nextPath = path.length ? `${path}.${fieldName}` : fieldName;\n if (\n !this.visitValue(\n fieldType.typeName,\n fieldValue,\n `${nextPath}`,\n callback,\n )\n ) {\n return false;\n }\n }\n return true;\n }\n\n private tryVisitArrayValue(\n type: string,\n value: unknown,\n path: string,\n callback: (parsedValue: TypedDataValue) => void,\n ): boolean {\n return (\n Array.isArray(value) &&\n this.tryParseArrayType(type)\n .filter((t) => t.count.mapOrDefault((c) => value.length == c, true))\n .mapOrDefault((t) => {\n callback({\n path: path,\n type,\n value: new TypedDataValueArray(value.length),\n });\n for (const entry of value) {\n const nextPath = path.length ? `${path}.[]` : \"[]\";\n if (!this.visitValue(t.rowType, entry, `${nextPath}`, callback)) {\n return false;\n }\n }\n return true;\n }, false)\n );\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["Just", "Left", "Maybe", "Nothing", "Right", "ArrayType", "PrimitiveType", "StructType", "TypedDataValueArray", "TypedDataValueField", "TypedDataValueRoot", "encodeTypedDataValue", "TypedDataParser", "types", "structs", "typedName", "typedData", "parsedTypedData", "data", "primaryType", "message", "values", "val", "value", "type", "just", "match", "size", "matchLevels", "levels", "rootType", "path", "callback", "primitiveType", "encoded", "structType", "fieldName", "fieldType", "fieldValue", "nextPath", "t", "c", "entry"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{hexaStringToBuffer as u}from"@ledgerhq/device-management-kit";import{Just as s,Nothing as o,Right as w}from"purify-ts";import{ArrayType as d,PrimitiveType as r,StructType as m,TypedDataValueArray as b,TypedDataValueField as y,TypedDataValueRoot as f}from"../../typed-data/model/Types";import{TypedDataParser as p}from"./TypedDataParser";describe("TypedDataParser - types parsing",()=>{it("Parse primitive types bytes",()=>{const i={TestStruct:[{name:"test1",type:"bytes"},{name:"test2",type:"bytes1"},{name:"test3",type:"bytes2"},{name:"test4",type:"bytes31"},{name:"test5",type:"bytes32"}]},e=new p(i),t={TestStruct:{test1:new r("bytes","bytes",o),test2:new r("bytes1","bytes",s(1)),test3:new r("bytes2","bytes",s(2)),test4:new r("bytes31","bytes",s(31)),test5:new r("bytes32","bytes",s(32))}};expect(e.getStructDefinitions()).toStrictEqual(t)}),it("Parse primitive types bytes, out of bound",()=>{const i={TestStruct:[{name:"invalid1",type:"bytes0"},{name:"invalid2",type:"bytes33"}]},e=new p(i),t={TestStruct:{invalid1:new m("bytes0"),invalid2:new m("bytes33")}};expect(e.getStructDefinitions()).toStrictEqual(t)}),it("Parse primitive types number",()=>{const i={TestStruct:[{name:"test1",type:"int8"},{name:"test2",type:"uint8"},{name:"test3",type:"int16"},{name:"test4",type:"uint32"},{name:"test5",type:"uint64"},{name:"test6",type:"int128"},{name:"test7",type:"int136"},{name:"test8",type:"int144"},{name:"test9",type:"uint240"},{name:"test10",type:"uint248"},{name:"test11",type:"uint256"},{name:"test12",type:"int256"}]},e=new p(i),t={TestStruct:{test1:new r("int8","int",s(1)),test2:new r("uint8","uint",s(1)),test3:new r("int16","int",s(2)),test4:new r("uint32","uint",s(4)),test5:new r("uint64","uint",s(8)),test6:new r("int128","int",s(16)),test7:new r("int136","int",s(17)),test8:new r("int144","int",s(18)),test9:new r("uint240","uint",s(30)),test10:new r("uint248","uint",s(31)),test11:new r("uint256","uint",s(32)),test12:new r("int256","int",s(32))}};expect(e.getStructDefinitions()).toStrictEqual(t)}),it("Parse primitive types number, out of bound",()=>{const i={TestStruct:[{name:"invalid1",type:"int0"},{name:"invalid2",type:"uint0"},{name:"invalid3",type:"int7"},{name:"invalid4",type:"int257"},{name:"invalid5",type:"uint257"},{name:"invalid6",type:"int512"}]},e=new p(i),t={TestStruct:{invalid1:new m("int0"),invalid2:new m("uint0"),invalid3:new m("int7"),invalid4:new m("int257"),invalid5:new m("uint257"),invalid6:new m("int512")}};expect(e.getStructDefinitions()).toStrictEqual(t)}),it("Parse primitive types others",()=>{const i={TestStruct:[{name:"test1",type:"address"},{name:"test2",type:"bool"},{name:"test3",type:"string"}]},e=new p(i),t={TestStruct:{test1:new r("address","address",o),test2:new r("bool","bool",o),test3:new r("string","string",o)}};expect(e.getStructDefinitions()).toStrictEqual(t)}),it("Parse arrays",()=>{const i={TestStruct:[{name:"test1",type:"address[]"},{name:"test2",type:"uint16[3]"},{name:"test3",type:"custom[2][][3]"},{name:"test4",type:"string[2][][3][]"}]},e=new p(i),t={TestStruct:{test1:new d("address[]",new r("address","address",o),"address",o,[o]),test2:new d("uint16[3]",new r("uint16","uint",s(2)),"uint16",s(3),[s(3)]),test3:new d("custom[2][][3]",new m("custom"),"custom[2][]",s(3),[s(2),o,s(3)]),test4:new d("string[2][][3][]",new r("string","string",o),"string[2][][3]",o,[s(2),o,s(3),o])}};expect(e.getStructDefinitions()).toStrictEqual(t)}),it("Parse custom struct",()=>{const i={TestStruct:[{name:"test",type:"MyCustomStructure"}]},e=new p(i),t={TestStruct:{test:new m("MyCustomStructure")}};expect(e.getStructDefinitions()).toStrictEqual(t)})});describe("TypedDataParser - message parsing",()=>{const i={domain:{chainId:0,name:"Ether Mail",verifyingContract:"0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC",version:"1"},message:{contents:"Hello, Bob!",from:{name:"Cow",wallets:["0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826","0xDeaDbeefdEAdbeefdEadbEEFdeadbeEFdEaDbeeF"]},to:[{wallets:["0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB","0xB0BdaBea57B0BDABeA57b0bdABEA57b0BDabEa57","0xB0B0b0b0b0b0B000000000000000000000000000"],name:"Bob"}]},primaryType:"Mail",types:{EIP712Domain:[{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"}],Mail:[{name:"from",type:"Person"},{name:"to",type:"Person[1]"},{name:"contents",type:"string"}],Person:[{name:"name",type:"string"},{name:"wallets",type:"address[]"}]}};it("Parse an EIP712 message",()=>{const e=i.types,t=i.primaryType,n=i.message,a=new p(e).parse(t,n),l=[{path:"",type:"",value:new f(t)},{path:"from.name",type:"string",value:new y(new TextEncoder().encode("Cow"))},{path:"from.wallets",type:"address[]",value:new b(2)},{path:"from.wallets.[]",type:"address",value:new y(u("0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826"))},{path:"from.wallets.[]",type:"address",value:new y(u("0xDeaDbeefdEAdbeefdEadbEEFdeadbeEFdEaDbeeF"))},{path:"to",type:"Person[1]",value:new b(1)},{path:"to.[].name",type:"string",value:new y(new TextEncoder().encode("Bob"))},{path:"to.[].wallets",type:"address[]",value:new b(3)},{path:"to.[].wallets.[]",type:"address",value:new y(u("0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB"))},{path:"to.[].wallets.[]",type:"address",value:new y(u("0xB0BdaBea57B0BDABeA57b0bdABEA57b0BDabEa57"))},{path:"to.[].wallets.[]",type:"address",value:new y(u("0xB0B0b0b0b0b0B000000000000000000000000000"))},{path:"contents",type:"string",value:new y(new TextEncoder().encode("Hello, Bob!"))}];expect(a).toStrictEqual(w(l))}),it("Parse an EIP712 domain",()=>{const e=i.types,t="EIP712Domain",n=i.domain,c=new p(e),a=[{path:"",type:"",value:new f(t)},{path:"name",type:"string",value:new y(new TextEncoder().encode("Ether Mail"))},{path:"version",type:"string",value:new y(new TextEncoder().encode("1"))},{path:"chainId",type:"uint256",value:new y(Uint8Array.from([0]))},{path:"verifyingContract",type:"address",value:new y(u("0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC"))}],l=c.parse(t,n);expect(l).toStrictEqual(w(a))}),it("Invalid primary type",()=>{const e=i.types,t="unknown",n=i.domain,a=new p(e).parse(t,n);expect(a.isLeft()).toStrictEqual(!0)}),it("Struct points to an unknown custom type",()=>{const e={Mail:[{name:"from",type:"Person"}]},t="Mail",n={from:"0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826"},a=new p(e).parse(t,n);expect(a.isLeft()).toStrictEqual(!0)}),it("Array contains an unknown custom type",()=>{const e={Mail:[{name:"from",type:"Person[]"}]},t="Mail",n={from:["0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826"]},a=new p(e).parse(t,n);expect(a.isLeft()).toStrictEqual(!0)}),it("Invalid primitive value",()=>{const e={Mail:[{name:"from",type:"uint8"}]},t="Mail",n={from:3e3},a=new p(e).parse(t,n);expect(a.isLeft()).toStrictEqual(!0)}),it("Array instead of primitive value",()=>{const e={Mail:[{name:"from",type:"uint8"}]},t="Mail",n={from:[42]},a=new p(e).parse(t,n);expect(a.isLeft()).toStrictEqual(!0)}),it("Struct instead of primitive value",()=>{const e={Mail:[{name:"from",type:"uint8"}]},t="Mail",n={from:{data:42}},a=new p(e).parse(t,n);expect(a.isLeft()).toStrictEqual(!0)}),it("Struct value not a record",()=>{const e={Mail:[{name:"from",type:"Person"}],Person:[{name:"data",type:"uint8"}]},t="Mail",n={from:42},a=new p(e).parse(t,n);expect(a.isLeft()).toStrictEqual(!0)}),it("Struct field not present in value",()=>{const e={Mail:[{name:"from",type:"uint8"}]},t="Mail",n={to:42},a=new p(e).parse(t,n);expect(a.isLeft()).toStrictEqual(!0)}),it("Array value not an array",()=>{const e={Mail:[{name:"from",type:"uint8[]"}]},t="Mail",n={from:42},a=new p(e).parse(t,n);expect(a.isLeft()).toStrictEqual(!0)}),it("Array value with invalid size",()=>{const e={Mail:[{name:"from",type:"uint8[3]"}]},t="Mail",n={from:[42]},a=new p(e).parse(t,n);expect(a.isLeft()).toStrictEqual(!0)})});
2
+ //# sourceMappingURL=TypedDataParser.test.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/typed-data/service/TypedDataParser.test.ts"],
4
+ "sourcesContent": ["import { hexaStringToBuffer } from \"@ledgerhq/device-management-kit\";\nimport { Just, Nothing, Right } from \"purify-ts\";\n\nimport { type TypedData } from \"@api/model/TypedData\";\nimport {\n ArrayType,\n PrimitiveType,\n StructType,\n TypedDataValueArray,\n TypedDataValueField,\n TypedDataValueRoot,\n} from \"@internal/typed-data/model/Types\";\n\nimport { TypedDataParser } from \"./TypedDataParser\";\n\ndescribe(\"TypedDataParser - types parsing\", () => {\n it(\"Parse primitive types bytes\", () => {\n // GIVEN\n const types = {\n TestStruct: [\n { name: \"test1\", type: \"bytes\" },\n { name: \"test2\", type: \"bytes1\" },\n { name: \"test3\", type: \"bytes2\" },\n { name: \"test4\", type: \"bytes31\" },\n { name: \"test5\", type: \"bytes32\" },\n ],\n };\n // WHEN\n const parser = new TypedDataParser(types);\n // THEN\n const expected = {\n TestStruct: {\n test1: new PrimitiveType(\"bytes\", \"bytes\", Nothing),\n test2: new PrimitiveType(\"bytes1\", \"bytes\", Just(1)),\n test3: new PrimitiveType(\"bytes2\", \"bytes\", Just(2)),\n test4: new PrimitiveType(\"bytes31\", \"bytes\", Just(31)),\n test5: new PrimitiveType(\"bytes32\", \"bytes\", Just(32)),\n },\n };\n expect(parser.getStructDefinitions()).toStrictEqual(expected);\n });\n\n it(\"Parse primitive types bytes, out of bound\", () => {\n // GIVEN\n const types = {\n TestStruct: [\n { name: \"invalid1\", type: \"bytes0\" },\n { name: \"invalid2\", type: \"bytes33\" },\n ],\n };\n // WHEN\n const parser = new TypedDataParser(types);\n // THEN\n const expected = {\n TestStruct: {\n invalid1: new StructType(\"bytes0\"),\n invalid2: new StructType(\"bytes33\"),\n },\n };\n expect(parser.getStructDefinitions()).toStrictEqual(expected);\n });\n\n it(\"Parse primitive types number\", () => {\n // GIVEN\n const types = {\n TestStruct: [\n { name: \"test1\", type: \"int8\" },\n { name: \"test2\", type: \"uint8\" },\n { name: \"test3\", type: \"int16\" },\n { name: \"test4\", type: \"uint32\" },\n { name: \"test5\", type: \"uint64\" },\n { name: \"test6\", type: \"int128\" },\n { name: \"test7\", type: \"int136\" },\n { name: \"test8\", type: \"int144\" },\n { name: \"test9\", type: \"uint240\" },\n { name: \"test10\", type: \"uint248\" },\n { name: \"test11\", type: \"uint256\" },\n { name: \"test12\", type: \"int256\" },\n ],\n };\n // WHEN\n const parser = new TypedDataParser(types);\n // THEN\n const expected = {\n TestStruct: {\n test1: new PrimitiveType(\"int8\", \"int\", Just(1)),\n test2: new PrimitiveType(\"uint8\", \"uint\", Just(1)),\n test3: new PrimitiveType(\"int16\", \"int\", Just(2)),\n test4: new PrimitiveType(\"uint32\", \"uint\", Just(4)),\n test5: new PrimitiveType(\"uint64\", \"uint\", Just(8)),\n test6: new PrimitiveType(\"int128\", \"int\", Just(16)),\n test7: new PrimitiveType(\"int136\", \"int\", Just(17)),\n test8: new PrimitiveType(\"int144\", \"int\", Just(18)),\n test9: new PrimitiveType(\"uint240\", \"uint\", Just(30)),\n test10: new PrimitiveType(\"uint248\", \"uint\", Just(31)),\n test11: new PrimitiveType(\"uint256\", \"uint\", Just(32)),\n test12: new PrimitiveType(\"int256\", \"int\", Just(32)),\n },\n };\n expect(parser.getStructDefinitions()).toStrictEqual(expected);\n });\n\n it(\"Parse primitive types number, out of bound\", () => {\n // GIVEN\n const types = {\n TestStruct: [\n { name: \"invalid1\", type: \"int0\" },\n { name: \"invalid2\", type: \"uint0\" },\n { name: \"invalid3\", type: \"int7\" },\n { name: \"invalid4\", type: \"int257\" },\n { name: \"invalid5\", type: \"uint257\" },\n { name: \"invalid6\", type: \"int512\" },\n ],\n };\n // WHEN\n const parser = new TypedDataParser(types);\n // THEN\n const expected = {\n TestStruct: {\n invalid1: new StructType(\"int0\"),\n invalid2: new StructType(\"uint0\"),\n invalid3: new StructType(\"int7\"),\n invalid4: new StructType(\"int257\"),\n invalid5: new StructType(\"uint257\"),\n invalid6: new StructType(\"int512\"),\n },\n };\n expect(parser.getStructDefinitions()).toStrictEqual(expected);\n });\n\n it(\"Parse primitive types others\", () => {\n // GIVEN\n const types = {\n TestStruct: [\n { name: \"test1\", type: \"address\" },\n { name: \"test2\", type: \"bool\" },\n { name: \"test3\", type: \"string\" },\n ],\n };\n // WHEN\n const parser = new TypedDataParser(types);\n // THEN\n const expected = {\n TestStruct: {\n test1: new PrimitiveType(\"address\", \"address\", Nothing),\n test2: new PrimitiveType(\"bool\", \"bool\", Nothing),\n test3: new PrimitiveType(\"string\", \"string\", Nothing),\n },\n };\n expect(parser.getStructDefinitions()).toStrictEqual(expected);\n });\n\n it(\"Parse arrays\", () => {\n // GIVEN\n const types = {\n TestStruct: [\n { name: \"test1\", type: \"address[]\" },\n { name: \"test2\", type: \"uint16[3]\" },\n { name: \"test3\", type: \"custom[2][][3]\" },\n { name: \"test4\", type: \"string[2][][3][]\" },\n ],\n };\n // WHEN\n const parser = new TypedDataParser(types);\n // THEN\n const expected = {\n TestStruct: {\n test1: new ArrayType(\n \"address[]\",\n new PrimitiveType(\"address\", \"address\", Nothing),\n \"address\",\n Nothing,\n [Nothing],\n ),\n test2: new ArrayType(\n \"uint16[3]\",\n new PrimitiveType(\"uint16\", \"uint\", Just(2)),\n \"uint16\",\n Just(3),\n [Just(3)],\n ),\n test3: new ArrayType(\n \"custom[2][][3]\",\n new StructType(\"custom\"),\n \"custom[2][]\",\n Just(3),\n [Just(2), Nothing, Just(3)],\n ),\n test4: new ArrayType(\n \"string[2][][3][]\",\n new PrimitiveType(\"string\", \"string\", Nothing),\n \"string[2][][3]\",\n Nothing,\n [Just(2), Nothing, Just(3), Nothing],\n ),\n },\n };\n expect(parser.getStructDefinitions()).toStrictEqual(expected);\n });\n\n it(\"Parse custom struct\", () => {\n // GIVEN\n const types = {\n TestStruct: [{ name: \"test\", type: \"MyCustomStructure\" }],\n };\n // WHEN\n const parser = new TypedDataParser(types);\n // THEN\n const expected = {\n TestStruct: {\n test: new StructType(\"MyCustomStructure\"),\n },\n };\n expect(parser.getStructDefinitions()).toStrictEqual(expected);\n });\n});\n\ndescribe(\"TypedDataParser - message parsing\", () => {\n const MESSAGE: TypedData = {\n domain: {\n chainId: 0,\n name: \"Ether Mail\",\n verifyingContract: \"0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC\",\n version: \"1\",\n },\n message: {\n contents: \"Hello, Bob!\",\n from: {\n name: \"Cow\",\n wallets: [\n \"0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826\",\n \"0xDeaDbeefdEAdbeefdEadbEEFdeadbeEFdEaDbeeF\",\n ],\n },\n to: [\n {\n wallets: [\n \"0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB\",\n \"0xB0BdaBea57B0BDABeA57b0bdABEA57b0BDabEa57\",\n \"0xB0B0b0b0b0b0B000000000000000000000000000\",\n ],\n name: \"Bob\",\n },\n ],\n },\n primaryType: \"Mail\",\n types: {\n EIP712Domain: [\n { name: \"name\", type: \"string\" },\n { name: \"version\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"verifyingContract\", type: \"address\" },\n ],\n Mail: [\n { name: \"from\", type: \"Person\" },\n { name: \"to\", type: \"Person[1]\" },\n { name: \"contents\", type: \"string\" },\n ],\n Person: [\n { name: \"name\", type: \"string\" },\n { name: \"wallets\", type: \"address[]\" },\n ],\n },\n };\n\n it(\"Parse an EIP712 message\", () => {\n // GIVEN\n const types = MESSAGE.types;\n const primaryType = MESSAGE.primaryType;\n const message = MESSAGE.message;\n // WHEN\n const parser = new TypedDataParser(types);\n // THEN\n const parsed = parser.parse(primaryType, message);\n const expected = [\n {\n path: \"\",\n type: \"\",\n value: new TypedDataValueRoot(primaryType),\n },\n {\n path: \"from.name\",\n type: \"string\",\n value: new TypedDataValueField(new TextEncoder().encode(\"Cow\")),\n },\n {\n path: \"from.wallets\",\n type: \"address[]\",\n value: new TypedDataValueArray(2),\n },\n {\n path: \"from.wallets.[]\",\n type: \"address\",\n value: new TypedDataValueField(\n hexaStringToBuffer(\"0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826\")!,\n ),\n },\n {\n path: \"from.wallets.[]\",\n type: \"address\",\n value: new TypedDataValueField(\n hexaStringToBuffer(\"0xDeaDbeefdEAdbeefdEadbEEFdeadbeEFdEaDbeeF\")!,\n ),\n },\n { path: \"to\", type: \"Person[1]\", value: new TypedDataValueArray(1) },\n {\n path: \"to.[].name\",\n type: \"string\",\n value: new TypedDataValueField(new TextEncoder().encode(\"Bob\")),\n },\n {\n path: \"to.[].wallets\",\n type: \"address[]\",\n value: new TypedDataValueArray(3),\n },\n {\n path: \"to.[].wallets.[]\",\n type: \"address\",\n value: new TypedDataValueField(\n hexaStringToBuffer(\"0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB\")!,\n ),\n },\n {\n path: \"to.[].wallets.[]\",\n type: \"address\",\n value: new TypedDataValueField(\n hexaStringToBuffer(\"0xB0BdaBea57B0BDABeA57b0bdABEA57b0BDabEa57\")!,\n ),\n },\n {\n path: \"to.[].wallets.[]\",\n type: \"address\",\n value: new TypedDataValueField(\n hexaStringToBuffer(\"0xB0B0b0b0b0b0B000000000000000000000000000\")!,\n ),\n },\n {\n path: \"contents\",\n type: \"string\",\n value: new TypedDataValueField(new TextEncoder().encode(\"Hello, Bob!\")),\n },\n ];\n expect(parsed).toStrictEqual(Right(expected));\n });\n\n it(\"Parse an EIP712 domain\", () => {\n // GIVEN\n const types = MESSAGE.types;\n const primaryType = \"EIP712Domain\";\n const message = MESSAGE.domain;\n // WHEN\n const parser = new TypedDataParser(types);\n // THEN\n const expected = [\n {\n path: \"\",\n type: \"\",\n value: new TypedDataValueRoot(primaryType),\n },\n {\n path: \"name\",\n type: \"string\",\n value: new TypedDataValueField(new TextEncoder().encode(\"Ether Mail\")),\n },\n {\n path: \"version\",\n type: \"string\",\n value: new TypedDataValueField(new TextEncoder().encode(\"1\")),\n },\n {\n path: \"chainId\",\n type: \"uint256\",\n value: new TypedDataValueField(Uint8Array.from([0])),\n },\n {\n path: \"verifyingContract\",\n type: \"address\",\n value: new TypedDataValueField(\n hexaStringToBuffer(\"0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC\")!,\n ),\n },\n ];\n const parsed = parser.parse(primaryType, message);\n expect(parsed).toStrictEqual(Right(expected));\n });\n\n it(\"Invalid primary type\", () => {\n // GIVEN\n const types = MESSAGE.types;\n const primaryType = \"unknown\";\n const message = MESSAGE.domain;\n // WHEN\n const parser = new TypedDataParser(types);\n // THEN\n const parsed = parser.parse(primaryType, message);\n expect(parsed.isLeft()).toStrictEqual(true);\n });\n\n it(\"Struct points to an unknown custom type\", () => {\n // GIVEN\n const types = {\n Mail: [{ name: \"from\", type: \"Person\" }],\n };\n const primaryType = \"Mail\";\n const message = {\n from: \"0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826\",\n };\n // WHEN\n const parser = new TypedDataParser(types);\n // THEN\n const parsed = parser.parse(primaryType, message);\n expect(parsed.isLeft()).toStrictEqual(true);\n });\n\n it(\"Array contains an unknown custom type\", () => {\n // GIVEN\n const types = {\n Mail: [{ name: \"from\", type: \"Person[]\" }],\n };\n const primaryType = \"Mail\";\n const message = {\n from: [\"0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826\"],\n };\n // WHEN\n const parser = new TypedDataParser(types);\n // THEN\n const parsed = parser.parse(primaryType, message);\n expect(parsed.isLeft()).toStrictEqual(true);\n });\n\n it(\"Invalid primitive value\", () => {\n // GIVEN\n const types = {\n Mail: [{ name: \"from\", type: \"uint8\" }],\n };\n const primaryType = \"Mail\";\n const message = {\n from: 3000,\n };\n // WHEN\n const parser = new TypedDataParser(types);\n // THEN\n const parsed = parser.parse(primaryType, message);\n expect(parsed.isLeft()).toStrictEqual(true);\n });\n\n it(\"Array instead of primitive value\", () => {\n // GIVEN\n const types = {\n Mail: [{ name: \"from\", type: \"uint8\" }],\n };\n const primaryType = \"Mail\";\n const message = {\n from: [42],\n };\n // WHEN\n const parser = new TypedDataParser(types);\n // THEN\n const parsed = parser.parse(primaryType, message);\n expect(parsed.isLeft()).toStrictEqual(true);\n });\n\n it(\"Struct instead of primitive value\", () => {\n // GIVEN\n const types = {\n Mail: [{ name: \"from\", type: \"uint8\" }],\n };\n const primaryType = \"Mail\";\n const message = {\n from: { data: 42 },\n };\n // WHEN\n const parser = new TypedDataParser(types);\n // THEN\n const parsed = parser.parse(primaryType, message);\n expect(parsed.isLeft()).toStrictEqual(true);\n });\n\n it(\"Struct value not a record\", () => {\n // GIVEN\n const types = {\n Mail: [{ name: \"from\", type: \"Person\" }],\n Person: [{ name: \"data\", type: \"uint8\" }],\n };\n const primaryType = \"Mail\";\n const message = {\n from: 42,\n };\n // WHEN\n const parser = new TypedDataParser(types);\n // THEN\n const parsed = parser.parse(primaryType, message);\n expect(parsed.isLeft()).toStrictEqual(true);\n });\n\n it(\"Struct field not present in value\", () => {\n // GIVEN\n const types = {\n Mail: [{ name: \"from\", type: \"uint8\" }],\n };\n const primaryType = \"Mail\";\n const message = {\n to: 42,\n };\n // WHEN\n const parser = new TypedDataParser(types);\n // THEN\n const parsed = parser.parse(primaryType, message);\n expect(parsed.isLeft()).toStrictEqual(true);\n });\n\n it(\"Array value not an array\", () => {\n // GIVEN\n const types = {\n Mail: [{ name: \"from\", type: \"uint8[]\" }],\n };\n const primaryType = \"Mail\";\n const message = {\n from: 42,\n };\n // WHEN\n const parser = new TypedDataParser(types);\n // THEN\n const parsed = parser.parse(primaryType, message);\n expect(parsed.isLeft()).toStrictEqual(true);\n });\n\n it(\"Array value with invalid size\", () => {\n // GIVEN\n const types = {\n Mail: [{ name: \"from\", type: \"uint8[3]\" }],\n };\n const primaryType = \"Mail\";\n const message = {\n from: [42],\n };\n // WHEN\n const parser = new TypedDataParser(types);\n // THEN\n const parsed = parser.parse(primaryType, message);\n expect(parsed.isLeft()).toStrictEqual(true);\n });\n});\n"],
5
+ "mappings": "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",
6
+ "names": ["hexaStringToBuffer", "Just", "Nothing", "Right", "ArrayType", "PrimitiveType", "StructType", "TypedDataValueArray", "TypedDataValueField", "TypedDataValueRoot", "TypedDataParser", "types", "parser", "expected", "MESSAGE", "primaryType", "message", "parsed"]
7
+ }
@@ -1,2 +1 @@
1
- export {};
2
- //# sourceMappingURL=TypedDataParserService.js.map
1
+ //# sourceMappingURL=TypedDataParserService.js.map
@@ -1 +1,7 @@
1
- {"version":3,"file":"TypedDataParserService.js","sourceRoot":"","sources":["../../../../../src/internal/typed-data/service/TypedDataParserService.ts"],"names":[],"mappings":""}
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }