prime-ui-kit 0.2.5 → 0.3.1
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 +161 -35
- package/dist/components/accordion/Accordion.d.ts +70 -0
- package/dist/components/accordion/Accordion.d.ts.map +1 -0
- package/dist/components/avatar/Avatar.d.ts +58 -0
- package/dist/components/avatar/Avatar.d.ts.map +1 -0
- package/dist/components/badge/Badge.d.ts +51 -0
- package/dist/components/badge/Badge.d.ts.map +1 -0
- package/dist/components/banner/Banner.d.ts +78 -0
- package/dist/components/banner/Banner.d.ts.map +1 -0
- package/dist/components/breadcrumb/Breadcrumb.d.ts +47 -0
- package/dist/components/breadcrumb/Breadcrumb.d.ts.map +1 -0
- package/dist/components/button/Button.d.ts +57 -0
- package/dist/components/button/Button.d.ts.map +1 -0
- package/dist/components/button-group/ButtonGroup.d.ts +34 -0
- package/dist/components/button-group/ButtonGroup.d.ts.map +1 -0
- package/dist/components/card/Card.d.ts +234 -0
- package/dist/components/card/Card.d.ts.map +1 -0
- package/dist/components/checkbox/Checkbox.d.ts +42 -0
- package/dist/components/checkbox/Checkbox.d.ts.map +1 -0
- package/dist/components/code-block/CodeBlock.d.ts +17 -0
- package/dist/components/code-block/CodeBlock.d.ts.map +1 -0
- package/dist/components/color-picker/ColorPicker.d.ts +76 -0
- package/dist/components/color-picker/ColorPicker.d.ts.map +1 -0
- package/dist/components/color-picker/ColorPickerRac.d.ts +76 -0
- package/dist/components/color-picker/ColorPickerRac.d.ts.map +1 -0
- package/dist/components/command-menu/CommandMenu.d.ts +74 -0
- package/dist/components/command-menu/CommandMenu.d.ts.map +1 -0
- package/dist/components/data-table/DataTable.d.ts +78 -0
- package/dist/components/data-table/DataTable.d.ts.map +1 -0
- package/dist/components/datepicker/Datepicker.d.ts +104 -0
- package/dist/components/datepicker/Datepicker.d.ts.map +1 -0
- package/dist/components/digit-input/DigitInput.d.ts +21 -0
- package/dist/components/digit-input/DigitInput.d.ts.map +1 -0
- package/dist/components/divider/Divider.d.ts +26 -0
- package/dist/components/divider/Divider.d.ts.map +1 -0
- package/dist/components/drawer/Drawer.d.ts +71 -0
- package/dist/components/drawer/Drawer.d.ts.map +1 -0
- package/dist/components/dropdown/Dropdown.d.ts +147 -0
- package/dist/components/dropdown/Dropdown.d.ts.map +1 -0
- package/dist/components/dropdown/dropdownGeometry.d.ts +10 -0
- package/dist/components/dropdown/dropdownGeometry.d.ts.map +1 -0
- package/dist/components/dropdown/menuKeyboard.d.ts +4 -0
- package/dist/components/dropdown/menuKeyboard.d.ts.map +1 -0
- package/dist/components/dropdown/useDropdownPosition.d.ts +18 -0
- package/dist/components/dropdown/useDropdownPosition.d.ts.map +1 -0
- package/dist/components/example-frame/ExampleFrame.d.ts +53 -0
- package/dist/components/example-frame/ExampleFrame.d.ts.map +1 -0
- package/dist/components/file-upload/FileUpload.d.ts +176 -0
- package/dist/components/file-upload/FileUpload.d.ts.map +1 -0
- package/dist/components/hint/Hint.d.ts +27 -0
- package/dist/components/hint/Hint.d.ts.map +1 -0
- package/dist/components/index.css +6101 -5759
- package/dist/components/index.css.map +4 -4
- package/dist/components/index.d.ts +95 -2679
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +8510 -7659
- package/dist/components/index.js.map +4 -4
- package/dist/components/input/Input.d.ts +73 -0
- package/dist/components/input/Input.d.ts.map +1 -0
- package/dist/components/kbd/Kbd.d.ts +15 -0
- package/dist/components/kbd/Kbd.d.ts.map +1 -0
- package/dist/components/label/Label.d.ts +29 -0
- package/dist/components/label/Label.d.ts.map +1 -0
- package/dist/components/link-button/LinkButton.d.ts +18 -0
- package/dist/components/link-button/LinkButton.d.ts.map +1 -0
- package/dist/components/modal/Modal.d.ts +58 -0
- package/dist/components/modal/Modal.d.ts.map +1 -0
- package/dist/components/notification/Notification.d.ts +42 -0
- package/dist/components/notification/Notification.d.ts.map +1 -0
- package/dist/components/notification/NotificationStore.d.ts +18 -0
- package/dist/components/notification/NotificationStore.d.ts.map +1 -0
- package/dist/components/page-content/PageContent.d.ts +51 -0
- package/dist/components/page-content/PageContent.d.ts.map +1 -0
- package/dist/components/pagination/Pagination.d.ts +19 -0
- package/dist/components/pagination/Pagination.d.ts.map +1 -0
- package/dist/components/popover/Popover.d.ts +48 -0
- package/dist/components/popover/Popover.d.ts.map +1 -0
- package/dist/components/popover/popoverGeometry.d.ts +6 -0
- package/dist/components/popover/popoverGeometry.d.ts.map +1 -0
- package/dist/components/popover/usePopoverPosition.d.ts +18 -0
- package/dist/components/popover/usePopoverPosition.d.ts.map +1 -0
- package/dist/components/progress-bar/ProgressBar.d.ts +14 -0
- package/dist/components/progress-bar/ProgressBar.d.ts.map +1 -0
- package/dist/components/progress-circle/ProgressCircle.d.ts +33 -0
- package/dist/components/progress-circle/ProgressCircle.d.ts.map +1 -0
- package/dist/components/radio/Radio.d.ts +40 -0
- package/dist/components/radio/Radio.d.ts.map +1 -0
- package/dist/components/scroll-container/ScrollContainer.d.ts +42 -0
- package/dist/components/scroll-container/ScrollContainer.d.ts.map +1 -0
- package/dist/components/segmented-control/SegmentedControl.d.ts +40 -0
- package/dist/components/segmented-control/SegmentedControl.d.ts.map +1 -0
- package/dist/components/segmented-progress-bar/SegmentedProgressBar.d.ts +22 -0
- package/dist/components/segmented-progress-bar/SegmentedProgressBar.d.ts.map +1 -0
- package/dist/components/select/Select.d.ts +84 -0
- package/dist/components/select/Select.d.ts.map +1 -0
- package/dist/components/select/selectListbox.d.ts +13 -0
- package/dist/components/select/selectListbox.d.ts.map +1 -0
- package/dist/components/slider/Slider.d.ts +23 -0
- package/dist/components/slider/Slider.d.ts.map +1 -0
- package/dist/components/stepper/HorizontalStepper.d.ts +41 -0
- package/dist/components/stepper/HorizontalStepper.d.ts.map +1 -0
- package/dist/components/stepper/Stepper.d.ts +77 -0
- package/dist/components/stepper/Stepper.d.ts.map +1 -0
- package/dist/components/stepper/VerticalStepper.d.ts +41 -0
- package/dist/components/stepper/VerticalStepper.d.ts.map +1 -0
- package/dist/components/stepper/stepperAlignContext.d.ts +11 -0
- package/dist/components/stepper/stepperAlignContext.d.ts.map +1 -0
- package/dist/components/switch/Switch.d.ts +48 -0
- package/dist/components/switch/Switch.d.ts.map +1 -0
- package/dist/components/tabs/Tabs.d.ts +69 -0
- package/dist/components/tabs/Tabs.d.ts.map +1 -0
- package/dist/components/tag/Tag.d.ts +29 -0
- package/dist/components/tag/Tag.d.ts.map +1 -0
- package/dist/components/textarea/Textarea.d.ts +43 -0
- package/dist/components/textarea/Textarea.d.ts.map +1 -0
- package/dist/components/tooltip/Tooltip.d.ts +47 -0
- package/dist/components/tooltip/Tooltip.d.ts.map +1 -0
- package/dist/components/typography/Typography.d.ts +30 -0
- package/dist/components/typography/Typography.d.ts.map +1 -0
- package/dist/hooks/useControllableState.d.ts +8 -0
- package/dist/hooks/useControllableState.d.ts.map +1 -0
- package/dist/hooks/useEscapeKey.d.ts +7 -0
- package/dist/hooks/useEscapeKey.d.ts.map +1 -0
- package/dist/hooks/useFieldIds.d.ts +17 -0
- package/dist/hooks/useFieldIds.d.ts.map +1 -0
- package/dist/hooks/useFocusTrap.d.ts +16 -0
- package/dist/hooks/useFocusTrap.d.ts.map +1 -0
- package/dist/hooks/useMergedRefs.d.ts +3 -0
- package/dist/hooks/useMergedRefs.d.ts.map +1 -0
- package/dist/hooks/useOutsideClick.d.ts +16 -0
- package/dist/hooks/useOutsideClick.d.ts.map +1 -0
- package/dist/hooks/useOverlayModal.d.ts +7 -0
- package/dist/hooks/useOverlayModal.d.ts.map +1 -0
- package/dist/hooks/usePosition.d.ts +41 -0
- package/dist/hooks/usePosition.d.ts.map +1 -0
- package/dist/hooks/useResponsiveMonths.d.ts +18 -0
- package/dist/hooks/useResponsiveMonths.d.ts.map +1 -0
- package/dist/hooks/useScrollLock.d.ts +8 -0
- package/dist/hooks/useScrollLock.d.ts.map +1 -0
- package/dist/icons/Icon.d.ts +13 -0
- package/dist/icons/Icon.d.ts.map +1 -0
- package/dist/icons/index.d.ts +40 -0
- package/dist/icons/index.d.ts.map +1 -0
- package/dist/index.css +6101 -5759
- package/dist/index.css.map +4 -4
- package/dist/index.d.ts +4 -8
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +8509 -7660
- package/dist/index.js.map +4 -4
- package/dist/internal/ControlSizeContext.d.ts +17 -0
- package/dist/internal/ControlSizeContext.d.ts.map +1 -0
- package/dist/internal/DividerContentContext.d.ts +4 -0
- package/dist/internal/DividerContentContext.d.ts.map +1 -0
- package/dist/internal/OverlayPortalLayerContext.d.ts +13 -0
- package/dist/internal/OverlayPortalLayerContext.d.ts.map +1 -0
- package/dist/internal/Portal.d.ts +8 -0
- package/dist/internal/Portal.d.ts.map +1 -0
- package/dist/internal/context.d.ts +11 -0
- package/dist/internal/context.d.ts.map +1 -0
- package/dist/internal/cx.d.ts +2 -0
- package/dist/internal/cx.d.ts.map +1 -0
- package/dist/internal/data-attributes.d.ts +6 -0
- package/dist/internal/data-attributes.d.ts.map +1 -0
- package/dist/internal/highlightTsxHtml.d.ts +3 -0
- package/dist/internal/highlightTsxHtml.d.ts.map +1 -0
- package/dist/internal/layoutPxFromPrimitives.d.ts +13 -0
- package/dist/internal/layoutPxFromPrimitives.d.ts.map +1 -0
- package/dist/internal/mergeRefs.d.ts +4 -0
- package/dist/internal/mergeRefs.d.ts.map +1 -0
- package/dist/internal/runtimeUnits.d.ts +3 -0
- package/dist/internal/runtimeUnits.d.ts.map +1 -0
- package/dist/internal/scrollAncestors.d.ts +3 -0
- package/dist/internal/scrollAncestors.d.ts.map +1 -0
- package/dist/internal/slot.d.ts +19 -0
- package/dist/internal/slot.d.ts.map +1 -0
- package/dist/internal/states.d.ts +87 -0
- package/dist/internal/states.d.ts.map +1 -0
- package/dist/layout/app-shell/AppShell.d.ts +54 -0
- package/dist/layout/app-shell/AppShell.d.ts.map +1 -0
- package/dist/layout/index.d.ts +7 -0
- package/dist/layout/index.d.ts.map +1 -0
- package/dist/layout/sidebar/Sidebar.d.ts +241 -0
- package/dist/layout/sidebar/Sidebar.d.ts.map +1 -0
- package/dist/layout/sidebar/SidebarRoot.d.ts +51 -0
- package/dist/layout/sidebar/SidebarRoot.d.ts.map +1 -0
- package/dist/layout/sidebar/sidebar-context.d.ts +19 -0
- package/dist/layout/sidebar/sidebar-context.d.ts.map +1 -0
- package/dist/layout/sidebar/sidebarLayout.d.ts +12 -0
- package/dist/layout/sidebar/sidebarLayout.d.ts.map +1 -0
- package/dist/tokens/primitives.d.ts +390 -0
- package/dist/tokens/primitives.d.ts.map +1 -0
- package/dist/tokens/semantic.d.ts +732 -0
- package/dist/tokens/semantic.d.ts.map +1 -0
- package/dist/tokens/themes/dark.d.ts +143 -0
- package/dist/tokens/themes/dark.d.ts.map +1 -0
- package/dist/tokens/themes/light.d.ts +16 -0
- package/dist/tokens/themes/light.d.ts.map +1 -0
- package/package.json +9 -4
- package/src/components/accordion/COMPONENT.md +137 -0
- package/src/components/avatar/COMPONENT.md +100 -0
- package/src/components/badge/COMPONENT.md +78 -0
- package/src/components/banner/COMPONENT.md +118 -0
- package/src/components/breadcrumb/COMPONENT.md +94 -0
- package/src/components/button/COMPONENT.md +80 -0
- package/src/components/button-group/COMPONENT.md +83 -0
- package/src/components/card/COMPONENT.md +489 -0
- package/src/components/checkbox/COMPONENT.md +98 -0
- package/src/components/code-block/COMPONENT.md +58 -0
- package/src/components/color-picker/COMPONENT.md +149 -0
- package/src/components/command-menu/COMPONENT.md +167 -0
- package/src/components/data-table/COMPONENT.md +113 -0
- package/src/components/datepicker/COMPONENT.md +137 -0
- package/src/components/digit-input/COMPONENT.md +68 -0
- package/src/components/divider/COMPONENT.md +70 -0
- package/src/components/drawer/COMPONENT.md +149 -0
- package/src/components/dropdown/COMPONENT.md +192 -0
- package/src/components/file-upload/COMPONENT.md +200 -0
- package/src/components/hint/COMPONENT.md +67 -0
- package/src/components/input/COMPONENT.md +119 -0
- package/src/components/kbd/COMPONENT.md +59 -0
- package/src/components/label/COMPONENT.md +94 -0
- package/src/components/link-button/COMPONENT.md +60 -0
- package/src/components/modal/COMPONENT.md +105 -0
- package/src/components/notification/COMPONENT.md +120 -0
- package/src/components/pagination/COMPONENT.md +61 -0
- package/src/components/popover/COMPONENT.md +93 -0
- package/src/components/progress-bar/COMPONENT.md +59 -0
- package/src/components/progress-circle/COMPONENT.md +63 -0
- package/src/components/radio/COMPONENT.md +95 -0
- package/src/components/segmented-control/COMPONENT.md +86 -0
- package/src/components/segmented-progress-bar/COMPONENT.md +75 -0
- package/src/components/select/COMPONENT.md +175 -0
- package/src/components/slider/COMPONENT.md +62 -0
- package/src/components/stepper/COMPONENT.md +186 -0
- package/src/components/switch/COMPONENT.md +98 -0
- package/src/components/tabs/COMPONENT.md +114 -0
- package/src/components/tag/COMPONENT.md +67 -0
- package/src/components/textarea/COMPONENT.md +98 -0
- package/src/components/tooltip/COMPONENT.md +87 -0
- package/src/components/typography/COMPONENT.md +89 -0
- package/src/styles/theme-dark.css +43 -0
- package/src/styles/theme-light.css +43 -0
- package/src/styles/tokens.css +23 -4
- package/src/styles/tokens.test.ts +0 -27
package/README.md
CHANGED
|
@@ -1,25 +1,78 @@
|
|
|
1
1
|
# prime-ui-kit
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
[](https://www.npmjs.com/package/prime-ui-kit)
|
|
4
|
+
[](https://github.com/esurkov1/prime-ui/blob/main/LICENSE)
|
|
5
|
+
[](https://react.dev/)
|
|
6
|
+
[](https://www.typescriptlang.org/)
|
|
4
7
|
|
|
5
|
-
**
|
|
8
|
+
A **React 19** component library built with **CSS Modules**, **design tokens** as CSS variables (`--prime-sys-*`), and a **composable API** (`Modal.Root`, `Input.Field`, `Select.Trigger`, …). Works with **Vite**, **Next.js**, **Remix**, or any bundler that supports CSS Modules. Accessibility follows **react-aria-components** where it fits.
|
|
9
|
+
|
|
10
|
+
**Links:** [npm](https://www.npmjs.com/package/prime-ui-kit) · [Repository & issues](https://github.com/esurkov1/prime-ui/issues)
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## Table of contents
|
|
15
|
+
|
|
16
|
+
- [Metadata (for tooling and LLMs)](#metadata-for-tooling-and-llms)
|
|
17
|
+
- [Key features](#key-features)
|
|
18
|
+
- [Requirements](#requirements)
|
|
19
|
+
- [Installation](#installation)
|
|
20
|
+
- [Styles and theming](#styles-and-theming)
|
|
21
|
+
- [Quick start](#quick-start)
|
|
22
|
+
- [Typography](#typography)
|
|
23
|
+
- [Imports: main entry and heavy modules](#imports-main-entry-and-heavy-modules)
|
|
24
|
+
- [Providers and context](#providers-and-context)
|
|
25
|
+
- [Component catalog](#component-catalog)
|
|
26
|
+
- [Package exports (`package.json` / `exports`)](#package-exports-packagejson--exports)
|
|
27
|
+
- [TypeScript](#typescript)
|
|
28
|
+
- [Where component docs live](#where-component-docs-live)
|
|
29
|
+
- [License](#license)
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Metadata (for tooling and LLMs)
|
|
34
|
+
|
|
35
|
+
```yaml
|
|
36
|
+
name: prime-ui-kit
|
|
37
|
+
ecosystem: react
|
|
38
|
+
react_version: "^19.0.0"
|
|
39
|
+
module_system: ESM
|
|
40
|
+
styling: CSS Modules + CSS variables (--prime-sys-*)
|
|
41
|
+
a11y_stack: react-aria-components (peer)
|
|
42
|
+
documentation_per_component: src/components/<name>/COMPONENT.md
|
|
43
|
+
repository: https://github.com/esurkov1/prime-ui
|
|
44
|
+
typography: variant_roles # see src/components/typography/COMPONENT.md
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
## Key features
|
|
50
|
+
|
|
51
|
+
- **Tokens & themes** — semantic variables, light and dark themes via `data-theme`.
|
|
52
|
+
- **Composition** — subcomponent pattern (`Root`, `Field`, `Trigger`, …) instead of monolithic prop blobs.
|
|
53
|
+
- **Forms** — inputs, selects, toggles, file upload, color, OTP-style fields, sliders.
|
|
54
|
+
- **Overlays** — modals, drawers, popovers, menus, tooltips, command palette.
|
|
55
|
+
- **Navigation & layout** — sidebar, breadcrumbs, tabs, accordion, stepper, pagination, page shell.
|
|
56
|
+
- **Data** — table with sorting, pagination, or infinite scroll.
|
|
57
|
+
- **Types** — published `.d.ts` alongside the package.
|
|
58
|
+
- **Notifications** — toast queue via `NotificationProvider` and `useNotifications()`.
|
|
6
59
|
|
|
7
60
|
---
|
|
8
61
|
|
|
9
62
|
## Requirements
|
|
10
63
|
|
|
11
|
-
| | Version |
|
|
12
|
-
|
|
13
|
-
|
|
|
14
|
-
| react-aria-components | ^1.16.0 |
|
|
15
|
-
| react-day-picker | ^9.14.0 |
|
|
16
|
-
| date-fns | ^4.0.0 |
|
|
64
|
+
| Dependency | Version |
|
|
65
|
+
|------------|---------|
|
|
66
|
+
| `react` / `react-dom` | ^19.0.0 |
|
|
67
|
+
| `react-aria-components` | ^1.16.0 |
|
|
68
|
+
| `react-day-picker` | ^9.14.0 |
|
|
69
|
+
| `date-fns` | ^4.0.0 |
|
|
17
70
|
|
|
18
|
-
The package
|
|
71
|
+
The package bundles **lucide-react**, **framer-motion**, and **react-router-dom** (icons, notification motion, and **Sidebar** routing). Use a router (e.g. `BrowserRouter`) if **Sidebar** renders navigation items.
|
|
19
72
|
|
|
20
73
|
---
|
|
21
74
|
|
|
22
|
-
##
|
|
75
|
+
## Installation
|
|
23
76
|
|
|
24
77
|
```bash
|
|
25
78
|
npm install prime-ui-kit react react-dom react-aria-components react-day-picker date-fns
|
|
@@ -35,20 +88,21 @@ bun add prime-ui-kit react react-dom react-aria-components react-day-picker date
|
|
|
35
88
|
|
|
36
89
|
---
|
|
37
90
|
|
|
38
|
-
## Styles
|
|
91
|
+
## Styles and theming
|
|
39
92
|
|
|
40
|
-
Import
|
|
93
|
+
Import **global styles** (fonts, reset, tokens, both themes) and the **bundled component CSS** (CSS Modules output from the published build):
|
|
41
94
|
|
|
42
95
|
```css
|
|
43
96
|
@import "prime-ui-kit/styles.css";
|
|
44
97
|
@import "prime-ui-kit/bundle.css";
|
|
45
98
|
```
|
|
46
99
|
|
|
47
|
-
|
|
100
|
+
- **`styles.css`** — Google Fonts, CSS reset, design tokens, light and dark themes.
|
|
101
|
+
- **`bundle.css`** — class rules that match the JS bundle (`Button`, `Input`, …).
|
|
48
102
|
|
|
49
103
|
**Light / dark:** set `data-theme="light"` or `data-theme="dark"` on `<html>`, a layout root, or any wrapper.
|
|
50
104
|
|
|
51
|
-
|
|
105
|
+
Fine-grained imports (custom reset, single theme):
|
|
52
106
|
|
|
53
107
|
```css
|
|
54
108
|
@import "prime-ui-kit/tokens.css";
|
|
@@ -57,13 +111,11 @@ If you want fine-grained control (e.g. supply your own reset or only one theme),
|
|
|
57
111
|
@import "prime-ui-kit/bundle.css";
|
|
58
112
|
```
|
|
59
113
|
|
|
60
|
-
If you only use
|
|
114
|
+
If you only use **`prime-ui-kit/components`**, swap `bundle.css` for **`prime-ui-kit/components.css`**.
|
|
61
115
|
|
|
62
116
|
---
|
|
63
117
|
|
|
64
|
-
##
|
|
65
|
-
|
|
66
|
-
Import **`styles.css`** and **`bundle.css`** as described above so components receive the correct layout and appearance.
|
|
118
|
+
## Quick start
|
|
67
119
|
|
|
68
120
|
```tsx
|
|
69
121
|
import { Button, Input, Modal } from "prime-ui-kit";
|
|
@@ -85,47 +137,121 @@ export function Example() {
|
|
|
85
137
|
}
|
|
86
138
|
```
|
|
87
139
|
|
|
88
|
-
|
|
140
|
+
---
|
|
89
141
|
|
|
90
|
-
|
|
91
|
-
import { DataTable } from "prime-ui-kit/components";
|
|
92
|
-
```
|
|
142
|
+
## Typography
|
|
93
143
|
|
|
144
|
+
Текст страницы оформляется компонентом **`Typography`** с ролями **`variant`**: каждая роль задаёт пару кегль/межстрочный интервал из темы (`typography.role` → `--prime-sys-typography-role-*`). Примитивы `font.size.*` согласованы со [шкалой MD3](https://m3.material.io/styles/typography/type-scale-tokens); роли выстроены по смыслу рядом с **MD3**, **Apple SF** и **Polaris** — таблица соответствий и примерных **rem/px** при корне 16px — в [Typography COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/typography/COMPONENT.md).
|
|
94
145
|
|
|
95
146
|
---
|
|
96
147
|
|
|
97
|
-
##
|
|
148
|
+
## Imports: main entry and heavy modules
|
|
149
|
+
|
|
150
|
+
- **`prime-ui-kit`** — main entry; use for most apps.
|
|
151
|
+
- **`prime-ui-kit/components`** — alternate entry for tree-shaking heavier modules (e.g. `DataTable`).
|
|
98
152
|
|
|
99
|
-
|
|
153
|
+
```tsx
|
|
154
|
+
import { DataTable } from "prime-ui-kit/components";
|
|
155
|
+
```
|
|
100
156
|
|
|
101
157
|
---
|
|
102
158
|
|
|
103
|
-
##
|
|
159
|
+
## Providers and context
|
|
104
160
|
|
|
105
|
-
|
|
161
|
+
| API | Purpose |
|
|
162
|
+
|-----|---------|
|
|
163
|
+
| **`NotificationProvider`** + **`useNotifications()`** | Toast queue: `notify`, `dismiss`, `dismissAll`. Wrap your app or a subtree. |
|
|
164
|
+
| **`ControlSizeProvider`** | Default **`s` \| `m` \| `l` \| `xl`** for controls inside the subtree. |
|
|
106
165
|
|
|
107
166
|
---
|
|
108
167
|
|
|
109
|
-
##
|
|
168
|
+
## Component catalog
|
|
169
|
+
|
|
170
|
+
Descriptions are short summaries from the **About** section in each `COMPONENT.md` (where it exists). Full API, parts, and examples are in the linked files. **AppShell**, **PageContent**, **ExampleFrame**, and **ScrollContainer** ship without a dedicated `COMPONENT.md` — use the linked source folders.
|
|
171
|
+
|
|
172
|
+
Documentation base URL in the repo: `https://github.com/esurkov1/prime-ui/blob/main/src/components/`
|
|
173
|
+
|
|
174
|
+
| Category | Component | Description | Docs |
|
|
175
|
+
|----------|-----------|-------------|------|
|
|
176
|
+
| Forms & input | **Checkbox** | Checkbox with chrome, label, hint, and error text. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/checkbox/COMPONENT.md) |
|
|
177
|
+
| Forms & input | **ColorPicker** | Color selection: 2D area, channel sliders, swatches, hex, eyedropper (react-aria). | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/color-picker/COMPONENT.md) |
|
|
178
|
+
| Forms & input | **DigitInput** | OTP-style one-character cells with paste and focus handoff. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/digit-input/COMPONENT.md) |
|
|
179
|
+
| Forms & input | **FileUpload** | File picking: hidden `input`, drag-and-drop, per-file rows with progress. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/file-upload/COMPONENT.md) |
|
|
180
|
+
| Forms & input | **Hint** | Helper or status line under a field, optional leading icon. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/hint/COMPONENT.md) |
|
|
181
|
+
| Forms & input | **Input** | Single-line field with wrapper, affixes, and hint/error lines. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/input/COMPONENT.md) |
|
|
182
|
+
| Forms & input | **Kbd** | Keyboard shortcuts styled as UI chrome (`kbd`). | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/kbd/COMPONENT.md) |
|
|
183
|
+
| Forms & input | **Label** | Field caption: icon, required asterisk, secondary text. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/label/COMPONENT.md) |
|
|
184
|
+
| Forms & input | **Radio** | Radio group with label, hint, and error wiring. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/radio/COMPONENT.md) |
|
|
185
|
+
| Forms & input | **SegmentedControl** | Horizontal `radiogroup` with segments and a sliding indicator. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/segmented-control/COMPONENT.md) |
|
|
186
|
+
| Forms & input | **Select** | Single-select combobox with a portaled listbox. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/select/COMPONENT.md) |
|
|
187
|
+
| Forms & input | **Slider** | Horizontal `input type="range"` with kit sizing. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/slider/COMPONENT.md) |
|
|
188
|
+
| Forms & input | **Switch** | On/off control with label and metadata slots. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/switch/COMPONENT.md) |
|
|
189
|
+
| Forms & input | **Textarea** | Multiline field, character counter, hints and errors. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/textarea/COMPONENT.md) |
|
|
190
|
+
| Date & time | **Datepicker** | Calendar, ranges, presets, optional time (react-day-picker + date-fns). | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/datepicker/COMPONENT.md) |
|
|
191
|
+
| Overlays | **CommandMenu** | Modal command palette: search and pick from the list with the keyboard. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/command-menu/COMPONENT.md) |
|
|
192
|
+
| Overlays | **Drawer** | Side sheet in a portal with scroll lock and focus management. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/drawer/COMPONENT.md) |
|
|
193
|
+
| Overlays | **Dropdown** | Action menu with trigger and portaled panel (`role="menu"`). | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/dropdown/COMPONENT.md) |
|
|
194
|
+
| Overlays | **Modal** | Centered dialog with backdrop, focus trap, optional built-in chrome. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/modal/COMPONENT.md) |
|
|
195
|
+
| Overlays | **Popover** | Anchor + portaled panel; non-modal surface next to the trigger. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/popover/COMPONENT.md) |
|
|
196
|
+
| Overlays | **Tooltip** | Delayed hint; trigger and content in a portal. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/tooltip/COMPONENT.md) |
|
|
197
|
+
| Navigation & layout | **Accordion** | Expandable sections (FAQ, settings groups) with height animation. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/accordion/COMPONENT.md) |
|
|
198
|
+
| Navigation & layout | **Breadcrumb** | `nav` trail with links, separators, and optional ellipsis. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/breadcrumb/COMPONENT.md) |
|
|
199
|
+
| Navigation & layout | **Pagination** | Page controls: prev/next, page numbers, ellipsis. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/pagination/COMPONENT.md) |
|
|
200
|
+
| Navigation & layout | **Sidebar** | Side navigation: single panel, groups, menus, responsive overlay. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/layout/sidebar/COMPONENT.md) |
|
|
201
|
+
| Navigation & layout | **Stepper** | Multi-step flow on `<ol>` / `<li>` plus horizontal/vertical primitives. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/stepper/COMPONENT.md) |
|
|
202
|
+
| Navigation & layout | **Tabs** | Tablist, indicator, one visible panel at a time. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/tabs/COMPONENT.md) |
|
|
203
|
+
| Navigation & layout | **PageContent** | Main column: max width (`readable` / `wide`), header and body regions. | [Source](https://github.com/esurkov1/prime-ui/tree/main/src/components/page-content) |
|
|
204
|
+
| Navigation & layout | **AppShell** | Application shell: grid root, nav slot, main region, optional full viewport. | [Source](https://github.com/esurkov1/prime-ui/tree/main/src/layout/app-shell) |
|
|
205
|
+
| Navigation & layout | **ScrollContainer** | Scrollable region with horizontal or vertical axis (overflow wrapper). | [Source](https://github.com/esurkov1/prime-ui/tree/main/src/components/scroll-container) |
|
|
206
|
+
| Data | **DataTable** | Table with scroll, sorting, pagination or infinite scroll, sticky regions. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/data-table/COMPONENT.md) |
|
|
207
|
+
| Display & content | **Avatar** | Circular avatar: image, fallback, group with overflow cell. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/avatar/COMPONENT.md) |
|
|
208
|
+
| Display & content | **Badge** | Compact status or count; optional presence dot variant. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/badge/COMPONENT.md) |
|
|
209
|
+
| Display & content | **Banner** | In-flow announcement strip with icon, copy, and actions. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/banner/COMPONENT.md) |
|
|
210
|
+
| Display & content | **CodeBlock** | TS/TSX syntax highlighting in `pre`/`code` (static presentation). | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/code-block/COMPONENT.md) |
|
|
211
|
+
| Display & content | **ExampleFrame** | Preview stage + code layout for playgrounds and internal docs. | [Source](https://github.com/esurkov1/prime-ui/tree/main/src/components/example-frame) |
|
|
212
|
+
| Display & content | **Card** | Dashboard tiles: `mini`, `mini-media`, `metric`, `panel`, `stat-trend`, `cta`, `list`, `split`, `cover`. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/card/COMPONENT.md) |
|
|
213
|
+
| Display & content | **Divider** | Horizontal or vertical rule with optional inset label. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/divider/COMPONENT.md) |
|
|
214
|
+
| Display & content | **ProgressBar** | Horizontal progress on the native `<progress>` element. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/progress-bar/COMPONENT.md) |
|
|
215
|
+
| Display & content | **SegmentedProgressBar** | Stacked horizontal segments with proportional weights and semantic tones. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/segmented-progress-bar/COMPONENT.md) |
|
|
216
|
+
| Display & content | **ProgressCircle** | Circular progress ring (SVG + `progressbar`). | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/progress-circle/COMPONENT.md) |
|
|
217
|
+
| Display & content | **Tag** | Chip with optional icon, trailing dismiss when `onRemove` is set. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/tag/COMPONENT.md) |
|
|
218
|
+
| Display & content | **Typography** | Reading text via semantic **`variant`** (roles), weight, tracking, muted tone. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/typography/COMPONENT.md) |
|
|
219
|
+
| Actions & feedback | **Button** | Action control: `asChild`, icon, loading spinner. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/button/COMPONENT.md) |
|
|
220
|
+
| Actions & feedback | **ButtonGroup** | Button row sharing one outline and internal dividers. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/button-group/COMPONENT.md) |
|
|
221
|
+
| Actions & feedback | **LinkButton** | Text-style link with control padding and underline on hover/focus. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/link-button/COMPONENT.md) |
|
|
222
|
+
| Actions & feedback | **Notification** | Toasts: provider, queue, positions, semantic types. | [COMPONENT.md](https://github.com/esurkov1/prime-ui/blob/main/src/components/notification/COMPONENT.md) |
|
|
110
223
|
|
|
111
|
-
|
|
224
|
+
---
|
|
225
|
+
|
|
226
|
+
## Package exports (`package.json` / `exports`)
|
|
112
227
|
|
|
113
|
-
|
|
228
|
+
| Path | Purpose |
|
|
229
|
+
|------|---------|
|
|
230
|
+
| `prime-ui-kit` | Main JS/TS API. |
|
|
231
|
+
| `prime-ui-kit/components` | Alternate entry for tree-shaking heavier chunks. |
|
|
232
|
+
| `prime-ui-kit/styles.css` | Global styles (fonts, reset, tokens, themes). |
|
|
233
|
+
| `prime-ui-kit/tokens.css` | Tokens only. |
|
|
234
|
+
| `prime-ui-kit/theme-light.css` / `theme-dark.css` | Individual theme files. |
|
|
235
|
+
| `prime-ui-kit/bundle.css` | CSS aligned with the main bundle. |
|
|
236
|
+
| `prime-ui-kit/components.css` | CSS for the `components` entry. |
|
|
114
237
|
|
|
115
|
-
|
|
238
|
+
---
|
|
116
239
|
|
|
117
|
-
|
|
240
|
+
## TypeScript
|
|
118
241
|
|
|
119
|
-
|
|
242
|
+
Type definitions ship with the package (`dist/*.d.ts`).
|
|
120
243
|
|
|
121
244
|
---
|
|
122
245
|
|
|
123
|
-
##
|
|
246
|
+
## Where component docs live
|
|
247
|
+
|
|
248
|
+
- **In the repo / on GitHub:** each component has `src/components/<name>/COMPONENT.md` (see the table above).
|
|
249
|
+
- **In the installed package:** the same files are published (`package.json` → `files`), e.g. `node_modules/prime-ui-kit/src/components/<name>/COMPONENT.md`.
|
|
124
250
|
|
|
125
|
-
|
|
251
|
+
**AppShell**, **PageContent**, **ExampleFrame**, and **ScrollContainer** do not have a dedicated `COMPONENT.md`; refer to the linked source folders and types in the `.tsx` files.
|
|
126
252
|
|
|
127
253
|
---
|
|
128
254
|
|
|
129
255
|
## License
|
|
130
256
|
|
|
131
|
-
MIT — see
|
|
257
|
+
MIT — see [`LICENSE`](https://github.com/esurkov1/prime-ui/blob/main/LICENSE) in the repo and in the npm package.
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { AccordionSize } from "@/internal/states";
|
|
3
|
+
export type AccordionType = "single" | "multiple";
|
|
4
|
+
export type { AccordionSize };
|
|
5
|
+
export type AccordionRootProps = React.HTMLAttributes<HTMLDivElement> & {
|
|
6
|
+
type?: AccordionType;
|
|
7
|
+
value?: string | string[];
|
|
8
|
+
defaultValue?: string | string[];
|
|
9
|
+
onValueChange?: (value: string | string[]) => void;
|
|
10
|
+
/** Только для `type="single"`. Если `false`, в одиночном режиме нельзя закрыть открытый пункт. По умолчанию `true`. */
|
|
11
|
+
collapsible?: boolean;
|
|
12
|
+
/** Размер триггера, иконок и отступов контента. По умолчанию `m`. */
|
|
13
|
+
size?: AccordionSize;
|
|
14
|
+
/** Групповой список без зазоров (`grouped`) или отдельные карточки (`separate`). */
|
|
15
|
+
layout?: "grouped" | "separate";
|
|
16
|
+
};
|
|
17
|
+
export type AccordionItemProps = React.HTMLAttributes<HTMLDivElement> & {
|
|
18
|
+
value: string;
|
|
19
|
+
disabled?: boolean;
|
|
20
|
+
};
|
|
21
|
+
export type AccordionHeaderProps = React.HTMLAttributes<HTMLHeadingElement>;
|
|
22
|
+
export type AccordionTriggerProps = React.ButtonHTMLAttributes<HTMLButtonElement>;
|
|
23
|
+
export type AccordionContentProps = React.HTMLAttributes<HTMLDivElement>;
|
|
24
|
+
export type AccordionIconProps<T extends React.ElementType = "div"> = {
|
|
25
|
+
as?: T;
|
|
26
|
+
className?: string;
|
|
27
|
+
children?: React.ReactNode;
|
|
28
|
+
} & Omit<React.ComponentPropsWithoutRef<T>, "as" | "className">;
|
|
29
|
+
export type AccordionArrowProps = React.HTMLAttributes<HTMLSpanElement> & {
|
|
30
|
+
openIcon?: React.ElementType<{
|
|
31
|
+
className?: string;
|
|
32
|
+
strokeWidth?: number | string;
|
|
33
|
+
}>;
|
|
34
|
+
closeIcon?: React.ElementType<{
|
|
35
|
+
className?: string;
|
|
36
|
+
strokeWidth?: number | string;
|
|
37
|
+
}>;
|
|
38
|
+
};
|
|
39
|
+
declare function AccordionIcon<T extends React.ElementType = "div">({ as, className, children, ...rest }: AccordionIconProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
40
|
+
declare namespace AccordionIcon {
|
|
41
|
+
var displayName: string;
|
|
42
|
+
}
|
|
43
|
+
declare function AccordionArrow({ className, openIcon: OpenIcon, closeIcon: CloseIcon, ...rest }: AccordionArrowProps): import("react/jsx-runtime").JSX.Element;
|
|
44
|
+
declare namespace AccordionArrow {
|
|
45
|
+
var displayName: string;
|
|
46
|
+
}
|
|
47
|
+
export declare const Accordion: {
|
|
48
|
+
Root: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & {
|
|
49
|
+
type?: AccordionType;
|
|
50
|
+
value?: string | string[];
|
|
51
|
+
defaultValue?: string | string[];
|
|
52
|
+
onValueChange?: (value: string | string[]) => void;
|
|
53
|
+
/** Только для `type="single"`. Если `false`, в одиночном режиме нельзя закрыть открытый пункт. По умолчанию `true`. */
|
|
54
|
+
collapsible?: boolean;
|
|
55
|
+
/** Размер триггера, иконок и отступов контента. По умолчанию `m`. */
|
|
56
|
+
size?: AccordionSize;
|
|
57
|
+
/** Групповой список без зазоров (`grouped`) или отдельные карточки (`separate`). */
|
|
58
|
+
layout?: "grouped" | "separate";
|
|
59
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
60
|
+
Header: React.ForwardRefExoticComponent<AccordionHeaderProps & React.RefAttributes<HTMLHeadingElement>>;
|
|
61
|
+
Item: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & {
|
|
62
|
+
value: string;
|
|
63
|
+
disabled?: boolean;
|
|
64
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
65
|
+
Trigger: React.ForwardRefExoticComponent<AccordionTriggerProps & React.RefAttributes<HTMLButtonElement>>;
|
|
66
|
+
Icon: typeof AccordionIcon;
|
|
67
|
+
Arrow: typeof AccordionArrow;
|
|
68
|
+
Content: React.ForwardRefExoticComponent<AccordionContentProps & React.RefAttributes<HTMLDivElement>>;
|
|
69
|
+
};
|
|
70
|
+
//# sourceMappingURL=Accordion.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Accordion.d.ts","sourceRoot":"","sources":["../../../../src/components/accordion/Accordion.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
export type AvatarSize = "s" | "m" | "l" | "xl" | "2xl" | "3xl" | "4xl" | "5xl" | "6xl";
|
|
3
|
+
export type AvatarImageStatus = "idle" | "loading" | "loaded" | "error";
|
|
4
|
+
export type AvatarRootProps = {
|
|
5
|
+
size?: AvatarSize;
|
|
6
|
+
className?: string;
|
|
7
|
+
children?: React.ReactNode;
|
|
8
|
+
} & React.HTMLAttributes<HTMLDivElement>;
|
|
9
|
+
export type AvatarImageProps = {
|
|
10
|
+
src: string;
|
|
11
|
+
alt?: string;
|
|
12
|
+
className?: string;
|
|
13
|
+
} & Omit<React.ImgHTMLAttributes<HTMLImageElement>, "src" | "alt">;
|
|
14
|
+
export type AvatarFallbackProps = {
|
|
15
|
+
children?: React.ReactNode;
|
|
16
|
+
className?: string;
|
|
17
|
+
} & React.HTMLAttributes<HTMLSpanElement>;
|
|
18
|
+
declare function AvatarFallback({ children, className, ...rest }: AvatarFallbackProps): import("react/jsx-runtime").JSX.Element;
|
|
19
|
+
declare namespace AvatarFallback {
|
|
20
|
+
var displayName: string;
|
|
21
|
+
}
|
|
22
|
+
export type AvatarGroupOverflowProps = {
|
|
23
|
+
size?: AvatarSize;
|
|
24
|
+
className?: string;
|
|
25
|
+
children?: React.ReactNode;
|
|
26
|
+
} & React.HTMLAttributes<HTMLDivElement>;
|
|
27
|
+
export type AvatarGroupRootProps = {
|
|
28
|
+
size?: AvatarSize;
|
|
29
|
+
className?: string;
|
|
30
|
+
children?: React.ReactNode;
|
|
31
|
+
} & React.HTMLAttributes<HTMLDivElement>;
|
|
32
|
+
export declare const Avatar: {
|
|
33
|
+
Root: React.ForwardRefExoticComponent<{
|
|
34
|
+
size?: AvatarSize;
|
|
35
|
+
className?: string;
|
|
36
|
+
children?: React.ReactNode;
|
|
37
|
+
} & React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
|
|
38
|
+
Image: React.ForwardRefExoticComponent<{
|
|
39
|
+
src: string;
|
|
40
|
+
alt?: string;
|
|
41
|
+
className?: string;
|
|
42
|
+
} & Omit<React.ImgHTMLAttributes<HTMLImageElement>, "alt" | "src"> & React.RefAttributes<HTMLImageElement>>;
|
|
43
|
+
Fallback: typeof AvatarFallback;
|
|
44
|
+
Group: {
|
|
45
|
+
Root: React.ForwardRefExoticComponent<{
|
|
46
|
+
size?: AvatarSize;
|
|
47
|
+
className?: string;
|
|
48
|
+
children?: React.ReactNode;
|
|
49
|
+
} & React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
|
|
50
|
+
Overflow: React.ForwardRefExoticComponent<{
|
|
51
|
+
size?: AvatarSize;
|
|
52
|
+
className?: string;
|
|
53
|
+
children?: React.ReactNode;
|
|
54
|
+
} & React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
|
|
55
|
+
};
|
|
56
|
+
};
|
|
57
|
+
export {};
|
|
58
|
+
//# sourceMappingURL=Avatar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Avatar.d.ts","sourceRoot":"","sources":["../../../../src/components/avatar/Avatar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,MAAM,MAAM,UAAU,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAExF,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;AAUxE,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;AAgCzC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,CAAC;AA2DnE,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;AAE1C,iBAAS,cAAc,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,mBAAmB,2CAY5E;kBAZQ,cAAc;;;AA8BvB,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;AAsDzC,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;AAiBzC,eAAO,MAAM,MAAM;;eApNV,UAAU;oBACL,MAAM;mBACP,KAAK,CAAC,SAAS;;;aAkCrB,MAAM;cACL,MAAM;oBACA,MAAM;;;;;mBA0JX,UAAU;wBACL,MAAM;uBACP,KAAK,CAAC,SAAS;;;mBA5DnB,UAAU;wBACL,MAAM;uBACP,KAAK,CAAC,SAAS;;;CAoF3B,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
export type BadgeColor = "gray" | "red" | "blue" | "green" | "orange" | "yellow" | "purple" | "sky" | "pink" | "teal";
|
|
3
|
+
/** Состояние индикатора при `variant="status"`. */
|
|
4
|
+
export type BadgeStatus = "online" | "offline" | "away" | "busy";
|
|
5
|
+
export type BadgeVariant = "filled" | "light" | "lighter" | "stroke" | "status";
|
|
6
|
+
export type BadgeSize = "s" | "m" | "l" | "xl";
|
|
7
|
+
export type BadgeRootProps = {
|
|
8
|
+
color?: BadgeColor;
|
|
9
|
+
variant?: BadgeVariant;
|
|
10
|
+
size?: BadgeSize;
|
|
11
|
+
disabled?: boolean;
|
|
12
|
+
/** При `variant="status"` — цвет точки (online / offline / away / busy). */
|
|
13
|
+
status?: BadgeStatus;
|
|
14
|
+
/** При `variant="status"` — `aria-label` на корне (`role="status"`). */
|
|
15
|
+
label?: string;
|
|
16
|
+
children?: React.ReactNode;
|
|
17
|
+
className?: string;
|
|
18
|
+
} & React.HTMLAttributes<HTMLDivElement>;
|
|
19
|
+
export type BadgeIconProps = {
|
|
20
|
+
children: React.ReactNode;
|
|
21
|
+
className?: string;
|
|
22
|
+
} & Omit<React.HTMLAttributes<HTMLDivElement>, "children">;
|
|
23
|
+
export type BadgeDotProps = {
|
|
24
|
+
className?: string;
|
|
25
|
+
} & React.HTMLAttributes<HTMLSpanElement>;
|
|
26
|
+
declare function BadgeIcon({ children, className, ...rest }: BadgeIconProps): import("react/jsx-runtime").JSX.Element;
|
|
27
|
+
declare namespace BadgeIcon {
|
|
28
|
+
var displayName: string;
|
|
29
|
+
}
|
|
30
|
+
declare function BadgeDot({ className, ...rest }: BadgeDotProps): import("react/jsx-runtime").JSX.Element;
|
|
31
|
+
declare namespace BadgeDot {
|
|
32
|
+
var displayName: string;
|
|
33
|
+
}
|
|
34
|
+
export declare const Badge: {
|
|
35
|
+
Root: React.ForwardRefExoticComponent<{
|
|
36
|
+
color?: BadgeColor;
|
|
37
|
+
variant?: BadgeVariant;
|
|
38
|
+
size?: BadgeSize;
|
|
39
|
+
disabled?: boolean;
|
|
40
|
+
/** При `variant="status"` — цвет точки (online / offline / away / busy). */
|
|
41
|
+
status?: BadgeStatus;
|
|
42
|
+
/** При `variant="status"` — `aria-label` на корне (`role="status"`). */
|
|
43
|
+
label?: string;
|
|
44
|
+
children?: React.ReactNode;
|
|
45
|
+
className?: string;
|
|
46
|
+
} & React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
|
|
47
|
+
Icon: typeof BadgeIcon;
|
|
48
|
+
Dot: typeof BadgeDot;
|
|
49
|
+
};
|
|
50
|
+
export {};
|
|
51
|
+
//# sourceMappingURL=Badge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Badge.d.ts","sourceRoot":"","sources":["../../../../src/components/badge/Badge.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAY/B,MAAM,MAAM,UAAU,GAClB,MAAM,GACN,KAAK,GACL,MAAM,GACN,OAAO,GACP,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,KAAK,GACL,MAAM,GACN,MAAM,CAAC;AAEX,mDAAmD;AACnD,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;AAEjE,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEhF,MAAM,MAAM,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC;AAE/C,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4EAA4E;IAC5E,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,wEAAwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;AAEzC,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC,CAAC;AAE3D,MAAM,MAAM,aAAa,GAAG;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;AAgE1C,iBAAS,SAAS,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,2CAMlE;kBANQ,SAAS;;;AAUlB,iBAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,aAAa,2CAEtD;kBAFQ,QAAQ;;;AAMjB,eAAO,MAAM,KAAK;;gBAnGR,UAAU;kBACR,YAAY;eACf,SAAS;mBACL,OAAO;QAClB,4EAA4E;iBACnE,WAAW;QACpB,wEAAwE;gBAChE,MAAM;mBACH,KAAK,CAAC,SAAS;oBACd,MAAM;;;;CA0FoD,CAAC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { BannerSize } from "@/internal/states";
|
|
3
|
+
export type BannerVariant = "filled" | "light" | "lighter" | "stroke";
|
|
4
|
+
export type BannerStatus = "information" | "warning" | "error" | "success" | "feature";
|
|
5
|
+
export type { BannerSize };
|
|
6
|
+
export type BannerRootProps = {
|
|
7
|
+
variant?: BannerVariant;
|
|
8
|
+
status?: BannerStatus;
|
|
9
|
+
size?: BannerSize;
|
|
10
|
+
onDismiss?: () => void;
|
|
11
|
+
className?: string;
|
|
12
|
+
children?: React.ReactNode;
|
|
13
|
+
} & React.HTMLAttributes<HTMLDivElement>;
|
|
14
|
+
export type BannerContentProps = {
|
|
15
|
+
className?: string;
|
|
16
|
+
children?: React.ReactNode;
|
|
17
|
+
} & React.HTMLAttributes<HTMLDivElement>;
|
|
18
|
+
declare function BannerContent({ className, children, ...rest }: BannerContentProps): import("react/jsx-runtime").JSX.Element;
|
|
19
|
+
declare namespace BannerContent {
|
|
20
|
+
var displayName: string;
|
|
21
|
+
}
|
|
22
|
+
export type BannerIconProps<T extends React.ElementType = "div"> = {
|
|
23
|
+
as?: T;
|
|
24
|
+
className?: string;
|
|
25
|
+
children?: React.ReactNode;
|
|
26
|
+
} & Omit<React.ComponentPropsWithoutRef<T>, "as" | "className">;
|
|
27
|
+
declare function BannerIcon<T extends React.ElementType = "div">({ as, className, children, ...rest }: BannerIconProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
28
|
+
declare namespace BannerIcon {
|
|
29
|
+
var displayName: string;
|
|
30
|
+
}
|
|
31
|
+
export type BannerTitleProps = {
|
|
32
|
+
className?: string;
|
|
33
|
+
children?: React.ReactNode;
|
|
34
|
+
} & React.HTMLAttributes<HTMLSpanElement>;
|
|
35
|
+
declare function BannerTitle({ className, children, ...rest }: BannerTitleProps): import("react/jsx-runtime").JSX.Element;
|
|
36
|
+
declare namespace BannerTitle {
|
|
37
|
+
var displayName: string;
|
|
38
|
+
}
|
|
39
|
+
export type BannerDescriptionProps = {
|
|
40
|
+
className?: string;
|
|
41
|
+
children?: React.ReactNode;
|
|
42
|
+
} & React.HTMLAttributes<HTMLSpanElement>;
|
|
43
|
+
declare function BannerDescription({ className, children, ...rest }: BannerDescriptionProps): import("react/jsx-runtime").JSX.Element;
|
|
44
|
+
declare namespace BannerDescription {
|
|
45
|
+
var displayName: string;
|
|
46
|
+
}
|
|
47
|
+
export type BannerActionsProps = {
|
|
48
|
+
className?: string;
|
|
49
|
+
children?: React.ReactNode;
|
|
50
|
+
} & React.HTMLAttributes<HTMLDivElement>;
|
|
51
|
+
declare function BannerActions({ className, children, ...rest }: BannerActionsProps): import("react/jsx-runtime").JSX.Element;
|
|
52
|
+
declare namespace BannerActions {
|
|
53
|
+
var displayName: string;
|
|
54
|
+
}
|
|
55
|
+
export type BannerCloseButtonProps = {
|
|
56
|
+
className?: string;
|
|
57
|
+
children?: React.ReactNode;
|
|
58
|
+
} & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "size">;
|
|
59
|
+
export declare const Banner: {
|
|
60
|
+
Root: React.ForwardRefExoticComponent<{
|
|
61
|
+
variant?: BannerVariant;
|
|
62
|
+
status?: BannerStatus;
|
|
63
|
+
size?: BannerSize;
|
|
64
|
+
onDismiss?: () => void;
|
|
65
|
+
className?: string;
|
|
66
|
+
children?: React.ReactNode;
|
|
67
|
+
} & React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
|
|
68
|
+
Content: typeof BannerContent;
|
|
69
|
+
Icon: typeof BannerIcon;
|
|
70
|
+
Title: typeof BannerTitle;
|
|
71
|
+
Description: typeof BannerDescription;
|
|
72
|
+
Actions: typeof BannerActions;
|
|
73
|
+
CloseButton: React.ForwardRefExoticComponent<{
|
|
74
|
+
className?: string;
|
|
75
|
+
children?: React.ReactNode;
|
|
76
|
+
} & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "size"> & React.RefAttributes<HTMLButtonElement>>;
|
|
77
|
+
};
|
|
78
|
+
//# sourceMappingURL=Banner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Banner.d.ts","sourceRoot":"","sources":["../../../../src/components/banner/Banner.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAIpD,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEtE,MAAM,MAAM,YAAY,GAAG,aAAa,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;AAEvF,YAAY,EAAE,UAAU,EAAE,CAAC;AAE3B,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;AAwCzC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;AAEzC,iBAAS,aAAa,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,kBAAkB,2CAM1E;kBANQ,aAAa;;;AAStB,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,GAAG,KAAK,IAAI;IACjE,EAAE,CAAC,EAAE,CAAC,CAAC;IACP,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,GAAG,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,WAAW,CAAC,CAAC;AAEhE,iBAAS,UAAU,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,GAAG,KAAK,EAAE,EACvD,EAAE,EACF,SAAS,EACT,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,eAAe,CAAC,CAAC,CAAC,2CAQpB;kBAbQ,UAAU;;;AAgBnB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,GAAG,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;AAE1C,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,gBAAgB,2CAMtE;kBANQ,WAAW;;;AASpB,MAAM,MAAM,sBAAsB,GAAG;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,GAAG,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;AAE1C,iBAAS,iBAAiB,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,sBAAsB,2CAMlF;kBANQ,iBAAiB;;;AAS1B,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;AAEzC,iBAAS,aAAa,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,kBAAkB,2CAM1E;kBANQ,aAAa;;;AAStB,MAAM,MAAM,sBAAsB,GAAG;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC,CAAC;AA4BhE,eAAO,MAAM,MAAM;;kBA3JP,aAAa;iBACd,YAAY;eACd,UAAU;oBACL,MAAM,IAAI;oBACV,MAAM;mBACP,KAAK,CAAC,SAAS;;;;;;;;oBAwHd,MAAM;mBACP,KAAK,CAAC,SAAS;;CAqC3B,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { BreadcrumbSize } from "@/internal/states";
|
|
3
|
+
export type { BreadcrumbSize };
|
|
4
|
+
export type BreadcrumbRootProps = {
|
|
5
|
+
children: React.ReactNode;
|
|
6
|
+
className?: string;
|
|
7
|
+
/** Кегль ссылок (LinkButton), текущей страницы, многоточия; иконка-разделитель и иконка «дом» — тот же ярус. */
|
|
8
|
+
size?: BreadcrumbSize;
|
|
9
|
+
} & React.HTMLAttributes<HTMLElement>;
|
|
10
|
+
declare function BreadcrumbRoot({ children, className, size, ...rest }: BreadcrumbRootProps): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
declare namespace BreadcrumbRoot {
|
|
12
|
+
var displayName: string;
|
|
13
|
+
}
|
|
14
|
+
export type BreadcrumbItemProps = {
|
|
15
|
+
href?: string;
|
|
16
|
+
current?: boolean;
|
|
17
|
+
children?: React.ReactNode;
|
|
18
|
+
className?: string;
|
|
19
|
+
/** Для ссылки без видимого текста (например, только иконка «дом»). */
|
|
20
|
+
"aria-label"?: string;
|
|
21
|
+
};
|
|
22
|
+
declare function BreadcrumbItem({ href, current, children, className, "aria-label": ariaLabel, }: BreadcrumbItemProps): import("react/jsx-runtime").JSX.Element;
|
|
23
|
+
declare namespace BreadcrumbItem {
|
|
24
|
+
var displayName: string;
|
|
25
|
+
}
|
|
26
|
+
export type BreadcrumbSeparatorProps = {
|
|
27
|
+
children?: React.ReactNode;
|
|
28
|
+
className?: string;
|
|
29
|
+
};
|
|
30
|
+
declare function BreadcrumbSeparator({ children, className }: BreadcrumbSeparatorProps): import("react/jsx-runtime").JSX.Element;
|
|
31
|
+
declare namespace BreadcrumbSeparator {
|
|
32
|
+
var displayName: string;
|
|
33
|
+
}
|
|
34
|
+
export type BreadcrumbEllipsisProps = {
|
|
35
|
+
className?: string;
|
|
36
|
+
};
|
|
37
|
+
declare function BreadcrumbEllipsis({ className }: BreadcrumbEllipsisProps): import("react/jsx-runtime").JSX.Element;
|
|
38
|
+
declare namespace BreadcrumbEllipsis {
|
|
39
|
+
var displayName: string;
|
|
40
|
+
}
|
|
41
|
+
export declare const Breadcrumb: {
|
|
42
|
+
Root: typeof BreadcrumbRoot;
|
|
43
|
+
Item: typeof BreadcrumbItem;
|
|
44
|
+
Separator: typeof BreadcrumbSeparator;
|
|
45
|
+
Ellipsis: typeof BreadcrumbEllipsis;
|
|
46
|
+
};
|
|
47
|
+
//# sourceMappingURL=Breadcrumb.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Breadcrumb.d.ts","sourceRoot":"","sources":["../../../../src/components/breadcrumb/Breadcrumb.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAMxD,YAAY,EAAE,cAAc,EAAE,CAAC;AAS/B,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gHAAgH;IAChH,IAAI,CAAC,EAAE,cAAc,CAAC;CACvB,GAAG,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;AAEtC,iBAAS,cAAc,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAU,EAAE,GAAG,IAAI,EAAE,EAAE,mBAAmB,2CAexF;kBAfQ,cAAc;;;AAkBvB,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sEAAsE;IACtE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,iBAAS,cAAc,CAAC,EACtB,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,SAAS,EACT,YAAY,EAAE,SAAS,GACxB,EAAE,mBAAmB,2CAuBrB;kBA7BQ,cAAc;;;AAgCvB,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,iBAAS,mBAAmB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,wBAAwB,2CAO7E;kBAPQ,mBAAmB;;;AAU5B,MAAM,MAAM,uBAAuB,GAAG;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,iBAAS,kBAAkB,CAAC,EAAE,SAAS,EAAE,EAAE,uBAAuB,2CAEjE;kBAFQ,kBAAkB;;;AAK3B,eAAO,MAAM,UAAU;;;;;CAKtB,CAAC"}
|