@ledgerhq/ledger-wallet-provider-core 1.3.2 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (322) hide show
  1. package/dist/api/LedgerButtonCore.d.ts +39 -22
  2. package/dist/api/LedgerButtonCore.d.ts.map +1 -1
  3. package/dist/api/blockchain-provider/model/BlockchainProvider.d.ts +30 -0
  4. package/dist/api/blockchain-provider/model/BlockchainProvider.d.ts.map +1 -0
  5. package/dist/api/blockchain-provider/model/CoreFacade.d.ts +52 -0
  6. package/dist/api/blockchain-provider/model/CoreFacade.d.ts.map +1 -0
  7. package/dist/api/blockchain-provider/model/types.d.ts +94 -0
  8. package/dist/api/blockchain-provider/model/types.d.ts.map +1 -0
  9. package/dist/api/errors/DeviceErrors.d.ts +14 -0
  10. package/dist/api/errors/DeviceErrors.d.ts.map +1 -1
  11. package/dist/api/errors/DeviceFlowErrors.d.ts +27 -0
  12. package/dist/api/errors/DeviceFlowErrors.d.ts.map +1 -0
  13. package/dist/api/errors/ProviderErrors.d.ts +10 -0
  14. package/dist/api/errors/ProviderErrors.d.ts.map +1 -0
  15. package/dist/api/errors/index.d.ts +1 -0
  16. package/dist/api/errors/index.d.ts.map +1 -1
  17. package/dist/api/index.d.ts +10 -3
  18. package/dist/api/index.d.ts.map +1 -1
  19. package/dist/api/model/ButtonCoreContext.d.ts +39 -1
  20. package/dist/api/model/ButtonCoreContext.d.ts.map +1 -1
  21. package/dist/api/model/blockchain/GasFee.d.ts +18 -0
  22. package/dist/api/model/blockchain/GasFee.d.ts.map +1 -0
  23. package/dist/api/model/blockchain/ProviderAccount.d.ts +16 -0
  24. package/dist/api/model/blockchain/ProviderAccount.d.ts.map +1 -0
  25. package/dist/api/model/blockchain/ProviderLogger.d.ts +16 -0
  26. package/dist/api/model/blockchain/ProviderLogger.d.ts.map +1 -0
  27. package/dist/api/model/dappConfig/BlockchainConfig.d.ts +31 -0
  28. package/dist/api/model/dappConfig/BlockchainConfig.d.ts.map +1 -0
  29. package/dist/api/model/eip/EIPTypes.d.ts +1 -18
  30. package/dist/api/model/eip/EIPTypes.d.ts.map +1 -1
  31. package/dist/api/model/index.d.ts +2 -0
  32. package/dist/api/model/index.d.ts.map +1 -1
  33. package/dist/api/model/signing/SignFlowStatus.d.ts +1 -1
  34. package/dist/api/model/signing/SignFlowStatus.d.ts.map +1 -1
  35. package/dist/api/model/signing/SignedTransaction.d.ts +34 -1
  36. package/dist/api/model/signing/SignedTransaction.d.ts.map +1 -1
  37. package/dist/api/model/signing/assertSignedResultRegistry.d.ts +19 -0
  38. package/dist/api/model/signing/assertSignedResultRegistry.d.ts.map +1 -0
  39. package/dist/api/model/signing/solana/SignSolanaMessageParams.d.ts +14 -0
  40. package/dist/api/model/signing/solana/SignSolanaMessageParams.d.ts.map +1 -0
  41. package/dist/api/model/solana/SolanaTypes.d.ts +1 -1
  42. package/dist/api/model/solana/SolanaTypes.d.ts.map +1 -1
  43. package/dist/api/utils/index.d.ts +2 -2
  44. package/dist/api/utils/index.d.ts.map +1 -1
  45. package/dist/index.js +55701 -42575
  46. package/dist/internal/account/accountModule.d.ts.map +1 -1
  47. package/dist/internal/account/accountModuleTypes.d.ts +2 -1
  48. package/dist/internal/account/accountModuleTypes.d.ts.map +1 -1
  49. package/dist/internal/account/model/error.d.ts +1 -1
  50. package/dist/internal/account/model/error.d.ts.map +1 -1
  51. package/dist/internal/account/service/AccountService.d.ts +2 -2
  52. package/dist/internal/account/service/AccountService.d.ts.map +1 -1
  53. package/dist/internal/account/service/DefaultAccountService.d.ts +3 -4
  54. package/dist/internal/account/service/DefaultAccountService.d.ts.map +1 -1
  55. package/dist/internal/account/use-case/HydrateAccountWithBalanceUseCase.d.ts +4 -1
  56. package/dist/internal/account/use-case/HydrateAccountWithBalanceUseCase.d.ts.map +1 -1
  57. package/dist/internal/account/use-case/fetchAccountsWithBalanceUseCase.d.ts +5 -1
  58. package/dist/internal/account/use-case/fetchAccountsWithBalanceUseCase.d.ts.map +1 -1
  59. package/dist/internal/account/use-case/fetchSelectedAccountUseCase.d.ts +2 -1
  60. package/dist/internal/account/use-case/fetchSelectedAccountUseCase.d.ts.map +1 -1
  61. package/dist/internal/account/use-case/filterAccountsByFamilyUseCase.d.ts +11 -0
  62. package/dist/internal/account/use-case/filterAccountsByFamilyUseCase.d.ts.map +1 -0
  63. package/dist/internal/account/use-case/hydrateAccountWithFiatUseCase.d.ts.map +1 -1
  64. package/dist/internal/account/use-case/observeAccountsWithFiatUseCase.d.ts +24 -0
  65. package/dist/internal/account/use-case/observeAccountsWithFiatUseCase.d.ts.map +1 -0
  66. package/dist/internal/backend/BackendService.d.ts +1 -0
  67. package/dist/internal/backend/BackendService.d.ts.map +1 -1
  68. package/dist/internal/backend/DefaultBackendService.d.ts +29 -0
  69. package/dist/internal/backend/DefaultBackendService.d.ts.map +1 -1
  70. package/dist/internal/backend/model/trackEvent.d.ts +25 -1
  71. package/dist/internal/backend/model/trackEvent.d.ts.map +1 -1
  72. package/dist/internal/backend/types.d.ts +23 -6
  73. package/dist/internal/backend/types.d.ts.map +1 -1
  74. package/dist/internal/backend/utils.d.ts +5 -0
  75. package/dist/internal/backend/utils.d.ts.map +1 -0
  76. package/dist/internal/balance/datasource/cal/DefaultCalDataSource.d.ts.map +1 -1
  77. package/dist/internal/blockchain-provider/blockchainProviderModule.d.ts +3 -0
  78. package/dist/internal/blockchain-provider/blockchainProviderModule.d.ts.map +1 -0
  79. package/dist/internal/blockchain-provider/blockchainProviderModuleTypes.d.ts +5 -0
  80. package/dist/internal/blockchain-provider/blockchainProviderModuleTypes.d.ts.map +1 -0
  81. package/dist/internal/blockchain-provider/service/BlockchainProviderManager.d.ts +21 -0
  82. package/dist/internal/blockchain-provider/service/BlockchainProviderManager.d.ts.map +1 -0
  83. package/dist/internal/blockchain-provider/service/CoreFacadeService.d.ts +24 -0
  84. package/dist/internal/blockchain-provider/service/CoreFacadeService.d.ts.map +1 -0
  85. package/dist/internal/blockchain-provider/service/DefaultBlockchainProviderManager.d.ts +28 -0
  86. package/dist/internal/blockchain-provider/service/DefaultBlockchainProviderManager.d.ts.map +1 -0
  87. package/dist/internal/blockchain-provider/service/DefaultCoreFacadeService.d.ts +70 -0
  88. package/dist/internal/blockchain-provider/service/DefaultCoreFacadeService.d.ts.map +1 -0
  89. package/dist/internal/blockchain-provider/utils/waitForDeviceSession.d.ts +17 -0
  90. package/dist/internal/blockchain-provider/utils/waitForDeviceSession.d.ts.map +1 -0
  91. package/dist/internal/blockchain-provider/wallet-provider/ledgerProviderIcon.d.ts +10 -0
  92. package/dist/internal/blockchain-provider/wallet-provider/ledgerProviderIcon.d.ts.map +1 -0
  93. package/dist/internal/context/DefaultContextService.d.ts +17 -0
  94. package/dist/internal/context/DefaultContextService.d.ts.map +1 -1
  95. package/dist/internal/context/model/ContextEvent.d.ts +13 -0
  96. package/dist/internal/context/model/ContextEvent.d.ts.map +1 -1
  97. package/dist/internal/currency/currencyUtils.d.ts +6 -6
  98. package/dist/internal/currency/currencyUtils.d.ts.map +1 -1
  99. package/dist/internal/dAppConfig/di/dAppConfigModule.d.ts.map +1 -1
  100. package/dist/internal/dAppConfig/v1/dAppConfigTypes.d.ts +4 -0
  101. package/dist/internal/dAppConfig/v1/dAppConfigTypes.d.ts.map +1 -0
  102. package/dist/internal/dAppConfig/v1/di/bindDAppConfigV1.d.ts +6 -0
  103. package/dist/internal/dAppConfig/v1/di/bindDAppConfigV1.d.ts.map +1 -0
  104. package/dist/internal/dAppConfig/v1/di/dAppConfigV1ModuleTypes.d.ts +4 -0
  105. package/dist/internal/dAppConfig/v1/di/dAppConfigV1ModuleTypes.d.ts.map +1 -0
  106. package/dist/internal/dAppConfig/v1/service/DAppConfigService.d.ts.map +1 -0
  107. package/dist/internal/dAppConfig/{service → v1/service}/DefaultDAppConfigService.d.ts +2 -2
  108. package/dist/internal/dAppConfig/v1/service/DefaultDAppConfigService.d.ts.map +1 -0
  109. package/dist/internal/dAppConfig/v1/service/StubDAppConfig.d.ts.map +1 -0
  110. package/dist/internal/dAppConfig/v2/datasource/DAppConfigV2DataSource.d.ts +5 -0
  111. package/dist/internal/dAppConfig/v2/datasource/DAppConfigV2DataSource.d.ts.map +1 -0
  112. package/dist/internal/dAppConfig/v2/datasource/DefaultDAppConfigV2DataSource.d.ts +12 -0
  113. package/dist/internal/dAppConfig/v2/datasource/DefaultDAppConfigV2DataSource.d.ts.map +1 -0
  114. package/dist/internal/dAppConfig/v2/datasource/StubDAppConfigV2DataSource.d.ts +9 -0
  115. package/dist/internal/dAppConfig/v2/datasource/StubDAppConfigV2DataSource.d.ts.map +1 -0
  116. package/dist/internal/dAppConfig/v2/di/bindDAppConfigV2.d.ts +3 -0
  117. package/dist/internal/dAppConfig/v2/di/bindDAppConfigV2.d.ts.map +1 -0
  118. package/dist/internal/dAppConfig/v2/di/dAppConfigV2ModuleTypes.d.ts +5 -0
  119. package/dist/internal/dAppConfig/v2/di/dAppConfigV2ModuleTypes.d.ts.map +1 -0
  120. package/dist/internal/dAppConfig/v2/model/dAppConfigV2Types.d.ts +12 -0
  121. package/dist/internal/dAppConfig/v2/model/dAppConfigV2Types.d.ts.map +1 -0
  122. package/dist/internal/dAppConfig/v2/use-case/GetDAppConfigV2UseCase.d.ts +11 -0
  123. package/dist/internal/dAppConfig/v2/use-case/GetDAppConfigV2UseCase.d.ts.map +1 -0
  124. package/dist/internal/device/__tests__/mocks.d.ts +3 -1
  125. package/dist/internal/device/__tests__/mocks.d.ts.map +1 -1
  126. package/dist/internal/device/model/errors.d.ts +2 -20
  127. package/dist/internal/device/model/errors.d.ts.map +1 -1
  128. package/dist/internal/device/use-case/ConnectDevice.d.ts +3 -0
  129. package/dist/internal/device/use-case/ConnectDevice.d.ts.map +1 -1
  130. package/dist/internal/event-tracking/ErrorTrackingUtils.d.ts.map +1 -1
  131. package/dist/internal/event-tracking/EventTrackingUtils.d.ts +12 -0
  132. package/dist/internal/event-tracking/EventTrackingUtils.d.ts.map +1 -1
  133. package/dist/internal/event-tracking/config/ErrorTrackingConfig.d.ts +1 -1
  134. package/dist/internal/event-tracking/config/ErrorTrackingConfig.d.ts.map +1 -1
  135. package/dist/internal/event-tracking/eventTrackingModule.d.ts.map +1 -1
  136. package/dist/internal/event-tracking/eventTrackingModuleTypes.d.ts +1 -0
  137. package/dist/internal/event-tracking/eventTrackingModuleTypes.d.ts.map +1 -1
  138. package/dist/internal/event-tracking/usecase/TrackViewAllTransactions.d.ts +21 -0
  139. package/dist/internal/event-tracking/usecase/TrackViewAllTransactions.d.ts.map +1 -0
  140. package/dist/internal/evm-provider/EvmBlockchainProvider.d.ts +27 -0
  141. package/dist/internal/evm-provider/EvmBlockchainProvider.d.ts.map +1 -0
  142. package/dist/internal/evm-provider/EvmWalletProvider.d.ts +18 -0
  143. package/dist/internal/evm-provider/EvmWalletProvider.d.ts.map +1 -0
  144. package/dist/internal/evm-provider/evmProviderModule.d.ts +7 -5
  145. package/dist/internal/evm-provider/evmProviderModule.d.ts.map +1 -1
  146. package/dist/internal/evm-provider/evmProviderModuleTypes.d.ts +6 -2
  147. package/dist/internal/evm-provider/evmProviderModuleTypes.d.ts.map +1 -1
  148. package/dist/internal/evm-provider/ledger-eip1193/LedgerEIP1193Provider.d.ts +91 -0
  149. package/dist/internal/evm-provider/ledger-eip1193/LedgerEIP1193Provider.d.ts.map +1 -0
  150. package/dist/internal/evm-provider/ledger-eip1193/device-action/SignPersonalMessageFlowDeviceAction.d.ts.map +1 -0
  151. package/dist/internal/evm-provider/ledger-eip1193/device-action/SignPersonalMessageFlowDeviceActionTypes.d.ts.map +1 -0
  152. package/dist/internal/evm-provider/ledger-eip1193/device-action/__tests__/SignPersonalMessageFlowDeviceAction.mock.d.ts.map +1 -0
  153. package/dist/internal/evm-provider/ledger-eip1193/device-action/__tests__/SignPersonalMessageFlowDeviceAction.utils.d.ts.map +1 -0
  154. package/dist/internal/evm-provider/ledger-eip1193/gas-fee/DefaultGasFeeEstimationService.d.ts +16 -0
  155. package/dist/internal/evm-provider/ledger-eip1193/gas-fee/DefaultGasFeeEstimationService.d.ts.map +1 -0
  156. package/dist/internal/evm-provider/ledger-eip1193/gas-fee/GasFeeEstimationService.d.ts +6 -0
  157. package/dist/internal/evm-provider/ledger-eip1193/gas-fee/GasFeeEstimationService.d.ts.map +1 -0
  158. package/dist/internal/evm-provider/ledger-eip1193/model/EvmSignedResult.d.ts +14 -0
  159. package/dist/internal/evm-provider/ledger-eip1193/model/EvmSignedResult.d.ts.map +1 -0
  160. package/dist/internal/evm-provider/{transaction → ledger-eip1193/transaction}/TransactionHelper.d.ts +2 -2
  161. package/dist/internal/evm-provider/ledger-eip1193/transaction/TransactionHelper.d.ts.map +1 -0
  162. package/dist/internal/evm-provider/ledger-eip1193/use-case/BroadcastTransaction.d.ts +13 -0
  163. package/dist/internal/evm-provider/ledger-eip1193/use-case/BroadcastTransaction.d.ts.map +1 -0
  164. package/dist/internal/evm-provider/ledger-eip1193/use-case/BuildContextModule.d.ts +11 -0
  165. package/dist/internal/evm-provider/ledger-eip1193/use-case/BuildContextModule.d.ts.map +1 -0
  166. package/dist/internal/evm-provider/ledger-eip1193/use-case/BuildEthSigner.d.ts +15 -0
  167. package/dist/internal/evm-provider/ledger-eip1193/use-case/BuildEthSigner.d.ts.map +1 -0
  168. package/dist/internal/evm-provider/ledger-eip1193/use-case/SignPersonalMessageUseCase.d.ts +19 -0
  169. package/dist/internal/evm-provider/ledger-eip1193/use-case/SignPersonalMessageUseCase.d.ts.map +1 -0
  170. package/dist/internal/evm-provider/ledger-eip1193/use-case/SignRawTransaction.d.ts +22 -0
  171. package/dist/internal/evm-provider/ledger-eip1193/use-case/SignRawTransaction.d.ts.map +1 -0
  172. package/dist/internal/evm-provider/ledger-eip1193/use-case/SignTransaction.d.ts +19 -0
  173. package/dist/internal/evm-provider/ledger-eip1193/use-case/SignTransaction.d.ts.map +1 -0
  174. package/dist/internal/evm-provider/ledger-eip1193/use-case/SignTypedData.d.ts +20 -0
  175. package/dist/internal/evm-provider/ledger-eip1193/use-case/SignTypedData.d.ts.map +1 -0
  176. package/dist/internal/evm-provider/{utils → ledger-eip1193/utils}/chainUtils.d.ts +1 -0
  177. package/dist/internal/evm-provider/ledger-eip1193/utils/chainUtils.d.ts.map +1 -0
  178. package/dist/internal/evm-provider/ledger-eip1193/utils/derivationUtils.d.ts +3 -0
  179. package/dist/internal/evm-provider/ledger-eip1193/utils/derivationUtils.d.ts.map +1 -0
  180. package/dist/internal/evm-provider/ledger-eip1193/utils/isBlockingRequestMethod.d.ts.map +1 -0
  181. package/dist/internal/evm-provider/ledger-eip1193/utils/resolveRpcRoute.d.ts +20 -0
  182. package/dist/internal/evm-provider/ledger-eip1193/utils/resolveRpcRoute.d.ts.map +1 -0
  183. package/dist/internal/evm-provider/ledger-eip1193/utils/supportedChains.d.ts.map +1 -0
  184. package/dist/internal/evm-provider/ledger-eip1193/utils/supportedRpcMethods.d.ts.map +1 -0
  185. package/dist/internal/navigation/navigationModule.d.ts +3 -0
  186. package/dist/internal/navigation/navigationModule.d.ts.map +1 -0
  187. package/dist/internal/navigation/navigationModuleTypes.d.ts +4 -0
  188. package/dist/internal/navigation/navigationModuleTypes.d.ts.map +1 -0
  189. package/dist/internal/navigation/service/NavigationIntentService.d.ts +16 -0
  190. package/dist/internal/navigation/service/NavigationIntentService.d.ts.map +1 -0
  191. package/dist/internal/pending-transaction/controller/DefaultPendingTransactionController.d.ts.map +1 -1
  192. package/dist/internal/pending-transaction/use-case/TrackBroadcastedTransactionUseCase.d.ts +2 -1
  193. package/dist/internal/pending-transaction/use-case/TrackBroadcastedTransactionUseCase.d.ts.map +1 -1
  194. package/dist/internal/pending-transaction/utils/buildExplorerTransactionUrl.d.ts.map +1 -0
  195. package/dist/internal/solana-provider/SolanaBlockchainProvider.d.ts +25 -0
  196. package/dist/internal/solana-provider/SolanaBlockchainProvider.d.ts.map +1 -0
  197. package/dist/internal/solana-provider/SolanaWalletProvider.d.ts +16 -0
  198. package/dist/internal/solana-provider/SolanaWalletProvider.d.ts.map +1 -0
  199. package/dist/internal/solana-provider/device-action/SignSolanaMessageFlowDeviceAction.d.ts +14 -0
  200. package/dist/internal/solana-provider/device-action/SignSolanaMessageFlowDeviceAction.d.ts.map +1 -0
  201. package/dist/internal/solana-provider/device-action/SignSolanaMessageFlowDeviceActionTypes.d.ts +34 -0
  202. package/dist/internal/solana-provider/device-action/SignSolanaMessageFlowDeviceActionTypes.d.ts.map +1 -0
  203. package/dist/internal/solana-provider/device-action/__tests__/SignSolanaMessageFlowDeviceAction.mock.d.ts +23 -0
  204. package/dist/internal/solana-provider/device-action/__tests__/SignSolanaMessageFlowDeviceAction.mock.d.ts.map +1 -0
  205. package/dist/internal/solana-provider/device-action/__tests__/SignSolanaMessageFlowDeviceAction.utils.d.ts +9 -0
  206. package/dist/internal/solana-provider/device-action/__tests__/SignSolanaMessageFlowDeviceAction.utils.d.ts.map +1 -0
  207. package/dist/internal/solana-provider/ledger-solana-wallet/LedgerSolanaWallet.d.ts +79 -0
  208. package/dist/internal/solana-provider/ledger-solana-wallet/LedgerSolanaWallet.d.ts.map +1 -0
  209. package/dist/internal/solana-provider/{rpc → ledger-solana-wallet/rpc}/datasource/SolanaRemoteDatasource.d.ts +4 -4
  210. package/dist/internal/solana-provider/ledger-solana-wallet/rpc/datasource/SolanaRemoteDatasource.d.ts.map +1 -0
  211. package/dist/internal/solana-provider/{rpc → ledger-solana-wallet/rpc}/datasource/StubSolanaRemoteDatasource.d.ts +4 -4
  212. package/dist/internal/solana-provider/ledger-solana-wallet/rpc/datasource/StubSolanaRemoteDatasource.d.ts.map +1 -0
  213. package/dist/internal/solana-provider/{utils → ledger-solana-wallet/utils}/clusterUtils.d.ts +2 -1
  214. package/dist/internal/solana-provider/ledger-solana-wallet/utils/clusterUtils.d.ts.map +1 -0
  215. package/dist/internal/solana-provider/ledger-solana-wallet/utils/derivationUtils.d.ts +3 -0
  216. package/dist/internal/solana-provider/ledger-solana-wallet/utils/derivationUtils.d.ts.map +1 -0
  217. package/dist/internal/solana-provider/{supportedClusters.d.ts → ledger-solana-wallet/utils/supportedClusters.d.ts} +1 -1
  218. package/dist/internal/solana-provider/ledger-solana-wallet/utils/supportedClusters.d.ts.map +1 -0
  219. package/dist/internal/solana-provider/solanaProviderModule.d.ts +8 -1
  220. package/dist/internal/solana-provider/solanaProviderModule.d.ts.map +1 -1
  221. package/dist/internal/solana-provider/solanaProviderModuleTypes.d.ts +3 -0
  222. package/dist/internal/solana-provider/solanaProviderModuleTypes.d.ts.map +1 -1
  223. package/dist/internal/solana-provider/use-case/SignSolanaMessage.d.ts +17 -0
  224. package/dist/internal/solana-provider/use-case/SignSolanaMessage.d.ts.map +1 -0
  225. package/dist/internal/solana-provider/use-case/solanaSignFlowUtils.d.ts +33 -0
  226. package/dist/internal/solana-provider/use-case/solanaSignFlowUtils.d.ts.map +1 -0
  227. package/dist/internal/solana-provider/utils/registerWalletStandard.d.ts +16 -0
  228. package/dist/internal/solana-provider/utils/registerWalletStandard.d.ts.map +1 -0
  229. package/dist/internal/storage/DefaultStorageService.d.ts +11 -3
  230. package/dist/internal/storage/DefaultStorageService.d.ts.map +1 -1
  231. package/dist/internal/storage/StorageService.d.ts +10 -3
  232. package/dist/internal/storage/StorageService.d.ts.map +1 -1
  233. package/dist/internal/storage/model/FeatureFlags.d.ts +5 -0
  234. package/dist/internal/storage/model/FeatureFlags.d.ts.map +1 -0
  235. package/dist/internal/storage/model/constant.d.ts +5 -0
  236. package/dist/internal/storage/model/constant.d.ts.map +1 -1
  237. package/dist/internal/storage/usecases/MigrateDbUseCase/MigrateDbUseCase.d.ts +6 -0
  238. package/dist/internal/storage/usecases/MigrateDbUseCase/MigrateDbUseCase.d.ts.map +1 -1
  239. package/dist/internal/storage/usecases/MigrateDbUseCase/MigrateDbUseCase.mock.d.ts +2 -0
  240. package/dist/internal/storage/usecases/MigrateDbUseCase/MigrateDbUseCase.mock.d.ts.map +1 -1
  241. package/dist/internal/transaction-history/datasource/coinService/DefaultTransactionHistoryDataSource.d.ts +3 -2
  242. package/dist/internal/transaction-history/datasource/coinService/DefaultTransactionHistoryDataSource.d.ts.map +1 -1
  243. package/dist/internal/transaction-history/use-case/FetchTransactionHistoryUseCase.d.ts +0 -1
  244. package/dist/internal/transaction-history/use-case/FetchTransactionHistoryUseCase.d.ts.map +1 -1
  245. package/dist/internal/transaction-history/utils/normalizeAddressForCurrency.d.ts +13 -0
  246. package/dist/internal/transaction-history/utils/normalizeAddressForCurrency.d.ts.map +1 -0
  247. package/dist/internal/transaction-history/utils/resolveNetworkSlug.d.ts +12 -0
  248. package/dist/internal/transaction-history/utils/resolveNetworkSlug.d.ts.map +1 -0
  249. package/dist/schemas/event-schemas.d.ts +60 -0
  250. package/dist/schemas/event-schemas.d.ts.map +1 -1
  251. package/package.json +10 -5
  252. package/dist/internal/account/AccountUtils.d.ts +0 -3
  253. package/dist/internal/account/AccountUtils.d.ts.map +0 -1
  254. package/dist/internal/account/use-case/getDetailedSelectedAccountUseCase.d.ts +0 -12
  255. package/dist/internal/account/use-case/getDetailedSelectedAccountUseCase.d.ts.map +0 -1
  256. package/dist/internal/dAppConfig/dAppConfigTypes.d.ts +0 -4
  257. package/dist/internal/dAppConfig/dAppConfigTypes.d.ts.map +0 -1
  258. package/dist/internal/dAppConfig/di/dAppConfigModuleTypes.d.ts +0 -4
  259. package/dist/internal/dAppConfig/di/dAppConfigModuleTypes.d.ts.map +0 -1
  260. package/dist/internal/dAppConfig/service/DAppConfigService.d.ts.map +0 -1
  261. package/dist/internal/dAppConfig/service/DefaultDAppConfigService.d.ts.map +0 -1
  262. package/dist/internal/dAppConfig/service/StubDAppConfig.d.ts.map +0 -1
  263. package/dist/internal/device/use-case/device-action/SignPersonalMessageFlowDeviceAction.d.ts.map +0 -1
  264. package/dist/internal/device/use-case/device-action/SignPersonalMessageFlowDeviceActionTypes.d.ts.map +0 -1
  265. package/dist/internal/device/use-case/device-action/__tests__/SignPersonalMessageFlowDeviceAction.mock.d.ts.map +0 -1
  266. package/dist/internal/device/use-case/device-action/__tests__/SignPersonalMessageFlowDeviceAction.utils.d.ts.map +0 -1
  267. package/dist/internal/evm-provider/EvmProviderUI.d.ts +0 -14
  268. package/dist/internal/evm-provider/EvmProviderUI.d.ts.map +0 -1
  269. package/dist/internal/evm-provider/LedgerEIP1193Provider.d.ts +0 -82
  270. package/dist/internal/evm-provider/LedgerEIP1193Provider.d.ts.map +0 -1
  271. package/dist/internal/evm-provider/gas-fee/DefaultGasFeeEstimationService.d.ts +0 -22
  272. package/dist/internal/evm-provider/gas-fee/DefaultGasFeeEstimationService.d.ts.map +0 -1
  273. package/dist/internal/evm-provider/gas-fee/GasFeeEstimationService.d.ts +0 -6
  274. package/dist/internal/evm-provider/gas-fee/GasFeeEstimationService.d.ts.map +0 -1
  275. package/dist/internal/evm-provider/isBlockingRequestMethod.d.ts.map +0 -1
  276. package/dist/internal/evm-provider/jsonrpc/datasource/LedgerRemoteDatasource.d.ts +0 -15
  277. package/dist/internal/evm-provider/jsonrpc/datasource/LedgerRemoteDatasource.d.ts.map +0 -1
  278. package/dist/internal/evm-provider/jsonrpc/datasource/StubLedgerRemoteDatasource.d.ts +0 -14
  279. package/dist/internal/evm-provider/jsonrpc/datasource/StubLedgerRemoteDatasource.d.ts.map +0 -1
  280. package/dist/internal/evm-provider/jsonrpc/use-case/JSONRPCRequest.d.ts +0 -11
  281. package/dist/internal/evm-provider/jsonrpc/use-case/JSONRPCRequest.d.ts.map +0 -1
  282. package/dist/internal/evm-provider/supportedChains.d.ts.map +0 -1
  283. package/dist/internal/evm-provider/supportedRpcMethods.d.ts.map +0 -1
  284. package/dist/internal/evm-provider/transaction/TransactionHelper.d.ts.map +0 -1
  285. package/dist/internal/evm-provider/use-case/BroadcastTransaction.d.ts +0 -19
  286. package/dist/internal/evm-provider/use-case/BroadcastTransaction.d.ts.map +0 -1
  287. package/dist/internal/evm-provider/use-case/SignPersonalMessageUseCase.d.ts +0 -23
  288. package/dist/internal/evm-provider/use-case/SignPersonalMessageUseCase.d.ts.map +0 -1
  289. package/dist/internal/evm-provider/use-case/SignRawTransaction.d.ts +0 -31
  290. package/dist/internal/evm-provider/use-case/SignRawTransaction.d.ts.map +0 -1
  291. package/dist/internal/evm-provider/use-case/SignTransaction.d.ts +0 -22
  292. package/dist/internal/evm-provider/use-case/SignTransaction.d.ts.map +0 -1
  293. package/dist/internal/evm-provider/use-case/SignTypedData.d.ts +0 -27
  294. package/dist/internal/evm-provider/use-case/SignTypedData.d.ts.map +0 -1
  295. package/dist/internal/evm-provider/utils/chainUtils.d.ts.map +0 -1
  296. package/dist/internal/solana-provider/SolanaProviderUI.d.ts +0 -11
  297. package/dist/internal/solana-provider/SolanaProviderUI.d.ts.map +0 -1
  298. package/dist/internal/solana-provider/rpc/datasource/SolanaRemoteDatasource.d.ts.map +0 -1
  299. package/dist/internal/solana-provider/rpc/datasource/StubSolanaRemoteDatasource.d.ts.map +0 -1
  300. package/dist/internal/solana-provider/supportedClusters.d.ts.map +0 -1
  301. package/dist/internal/solana-provider/utils/clusterUtils.d.ts.map +0 -1
  302. package/dist/internal/transaction/service/DefaultTransactionService.d.ts +0 -23
  303. package/dist/internal/transaction/service/DefaultTransactionService.d.ts.map +0 -1
  304. package/dist/internal/transaction/service/TransactionService.d.ts +0 -21
  305. package/dist/internal/transaction/service/TransactionService.d.ts.map +0 -1
  306. package/dist/internal/transaction/transactionModule.d.ts +0 -7
  307. package/dist/internal/transaction/transactionModule.d.ts.map +0 -1
  308. package/dist/internal/transaction/transactionModuleTypes.d.ts +0 -4
  309. package/dist/internal/transaction/transactionModuleTypes.d.ts.map +0 -1
  310. package/dist/internal/transaction/types.d.ts +0 -7
  311. package/dist/internal/transaction/types.d.ts.map +0 -1
  312. package/dist/internal/transaction/utils/buildExplorerTransactionUrl.d.ts.map +0 -1
  313. /package/dist/internal/dAppConfig/{service → v1/service}/DAppConfigService.d.ts +0 -0
  314. /package/dist/internal/dAppConfig/{service → v1/service}/StubDAppConfig.d.ts +0 -0
  315. /package/dist/internal/{device/use-case → evm-provider/ledger-eip1193}/device-action/SignPersonalMessageFlowDeviceAction.d.ts +0 -0
  316. /package/dist/internal/{device/use-case → evm-provider/ledger-eip1193}/device-action/SignPersonalMessageFlowDeviceActionTypes.d.ts +0 -0
  317. /package/dist/internal/{device/use-case → evm-provider/ledger-eip1193}/device-action/__tests__/SignPersonalMessageFlowDeviceAction.mock.d.ts +0 -0
  318. /package/dist/internal/{device/use-case → evm-provider/ledger-eip1193}/device-action/__tests__/SignPersonalMessageFlowDeviceAction.utils.d.ts +0 -0
  319. /package/dist/internal/evm-provider/{isBlockingRequestMethod.d.ts → ledger-eip1193/utils/isBlockingRequestMethod.d.ts} +0 -0
  320. /package/dist/internal/evm-provider/{supportedChains.d.ts → ledger-eip1193/utils/supportedChains.d.ts} +0 -0
  321. /package/dist/internal/evm-provider/{supportedRpcMethods.d.ts → ledger-eip1193/utils/supportedRpcMethods.d.ts} +0 -0
  322. /package/dist/internal/{transaction → pending-transaction}/utils/buildExplorerTransactionUrl.d.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildExplorerTransactionUrl.d.ts","sourceRoot":"","sources":["../../../../src/internal/pending-transaction/utils/buildExplorerTransactionUrl.ts"],"names":[],"mappings":"AAAA,wBAAgB,2BAA2B,CACzC,8BAA8B,EAAE,MAAM,GAAG,SAAS,EAClD,IAAI,EAAE,MAAM,GACX,MAAM,GAAG,IAAI,CAMf"}
@@ -0,0 +1,25 @@
1
+ import { BlockchainProvider } from '../../api/blockchain-provider/model/BlockchainProvider.js';
2
+ import { CoreFacade } from '../../api/blockchain-provider/model/CoreFacade.js';
3
+ import { BlockchainFamily } from '../../api/blockchain-provider/model/types.js';
4
+ import { ProviderAccount } from '../../api/model/blockchain/ProviderAccount.js';
5
+ import { BlockchainConfig } from '../../api/model/dappConfig/BlockchainConfig.js';
6
+ /**
7
+ * Solana {@link BlockchainProvider}: entry point for the Solana family.
8
+ *
9
+ * Created by {@link DefaultBlockchainProviderManager} with core and dApp
10
+ * config; wiring happens in {@link injectWalletProviders}.
11
+ */
12
+ export declare class SolanaBlockchainProvider implements BlockchainProvider {
13
+ private readonly core;
14
+ readonly dappConfig: BlockchainConfig;
15
+ readonly family: BlockchainFamily;
16
+ private readonly container;
17
+ private wallet?;
18
+ private walletProvider?;
19
+ constructor(core: CoreFacade, dappConfig: BlockchainConfig);
20
+ injectWalletProviders(): void;
21
+ setSelectedAccount(account: ProviderAccount | undefined): void;
22
+ setNetwork(chainId: number): void;
23
+ isSupportedCurrency(currencyId: string): boolean;
24
+ }
25
+ //# sourceMappingURL=SolanaBlockchainProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SolanaBlockchainProvider.d.ts","sourceRoot":"","sources":["../../../src/internal/solana-provider/SolanaBlockchainProvider.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2DAA2D,CAAC;AACpG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mDAAmD,CAAC;AACpF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+CAA+C,CAAC;AACrF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gDAAgD,CAAC;AAKvF;;;;;GAKG;AACH,qBAAa,wBAAyB,YAAW,kBAAkB;IAQ/D,OAAO,CAAC,QAAQ,CAAC,IAAI;aACL,UAAU,EAAE,gBAAgB;IAR9C,SAAgB,MAAM,EAAE,gBAAgB,CAAY;IAEpD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IACtC,OAAO,CAAC,MAAM,CAAC,CAAqB;IACpC,OAAO,CAAC,cAAc,CAAC,CAAuB;gBAG3B,IAAI,EAAE,UAAU,EACjB,UAAU,EAAE,gBAAgB;IAY9C,qBAAqB,IAAI,IAAI;IAU7B,kBAAkB,CAAC,OAAO,EAAE,eAAe,GAAG,SAAS,GAAG,IAAI;IAI9D,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIjC,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;CAGjD"}
@@ -0,0 +1,16 @@
1
+ import { LedgerSolanaWallet } from './ledger-solana-wallet/LedgerSolanaWallet.js';
2
+ import { BlockchainFamily, WalletProvider } from '../../api/blockchain-provider/model/types.js';
3
+ /**
4
+ * Solana {@link WalletProvider}: registers the {@link LedgerSolanaWallet} via
5
+ * the Wallet Standard and returns a full teardown.
6
+ *
7
+ * Created by {@link SolanaBlockchainProvider}; the wallet instance is an
8
+ * internal implementation detail and is not exposed.
9
+ */
10
+ export declare class SolanaWalletProvider implements WalletProvider {
11
+ private readonly wallet;
12
+ readonly family: BlockchainFamily;
13
+ constructor(wallet: LedgerSolanaWallet);
14
+ init(): () => void;
15
+ }
16
+ //# sourceMappingURL=SolanaWalletProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SolanaWalletProvider.d.ts","sourceRoot":"","sources":["../../../src/internal/solana-provider/SolanaWalletProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAEvF,OAAO,KAAK,EACV,gBAAgB,EAChB,cAAc,EACf,MAAM,8CAA8C,CAAC;AAEtD;;;;;;GAMG;AACH,qBAAa,oBAAqB,YAAW,cAAc;IAG7C,OAAO,CAAC,QAAQ,CAAC,MAAM;IAFnC,SAAgB,MAAM,EAAE,gBAAgB,CAAY;gBAEvB,MAAM,EAAE,kBAAkB;IAEvD,IAAI,IAAI,MAAM,IAAI;CAQnB"}
@@ -0,0 +1,14 @@
1
+ import { DeviceActionStateMachine, InternalApi, XStateDeviceAction } from '@ledgerhq/device-management-kit';
2
+ import { SignSolanaMessageFlowDAError, SignSolanaMessageFlowDAInput, SignSolanaMessageFlowDAIntermediateValue, SignSolanaMessageFlowDAInternalState, SignSolanaMessageFlowDAOutput } from './SignSolanaMessageFlowDeviceActionTypes.js';
3
+ export declare class SignSolanaMessageFlowDeviceAction extends XStateDeviceAction<SignSolanaMessageFlowDAOutput, SignSolanaMessageFlowDAInput, SignSolanaMessageFlowDAError, SignSolanaMessageFlowDAIntermediateValue, SignSolanaMessageFlowDAInternalState> {
4
+ makeStateMachine(internalApi: InternalApi): DeviceActionStateMachine<SignSolanaMessageFlowDAOutput, SignSolanaMessageFlowDAInput, SignSolanaMessageFlowDAError, SignSolanaMessageFlowDAIntermediateValue, SignSolanaMessageFlowDAInternalState>;
5
+ private updateIntermediateValue;
6
+ private addOpenAppResultToInternalState;
7
+ private addGetAddressResultToInternalState;
8
+ private addSignResultToInternalState;
9
+ private verifyAddressMatch;
10
+ private normalizeRejectionError;
11
+ private buildOutput;
12
+ private buildSignFlowStatus;
13
+ }
14
+ //# sourceMappingURL=SignSolanaMessageFlowDeviceAction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SignSolanaMessageFlowDeviceAction.d.ts","sourceRoot":"","sources":["../../../../src/internal/solana-provider/device-action/SignSolanaMessageFlowDeviceAction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,WAAW,EAKhB,kBAAkB,EACnB,MAAM,iCAAiC,CAAC;AAiBzC,OAAO,EACL,KAAK,4BAA4B,EACjC,KAAK,4BAA4B,EACjC,KAAK,wCAAwC,EAC7C,KAAK,oCAAoC,EACzC,KAAK,6BAA6B,EAEnC,MAAM,6CAA6C,CAAC;AAQrD,qBAAa,iCAAkC,SAAQ,kBAAkB,CACvE,6BAA6B,EAC7B,4BAA4B,EAC5B,4BAA4B,EAC5B,wCAAwC,EACxC,oCAAoC,CACrC;IACC,gBAAgB,CACd,WAAW,EAAE,WAAW,GACvB,wBAAwB,CACzB,6BAA6B,EAC7B,4BAA4B,EAC5B,4BAA4B,EAC5B,wCAAwC,EACxC,oCAAoC,CACrC;IAmRD,OAAO,CAAC,uBAAuB;IAe/B,OAAO,CAAC,+BAA+B;IAiBvC,OAAO,CAAC,kCAAkC;IAe1C,OAAO,CAAC,4BAA4B;IA8BpC,OAAO,CAAC,kBAAkB;IAiB1B,OAAO,CAAC,uBAAuB;IAa/B,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,mBAAmB;CAkB5B"}
@@ -0,0 +1,34 @@
1
+ import { CallTaskInAppDAError, DmkError, OpenAppWithDependenciesDAError, OpenAppWithDependenciesDAInput, SendCommandInAppDAError, UnknownDAError, UserInteractionRequired } from '@ledgerhq/device-management-kit';
2
+ import { SolanaAppErrorCodes } from '@ledgerhq/device-signer-kit-solana';
3
+ import { IncorrectSeedError, UserRejectedTransactionError } from '../../../api/errors/DeviceErrors.js';
4
+ import { SignFlowStatus, SignType } from '../../../api/model/signing/SignFlowStatus.js';
5
+ export declare enum SignSolanaMessageFlowDAStep {
6
+ OPEN_APP = "open-app",
7
+ GET_ADDRESS = "get-address",
8
+ VERIFY_ADDRESS = "verify-address",
9
+ SIGN = "sign"
10
+ }
11
+ export type SignSolanaMessageFlowDAOutput = {
12
+ readonly signature: string;
13
+ readonly signedMessage: Uint8Array;
14
+ };
15
+ export type SignSolanaMessageFlowDAInput = {
16
+ readonly signType: SignType;
17
+ readonly derivationPath: string;
18
+ readonly message: Uint8Array;
19
+ readonly expectedAddress: string;
20
+ readonly openAppInput: OpenAppWithDependenciesDAInput;
21
+ };
22
+ export type SignSolanaMessageFlowDAError = OpenAppWithDependenciesDAError | SendCommandInAppDAError<SolanaAppErrorCodes> | CallTaskInAppDAError | IncorrectSeedError | UserRejectedTransactionError | UnknownDAError;
23
+ export type SignSolanaMessageFlowDAIntermediateValue = {
24
+ readonly requiredUserInteraction: UserInteractionRequired;
25
+ readonly step: SignSolanaMessageFlowDAStep;
26
+ readonly signFlowStatus: SignFlowStatus;
27
+ };
28
+ export type SignSolanaMessageFlowDAInternalState = {
29
+ readonly error: (SignSolanaMessageFlowDAError & DmkError) | null;
30
+ readonly address: string | null;
31
+ readonly signature: string | null;
32
+ readonly signedMessage: Uint8Array | null;
33
+ };
34
+ //# sourceMappingURL=SignSolanaMessageFlowDeviceActionTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SignSolanaMessageFlowDeviceActionTypes.d.ts","sourceRoot":"","sources":["../../../../src/internal/solana-provider/device-action/SignSolanaMessageFlowDeviceActionTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,QAAQ,EACR,8BAA8B,EAC9B,8BAA8B,EAC9B,uBAAuB,EACvB,cAAc,EACd,uBAAuB,EACxB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAE9E,OAAO,KAAK,EACV,kBAAkB,EAClB,4BAA4B,EAC7B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EACV,cAAc,EACd,QAAQ,EACT,MAAM,8CAA8C,CAAC;AAEtD,oBAAY,2BAA2B;IACrC,QAAQ,aAAa;IACrB,WAAW,gBAAgB;IAC3B,cAAc,mBAAmB;IACjC,IAAI,SAAS;CACd;AAED,MAAM,MAAM,6BAA6B,GAAG;IAC1C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,EAAE,UAAU,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE,8BAA8B,CAAC;CACvD,CAAC;AAEF,MAAM,MAAM,4BAA4B,GACpC,8BAA8B,GAC9B,uBAAuB,CAAC,mBAAmB,CAAC,GAC5C,oBAAoB,GACpB,kBAAkB,GAClB,4BAA4B,GAC5B,cAAc,CAAC;AAEnB,MAAM,MAAM,wCAAwC,GAAG;IACrD,QAAQ,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;IAC1D,QAAQ,CAAC,IAAI,EAAE,2BAA2B,CAAC;IAC3C,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;CACzC,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAAG;IACjD,QAAQ,CAAC,KAAK,EAAE,CAAC,4BAA4B,GAAG,QAAQ,CAAC,GAAG,IAAI,CAAC;IACjE,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,aAAa,EAAE,UAAU,GAAG,IAAI,CAAC;CAC3C,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { InternalApi } from '@ledgerhq/device-management-kit';
2
+ import { SignSolanaMessageFlowDAInput } from '../SignSolanaMessageFlowDeviceActionTypes.js';
3
+ export declare function makeInternalApiMock(): InternalApi;
4
+ /** The 64-byte ed25519 signature (base58) the flow should extract. */
5
+ export declare const VALID_SIGNATURE_BASE58: string;
6
+ /**
7
+ * The OCM (preamble + content) that was actually signed. These are the bytes
8
+ * the flow should expose as `signedMessage`.
9
+ */
10
+ export declare const SIGNED_MESSAGE_BYTES: Uint8Array<ArrayBuffer>;
11
+ /**
12
+ * A full OCM envelope `[versionByte(0x01)][signature(64)][ocm...]` as returned
13
+ * by the signer kit for the V0/V1/Legacy signing modes.
14
+ */
15
+ export declare const VALID_ENVELOPE_BASE58: string;
16
+ /** A payload that is neither a 64-byte signature nor a valid OCM envelope. */
17
+ export declare const INVALID_SIGNATURE_BASE58: string;
18
+ export declare const DEFAULT_ADDRESS = "So1anaAddr1111111111111111111111111111111111";
19
+ export declare const DEFAULT_INPUT: SignSolanaMessageFlowDAInput;
20
+ export declare function setupOpenAppMock(error?: unknown): void;
21
+ export declare function setupGetAddressMock(address?: string, error?: unknown): void;
22
+ export declare function setupSignMessageMock(signature?: string, error?: unknown): void;
23
+ //# sourceMappingURL=SignSolanaMessageFlowDeviceAction.mock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SignSolanaMessageFlowDeviceAction.mock.d.ts","sourceRoot":"","sources":["../../../../../src/internal/solana-provider/device-action/__tests__/SignSolanaMessageFlowDeviceAction.mock.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,WAAW,EAGjB,MAAM,iCAAiC,CAAC;AAUzC,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,8CAA8C,CAAC;AAEjG,wBAAgB,mBAAmB,IAAI,WAAW,CAmBjD;AAMD,sEAAsE;AACtE,eAAO,MAAM,sBAAsB,QAA0B,CAAC;AAE9D;;;GAGG;AACH,eAAO,MAAM,oBAAoB,yBAG/B,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,qBAAqB,QAEjC,CAAC;AAEF,8EAA8E;AAC9E,eAAO,MAAM,wBAAwB,QAA6B,CAAC;AAEnE,eAAO,MAAM,eAAe,iDAAiD,CAAC;AAE9E,eAAO,MAAM,aAAa,EAAE,4BAM3B,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI,CAwBtD;AAED,wBAAgB,mBAAmB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI,CAqB3E;AAED,wBAAgB,oBAAoB,CAClC,SAAS,CAAC,EAAE,MAAM,EAClB,KAAK,CAAC,EAAE,OAAO,GACd,IAAI,CAyBN"}
@@ -0,0 +1,9 @@
1
+ import { DeviceActionState } from '@ledgerhq/device-management-kit';
2
+ import { Observable } from 'rxjs';
3
+ import { SignSolanaMessageFlowDAError, SignSolanaMessageFlowDAIntermediateValue, SignSolanaMessageFlowDAOutput } from '../SignSolanaMessageFlowDeviceActionTypes.js';
4
+ export type SignSolanaMessageFlowDAState = DeviceActionState<SignSolanaMessageFlowDAOutput, SignSolanaMessageFlowDAError, SignSolanaMessageFlowDAIntermediateValue>;
5
+ export declare const executeUntilStep: <T>(targetStep: number, o: Observable<T>) => Promise<{
6
+ steps: T[];
7
+ error?: Error;
8
+ }>;
9
+ //# sourceMappingURL=SignSolanaMessageFlowDeviceAction.utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SignSolanaMessageFlowDeviceAction.utils.d.ts","sourceRoot":"","sources":["../../../../../src/internal/solana-provider/device-action/__tests__/SignSolanaMessageFlowDeviceAction.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,KAAK,UAAU,EAAqB,MAAM,MAAM,CAAC;AAE1D,OAAO,KAAK,EACV,4BAA4B,EAC5B,wCAAwC,EACxC,6BAA6B,EAC9B,MAAM,8CAA8C,CAAC;AAEtD,MAAM,MAAM,4BAA4B,GAAG,iBAAiB,CAC1D,6BAA6B,EAC7B,4BAA4B,EAC5B,wCAAwC,CACzC,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAU,CAAC,EACtC,YAAY,MAAM,EAClB,GAAG,UAAU,CAAC,CAAC,CAAC,KACf,OAAO,CAAC;IAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CAAE,CAyBpC,CAAC"}
@@ -0,0 +1,79 @@
1
+ import { Wallet, WalletAccount, WalletIcon } from '@wallet-standard/base';
2
+ import { StandardConnectFeature, StandardDisconnectFeature, StandardEventsFeature } from '@wallet-standard/features';
3
+ import { CoreFacade } from '../../../api/blockchain-provider/model/CoreFacade.js';
4
+ import { BlockchainFamily } from '../../../api/blockchain-provider/model/types.js';
5
+ import { ProviderAccount } from '../../../api/model/blockchain/ProviderAccount.js';
6
+ import { SignSolanaMessage } from '../use-case/SignSolanaMessage.js';
7
+ type SolanaSignMessageMethod = (...inputs: readonly {
8
+ account: WalletAccount;
9
+ message: Uint8Array;
10
+ }[]) => Promise<readonly {
11
+ signedMessage: Uint8Array;
12
+ signature: Uint8Array;
13
+ signatureType?: "ed25519";
14
+ }[]>;
15
+ type SolanaSignTransactionMethod = (...inputs: readonly {
16
+ account: WalletAccount;
17
+ transaction: Uint8Array;
18
+ }[]) => Promise<readonly {
19
+ signedTransaction: Uint8Array;
20
+ }[]>;
21
+ type SolanaSignAndSendTransactionMethod = (...inputs: readonly {
22
+ account: WalletAccount;
23
+ transaction: Uint8Array;
24
+ }[]) => Promise<readonly {
25
+ signature: Uint8Array;
26
+ }[]>;
27
+ type SolanaSignFeatures = {
28
+ "solana:signMessage": {
29
+ version: "1.0.0";
30
+ signMessage: SolanaSignMessageMethod;
31
+ };
32
+ "solana:signTransaction": {
33
+ version: "1.0.0";
34
+ supportedTransactionVersions: readonly ("legacy" | 0)[];
35
+ signTransaction: SolanaSignTransactionMethod;
36
+ };
37
+ "solana:signAndSendTransaction": {
38
+ version: "1.0.0";
39
+ supportedTransactionVersions: readonly ("legacy" | 0)[];
40
+ signAndSendTransaction: SolanaSignAndSendTransactionMethod;
41
+ };
42
+ };
43
+ type SolanaWalletFeatures = StandardConnectFeature & StandardDisconnectFeature & StandardEventsFeature & SolanaSignFeatures;
44
+ type SignSolanaMessageDeps = {
45
+ signSolanaMessage: SignSolanaMessage;
46
+ };
47
+ export declare class LedgerSolanaWallet implements Wallet {
48
+ private readonly host;
49
+ private readonly deps;
50
+ readonly version: "1.0.0";
51
+ readonly family: BlockchainFamily;
52
+ readonly name = "Ledger";
53
+ readonly icon: WalletIcon;
54
+ private _accounts;
55
+ private _selectedAccount?;
56
+ private readonly _listeners;
57
+ constructor(host: CoreFacade, deps: SignSolanaMessageDeps);
58
+ /** Core pushes the freshly selected account (or `undefined` on disconnect). */
59
+ setSelectedAccount(account: ProviderAccount | undefined): void;
60
+ /** No-op for Solana today; kept for the BlockchainProvider contract. */
61
+ setNetwork(_chainId: number): void;
62
+ get chains(): readonly ["solana:mainnet", "solana:devnet", "solana:testnet"];
63
+ get accounts(): readonly WalletAccount[];
64
+ get features(): SolanaWalletFeatures;
65
+ private readonly connect;
66
+ private readonly disconnect;
67
+ private readonly on;
68
+ private readonly signMessage;
69
+ private readonly signTransaction;
70
+ private readonly signAndSendTransaction;
71
+ private resolveSolanaAccount;
72
+ private handleSignFlow;
73
+ private signSolanaMessage;
74
+ private toWalletAccount;
75
+ private emitChange;
76
+ private off;
77
+ }
78
+ export {};
79
+ //# sourceMappingURL=LedgerSolanaWallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LedgerSolanaWallet.d.ts","sourceRoot":"","sources":["../../../../src/internal/solana-provider/ledger-solana-wallet/LedgerSolanaWallet.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { Factory } from 'inversify';
2
2
  import { Either } from 'purify-ts';
3
- import { SolanaJSONRPCRequest, SolanaJsonRpcResponse } from '../../../../api/model/solana/SolanaTypes.js';
4
- import { BackendService } from '../../../backend/BackendService.js';
5
- import { ContextService } from '../../../context/ContextService.js';
6
- import { LoggerPublisher } from '../../../logger/service/LoggerPublisher.js';
3
+ import { SolanaJSONRPCRequest, SolanaJsonRpcResponse } from '../../../../../api/model/solana/SolanaTypes.js';
4
+ import { BackendService } from '../../../../backend/BackendService.js';
5
+ import { ContextService } from '../../../../context/ContextService.js';
6
+ import { LoggerPublisher } from '../../../../logger/service/LoggerPublisher.js';
7
7
  export declare class SolanaRemoteDatasource {
8
8
  private readonly loggerFactory;
9
9
  private readonly backendService;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SolanaRemoteDatasource.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/solana-provider/ledger-solana-wallet/rpc/datasource/SolanaRemoteDatasource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAsB,MAAM,WAAW,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAe,MAAM,WAAW,CAAC;AAGhD,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,gDAAgD,CAAC;AAExD,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAM5E,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAE5E,OAAO,EAAE,eAAe,EAAE,MAAM,+CAA+C,CAAC;AAMhF,qBACa,sBAAsB;IAK/B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAE9B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,cAAc;IARjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;gBAItB,aAAa,EAAE,OAAO,CAAC,eAAe,CAAC,EAEvC,cAAc,EAAE,cAAc,EAE9B,cAAc,EAAE,cAAc;IAK3C,cAAc,CAClB,IAAI,EAAE,oBAAoB,GACzB,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,qBAAqB,CAAC,CAAC;IAkChD,OAAO,CAAC,cAAc;CAUvB"}
@@ -1,8 +1,8 @@
1
1
  import { Factory } from 'inversify';
2
- import { SolanaJSONRPCRequest } from '../../../../api/model/solana/SolanaTypes.js';
3
- import { BackendService } from '../../../backend/BackendService.js';
4
- import { ContextService } from '../../../context/ContextService.js';
5
- import { LoggerPublisher } from '../../../logger/service/LoggerPublisher.js';
2
+ import { SolanaJSONRPCRequest } from '../../../../../api/model/solana/SolanaTypes.js';
3
+ import { BackendService } from '../../../../backend/BackendService.js';
4
+ import { ContextService } from '../../../../context/ContextService.js';
5
+ import { LoggerPublisher } from '../../../../logger/service/LoggerPublisher.js';
6
6
  import { SolanaRemoteDatasource } from './SolanaRemoteDatasource.js';
7
7
  export declare class StubSolanaRemoteDatasource extends SolanaRemoteDatasource {
8
8
  constructor(loggerFactory: Factory<LoggerPublisher>, backendService: BackendService, contextService: ContextService);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StubSolanaRemoteDatasource.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/solana-provider/ledger-solana-wallet/rpc/datasource/StubSolanaRemoteDatasource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAsB,MAAM,WAAW,CAAC;AAG7D,OAAO,EAEL,oBAAoB,EACrB,MAAM,gDAAgD,CAAC;AAExD,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAE5E,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAE5E,OAAO,EAAE,eAAe,EAAE,MAAM,+CAA+C,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,qBACa,0BAA2B,SAAQ,sBAAsB;gBAGlE,aAAa,EAAE,OAAO,CAAC,eAAe,CAAC,EAEvC,cAAc,EAAE,cAAc,EAE9B,cAAc,EAAE,cAAc;IAKjB,cAAc,CAAC,IAAI,EAAE,oBAAoB;;;;;;;;;CAazD"}
@@ -1,6 +1,7 @@
1
- import { SolanaCluster } from '../../../api/model/solana/SolanaTypes.js';
1
+ import { SolanaCluster } from '../../../../api/model/solana/SolanaTypes.js';
2
2
  export declare const SOLANA_MAPPING_TABLE: Record<string, SolanaCluster>;
3
3
  export declare const DEFAULT_SOLANA_CLUSTER: SolanaCluster;
4
+ export declare const SOLANA_NATIVE_DECIMALS = 9;
4
5
  export declare function getClusterFromCurrencyId(currencyId: string): SolanaCluster;
5
6
  export declare function getCurrencyIdFromCluster(cluster: SolanaCluster): string | undefined;
6
7
  export declare function isSupportedSolanaCurrency(currencyId: string): boolean;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clusterUtils.d.ts","sourceRoot":"","sources":["../../../../../src/internal/solana-provider/ledger-solana-wallet/utils/clusterUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAEjF,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAE9D,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,aAAyB,CAAC;AAE/D,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,CAE1E;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,GAAG,SAAS,CAInF;AAED,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAErE"}
@@ -0,0 +1,3 @@
1
+ import { ProviderAccount } from '../../../../api/model/blockchain/ProviderAccount.js';
2
+ export declare function getSolanaDerivationPath(account: ProviderAccount): string;
3
+ //# sourceMappingURL=derivationUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"derivationUtils.d.ts","sourceRoot":"","sources":["../../../../../src/internal/solana-provider/ledger-solana-wallet/utils/derivationUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qDAAqD,CAAC;AAa3F,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAQxE"}
@@ -1,4 +1,4 @@
1
- import { SolanaCluster } from '../../api/model/solana/SolanaTypes.js';
1
+ import { SolanaCluster } from '../../../../api/model/solana/SolanaTypes.js';
2
2
  export declare const SUPPORTED_CLUSTERS: SolanaCluster[];
3
3
  export declare function isSupportedCluster(cluster: string): cluster is SolanaCluster;
4
4
  //# sourceMappingURL=supportedClusters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"supportedClusters.d.ts","sourceRoot":"","sources":["../../../../../src/internal/solana-provider/ledger-solana-wallet/utils/supportedClusters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAEjF,eAAO,MAAM,kBAAkB,EAAE,aAAa,EAI7C,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,IAAI,aAAa,CAE5E"}
@@ -2,6 +2,13 @@ import { ContainerModule } from 'inversify';
2
2
  type SolanaProviderModuleOptions = {
3
3
  stub?: boolean;
4
4
  };
5
- export declare function solanaProviderModuleFactory({ stub }: SolanaProviderModuleOptions): ContainerModule;
5
+ export declare function solanaProviderModuleFactory({ stub, }: SolanaProviderModuleOptions): ContainerModule;
6
+ /**
7
+ * Local Inversify module for the Solana provider. Loaded into the per-provider
8
+ * container owned by {@link SolanaBlockchainProvider}, on top of the
9
+ * {@link solanaProviderModuleTypes.CoreFacade} and
10
+ * {@link solanaProviderModuleTypes.BlockchainConfig} constants bound there.
11
+ */
12
+ export declare function solanaProviderModule(): ContainerModule;
6
13
  export {};
7
14
  //# sourceMappingURL=solanaProviderModule.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"solanaProviderModule.d.ts","sourceRoot":"","sources":["../../../src/internal/solana-provider/solanaProviderModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAM5C,KAAK,2BAA2B,GAAG;IACjC,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,wBAAgB,2BAA2B,CAAC,EAAE,IAAI,EAAE,EAAE,2BAA2B,mBAYhF"}
1
+ {"version":3,"file":"solanaProviderModule.d.ts","sourceRoot":"","sources":["../../../src/internal/solana-provider/solanaProviderModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAO5C,KAAK,2BAA2B,GAAG;IACjC,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,wBAAgB,2BAA2B,CAAC,EAC1C,IAAI,GACL,EAAE,2BAA2B,mBAY7B;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,oBAMnC"}
@@ -1,4 +1,7 @@
1
1
  export declare const solanaProviderModuleTypes: {
2
+ readonly CoreFacade: symbol;
3
+ readonly BlockchainConfig: symbol;
2
4
  readonly SolanaRemoteDatasource: symbol;
5
+ readonly SignSolanaMessageUseCase: symbol;
3
6
  };
4
7
  //# sourceMappingURL=solanaProviderModuleTypes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"solanaProviderModuleTypes.d.ts","sourceRoot":"","sources":["../../../src/internal/solana-provider/solanaProviderModuleTypes.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,yBAAyB;;CAE5B,CAAC"}
1
+ {"version":3,"file":"solanaProviderModuleTypes.d.ts","sourceRoot":"","sources":["../../../src/internal/solana-provider/solanaProviderModuleTypes.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,yBAAyB;;;;;CAK5B,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { OpenAppWithDependenciesDAInput } from '@ledgerhq/device-management-kit';
2
+ import { Observable } from 'rxjs';
3
+ import { CoreFacade } from '../../../api/blockchain-provider/model/CoreFacade.js';
4
+ import { ProviderAccount } from '../../../api/model/blockchain/ProviderAccount.js';
5
+ import { BlockchainConfig } from '../../../api/model/dappConfig/BlockchainConfig.js';
6
+ import { SignFlowStatus } from '../../../api/model/signing/SignFlowStatus.js';
7
+ import { SignSolanaMessageParams } from '../../../api/model/signing/solana/SignSolanaMessageParams.js';
8
+ export declare class SignSolanaMessage {
9
+ private readonly core;
10
+ private readonly blockchainConfig;
11
+ private readonly logger;
12
+ constructor(core: CoreFacade, blockchainConfig: BlockchainConfig);
13
+ execute(params: SignSolanaMessageParams, selectedAccount: ProviderAccount | undefined): Observable<SignFlowStatus>;
14
+ createOpenAppConfig(): OpenAppWithDependenciesDAInput;
15
+ private toSignFlowStatus;
16
+ }
17
+ //# sourceMappingURL=SignSolanaMessage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SignSolanaMessage.d.ts","sourceRoot":"","sources":["../../../../src/internal/solana-provider/use-case/SignSolanaMessage.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,8BAA8B,EACpC,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAmB,KAAK,UAAU,EAAiB,MAAM,MAAM,CAAC;AAEvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sDAAsD,CAAC;AAEvF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kDAAkD,CAAC;AAExF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mDAAmD,CAAC;AAC1F,OAAO,KAAK,EACV,cAAc,EAEf,MAAM,8CAA8C,CAAC;AACtD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,8DAA8D,CAAC;AAa5G,qBACa,iBAAiB;IAK1B,OAAO,CAAC,QAAQ,CAAC,IAAI;IAErB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IANnC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;gBAIrB,IAAI,EAAE,UAAU,EAEhB,gBAAgB,EAAE,gBAAgB;IAKrD,OAAO,CACL,MAAM,EAAE,uBAAuB,EAC/B,eAAe,EAAE,eAAe,GAAG,SAAS,GAC3C,UAAU,CAAC,cAAc,CAAC;IA8C7B,mBAAmB,IAAI,8BAA8B;IASrD,OAAO,CAAC,gBAAgB;CAgCzB"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Translates the Solana app's user-rejection APDU (`6985`) into the shared
3
+ * `UserRejectedTransactionError` so the UI surfaces the rejection consistently
4
+ * with EVM. Other errors are passed through untouched.
5
+ */
6
+ export declare function normalizeSigningError(error: unknown): unknown;
7
+ /**
8
+ * Extracts the raw ed25519 signature from a Solana off-chain message signing
9
+ * result.
10
+ *
11
+ * The Solana signer kit returns either:
12
+ * - a bare 64-byte signature (Raw mode), or
13
+ * - an OCM envelope `[versionByte][signature(64)][message...]` (V0/V1/Legacy).
14
+ *
15
+ * In both cases we return the base58 of the 64-byte signature so consumers
16
+ * (e.g. the Wallet Standard wallet) receive a standard Solana signature.
17
+ */
18
+ export declare function extractRawSignatureBase58(envelopeBase58: string): string;
19
+ /**
20
+ * Extracts the off-chain message (OCM) that was actually signed from a Solana
21
+ * off-chain message signing envelope.
22
+ *
23
+ * The signer kit returns an OCM envelope `[versionByte][signature(64)][ocm...]`
24
+ * for the V0/V1/Legacy signing modes. The trailing `ocm` bytes are the exact
25
+ * byte string (preamble + content) that the device ed25519-signed, so a dApp
26
+ * can verify the signature with `ed25519.verify(signature, signedMessage)`.
27
+ *
28
+ * Because these bytes come straight from the envelope, they reflect whichever
29
+ * version the firmware ended up using (including any V1 -> V0 -> Legacy
30
+ * fallback), which reconstructing the OCM client-side could not guarantee.
31
+ */
32
+ export declare function extractSignedMessage(envelopeBase58: string): Uint8Array;
33
+ //# sourceMappingURL=solanaSignFlowUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solanaSignFlowUtils.d.ts","sourceRoot":"","sources":["../../../../src/internal/solana-provider/use-case/solanaSignFlowUtils.ts"],"names":[],"mappings":"AAiBA;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAQ7D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAkBxE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,CAAC,cAAc,EAAE,MAAM,GAAG,UAAU,CAavE"}
@@ -0,0 +1,16 @@
1
+ import { Wallet } from '@wallet-standard/base';
2
+ /**
3
+ * Registers a Wallet Standard wallet and returns a function to fully unregister
4
+ * it.
5
+ *
6
+ * `@wallet-standard/wallet`'s own `registerWallet` discards the `unregister`
7
+ * callback the app hands back and permanently leaks an `app-ready` listener, so
8
+ * a wallet registered through it can never be torn down. We reimplement the same
9
+ * dispatch + listen handshake here but keep the `unregister` callbacks (an app
10
+ * can become ready more than once) and remove the listener on teardown, so
11
+ * `initializeLedgerProvider`'s cleanup can leave no trace of the wallet.
12
+ *
13
+ * @see https://github.com/wallet-standard/wallet-standard
14
+ */
15
+ export declare function registerWalletStandard(wallet: Wallet): () => void;
16
+ //# sourceMappingURL=registerWalletStandard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerWalletStandard.d.ts","sourceRoot":"","sources":["../../../../src/internal/solana-provider/utils/registerWalletStandard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EAEP,MAAM,uBAAuB,CAAC;AAK/B;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,IAAI,CAoCjE"}
@@ -1,8 +1,10 @@
1
1
  import { Factory } from 'inversify';
2
2
  import { Either, Maybe } from 'purify-ts';
3
3
  import { StorageIDBErrors } from './model/errors.js';
4
+ import { FeatureFlags } from './model/FeatureFlags.js';
4
5
  import { UserConsent } from './model/UserConsent.js';
5
6
  import { IndexedDbService } from './service/IndexedDbService.js';
7
+ import { BlockchainFamily } from '../../api/blockchain-provider/model/types.js';
6
8
  import { Account } from '../account/service/AccountService.js';
7
9
  import { LoggerPublisher } from '../logger/service/LoggerPublisher.js';
8
10
  import { StorageService } from './StorageService.js';
@@ -23,9 +25,11 @@ export declare class DefaultStorageService implements StorageService {
23
25
  getTrustChainId(): Maybe<string>;
24
26
  removeTrustChainId(): void;
25
27
  isTrustChainValid(): boolean;
26
- saveSelectedAccount(selectedAccount: Account): void;
27
- getSelectedAccount(): Maybe<Account>;
28
- removeSelectedAccount(): void;
28
+ saveSelectedAccount(selectedAccount: Account, family: BlockchainFamily): void;
29
+ getSelectedAccounts(): Map<BlockchainFamily, Account>;
30
+ removeSelectedAccount(family: BlockchainFamily): void;
31
+ removeSelectedAccounts(): void;
32
+ private toAccount;
29
33
  /*** Local Storage Primitives ***/
30
34
  saveItem<T>(key: string, value: T): void;
31
35
  removeItem(key: string): boolean;
@@ -42,5 +46,9 @@ export declare class DefaultStorageService implements StorageService {
42
46
  getPreferredLanguage(): Promise<Maybe<string>>;
43
47
  savePreferredFiatCurrency(preferredFiatCurrency: string): Promise<void>;
44
48
  getPreferredFiatCurrency(): Promise<Maybe<string>>;
49
+ saveDeveloperMode(): void;
50
+ hasDeveloperMode(): boolean;
51
+ getFeatureFlags(): FeatureFlags;
52
+ saveFeatureFlags(flags: FeatureFlags): void;
45
53
  }
46
54
  //# sourceMappingURL=DefaultStorageService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultStorageService.d.ts","sourceRoot":"","sources":["../../../src/internal/storage/DefaultStorageService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAsB,MAAM,WAAW,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAQ,KAAK,EAAW,MAAM,WAAW,CAAC;AAIzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,sCAAsC,CAAC;AAEpE,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAE5E,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,qBACa,qBAAsB,YAAW,cAAc;IAKxD,OAAO,CAAC,QAAQ,CAAC,aAAa;IAE9B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IANnC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;gBAItB,aAAa,EAAE,OAAO,CAAC,eAAe,CAAC,EAEvC,gBAAgB,EAAE,gBAAgB;IAKrD,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM;IAItB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;IAItE,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAQ/B,YAAY,CAChB,OAAO,EAAE,UAAU,GAClB,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAIvC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;IAI3D,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAI3D,kBAAkB,CAAC,aAAa,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3D,gBAAgB,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAInD,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI;IAK7C,eAAe,IAAI,KAAK,CAAC,MAAM,CAAC;IAIhC,kBAAkB,IAAI,IAAI;IAK1B,iBAAiB,IAAI,OAAO;IAa5B,mBAAmB,CAAC,eAAe,EAAE,OAAO,GAAG,IAAI;IAQnD,kBAAkB,IAAI,KAAK,CAAC,OAAO,CAAC;IAuBpC,qBAAqB,IAAI,IAAI;IAI7B,mCAAmC;IAEnC,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAOjC,UAAU,CAAC,GAAG,EAAE,MAAM;IAYtB,OAAO,CAAC,GAAG,EAAE,MAAM;IAMnB,YAAY;IAUZ,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC;IAc3B,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAYpD,cAAc,IAAI,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAW7C,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBlC,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC;IAa3C,wBAAwB,IAAI,OAAO,CAAC,OAAO,CAAC;IAW5C,4BAA4B,IAAI,OAAO,CAAC,IAAI,CAAC;IAa7C,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAetD,oBAAoB,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAW9C,yBAAyB,CAC7B,qBAAqB,EAAE,MAAM,GAC5B,OAAO,CAAC,IAAI,CAAC;IAmBV,wBAAwB,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;CAUzD"}
1
+ {"version":3,"file":"DefaultStorageService.d.ts","sourceRoot":"","sources":["../../../src/internal/storage/DefaultStorageService.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  import { Either, Maybe } from 'purify-ts';
2
2
  import { StorageIDBErrors } from './model/errors.js';
3
+ import { FeatureFlags } from './model/FeatureFlags.js';
3
4
  import { UserConsent } from './model/UserConsent.js';
5
+ import { BlockchainFamily } from '../../api/blockchain-provider/model/types.js';
4
6
  import { Account } from '../account/service/AccountService.js';
5
7
  export interface StorageService {
6
8
  setDbVersion(version: number): Promise<Either<StorageIDBErrors, void>>;
@@ -17,9 +19,10 @@ export interface StorageService {
17
19
  getTrustChainId(): Maybe<string>;
18
20
  isTrustChainValid(): boolean;
19
21
  removeTrustChainId(): void;
20
- saveSelectedAccount(selectedAccount: Account): unknown;
21
- getSelectedAccount(): Maybe<Account>;
22
- removeSelectedAccount(): void;
22
+ saveSelectedAccount(selectedAccount: Account, family: BlockchainFamily): unknown;
23
+ getSelectedAccounts(): Map<BlockchainFamily, Account>;
24
+ removeSelectedAccount(family: BlockchainFamily): void;
25
+ removeSelectedAccounts(): void;
23
26
  storeEncryptionKey(encryptionKey: CryptoKey): Promise<void>;
24
27
  getEncryptionKey(): Promise<Maybe<CryptoKey>>;
25
28
  saveUserConsent(consent: UserConsent): Promise<void>;
@@ -32,5 +35,9 @@ export interface StorageService {
32
35
  getPreferredLanguage(): Promise<Maybe<string>>;
33
36
  savePreferredFiatCurrency(preferredFiatCurrency: string): Promise<void>;
34
37
  getPreferredFiatCurrency(): Promise<Maybe<string>>;
38
+ saveDeveloperMode(): void;
39
+ hasDeveloperMode(): boolean;
40
+ getFeatureFlags(): FeatureFlags;
41
+ saveFeatureFlags(flags: FeatureFlags): void;
35
42
  }
36
43
  //# sourceMappingURL=StorageService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StorageService.d.ts","sourceRoot":"","sources":["../../../src/internal/storage/StorageService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AAE/D,MAAM,WAAW,cAAc;IAC7B,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC,CAAC;IACvE,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAClC,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;IACzC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACjC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAC9B,YAAY,IAAI,IAAI,CAAC;IAErB,YAAY,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC;IAC9E,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC,CAAC;IAC5D,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC;IAE5D,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7C,eAAe,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;IACjC,iBAAiB,IAAI,OAAO,CAAC;IAC7B,kBAAkB,IAAI,IAAI,CAAC;IAE3B,mBAAmB,CAAC,eAAe,EAAE,OAAO,GAAG,OAAO,CAAC;IACvD,kBAAkB,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;IACrC,qBAAqB,IAAI,IAAI,CAAC;IAE9B,kBAAkB,CAAC,aAAa,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,gBAAgB,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;IAE9C,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,cAAc,IAAI,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;IAC9C,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,wBAAwB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7C,4BAA4B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9C,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,oBAAoB,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAE/C,yBAAyB,CAAC,qBAAqB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxE,wBAAwB,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;CACpD"}
1
+ {"version":3,"file":"StorageService.d.ts","sourceRoot":"","sources":["../../../src/internal/storage/StorageService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export type FeatureFlags = {
2
+ solana: boolean;
3
+ };
4
+ export declare const DEFAULT_FEATURE_FLAGS: FeatureFlags;
5
+ //# sourceMappingURL=FeatureFlags.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FeatureFlags.d.ts","sourceRoot":"","sources":["../../../../src/internal/storage/model/FeatureFlags.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG;IACzB,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,YAEnC,CAAC"}
@@ -1,10 +1,15 @@
1
1
  export declare const INDEXED_DB_VERSION = 3;
2
2
  export declare const STORAGE_KEYS: {
3
3
  readonly PREFIX: "ledger-button";
4
+ /** Legacy single-account key, kept for backward-compatible reads. */
4
5
  readonly SELECTED_ACCOUNT: "selectedAccount";
6
+ /** Per-family selected accounts: Record<BlockchainFamily, AccountDbModel>. */
7
+ readonly SELECTED_ACCOUNTS: "selectedAccounts";
5
8
  readonly TRUST_CHAIN_ID: "trustChainId";
6
9
  readonly TRUST_CHAIN_VALIDITY: "trustChainValidity";
7
10
  readonly DB_VERSION: "dbVersion";
11
+ readonly HAS_DEVELOPER_MODE: "hasDeveloperMode";
12
+ readonly FEATURE_FLAGS: "featureFlags";
8
13
  readonly DB_NAME: "ledger-button-db";
9
14
  readonly DB_STORE_NAME: "ledger-button-store";
10
15
  readonly DB_STORE_KEYPAIR_KEY: "keyPair";
@@ -1 +1 @@
1
- {"version":3,"file":"constant.d.ts","sourceRoot":"","sources":["../../../../src/internal/storage/model/constant.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAUpC,eAAO,MAAM,YAAY;;;;;;;;;;;;;;CAGf,CAAC"}
1
+ {"version":3,"file":"constant.d.ts","sourceRoot":"","sources":["../../../../src/internal/storage/model/constant.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAepC,eAAO,MAAM,YAAY;;IAXvB,qEAAqE;;IAErE,8EAA8E;;;;;;;;;;;;;;;CAYtE,CAAC"}
@@ -19,5 +19,11 @@ export declare class MigrateDbUseCase {
19
19
  * This ensures the version is stored in a more persistent and reliable storage.
20
20
  */
21
21
  private migrateToV2;
22
+ /**
23
+ * The selected account became per blockchain family. Move the legacy single
24
+ * selected-account entry into the new per-family record under the default
25
+ * family, then drop the legacy key.
26
+ */
27
+ private migrateToV3;
22
28
  }
23
29
  //# sourceMappingURL=MigrateDbUseCase.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MigrateDbUseCase.d.ts","sourceRoot":"","sources":["../../../../../src/internal/storage/usecases/MigrateDbUseCase/MigrateDbUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAsB,MAAM,WAAW,CAAC;AAG7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAGlF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAE5E,qBACa,gBAAgB;IAKzB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAE9B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,uBAAuB;IAR1C,OAAO,CAAC,MAAM,CAAkB;gBAIb,aAAa,EAAE,OAAO,CAAC,eAAe,CAAC,EAEvC,cAAc,EAAE,cAAc,EAE9B,uBAAuB,EAAE,uBAAuB;IAK7D,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAmB9B;;;OAGG;YACW,WAAW;IAoBzB;;;OAGG;YACW,WAAW;CAa1B"}
1
+ {"version":3,"file":"MigrateDbUseCase.d.ts","sourceRoot":"","sources":["../../../../../src/internal/storage/usecases/MigrateDbUseCase/MigrateDbUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAsB,MAAM,WAAW,CAAC;AAI7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAIlF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAE5E,qBACa,gBAAgB;IAKzB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAE9B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,uBAAuB;IAR1C,OAAO,CAAC,MAAM,CAAkB;gBAIb,aAAa,EAAE,OAAO,CAAC,eAAe,CAAC,EAEvC,cAAc,EAAE,cAAc,EAE9B,uBAAuB,EAAE,uBAAuB;IAK7D,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAwB9B;;;OAGG;YACW,WAAW;IAoBzB;;;OAGG;YACW,WAAW;IAczB;;;;OAIG;YACW,WAAW;CA+B1B"}
@@ -3,6 +3,8 @@ export declare const mockKeyPairBuffer: Uint8Array<ArrayBuffer>;
3
3
  export declare const createMockStorageService: () => {
4
4
  getDbVersion: import('vitest').Mock<(...args: any[]) => any>;
5
5
  setDbVersion: import('vitest').Mock<(...args: any[]) => any>;
6
+ getItem: import('vitest').Mock<(...args: any[]) => any>;
7
+ saveItem: import('vitest').Mock<(...args: any[]) => any>;
6
8
  removeItem: import('vitest').Mock<(...args: any[]) => any>;
7
9
  getKeyPair: import('vitest').Mock<(...args: any[]) => any>;
8
10
  };