@choiceform/shared-auth 0.1.27 → 0.1.29
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/dist/api/auth-api.d.ts.map +1 -1
- package/dist/api/auth-api.js +14 -18
- package/dist/api/organization-api.d.ts.map +1 -1
- package/dist/api/organization-api.js +18 -17
- package/dist/api/team-api.d.ts.map +1 -1
- package/dist/api/team-api.js +10 -9
- package/dist/types/stripe.d.ts +6 -0
- package/dist/types/stripe.d.ts.map +1 -1
- package/dist/utils/error-schema.d.ts +26 -0
- package/dist/utils/error-schema.d.ts.map +1 -0
- package/dist/utils/error-schema.js +61 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-api.d.ts","sourceRoot":"","sources":["../../src/api/auth-api.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,WAAW,EACX,iBAAiB,EACjB,WAAW,EACZ,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"auth-api.d.ts","sourceRoot":"","sources":["../../src/api/auth-api.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,WAAW,EACX,iBAAiB,EACjB,WAAW,EACZ,MAAM,UAAU,CAAA;AAGjB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEzC;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,SAAS;IAM9C;;;OAGG;kBACiB,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAW/C;;;OAGG;+BAC8B,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAgBrE;;;OAGG;mBACkB,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAc3C;;OAEG;qBACoB,iBAAiB,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAetE;;OAEG;0BACyB,gBAAgB,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IAiB3E;;OAEG;mCAEM,MAAM,gBACC,MAAM,GACnB,OAAO,CAAC;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IAmB/B;;;;OAIG;4BAC2B,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAqBvD;;;OAGG;gCAC+B,MAAM,UAAU,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBxE;;OAEG;oCAEgB,MAAM,eACV,MAAM,UACX,MAAM,GACb,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAsBhC;;OAEG;0BAES,MAAM,gBACF,MAAM,UACZ,MAAM,GACb,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAsBhC;;;;;;;OAOG;yBACwB,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAiBtD;;;;;OAKG;mCAEU,MAAM,UACT,MAAM,GACb,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAqBnC;;;;OAIG;8BAEW,MAAM,cACN,MAAM,UACV,MAAM,GACb,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAkBhC;;OAEG;0BAEU,MAAM,gBACH,MAAM,UACZ,MAAM,GACb,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAsBjD;;OAEG;yBACwB,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAiB1D;;OAEG;0BAEO,oBAAoB,UACpB,MAAM,GACb,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;EAkBnC;AAED,MAAM,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,CAAA"}
|
package/dist/api/auth-api.js
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* 统一使用 apiClient 发送请求
|
|
6
6
|
*/
|
|
7
7
|
import { extractSessionUser } from "../utils";
|
|
8
|
+
import { createErrorWithSchema } from "../utils/error-schema";
|
|
8
9
|
/**
|
|
9
10
|
* 创建认证 API
|
|
10
11
|
*
|
|
@@ -39,7 +40,7 @@ export function createAuthApi(apiClient) {
|
|
|
39
40
|
headers: { Authorization: `Bearer ${token}` },
|
|
40
41
|
});
|
|
41
42
|
if (!response.ok) {
|
|
42
|
-
throw
|
|
43
|
+
throw createErrorWithSchema("Failed to fetch session", response.status, response.data);
|
|
43
44
|
}
|
|
44
45
|
return extractSessionUser(response.data);
|
|
45
46
|
},
|
|
@@ -55,7 +56,7 @@ export function createAuthApi(apiClient) {
|
|
|
55
56
|
headers: { Authorization: `Bearer ${token}` },
|
|
56
57
|
});
|
|
57
58
|
if (!response.ok) {
|
|
58
|
-
throw
|
|
59
|
+
throw createErrorWithSchema("Failed to onboard", response.status, response.data);
|
|
59
60
|
}
|
|
60
61
|
},
|
|
61
62
|
// ============================================================
|
|
@@ -67,7 +68,7 @@ export function createAuthApi(apiClient) {
|
|
|
67
68
|
async updateUser(data) {
|
|
68
69
|
const response = await apiClient.post("/v1/auth/update-user", data);
|
|
69
70
|
if (!response.ok) {
|
|
70
|
-
throw
|
|
71
|
+
throw createErrorWithSchema("Failed to update user", response.status, response.data);
|
|
71
72
|
}
|
|
72
73
|
return this.getSession();
|
|
73
74
|
},
|
|
@@ -80,7 +81,7 @@ export function createAuthApi(apiClient) {
|
|
|
80
81
|
async sendMagicLink(params) {
|
|
81
82
|
const response = await apiClient.post("/v1/auth/sign-in/magic-link", params);
|
|
82
83
|
if (!response.ok) {
|
|
83
|
-
throw
|
|
84
|
+
throw createErrorWithSchema("Failed to send magic link", response.status, response.data);
|
|
84
85
|
}
|
|
85
86
|
return response.data;
|
|
86
87
|
},
|
|
@@ -97,7 +98,7 @@ export function createAuthApi(apiClient) {
|
|
|
97
98
|
: `/auth/callback?type=signup&email=${encodeURIComponent(email)}`);
|
|
98
99
|
const response = await apiClient.post("/v1/auth/send-verification-email", { email, callbackURL: finalCallbackURL });
|
|
99
100
|
if (!response.ok) {
|
|
100
|
-
throw
|
|
101
|
+
throw createErrorWithSchema("Failed to resend verification email", response.status, response.data);
|
|
101
102
|
}
|
|
102
103
|
return response.data;
|
|
103
104
|
},
|
|
@@ -132,7 +133,7 @@ export function createAuthApi(apiClient) {
|
|
|
132
133
|
: undefined;
|
|
133
134
|
const response = await apiClient.post("/v1/auth/link-credential", { newPassword }, options);
|
|
134
135
|
if (!response.ok) {
|
|
135
|
-
throw
|
|
136
|
+
throw createErrorWithSchema("Failed to link credential", response.status, response.data);
|
|
136
137
|
}
|
|
137
138
|
},
|
|
138
139
|
/**
|
|
@@ -144,7 +145,7 @@ export function createAuthApi(apiClient) {
|
|
|
144
145
|
: undefined;
|
|
145
146
|
const response = await apiClient.post("/v1/auth/change-password", { currentPassword, newPassword }, options);
|
|
146
147
|
if (!response.ok) {
|
|
147
|
-
throw
|
|
148
|
+
throw createErrorWithSchema("Failed to change password", response.status, response.data);
|
|
148
149
|
}
|
|
149
150
|
return response.data;
|
|
150
151
|
},
|
|
@@ -160,12 +161,7 @@ export function createAuthApi(apiClient) {
|
|
|
160
161
|
: undefined;
|
|
161
162
|
const response = await apiClient.post("/v1/auth/change-email", { newEmail, callbackURL }, options);
|
|
162
163
|
if (!response.ok) {
|
|
163
|
-
|
|
164
|
-
const errorData = response.data;
|
|
165
|
-
if (errorData?.code) {
|
|
166
|
-
throw new Error(JSON.stringify({ code: errorData.code, message: errorData.message }));
|
|
167
|
-
}
|
|
168
|
-
throw new Error(`Failed to change email: ${response.status}`);
|
|
164
|
+
throw createErrorWithSchema("Failed to change email", response.status, response.data);
|
|
169
165
|
}
|
|
170
166
|
return response.data;
|
|
171
167
|
},
|
|
@@ -186,7 +182,7 @@ export function createAuthApi(apiClient) {
|
|
|
186
182
|
: undefined;
|
|
187
183
|
const response = await apiClient.get("/v1/auth/list-accounts", options);
|
|
188
184
|
if (!response.ok) {
|
|
189
|
-
throw
|
|
185
|
+
throw createErrorWithSchema("Failed to list accounts", response.status, response.data);
|
|
190
186
|
}
|
|
191
187
|
return response.data;
|
|
192
188
|
},
|
|
@@ -222,7 +218,7 @@ export function createAuthApi(apiClient) {
|
|
|
222
218
|
: undefined;
|
|
223
219
|
const response = await apiClient.post("/v1/auth/unlink-account", { accountId, providerId }, options);
|
|
224
220
|
if (!response.ok) {
|
|
225
|
-
throw
|
|
221
|
+
throw createErrorWithSchema("Failed to unlink account", response.status, response.data);
|
|
226
222
|
}
|
|
227
223
|
return response.data;
|
|
228
224
|
},
|
|
@@ -235,7 +231,7 @@ export function createAuthApi(apiClient) {
|
|
|
235
231
|
: undefined;
|
|
236
232
|
const response = await apiClient.post("/v1/auth/delete-user", { password, callbackURL }, options);
|
|
237
233
|
if (!response.ok) {
|
|
238
|
-
throw
|
|
234
|
+
throw createErrorWithSchema("Failed to delete user", response.status, response.data);
|
|
239
235
|
}
|
|
240
236
|
return response.data;
|
|
241
237
|
},
|
|
@@ -251,7 +247,7 @@ export function createAuthApi(apiClient) {
|
|
|
251
247
|
: undefined;
|
|
252
248
|
const response = await apiClient.get("/v1/auth/list-sessions", options);
|
|
253
249
|
if (!response.ok) {
|
|
254
|
-
throw
|
|
250
|
+
throw createErrorWithSchema("Failed to list sessions", response.status, response.data);
|
|
255
251
|
}
|
|
256
252
|
return response.data;
|
|
257
253
|
},
|
|
@@ -264,7 +260,7 @@ export function createAuthApi(apiClient) {
|
|
|
264
260
|
: undefined;
|
|
265
261
|
const response = await apiClient.post("/v1/auth/revoke-session", params, options);
|
|
266
262
|
if (!response.ok) {
|
|
267
|
-
throw
|
|
263
|
+
throw createErrorWithSchema("Failed to revoke session", response.status, response.data);
|
|
268
264
|
}
|
|
269
265
|
return response.data;
|
|
270
266
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"organization-api.d.ts","sourceRoot":"","sources":["../../src/api/organization-api.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,yBAAyB,EACzB,yBAAyB,EACzB,yBAAyB,EACzB,gBAAgB,EAChB,MAAM,EACN,mBAAmB,EACnB,uBAAuB,EACvB,UAAU,EACV,gBAAgB,EAChB,mBAAmB,EACnB,uBAAuB,EACvB,uBAAuB,EACvB,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"organization-api.d.ts","sourceRoot":"","sources":["../../src/api/organization-api.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,yBAAyB,EACzB,yBAAyB,EACzB,yBAAyB,EACzB,gBAAgB,EAChB,MAAM,EACN,mBAAmB,EACnB,uBAAuB,EACvB,UAAU,EACV,gBAAgB,EAChB,mBAAmB,EACnB,uBAAuB,EACvB,uBAAuB,EACvB,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEzC;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM;IAQxE;;OAEG;oBACmB,yBAAyB,GAAG,OAAO,CAAC,YAAY,CAAC;IAQvE;;OAEG;oBACmB,yBAAyB,GAAG,OAAO,CAAC,YAAY,CAAC;IAQvE;;OAEG;oBACmB,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC;IAQjE;;OAEG;YACW,OAAO,CAAC,YAAY,EAAE,CAAC;IAQrC;;OAEG;2BAC0B,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAW7D;;OAEG;uBACsB,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;IAgB5D;;OAEG;uBACsB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAW/C;;OAEG;2BAC0B,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAW7D;;OAEG;0BACyB,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC;IAQjE;;OAEG;8BAC6B,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC;IAYzE;;;OAGG;0BACyB,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC;IAWrE;;OAEG;uBACsB,OAAO,CAAC,UAAU,EAAE,CAAC;IAQ9C;;OAEG;gCAC+B,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAa3E;;OAEG;8BAC6B,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAOvE;;OAEG;8BAC6B,uBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAQrF;;OAEG;8BAC6B,uBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAQrF;;;;OAIG;0BACyB,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;EAOrD;AAED,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAA"}
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* 封装所有组织管理的 API 调用
|
|
5
5
|
* 基于 Core AI Auth API 文档
|
|
6
6
|
*/
|
|
7
|
+
import { createErrorWithSchema } from "../utils/error-schema";
|
|
7
8
|
/**
|
|
8
9
|
* 创建组织 API
|
|
9
10
|
*
|
|
@@ -22,7 +23,7 @@ export function createOrganizationApi(apiClient, _baseURL) {
|
|
|
22
23
|
async create(request) {
|
|
23
24
|
const response = await apiClient.post(`${basePath}/create`, request);
|
|
24
25
|
if (!response.ok) {
|
|
25
|
-
throw
|
|
26
|
+
throw createErrorWithSchema("Failed to create organization", response.status, response.data);
|
|
26
27
|
}
|
|
27
28
|
return response.data;
|
|
28
29
|
},
|
|
@@ -32,7 +33,7 @@ export function createOrganizationApi(apiClient, _baseURL) {
|
|
|
32
33
|
async update(request) {
|
|
33
34
|
const response = await apiClient.post(`${basePath}/update`, request);
|
|
34
35
|
if (!response.ok) {
|
|
35
|
-
throw
|
|
36
|
+
throw createErrorWithSchema("Failed to update organization", response.status, response.data);
|
|
36
37
|
}
|
|
37
38
|
return response.data;
|
|
38
39
|
},
|
|
@@ -42,7 +43,7 @@ export function createOrganizationApi(apiClient, _baseURL) {
|
|
|
42
43
|
async delete(request) {
|
|
43
44
|
const response = await apiClient.post(`${basePath}/delete`, request);
|
|
44
45
|
if (!response.ok) {
|
|
45
|
-
throw
|
|
46
|
+
throw createErrorWithSchema("Failed to delete organization", response.status, response.data);
|
|
46
47
|
}
|
|
47
48
|
return response.data;
|
|
48
49
|
},
|
|
@@ -52,7 +53,7 @@ export function createOrganizationApi(apiClient, _baseURL) {
|
|
|
52
53
|
async list() {
|
|
53
54
|
const response = await apiClient.get(`${basePath}/list`);
|
|
54
55
|
if (!response.ok) {
|
|
55
|
-
throw
|
|
56
|
+
throw createErrorWithSchema("Failed to list organizations", response.status, response.data);
|
|
56
57
|
}
|
|
57
58
|
return response.data || [];
|
|
58
59
|
},
|
|
@@ -65,7 +66,7 @@ export function createOrganizationApi(apiClient, _baseURL) {
|
|
|
65
66
|
if (response.status === 404) {
|
|
66
67
|
return null;
|
|
67
68
|
}
|
|
68
|
-
throw
|
|
69
|
+
throw createErrorWithSchema("Failed to get organization", response.status, response.data);
|
|
69
70
|
}
|
|
70
71
|
return response.data;
|
|
71
72
|
},
|
|
@@ -79,7 +80,7 @@ export function createOrganizationApi(apiClient, _baseURL) {
|
|
|
79
80
|
if (response.status === 400) {
|
|
80
81
|
return false;
|
|
81
82
|
}
|
|
82
|
-
throw
|
|
83
|
+
throw createErrorWithSchema("Failed to check slug", response.status, response.data);
|
|
83
84
|
}
|
|
84
85
|
return true;
|
|
85
86
|
},
|
|
@@ -95,7 +96,7 @@ export function createOrganizationApi(apiClient, _baseURL) {
|
|
|
95
96
|
if (response.status === 404) {
|
|
96
97
|
return null;
|
|
97
98
|
}
|
|
98
|
-
throw
|
|
99
|
+
throw createErrorWithSchema("Failed to get active member", response.status, response.data);
|
|
99
100
|
}
|
|
100
101
|
return response.data;
|
|
101
102
|
},
|
|
@@ -108,7 +109,7 @@ export function createOrganizationApi(apiClient, _baseURL) {
|
|
|
108
109
|
if (response.status === 404) {
|
|
109
110
|
return null;
|
|
110
111
|
}
|
|
111
|
-
throw
|
|
112
|
+
throw createErrorWithSchema("Failed to get active member role", response.status, response.data);
|
|
112
113
|
}
|
|
113
114
|
return response.data;
|
|
114
115
|
},
|
|
@@ -118,7 +119,7 @@ export function createOrganizationApi(apiClient, _baseURL) {
|
|
|
118
119
|
async removeMember(request) {
|
|
119
120
|
const response = await apiClient.post(`${basePath}/remove-member`, request);
|
|
120
121
|
if (!response.ok) {
|
|
121
|
-
throw
|
|
122
|
+
throw createErrorWithSchema("Failed to remove member", response.status, response.data);
|
|
122
123
|
}
|
|
123
124
|
return response.data.member;
|
|
124
125
|
},
|
|
@@ -128,7 +129,7 @@ export function createOrganizationApi(apiClient, _baseURL) {
|
|
|
128
129
|
async updateMemberRole(request) {
|
|
129
130
|
const response = await apiClient.post(`${basePath}/update-member-role`, request);
|
|
130
131
|
if (!response.ok) {
|
|
131
|
-
throw
|
|
132
|
+
throw createErrorWithSchema("Failed to update member role", response.status, response.data);
|
|
132
133
|
}
|
|
133
134
|
return response.data.member;
|
|
134
135
|
},
|
|
@@ -142,7 +143,7 @@ export function createOrganizationApi(apiClient, _baseURL) {
|
|
|
142
143
|
async inviteMember(request) {
|
|
143
144
|
const response = await apiClient.post(`${basePath}/invite-member`, request);
|
|
144
145
|
if (!response.ok) {
|
|
145
|
-
throw
|
|
146
|
+
throw createErrorWithSchema("Failed to invite member", response.status, response.data);
|
|
146
147
|
}
|
|
147
148
|
return response.data;
|
|
148
149
|
},
|
|
@@ -152,7 +153,7 @@ export function createOrganizationApi(apiClient, _baseURL) {
|
|
|
152
153
|
async listInvitations() {
|
|
153
154
|
const response = await apiClient.get(`${basePath}/list-invitations`);
|
|
154
155
|
if (!response.ok) {
|
|
155
|
-
throw
|
|
156
|
+
throw createErrorWithSchema("Failed to list invitations", response.status, response.data);
|
|
156
157
|
}
|
|
157
158
|
return response.data || [];
|
|
158
159
|
},
|
|
@@ -165,7 +166,7 @@ export function createOrganizationApi(apiClient, _baseURL) {
|
|
|
165
166
|
if (response.status === 404) {
|
|
166
167
|
return null;
|
|
167
168
|
}
|
|
168
|
-
throw
|
|
169
|
+
throw createErrorWithSchema("Failed to get invitation", response.status, response.data);
|
|
169
170
|
}
|
|
170
171
|
return response.data;
|
|
171
172
|
},
|
|
@@ -175,7 +176,7 @@ export function createOrganizationApi(apiClient, _baseURL) {
|
|
|
175
176
|
async cancelInvitation(request) {
|
|
176
177
|
const response = await apiClient.post(`${basePath}/cancel-invitation`, request);
|
|
177
178
|
if (!response.ok) {
|
|
178
|
-
throw
|
|
179
|
+
throw createErrorWithSchema("Failed to cancel invitation", response.status, response.data);
|
|
179
180
|
}
|
|
180
181
|
},
|
|
181
182
|
/**
|
|
@@ -184,7 +185,7 @@ export function createOrganizationApi(apiClient, _baseURL) {
|
|
|
184
185
|
async acceptInvitation(request) {
|
|
185
186
|
const response = await apiClient.post(`${basePath}/accept-invitation`, request);
|
|
186
187
|
if (!response.ok) {
|
|
187
|
-
throw
|
|
188
|
+
throw createErrorWithSchema("Failed to accept invitation", response.status, response.data);
|
|
188
189
|
}
|
|
189
190
|
return response.data;
|
|
190
191
|
},
|
|
@@ -194,7 +195,7 @@ export function createOrganizationApi(apiClient, _baseURL) {
|
|
|
194
195
|
async rejectInvitation(request) {
|
|
195
196
|
const response = await apiClient.post(`${basePath}/reject-invitation`, request);
|
|
196
197
|
if (!response.ok) {
|
|
197
|
-
throw
|
|
198
|
+
throw createErrorWithSchema("Failed to reject invitation", response.status, response.data);
|
|
198
199
|
}
|
|
199
200
|
return response.data;
|
|
200
201
|
},
|
|
@@ -206,7 +207,7 @@ export function createOrganizationApi(apiClient, _baseURL) {
|
|
|
206
207
|
async leave(organizationId) {
|
|
207
208
|
const response = await apiClient.post(`${basePath}/leave`, { organizationId });
|
|
208
209
|
if (!response.ok) {
|
|
209
|
-
throw
|
|
210
|
+
throw createErrorWithSchema("Failed to leave organization", response.status, response.data);
|
|
210
211
|
}
|
|
211
212
|
},
|
|
212
213
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"team-api.d.ts","sourceRoot":"","sources":["../../src/api/team-api.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,EACvB,IAAI,EACJ,UAAU,EACV,iBAAiB,EAClB,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"team-api.d.ts","sourceRoot":"","sources":["../../src/api/team-api.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,EACvB,IAAI,EACJ,UAAU,EACV,iBAAiB,EAClB,MAAM,eAAe,CAAA;AAEtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEzC;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,SAAS;IAQ9C;;OAEG;oBACmB,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAWvD;;OAEG;YACW,OAAO,CAAC,IAAI,EAAE,CAAC;IAQ7B;;OAEG;oBACmB,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQvD;;OAEG;oBACmB,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAOvD;;OAEG;qBACoB,OAAO,CAAC,IAAI,EAAE,CAAC;IAYtC;;OAEG;wBACuB,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAUxD;;OAEG;uBACsB,oBAAoB,GAAG,OAAO,CAAC,UAAU,CAAC;IAQnE;;OAEG;0BACyB,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAOnE;;OAEG;sBACqB,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;EAOjD;AAED,MAAM,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,CAAA"}
|
package/dist/api/team-api.js
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* 封装所有团队管理的 API 调用
|
|
5
5
|
* 基于 Core AI Auth API 文档
|
|
6
6
|
*/
|
|
7
|
+
import { createErrorWithSchema } from "../utils/error-schema";
|
|
7
8
|
/**
|
|
8
9
|
* 创建团队 API
|
|
9
10
|
*
|
|
@@ -24,7 +25,7 @@ export function createTeamApi(apiClient) {
|
|
|
24
25
|
metadata: request.metadata ?? {},
|
|
25
26
|
});
|
|
26
27
|
if (!response.ok) {
|
|
27
|
-
throw
|
|
28
|
+
throw createErrorWithSchema("Failed to create team", response.status, response.data);
|
|
28
29
|
}
|
|
29
30
|
return response.data;
|
|
30
31
|
},
|
|
@@ -34,7 +35,7 @@ export function createTeamApi(apiClient) {
|
|
|
34
35
|
async list() {
|
|
35
36
|
const response = await apiClient.get(`${basePath}/list-teams`);
|
|
36
37
|
if (!response.ok) {
|
|
37
|
-
throw
|
|
38
|
+
throw createErrorWithSchema("Failed to list teams", response.status, response.data);
|
|
38
39
|
}
|
|
39
40
|
return response.data || [];
|
|
40
41
|
},
|
|
@@ -44,7 +45,7 @@ export function createTeamApi(apiClient) {
|
|
|
44
45
|
async update(request) {
|
|
45
46
|
const response = await apiClient.post(`${basePath}/update-team`, request);
|
|
46
47
|
if (!response.ok) {
|
|
47
|
-
throw
|
|
48
|
+
throw createErrorWithSchema("Failed to update team", response.status, response.data);
|
|
48
49
|
}
|
|
49
50
|
return response.data;
|
|
50
51
|
},
|
|
@@ -54,7 +55,7 @@ export function createTeamApi(apiClient) {
|
|
|
54
55
|
async delete(request) {
|
|
55
56
|
const response = await apiClient.post(`${basePath}/remove-team`, request);
|
|
56
57
|
if (!response.ok) {
|
|
57
|
-
throw
|
|
58
|
+
throw createErrorWithSchema("Failed to delete team", response.status, response.data);
|
|
58
59
|
}
|
|
59
60
|
},
|
|
60
61
|
/**
|
|
@@ -63,7 +64,7 @@ export function createTeamApi(apiClient) {
|
|
|
63
64
|
async listUserTeams() {
|
|
64
65
|
const response = await apiClient.get(`${basePath}/list-user-teams`);
|
|
65
66
|
if (!response.ok) {
|
|
66
|
-
throw
|
|
67
|
+
throw createErrorWithSchema("Failed to list user teams", response.status, response.data);
|
|
67
68
|
}
|
|
68
69
|
return response.data || [];
|
|
69
70
|
},
|
|
@@ -76,7 +77,7 @@ export function createTeamApi(apiClient) {
|
|
|
76
77
|
async listMembers(teamId) {
|
|
77
78
|
const response = await apiClient.get(`${basePath}/list-team-members?teamId=${encodeURIComponent(teamId)}`);
|
|
78
79
|
if (!response.ok) {
|
|
79
|
-
throw
|
|
80
|
+
throw createErrorWithSchema("Failed to list team members", response.status, response.data);
|
|
80
81
|
}
|
|
81
82
|
return response.data || [];
|
|
82
83
|
},
|
|
@@ -86,7 +87,7 @@ export function createTeamApi(apiClient) {
|
|
|
86
87
|
async addMember(request) {
|
|
87
88
|
const response = await apiClient.post(`${basePath}/add-team-member`, request);
|
|
88
89
|
if (!response.ok) {
|
|
89
|
-
throw
|
|
90
|
+
throw createErrorWithSchema("Failed to add team member", response.status, response.data);
|
|
90
91
|
}
|
|
91
92
|
return response.data;
|
|
92
93
|
},
|
|
@@ -96,7 +97,7 @@ export function createTeamApi(apiClient) {
|
|
|
96
97
|
async removeMember(request) {
|
|
97
98
|
const response = await apiClient.post(`${basePath}/remove-team-member`, request);
|
|
98
99
|
if (!response.ok) {
|
|
99
|
-
throw
|
|
100
|
+
throw createErrorWithSchema("Failed to remove team member", response.status, response.data);
|
|
100
101
|
}
|
|
101
102
|
},
|
|
102
103
|
/**
|
|
@@ -105,7 +106,7 @@ export function createTeamApi(apiClient) {
|
|
|
105
106
|
async leaveTeam(teamId) {
|
|
106
107
|
const response = await apiClient.post("/v1/auth/leave-team", { teamId });
|
|
107
108
|
if (!response.ok) {
|
|
108
|
-
throw
|
|
109
|
+
throw createErrorWithSchema("Failed to leave team", response.status, response.data);
|
|
109
110
|
}
|
|
110
111
|
},
|
|
111
112
|
};
|
package/dist/types/stripe.d.ts
CHANGED
|
@@ -215,6 +215,8 @@ export interface ListStripePlansRequest {
|
|
|
215
215
|
}
|
|
216
216
|
/** 活跃订阅信息 */
|
|
217
217
|
export interface StripeSubscription {
|
|
218
|
+
/** 取消时间 */
|
|
219
|
+
cancelAt: string | null;
|
|
218
220
|
/** 取消周期结束时是否取消 */
|
|
219
221
|
cancelAtPeriodEnd: boolean;
|
|
220
222
|
/** 创建时间 */
|
|
@@ -225,6 +227,10 @@ export interface StripeSubscription {
|
|
|
225
227
|
currentPeriodStart: string | null;
|
|
226
228
|
/** 唯一标识符 */
|
|
227
229
|
id: string;
|
|
230
|
+
/** 当前计费周期结束时间 */
|
|
231
|
+
periodEnd: string | null;
|
|
232
|
+
/** 当前计费周期开始时间 */
|
|
233
|
+
periodStart: string | null;
|
|
228
234
|
/** 计划名称 */
|
|
229
235
|
plan: string;
|
|
230
236
|
/** 引用 ID */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stripe.d.ts","sourceRoot":"","sources":["../../src/types/stripe.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"stripe.d.ts","sourceRoot":"","sources":["../../src/types/stripe.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Error Schema Validation
|
|
3
|
+
*
|
|
4
|
+
* Provides utilities to parse error code and message from unknown data
|
|
5
|
+
*/
|
|
6
|
+
export interface ErrorSchema {
|
|
7
|
+
code?: string;
|
|
8
|
+
message?: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Validates and extracts error code and message from unknown data
|
|
12
|
+
*
|
|
13
|
+
* @param data - Unknown data that might contain error information
|
|
14
|
+
* @returns Object with code and message if found, otherwise undefined values
|
|
15
|
+
*/
|
|
16
|
+
export declare function parseErrorSchema(data: unknown): ErrorSchema;
|
|
17
|
+
/**
|
|
18
|
+
* Creates an Error with code and message appended
|
|
19
|
+
*
|
|
20
|
+
* @param baseMessage - Base error message
|
|
21
|
+
* @param status - HTTP status code
|
|
22
|
+
* @param data - Response data that might contain error code and message
|
|
23
|
+
* @returns Error instance with code and message appended
|
|
24
|
+
*/
|
|
25
|
+
export declare function createErrorWithSchema(baseMessage: string, status: number, data?: unknown): Error;
|
|
26
|
+
//# sourceMappingURL=error-schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-schema.d.ts","sourceRoot":"","sources":["../../src/utils/error-schema.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,WAAW,CAqB3D;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,OAAO,GACb,KAAK,CAuBP"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Error Schema Validation
|
|
3
|
+
*
|
|
4
|
+
* Provides utilities to parse error code and message from unknown data
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Validates and extracts error code and message from unknown data
|
|
8
|
+
*
|
|
9
|
+
* @param data - Unknown data that might contain error information
|
|
10
|
+
* @returns Object with code and message if found, otherwise undefined values
|
|
11
|
+
*/
|
|
12
|
+
export function parseErrorSchema(data) {
|
|
13
|
+
if (!data || typeof data !== "object") {
|
|
14
|
+
return { code: undefined, message: undefined };
|
|
15
|
+
}
|
|
16
|
+
const obj = data;
|
|
17
|
+
// Check for direct code and message properties
|
|
18
|
+
const code = typeof obj.code === "string" ? obj.code : undefined;
|
|
19
|
+
const message = typeof obj.message === "string" ? obj.message : undefined;
|
|
20
|
+
// Check for nested error object
|
|
21
|
+
if (!code && !message && typeof obj.error === "object" && obj.error !== null) {
|
|
22
|
+
const errorObj = obj.error;
|
|
23
|
+
return {
|
|
24
|
+
code: typeof errorObj.code === "string" ? errorObj.code : undefined,
|
|
25
|
+
message: typeof errorObj.message === "string" ? errorObj.message : undefined,
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
return { code, message };
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Creates an Error with code and message appended
|
|
32
|
+
*
|
|
33
|
+
* @param baseMessage - Base error message
|
|
34
|
+
* @param status - HTTP status code
|
|
35
|
+
* @param data - Response data that might contain error code and message
|
|
36
|
+
* @returns Error instance with code and message appended
|
|
37
|
+
*/
|
|
38
|
+
export function createErrorWithSchema(baseMessage, status, data) {
|
|
39
|
+
const schema = parseErrorSchema(data);
|
|
40
|
+
const parts = [baseMessage];
|
|
41
|
+
if (schema.code) {
|
|
42
|
+
parts.push(`code: ${schema.code}`);
|
|
43
|
+
}
|
|
44
|
+
if (schema.message) {
|
|
45
|
+
parts.push(`message: ${schema.message}`);
|
|
46
|
+
}
|
|
47
|
+
parts.push(`status: ${status}`);
|
|
48
|
+
const error = new Error(parts.join(", "));
|
|
49
|
+
// Attach code and message as properties for programmatic access
|
|
50
|
+
if (schema.code) {
|
|
51
|
+
;
|
|
52
|
+
error.code = schema.code;
|
|
53
|
+
}
|
|
54
|
+
if (schema.message) {
|
|
55
|
+
;
|
|
56
|
+
error.message = schema.message;
|
|
57
|
+
}
|
|
58
|
+
;
|
|
59
|
+
error.status = status;
|
|
60
|
+
return error;
|
|
61
|
+
}
|