@moduix/solid-tailwind 1.0.0 → 1.1.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/dist/components/accordion/Accordion.js +19 -13
- package/dist/components/accordion/Accordion.jsx +7 -7
- package/dist/components/alert/Alert.js +19 -13
- package/dist/components/alert/Alert.jsx +7 -7
- package/dist/components/angle-slider/AngleSlider.d.ts +2 -6
- package/dist/components/angle-slider/AngleSlider.js +21 -16
- package/dist/components/angle-slider/AngleSlider.jsx +10 -11
- package/dist/components/avatar/Avatar.js +10 -7
- package/dist/components/avatar/Avatar.jsx +6 -6
- package/dist/components/bleed/Bleed.js +1 -1
- package/dist/components/bleed/Bleed.jsx +1 -1
- package/dist/components/button/Button.js +1 -6
- package/dist/components/button/Button.jsx +2 -4
- package/dist/components/card/Card.js +54 -44
- package/dist/components/card/Card.jsx +12 -12
- package/dist/components/carousel/Carousel.d.ts +1 -1
- package/dist/components/carousel/Carousel.js +32 -23
- package/dist/components/carousel/Carousel.jsx +12 -13
- package/dist/components/checkbox/Checkbox.js +16 -14
- package/dist/components/checkbox/Checkbox.jsx +6 -6
- package/dist/components/clipboard/Clipboard.js +28 -17
- package/dist/components/clipboard/Clipboard.jsx +12 -11
- package/dist/components/collapsible/Collapsible.js +16 -11
- package/dist/components/collapsible/Collapsible.jsx +6 -6
- package/dist/components/color-picker/ColorPicker.js +69 -48
- package/dist/components/color-picker/ColorPicker.jsx +28 -28
- package/dist/components/combobox/Combobox.js +44 -31
- package/dist/components/combobox/Combobox.jsx +18 -18
- package/dist/components/command-palette/CommandPalette.js +72 -53
- package/dist/components/command-palette/CommandPalette.jsx +29 -32
- package/dist/components/container/Container.js +5 -5
- package/dist/components/container/Container.jsx +5 -5
- package/dist/components/date-input/DateInput.js +18 -12
- package/dist/components/date-input/DateInput.jsx +7 -7
- package/dist/components/date-picker/DatePicker.js +73 -51
- package/dist/components/date-picker/DatePicker.jsx +29 -29
- package/dist/components/dialog/Dialog.js +30 -20
- package/dist/components/dialog/Dialog.jsx +10 -10
- package/dist/components/drawer/Drawer.js +45 -30
- package/dist/components/drawer/Drawer.jsx +15 -15
- package/dist/components/editable/Editable.js +24 -17
- package/dist/components/editable/Editable.jsx +10 -10
- package/dist/components/empty/Empty.js +1 -1
- package/dist/components/empty/Empty.jsx +1 -1
- package/dist/components/file-upload/FileUpload.js +39 -28
- package/dist/components/file-upload/FileUpload.jsx +17 -17
- package/dist/components/floating-panel/FloatingPanel.js +35 -23
- package/dist/components/floating-panel/FloatingPanel.jsx +12 -12
- package/dist/components/hover-card/HoverCard.js +16 -11
- package/dist/components/hover-card/HoverCard.jsx +6 -6
- package/dist/components/image-cropper/ImageCropper.js +21 -14
- package/dist/components/image-cropper/ImageCropper.jsx +7 -7
- package/dist/components/input-group/InputGroup.js +3 -2
- package/dist/components/input-group/InputGroup.jsx +3 -2
- package/dist/components/json-tree-view/JsonTreeView.js +1 -1
- package/dist/components/json-tree-view/JsonTreeView.jsx +1 -1
- package/dist/components/lightbox/Lightbox.d.ts +1 -0
- package/dist/components/lightbox/Lightbox.js +41 -27
- package/dist/components/lightbox/Lightbox.jsx +13 -12
- package/dist/components/listbox/Listbox.js +48 -32
- package/dist/components/listbox/Listbox.jsx +17 -17
- package/dist/components/marquee/Marquee.js +18 -12
- package/dist/components/marquee/Marquee.jsx +9 -9
- package/dist/components/menu/Menu.js +66 -44
- package/dist/components/menu/Menu.jsx +28 -28
- package/dist/components/navigation-menu/NavigationMenu.js +36 -24
- package/dist/components/navigation-menu/NavigationMenu.jsx +12 -12
- package/dist/components/number-input/NumberInput.js +19 -14
- package/dist/components/number-input/NumberInput.jsx +9 -9
- package/dist/components/pagination/Pagination.js +10 -9
- package/dist/components/pagination/Pagination.jsx +8 -8
- package/dist/components/password-input/PasswordInput.js +16 -11
- package/dist/components/password-input/PasswordInput.jsx +6 -6
- package/dist/components/pin-input/PinInput.js +15 -10
- package/dist/components/pin-input/PinInput.jsx +6 -6
- package/dist/components/popover/Popover.js +37 -25
- package/dist/components/popover/Popover.jsx +13 -13
- package/dist/components/progress-circular/ProgressCircular.js +18 -13
- package/dist/components/progress-circular/ProgressCircular.jsx +8 -8
- package/dist/components/progress-linear/ProgressLinear.js +17 -12
- package/dist/components/progress-linear/ProgressLinear.jsx +7 -7
- package/dist/components/qr-code/QrCode.js +8 -7
- package/dist/components/qr-code/QrCode.jsx +6 -6
- package/dist/components/rating-group/RatingGroup.js +15 -10
- package/dist/components/rating-group/RatingGroup.jsx +6 -6
- package/dist/components/segment-group/SegmentGroup.js +17 -12
- package/dist/components/segment-group/SegmentGroup.jsx +7 -7
- package/dist/components/select/Select.js +50 -35
- package/dist/components/select/Select.jsx +20 -20
- package/dist/components/sidebar/Sidebar.js +72 -43
- package/dist/components/sidebar/Sidebar.jsx +34 -27
- package/dist/components/signature-pad/SignaturePad.js +16 -12
- package/dist/components/signature-pad/SignaturePad.jsx +8 -8
- package/dist/components/slider/Slider.js +29 -20
- package/dist/components/slider/Slider.jsx +11 -11
- package/dist/components/split-button/SplitButton.d.ts +4 -3
- package/dist/components/split-button/SplitButton.js +20 -9
- package/dist/components/split-button/SplitButton.jsx +13 -7
- package/dist/components/splitter/Splitter.js +13 -9
- package/dist/components/splitter/Splitter.jsx +5 -5
- package/dist/components/steps/Steps.js +34 -23
- package/dist/components/steps/Steps.jsx +12 -12
- package/dist/components/swap/Swap.js +9 -6
- package/dist/components/swap/Swap.jsx +3 -3
- package/dist/components/switch/Switch.js +9 -7
- package/dist/components/switch/Switch.jsx +5 -5
- package/dist/components/tabs/Tabs.js +18 -12
- package/dist/components/tabs/Tabs.jsx +6 -6
- package/dist/components/tags-input/TagsInput.js +28 -20
- package/dist/components/tags-input/TagsInput.jsx +12 -12
- package/dist/components/timer/Timer.js +21 -14
- package/dist/components/timer/Timer.jsx +7 -7
- package/dist/components/toast/Toast.js +11 -9
- package/dist/components/toast/Toast.jsx +7 -7
- package/dist/components/toc/Toc.js +31 -20
- package/dist/components/toc/Toc.jsx +10 -10
- package/dist/components/tooltip/Tooltip.js +13 -9
- package/dist/components/tooltip/Tooltip.jsx +5 -5
- package/dist/components/tour/Tour.js +38 -26
- package/dist/components/tour/Tour.jsx +13 -13
- package/dist/components/tree-view/TreeView.js +39 -28
- package/dist/components/tree-view/TreeView.jsx +17 -17
- package/dist/styles/animations.css +8 -8
- package/package.json +10 -11
|
@@ -8,32 +8,32 @@ const Listbox_ListboxRoot = function(props) {
|
|
|
8
8
|
const [local, others] = splitProps(props, [
|
|
9
9
|
'class'
|
|
10
10
|
]);
|
|
11
|
-
return <Listbox.Root
|
|
11
|
+
return <Listbox.Root class={cn('box-border flex w-64 max-w-full min-w-0 flex-col gap-3 text-foreground data-disabled:opacity-50', local.class)} {...others} data-slot="listbox-root"/>;
|
|
12
12
|
};
|
|
13
13
|
const Listbox_ListboxRootProvider = function(props) {
|
|
14
14
|
const [local, others] = splitProps(props, [
|
|
15
15
|
'class'
|
|
16
16
|
]);
|
|
17
|
-
return <Listbox.RootProvider
|
|
17
|
+
return <Listbox.RootProvider class={cn('box-border flex w-64 max-w-full min-w-0 flex-col gap-3 text-foreground data-disabled:opacity-50', local.class)} {...others} data-slot="listbox-root-provider"/>;
|
|
18
18
|
};
|
|
19
19
|
function ListboxLabel(props) {
|
|
20
20
|
const [local, others] = splitProps(props, [
|
|
21
21
|
'class'
|
|
22
22
|
]);
|
|
23
|
-
return <Listbox.Label
|
|
23
|
+
return <Listbox.Label class={cn('text-sm leading-5 font-medium text-foreground select-none', local.class)} {...others} data-slot="listbox-label"/>;
|
|
24
24
|
}
|
|
25
25
|
function ListboxInput(props) {
|
|
26
26
|
const [local, others] = splitProps(props, [
|
|
27
27
|
'class'
|
|
28
28
|
]);
|
|
29
|
-
return <Listbox.Input
|
|
29
|
+
return <Listbox.Input class={cn('m-0 box-border min-h-control-md w-full rounded-md border border-border bg-background px-3 py-1 text-md leading-6 text-foreground outline-1 -outline-offset-1 outline-transparent transition-[border-color,outline-color,opacity] duration-200 ease-in-out group-has-[[data-slot=listbox-filter-icon]]/listbox-filter:ps-9 group-has-[[data-slot=listbox-filter-icon]]/listbox-filter:pe-10 group-has-[+_[data-slot=listbox-content]]/listbox-filter:rounded-b-none group-has-[+_[data-slot=listbox-content]]/listbox-filter:border-b-0 placeholder:text-muted-foreground focus-visible:outline-ring disabled:cursor-default disabled:opacity-50 data-disabled:cursor-default data-disabled:opacity-50 motion-reduce:transition-none', local.class)} {...others} data-slot="listbox-input"/>;
|
|
30
30
|
}
|
|
31
31
|
function ListboxFilter(props) {
|
|
32
32
|
const [local, others] = splitProps(props, [
|
|
33
33
|
'children',
|
|
34
34
|
'class'
|
|
35
35
|
]);
|
|
36
|
-
return <div
|
|
36
|
+
return <div class={cn('group/listbox-filter peer/listbox-filter relative box-border w-full', local.class)} {...others} data-slot="listbox-filter">
|
|
37
37
|
<SearchIcon data-slot="listbox-filter-icon" class="pointer-events-none absolute start-3 top-1/2 z-1 size-4 -translate-y-1/2 text-muted-foreground"/>
|
|
38
38
|
{local.children}
|
|
39
39
|
</div>;
|
|
@@ -46,7 +46,7 @@ function ListboxClearTrigger(props) {
|
|
|
46
46
|
'type'
|
|
47
47
|
]);
|
|
48
48
|
const resolvedChildren = children(()=>local.children);
|
|
49
|
-
return <CloseButton.Root
|
|
49
|
+
return <CloseButton.Root class={cn('absolute end-3 top-1/2 size-control-xs -translate-y-1/2 rounded-sm bg-transparent text-muted-foreground [&>svg]:size-4 [@media(hover:hover)]:hover:bg-muted [@media(hover:hover)]:hover:text-foreground', local.class)} type={local.type ?? 'button'} aria-label={local['aria-label'] ?? 'Clear search'} {...others} data-slot="listbox-clear-trigger">
|
|
50
50
|
{resolvedChildren()}
|
|
51
51
|
</CloseButton.Root>;
|
|
52
52
|
}
|
|
@@ -54,37 +54,37 @@ function ListboxContent(props) {
|
|
|
54
54
|
const [local, others] = splitProps(props, [
|
|
55
55
|
'class'
|
|
56
56
|
]);
|
|
57
|
-
return <Listbox.Content
|
|
57
|
+
return <Listbox.Content class={cn('box-border flex max-h-56 min-h-0 scroll-py-1 [scrollbar-gutter:stable] flex-col overflow-x-hidden overflow-y-auto overscroll-contain rounded-md border border-border bg-background py-1 text-foreground outline-1 -outline-offset-1 outline-transparent transition-[border-color,outline-color] duration-200 ease-in-out peer-data-[slot=listbox-filter]/listbox-filter:-mt-3 peer-data-[slot=listbox-filter]/listbox-filter:rounded-t-none focus-visible:outline-ring data-[layout=grid]:grid data-[layout=grid]:grid-cols-[repeat(var(--column-count),minmax(0,1fr))] data-[layout=grid]:gap-1 data-[layout=grid]:p-2 data-[orientation=horizontal]:not-data-[layout=grid]:max-h-none data-[orientation=horizontal]:not-data-[layout=grid]:flex-row data-[orientation=horizontal]:not-data-[layout=grid]:gap-2 data-[orientation=horizontal]:not-data-[layout=grid]:overflow-x-auto data-[orientation=horizontal]:not-data-[layout=grid]:overflow-y-hidden data-[orientation=horizontal]:not-data-[layout=grid]:px-1 motion-reduce:transition-none', local.class)} {...others} data-slot="listbox-content"/>;
|
|
58
58
|
}
|
|
59
59
|
function ListboxEmpty(props) {
|
|
60
60
|
const [local, others] = splitProps(props, [
|
|
61
61
|
'class'
|
|
62
62
|
]);
|
|
63
|
-
return <Listbox.Empty
|
|
63
|
+
return <Listbox.Empty class={cn('px-3 py-1 text-center text-sm leading-5 text-muted-foreground', local.class)} {...others} data-slot="listbox-empty"/>;
|
|
64
64
|
}
|
|
65
65
|
function ListboxItemGroup(props) {
|
|
66
66
|
const [local, others] = splitProps(props, [
|
|
67
67
|
'class'
|
|
68
68
|
]);
|
|
69
|
-
return <Listbox.ItemGroup
|
|
69
|
+
return <Listbox.ItemGroup class={cn('flex flex-col [&+&]:mt-2', local.class)} {...others} data-slot="listbox-item-group"/>;
|
|
70
70
|
}
|
|
71
71
|
function ListboxItemGroupLabel(props) {
|
|
72
72
|
const [local, others] = splitProps(props, [
|
|
73
73
|
'class'
|
|
74
74
|
]);
|
|
75
|
-
return <Listbox.ItemGroupLabel
|
|
75
|
+
return <Listbox.ItemGroupLabel class={cn('px-2 py-1 text-xs leading-4 font-normal text-muted-foreground select-none', local.class)} {...others} data-slot="listbox-item-group-label"/>;
|
|
76
76
|
}
|
|
77
77
|
function ListboxItem(props) {
|
|
78
78
|
const [local, others] = splitProps(props, [
|
|
79
79
|
'class'
|
|
80
80
|
]);
|
|
81
|
-
return <Listbox.Item
|
|
81
|
+
return <Listbox.Item class={cn('relative mx-1 box-border grid min-h-control-sm w-[calc(100%-0.5rem)] cursor-pointer grid-cols-[minmax(0,1fr)_1rem] items-center gap-2 rounded-sm bg-transparent px-3 py-1 text-sm leading-5 text-foreground outline-0 transition-[background-color,color] duration-200 ease-in-out select-none data-disabled:pointer-events-none data-disabled:cursor-default data-disabled:text-muted-foreground data-disabled:opacity-50 data-highlighted:bg-accent data-highlighted:text-accent-foreground data-[layout=grid]:mx-0 data-[layout=grid]:w-full data-[layout=grid]:min-w-0 data-[layout=grid]:grid-cols-1 data-[layout=grid]:justify-items-center data-[layout=grid]:text-center data-[layout=grid]:data-selected:bg-muted data-[layout=grid]:data-selected:text-foreground data-[orientation=horizontal]:not-data-[layout=grid]:w-44 data-[orientation=horizontal]:not-data-[layout=grid]:min-w-44 data-[orientation=horizontal]:not-data-[layout=grid]:items-start motion-reduce:transition-none [@media(hover:hover)]:[&:not([data-disabled]):hover]:bg-accent [@media(hover:hover)]:[&:not([data-disabled]):hover]:text-accent-foreground', local.class)} {...others} data-slot="listbox-item"/>;
|
|
82
82
|
}
|
|
83
83
|
function ListboxItemText(props) {
|
|
84
84
|
const [local, others] = splitProps(props, [
|
|
85
85
|
'class'
|
|
86
86
|
]);
|
|
87
|
-
return <Listbox.ItemText
|
|
87
|
+
return <Listbox.ItemText class={cn('min-w-0 overflow-hidden text-ellipsis whitespace-nowrap', local.class)} {...others} data-slot="listbox-item-text"/>;
|
|
88
88
|
}
|
|
89
89
|
function ListboxItemIndicator(props) {
|
|
90
90
|
const [local, others] = splitProps(props, [
|
|
@@ -92,7 +92,7 @@ function ListboxItemIndicator(props) {
|
|
|
92
92
|
'class'
|
|
93
93
|
]);
|
|
94
94
|
const resolvedChildren = children(()=>local.children);
|
|
95
|
-
return <Listbox.ItemIndicator
|
|
95
|
+
return <Listbox.ItemIndicator class={cn('inline-flex size-4 shrink-0 items-center justify-center data-[state=unchecked]:invisible [&>svg]:size-3', local.class)} {...others} data-slot="listbox-item-indicator">
|
|
96
96
|
{resolvedChildren() ?? <CheckIcon/>}
|
|
97
97
|
</Listbox.ItemIndicator>;
|
|
98
98
|
}
|
|
@@ -100,25 +100,25 @@ function ListboxValueText(props) {
|
|
|
100
100
|
const [local, others] = splitProps(props, [
|
|
101
101
|
'class'
|
|
102
102
|
]);
|
|
103
|
-
return <Listbox.ValueText
|
|
103
|
+
return <Listbox.ValueText class={cn('text-sm leading-5 text-muted-foreground', local.class)} {...others} data-slot="listbox-value-text"/>;
|
|
104
104
|
}
|
|
105
105
|
function ListboxItemTextContent(props) {
|
|
106
106
|
const [local, others] = splitProps(props, [
|
|
107
107
|
'class'
|
|
108
108
|
]);
|
|
109
|
-
return <ark.span
|
|
109
|
+
return <ark.span class={cn('inline-flex max-w-full min-w-0 items-center gap-2 align-top', local.class)} {...others} data-slot="listbox-item-text-content"/>;
|
|
110
110
|
}
|
|
111
111
|
function ListboxItemTextIcon(props) {
|
|
112
112
|
const [local, others] = splitProps(props, [
|
|
113
113
|
'class'
|
|
114
114
|
]);
|
|
115
|
-
return <ark.span
|
|
115
|
+
return <ark.span class={cn('inline-flex size-4 shrink-0 items-center justify-center', local.class)} {...others} data-slot="listbox-item-text-icon"/>;
|
|
116
116
|
}
|
|
117
117
|
function ListboxItemTextLabel(props) {
|
|
118
118
|
const [local, others] = splitProps(props, [
|
|
119
119
|
'class'
|
|
120
120
|
]);
|
|
121
|
-
return <ark.span
|
|
121
|
+
return <ark.span class={cn('min-w-0 overflow-hidden text-ellipsis whitespace-nowrap', local.class)} {...others} data-slot="listbox-item-text-label"/>;
|
|
122
122
|
}
|
|
123
123
|
const Listbox_Listbox = Object.assign(Listbox_ListboxRoot, {
|
|
124
124
|
Root: Listbox_ListboxRoot,
|
|
@@ -30,7 +30,6 @@ function MarqueeRoot(props) {
|
|
|
30
30
|
'side'
|
|
31
31
|
]);
|
|
32
32
|
return createComponent(Marquee.Root, mergeProps({
|
|
33
|
-
"data-slot": "marquee-root",
|
|
34
33
|
get side () {
|
|
35
34
|
return local.side;
|
|
36
35
|
},
|
|
@@ -39,7 +38,9 @@ function MarqueeRoot(props) {
|
|
|
39
38
|
orientation: 'top' === local.side || 'bottom' === local.side ? 'vertical' : 'horizontal'
|
|
40
39
|
}), local.class);
|
|
41
40
|
}
|
|
42
|
-
}, others
|
|
41
|
+
}, others, {
|
|
42
|
+
"data-slot": "marquee-root"
|
|
43
|
+
}));
|
|
43
44
|
}
|
|
44
45
|
function MarqueeRootProvider(props) {
|
|
45
46
|
const [local, others] = splitProps(props, [
|
|
@@ -47,7 +48,6 @@ function MarqueeRootProvider(props) {
|
|
|
47
48
|
'value'
|
|
48
49
|
]);
|
|
49
50
|
return createComponent(Marquee.RootProvider, mergeProps({
|
|
50
|
-
"data-slot": "marquee-root-provider",
|
|
51
51
|
get value () {
|
|
52
52
|
return local.value;
|
|
53
53
|
},
|
|
@@ -56,40 +56,45 @@ function MarqueeRootProvider(props) {
|
|
|
56
56
|
orientation: local.value().orientation
|
|
57
57
|
}), local.class);
|
|
58
58
|
}
|
|
59
|
-
}, others
|
|
59
|
+
}, others, {
|
|
60
|
+
"data-slot": "marquee-root-provider"
|
|
61
|
+
}));
|
|
60
62
|
}
|
|
61
63
|
function MarqueeViewport(props) {
|
|
62
64
|
const [local, others] = splitProps(props, [
|
|
63
65
|
'class'
|
|
64
66
|
]);
|
|
65
67
|
return createComponent(Marquee.Viewport, mergeProps({
|
|
66
|
-
"data-slot": "marquee-viewport",
|
|
67
68
|
get ["class"] () {
|
|
68
69
|
return cn('size-full', local.class);
|
|
69
70
|
}
|
|
70
|
-
}, others
|
|
71
|
+
}, others, {
|
|
72
|
+
"data-slot": "marquee-viewport"
|
|
73
|
+
}));
|
|
71
74
|
}
|
|
72
75
|
function MarqueeContent(props) {
|
|
73
76
|
const [local, others] = splitProps(props, [
|
|
74
77
|
'class'
|
|
75
78
|
]);
|
|
76
79
|
return createComponent(Marquee.Content, mergeProps({
|
|
77
|
-
"data-slot": "marquee-content",
|
|
78
80
|
get ["class"] () {
|
|
79
81
|
return cn('animate-moduix-marquee-x group-data-paused:[animation-play-state:paused] data-reverse:[animation-direction:reverse] data-[side=bottom]:animate-moduix-marquee-y data-[side=top]:animate-moduix-marquee-y motion-reduce:animate-none', local.class);
|
|
80
82
|
}
|
|
81
|
-
}, others
|
|
83
|
+
}, others, {
|
|
84
|
+
"data-slot": "marquee-content"
|
|
85
|
+
}));
|
|
82
86
|
}
|
|
83
87
|
function MarqueeItem(props) {
|
|
84
88
|
const [local, others] = splitProps(props, [
|
|
85
89
|
'class'
|
|
86
90
|
]);
|
|
87
91
|
return createComponent(Marquee.Item, mergeProps({
|
|
88
|
-
"data-slot": "marquee-item",
|
|
89
92
|
get ["class"] () {
|
|
90
93
|
return cn('shrink-0', local.class);
|
|
91
94
|
}
|
|
92
|
-
}, others
|
|
95
|
+
}, others, {
|
|
96
|
+
"data-slot": "marquee-item"
|
|
97
|
+
}));
|
|
93
98
|
}
|
|
94
99
|
function MarqueeEdge(props) {
|
|
95
100
|
const [local, others] = splitProps(props, [
|
|
@@ -97,7 +102,6 @@ function MarqueeEdge(props) {
|
|
|
97
102
|
'side'
|
|
98
103
|
]);
|
|
99
104
|
return createComponent(Marquee.Edge, mergeProps({
|
|
100
|
-
"data-slot": "marquee-edge",
|
|
101
105
|
get side () {
|
|
102
106
|
return local.side;
|
|
103
107
|
},
|
|
@@ -106,7 +110,9 @@ function MarqueeEdge(props) {
|
|
|
106
110
|
side: local.side
|
|
107
111
|
}), local.class);
|
|
108
112
|
}
|
|
109
|
-
}, others
|
|
113
|
+
}, others, {
|
|
114
|
+
"data-slot": "marquee-edge"
|
|
115
|
+
}));
|
|
110
116
|
}
|
|
111
117
|
const Marquee_Marquee = Object.assign(MarqueeRoot, {
|
|
112
118
|
Root: MarqueeRoot,
|
|
@@ -28,45 +28,45 @@ function MarqueeRoot(props) {
|
|
|
28
28
|
'class',
|
|
29
29
|
'side'
|
|
30
30
|
]);
|
|
31
|
-
return <Marquee.Root
|
|
31
|
+
return <Marquee.Root side={local.side} class={cn(marqueeRootVariants({
|
|
32
32
|
orientation: 'top' === local.side || 'bottom' === local.side ? 'vertical' : 'horizontal'
|
|
33
|
-
}), local.class)} {...others}/>;
|
|
33
|
+
}), local.class)} {...others} data-slot="marquee-root"/>;
|
|
34
34
|
}
|
|
35
35
|
function MarqueeRootProvider(props) {
|
|
36
36
|
const [local, others] = splitProps(props, [
|
|
37
37
|
'class',
|
|
38
38
|
'value'
|
|
39
39
|
]);
|
|
40
|
-
return <Marquee.RootProvider
|
|
40
|
+
return <Marquee.RootProvider value={local.value} class={cn(marqueeRootVariants({
|
|
41
41
|
orientation: local.value().orientation
|
|
42
|
-
}), local.class)} {...others}/>;
|
|
42
|
+
}), local.class)} {...others} data-slot="marquee-root-provider"/>;
|
|
43
43
|
}
|
|
44
44
|
function MarqueeViewport(props) {
|
|
45
45
|
const [local, others] = splitProps(props, [
|
|
46
46
|
'class'
|
|
47
47
|
]);
|
|
48
|
-
return <Marquee.Viewport
|
|
48
|
+
return <Marquee.Viewport class={cn('size-full', local.class)} {...others} data-slot="marquee-viewport"/>;
|
|
49
49
|
}
|
|
50
50
|
function MarqueeContent(props) {
|
|
51
51
|
const [local, others] = splitProps(props, [
|
|
52
52
|
'class'
|
|
53
53
|
]);
|
|
54
|
-
return <Marquee.Content
|
|
54
|
+
return <Marquee.Content class={cn('animate-moduix-marquee-x group-data-paused:[animation-play-state:paused] data-reverse:[animation-direction:reverse] data-[side=bottom]:animate-moduix-marquee-y data-[side=top]:animate-moduix-marquee-y motion-reduce:animate-none', local.class)} {...others} data-slot="marquee-content"/>;
|
|
55
55
|
}
|
|
56
56
|
function MarqueeItem(props) {
|
|
57
57
|
const [local, others] = splitProps(props, [
|
|
58
58
|
'class'
|
|
59
59
|
]);
|
|
60
|
-
return <Marquee.Item
|
|
60
|
+
return <Marquee.Item class={cn('shrink-0', local.class)} {...others} data-slot="marquee-item"/>;
|
|
61
61
|
}
|
|
62
62
|
function MarqueeEdge(props) {
|
|
63
63
|
const [local, others] = splitProps(props, [
|
|
64
64
|
'class',
|
|
65
65
|
'side'
|
|
66
66
|
]);
|
|
67
|
-
return <Marquee.Edge
|
|
67
|
+
return <Marquee.Edge side={local.side} class={cn(marqueeEdgeVariants({
|
|
68
68
|
side: local.side
|
|
69
|
-
}), local.class)} {...others}/>;
|
|
69
|
+
}), local.class)} {...others} data-slot="marquee-edge"/>;
|
|
70
70
|
}
|
|
71
71
|
const Marquee_Marquee = Object.assign(MarqueeRoot, {
|
|
72
72
|
Root: MarqueeRoot,
|
|
@@ -7,7 +7,7 @@ import { children, splitProps } from "solid-js";
|
|
|
7
7
|
import { cn } from "../../internal/cn.js";
|
|
8
8
|
import { CheckIcon, ChevronDownIcon, ChevronRightIcon } from "../../internal/icons/ui/index.js";
|
|
9
9
|
import { OverlayPortal, OverlayPortalProvider } from "../../internal/overlayPortal.js";
|
|
10
|
-
var _tmpl$ = /*#__PURE__*/ template("<span
|
|
10
|
+
var _tmpl$ = /*#__PURE__*/ template("<span>");
|
|
11
11
|
const menuItemStyles = cva("relative z-0 min-h-control-sm cursor-default rounded-sm bg-transparent text-sm text-inherit no-underline outline-0 select-none before:absolute before:inset-x-1 before:inset-y-0 before:-z-1 before:rounded-sm before:bg-transparent before:content-[''] data-disabled:pointer-events-none data-disabled:text-muted-foreground data-highlighted:text-accent-foreground data-highlighted:before:bg-accent data-[state=open]:before:bg-accent", {
|
|
12
12
|
variants: {
|
|
13
13
|
layout: {
|
|
@@ -101,14 +101,15 @@ function MenuTrigger(props) {
|
|
|
101
101
|
get asChild () {
|
|
102
102
|
return local.asChild;
|
|
103
103
|
},
|
|
104
|
-
"data-slot": "menu-trigger",
|
|
105
104
|
get ["data-focus-visible"] () {
|
|
106
105
|
return focusVisible() ? '' : void 0;
|
|
107
106
|
},
|
|
108
107
|
get ["class"] () {
|
|
109
108
|
return cn(!local.asChild && 'inline-flex min-h-control-md cursor-pointer items-center justify-center gap-2 rounded-md border border-border bg-background px-4 py-1 text-sm font-medium text-foreground outline-0 transition-colors duration-200 ease-in-out select-none active:bg-muted data-disabled:pointer-events-none data-disabled:opacity-50 data-[current]:data-[state=open]:bg-muted motion-reduce:transition-none [&:focus[data-focus-visible]]:outline-1 [&:focus[data-focus-visible]]:-outline-offset-1 [&:focus[data-focus-visible]]:outline-ring [@media(hover:hover)]:hover:bg-muted', local.class);
|
|
110
109
|
}
|
|
111
|
-
}, others
|
|
110
|
+
}, others, {
|
|
111
|
+
"data-slot": "menu-trigger"
|
|
112
|
+
}));
|
|
112
113
|
}
|
|
113
114
|
function MenuTriggerIcon(props) {
|
|
114
115
|
const [local, others] = splitProps(props, [
|
|
@@ -122,7 +123,9 @@ function MenuTriggerIcon(props) {
|
|
|
122
123
|
get ["class"] () {
|
|
123
124
|
return cn('inline-flex size-4 shrink-0 items-center justify-center [&_svg]:size-full', local.class);
|
|
124
125
|
}
|
|
125
|
-
}, others
|
|
126
|
+
}, others, {
|
|
127
|
+
"data-slot": "menu-trigger-icon"
|
|
128
|
+
}), false, true);
|
|
126
129
|
insert(_el$, ()=>resolvedChildren() ?? createComponent(ChevronDownIcon, {}));
|
|
127
130
|
return _el$;
|
|
128
131
|
})();
|
|
@@ -134,11 +137,11 @@ function MenuIndicator(props) {
|
|
|
134
137
|
]);
|
|
135
138
|
const resolvedChildren = children(()=>local.children);
|
|
136
139
|
return createComponent(Menu.Indicator, mergeProps({
|
|
137
|
-
"data-slot": "menu-indicator",
|
|
138
140
|
get ["class"] () {
|
|
139
141
|
return cn('inline-flex size-4 shrink-0 items-center justify-center [&_svg]:size-full', local.class);
|
|
140
142
|
}
|
|
141
143
|
}, others, {
|
|
144
|
+
"data-slot": "menu-indicator",
|
|
142
145
|
get children () {
|
|
143
146
|
return resolvedChildren() ?? createComponent(ChevronDownIcon, {});
|
|
144
147
|
}
|
|
@@ -154,14 +157,15 @@ function MenuContextTrigger(props) {
|
|
|
154
157
|
get asChild () {
|
|
155
158
|
return local.asChild;
|
|
156
159
|
},
|
|
157
|
-
"data-slot": "menu-context-trigger",
|
|
158
160
|
get ["data-focus-visible"] () {
|
|
159
161
|
return focusVisible() ? '' : void 0;
|
|
160
162
|
},
|
|
161
163
|
get ["class"] () {
|
|
162
164
|
return cn(!local.asChild && 'inline-flex min-h-control-md cursor-pointer items-center justify-center gap-2 rounded-md border border-border bg-background px-4 py-1 text-sm font-medium text-foreground outline-0 transition-colors duration-200 ease-in-out select-none active:bg-muted data-disabled:pointer-events-none data-disabled:opacity-50 data-[current]:data-[state=open]:bg-muted motion-reduce:transition-none [&:focus[data-focus-visible]]:outline-1 [&:focus[data-focus-visible]]:-outline-offset-1 [&:focus[data-focus-visible]]:outline-ring [@media(hover:hover)]:hover:bg-muted', local.class);
|
|
163
165
|
}
|
|
164
|
-
}, others
|
|
166
|
+
}, others, {
|
|
167
|
+
"data-slot": "menu-context-trigger"
|
|
168
|
+
}));
|
|
165
169
|
}
|
|
166
170
|
function MenuPositioner(props) {
|
|
167
171
|
const [local, others] = splitProps(props, [
|
|
@@ -170,11 +174,12 @@ function MenuPositioner(props) {
|
|
|
170
174
|
return createComponent(OverlayPortal, {
|
|
171
175
|
get children () {
|
|
172
176
|
return createComponent(Menu.Positioner, mergeProps({
|
|
173
|
-
"data-slot": "menu-positioner",
|
|
174
177
|
get ["class"] () {
|
|
175
178
|
return cn('z-[var(--z-index)] w-[var(--positioner-width,auto)] max-w-[var(--available-width)] outline-0', local.class);
|
|
176
179
|
}
|
|
177
|
-
}, others
|
|
180
|
+
}, others, {
|
|
181
|
+
"data-slot": "menu-positioner"
|
|
182
|
+
}));
|
|
178
183
|
}
|
|
179
184
|
});
|
|
180
185
|
}
|
|
@@ -188,11 +193,11 @@ function MenuContent(props) {
|
|
|
188
193
|
get asChild () {
|
|
189
194
|
return local.asChild;
|
|
190
195
|
},
|
|
191
|
-
"data-slot": "menu-content",
|
|
192
196
|
get ["class"] () {
|
|
193
197
|
return cn('relative z-[calc(var(--moduix-z-popup)+var(--layer-index,0))] flex max-w-[min(20rem,var(--available-width,100vw))] min-w-[min(max(var(--reference-width,0px),12rem),var(--available-width,100vw))] origin-[var(--transform-origin)] flex-col overflow-visible rounded-md bg-popover py-1 text-popover-foreground shadow-lg outline-1 outline-border [--arrow-background:var(--color-popover)] [--arrow-size:0.625rem] data-[state=closed]:animate-moduix-menu-closed data-[state=open]:animate-moduix-menu-open motion-reduce:[animation-delay:0ms] motion-reduce:[animation-duration:1ms]', local.class);
|
|
194
198
|
}
|
|
195
199
|
}, others, {
|
|
200
|
+
"data-slot": "menu-content",
|
|
196
201
|
get children () {
|
|
197
202
|
return local.children;
|
|
198
203
|
}
|
|
@@ -209,11 +214,12 @@ function MenuViewport(props) {
|
|
|
209
214
|
},
|
|
210
215
|
"data-scope": "menu",
|
|
211
216
|
"data-part": "viewport",
|
|
212
|
-
"data-slot": "menu-viewport",
|
|
213
217
|
get ["class"] () {
|
|
214
218
|
return cn('flex max-h-[min(24rem,var(--available-height,100dvh))] flex-col overflow-auto', local.class);
|
|
215
219
|
}
|
|
216
|
-
}, others
|
|
220
|
+
}, others, {
|
|
221
|
+
"data-slot": "menu-viewport"
|
|
222
|
+
}));
|
|
217
223
|
}
|
|
218
224
|
function MenuArrow(props) {
|
|
219
225
|
const [local, others] = splitProps(props, [
|
|
@@ -222,11 +228,11 @@ function MenuArrow(props) {
|
|
|
222
228
|
]);
|
|
223
229
|
const resolvedChildren = children(()=>local.children);
|
|
224
230
|
return createComponent(Menu.Arrow, mergeProps({
|
|
225
|
-
"data-slot": "menu-arrow",
|
|
226
231
|
get ["class"] () {
|
|
227
232
|
return cn('[--arrow-background:var(--color-popover)]', local.class);
|
|
228
233
|
}
|
|
229
234
|
}, others, {
|
|
235
|
+
"data-slot": "menu-arrow",
|
|
230
236
|
get children () {
|
|
231
237
|
return resolvedChildren() ?? createComponent(MenuArrowTip, {});
|
|
232
238
|
}
|
|
@@ -237,11 +243,12 @@ function MenuArrowTip(props) {
|
|
|
237
243
|
'class'
|
|
238
244
|
]);
|
|
239
245
|
return createComponent(Menu.ArrowTip, mergeProps({
|
|
240
|
-
"data-slot": "menu-arrow-tip",
|
|
241
246
|
get ["class"] () {
|
|
242
247
|
return cn('[border-block-start:1px_solid_var(--color-border)] [border-inline-start:1px_solid_var(--color-border)]', local.class);
|
|
243
248
|
}
|
|
244
|
-
}, others
|
|
249
|
+
}, others, {
|
|
250
|
+
"data-slot": "menu-arrow-tip"
|
|
251
|
+
}));
|
|
245
252
|
}
|
|
246
253
|
function MenuItem(props) {
|
|
247
254
|
const [local, others] = splitProps(props, [
|
|
@@ -249,7 +256,6 @@ function MenuItem(props) {
|
|
|
249
256
|
'tone'
|
|
250
257
|
]);
|
|
251
258
|
return createComponent(Menu.Item, mergeProps({
|
|
252
|
-
"data-slot": "menu-item",
|
|
253
259
|
get ["data-tone"] () {
|
|
254
260
|
return local.tone ?? 'default';
|
|
255
261
|
},
|
|
@@ -259,20 +265,23 @@ function MenuItem(props) {
|
|
|
259
265
|
tone: local.tone
|
|
260
266
|
}), local.class);
|
|
261
267
|
}
|
|
262
|
-
}, others
|
|
268
|
+
}, others, {
|
|
269
|
+
"data-slot": "menu-item"
|
|
270
|
+
}));
|
|
263
271
|
}
|
|
264
272
|
function MenuTriggerItem(props) {
|
|
265
273
|
const [local, others] = splitProps(props, [
|
|
266
274
|
'class'
|
|
267
275
|
]);
|
|
268
276
|
return createComponent(Menu.TriggerItem, mergeProps({
|
|
269
|
-
"data-slot": "menu-trigger-item",
|
|
270
277
|
get ["class"] () {
|
|
271
278
|
return cn(menuItemStyles({
|
|
272
279
|
layout: 'triggerItem'
|
|
273
280
|
}), local.class);
|
|
274
281
|
}
|
|
275
|
-
}, others
|
|
282
|
+
}, others, {
|
|
283
|
+
"data-slot": "menu-trigger-item"
|
|
284
|
+
}));
|
|
276
285
|
}
|
|
277
286
|
function MenuTriggerItemIcon(props) {
|
|
278
287
|
const [local, others] = splitProps(props, [
|
|
@@ -281,12 +290,14 @@ function MenuTriggerItemIcon(props) {
|
|
|
281
290
|
]);
|
|
282
291
|
const resolvedChildren = children(()=>local.children);
|
|
283
292
|
return (()=>{
|
|
284
|
-
var _el$2 = _tmpl$
|
|
293
|
+
var _el$2 = _tmpl$();
|
|
285
294
|
spread(_el$2, mergeProps({
|
|
286
295
|
get ["class"] () {
|
|
287
296
|
return cn('inline-flex size-3.5 shrink-0 rtl:-scale-x-100 [&_svg]:size-full', local.class);
|
|
288
297
|
}
|
|
289
|
-
}, others
|
|
298
|
+
}, others, {
|
|
299
|
+
"data-slot": "menu-trigger-item-icon"
|
|
300
|
+
}), false, true);
|
|
290
301
|
insert(_el$2, ()=>resolvedChildren() ?? createComponent(ChevronRightIcon, {}));
|
|
291
302
|
return _el$2;
|
|
292
303
|
})();
|
|
@@ -296,44 +307,48 @@ function MenuSeparator(props) {
|
|
|
296
307
|
'class'
|
|
297
308
|
]);
|
|
298
309
|
return createComponent(Menu.Separator, mergeProps({
|
|
299
|
-
"data-slot": "menu-separator",
|
|
300
310
|
get ["class"] () {
|
|
301
311
|
return cn('mx-3 my-1.5 h-px border-0 bg-border', local.class);
|
|
302
312
|
}
|
|
303
|
-
}, others
|
|
313
|
+
}, others, {
|
|
314
|
+
"data-slot": "menu-separator"
|
|
315
|
+
}));
|
|
304
316
|
}
|
|
305
317
|
function MenuItemGroup(props) {
|
|
306
318
|
const [local, others] = splitProps(props, [
|
|
307
319
|
'class'
|
|
308
320
|
]);
|
|
309
321
|
return createComponent(Menu.ItemGroup, mergeProps({
|
|
310
|
-
"data-slot": "menu-item-group",
|
|
311
322
|
get ["class"] () {
|
|
312
323
|
return cn('grid', local.class);
|
|
313
324
|
}
|
|
314
|
-
}, others
|
|
325
|
+
}, others, {
|
|
326
|
+
"data-slot": "menu-item-group"
|
|
327
|
+
}));
|
|
315
328
|
}
|
|
316
329
|
function MenuItemGroupLabel(props) {
|
|
317
330
|
const [local, others] = splitProps(props, [
|
|
318
331
|
'class'
|
|
319
332
|
]);
|
|
320
333
|
return createComponent(Menu.ItemGroupLabel, mergeProps({
|
|
321
|
-
"data-slot": "menu-item-group-label",
|
|
322
334
|
get ["class"] () {
|
|
323
335
|
return cn('cursor-default px-2.5 py-1 text-xs font-normal text-muted-foreground select-none', local.class);
|
|
324
336
|
}
|
|
325
|
-
}, others
|
|
337
|
+
}, others, {
|
|
338
|
+
"data-slot": "menu-item-group-label"
|
|
339
|
+
}));
|
|
326
340
|
}
|
|
327
341
|
function MenuRadioItemGroup(props) {
|
|
328
342
|
const [local, others] = splitProps(props, [
|
|
329
343
|
'class'
|
|
330
344
|
]);
|
|
331
345
|
return createComponent(Menu.RadioItemGroup, mergeProps({
|
|
332
|
-
"data-slot": "menu-radio-item-group",
|
|
333
346
|
get ["class"] () {
|
|
334
347
|
return cn('grid', local.class);
|
|
335
348
|
}
|
|
336
|
-
}, others
|
|
349
|
+
}, others, {
|
|
350
|
+
"data-slot": "menu-radio-item-group"
|
|
351
|
+
}));
|
|
337
352
|
}
|
|
338
353
|
function MenuRadioItem(props) {
|
|
339
354
|
const [local, others] = splitProps(props, [
|
|
@@ -341,7 +356,6 @@ function MenuRadioItem(props) {
|
|
|
341
356
|
'indicator'
|
|
342
357
|
]);
|
|
343
358
|
return createComponent(Menu.RadioItem, mergeProps({
|
|
344
|
-
"data-slot": "menu-radio-item",
|
|
345
359
|
get ["data-indicator-position"] () {
|
|
346
360
|
return local.indicator ?? 'start';
|
|
347
361
|
},
|
|
@@ -351,7 +365,9 @@ function MenuRadioItem(props) {
|
|
|
351
365
|
indicator: local.indicator ?? 'start'
|
|
352
366
|
}), local.class);
|
|
353
367
|
}
|
|
354
|
-
}, others
|
|
368
|
+
}, others, {
|
|
369
|
+
"data-slot": "menu-radio-item"
|
|
370
|
+
}));
|
|
355
371
|
}
|
|
356
372
|
function MenuCheckboxItem(props) {
|
|
357
373
|
const [local, others] = splitProps(props, [
|
|
@@ -359,7 +375,6 @@ function MenuCheckboxItem(props) {
|
|
|
359
375
|
'indicator'
|
|
360
376
|
]);
|
|
361
377
|
return createComponent(Menu.CheckboxItem, mergeProps({
|
|
362
|
-
"data-slot": "menu-checkbox-item",
|
|
363
378
|
get ["data-indicator-position"] () {
|
|
364
379
|
return local.indicator ?? 'start';
|
|
365
380
|
},
|
|
@@ -369,7 +384,9 @@ function MenuCheckboxItem(props) {
|
|
|
369
384
|
indicator: local.indicator ?? 'start'
|
|
370
385
|
}), local.class);
|
|
371
386
|
}
|
|
372
|
-
}, others
|
|
387
|
+
}, others, {
|
|
388
|
+
"data-slot": "menu-checkbox-item"
|
|
389
|
+
}));
|
|
373
390
|
}
|
|
374
391
|
function MenuItemIndicator(props) {
|
|
375
392
|
const [local, others] = splitProps(props, [
|
|
@@ -378,11 +395,11 @@ function MenuItemIndicator(props) {
|
|
|
378
395
|
]);
|
|
379
396
|
const resolvedChildren = children(()=>local.children);
|
|
380
397
|
return createComponent(Menu.ItemIndicator, mergeProps({
|
|
381
|
-
"data-slot": "menu-item-indicator",
|
|
382
398
|
get ["class"] () {
|
|
383
399
|
return cn('inline-flex size-3 items-center justify-center rounded-xs [&_svg]:size-full', local.class);
|
|
384
400
|
}
|
|
385
401
|
}, others, {
|
|
402
|
+
"data-slot": "menu-item-indicator",
|
|
386
403
|
get children () {
|
|
387
404
|
return resolvedChildren() ?? createComponent(CheckIcon, {});
|
|
388
405
|
}
|
|
@@ -393,55 +410,60 @@ function MenuItemText(props) {
|
|
|
393
410
|
'class'
|
|
394
411
|
]);
|
|
395
412
|
return createComponent(Menu.ItemText, mergeProps({
|
|
396
|
-
"data-slot": "menu-item-text",
|
|
397
413
|
get ["class"] () {
|
|
398
414
|
return cn('min-w-0 overflow-hidden', local.class);
|
|
399
415
|
}
|
|
400
|
-
}, others
|
|
416
|
+
}, others, {
|
|
417
|
+
"data-slot": "menu-item-text"
|
|
418
|
+
}));
|
|
401
419
|
}
|
|
402
420
|
function MenuItemTextContent(props) {
|
|
403
421
|
const [local, others] = splitProps(props, [
|
|
404
422
|
'class'
|
|
405
423
|
]);
|
|
406
424
|
return createComponent(ark.span, mergeProps({
|
|
407
|
-
"data-slot": "menu-item-text-content",
|
|
408
425
|
get ["class"] () {
|
|
409
426
|
return cn('inline-flex max-w-full min-w-0 items-center gap-2 align-top', local.class);
|
|
410
427
|
}
|
|
411
|
-
}, others
|
|
428
|
+
}, others, {
|
|
429
|
+
"data-slot": "menu-item-text-content"
|
|
430
|
+
}));
|
|
412
431
|
}
|
|
413
432
|
function MenuItemTextIcon(props) {
|
|
414
433
|
const [local, others] = splitProps(props, [
|
|
415
434
|
'class'
|
|
416
435
|
]);
|
|
417
436
|
return createComponent(ark.span, mergeProps({
|
|
418
|
-
"data-slot": "menu-item-text-icon",
|
|
419
437
|
get ["class"] () {
|
|
420
438
|
return cn('inline-flex size-4 shrink-0 items-center justify-center [&_svg]:size-full', local.class);
|
|
421
439
|
}
|
|
422
|
-
}, others
|
|
440
|
+
}, others, {
|
|
441
|
+
"data-slot": "menu-item-text-icon"
|
|
442
|
+
}));
|
|
423
443
|
}
|
|
424
444
|
function MenuItemTextLabel(props) {
|
|
425
445
|
const [local, others] = splitProps(props, [
|
|
426
446
|
'class'
|
|
427
447
|
]);
|
|
428
448
|
return createComponent(ark.span, mergeProps({
|
|
429
|
-
"data-slot": "menu-item-text-label",
|
|
430
449
|
get ["class"] () {
|
|
431
450
|
return cn('min-w-0 overflow-hidden text-ellipsis whitespace-nowrap', local.class);
|
|
432
451
|
}
|
|
433
|
-
}, others
|
|
452
|
+
}, others, {
|
|
453
|
+
"data-slot": "menu-item-text-label"
|
|
454
|
+
}));
|
|
434
455
|
}
|
|
435
456
|
function MenuItemShortcut(props) {
|
|
436
457
|
const [local, others] = splitProps(props, [
|
|
437
458
|
'class'
|
|
438
459
|
]);
|
|
439
460
|
return createComponent(ark.span, mergeProps({
|
|
440
|
-
"data-slot": "menu-item-shortcut",
|
|
441
461
|
get ["class"] () {
|
|
442
462
|
return cn('ms-auto ps-4 text-xs whitespace-nowrap text-muted-foreground', local.class);
|
|
443
463
|
}
|
|
444
|
-
}, others
|
|
464
|
+
}, others, {
|
|
465
|
+
"data-slot": "menu-item-shortcut"
|
|
466
|
+
}));
|
|
445
467
|
}
|
|
446
468
|
const Menu_Menu = Object.assign(MenuRoot, {
|
|
447
469
|
Root: MenuRoot,
|