@meshagent/meshagent 0.52.4 → 0.53.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/dist/browser/meshagent-client.d.ts +8 -2
- package/dist/browser/meshagent-client.js +14 -4
- package/dist/esm/meshagent-client.d.ts +8 -2
- package/dist/esm/meshagent-client.js +14 -4
- package/dist/node/meshagent-client.d.ts +8 -2
- package/dist/node/meshagent-client.js +14 -4
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,14 @@
|
|
|
1
|
+
## [0.53.1]
|
|
2
|
+
- Stability
|
|
3
|
+
|
|
4
|
+
## [0.53.0]
|
|
5
|
+
- Added user profile metadata and annotations to project-member types and parsing.
|
|
6
|
+
- Added the `user_profile_editor` project role and support for partial profile updates with metadata, annotations, and project ID options.
|
|
7
|
+
|
|
8
|
+
## [Unreleased]
|
|
9
|
+
- Added user profile metadata and string annotations to project-member models, plus `metadata`, `annotations`, and `projectId` options on `updateUserProfile`. Omitted fields are preserved; supplied maps replace their previous contents.
|
|
10
|
+
- Added `user_profile_editor` to project role types and parsing. Project owners and admins inherit profile editing; ordinary users can edit their own names and metadata.
|
|
11
|
+
|
|
1
12
|
## [0.52.4]
|
|
2
13
|
- Stability
|
|
3
14
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ApiScope } from "./participant-token.js";
|
|
2
|
-
export type ProjectRole = "member" | "admin" | "developer" | "room_creator" | "room_inventory" | "room_manager" | "session_inventory" | "agent_creator" | "agent_inventory" | "agent_manager" | "repository_creator" | "repository_inventory" | "repository_manager" | "feed_creator" | "feed_inventory" | "feed_manager" | "oauth_client_creator" | "oauth_client_inventory" | "oauth_client_manager" | "api_key_creator" | "api_key_inventory" | "api_key_manager" | "service_creator" | "service_inventory" | "service_manager" | "service_account_creator" | "service_account_inventory" | "service_account_manager" | "participant_token_creator" | "mailbox_creator" | "mailbox_inventory" | "mailbox_manager" | "route_creator" | "route_inventory" | "route_manager" | "scheduled_task_creator" | "scheduled_task_inventory" | "scheduled_task_manager" | "feed_subscription_creator" | "feed_subscription_inventory" | "feed_subscription_manager" | "llm_logger_creator" | "llm_logger_inventory" | "llm_logger_manager" | "llm_proxy_user" | "llm_quota_manager" | "usage_reporter" | "billing_manager" | "group_manager";
|
|
2
|
+
export type ProjectRole = "member" | "admin" | "developer" | "room_creator" | "room_inventory" | "room_manager" | "session_inventory" | "agent_creator" | "agent_inventory" | "agent_manager" | "repository_creator" | "repository_inventory" | "repository_manager" | "feed_creator" | "feed_inventory" | "feed_manager" | "oauth_client_creator" | "oauth_client_inventory" | "oauth_client_manager" | "api_key_creator" | "api_key_inventory" | "api_key_manager" | "service_creator" | "service_inventory" | "service_manager" | "service_account_creator" | "service_account_inventory" | "service_account_manager" | "participant_token_creator" | "mailbox_creator" | "mailbox_inventory" | "mailbox_manager" | "route_creator" | "route_inventory" | "route_manager" | "scheduled_task_creator" | "scheduled_task_inventory" | "scheduled_task_manager" | "feed_subscription_creator" | "feed_subscription_inventory" | "feed_subscription_manager" | "llm_logger_creator" | "llm_logger_inventory" | "llm_logger_manager" | "llm_proxy_user" | "llm_quota_manager" | "usage_reporter" | "billing_manager" | "group_manager" | "user_profile_editor";
|
|
3
3
|
export type ResourceRole = "viewer" | "operator" | "developer" | "admin";
|
|
4
4
|
export type RoomRole = "site_user" | "guest" | ResourceRole;
|
|
5
5
|
export type ProjectSettingsDocumentName = "openai" | "anthropic" | "otel" | "admission" | "room" | "room_roles" | "router";
|
|
@@ -131,6 +131,8 @@ export interface ProjectMember {
|
|
|
131
131
|
email: string;
|
|
132
132
|
firstName?: string | null;
|
|
133
133
|
lastName?: string | null;
|
|
134
|
+
metadata?: Record<string, unknown>;
|
|
135
|
+
annotations?: Record<string, string>;
|
|
134
136
|
directRoles: ProjectRole[];
|
|
135
137
|
}
|
|
136
138
|
export interface ProjectMembersPage {
|
|
@@ -660,7 +662,11 @@ export declare class Meshagent {
|
|
|
660
662
|
}): Promise<ProjectMembersPage>;
|
|
661
663
|
getUsersInProject(projectId: string): Promise<ProjectMember[]>;
|
|
662
664
|
getUserProfile(userId: string): Promise<Record<string, unknown>>;
|
|
663
|
-
updateUserProfile(userId: string, firstName
|
|
665
|
+
updateUserProfile(userId: string, firstName?: string, lastName?: string, options?: {
|
|
666
|
+
metadata?: Record<string, unknown>;
|
|
667
|
+
annotations?: Record<string, string>;
|
|
668
|
+
projectId?: string;
|
|
669
|
+
}): Promise<Record<string, unknown>>;
|
|
664
670
|
listProjects(): Promise<Record<string, unknown>>;
|
|
665
671
|
getProject(projectId: string): Promise<Record<string, unknown>>;
|
|
666
672
|
getProjectByKey(projectKey: string): Promise<Record<string, unknown>>;
|
|
@@ -697,7 +697,8 @@ class Meshagent {
|
|
|
697
697
|
item === "llm_proxy_user" ||
|
|
698
698
|
item === "usage_reporter" ||
|
|
699
699
|
item === "billing_manager" ||
|
|
700
|
-
item === "group_manager"
|
|
700
|
+
item === "group_manager" ||
|
|
701
|
+
item === "user_profile_editor")
|
|
701
702
|
: [];
|
|
702
703
|
const id = typeof user.id === "string" ? user.id : "";
|
|
703
704
|
const email = typeof user.email === "string" ? user.email : "";
|
|
@@ -706,6 +707,8 @@ class Meshagent {
|
|
|
706
707
|
email,
|
|
707
708
|
firstName: typeof user.first_name === "string" ? user.first_name : null,
|
|
708
709
|
lastName: typeof user.last_name === "string" ? user.last_name : null,
|
|
710
|
+
metadata: user.metadata && typeof user.metadata === "object" ? user.metadata : {},
|
|
711
|
+
annotations: user.annotations && typeof user.annotations === "object" ? user.annotations : {},
|
|
709
712
|
directRoles,
|
|
710
713
|
};
|
|
711
714
|
}
|
|
@@ -779,6 +782,7 @@ class Meshagent {
|
|
|
779
782
|
item === "usage_reporter" ||
|
|
780
783
|
item === "billing_manager" ||
|
|
781
784
|
item === "group_manager" ||
|
|
785
|
+
item === "user_profile_editor" ||
|
|
782
786
|
item === "reader" ||
|
|
783
787
|
item === "subscriber" ||
|
|
784
788
|
item === "publisher" ||
|
|
@@ -1014,10 +1018,16 @@ class Meshagent {
|
|
|
1014
1018
|
action: "fetch user profile",
|
|
1015
1019
|
});
|
|
1016
1020
|
}
|
|
1017
|
-
async updateUserProfile(userId, firstName, lastName) {
|
|
1018
|
-
|
|
1021
|
+
async updateUserProfile(userId, firstName, lastName, options = {}) {
|
|
1022
|
+
const query = options.projectId === undefined ? "" : `?project_id=${encodeURIComponent(options.projectId)}`;
|
|
1023
|
+
return await this.request(`/accounts/profiles/${encodeURIComponent(userId)}${query}`, {
|
|
1019
1024
|
method: "PUT",
|
|
1020
|
-
json: {
|
|
1025
|
+
json: {
|
|
1026
|
+
...(firstName !== undefined ? { first_name: firstName } : {}),
|
|
1027
|
+
...(lastName !== undefined ? { last_name: lastName } : {}),
|
|
1028
|
+
...(options.metadata !== undefined ? { metadata: options.metadata } : {}),
|
|
1029
|
+
...(options.annotations !== undefined ? { annotations: options.annotations } : {}),
|
|
1030
|
+
},
|
|
1021
1031
|
action: "update user profile",
|
|
1022
1032
|
});
|
|
1023
1033
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ApiScope } from "./participant-token.js";
|
|
2
|
-
export type ProjectRole = "member" | "admin" | "developer" | "room_creator" | "room_inventory" | "room_manager" | "session_inventory" | "agent_creator" | "agent_inventory" | "agent_manager" | "repository_creator" | "repository_inventory" | "repository_manager" | "feed_creator" | "feed_inventory" | "feed_manager" | "oauth_client_creator" | "oauth_client_inventory" | "oauth_client_manager" | "api_key_creator" | "api_key_inventory" | "api_key_manager" | "service_creator" | "service_inventory" | "service_manager" | "service_account_creator" | "service_account_inventory" | "service_account_manager" | "participant_token_creator" | "mailbox_creator" | "mailbox_inventory" | "mailbox_manager" | "route_creator" | "route_inventory" | "route_manager" | "scheduled_task_creator" | "scheduled_task_inventory" | "scheduled_task_manager" | "feed_subscription_creator" | "feed_subscription_inventory" | "feed_subscription_manager" | "llm_logger_creator" | "llm_logger_inventory" | "llm_logger_manager" | "llm_proxy_user" | "llm_quota_manager" | "usage_reporter" | "billing_manager" | "group_manager";
|
|
2
|
+
export type ProjectRole = "member" | "admin" | "developer" | "room_creator" | "room_inventory" | "room_manager" | "session_inventory" | "agent_creator" | "agent_inventory" | "agent_manager" | "repository_creator" | "repository_inventory" | "repository_manager" | "feed_creator" | "feed_inventory" | "feed_manager" | "oauth_client_creator" | "oauth_client_inventory" | "oauth_client_manager" | "api_key_creator" | "api_key_inventory" | "api_key_manager" | "service_creator" | "service_inventory" | "service_manager" | "service_account_creator" | "service_account_inventory" | "service_account_manager" | "participant_token_creator" | "mailbox_creator" | "mailbox_inventory" | "mailbox_manager" | "route_creator" | "route_inventory" | "route_manager" | "scheduled_task_creator" | "scheduled_task_inventory" | "scheduled_task_manager" | "feed_subscription_creator" | "feed_subscription_inventory" | "feed_subscription_manager" | "llm_logger_creator" | "llm_logger_inventory" | "llm_logger_manager" | "llm_proxy_user" | "llm_quota_manager" | "usage_reporter" | "billing_manager" | "group_manager" | "user_profile_editor";
|
|
3
3
|
export type ResourceRole = "viewer" | "operator" | "developer" | "admin";
|
|
4
4
|
export type RoomRole = "site_user" | "guest" | ResourceRole;
|
|
5
5
|
export type ProjectSettingsDocumentName = "openai" | "anthropic" | "otel" | "admission" | "room" | "room_roles" | "router";
|
|
@@ -131,6 +131,8 @@ export interface ProjectMember {
|
|
|
131
131
|
email: string;
|
|
132
132
|
firstName?: string | null;
|
|
133
133
|
lastName?: string | null;
|
|
134
|
+
metadata?: Record<string, unknown>;
|
|
135
|
+
annotations?: Record<string, string>;
|
|
134
136
|
directRoles: ProjectRole[];
|
|
135
137
|
}
|
|
136
138
|
export interface ProjectMembersPage {
|
|
@@ -660,7 +662,11 @@ export declare class Meshagent {
|
|
|
660
662
|
}): Promise<ProjectMembersPage>;
|
|
661
663
|
getUsersInProject(projectId: string): Promise<ProjectMember[]>;
|
|
662
664
|
getUserProfile(userId: string): Promise<Record<string, unknown>>;
|
|
663
|
-
updateUserProfile(userId: string, firstName
|
|
665
|
+
updateUserProfile(userId: string, firstName?: string, lastName?: string, options?: {
|
|
666
|
+
metadata?: Record<string, unknown>;
|
|
667
|
+
annotations?: Record<string, string>;
|
|
668
|
+
projectId?: string;
|
|
669
|
+
}): Promise<Record<string, unknown>>;
|
|
664
670
|
listProjects(): Promise<Record<string, unknown>>;
|
|
665
671
|
getProject(projectId: string): Promise<Record<string, unknown>>;
|
|
666
672
|
getProjectByKey(projectKey: string): Promise<Record<string, unknown>>;
|
|
@@ -692,7 +692,8 @@ export class Meshagent {
|
|
|
692
692
|
item === "llm_proxy_user" ||
|
|
693
693
|
item === "usage_reporter" ||
|
|
694
694
|
item === "billing_manager" ||
|
|
695
|
-
item === "group_manager"
|
|
695
|
+
item === "group_manager" ||
|
|
696
|
+
item === "user_profile_editor")
|
|
696
697
|
: [];
|
|
697
698
|
const id = typeof user.id === "string" ? user.id : "";
|
|
698
699
|
const email = typeof user.email === "string" ? user.email : "";
|
|
@@ -701,6 +702,8 @@ export class Meshagent {
|
|
|
701
702
|
email,
|
|
702
703
|
firstName: typeof user.first_name === "string" ? user.first_name : null,
|
|
703
704
|
lastName: typeof user.last_name === "string" ? user.last_name : null,
|
|
705
|
+
metadata: user.metadata && typeof user.metadata === "object" ? user.metadata : {},
|
|
706
|
+
annotations: user.annotations && typeof user.annotations === "object" ? user.annotations : {},
|
|
704
707
|
directRoles,
|
|
705
708
|
};
|
|
706
709
|
}
|
|
@@ -774,6 +777,7 @@ export class Meshagent {
|
|
|
774
777
|
item === "usage_reporter" ||
|
|
775
778
|
item === "billing_manager" ||
|
|
776
779
|
item === "group_manager" ||
|
|
780
|
+
item === "user_profile_editor" ||
|
|
777
781
|
item === "reader" ||
|
|
778
782
|
item === "subscriber" ||
|
|
779
783
|
item === "publisher" ||
|
|
@@ -1009,10 +1013,16 @@ export class Meshagent {
|
|
|
1009
1013
|
action: "fetch user profile",
|
|
1010
1014
|
});
|
|
1011
1015
|
}
|
|
1012
|
-
async updateUserProfile(userId, firstName, lastName) {
|
|
1013
|
-
|
|
1016
|
+
async updateUserProfile(userId, firstName, lastName, options = {}) {
|
|
1017
|
+
const query = options.projectId === undefined ? "" : `?project_id=${encodeURIComponent(options.projectId)}`;
|
|
1018
|
+
return await this.request(`/accounts/profiles/${encodeURIComponent(userId)}${query}`, {
|
|
1014
1019
|
method: "PUT",
|
|
1015
|
-
json: {
|
|
1020
|
+
json: {
|
|
1021
|
+
...(firstName !== undefined ? { first_name: firstName } : {}),
|
|
1022
|
+
...(lastName !== undefined ? { last_name: lastName } : {}),
|
|
1023
|
+
...(options.metadata !== undefined ? { metadata: options.metadata } : {}),
|
|
1024
|
+
...(options.annotations !== undefined ? { annotations: options.annotations } : {}),
|
|
1025
|
+
},
|
|
1016
1026
|
action: "update user profile",
|
|
1017
1027
|
});
|
|
1018
1028
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ApiScope } from "./participant-token.js";
|
|
2
|
-
export type ProjectRole = "member" | "admin" | "developer" | "room_creator" | "room_inventory" | "room_manager" | "session_inventory" | "agent_creator" | "agent_inventory" | "agent_manager" | "repository_creator" | "repository_inventory" | "repository_manager" | "feed_creator" | "feed_inventory" | "feed_manager" | "oauth_client_creator" | "oauth_client_inventory" | "oauth_client_manager" | "api_key_creator" | "api_key_inventory" | "api_key_manager" | "service_creator" | "service_inventory" | "service_manager" | "service_account_creator" | "service_account_inventory" | "service_account_manager" | "participant_token_creator" | "mailbox_creator" | "mailbox_inventory" | "mailbox_manager" | "route_creator" | "route_inventory" | "route_manager" | "scheduled_task_creator" | "scheduled_task_inventory" | "scheduled_task_manager" | "feed_subscription_creator" | "feed_subscription_inventory" | "feed_subscription_manager" | "llm_logger_creator" | "llm_logger_inventory" | "llm_logger_manager" | "llm_proxy_user" | "llm_quota_manager" | "usage_reporter" | "billing_manager" | "group_manager";
|
|
2
|
+
export type ProjectRole = "member" | "admin" | "developer" | "room_creator" | "room_inventory" | "room_manager" | "session_inventory" | "agent_creator" | "agent_inventory" | "agent_manager" | "repository_creator" | "repository_inventory" | "repository_manager" | "feed_creator" | "feed_inventory" | "feed_manager" | "oauth_client_creator" | "oauth_client_inventory" | "oauth_client_manager" | "api_key_creator" | "api_key_inventory" | "api_key_manager" | "service_creator" | "service_inventory" | "service_manager" | "service_account_creator" | "service_account_inventory" | "service_account_manager" | "participant_token_creator" | "mailbox_creator" | "mailbox_inventory" | "mailbox_manager" | "route_creator" | "route_inventory" | "route_manager" | "scheduled_task_creator" | "scheduled_task_inventory" | "scheduled_task_manager" | "feed_subscription_creator" | "feed_subscription_inventory" | "feed_subscription_manager" | "llm_logger_creator" | "llm_logger_inventory" | "llm_logger_manager" | "llm_proxy_user" | "llm_quota_manager" | "usage_reporter" | "billing_manager" | "group_manager" | "user_profile_editor";
|
|
3
3
|
export type ResourceRole = "viewer" | "operator" | "developer" | "admin";
|
|
4
4
|
export type RoomRole = "site_user" | "guest" | ResourceRole;
|
|
5
5
|
export type ProjectSettingsDocumentName = "openai" | "anthropic" | "otel" | "admission" | "room" | "room_roles" | "router";
|
|
@@ -131,6 +131,8 @@ export interface ProjectMember {
|
|
|
131
131
|
email: string;
|
|
132
132
|
firstName?: string | null;
|
|
133
133
|
lastName?: string | null;
|
|
134
|
+
metadata?: Record<string, unknown>;
|
|
135
|
+
annotations?: Record<string, string>;
|
|
134
136
|
directRoles: ProjectRole[];
|
|
135
137
|
}
|
|
136
138
|
export interface ProjectMembersPage {
|
|
@@ -660,7 +662,11 @@ export declare class Meshagent {
|
|
|
660
662
|
}): Promise<ProjectMembersPage>;
|
|
661
663
|
getUsersInProject(projectId: string): Promise<ProjectMember[]>;
|
|
662
664
|
getUserProfile(userId: string): Promise<Record<string, unknown>>;
|
|
663
|
-
updateUserProfile(userId: string, firstName
|
|
665
|
+
updateUserProfile(userId: string, firstName?: string, lastName?: string, options?: {
|
|
666
|
+
metadata?: Record<string, unknown>;
|
|
667
|
+
annotations?: Record<string, string>;
|
|
668
|
+
projectId?: string;
|
|
669
|
+
}): Promise<Record<string, unknown>>;
|
|
664
670
|
listProjects(): Promise<Record<string, unknown>>;
|
|
665
671
|
getProject(projectId: string): Promise<Record<string, unknown>>;
|
|
666
672
|
getProjectByKey(projectKey: string): Promise<Record<string, unknown>>;
|
|
@@ -697,7 +697,8 @@ class Meshagent {
|
|
|
697
697
|
item === "llm_proxy_user" ||
|
|
698
698
|
item === "usage_reporter" ||
|
|
699
699
|
item === "billing_manager" ||
|
|
700
|
-
item === "group_manager"
|
|
700
|
+
item === "group_manager" ||
|
|
701
|
+
item === "user_profile_editor")
|
|
701
702
|
: [];
|
|
702
703
|
const id = typeof user.id === "string" ? user.id : "";
|
|
703
704
|
const email = typeof user.email === "string" ? user.email : "";
|
|
@@ -706,6 +707,8 @@ class Meshagent {
|
|
|
706
707
|
email,
|
|
707
708
|
firstName: typeof user.first_name === "string" ? user.first_name : null,
|
|
708
709
|
lastName: typeof user.last_name === "string" ? user.last_name : null,
|
|
710
|
+
metadata: user.metadata && typeof user.metadata === "object" ? user.metadata : {},
|
|
711
|
+
annotations: user.annotations && typeof user.annotations === "object" ? user.annotations : {},
|
|
709
712
|
directRoles,
|
|
710
713
|
};
|
|
711
714
|
}
|
|
@@ -779,6 +782,7 @@ class Meshagent {
|
|
|
779
782
|
item === "usage_reporter" ||
|
|
780
783
|
item === "billing_manager" ||
|
|
781
784
|
item === "group_manager" ||
|
|
785
|
+
item === "user_profile_editor" ||
|
|
782
786
|
item === "reader" ||
|
|
783
787
|
item === "subscriber" ||
|
|
784
788
|
item === "publisher" ||
|
|
@@ -1014,10 +1018,16 @@ class Meshagent {
|
|
|
1014
1018
|
action: "fetch user profile",
|
|
1015
1019
|
});
|
|
1016
1020
|
}
|
|
1017
|
-
async updateUserProfile(userId, firstName, lastName) {
|
|
1018
|
-
|
|
1021
|
+
async updateUserProfile(userId, firstName, lastName, options = {}) {
|
|
1022
|
+
const query = options.projectId === undefined ? "" : `?project_id=${encodeURIComponent(options.projectId)}`;
|
|
1023
|
+
return await this.request(`/accounts/profiles/${encodeURIComponent(userId)}${query}`, {
|
|
1019
1024
|
method: "PUT",
|
|
1020
|
-
json: {
|
|
1025
|
+
json: {
|
|
1026
|
+
...(firstName !== undefined ? { first_name: firstName } : {}),
|
|
1027
|
+
...(lastName !== undefined ? { last_name: lastName } : {}),
|
|
1028
|
+
...(options.metadata !== undefined ? { metadata: options.metadata } : {}),
|
|
1029
|
+
...(options.annotations !== undefined ? { annotations: options.annotations } : {}),
|
|
1030
|
+
},
|
|
1021
1031
|
action: "update user profile",
|
|
1022
1032
|
});
|
|
1023
1033
|
}
|