Skip to content

Commit a0cb062

Browse files
author
Haris Chaniotakis
authored
chore(clerk-js,types,clerk-react,elements): Drop coinbase web3 provider (clerk#4092)
1 parent f0b02ee commit a0cb062

17 files changed

Lines changed: 13 additions & 110 deletions

File tree

.changeset/light-donuts-shake.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
"@clerk/clerk-js": patch
3+
"@clerk/elements": patch
4+
"@clerk/clerk-react": patch
5+
"@clerk/types": patch
6+
---
7+
8+
Drop support for deprecated Coinbase Web3 provider

packages/clerk-js/src/core/clerk.ts

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ import type {
2020
__experimental_UserVerificationModalProps,
2121
__experimental_UserVerificationProps,
2222
ActiveSessionResource,
23-
AuthenticateWithCoinbaseParams,
2423
AuthenticateWithCoinbaseWalletParams,
2524
AuthenticateWithGoogleOneTapParams,
2625
AuthenticateWithMetamaskParams,
@@ -75,7 +74,6 @@ import {
7574
createPageLifecycle,
7675
disabledOrganizationsFeature,
7776
errorThrower,
78-
generateSignatureWithCoinbase,
7977
generateSignatureWithCoinbaseWallet,
8078
generateSignatureWithMetamask,
8179
getClerkQueryParam,
@@ -1406,10 +1404,6 @@ export class Clerk implements ClerkInterface {
14061404
await this.authenticateWithWeb3({ ...props, strategy: 'web3_metamask_signature' });
14071405
};
14081406

1409-
public authenticateWithCoinbase = async (props: AuthenticateWithCoinbaseParams = {}): Promise<void> => {
1410-
await this.authenticateWithWeb3({ ...props, strategy: 'web3_coinbase_signature' });
1411-
};
1412-
14131407
public authenticateWithCoinbaseWallet = async (props: AuthenticateWithCoinbaseWalletParams = {}): Promise<void> => {
14141408
await this.authenticateWithWeb3({ ...props, strategy: 'web3_coinbase_wallet_signature' });
14151409
};
@@ -1427,11 +1421,8 @@ export class Clerk implements ClerkInterface {
14271421
const provider = strategy.replace('web3_', '').replace('_signature', '') as Web3Provider;
14281422
const identifier = await getWeb3Identifier({ provider });
14291423
const generateSignature =
1430-
provider === 'metamask'
1431-
? generateSignatureWithMetamask
1432-
: provider === 'coinbase'
1433-
? generateSignatureWithCoinbase
1434-
: generateSignatureWithCoinbaseWallet;
1424+
provider === 'metamask' ? generateSignatureWithMetamask : generateSignatureWithCoinbaseWallet;
1425+
14351426
const navigate = (to: string) =>
14361427
customNavigate && typeof customNavigate === 'function' ? customNavigate(to) : this.navigate(to);
14371428

packages/clerk-js/src/core/resources/SignIn.ts

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,8 @@ import type {
3333
} from '@clerk/types';
3434

3535
import {
36-
generateSignatureWithCoinbase,
3736
generateSignatureWithCoinbaseWallet,
3837
generateSignatureWithMetamask,
39-
getCoinbaseIdentifier,
4038
getCoinbaseWalletIdentifier,
4139
getMetamaskIdentifier,
4240
windowNavigate,
@@ -116,9 +114,6 @@ export class SignIn extends BaseResource implements SignInResource {
116114
case 'web3_metamask_signature':
117115
config = { web3WalletId: factor.web3WalletId } as Web3SignatureConfig;
118116
break;
119-
case 'web3_coinbase_signature':
120-
config = { web3WalletId: factor.web3WalletId } as Web3SignatureConfig;
121-
break;
122117
case 'web3_coinbase_wallet_signature':
123118
config = { web3WalletId: factor.web3WalletId } as Web3SignatureConfig;
124119
break;
@@ -281,15 +276,6 @@ export class SignIn extends BaseResource implements SignInResource {
281276
});
282277
};
283278

284-
public authenticateWithCoinbase = async (): Promise<SignInResource> => {
285-
const identifier = await getCoinbaseIdentifier();
286-
return this.authenticateWithWeb3({
287-
identifier,
288-
generateSignature: generateSignatureWithCoinbase,
289-
strategy: 'web3_coinbase_signature',
290-
});
291-
};
292-
293279
public authenticateWithCoinbaseWallet = async (): Promise<SignInResource> => {
294280
const identifier = await getCoinbaseWalletIdentifier();
295281
return this.authenticateWithWeb3({

packages/clerk-js/src/core/resources/SignUp.ts

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,8 @@ import type {
2424
} from '@clerk/types';
2525

2626
import {
27-
generateSignatureWithCoinbase,
2827
generateSignatureWithCoinbaseWallet,
2928
generateSignatureWithMetamask,
30-
getCoinbaseIdentifier,
3129
getCoinbaseWalletIdentifier,
3230
getMetamaskIdentifier,
3331
windowNavigate,
@@ -223,16 +221,6 @@ export class SignUp extends BaseResource implements SignUpResource {
223221
});
224222
};
225223

226-
public authenticateWithCoinbase = async (params?: SignUpAuthenticateWithWeb3Params): Promise<SignUpResource> => {
227-
const identifier = await getCoinbaseIdentifier();
228-
return this.authenticateWithWeb3({
229-
identifier,
230-
generateSignature: generateSignatureWithCoinbase,
231-
unsafeMetadata: params?.unsafeMetadata,
232-
strategy: 'web3_coinbase_signature',
233-
});
234-
};
235-
236224
public authenticateWithCoinbaseWallet = async (
237225
params?: SignUpAuthenticateWithWeb3Params,
238226
): Promise<SignUpResource> => {

packages/clerk-js/src/ui/common/constants.ts

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -92,10 +92,6 @@ export const WEB3_PROVIDERS: Web3Providers = Object.freeze({
9292
id: 'metamask',
9393
name: 'MetaMask',
9494
},
95-
coinbase: {
96-
id: 'coinbase',
97-
name: 'Coinbase Wallet',
98-
},
9995
coinbase_wallet: {
10096
id: 'coinbase_wallet',
10197
name: 'Coinbase Wallet',

packages/clerk-js/src/utils/injectedWeb3Providers.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import type { CoinbaseWeb3Provider, MetamaskWeb3Provider } from '@clerk/types';
1+
import type { MetamaskWeb3Provider } from '@clerk/types';
22

33
//https://eips.ethereum.org/EIPS/eip-6963
44

@@ -27,12 +27,11 @@ interface EIP6963ProviderDetail {
2727
}
2828

2929
type EIP6963AnnounceProviderEvent = CustomEvent;
30-
type InjectedWeb3Provider = MetamaskWeb3Provider | CoinbaseWeb3Provider;
30+
type InjectedWeb3Provider = MetamaskWeb3Provider;
3131

3232
class InjectedWeb3Providers {
3333
#providers: EIP6963ProviderDetail[] = [];
3434
#providerIdMap: Record<InjectedWeb3Provider, string> = {
35-
coinbase: 'Coinbase Wallet',
3635
metamask: 'MetaMask',
3736
} as const;
3837
static #instance: InjectedWeb3Providers | null = null;

packages/clerk-js/src/utils/web3.ts

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -46,10 +46,6 @@ export async function getMetamaskIdentifier(): Promise<string> {
4646
return await getWeb3Identifier({ provider: 'metamask' });
4747
}
4848

49-
export async function getCoinbaseIdentifier(): Promise<string> {
50-
return await getWeb3Identifier({ provider: 'coinbase' });
51-
}
52-
5349
export async function getCoinbaseWalletIdentifier(): Promise<string> {
5450
return await getWeb3Identifier({ provider: 'coinbase_wallet' });
5551
}
@@ -63,10 +59,6 @@ export async function generateSignatureWithMetamask({ identifier, nonce }: Gener
6359
return await generateWeb3Signature({ identifier, nonce, provider: 'metamask' });
6460
}
6561

66-
export async function generateSignatureWithCoinbase({ identifier, nonce }: GenerateSignatureParams): Promise<string> {
67-
return await generateWeb3Signature({ identifier, nonce, provider: 'coinbase' });
68-
}
69-
7062
export async function generateSignatureWithCoinbaseWallet({
7163
identifier,
7264
nonce,

packages/elements/src/internals/machines/sign-in/start.machine.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,6 @@ export const SignInStartMachine = setup({
2929
if (strategy === 'web3_metamask_signature') {
3030
return parent.getSnapshot().context.clerk.client.signIn.authenticateWithMetamask();
3131
}
32-
if (strategy === 'web3_coinbase_signature') {
33-
return parent.getSnapshot().context.clerk.client.signIn.authenticateWithCoinbase();
34-
}
3532
if (strategy === 'web3_coinbase_wallet_signature') {
3633
return parent.getSnapshot().context.clerk.client.signIn.authenticateWithCoinbaseWallet();
3734
}

packages/elements/src/internals/machines/sign-in/verification.machine.ts

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -448,17 +448,6 @@ export const SignInFirstFactorMachine = SignInVerificationMachine.provide({
448448

449449
break;
450450
}
451-
case 'web3_coinbase_signature': {
452-
const signature = fields.get('signature')?.value as string | undefined;
453-
assertIsDefined(signature, 'Web3 Coinbase signature');
454-
455-
attemptParams = {
456-
strategy,
457-
signature,
458-
} satisfies Web3Attempt;
459-
460-
break;
461-
}
462451
case 'web3_coinbase_wallet_signature': {
463452
const signature = fields.get('signature')?.value as string | undefined;
464453
assertIsDefined(signature, 'Web3 Coinbase Wallet signature');

packages/elements/src/internals/machines/sign-up/start.machine.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,9 +39,6 @@ export const SignUpStartMachine = setup({
3939
if (strategy === 'web3_metamask_signature') {
4040
return parent.getSnapshot().context.clerk.client.signUp.authenticateWithMetamask();
4141
}
42-
if (strategy === 'web3_coinbase_signature') {
43-
return parent.getSnapshot().context.clerk.client.signUp.authenticateWithCoinbase();
44-
}
4542
if (strategy === 'web3_coinbase_wallet_signature') {
4643
return parent.getSnapshot().context.clerk.client.signUp.authenticateWithCoinbaseWallet();
4744
}

0 commit comments

Comments
 (0)