From fd45c5d3afa44b7bfe1ca0642beb2b72557f0f73 Mon Sep 17 00:00:00 2001 From: ByteZhang <ByteZhang@protonmail.com> Date: Mon, 6 Jan 2025 14:20:52 +0800 Subject: [PATCH] Feat/sol sign offchain message (#280) * feat: add solSignOffchainMessage * chore: release version 2.2.7-alpha.1 --- packages/core/package.json | 8 ++-- .../desktop-bridge-injected/package.json | 6 +-- packages/e2e/package.json | 8 ++-- packages/empty/package.json | 2 +- packages/errors/package.json | 2 +- packages/events/package.json | 2 +- .../components/chains/solana/example.tsx | 40 +++++++++++++++++- .../example/components/chains/solana/types.ts | 7 ++++ packages/example/package.json | 24 +++++------ .../extension-bridge-hosted/package.json | 6 +-- .../extension-bridge-injected/package.json | 6 +-- packages/injected/package.json | 14 +++---- .../native-bridge-injected/package.json | 6 +-- .../inpage-providers-hub/package.json | 42 +++++++++---------- .../onekey-algo-provider/package.json | 10 ++--- .../onekey-alph-provider/package.json | 10 ++--- .../onekey-aptos-provider/package.json | 10 ++--- .../onekey-bfc-provider/package.json | 10 ++--- .../onekey-btc-provider/package.json | 10 ++--- .../onekey-cardano-provider/package.json | 10 ++--- .../onekey-conflux-provider/package.json | 10 ++--- .../onekey-cosmos-provider/package.json | 10 ++--- .../onekey-eth-provider/package.json | 10 ++--- .../onekey-near-provider/package.json | 10 ++--- .../onekey-nostr-provider/package.json | 10 ++--- .../onekey-polkadot-provider/package.json | 10 ++--- .../onekey-private-provider/package.json | 10 ++--- .../onekey-scdo-provider/package.json | 10 ++--- .../onekey-solana-provider/package.json | 10 ++--- .../src/ProviderSolana.ts | 26 ++++++++++++ .../onekey-sui-provider/package.json | 10 ++--- .../onekey-ton-provider/package.json | 10 ++--- .../onekey-tron-provider/package.json | 10 ++--- .../onekey-webln-provider/package.json | 10 ++--- packages/types/package.json | 2 +- packages/webview/package.json | 6 +-- 36 files changed, 234 insertions(+), 163 deletions(-) diff --git a/packages/core/package.json b/packages/core/package.json index 6c250b92f..699358d78 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/cross-inpage-provider-core", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -29,9 +29,9 @@ "build-version-info": "node ./scripts/buildVersionInfo.js" }, "dependencies": { - "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-events": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", + "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-events": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", "events": "^3.3.0", "lodash-es": "^4.17.21", "ms": "^2.1.3" diff --git a/packages/desktop/desktop-bridge-injected/package.json b/packages/desktop/desktop-bridge-injected/package.json index b2ad04b0e..c69b3b53c 100644 --- a/packages/desktop/desktop-bridge-injected/package.json +++ b/packages/desktop/desktop-bridge-injected/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/desktop-bridge-injected", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -34,7 +34,7 @@ "electron": "^17.2.0" }, "dependencies": { - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0" + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1" } } diff --git a/packages/e2e/package.json b/packages/e2e/package.json index 2de95c6f3..3f9bd4b40 100644 --- a/packages/e2e/package.json +++ b/packages/e2e/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@onekeyfe/e2e", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -31,9 +31,9 @@ "test:ui": "yarn env && npx playwright test --ui " }, "dependencies": { - "@onekeyfe/cross-inpage-provider-injected": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/inpage-providers-hub": "2.2.7-alpha.0", + "@onekeyfe/cross-inpage-provider-injected": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/inpage-providers-hub": "2.2.7-alpha.1", "lodash-es": "^4.17.21" }, "devDependencies": { diff --git a/packages/empty/package.json b/packages/empty/package.json index ec3fa1559..4e1f191b0 100644 --- a/packages/empty/package.json +++ b/packages/empty/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/cross-inpage-provider-empty", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], diff --git a/packages/errors/package.json b/packages/errors/package.json index aeca7ecc7..9329e8b6d 100644 --- a/packages/errors/package.json +++ b/packages/errors/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/cross-inpage-provider-errors", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], diff --git a/packages/events/package.json b/packages/events/package.json index aa4b70ad4..6e49602b9 100644 --- a/packages/events/package.json +++ b/packages/events/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/cross-inpage-provider-events", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], diff --git a/packages/example/components/chains/solana/example.tsx b/packages/example/components/chains/solana/example.tsx index c231983e5..857b9191f 100644 --- a/packages/example/components/chains/solana/example.tsx +++ b/packages/example/components/chains/solana/example.tsx @@ -13,6 +13,7 @@ import params from './params'; import { createTransferTransaction, createVersionedTransaction, createTokenTransferTransaction } from './builder'; import nacl from 'tweetnacl'; import { toast } from '../../ui/use-toast'; +import { OffchainMessage } from '../solanaStandard/OffchainMessage'; const NETWORK = clusterApiUrl('mainnet-beta'); @@ -177,6 +178,43 @@ export default function Example() { publicKeyObj.toBytes(), ); + return Promise.resolve(isValidSignature.toString()); + }} + /> + <ApiPayload + title="solSignOffchainMessage" + description="签名消息(OneKey 私有方法)" + presupposeParams={params.signMessage} + onExecute={async (request: string) => { + return await provider?.solSignOffchainMessage(Buffer.from(request, 'utf8')); + }} + onValidate={(request: string, result: string) => { + // const message = bs58.decode(request).toString(); + const { + signature, + publicKey, + }: { + signature: any; + publicKey: string; + } = JSON.parse(result); + + let signatureObj; + if(Array.isArray(signature)) { + signatureObj = new Uint8Array(signature) + } else { + signatureObj = new Uint8Array(signature.data) + } + const publicKeyObj = new PublicKey(publicKey); + + const offchainMessage = new OffchainMessage({ + message: Buffer.from(request, 'utf8'), + }); + const isValidSignature = nacl.sign.detached.verify( + offchainMessage.serialize(), + signatureObj, + publicKeyObj.toBytes(), + ); + return Promise.resolve(isValidSignature.toString()); }} /> @@ -337,7 +375,7 @@ export default function Example() { amount: number; decimals: number; } = JSON.parse(request); - + const recentBlockhash = (await connection.getLatestBlockhash()).blockhash; const transaction = await createTokenTransferTransaction( connection, diff --git a/packages/example/components/chains/solana/types.ts b/packages/example/components/chains/solana/types.ts index 7eaa810b7..dda599ce9 100644 --- a/packages/example/components/chains/solana/types.ts +++ b/packages/example/components/chains/solana/types.ts @@ -14,6 +14,13 @@ export interface IProviderApi { signature: Uint8Array; publicKey: PublicKey; }>; + solSignOffchainMessage( + data: Uint8Array, + version?: number, + ): Promise<{ + signature: Uint8Array; + publicKey: PublicKey; + }>; signAndSendTransaction(transafe: Transaction): Promise<{ signature: Uint8Array; }>; diff --git a/packages/example/package.json b/packages/example/package.json index f68bac011..ad9991f40 100644 --- a/packages/example/package.json +++ b/packages/example/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/cross-inpage-provider-example", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "private": true, "scripts": { "postinstall": "patch-package", @@ -28,17 +28,17 @@ "@metamask/onboarding": "^1.0.1", "@mizuwallet-sdk/core": "^1.4.0", "@mysten/dapp-kit": "0.13.2", - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/onekey-aptos-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-cardano-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-conflux-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-cosmos-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-near-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-solana-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-sui-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-tron-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-webln-provider": "2.2.7-alpha.0", + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/onekey-aptos-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-cardano-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-conflux-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-cosmos-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-near-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-solana-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-sui-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-tron-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-webln-provider": "2.2.7-alpha.1", "@polkadot/api": "^9.11.3", "@polkadot/extension-dapp": "^0.47.5", "@radix-ui/react-checkbox": "^1.1.2", diff --git a/packages/extension/extension-bridge-hosted/package.json b/packages/extension/extension-bridge-hosted/package.json index 734d7550d..630fda99a 100644 --- a/packages/extension/extension-bridge-hosted/package.json +++ b/packages/extension/extension-bridge-hosted/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/extension-bridge-hosted", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -28,8 +28,8 @@ "start": "tsc --watch" }, "dependencies": { - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", "uuid": "^8.3.2" }, "devDependencies": { diff --git a/packages/extension/extension-bridge-injected/package.json b/packages/extension/extension-bridge-injected/package.json index 9a7832ab7..48eb850df 100644 --- a/packages/extension/extension-bridge-injected/package.json +++ b/packages/extension/extension-bridge-injected/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/extension-bridge-injected", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -28,7 +28,7 @@ "start": "tsc --watch" }, "dependencies": { - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0" + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1" } } diff --git a/packages/injected/package.json b/packages/injected/package.json index b114ccb6a..1efda254f 100644 --- a/packages/injected/package.json +++ b/packages/injected/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/cross-inpage-provider-injected", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -43,12 +43,12 @@ "electron": "*" }, "dependencies": { - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/desktop-bridge-injected": "2.2.7-alpha.0", - "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.0", - "@onekeyfe/inpage-providers-hub": "2.2.7-alpha.0", - "@onekeyfe/native-bridge-injected": "2.2.7-alpha.0", + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/desktop-bridge-injected": "2.2.7-alpha.1", + "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.1", + "@onekeyfe/inpage-providers-hub": "2.2.7-alpha.1", + "@onekeyfe/native-bridge-injected": "2.2.7-alpha.1", "buffer": "^6.0.3", "crypto-browserify": "^3.12.0" } diff --git a/packages/native/native-bridge-injected/package.json b/packages/native/native-bridge-injected/package.json index 79cd41a06..3a20d009a 100644 --- a/packages/native/native-bridge-injected/package.json +++ b/packages/native/native-bridge-injected/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/native-bridge-injected", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -28,7 +28,7 @@ "start": "tsc --watch" }, "dependencies": { - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0" + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1" } } diff --git a/packages/providers/inpage-providers-hub/package.json b/packages/providers/inpage-providers-hub/package.json index 08a5492a8..ec0e83a4c 100644 --- a/packages/providers/inpage-providers-hub/package.json +++ b/packages/providers/inpage-providers-hub/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/inpage-providers-hub", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -28,26 +28,26 @@ "start": "tsc --watch" }, "dependencies": { - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/onekey-algo-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-alph-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-aptos-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-bfc-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-btc-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-cardano-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-conflux-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-cosmos-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-eth-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-nostr-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-polkadot-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-private-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-scdo-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-solana-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-sui-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-ton-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-tron-provider": "2.2.7-alpha.0", - "@onekeyfe/onekey-webln-provider": "2.2.7-alpha.0", + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/onekey-algo-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-alph-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-aptos-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-bfc-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-btc-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-cardano-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-conflux-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-cosmos-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-eth-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-nostr-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-polkadot-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-private-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-scdo-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-solana-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-sui-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-ton-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-tron-provider": "2.2.7-alpha.1", + "@onekeyfe/onekey-webln-provider": "2.2.7-alpha.1", "lodash-es": "^4.17.21", "preact": "^10.25.1", "web3": "^1.7.3" diff --git a/packages/providers/onekey-algo-provider/package.json b/packages/providers/onekey-algo-provider/package.json index ebe83efe2..32a4b84c9 100644 --- a/packages/providers/onekey-algo-provider/package.json +++ b/packages/providers/onekey-algo-provider/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/onekey-algo-provider", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -28,9 +28,9 @@ "start": "tsc --watch" }, "dependencies": { - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.0" + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.1" } } diff --git a/packages/providers/onekey-alph-provider/package.json b/packages/providers/onekey-alph-provider/package.json index df33d20fe..ae963da6b 100644 --- a/packages/providers/onekey-alph-provider/package.json +++ b/packages/providers/onekey-alph-provider/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/onekey-alph-provider", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -31,9 +31,9 @@ "@alephium/get-extension-wallet": "^1.5.2", "@alephium/walletconnect-provider": "^1.5.2", "@alephium/web3": "^1.5.2", - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.0" + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.1" } } diff --git a/packages/providers/onekey-aptos-provider/package.json b/packages/providers/onekey-aptos-provider/package.json index 86abfade2..abce4f0f0 100644 --- a/packages/providers/onekey-aptos-provider/package.json +++ b/packages/providers/onekey-aptos-provider/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/onekey-aptos-provider", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -29,10 +29,10 @@ }, "dependencies": { "@aptos-labs/wallet-standard": "^0.2.0", - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.0", + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.1", "@wallet-standard/core": "1.0.3", "eth-rpc-errors": "^4.0.3" }, diff --git a/packages/providers/onekey-bfc-provider/package.json b/packages/providers/onekey-bfc-provider/package.json index cd7a4f6a7..5cebd537a 100644 --- a/packages/providers/onekey-bfc-provider/package.json +++ b/packages/providers/onekey-bfc-provider/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/onekey-bfc-provider", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -29,10 +29,10 @@ }, "dependencies": { "@benfen/bfc.js": "0.2.7", - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.0", + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.1", "eth-rpc-errors": "^4.0.3", "mitt": "^3.0.0" }, diff --git a/packages/providers/onekey-btc-provider/package.json b/packages/providers/onekey-btc-provider/package.json index f902805de..d62a79657 100644 --- a/packages/providers/onekey-btc-provider/package.json +++ b/packages/providers/onekey-btc-provider/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/onekey-btc-provider", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -28,9 +28,9 @@ "start": "tsc --watch" }, "dependencies": { - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.0" + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.1" } } diff --git a/packages/providers/onekey-cardano-provider/package.json b/packages/providers/onekey-cardano-provider/package.json index b7b6eb708..99f2525c2 100644 --- a/packages/providers/onekey-cardano-provider/package.json +++ b/packages/providers/onekey-cardano-provider/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/onekey-cardano-provider", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider", "cardano" @@ -29,9 +29,9 @@ "start": "tsc --watch" }, "dependencies": { - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.0" + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.1" } } diff --git a/packages/providers/onekey-conflux-provider/package.json b/packages/providers/onekey-conflux-provider/package.json index 9dd56996f..178fb199d 100644 --- a/packages/providers/onekey-conflux-provider/package.json +++ b/packages/providers/onekey-conflux-provider/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/onekey-conflux-provider", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -28,9 +28,9 @@ "start": "tsc --watch" }, "dependencies": { - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.0" + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.1" } } diff --git a/packages/providers/onekey-cosmos-provider/package.json b/packages/providers/onekey-cosmos-provider/package.json index a667dc17d..2eab3fffc 100644 --- a/packages/providers/onekey-cosmos-provider/package.json +++ b/packages/providers/onekey-cosmos-provider/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/onekey-cosmos-provider", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -29,10 +29,10 @@ }, "dependencies": { "@noble/hashes": "^1.3.0", - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.0", + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.1", "eth-rpc-errors": "^4.0.3", "lodash-es": "^4.17.21", "long": "^5.2.1", diff --git a/packages/providers/onekey-eth-provider/package.json b/packages/providers/onekey-eth-provider/package.json index 46c7ce163..4ab9f9601 100644 --- a/packages/providers/onekey-eth-provider/package.json +++ b/packages/providers/onekey-eth-provider/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/onekey-eth-provider", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -28,10 +28,10 @@ "start": "tsc --watch" }, "dependencies": { - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.0", + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.1", "eth-rpc-errors": "^4.0.3", "uuid": "^8.3.2" }, diff --git a/packages/providers/onekey-near-provider/package.json b/packages/providers/onekey-near-provider/package.json index 60f6632c7..8b4a6084a 100644 --- a/packages/providers/onekey-near-provider/package.json +++ b/packages/providers/onekey-near-provider/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/onekey-near-provider", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -35,10 +35,10 @@ "near-api-js": "^0.44.2" }, "dependencies": { - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.0", + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.1", "borsh": "^0.6.0", "depd": "^2.0.0", "tweetnacl": "^1.0.3" diff --git a/packages/providers/onekey-nostr-provider/package.json b/packages/providers/onekey-nostr-provider/package.json index f879d56a7..d6878d17a 100644 --- a/packages/providers/onekey-nostr-provider/package.json +++ b/packages/providers/onekey-nostr-provider/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/onekey-nostr-provider", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -28,9 +28,9 @@ "start": "tsc --watch" }, "dependencies": { - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.0" + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.1" } } diff --git a/packages/providers/onekey-polkadot-provider/package.json b/packages/providers/onekey-polkadot-provider/package.json index d1676ea76..451a1fcd4 100644 --- a/packages/providers/onekey-polkadot-provider/package.json +++ b/packages/providers/onekey-polkadot-provider/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/onekey-polkadot-provider", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -29,10 +29,10 @@ }, "dependencies": { "@noble/hashes": "^1.3.0", - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.0", + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.1", "@polkadot/extension-inject": "^0.46.3", "eth-rpc-errors": "^4.0.3", "long": "^5.2.1", diff --git a/packages/providers/onekey-private-provider/package.json b/packages/providers/onekey-private-provider/package.json index a594a260b..b03cc6e85 100644 --- a/packages/providers/onekey-private-provider/package.json +++ b/packages/providers/onekey-private-provider/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/onekey-private-provider", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -28,9 +28,9 @@ "start": "tsc --watch" }, "dependencies": { - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.0" + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.1" } } diff --git a/packages/providers/onekey-scdo-provider/package.json b/packages/providers/onekey-scdo-provider/package.json index 6fbbece2a..5f529c59e 100644 --- a/packages/providers/onekey-scdo-provider/package.json +++ b/packages/providers/onekey-scdo-provider/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/onekey-scdo-provider", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -28,9 +28,9 @@ "start": "tsc --watch" }, "dependencies": { - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.0" + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.1" } } diff --git a/packages/providers/onekey-solana-provider/package.json b/packages/providers/onekey-solana-provider/package.json index 16ec6caac..d509d4cd8 100644 --- a/packages/providers/onekey-solana-provider/package.json +++ b/packages/providers/onekey-solana-provider/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/onekey-solana-provider", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider", "solona" @@ -29,10 +29,10 @@ "start": "tsc --watch" }, "dependencies": { - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.0", + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.1", "@solana/wallet-standard-features": "^1.1.0", "@solana/web3.js": "^1.41.3", "@wallet-standard/base": "^1.0.1", diff --git a/packages/providers/onekey-solana-provider/src/ProviderSolana.ts b/packages/providers/onekey-solana-provider/src/ProviderSolana.ts index 33bd6de59..0a034fb7f 100644 --- a/packages/providers/onekey-solana-provider/src/ProviderSolana.ts +++ b/packages/providers/onekey-solana-provider/src/ProviderSolana.ts @@ -26,6 +26,11 @@ export type SolanaRequest = { publicKey: string; }>; + 'solSignOffchainMessage': (params: { message: string; version?: number }) => Promise<{ + signature: string; + publicKey: string; + }>; + 'signTransaction': (params: { message: string }) => Promise<Transaction>; 'signAllTransactions': (params: { message: string[] }) => Promise<Transaction[]>; @@ -338,6 +343,27 @@ class ProviderSolana extends ProviderSolanaBase implements IProviderSolana { return this._handleSignMessage({ message, display }); } + async solSignOffchainMessage( + message: Uint8Array, + version?: number, + ): Promise<{ + signature: Uint8Array; + publicKey: PublicKey; + }> { + const result = await this._callBridge({ + method: 'solSignOffchainMessage', + params: { + message: typeof message === 'string' ? message : base58.encode(message), + version, + }, + }); + + return { + signature: base58.decode(result.signature), + publicKey: new PublicKey(result.publicKey), + }; + } + private async _handleSignMessage(params: { message: Uint8Array | string; display?: DisplayEncoding; diff --git a/packages/providers/onekey-sui-provider/package.json b/packages/providers/onekey-sui-provider/package.json index 1203ad074..5a28c29ce 100644 --- a/packages/providers/onekey-sui-provider/package.json +++ b/packages/providers/onekey-sui-provider/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/onekey-sui-provider", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -29,10 +29,10 @@ }, "dependencies": { "@mysten/wallet-standard": "^0.7.2", - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.0", + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.1", "eth-rpc-errors": "^4.0.3", "mitt": "^3.0.0" } diff --git a/packages/providers/onekey-ton-provider/package.json b/packages/providers/onekey-ton-provider/package.json index f2c7147ed..21e0af63b 100644 --- a/packages/providers/onekey-ton-provider/package.json +++ b/packages/providers/onekey-ton-provider/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/onekey-ton-provider", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -28,10 +28,10 @@ "start": "tsc --watch" }, "dependencies": { - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.0", + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.1", "@tonconnect/protocol": "^2.2.6" } } diff --git a/packages/providers/onekey-tron-provider/package.json b/packages/providers/onekey-tron-provider/package.json index efca2326c..10ecacb24 100644 --- a/packages/providers/onekey-tron-provider/package.json +++ b/packages/providers/onekey-tron-provider/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/onekey-tron-provider", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -29,10 +29,10 @@ }, "dependencies": { "@noble/secp256k1": "1.7.1", - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.0", + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.1", "lodash-es": "^4.17.21", "querystring": "^0.2.1", "sunweb": "^1.0.7", diff --git a/packages/providers/onekey-webln-provider/package.json b/packages/providers/onekey-webln-provider/package.json index 5421346a7..67d7525ae 100644 --- a/packages/providers/onekey-webln-provider/package.json +++ b/packages/providers/onekey-webln-provider/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/onekey-webln-provider", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -28,9 +28,9 @@ "start": "tsc --watch" }, "dependencies": { - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0", - "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.0" + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-errors": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1", + "@onekeyfe/extension-bridge-injected": "2.2.7-alpha.1" } } diff --git a/packages/types/package.json b/packages/types/package.json index 5d6abf9f5..7a4329f4c 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/cross-inpage-provider-types", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], diff --git a/packages/webview/package.json b/packages/webview/package.json index e03a8d5ce..0e38894cb 100644 --- a/packages/webview/package.json +++ b/packages/webview/package.json @@ -1,6 +1,6 @@ { "name": "@onekeyfe/onekey-cross-webview", - "version": "2.2.7-alpha.0", + "version": "2.2.7-alpha.1", "keywords": [ "cross-inpage-provider" ], @@ -36,7 +36,7 @@ "react-native-webview": "^11.17.2" }, "dependencies": { - "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.0", - "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.0" + "@onekeyfe/cross-inpage-provider-core": "2.2.7-alpha.1", + "@onekeyfe/cross-inpage-provider-types": "2.2.7-alpha.1" } }