Skip to content

Commit e38488c

Browse files
feat(clerk-js,types): Update system permission names (#1865)
* feat(clerk-js,types): Update system permission names * chore(clerk-js,types): Add changeset --------- Co-authored-by: panteliselef <[email protected]>
1 parent 834dadb commit e38488c

File tree

4 files changed

+25
-19
lines changed

4 files changed

+25
-19
lines changed

.changeset/fresh-news-cry.md

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
'@clerk/clerk-js': patch
3+
'@clerk/types': patch
4+
---
5+
6+
Update default organization permissions with a `sys_` prefix as part of the entitlement. This changes makes it easy to distinguish between clerk reserved permissions and custom permissions created by developers.

packages/clerk-js/src/core/resources/Session.test.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ describe('Session', () => {
7373
updated_at: new Date().getTime(),
7474
} as SessionJSON);
7575

76-
const isAuthorized = await session.isAuthorized({ permission: 'org:profile:delete' });
76+
const isAuthorized = await session.isAuthorized({ permission: 'org:sys_profile:delete' });
7777

7878
expect(isAuthorized).toBe(true);
7979
});
@@ -84,7 +84,7 @@ describe('Session', () => {
8484
id: 'session_1',
8585
object: 'session',
8686
user: createUser({
87-
organization_memberships: [{ name: 'Org1', id: 'org1', permissions: ['org:memberships:read'] }],
87+
organization_memberships: [{ name: 'Org1', id: 'org1', permissions: ['org:sys_memberships:read'] }],
8888
}),
8989
last_active_organization_id: 'org1',
9090
last_active_token: { object: 'token', jwt: mockJwt },
@@ -93,7 +93,7 @@ describe('Session', () => {
9393
updated_at: new Date().getTime(),
9494
} as SessionJSON);
9595

96-
const isAuthorized = await session.isAuthorized({ permission: 'org:profile:delete' });
96+
const isAuthorized = await session.isAuthorized({ permission: 'org:sys_profile:delete' });
9797

9898
expect(isAuthorized).toBe(false);
9999
});

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

+8-8
Original file line numberDiff line numberDiff line change
@@ -51,14 +51,14 @@ export const createOrganizationMembership = (params: OrgParams): OrganizationMem
5151
public_metadata: {},
5252
role: role || 'admin',
5353
permissions: permissions || [
54-
'org:domains:delete',
55-
'org:domains:manage',
56-
'org:domains:read',
57-
'org:memberships:delete',
58-
'org:memberships:manage',
59-
'org:memberships:read',
60-
'org:profile:delete',
61-
'org:profile:manage',
54+
'org:sys_domains:delete',
55+
'org:sys_domains:manage',
56+
'org:sys_domains:read',
57+
'org:sys_memberships:delete',
58+
'org:sys_memberships:manage',
59+
'org:sys_memberships:read',
60+
'org:sys_profile:delete',
61+
'org:sys_profile:manage',
6262
],
6363
updated_at: new Date().getTime(),
6464
} as OrganizationMembershipJSON;

packages/types/src/organizationMembership.ts

+8-8
Original file line numberDiff line numberDiff line change
@@ -43,14 +43,14 @@ export interface OrganizationMembershipResource extends ClerkResource {
4343
export type MembershipRole = 'admin' | 'basic_member' | 'guest_member';
4444

4545
export type OrganizationPermission =
46-
| 'org:domains:manage'
47-
| 'org:domains:delete'
48-
| 'org:profile:manage'
49-
| 'org:profile:delete'
50-
| 'org:memberships:read'
51-
| 'org:memberships:manage'
52-
| 'org:memberships:delete'
53-
| 'org:domains:read';
46+
| 'org:sys_domains:manage'
47+
| 'org:sys_domains:delete'
48+
| 'org:sys_profile:manage'
49+
| 'org:sys_profile:delete'
50+
| 'org:sys_memberships:read'
51+
| 'org:sys_memberships:manage'
52+
| 'org:sys_memberships:delete'
53+
| 'org:sys_domains:read';
5454

5555
export type UpdateOrganizationMembershipParams = {
5656
role: MembershipRole;

0 commit comments

Comments
 (0)