@@ -14,6 +14,7 @@ import type {
1414 AuthenticateWithCoinbaseWalletParams ,
1515 AuthenticateWithGoogleOneTapParams ,
1616 AuthenticateWithMetamaskParams ,
17+ AuthenticateWithOKXWalletParams ,
1718 Clerk as ClerkInterface ,
1819 ClerkAPIError ,
1920 ClerkAuthenticateWithWeb3Params ,
@@ -77,6 +78,7 @@ import {
7778 errorThrower ,
7879 generateSignatureWithCoinbaseWallet ,
7980 generateSignatureWithMetamask ,
81+ generateSignatureWithOKXWallet ,
8082 getClerkQueryParam ,
8183 getWeb3Identifier ,
8284 hasExternalAccountSignUpError ,
@@ -1542,6 +1544,18 @@ export class Clerk implements ClerkInterface {
15421544 } ) ;
15431545 } ;
15441546
1547+ public authenticateWithOKXWallet = async ( props : AuthenticateWithOKXWalletParams = { } ) : Promise < void > => {
1548+ if ( __BUILD_DISABLE_RHC__ ) {
1549+ clerkUnsupportedEnvironmentWarning ( 'OKX Wallet' ) ;
1550+ return ;
1551+ }
1552+
1553+ await this . authenticateWithWeb3 ( {
1554+ ...props ,
1555+ strategy : 'web3_okx_wallet_signature' ,
1556+ } ) ;
1557+ } ;
1558+
15451559 public authenticateWithWeb3 = async ( {
15461560 redirectUrl,
15471561 signUpContinueUrl,
@@ -1561,7 +1575,11 @@ export class Clerk implements ClerkInterface {
15611575 const provider = strategy . replace ( 'web3_' , '' ) . replace ( '_signature' , '' ) as Web3Provider ;
15621576 const identifier = await getWeb3Identifier ( { provider } ) ;
15631577 const generateSignature =
1564- provider === 'metamask' ? generateSignatureWithMetamask : generateSignatureWithCoinbaseWallet ;
1578+ provider === 'metamask'
1579+ ? generateSignatureWithMetamask
1580+ : provider === 'coinbase_wallet'
1581+ ? generateSignatureWithCoinbaseWallet
1582+ : generateSignatureWithOKXWallet ;
15651583
15661584 const navigate = ( to : string ) =>
15671585 customNavigate && typeof customNavigate === 'function' ? customNavigate ( to ) : this . navigate ( to ) ;
0 commit comments