@ledgerhq/device-signer-kit-solana 1.1.0 → 1.1.1

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 (181) hide show
  1. package/lib/cjs/api/SignerSolana.js +1 -1
  2. package/lib/cjs/api/SignerSolana.js.map +1 -1
  3. package/lib/cjs/api/app-binder/SignMessageDeviceActionTypes.js +1 -1
  4. package/lib/cjs/api/app-binder/SignMessageDeviceActionTypes.js.map +1 -1
  5. package/lib/cjs/api/app-binder/SignTransactionDeviceActionTypes.js +1 -1
  6. package/lib/cjs/api/app-binder/SignTransactionDeviceActionTypes.js.map +1 -1
  7. package/lib/cjs/api/model/AddressOption.js +1 -1
  8. package/lib/cjs/api/model/AddressOption.js.map +1 -1
  9. package/lib/cjs/api/model/MessageOptions.js +2 -0
  10. package/lib/cjs/api/model/MessageOptions.js.map +7 -0
  11. package/lib/cjs/api/model/TransactionOptions.js +1 -1
  12. package/lib/cjs/api/model/TransactionOptions.js.map +1 -1
  13. package/lib/cjs/index.js.map +1 -1
  14. package/lib/cjs/internal/DefaultSignerSolana.js +1 -1
  15. package/lib/cjs/internal/DefaultSignerSolana.js.map +2 -2
  16. package/lib/cjs/internal/DefaultSignerSolana.test.js +1 -1
  17. package/lib/cjs/internal/DefaultSignerSolana.test.js.map +2 -2
  18. package/lib/cjs/internal/app-binder/SolanaAppBinder.js +1 -1
  19. package/lib/cjs/internal/app-binder/SolanaAppBinder.js.map +3 -3
  20. package/lib/cjs/internal/app-binder/SolanaAppBinder.test.js +1 -1
  21. package/lib/cjs/internal/app-binder/SolanaAppBinder.test.js.map +3 -3
  22. package/lib/cjs/internal/app-binder/command/GetAppConfigurationCommand.test.js +1 -1
  23. package/lib/cjs/internal/app-binder/command/GetAppConfigurationCommand.test.js.map +2 -2
  24. package/lib/cjs/internal/app-binder/command/GetPubKeyCommand.test.js +1 -1
  25. package/lib/cjs/internal/app-binder/command/GetPubKeyCommand.test.js.map +2 -2
  26. package/lib/cjs/internal/app-binder/command/SignOffChainMessageCommand.js.map +2 -2
  27. package/lib/cjs/internal/app-binder/command/SignOffChainMessageCommand.test.js +1 -1
  28. package/lib/cjs/internal/app-binder/command/SignOffChainMessageCommand.test.js.map +2 -2
  29. package/lib/cjs/internal/app-binder/command/SignTransactionCommand.test.js +1 -1
  30. package/lib/cjs/internal/app-binder/command/SignTransactionCommand.test.js.map +2 -2
  31. package/lib/cjs/internal/app-binder/command/utils/SolanaAppErrors.test.js +1 -1
  32. package/lib/cjs/internal/app-binder/command/utils/SolanaAppErrors.test.js.map +2 -2
  33. package/lib/cjs/internal/app-binder/device-action/SignTransactionDeviceAction.js +1 -1
  34. package/lib/cjs/internal/app-binder/device-action/SignTransactionDeviceAction.js.map +2 -2
  35. package/lib/cjs/internal/app-binder/device-action/SignTransactionDeviceAction.test.js +1 -1
  36. package/lib/cjs/internal/app-binder/device-action/SignTransactionDeviceAction.test.js.map +3 -3
  37. package/lib/cjs/internal/app-binder/device-action/__test-utils__/makeInternalApi.js +1 -1
  38. package/lib/cjs/internal/app-binder/device-action/__test-utils__/makeInternalApi.js.map +3 -3
  39. package/lib/cjs/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js +1 -1
  40. package/lib/cjs/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js.map +2 -2
  41. package/lib/cjs/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js +1 -1
  42. package/lib/cjs/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js.map +3 -3
  43. package/lib/cjs/internal/app-binder/di/appBinderModule.js +1 -1
  44. package/lib/cjs/internal/app-binder/di/appBinderModule.js.map +3 -3
  45. package/lib/cjs/internal/app-binder/di/appBinderModule.test.js +1 -1
  46. package/lib/cjs/internal/app-binder/di/appBinderModule.test.js.map +2 -2
  47. package/lib/cjs/internal/app-binder/task/SendSignDataTask.test.js +1 -1
  48. package/lib/cjs/internal/app-binder/task/SendSignDataTask.test.js.map +2 -2
  49. package/lib/cjs/internal/app-binder/task/SendSignMessageTask.js +1 -1
  50. package/lib/cjs/internal/app-binder/task/SendSignMessageTask.js.map +3 -3
  51. package/lib/cjs/internal/app-binder/task/SendSignMessageTask.test.js +1 -1
  52. package/lib/cjs/internal/app-binder/task/SendSignMessageTask.test.js.map +2 -2
  53. package/lib/cjs/internal/di.js +1 -1
  54. package/lib/cjs/internal/di.js.map +2 -2
  55. package/lib/cjs/internal/use-cases/address/GetAddressUseCase.js +1 -1
  56. package/lib/cjs/internal/use-cases/address/GetAddressUseCase.js.map +2 -2
  57. package/lib/cjs/internal/use-cases/address/GetAddressUseCase.test.js +1 -1
  58. package/lib/cjs/internal/use-cases/address/GetAddressUseCase.test.js.map +2 -2
  59. package/lib/cjs/internal/use-cases/app-configuration/GetAppConfiguration.test.js +1 -1
  60. package/lib/cjs/internal/use-cases/app-configuration/GetAppConfiguration.test.js.map +2 -2
  61. package/lib/cjs/internal/use-cases/di/useCasesModule.js +1 -1
  62. package/lib/cjs/internal/use-cases/di/useCasesModule.js.map +3 -3
  63. package/lib/cjs/internal/use-cases/di/useCasesModule.test.js +1 -1
  64. package/lib/cjs/internal/use-cases/di/useCasesModule.test.js.map +2 -2
  65. package/lib/cjs/internal/use-cases/message/SignMessageUseCase.js +1 -1
  66. package/lib/cjs/internal/use-cases/message/SignMessageUseCase.js.map +3 -3
  67. package/lib/cjs/internal/use-cases/message/SignMessageUseCase.test.js +1 -1
  68. package/lib/cjs/internal/use-cases/message/SignMessageUseCase.test.js.map +2 -2
  69. package/lib/cjs/internal/use-cases/transaction/SignTransactionUseCase.js +1 -1
  70. package/lib/cjs/internal/use-cases/transaction/SignTransactionUseCase.js.map +2 -2
  71. package/lib/cjs/internal/use-cases/transaction/SignTransactionUseCase.test.js +1 -1
  72. package/lib/cjs/internal/use-cases/transaction/SignTransactionUseCase.test.js.map +2 -2
  73. package/lib/cjs/package.json +16 -17
  74. package/lib/esm/api/model/MessageOptions.js +1 -0
  75. package/lib/esm/api/model/MessageOptions.js.map +7 -0
  76. package/lib/esm/internal/DefaultSignerSolana.js +1 -1
  77. package/lib/esm/internal/DefaultSignerSolana.js.map +2 -2
  78. package/lib/esm/internal/DefaultSignerSolana.test.js +1 -1
  79. package/lib/esm/internal/DefaultSignerSolana.test.js.map +2 -2
  80. package/lib/esm/internal/app-binder/SolanaAppBinder.js +1 -1
  81. package/lib/esm/internal/app-binder/SolanaAppBinder.js.map +3 -3
  82. package/lib/esm/internal/app-binder/SolanaAppBinder.test.js +1 -1
  83. package/lib/esm/internal/app-binder/SolanaAppBinder.test.js.map +3 -3
  84. package/lib/esm/internal/app-binder/command/GetAppConfigurationCommand.test.js +1 -1
  85. package/lib/esm/internal/app-binder/command/GetAppConfigurationCommand.test.js.map +2 -2
  86. package/lib/esm/internal/app-binder/command/GetPubKeyCommand.test.js +1 -1
  87. package/lib/esm/internal/app-binder/command/GetPubKeyCommand.test.js.map +2 -2
  88. package/lib/esm/internal/app-binder/command/SignOffChainMessageCommand.js.map +2 -2
  89. package/lib/esm/internal/app-binder/command/SignOffChainMessageCommand.test.js +1 -1
  90. package/lib/esm/internal/app-binder/command/SignOffChainMessageCommand.test.js.map +2 -2
  91. package/lib/esm/internal/app-binder/command/SignTransactionCommand.test.js +1 -1
  92. package/lib/esm/internal/app-binder/command/SignTransactionCommand.test.js.map +2 -2
  93. package/lib/esm/internal/app-binder/command/utils/SolanaAppErrors.test.js +1 -1
  94. package/lib/esm/internal/app-binder/command/utils/SolanaAppErrors.test.js.map +2 -2
  95. package/lib/esm/internal/app-binder/device-action/SignTransactionDeviceAction.js +1 -1
  96. package/lib/esm/internal/app-binder/device-action/SignTransactionDeviceAction.js.map +2 -2
  97. package/lib/esm/internal/app-binder/device-action/SignTransactionDeviceAction.test.js +1 -1
  98. package/lib/esm/internal/app-binder/device-action/SignTransactionDeviceAction.test.js.map +3 -3
  99. package/lib/esm/internal/app-binder/device-action/__test-utils__/makeInternalApi.js +1 -1
  100. package/lib/esm/internal/app-binder/device-action/__test-utils__/makeInternalApi.js.map +3 -3
  101. package/lib/esm/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js +1 -1
  102. package/lib/esm/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.js.map +2 -2
  103. package/lib/esm/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js +1 -1
  104. package/lib/esm/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.js.map +3 -3
  105. package/lib/esm/internal/app-binder/di/appBinderModule.js +1 -1
  106. package/lib/esm/internal/app-binder/di/appBinderModule.js.map +3 -3
  107. package/lib/esm/internal/app-binder/di/appBinderModule.test.js +1 -1
  108. package/lib/esm/internal/app-binder/di/appBinderModule.test.js.map +2 -2
  109. package/lib/esm/internal/app-binder/task/SendSignDataTask.test.js +1 -1
  110. package/lib/esm/internal/app-binder/task/SendSignDataTask.test.js.map +2 -2
  111. package/lib/esm/internal/app-binder/task/SendSignMessageTask.js +1 -1
  112. package/lib/esm/internal/app-binder/task/SendSignMessageTask.js.map +3 -3
  113. package/lib/esm/internal/app-binder/task/SendSignMessageTask.test.js +1 -1
  114. package/lib/esm/internal/app-binder/task/SendSignMessageTask.test.js.map +2 -2
  115. package/lib/esm/internal/di.js +1 -1
  116. package/lib/esm/internal/di.js.map +2 -2
  117. package/lib/esm/internal/use-cases/address/GetAddressUseCase.js +1 -1
  118. package/lib/esm/internal/use-cases/address/GetAddressUseCase.js.map +2 -2
  119. package/lib/esm/internal/use-cases/address/GetAddressUseCase.test.js +1 -1
  120. package/lib/esm/internal/use-cases/address/GetAddressUseCase.test.js.map +2 -2
  121. package/lib/esm/internal/use-cases/app-configuration/GetAppConfiguration.test.js +1 -1
  122. package/lib/esm/internal/use-cases/app-configuration/GetAppConfiguration.test.js.map +2 -2
  123. package/lib/esm/internal/use-cases/di/useCasesModule.js +1 -1
  124. package/lib/esm/internal/use-cases/di/useCasesModule.js.map +3 -3
  125. package/lib/esm/internal/use-cases/di/useCasesModule.test.js +1 -1
  126. package/lib/esm/internal/use-cases/di/useCasesModule.test.js.map +2 -2
  127. package/lib/esm/internal/use-cases/message/SignMessageUseCase.js +1 -1
  128. package/lib/esm/internal/use-cases/message/SignMessageUseCase.js.map +3 -3
  129. package/lib/esm/internal/use-cases/message/SignMessageUseCase.test.js +1 -1
  130. package/lib/esm/internal/use-cases/message/SignMessageUseCase.test.js.map +2 -2
  131. package/lib/esm/internal/use-cases/transaction/SignTransactionUseCase.js +1 -1
  132. package/lib/esm/internal/use-cases/transaction/SignTransactionUseCase.js.map +2 -2
  133. package/lib/esm/internal/use-cases/transaction/SignTransactionUseCase.test.js +1 -1
  134. package/lib/esm/internal/use-cases/transaction/SignTransactionUseCase.test.js.map +2 -2
  135. package/lib/esm/package.json +16 -17
  136. package/lib/types/api/SignerSolana.d.ts +2 -1
  137. package/lib/types/api/SignerSolana.d.ts.map +1 -1
  138. package/lib/types/api/app-binder/SignMessageDeviceActionTypes.d.ts +1 -10
  139. package/lib/types/api/app-binder/SignMessageDeviceActionTypes.d.ts.map +1 -1
  140. package/lib/types/api/app-binder/SignTransactionDeviceActionTypes.d.ts +1 -2
  141. package/lib/types/api/app-binder/SignTransactionDeviceActionTypes.d.ts.map +1 -1
  142. package/lib/types/api/model/AddressOption.d.ts +1 -0
  143. package/lib/types/api/model/AddressOption.d.ts.map +1 -1
  144. package/lib/types/api/model/MessageOptions.d.ts +4 -0
  145. package/lib/types/api/model/MessageOptions.d.ts.map +1 -0
  146. package/lib/types/api/model/TransactionOptions.d.ts +3 -1
  147. package/lib/types/api/model/TransactionOptions.d.ts.map +1 -1
  148. package/lib/types/internal/DefaultSignerSolana.d.ts +2 -1
  149. package/lib/types/internal/DefaultSignerSolana.d.ts.map +1 -1
  150. package/lib/types/internal/app-binder/SolanaAppBinder.d.ts +3 -2
  151. package/lib/types/internal/app-binder/SolanaAppBinder.d.ts.map +1 -1
  152. package/lib/types/internal/app-binder/command/SignOffChainMessageCommand.d.ts +0 -1
  153. package/lib/types/internal/app-binder/command/SignOffChainMessageCommand.d.ts.map +1 -1
  154. package/lib/types/internal/app-binder/command/utils/SolanaApplicationErrors.d.ts.map +1 -1
  155. package/lib/types/internal/app-binder/device-action/SignTransactionDeviceAction.d.ts.map +1 -1
  156. package/lib/types/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts +2 -1
  157. package/lib/types/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts.map +1 -1
  158. package/lib/types/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.d.ts.map +1 -1
  159. package/lib/types/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts +5 -2
  160. package/lib/types/internal/app-binder/device-action/__test-utils__/testDeviceActionStates.d.ts.map +1 -1
  161. package/lib/types/internal/app-binder/di/appBinderModule.d.ts.map +1 -1
  162. package/lib/types/internal/app-binder/task/SendSignMessageTask.d.ts.map +1 -1
  163. package/lib/types/internal/di.d.ts.map +1 -1
  164. package/lib/types/internal/use-cases/address/GetAddressUseCase.d.ts.map +1 -1
  165. package/lib/types/internal/use-cases/di/useCasesModule.d.ts.map +1 -1
  166. package/lib/types/internal/use-cases/message/SignMessageUseCase.d.ts +2 -1
  167. package/lib/types/internal/use-cases/message/SignMessageUseCase.d.ts.map +1 -1
  168. package/lib/types/tsconfig.prod.tsbuildinfo +1 -1
  169. package/package.json +18 -19
  170. package/lib/cjs/internal/app-binder/device-action/SignMessage/SignMessageDeviceAction.js +0 -2
  171. package/lib/cjs/internal/app-binder/device-action/SignMessage/SignMessageDeviceAction.js.map +0 -7
  172. package/lib/cjs/internal/app-binder/device-action/SignMessage/SignMessageDeviceAction.test.js +0 -2
  173. package/lib/cjs/internal/app-binder/device-action/SignMessage/SignMessageDeviceAction.test.js.map +0 -7
  174. package/lib/esm/internal/app-binder/device-action/SignMessage/SignMessageDeviceAction.js +0 -2
  175. package/lib/esm/internal/app-binder/device-action/SignMessage/SignMessageDeviceAction.js.map +0 -7
  176. package/lib/esm/internal/app-binder/device-action/SignMessage/SignMessageDeviceAction.test.js +0 -2
  177. package/lib/esm/internal/app-binder/device-action/SignMessage/SignMessageDeviceAction.test.js.map +0 -7
  178. package/lib/types/internal/app-binder/device-action/SignMessage/SignMessageDeviceAction.d.ts +0 -16
  179. package/lib/types/internal/app-binder/device-action/SignMessage/SignMessageDeviceAction.d.ts.map +0 -1
  180. package/lib/types/internal/app-binder/device-action/SignMessage/SignMessageDeviceAction.test.d.ts +0 -2
  181. package/lib/types/internal/app-binder/device-action/SignMessage/SignMessageDeviceAction.test.d.ts.map +0 -1
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/task/SendSignMessageTask.ts"],
4
- "sourcesContent": ["import {\n ByteArrayBuilder,\n type CommandResult,\n type InternalApi,\n} from \"@ledgerhq/device-management-kit\";\nimport { DerivationPathUtils } from \"@ledgerhq/signer-utils\";\n\nimport { type Signature } from \"@api/index\";\nimport { SignOffChainMessageCommand } from \"@internal/app-binder/command/SignOffChainMessageCommand\";\nimport { type SolanaAppErrorCodes } from \"@internal/app-binder/command/utils/SolanaApplicationErrors\";\n\nexport type SendSignMessageTaskArgs = {\n sendingData: Uint8Array;\n derivationPath: string;\n};\n\nexport type SendSignMessageTaskRunFunctionReturn = Promise<\n CommandResult<Signature, SolanaAppErrorCodes>\n>;\n\nexport class SendSignMessageTask {\n constructor(\n private api: InternalApi,\n private args: SendSignMessageTaskArgs,\n ) {}\n\n async run(): SendSignMessageTaskRunFunctionReturn {\n const { sendingData, derivationPath } = this.args;\n\n const commandBuffer = this._buildApduCommand(\n this._buildFullMessage(sendingData),\n DerivationPathUtils.splitPath(derivationPath),\n );\n\n return await this.api.sendCommand(\n new SignOffChainMessageCommand({\n message: commandBuffer,\n derivationPath,\n }),\n );\n }\n\n private _buildFullMessage(sendingData: Uint8Array): Uint8Array {\n const prefix = new TextEncoder().encode(\"solana offchain\");\n const msgLengthFieldSize = 4;\n\n const lengthBytes = new Uint8Array(msgLengthFieldSize);\n lengthBytes[2] = sendingData.length;\n\n const fullMessage = new Uint8Array(\n 1 + prefix.length + lengthBytes.length + sendingData.length,\n );\n\n let offset = 0;\n fullMessage[offset++] = 0xff;\n fullMessage.set(prefix, offset);\n offset += prefix.length;\n fullMessage.set(lengthBytes, offset);\n offset += lengthBytes.length;\n fullMessage.set(sendingData, offset);\n\n return fullMessage;\n }\n\n private _buildApduCommand(\n fullMessage: Uint8Array,\n paths: number[],\n ): Uint8Array {\n const numberOfSigners = 1;\n const pathSize = 4;\n const signersCountSize = 1;\n const derivationsCountSize = 1;\n const numberOfDerivations = paths.length;\n const builder = new ByteArrayBuilder(\n fullMessage.length +\n signersCountSize +\n derivationsCountSize +\n numberOfDerivations * pathSize,\n );\n\n builder.add8BitUIntToData(numberOfSigners);\n builder.add8BitUIntToData(numberOfDerivations);\n\n paths.forEach((path) => {\n const buffer = new Uint8Array(4);\n const view = new DataView(buffer.buffer);\n view.setUint32(0, path, false);\n builder.addBufferToData(buffer);\n });\n\n builder.addBufferToData(fullMessage);\n return builder.build();\n }\n}\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,yBAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAIO,2CACPC,EAAoC,kCAGpCC,EAA2C,mEAYpC,MAAMJ,CAAoB,CAC/B,YACUK,EACAC,EACR,CAFQ,SAAAD,EACA,UAAAC,CACP,CAEH,MAAM,KAA4C,CAChD,KAAM,CAAE,YAAAC,EAAa,eAAAC,CAAe,EAAI,KAAK,KAEvCC,EAAgB,KAAK,kBACzB,KAAK,kBAAkBF,CAAW,EAClC,sBAAoB,UAAUC,CAAc,CAC9C,EAEA,OAAO,MAAM,KAAK,IAAI,YACpB,IAAI,6BAA2B,CAC7B,QAASC,EACT,eAAAD,CACF,CAAC,CACH,CACF,CAEQ,kBAAkBD,EAAqC,CAC7D,MAAMG,EAAS,IAAI,YAAY,EAAE,OAAO,iBAAiB,EACnDC,EAAqB,EAErBC,EAAc,IAAI,WAAWD,CAAkB,EACrDC,EAAY,CAAC,EAAIL,EAAY,OAE7B,MAAMM,EAAc,IAAI,WACtB,EAAIH,EAAO,OAASE,EAAY,OAASL,EAAY,MACvD,EAEA,IAAIO,EAAS,EACb,OAAAD,EAAYC,GAAQ,EAAI,IACxBD,EAAY,IAAIH,EAAQI,CAAM,EAC9BA,GAAUJ,EAAO,OACjBG,EAAY,IAAID,EAAaE,CAAM,EACnCA,GAAUF,EAAY,OACtBC,EAAY,IAAIN,EAAaO,CAAM,EAE5BD,CACT,CAEQ,kBACNA,EACAE,EACY,CAKZ,MAAMC,EAAsBD,EAAM,OAC5BE,EAAU,IAAI,mBAClBJ,EAAY,OACV,EACA,EACAG,EAAsB,CAC1B,EAEA,OAAAC,EAAQ,kBAAkB,CAAe,EACzCA,EAAQ,kBAAkBD,CAAmB,EAE7CD,EAAM,QAASG,GAAS,CACtB,MAAMC,EAAS,IAAI,WAAW,CAAC,EAClB,IAAI,SAASA,EAAO,MAAM,EAClC,UAAU,EAAGD,EAAM,EAAK,EAC7BD,EAAQ,gBAAgBE,CAAM,CAChC,CAAC,EAEDF,EAAQ,gBAAgBJ,CAAW,EAC5BI,EAAQ,MAAM,CACvB,CACF",
6
- "names": ["SendSignMessageTask_exports", "__export", "SendSignMessageTask", "__toCommonJS", "import_device_management_kit", "import_signer_utils", "import_SignOffChainMessageCommand", "api", "args", "sendingData", "derivationPath", "commandBuffer", "prefix", "msgLengthFieldSize", "lengthBytes", "fullMessage", "offset", "paths", "numberOfDerivations", "builder", "path", "buffer"]
4
+ "sourcesContent": ["import {\n APDU_MAX_PAYLOAD,\n ByteArrayBuilder,\n type CommandResult,\n CommandResultFactory,\n type InternalApi,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\nimport { DerivationPathUtils } from \"@ledgerhq/signer-utils\";\n\nimport { type Signature } from \"@api/index\";\nimport { SignOffChainMessageCommand } from \"@internal/app-binder/command/SignOffChainMessageCommand\";\nimport { type SolanaAppErrorCodes } from \"@internal/app-binder/command/utils/SolanaApplicationErrors\";\n\nexport type SendSignMessageTaskArgs = {\n sendingData: Uint8Array;\n derivationPath: string;\n};\n\nexport type SendSignMessageTaskRunFunctionReturn = Promise<\n CommandResult<Signature, SolanaAppErrorCodes>\n>;\n\nexport class SendSignMessageTask {\n constructor(\n private api: InternalApi,\n private args: SendSignMessageTaskArgs,\n ) {}\n\n async run(): SendSignMessageTaskRunFunctionReturn {\n const { sendingData, derivationPath } = this.args;\n\n const commandBuffer = this._buildApduCommand(\n this._buildFullMessage(sendingData),\n DerivationPathUtils.splitPath(derivationPath),\n );\n\n if (commandBuffer.length > APDU_MAX_PAYLOAD) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\n \"The APDU command exceeds the maximum allowable size (255 bytes)\",\n ),\n });\n }\n\n return await this.api.sendCommand(\n new SignOffChainMessageCommand({\n message: commandBuffer,\n }),\n );\n }\n\n private _buildFullMessage(sendingData: Uint8Array): Uint8Array {\n return new ByteArrayBuilder()\n .add8BitUIntToData(0xff)\n .addAsciiStringToData(\"solana offchain\")\n .add16BitUIntToData(0)\n .add16BitUIntToData(sendingData.length, false)\n .addBufferToData(sendingData)\n .build();\n }\n\n private _buildApduCommand(\n fullMessage: Uint8Array,\n paths: number[],\n ): Uint8Array {\n const numberOfSigners = 1;\n const pathSize = 4;\n const signersCountSize = 1;\n const derivationsCountSize = 1;\n const numberOfDerivations = paths.length;\n const builder = new ByteArrayBuilder(\n fullMessage.length +\n signersCountSize +\n derivationsCountSize +\n numberOfDerivations * pathSize,\n );\n\n builder.add8BitUIntToData(numberOfSigners);\n builder.add8BitUIntToData(numberOfDerivations);\n\n paths.forEach((path) => {\n const buffer = new Uint8Array(4);\n const view = new DataView(buffer.buffer);\n view.setUint32(0, path, false);\n builder.addBufferToData(buffer);\n });\n\n builder.addBufferToData(fullMessage);\n return builder.build();\n }\n}\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,yBAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAOO,2CACPC,EAAoC,kCAGpCC,EAA2C,mEAYpC,MAAMJ,CAAoB,CAC/B,YACUK,EACAC,EACR,CAFQ,SAAAD,EACA,UAAAC,CACP,CAEH,MAAM,KAA4C,CAChD,KAAM,CAAE,YAAAC,EAAa,eAAAC,CAAe,EAAI,KAAK,KAEvCC,EAAgB,KAAK,kBACzB,KAAK,kBAAkBF,CAAW,EAClC,sBAAoB,UAAUC,CAAc,CAC9C,EAEA,OAAIC,EAAc,OAAS,sBAClB,wBAAqB,CAC1B,MAAO,IAAI,yBACT,iEACF,CACF,CAAC,EAGI,MAAM,KAAK,IAAI,YACpB,IAAI,6BAA2B,CAC7B,QAASA,CACX,CAAC,CACH,CACF,CAEQ,kBAAkBF,EAAqC,CAC7D,OAAO,IAAI,mBAAiB,EACzB,kBAAkB,GAAI,EACtB,qBAAqB,iBAAiB,EACtC,mBAAmB,CAAC,EACpB,mBAAmBA,EAAY,OAAQ,EAAK,EAC5C,gBAAgBA,CAAW,EAC3B,MAAM,CACX,CAEQ,kBACNG,EACAC,EACY,CAKZ,MAAMC,EAAsBD,EAAM,OAC5BE,EAAU,IAAI,mBAClBH,EAAY,OACV,EACA,EACAE,EAAsB,CAC1B,EAEA,OAAAC,EAAQ,kBAAkB,CAAe,EACzCA,EAAQ,kBAAkBD,CAAmB,EAE7CD,EAAM,QAASG,GAAS,CACtB,MAAMC,EAAS,IAAI,WAAW,CAAC,EAClB,IAAI,SAASA,EAAO,MAAM,EAClC,UAAU,EAAGD,EAAM,EAAK,EAC7BD,EAAQ,gBAAgBE,CAAM,CAChC,CAAC,EAEDF,EAAQ,gBAAgBH,CAAW,EAC5BG,EAAQ,MAAM,CACvB,CACF",
6
+ "names": ["SendSignMessageTask_exports", "__export", "SendSignMessageTask", "__toCommonJS", "import_device_management_kit", "import_signer_utils", "import_SignOffChainMessageCommand", "api", "args", "sendingData", "derivationPath", "commandBuffer", "fullMessage", "paths", "numberOfDerivations", "builder", "path", "buffer"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var s=require("@ledgerhq/device-management-kit"),c=require("../../app-binder/device-action/__test-utils__/makeInternalApi"),o=require("../../app-binder/task/SendSignMessageTask");const d="44'/501'/0'/0'";describe("SendSignMessageTask",()=>{const e=(0,c.makeDeviceActionInternalApiMock)();beforeEach(()=>{jest.resetAllMocks()});const r=new Uint8Array([1,2,3,4]);describe("run with SignOffChainMessageCommand",()=>{it("should return an error if the command fails",async()=>{const n={derivationPath:d,sendingData:r};e.sendCommand.mockResolvedValueOnce((0,s.CommandResultFactory)({error:new s.InvalidStatusWordError("no signature returned")}));const a=await new o.SendSignMessageTask(e,n).run();expect(e.sendCommand).toHaveBeenCalledTimes(1),expect(a).toMatchObject({error:new s.InvalidStatusWordError("no signature returned")})}),it("should return success when the command executes successfully",async()=>{const n={derivationPath:d,sendingData:r},a=new Uint8Array([170,187,204,221]);e.sendCommand.mockResolvedValueOnce((0,s.CommandResultFactory)({data:a}));const t=await new o.SendSignMessageTask(e,n).run();expect(e.sendCommand).toHaveBeenCalledTimes(1),expect(t).toMatchObject({data:a})}),it("should handle invalid derivation paths",async()=>{const a={derivationPath:"invalid/path",sendingData:r},t=new o.SendSignMessageTask(e,a);await expect(t.run()).rejects.toThrowError()}),it("should handle empty message data",async()=>{const n=new Uint8Array([]),a={derivationPath:d,sendingData:n};e.sendCommand.mockResolvedValueOnce((0,s.CommandResultFactory)({data:new Uint8Array([])}));const t=await new o.SendSignMessageTask(e,a).run();if(expect(e.sendCommand).toHaveBeenCalledTimes(1),"data"in t)expect(t.data).toEqual(new Uint8Array([]));else throw new Error("Expected result to have data property")}),it("should correctly build the APDU command",async()=>{const n={derivationPath:d,sendingData:r},a=new o.SendSignMessageTask(e,n),t=a._buildFullMessage(r),i=[-2147483604,-2147483147,-2147483648,0],l=a._buildApduCommand(t,i),m=2+i.length*4+t.length;expect(l.length).toEqual(m)}),it("should handle messages with maximum allowed length",async()=>{const n=new Uint8Array(255).fill(1),a={derivationPath:d,sendingData:n};e.sendCommand.mockResolvedValueOnce((0,s.CommandResultFactory)({data:new Uint8Array([153,136,119])}));const t=await new o.SendSignMessageTask(e,a).run();if(expect(e.sendCommand).toHaveBeenCalledTimes(1),"data"in t)expect(t.data).toEqual(new Uint8Array([153,136,119]));else throw new Error("Expected result to have data property")})})});
1
+ "use strict";var s=require("@ledgerhq/device-management-kit"),l=require("../../app-binder/device-action/__test-utils__/makeInternalApi"),r=require("../../app-binder/task/SendSignMessageTask");const d="44'/501'/0'/0'";describe("SendSignMessageTask",()=>{const e=(0,l.makeDeviceActionInternalApiMock)();beforeEach(()=>{vi.resetAllMocks()});const c=new Uint8Array([1,2,3,4]);describe("run with SignOffChainMessageCommand",()=>{it("should return an error if the command fails",async()=>{const n={derivationPath:d,sendingData:c};e.sendCommand.mockResolvedValueOnce((0,s.CommandResultFactory)({error:new s.InvalidStatusWordError("no signature returned")}));const a=await new r.SendSignMessageTask(e,n).run();expect(e.sendCommand).toHaveBeenCalledTimes(1),expect(a).toMatchObject({error:new s.InvalidStatusWordError("no signature returned")})}),it("should return success when the command executes successfully",async()=>{const n={derivationPath:d,sendingData:c},a=new Uint8Array([170,187,204,221]);e.sendCommand.mockResolvedValueOnce((0,s.CommandResultFactory)({data:a}));const t=await new r.SendSignMessageTask(e,n).run();expect(e.sendCommand).toHaveBeenCalledTimes(1),expect(t).toMatchObject({data:a})}),it("should handle invalid derivation paths",async()=>{const a={derivationPath:"invalid/path",sendingData:c},t=new r.SendSignMessageTask(e,a);await expect(t.run()).rejects.toThrowError()}),it("should handle empty message data",async()=>{const n=new Uint8Array([]),a={derivationPath:d,sendingData:n};e.sendCommand.mockResolvedValueOnce((0,s.CommandResultFactory)({data:new Uint8Array([])}));const t=await new r.SendSignMessageTask(e,a).run();if(expect(e.sendCommand).toHaveBeenCalledTimes(1),"data"in t)expect(t.data).toEqual(new Uint8Array([]));else throw new Error("Expected result to have data property")}),it("should correctly build the APDU command",()=>{const n={derivationPath:d,sendingData:c},a=new r.SendSignMessageTask(e,n),t=a._buildFullMessage(c),i=[-2147483604,-2147483147,-2147483648,0],o=a._buildApduCommand(t,i),m=2+i.length*4+t.length;expect(o.length).toEqual(m)}),it("should handle messages with maximum allowed length",async()=>{const t=new Uint8Array(217).fill(1),i={derivationPath:d,sendingData:t};e.sendCommand.mockResolvedValueOnce((0,s.CommandResultFactory)({data:new Uint8Array([153,136,119])}));const o=await new r.SendSignMessageTask(e,i).run();if(expect(e.sendCommand).toHaveBeenCalledTimes(1),"data"in o)expect(o.data).toEqual(new Uint8Array([153,136,119]));else throw new Error("Expected result to have data property")}),it("should fail messages if too big",async()=>{const t=new Uint8Array(218).fill(1),i={derivationPath:d,sendingData:t};e.sendCommand.mockResolvedValueOnce((0,s.CommandResultFactory)({data:new Uint8Array([153,136,119])}));const o=await new r.SendSignMessageTask(e,i).run();if(expect(e.sendCommand).toHaveBeenCalledTimes(0),"error"in o)expect(o.error).toEqual(new s.InvalidStatusWordError("The APDU command exceeds the maximum allowable size (255 bytes)"));else throw new Error("Expected result to have error property")})})});
2
2
  //# sourceMappingURL=SendSignMessageTask.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/task/SendSignMessageTask.test.ts"],
4
- "sourcesContent": ["import {\n CommandResultFactory,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { makeDeviceActionInternalApiMock } from \"@internal/app-binder/device-action/__test-utils__/makeInternalApi\";\nimport { SendSignMessageTask } from \"@internal/app-binder/task/SendSignMessageTask\";\n\nconst DERIVATION_PATH = \"44'/501'/0'/0'\";\n\ndescribe(\"SendSignMessageTask\", () => {\n const apiMock = makeDeviceActionInternalApiMock();\n\n beforeEach(() => {\n jest.resetAllMocks();\n });\n\n const SIMPLE_MESSAGE = new Uint8Array([0x01, 0x02, 0x03, 0x04]);\n\n describe(\"run with SignOffChainMessageCommand\", () => {\n it(\"should return an error if the command fails\", async () => {\n // GIVEN-------------------------------\n //-------------------------------------\n const args = {\n derivationPath: DERIVATION_PATH,\n sendingData: SIMPLE_MESSAGE,\n };\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"no signature returned\"),\n }),\n );\n\n // WHEN--------------------------------\n //-------------------------------------\n const result = await new SendSignMessageTask(apiMock, args).run();\n\n // THEN--------------------------------\n //-------------------------------------\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(1);\n expect(result).toMatchObject({\n error: new InvalidStatusWordError(\"no signature returned\"),\n });\n });\n\n it(\"should return success when the command executes successfully\", async () => {\n // GIVEN-------------------------------\n //-------------------------------------\n const args = {\n derivationPath: DERIVATION_PATH,\n sendingData: SIMPLE_MESSAGE,\n };\n const expectedSignature = new Uint8Array([0xaa, 0xbb, 0xcc, 0xdd]);\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({\n data: expectedSignature,\n }),\n );\n\n // WHEN--------------------------------\n //-------------------------------------\n const result = await new SendSignMessageTask(apiMock, args).run();\n\n // THEN--------------------------------\n //-------------------------------------\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(1);\n expect(result).toMatchObject({\n data: expectedSignature,\n });\n });\n\n it(\"should handle invalid derivation paths\", async () => {\n // GIVEN-------------------------------\n //-------------------------------------\n const invalidDerivationPath = \"invalid/path\";\n const args = {\n derivationPath: invalidDerivationPath,\n sendingData: SIMPLE_MESSAGE,\n };\n\n // WHEN--------------------------------\n //-------------------------------------\n const task = new SendSignMessageTask(apiMock, args);\n\n // THEN--------------------------------\n //-------------------------------------\n await expect(task.run()).rejects.toThrowError();\n });\n\n it(\"should handle empty message data\", async () => {\n // GIVEN-------------------------------\n //-------------------------------------\n const emptyMessage = new Uint8Array([]);\n const args = {\n derivationPath: DERIVATION_PATH,\n sendingData: emptyMessage,\n };\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({\n data: new Uint8Array([]),\n }),\n );\n\n // WHEN--------------------------------\n //-------------------------------------\n const result = await new SendSignMessageTask(apiMock, args).run();\n\n // THEN--------------------------------\n //-------------------------------------\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(1);\n if (\"data\" in result) {\n expect(result.data).toEqual(new Uint8Array([]));\n } else {\n throw new Error(\"Expected result to have data property\");\n }\n });\n\n it(\"should correctly build the APDU command\", async () => {\n // GIVEN-------------------------------\n //-------------------------------------\n const args = {\n derivationPath: DERIVATION_PATH,\n sendingData: SIMPLE_MESSAGE,\n };\n const task = new SendSignMessageTask(apiMock, args);\n const fullMessage = task[\"_buildFullMessage\"](SIMPLE_MESSAGE);\n const paths = [44 | 0x80000000, 501 | 0x80000000, 0 | 0x80000000, 0];\n const commandBuffer = task[\"_buildApduCommand\"](fullMessage, paths);\n\n // WHEN--------------------------------\n //-------------------------------------\n const expectedCommandLength =\n 1 + // numberOfSigners\n 1 + // numberOfDerivations\n paths.length * 4 + // paths\n fullMessage.length; // message\n\n // THEN--------------------------------\n //-------------------------------------\n expect(commandBuffer.length).toEqual(expectedCommandLength);\n });\n\n it(\"should handle messages with maximum allowed length\", async () => {\n // GIVEN-------------------------------\n //-------------------------------------\n const maxLengthMessage = new Uint8Array(255).fill(0x01);\n const args = {\n derivationPath: DERIVATION_PATH,\n sendingData: maxLengthMessage,\n };\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({\n data: new Uint8Array([0x99, 0x88, 0x77]),\n }),\n );\n\n // WHEN--------------------------------\n //-------------------------------------\n const result = await new SendSignMessageTask(apiMock, args).run();\n\n // THEN--------------------------------\n //-------------------------------------\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(1);\n if (\"data\" in result) {\n expect(result.data).toEqual(new Uint8Array([0x99, 0x88, 0x77]));\n } else {\n throw new Error(\"Expected result to have data property\");\n }\n });\n });\n});\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import {\n CommandResultFactory,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { makeDeviceActionInternalApiMock } from \"@internal/app-binder/device-action/__test-utils__/makeInternalApi\";\nimport { SendSignMessageTask } from \"@internal/app-binder/task/SendSignMessageTask\";\n\nconst DERIVATION_PATH = \"44'/501'/0'/0'\";\n\ndescribe(\"SendSignMessageTask\", () => {\n const apiMock = makeDeviceActionInternalApiMock();\n\n beforeEach(() => {\n vi.resetAllMocks();\n });\n\n const SIMPLE_MESSAGE = new Uint8Array([0x01, 0x02, 0x03, 0x04]);\n\n describe(\"run with SignOffChainMessageCommand\", () => {\n it(\"should return an error if the command fails\", async () => {\n // GIVEN-------------------------------\n //-------------------------------------\n const args = {\n derivationPath: DERIVATION_PATH,\n sendingData: SIMPLE_MESSAGE,\n };\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"no signature returned\"),\n }),\n );\n\n // WHEN--------------------------------\n //-------------------------------------\n const result = await new SendSignMessageTask(apiMock, args).run();\n\n // THEN--------------------------------\n //-------------------------------------\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(1);\n expect(result).toMatchObject({\n error: new InvalidStatusWordError(\"no signature returned\"),\n });\n });\n\n it(\"should return success when the command executes successfully\", async () => {\n // GIVEN-------------------------------\n //-------------------------------------\n const args = {\n derivationPath: DERIVATION_PATH,\n sendingData: SIMPLE_MESSAGE,\n };\n const expectedSignature = new Uint8Array([0xaa, 0xbb, 0xcc, 0xdd]);\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({\n data: expectedSignature,\n }),\n );\n\n // WHEN--------------------------------\n //-------------------------------------\n const result = await new SendSignMessageTask(apiMock, args).run();\n\n // THEN--------------------------------\n //-------------------------------------\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(1);\n expect(result).toMatchObject({\n data: expectedSignature,\n });\n });\n\n it(\"should handle invalid derivation paths\", async () => {\n // GIVEN-------------------------------\n //-------------------------------------\n const invalidDerivationPath = \"invalid/path\";\n const args = {\n derivationPath: invalidDerivationPath,\n sendingData: SIMPLE_MESSAGE,\n };\n\n // WHEN--------------------------------\n //-------------------------------------\n const task = new SendSignMessageTask(apiMock, args);\n\n // THEN--------------------------------\n //-------------------------------------\n await expect(task.run()).rejects.toThrowError();\n });\n\n it(\"should handle empty message data\", async () => {\n // GIVEN-------------------------------\n //-------------------------------------\n const emptyMessage = new Uint8Array([]);\n const args = {\n derivationPath: DERIVATION_PATH,\n sendingData: emptyMessage,\n };\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({\n data: new Uint8Array([]),\n }),\n );\n\n // WHEN--------------------------------\n //-------------------------------------\n const result = await new SendSignMessageTask(apiMock, args).run();\n\n // THEN--------------------------------\n //-------------------------------------\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(1);\n if (\"data\" in result) {\n expect(result.data).toEqual(new Uint8Array([]));\n } else {\n throw new Error(\"Expected result to have data property\");\n }\n });\n\n it(\"should correctly build the APDU command\", () => {\n // GIVEN-------------------------------\n //-------------------------------------\n const args = {\n derivationPath: DERIVATION_PATH,\n sendingData: SIMPLE_MESSAGE,\n };\n const task = new SendSignMessageTask(apiMock, args);\n const fullMessage = task[\"_buildFullMessage\"](SIMPLE_MESSAGE);\n const paths = [44 | 0x80000000, 501 | 0x80000000, 0 | 0x80000000, 0];\n const commandBuffer = task[\"_buildApduCommand\"](fullMessage, paths);\n\n // WHEN--------------------------------\n //-------------------------------------\n const expectedCommandLength =\n 1 + // numberOfSigners\n 1 + // numberOfDerivations\n paths.length * 4 + // paths\n fullMessage.length; // message\n\n // THEN--------------------------------\n //-------------------------------------\n expect(commandBuffer.length).toEqual(expectedCommandLength);\n });\n\n it(\"should handle messages with maximum allowed length\", async () => {\n // GIVEN-------------------------------\n //-------------------------------------\n const headerSize =\n 1 + // numberOfSigners\n 1 + // numberOfDerivations\n 4 * 4; // paths\n const fullMessageHeaderSize =\n 1 +\n 15 + // prefix\n 4; // length\n const maxLengthMessage = new Uint8Array(\n 255 - headerSize - fullMessageHeaderSize,\n ).fill(0x01);\n const args = {\n derivationPath: DERIVATION_PATH,\n sendingData: maxLengthMessage,\n };\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({\n data: new Uint8Array([0x99, 0x88, 0x77]),\n }),\n );\n\n // WHEN--------------------------------\n //-------------------------------------\n const result = await new SendSignMessageTask(apiMock, args).run();\n\n // THEN--------------------------------\n //-------------------------------------\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(1);\n if (\"data\" in result) {\n expect(result.data).toEqual(new Uint8Array([0x99, 0x88, 0x77]));\n } else {\n throw new Error(\"Expected result to have data property\");\n }\n });\n\n it(\"should fail messages if too big\", async () => {\n // GIVEN-------------------------------\n //-------------------------------------\n const headerSize =\n 1 + // numberOfSigners\n 1 + // numberOfDerivations\n 4 * 4; // paths\n const fullMessageHeaderSize =\n 1 +\n 15 + // prefix\n 4; // length\n const maxLengthMessage = new Uint8Array(\n 256 - headerSize - fullMessageHeaderSize,\n ).fill(0x01);\n const args = {\n derivationPath: DERIVATION_PATH,\n sendingData: maxLengthMessage,\n };\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({\n data: new Uint8Array([0x99, 0x88, 0x77]),\n }),\n );\n\n // WHEN--------------------------------\n //-------------------------------------\n const result = await new SendSignMessageTask(apiMock, args).run();\n\n // THEN--------------------------------\n //-------------------------------------\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(0);\n if (\"error\" in result) {\n expect(result.error).toEqual(\n new InvalidStatusWordError(\n \"The APDU command exceeds the maximum allowable size (255 bytes)\",\n ),\n );\n } else {\n throw new Error(\"Expected result to have error property\");\n }\n });\n });\n});\n"],
5
+ "mappings": "aAAA,IAAAA,EAGO,2CAEPC,EAAgD,6EAChDC,EAAoC,yDAEpC,MAAMC,EAAkB,iBAExB,SAAS,sBAAuB,IAAM,CACpC,MAAMC,KAAU,mCAAgC,EAEhD,WAAW,IAAM,CACf,GAAG,cAAc,CACnB,CAAC,EAED,MAAMC,EAAiB,IAAI,WAAW,CAAC,EAAM,EAAM,EAAM,CAAI,CAAC,EAE9D,SAAS,sCAAuC,IAAM,CACpD,GAAG,8CAA+C,SAAY,CAG5D,MAAMC,EAAO,CACX,eAAgBH,EAChB,YAAaE,CACf,EACAD,EAAQ,YAAY,yBAClB,wBAAqB,CACnB,MAAO,IAAI,yBAAuB,uBAAuB,CAC3D,CAAC,CACH,EAIA,MAAMG,EAAS,MAAM,IAAI,sBAAoBH,EAASE,CAAI,EAAE,IAAI,EAIhE,OAAOF,EAAQ,WAAW,EAAE,sBAAsB,CAAC,EACnD,OAAOG,CAAM,EAAE,cAAc,CAC3B,MAAO,IAAI,yBAAuB,uBAAuB,CAC3D,CAAC,CACH,CAAC,EAED,GAAG,+DAAgE,SAAY,CAG7E,MAAMD,EAAO,CACX,eAAgBH,EAChB,YAAaE,CACf,EACMG,EAAoB,IAAI,WAAW,CAAC,IAAM,IAAM,IAAM,GAAI,CAAC,EACjEJ,EAAQ,YAAY,yBAClB,wBAAqB,CACnB,KAAMI,CACR,CAAC,CACH,EAIA,MAAMD,EAAS,MAAM,IAAI,sBAAoBH,EAASE,CAAI,EAAE,IAAI,EAIhE,OAAOF,EAAQ,WAAW,EAAE,sBAAsB,CAAC,EACnD,OAAOG,CAAM,EAAE,cAAc,CAC3B,KAAMC,CACR,CAAC,CACH,CAAC,EAED,GAAG,yCAA0C,SAAY,CAIvD,MAAMF,EAAO,CACX,eAF4B,eAG5B,YAAaD,CACf,EAIMI,EAAO,IAAI,sBAAoBL,EAASE,CAAI,EAIlD,MAAM,OAAOG,EAAK,IAAI,CAAC,EAAE,QAAQ,aAAa,CAChD,CAAC,EAED,GAAG,mCAAoC,SAAY,CAGjD,MAAMC,EAAe,IAAI,WAAW,CAAC,CAAC,EAChCJ,EAAO,CACX,eAAgBH,EAChB,YAAaO,CACf,EACAN,EAAQ,YAAY,yBAClB,wBAAqB,CACnB,KAAM,IAAI,WAAW,CAAC,CAAC,CACzB,CAAC,CACH,EAIA,MAAMG,EAAS,MAAM,IAAI,sBAAoBH,EAASE,CAAI,EAAE,IAAI,EAKhE,GADA,OAAOF,EAAQ,WAAW,EAAE,sBAAsB,CAAC,EAC/C,SAAUG,EACZ,OAAOA,EAAO,IAAI,EAAE,QAAQ,IAAI,WAAW,CAAC,CAAC,CAAC,MAE9C,OAAM,IAAI,MAAM,uCAAuC,CAE3D,CAAC,EAED,GAAG,0CAA2C,IAAM,CAGlD,MAAMD,EAAO,CACX,eAAgBH,EAChB,YAAaE,CACf,EACMI,EAAO,IAAI,sBAAoBL,EAASE,CAAI,EAC5CK,EAAcF,EAAK,kBAAqBJ,CAAc,EACtDO,EAAQ,CAAC,YAAiB,YAAkB,YAAgB,CAAC,EAC7DC,EAAgBJ,EAAK,kBAAqBE,EAAaC,CAAK,EAI5DE,EACJ,EAEAF,EAAM,OAAS,EACfD,EAAY,OAId,OAAOE,EAAc,MAAM,EAAE,QAAQC,CAAqB,CAC5D,CAAC,EAED,GAAG,qDAAsD,SAAY,CAWnE,MAAMC,EAAmB,IAAI,WAC3B,GACF,EAAE,KAAK,CAAI,EACLT,EAAO,CACX,eAAgBH,EAChB,YAAaY,CACf,EACAX,EAAQ,YAAY,yBAClB,wBAAqB,CACnB,KAAM,IAAI,WAAW,CAAC,IAAM,IAAM,GAAI,CAAC,CACzC,CAAC,CACH,EAIA,MAAMG,EAAS,MAAM,IAAI,sBAAoBH,EAASE,CAAI,EAAE,IAAI,EAKhE,GADA,OAAOF,EAAQ,WAAW,EAAE,sBAAsB,CAAC,EAC/C,SAAUG,EACZ,OAAOA,EAAO,IAAI,EAAE,QAAQ,IAAI,WAAW,CAAC,IAAM,IAAM,GAAI,CAAC,CAAC,MAE9D,OAAM,IAAI,MAAM,uCAAuC,CAE3D,CAAC,EAED,GAAG,kCAAmC,SAAY,CAWhD,MAAMQ,EAAmB,IAAI,WAC3B,GACF,EAAE,KAAK,CAAI,EACLT,EAAO,CACX,eAAgBH,EAChB,YAAaY,CACf,EACAX,EAAQ,YAAY,yBAClB,wBAAqB,CACnB,KAAM,IAAI,WAAW,CAAC,IAAM,IAAM,GAAI,CAAC,CACzC,CAAC,CACH,EAIA,MAAMG,EAAS,MAAM,IAAI,sBAAoBH,EAASE,CAAI,EAAE,IAAI,EAKhE,GADA,OAAOF,EAAQ,WAAW,EAAE,sBAAsB,CAAC,EAC/C,UAAWG,EACb,OAAOA,EAAO,KAAK,EAAE,QACnB,IAAI,yBACF,iEACF,CACF,MAEA,OAAM,IAAI,MAAM,wCAAwC,CAE5D,CAAC,CACH,CAAC,CACH,CAAC",
6
6
  "names": ["import_device_management_kit", "import_makeInternalApi", "import_SendSignMessageTask", "DERIVATION_PATH", "apiMock", "SIMPLE_MESSAGE", "args", "result", "expectedSignature", "task", "emptyMessage", "fullMessage", "paths", "commandBuffer", "expectedCommandLength", "maxLengthMessage"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var i=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var C=Object.prototype.hasOwnProperty;var D=(o,e)=>{for(var n in e)i(o,n,{get:e[n],enumerable:!0})},M=(o,e,n,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of c(e))!C.call(o,t)&&t!==n&&i(o,t,{get:()=>e[t],enumerable:!(a=d(e,t))||a.enumerable});return o};var l=o=>M(i({},"__esModule",{value:!0}),o);var v={};D(v,{makeContainer:()=>u});module.exports=l(v);var s=require("inversify"),m=require("./app-binder/di/appBinderModule"),p=require("./use-cases/di/useCasesModule"),r=require("./externalTypes");const u=({dmk:o,sessionId:e})=>{const n=new s.Container;return n.bind(r.externalTypes.Dmk).toConstantValue(o),n.bind(r.externalTypes.SessionId).toConstantValue(e),n.load((0,m.appBinderModuleFactory)(),(0,p.useCasesModuleFactory)()),n};0&&(module.exports={makeContainer});
1
+ "use strict";var i=Object.defineProperty;var c=Object.getOwnPropertyDescriptor;var d=Object.getOwnPropertyNames;var y=Object.prototype.hasOwnProperty;var C=(o,e)=>{for(var n in e)i(o,n,{get:e[n],enumerable:!0})},D=(o,e,n,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of d(e))!y.call(o,t)&&t!==n&&i(o,t,{get:()=>e[t],enumerable:!(a=c(e,t))||a.enumerable});return o};var M=o=>D(i({},"__esModule",{value:!0}),o);var u={};C(u,{makeContainer:()=>l});module.exports=M(u);var s=require("inversify"),m=require("./app-binder/di/appBinderModule"),p=require("./use-cases/di/useCasesModule"),r=require("./externalTypes");const l=({dmk:o,sessionId:e})=>{const n=new s.Container;return n.bind(r.externalTypes.Dmk).toConstantValue(o),n.bind(r.externalTypes.SessionId).toConstantValue(e),n.loadSync((0,m.appBinderModuleFactory)(),(0,p.useCasesModuleFactory)()),n};0&&(module.exports={makeContainer});
2
2
  //# sourceMappingURL=di.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/internal/di.ts"],
4
- "sourcesContent": ["import {\n type DeviceManagementKit,\n type DeviceSessionId,\n} from \"@ledgerhq/device-management-kit\";\nimport { Container } from \"inversify\";\n\n// import { makeLoggerMiddleware } from \"inversify-logger-middleware\";\nimport { appBinderModuleFactory } from \"./app-binder/di/appBinderModule\";\nimport { useCasesModuleFactory } from \"./use-cases/di/useCasesModule\";\nimport { externalTypes } from \"./externalTypes\";\n\n// Uncomment this line to enable the logger middleware\n// const logger = makeLoggerMiddleware();\n\nexport type MakeContainerProps = {\n dmk: DeviceManagementKit;\n sessionId: DeviceSessionId;\n};\nexport const makeContainer = ({ dmk, sessionId }: MakeContainerProps) => {\n const container = new Container();\n\n // Uncomment this line to enable the logger middleware\n // container.applyMiddleware(logger);\n\n container.bind<DeviceManagementKit>(externalTypes.Dmk).toConstantValue(dmk);\n container\n .bind<DeviceSessionId>(externalTypes.SessionId)\n .toConstantValue(sessionId);\n\n container.load(appBinderModuleFactory(), useCasesModuleFactory());\n\n return container;\n};\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,mBAAAE,IAAA,eAAAC,EAAAH,GAIA,IAAAI,EAA0B,qBAG1BC,EAAuC,2CACvCC,EAAsC,yCACtCC,EAA8B,2BASvB,MAAML,EAAgB,CAAC,CAAE,IAAAM,EAAK,UAAAC,CAAU,IAA0B,CACvE,MAAMC,EAAY,IAAI,YAKtB,OAAAA,EAAU,KAA0B,gBAAc,GAAG,EAAE,gBAAgBF,CAAG,EAC1EE,EACG,KAAsB,gBAAc,SAAS,EAC7C,gBAAgBD,CAAS,EAE5BC,EAAU,QAAK,0BAAuB,KAAG,yBAAsB,CAAC,EAEzDA,CACT",
4
+ "sourcesContent": ["import {\n type DeviceManagementKit,\n type DeviceSessionId,\n} from \"@ledgerhq/device-management-kit\";\nimport { Container } from \"inversify\";\n\nimport { appBinderModuleFactory } from \"./app-binder/di/appBinderModule\";\nimport { useCasesModuleFactory } from \"./use-cases/di/useCasesModule\";\nimport { externalTypes } from \"./externalTypes\";\n\nexport type MakeContainerProps = {\n dmk: DeviceManagementKit;\n sessionId: DeviceSessionId;\n};\nexport const makeContainer = ({ dmk, sessionId }: MakeContainerProps) => {\n const container = new Container();\n\n container.bind<DeviceManagementKit>(externalTypes.Dmk).toConstantValue(dmk);\n container\n .bind<DeviceSessionId>(externalTypes.SessionId)\n .toConstantValue(sessionId);\n\n container.loadSync(appBinderModuleFactory(), useCasesModuleFactory());\n\n return container;\n};\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,mBAAAE,IAAA,eAAAC,EAAAH,GAIA,IAAAI,EAA0B,qBAE1BC,EAAuC,2CACvCC,EAAsC,yCACtCC,EAA8B,2BAMvB,MAAML,EAAgB,CAAC,CAAE,IAAAM,EAAK,UAAAC,CAAU,IAA0B,CACvE,MAAMC,EAAY,IAAI,YAEtB,OAAAA,EAAU,KAA0B,gBAAc,GAAG,EAAE,gBAAgBF,CAAG,EAC1EE,EACG,KAAsB,gBAAc,SAAS,EAC7C,gBAAgBD,CAAS,EAE5BC,EAAU,YAAS,0BAAuB,KAAG,yBAAsB,CAAC,EAE7DA,CACT",
6
6
  "names": ["di_exports", "__export", "makeContainer", "__toCommonJS", "import_inversify", "import_appBinderModule", "import_useCasesModule", "import_externalTypes", "dmk", "sessionId", "container"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var o=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var B=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var u=(p,r)=>{for(var t in r)o(p,t,{get:r[t],enumerable:!0})},y=(p,r,t,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let e of B(r))!l.call(p,e)&&e!==t&&o(p,e,{get:()=>r[e],enumerable:!(i=a(r,e))||i.enumerable});return p};var D=p=>y(o({},"__esModule",{value:!0}),p),s=(p,r,t,i)=>{for(var e=i>1?void 0:i?a(r,t):r,d=p.length-1,m;d>=0;d--)(m=p[d])&&(e=(i?m(r,t,e):m(e))||e);return i&&e&&o(r,t,e),e},A=(p,r)=>(t,i)=>r(t,i,p);var O={};u(O,{GetAddressUseCase:()=>n});module.exports=D(O);var c=require("inversify"),f=require("../../app-binder/di/appBinderTypes");let n=class{constructor(r){this.appBinder=r}execute(r,t){return this.appBinder.getAddress({derivationPath:r,checkOnDevice:t?.checkOnDevice??!1})}};n=s([(0,c.injectable)(),A(0,(0,c.inject)(f.appBinderTypes.AppBinder))],n);0&&(module.exports={GetAddressUseCase});
1
+ "use strict";var o=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var B=Object.prototype.hasOwnProperty;var O=(e,p)=>{for(var r in p)o(e,r,{get:p[r],enumerable:!0})},u=(e,p,r,n)=>{if(p&&typeof p=="object"||typeof p=="function")for(let i of l(p))!B.call(e,i)&&i!==r&&o(e,i,{get:()=>p[i],enumerable:!(n=a(p,i))||n.enumerable});return e};var y=e=>u(o({},"__esModule",{value:!0}),e),s=(e,p,r,n)=>{for(var i=n>1?void 0:n?a(p,r):p,d=e.length-1,m;d>=0;d--)(m=e[d])&&(i=(n?m(p,r,i):m(i))||i);return n&&i&&o(p,r,i),i},A=(e,p)=>(r,n)=>p(r,n,e);var k={};O(k,{GetAddressUseCase:()=>t});module.exports=y(k);var c=require("inversify"),f=require("../../app-binder/di/appBinderTypes");let t=class{constructor(p){this.appBinder=p}execute(p,r){return this.appBinder.getAddress({derivationPath:p,checkOnDevice:r?.checkOnDevice??!1,skipOpenApp:r?.skipOpenApp??!1})}};t=s([(0,c.injectable)(),A(0,(0,c.inject)(f.appBinderTypes.AppBinder))],t);0&&(module.exports={GetAddressUseCase});
2
2
  //# sourceMappingURL=GetAddressUseCase.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/use-cases/address/GetAddressUseCase.ts"],
4
- "sourcesContent": ["import { inject, injectable } from \"inversify\";\n\nimport { type GetAddressDAReturnType } from \"@api/app-binder/GetAddressDeviceActionTypes\";\nimport { type AddressOptions } from \"@api/model/AddressOption\";\nimport { appBinderTypes } from \"@internal/app-binder/di/appBinderTypes\";\nimport { SolanaAppBinder } from \"@internal/app-binder/SolanaAppBinder\";\n\n@injectable()\nexport class GetAddressUseCase {\n constructor(\n @inject(appBinderTypes.AppBinder) private appBinder: SolanaAppBinder,\n ) {}\n\n execute(\n derivationPath: string,\n options?: AddressOptions,\n ): GetAddressDAReturnType {\n return this.appBinder.getAddress({\n derivationPath,\n checkOnDevice: options?.checkOnDevice ?? false,\n });\n }\n}\n"],
5
- "mappings": "okBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,uBAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAmC,qBAInCC,EAA+B,kDAIxB,IAAMC,EAAN,KAAwB,CAC7B,YAC4CC,EAC1C,CAD0C,eAAAA,CACzC,CAEH,QACEC,EACAC,EACwB,CACxB,OAAO,KAAK,UAAU,WAAW,CAC/B,eAAAD,EACA,cAAeC,GAAS,eAAiB,EAC3C,CAAC,CACH,CACF,EAdaH,EAANI,EAAA,IADN,cAAW,EAGPC,EAAA,eAAO,iBAAe,SAAS,IAFvBL",
4
+ "sourcesContent": ["import { inject, injectable } from \"inversify\";\n\nimport { type GetAddressDAReturnType } from \"@api/app-binder/GetAddressDeviceActionTypes\";\nimport { type AddressOptions } from \"@api/model/AddressOption\";\nimport { appBinderTypes } from \"@internal/app-binder/di/appBinderTypes\";\nimport { SolanaAppBinder } from \"@internal/app-binder/SolanaAppBinder\";\n\n@injectable()\nexport class GetAddressUseCase {\n constructor(\n @inject(appBinderTypes.AppBinder) private appBinder: SolanaAppBinder,\n ) {}\n\n execute(\n derivationPath: string,\n options?: AddressOptions,\n ): GetAddressDAReturnType {\n return this.appBinder.getAddress({\n derivationPath,\n checkOnDevice: options?.checkOnDevice ?? false,\n skipOpenApp: options?.skipOpenApp ?? false,\n });\n }\n}\n"],
5
+ "mappings": "okBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,uBAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAmC,qBAInCC,EAA+B,kDAIxB,IAAMC,EAAN,KAAwB,CAC7B,YAC4CC,EAC1C,CAD0C,eAAAA,CACzC,CAEH,QACEC,EACAC,EACwB,CACxB,OAAO,KAAK,UAAU,WAAW,CAC/B,eAAAD,EACA,cAAeC,GAAS,eAAiB,GACzC,YAAaA,GAAS,aAAe,EACvC,CAAC,CACH,CACF,EAfaH,EAANI,EAAA,IADN,cAAW,EAGPC,EAAA,eAAO,iBAAe,SAAS,IAFvBL",
6
6
  "names": ["GetAddressUseCase_exports", "__export", "GetAddressUseCase", "__toCommonJS", "import_inversify", "import_appBinderTypes", "GetAddressUseCase", "appBinder", "derivationPath", "options", "__decorateClass", "__decorateParam"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var o=require("./GetAddressUseCase");describe("GetAddressUseCase",()=>{const e="44'/501'",s="some-address",t=jest.fn().mockReturnValue(s),c={getAddress:t};let d;beforeEach(()=>{jest.clearAllMocks(),d=new o.GetAddressUseCase(c)}),it("should return the address from the appBinder's getAddress method",()=>{const a=d.execute(e,{checkOnDevice:!0});expect(a).toEqual(s),expect(t).toHaveBeenCalledWith({derivationPath:e,checkOnDevice:!0})}),it("should return the address from the appBinder's getAddress method with default options",()=>{const r=d.execute(e);expect(r).toEqual(s),expect(t).toHaveBeenCalledWith({derivationPath:e,checkOnDevice:!1})})});
1
+ "use strict";var r=require("./GetAddressUseCase");describe("GetAddressUseCase",()=>{const e="44'/501'",s="some-address",t=vi.fn().mockReturnValue(s),o={getAddress:t};let d;beforeEach(()=>{vi.clearAllMocks(),d=new r.GetAddressUseCase(o)}),it("should return the address from the appBinder's getAddress method",()=>{const p=d.execute(e,{checkOnDevice:!0,skipOpenApp:!0});expect(p).toEqual(s),expect(t).toHaveBeenCalledWith({derivationPath:e,checkOnDevice:!0,skipOpenApp:!0})}),it("should return the address from the appBinder's getAddress method with default options",()=>{const n=d.execute(e);expect(n).toEqual(s),expect(t).toHaveBeenCalledWith({derivationPath:e,checkOnDevice:!1,skipOpenApp:!1})})});
2
2
  //# sourceMappingURL=GetAddressUseCase.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/use-cases/address/GetAddressUseCase.test.ts"],
4
- "sourcesContent": ["import { type SolanaAppBinder } from \"@internal/app-binder/SolanaAppBinder\";\n\nimport { GetAddressUseCase } from \"./GetAddressUseCase\";\n\ndescribe(\"GetAddressUseCase\", () => {\n const derivationPath = \"44'/501'\";\n const address = \"some-address\";\n const getAddressMock = jest.fn().mockReturnValue(address);\n const appBinderMock = {\n getAddress: getAddressMock,\n } as unknown as SolanaAppBinder;\n let useCase: GetAddressUseCase;\n\n beforeEach(() => {\n jest.clearAllMocks();\n useCase = new GetAddressUseCase(appBinderMock);\n });\n\n it(\"should return the address from the appBinder's getAddress method\", () => {\n // GIVEN\n const checkOnDevice = true;\n\n // WHEN\n const result = useCase.execute(derivationPath, { checkOnDevice });\n\n // THEN\n expect(result).toEqual(address);\n expect(getAddressMock).toHaveBeenCalledWith({\n derivationPath,\n checkOnDevice,\n });\n });\n\n it(\"should return the address from the appBinder's getAddress method with default options\", () => {\n // WHEN\n const result = useCase.execute(derivationPath);\n\n // THEN\n expect(result).toEqual(address);\n expect(getAddressMock).toHaveBeenCalledWith({\n derivationPath,\n checkOnDevice: false,\n });\n });\n});\n"],
5
- "mappings": "aAEA,IAAAA,EAAkC,+BAElC,SAAS,oBAAqB,IAAM,CAClC,MAAMC,EAAiB,WACjBC,EAAU,eACVC,EAAiB,KAAK,GAAG,EAAE,gBAAgBD,CAAO,EAClDE,EAAgB,CACpB,WAAYD,CACd,EACA,IAAIE,EAEJ,WAAW,IAAM,CACf,KAAK,cAAc,EACnBA,EAAU,IAAI,oBAAkBD,CAAa,CAC/C,CAAC,EAED,GAAG,mEAAoE,IAAM,CAK3E,MAAME,EAASD,EAAQ,QAAQJ,EAAgB,CAAE,gBAAc,CAAC,EAGhE,OAAOK,CAAM,EAAE,QAAQJ,CAAO,EAC9B,OAAOC,CAAc,EAAE,qBAAqB,CAC1C,eAAAF,EACA,gBACF,CAAC,CACH,CAAC,EAED,GAAG,wFAAyF,IAAM,CAEhG,MAAMK,EAASD,EAAQ,QAAQJ,CAAc,EAG7C,OAAOK,CAAM,EAAE,QAAQJ,CAAO,EAC9B,OAAOC,CAAc,EAAE,qBAAqB,CAC1C,eAAAF,EACA,cAAe,EACjB,CAAC,CACH,CAAC,CACH,CAAC",
4
+ "sourcesContent": ["import { type SolanaAppBinder } from \"@internal/app-binder/SolanaAppBinder\";\n\nimport { GetAddressUseCase } from \"./GetAddressUseCase\";\n\ndescribe(\"GetAddressUseCase\", () => {\n const derivationPath = \"44'/501'\";\n const address = \"some-address\";\n const getAddressMock = vi.fn().mockReturnValue(address);\n const appBinderMock = {\n getAddress: getAddressMock,\n } as unknown as SolanaAppBinder;\n let useCase: GetAddressUseCase;\n\n beforeEach(() => {\n vi.clearAllMocks();\n useCase = new GetAddressUseCase(appBinderMock);\n });\n\n it(\"should return the address from the appBinder's getAddress method\", () => {\n // GIVEN\n const checkOnDevice = true;\n const skipOpenApp = true;\n\n // WHEN\n const result = useCase.execute(derivationPath, {\n checkOnDevice,\n skipOpenApp,\n });\n\n // THEN\n expect(result).toEqual(address);\n expect(getAddressMock).toHaveBeenCalledWith({\n derivationPath,\n checkOnDevice,\n skipOpenApp,\n });\n });\n\n it(\"should return the address from the appBinder's getAddress method with default options\", () => {\n // WHEN\n const result = useCase.execute(derivationPath);\n\n // THEN\n expect(result).toEqual(address);\n expect(getAddressMock).toHaveBeenCalledWith({\n derivationPath,\n checkOnDevice: false,\n skipOpenApp: false,\n });\n });\n});\n"],
5
+ "mappings": "aAEA,IAAAA,EAAkC,+BAElC,SAAS,oBAAqB,IAAM,CAClC,MAAMC,EAAiB,WACjBC,EAAU,eACVC,EAAiB,GAAG,GAAG,EAAE,gBAAgBD,CAAO,EAChDE,EAAgB,CACpB,WAAYD,CACd,EACA,IAAIE,EAEJ,WAAW,IAAM,CACf,GAAG,cAAc,EACjBA,EAAU,IAAI,oBAAkBD,CAAa,CAC/C,CAAC,EAED,GAAG,mEAAoE,IAAM,CAM3E,MAAME,EAASD,EAAQ,QAAQJ,EAAgB,CAC7C,iBACA,cACF,CAAC,EAGD,OAAOK,CAAM,EAAE,QAAQJ,CAAO,EAC9B,OAAOC,CAAc,EAAE,qBAAqB,CAC1C,eAAAF,EACA,iBACA,cACF,CAAC,CACH,CAAC,EAED,GAAG,wFAAyF,IAAM,CAEhG,MAAMK,EAASD,EAAQ,QAAQJ,CAAc,EAG7C,OAAOK,CAAM,EAAE,QAAQJ,CAAO,EAC9B,OAAOC,CAAc,EAAE,qBAAqB,CAC1C,eAAAF,EACA,cAAe,GACf,YAAa,EACf,CAAC,CACH,CAAC,CACH,CAAC",
6
6
  "names": ["import_GetAddressUseCase", "derivationPath", "address", "getAddressMock", "appBinderMock", "useCase", "result"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var t=require("../../../api/model/PublicKeyDisplayMode"),i=require("./GetAppConfigurationUseCase");describe("GetAppConfigurationUseCase",()=>{const e=jest.fn(),o={blindSigningEnabled:!1,pubKeyDisplayMode:t.PublicKeyDisplayMode.LONG,version:"1.0.0"},p={getAppConfiguration:e};let n;beforeEach(()=>{jest.clearAllMocks(),n=new i.GetAppConfigurationUseCase(p)}),it("should return the config from the appBinder's getAppConfiguration method",()=>{e.mockReturnValue(o);const a=n.execute();expect(e).toHaveBeenCalledWith(),expect(a).toEqual(o)})});
1
+ "use strict";var i=require("../../../api/model/PublicKeyDisplayMode"),t=require("./GetAppConfigurationUseCase");describe("GetAppConfigurationUseCase",()=>{const e=vi.fn(),o={blindSigningEnabled:!1,pubKeyDisplayMode:i.PublicKeyDisplayMode.LONG,version:"1.0.0"},p={getAppConfiguration:e};let n;beforeEach(()=>{vi.clearAllMocks(),n=new t.GetAppConfigurationUseCase(p)}),it("should return the config from the appBinder's getAppConfiguration method",()=>{e.mockReturnValue(o);const a=n.execute();expect(e).toHaveBeenCalledWith(),expect(a).toEqual(o)})});
2
2
  //# sourceMappingURL=GetAppConfiguration.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/use-cases/app-configuration/GetAppConfiguration.test.ts"],
4
- "sourcesContent": ["import { type AppConfiguration } from \"@api/model/AppConfiguration\";\nimport { PublicKeyDisplayMode } from \"@api/model/PublicKeyDisplayMode\";\nimport { type SolanaAppBinder } from \"@internal/app-binder/SolanaAppBinder\";\n\nimport { GetAppConfigurationUseCase } from \"./GetAppConfigurationUseCase\";\n\ndescribe(\"GetAppConfigurationUseCase\", () => {\n const getAppConfigurationMock = jest.fn();\n const config: AppConfiguration = {\n blindSigningEnabled: false,\n pubKeyDisplayMode: PublicKeyDisplayMode.LONG,\n version: \"1.0.0\",\n };\n const appBinderMock = {\n getAppConfiguration: getAppConfigurationMock,\n } as unknown as SolanaAppBinder;\n let useCase: GetAppConfigurationUseCase;\n\n beforeEach(() => {\n jest.clearAllMocks();\n useCase = new GetAppConfigurationUseCase(appBinderMock);\n });\n\n it(\"should return the config from the appBinder's getAppConfiguration method\", () => {\n // GIVEN\n getAppConfigurationMock.mockReturnValue(config);\n\n // WHEN\n const result = useCase.execute();\n\n // THEN\n expect(getAppConfigurationMock).toHaveBeenCalledWith();\n expect(result).toEqual(config);\n });\n});\n"],
5
- "mappings": "aACA,IAAAA,EAAqC,2CAGrCC,EAA2C,wCAE3C,SAAS,6BAA8B,IAAM,CAC3C,MAAMC,EAA0B,KAAK,GAAG,EAClCC,EAA2B,CAC/B,oBAAqB,GACrB,kBAAmB,uBAAqB,KACxC,QAAS,OACX,EACMC,EAAgB,CACpB,oBAAqBF,CACvB,EACA,IAAIG,EAEJ,WAAW,IAAM,CACf,KAAK,cAAc,EACnBA,EAAU,IAAI,6BAA2BD,CAAa,CACxD,CAAC,EAED,GAAG,2EAA4E,IAAM,CAEnFF,EAAwB,gBAAgBC,CAAM,EAG9C,MAAMG,EAASD,EAAQ,QAAQ,EAG/B,OAAOH,CAAuB,EAAE,qBAAqB,EACrD,OAAOI,CAAM,EAAE,QAAQH,CAAM,CAC/B,CAAC,CACH,CAAC",
4
+ "sourcesContent": ["import { type AppConfiguration } from \"@api/model/AppConfiguration\";\nimport { PublicKeyDisplayMode } from \"@api/model/PublicKeyDisplayMode\";\nimport { type SolanaAppBinder } from \"@internal/app-binder/SolanaAppBinder\";\n\nimport { GetAppConfigurationUseCase } from \"./GetAppConfigurationUseCase\";\n\ndescribe(\"GetAppConfigurationUseCase\", () => {\n const getAppConfigurationMock = vi.fn();\n const config: AppConfiguration = {\n blindSigningEnabled: false,\n pubKeyDisplayMode: PublicKeyDisplayMode.LONG,\n version: \"1.0.0\",\n };\n const appBinderMock = {\n getAppConfiguration: getAppConfigurationMock,\n } as unknown as SolanaAppBinder;\n let useCase: GetAppConfigurationUseCase;\n\n beforeEach(() => {\n vi.clearAllMocks();\n useCase = new GetAppConfigurationUseCase(appBinderMock);\n });\n\n it(\"should return the config from the appBinder's getAppConfiguration method\", () => {\n // GIVEN\n getAppConfigurationMock.mockReturnValue(config);\n\n // WHEN\n const result = useCase.execute();\n\n // THEN\n expect(getAppConfigurationMock).toHaveBeenCalledWith();\n expect(result).toEqual(config);\n });\n});\n"],
5
+ "mappings": "aACA,IAAAA,EAAqC,2CAGrCC,EAA2C,wCAE3C,SAAS,6BAA8B,IAAM,CAC3C,MAAMC,EAA0B,GAAG,GAAG,EAChCC,EAA2B,CAC/B,oBAAqB,GACrB,kBAAmB,uBAAqB,KACxC,QAAS,OACX,EACMC,EAAgB,CACpB,oBAAqBF,CACvB,EACA,IAAIG,EAEJ,WAAW,IAAM,CACf,GAAG,cAAc,EACjBA,EAAU,IAAI,6BAA2BD,CAAa,CACxD,CAAC,EAED,GAAG,2EAA4E,IAAM,CAEnFF,EAAwB,gBAAgBC,CAAM,EAG9C,MAAMG,EAASD,EAAQ,QAAQ,EAG/B,OAAOH,CAAuB,EAAE,qBAAqB,EACrD,OAAOI,CAAM,EAAE,QAAQH,CAAM,CAC/B,CAAC,CACH,CAAC",
6
6
  "names": ["import_PublicKeyDisplayMode", "import_GetAppConfigurationUseCase", "getAppConfigurationMock", "config", "appBinderMock", "useCase", "result"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var i=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var U=Object.prototype.hasOwnProperty;var c=(e,s)=>{for(var t in s)i(e,t,{get:s[t],enumerable:!0})},d=(e,s,t,a)=>{if(s&&typeof s=="object"||typeof s=="function")for(let o of g(s))!U.call(e,o)&&o!==t&&i(e,o,{get:()=>s[o],enumerable:!(a=f(s,o))||a.enumerable});return e};var A=e=>d(i({},"__esModule",{value:!0}),e);var G={};c(G,{useCasesModuleFactory:()=>_});module.exports=A(G);var r=require("inversify"),C=require("../../use-cases/address/GetAddressUseCase"),m=require("../../use-cases/app-configuration/GetAppConfigurationUseCase"),n=require("../../use-cases/di/useCasesTypes"),p=require("../../use-cases/message/SignMessageUseCase"),u=require("../../use-cases/transaction/SignTransactionUseCase");const _=()=>new r.ContainerModule((e,s,t,a,o,M,S)=>{e(n.useCasesTypes.GetAddressUseCase).to(C.GetAddressUseCase),e(n.useCasesTypes.GetAppConfigurationUseCase).to(m.GetAppConfigurationUseCase),e(n.useCasesTypes.SignTransactionUseCase).to(u.SignTransactionUseCase),e(n.useCasesTypes.SignMessageUseCase).to(p.SignMessageUseCase)});0&&(module.exports={useCasesModuleFactory});
1
+ "use strict";var a=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var U=Object.getOwnPropertyNames;var u=Object.prototype.hasOwnProperty;var c=(e,s)=>{for(var r in s)a(e,r,{get:s[r],enumerable:!0})},A=(e,s,r,i)=>{if(s&&typeof s=="object"||typeof s=="function")for(let o of U(s))!u.call(e,o)&&o!==r&&a(e,o,{get:()=>s[o],enumerable:!(i=g(s,o))||i.enumerable});return e};var G=e=>A(a({},"__esModule",{value:!0}),e);var S={};c(S,{useCasesModuleFactory:()=>M});module.exports=G(S);var n=require("inversify"),C=require("../../use-cases/address/GetAddressUseCase"),m=require("../../use-cases/app-configuration/GetAppConfigurationUseCase"),t=require("../../use-cases/di/useCasesTypes"),p=require("../../use-cases/message/SignMessageUseCase"),f=require("../../use-cases/transaction/SignTransactionUseCase");const M=()=>new n.ContainerModule(({bind:e})=>{e(t.useCasesTypes.GetAddressUseCase).to(C.GetAddressUseCase),e(t.useCasesTypes.GetAppConfigurationUseCase).to(m.GetAppConfigurationUseCase),e(t.useCasesTypes.SignTransactionUseCase).to(f.SignTransactionUseCase),e(t.useCasesTypes.SignMessageUseCase).to(p.SignMessageUseCase)});0&&(module.exports={useCasesModuleFactory});
2
2
  //# sourceMappingURL=useCasesModule.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/use-cases/di/useCasesModule.ts"],
4
- "sourcesContent": ["import { ContainerModule } from \"inversify\";\n\nimport { GetAddressUseCase } from \"@internal/use-cases/address/GetAddressUseCase\";\nimport { GetAppConfigurationUseCase } from \"@internal/use-cases/app-configuration/GetAppConfigurationUseCase\";\nimport { useCasesTypes } from \"@internal/use-cases/di/useCasesTypes\";\nimport { SignMessageUseCase } from \"@internal/use-cases/message/SignMessageUseCase\";\nimport { SignTransactionUseCase } from \"@internal/use-cases/transaction/SignTransactionUseCase\";\n\nexport const useCasesModuleFactory = () =>\n new ContainerModule(\n (\n bind,\n _unbind,\n _isBound,\n _rebind,\n _unbindAsync,\n _onActivation,\n _onDeactivation,\n ) => {\n bind(useCasesTypes.GetAddressUseCase).to(GetAddressUseCase);\n bind(useCasesTypes.GetAppConfigurationUseCase).to(\n GetAppConfigurationUseCase,\n );\n bind(useCasesTypes.SignTransactionUseCase).to(SignTransactionUseCase);\n bind(useCasesTypes.SignMessageUseCase).to(SignMessageUseCase);\n },\n );\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,2BAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAgC,qBAEhCC,EAAkC,yDAClCC,EAA2C,4EAC3CC,EAA8B,gDAC9BC,EAAmC,0DACnCC,EAAuC,kEAEhC,MAAMP,EAAwB,IACnC,IAAI,kBACF,CACEQ,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,IACG,CACHN,EAAK,gBAAc,iBAAiB,EAAE,GAAG,mBAAiB,EAC1DA,EAAK,gBAAc,0BAA0B,EAAE,GAC7C,4BACF,EACAA,EAAK,gBAAc,sBAAsB,EAAE,GAAG,wBAAsB,EACpEA,EAAK,gBAAc,kBAAkB,EAAE,GAAG,oBAAkB,CAC9D,CACF",
6
- "names": ["useCasesModule_exports", "__export", "useCasesModuleFactory", "__toCommonJS", "import_inversify", "import_GetAddressUseCase", "import_GetAppConfigurationUseCase", "import_useCasesTypes", "import_SignMessageUseCase", "import_SignTransactionUseCase", "bind", "_unbind", "_isBound", "_rebind", "_unbindAsync", "_onActivation", "_onDeactivation"]
4
+ "sourcesContent": ["import { ContainerModule } from \"inversify\";\n\nimport { GetAddressUseCase } from \"@internal/use-cases/address/GetAddressUseCase\";\nimport { GetAppConfigurationUseCase } from \"@internal/use-cases/app-configuration/GetAppConfigurationUseCase\";\nimport { useCasesTypes } from \"@internal/use-cases/di/useCasesTypes\";\nimport { SignMessageUseCase } from \"@internal/use-cases/message/SignMessageUseCase\";\nimport { SignTransactionUseCase } from \"@internal/use-cases/transaction/SignTransactionUseCase\";\n\nexport const useCasesModuleFactory = () =>\n new ContainerModule(({ bind }) => {\n bind(useCasesTypes.GetAddressUseCase).to(GetAddressUseCase);\n bind(useCasesTypes.GetAppConfigurationUseCase).to(\n GetAppConfigurationUseCase,\n );\n bind(useCasesTypes.SignTransactionUseCase).to(SignTransactionUseCase);\n bind(useCasesTypes.SignMessageUseCase).to(SignMessageUseCase);\n });\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,2BAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAgC,qBAEhCC,EAAkC,yDAClCC,EAA2C,4EAC3CC,EAA8B,gDAC9BC,EAAmC,0DACnCC,EAAuC,kEAEhC,MAAMP,EAAwB,IACnC,IAAI,kBAAgB,CAAC,CAAE,KAAAQ,CAAK,IAAM,CAChCA,EAAK,gBAAc,iBAAiB,EAAE,GAAG,mBAAiB,EAC1DA,EAAK,gBAAc,0BAA0B,EAAE,GAC7C,4BACF,EACAA,EAAK,gBAAc,sBAAsB,EAAE,GAAG,wBAAsB,EACpEA,EAAK,gBAAc,kBAAkB,EAAE,GAAG,oBAAkB,CAC9D,CAAC",
6
+ "names": ["useCasesModule_exports", "__export", "useCasesModuleFactory", "__toCommonJS", "import_inversify", "import_GetAddressUseCase", "import_GetAppConfigurationUseCase", "import_useCasesTypes", "import_SignMessageUseCase", "import_SignTransactionUseCase", "bind"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var o=require("inversify"),i=require("./useCasesModule"),s=require("./useCasesTypes");describe("useCasesModuleFactory",()=>{describe("Default",()=>{let e,t;beforeEach(()=>{t=(0,i.useCasesModuleFactory)(),e=new o.Container,e.load(t)}),it("should return the address module",()=>{expect(t).toBeDefined()}),it("should bind GetAddressUseCase",()=>{expect(e.isBound(s.useCasesTypes.GetAddressUseCase)).toBeTruthy()}),it("should bind GetAppConfigurationUseCase",()=>{expect(e.isBound(s.useCasesTypes.GetAppConfigurationUseCase)).toBeTruthy()}),it("should bind SignTransactionUseCase",()=>{expect(e.isBound(s.useCasesTypes.SignTransactionUseCase)).toBeTruthy()}),it("should bind SignMessageUseCase",()=>{expect(e.isBound(s.useCasesTypes.SignMessageUseCase)).toBeTruthy()})})});
1
+ "use strict";var o=require("inversify"),i=require("./useCasesModule"),s=require("./useCasesTypes");describe("useCasesModuleFactory",()=>{describe("Default",()=>{let e,t;beforeEach(()=>{t=(0,i.useCasesModuleFactory)(),e=new o.Container,e.loadSync(t)}),it("should return the address module",()=>{expect(t).toBeDefined()}),it("should bind GetAddressUseCase",()=>{expect(e.isBound(s.useCasesTypes.GetAddressUseCase)).toBeTruthy()}),it("should bind GetAppConfigurationUseCase",()=>{expect(e.isBound(s.useCasesTypes.GetAppConfigurationUseCase)).toBeTruthy()}),it("should bind SignTransactionUseCase",()=>{expect(e.isBound(s.useCasesTypes.SignTransactionUseCase)).toBeTruthy()}),it("should bind SignMessageUseCase",()=>{expect(e.isBound(s.useCasesTypes.SignMessageUseCase)).toBeTruthy()})})});
2
2
  //# sourceMappingURL=useCasesModule.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/use-cases/di/useCasesModule.test.ts"],
4
- "sourcesContent": ["import { Container } from \"inversify\";\n\nimport { useCasesModuleFactory } from \"./useCasesModule\";\nimport { useCasesTypes } from \"./useCasesTypes\";\n\ndescribe(\"useCasesModuleFactory\", () => {\n describe(\"Default\", () => {\n let container: Container;\n let mod: ReturnType<typeof useCasesModuleFactory>;\n beforeEach(() => {\n mod = useCasesModuleFactory();\n container = new Container();\n container.load(mod);\n });\n\n it(\"should return the address module\", () => {\n expect(mod).toBeDefined();\n });\n\n it(\"should bind GetAddressUseCase\", () => {\n expect(container.isBound(useCasesTypes.GetAddressUseCase)).toBeTruthy();\n });\n\n it(\"should bind GetAppConfigurationUseCase\", () => {\n expect(\n container.isBound(useCasesTypes.GetAppConfigurationUseCase),\n ).toBeTruthy();\n });\n\n it(\"should bind SignTransactionUseCase\", () => {\n expect(\n container.isBound(useCasesTypes.SignTransactionUseCase),\n ).toBeTruthy();\n });\n\n it(\"should bind SignMessageUseCase\", () => {\n expect(container.isBound(useCasesTypes.SignMessageUseCase)).toBeTruthy();\n });\n });\n});\n"],
5
- "mappings": "aAAA,IAAAA,EAA0B,qBAE1BC,EAAsC,4BACtCC,EAA8B,2BAE9B,SAAS,wBAAyB,IAAM,CACtC,SAAS,UAAW,IAAM,CACxB,IAAIC,EACAC,EACJ,WAAW,IAAM,CACfA,KAAM,yBAAsB,EAC5BD,EAAY,IAAI,YAChBA,EAAU,KAAKC,CAAG,CACpB,CAAC,EAED,GAAG,mCAAoC,IAAM,CAC3C,OAAOA,CAAG,EAAE,YAAY,CAC1B,CAAC,EAED,GAAG,gCAAiC,IAAM,CACxC,OAAOD,EAAU,QAAQ,gBAAc,iBAAiB,CAAC,EAAE,WAAW,CACxE,CAAC,EAED,GAAG,yCAA0C,IAAM,CACjD,OACEA,EAAU,QAAQ,gBAAc,0BAA0B,CAC5D,EAAE,WAAW,CACf,CAAC,EAED,GAAG,qCAAsC,IAAM,CAC7C,OACEA,EAAU,QAAQ,gBAAc,sBAAsB,CACxD,EAAE,WAAW,CACf,CAAC,EAED,GAAG,iCAAkC,IAAM,CACzC,OAAOA,EAAU,QAAQ,gBAAc,kBAAkB,CAAC,EAAE,WAAW,CACzE,CAAC,CACH,CAAC,CACH,CAAC",
4
+ "sourcesContent": ["import { Container } from \"inversify\";\n\nimport { useCasesModuleFactory } from \"./useCasesModule\";\nimport { useCasesTypes } from \"./useCasesTypes\";\n\ndescribe(\"useCasesModuleFactory\", () => {\n describe(\"Default\", () => {\n let container: Container;\n let mod: ReturnType<typeof useCasesModuleFactory>;\n beforeEach(() => {\n mod = useCasesModuleFactory();\n container = new Container();\n container.loadSync(mod);\n });\n\n it(\"should return the address module\", () => {\n expect(mod).toBeDefined();\n });\n\n it(\"should bind GetAddressUseCase\", () => {\n expect(container.isBound(useCasesTypes.GetAddressUseCase)).toBeTruthy();\n });\n\n it(\"should bind GetAppConfigurationUseCase\", () => {\n expect(\n container.isBound(useCasesTypes.GetAppConfigurationUseCase),\n ).toBeTruthy();\n });\n\n it(\"should bind SignTransactionUseCase\", () => {\n expect(\n container.isBound(useCasesTypes.SignTransactionUseCase),\n ).toBeTruthy();\n });\n\n it(\"should bind SignMessageUseCase\", () => {\n expect(container.isBound(useCasesTypes.SignMessageUseCase)).toBeTruthy();\n });\n });\n});\n"],
5
+ "mappings": "aAAA,IAAAA,EAA0B,qBAE1BC,EAAsC,4BACtCC,EAA8B,2BAE9B,SAAS,wBAAyB,IAAM,CACtC,SAAS,UAAW,IAAM,CACxB,IAAIC,EACAC,EACJ,WAAW,IAAM,CACfA,KAAM,yBAAsB,EAC5BD,EAAY,IAAI,YAChBA,EAAU,SAASC,CAAG,CACxB,CAAC,EAED,GAAG,mCAAoC,IAAM,CAC3C,OAAOA,CAAG,EAAE,YAAY,CAC1B,CAAC,EAED,GAAG,gCAAiC,IAAM,CACxC,OAAOD,EAAU,QAAQ,gBAAc,iBAAiB,CAAC,EAAE,WAAW,CACxE,CAAC,EAED,GAAG,yCAA0C,IAAM,CACjD,OACEA,EAAU,QAAQ,gBAAc,0BAA0B,CAC5D,EAAE,WAAW,CACf,CAAC,EAED,GAAG,qCAAsC,IAAM,CAC7C,OACEA,EAAU,QAAQ,gBAAc,sBAAsB,CACxD,EAAE,WAAW,CACf,CAAC,EAED,GAAG,iCAAkC,IAAM,CACzC,OAAOA,EAAU,QAAQ,gBAAc,kBAAkB,CAAC,EAAE,WAAW,CACzE,CAAC,CACH,CAAC,CACH,CAAC",
6
6
  "names": ["import_inversify", "import_useCasesModule", "import_useCasesTypes", "container", "mod"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var o=Object.defineProperty;var B=Object.getOwnPropertyDescriptor;var u=Object.getOwnPropertyNames;var f=Object.prototype.hasOwnProperty;var y=(r,p)=>{for(var n in p)o(r,n,{get:p[n],enumerable:!0})},s=(r,p,n,t)=>{if(p&&typeof p=="object"||typeof p=="function")for(let i of u(p))!f.call(r,i)&&i!==n&&o(r,i,{get:()=>p[i],enumerable:!(t=B(p,i))||t.enumerable});return r};var T=r=>s(o({},"__esModule",{value:!0}),r),c=(r,p,n,t)=>{for(var i=t>1?void 0:t?B(p,n):p,d=r.length-1,m;d>=0;d--)(m=r[d])&&(i=(t?m(p,n,i):m(i))||i);return t&&i&&o(p,n,i),i},A=(r,p)=>(n,t)=>p(n,t,r);var _={};y(_,{SignMessageUseCase:()=>e});module.exports=T(_);var a=require("inversify"),l=require("../../app-binder/di/appBinderTypes");let e=class{_appBinder;constructor(p){this._appBinder=p}execute(p,n){return this._appBinder.signMessage({derivationPath:p,message:n})}};e=c([(0,a.injectable)(),A(0,(0,a.inject)(l.appBinderTypes.AppBinder))],e);0&&(module.exports={SignMessageUseCase});
1
+ "use strict";var o=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var f=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var u=(r,p)=>{for(var i in p)o(r,i,{get:p[i],enumerable:!0})},y=(r,p,i,n)=>{if(p&&typeof p=="object"||typeof p=="function")for(let e of f(p))!l.call(r,e)&&e!==i&&o(r,e,{get:()=>p[e],enumerable:!(n=d(p,e))||n.enumerable});return r};var g=r=>y(o({},"__esModule",{value:!0}),r),A=(r,p,i,n)=>{for(var e=n>1?void 0:n?d(p,i):p,s=r.length-1,m;s>=0;s--)(m=r[s])&&(e=(n?m(p,i,e):m(e))||e);return n&&e&&o(p,i,e),e},B=(r,p)=>(i,n)=>p(i,n,r);var O={};u(O,{SignMessageUseCase:()=>t});module.exports=g(O);var a=require("inversify"),c=require("../../app-binder/di/appBinderTypes");let t=class{_appBinder;constructor(p){this._appBinder=p}execute(p,i,n){return this._appBinder.signMessage({derivationPath:p,message:i,skipOpenApp:n?.skipOpenApp??!1})}};t=A([(0,a.injectable)(),B(0,(0,a.inject)(c.appBinderTypes.AppBinder))],t);0&&(module.exports={SignMessageUseCase});
2
2
  //# sourceMappingURL=SignMessageUseCase.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/use-cases/message/SignMessageUseCase.ts"],
4
- "sourcesContent": ["import { inject, injectable } from \"inversify\";\n\nimport { SignMessageDAReturnType } from \"@api/app-binder/SignMessageDeviceActionTypes\";\nimport { appBinderTypes } from \"@internal/app-binder/di/appBinderTypes\";\nimport { type SolanaAppBinder } from \"@internal/app-binder/SolanaAppBinder\";\n\n@injectable()\nexport class SignMessageUseCase {\n private _appBinder: SolanaAppBinder;\n\n constructor(\n @inject(appBinderTypes.AppBinder)\n appBinding: SolanaAppBinder,\n ) {\n this._appBinder = appBinding;\n }\n\n execute(derivationPath: string, message: string): SignMessageDAReturnType {\n return this._appBinder.signMessage({\n derivationPath,\n message,\n });\n }\n}\n"],
5
- "mappings": "okBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,wBAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAmC,qBAGnCC,EAA+B,kDAIxB,IAAMC,EAAN,KAAyB,CACtB,WAER,YAEEC,EACA,CACA,KAAK,WAAaA,CACpB,CAEA,QAAQC,EAAwBC,EAA0C,CACxE,OAAO,KAAK,WAAW,YAAY,CACjC,eAAAD,EACA,QAAAC,CACF,CAAC,CACH,CACF,EAhBaH,EAANI,EAAA,IADN,cAAW,EAKPC,EAAA,eAAO,iBAAe,SAAS,IAJvBL",
6
- "names": ["SignMessageUseCase_exports", "__export", "SignMessageUseCase", "__toCommonJS", "import_inversify", "import_appBinderTypes", "SignMessageUseCase", "appBinding", "derivationPath", "message", "__decorateClass", "__decorateParam"]
4
+ "sourcesContent": ["import { inject, injectable } from \"inversify\";\n\nimport { SignMessageDAReturnType } from \"@api/app-binder/SignMessageDeviceActionTypes\";\nimport { type MessageOptions } from \"@api/model/MessageOptions\";\nimport { appBinderTypes } from \"@internal/app-binder/di/appBinderTypes\";\nimport { type SolanaAppBinder } from \"@internal/app-binder/SolanaAppBinder\";\n\n@injectable()\nexport class SignMessageUseCase {\n private _appBinder: SolanaAppBinder;\n\n constructor(\n @inject(appBinderTypes.AppBinder)\n appBinding: SolanaAppBinder,\n ) {\n this._appBinder = appBinding;\n }\n\n execute(\n derivationPath: string,\n message: string,\n options?: MessageOptions,\n ): SignMessageDAReturnType {\n return this._appBinder.signMessage({\n derivationPath,\n message,\n skipOpenApp: options?.skipOpenApp ?? false,\n });\n }\n}\n"],
5
+ "mappings": "okBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,wBAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAmC,qBAInCC,EAA+B,kDAIxB,IAAMC,EAAN,KAAyB,CACtB,WAER,YAEEC,EACA,CACA,KAAK,WAAaA,CACpB,CAEA,QACEC,EACAC,EACAC,EACyB,CACzB,OAAO,KAAK,WAAW,YAAY,CACjC,eAAAF,EACA,QAAAC,EACA,YAAaC,GAAS,aAAe,EACvC,CAAC,CACH,CACF,EArBaJ,EAANK,EAAA,IADN,cAAW,EAKPC,EAAA,eAAO,iBAAe,SAAS,IAJvBN",
6
+ "names": ["SignMessageUseCase_exports", "__export", "SignMessageUseCase", "__toCommonJS", "import_inversify", "import_appBinderTypes", "SignMessageUseCase", "appBinding", "derivationPath", "message", "options", "__decorateClass", "__decorateParam"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var n=require("./SignMessageUseCase");describe("SignMessageUseCase",()=>{it("should call signMessage on appBinder with the correct arguments",()=>{const e="44'/501'/0'/0'",s="Hello world",a={signMessage:jest.fn()};new n.SignMessageUseCase(a).execute(e,s),expect(a.signMessage).toHaveBeenCalledWith({derivationPath:e,message:s})})});
1
+ "use strict";var n=require("./SignMessageUseCase");describe("SignMessageUseCase",()=>{it("should call signMessage on appBinder with the correct arguments",()=>{const e="44'/501'/0'/0'",s="Hello world",a={signMessage:vi.fn()};new n.SignMessageUseCase(a).execute(e,s),expect(a.signMessage).toHaveBeenCalledWith({derivationPath:e,message:s,skipOpenApp:!1})})});
2
2
  //# sourceMappingURL=SignMessageUseCase.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/use-cases/message/SignMessageUseCase.test.ts"],
4
- "sourcesContent": ["import { type SolanaAppBinder } from \"@internal/app-binder/SolanaAppBinder\";\n\nimport { SignMessageUseCase } from \"./SignMessageUseCase\";\n\ndescribe(\"SignMessageUseCase\", () => {\n it(\"should call signMessage on appBinder with the correct arguments\", () => {\n // Given\n const derivationPath = \"44'/501'/0'/0'\";\n const message = \"Hello world\";\n const appBinder = {\n signMessage: jest.fn(),\n };\n const signMessageUseCase = new SignMessageUseCase(\n appBinder as unknown as SolanaAppBinder,\n );\n\n // When\n signMessageUseCase.execute(derivationPath, message);\n\n // Then\n expect(appBinder.signMessage).toHaveBeenCalledWith({\n derivationPath,\n message,\n });\n });\n});\n"],
5
- "mappings": "aAEA,IAAAA,EAAmC,gCAEnC,SAAS,qBAAsB,IAAM,CACnC,GAAG,kEAAmE,IAAM,CAE1E,MAAMC,EAAiB,iBACjBC,EAAU,cACVC,EAAY,CAChB,YAAa,KAAK,GAAG,CACvB,EAC2B,IAAI,qBAC7BA,CACF,EAGmB,QAAQF,EAAgBC,CAAO,EAGlD,OAAOC,EAAU,WAAW,EAAE,qBAAqB,CACjD,eAAAF,EACA,QAAAC,CACF,CAAC,CACH,CAAC,CACH,CAAC",
4
+ "sourcesContent": ["import { type SolanaAppBinder } from \"@internal/app-binder/SolanaAppBinder\";\n\nimport { SignMessageUseCase } from \"./SignMessageUseCase\";\n\ndescribe(\"SignMessageUseCase\", () => {\n it(\"should call signMessage on appBinder with the correct arguments\", () => {\n // Given\n const derivationPath = \"44'/501'/0'/0'\";\n const message = \"Hello world\";\n const appBinder = {\n signMessage: vi.fn(),\n };\n const signMessageUseCase = new SignMessageUseCase(\n appBinder as unknown as SolanaAppBinder,\n );\n\n // When\n signMessageUseCase.execute(derivationPath, message);\n\n // Then\n expect(appBinder.signMessage).toHaveBeenCalledWith({\n derivationPath,\n message,\n skipOpenApp: false,\n });\n });\n});\n"],
5
+ "mappings": "aAEA,IAAAA,EAAmC,gCAEnC,SAAS,qBAAsB,IAAM,CACnC,GAAG,kEAAmE,IAAM,CAE1E,MAAMC,EAAiB,iBACjBC,EAAU,cACVC,EAAY,CAChB,YAAa,GAAG,GAAG,CACrB,EAC2B,IAAI,qBAC7BA,CACF,EAGmB,QAAQF,EAAgBC,CAAO,EAGlD,OAAOC,EAAU,WAAW,EAAE,qBAAqB,CACjD,eAAAF,EACA,QAAAC,EACA,YAAa,EACf,CAAC,CACH,CAAC,CACH,CAAC",
6
6
  "names": ["import_SignMessageUseCase", "derivationPath", "message", "appBinder"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var a=Object.defineProperty;var s=Object.getOwnPropertyDescriptor;var B=Object.getOwnPropertyNames;var u=Object.prototype.hasOwnProperty;var A=(n,r)=>{for(var t in r)a(n,t,{get:r[t],enumerable:!0})},l=(n,r,t,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let p of B(r))!u.call(n,p)&&p!==t&&a(n,p,{get:()=>r[p],enumerable:!(i=s(r,p))||i.enumerable});return n};var y=n=>l(a({},"__esModule",{value:!0}),n),T=(n,r,t,i)=>{for(var p=i>1?void 0:i?s(r,t):r,m=n.length-1,c;m>=0;m--)(c=n[m])&&(p=(i?c(r,t,p):c(p))||p);return i&&p&&a(r,t,p),p},d=(n,r)=>(t,i)=>r(t,i,n);var j={};A(j,{SignTransactionUseCase:()=>o});module.exports=y(j);var e=require("inversify"),f=require("../../app-binder/di/appBinderTypes");let o=class{constructor(r){this.appBinder=r}execute(r,t,i){return this.appBinder.signTransaction({derivationPath:r,transaction:t,options:i})}};o=T([(0,e.injectable)(),d(0,(0,e.inject)(f.appBinderTypes.AppBinder))],o);0&&(module.exports={SignTransactionUseCase});
1
+ "use strict";var e=Object.defineProperty;var s=Object.getOwnPropertyDescriptor;var d=Object.getOwnPropertyNames;var B=Object.prototype.hasOwnProperty;var l=(r,p)=>{for(var i in p)e(r,i,{get:p[i],enumerable:!0})},u=(r,p,i,t)=>{if(p&&typeof p=="object"||typeof p=="function")for(let n of d(p))!B.call(r,n)&&n!==i&&e(r,n,{get:()=>p[n],enumerable:!(t=s(p,n))||t.enumerable});return r};var O=r=>u(e({},"__esModule",{value:!0}),r),f=(r,p,i,t)=>{for(var n=t>1?void 0:t?s(p,i):p,m=r.length-1,c;m>=0;m--)(c=r[m])&&(n=(t?c(p,i,n):c(n))||n);return t&&n&&e(p,i,n),n},A=(r,p)=>(i,t)=>p(i,t,r);var y={};l(y,{SignTransactionUseCase:()=>o});module.exports=O(y);var a=require("inversify"),T=require("../../app-binder/di/appBinderTypes");let o=class{constructor(p){this.appBinder=p}execute(p,i,t){return this.appBinder.signTransaction({derivationPath:p,transaction:i,skipOpenApp:t?.skipOpenApp??!1})}};o=f([(0,a.injectable)(),A(0,(0,a.inject)(T.appBinderTypes.AppBinder))],o);0&&(module.exports={SignTransactionUseCase});
2
2
  //# sourceMappingURL=SignTransactionUseCase.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/use-cases/transaction/SignTransactionUseCase.ts"],
4
- "sourcesContent": ["import { inject, injectable } from \"inversify\";\n\nimport { SignTransactionDAReturnType } from \"@api/app-binder/SignTransactionDeviceActionTypes\";\nimport { Transaction } from \"@api/model/Transaction\";\nimport { TransactionOptions } from \"@api/model/TransactionOptions\";\nimport { appBinderTypes } from \"@internal/app-binder/di/appBinderTypes\";\nimport { SolanaAppBinder } from \"@internal/app-binder/SolanaAppBinder\";\n\n@injectable()\nexport class SignTransactionUseCase {\n constructor(\n @inject(appBinderTypes.AppBinder) private appBinder: SolanaAppBinder,\n ) {}\n\n execute(\n derivationPath: string,\n transaction: Transaction,\n options?: TransactionOptions,\n ): SignTransactionDAReturnType {\n return this.appBinder.signTransaction({\n derivationPath,\n transaction,\n options,\n });\n }\n}\n"],
5
- "mappings": "okBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,4BAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAmC,qBAKnCC,EAA+B,kDAIxB,IAAMC,EAAN,KAA6B,CAClC,YAC4CC,EAC1C,CAD0C,eAAAA,CACzC,CAEH,QACEC,EACAC,EACAC,EAC6B,CAC7B,OAAO,KAAK,UAAU,gBAAgB,CACpC,eAAAF,EACA,YAAAC,EACA,QAAAC,CACF,CAAC,CACH,CACF,EAhBaJ,EAANK,EAAA,IADN,cAAW,EAGPC,EAAA,eAAO,iBAAe,SAAS,IAFvBN",
4
+ "sourcesContent": ["import { inject, injectable } from \"inversify\";\n\nimport { SignTransactionDAReturnType } from \"@api/app-binder/SignTransactionDeviceActionTypes\";\nimport { Transaction } from \"@api/model/Transaction\";\nimport { TransactionOptions } from \"@api/model/TransactionOptions\";\nimport { appBinderTypes } from \"@internal/app-binder/di/appBinderTypes\";\nimport { SolanaAppBinder } from \"@internal/app-binder/SolanaAppBinder\";\n\n@injectable()\nexport class SignTransactionUseCase {\n constructor(\n @inject(appBinderTypes.AppBinder) private appBinder: SolanaAppBinder,\n ) {}\n\n execute(\n derivationPath: string,\n transaction: Transaction,\n options?: TransactionOptions,\n ): SignTransactionDAReturnType {\n return this.appBinder.signTransaction({\n derivationPath,\n transaction,\n skipOpenApp: options?.skipOpenApp ?? false,\n });\n }\n}\n"],
5
+ "mappings": "okBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,4BAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAmC,qBAKnCC,EAA+B,kDAIxB,IAAMC,EAAN,KAA6B,CAClC,YAC4CC,EAC1C,CAD0C,eAAAA,CACzC,CAEH,QACEC,EACAC,EACAC,EAC6B,CAC7B,OAAO,KAAK,UAAU,gBAAgB,CACpC,eAAAF,EACA,YAAAC,EACA,YAAaC,GAAS,aAAe,EACvC,CAAC,CACH,CACF,EAhBaJ,EAANK,EAAA,IADN,cAAW,EAGPC,EAAA,eAAO,iBAAe,SAAS,IAFvBN",
6
6
  "names": ["SignTransactionUseCase_exports", "__export", "SignTransactionUseCase", "__toCommonJS", "import_inversify", "import_appBinderTypes", "SignTransactionUseCase", "appBinder", "derivationPath", "transaction", "options", "__decorateClass", "__decorateParam"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var t=require("./SignTransactionUseCase");describe("GetAppConfigurationUseCase",()=>{const e=jest.fn(),a={signTransaction:e};let n;beforeEach(()=>{jest.clearAllMocks(),n=new t.SignTransactionUseCase(a)}),it("should return the config from the appBinder's getAppConfiguration method",()=>{e.mockReturnValue(new Uint8Array([66]));const o=n.execute("44'/501'/0'/0'",new Uint8Array([1,2,3,4]));expect(e).toHaveBeenCalledWith({derivationPath:"44'/501'/0'/0'",transaction:new Uint8Array([1,2,3,4]),options:void 0}),expect(o).toEqual(new Uint8Array([66]))})});
1
+ "use strict";var a=require("./SignTransactionUseCase");describe("GetAppConfigurationUseCase",()=>{const e=vi.fn(),t={signTransaction:e};let n;beforeEach(()=>{vi.clearAllMocks(),n=new a.SignTransactionUseCase(t)}),it("should return the config from the appBinder's getAppConfiguration method",()=>{e.mockReturnValue(new Uint8Array([66]));const i=n.execute("44'/501'/0'/0'",new Uint8Array([1,2,3,4]));expect(e).toHaveBeenCalledWith({derivationPath:"44'/501'/0'/0'",transaction:new Uint8Array([1,2,3,4]),skipOpenApp:!1}),expect(i).toEqual(new Uint8Array([66]))})});
2
2
  //# sourceMappingURL=SignTransactionUseCase.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/use-cases/transaction/SignTransactionUseCase.test.ts"],
4
- "sourcesContent": ["import { type SolanaAppBinder } from \"@internal/app-binder/SolanaAppBinder\";\n\nimport { SignTransactionUseCase } from \"./SignTransactionUseCase\";\n\ndescribe(\"GetAppConfigurationUseCase\", () => {\n const signTransactionMock = jest.fn();\n const appBinderMock = {\n signTransaction: signTransactionMock,\n } as unknown as SolanaAppBinder;\n let useCase: SignTransactionUseCase;\n\n beforeEach(() => {\n jest.clearAllMocks();\n useCase = new SignTransactionUseCase(appBinderMock);\n });\n\n it(\"should return the config from the appBinder's getAppConfiguration method\", () => {\n // GIVEN\n signTransactionMock.mockReturnValue(new Uint8Array([0x042]));\n\n // WHEN\n const result = useCase.execute(\n \"44'/501'/0'/0'\",\n new Uint8Array([0x01, 0x02, 0x03, 0x04]),\n );\n\n // THEN\n expect(signTransactionMock).toHaveBeenCalledWith({\n derivationPath: \"44'/501'/0'/0'\",\n transaction: new Uint8Array([0x01, 0x02, 0x03, 0x04]),\n options: undefined,\n });\n expect(result).toEqual(new Uint8Array([0x042]));\n });\n});\n"],
5
- "mappings": "aAEA,IAAAA,EAAuC,oCAEvC,SAAS,6BAA8B,IAAM,CAC3C,MAAMC,EAAsB,KAAK,GAAG,EAC9BC,EAAgB,CACpB,gBAAiBD,CACnB,EACA,IAAIE,EAEJ,WAAW,IAAM,CACf,KAAK,cAAc,EACnBA,EAAU,IAAI,yBAAuBD,CAAa,CACpD,CAAC,EAED,GAAG,2EAA4E,IAAM,CAEnFD,EAAoB,gBAAgB,IAAI,WAAW,CAAC,EAAK,CAAC,CAAC,EAG3D,MAAMG,EAASD,EAAQ,QACrB,iBACA,IAAI,WAAW,CAAC,EAAM,EAAM,EAAM,CAAI,CAAC,CACzC,EAGA,OAAOF,CAAmB,EAAE,qBAAqB,CAC/C,eAAgB,iBAChB,YAAa,IAAI,WAAW,CAAC,EAAM,EAAM,EAAM,CAAI,CAAC,EACpD,QAAS,MACX,CAAC,EACD,OAAOG,CAAM,EAAE,QAAQ,IAAI,WAAW,CAAC,EAAK,CAAC,CAAC,CAChD,CAAC,CACH,CAAC",
4
+ "sourcesContent": ["import { type SolanaAppBinder } from \"@internal/app-binder/SolanaAppBinder\";\n\nimport { SignTransactionUseCase } from \"./SignTransactionUseCase\";\n\ndescribe(\"GetAppConfigurationUseCase\", () => {\n const signTransactionMock = vi.fn();\n const appBinderMock = {\n signTransaction: signTransactionMock,\n } as unknown as SolanaAppBinder;\n let useCase: SignTransactionUseCase;\n\n beforeEach(() => {\n vi.clearAllMocks();\n useCase = new SignTransactionUseCase(appBinderMock);\n });\n\n it(\"should return the config from the appBinder's getAppConfiguration method\", () => {\n // GIVEN\n signTransactionMock.mockReturnValue(new Uint8Array([0x042]));\n\n // WHEN\n const result = useCase.execute(\n \"44'/501'/0'/0'\",\n new Uint8Array([0x01, 0x02, 0x03, 0x04]),\n );\n\n // THEN\n expect(signTransactionMock).toHaveBeenCalledWith({\n derivationPath: \"44'/501'/0'/0'\",\n transaction: new Uint8Array([0x01, 0x02, 0x03, 0x04]),\n skipOpenApp: false,\n });\n expect(result).toEqual(new Uint8Array([0x042]));\n });\n});\n"],
5
+ "mappings": "aAEA,IAAAA,EAAuC,oCAEvC,SAAS,6BAA8B,IAAM,CAC3C,MAAMC,EAAsB,GAAG,GAAG,EAC5BC,EAAgB,CACpB,gBAAiBD,CACnB,EACA,IAAIE,EAEJ,WAAW,IAAM,CACf,GAAG,cAAc,EACjBA,EAAU,IAAI,yBAAuBD,CAAa,CACpD,CAAC,EAED,GAAG,2EAA4E,IAAM,CAEnFD,EAAoB,gBAAgB,IAAI,WAAW,CAAC,EAAK,CAAC,CAAC,EAG3D,MAAMG,EAASD,EAAQ,QACrB,iBACA,IAAI,WAAW,CAAC,EAAM,EAAM,EAAM,CAAI,CAAC,CACzC,EAGA,OAAOF,CAAmB,EAAE,qBAAqB,CAC/C,eAAgB,iBAChB,YAAa,IAAI,WAAW,CAAC,EAAM,EAAM,EAAM,CAAI,CAAC,EACpD,YAAa,EACf,CAAC,EACD,OAAOG,CAAM,EAAE,QAAQ,IAAI,WAAW,CAAC,EAAK,CAAC,CAAC,CAChD,CAAC,CACH,CAAC",
6
6
  "names": ["import_SignTransactionUseCase", "signTransactionMock", "appBinderMock", "useCase", "result"]
7
7
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ledgerhq/device-signer-kit-solana",
3
- "version": "1.1.0",
3
+ "version": "1.1.1",
4
4
  "private": false,
5
5
  "license": "Apache-2.0",
6
6
  "exports": {
@@ -20,9 +20,9 @@
20
20
  ],
21
21
  "scripts": {
22
22
  "prebuild": "rimraf lib",
23
- "build": "pnpm lmdk-build --entryPoints src/index.ts,src/**/*.ts --tsconfig tsconfig.prod.json",
23
+ "build": "pnpm ldmk-tool build --entryPoints src/index.ts,src/**/*.ts --tsconfig tsconfig.prod.json",
24
24
  "dev": "concurrently \"pnpm watch:builds\" \"pnpm watch:types\"",
25
- "watch:builds": "pnpm lmdk-watch --entryPoints src/index.ts,src/**/*.ts --tsconfig tsconfig.prod.json",
25
+ "watch:builds": "pnpm ldmk-tool watch --entryPoints src/index.ts,src/**/*.ts --tsconfig tsconfig.prod.json",
26
26
  "watch:types": "concurrently \"tsc --watch -p tsconfig.prod.json\" \"tsc-alias --watch -p tsconfig.prod.json\"",
27
27
  "lint": "eslint",
28
28
  "lint:fix": "pnpm lint --fix",
@@ -30,28 +30,27 @@
30
30
  "prettier": "prettier . --check",
31
31
  "prettier:fix": "prettier . --write",
32
32
  "typecheck": "tsc --noEmit",
33
- "test": "jest",
34
- "test:watch": "pnpm test -- --watch",
35
- "test:coverage": "pnpm test -- --coverage"
33
+ "test": "vitest run",
34
+ "test:watch": "vitest",
35
+ "test:coverage": "vitest run --coverage"
36
36
  },
37
37
  "dependencies": {
38
- "@ledgerhq/signer-utils": "workspace:*",
39
- "bs58": "^6.0.0",
40
- "inversify": "^6.2.1",
41
- "inversify-logger-middleware": "^3.1.0",
42
- "purify-ts": "^2.1.0",
43
- "reflect-metadata": "^0.2.2",
44
- "xstate": "^5.19.2"
38
+ "@ledgerhq/signer-utils": "^1.0.5",
39
+ "bs58": "catalog:",
40
+ "inversify": "catalog:",
41
+ "purify-ts": "catalog:",
42
+ "reflect-metadata": "catalog:",
43
+ "xstate": "catalog:"
45
44
  },
46
45
  "devDependencies": {
47
46
  "@ledgerhq/device-management-kit": "workspace:*",
48
- "@ledgerhq/esbuild-tools": "workspace:*",
47
+ "@ledgerhq/ldmk-tool": "workspace:*",
49
48
  "@ledgerhq/eslint-config-dsdk": "workspace:*",
50
- "@ledgerhq/jest-config-dsdk": "workspace:*",
51
49
  "@ledgerhq/prettier-config-dsdk": "workspace:*",
52
50
  "@ledgerhq/tsconfig-dsdk": "workspace:*",
53
- "rxjs": "^7.8.1",
54
- "ts-node": "^10.9.2"
51
+ "@ledgerhq/vitest-config-dmk": "workspace:*",
52
+ "rxjs": "catalog:",
53
+ "ts-node": "catalog:"
55
54
  },
56
55
  "peerDependencies": {
57
56
  "@ledgerhq/device-management-kit": "workspace:*"
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=MessageOptions.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -1,2 +1,2 @@
1
- import{useCasesTypes as n}from"./use-cases/di/useCasesTypes";import{makeContainer as s}from"./di";class p{_container;constructor({dmk:e,sessionId:t}){this._container=s({dmk:e,sessionId:t})}signTransaction(e,t,r){return this._container.get(n.SignTransactionUseCase).execute(e,t,r)}signMessage(e,t){return this._container.get(n.SignMessageUseCase).execute(e,t)}getAddress(e,t){return this._container.get(n.GetAddressUseCase).execute(e,t)}getAppConfiguration(){return this._container.get(n.GetAppConfigurationUseCase).execute()}}export{p as DefaultSignerSolana};
1
+ import{useCasesTypes as n}from"./use-cases/di/useCasesTypes";import{makeContainer as s}from"./di";class p{_container;constructor({dmk:e,sessionId:t}){this._container=s({dmk:e,sessionId:t})}signTransaction(e,t,r){return this._container.get(n.SignTransactionUseCase).execute(e,t,r)}signMessage(e,t,r){return this._container.get(n.SignMessageUseCase).execute(e,t,r)}getAddress(e,t){return this._container.get(n.GetAddressUseCase).execute(e,t)}getAppConfiguration(){return this._container.get(n.GetAppConfigurationUseCase).execute()}}export{p as DefaultSignerSolana};
2
2
  //# sourceMappingURL=DefaultSignerSolana.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/internal/DefaultSignerSolana.ts"],
4
- "sourcesContent": ["import {\n type DeviceManagementKit,\n type DeviceSessionId,\n} from \"@ledgerhq/device-management-kit\";\nimport { type Container } from \"inversify\";\n\nimport { type GetAddressDAReturnType } from \"@api/app-binder/GetAddressDeviceActionTypes\";\nimport { type GetAppConfigurationDAReturnType } from \"@api/app-binder/GetAppConfigurationDeviceActionTypes\";\nimport { type SignMessageDAReturnType } from \"@api/app-binder/SignMessageDeviceActionTypes\";\nimport { type SignTransactionDAReturnType } from \"@api/app-binder/SignTransactionDeviceActionTypes\";\nimport { type AddressOptions } from \"@api/model/AddressOption\";\nimport { type Transaction } from \"@api/model/Transaction\";\nimport { type TransactionOptions } from \"@api/model/TransactionOptions\";\nimport { type SignerSolana } from \"@api/SignerSolana\";\n\nimport { type GetAddressUseCase } from \"./use-cases/address/GetAddressUseCase\";\nimport { type GetAppConfigurationUseCase } from \"./use-cases/app-configuration/GetAppConfigurationUseCase\";\nimport { useCasesTypes } from \"./use-cases/di/useCasesTypes\";\nimport { type SignMessageUseCase } from \"./use-cases/message/SignMessageUseCase\";\nimport { type SignTransactionUseCase } from \"./use-cases/transaction/SignTransactionUseCase\";\nimport { makeContainer } from \"./di\";\n\nexport type DefaultSignerSolanaConstructorArgs = {\n dmk: DeviceManagementKit;\n sessionId: DeviceSessionId;\n};\n\nexport class DefaultSignerSolana implements SignerSolana {\n private _container: Container;\n\n constructor({ dmk, sessionId }: DefaultSignerSolanaConstructorArgs) {\n this._container = makeContainer({ dmk, sessionId });\n }\n\n signTransaction(\n derivationPath: string,\n transaction: Transaction,\n options?: TransactionOptions,\n ): SignTransactionDAReturnType {\n return this._container\n .get<SignTransactionUseCase>(useCasesTypes.SignTransactionUseCase)\n .execute(derivationPath, transaction, options);\n }\n\n signMessage(\n derivationPath: string,\n message: string,\n ): SignMessageDAReturnType {\n return this._container\n .get<SignMessageUseCase>(useCasesTypes.SignMessageUseCase)\n .execute(derivationPath, message);\n }\n\n getAddress(\n derivationPath: string,\n options?: AddressOptions,\n ): GetAddressDAReturnType {\n return this._container\n .get<GetAddressUseCase>(useCasesTypes.GetAddressUseCase)\n .execute(derivationPath, options);\n }\n\n getAppConfiguration(): GetAppConfigurationDAReturnType {\n return this._container\n .get<GetAppConfigurationUseCase>(useCasesTypes.GetAppConfigurationUseCase)\n .execute();\n }\n}\n"],
5
- "mappings": "AAiBA,OAAS,iBAAAA,MAAqB,+BAG9B,OAAS,iBAAAC,MAAqB,OAOvB,MAAMC,CAA4C,CAC/C,WAER,YAAY,CAAE,IAAAC,EAAK,UAAAC,CAAU,EAAuC,CAClE,KAAK,WAAaH,EAAc,CAAE,IAAAE,EAAK,UAAAC,CAAU,CAAC,CACpD,CAEA,gBACEC,EACAC,EACAC,EAC6B,CAC7B,OAAO,KAAK,WACT,IAA4BP,EAAc,sBAAsB,EAChE,QAAQK,EAAgBC,EAAaC,CAAO,CACjD,CAEA,YACEF,EACAG,EACyB,CACzB,OAAO,KAAK,WACT,IAAwBR,EAAc,kBAAkB,EACxD,QAAQK,EAAgBG,CAAO,CACpC,CAEA,WACEH,EACAE,EACwB,CACxB,OAAO,KAAK,WACT,IAAuBP,EAAc,iBAAiB,EACtD,QAAQK,EAAgBE,CAAO,CACpC,CAEA,qBAAuD,CACrD,OAAO,KAAK,WACT,IAAgCP,EAAc,0BAA0B,EACxE,QAAQ,CACb,CACF",
4
+ "sourcesContent": ["import {\n type DeviceManagementKit,\n type DeviceSessionId,\n} from \"@ledgerhq/device-management-kit\";\nimport { type Container } from \"inversify\";\n\nimport { type GetAddressDAReturnType } from \"@api/app-binder/GetAddressDeviceActionTypes\";\nimport { type GetAppConfigurationDAReturnType } from \"@api/app-binder/GetAppConfigurationDeviceActionTypes\";\nimport { type SignMessageDAReturnType } from \"@api/app-binder/SignMessageDeviceActionTypes\";\nimport { type SignTransactionDAReturnType } from \"@api/app-binder/SignTransactionDeviceActionTypes\";\nimport { type AddressOptions } from \"@api/model/AddressOption\";\nimport { type MessageOptions } from \"@api/model/MessageOptions\";\nimport { type Transaction } from \"@api/model/Transaction\";\nimport { type TransactionOptions } from \"@api/model/TransactionOptions\";\nimport { type SignerSolana } from \"@api/SignerSolana\";\n\nimport { type GetAddressUseCase } from \"./use-cases/address/GetAddressUseCase\";\nimport { type GetAppConfigurationUseCase } from \"./use-cases/app-configuration/GetAppConfigurationUseCase\";\nimport { useCasesTypes } from \"./use-cases/di/useCasesTypes\";\nimport { type SignMessageUseCase } from \"./use-cases/message/SignMessageUseCase\";\nimport { type SignTransactionUseCase } from \"./use-cases/transaction/SignTransactionUseCase\";\nimport { makeContainer } from \"./di\";\n\nexport type DefaultSignerSolanaConstructorArgs = {\n dmk: DeviceManagementKit;\n sessionId: DeviceSessionId;\n};\n\nexport class DefaultSignerSolana implements SignerSolana {\n private _container: Container;\n\n constructor({ dmk, sessionId }: DefaultSignerSolanaConstructorArgs) {\n this._container = makeContainer({ dmk, sessionId });\n }\n\n signTransaction(\n derivationPath: string,\n transaction: Transaction,\n options?: TransactionOptions,\n ): SignTransactionDAReturnType {\n return this._container\n .get<SignTransactionUseCase>(useCasesTypes.SignTransactionUseCase)\n .execute(derivationPath, transaction, options);\n }\n\n signMessage(\n derivationPath: string,\n message: string,\n options?: MessageOptions,\n ): SignMessageDAReturnType {\n return this._container\n .get<SignMessageUseCase>(useCasesTypes.SignMessageUseCase)\n .execute(derivationPath, message, options);\n }\n\n getAddress(\n derivationPath: string,\n options?: AddressOptions,\n ): GetAddressDAReturnType {\n return this._container\n .get<GetAddressUseCase>(useCasesTypes.GetAddressUseCase)\n .execute(derivationPath, options);\n }\n\n getAppConfiguration(): GetAppConfigurationDAReturnType {\n return this._container\n .get<GetAppConfigurationUseCase>(useCasesTypes.GetAppConfigurationUseCase)\n .execute();\n }\n}\n"],
5
+ "mappings": "AAkBA,OAAS,iBAAAA,MAAqB,+BAG9B,OAAS,iBAAAC,MAAqB,OAOvB,MAAMC,CAA4C,CAC/C,WAER,YAAY,CAAE,IAAAC,EAAK,UAAAC,CAAU,EAAuC,CAClE,KAAK,WAAaH,EAAc,CAAE,IAAAE,EAAK,UAAAC,CAAU,CAAC,CACpD,CAEA,gBACEC,EACAC,EACAC,EAC6B,CAC7B,OAAO,KAAK,WACT,IAA4BP,EAAc,sBAAsB,EAChE,QAAQK,EAAgBC,EAAaC,CAAO,CACjD,CAEA,YACEF,EACAG,EACAD,EACyB,CACzB,OAAO,KAAK,WACT,IAAwBP,EAAc,kBAAkB,EACxD,QAAQK,EAAgBG,EAASD,CAAO,CAC7C,CAEA,WACEF,EACAE,EACwB,CACxB,OAAO,KAAK,WACT,IAAuBP,EAAc,iBAAiB,EACtD,QAAQK,EAAgBE,CAAO,CACpC,CAEA,qBAAuD,CACrD,OAAO,KAAK,WACT,IAAgCP,EAAc,0BAA0B,EACxE,QAAQ,CACb,CACF",
6
6
  "names": ["useCasesTypes", "makeContainer", "DefaultSignerSolana", "dmk", "sessionId", "derivationPath", "transaction", "options", "message"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{DefaultSignerSolana as s}from"./DefaultSignerSolana";describe("DefaultSignerSolana",()=>{it("should be defined",()=>{const e=new s({dmk:{},sessionId:{}});expect(e).toBeDefined()}),it("should call getAddress",()=>{const e={executeDeviceAction:jest.fn()},n={};new s({dmk:e,sessionId:n}).getAddress("derivationPath",{}),expect(e.executeDeviceAction).toHaveBeenCalled()}),it("should call signTransaction",()=>{const e={executeDeviceAction:jest.fn()},n={};new s({dmk:e,sessionId:n}).signTransaction("derivationPath",new Uint8Array,{}),expect(e.executeDeviceAction).toHaveBeenCalled()}),it("should call signMessage",()=>{const e={executeDeviceAction:jest.fn()},n={};new s({dmk:e,sessionId:n}).signMessage("44'/501'/0'/0'","Hello world"),expect(e.executeDeviceAction).toHaveBeenCalled()}),it("should call getAppConfiguration",()=>{const e={executeDeviceAction:jest.fn()},n={};new s({dmk:e,sessionId:n}).getAppConfiguration(),expect(e.executeDeviceAction).toHaveBeenCalled()})});
1
+ import{DefaultSignerSolana as i}from"./DefaultSignerSolana";describe("DefaultSignerSolana",()=>{it("should be defined",()=>{const e=new i({dmk:{},sessionId:{}});expect(e).toBeDefined()}),it("should call getAddress",()=>{const e={executeDeviceAction:vi.fn()},n={};new i({dmk:e,sessionId:n}).getAddress("derivationPath",{}),expect(e.executeDeviceAction).toHaveBeenCalled()}),it("should call signTransaction",()=>{const e={executeDeviceAction:vi.fn()},n={};new i({dmk:e,sessionId:n}).signTransaction("derivationPath",new Uint8Array,{}),expect(e.executeDeviceAction).toHaveBeenCalled()}),it("should call signMessage",()=>{const e={executeDeviceAction:vi.fn()},n={};new i({dmk:e,sessionId:n}).signMessage("44'/501'/0'/0'","Hello world"),expect(e.executeDeviceAction).toHaveBeenCalled()}),it("should call getAppConfiguration",()=>{const e={executeDeviceAction:vi.fn()},n={};new i({dmk:e,sessionId:n}).getAppConfiguration(),expect(e.executeDeviceAction).toHaveBeenCalled()})});
2
2
  //# sourceMappingURL=DefaultSignerSolana.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/internal/DefaultSignerSolana.test.ts"],
4
- "sourcesContent": ["import {\n type DeviceManagementKit,\n type DeviceSessionId,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { DefaultSignerSolana } from \"./DefaultSignerSolana\";\n\ndescribe(\"DefaultSignerSolana\", () => {\n it(\"should be defined\", () => {\n const signer = new DefaultSignerSolana({\n dmk: {} as DeviceManagementKit,\n sessionId: {} as DeviceSessionId,\n });\n expect(signer).toBeDefined();\n });\n\n it(\"should call getAddress\", () => {\n const dmk = {\n executeDeviceAction: jest.fn(),\n } as unknown as DeviceManagementKit;\n const sessionId = {} as DeviceSessionId;\n const signer = new DefaultSignerSolana({ dmk, sessionId });\n signer.getAddress(\"derivationPath\", {});\n expect(dmk.executeDeviceAction).toHaveBeenCalled();\n });\n\n it(\"should call signTransaction\", () => {\n const dmk = {\n executeDeviceAction: jest.fn(),\n } as unknown as DeviceManagementKit;\n const sessionId = {} as DeviceSessionId;\n const signer = new DefaultSignerSolana({ dmk, sessionId });\n signer.signTransaction(\"derivationPath\", new Uint8Array(), {});\n expect(dmk.executeDeviceAction).toHaveBeenCalled();\n });\n\n it(\"should call signMessage\", () => {\n const dmk = {\n executeDeviceAction: jest.fn(),\n } as unknown as DeviceManagementKit;\n const sessionId = {} as DeviceSessionId;\n const signer = new DefaultSignerSolana({ dmk, sessionId });\n signer.signMessage(\"44'/501'/0'/0'\", \"Hello world\");\n expect(dmk.executeDeviceAction).toHaveBeenCalled();\n });\n\n it(\"should call getAppConfiguration\", () => {\n const dmk = {\n executeDeviceAction: jest.fn(),\n } as unknown as DeviceManagementKit;\n const sessionId = {} as DeviceSessionId;\n const signer = new DefaultSignerSolana({ dmk, sessionId });\n signer.getAppConfiguration();\n expect(dmk.executeDeviceAction).toHaveBeenCalled();\n });\n});\n"],
5
- "mappings": "AAKA,OAAS,uBAAAA,MAA2B,wBAEpC,SAAS,sBAAuB,IAAM,CACpC,GAAG,oBAAqB,IAAM,CAC5B,MAAMC,EAAS,IAAID,EAAoB,CACrC,IAAK,CAAC,EACN,UAAW,CAAC,CACd,CAAC,EACD,OAAOC,CAAM,EAAE,YAAY,CAC7B,CAAC,EAED,GAAG,yBAA0B,IAAM,CACjC,MAAMC,EAAM,CACV,oBAAqB,KAAK,GAAG,CAC/B,EACMC,EAAY,CAAC,EACJ,IAAIH,EAAoB,CAAE,IAAAE,EAAK,UAAAC,CAAU,CAAC,EAClD,WAAW,iBAAkB,CAAC,CAAC,EACtC,OAAOD,EAAI,mBAAmB,EAAE,iBAAiB,CACnD,CAAC,EAED,GAAG,8BAA+B,IAAM,CACtC,MAAMA,EAAM,CACV,oBAAqB,KAAK,GAAG,CAC/B,EACMC,EAAY,CAAC,EACJ,IAAIH,EAAoB,CAAE,IAAAE,EAAK,UAAAC,CAAU,CAAC,EAClD,gBAAgB,iBAAkB,IAAI,WAAc,CAAC,CAAC,EAC7D,OAAOD,EAAI,mBAAmB,EAAE,iBAAiB,CACnD,CAAC,EAED,GAAG,0BAA2B,IAAM,CAClC,MAAMA,EAAM,CACV,oBAAqB,KAAK,GAAG,CAC/B,EACMC,EAAY,CAAC,EACJ,IAAIH,EAAoB,CAAE,IAAAE,EAAK,UAAAC,CAAU,CAAC,EAClD,YAAY,iBAAkB,aAAa,EAClD,OAAOD,EAAI,mBAAmB,EAAE,iBAAiB,CACnD,CAAC,EAED,GAAG,kCAAmC,IAAM,CAC1C,MAAMA,EAAM,CACV,oBAAqB,KAAK,GAAG,CAC/B,EACMC,EAAY,CAAC,EACJ,IAAIH,EAAoB,CAAE,IAAAE,EAAK,UAAAC,CAAU,CAAC,EAClD,oBAAoB,EAC3B,OAAOD,EAAI,mBAAmB,EAAE,iBAAiB,CACnD,CAAC,CACH,CAAC",
4
+ "sourcesContent": ["import {\n type DeviceManagementKit,\n type DeviceSessionId,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { DefaultSignerSolana } from \"./DefaultSignerSolana\";\n\ndescribe(\"DefaultSignerSolana\", () => {\n it(\"should be defined\", () => {\n const signer = new DefaultSignerSolana({\n dmk: {} as DeviceManagementKit,\n sessionId: {} as DeviceSessionId,\n });\n expect(signer).toBeDefined();\n });\n\n it(\"should call getAddress\", () => {\n const dmk = {\n executeDeviceAction: vi.fn(),\n } as unknown as DeviceManagementKit;\n const sessionId = {} as DeviceSessionId;\n const signer = new DefaultSignerSolana({ dmk, sessionId });\n signer.getAddress(\"derivationPath\", {});\n expect(dmk.executeDeviceAction).toHaveBeenCalled();\n });\n\n it(\"should call signTransaction\", () => {\n const dmk = {\n executeDeviceAction: vi.fn(),\n } as unknown as DeviceManagementKit;\n const sessionId = {} as DeviceSessionId;\n const signer = new DefaultSignerSolana({ dmk, sessionId });\n signer.signTransaction(\"derivationPath\", new Uint8Array(), {});\n expect(dmk.executeDeviceAction).toHaveBeenCalled();\n });\n\n it(\"should call signMessage\", () => {\n const dmk = {\n executeDeviceAction: vi.fn(),\n } as unknown as DeviceManagementKit;\n const sessionId = {} as DeviceSessionId;\n const signer = new DefaultSignerSolana({ dmk, sessionId });\n signer.signMessage(\"44'/501'/0'/0'\", \"Hello world\");\n expect(dmk.executeDeviceAction).toHaveBeenCalled();\n });\n\n it(\"should call getAppConfiguration\", () => {\n const dmk = {\n executeDeviceAction: vi.fn(),\n } as unknown as DeviceManagementKit;\n const sessionId = {} as DeviceSessionId;\n const signer = new DefaultSignerSolana({ dmk, sessionId });\n signer.getAppConfiguration();\n expect(dmk.executeDeviceAction).toHaveBeenCalled();\n });\n});\n"],
5
+ "mappings": "AAKA,OAAS,uBAAAA,MAA2B,wBAEpC,SAAS,sBAAuB,IAAM,CACpC,GAAG,oBAAqB,IAAM,CAC5B,MAAMC,EAAS,IAAID,EAAoB,CACrC,IAAK,CAAC,EACN,UAAW,CAAC,CACd,CAAC,EACD,OAAOC,CAAM,EAAE,YAAY,CAC7B,CAAC,EAED,GAAG,yBAA0B,IAAM,CACjC,MAAMC,EAAM,CACV,oBAAqB,GAAG,GAAG,CAC7B,EACMC,EAAY,CAAC,EACJ,IAAIH,EAAoB,CAAE,IAAAE,EAAK,UAAAC,CAAU,CAAC,EAClD,WAAW,iBAAkB,CAAC,CAAC,EACtC,OAAOD,EAAI,mBAAmB,EAAE,iBAAiB,CACnD,CAAC,EAED,GAAG,8BAA+B,IAAM,CACtC,MAAMA,EAAM,CACV,oBAAqB,GAAG,GAAG,CAC7B,EACMC,EAAY,CAAC,EACJ,IAAIH,EAAoB,CAAE,IAAAE,EAAK,UAAAC,CAAU,CAAC,EAClD,gBAAgB,iBAAkB,IAAI,WAAc,CAAC,CAAC,EAC7D,OAAOD,EAAI,mBAAmB,EAAE,iBAAiB,CACnD,CAAC,EAED,GAAG,0BAA2B,IAAM,CAClC,MAAMA,EAAM,CACV,oBAAqB,GAAG,GAAG,CAC7B,EACMC,EAAY,CAAC,EACJ,IAAIH,EAAoB,CAAE,IAAAE,EAAK,UAAAC,CAAU,CAAC,EAClD,YAAY,iBAAkB,aAAa,EAClD,OAAOD,EAAI,mBAAmB,EAAE,iBAAiB,CACnD,CAAC,EAED,GAAG,kCAAmC,IAAM,CAC1C,MAAMA,EAAM,CACV,oBAAqB,GAAG,GAAG,CAC7B,EACMC,EAAY,CAAC,EACJ,IAAIH,EAAoB,CAAE,IAAAE,EAAK,UAAAC,CAAU,CAAC,EAClD,oBAAoB,EAC3B,OAAOD,EAAI,mBAAmB,EAAE,iBAAiB,CACnD,CAAC,CACH,CAAC",
6
6
  "names": ["DefaultSignerSolana", "signer", "dmk", "sessionId"]
7
7
  }
@@ -1,2 +1,2 @@
1
- var A=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var p=(o,e,n,t)=>{for(var i=t>1?void 0:t?g(e,n):e,r=o.length-1,a;r>=0;r--)(a=o[r])&&(i=(t?a(e,n,i):a(i))||i);return t&&i&&A(e,n,i),i},c=(o,e)=>(n,t)=>e(n,t,o);import{SendCommandInAppDeviceAction as d,UserInteractionRequired as m}from"@ledgerhq/device-management-kit";import{inject as u,injectable as D}from"inversify";import{externalTypes as v}from"../externalTypes";import{GetAppConfigurationCommand as f}from"./command/GetAppConfigurationCommand";import{GetPubKeyCommand as h}from"./command/GetPubKeyCommand";import{SignMessageDeviceAction as T}from"./device-action/SignMessage/SignMessageDeviceAction";import{SignTransactionDeviceAction as I}from"./device-action/SignTransactionDeviceAction";let s=class{constructor(e,n){this.dmk=e;this.sessionId=n}getAddress(e){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new d({input:{command:new h(e),appName:"Solana",requiredUserInteraction:e.checkOnDevice?m.VerifyAddress:m.None}})})}signTransaction(e){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new I({input:{derivationPath:e.derivationPath,transaction:e.transaction,options:e.options??{}}})})}signMessage(e){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new T({input:{derivationPath:e.derivationPath,message:e.message}})})}getAppConfiguration(){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new d({input:{command:new f,appName:"Solana",requiredUserInteraction:m.None}})})}};s=p([D(),c(0,u(v.Dmk)),c(1,u(v.SessionId))],s);export{s as SolanaAppBinder};
1
+ var v=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var d=(s,e,n,t)=>{for(var i=t>1?void 0:t?g(e,n):e,p=s.length-1,a;p>=0;p--)(a=s[p])&&(i=(t?a(e,n,i):a(i))||i);return t&&i&&v(e,n,i),i},c=(s,e)=>(n,t)=>e(n,t,s);import{CallTaskInAppDeviceAction as D,SendCommandInAppDeviceAction as m,UserInteractionRequired as o}from"@ledgerhq/device-management-kit";import{inject as A,injectable as k}from"inversify";import{SendSignMessageTask as f}from"../app-binder/task/SendSignMessageTask";import{externalTypes as u}from"../externalTypes";import{GetAppConfigurationCommand as I}from"./command/GetAppConfigurationCommand";import{GetPubKeyCommand as T}from"./command/GetPubKeyCommand";import{SignTransactionDeviceAction as h}from"./device-action/SignTransactionDeviceAction";let r=class{constructor(e,n){this.dmk=e;this.sessionId=n}getAddress(e){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new m({input:{command:new T(e),appName:"Solana",requiredUserInteraction:e.checkOnDevice?o.VerifyAddress:o.None,skipOpenApp:e.skipOpenApp}})})}signTransaction(e){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new h({input:{derivationPath:e.derivationPath,transaction:e.transaction,skipOpenApp:e.skipOpenApp}})})}signMessage(e){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new D({input:{task:async n=>new f(n,{derivationPath:e.derivationPath,sendingData:new TextEncoder().encode(e.message)}).run(),appName:"Solana",requiredUserInteraction:o.SignPersonalMessage,skipOpenApp:e.skipOpenApp}})})}getAppConfiguration(){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new m({input:{command:new I,appName:"Solana",requiredUserInteraction:o.None,skipOpenApp:!1}})})}};r=d([k(),c(0,A(u.Dmk)),c(1,A(u.SessionId))],r);export{r as SolanaAppBinder};
2
2
  //# sourceMappingURL=SolanaAppBinder.js.map