Add docs
This commit is contained in:
33
docs/providers/snackbar.md
Normal file
33
docs/providers/snackbar.md
Normal file
@@ -0,0 +1,33 @@
|
||||
# Snackbar Provider
|
||||
|
||||
Tria UI поддерживает Snackbar как компонент и (опционально) как глобальный провайдер/хук.
|
||||
|
||||
## Component usage
|
||||
|
||||
```tsx
|
||||
import { Snackbar } from "@tria/ui";
|
||||
|
||||
const [open, setOpen] = useState(false);
|
||||
|
||||
<Snackbar
|
||||
open={open}
|
||||
onOpenChange={setOpen}
|
||||
text="Saved"
|
||||
action={{ label: "Undo", onClick: () => {} }}
|
||||
/>
|
||||
```
|
||||
|
||||
## Provider usage (optional)
|
||||
|
||||
Если у вас есть `SnackbarProvider` и `useSnackbar()`:
|
||||
|
||||
```tsx
|
||||
<SnackbarProvider>
|
||||
<App/>
|
||||
</SnackbarProvider>
|
||||
```
|
||||
|
||||
```ts
|
||||
const { push } = useSnackbar();
|
||||
push({ text: "Saved", action: { label: "OK", onClick: ... }});
|
||||
```
|
||||
34
docs/providers/uiprovider.md
Normal file
34
docs/providers/uiprovider.md
Normal file
@@ -0,0 +1,34 @@
|
||||
# UIProvider
|
||||
|
||||
`UIProvider` — точка управления темой/платформой/скином и CSS overrides.
|
||||
|
||||
## Import
|
||||
|
||||
```ts
|
||||
import { UIProvider } from "@tria/ui";
|
||||
```
|
||||
|
||||
## Config
|
||||
|
||||
```ts
|
||||
type UIConfig = Partial<{
|
||||
theme: "light" | "dark";
|
||||
platform: "web" | "vk" | "tg";
|
||||
skin: "web" | "ios" | "android";
|
||||
root: HTMLElement;
|
||||
vars: Record<`--${string}`, string>;
|
||||
}>;
|
||||
```
|
||||
|
||||
## Example
|
||||
|
||||
```tsx
|
||||
<UIProvider config={{ theme: "light", platform: "vk", skin: "ios" }}>
|
||||
...
|
||||
</UIProvider>
|
||||
```
|
||||
|
||||
## Notes
|
||||
|
||||
- избегайте deep-import UIProvider из внутренних путей — импортируйте из `@tria/ui`
|
||||
- для `vars` используйте `useMemo`, чтобы не создавать новый объект на каждый рендер
|
||||
Reference in New Issue
Block a user