@qmuse/cloud-client 1.0.1 → 1.0.3-dev.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.
- package/README.md +28 -0
- package/dist/adapters.d.ts +1 -0
- package/dist/adapters.d.ts.map +1 -1
- package/dist/auth.d.ts +1 -0
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +31 -8
- package/dist/auth.js.map +1 -1
- package/dist/avatar.d.ts +2 -0
- package/dist/avatar.d.ts.map +1 -0
- package/dist/avatar.js +25 -0
- package/dist/avatar.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/types.d.ts +8 -1
- package/dist/types.d.ts.map +1 -1
- package/docs/auth.md +31 -0
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
# @qmuse/cloud-client
|
|
2
2
|
|
|
3
|
+
用户名密码登录请先读 [认证接入契约与完整示例](docs/auth.md):包含输入字段、用户返回值、恢复会话、注册后登录和退出。
|
|
4
|
+
下方 SDK 示例使用宿主已初始化的客户端;QMuse 生成项目通过 `src/services/cloud` 接入,项目接入说明由 CLI 同步此认证契约。
|
|
5
|
+
|
|
3
6
|
Unified Web/PC/mini-program client for QMuse Cloud services. Business APIs use
|
|
4
7
|
the single `qmuse-cloud-api` AppBase Function. File policy uses that Function as
|
|
5
8
|
its control plane while large file bytes use a platform-specific Storage data
|
|
@@ -83,6 +86,31 @@ performed before business requests when expiry is within five minutes. Web
|
|
|
83
86
|
hosts use AppBase's secure cookie; mini-program hosts persist AppBase fallback
|
|
84
87
|
Session headers in storage scoped by endpoint and project ID.
|
|
85
88
|
|
|
89
|
+
Current users include `id`, `username`, `role` and `avatarUrl`. A valid HTTPS
|
|
90
|
+
`prefs.avatarUrl` is used when present; otherwise the account ID selects one of
|
|
91
|
+
seven fixed default avatars with FNV-1a (32-bit, UTF-16 code units). Older cloud
|
|
92
|
+
responses without an avatar remain supported.
|
|
93
|
+
|
|
94
|
+
Upload a custom avatar and then update the current user:
|
|
95
|
+
|
|
96
|
+
```ts
|
|
97
|
+
const avatar = await cloudClient.files.upload({ resource: 'user-avatar', file });
|
|
98
|
+
const user = await cloudClient.auth.setAvatar({ fileId: avatar.id });
|
|
99
|
+
image.src = user.avatarUrl;
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
The `user-avatar` resource accepts JPEG, PNG and WebP up to 5 MiB. Avatars are
|
|
103
|
+
public images. The authenticated Function verifies ownership and a completed
|
|
104
|
+
upload, then saves a stable public HTTPS URL in account prefs while preserving
|
|
105
|
+
other preferences. Only successful updates replace the cached current user;
|
|
106
|
+
failed updates leave it unchanged. Replaced files are not automatically deleted.
|
|
107
|
+
There is no avatar-clear operation.
|
|
108
|
+
|
|
109
|
+
Existing Functions must be updated to include `PUT /api/user/avatar` and the
|
|
110
|
+
`user-avatar` file policy before enabling this UI. CLI upgrades preserve
|
|
111
|
+
create-once authentication and file sources. Missing update routes fail explicitly;
|
|
112
|
+
the client does not fall back to writing prefs directly.
|
|
113
|
+
|
|
86
114
|
Business file operations use a logical resource, never a bucket ID:
|
|
87
115
|
|
|
88
116
|
```ts
|
package/dist/adapters.d.ts
CHANGED
package/dist/adapters.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapters.d.ts","sourceRoot":"","sources":["../src/adapters.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,sBAAsB,EACtB,gBAAgB,EAChB,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,uBAAuB,EACxB,MAAM,YAAY,CAAC;AAGpB,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,mBAAmB,EAAE,YAAY,CAAC,GAAG;IAC5E,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,WAAW,0BAA0B;IACzC,eAAe,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CACxE;AAED,MAAM,WAAW,6BAA6B;IAC5C,eAAe,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CAC5D;AAED,wBAAgB,gCAAgC,CAC9C,SAAS,EAAE,6BAA6B,GACvC,0BAA0B,CAU5B;AAED,MAAM,WAAW,2BAA2B;IAC1C,aAAa,CAAC,KAAK,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtF,GAAG,IAAI,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"adapters.d.ts","sourceRoot":"","sources":["../src/adapters.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,sBAAsB,EACtB,gBAAgB,EAChB,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,uBAAuB,EACxB,MAAM,YAAY,CAAC;AAGpB,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,mBAAmB,EAAE,YAAY,CAAC,GAAG;IAC5E,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,WAAW,0BAA0B;IACzC,eAAe,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CACxE;AAED,MAAM,WAAW,6BAA6B;IAC5C,eAAe,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CAC5D;AAED,wBAAgB,gCAAgC,CAC9C,SAAS,EAAE,6BAA6B,GACvC,0BAA0B,CAU5B;AAED,MAAM,WAAW,2BAA2B;IAC1C,aAAa,CAAC,KAAK,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtF,GAAG,IAAI,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IACnH,UAAU,CAAC,KAAK,EAAE;QAAE,SAAS,EAAE,SAAS,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzE,aAAa,CAAC,KAAK,EAAE;QAAE,SAAS,EAAE,SAAS,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5E,aAAa,CAAC,KAAK,EAAE;QAAE,SAAS,EAAE,SAAS,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACjE,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CACpC;AAED,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,2BAA2B,GAAG,sBAAsB,CAY3G;AAED,MAAM,WAAW,sBAAuB,SAAQ,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACjF,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,0BAA0B;IACzC,eAAe,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CACzE;AAED,MAAM,WAAW,kBAAkB,CAAC,UAAU,GAAG,KAAK;IACpD,gBAAgB,CAAC,EAAE,uBAAuB,CAAC,kBAAkB,CAAC,CAAC;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACxB,aAAa,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;CAChD;AAYD,wBAAgB,2BAA2B,CAAC,UAAU,GAAG,KAAK,EAC5D,SAAS,EAAE,0BAA0B,EACrC,OAAO,GAAE,kBAAkB,CAAC,UAAU,CAAM,GAC3C,gBAAgB,CAAC,UAAU,CAAC,CAU9B;AAED,wBAAgB,yBAAyB,CAAC,UAAU,GAAG,KAAK,EAC1D,QAAQ,EAAE,0BAA0B,EACpC,OAAO,GAAE,kBAAkB,CAAC,UAAU,CAAM,GAC3C,gBAAgB,CAAC,UAAU,CAAC,CAa9B"}
|
package/dist/auth.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ export declare function toCloudAuthUser(value: {
|
|
|
8
8
|
email?: string;
|
|
9
9
|
name?: string;
|
|
10
10
|
labels?: string[];
|
|
11
|
+
prefs?: Record<string, unknown>;
|
|
11
12
|
}): CloudAuthUser;
|
|
12
13
|
export declare function createUnavailableCloudAuth(): CloudAuthRuntime;
|
|
13
14
|
export declare function createCloudAuth(options: CloudAuthOptions, request: AuthRequest): CloudAuthRuntime;
|
package/dist/auth.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,gBAAgB,EAChB,aAAa,EAKb,YAAY,EACZ,aAAa,EACb,cAAc,EACf,MAAM,YAAY,CAAC;AAEpB,KAAK,WAAW,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;AAE3E,MAAM,MAAM,gBAAgB,GAAG,cAAc,GAAG;IAC9C,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACjC,CAAC;AAoBF,wBAAgB,eAAe,CAAC,KAAK,EAAE;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC,GAAG,aAAa,CAShB;AA2CD,wBAAgB,0BAA0B,IAAI,gBAAgB,CAiB7D;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,WAAW,GAAG,gBAAgB,CA6JjG"}
|
package/dist/auth.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { resolveAvatarUrl } from './avatar.js';
|
|
1
2
|
import { QmuseCloudError } from './errors.js';
|
|
2
3
|
const DEFAULT_REFRESH_BEFORE_MS = 5 * 60 * 1000;
|
|
3
4
|
function validUser(value) {
|
|
@@ -16,14 +17,17 @@ export function toCloudAuthUser(value) {
|
|
|
16
17
|
if (!id || !username) {
|
|
17
18
|
throw new QmuseCloudError('AppBase returned an invalid current user', 'AUTH_USER_INVALID');
|
|
18
19
|
}
|
|
19
|
-
return { id, username, role: value.labels?.includes('admin') ? 'admin' : 'user' };
|
|
20
|
+
return { id, username, avatarUrl: resolveAvatarUrl(id, value.prefs?.avatarUrl), role: value.labels?.includes('admin') ? 'admin' : 'user' };
|
|
21
|
+
}
|
|
22
|
+
function normalizeUser(value) {
|
|
23
|
+
return { id: value.id, username: value.username, role: value.role, avatarUrl: resolveAvatarUrl(value.id, value.avatarUrl) };
|
|
20
24
|
}
|
|
21
25
|
function userResult(response) {
|
|
22
26
|
const user = response.data?.data;
|
|
23
27
|
if (!validUser(user)) {
|
|
24
28
|
throw new QmuseCloudError('Cloud API returned an invalid user', 'AUTH_USER_INVALID');
|
|
25
29
|
}
|
|
26
|
-
return user;
|
|
30
|
+
return normalizeUser(user);
|
|
27
31
|
}
|
|
28
32
|
function loginResult(response) {
|
|
29
33
|
const value = response.data?.data;
|
|
@@ -58,6 +62,7 @@ export function createUnavailableCloudAuth() {
|
|
|
58
62
|
};
|
|
59
63
|
return {
|
|
60
64
|
register: unavailable,
|
|
65
|
+
setAvatar: unavailable,
|
|
61
66
|
login: unavailable,
|
|
62
67
|
loginWithProvider: unavailable,
|
|
63
68
|
loginWithMiniapp: unavailable,
|
|
@@ -101,9 +106,9 @@ export function createCloudAuth(options, request) {
|
|
|
101
106
|
throw new QmuseCloudError('AppBase returned an invalid current user', 'AUTH_USER_INVALID');
|
|
102
107
|
}
|
|
103
108
|
expiresAt = expiration(currentSession.expire);
|
|
104
|
-
user = currentUser;
|
|
109
|
+
user = normalizeUser(currentUser);
|
|
105
110
|
initialized = true;
|
|
106
|
-
return
|
|
111
|
+
return user;
|
|
107
112
|
};
|
|
108
113
|
const restoreSession = async () => {
|
|
109
114
|
if (restoreFlight)
|
|
@@ -137,9 +142,9 @@ export function createCloudAuth(options, request) {
|
|
|
137
142
|
clear();
|
|
138
143
|
throw new QmuseCloudError('AppBase returned an invalid current user', 'AUTH_USER_INVALID');
|
|
139
144
|
}
|
|
140
|
-
user = currentUser;
|
|
145
|
+
user = normalizeUser(currentUser);
|
|
141
146
|
initialized = true;
|
|
142
|
-
return
|
|
147
|
+
return user;
|
|
143
148
|
})();
|
|
144
149
|
try {
|
|
145
150
|
return await refreshFlight;
|
|
@@ -163,9 +168,9 @@ export function createCloudAuth(options, request) {
|
|
|
163
168
|
if (!validUser(currentUser)) {
|
|
164
169
|
throw new QmuseCloudError('AppBase returned an invalid current user', 'AUTH_USER_INVALID');
|
|
165
170
|
}
|
|
166
|
-
user = currentUser;
|
|
171
|
+
user = normalizeUser(currentUser);
|
|
167
172
|
initialized = true;
|
|
168
|
-
return
|
|
173
|
+
return user;
|
|
169
174
|
}
|
|
170
175
|
catch {
|
|
171
176
|
clear();
|
|
@@ -186,6 +191,24 @@ export function createCloudAuth(options, request) {
|
|
|
186
191
|
return establishSession(result);
|
|
187
192
|
};
|
|
188
193
|
return {
|
|
194
|
+
async setAvatar(input) {
|
|
195
|
+
if (!input || typeof input.fileId !== 'string' || !input.fileId.trim()) {
|
|
196
|
+
throw new QmuseCloudError('A fileId is required', 'AVATAR_INPUT_INVALID');
|
|
197
|
+
}
|
|
198
|
+
if (!initialized)
|
|
199
|
+
await restoreSession();
|
|
200
|
+
const currentId = user?.id;
|
|
201
|
+
if (!currentId)
|
|
202
|
+
throw new QmuseCloudError('Authentication required', 'AUTH_REQUIRED');
|
|
203
|
+
const updated = userResult(await request({
|
|
204
|
+
method: 'PUT', path: '/api/user/avatar', body: { fileId: input.fileId },
|
|
205
|
+
}));
|
|
206
|
+
if (updated.id !== currentId || user?.id !== currentId) {
|
|
207
|
+
throw new QmuseCloudError('Current user changed during avatar update', 'AUTH_USER_INVALID');
|
|
208
|
+
}
|
|
209
|
+
user = updated;
|
|
210
|
+
return updated;
|
|
211
|
+
},
|
|
189
212
|
async register(input) {
|
|
190
213
|
return userResult(await request({ method: 'POST', path: '/api/auth/register', body: input }));
|
|
191
214
|
},
|
package/dist/auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AA2B9C,MAAM,yBAAyB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAEhD,SAAS,SAAS,CAAC,KAAc;IAC/B,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,MAAM,IAAI,GAAG,KAA+B,CAAC;IAC7C,OAAO,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,IAAI,IAAI,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC;QACtD,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;QAC7D,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
|
package/dist/avatar.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"avatar.d.ts","sourceRoot":"","sources":["../src/avatar.ts"],"names":[],"mappings":"AAUA,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,CAYrE"}
|
package/dist/avatar.js
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
const DEFAULT_AVATARS = [
|
|
2
|
+
'https://mdn.alipayobjects.com/huamei_4fgr8p/afts/img/KTeSTKUXxAYAAAAASwAAAAgADtNGAQFr/original',
|
|
3
|
+
'https://mdn.alipayobjects.com/huamei_4fgr8p/afts/img/3ndCRKwkPOUAAAAASmAAAAgADtNGAQFr/original',
|
|
4
|
+
'https://mdn.alipayobjects.com/huamei_4fgr8p/afts/img/jqNqSIoNg08AAAAATEAAAAgADtNGAQFr/original',
|
|
5
|
+
'https://mdn.alipayobjects.com/huamei_4fgr8p/afts/img/oW0rQ7sads0AAAAASsAAAAgADtNGAQFr/original',
|
|
6
|
+
'https://mdn.alipayobjects.com/huamei_4fgr8p/afts/img/bk6JRrcX8wcAAAAATDAAAAgADtNGAQFr/original',
|
|
7
|
+
'https://mdn.alipayobjects.com/huamei_4fgr8p/afts/img/IDybSaOnE6MAAAAASfAAAAgADtNGAQFr/original',
|
|
8
|
+
'https://mdn.alipayobjects.com/huamei_4fgr8p/afts/img/JT5dRbcDqCIAAAAATQAAAAgADtNGAQFr/original',
|
|
9
|
+
];
|
|
10
|
+
export function resolveAvatarUrl(id, custom) {
|
|
11
|
+
if (typeof custom === 'string' && custom.trim()) {
|
|
12
|
+
try {
|
|
13
|
+
const url = new URL(custom.trim());
|
|
14
|
+
if (url.protocol === 'https:' && !url.username && !url.password)
|
|
15
|
+
return url.href;
|
|
16
|
+
}
|
|
17
|
+
catch { /* Fall back to a stable default. */ }
|
|
18
|
+
}
|
|
19
|
+
let hash = 2166136261;
|
|
20
|
+
for (let index = 0; index < id.length; index++) {
|
|
21
|
+
hash = Math.imul(hash ^ id.charCodeAt(index), 16777619);
|
|
22
|
+
}
|
|
23
|
+
return DEFAULT_AVATARS[(hash >>> 0) % DEFAULT_AVATARS.length];
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=avatar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"avatar.js","sourceRoot":"","sources":["../src/avatar.ts"],"names":[],"mappings":"AAAA,MAAM,eAAe,GAAG;IACtB,gGAAgG;IAChG,gGAAgG;IAChG,gGAAgG;IAChG,gGAAgG;IAChG,gGAAgG;IAChG,gGAAgG;IAChG,gGAAgG;CACxF,CAAC;AAEX,MAAM,UAAU,gBAAgB,CAAC,EAAU,EAAE,MAAgB;IAC3D,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QAChD,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YACnC,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ;gBAAE,OAAO,GAAG,CAAC,IAAI,CAAC;QACnF,CAAC;QAAC,MAAM,CAAC,CAAC,oCAAoC,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,IAAI,GAAG,UAAU,CAAC;IACtB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QAC/C,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,eAAe,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,GAAG,eAAe,CAAC,MAAM,CAAE,CAAC;AACjE,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { getQMuseClient, isQMuseClientInitialized, } from './singleton.js';
|
|
2
2
|
export { QmuseCloudError, QmuseCloudHttpError } from './errors.js';
|
|
3
|
-
export type { CloudExecution, CloudExecutionInput, CloudMethod, CloudQueryValue, CloudRequest, CloudRequestFailure, CloudResponse, ExecutionHeader, QmuseCloudClient, QmuseCloudClientOptions, CloudAccountCapability, CloudAuthOptions, CloudLoginResult, CloudAuthUser, CloudAuthProvider, CloudProviderLoginInput, CloudLoginInput, CloudRegisterInput, CloudSessionToken, QmuseCloudAuth, CloudDisposableUrl, CloudFileAccessInput, CloudFileDescriptor, CloudFilePreviewInput, CloudFileRecord, CloudFileTransport, CloudFileUploadInput, CloudReadableUrlInput, CloudUploadProgress, CloudUploadReceipt, CloudUploadTarget, QmuseCloudFiles, } from './types.js';
|
|
3
|
+
export type { CloudExecution, CloudExecutionInput, CloudMethod, CloudQueryValue, CloudRequest, CloudRequestFailure, CloudResponse, ExecutionHeader, QmuseCloudClient, QmuseCloudClientOptions, CloudAccountCapability, CloudAuthOptions, CloudLoginResult, CloudAuthUser, CloudSetAvatarInput, CloudAuthProvider, CloudProviderLoginInput, CloudLoginInput, CloudRegisterInput, CloudSessionToken, QmuseCloudAuth, CloudDisposableUrl, CloudFileAccessInput, CloudFileDescriptor, CloudFilePreviewInput, CloudFileRecord, CloudFileTransport, CloudFileUploadInput, CloudReadableUrlInput, CloudUploadProgress, CloudUploadReceipt, CloudUploadTarget, QmuseCloudFiles, } from './types.js';
|
|
4
4
|
export type { QMuseClientConfig, QMuseClientConfigSource, } from './singleton.js';
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACnE,YAAY,EACV,cAAc,EACd,mBAAmB,EACnB,WAAW,EACX,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,uBAAuB,EACvB,sBAAsB,EACtB,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,uBAAuB,EACvB,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,qBAAqB,EACrB,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,GAChB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACnE,YAAY,EACV,cAAc,EACd,mBAAmB,EACnB,WAAW,EACX,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,uBAAuB,EACvB,sBAAsB,EACtB,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,uBAAuB,EACvB,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,qBAAqB,EACrB,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,GAChB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,gBAAgB,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -56,6 +56,7 @@ export interface QmuseCloudClient<FileSource = never> {
|
|
|
56
56
|
files: QmuseCloudFiles<FileSource>;
|
|
57
57
|
}
|
|
58
58
|
export interface CloudAuthUser {
|
|
59
|
+
avatarUrl: string;
|
|
59
60
|
id: string;
|
|
60
61
|
username: string;
|
|
61
62
|
role: 'user' | 'admin';
|
|
@@ -81,7 +82,9 @@ export interface CloudAccountCapability {
|
|
|
81
82
|
}): Promise<{
|
|
82
83
|
expire: string;
|
|
83
84
|
}>;
|
|
84
|
-
getCurrentUser(): Promise<CloudAuthUser
|
|
85
|
+
getCurrentUser(): Promise<Omit<CloudAuthUser, 'avatarUrl'> & {
|
|
86
|
+
avatarUrl?: string;
|
|
87
|
+
}>;
|
|
85
88
|
getCurrentSession(): Promise<{
|
|
86
89
|
expire: string;
|
|
87
90
|
}>;
|
|
@@ -102,7 +105,11 @@ export interface CloudLoginInput {
|
|
|
102
105
|
password: string;
|
|
103
106
|
}
|
|
104
107
|
export type CloudRegisterInput = CloudLoginInput;
|
|
108
|
+
export interface CloudSetAvatarInput {
|
|
109
|
+
fileId: string;
|
|
110
|
+
}
|
|
105
111
|
export interface QmuseCloudAuth {
|
|
112
|
+
setAvatar(input: CloudSetAvatarInput): Promise<CloudAuthUser>;
|
|
106
113
|
register(input: CloudRegisterInput): Promise<CloudAuthUser>;
|
|
107
114
|
login(input: CloudLoginInput): Promise<CloudAuthUser>;
|
|
108
115
|
loginWithProvider(input: CloudProviderLoginInput): Promise<CloudAuthUser>;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/docs/auth.md
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
## 用户名密码认证
|
|
2
|
+
|
|
3
|
+
`register` / `login` 接收 `{ username: string, password: string }`,输入类型为 `CloudRegisterInput` / `CloudLoginInput`。表单、Hook 和调用对象统一使用 `username`,不是 `email`。
|
|
4
|
+
|
|
5
|
+
成功返回的 `CloudAuthUser` 是用户对象本身,不需要再取 `.data` 或 `.user`:
|
|
6
|
+
|
|
7
|
+
| 字段 | 类型 | 用途 |
|
|
8
|
+
| --- | --- | --- |
|
|
9
|
+
| `id` | `string` | 应用用户 ID,不是数据库行的 `$id` |
|
|
10
|
+
| `username` | `string` | 用户名;显示名称使用此字段,不假设存在 `name` 或 `email` |
|
|
11
|
+
| `avatarUrl` | `string` | 可直接用于图片的头像 URL |
|
|
12
|
+
| `role` | `'user' \| 'admin'` | 应用角色;业务权限仍由服务端校验 |
|
|
13
|
+
|
|
14
|
+
```ts
|
|
15
|
+
import { getQMuseClient, type CloudAuthUser, type CloudLoginInput } from '@qmuse/cloud-client';
|
|
16
|
+
|
|
17
|
+
const authService = getQMuseClient().auth;
|
|
18
|
+
|
|
19
|
+
export const restoreUser = (): Promise<CloudAuthUser | null> => authService.restoreSession();
|
|
20
|
+
export const signOut = (): Promise<void> => authService.logout();
|
|
21
|
+
export async function submitAuth(mode: 'login' | 'register', username: string, password: string): Promise<CloudAuthUser> {
|
|
22
|
+
const input: CloudLoginInput = { username, password };
|
|
23
|
+
if (mode === 'register') await authService.register(input);
|
|
24
|
+
return authService.login(input);
|
|
25
|
+
}
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
- 页面启动先等待 `restoreUser()`;返回用户后才加载私有数据,返回 `null` 时展示登录表单。异常应展示服务错误,不等同于未登录。
|
|
29
|
+
- `register()` 只创建账号,不建立或替换 Session。只有 `submitAuth()` 登录成功后才更新已登录状态、加载私有数据;注册成功而登录失败时,提示账号已创建并引导登录,不自动重新注册。
|
|
30
|
+
- 退出成功后清空页面用户和私有数据缓存;恢复会话为空时同样清空旧状态。
|
|
31
|
+
- 请求失败通过异常返回,私有 API 的 401 按未登录处理;网络错误和 5xx 保留服务异常语义。不记录密码或 Session,不从页面传入角色或用户 ID 代替服务端鉴权。
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@qmuse/cloud-client",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.3-dev.0",
|
|
4
4
|
"description": "Narrow HTTP-style client for the single QMuse Cloud API Function",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -23,6 +23,7 @@
|
|
|
23
23
|
},
|
|
24
24
|
"files": [
|
|
25
25
|
"dist",
|
|
26
|
+
"docs",
|
|
26
27
|
"README.md",
|
|
27
28
|
"LEGAL.md"
|
|
28
29
|
],
|