From 8663670c21f23ae39cc0b34a029cf97d6d8d0cd1 Mon Sep 17 00:00:00 2001 From: Zai Shi Date: Fri, 20 Sep 2024 17:12:38 -0700 Subject: [PATCH] added team metadata to the client library --- packages/stack/src/lib/stack-app.ts | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/packages/stack/src/lib/stack-app.ts b/packages/stack/src/lib/stack-app.ts index 4f0c446a6..00ac77287 100644 --- a/packages/stack/src/lib/stack-app.ts +++ b/packages/stack/src/lib/stack-app.ts @@ -725,6 +725,8 @@ class _StackClientAppImpl) { await app._interface.updateServerTeam(crud.id, serverTeamUpdateOptionsToCrud(update)); await app._serverTeamsCache.refresh([undefined]); @@ -2743,7 +2748,8 @@ export type Team = { id: string, displayName: string, profileImageUrl: string | null, - + clientMetadata: any, + clientReadOnlyMetadata: any, inviteUser(options: { email: string }): Promise>, listUsers(): Promise, useUsers(): TeamUser[], @@ -2753,11 +2759,13 @@ export type Team = { export type TeamUpdateOptions = { displayName?: string, profileImageUrl?: string | null, + clientMetadata?: ReadonlyJson, }; function teamUpdateOptionsToCrud(options: TeamUpdateOptions): TeamsCrud["Client"]["Update"] { return { display_name: options.displayName, - profile_image_url: options.profileImageUrl + profile_image_url: options.profileImageUrl, + client_metadata: options.clientMetadata, }; } @@ -2782,6 +2790,7 @@ export type ServerTeamUser = ServerUser & { export type ServerTeam = { createdAt: Date, + serverMetadata: any, listUsers(): Promise, useUsers(): ServerUser[], update(update: ServerTeamUpdateOptions): Promise, @@ -2796,14 +2805,18 @@ function serverTeamCreateOptionsToCrud(options: ServerTeamCreateOptions): TeamsC return teamCreateOptionsToCrud(options); } -export type ServerTeamUpdateOptions = { - displayName?: string, - profileImageUrl?: string | null, +export type ServerTeamUpdateOptions = TeamUpdateOptions & { + + clientReadOnlyMetadata?: ReadonlyJson, + serverMetadata?: ReadonlyJson, }; function serverTeamUpdateOptionsToCrud(options: ServerTeamUpdateOptions): TeamsCrud["Server"]["Update"] { return { display_name: options.displayName, profile_image_url: options.profileImageUrl, + client_metadata: options.clientMetadata, + client_read_only_metadata: options.clientReadOnlyMetadata, + server_metadata: options.serverMetadata, }; }