diff --git a/.circleci/config.yml b/.circleci/config.yml index 87d46ef60..44271810e 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -413,6 +413,18 @@ jobs: working_directory: ~/web3-onboard-monorepo/packages/venly steps: - node-build-steps + build-bitget: + docker: + - image: cimg/node:16.13.1 + working_directory: ~/web3-onboard-monorepo/packages/bitget + steps: + - node-build-steps + build-bitkeep: + docker: + - image: cimg/node:16.13.1 + working_directory: ~/web3-onboard-monorepo/packages/bitkeep + steps: + - node-build-steps # Build staging/Alpha releases build-staging-core: @@ -661,6 +673,18 @@ jobs: working_directory: ~/web3-onboard-monorepo/packages/venly steps: - node-staging-build-steps + build-staging-bitget: + docker: + - image: cimg/node:16.13.1 + working_directory: ~/web3-onboard-monorepo/packages/bitget + steps: + - node-staging-build-steps + build-staging-bitkeep: + docker: + - image: cimg/node:16.13.1 + working_directory: ~/web3-onboard-monorepo/packages/bitkeep + steps: + - node-staging-build-steps workflows: version: 2 @@ -911,3 +935,15 @@ workflows: <<: *deploy_production_filters - build-staging-venly: <<: *deploy_staging_filters + bitget: + jobs: + - build-bitget: + <<: *deploy_production_filters + - build-staging-bitget: + <<: *deploy_staging_filters + bitkeep: + jobs: + - build-bitkeep: + <<: *deploy_production_filters + - build-staging-bitkeep: + <<: *deploy_staging_filters diff --git a/docs/src/routes/docs/[...4]wallets/[...8]frontier/+page.md b/docs/src/routes/docs/[...4]wallets/[...10]frontier/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...8]frontier/+page.md rename to docs/src/routes/docs/[...4]wallets/[...10]frontier/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...9]gnosis/+page.md b/docs/src/routes/docs/[...4]wallets/[...11]gnosis/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...9]gnosis/+page.md rename to docs/src/routes/docs/[...4]wallets/[...11]gnosis/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...10]infinitywallet/+page.md b/docs/src/routes/docs/[...4]wallets/[...12]infinitywallet/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...10]infinitywallet/+page.md rename to docs/src/routes/docs/[...4]wallets/[...12]infinitywallet/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...11]injected/+page.md b/docs/src/routes/docs/[...4]wallets/[...13]injected/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...11]injected/+page.md rename to docs/src/routes/docs/[...4]wallets/[...13]injected/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...12]keepkey/+page.md b/docs/src/routes/docs/[...4]wallets/[...14]keepkey/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...12]keepkey/+page.md rename to docs/src/routes/docs/[...4]wallets/[...14]keepkey/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...13]keystone/+page.md b/docs/src/routes/docs/[...4]wallets/[...15]keystone/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...13]keystone/+page.md rename to docs/src/routes/docs/[...4]wallets/[...15]keystone/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...14]ledger/+page.md b/docs/src/routes/docs/[...4]wallets/[...16]ledger/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...14]ledger/+page.md rename to docs/src/routes/docs/[...4]wallets/[...16]ledger/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...15]magic/+page.md b/docs/src/routes/docs/[...4]wallets/[...17]magic/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...15]magic/+page.md rename to docs/src/routes/docs/[...4]wallets/[...17]magic/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...16]mew/+page.md b/docs/src/routes/docs/[...4]wallets/[...18]mew/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...16]mew/+page.md rename to docs/src/routes/docs/[...4]wallets/[...18]mew/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...17]mewwallet/+page.md b/docs/src/routes/docs/[...4]wallets/[...19]mewwallet/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...17]mewwallet/+page.md rename to docs/src/routes/docs/[...4]wallets/[...19]mewwallet/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...18]phantom/+page.md b/docs/src/routes/docs/[...4]wallets/[...20]phantom/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...18]phantom/+page.md rename to docs/src/routes/docs/[...4]wallets/[...20]phantom/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...19]portis/+page.md b/docs/src/routes/docs/[...4]wallets/[...21]portis/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...19]portis/+page.md rename to docs/src/routes/docs/[...4]wallets/[...21]portis/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...20]taho/+page.md b/docs/src/routes/docs/[...4]wallets/[...22]taho/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...20]taho/+page.md rename to docs/src/routes/docs/[...4]wallets/[...22]taho/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...21]tallyho/+page.md b/docs/src/routes/docs/[...4]wallets/[...23]tallyho/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...21]tallyho/+page.md rename to docs/src/routes/docs/[...4]wallets/[...23]tallyho/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...22]torus/+page.md b/docs/src/routes/docs/[...4]wallets/[...24]torus/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...22]torus/+page.md rename to docs/src/routes/docs/[...4]wallets/[...24]torus/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...23]trezor/+page.md b/docs/src/routes/docs/[...4]wallets/[...25]trezor/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...23]trezor/+page.md rename to docs/src/routes/docs/[...4]wallets/[...25]trezor/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...24]uauth/+page.md b/docs/src/routes/docs/[...4]wallets/[...26]uauth/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...24]uauth/+page.md rename to docs/src/routes/docs/[...4]wallets/[...26]uauth/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...25]venly/+page.md b/docs/src/routes/docs/[...4]wallets/[...27]venly/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...25]venly/+page.md rename to docs/src/routes/docs/[...4]wallets/[...27]venly/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...26]walletconnect/+page.md b/docs/src/routes/docs/[...4]wallets/[...28]walletconnect/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...26]walletconnect/+page.md rename to docs/src/routes/docs/[...4]wallets/[...28]walletconnect/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...27]walletlink/+page.md b/docs/src/routes/docs/[...4]wallets/[...29]walletlink/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...27]walletlink/+page.md rename to docs/src/routes/docs/[...4]wallets/[...29]walletlink/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...2]bitget/+page.md b/docs/src/routes/docs/[...4]wallets/[...2]bitget/+page.md new file mode 100644 index 000000000..8ba3bf23a --- /dev/null +++ b/docs/src/routes/docs/[...4]wallets/[...2]bitget/+page.md @@ -0,0 +1,48 @@ +--- +title: Bitget +--- + +# {$frontmatter.title} + +## Wallet module for connecting Bitget Wallet through web3-onboard + +Bitget Wallet SDK wallet module for connecting to Web3-Onboard. Web3-Onboard makes it simple to connect Ethereum hardware and software wallets to your dapp. Features standardized 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. + +### Install + + + + +```sh copy +yarn add @web3-onboard/bitget +``` + + + + +```sh copy +npm install @web3-onboard/bitget +``` + + + + +## Usage + +```typescript +import Onboard from '@web3-onboard/core' +import bitgetWalletModule from '@web3-onboard/bitget' + +const bitgetWallet = bitgetWalletModule() + +const onboard = Onboard({ + // ... other Onboard options + wallets: [ + bitgetWallet() + //... other wallets + ] +}) + +const connectedWallets = await onboard.connectWallet() +console.log(connectedWallets) +``` diff --git a/docs/src/routes/docs/[...4]wallets/[...28]web3auth/+page.md b/docs/src/routes/docs/[...4]wallets/[...30]web3auth/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...28]web3auth/+page.md rename to docs/src/routes/docs/[...4]wallets/[...30]web3auth/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...29]xdefi/+page.md b/docs/src/routes/docs/[...4]wallets/[...31]xdefi/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...29]xdefi/+page.md rename to docs/src/routes/docs/[...4]wallets/[...31]xdefi/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...30]zeal/+page.md b/docs/src/routes/docs/[...4]wallets/[...32]zeal/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...30]zeal/+page.md rename to docs/src/routes/docs/[...4]wallets/[...32]zeal/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...3]bitkeep/+page.md b/docs/src/routes/docs/[...4]wallets/[...3]bitkeep/+page.md new file mode 100644 index 000000000..e13da46c5 --- /dev/null +++ b/docs/src/routes/docs/[...4]wallets/[...3]bitkeep/+page.md @@ -0,0 +1,48 @@ +--- +title: BitKeep +--- + +# {$frontmatter.title} + +## Wallet module for connecting BitKeep Wallet through web3-onboard + +BitKeep Wallet SDK wallet module for connecting to Web3-Onboard. Web3-Onboard makes it simple to connect Ethereum hardware and software wallets to your dapp. Features standardized 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. + +### Install + + + + +```sh copy +yarn add @web3-onboard/bitkeep +``` + + + + +```sh copy +npm install @web3-onboard/bitkeep +``` + + + + +## Usage + +```typescript +import Onboard from '@web3-onboard/core' +import bitKeepWalletModule from '@web3-onboard/bitkeep' + +const bitKeepWallet = bitKeepWalletModule() + +const onboard = Onboard({ + // ... other Onboard options + wallets: [ + bitKeepWallet() + //... other wallets + ] +}) + +const connectedWallets = await onboard.connectWallet() +console.log(connectedWallets) +``` diff --git a/docs/src/routes/docs/[...4]wallets/[...2]blocto/+page.md b/docs/src/routes/docs/[...4]wallets/[...4]blocto/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...2]blocto/+page.md rename to docs/src/routes/docs/[...4]wallets/[...4]blocto/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...3]coinbase/+page.md b/docs/src/routes/docs/[...4]wallets/[...5]coinbase/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...3]coinbase/+page.md rename to docs/src/routes/docs/[...4]wallets/[...5]coinbase/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...4]dcent/+page.md b/docs/src/routes/docs/[...4]wallets/[...6]dcent/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...4]dcent/+page.md rename to docs/src/routes/docs/[...4]wallets/[...6]dcent/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...5]enkrypt/+page.md b/docs/src/routes/docs/[...4]wallets/[...7]enkrypt/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...5]enkrypt/+page.md rename to docs/src/routes/docs/[...4]wallets/[...7]enkrypt/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...6]fortmatic/+page.md b/docs/src/routes/docs/[...4]wallets/[...8]fortmatic/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...6]fortmatic/+page.md rename to docs/src/routes/docs/[...4]wallets/[...8]fortmatic/+page.md diff --git a/docs/src/routes/docs/[...4]wallets/[...7]frame/+page.md b/docs/src/routes/docs/[...4]wallets/[...9]frame/+page.md similarity index 100% rename from docs/src/routes/docs/[...4]wallets/[...7]frame/+page.md rename to docs/src/routes/docs/[...4]wallets/[...9]frame/+page.md diff --git a/packages/bitget/README.md b/packages/bitget/README.md new file mode 100644 index 000000000..a9690c31b --- /dev/null +++ b/packages/bitget/README.md @@ -0,0 +1,33 @@ +# @web3-onboard/bitget + +## Wallet module for connecting Bitget Wallet through web3-onboard + +Bitget Wallet SDK wallet module for connecting to Web3-Onboard. Web3-Onboard makes it simple to connect Ethereum hardware and software wallets to your dapp. Features standardized 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. + +### Install + +**NPM** +`npm i @web3-onboard/core @web3-onboard/bitget` + +**Yarn** +`yarn add @web3-onboard/core @web3-onboard/bitget` + +## Usage + +```typescript +import Onboard from '@web3-onboard/core' +import bitgetWalletModule from '@web3-onboard/bitget' + +const bitgetWallet = bitgetWalletModule() + +const onboard = Onboard({ + // ... other Onboard options + wallets: [ + bitgetWallet() + //... other wallets + ] +}) + +const connectedWallets = await onboard.connectWallet() +console.log(connectedWallets) +``` diff --git a/packages/bitget/package.json b/packages/bitget/package.json new file mode 100644 index 000000000..d6c1efb3e --- /dev/null +++ b/packages/bitget/package.json @@ -0,0 +1,67 @@ +{ + "name": "@web3-onboard/bitget", + "version": "2.0.0-alpha.1", + "description": "bitget-wallet SDK wallet module for connecting to Web3-Onboard. Web3-Onboard makes it simple to connect Ethereum hardware and software wallets to your dapp. Features standardized 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", + "Web3", + "EVM", + "dapp", + "Multichain", + "Wallet", + "Transaction", + "Provider", + "Hardware Wallet", + "Notifications", + "React", + "Svelte", + "Vue", + "Next", + "Nuxt", + "MetaMask", + "Coinbase", + "WalletConnect", + "Ledger", + "Trezor", + "Connect Wallet", + "Ethereum Hooks", + "Blocknative", + "Mempool", + "pending", + "confirmed", + "Injected Wallet", + "Crypto", + "Crypto Wallet", + "Enkrypt", + "bitgetWallet" + ], + "repository": { + "type": "git", + "url": "https://github.com/blocknative/web3-onboard.git", + "directory": "packages/bitget-wallet" + }, + "homepage": "https://www.blocknative.com/onboard", + "bugs": "https://github.com/blocknative/web3-onboard/issues", + "module": "dist/index.js", + "browser": "dist/index.js", + "main": "dist/index.js", + "type": "module", + "typings": "dist/index.d.ts", + "files": [ + "dist" + ], + "scripts": { + "build": "tsc", + "dev": "tsc -w", + "type-check": "tsc --noEmit" + }, + "license": "MIT", + "devDependencies": { + "@types/node": "^17.0.21", + "typescript": "^4.5.5" + }, + "dependencies": { + "@bitget-wallet/web3-sdk": "^0.0.6", + "@web3-onboard/common": "^2.3.3" + } +} diff --git a/packages/bitget/src/index.ts b/packages/bitget/src/index.ts new file mode 100644 index 000000000..27efed8a2 --- /dev/null +++ b/packages/bitget/src/index.ts @@ -0,0 +1,51 @@ +import type { WalletInit, EIP1193Provider } from '@web3-onboard/common' + +let bitgetDependencies: any = null +let bitgetAdapter: any = null + +const loadBitgetDependencies = async (getAdapter?: boolean) => { + if (!bitgetDependencies) { + bitgetDependencies = await import('@bitget-wallet/web3-sdk') + } + if (getAdapter && !bitgetAdapter) { + bitgetAdapter = new bitgetDependencies.LegacyEip1193Adapter() + return bitgetAdapter + } + if (getAdapter) { + return bitgetAdapter + } + return bitgetDependencies +} + +function bitget(): WalletInit { + if (typeof window === 'undefined') return () => null + + return () => { + return { + label: 'Bitget', + getIcon: async () => { + const sdkAdapter = await loadBitgetDependencies(true) + return sdkAdapter.getLogo() + }, + getInterface: async () => { + const { + currentProvider, + getIsInstall, + getDownload, + installWalletMessage + } = await loadBitgetDependencies() + + let provider: EIP1193Provider + if (getIsInstall()) { + provider = currentProvider() + } else { + window.open(getDownload(), '_blank') + throw new Error(installWalletMessage) + } + return { provider } + } + } + } +} + +export default bitget diff --git a/packages/bitget/tsconfig.json b/packages/bitget/tsconfig.json new file mode 100644 index 000000000..09ae989f9 --- /dev/null +++ b/packages/bitget/tsconfig.json @@ -0,0 +1,15 @@ +{ + "extends": "../../tsconfig.json", + "include": ["src/**/*"], + + "compilerOptions": { + "outDir": "dist", + "rootDir": "src", + "declaration": true, + "declarationDir": "dist", + "paths": { + "*": ["./src/*", "./node_modules/*"] + }, + "typeRoots": ["node_modules/@types"] + } +} \ No newline at end of file diff --git a/packages/bitkeep/README.md b/packages/bitkeep/README.md new file mode 100644 index 000000000..8de401043 --- /dev/null +++ b/packages/bitkeep/README.md @@ -0,0 +1,33 @@ +# @web3-onboard/bitkeep + +## Wallet module for connecting Bitkeep Wallet through web3-onboard + +Bitkeep Wallet SDK wallet module for connecting to Web3-Onboard. Web3-Onboard makes it simple to connect Ethereum hardware and software wallets to your dapp. Features standardized 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. + +### Install + +**NPM** +`npm i @web3-onboard/core @web3-onboard/bitkeep` + +**Yarn** +`yarn add @web3-onboard/core @web3-onboard/bitkeep` + +## Usage + +```typescript +import Onboard from '@web3-onboard/core' +import bitkeepModule from '@web3-onboard/bitkeep' + +const bitKeep = bitkeepModule() + +const onboard = Onboard({ + // ... other Onboard options + wallets: [ + bitKeep() + //... other wallets + ] +}) + +const connectedWallets = await onboard.connectWallet() +console.log(connectedWallets) +``` diff --git a/packages/bitkeep/package.json b/packages/bitkeep/package.json new file mode 100644 index 000000000..377cea495 --- /dev/null +++ b/packages/bitkeep/package.json @@ -0,0 +1,67 @@ +{ + "name": "@web3-onboard/bitkeep", + "version": "2.0.0-alpha.1", + "description": "Bitkeep Wallet SDK wallet module for connecting to Web3-Onboard. Web3-Onboard makes it simple to connect Ethereum hardware and software wallets to your dapp. Features standardized 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", + "Web3", + "EVM", + "dapp", + "Multichain", + "Wallet", + "Transaction", + "Provider", + "Hardware Wallet", + "Notifications", + "React", + "Svelte", + "Vue", + "Next", + "Nuxt", + "MetaMask", + "Coinbase", + "WalletConnect", + "Ledger", + "Trezor", + "Connect Wallet", + "Ethereum Hooks", + "Blocknative", + "Mempool", + "pending", + "confirmed", + "Injected Wallet", + "Crypto", + "Crypto Wallet", + "Enkrypt", + "bitkeep" + ], + "repository": { + "type": "git", + "url": "https://github.com/blocknative/web3-onboard.git", + "directory": "packages/bitkeep" + }, + "homepage": "https://www.blocknative.com/onboard", + "bugs": "https://github.com/blocknative/web3-onboard/issues", + "module": "dist/index.js", + "browser": "dist/index.js", + "main": "dist/index.js", + "type": "module", + "typings": "dist/index.d.ts", + "files": [ + "dist" + ], + "scripts": { + "build": "tsc", + "dev": "tsc -w", + "type-check": "tsc --noEmit" + }, + "license": "MIT", + "devDependencies": { + "@types/node": "^17.0.21", + "typescript": "^4.5.5" + }, + "dependencies": { + "@bitget-wallet/web3-sdk": "^0.0.6", + "@web3-onboard/common": "^2.3.3" + } +} diff --git a/packages/bitkeep/src/index.ts b/packages/bitkeep/src/index.ts new file mode 100644 index 000000000..681408296 --- /dev/null +++ b/packages/bitkeep/src/index.ts @@ -0,0 +1,51 @@ +import type { WalletInit, EIP1193Provider } from '@web3-onboard/common' + +let bitKeepDependencies: any = null +let bitKeepAdapter: any = null + +const loadBitKeepDependencies = async (getAdapter?: boolean) => { + if (!bitKeepDependencies) { + bitKeepDependencies = await import('@bitget-wallet/web3-sdk') + } + if (getAdapter && !bitKeepAdapter) { + bitKeepAdapter = new bitKeepDependencies.LegacyEip1193Adapter() + return bitKeepAdapter + } + if (getAdapter) { + return bitKeepAdapter + } + return bitKeepDependencies +} + +function bitKeep(): WalletInit { + if (typeof window === 'undefined') return () => null + + return () => { + return { + label: 'BitKeep', + getIcon: async () => { + const sdkAdapter = await loadBitKeepDependencies(true) + return sdkAdapter.getLogo() + }, + getInterface: async () => { + const { + currentProvider, + getIsInstall, + getDownload, + installWalletMessage + } = await loadBitKeepDependencies() + + let provider: EIP1193Provider + if (getIsInstall()) { + provider = currentProvider() + } else { + window.open(getDownload(), '_blank') + throw new Error(installWalletMessage) + } + return { provider } + } + } + } +} + +export default bitKeep diff --git a/packages/bitkeep/tsconfig.json b/packages/bitkeep/tsconfig.json new file mode 100644 index 000000000..09ae989f9 --- /dev/null +++ b/packages/bitkeep/tsconfig.json @@ -0,0 +1,15 @@ +{ + "extends": "../../tsconfig.json", + "include": ["src/**/*"], + + "compilerOptions": { + "outDir": "dist", + "rootDir": "src", + "declaration": true, + "declarationDir": "dist", + "paths": { + "*": ["./src/*", "./node_modules/*"] + }, + "typeRoots": ["node_modules/@types"] + } +} \ No newline at end of file diff --git a/packages/demo/package.json b/packages/demo/package.json index c317eb667..24a54498e 100644 --- a/packages/demo/package.json +++ b/packages/demo/package.json @@ -28,6 +28,8 @@ "@safe-global/safe-apps-provider": "^0.18.0", "@safe-global/safe-apps-sdk": "^8.1.0", "@web3-onboard/arcana-auth": "^2.0.0", + "@web3-onboard/bitkeep": "2.0.0-alpha.1", + "@web3-onboard/bitget": "2.0.0-alpha.1", "@web3-onboard/blocto": "2.0.0", "@web3-onboard/cede-store": "^2.1.0", "@web3-onboard/coinbase": "^2.2.6", diff --git a/packages/demo/src/App.svelte b/packages/demo/src/App.svelte index 72dd78ded..4fcae88a6 100644 --- a/packages/demo/src/App.svelte +++ b/packages/demo/src/App.svelte @@ -32,6 +32,8 @@ import cedeStoreModule from '@web3-onboard/cede-store' import arcanaAuthModule from '@web3-onboard/arcana-auth' import venlyModule from '@web3-onboard/venly' + import bitkeepModule from '@web3-onboard/bitkeep' + import bitgetModule from '@web3-onboard/bitget' import { recoverAddress, arrayify, @@ -177,6 +179,8 @@ }) const dcent = dcentModule() + const bitkeep = bitkeepModule() + const bitget = bitgetModule() const frameWallet = frameModule() const sequence = sequenceModule() const enkrypt = enkryptModule() @@ -200,6 +204,8 @@ safe, trust, tallyho, + bitget, + bitkeep, enkrypt, infinityWallet, mewWallet, diff --git a/packages/injected/src/types.ts b/packages/injected/src/types.ts index 924542547..8a35aa6ae 100644 --- a/packages/injected/src/types.ts +++ b/packages/injected/src/types.ts @@ -80,9 +80,9 @@ export enum ProviderIdentityFlag { */ export enum ProviderExternalUrl { Binance = 'https://www.bnbchain.org/ru/blog/binance-extension-wallet/', - BitKeep = 'https://bitkeep.com/en/download?type=0', - Coinbase = 'https://go.cb-w.com/dapp', - MetaMask = 'https://metamask.app.link/dapp/', + BitKeep = 'https://web3.bitget.com/en/wallet-download', + Coinbase = 'https://www.coinbase.com/wallet/downloads', + MetaMask = 'https://metamask.io/download/', OKXWallet = 'https://okx.com/download', Phantom = 'https://phantom.app/ul/v1/connect', Talisman = 'https://www.talisman.xyz/', diff --git a/yarn.lock b/yarn.lock index 277b2aae4..3eab9cb60 100644 --- a/yarn.lock +++ b/yarn.lock @@ -356,6 +356,13 @@ dependencies: regenerator-runtime "^0.13.11" +"@babel/runtime@^7.22.6": + version "7.23.1" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.23.1.tgz#72741dc4d413338a91dcb044a86f3c0bc402646d" + integrity sha512-hC2v6p8ZSI/W0HUzh3V8C5g+NwSKzKPtJwSpTjwl0o297GP9+ZLQSkdvHz46CM3LqyoXxq+5G9komY+eSqSO0g== + dependencies: + regenerator-runtime "^0.14.0" + "@babel/runtime@^7.5.5": version "7.17.2" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.17.2.tgz#66f68591605e59da47523c631416b18508779941" @@ -405,6 +412,15 @@ "@babel/helper-validator-identifier" "^7.22.20" to-fast-properties "^2.0.0" +"@bitget-wallet/web3-sdk@^0.0.6": + version "0.0.6" + resolved "https://registry.yarnpkg.com/@bitget-wallet/web3-sdk/-/web3-sdk-0.0.6.tgz#f30f7fbdeb804ddc98b175ed977340bc856011ed" + integrity sha512-UfMxJGmIAyqJBIY90nS1IrhFZvOzAvvcPt2/QhsfRQBYya8PoIwXEBofIfFeMgyVD00E7oq130DheAwFUduadA== + dependencies: + "@metamask/safe-event-emitter" "^3.0.0" + "@solana/web3.js" "^1.78.0" + eventemitter3 "^5.0.1" + "@blocto/dappauth@^2.1.0": version "2.1.0" resolved "https://registry.yarnpkg.com/@blocto/dappauth/-/dappauth-2.1.0.tgz#7154292bac4af1f021312ebffc921c7c893a1f36" @@ -1891,6 +1907,11 @@ resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.1.3.tgz#360afc77610e0a61f3417e497dcf36862e4f8111" integrity sha512-CE0FCR57H2acVI5UOzIGSSIYxZ6v/HOhDR0Ro9VLyhnzLwx0o8W1mmgaqlEUx4049qJDlIBRztv5k+MM8vbO3A== +"@noble/hashes@^1.3.1": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.3.2.tgz#6f26dbc8fbc7205873ce3cee2f690eba0d421b39" + integrity sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ== + "@noble/hashes@~1.1.1": version "1.1.4" resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.1.4.tgz#2611ebf5764c1bf754da7c7794de4fb30512336d" @@ -2358,6 +2379,27 @@ rpc-websockets "^7.5.1" superstruct "^0.14.2" +"@solana/web3.js@^1.78.0": + version "1.78.5" + resolved "https://registry.yarnpkg.com/@solana/web3.js/-/web3.js-1.78.5.tgz#591cd47423cdb0b5e5cb7e8dc4dc70b2abe02f80" + integrity sha512-2ZHsDNqkKdglJQrIvJ3p2DmgS3cGnary3VJyqt9C1SPrpAtLYzcElr3xyXJOznyQTU/8AMw+GoF11lFoKbicKg== + dependencies: + "@babel/runtime" "^7.22.6" + "@noble/curves" "^1.0.0" + "@noble/hashes" "^1.3.1" + "@solana/buffer-layout" "^4.0.0" + agentkeepalive "^4.3.0" + bigint-buffer "^1.1.5" + bn.js "^5.2.1" + borsh "^0.7.0" + bs58 "^4.0.1" + buffer "6.0.3" + fast-stable-stringify "^1.0.0" + jayson "^4.1.0" + node-fetch "^2.6.12" + rpc-websockets "^7.5.1" + superstruct "^0.14.2" + "@stablelib/aead@^1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@stablelib/aead/-/aead-1.0.1.tgz#c4b1106df9c23d1b867eb9b276d8f42d5fc4c0c3" @@ -4686,6 +4728,13 @@ agentkeepalive@^4.2.1: depd "^2.0.0" humanize-ms "^1.2.1" +agentkeepalive@^4.3.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-4.5.0.tgz#2673ad1389b3c418c5a20c5d7364f93ca04be923" + integrity sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew== + dependencies: + humanize-ms "^1.2.1" + aggregate-error@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" @@ -7440,6 +7489,11 @@ eventemitter3@^4.0.0, eventemitter3@^4.0.4, eventemitter3@^4.0.7: resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== +eventemitter3@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-5.0.1.tgz#53f5ffd0a492ac800721bb42c66b841de96423c4" + integrity sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA== + events@3.3.0, events@^3.0.0, events@^3.1.0, events@^3.2.0, events@^3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" @@ -10925,6 +10979,11 @@ regenerator-runtime@^0.13.4: resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz#8925742a98ffd90814988d7566ad30ca3b263b52" integrity sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA== +regenerator-runtime@^0.14.0: + version "0.14.0" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz#5e19d68eb12d486f797e15a3c6a918f7cec5eb45" + integrity sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA== + regexp.prototype.flags@^1.2.0: version "1.4.1" resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.4.1.tgz#b3f4c0059af9e47eca9f3f660e51d81307e72307"