mirror of
https://github.com/stack-auth/stack.git
synced 2026-06-04 21:04:37 +08:00
Some checks failed
all-good: Did all the other checks pass? / all-good (push) Has been cancelled
Ensure Prisma migrations are in sync with the schema / check_prisma_migrations (22.x) (push) Has been cancelled
DB migration compat / Check if migrations changed (push) Has been cancelled
Docker Server Build and Push / Docker Build and Push Server (push) Has been cancelled
Docker Server Build and Run / docker (push) Has been cancelled
Runs E2E API Tests (Local Emulator) / E2E Tests (Local Emulator, Node ${{ matrix.node-version }}) (22.x) (push) Has been cancelled
Runs E2E API Tests / E2E Tests (Node ${{ matrix.node-version }}, Freestyle ${{ matrix.freestyle-mode }}) (mock, 22.x) (push) Has been cancelled
Runs E2E API Tests / E2E Tests (Node ${{ matrix.node-version }}, Freestyle ${{ matrix.freestyle-mode }}) (prod, 22.x) (push) Has been cancelled
Runs E2E API Tests with custom port prefix / build (22.x) (push) Has been cancelled
Lint & build / lint_and_build (latest) (push) Has been cancelled
Dev Environment Test With Custom Base Port / restart-dev-and-test-with-custom-base-port (push) Has been cancelled
Dev Environment Test / restart-dev-and-test (push) Has been cancelled
Run setup tests with custom base port / setup-tests-with-custom-base-port (push) Has been cancelled
Run setup tests / setup-tests (push) Has been cancelled
TOC Generator / TOC Generator (push) Has been cancelled
DB migration compat / Back-compat — Current branch migrations with ${{ needs.check-migrations-changed.outputs.base_branch }} branch code (push) Has been cancelled
DB migration compat / Forward-compat — Current branch code with ${{ needs.check-migrations-changed.outputs.base_branch }} branch migrations (push) Has been cancelled
DB migration compat / No migration changes (skipped) (push) Has been cancelled
47 lines
1.5 KiB
Plaintext
47 lines
1.5 KiB
Plaintext
---
|
|
title: "<UserButton />"
|
|
description: Renders a user button component with optional user information, color mode toggle, and extra menu items.
|
|
---
|
|
|
|
The `<UserButton>` renders a user button component with optional user information, color mode toggle, and extra menu items.
|
|
|
|
## Props
|
|
|
|
| Property | Type | Default | Description |
|
|
|----------|------|---------|-------------|
|
|
| `showUserInfo` | `boolean` | `false` | If true, displays user information (display name and email) in the button. |
|
|
| `colorModeToggle` | `() => void \| Promise<void>` | `undefined` | Function to be called when the color mode toggle button is clicked. If specified, a color mode toggle button will be shown. |
|
|
| `extraItems` | `Array` | - | Additional menu items to display. See below for item properties. |
|
|
|
|
### extraItems Properties
|
|
|
|
| Property | Type | Description |
|
|
|----------|------|-------------|
|
|
| `text` | `string` | The text to display for the item. |
|
|
| `icon` | `React.ReactNode` | The icon to display for the item. |
|
|
| `onClick` | `() => void \| Promise<void>` | Function to be called when the item is clicked. |
|
|
|
|
## Example
|
|
|
|
```tsx
|
|
'use client';
|
|
import { UserButton } from '@stackframe/stack';
|
|
|
|
export default function Page() {
|
|
return (
|
|
<div>
|
|
<h1>User Button</h1>
|
|
<UserButton
|
|
showUserInfo={true}
|
|
colorModeToggle={() => { console.log("color mode toggle clicked") }}
|
|
extraItems={[{
|
|
text: 'Custom Action',
|
|
icon: <CustomIcon />,
|
|
onClick: () => console.log('Custom action clicked')
|
|
}]}
|
|
/>
|
|
</div>
|
|
);
|
|
}
|
|
```
|