docs: improve doucmentation
improve doucmentation and fix small store changes
This commit is contained in:
66
docs-site/docs/plugin-development/api/profile.md
Normal file
66
docs-site/docs/plugin-development/api/profile.md
Normal file
@@ -0,0 +1,66 @@
|
||||
---
|
||||
sidebar_position: 2
|
||||
---
|
||||
|
||||
# Profile API
|
||||
|
||||
The profile API reads and updates the current user's local profile details.
|
||||
|
||||
## Required Capabilities
|
||||
|
||||
| Method | Capability |
|
||||
| --- | --- |
|
||||
| `profile.getCurrent()` | `profile.read` |
|
||||
| `profile.update(profile)` | `profile.write` |
|
||||
| `profile.updateAvatar(avatar)` | `profile.write` |
|
||||
|
||||
## Read Current Profile
|
||||
|
||||
```js
|
||||
export function activate(context) {
|
||||
const user = context.api.profile.getCurrent();
|
||||
|
||||
context.api.logger.info('Current profile', {
|
||||
id: user?.id,
|
||||
displayName: user?.displayName,
|
||||
username: user?.username
|
||||
});
|
||||
}
|
||||
```
|
||||
|
||||
Example result:
|
||||
|
||||
```json
|
||||
{
|
||||
"id": "user-alice-01",
|
||||
"username": "alice",
|
||||
"displayName": "Alice",
|
||||
"description": "Raids on Fridays",
|
||||
"avatarUrl": "/avatars/alice.webp"
|
||||
}
|
||||
```
|
||||
|
||||
## Update Display Profile
|
||||
|
||||
```js
|
||||
export function activate(context) {
|
||||
context.api.profile.update({
|
||||
displayName: 'Alice - Support Lead',
|
||||
description: 'Available for onboarding and support questions.'
|
||||
});
|
||||
}
|
||||
```
|
||||
|
||||
## Update Avatar
|
||||
|
||||
```js
|
||||
export function activate(context) {
|
||||
context.api.profile.updateAvatar({
|
||||
avatarUrl: 'https://cdn.example.com/metoyou/avatars/alice-support.png',
|
||||
avatarMime: 'image/png',
|
||||
avatarHash: 'sha256:9df5d5e4b0d8f41f3a3cf5d1f5a2c1f4'
|
||||
});
|
||||
}
|
||||
```
|
||||
|
||||
Use `profile.write` carefully. A plugin that changes a user's identity should explain why in its readme and UI.
|
||||
Reference in New Issue
Block a user