tale-js-sdk 0.1.2 → 0.1.4

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 (48) hide show
  1. package/dist/acl/index.d.ts +170 -0
  2. package/dist/acl/index.js +747 -0
  3. package/dist/acl/types.d.ts +208 -0
  4. package/dist/acl/types.js +1 -0
  5. package/dist/auth/index.d.ts +2 -134
  6. package/dist/auth/index.js +120 -96
  7. package/dist/auth/types.d.ts +122 -0
  8. package/dist/auth/types.js +1 -0
  9. package/dist/common/types.d.ts +82 -0
  10. package/dist/common/types.js +2 -0
  11. package/dist/errors.js +18 -18
  12. package/dist/index.d.ts +2 -0
  13. package/dist/index.js +1 -0
  14. package/dist/rbac/acl.d.ts +152 -0
  15. package/dist/rbac/acl.js +723 -0
  16. package/dist/rbac/index.d.ts +2 -0
  17. package/dist/rbac/index.js +2 -0
  18. package/dist/rbac/rbac.d.ts +198 -0
  19. package/dist/rbac/rbac.js +984 -0
  20. package/dist/rbac/types.d.ts +356 -0
  21. package/dist/rbac/types.js +1 -0
  22. package/dist/rbac/user-group.d.ts +122 -0
  23. package/dist/rbac/user-group.js +570 -0
  24. package/dist/status.js +3 -3
  25. package/dist/token.d.ts +1 -1
  26. package/dist/token.js +5 -4
  27. package/dist/user/index.d.ts +165 -142
  28. package/dist/user/index.js +511 -59
  29. package/dist/user/types.d.ts +149 -0
  30. package/dist/user/types.js +1 -0
  31. package/dist/user-group/index.d.ts +230 -0
  32. package/dist/user-group/index.js +560 -0
  33. package/dist/user-group/types.d.ts +64 -0
  34. package/dist/user-group/types.js +1 -0
  35. package/package.json +4 -3
  36. package/dist/auth.d.ts +0 -271
  37. package/dist/auth.js +0 -461
  38. package/dist/client.d.ts +0 -20
  39. package/dist/client.js +0 -62
  40. package/dist/info.d.ts +0 -9
  41. package/dist/info.js +0 -18
  42. package/dist/package.json +0 -36
  43. package/dist/src/index.d.ts +0 -1
  44. package/dist/src/index.js +0 -1
  45. package/dist/src/info.d.ts +0 -6
  46. package/dist/src/info.js +0 -4
  47. package/dist/user.d.ts +0 -242
  48. package/dist/user.js +0 -331
@@ -0,0 +1,208 @@
1
+ export interface PaginatedResponse<T> {
2
+ content: T[];
3
+ pageable: {
4
+ sort: Sort;
5
+ offset: number;
6
+ pageNumber: number;
7
+ pageSize: number;
8
+ paged: boolean;
9
+ unpaged: boolean;
10
+ };
11
+ last: boolean;
12
+ totalPages: number;
13
+ totalElements: number;
14
+ size: number;
15
+ number: number;
16
+ sort: Sort;
17
+ first: boolean;
18
+ numberOfElements: number;
19
+ empty: boolean;
20
+ }
21
+ export interface Sort {
22
+ empty: boolean;
23
+ sorted: boolean;
24
+ unsorted: boolean;
25
+ }
26
+ export interface CommonOptions {
27
+ baseUrl?: string;
28
+ appKey?: string;
29
+ appSecret?: string;
30
+ appToken?: string;
31
+ }
32
+ export interface AclOptions extends CommonOptions {
33
+ include_records?: boolean;
34
+ include_templates?: boolean;
35
+ effect_type?: 'allow' | 'deny' | 'inherit';
36
+ priority_range?: {
37
+ min: number;
38
+ max: number;
39
+ };
40
+ }
41
+ export interface AclRecord {
42
+ record_id: string;
43
+ app_id: string;
44
+ template_id: string;
45
+ subject_type: 'user' | 'role' | 'group';
46
+ subject_id?: string;
47
+ subject_identifier?: string;
48
+ resource_type: string;
49
+ resource_id?: string;
50
+ resource_identifier?: string;
51
+ effect_type: 'allow' | 'deny' | 'inherit';
52
+ priority: number;
53
+ data_scope?: Record<string, any>;
54
+ description?: string;
55
+ created_at?: string;
56
+ updated_at?: string;
57
+ }
58
+ export interface AclTemplate {
59
+ template_id: string;
60
+ app_id: string;
61
+ template_name: string;
62
+ template_code: string;
63
+ subject_filter?: Record<string, any>;
64
+ resource_filter?: Record<string, any>;
65
+ effect_type?: 'allow' | 'deny' | 'inherit';
66
+ default_priority?: number;
67
+ description?: string;
68
+ created_at?: string;
69
+ updated_at?: string;
70
+ }
71
+ export interface CreateAclRecordRequest {
72
+ template_id: string;
73
+ subject_type: 'user' | 'role' | 'group';
74
+ subject_id?: string;
75
+ subject_identifier?: string;
76
+ resource_type: string;
77
+ resource_id?: string;
78
+ resource_identifier?: string;
79
+ effect_type: 'allow' | 'deny' | 'inherit';
80
+ priority?: number;
81
+ data_scope?: Record<string, any>;
82
+ description?: string;
83
+ }
84
+ export interface UpdateAclRecordRequest {
85
+ template_id?: string;
86
+ effect_type?: 'allow' | 'deny' | 'inherit';
87
+ priority?: number;
88
+ data_scope?: Record<string, any>;
89
+ description?: string;
90
+ }
91
+ export interface ListAclRecordsRequest {
92
+ template_id?: string;
93
+ subject_type?: 'user' | 'role' | 'group';
94
+ subject_id?: string;
95
+ subject_identifier?: string;
96
+ resource_type?: string;
97
+ resource_id?: string;
98
+ resource_identifier?: string;
99
+ page?: number;
100
+ size?: number;
101
+ sort_by?: string;
102
+ sort_direction?: 'asc' | 'desc';
103
+ }
104
+ export interface CreateAclTemplateRequest {
105
+ template_name: string;
106
+ template_code: string;
107
+ subject_filter?: Record<string, any>;
108
+ resource_filter?: Record<string, any>;
109
+ effect_type?: 'allow' | 'deny' | 'inherit';
110
+ default_priority?: number;
111
+ description?: string;
112
+ }
113
+ export interface UpdateAclTemplateRequest {
114
+ template_name?: string;
115
+ subject_filter?: Record<string, any>;
116
+ resource_filter?: Record<string, any>;
117
+ effect_type?: 'allow' | 'deny' | 'inherit';
118
+ default_priority?: number;
119
+ description?: string;
120
+ }
121
+ export interface ListAclTemplatesRequest {
122
+ resource_type?: string;
123
+ subject_type?: 'user' | 'role' | 'group';
124
+ page?: number;
125
+ size?: number;
126
+ sort_by?: string;
127
+ sort_direction?: 'asc' | 'desc';
128
+ }
129
+ export interface CreateAclRecordResponse {
130
+ record: AclRecord;
131
+ message?: string;
132
+ }
133
+ export interface CreateAclRecordJson {
134
+ data: CreateAclRecordResponse;
135
+ code: number;
136
+ msg: string;
137
+ }
138
+ export interface UpdateAclRecordResponse {
139
+ record: AclRecord;
140
+ message?: string;
141
+ }
142
+ export interface UpdateAclRecordJson {
143
+ data: UpdateAclRecordResponse;
144
+ code: number;
145
+ msg: string;
146
+ }
147
+ export interface DeleteAclRecordResponse {
148
+ deleted: boolean;
149
+ record_id: string;
150
+ }
151
+ export interface DeleteAclRecordJson {
152
+ data: DeleteAclRecordResponse;
153
+ code: number;
154
+ msg: string;
155
+ }
156
+ export interface GetAclRecordResponse {
157
+ record: AclRecord;
158
+ }
159
+ export interface GetAclRecordJson {
160
+ data: GetAclRecordResponse;
161
+ code: number;
162
+ msg: string;
163
+ }
164
+ export interface ListAclRecordsJson {
165
+ data: PaginatedResponse<AclRecord>;
166
+ code: number;
167
+ msg: string;
168
+ }
169
+ export interface CreateAclTemplateResponse {
170
+ template: AclTemplate;
171
+ message?: string;
172
+ }
173
+ export interface CreateAclTemplateJson {
174
+ data: CreateAclTemplateResponse;
175
+ code: number;
176
+ msg: string;
177
+ }
178
+ export interface UpdateAclTemplateResponse {
179
+ template: AclTemplate;
180
+ message?: string;
181
+ }
182
+ export interface UpdateAclTemplateJson {
183
+ data: UpdateAclTemplateResponse;
184
+ code: number;
185
+ msg: string;
186
+ }
187
+ export interface DeleteAclTemplateResponse {
188
+ deleted: boolean;
189
+ template_id: string;
190
+ }
191
+ export interface DeleteAclTemplateJson {
192
+ data: DeleteAclTemplateResponse;
193
+ code: number;
194
+ msg: string;
195
+ }
196
+ export interface GetAclTemplateResponse {
197
+ template: AclTemplate;
198
+ }
199
+ export interface GetAclTemplateJson {
200
+ data: GetAclTemplateResponse;
201
+ code: number;
202
+ msg: string;
203
+ }
204
+ export interface ListAclTemplatesJson {
205
+ data: PaginatedResponse<AclTemplate>;
206
+ code: number;
207
+ msg: string;
208
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -1,137 +1,5 @@
1
- export interface LoginRequest {
2
- username: string;
3
- password: string;
4
- }
5
- export interface LoginOptions {
6
- baseUrl?: string;
7
- device_name?: string;
8
- device_fingerprint?: string;
9
- scope?: string;
10
- }
11
- export interface LoginWithSmsOptions {
12
- appToken?: string;
13
- }
14
- export interface VerifySmsOptions {
15
- baseUrl?: string;
16
- appKey?: string;
17
- appToken?: string;
18
- device_name?: string;
19
- device_fingerprint?: string;
20
- scope?: string;
21
- }
22
- export interface AuthAppInfo {
23
- app_id: string;
24
- org_id: string;
25
- app_key: string;
26
- app_name: string;
27
- }
28
- export interface AuthUser {
29
- user_id: string;
30
- nick_name: string;
31
- avatar_url: string;
32
- username: string;
33
- email: string;
34
- phone: string;
35
- registered_at: string;
36
- remark: string;
37
- is_frozen: boolean;
38
- latest_login_time?: string;
39
- }
40
- export interface UserToken {
41
- token: string;
42
- scope: string;
43
- device_name?: string;
44
- device_fingerprint?: string;
45
- granted_at: string;
46
- expired_at: string;
47
- }
48
- export interface AuthRole {
49
- role_id: string;
50
- role_name: string;
51
- description?: string;
52
- assigned_at: string;
53
- expires_at?: string;
54
- is_active: boolean;
55
- }
56
- export interface AuthPrivilege {
57
- privilege_id: string;
58
- privilege_name: string;
59
- description?: string;
60
- granted_directly: boolean;
61
- role_id?: string;
62
- assigned_at: string;
63
- expires_at?: string;
64
- is_active: boolean;
65
- }
66
- export interface AuthUserGroup {
67
- group_id: string;
68
- group_name: string;
69
- description?: string;
70
- }
71
- export interface AuthUserLoginMethod {
72
- method_type: string;
73
- identifier: string;
74
- is_active: boolean;
75
- created_at: string;
76
- last_used_at?: string;
77
- }
78
- export interface LoginResponse {
79
- app: AuthAppInfo;
80
- user: AuthUser;
81
- token: UserToken;
82
- user_roles: AuthRole[];
83
- user_privileges: AuthPrivilege[];
84
- user_groups: AuthUserGroup[];
85
- user_login_methods: AuthUserLoginMethod[];
86
- }
87
- export interface LoginJson {
88
- app: AuthAppInfo;
89
- user: AuthUser;
90
- token: UserToken;
91
- user_roles: AuthRole[];
92
- user_privileges: AuthPrivilege[];
93
- user_groups: AuthUserGroup[];
94
- user_login_methods: AuthUserLoginMethod[];
95
- }
96
- export interface SendSmsResponse {
97
- app_key: string;
98
- phone: string;
99
- type: 'login' | 'register';
100
- sms_id: string;
101
- expired_at: string;
102
- }
103
- export interface SendSmsJson {
104
- app_key: string;
105
- phone: string;
106
- type: 'login' | 'register';
107
- sms_id: string;
108
- expired_at: string;
109
- }
110
- export interface VerifySmsRequest {
111
- sms_id: string;
112
- sms_type: 'login' | 'register';
113
- verification_code: string;
114
- username?: string;
115
- password_encrypted?: string;
116
- }
117
- export interface SmsLoginResponse {
118
- app: AuthAppInfo;
119
- user: AuthUser;
120
- token: UserToken;
121
- user_roles: AuthRole[];
122
- user_privileges: AuthPrivilege[];
123
- user_groups: AuthUserGroup[];
124
- user_login_methods: AuthUserLoginMethod[];
125
- }
126
- export interface SmsLoginJson {
127
- app: AuthAppInfo;
128
- user: AuthUser;
129
- token: UserToken;
130
- user_roles: AuthRole[];
131
- user_privileges: AuthPrivilege[];
132
- user_groups: AuthUserGroup[];
133
- user_login_methods: AuthUserLoginMethod[];
134
- }
1
+ import type { LoginRequest, LoginOptions, LoginWithSmsOptions, VerifySmsOptions, AppInfo, AuthUser, UserToken, AuthRole, AuthPrivilege, UserGroup, AuthUserLoginMethod, LoginResponse, LoginJson, SendSmsResponse, SendSmsJson, VerifySmsRequest, SmsLoginResponse, SmsLoginJson } from "./types.js";
2
+ export type { LoginRequest, LoginOptions, LoginWithSmsOptions, VerifySmsOptions, AppInfo, AuthUser, UserToken, AuthRole, AuthPrivilege, UserGroup, AuthUserLoginMethod, LoginResponse, LoginJson, SendSmsResponse, SendSmsJson, VerifySmsRequest, SmsLoginResponse, SmsLoginJson, };
135
3
  /**
136
4
  * Authenticates a user with username and password.
137
5
  *