Skip to content

Commit ea95525

Browse files
authored
chore(backend,clerk-js,types): Deprecate profile_image_url / avatar_url / logo_url (#1543)
* refactor(backend): Deprecate logo_url / profile_image_url / avatar_url for image_url * refactor(clerk-js): Deprecate logo_url / profile_image_url / avatar_url for image_url * refactor(types): Deprecate logo_url / profile_image_url / avatar_url for image_url * chore(repo): Add changeset for image fields deprecation
1 parent 5e1a09d commit ea95525

File tree

14 files changed

+58
-18
lines changed

14 files changed

+58
-18
lines changed

.changeset/beige-apes-cry.md

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
'@clerk/clerk-js': patch
3+
'@clerk/backend': patch
4+
'@clerk/types': patch
5+
---
6+
7+
Deprecate usage of old image fields in favor of `imageUrl`

packages/backend/src/api/resources/ExternalAccount.ts

+3
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@ export class ExternalAccount {
1111
readonly emailAddress: string,
1212
readonly firstName: string,
1313
readonly lastName: string,
14+
/**
15+
* @deprecated Use `imageUrl` instead.
16+
*/
1417
readonly picture: string,
1518
readonly imageUrl: string,
1619
readonly username: string | null,

packages/backend/src/api/resources/JSON.ts

+8-8
Original file line numberDiff line numberDiff line change
@@ -92,10 +92,10 @@ export interface ExternalAccountJSON extends ClerkResourceJSON {
9292
email_address: string;
9393
first_name: string;
9494
last_name: string;
95-
avatar_url: string;
9695
/**
97-
* @experimental
96+
* @deprecated Use `image_url` instead.
9897
*/
98+
avatar_url: string;
9999
image_url: string;
100100
username: string | null;
101101
public_metadata: Record<string, unknown> | null;
@@ -133,10 +133,10 @@ export interface OrganizationJSON extends ClerkResourceJSON {
133133
object: ObjectType.Organization;
134134
name: string;
135135
slug: string | null;
136-
logo_url: string | null;
137136
/**
138-
* @experimental
137+
* @deprecated Use `image_url` instead.
139138
*/
139+
logo_url: string | null;
140140
image_url: string;
141141
public_metadata: OrganizationPublicMetadata | null;
142142
private_metadata?: OrganizationPrivateMetadata;
@@ -173,10 +173,10 @@ export interface OrganizationMembershipPublicUserDataJSON {
173173
identifier: string;
174174
first_name: string | null;
175175
last_name: string | null;
176-
profile_image_url: string;
177176
/**
178-
* @experimental
177+
* @deprecated Use `image_url` instead.
179178
*/
179+
profile_image_url: string;
180180
image_url: string;
181181
user_id: string;
182182
}
@@ -259,10 +259,10 @@ export interface UserJSON extends ClerkResourceJSON {
259259
last_name: string;
260260
gender: string;
261261
birthday: string;
262-
profile_image_url: string;
263262
/**
264-
* @experimental
263+
* @deprecated Use `image_url` instead.
265264
*/
265+
profile_image_url: string;
266266
image_url: string;
267267
primary_email_address_id: string;
268268
primary_phone_number_id: string | null;

packages/backend/src/api/resources/Organization.ts

+3
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,9 @@ export class Organization {
55
readonly id: string,
66
readonly name: string,
77
readonly slug: string | null,
8+
/**
9+
* @deprecated Use `imageUrl` instead.
10+
*/
811
readonly logoUrl: string | null,
912
readonly imageUrl: string,
1013
readonly createdBy: string,

packages/backend/src/api/resources/OrganizationMembership.ts

+3
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,9 @@ export class OrganizationMembershipPublicUserData {
3333
readonly identifier: string,
3434
readonly firstName: string | null,
3535
readonly lastName: string | null,
36+
/**
37+
* @deprecated Use `imageUrl` instead.
38+
*/
3639
readonly profileImageUrl: string,
3740
readonly imageUrl: string,
3841
readonly userId: string,

packages/backend/src/api/resources/User.ts

+3
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@ export class User {
1414
readonly banned: boolean,
1515
readonly createdAt: number,
1616
readonly updatedAt: number,
17+
/**
18+
* @deprecated Use `imageUrl` instead.
19+
*/
1720
readonly profileImageUrl: string,
1821
readonly imageUrl: string,
1922
readonly gender: string,

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

+3
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@ export class ExternalAccount extends BaseResource implements ExternalAccountReso
1919
approvedScopes = '';
2020
firstName = '';
2121
lastName = '';
22+
/**
23+
* @deprecated Use `imageUrl` instead.
24+
*/
2225
avatarUrl = '';
2326
imageUrl = '';
2427
username = '';

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

+3
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,9 @@ export class Organization extends BaseResource implements OrganizationResource {
2424
id!: string;
2525
name!: string;
2626
slug!: string;
27+
/**
28+
* @deprecated Use `imageUrl` instead.
29+
*/
2730
logoUrl!: string;
2831
imageUrl!: string;
2932
publicMetadata: OrganizationPublicMetadata = {};

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

+3
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,9 @@ export class User extends BaseResource implements UserResource {
7474
primaryPhoneNumber: PhoneNumberResource | null = null;
7575
primaryWeb3WalletId: string | null = null;
7676
primaryWeb3Wallet: Web3WalletResource | null = null;
77+
/**
78+
* @deprecated Use `imageUrl` instead.
79+
*/
7780
profileImageUrl = '';
7881
imageUrl = '';
7982
twoFactorEnabled = false;

packages/types/src/externalAccount.ts

+3
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,9 @@ export interface ExternalAccountResource extends ClerkResource {
1616
approvedScopes: string;
1717
firstName: string;
1818
lastName: string;
19+
/**
20+
* @deprecated Use `imageUrl` instead.
21+
*/
1922
avatarUrl: string;
2023
imageUrl: string;
2124
username?: string;

packages/types/src/json.ts

+10-10
Original file line numberDiff line numberDiff line change
@@ -151,10 +151,10 @@ export interface ExternalAccountJSON extends ClerkResourceJSON {
151151
email_address: string;
152152
first_name: string;
153153
last_name: string;
154-
avatar_url: string;
155154
/**
156-
* @experimental
155+
* @deprecated Use `image_url` instead.
157156
*/
157+
avatar_url: string;
158158
image_url: string;
159159
username: string;
160160
public_metadata: Record<string, unknown>;
@@ -183,10 +183,10 @@ export interface UserJSON extends ClerkResourceJSON {
183183
primary_email_address_id: string;
184184
primary_phone_number_id: string;
185185
primary_web3_wallet_id: string;
186-
profile_image_url: string;
187186
/**
188-
* @experimental
187+
* @deprecated Use `image_url` instead.
189188
*/
189+
profile_image_url: string;
190190
image_url: string;
191191
username: string;
192192
email_addresses: EmailAddressJSON[];
@@ -223,10 +223,10 @@ export interface UserJSON extends ClerkResourceJSON {
223223
export interface PublicUserDataJSON extends ClerkResourceJSON {
224224
first_name: string | null;
225225
last_name: string | null;
226-
profile_image_url: string;
227226
/**
228-
* @experimental
227+
* @deprecated Use `image_url` instead.
229228
*/
229+
profile_image_url: string;
230230
image_url: string;
231231
identifier: string;
232232
user_id?: string;
@@ -301,10 +301,10 @@ export interface SessionActivityJSON extends ClerkResourceJSON {
301301
export interface OrganizationJSON extends ClerkResourceJSON {
302302
object: 'organization';
303303
id: string;
304-
logo_url: string;
305304
/**
306-
* @experimental
305+
* @deprecated Use `image_url` instead.
307306
*/
307+
logo_url: string;
308308
image_url: string;
309309
name: string;
310310
slug: string;
@@ -355,10 +355,10 @@ export interface UserOrganizationInvitationJSON extends ClerkResourceJSON {
355355
export interface UserDataJSON {
356356
first_name?: string;
357357
last_name?: string;
358-
profile_image_url?: string;
359358
/**
360-
* @experimental
359+
* @deprecated Use `image_url` instead.
361360
*/
361+
profile_image_url?: string;
362362
image_url: string;
363363
}
364364

packages/types/src/session.ts

+3
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,9 @@ export type SessionStatus = 'abandoned' | 'active' | 'ended' | 'expired' | 'remo
5555
export interface PublicUserData {
5656
firstName: string | null;
5757
lastName: string | null;
58+
/**
59+
* @deprecated Use `imageUrl` instead.
60+
*/
5861
profileImageUrl: string;
5962
imageUrl: string;
6063
identifier: string;

packages/types/src/signIn.ts

+3
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,9 @@ export type SignInSecondFactor = PhoneCodeFactor | TOTPFactor | BackupCodeFactor
121121
export interface UserData {
122122
firstName?: string;
123123
lastName?: string;
124+
/**
125+
* @deprecated Use `imageUrl` instead.
126+
*/
124127
profileImageUrl?: string;
125128
imageUrl?: string;
126129
}

packages/types/src/user.ts

+3
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,9 @@ export interface UserResource extends ClerkResource {
5959
fullName: string | null;
6060
firstName: string | null;
6161
lastName: string | null;
62+
/**
63+
* @deprecated Use `imageUrl` instead.
64+
*/
6265
profileImageUrl: string;
6366
imageUrl: string;
6467
emailAddresses: EmailAddressResource[];

0 commit comments

Comments
 (0)