Skip to content

Commit 9f7d631

Browse files
committed
feat: add @web3-onboard/okx
1 parent 3fcee26 commit 9f7d631

File tree

19 files changed

+250
-25
lines changed

19 files changed

+250
-25
lines changed

.circleci/config.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -255,6 +255,12 @@ jobs:
255255
working_directory: ~/web3-onboard-monorepo/packages/trust
256256
steps:
257257
- node-build-steps
258+
build-okx:
259+
docker:
260+
- image: cimg/node:16.13.1
261+
working_directory: ~/web3-onboard-monorepo/packages/okx
262+
steps:
263+
- node-build-steps
258264
build-frontier:
259265
docker:
260266
- image: cimg/node:16.13.1
@@ -552,6 +558,12 @@ jobs:
552558
working_directory: ~/web3-onboard-monorepo/packages/trust
553559
steps:
554560
- node-staging-build-steps
561+
build-staging-okx:
562+
docker:
563+
- image: cimg/node:16.13.1
564+
working_directory: ~/web3-onboard-monorepo/packages/okx
565+
steps:
566+
- node-staging-build-steps
555567
build-staging-frontier:
556568
docker:
557569
- image: cimg/node:16.13.1
@@ -851,6 +863,12 @@ workflows:
851863
<<: *deploy_production_filters
852864
- build-staging-trust:
853865
<<: *deploy_staging_filters
866+
okx:
867+
jobs:
868+
- build-okx:
869+
<<: *deploy_production_filters
870+
- build-staging-okx:
871+
<<: *deploy_staging_filters
854872
frontier:
855873
jobs:
856874
- build-frontier:

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,7 @@ For full documentation, check out the README.md for each package or the [docs pa
108108
- [Arcana](packages/arcana-auth/README.md)
109109
- [Coinbase](packages/coinbase/README.md)
110110
- [Trust](packages/trust/README.md)
111+
- [OKX](packages/okx/README.md)
111112
- [WalletConnect](packages/walletconnect/README.md)
112113
- [Safe](packages/gnosis/README.md)
113114
- [Magic](packages/magic/README.md)

docs/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,7 @@
7474
"@web3-onboard/magic": "^2.1.7",
7575
"@web3-onboard/metamask": "^2.0.7",
7676
"@web3-onboard/mew-wallet": "^2.0.4",
77+
"@web3-onboard/okx": "^2.0.0-alpha.1",
7778
"@web3-onboard/phantom": "^2.0.3",
7879
"@web3-onboard/portis": "^2.1.7",
7980
"@web3-onboard/sequence": "^2.0.8",

docs/src/lib/services/onboard.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ const intiOnboard = async (theme) => {
5151
const { default: torusModule } = await import('@web3-onboard/torus')
5252
const { default: uauthModule } = await import('@web3-onboard/uauth')
5353
const { default: trustModule } = await import('@web3-onboard/trust')
54+
const { default: okxModule } = await import('@web3-onboard/okx')
5455
const { default: xdefiModule } = await import('@web3-onboard/xdefi')
5556
const { default: cedeModule } = await import('@web3-onboard/cede-store')
5657
const { default: frameModule } = await import('@web3-onboard/frame')
@@ -93,6 +94,7 @@ const intiOnboard = async (theme) => {
9394
const taho = tahoModule()
9495
const torus = torusModule()
9596
const trust = trustModule()
97+
const okx = okxModule()
9698
const xdefi = xdefiModule()
9799
const cede = cedeModule()
98100
const bitget = bitgetModule()
@@ -152,6 +154,7 @@ const intiOnboard = async (theme) => {
152154
ledger,
153155
trezor,
154156
trust,
157+
okx,
155158
gnosis,
156159
taho,
157160
bitget,

docs/src/routes/docs/[...1]overview/[...1]introduction/+page.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,7 @@ We recommend you add the [Core Repo](../../modules/core.md#install) and consider
187187
- [Blocto](../../wallets/blocto.md#install)
188188
- [Capsule](../../wallets/capsule.md#install)
189189
- [Coinbase](../../wallets/coinbase.md#install)
190+
- [OKX](../../wallets/okx.md#install)
190191
- [Fortmatic](../../wallets/fortmatic.md#install)
191192
- [Frame](../../wallets/frame.md#install)
192193
- [Safe](../../wallets/gnosis.md#install)

docs/src/routes/docs/[...4]wallets/[...14]injected/+page.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -336,7 +336,6 @@ const injected = injectedModule({
336336
- Trust - _Desktop & Mobile_
337337
- SafePal - _Desktop & Mobile_
338338
- Zerion - _Desktop & Mobile_
339-
- OKX Wallet - _Desktop & Mobile_
340339
- Taho (Previously named Tally Ho wallet) - _Desktop_
341340
- Opera - _Desktop & Mobile_
342341
- Status - _Mobile_
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
---
2+
title: OKX Wallet
3+
---
4+
5+
# {$frontmatter.title}
6+
7+
Wallet module for connecting OKX wallet through Web3 Onboard
8+
9+
### Install
10+
11+
<Tabs values={['yarn', 'npm']}>
12+
<TabPanel value="yarn">
13+
14+
```sh copy
15+
yarn add @web3-onboard/okx
16+
```
17+
18+
</TabPanel>
19+
<TabPanel value="npm">
20+
21+
```sh copy
22+
npm install @web3-onboard/okx
23+
```
24+
25+
</TabPanel>
26+
</Tabs>
27+
28+
## Usage
29+
30+
```typescript
31+
import Onboard from '@web3-onboard/core'
32+
import okxWallet from '@web3-onboard/okx'
33+
34+
const okx = okxWallet()
35+
36+
const onboard = Onboard({
37+
// ... other Onboard options
38+
wallets: [
39+
okx
40+
//... other wallets
41+
]
42+
})
43+
44+
const connectedWallets = await onboard.connectWallet()
45+
console.log(connectedWallets)
46+
```
47+
48+
## Build Environments
49+
50+
For build env configurations and setups please see the Build Env section [here](/docs/modules/core#build-environments)

docs/src/routes/examples/[...1]connect-wallet/+page.md

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,14 @@ Remember- if you used create-react-app, please follow the [additional setup inst
2525
<TabPanel value="yarn">
2626

2727
```sh copy
28-
yarn add @web3-onboard/react @web3-onboard/injected-wallets @web3-onboard/infinity-wallet @web3-onboard/fortmatic @web3-onboard/gnosis @web3-onboard/keepkey @web3-onboard/keystone @web3-onboard/ledger @web3-onboard/portis @web3-onboard/trezor @web3-onboard/walletconnect @web3-onboard/coinbase @web3-onboard/magic @web3-onboard/dcent @web3-onboard/sequence @web3-onboard/taho @web3-onboard/trust @web3-onboard/frontier
28+
yarn add @web3-onboard/react @web3-onboard/injected-wallets @web3-onboard/infinity-wallet @web3-onboard/fortmatic @web3-onboard/gnosis @web3-onboard/keepkey @web3-onboard/keystone @web3-onboard/ledger @web3-onboard/portis @web3-onboard/trezor @web3-onboard/walletconnect @web3-onboard/coinbase @web3-onboard/magic @web3-onboard/dcent @web3-onboard/sequence @web3-onboard/taho @web3-onboard/trust @web3-onboard/okx @web3-onboard/frontier
2929
```
3030

3131
</TabPanel>
3232
<TabPanel value="npm">
3333

3434
```sh copy
35-
npm install @web3-onboard/react @web3-onboard/injected-wallets @web3-onboard/infinity-wallet @web3-onboard/fortmatic @web3-onboard/gnosis @web3-onboard/keepkey @web3-onboard/keystone @web3-onboard/ledger @web3-onboard/portis @web3-onboard/trezor @web3-onboard/walletconnect @web3-onboard/coinbase @web3-onboard/magic @web3-onboard/dcent @web3-onboard/sequence @web3-onboard/taho @web3-onboard/trust @web3-onboard/frontier
35+
npm install @web3-onboard/react @web3-onboard/injected-wallets @web3-onboard/infinity-wallet @web3-onboard/fortmatic @web3-onboard/gnosis @web3-onboard/keepkey @web3-onboard/keystone @web3-onboard/ledger @web3-onboard/portis @web3-onboard/trezor @web3-onboard/walletconnect @web3-onboard/coinbase @web3-onboard/magic @web3-onboard/dcent @web3-onboard/sequence @web3-onboard/taho @web3-onboard/trust @web3-onboard/okx @web3-onboard/frontier
3636
```
3737

3838
</TabPanel>
@@ -60,6 +60,7 @@ import dcentModule from '@web3-onboard/dcent'
6060
import sequenceModule from '@web3-onboard/sequence'
6161
import tahoModule from '@web3-onboard/taho'
6262
import trustModule from '@web3-onboard/trust'
63+
import okxModule from '@web3-onboard/okx'
6364
import frontierModule from '@web3-onboard/frontier'
6465
import ConnectWallet from './ConnectWallet'
6566

@@ -86,6 +87,7 @@ const safe = safeModule()
8687
const sequence = sequenceModule()
8788
const taho = tahoModule() // Previously named Tally Ho wallet
8889
const trust = trustModule()
90+
const okx = okxModule()
8991
const frontier = frontierModule()
9092

9193
const trezorOptions = {
@@ -105,6 +107,7 @@ const wallets = [
105107
sequence,
106108
injected,
107109
trust,
110+
okx,
108111
frontier,
109112
taho,
110113
ledger,
@@ -324,6 +327,7 @@ import dcentModule from '@web3-onboard/dcent'
324327
import sequenceModule from '@web3-onboard/sequence'
325328
import tahoModule from '@web3-onboard/taho'
326329
import trustModule from '@web3-onboard/trust'
330+
import okxModule from '@web3-onboard/okx'
327331
import frontierModule from '@web3-onboard/frontier'
328332

329333
const INFURA_KEY = ''
@@ -349,6 +353,7 @@ const safe = safeModule()
349353
const sequence = sequenceModule()
350354
const taho = tahoModule() // Previously named Tally Ho wallet
351355
const trust = trustModule()
356+
const okx = okxModule()
352357
const frontier = frontierModule()
353358

354359
const trezorOptions = {
@@ -375,6 +380,7 @@ const wallets = [
375380
coinbase,
376381
dcent,
377382
trust,
383+
okx,
378384
frontier,
379385
trezor,
380386
walletConnect,

packages/demo/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@
5050
"@web3-onboard/magic": "^2.2.0-alpha.2",
5151
"@web3-onboard/metamask": "^2.1.0-alpha.2",
5252
"@web3-onboard/mew-wallet": "^2.1.0-alpha.2",
53+
"@web3-onboard/okx": "^2.0.0-alpha.1",
5354
"@web3-onboard/particle-network": "^2.1.0-alpha.2",
5455
"@web3-onboard/phantom": "^2.1.0-alpha.2",
5556
"@web3-onboard/portis": "^2.2.0-alpha.2",

packages/demo/src/App.svelte

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
import arcanaAuthModule from '@web3-onboard/arcana-auth'
3636
import venlyModule from '@web3-onboard/venly'
3737
import bitgetModule from '@web3-onboard/bitget'
38+
import okxModule from '@web3-onboard/okx'
3839
import particleAuthModule from '@web3-onboard/particle-network'
3940
// import capsuleModule, {
4041
// Environment,
@@ -232,6 +233,7 @@
232233
233234
const dcent = dcentModule()
234235
const bitget = bitgetModule()
236+
const okx = okxModule()
235237
const frameWallet = frameModule()
236238
const sequence = sequenceModule()
237239
const enkrypt = enkryptModule()
@@ -270,6 +272,7 @@
270272
trust,
271273
tallyho,
272274
bitget,
275+
okx,
273276
enkrypt,
274277
infinityWallet,
275278
mewWallet,

packages/injected/README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,6 @@ const onboard = Onboard({
6161
- Phantom - _Desktop & Mobile_
6262
- SafePal - _Desktop & Mobile_
6363
- Zerion - _Desktop & Mobile_
64-
- OKX Wallet - _Desktop & Mobile_
6564
- Taho (Previously named Tally Ho wallet) - _Desktop_
6665
- Trust - _Mobile_
6766
- Opera - _Desktop & Mobile_

packages/injected/src/types.ts

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,6 @@ export enum ProviderIdentityFlag {
5454
Bitski = 'isBitski',
5555
Enkrypt = 'isEnkrypt',
5656
Phantom = 'isPhantom',
57-
OKXWallet = 'isOkxWallet',
5857
Zeal = 'isZeal',
5958
Zerion = 'isZerion',
6059
Rainbow = 'isRainbow',
@@ -87,7 +86,6 @@ export enum ProviderExternalUrl {
8786
Bitget = 'https://web3.bitget.com/en/wallet-download',
8887
Coinbase = 'https://www.coinbase.com/wallet/downloads',
8988
MetaMask = 'https://metamask.io/download/',
90-
OKXWallet = 'https://okx.com/download',
9189
Phantom = 'https://phantom.app/ul/v1/connect',
9290
Talisman = 'https://www.talisman.xyz/',
9391
Trust = 'https://link.trustwallet.com',
@@ -147,7 +145,6 @@ export enum ProviderLabel {
147145
Enkrypt = 'Enkrypt',
148146
Zeal = 'Zeal',
149147
Phantom = 'Phantom',
150-
OKXWallet = 'OKX Wallet',
151148
Zerion = 'Zerion',
152149
Rainbow = 'Rainbow',
153150
SafePal = 'SafePal',
@@ -190,7 +187,6 @@ export enum InjectedNameSpace {
190187
Enkrypt = 'enkrypt',
191188
Zeal = 'zeal',
192189
Phantom = 'phantom',
193-
OKXWallet = 'okxwallet',
194190
Trust = 'trustwallet',
195191
Frontier = 'frontier',
196192
DeFiConnectProvider = 'deficonnectProvider',
@@ -233,7 +229,6 @@ export interface CustomWindow extends Window {
233229
phantom: {
234230
ethereum: InjectedProvider
235231
}
236-
okxwallet: InjectedProvider
237232
trustwallet: InjectedProvider
238233
deficonnectProvider: InjectedProvider
239234
safeheron: InjectedProvider

packages/injected/src/wallets.ts

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -715,19 +715,6 @@ const rainbow: InjectedWalletModule = {
715715
platforms: ['all']
716716
}
717717

718-
const okxwallet: InjectedWalletModule = {
719-
label: ProviderLabel.OKXWallet,
720-
injectedNamespace: InjectedNameSpace.OKXWallet,
721-
checkProviderIdentity: ({ provider }) =>
722-
!!provider && !!provider[ProviderIdentityFlag.OKXWallet],
723-
getIcon: async () => (await import('./icons/okxwallet.js')).default,
724-
getInterface: async () => ({
725-
provider: createEIP1193Provider(window.okxwallet)
726-
}),
727-
platforms: ['all'],
728-
externalUrl: ProviderExternalUrl.OKXWallet
729-
}
730-
731718
const defiwallet: InjectedWalletModule = {
732719
label: ProviderLabel.DeFiWallet,
733720
injectedNamespace: InjectedNameSpace.DeFiConnectProvider,
@@ -960,7 +947,6 @@ const wallets = [
960947
bitski,
961948
enkrypt,
962949
phantom,
963-
okxwallet,
964950
zerion,
965951
rainbow,
966952
safepal,

packages/okx/README.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# @web3-onboard/okx
2+
3+
## Wallet module for connecting OKX Wallet through web3-onboard
4+
5+
OKX 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.
6+
7+
### Install
8+
9+
**NPM**
10+
`npm i @web3-onboard/core @web3-onboard/okx`
11+
12+
**Yarn**
13+
`yarn add @web3-onboard/core @web3-onboard/okx`
14+
15+
## Usage
16+
17+
```typescript
18+
import Onboard from '@web3-onboard/core'
19+
import okxModule from '@web3-onboard/okx'
20+
21+
const okx = okxModule()
22+
23+
const onboard = Onboard({
24+
// ... other Onboard options
25+
wallets: [
26+
okx
27+
//... other wallets
28+
]
29+
})
30+
31+
const connectedWallets = await onboard.connectWallet()
32+
console.log(connectedWallets)
33+
```

0 commit comments

Comments
 (0)