@ledgerhq/device-signer-kit-solana 0.0.0-legacy-speculos-datasource-20250821095840 → 0.0.0-lifi-with-logger-20251208144248
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.
- package/README.md +113 -24
- package/lib/cjs/api/SignerSolana.js +1 -1
- package/lib/cjs/api/SignerSolana.js.map +1 -1
- package/lib/cjs/api/SolanaTools.js +1 -1
- package/lib/cjs/api/SolanaTools.js.map +1 -1
- package/lib/cjs/api/app-binder/SignMessageDeviceActionTypes.js.map +1 -1
- package/lib/cjs/api/app-binder/SignTransactionDeviceActionTypes.js +1 -1
- package/lib/cjs/api/app-binder/SignTransactionDeviceActionTypes.js.map +3 -3
- package/lib/cjs/api/index.js +1 -1
- package/lib/cjs/api/index.js.map +1 -1
- package/lib/cjs/api/model/SolanaTransactionOptionalConfig.js +2 -0
- package/lib/cjs/api/model/SolanaTransactionOptionalConfig.js.map +7 -0
- package/lib/cjs/api/model/TransactionResolutionContext.js +2 -0
- package/lib/cjs/api/model/TransactionResolutionContext.js.map +7 -0
- package/lib/cjs/internal/DefaultSignerSolana.js +1 -1
- package/lib/cjs/internal/DefaultSignerSolana.js.map +3 -3
- package/lib/cjs/internal/app-binder/SolanaAppBinder.js +1 -1
- package/lib/cjs/internal/app-binder/SolanaAppBinder.js.map +2 -2
- package/lib/cjs/internal/app-binder/SolanaAppBinder.test.js +1 -1
- package/lib/cjs/internal/app-binder/SolanaAppBinder.test.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/GetAppConfigurationCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/GetAppConfigurationCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/GetAppConfigurationCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/GetAppConfigurationCommand.test.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/GetChallengeCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/GetChallengeCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/GetChallengeCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/GetChallengeCommand.test.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/GetPubKeyCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/GetPubKeyCommand.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/GetPubKeyCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/GetPubKeyCommand.test.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/ProvideTLVDescriptorCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/ProvideTLVDescriptorCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/ProvideTLVDescriptorCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/ProvideTLVDescriptorCommand.test.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/ProvideTLVTransactionInstructionDescriptorCommand.js +2 -0
- package/lib/cjs/internal/app-binder/command/ProvideTLVTransactionInstructionDescriptorCommand.js.map +7 -0
- package/lib/cjs/internal/app-binder/command/ProvideTLVTransactionInstructionDescriptorCommand.test.js +2 -0
- package/lib/cjs/internal/app-binder/command/ProvideTLVTransactionInstructionDescriptorCommand.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/command/SignOffChainMessageCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/SignOffChainMessageCommand.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/SignOffChainMessageCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/SignOffChainMessageCommand.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/SignTransactionCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/SignTransactionCommand.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/SignTransactionCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/SignTransactionCommand.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/device-action/SignTransactionDeviceAction.js +1 -1
- package/lib/cjs/internal/app-binder/device-action/SignTransactionDeviceAction.js.map +3 -3
- package/lib/cjs/internal/app-binder/device-action/SignTransactionDeviceAction.test.js +1 -1
- package/lib/cjs/internal/app-binder/device-action/SignTransactionDeviceAction.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/services/GenerateSolanaTransaction.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/services/TransactionInspector.js +1 -3
- package/lib/cjs/internal/app-binder/services/TransactionInspector.js.map +3 -3
- package/lib/cjs/internal/app-binder/services/TransactionInspector.test.js +1 -1
- package/lib/cjs/internal/app-binder/services/TransactionInspector.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/services/bs58Encoder.js +2 -0
- package/lib/cjs/internal/app-binder/services/bs58Encoder.js.map +7 -0
- package/lib/cjs/internal/app-binder/services/utils/DefaultSolanaMessageNormaliser.js +2 -0
- package/lib/cjs/internal/app-binder/services/utils/DefaultSolanaMessageNormaliser.js.map +7 -0
- package/lib/cjs/internal/app-binder/services/utils/DefaultSolanaMessageNormaliser.test.js +2 -0
- package/lib/cjs/internal/app-binder/services/utils/DefaultSolanaMessageNormaliser.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/services/utils/transactionDecoders.js +2 -0
- package/lib/cjs/internal/app-binder/services/utils/transactionDecoders.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.js +1 -1
- package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.js.map +2 -2
- package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.test.js +1 -1
- package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.js +1 -1
- package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.js.map +3 -3
- package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.test.js +1 -1
- package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/task/SendSignMessageTask.js +1 -1
- package/lib/cjs/internal/app-binder/task/SendSignMessageTask.js.map +3 -3
- package/lib/cjs/internal/app-binder/task/SendSignMessageTask.test.js +3 -1
- package/lib/cjs/internal/app-binder/task/SendSignMessageTask.test.js.map +3 -3
- package/lib/cjs/internal/use-cases/transaction/SignTransactionUseCase.js +1 -1
- package/lib/cjs/internal/use-cases/transaction/SignTransactionUseCase.js.map +3 -3
- package/lib/cjs/internal/use-cases/transaction/SignTransactionUseCase.test.js +1 -1
- package/lib/cjs/internal/use-cases/transaction/SignTransactionUseCase.test.js.map +2 -2
- package/lib/cjs/package.json +40 -36
- package/lib/esm/api/app-binder/SignTransactionDeviceActionTypes.js +1 -0
- package/lib/esm/api/app-binder/SignTransactionDeviceActionTypes.js.map +4 -4
- package/lib/esm/api/index.js +1 -1
- package/lib/esm/api/index.js.map +1 -1
- package/lib/esm/api/model/SolanaTransactionOptionalConfig.js +1 -0
- package/lib/esm/api/model/TransactionResolutionContext.js +2 -0
- package/lib/esm/api/model/TransactionResolutionContext.js.map +7 -0
- package/lib/esm/internal/DefaultSignerSolana.js +1 -1
- package/lib/esm/internal/DefaultSignerSolana.js.map +3 -3
- package/lib/esm/internal/app-binder/SolanaAppBinder.js +1 -1
- package/lib/esm/internal/app-binder/SolanaAppBinder.js.map +2 -2
- package/lib/esm/internal/app-binder/SolanaAppBinder.test.js +1 -1
- package/lib/esm/internal/app-binder/SolanaAppBinder.test.js.map +2 -2
- package/lib/esm/internal/app-binder/command/GetAppConfigurationCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/GetAppConfigurationCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/GetAppConfigurationCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/GetAppConfigurationCommand.test.js.map +2 -2
- package/lib/esm/internal/app-binder/command/GetChallengeCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/GetChallengeCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/GetChallengeCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/GetChallengeCommand.test.js.map +2 -2
- package/lib/esm/internal/app-binder/command/GetPubKeyCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/GetPubKeyCommand.js.map +3 -3
- package/lib/esm/internal/app-binder/command/GetPubKeyCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/GetPubKeyCommand.test.js.map +2 -2
- package/lib/esm/internal/app-binder/command/ProvideTLVDescriptorCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/ProvideTLVDescriptorCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/ProvideTLVDescriptorCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/ProvideTLVDescriptorCommand.test.js.map +2 -2
- package/lib/esm/internal/app-binder/command/ProvideTLVTransactionInstructionDescriptorCommand.js +2 -0
- package/lib/esm/internal/app-binder/command/ProvideTLVTransactionInstructionDescriptorCommand.js.map +7 -0
- package/lib/esm/internal/app-binder/command/ProvideTLVTransactionInstructionDescriptorCommand.test.js +2 -0
- package/lib/esm/internal/app-binder/command/ProvideTLVTransactionInstructionDescriptorCommand.test.js.map +7 -0
- package/lib/esm/internal/app-binder/command/SignOffChainMessageCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/SignOffChainMessageCommand.js.map +3 -3
- package/lib/esm/internal/app-binder/command/SignOffChainMessageCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/SignOffChainMessageCommand.test.js.map +3 -3
- package/lib/esm/internal/app-binder/command/SignTransactionCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/SignTransactionCommand.js.map +3 -3
- package/lib/esm/internal/app-binder/command/SignTransactionCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/SignTransactionCommand.test.js.map +3 -3
- package/lib/esm/internal/app-binder/device-action/SignTransactionDeviceAction.js +1 -1
- package/lib/esm/internal/app-binder/device-action/SignTransactionDeviceAction.js.map +3 -3
- package/lib/esm/internal/app-binder/device-action/SignTransactionDeviceAction.test.js +1 -1
- package/lib/esm/internal/app-binder/device-action/SignTransactionDeviceAction.test.js.map +3 -3
- package/lib/esm/internal/app-binder/services/GenerateSolanaTransaction.test.js.map +3 -3
- package/lib/esm/internal/app-binder/services/TransactionInspector.js +1 -3
- package/lib/esm/internal/app-binder/services/TransactionInspector.js.map +3 -3
- package/lib/esm/internal/app-binder/services/TransactionInspector.test.js +1 -1
- package/lib/esm/internal/app-binder/services/TransactionInspector.test.js.map +3 -3
- package/lib/esm/internal/app-binder/services/bs58Encoder.js +2 -0
- package/lib/esm/internal/app-binder/services/bs58Encoder.js.map +7 -0
- package/lib/esm/internal/app-binder/services/utils/DefaultSolanaMessageNormaliser.js +2 -0
- package/lib/esm/internal/app-binder/services/utils/DefaultSolanaMessageNormaliser.js.map +7 -0
- package/lib/esm/internal/app-binder/services/utils/DefaultSolanaMessageNormaliser.test.js +2 -0
- package/lib/esm/internal/app-binder/services/utils/DefaultSolanaMessageNormaliser.test.js.map +7 -0
- package/lib/esm/internal/app-binder/services/utils/transactionDecoders.js +2 -0
- package/lib/esm/internal/app-binder/services/utils/transactionDecoders.js.map +7 -0
- package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.js +1 -1
- package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.js.map +2 -2
- package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.test.js +1 -1
- package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.test.js.map +3 -3
- package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.js +1 -1
- package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.js.map +3 -3
- package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.test.js +1 -1
- package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.test.js.map +3 -3
- package/lib/esm/internal/app-binder/task/SendSignMessageTask.js +1 -1
- package/lib/esm/internal/app-binder/task/SendSignMessageTask.js.map +3 -3
- package/lib/esm/internal/app-binder/task/SendSignMessageTask.test.js +3 -1
- package/lib/esm/internal/app-binder/task/SendSignMessageTask.test.js.map +3 -3
- package/lib/esm/internal/use-cases/transaction/SignTransactionUseCase.js +1 -1
- package/lib/esm/internal/use-cases/transaction/SignTransactionUseCase.js.map +3 -3
- package/lib/esm/internal/use-cases/transaction/SignTransactionUseCase.test.js +1 -1
- package/lib/esm/internal/use-cases/transaction/SignTransactionUseCase.test.js.map +2 -2
- package/lib/esm/package.json +40 -36
- package/lib/types/api/SignerSolana.d.ts +2 -2
- package/lib/types/api/SignerSolana.d.ts.map +1 -1
- package/lib/types/api/SolanaTools.d.ts +1 -2
- package/lib/types/api/SolanaTools.d.ts.map +1 -1
- package/lib/types/api/app-binder/SignMessageDeviceActionTypes.d.ts +3 -2
- package/lib/types/api/app-binder/SignMessageDeviceActionTypes.d.ts.map +1 -1
- package/lib/types/api/app-binder/SignTransactionDeviceActionTypes.d.ts +12 -1
- package/lib/types/api/app-binder/SignTransactionDeviceActionTypes.d.ts.map +1 -1
- package/lib/types/api/index.d.ts +1 -1
- package/lib/types/api/index.d.ts.map +1 -1
- package/lib/types/api/model/SolanaTransactionOptionalConfig.d.ts +7 -0
- package/lib/types/api/model/SolanaTransactionOptionalConfig.d.ts.map +1 -0
- package/lib/types/api/model/TransactionResolutionContext.d.ts +15 -0
- package/lib/types/api/model/TransactionResolutionContext.d.ts.map +1 -0
- package/lib/types/internal/DefaultSignerSolana.d.ts +293 -1
- package/lib/types/internal/DefaultSignerSolana.d.ts.map +1 -1
- package/lib/types/internal/app-binder/SolanaAppBinder.d.ts +2 -1
- package/lib/types/internal/app-binder/SolanaAppBinder.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/GetAppConfigurationCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/GetAppConfigurationCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/GetChallengeCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/GetChallengeCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/GetPubKeyCommand.d.ts +4 -1
- package/lib/types/internal/app-binder/command/GetPubKeyCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/ProvideTLVDescriptorCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/ProvideTLVDescriptorCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/ProvideTLVTransactionInstructionDescriptorCommand.d.ts +29 -0
- package/lib/types/internal/app-binder/command/ProvideTLVTransactionInstructionDescriptorCommand.d.ts.map +1 -0
- package/lib/types/internal/app-binder/command/ProvideTLVTransactionInstructionDescriptorCommand.test.d.ts +2 -0
- package/lib/types/internal/app-binder/command/ProvideTLVTransactionInstructionDescriptorCommand.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/command/SignOffChainMessageCommand.d.ts +14 -9
- package/lib/types/internal/app-binder/command/SignOffChainMessageCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/SignTransactionCommand.d.ts +3 -0
- package/lib/types/internal/app-binder/command/SignTransactionCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/device-action/SignTransactionDeviceAction.d.ts +5 -2
- package/lib/types/internal/app-binder/device-action/SignTransactionDeviceAction.d.ts.map +1 -1
- package/lib/types/internal/app-binder/services/TransactionInspector.d.ts +28 -6
- package/lib/types/internal/app-binder/services/TransactionInspector.d.ts.map +1 -1
- package/lib/types/internal/app-binder/services/bs58Encoder.d.ts +9 -0
- package/lib/types/internal/app-binder/services/bs58Encoder.d.ts.map +1 -0
- package/lib/types/internal/app-binder/services/utils/DefaultSolanaMessageNormaliser.d.ts +8 -0
- package/lib/types/internal/app-binder/services/utils/DefaultSolanaMessageNormaliser.d.ts.map +1 -0
- package/lib/types/internal/app-binder/services/utils/DefaultSolanaMessageNormaliser.test.d.ts +2 -0
- package/lib/types/internal/app-binder/services/utils/DefaultSolanaMessageNormaliser.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/services/utils/transactionDecoders.d.ts +14 -0
- package/lib/types/internal/app-binder/services/utils/transactionDecoders.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/BuildTransactionContextTask.d.ts +6 -11
- package/lib/types/internal/app-binder/task/BuildTransactionContextTask.d.ts.map +1 -1
- package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.d.ts +9 -5
- package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.d.ts.map +1 -1
- package/lib/types/internal/app-binder/task/SendSignMessageTask.d.ts +22 -6
- package/lib/types/internal/app-binder/task/SendSignMessageTask.d.ts.map +1 -1
- package/lib/types/internal/use-cases/transaction/SignTransactionUseCase.d.ts +2 -3
- package/lib/types/internal/use-cases/transaction/SignTransactionUseCase.d.ts.map +1 -1
- package/lib/types/tsconfig.prod.tsbuildinfo +1 -1
- package/package.json +34 -30
- package/lib/cjs/api/model/TransactionOptions.js +0 -2
- package/lib/cjs/api/model/TransactionOptions.js.map +0 -7
- package/lib/cjs/internal/app-binder/command/ProvideTrustedNamePKICommand.js +0 -2
- package/lib/cjs/internal/app-binder/command/ProvideTrustedNamePKICommand.js.map +0 -7
- package/lib/cjs/internal/app-binder/command/ProvideTrustedNamePKICommand.test.js +0 -2
- package/lib/cjs/internal/app-binder/command/ProvideTrustedNamePKICommand.test.js.map +0 -7
- package/lib/esm/api/model/TransactionOptions.js +0 -1
- package/lib/esm/internal/app-binder/command/ProvideTrustedNamePKICommand.js +0 -2
- package/lib/esm/internal/app-binder/command/ProvideTrustedNamePKICommand.js.map +0 -7
- package/lib/esm/internal/app-binder/command/ProvideTrustedNamePKICommand.test.js +0 -2
- package/lib/esm/internal/app-binder/command/ProvideTrustedNamePKICommand.test.js.map +0 -7
- package/lib/types/api/model/TransactionOptions.d.ts +0 -8
- package/lib/types/api/model/TransactionOptions.d.ts.map +0 -1
- package/lib/types/internal/app-binder/command/ProvideTrustedNamePKICommand.d.ts +0 -13
- package/lib/types/internal/app-binder/command/ProvideTrustedNamePKICommand.d.ts.map +0 -1
- package/lib/types/internal/app-binder/command/ProvideTrustedNamePKICommand.test.d.ts +0 -2
- package/lib/types/internal/app-binder/command/ProvideTrustedNamePKICommand.test.d.ts.map +0 -1
- /package/lib/esm/api/model/{TransactionOptions.js.map → SolanaTransactionOptionalConfig.js.map} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var
|
|
1
|
+
var f=Object.defineProperty;var l=Object.getOwnPropertyDescriptor;var m=(p,r,o,n)=>{for(var i=n>1?void 0:n?l(r,o):r,a=p.length-1,e;a>=0;a--)(e=p[a])&&(i=(n?e(r,o,i):e(i))||i);return n&&i&&f(r,o,i),i},c=(p,r)=>(o,n)=>r(o,n,p);import{inject as T,injectable as d}from"inversify";import{appBinderTypes as B}from"../../app-binder/di/appBinderTypes";let t=class{constructor(r){this.appBinder=r}execute(r,o,n){return this.appBinder.signTransaction({derivationPath:r,transaction:o,solanaTransactionOptionalConfig:n})}};t=m([d(),c(0,T(B.AppBinder))],t);export{t as 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 { 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
|
|
5
|
-
"mappings": "iOAAA,OAAS,UAAAA,EAAQ,cAAAC,MAAkB,
|
|
6
|
-
"names": ["inject", "injectable", "appBinderTypes", "SignTransactionUseCase", "appBinder", "derivationPath", "transaction", "
|
|
4
|
+
"sourcesContent": ["import { inject, injectable } from \"inversify\";\n\nimport { SignTransactionDAReturnType } from \"@api/app-binder/SignTransactionDeviceActionTypes\";\nimport { SolanaTransactionOptionalConfig } from \"@api/model/SolanaTransactionOptionalConfig\";\nimport { Transaction } from \"@api/model/Transaction\";\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 solanaTransactionOptionalConfig?: SolanaTransactionOptionalConfig,\n ): SignTransactionDAReturnType {\n return this.appBinder.signTransaction({\n derivationPath,\n transaction,\n solanaTransactionOptionalConfig,\n });\n }\n}\n"],
|
|
5
|
+
"mappings": "iOAAA,OAAS,UAAAA,EAAQ,cAAAC,MAAkB,YAKnC,OAAS,kBAAAC,MAAsB,yCAIxB,IAAMC,EAAN,KAA6B,CAClC,YAC4CC,EAC1C,CAD0C,eAAAA,CACzC,CAEH,QACEC,EACAC,EACAC,EAC6B,CAC7B,OAAO,KAAK,UAAU,gBAAgB,CACpC,eAAAF,EACA,YAAAC,EACA,gCAAAC,CACF,CAAC,CACH,CACF,EAhBaJ,EAANK,EAAA,CADNC,EAAW,EAGPC,EAAA,EAAAC,EAAOC,EAAe,SAAS,IAFvBT",
|
|
6
|
+
"names": ["inject", "injectable", "appBinderTypes", "SignTransactionUseCase", "appBinder", "derivationPath", "transaction", "solanaTransactionOptionalConfig", "__decorateClass", "injectable", "__decorateParam", "inject", "appBinderTypes"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{SignTransactionUseCase as
|
|
1
|
+
import{SignTransactionUseCase as s}from"./SignTransactionUseCase";describe("GetAppConfigurationUseCase",()=>{const n=vi.fn(),i={signTransaction:n};let t;beforeEach(()=>{vi.clearAllMocks(),t=new s(i)}),it("should return the config from the appBinder's getAppConfiguration method",()=>{n.mockReturnValue(new Uint8Array([66]));const e=t.execute("44'/501'/0'/0'",new Uint8Array([1,2,3,4]));expect(n).toHaveBeenCalledWith({derivationPath:"44'/501'/0'/0'",transaction:new Uint8Array([1,2,3,4]),solanaTransactionOptionalConfig:void 0}),expect(e).toEqual(new Uint8Array([66]))}),it("should forward skipOpenApp and TransactionResolutionContext to appBinder.signTransaction",()=>{const e="44'/501'/1'/2'",a=new Uint8Array([170,187]),o={skipOpenApp:!0,transactionResolutionContext:{tokenAddress:"someToken",createATA:{address:"someAddress",mintAddress:"someMint"}}};t.execute(e,a,o),expect(n).toHaveBeenCalledWith({derivationPath:e,transaction:a,solanaTransactionOptionalConfig:o})})});
|
|
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 = 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
|
|
5
|
-
"mappings": "AAEA,OAAS,0BAAAA,MAA8B,2BAEvC,SAAS,6BAA8B,IAAM,CAC3C,MAAMC,EAAsB,GAAG,GAAG,EAC5BC,EAAgB,CACpB,gBAAiBD,CACnB,EACA,IAAIE,EAEJ,WAAW,IAAM,CACf,GAAG,cAAc,EACjBA,EAAU,IAAIH,EAAuBE,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,
|
|
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 solanaTransactionOptionalConfig: undefined,\n });\n expect(result).toEqual(new Uint8Array([0x042]));\n });\n\n it(\"should forward skipOpenApp and TransactionResolutionContext to appBinder.signTransaction\", () => {\n // GIVEN\n const derivationPath = \"44'/501'/1'/2'\";\n const tx = new Uint8Array([0xaa, 0xbb]);\n const opts = {\n skipOpenApp: true,\n transactionResolutionContext: {\n tokenAddress: \"someToken\",\n createATA: { address: \"someAddress\", mintAddress: \"someMint\" },\n },\n };\n\n // WHEN\n useCase.execute(derivationPath, tx, opts);\n\n // THEN\n expect(signTransactionMock).toHaveBeenCalledWith({\n derivationPath,\n transaction: tx,\n solanaTransactionOptionalConfig: opts,\n });\n });\n});\n"],
|
|
5
|
+
"mappings": "AAEA,OAAS,0BAAAA,MAA8B,2BAEvC,SAAS,6BAA8B,IAAM,CAC3C,MAAMC,EAAsB,GAAG,GAAG,EAC5BC,EAAgB,CACpB,gBAAiBD,CACnB,EACA,IAAIE,EAEJ,WAAW,IAAM,CACf,GAAG,cAAc,EACjBA,EAAU,IAAIH,EAAuBE,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,gCAAiC,MACnC,CAAC,EACD,OAAOG,CAAM,EAAE,QAAQ,IAAI,WAAW,CAAC,EAAK,CAAC,CAAC,CAChD,CAAC,EAED,GAAG,2FAA4F,IAAM,CAEnG,MAAMC,EAAiB,iBACjBC,EAAK,IAAI,WAAW,CAAC,IAAM,GAAI,CAAC,EAChCC,EAAO,CACX,YAAa,GACb,6BAA8B,CAC5B,aAAc,YACd,UAAW,CAAE,QAAS,cAAe,YAAa,UAAW,CAC/D,CACF,EAGAJ,EAAQ,QAAQE,EAAgBC,EAAIC,CAAI,EAGxC,OAAON,CAAmB,EAAE,qBAAqB,CAC/C,eAAAI,EACA,YAAaC,EACb,gCAAiCC,CACnC,CAAC,CACH,CAAC,CACH,CAAC",
|
|
6
6
|
"names": ["SignTransactionUseCase", "signTransactionMock", "appBinderMock", "useCase", "result", "derivationPath", "tx", "opts"]
|
|
7
7
|
}
|
package/lib/esm/package.json
CHANGED
|
@@ -1,39 +1,4 @@
|
|
|
1
1
|
{
|
|
2
|
-
"name": "@ledgerhq/device-signer-kit-solana",
|
|
3
|
-
"version": "1.1.1",
|
|
4
|
-
"private": false,
|
|
5
|
-
"license": "Apache-2.0",
|
|
6
|
-
"exports": {
|
|
7
|
-
".": {
|
|
8
|
-
"types": "./lib/types/index.d.ts",
|
|
9
|
-
"import": "./lib/esm/index.js",
|
|
10
|
-
"require": "./lib/cjs/index.js"
|
|
11
|
-
},
|
|
12
|
-
"./*": {
|
|
13
|
-
"types": "./lib/types/*",
|
|
14
|
-
"import": "./lib/esm/*",
|
|
15
|
-
"require": "./lib/cjs/*"
|
|
16
|
-
}
|
|
17
|
-
},
|
|
18
|
-
"files": [
|
|
19
|
-
"./lib"
|
|
20
|
-
],
|
|
21
|
-
"scripts": {
|
|
22
|
-
"prebuild": "rimraf lib",
|
|
23
|
-
"build": "pnpm ldmk-tool build --entryPoints src/index.ts,src/**/*.ts --tsconfig tsconfig.prod.json",
|
|
24
|
-
"dev": "concurrently \"pnpm watch:builds\" \"pnpm watch:types\"",
|
|
25
|
-
"watch:builds": "pnpm ldmk-tool watch --entryPoints src/index.ts,src/**/*.ts --tsconfig tsconfig.prod.json",
|
|
26
|
-
"watch:types": "concurrently \"tsc --watch -p tsconfig.prod.json\" \"tsc-alias --watch -p tsconfig.prod.json\"",
|
|
27
|
-
"lint": "eslint",
|
|
28
|
-
"lint:fix": "pnpm lint --fix",
|
|
29
|
-
"postpack": "find . -name '*.tgz' -exec cp {} ../../../dist/ \\; ",
|
|
30
|
-
"prettier": "prettier . --check",
|
|
31
|
-
"prettier:fix": "prettier . --write",
|
|
32
|
-
"typecheck": "tsc --noEmit",
|
|
33
|
-
"test": "vitest run",
|
|
34
|
-
"test:watch": "vitest",
|
|
35
|
-
"test:coverage": "vitest run --coverage"
|
|
36
|
-
},
|
|
37
2
|
"dependencies": {
|
|
38
3
|
"@ledgerhq/context-module": "workspace:*",
|
|
39
4
|
"@ledgerhq/signer-utils": "workspace:*",
|
|
@@ -58,7 +23,46 @@
|
|
|
58
23
|
"rxjs": "catalog:",
|
|
59
24
|
"ts-node": "catalog:"
|
|
60
25
|
},
|
|
26
|
+
"exports": {
|
|
27
|
+
".": {
|
|
28
|
+
"import": "./lib/esm/index.js",
|
|
29
|
+
"require": "./lib/cjs/index.js",
|
|
30
|
+
"types": "./lib/types/index.d.ts"
|
|
31
|
+
},
|
|
32
|
+
"./*": {
|
|
33
|
+
"import": "./lib/esm/*",
|
|
34
|
+
"require": "./lib/cjs/*",
|
|
35
|
+
"types": "./lib/types/*"
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
"files": [
|
|
39
|
+
"./lib"
|
|
40
|
+
],
|
|
41
|
+
"license": "Apache-2.0",
|
|
42
|
+
"name": "@ledgerhq/device-signer-kit-solana",
|
|
61
43
|
"peerDependencies": {
|
|
62
44
|
"@ledgerhq/device-management-kit": "workspace:*"
|
|
63
|
-
}
|
|
45
|
+
},
|
|
46
|
+
"private": false,
|
|
47
|
+
"repository": {
|
|
48
|
+
"type": "git",
|
|
49
|
+
"url": "https://github.com/LedgerHQ/device-sdk-ts.git"
|
|
50
|
+
},
|
|
51
|
+
"scripts": {
|
|
52
|
+
"build": "pnpm ldmk-tool build --entryPoints src/index.ts,src/**/*.ts --tsconfig tsconfig.prod.json",
|
|
53
|
+
"dev": "concurrently \"pnpm watch:builds\" \"pnpm watch:types\"",
|
|
54
|
+
"lint": "eslint",
|
|
55
|
+
"lint:fix": "pnpm lint --fix",
|
|
56
|
+
"postpack": "find . -name '*.tgz' -exec cp {} ../../../dist/ \\; ",
|
|
57
|
+
"prebuild": "rimraf lib",
|
|
58
|
+
"prettier": "prettier . --check",
|
|
59
|
+
"prettier:fix": "prettier . --write",
|
|
60
|
+
"test": "vitest run",
|
|
61
|
+
"test:coverage": "vitest run --coverage",
|
|
62
|
+
"test:watch": "vitest",
|
|
63
|
+
"typecheck": "tsc --noEmit",
|
|
64
|
+
"watch:builds": "pnpm ldmk-tool watch --entryPoints src/index.ts,src/**/*.ts --tsconfig tsconfig.prod.json",
|
|
65
|
+
"watch:types": "concurrently \"tsc --watch -p tsconfig.prod.json\" \"tsc-alias --watch -p tsconfig.prod.json\""
|
|
66
|
+
},
|
|
67
|
+
"version": "0.0.0-lifi-with-logger-20251208144248"
|
|
64
68
|
}
|
|
@@ -5,9 +5,9 @@ import { type SignTransactionDAReturnType } from "./app-binder/SignTransactionDe
|
|
|
5
5
|
import { type AddressOptions } from "./model/AddressOption";
|
|
6
6
|
import { type MessageOptions } from "./model/MessageOptions";
|
|
7
7
|
import { type Transaction } from "./model/Transaction";
|
|
8
|
-
import { type
|
|
8
|
+
import { type SolanaTransactionOptionalConfig } from "./model/SolanaTransactionOptionalConfig";
|
|
9
9
|
export interface SignerSolana {
|
|
10
|
-
signTransaction: (derivationPath: string, transaction: Transaction,
|
|
10
|
+
signTransaction: (derivationPath: string, transaction: Transaction, solanaTransactionOptionalConfig?: SolanaTransactionOptionalConfig) => SignTransactionDAReturnType;
|
|
11
11
|
signMessage: (derivationPath: string, message: string, options?: MessageOptions) => SignMessageDAReturnType;
|
|
12
12
|
getAddress: (derivationPath: string, options?: AddressOptions) => GetAddressDAReturnType;
|
|
13
13
|
getAppConfiguration: () => GetAppConfigurationDAReturnType;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SignerSolana.d.ts","sourceRoot":"","sources":["../../../src/api/SignerSolana.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAC1F,OAAO,EAAE,KAAK,+BAA+B,EAAE,MAAM,sDAAsD,CAAC;AAC5G,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AAC5F,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,kDAAkD,CAAC;AACpG,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"SignerSolana.d.ts","sourceRoot":"","sources":["../../../src/api/SignerSolana.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAC1F,OAAO,EAAE,KAAK,+BAA+B,EAAE,MAAM,sDAAsD,CAAC;AAC5G,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AAC5F,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,kDAAkD,CAAC;AACpG,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,EAAE,KAAK,+BAA+B,EAAE,MAAM,yCAAyC,CAAC;AAE/F,MAAM,WAAW,YAAY;IAC3B,eAAe,EAAE,CACf,cAAc,EAAE,MAAM,EACtB,WAAW,EAAE,WAAW,EACxB,+BAA+B,CAAC,EAAE,+BAA+B,KAC9D,2BAA2B,CAAC;IAEjC,WAAW,EAAE,CACX,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,cAAc,KACrB,uBAAuB,CAAC;IAE7B,UAAU,EAAE,CACV,cAAc,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,cAAc,KACrB,sBAAsB,CAAC;IAE5B,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;CAC5D"}
|
|
@@ -2,9 +2,8 @@ import { type GenerateTransactionDAReturnType } from "./app-binder/GenerateTrans
|
|
|
2
2
|
import { type GetAddressDAReturnType } from "./app-binder/GetAddressDeviceActionTypes";
|
|
3
3
|
import { type GetAppConfigurationDAReturnType } from "./app-binder/GetAppConfigurationDeviceActionTypes";
|
|
4
4
|
import { type AddressOptions } from "./model/AddressOption";
|
|
5
|
-
import { type TransactionOptions } from "./model/TransactionOptions";
|
|
6
5
|
export interface SolanaTools {
|
|
7
|
-
generateTransaction: (derivationPath: string
|
|
6
|
+
generateTransaction: (derivationPath: string) => GenerateTransactionDAReturnType;
|
|
8
7
|
getAddress: (derivationPath: string, options?: AddressOptions) => GetAddressDAReturnType;
|
|
9
8
|
getAppConfiguration: () => GetAppConfigurationDAReturnType;
|
|
10
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolanaTools.d.ts","sourceRoot":"","sources":["../../../src/api/SolanaTools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,+BAA+B,EAAE,MAAM,sDAAsD,CAAC;AAC5G,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAC1F,OAAO,EAAE,KAAK,+BAA+B,EAAE,MAAM,sDAAsD,CAAC;AAC5G,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"SolanaTools.d.ts","sourceRoot":"","sources":["../../../src/api/SolanaTools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,+BAA+B,EAAE,MAAM,sDAAsD,CAAC;AAC5G,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAC1F,OAAO,EAAE,KAAK,+BAA+B,EAAE,MAAM,sDAAsD,CAAC;AAC5G,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE/D,MAAM,WAAW,WAAW;IAC1B,mBAAmB,EAAE,CACnB,cAAc,EAAE,MAAM,KACnB,+BAA+B,CAAC;IAErC,UAAU,EAAE,CACV,cAAc,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,cAAc,KACrB,sBAAsB,CAAC;IAE5B,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;CAC5D"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { type ExecuteDeviceActionReturnType, type OpenAppDAError, type OpenAppDARequiredInteraction, type SendCommandInAppDAError, type UserInteractionRequired } from "@ledgerhq/device-management-kit";
|
|
2
|
-
import { type Signature } from "../model/Signature";
|
|
3
2
|
import { type SolanaAppErrorCodes } from "../../internal/app-binder/command/utils/SolanaApplicationErrors";
|
|
4
|
-
export type SignMessageDAOutput =
|
|
3
|
+
export type SignMessageDAOutput = {
|
|
4
|
+
signature: string;
|
|
5
|
+
};
|
|
5
6
|
export type SignMessageDAError = OpenAppDAError | SendCommandInAppDAError<SolanaAppErrorCodes>;
|
|
6
7
|
type SignMessageDARequiredInteraction = OpenAppDARequiredInteraction | UserInteractionRequired.SignPersonalMessage;
|
|
7
8
|
export type SignMessageDAIntermediateValue = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SignMessageDeviceActionTypes.d.ts","sourceRoot":"","sources":["../../../../src/api/app-binder/SignMessageDeviceActionTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,6BAA6B,EAClC,KAAK,cAAc,EACnB,KAAK,4BAA4B,EACjC,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC7B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"SignMessageDeviceActionTypes.d.ts","sourceRoot":"","sources":["../../../../src/api/app-binder/SignMessageDeviceActionTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,6BAA6B,EAClC,KAAK,cAAc,EACnB,KAAK,4BAA4B,EACjC,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC7B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,4DAA4D,CAAC;AAEtG,MAAM,MAAM,mBAAmB,GAAG;IAChC,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAC1B,cAAc,GACd,uBAAuB,CAAC,mBAAmB,CAAC,CAAC;AAEjD,KAAK,gCAAgC,GACjC,4BAA4B,GAC5B,uBAAuB,CAAC,mBAAmB,CAAC;AAEhD,MAAM,MAAM,8BAA8B,GAAG;IAC3C,uBAAuB,EAAE,gCAAgC,CAAC;CAC3D,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,6BAA6B,CACjE,mBAAmB,EACnB,kBAAkB,EAClB,8BAA8B,CAC/B,CAAC"}
|
|
@@ -3,20 +3,31 @@ import { type SolanaTransactionContextResultSuccess } from "@ledgerhq/context-mo
|
|
|
3
3
|
import { type DeviceActionState, type ExecuteDeviceActionReturnType, type OpenAppDAError, type OpenAppDARequiredInteraction, type SendCommandInAppDAError, type UserInteractionRequired } from "@ledgerhq/device-management-kit";
|
|
4
4
|
import { type AppConfiguration } from "../model/AppConfiguration";
|
|
5
5
|
import { type Signature } from "../model/Signature";
|
|
6
|
+
import { type SolanaTransactionOptionalConfig } from "../model/SolanaTransactionOptionalConfig";
|
|
6
7
|
import { type Transaction } from "../model/Transaction";
|
|
7
8
|
import { type SolanaAppErrorCodes } from "../../internal/app-binder/command/utils/SolanaApplicationErrors";
|
|
8
9
|
import { type TxInspectorResult } from "../../internal/app-binder/services/TransactionInspector";
|
|
10
|
+
export declare const signTransactionDAStateSteps: Readonly<{
|
|
11
|
+
readonly OPEN_APP: "signer.sol.steps.openApp";
|
|
12
|
+
readonly GET_APP_CONFIG: "signer.sol.steps.getAppConfig";
|
|
13
|
+
readonly INSPECT_TRANSACTION: "signer.sol.steps.inspectTransaction";
|
|
14
|
+
readonly BUILD_TRANSACTION_CONTEXT: "signer.sol.steps.buildTransactionContext";
|
|
15
|
+
readonly PROVIDE_TRANSACTION_CONTEXT: "signer.sol.steps.provideTransactionContext";
|
|
16
|
+
readonly SIGN_TRANSACTION: "signer.sol.steps.signTransaction";
|
|
17
|
+
}>;
|
|
18
|
+
export type SignTransactionDAStateStep = (typeof signTransactionDAStateSteps)[keyof typeof signTransactionDAStateSteps];
|
|
9
19
|
export type SignTransactionDAOutput = Signature;
|
|
10
20
|
export type SignTransactionDAInput = {
|
|
11
21
|
readonly derivationPath: string;
|
|
12
22
|
readonly transaction: Transaction;
|
|
13
|
-
readonly
|
|
23
|
+
readonly transactionOptions?: SolanaTransactionOptionalConfig;
|
|
14
24
|
readonly contextModule: ContextModule;
|
|
15
25
|
};
|
|
16
26
|
export type SignTransactionDAError = OpenAppDAError | SendCommandInAppDAError<SolanaAppErrorCodes>;
|
|
17
27
|
type SignTransactionDARequiredInteraction = UserInteractionRequired | OpenAppDARequiredInteraction;
|
|
18
28
|
export type SignTransactionDAIntermediateValue = {
|
|
19
29
|
requiredUserInteraction: SignTransactionDARequiredInteraction;
|
|
30
|
+
step: SignTransactionDAStateStep;
|
|
20
31
|
};
|
|
21
32
|
export type SignTransactionDAState = DeviceActionState<SignTransactionDAOutput, SignTransactionDAError, SignTransactionDAIntermediateValue>;
|
|
22
33
|
export type SignTransactionDAInternalState = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SignTransactionDeviceActionTypes.d.ts","sourceRoot":"","sources":["../../../../src/api/app-binder/SignTransactionDeviceActionTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,KAAK,qCAAqC,EAAE,MAAM,kEAAkE,CAAC;AAC9H,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,6BAA6B,EAClC,KAAK,cAAc,EACnB,KAAK,4BAA4B,EACjC,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC7B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,4DAA4D,CAAC;AACtG,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,oDAAoD,CAAC;AAE5F,MAAM,MAAM,uBAAuB,GAAG,SAAS,CAAC;AAEhD,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"SignTransactionDeviceActionTypes.d.ts","sourceRoot":"","sources":["../../../../src/api/app-binder/SignTransactionDeviceActionTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,KAAK,qCAAqC,EAAE,MAAM,kEAAkE,CAAC;AAC9H,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,6BAA6B,EAClC,KAAK,cAAc,EACnB,KAAK,4BAA4B,EACjC,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC7B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,KAAK,+BAA+B,EAAE,MAAM,4CAA4C,CAAC;AAClG,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,4DAA4D,CAAC;AACtG,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,oDAAoD,CAAC;AAE5F,eAAO,MAAM,2BAA2B;;;;;;;EAO7B,CAAC;AAEZ,MAAM,MAAM,0BAA0B,GACpC,CAAC,OAAO,2BAA2B,CAAC,CAAC,MAAM,OAAO,2BAA2B,CAAC,CAAC;AAEjF,MAAM,MAAM,uBAAuB,GAAG,SAAS,CAAC;AAEhD,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,+BAA+B,CAAC;IAC9D,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAC9B,cAAc,GACd,uBAAuB,CAAC,mBAAmB,CAAC,CAAC;AAEjD,KAAK,oCAAoC,GACrC,uBAAuB,GACvB,4BAA4B,CAAC;AAEjC,MAAM,MAAM,kCAAkC,GAAG;IAC/C,uBAAuB,EAAE,oCAAoC,CAAC;IAC9D,IAAI,EAAE,0BAA0B,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,iBAAiB,CACpD,uBAAuB,EACvB,sBAAsB,EACtB,kCAAkC,CACnC,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,QAAQ,CAAC,KAAK,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAC9C,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC5C,QAAQ,CAAC,wBAAwB,EAAE,qCAAqC,GAAG,IAAI,CAAC;IAChF,QAAQ,CAAC,eAAe,EAAE,iBAAiB,GAAG,IAAI,CAAC;CACpD,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG,6BAA6B,CACrE,uBAAuB,EACvB,sBAAsB,EACtB,kCAAkC,CACnC,CAAC"}
|
package/lib/types/api/index.d.ts
CHANGED
|
@@ -4,8 +4,8 @@ export type { GetAppConfigurationDAError, GetAppConfigurationDAIntermediateValue
|
|
|
4
4
|
export type { SignMessageDAError, SignMessageDAIntermediateValue, SignMessageDAOutput, } from "./app-binder/SignMessageDeviceActionTypes";
|
|
5
5
|
export type { SignTransactionDAError, SignTransactionDAIntermediateValue, SignTransactionDAOutput, SignTransactionDAReturnType, } from "./app-binder/SignTransactionDeviceActionTypes";
|
|
6
6
|
export type { Signature } from "./model/Signature";
|
|
7
|
+
export type { SolanaTransactionOptionalConfig } from "./model/SolanaTransactionOptionalConfig";
|
|
7
8
|
export type { Transaction } from "./model/Transaction";
|
|
8
|
-
export type { TransactionOptions } from "./model/TransactionOptions";
|
|
9
9
|
export type { SignerSolana } from "./SignerSolana";
|
|
10
10
|
export { SignerSolanaBuilder } from "./SignerSolanaBuilder";
|
|
11
11
|
export type { SolanaTools } from "./SolanaTools";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,0BAA0B,EAC1B,sCAAsC,EACtC,2BAA2B,EAC3B,+BAA+B,GAChC,MAAM,sDAAsD,CAAC;AAC9D,YAAY,EACV,iBAAiB,EACjB,6BAA6B,EAC7B,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,6CAA6C,CAAC;AACrD,YAAY,EACV,0BAA0B,EAC1B,sCAAsC,EACtC,2BAA2B,GAC5B,MAAM,sDAAsD,CAAC;AAC9D,YAAY,EACV,kBAAkB,EAClB,8BAA8B,EAC9B,mBAAmB,GACpB,MAAM,8CAA8C,CAAC;AACtD,YAAY,EACV,sBAAsB,EACtB,kCAAkC,EAClC,uBAAuB,EACvB,2BAA2B,GAC5B,MAAM,kDAAkD,CAAC;AAC1D,YAAY,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,0BAA0B,EAC1B,sCAAsC,EACtC,2BAA2B,EAC3B,+BAA+B,GAChC,MAAM,sDAAsD,CAAC;AAC9D,YAAY,EACV,iBAAiB,EACjB,6BAA6B,EAC7B,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,6CAA6C,CAAC;AACrD,YAAY,EACV,0BAA0B,EAC1B,sCAAsC,EACtC,2BAA2B,GAC5B,MAAM,sDAAsD,CAAC;AAC9D,YAAY,EACV,kBAAkB,EAClB,8BAA8B,EAC9B,mBAAmB,GACpB,MAAM,8CAA8C,CAAC;AACtD,YAAY,EACV,sBAAsB,EACtB,kCAAkC,EAClC,uBAAuB,EACvB,2BAA2B,GAC5B,MAAM,kDAAkD,CAAC;AAC1D,YAAY,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,YAAY,EAAE,+BAA+B,EAAE,MAAM,4CAA4C,CAAC;AAClG,YAAY,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type TransactionResolutionContext } from "./TransactionResolutionContext";
|
|
2
|
+
export type SolanaTransactionOptionalConfig = {
|
|
3
|
+
transactionResolutionContext?: TransactionResolutionContext;
|
|
4
|
+
solanaRPCURL?: string;
|
|
5
|
+
skipOpenApp?: boolean;
|
|
6
|
+
};
|
|
7
|
+
//# sourceMappingURL=SolanaTransactionOptionalConfig.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SolanaTransactionOptionalConfig.d.ts","sourceRoot":"","sources":["../../../../src/api/model/SolanaTransactionOptionalConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAEnF,MAAM,MAAM,+BAA+B,GAAG;IAC5C,4BAA4B,CAAC,EAAE,4BAA4B,CAAC;IAC5D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export type TransactionResolutionContext = {
|
|
2
|
+
tokenAddress?: string;
|
|
3
|
+
createATA?: {
|
|
4
|
+
address: string;
|
|
5
|
+
mintAddress: string;
|
|
6
|
+
};
|
|
7
|
+
tokenInternalId?: string;
|
|
8
|
+
templateId?: string;
|
|
9
|
+
userInputType?: UserInputType;
|
|
10
|
+
};
|
|
11
|
+
export declare enum UserInputType {
|
|
12
|
+
sol = 0,
|
|
13
|
+
ata = 1
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=TransactionResolutionContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TransactionResolutionContext.d.ts","sourceRoot":"","sources":["../../../../src/api/model/TransactionResolutionContext.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,4BAA4B,GAAG;IACzC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE;QACV,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B,CAAC;AAEF,oBAAY,aAAa;IACvB,GAAG,IAAA;IACH,GAAG,IAAA;CACJ"}
|
|
@@ -6,6 +6,7 @@ import { type SignMessageDAReturnType } from "../api/app-binder/SignMessageDevic
|
|
|
6
6
|
import { type SignTransactionDAReturnType } from "../api/app-binder/SignTransactionDeviceActionTypes";
|
|
7
7
|
import { type AddressOptions } from "../api/model/AddressOption";
|
|
8
8
|
import { type MessageOptions } from "../api/model/MessageOptions";
|
|
9
|
+
import { type SolanaTransactionOptionalConfig } from "../api/model/SolanaTransactionOptionalConfig";
|
|
9
10
|
import { type Transaction } from "../api/model/Transaction";
|
|
10
11
|
import { type SignerSolana } from "../api/SignerSolana";
|
|
11
12
|
export type DefaultSignerSolanaConstructorArgs = {
|
|
@@ -16,9 +17,300 @@ export type DefaultSignerSolanaConstructorArgs = {
|
|
|
16
17
|
export declare class DefaultSignerSolana implements SignerSolana {
|
|
17
18
|
private _container;
|
|
18
19
|
constructor({ dmk, sessionId, contextModule, }: DefaultSignerSolanaConstructorArgs);
|
|
19
|
-
|
|
20
|
+
/**
|
|
21
|
+
* ## signTransaction
|
|
22
|
+
* #### Securely sign a Solana or SPL transaction using **clear signing** on Ledger devices.
|
|
23
|
+
* ---
|
|
24
|
+
* ### Parameters
|
|
25
|
+
*
|
|
26
|
+
* **Required**
|
|
27
|
+
* - **derivationPath** `string`
|
|
28
|
+
* The derivation path used in the transaction.
|
|
29
|
+
*
|
|
30
|
+
* - **transaction** `Uint8Array`
|
|
31
|
+
* The serialised transaction to sign.
|
|
32
|
+
*
|
|
33
|
+
* **Optional**
|
|
34
|
+
* - **options** `SolanaTransactionOptionalConfig`
|
|
35
|
+
* Provides additional context for transaction signing.
|
|
36
|
+
*
|
|
37
|
+
* - **transactionResolutionContext** `object`
|
|
38
|
+
* Lets you explicitly pass `tokenAddress` and ATA details, bypassing extraction from the transaction itself.
|
|
39
|
+
*
|
|
40
|
+
* - **tokenAddress** `string`
|
|
41
|
+
* SPL token address being transferred.
|
|
42
|
+
*
|
|
43
|
+
* - **createATA** `object`
|
|
44
|
+
* Information about creating an associated token account (ATA).
|
|
45
|
+
*
|
|
46
|
+
* - **address** `string` – Address (owner) of the ATA.
|
|
47
|
+
* - **mintAddress** `string` – Mint address of the ATA.
|
|
48
|
+
*
|
|
49
|
+
* - **tokenInternalId** `string`
|
|
50
|
+
* Ledger internal token ID
|
|
51
|
+
*
|
|
52
|
+
* - **solanaRPCURL** `string`
|
|
53
|
+
* RPC endpoint to use if `transactionResolutionContext` is not provided
|
|
54
|
+
* and parsing requires network lookups.
|
|
55
|
+
* In browser environments, use a CORS-enabled RPC URL.
|
|
56
|
+
* Defaults to: `"https://api.mainnet-beta.solana.com/"`.
|
|
57
|
+
*
|
|
58
|
+
* - **skipOpenApp** `boolean`
|
|
59
|
+
* If `true`, skips opening the Solana app on the device.
|
|
60
|
+
*
|
|
61
|
+
* ---
|
|
62
|
+
* ### Returns
|
|
63
|
+
*
|
|
64
|
+
* - `observable` That emits DeviceActionState updates
|
|
65
|
+
* - `cancel` A function to cancel the action on the Ledger device.
|
|
66
|
+
*
|
|
67
|
+
* ---
|
|
68
|
+
* ### Internal Flow
|
|
69
|
+
*
|
|
70
|
+
* Under the hood, this method subscribes to an
|
|
71
|
+
* `Observable<DeviceActionState<Uint8Array, SignTransactionDAError, IntermediateValue>>`.
|
|
72
|
+
*
|
|
73
|
+
* #### DeviceActionState
|
|
74
|
+
* Represents the lifecycle of a device action:
|
|
75
|
+
*
|
|
76
|
+
* ```ts
|
|
77
|
+
* type DeviceActionState<Output, Error, IntermediateValue> =
|
|
78
|
+
* | { status: DeviceActionStatus.NotStarted }
|
|
79
|
+
* | { status: DeviceActionStatus.Pending; intermediateValue: IntermediateValue }
|
|
80
|
+
* | { status: DeviceActionStatus.Stopped }
|
|
81
|
+
* | { status: DeviceActionStatus.Completed; output: Output }
|
|
82
|
+
* | { status: DeviceActionStatus.Error; error: Error };
|
|
83
|
+
*
|
|
84
|
+
* enum DeviceActionStatus {
|
|
85
|
+
* NotStarted = "not-started",
|
|
86
|
+
* Pending = "pending",
|
|
87
|
+
* Stopped = "stopped",
|
|
88
|
+
* Completed = "completed",
|
|
89
|
+
* Error = "error"
|
|
90
|
+
* }
|
|
91
|
+
* ```
|
|
92
|
+
*
|
|
93
|
+
* - **NotStarted** → Action hasn’t begun.
|
|
94
|
+
* - **Pending** → Waiting for user confirmation on the device.
|
|
95
|
+
* Includes an `intermediateValue` of type `IntermediateValue`.
|
|
96
|
+
* - **Stopped** → Action was cancelled before completion.
|
|
97
|
+
* - **Completed** → Provides the signed transaction bytes (`Uint8Array`).
|
|
98
|
+
* - **Error** → The device or signing operation failed (`SignTransactionDAError`).
|
|
99
|
+
*
|
|
100
|
+
* ---
|
|
101
|
+
* ### Example
|
|
102
|
+
*
|
|
103
|
+
* ```ts
|
|
104
|
+
* const { observable } = signerSolana.signTransaction("m/44'/501'/0'/0'", serializedTx, {
|
|
105
|
+
* transactionResolutionContext: resolution,
|
|
106
|
+
* });
|
|
107
|
+
* observable.subscribe({
|
|
108
|
+
* next: state => {
|
|
109
|
+
* if (state.status === DeviceActionStatus.Pending) {
|
|
110
|
+
* console.log("Waiting for user action...", state.intermediateValue);
|
|
111
|
+
* }
|
|
112
|
+
* if (state.status === DeviceActionStatus.Completed) {
|
|
113
|
+
* console.log("Signature:", state.output);
|
|
114
|
+
* }
|
|
115
|
+
* },
|
|
116
|
+
* error: err => console.error("Error:", err),
|
|
117
|
+
* });
|
|
118
|
+
* ```
|
|
119
|
+
*/
|
|
120
|
+
signTransaction(derivationPath: string, transaction: Transaction, solanaTransactionOptionalConfig?: SolanaTransactionOptionalConfig): SignTransactionDAReturnType;
|
|
121
|
+
/**
|
|
122
|
+
* ## signMessage
|
|
123
|
+
* #### Securely sign an arbitrary message on Ledger devices.
|
|
124
|
+
* ---
|
|
125
|
+
* ### Parameters
|
|
126
|
+
*
|
|
127
|
+
* **Required**
|
|
128
|
+
* - **derivationPath** `string`
|
|
129
|
+
* The derivation path used for signing.
|
|
130
|
+
*
|
|
131
|
+
* - **message** `string (hex-encoded)`
|
|
132
|
+
* The message to sign, provided as a hex string.
|
|
133
|
+
*
|
|
134
|
+
* **Optional**
|
|
135
|
+
* - **options** `MessageOptions`
|
|
136
|
+
* - **skipOpenApp** `boolean`
|
|
137
|
+
* If `true`, skips opening the Solana app on the device.
|
|
138
|
+
*
|
|
139
|
+
* ---
|
|
140
|
+
* ### Returns
|
|
141
|
+
*
|
|
142
|
+
* - `observable` That emits DeviceActionState updates
|
|
143
|
+
* - `cancel` A function to cancel the action on the Ledger device.
|
|
144
|
+
*
|
|
145
|
+
* ---
|
|
146
|
+
* ### Internal Flow
|
|
147
|
+
*
|
|
148
|
+
* Under the hood, this method subscribes to an
|
|
149
|
+
* `Observable<DeviceActionState<Uint8Array, SignMessageDAError, IntermediateValue>>`.
|
|
150
|
+
*
|
|
151
|
+
* #### DeviceActionState
|
|
152
|
+
* Represents the lifecycle of a device action:
|
|
153
|
+
*
|
|
154
|
+
* ```ts
|
|
155
|
+
* type DeviceActionState<Output, Error, IntermediateValue> =
|
|
156
|
+
* | { status: DeviceActionStatus.NotStarted }
|
|
157
|
+
* | { status: DeviceActionStatus.Pending; intermediateValue: IntermediateValue }
|
|
158
|
+
* | { status: DeviceActionStatus.Stopped }
|
|
159
|
+
* | { status: DeviceActionStatus.Completed; output: Output }
|
|
160
|
+
* | { status: DeviceActionStatus.Error; error: Error };
|
|
161
|
+
*
|
|
162
|
+
* enum DeviceActionStatus {
|
|
163
|
+
* NotStarted = "not-started",
|
|
164
|
+
* Pending = "pending",
|
|
165
|
+
* Stopped = "stopped",
|
|
166
|
+
* Completed = "completed",
|
|
167
|
+
* Error = "error"
|
|
168
|
+
* }
|
|
169
|
+
* ```
|
|
170
|
+
*
|
|
171
|
+
* - **NotStarted** → Action hasn’t begun.
|
|
172
|
+
* - **Pending** → Waiting for user confirmation on the device.
|
|
173
|
+
* Includes an `intermediateValue` of type `IntermediateValue`.
|
|
174
|
+
* - **Stopped** → Action was cancelled before completion.
|
|
175
|
+
* - **Completed** → Provides the signed message bytes (`Uint8Array`).
|
|
176
|
+
* - **Error** → The device or signing operation failed (`SignMessageDAError`).
|
|
177
|
+
*
|
|
178
|
+
* ---
|
|
179
|
+
* ### Example
|
|
180
|
+
*
|
|
181
|
+
* ```ts
|
|
182
|
+
* const { observable } = signerSolana.signMessage(
|
|
183
|
+
* "m/44'/501'/0'/0'",
|
|
184
|
+
* "48656c6c6f20576f726c64" // hex string
|
|
185
|
+
* );
|
|
186
|
+
* observable.subscribe({
|
|
187
|
+
* next: state => {
|
|
188
|
+
* if (state.status === DeviceActionStatus.Pending) {
|
|
189
|
+
* console.log("Waiting for user action...", state.intermediateValue);
|
|
190
|
+
* }
|
|
191
|
+
* if (state.status === DeviceActionStatus.Completed) {
|
|
192
|
+
* console.log("Signature:", state.output);
|
|
193
|
+
* }
|
|
194
|
+
* },
|
|
195
|
+
* error: err => console.error("Error:", err),
|
|
196
|
+
* });
|
|
197
|
+
* ```
|
|
198
|
+
*/
|
|
20
199
|
signMessage(derivationPath: string, message: string, options?: MessageOptions): SignMessageDAReturnType;
|
|
200
|
+
/**
|
|
201
|
+
* ## getAddress
|
|
202
|
+
* #### Retrieve a Solana address from Ledger devices.
|
|
203
|
+
* ---
|
|
204
|
+
* ### Parameters
|
|
205
|
+
*
|
|
206
|
+
* **Required**
|
|
207
|
+
* - **derivationPath** `string`
|
|
208
|
+
* The derivation path of the account to retrieve the address from.
|
|
209
|
+
*
|
|
210
|
+
* **Optional**
|
|
211
|
+
* - **options** `AddressOptions`
|
|
212
|
+
* - **checkOnDevice** `boolean`
|
|
213
|
+
* If `true`, prompts the user to verify the address on the device.
|
|
214
|
+
*
|
|
215
|
+
* - **skipOpenApp** `boolean`
|
|
216
|
+
* If `true`, skips opening the Solana app on the device.
|
|
217
|
+
*
|
|
218
|
+
* ---
|
|
219
|
+
* ### Returns
|
|
220
|
+
*
|
|
221
|
+
* - `observable` That emits DeviceActionState updates
|
|
222
|
+
* - `cancel` A function to cancel the action on the Ledger device.
|
|
223
|
+
*
|
|
224
|
+
* ---
|
|
225
|
+
* ### Internal Flow
|
|
226
|
+
*
|
|
227
|
+
* Under the hood, this method subscribes to an
|
|
228
|
+
* `Observable<DeviceActionState<string, GetAddressDAError, IntermediateValue>>`.
|
|
229
|
+
*
|
|
230
|
+
* #### DeviceActionState
|
|
231
|
+
* Represents the lifecycle of a device action:
|
|
232
|
+
*
|
|
233
|
+
* ```ts
|
|
234
|
+
* type DeviceActionState<Output, Error, IntermediateValue> =
|
|
235
|
+
* | { status: DeviceActionStatus.NotStarted }
|
|
236
|
+
* | { status: DeviceActionStatus.Pending; intermediateValue: IntermediateValue }
|
|
237
|
+
* | { status: DeviceActionStatus.Stopped }
|
|
238
|
+
* | { status: DeviceActionStatus.Completed; output: Output }
|
|
239
|
+
* | { status: DeviceActionStatus.Error; error: Error };
|
|
240
|
+
*
|
|
241
|
+
* enum DeviceActionStatus {
|
|
242
|
+
* NotStarted = "not-started",
|
|
243
|
+
* Pending = "pending",
|
|
244
|
+
* Stopped = "stopped",
|
|
245
|
+
* Completed = "completed",
|
|
246
|
+
* Error = "error"
|
|
247
|
+
* }
|
|
248
|
+
* ```
|
|
249
|
+
*
|
|
250
|
+
* - **NotStarted** → Action hasn’t begun.
|
|
251
|
+
* - **Pending** → Waiting for user confirmation on the device.
|
|
252
|
+
* Includes an `intermediateValue` of type `IntermediateValue`.
|
|
253
|
+
* - **Stopped** → Action was cancelled before completion.
|
|
254
|
+
* - **Completed** → Provides the base58-encoded address string, decoded to `Uint8Array`.
|
|
255
|
+
* - **Error** → The device or signing operation failed (`GetAddressDAError`).
|
|
256
|
+
*
|
|
257
|
+
*/
|
|
21
258
|
getAddress(derivationPath: string, options?: AddressOptions): GetAddressDAReturnType;
|
|
259
|
+
/**
|
|
260
|
+
* ## getAppConfiguration
|
|
261
|
+
* #### Retrieve the current Solana app configuration from a Ledger device.
|
|
262
|
+
* ---
|
|
263
|
+
* ### Parameters
|
|
264
|
+
*
|
|
265
|
+
* This method does not require any parameters.
|
|
266
|
+
*
|
|
267
|
+
* ---
|
|
268
|
+
* ### Returns
|
|
269
|
+
*
|
|
270
|
+
* - `observable` That emits DeviceActionState updates
|
|
271
|
+
* - `cancel` A function to cancel the action on the Ledger device.
|
|
272
|
+
*
|
|
273
|
+
* ---
|
|
274
|
+
* ### Internal Flow
|
|
275
|
+
*
|
|
276
|
+
* Under the hood, this method subscribes to an
|
|
277
|
+
* `Observable<DeviceActionState<GetAppConfigurationResult, Error, IntermediateValue>>`.
|
|
278
|
+
*
|
|
279
|
+
* #### DeviceActionState
|
|
280
|
+
* Represents the lifecycle of a device action:
|
|
281
|
+
*
|
|
282
|
+
* ```ts
|
|
283
|
+
* type DeviceActionState<Output, Error, IntermediateValue> =
|
|
284
|
+
* | { status: DeviceActionStatus.NotStarted }
|
|
285
|
+
* | { status: DeviceActionStatus.Pending; intermediateValue: IntermediateValue }
|
|
286
|
+
* | { status: DeviceActionStatus.Stopped }
|
|
287
|
+
* | { status: DeviceActionStatus.Completed; output: Output }
|
|
288
|
+
* | { status: DeviceActionStatus.Error; error: Error };
|
|
289
|
+
*
|
|
290
|
+
* enum DeviceActionStatus {
|
|
291
|
+
* NotStarted = "not-started",
|
|
292
|
+
* Pending = "pending",
|
|
293
|
+
* Stopped = "stopped",
|
|
294
|
+
* Completed = "completed",
|
|
295
|
+
* Error = "error"
|
|
296
|
+
* }
|
|
297
|
+
* ```
|
|
298
|
+
*
|
|
299
|
+
* - **NotStarted** → Action hasn’t begun.
|
|
300
|
+
* - **Pending** → Waiting for user confirmation on the device.
|
|
301
|
+
* Includes an `intermediateValue` of type `IntermediateValue`.
|
|
302
|
+
* - **Stopped** → Action was cancelled before completion.
|
|
303
|
+
* - **Completed** → Provides the app configuration object.
|
|
304
|
+
* - **Error** → The device or signing operation failed.
|
|
305
|
+
*
|
|
306
|
+
* ---
|
|
307
|
+
* ### Example
|
|
308
|
+
*
|
|
309
|
+
* ```ts
|
|
310
|
+
* const config = await signerSolana.getAppConfiguration();
|
|
311
|
+
* console.log(config.version, config.flags);
|
|
312
|
+
* ```
|
|
313
|
+
*/
|
|
22
314
|
getAppConfiguration(): GetAppConfigurationDAReturnType;
|
|
23
315
|
}
|
|
24
316
|
//# sourceMappingURL=DefaultSignerSolana.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultSignerSolana.d.ts","sourceRoot":"","sources":["../../../src/internal/DefaultSignerSolana.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACrB,MAAM,iCAAiC,CAAC;AAGzC,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAC1F,OAAO,EAAE,KAAK,+BAA+B,EAAE,MAAM,sDAAsD,CAAC;AAC5G,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AAC5F,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,kDAAkD,CAAC;AACpG,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAStD,MAAM,MAAM,kCAAkC,GAAG;IAC/C,GAAG,EAAE,mBAAmB,CAAC;IACzB,SAAS,EAAE,eAAe,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF,qBAAa,mBAAoB,YAAW,YAAY;IACtD,OAAO,CAAC,UAAU,CAAY;gBAElB,EACV,GAAG,EACH,SAAS,EACT,aAAa,GACd,EAAE,kCAAkC;IAIrC,eAAe,CACb,cAAc,EAAE,MAAM,EACtB,WAAW,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"DefaultSignerSolana.d.ts","sourceRoot":"","sources":["../../../src/internal/DefaultSignerSolana.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACrB,MAAM,iCAAiC,CAAC;AAGzC,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAC1F,OAAO,EAAE,KAAK,+BAA+B,EAAE,MAAM,sDAAsD,CAAC;AAC5G,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AAC5F,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,kDAAkD,CAAC;AACpG,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,KAAK,+BAA+B,EAAE,MAAM,4CAA4C,CAAC;AAClG,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAStD,MAAM,MAAM,kCAAkC,GAAG;IAC/C,GAAG,EAAE,mBAAmB,CAAC;IACzB,SAAS,EAAE,eAAe,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF,qBAAa,mBAAoB,YAAW,YAAY;IACtD,OAAO,CAAC,UAAU,CAAY;gBAElB,EACV,GAAG,EACH,SAAS,EACT,aAAa,GACd,EAAE,kCAAkC;IAIrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmGG;IACH,eAAe,CACb,cAAc,EAAE,MAAM,EACtB,WAAW,EAAE,WAAW,EACxB,+BAA+B,CAAC,EAAE,+BAA+B,GAChE,2BAA2B;IAM9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6EG;IACH,WAAW,CACT,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,cAAc,GACvB,uBAAuB;IAM1B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAyDG;IACH,UAAU,CACR,cAAc,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,cAAc,GACvB,sBAAsB;IAMzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAsDG;IACH,mBAAmB,IAAI,+BAA+B;CAKvD"}
|
|
@@ -5,6 +5,7 @@ import { GetAddressDAReturnType } from "../../api/app-binder/GetAddressDeviceAct
|
|
|
5
5
|
import { GetAppConfigurationDAReturnType } from "../../api/app-binder/GetAppConfigurationDeviceActionTypes";
|
|
6
6
|
import { SignMessageDAReturnType } from "../../api/app-binder/SignMessageDeviceActionTypes";
|
|
7
7
|
import { SignTransactionDAReturnType } from "../../api/app-binder/SignTransactionDeviceActionTypes";
|
|
8
|
+
import { SolanaTransactionOptionalConfig } from "../../api/model/SolanaTransactionOptionalConfig";
|
|
8
9
|
import { Transaction } from "../../api/model/Transaction";
|
|
9
10
|
export declare class SolanaAppBinder {
|
|
10
11
|
private dmk;
|
|
@@ -19,7 +20,7 @@ export declare class SolanaAppBinder {
|
|
|
19
20
|
signTransaction(args: {
|
|
20
21
|
derivationPath: string;
|
|
21
22
|
transaction: Transaction;
|
|
22
|
-
|
|
23
|
+
solanaTransactionOptionalConfig?: SolanaTransactionOptionalConfig;
|
|
23
24
|
}): SignTransactionDAReturnType;
|
|
24
25
|
generateTransaction(args: {
|
|
25
26
|
derivationPath: string;
|