From 15a7b0306676c8a83a0f14de846656d73a3d1366 Mon Sep 17 00:00:00 2001 From: Karl Anthony Baluyot Date: Mon, 30 Jan 2023 11:18:03 +0800 Subject: [PATCH 1/6] feat: add injected defi wallet --- packages/injected/src/constants.ts | 3 ++- packages/injected/src/icons/defiwallet.ts | 7 +++++++ packages/injected/src/types.ts | 10 +++++++--- packages/injected/src/wallets.ts | 15 ++++++++++++++- 4 files changed, 30 insertions(+), 5 deletions(-) create mode 100644 packages/injected/src/icons/defiwallet.ts diff --git a/packages/injected/src/constants.ts b/packages/injected/src/constants.ts index f88a28b6d..b78ada7ca 100644 --- a/packages/injected/src/constants.ts +++ b/packages/injected/src/constants.ts @@ -20,5 +20,6 @@ export const WALLET_NAMES: { [key: string]: string } = { trust: 'Trust Wallet', frontier: 'Frontier', zerion: 'Zerion', - rainbow: 'Rainbow' + rainbow: 'Rainbow', + defiwallet: 'DeFi Wallet' } diff --git a/packages/injected/src/icons/defiwallet.ts b/packages/injected/src/icons/defiwallet.ts new file mode 100644 index 000000000..196c1f2f4 --- /dev/null +++ b/packages/injected/src/icons/defiwallet.ts @@ -0,0 +1,7 @@ +export default ` + + +` diff --git a/packages/injected/src/types.ts b/packages/injected/src/types.ts index b9ff9df64..368d40b74 100644 --- a/packages/injected/src/types.ts +++ b/packages/injected/src/types.ts @@ -56,7 +56,8 @@ export enum ProviderIdentityFlag { Zeal = 'isZeal', Zerion = 'isZerion', Rainbow = 'isRainbow', - SafePal = 'isSafePal' + SafePal = 'isSafePal', + DeFiWallet = 'isDeficonnectProvider' } export enum ProviderLabel { @@ -103,7 +104,8 @@ export enum ProviderLabel { OKXWallet = 'OKX Wallet', Zerion = 'Zerion', Rainbow = 'Rainbow', - SafePal = 'SafePal' + SafePal = 'SafePal', + DeFiWallet = 'DeFi Wallet' } export interface MeetOneProvider extends ExternalProvider { @@ -132,7 +134,8 @@ export enum InjectedNameSpace { Phantom = 'phantom', OKXWallet = 'okxwallet', Trust = 'trustwallet', - Frontier = 'frontier' + Frontier = 'frontier', + DeFiConnectProvider = 'deficonnectProvider' } export interface CustomWindow extends Window { @@ -166,6 +169,7 @@ export interface CustomWindow extends Window { } okxwallet: InjectedProvider trustwallet: InjectedProvider + deficonnectProvider: InjectedProvider } export type InjectedProvider = ExternalProvider & diff --git a/packages/injected/src/wallets.ts b/packages/injected/src/wallets.ts index 465e534d4..4201ad1be 100644 --- a/packages/injected/src/wallets.ts +++ b/packages/injected/src/wallets.ts @@ -703,6 +703,18 @@ const okxwallet: InjectedWalletModule = { platforms: ['desktop'] } +const defiwallet: InjectedWalletModule = { + label: ProviderLabel.DeFiWallet, + injectedNamespace: InjectedNameSpace.DeFiConnectProvider, + checkProviderIdentity: ({ provider }) => + !!provider && !!provider[ProviderIdentityFlag.DeFiWallet], + getIcon: async () => (await import('./icons/defiwallet.js')).default, + getInterface: async () => ({ + provider: createEIP1193Provider(window.deficonnectProvider) + }), + platforms: ['all'], +} + const wallets = [ zeal, exodus, @@ -745,7 +757,8 @@ const wallets = [ okxwallet, zerion, rainbow, - safepal + safepal, + defiwallet ] export default wallets From 4124ace07e3fe287409f11119b5aa6e6cc5414fa Mon Sep 17 00:00:00 2001 From: Karl Anthony Baluyot Date: Mon, 30 Jan 2023 11:41:44 +0800 Subject: [PATCH 2/6] build: bump injected package --- packages/injected/package.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/injected/package.json b/packages/injected/package.json index 548a94efb..afa867469 100644 --- a/packages/injected/package.json +++ b/packages/injected/package.json @@ -1,6 +1,6 @@ { "name": "@web3-onboard/injected-wallets", - "version": "2.6.2-alpha.3", + "version": "2.6.3-alpha.1", "description": "Injected wallet module for connecting browser extension and mobile wallets to Web3-Onboard. Web3-Onboard makes it simple to connect Ethereum hardware and software wallets to your dapp. Features standardised spec compliant web3 providers for all supported wallets, framework agnostic modern javascript UI with code splitting, CSS customization, multi-chain and multi-account support, reactive wallet state subscriptions and real-time transaction state change notifications.", "keywords": [ "Ethereum", @@ -31,7 +31,8 @@ "confirmed", "Injected Wallet", "GameStop", - "Phantom" + "Phantom", + "DeFi Wallet" ], "repository": { "type": "git", From 8a47b3928378197a9c22e88b1706240cf596bd4b Mon Sep 17 00:00:00 2001 From: Karl Anthony Baluyot Date: Mon, 30 Jan 2023 11:46:52 +0800 Subject: [PATCH 3/6] docs: add defi wallet --- docs/src/routes/docs/[...4]wallets/injected.md | 1 + packages/injected/README.md | 1 + 2 files changed, 2 insertions(+) diff --git a/docs/src/routes/docs/[...4]wallets/injected.md b/docs/src/routes/docs/[...4]wallets/injected.md index 26010db4b..29c8ca909 100644 --- a/docs/src/routes/docs/[...4]wallets/injected.md +++ b/docs/src/routes/docs/[...4]wallets/injected.md @@ -310,6 +310,7 @@ const injected = injectedModule({ - Exodus - _Desktop & Mobile_ - Frontier - _Desktop & Mobile_ - Rainbow - _Desktop & Mobile_ +- DeFiWallet - _Desktop & Mobile_ ## Build Environments diff --git a/packages/injected/README.md b/packages/injected/README.md index 8027f7cc1..d78e77b57 100644 --- a/packages/injected/README.md +++ b/packages/injected/README.md @@ -78,6 +78,7 @@ console.log(connectedWallets) - Exodus - _Desktop & Mobile_ - Frontier - _Desktop & Mobile_ - Rainbow - _Desktop & Mobile_ +- DeFiWallet - _Desktop & Mobile_ ## Filtering Wallets From 88da5e369242b935cf60d2969e4513b5d9107ac1 Mon Sep 17 00:00:00 2001 From: Karl Anthony Baluyot Date: Mon, 30 Jan 2023 11:47:30 +0800 Subject: [PATCH 4/6] build: bump demo injected package --- packages/demo/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/demo/package.json b/packages/demo/package.json index 0bdf0c6b5..a3c17b595 100644 --- a/packages/demo/package.json +++ b/packages/demo/package.json @@ -34,7 +34,7 @@ "@web3-onboard/keepkey": "^2.3.3", "@web3-onboard/keystone": "^2.3.3", "@web3-onboard/ledger": "^2.4.2", - "@web3-onboard/injected-wallets": "^2.6.2-alpha.3", + "@web3-onboard/injected-wallets": "^2.6.3-alpha.1", "@web3-onboard/magic": "^2.1.3", "@web3-onboard/phantom": "^2.0.0-alpha.1", "@web3-onboard/portis": "^2.1.3", From 8d8d4d913c93e45fadff526cef15dd828859f876 Mon Sep 17 00:00:00 2001 From: Adam Carpenter Date: Mon, 30 Jan 2023 09:23:25 -0700 Subject: [PATCH 5/6] Update packages/demo/package.json --- packages/demo/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/demo/package.json b/packages/demo/package.json index a3c17b595..28f68f9d1 100644 --- a/packages/demo/package.json +++ b/packages/demo/package.json @@ -34,7 +34,7 @@ "@web3-onboard/keepkey": "^2.3.3", "@web3-onboard/keystone": "^2.3.3", "@web3-onboard/ledger": "^2.4.2", - "@web3-onboard/injected-wallets": "^2.6.3-alpha.1", + "@web3-onboard/injected-wallets": "^2.6.2-alpha.4", "@web3-onboard/magic": "^2.1.3", "@web3-onboard/phantom": "^2.0.0-alpha.1", "@web3-onboard/portis": "^2.1.3", From 3bc752d2501a2a5b11f94cae89f65582031d29b5 Mon Sep 17 00:00:00 2001 From: Adam Carpenter Date: Mon, 30 Jan 2023 09:23:31 -0700 Subject: [PATCH 6/6] Update packages/injected/package.json --- packages/injected/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/injected/package.json b/packages/injected/package.json index afa867469..82f556f1c 100644 --- a/packages/injected/package.json +++ b/packages/injected/package.json @@ -1,6 +1,6 @@ { "name": "@web3-onboard/injected-wallets", - "version": "2.6.3-alpha.1", + "version": "2.6.2-alpha.4", "description": "Injected wallet module for connecting browser extension and mobile wallets to Web3-Onboard. Web3-Onboard makes it simple to connect Ethereum hardware and software wallets to your dapp. Features standardised spec compliant web3 providers for all supported wallets, framework agnostic modern javascript UI with code splitting, CSS customization, multi-chain and multi-account support, reactive wallet state subscriptions and real-time transaction state change notifications.", "keywords": [ "Ethereum",