@moduix/react 1.1.1 → 2.0.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 +16 -16
- package/dist/components/accordion/Accordion.css +8 -1
- package/dist/components/accordion/Accordion.d.ts +3 -2
- package/dist/components/accordion/Accordion.js +17 -5
- package/dist/components/accordion/Accordion.module.js +1 -0
- package/dist/components/accordion/index.d.ts +2 -2
- package/dist/components/alert/Alert.css +19 -5
- package/dist/components/alert/Alert.d.ts +5 -3
- package/dist/components/alert/Alert.js +17 -5
- package/dist/components/alert/Alert.module.js +1 -0
- package/dist/components/angle-slider/AngleSlider.d.ts +18 -2
- package/dist/components/angle-slider/AngleSlider.js +34 -18
- package/dist/components/angle-slider/index.d.ts +2 -2
- package/dist/components/aspect-ratio/AspectRatio.css +3 -1
- package/dist/components/aspect-ratio/AspectRatio.js +2 -2
- package/dist/components/avatar/Avatar.d.ts +6 -3
- package/dist/components/avatar/Avatar.js +12 -5
- package/dist/components/avatar/index.d.ts +2 -2
- package/dist/components/badge/Badge.css +44 -1
- package/dist/components/badge/Badge.d.ts +2 -2
- package/dist/components/badge/Badge.js +1 -1
- package/dist/components/bleed/Bleed.d.ts +6 -4
- package/dist/components/bleed/Bleed.js +3 -3
- package/dist/components/breadcrumbs/Breadcrumbs.css +7 -1
- package/dist/components/breadcrumbs/Breadcrumbs.d.ts +18 -0
- package/dist/components/breadcrumbs/Breadcrumbs.js +18 -4
- package/dist/components/breadcrumbs/Breadcrumbs.module.js +2 -1
- package/dist/components/breadcrumbs/index.d.ts +2 -0
- package/dist/components/button/Button.css +21 -1
- package/dist/components/button/Button.d.ts +6 -0
- package/dist/components/button/Button.js +12 -7
- package/dist/components/card/Card.css +20 -4
- package/dist/components/card/Card.d.ts +1 -0
- package/dist/components/card/Card.js +12 -1
- package/dist/components/card/Card.module.js +1 -0
- package/dist/components/carousel/Carousel.css +2 -0
- package/dist/components/carousel/Carousel.d.ts +4 -0
- package/dist/components/carousel/Carousel.js +15 -2
- package/dist/components/checkbox/Checkbox.d.ts +2 -3
- package/dist/components/checkbox/Checkbox.js +25 -22
- package/dist/components/checkbox/index.d.ts +2 -2
- package/dist/components/clipboard/Clipboard.css +1 -1
- package/dist/components/clipboard/Clipboard.d.ts +2 -0
- package/dist/components/clipboard/Clipboard.js +15 -4
- package/dist/components/close-button/CloseButton.d.ts +12 -2
- package/dist/components/close-button/CloseButton.js +9 -9
- package/dist/components/collapsible/Collapsible.css +9 -2
- package/dist/components/collapsible/Collapsible.d.ts +3 -2
- package/dist/components/collapsible/Collapsible.js +18 -6
- package/dist/components/collapsible/Collapsible.module.js +1 -0
- package/dist/components/collapsible/index.d.ts +2 -2
- package/dist/components/color-picker/ColorPicker.css +35 -6
- package/dist/components/color-picker/ColorPicker.d.ts +3 -3
- package/dist/components/color-picker/ColorPicker.js +78 -27
- package/dist/components/color-picker/ColorPicker.module.js +1 -0
- package/dist/components/color-picker/index.d.ts +2 -2
- package/dist/components/combobox/Combobox.css +37 -8
- package/dist/components/combobox/Combobox.d.ts +9 -2
- package/dist/components/combobox/Combobox.js +34 -8
- package/dist/components/combobox/index.d.ts +2 -2
- package/dist/components/command-palette/CommandPalette.css +40 -74
- package/dist/components/command-palette/CommandPalette.d.ts +13 -3
- package/dist/components/command-palette/CommandPalette.js +54 -43
- package/dist/components/command-palette/CommandPalette.module.js +0 -2
- package/dist/components/container/Container.js +1 -1
- package/dist/components/date-input/DateInput.css +3 -1
- package/dist/components/date-input/DateInput.d.ts +12 -7
- package/dist/components/date-input/DateInput.js +35 -14
- package/dist/components/date-input/index.d.ts +2 -2
- package/dist/components/date-picker/DatePicker.css +41 -13
- package/dist/components/date-picker/DatePicker.d.ts +30 -2
- package/dist/components/date-picker/DatePicker.js +94 -9
- package/dist/components/date-picker/index.d.ts +2 -2
- package/dist/components/dialog/Dialog.css +14 -10
- package/dist/components/dialog/Dialog.d.ts +2 -2
- package/dist/components/dialog/Dialog.js +3 -3
- package/dist/components/dialog/index.d.ts +2 -2
- package/dist/components/drawer/Drawer.d.ts +2 -2
- package/dist/components/drawer/Drawer.js +3 -3
- package/dist/components/drawer/index.d.ts +2 -2
- package/dist/components/editable/Editable.d.ts +9 -2
- package/dist/components/editable/Editable.js +14 -5
- package/dist/components/editable/index.d.ts +2 -2
- package/dist/components/empty/Empty.js +1 -1
- package/dist/components/field/Field.css +0 -4
- package/dist/components/field/Field.d.ts +3 -2
- package/dist/components/field/Field.js +6 -5
- package/dist/components/field/Field.module.js +0 -1
- package/dist/components/field/index.d.ts +2 -2
- package/dist/components/fieldset/Fieldset.d.ts +2 -2
- package/dist/components/fieldset/Fieldset.js +3 -3
- package/dist/components/fieldset/index.d.ts +2 -2
- package/dist/components/file-upload/FileUpload.css +81 -8
- package/dist/components/file-upload/FileUpload.d.ts +22 -5
- package/dist/components/file-upload/FileUpload.js +79 -21
- package/dist/components/file-upload/FileUpload.module.js +3 -0
- package/dist/components/file-upload/index.d.ts +2 -2
- package/dist/components/floating-panel/FloatingPanel.css +14 -10
- package/dist/components/floating-panel/FloatingPanel.d.ts +11 -3
- package/dist/components/floating-panel/FloatingPanel.js +15 -9
- package/dist/components/heading/Heading.js +1 -1
- package/dist/components/highlight/Highlight.js +1 -1
- package/dist/components/hover-card/HoverCard.css +14 -10
- package/dist/components/hover-card/HoverCard.d.ts +3 -2
- package/dist/components/hover-card/HoverCard.js +5 -4
- package/dist/components/hover-card/index.d.ts +2 -2
- package/dist/components/image/Image.css +7 -0
- package/dist/components/image/Image.d.ts +12 -0
- package/dist/components/image/Image.js +28 -0
- package/dist/components/image/Image.module.js +5 -0
- package/dist/components/image/index.d.ts +2 -0
- package/dist/components/image-cropper/ImageCropper.d.ts +7 -2
- package/dist/components/image-cropper/ImageCropper.js +25 -3
- package/dist/components/image-cropper/index.d.ts +2 -2
- package/dist/components/input/Input.js +1 -1
- package/dist/components/input-group/InputGroup.d.ts +3 -0
- package/dist/components/input-group/InputGroup.js +1 -1
- package/dist/components/kbd/Kbd.js +1 -1
- package/dist/components/lightbox/Lightbox.css +12 -10
- package/dist/components/lightbox/Lightbox.d.ts +4 -2
- package/dist/components/lightbox/Lightbox.js +9 -7
- package/dist/components/lightbox/index.d.ts +2 -2
- package/dist/components/list/List.js +1 -1
- package/dist/components/listbox/Listbox.css +60 -1
- package/dist/components/listbox/Listbox.d.ts +14 -2
- package/dist/components/listbox/Listbox.js +41 -5
- package/dist/components/listbox/Listbox.module.js +3 -0
- package/dist/components/listbox/index.d.ts +2 -2
- package/dist/components/marquee/Marquee.d.ts +2 -1
- package/dist/components/marquee/Marquee.js +4 -3
- package/dist/components/marquee/index.d.ts +2 -2
- package/dist/components/menu/Menu.css +14 -8
- package/dist/components/menu/Menu.d.ts +3 -2
- package/dist/components/menu/Menu.js +6 -5
- package/dist/components/menu/index.d.ts +2 -2
- package/dist/components/native-select/NativeSelect.d.ts +6 -2
- package/dist/components/native-select/NativeSelect.js +5 -4
- package/dist/components/number-input/NumberInput.css +0 -6
- package/dist/components/number-input/NumberInput.d.ts +7 -2
- package/dist/components/number-input/NumberInput.js +17 -4
- package/dist/components/number-input/index.d.ts +2 -2
- package/dist/components/pagination/Pagination.d.ts +4 -0
- package/dist/components/pagination/Pagination.js +13 -4
- package/dist/components/password-input/PasswordInput.d.ts +4 -0
- package/dist/components/password-input/PasswordInput.js +10 -2
- package/dist/components/pin-input/PinInput.d.ts +6 -1
- package/dist/components/pin-input/PinInput.js +25 -16
- package/dist/components/popover/Popover.css +20 -11
- package/dist/components/popover/Popover.js +1 -1
- package/dist/components/progress-circular/ProgressCircular.d.ts +6 -0
- package/dist/components/progress-circular/ProgressCircular.js +14 -3
- package/dist/components/progress-linear/ProgressLinear.d.ts +3 -0
- package/dist/components/progress-linear/ProgressLinear.js +6 -3
- package/dist/components/qr-code/QrCode.css +3 -2
- package/dist/components/qr-code/QrCode.d.ts +2 -2
- package/dist/components/qr-code/QrCode.js +3 -3
- package/dist/components/qr-code/index.d.ts +2 -2
- package/dist/components/radio-group/RadioGroup.d.ts +8 -4
- package/dist/components/radio-group/RadioGroup.js +22 -14
- package/dist/components/radio-group/index.d.ts +2 -2
- package/dist/components/rating-group/RatingGroup.css +3 -3
- package/dist/components/rating-group/RatingGroup.d.ts +11 -4
- package/dist/components/rating-group/RatingGroup.js +29 -18
- package/dist/components/rating-group/index.d.ts +2 -2
- package/dist/components/scroll-area/ScrollArea.css +7 -2
- package/dist/components/scroll-area/ScrollArea.d.ts +3 -0
- package/dist/components/scroll-area/ScrollArea.js +9 -6
- package/dist/components/segment-group/SegmentGroup.d.ts +13 -3
- package/dist/components/segment-group/SegmentGroup.js +23 -15
- package/dist/components/segment-group/index.d.ts +2 -2
- package/dist/components/select/Select.css +24 -15
- package/dist/components/select/Select.d.ts +18 -4
- package/dist/components/select/Select.js +65 -20
- package/dist/components/separator/Separator.js +1 -1
- package/dist/components/sidebar/Sidebar.css +144 -4
- package/dist/components/sidebar/Sidebar.d.ts +26 -0
- package/dist/components/sidebar/Sidebar.js +105 -13
- package/dist/components/sidebar/Sidebar.module.js +6 -0
- package/dist/components/signature-pad/SignaturePad.css +12 -41
- package/dist/components/signature-pad/SignaturePad.d.ts +14 -6
- package/dist/components/signature-pad/SignaturePad.js +56 -17
- package/dist/components/signature-pad/index.d.ts +2 -2
- package/dist/components/simple-grid/SimpleGrid.js +3 -3
- package/dist/components/skeleton/Skeleton.js +1 -1
- package/dist/components/slider/Slider.css +6 -4
- package/dist/components/slider/Slider.d.ts +12 -3
- package/dist/components/slider/Slider.js +24 -15
- package/dist/components/slider/index.d.ts +2 -2
- package/dist/components/spinner/Spinner.js +2 -2
- package/dist/components/split-button/SplitButton.d.ts +1 -1
- package/dist/components/split-button/SplitButton.js +3 -4
- package/dist/components/splitter/Splitter.css +13 -12
- package/dist/components/splitter/Splitter.d.ts +2 -2
- package/dist/components/splitter/Splitter.js +12 -11
- package/dist/components/splitter/index.d.ts +2 -2
- package/dist/components/stack/Stack.d.ts +1 -3
- package/dist/components/stack/Stack.js +4 -6
- package/dist/components/steps/Steps.d.ts +2 -1
- package/dist/components/steps/Steps.js +5 -4
- package/dist/components/swap/Swap.css +45 -0
- package/dist/components/swap/Swap.d.ts +11 -0
- package/dist/components/swap/Swap.js +39 -0
- package/dist/components/swap/Swap.module.js +11 -0
- package/dist/components/swap/index.d.ts +2 -0
- package/dist/components/switch/Switch.css +2 -2
- package/dist/components/switch/Switch.d.ts +4 -4
- package/dist/components/switch/Switch.js +19 -16
- package/dist/components/switch/index.d.ts +2 -2
- package/dist/components/table/Table.css +3 -3
- package/dist/components/table/Table.js +3 -2
- package/dist/components/table/Table.module.js +0 -1
- package/dist/components/tabs/Tabs.css +3 -1
- package/dist/components/tabs/Tabs.d.ts +3 -2
- package/dist/components/tabs/Tabs.js +5 -4
- package/dist/components/tabs/index.d.ts +2 -2
- package/dist/components/tag/Tag.css +12 -42
- package/dist/components/tag/Tag.js +7 -20
- package/dist/components/tags-input/TagsInput.css +3 -40
- package/dist/components/tags-input/TagsInput.d.ts +7 -4
- package/dist/components/tags-input/TagsInput.js +33 -21
- package/dist/components/tags-input/index.d.ts +2 -2
- package/dist/components/text/Text.d.ts +2 -2
- package/dist/components/text/Text.js +1 -1
- package/dist/components/textarea/Textarea.js +1 -1
- package/dist/components/timer/Timer.d.ts +14 -2
- package/dist/components/timer/Timer.js +13 -5
- package/dist/components/timer/index.d.ts +2 -2
- package/dist/components/toast/Toast.d.ts +3 -1
- package/dist/components/toast/Toast.js +11 -2
- package/dist/components/toggle/Toggle.css +3 -3
- package/dist/components/toggle/Toggle.d.ts +3 -2
- package/dist/components/toggle/Toggle.js +5 -4
- package/dist/components/toggle/index.d.ts +2 -2
- package/dist/components/toggle-group/ToggleGroup.d.ts +3 -2
- package/dist/components/toggle-group/ToggleGroup.js +4 -3
- package/dist/components/toggle-group/index.d.ts +2 -2
- package/dist/components/tooltip/Tooltip.css +14 -10
- package/dist/components/tooltip/Tooltip.d.ts +3 -2
- package/dist/components/tooltip/Tooltip.js +10 -3
- package/dist/components/tooltip/index.d.ts +2 -2
- package/dist/components/tour/Tour.css +23 -18
- package/dist/components/tour/Tour.d.ts +6 -0
- package/dist/components/tour/Tour.js +8 -1
- package/dist/components/tree-view/TreeView.css +1 -1
- package/dist/components/tree-view/TreeView.d.ts +2 -2
- package/dist/components/tree-view/TreeView.js +4 -4
- package/dist/components/tree-view/index.d.ts +2 -2
- package/dist/index.d.ts +40 -39
- package/dist/index.js +40 -39
- package/dist/lib/moduix/icons/ui/Icons.d.ts +1 -45
- package/dist/lib/moduix/icons/ui/Icons.js +36 -263
- package/dist/lib/moduix/icons/ui/index.d.ts +2 -2
- package/dist/lib/moduix/overlayPortal.js +1 -1
- package/package.json +4 -3
package/README.md
CHANGED
|
@@ -58,8 +58,8 @@ bundle, so moduix does not ship duplicate React or Ark UI runtimes.
|
|
|
58
58
|
|
|
59
59
|
### shadcn copy-owned install
|
|
60
60
|
|
|
61
|
-
`shadcn` can install selected moduix components from the
|
|
62
|
-
The files become part of your codebase instead of staying in `node_modules`.
|
|
61
|
+
`shadcn` can install selected moduix components from the hosted registry directly into your
|
|
62
|
+
project. The files become part of your codebase instead of staying in `node_modules`.
|
|
63
63
|
|
|
64
64
|
Make sure your project resolves the `@/*` alias to `src/*` in both `tsconfig.json` and
|
|
65
65
|
`tsconfig.app.json`, and mirror it in your bundler config.
|
|
@@ -88,13 +88,15 @@ Create `components.json` in the project root when your app does not already have
|
|
|
88
88
|
"lib": "@/lib",
|
|
89
89
|
"hooks": "@/hooks"
|
|
90
90
|
},
|
|
91
|
-
"registries": {
|
|
91
|
+
"registries": {
|
|
92
|
+
"@moduix-react": "https://moduix.dev/r/react/{name}.json"
|
|
93
|
+
}
|
|
92
94
|
}
|
|
93
95
|
```
|
|
94
96
|
|
|
95
97
|
```bash
|
|
96
|
-
npx shadcn@latest add
|
|
97
|
-
npx shadcn@latest add
|
|
98
|
+
npx shadcn@latest add @moduix-react/button
|
|
99
|
+
npx shadcn@latest add @moduix-react/accordion
|
|
98
100
|
```
|
|
99
101
|
|
|
100
102
|
The registry install also pulls in the shared moduix foundation files those components need, such as
|
|
@@ -137,7 +139,7 @@ import '@moduix/react/style.css';
|
|
|
137
139
|
Then import and compose the components you need:
|
|
138
140
|
|
|
139
141
|
```tsx
|
|
140
|
-
import { Button, Dialog
|
|
142
|
+
import { Button, Dialog } from '@moduix/react';
|
|
141
143
|
|
|
142
144
|
export function Example() {
|
|
143
145
|
return (
|
|
@@ -145,14 +147,12 @@ export function Example() {
|
|
|
145
147
|
<Dialog.Trigger asChild>
|
|
146
148
|
<Button>Open dialog</Button>
|
|
147
149
|
</Dialog.Trigger>
|
|
148
|
-
<
|
|
149
|
-
|
|
150
|
-
<Dialog.
|
|
151
|
-
<Dialog.
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
</Dialog.Positioner>
|
|
155
|
-
</Portal>
|
|
150
|
+
<Dialog.Backdrop />
|
|
151
|
+
<Dialog.Positioner>
|
|
152
|
+
<Dialog.Content>
|
|
153
|
+
<Dialog.Title>Project settings</Dialog.Title>
|
|
154
|
+
</Dialog.Content>
|
|
155
|
+
</Dialog.Positioner>
|
|
156
156
|
</Dialog.Root>
|
|
157
157
|
);
|
|
158
158
|
}
|
|
@@ -176,7 +176,7 @@ attributes for targeted styling. Theme values are regular CSS custom properties:
|
|
|
176
176
|
Library CSS is organized with cascade layers:
|
|
177
177
|
|
|
178
178
|
```css
|
|
179
|
-
@layer ui.reset, ui.tokens, ui.components;
|
|
179
|
+
@layer ui.reset, ui.tokens, ui.base, ui.components;
|
|
180
180
|
```
|
|
181
181
|
|
|
182
182
|
This keeps defaults predictable while still letting application styles override tokens,
|
|
@@ -190,7 +190,7 @@ QrCode, Select, Tabs, Toast, Tooltip, TreeView, and supporting layout and displa
|
|
|
190
190
|
|
|
191
191
|
## Documentation
|
|
192
192
|
|
|
193
|
-
- Documentation: https://moduix.
|
|
193
|
+
- Documentation: https://moduix.dev/
|
|
194
194
|
- npm package: https://www.npmjs.com/package/@moduix/react
|
|
195
195
|
- React package README: `packages/react/README.md`
|
|
196
196
|
- Docs app README: `apps/docs/README.md`
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
|
|
50
50
|
.tIMeYW_root {
|
|
51
51
|
box-sizing: border-box;
|
|
52
|
-
width: var(--accordion-width,
|
|
52
|
+
width: var(--accordion-width, 100%);
|
|
53
53
|
max-width: var(--accordion-max-width, 100%);
|
|
54
54
|
min-width: 0;
|
|
55
55
|
color: var(--accordion-color, var(--color-foreground));
|
|
@@ -187,4 +187,11 @@
|
|
|
187
187
|
width: var(--accordion-horizontal-content-width, 16rem);
|
|
188
188
|
}
|
|
189
189
|
}
|
|
190
|
+
|
|
191
|
+
.tIMeYW_itemBody {
|
|
192
|
+
gap: var(--accordion-item-body-gap, var(--spacing-3));
|
|
193
|
+
min-width: 0;
|
|
194
|
+
padding: var(--accordion-item-body-padding, var(--spacing-3));
|
|
195
|
+
display: grid;
|
|
196
|
+
}
|
|
190
197
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Accordion } from "@ark-ui/react/accordion";
|
|
1
|
+
import { Accordion, useAccordion } from "@ark-ui/react/accordion";
|
|
2
2
|
|
|
3
3
|
//#region src/components/accordion/Accordion.d.ts
|
|
4
4
|
declare const Accordion$1: import("react").ForwardRefExoticComponent<Omit<Accordion.RootProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>> & {
|
|
@@ -8,6 +8,7 @@ declare const Accordion$1: import("react").ForwardRefExoticComponent<Omit<Accord
|
|
|
8
8
|
ItemTrigger: import("react").ForwardRefExoticComponent<Omit<Accordion.ItemTriggerProps & import("react").RefAttributes<HTMLButtonElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
|
|
9
9
|
ItemIndicator: import("react").ForwardRefExoticComponent<Omit<Accordion.ItemIndicatorProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
10
10
|
ItemContent: import("react").ForwardRefExoticComponent<Omit<Accordion.ItemContentProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
11
|
+
ItemBody: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & import("@ark-ui/react/factory").PolymorphicProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
11
12
|
};
|
|
12
13
|
//#endregion
|
|
13
|
-
export { Accordion$1 as Accordion };
|
|
14
|
+
export { Accordion$1 as Accordion, useAccordion };
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { PlusIcon } from "../../lib/moduix/icons/ui/Icons.js";
|
|
2
1
|
import { normalizeClassName } from "../../lib/moduix/normalizeClassName.js";
|
|
2
|
+
import { PlusIcon } from "../../lib/moduix/icons/ui/Icons.js";
|
|
3
3
|
import Accordion_module_default from "./Accordion.module.js";
|
|
4
|
-
import {
|
|
4
|
+
import { ark } from "@ark-ui/react/factory";
|
|
5
5
|
import { clsx } from "clsx";
|
|
6
6
|
import { forwardRef } from "react";
|
|
7
|
-
import {
|
|
7
|
+
import { jsx } from "react/jsx-runtime";
|
|
8
|
+
import { Accordion, useAccordion } from "@ark-ui/react/accordion";
|
|
8
9
|
//#region src/components/accordion/Accordion.tsx
|
|
9
10
|
const AccordionRoot = forwardRef(function AccordionRoot({ className, ...props }, ref) {
|
|
10
11
|
return /* @__PURE__ */ jsx(Accordion.Root, {
|
|
@@ -55,13 +56,24 @@ const AccordionItemContent = forwardRef(function AccordionItemContent({ classNam
|
|
|
55
56
|
...props
|
|
56
57
|
});
|
|
57
58
|
});
|
|
59
|
+
const AccordionItemBody = forwardRef(function AccordionItemBody({ className, ...props }, ref) {
|
|
60
|
+
return /* @__PURE__ */ jsx(ark.div, {
|
|
61
|
+
ref,
|
|
62
|
+
"data-scope": "accordion",
|
|
63
|
+
"data-part": "item-body",
|
|
64
|
+
"data-slot": "accordion-item-body",
|
|
65
|
+
className: clsx(Accordion_module_default.itemBody, normalizeClassName(className)),
|
|
66
|
+
...props
|
|
67
|
+
});
|
|
68
|
+
});
|
|
58
69
|
const Accordion$1 = Object.assign(AccordionRoot, {
|
|
59
70
|
Root: AccordionRoot,
|
|
60
71
|
RootProvider: AccordionRootProvider,
|
|
61
72
|
Item: AccordionItem,
|
|
62
73
|
ItemTrigger: AccordionItemTrigger,
|
|
63
74
|
ItemIndicator: AccordionItemIndicator,
|
|
64
|
-
ItemContent: AccordionItemContent
|
|
75
|
+
ItemContent: AccordionItemContent,
|
|
76
|
+
ItemBody: AccordionItemBody
|
|
65
77
|
});
|
|
66
78
|
//#endregion
|
|
67
|
-
export { Accordion$1 as Accordion };
|
|
79
|
+
export { Accordion$1 as Accordion, useAccordion };
|
|
@@ -6,6 +6,7 @@ var Accordion_module_default = {
|
|
|
6
6
|
"accordion-item-content-open": "tIMeYW_accordion-item-content-open",
|
|
7
7
|
"accordion-item-content-open-horizontal": "tIMeYW_accordion-item-content-open-horizontal",
|
|
8
8
|
"item": "tIMeYW_item",
|
|
9
|
+
"itemBody": "tIMeYW_itemBody",
|
|
9
10
|
"itemContent": "tIMeYW_itemContent",
|
|
10
11
|
"itemIndicator": "tIMeYW_itemIndicator",
|
|
11
12
|
"itemTrigger": "tIMeYW_itemTrigger",
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { Accordion } from "./Accordion.js";
|
|
2
|
-
export { Accordion };
|
|
1
|
+
import { Accordion, useAccordion } from "./Accordion.js";
|
|
2
|
+
export { Accordion, useAccordion };
|
|
@@ -2,19 +2,24 @@
|
|
|
2
2
|
.ZXk2dW_root {
|
|
3
3
|
box-sizing: border-box;
|
|
4
4
|
align-items: start;
|
|
5
|
-
gap: var(--alert-gap, var(--spacing-
|
|
5
|
+
row-gap: var(--alert-content-gap, var(--spacing-1));
|
|
6
|
+
column-gap: var(--alert-gap, var(--spacing-3));
|
|
6
7
|
border: var(--alert-border-width, var(--border-width-sm)) solid
|
|
7
8
|
var(--alert-border-color, var(--alert-border-color-default, var(--color-border)));
|
|
8
9
|
border-radius: var(--alert-radius, var(--radius-lg));
|
|
9
10
|
width: 100%;
|
|
10
11
|
min-width: 0;
|
|
11
|
-
padding: var(--alert-padding, var(--spacing-
|
|
12
|
+
padding: var(--alert-padding, var(--spacing-3));
|
|
12
13
|
background-color: var(--alert-bg, var(--alert-bg-default, var(--color-card)));
|
|
13
14
|
color: var(--alert-color, var(--alert-color-default, var(--color-card-foreground)));
|
|
14
15
|
box-shadow: var(--alert-shadow, none);
|
|
15
16
|
grid-template-columns: auto minmax(0, 1fr);
|
|
16
17
|
display: grid;
|
|
17
18
|
|
|
19
|
+
& > [data-part="title"], & > [data-part="description"] {
|
|
20
|
+
grid-column: 2;
|
|
21
|
+
}
|
|
22
|
+
|
|
18
23
|
&[data-status="neutral"] {
|
|
19
24
|
--alert-bg-default: var(--color-card);
|
|
20
25
|
--alert-border-color-default: var(--color-border);
|
|
@@ -50,9 +55,11 @@
|
|
|
50
55
|
--alert-indicator-color-default: var(--color-destructive);
|
|
51
56
|
}
|
|
52
57
|
|
|
53
|
-
&:not(:has([data-part="indicator"])) {
|
|
54
|
-
|
|
55
|
-
|
|
58
|
+
&:not(:has( > [data-part="indicator"])) {
|
|
59
|
+
grid-template-columns: minmax(0, 1fr);
|
|
60
|
+
|
|
61
|
+
& > [data-part="content"], & > [data-part="title"], & > [data-part="description"] {
|
|
62
|
+
grid-column: 1;
|
|
56
63
|
}
|
|
57
64
|
}
|
|
58
65
|
}
|
|
@@ -105,4 +112,11 @@
|
|
|
105
112
|
margin-bottom: 0;
|
|
106
113
|
}
|
|
107
114
|
}
|
|
115
|
+
|
|
116
|
+
.ZXk2dW_actions {
|
|
117
|
+
gap: var(--alert-actions-gap, var(--spacing-2));
|
|
118
|
+
flex-wrap: wrap;
|
|
119
|
+
margin-block-start: var(--alert-actions-margin-top, var(--spacing-2));
|
|
120
|
+
display: flex;
|
|
121
|
+
}
|
|
108
122
|
}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
//#region src/components/alert/Alert.d.ts
|
|
2
|
+
type AlertStatus = 'neutral' | 'info' | 'success' | 'warning' | 'error';
|
|
2
3
|
declare const Alert: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & import("@ark-ui/react/factory").PolymorphicProps & {
|
|
3
|
-
status?:
|
|
4
|
+
status?: AlertStatus;
|
|
4
5
|
} & import("react").RefAttributes<HTMLDivElement>> & {
|
|
5
6
|
Root: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & import("@ark-ui/react/factory").PolymorphicProps & {
|
|
6
|
-
status?:
|
|
7
|
+
status?: AlertStatus;
|
|
7
8
|
} & import("react").RefAttributes<HTMLDivElement>>;
|
|
8
9
|
Indicator: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & import("@ark-ui/react/factory").PolymorphicProps & import("react").RefAttributes<HTMLSpanElement>>;
|
|
9
10
|
Content: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & import("@ark-ui/react/factory").PolymorphicProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
10
|
-
Title: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<
|
|
11
|
+
Title: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, "ref"> & import("@ark-ui/react/factory").PolymorphicProps & import("react").RefAttributes<HTMLParagraphElement>>;
|
|
11
12
|
Description: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & import("@ark-ui/react/factory").PolymorphicProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
13
|
+
Actions: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & import("@ark-ui/react/factory").PolymorphicProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
12
14
|
};
|
|
13
15
|
//#endregion
|
|
14
16
|
export { Alert };
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { normalizeClassName } from "../../lib/moduix/normalizeClassName.js";
|
|
2
2
|
import Alert_module_default from "./Alert.module.js";
|
|
3
|
-
import { jsx } from "react/jsx-runtime";
|
|
4
3
|
import { ark } from "@ark-ui/react/factory";
|
|
5
4
|
import { clsx } from "clsx";
|
|
6
5
|
import { forwardRef } from "react";
|
|
6
|
+
import { jsx } from "react/jsx-runtime";
|
|
7
7
|
//#region src/components/alert/Alert.tsx
|
|
8
|
-
const AlertRoot = forwardRef(function AlertRoot({ className, role, status = "neutral", ...props }, ref) {
|
|
8
|
+
const AlertRoot = forwardRef(function AlertRoot({ children, className, role, status = "neutral", ...props }, ref) {
|
|
9
9
|
return /* @__PURE__ */ jsx(ark.div, {
|
|
10
10
|
ref,
|
|
11
11
|
role: role ?? (status === "error" ? "alert" : "status"),
|
|
@@ -14,7 +14,8 @@ const AlertRoot = forwardRef(function AlertRoot({ className, role, status = "neu
|
|
|
14
14
|
"data-slot": "alert-root",
|
|
15
15
|
"data-status": status,
|
|
16
16
|
className: clsx(Alert_module_default.root, normalizeClassName(className)),
|
|
17
|
-
...props
|
|
17
|
+
...props,
|
|
18
|
+
children
|
|
18
19
|
});
|
|
19
20
|
});
|
|
20
21
|
const AlertIndicator = forwardRef(function AlertIndicator({ className, ...props }, ref) {
|
|
@@ -39,7 +40,7 @@ const AlertContent = forwardRef(function AlertContent({ className, ...props }, r
|
|
|
39
40
|
});
|
|
40
41
|
});
|
|
41
42
|
const AlertTitle = forwardRef(function AlertTitle({ className, ...props }, ref) {
|
|
42
|
-
return /* @__PURE__ */ jsx(ark.
|
|
43
|
+
return /* @__PURE__ */ jsx(ark.p, {
|
|
43
44
|
ref,
|
|
44
45
|
"data-scope": "alert",
|
|
45
46
|
"data-part": "title",
|
|
@@ -58,12 +59,23 @@ const AlertDescription = forwardRef(function AlertDescription({ className, ...pr
|
|
|
58
59
|
...props
|
|
59
60
|
});
|
|
60
61
|
});
|
|
62
|
+
const AlertActions = forwardRef(function AlertActions({ className, ...props }, ref) {
|
|
63
|
+
return /* @__PURE__ */ jsx(ark.div, {
|
|
64
|
+
ref,
|
|
65
|
+
"data-scope": "alert",
|
|
66
|
+
"data-part": "actions",
|
|
67
|
+
"data-slot": "alert-actions",
|
|
68
|
+
className: clsx(Alert_module_default.actions, normalizeClassName(className)),
|
|
69
|
+
...props
|
|
70
|
+
});
|
|
71
|
+
});
|
|
61
72
|
const Alert = Object.assign(AlertRoot, {
|
|
62
73
|
Root: AlertRoot,
|
|
63
74
|
Indicator: AlertIndicator,
|
|
64
75
|
Content: AlertContent,
|
|
65
76
|
Title: AlertTitle,
|
|
66
|
-
Description: AlertDescription
|
|
77
|
+
Description: AlertDescription,
|
|
78
|
+
Actions: AlertActions
|
|
67
79
|
});
|
|
68
80
|
//#endregion
|
|
69
81
|
export { Alert };
|
|
@@ -1,16 +1,32 @@
|
|
|
1
|
+
import { ComponentProps } from "react";
|
|
1
2
|
import { AngleSlider } from "@ark-ui/react/angle-slider";
|
|
2
3
|
|
|
3
4
|
//#region src/components/angle-slider/AngleSlider.d.ts
|
|
5
|
+
declare function AngleSliderMarks({
|
|
6
|
+
values,
|
|
7
|
+
...props
|
|
8
|
+
}: ComponentProps<typeof AngleSlider.MarkerGroup> & {
|
|
9
|
+
values: readonly number[];
|
|
10
|
+
}): import("react").JSX.Element;
|
|
11
|
+
declare function AngleSliderDial({
|
|
12
|
+
children,
|
|
13
|
+
thumbClassName,
|
|
14
|
+
...props
|
|
15
|
+
}: ComponentProps<typeof AngleSlider.Control> & {
|
|
16
|
+
thumbClassName?: string;
|
|
17
|
+
}): import("react").JSX.Element;
|
|
4
18
|
declare const AngleSlider$1: import("react").ForwardRefExoticComponent<Omit<AngleSlider.RootProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>> & {
|
|
5
19
|
Root: import("react").ForwardRefExoticComponent<Omit<AngleSlider.RootProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
6
20
|
RootProvider: import("react").ForwardRefExoticComponent<Omit<AngleSlider.RootProviderProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
7
21
|
Label: import("react").ForwardRefExoticComponent<Omit<AngleSlider.LabelProps & import("react").RefAttributes<HTMLLabelElement>, "ref"> & import("react").RefAttributes<HTMLLabelElement>>;
|
|
8
22
|
Control: import("react").ForwardRefExoticComponent<Omit<AngleSlider.ControlProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
23
|
+
Dial: typeof AngleSliderDial;
|
|
9
24
|
Thumb: import("react").ForwardRefExoticComponent<Omit<AngleSlider.ThumbProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
10
25
|
MarkerGroup: import("react").ForwardRefExoticComponent<Omit<AngleSlider.MarkerGroupProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
11
26
|
Marker: import("react").ForwardRefExoticComponent<Omit<AngleSlider.MarkerProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
27
|
+
Marks: typeof AngleSliderMarks;
|
|
12
28
|
ValueText: import("react").ForwardRefExoticComponent<Omit<AngleSlider.ValueTextProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
13
|
-
HiddenInput: import("react").ForwardRefExoticComponent<Omit<AngleSlider.HiddenInputProps & import("react").RefAttributes<HTMLInputElement>, "ref"> & import("react").RefAttributes<HTMLInputElement>>;
|
|
14
29
|
};
|
|
30
|
+
declare const useAngleSlider$1: (props?: import("@ark-ui/react/angle-slider").UseAngleSliderProps) => import("@ark-ui/react/angle-slider").UseAngleSliderReturn;
|
|
15
31
|
//#endregion
|
|
16
|
-
export { AngleSlider$1 as AngleSlider };
|
|
32
|
+
export { AngleSlider$1 as AngleSlider, useAngleSlider$1 as useAngleSlider };
|
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
import { normalizeClassName } from "../../lib/moduix/normalizeClassName.js";
|
|
2
2
|
import AngleSlider_module_default from "./AngleSlider.module.js";
|
|
3
|
-
import { jsx } from "react/jsx-runtime";
|
|
4
3
|
import { clsx } from "clsx";
|
|
5
|
-
import { forwardRef } from "react";
|
|
6
|
-
import {
|
|
4
|
+
import { Children, cloneElement, forwardRef } from "react";
|
|
5
|
+
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
+
import { AngleSlider, useAngleSlider } from "@ark-ui/react/angle-slider";
|
|
7
7
|
//#region src/components/angle-slider/AngleSlider.tsx
|
|
8
|
-
const AngleSliderRoot = forwardRef(function AngleSliderRoot({ className, ...props }, ref) {
|
|
8
|
+
const AngleSliderRoot = forwardRef(function AngleSliderRoot({ asChild, children, className, ...props }, ref) {
|
|
9
9
|
return /* @__PURE__ */ jsx(AngleSlider.Root, {
|
|
10
10
|
ref,
|
|
11
11
|
"data-slot": "angle-slider-root",
|
|
12
12
|
className: clsx(AngleSlider_module_default.root, normalizeClassName(className)),
|
|
13
|
-
|
|
13
|
+
asChild,
|
|
14
|
+
...props,
|
|
15
|
+
children: withHiddenInput(children, asChild)
|
|
14
16
|
});
|
|
15
17
|
});
|
|
16
18
|
const AngleSliderLabel = forwardRef(function AngleSliderLabel({ className, ...props }, ref) {
|
|
@@ -21,14 +23,22 @@ const AngleSliderLabel = forwardRef(function AngleSliderLabel({ className, ...pr
|
|
|
21
23
|
...props
|
|
22
24
|
});
|
|
23
25
|
});
|
|
24
|
-
const AngleSliderRootProvider = forwardRef(function AngleSliderRootProvider({ className, ...props }, ref) {
|
|
26
|
+
const AngleSliderRootProvider = forwardRef(function AngleSliderRootProvider({ asChild, children, className, ...props }, ref) {
|
|
25
27
|
return /* @__PURE__ */ jsx(AngleSlider.RootProvider, {
|
|
26
28
|
ref,
|
|
27
29
|
"data-slot": "angle-slider-root-provider",
|
|
28
30
|
className: clsx(AngleSlider_module_default.root, normalizeClassName(className)),
|
|
29
|
-
|
|
31
|
+
asChild,
|
|
32
|
+
...props,
|
|
33
|
+
children: withHiddenInput(children, asChild)
|
|
30
34
|
});
|
|
31
35
|
});
|
|
36
|
+
function withHiddenInput(children, asChild) {
|
|
37
|
+
const hiddenInput = /* @__PURE__ */ jsx(AngleSlider.HiddenInput, { "data-slot": "angle-slider-hidden-input" });
|
|
38
|
+
if (!asChild) return /* @__PURE__ */ jsxs(Fragment$1, { children: [children, hiddenInput] });
|
|
39
|
+
const child = Children.only(children);
|
|
40
|
+
return cloneElement(child, {}, child.props.children, hiddenInput);
|
|
41
|
+
}
|
|
32
42
|
const AngleSliderControl = forwardRef(function AngleSliderControl({ className, ...props }, ref) {
|
|
33
43
|
return /* @__PURE__ */ jsx(AngleSlider.Control, {
|
|
34
44
|
ref,
|
|
@@ -61,6 +71,18 @@ const AngleSliderMarker = forwardRef(function AngleSliderMarker({ className, ...
|
|
|
61
71
|
...props
|
|
62
72
|
});
|
|
63
73
|
});
|
|
74
|
+
function AngleSliderMarks({ values, ...props }) {
|
|
75
|
+
return /* @__PURE__ */ jsx(AngleSliderMarkerGroup, {
|
|
76
|
+
...props,
|
|
77
|
+
children: values.map((value) => /* @__PURE__ */ jsx(AngleSliderMarker, { value }, value))
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
function AngleSliderDial({ children, thumbClassName, ...props }) {
|
|
81
|
+
return /* @__PURE__ */ jsxs(AngleSliderControl, {
|
|
82
|
+
...props,
|
|
83
|
+
children: [children, /* @__PURE__ */ jsx(AngleSliderThumb, { className: thumbClassName })]
|
|
84
|
+
});
|
|
85
|
+
}
|
|
64
86
|
const AngleSliderValueText = forwardRef(function AngleSliderValueText({ className, ...props }, ref) {
|
|
65
87
|
return /* @__PURE__ */ jsx(AngleSlider.ValueText, {
|
|
66
88
|
ref,
|
|
@@ -69,24 +91,18 @@ const AngleSliderValueText = forwardRef(function AngleSliderValueText({ classNam
|
|
|
69
91
|
...props
|
|
70
92
|
});
|
|
71
93
|
});
|
|
72
|
-
const AngleSliderHiddenInput = forwardRef(function AngleSliderHiddenInput({ className, ...props }, ref) {
|
|
73
|
-
return /* @__PURE__ */ jsx(AngleSlider.HiddenInput, {
|
|
74
|
-
ref,
|
|
75
|
-
"data-slot": "angle-slider-hidden-input",
|
|
76
|
-
className: normalizeClassName(className),
|
|
77
|
-
...props
|
|
78
|
-
});
|
|
79
|
-
});
|
|
80
94
|
const AngleSlider$1 = Object.assign(AngleSliderRoot, {
|
|
81
95
|
Root: AngleSliderRoot,
|
|
82
96
|
RootProvider: AngleSliderRootProvider,
|
|
83
97
|
Label: AngleSliderLabel,
|
|
84
98
|
Control: AngleSliderControl,
|
|
99
|
+
Dial: AngleSliderDial,
|
|
85
100
|
Thumb: AngleSliderThumb,
|
|
86
101
|
MarkerGroup: AngleSliderMarkerGroup,
|
|
87
102
|
Marker: AngleSliderMarker,
|
|
88
|
-
|
|
89
|
-
|
|
103
|
+
Marks: AngleSliderMarks,
|
|
104
|
+
ValueText: AngleSliderValueText
|
|
90
105
|
});
|
|
106
|
+
const useAngleSlider$1 = useAngleSlider;
|
|
91
107
|
//#endregion
|
|
92
|
-
export { AngleSlider$1 as AngleSlider };
|
|
108
|
+
export { AngleSlider$1 as AngleSlider, useAngleSlider$1 as useAngleSlider };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { AngleSlider } from "./AngleSlider.js";
|
|
2
|
-
export { AngleSlider };
|
|
1
|
+
import { AngleSlider, useAngleSlider } from "./AngleSlider.js";
|
|
2
|
+
export { AngleSlider, useAngleSlider };
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
@layer ui.components {
|
|
2
2
|
.iOVgxW_root {
|
|
3
|
-
|
|
3
|
+
--aspect-ratio-value: 1;
|
|
4
4
|
width: 100%;
|
|
5
|
+
aspect-ratio: var(--aspect-ratio-value);
|
|
6
|
+
border-radius: var(--aspect-ratio-radius, var(--radius-md));
|
|
5
7
|
position: relative;
|
|
6
8
|
overflow: hidden;
|
|
7
9
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { normalizeClassName } from "../../lib/moduix/normalizeClassName.js";
|
|
2
2
|
import AspectRatio_module_default from "./AspectRatio.module.js";
|
|
3
|
-
import { jsx } from "react/jsx-runtime";
|
|
4
3
|
import { ark } from "@ark-ui/react/factory";
|
|
5
4
|
import { clsx } from "clsx";
|
|
6
5
|
import { forwardRef } from "react";
|
|
6
|
+
import { jsx } from "react/jsx-runtime";
|
|
7
7
|
//#region src/components/aspect-ratio/AspectRatio.tsx
|
|
8
8
|
const AspectRatioRoot = forwardRef(function AspectRatioRoot({ ratio, className, style, ...props }, ref) {
|
|
9
9
|
return /* @__PURE__ */ jsx(ark.div, {
|
|
@@ -13,7 +13,7 @@ const AspectRatioRoot = forwardRef(function AspectRatioRoot({ ratio, className,
|
|
|
13
13
|
"data-slot": "aspect-ratio-root",
|
|
14
14
|
className: clsx(AspectRatio_module_default.root, normalizeClassName(className)),
|
|
15
15
|
style: {
|
|
16
|
-
|
|
16
|
+
"--aspect-ratio-value": ratio,
|
|
17
17
|
...style
|
|
18
18
|
},
|
|
19
19
|
...props
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ComponentProps } from "react";
|
|
2
|
-
import { Avatar } from "@ark-ui/react/avatar";
|
|
2
|
+
import { Avatar, useAvatar, useAvatarContext } from "@ark-ui/react/avatar";
|
|
3
3
|
|
|
4
4
|
//#region src/components/avatar/Avatar.d.ts
|
|
5
5
|
type AvatarSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
|
|
@@ -9,11 +9,14 @@ type AvatarRootProps = ComponentProps<typeof Avatar.Root> & {
|
|
|
9
9
|
type AvatarRootProviderProps = ComponentProps<typeof Avatar.RootProvider> & {
|
|
10
10
|
size?: AvatarSize;
|
|
11
11
|
};
|
|
12
|
+
type AvatarFallbackProps = ComponentProps<typeof Avatar.Fallback> & {
|
|
13
|
+
name?: string;
|
|
14
|
+
};
|
|
12
15
|
declare const Avatar$1: import("react").ForwardRefExoticComponent<Omit<AvatarRootProps, "ref"> & import("react").RefAttributes<HTMLDivElement>> & {
|
|
13
16
|
Root: import("react").ForwardRefExoticComponent<Omit<AvatarRootProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
14
17
|
RootProvider: import("react").ForwardRefExoticComponent<Omit<AvatarRootProviderProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
15
18
|
Image: import("react").ForwardRefExoticComponent<Omit<Avatar.ImageProps & import("react").RefAttributes<HTMLImageElement>, "ref"> & import("react").RefAttributes<HTMLImageElement>>;
|
|
16
|
-
Fallback: import("react").ForwardRefExoticComponent<Omit<
|
|
19
|
+
Fallback: import("react").ForwardRefExoticComponent<Omit<AvatarFallbackProps, "ref"> & import("react").RefAttributes<HTMLSpanElement>>;
|
|
17
20
|
};
|
|
18
21
|
//#endregion
|
|
19
|
-
export { Avatar$1 as Avatar };
|
|
22
|
+
export { Avatar$1 as Avatar, useAvatar, useAvatarContext };
|
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
import { normalizeClassName } from "../../lib/moduix/normalizeClassName.js";
|
|
2
2
|
import Avatar_module_default from "./Avatar.module.js";
|
|
3
|
-
import { jsx } from "react/jsx-runtime";
|
|
4
3
|
import { clsx } from "clsx";
|
|
5
4
|
import { forwardRef } from "react";
|
|
6
|
-
import {
|
|
5
|
+
import { jsx } from "react/jsx-runtime";
|
|
6
|
+
import { Avatar, useAvatar, useAvatarContext } from "@ark-ui/react/avatar";
|
|
7
7
|
//#region src/components/avatar/Avatar.tsx
|
|
8
|
+
const getInitials = (name) => {
|
|
9
|
+
const parts = name.trim().split(/\s+/).filter(Boolean);
|
|
10
|
+
const firstName = parts[0] ?? "";
|
|
11
|
+
const lastName = parts.length > 1 ? parts[parts.length - 1] : "";
|
|
12
|
+
return firstName && lastName ? `${firstName[0]}${lastName[0]}` : firstName[0] ?? "";
|
|
13
|
+
};
|
|
8
14
|
const AvatarRoot = forwardRef(function AvatarRoot({ className, size, ...props }, ref) {
|
|
9
15
|
return /* @__PURE__ */ jsx(Avatar.Root, {
|
|
10
16
|
ref,
|
|
@@ -31,12 +37,13 @@ const AvatarImage = forwardRef(function AvatarImage({ className, ...props }, ref
|
|
|
31
37
|
...props
|
|
32
38
|
});
|
|
33
39
|
});
|
|
34
|
-
const AvatarFallback = forwardRef(function AvatarFallback({ className, ...props }, ref) {
|
|
40
|
+
const AvatarFallback = forwardRef(function AvatarFallback({ children, className, name, ...props }, ref) {
|
|
35
41
|
return /* @__PURE__ */ jsx(Avatar.Fallback, {
|
|
36
42
|
ref,
|
|
37
43
|
"data-slot": "avatar-fallback",
|
|
38
44
|
className: clsx(Avatar_module_default.fallback, normalizeClassName(className)),
|
|
39
|
-
...props
|
|
45
|
+
...props,
|
|
46
|
+
children: children ?? (name ? getInitials(name) : void 0)
|
|
40
47
|
});
|
|
41
48
|
});
|
|
42
49
|
const Avatar$1 = Object.assign(AvatarRoot, {
|
|
@@ -46,4 +53,4 @@ const Avatar$1 = Object.assign(AvatarRoot, {
|
|
|
46
53
|
Fallback: AvatarFallback
|
|
47
54
|
});
|
|
48
55
|
//#endregion
|
|
49
|
-
export { Avatar$1 as Avatar };
|
|
56
|
+
export { Avatar$1 as Avatar, useAvatar, useAvatarContext };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { Avatar } from "./Avatar.js";
|
|
2
|
-
export { Avatar };
|
|
1
|
+
import { Avatar, useAvatar, useAvatarContext } from "./Avatar.js";
|
|
2
|
+
export { Avatar, useAvatar, useAvatarContext };
|
|
@@ -29,6 +29,34 @@
|
|
|
29
29
|
display: inline-flex;
|
|
30
30
|
overflow: hidden;
|
|
31
31
|
|
|
32
|
+
&:is(a, button, [role="button"]) {
|
|
33
|
+
cursor: pointer;
|
|
34
|
+
|
|
35
|
+
&:focus-visible {
|
|
36
|
+
outline: var(--border-width-md) solid var(--color-ring);
|
|
37
|
+
outline-offset: var(--spacing-1);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
&[data-variant="default"], &[data-variant="secondary"], &[data-variant="destructive"] {
|
|
41
|
+
&:hover {
|
|
42
|
+
opacity: .9;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
&[data-variant="outline"], &[data-variant="ghost"] {
|
|
47
|
+
&:hover {
|
|
48
|
+
border-color: var(--badge-border-color, var(--color-primary));
|
|
49
|
+
color: var(--badge-color, var(--color-primary));
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
&[data-variant="link"] {
|
|
54
|
+
&:hover {
|
|
55
|
+
text-decoration-color: currentColor;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
|
|
32
60
|
& > svg {
|
|
33
61
|
width: var(--badge-icon-size, .75rem);
|
|
34
62
|
height: var(--badge-icon-size, .75rem);
|
|
@@ -46,14 +74,29 @@
|
|
|
46
74
|
color: var(--badge-color, var(--color-primary-foreground));
|
|
47
75
|
}
|
|
48
76
|
|
|
49
|
-
&[data-variant="outline"], &[data-variant="ghost"] {
|
|
77
|
+
&[data-variant="outline"], &[data-variant="ghost"], &[data-variant="link"] {
|
|
50
78
|
background-color: var(--badge-bg, transparent);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
&[data-variant="outline"], &[data-variant="ghost"] {
|
|
51
82
|
color: var(--badge-color, var(--color-foreground));
|
|
52
83
|
}
|
|
53
84
|
|
|
54
85
|
&[data-variant="outline"] {
|
|
55
86
|
border-color: var(--badge-border-color, var(--color-border));
|
|
56
87
|
}
|
|
88
|
+
|
|
89
|
+
&[data-variant="link"] {
|
|
90
|
+
min-height: auto;
|
|
91
|
+
color: var(--badge-color, var(--color-primary));
|
|
92
|
+
text-decoration: underline;
|
|
93
|
+
text-decoration-color: color-mix(in oklab, currentColor 55%, transparent);
|
|
94
|
+
text-underline-offset: .15em;
|
|
95
|
+
border-color: #0000;
|
|
96
|
+
padding-inline: 0;
|
|
97
|
+
text-decoration-thickness: from-font;
|
|
98
|
+
overflow: visible;
|
|
99
|
+
}
|
|
57
100
|
}
|
|
58
101
|
|
|
59
102
|
.NXa69G_dot {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
//#region src/components/badge/Badge.d.ts
|
|
2
2
|
declare const Badge: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & import("@ark-ui/react/factory").PolymorphicProps & {
|
|
3
|
-
variant?: "default" | "secondary" | "destructive" | "outline" | "ghost";
|
|
3
|
+
variant?: "default" | "secondary" | "destructive" | "outline" | "ghost" | "link";
|
|
4
4
|
} & import("react").RefAttributes<HTMLSpanElement>> & {
|
|
5
5
|
Root: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & import("@ark-ui/react/factory").PolymorphicProps & {
|
|
6
|
-
variant?: "default" | "secondary" | "destructive" | "outline" | "ghost";
|
|
6
|
+
variant?: "default" | "secondary" | "destructive" | "outline" | "ghost" | "link";
|
|
7
7
|
} & import("react").RefAttributes<HTMLSpanElement>>;
|
|
8
8
|
Dot: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & import("@ark-ui/react/factory").PolymorphicProps & import("react").RefAttributes<HTMLSpanElement>>;
|
|
9
9
|
};
|