@turinhub/tale-js-sdk 1.3.0

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.
Files changed (59) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +56 -0
  3. package/dist/acl/index.d.ts +295 -0
  4. package/dist/acl/index.js +653 -0
  5. package/dist/acl/types.d.ts +142 -0
  6. package/dist/acl/types.js +1 -0
  7. package/dist/auth/index.d.ts +166 -0
  8. package/dist/auth/index.js +522 -0
  9. package/dist/auth/types.d.ts +127 -0
  10. package/dist/auth/types.js +1 -0
  11. package/dist/cms/file.d.ts +398 -0
  12. package/dist/cms/file.js +800 -0
  13. package/dist/cms/folder.d.ts +128 -0
  14. package/dist/cms/folder.js +294 -0
  15. package/dist/cms/index.d.ts +3 -0
  16. package/dist/cms/index.js +6 -0
  17. package/dist/cms/types.d.ts +157 -0
  18. package/dist/cms/types.js +1 -0
  19. package/dist/common/types.d.ts +91 -0
  20. package/dist/common/types.js +2 -0
  21. package/dist/errors.d.ts +52 -0
  22. package/dist/errors.js +109 -0
  23. package/dist/index.d.ts +13 -0
  24. package/dist/index.js +12 -0
  25. package/dist/rbac/acl.d.ts +152 -0
  26. package/dist/rbac/acl.js +723 -0
  27. package/dist/rbac/index.d.ts +464 -0
  28. package/dist/rbac/index.js +1121 -0
  29. package/dist/rbac/rbac.d.ts +198 -0
  30. package/dist/rbac/rbac.js +984 -0
  31. package/dist/rbac/types.d.ts +125 -0
  32. package/dist/rbac/types.js +1 -0
  33. package/dist/rbac/user-group.d.ts +122 -0
  34. package/dist/rbac/user-group.js +570 -0
  35. package/dist/status.d.ts +40 -0
  36. package/dist/status.js +56 -0
  37. package/dist/task/index.d.ts +163 -0
  38. package/dist/task/index.js +495 -0
  39. package/dist/task/types.d.ts +116 -0
  40. package/dist/task/types.js +1 -0
  41. package/dist/task-type/index.d.ts +92 -0
  42. package/dist/task-type/index.js +256 -0
  43. package/dist/task-type/types.d.ts +54 -0
  44. package/dist/task-type/types.js +1 -0
  45. package/dist/token.d.ts +21 -0
  46. package/dist/token.js +114 -0
  47. package/dist/user/index.d.ts +267 -0
  48. package/dist/user/index.js +786 -0
  49. package/dist/user/types.d.ts +145 -0
  50. package/dist/user/types.js +1 -0
  51. package/dist/user-attribute/index.d.ts +186 -0
  52. package/dist/user-attribute/index.js +615 -0
  53. package/dist/user-attribute/types.d.ts +109 -0
  54. package/dist/user-attribute/types.js +1 -0
  55. package/dist/user-group/index.d.ts +231 -0
  56. package/dist/user-group/index.js +566 -0
  57. package/dist/user-group/types.d.ts +50 -0
  58. package/dist/user-group/types.js +1 -0
  59. package/package.json +50 -0
@@ -0,0 +1,109 @@
1
+ import type { CommonOptions } from "../common/types.js";
2
+ /**
3
+ * User attribute definition
4
+ */
5
+ export interface UserAttributeDefinition {
6
+ open_id: string;
7
+ attribute_name: string;
8
+ description?: string;
9
+ schema_definition: Record<string, unknown>;
10
+ is_enabled: boolean;
11
+ created_at: string;
12
+ updated_at: string;
13
+ remark?: string;
14
+ }
15
+ /**
16
+ * User attribute value (matches backend UserAttributeDTO)
17
+ */
18
+ export interface UserAttributeDTO {
19
+ user_id: string;
20
+ attribute_definition_id: string;
21
+ attribute_name: string;
22
+ attribute_value: Record<string, unknown>;
23
+ created_at: string;
24
+ updated_at: string;
25
+ remark?: string;
26
+ }
27
+ /**
28
+ * User attribute item (without user_id, matches backend UserAttributeItemDTO)
29
+ */
30
+ export interface UserAttributeItemDTO {
31
+ attribute_definition_id: string;
32
+ attribute_name: string;
33
+ attribute_value: Record<string, unknown>;
34
+ created_at: string;
35
+ updated_at: string;
36
+ remark?: string;
37
+ }
38
+ /**
39
+ * User attribute grouped by user (matches backend UserAttributeGroupedDTO)
40
+ */
41
+ export interface UserAttributeGroupedDTO {
42
+ user_id: string;
43
+ username: string;
44
+ nickname: string;
45
+ email: string;
46
+ phone: string;
47
+ avatar_url?: string;
48
+ remark?: string;
49
+ is_frozen: boolean;
50
+ registered_at: string;
51
+ attributes: UserAttributeItemDTO[];
52
+ }
53
+ /**
54
+ * Request for creating a user attribute definition
55
+ */
56
+ export interface CreateUserAttributeDefinitionRequest {
57
+ attribute_name: string;
58
+ description?: string;
59
+ schema_definition: Record<string, unknown>;
60
+ is_enabled?: boolean;
61
+ remark?: string;
62
+ }
63
+ /**
64
+ * Request for updating a user attribute definition
65
+ */
66
+ export interface UpdateUserAttributeDefinitionRequest {
67
+ attribute_name?: string;
68
+ description?: string;
69
+ schema_definition?: Record<string, unknown>;
70
+ is_enabled?: boolean;
71
+ remark?: string;
72
+ }
73
+ /**
74
+ * Request for setting a user attribute value
75
+ */
76
+ export interface SetUserAttributeRequest {
77
+ attribute_value: Record<string, unknown>;
78
+ remark?: string;
79
+ }
80
+ /**
81
+ * Request for listing user attribute definitions
82
+ */
83
+ export interface ListUserAttributeDefinitionsRequest {
84
+ page?: number;
85
+ size?: number;
86
+ keyword?: string;
87
+ sort?: string;
88
+ }
89
+ /**
90
+ * Request for listing user attributes
91
+ */
92
+ export interface ListUserAttributesRequest {
93
+ page?: number;
94
+ size?: number;
95
+ sort?: string;
96
+ }
97
+ /**
98
+ * Request for listing all user attributes (grouped)
99
+ */
100
+ export interface ListAllUserAttributesRequest {
101
+ page?: number;
102
+ size?: number;
103
+ sort?: string;
104
+ }
105
+ /**
106
+ * Options for user attribute operations
107
+ */
108
+ export interface UserAttributeOptions extends CommonOptions {
109
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,231 @@
1
+ import type { PageResponse } from "../common/types.js";
2
+ import type { UserGroupInfo, UserGroupMember, CreateUserGroupRequest, UpdateUserGroupRequest, UserGroupMemberRequest, UserGroupOptions, ListUserGroupsRequest, ListUserGroupMembersRequest } from "./types.js";
3
+ export type { UserGroupInfo, UserGroupMember, CreateUserGroupRequest, UpdateUserGroupRequest, UserGroupMemberRequest, UserGroupOptions, ListUserGroupsRequest, ListUserGroupMembersRequest, } from "./types.js";
4
+ /**
5
+ * Gets a user group by ID.
6
+ *
7
+ * @param groupId - User group ID
8
+ * @param options - Optional configuration
9
+ * @returns Promise resolving to user group information
10
+ * @throws {ConfigurationError} When required environment variables are missing
11
+ * @throws {ApiError} When API request fails
12
+ * @throws {NetworkError} When network request fails
13
+ *
14
+ * @example
15
+ * ```typescript
16
+ * import { getUserGroup } from '@tale/client';
17
+ *
18
+ * try {
19
+ * const group = await getUserGroup('group_id_here');
20
+ * console.log('Group name:', group.name);
21
+ * } catch (error) {
22
+ * console.error('Failed to get user group:', error.message);
23
+ * }
24
+ * ```
25
+ */
26
+ export declare function getUserGroup(groupId: string, options?: UserGroupOptions): Promise<UserGroupInfo>;
27
+ /**
28
+ * Lists user groups with pagination and optional keyword filtering.
29
+ *
30
+ * @param options - Optional parameters for pagination and filtering
31
+ * @returns Promise resolving to paginated user group list
32
+ * @throws {ConfigurationError} When required environment variables are missing
33
+ * @throws {ApiError} When API request fails
34
+ * @throws {NetworkError} When network request fails
35
+ *
36
+ * @example
37
+ * ```typescript
38
+ * import { listUserGroups } from '@tale/client';
39
+ *
40
+ * try {
41
+ * const result = await listUserGroups({
42
+ * page: 0,
43
+ * size: 20,
44
+ * keyword: 'admin'
45
+ * });
46
+ * console.log(`Found ${result.totalElements} user groups`);
47
+ * } catch (error) {
48
+ * console.error('Failed to list user groups:', error.message);
49
+ * }
50
+ * ```
51
+ */
52
+ export declare function listUserGroups(options?: ListUserGroupsRequest & UserGroupOptions): Promise<PageResponse<UserGroupInfo>>;
53
+ /**
54
+ * Creates a new user group.
55
+ *
56
+ * @param request - User group creation request
57
+ * @param options - Optional configuration
58
+ * @returns Promise resolving to created user group
59
+ * @throws {ConfigurationError} When required environment variables are missing
60
+ * @throws {ApiError} When API request fails
61
+ * @throws {NetworkError} When network request fails
62
+ *
63
+ * @example
64
+ * ```typescript
65
+ * import { createUserGroup } from '@tale/client';
66
+ *
67
+ * try {
68
+ * const group = await createUserGroup({
69
+ * name: 'Administrators',
70
+ * description: 'Admin users',
71
+ * type: 'system'
72
+ * });
73
+ * console.log('Group created:', group.group_id);
74
+ * } catch (error) {
75
+ * console.error('Failed to create user group:', error.message);
76
+ * }
77
+ * ```
78
+ */
79
+ export declare function createUserGroup(request: CreateUserGroupRequest, options?: UserGroupOptions): Promise<UserGroupInfo>;
80
+ /**
81
+ * Updates an existing user group.
82
+ *
83
+ * @param groupId - User group ID to update
84
+ * @param request - Update request with fields to modify
85
+ * @param options - Optional configuration
86
+ * @returns Promise resolving to updated user group
87
+ * @throws {ConfigurationError} When required environment variables are missing
88
+ * @throws {ApiError} When API request fails
89
+ * @throws {NetworkError} When network request fails
90
+ *
91
+ * @example
92
+ * ```typescript
93
+ * import { updateUserGroup } from '@tale/client';
94
+ *
95
+ * try {
96
+ * const group = await updateUserGroup('group_id_here', {
97
+ * name: 'Updated Name',
98
+ * description: 'Updated description'
99
+ * });
100
+ * console.log('Group updated:', group.name);
101
+ * } catch (error) {
102
+ * console.error('Failed to update user group:', error.message);
103
+ * }
104
+ * ```
105
+ */
106
+ export declare function updateUserGroup(groupId: string, request: UpdateUserGroupRequest, options?: UserGroupOptions): Promise<UserGroupInfo>;
107
+ /**
108
+ * Deletes a user group.
109
+ *
110
+ * @param groupId - User group ID to delete
111
+ * @param options - Optional configuration
112
+ * @returns Promise that resolves when deletion is successful
113
+ * @throws {ConfigurationError} When required environment variables are missing
114
+ * @throws {ApiError} When API request fails
115
+ * @throws {NetworkError} When network request fails
116
+ *
117
+ * @example
118
+ * ```typescript
119
+ * import { deleteUserGroup } from '@tale/client';
120
+ *
121
+ * try {
122
+ * await deleteUserGroup('group_id_here');
123
+ * console.log('Group deleted successfully');
124
+ * } catch (error) {
125
+ * console.error('Failed to delete user group:', error.message);
126
+ * }
127
+ * ```
128
+ */
129
+ export declare function deleteUserGroup(groupId: string, options?: UserGroupOptions): Promise<void>;
130
+ /**
131
+ * Gets members of a user group with pagination.
132
+ *
133
+ * @param groupId - User group ID
134
+ * @param options - Optional parameters for pagination
135
+ * @returns Promise resolving to paginated member list
136
+ * @throws {ConfigurationError} When required environment variables are missing
137
+ * @throws {ApiError} When API request fails
138
+ * @throws {NetworkError} When network request fails
139
+ *
140
+ * @example
141
+ * ```typescript
142
+ * import { listUserGroupMembers } from '@tale/client';
143
+ *
144
+ * try {
145
+ * const result = await listUserGroupMembers('group_id_here', {
146
+ * page: 0,
147
+ * size: 20
148
+ * });
149
+ * console.log(`Found ${result.totalElements} members`);
150
+ * } catch (error) {
151
+ * console.error('Failed to list user group members:', error.message);
152
+ * }
153
+ * ```
154
+ */
155
+ export declare function listUserGroupMembers(groupId: string, options?: ListUserGroupMembersRequest & UserGroupOptions): Promise<PageResponse<UserGroupMember>>;
156
+ /**
157
+ * Adds members to a user group.
158
+ *
159
+ * @param groupId - User group ID
160
+ * @param request - Request containing user IDs to add
161
+ * @param options - Optional configuration
162
+ * @returns Promise that resolves when members are added
163
+ * @throws {ConfigurationError} When required environment variables are missing
164
+ * @throws {ApiError} When API request fails
165
+ * @throws {NetworkError} When network request fails
166
+ *
167
+ * @example
168
+ * ```typescript
169
+ * import { addUserGroupMembers } from '@tale/client';
170
+ *
171
+ * try {
172
+ * await addUserGroupMembers('group_id_here', {
173
+ * user_ids: ['user1', 'user2', 'user3']
174
+ * });
175
+ * console.log('Members added successfully');
176
+ * } catch (error) {
177
+ * console.error('Failed to add members:', error.message);
178
+ * }
179
+ * ```
180
+ */
181
+ export declare function addUserGroupMembers(groupId: string, request: UserGroupMemberRequest, options?: UserGroupOptions): Promise<void>;
182
+ /**
183
+ * Removes members from a user group.
184
+ *
185
+ * @param groupId - User group ID
186
+ * @param request - Request containing user IDs to remove
187
+ * @param options - Optional configuration
188
+ * @returns Promise that resolves when members are removed
189
+ * @throws {ConfigurationError} When required environment variables are missing
190
+ * @throws {ApiError} When API request fails
191
+ * @throws {NetworkError} When network request fails
192
+ *
193
+ * @example
194
+ * ```typescript
195
+ * import { removeUserGroupMembers } from '@tale/client';
196
+ *
197
+ * try {
198
+ * await removeUserGroupMembers('group_id_here', {
199
+ * user_ids: ['user1', 'user2']
200
+ * });
201
+ * console.log('Members removed successfully');
202
+ * } catch (error) {
203
+ * console.error('Failed to remove members:', error.message);
204
+ * }
205
+ * ```
206
+ */
207
+ export declare function removeUserGroupMembers(groupId: string, request: UserGroupMemberRequest, options?: UserGroupOptions): Promise<void>;
208
+ /**
209
+ * Gets all user groups that a user belongs to.
210
+ *
211
+ * @param userId - User ID
212
+ * @param options - Optional configuration
213
+ * @returns Promise resolving to list of user groups
214
+ * @throws {ConfigurationError} When required environment variables are missing
215
+ * @throws {ApiError} When API request fails
216
+ * @throws {NetworkError} When network request fails
217
+ *
218
+ * @example
219
+ * ```typescript
220
+ * import { getUserGroups } from '@tale/client';
221
+ *
222
+ * try {
223
+ * const groups = await getUserGroups('user_id_here');
224
+ * console.log(`User belongs to ${groups.length} groups`);
225
+ * groups.forEach(group => console.log('-', group.name));
226
+ * } catch (error) {
227
+ * console.error('Failed to get user groups:', error.message);
228
+ * }
229
+ * ```
230
+ */
231
+ export declare function getUserGroups(userId: string, options?: UserGroupOptions): Promise<UserGroupInfo[]>;