@shipfox/react-ui 0.10.0 → 0.12.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/.turbo/turbo-build.log +6 -6
- package/.turbo/turbo-check.log +2 -2
- package/.turbo/turbo-type.log +1 -1
- package/CHANGELOG.md +12 -0
- package/dist/components/button/button.js +14 -11
- package/dist/components/button/button.js.map +1 -1
- package/dist/components/calendar/calendar.d.ts +5 -0
- package/dist/components/calendar/calendar.d.ts.map +1 -0
- package/dist/components/calendar/calendar.js +46 -0
- package/dist/components/calendar/calendar.js.map +1 -0
- package/dist/components/calendar/index.d.ts +2 -0
- package/dist/components/calendar/index.d.ts.map +1 -0
- package/dist/components/calendar/index.js +3 -0
- package/dist/components/calendar/index.js.map +1 -0
- package/dist/components/date-picker/date-picker.d.ts +19 -0
- package/dist/components/date-picker/date-picker.d.ts.map +1 -0
- package/dist/components/date-picker/date-picker.js +114 -0
- package/dist/components/date-picker/date-picker.js.map +1 -0
- package/dist/components/date-picker/date-picker.stories.js +333 -0
- package/dist/components/date-picker/date-picker.stories.js.map +1 -0
- package/dist/components/date-picker/index.d.ts +2 -0
- package/dist/components/date-picker/index.d.ts.map +1 -0
- package/dist/components/date-picker/index.js +3 -0
- package/dist/components/date-picker/index.js.map +1 -0
- package/dist/components/date-time-range-picker/date-time-range-picker.d.ts +24 -0
- package/dist/components/date-time-range-picker/date-time-range-picker.d.ts.map +1 -0
- package/dist/components/date-time-range-picker/date-time-range-picker.js +130 -0
- package/dist/components/date-time-range-picker/date-time-range-picker.js.map +1 -0
- package/dist/components/date-time-range-picker/index.d.ts +2 -0
- package/dist/components/date-time-range-picker/index.d.ts.map +1 -0
- package/dist/components/date-time-range-picker/index.js +3 -0
- package/dist/components/date-time-range-picker/index.js.map +1 -0
- package/dist/components/dropdown-menu/dropdown-menu.d.ts +58 -0
- package/dist/components/dropdown-menu/dropdown-menu.d.ts.map +1 -0
- package/dist/components/dropdown-menu/dropdown-menu.js +280 -0
- package/dist/components/dropdown-menu/dropdown-menu.js.map +1 -0
- package/dist/components/dropdown-menu/dropdown-menu.stories.js +462 -0
- package/dist/components/dropdown-menu/dropdown-menu.stories.js.map +1 -0
- package/dist/components/dropdown-menu/index.d.ts +3 -0
- package/dist/components/dropdown-menu/index.d.ts.map +1 -0
- package/dist/components/dropdown-menu/index.js +3 -0
- package/dist/components/dropdown-menu/index.js.map +1 -0
- package/dist/components/dynamic-item/dynamic-item.d.ts +1 -1
- package/dist/components/dynamic-item/dynamic-item.d.ts.map +1 -1
- package/dist/components/dynamic-item/dynamic-item.js +4 -4
- package/dist/components/dynamic-item/dynamic-item.js.map +1 -1
- package/dist/components/dynamic-item/dynamic-item.stories.js +11 -1
- package/dist/components/dynamic-item/dynamic-item.stories.js.map +1 -1
- package/dist/components/index.d.ts +5 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +5 -0
- package/dist/components/index.js.map +1 -1
- package/dist/components/inline-tips/inline-tips.stories.js +5 -0
- package/dist/components/inline-tips/inline-tips.stories.js.map +1 -1
- package/dist/components/item/item.stories.js +15 -8
- package/dist/components/item/item.stories.js.map +1 -1
- package/dist/components/modal/modal.stories.js +14 -6
- package/dist/components/modal/modal.stories.js.map +1 -1
- package/dist/components/popover/index.d.ts +2 -0
- package/dist/components/popover/index.d.ts.map +1 -0
- package/dist/components/popover/index.js +3 -0
- package/dist/components/popover/index.js.map +1 -0
- package/dist/components/popover/popover.d.ts +10 -0
- package/dist/components/popover/popover.d.ts.map +1 -0
- package/dist/components/popover/popover.js +47 -0
- package/dist/components/popover/popover.js.map +1 -0
- package/dist/components/textarea/textarea.stories.js +8 -2
- package/dist/components/textarea/textarea.stories.js.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +3 -3
- package/src/components/button/button.tsx +12 -12
- package/src/components/calendar/calendar.tsx +90 -0
- package/src/components/calendar/index.ts +1 -0
- package/src/components/date-picker/date-picker.stories.tsx +230 -0
- package/src/components/date-picker/date-picker.tsx +179 -0
- package/src/components/date-picker/index.ts +1 -0
- package/src/components/date-time-range-picker/date-time-range-picker.tsx +211 -0
- package/src/components/date-time-range-picker/index.ts +1 -0
- package/src/components/dropdown-menu/dropdown-menu.stories.tsx +384 -0
- package/src/components/dropdown-menu/dropdown-menu.tsx +416 -0
- package/src/components/dropdown-menu/index.ts +29 -0
- package/src/components/dynamic-item/dynamic-item.stories.tsx +6 -1
- package/src/components/dynamic-item/dynamic-item.tsx +9 -3
- package/src/components/index.ts +5 -0
- package/src/components/inline-tips/inline-tips.stories.tsx +5 -0
- package/src/components/item/item.stories.tsx +65 -56
- package/src/components/modal/modal.stories.tsx +16 -6
- package/src/components/popover/index.ts +1 -0
- package/src/components/popover/popover.tsx +60 -0
- package/src/components/textarea/textarea.stories.tsx +8 -2
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
|
|
2
|
+
import { type VariantProps } from 'class-variance-authority';
|
|
3
|
+
import type { ComponentProps } from 'react';
|
|
4
|
+
import { type IconName } from '../icon';
|
|
5
|
+
declare function DropdownMenu({ ...props }: ComponentProps<typeof DropdownMenuPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
declare function DropdownMenuTrigger({ className, ...props }: ComponentProps<typeof DropdownMenuPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
declare function DropdownMenuPortal({ ...props }: ComponentProps<typeof DropdownMenuPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
declare const dropdownMenuContentVariants: (props?: ({
|
|
9
|
+
size?: "sm" | "md" | "lg" | null | undefined;
|
|
10
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
11
|
+
type DropdownMenuContentProps = ComponentProps<typeof DropdownMenuPrimitive.Content> & VariantProps<typeof dropdownMenuContentVariants> & {
|
|
12
|
+
container?: HTMLElement | null;
|
|
13
|
+
};
|
|
14
|
+
declare function DropdownMenuContent({ className, sideOffset, size, onCloseAutoFocus, container, ...props }: DropdownMenuContentProps): import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
declare function DropdownMenuGroup({ className, ...props }: ComponentProps<typeof DropdownMenuPrimitive.Group>): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
declare const dropdownMenuLabelVariants: (props?: ({
|
|
17
|
+
inset?: boolean | null | undefined;
|
|
18
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
19
|
+
type DropdownMenuLabelProps = ComponentProps<typeof DropdownMenuPrimitive.Label> & {
|
|
20
|
+
inset?: boolean;
|
|
21
|
+
};
|
|
22
|
+
declare function DropdownMenuLabel({ className, inset, ...props }: DropdownMenuLabelProps): import("react/jsx-runtime").JSX.Element;
|
|
23
|
+
declare const dropdownMenuItemVariants: (props?: ({
|
|
24
|
+
inset?: boolean | null | undefined;
|
|
25
|
+
variant?: "default" | null | undefined;
|
|
26
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
27
|
+
type DropdownMenuItemProps = ComponentProps<typeof DropdownMenuPrimitive.Item> & VariantProps<typeof dropdownMenuItemVariants> & {
|
|
28
|
+
icon?: IconName;
|
|
29
|
+
shortcut?: string;
|
|
30
|
+
closeOnSelect?: boolean;
|
|
31
|
+
iconStyle?: string;
|
|
32
|
+
};
|
|
33
|
+
declare function DropdownMenuItem({ className, inset, variant, icon, shortcut, children, closeOnSelect, iconStyle, onSelect, ...props }: DropdownMenuItemProps): import("react/jsx-runtime").JSX.Element;
|
|
34
|
+
type DropdownMenuCheckboxItemProps = ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem> & {
|
|
35
|
+
icon?: IconName;
|
|
36
|
+
shortcut?: string;
|
|
37
|
+
closeOnSelect?: boolean;
|
|
38
|
+
};
|
|
39
|
+
declare function DropdownMenuCheckboxItem({ className, children, checked, icon, shortcut, closeOnSelect, onSelect, ...props }: DropdownMenuCheckboxItemProps): import("react/jsx-runtime").JSX.Element;
|
|
40
|
+
declare function DropdownMenuRadioGroup({ className, ...props }: ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>): import("react/jsx-runtime").JSX.Element;
|
|
41
|
+
type DropdownMenuRadioItemProps = ComponentProps<typeof DropdownMenuPrimitive.RadioItem> & {
|
|
42
|
+
icon?: IconName;
|
|
43
|
+
closeOnSelect?: boolean;
|
|
44
|
+
};
|
|
45
|
+
declare function DropdownMenuRadioItem({ className, children, icon, closeOnSelect, onSelect, ...props }: DropdownMenuRadioItemProps): import("react/jsx-runtime").JSX.Element;
|
|
46
|
+
declare function DropdownMenuSeparator({ className, ...props }: ComponentProps<typeof DropdownMenuPrimitive.Separator>): import("react/jsx-runtime").JSX.Element;
|
|
47
|
+
type DropdownMenuShortcutProps = ComponentProps<'span'>;
|
|
48
|
+
declare function DropdownMenuShortcut({ className, ...props }: DropdownMenuShortcutProps): import("react/jsx-runtime").JSX.Element;
|
|
49
|
+
declare function DropdownMenuSub({ ...props }: ComponentProps<typeof DropdownMenuPrimitive.Sub>): import("react/jsx-runtime").JSX.Element;
|
|
50
|
+
type DropdownMenuSubTriggerProps = ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {
|
|
51
|
+
inset?: boolean;
|
|
52
|
+
icon?: IconName;
|
|
53
|
+
};
|
|
54
|
+
declare function DropdownMenuSubTrigger({ className, inset, icon, children, ...props }: DropdownMenuSubTriggerProps): import("react/jsx-runtime").JSX.Element;
|
|
55
|
+
declare function DropdownMenuSubContent({ className, ...props }: ComponentProps<typeof DropdownMenuPrimitive.SubContent>): import("react/jsx-runtime").JSX.Element;
|
|
56
|
+
export { DropdownMenu, DropdownMenuTrigger, DropdownMenuPortal, DropdownMenuContent, DropdownMenuGroup, DropdownMenuLabel, DropdownMenuItem, DropdownMenuCheckboxItem, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubTrigger, DropdownMenuSubContent, dropdownMenuContentVariants, dropdownMenuItemVariants, dropdownMenuLabelVariants, };
|
|
57
|
+
export type { DropdownMenuContentProps, DropdownMenuLabelProps, DropdownMenuItemProps, DropdownMenuCheckboxItemProps, DropdownMenuRadioItemProps, DropdownMenuSubTriggerProps, DropdownMenuShortcutProps, };
|
|
58
|
+
//# sourceMappingURL=dropdown-menu.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dropdown-menu.d.ts","sourceRoot":"","sources":["../../../src/components/dropdown-menu/dropdown-menu.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,280 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
|
|
3
|
+
import { cva } from 'class-variance-authority';
|
|
4
|
+
import { cn } from '../../utils/cn.js';
|
|
5
|
+
import { Icon } from '../icon/index.js';
|
|
6
|
+
function DropdownMenu({ ...props }) {
|
|
7
|
+
return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.Root, {
|
|
8
|
+
"data-slot": "dropdown-menu",
|
|
9
|
+
...props
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
function DropdownMenuTrigger({ className, ...props }) {
|
|
13
|
+
return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.Trigger, {
|
|
14
|
+
"data-slot": "dropdown-menu-trigger",
|
|
15
|
+
className: cn('outline-none', className),
|
|
16
|
+
...props
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
function DropdownMenuPortal({ ...props }) {
|
|
20
|
+
return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.Portal, {
|
|
21
|
+
"data-slot": "dropdown-menu-portal",
|
|
22
|
+
...props
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
const dropdownMenuContentVariants = cva([
|
|
26
|
+
'z-50 min-w-[180px] overflow-hidden rounded-10 p-4',
|
|
27
|
+
'bg-background-neutral-overlay text-foreground-neutral-subtle',
|
|
28
|
+
'shadow-tooltip',
|
|
29
|
+
'data-[state=open]:animate-in data-[state=closed]:animate-out',
|
|
30
|
+
'data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0',
|
|
31
|
+
'data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95',
|
|
32
|
+
'data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2',
|
|
33
|
+
'data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2'
|
|
34
|
+
], {
|
|
35
|
+
variants: {
|
|
36
|
+
size: {
|
|
37
|
+
sm: 'min-w-[160px]',
|
|
38
|
+
md: 'min-w-[200px]',
|
|
39
|
+
lg: 'min-w-[240px]'
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
defaultVariants: {
|
|
43
|
+
size: 'md'
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
function DropdownMenuContent({ className, sideOffset = 4, size, onCloseAutoFocus, container, ...props }) {
|
|
47
|
+
return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.Portal, {
|
|
48
|
+
container: container,
|
|
49
|
+
children: /*#__PURE__*/ _jsx(DropdownMenuPrimitive.Content, {
|
|
50
|
+
"data-slot": "dropdown-menu-content",
|
|
51
|
+
sideOffset: sideOffset,
|
|
52
|
+
className: cn(dropdownMenuContentVariants({
|
|
53
|
+
size
|
|
54
|
+
}), className),
|
|
55
|
+
onCloseAutoFocus: (e)=>{
|
|
56
|
+
e.preventDefault();
|
|
57
|
+
onCloseAutoFocus?.(e);
|
|
58
|
+
},
|
|
59
|
+
...props
|
|
60
|
+
})
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
function DropdownMenuGroup({ className, ...props }) {
|
|
64
|
+
return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.Group, {
|
|
65
|
+
"data-slot": "dropdown-menu-group",
|
|
66
|
+
className: cn('flex flex-col', className),
|
|
67
|
+
...props
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
const dropdownMenuLabelVariants = cva('px-8 py-4 text-xs leading-20 text-foreground-neutral-subtle select-none', {
|
|
71
|
+
variants: {
|
|
72
|
+
inset: {
|
|
73
|
+
true: 'pl-32'
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
function DropdownMenuLabel({ className, inset, ...props }) {
|
|
78
|
+
return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.Label, {
|
|
79
|
+
"data-slot": "dropdown-menu-label",
|
|
80
|
+
className: cn(dropdownMenuLabelVariants({
|
|
81
|
+
inset
|
|
82
|
+
}), className),
|
|
83
|
+
...props
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
const dropdownMenuItemVariants = cva([
|
|
87
|
+
'relative flex cursor-pointer select-none items-center gap-8 rounded-6 px-8 py-6',
|
|
88
|
+
'text-sm leading-20 text-foreground-neutral-subtle outline-none transition-colors',
|
|
89
|
+
'focus:bg-background-components-hover',
|
|
90
|
+
'data-disabled:pointer-events-none data-disabled:text-foreground-neutral-disabled'
|
|
91
|
+
], {
|
|
92
|
+
variants: {
|
|
93
|
+
inset: {
|
|
94
|
+
true: 'pl-32'
|
|
95
|
+
},
|
|
96
|
+
variant: {
|
|
97
|
+
default: ''
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
defaultVariants: {
|
|
101
|
+
variant: 'default'
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
function DropdownMenuItem({ className, inset, variant, icon, shortcut, children, closeOnSelect = true, iconStyle, onSelect, ...props }) {
|
|
105
|
+
return /*#__PURE__*/ _jsxs(DropdownMenuPrimitive.Item, {
|
|
106
|
+
"data-slot": "dropdown-menu-item",
|
|
107
|
+
className: cn(dropdownMenuItemVariants({
|
|
108
|
+
inset,
|
|
109
|
+
variant
|
|
110
|
+
}), className),
|
|
111
|
+
onSelect: (e)=>{
|
|
112
|
+
if (!closeOnSelect) e.preventDefault();
|
|
113
|
+
onSelect?.(e);
|
|
114
|
+
},
|
|
115
|
+
...props,
|
|
116
|
+
children: [
|
|
117
|
+
icon && /*#__PURE__*/ _jsx(Icon, {
|
|
118
|
+
name: icon,
|
|
119
|
+
className: cn('size-16 shrink-0 text-foreground-neutral-subtle', iconStyle)
|
|
120
|
+
}),
|
|
121
|
+
/*#__PURE__*/ _jsx("span", {
|
|
122
|
+
className: "flex-1 truncate",
|
|
123
|
+
children: children
|
|
124
|
+
}),
|
|
125
|
+
shortcut && /*#__PURE__*/ _jsx(DropdownMenuShortcut, {
|
|
126
|
+
children: shortcut
|
|
127
|
+
})
|
|
128
|
+
]
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
function DropdownMenuCheckboxItem({ className, children, checked, icon, shortcut, closeOnSelect = true, onSelect, ...props }) {
|
|
132
|
+
return /*#__PURE__*/ _jsxs(DropdownMenuPrimitive.CheckboxItem, {
|
|
133
|
+
"data-slot": "dropdown-menu-checkbox-item",
|
|
134
|
+
className: cn([
|
|
135
|
+
'relative flex cursor-pointer select-none items-center gap-8 rounded-6 py-6 pl-32 pr-8',
|
|
136
|
+
'text-sm leading-20 text-foreground-neutral-subtle outline-none transition-colors',
|
|
137
|
+
'focus:bg-background-components-hover',
|
|
138
|
+
'data-disabled:pointer-events-none data-disabled:text-foreground-neutral-disabled',
|
|
139
|
+
'data-[state=checked]:text-foreground-neutral-base'
|
|
140
|
+
], className),
|
|
141
|
+
checked: checked,
|
|
142
|
+
onSelect: (e)=>{
|
|
143
|
+
if (!closeOnSelect) e.preventDefault();
|
|
144
|
+
onSelect?.(e);
|
|
145
|
+
},
|
|
146
|
+
...props,
|
|
147
|
+
children: [
|
|
148
|
+
/*#__PURE__*/ _jsx("span", {
|
|
149
|
+
className: "absolute left-8 flex size-16 items-center justify-center",
|
|
150
|
+
children: /*#__PURE__*/ _jsx(DropdownMenuPrimitive.ItemIndicator, {
|
|
151
|
+
children: /*#__PURE__*/ _jsx(Icon, {
|
|
152
|
+
name: "check",
|
|
153
|
+
className: "size-14 text-foreground-neutral-base"
|
|
154
|
+
})
|
|
155
|
+
})
|
|
156
|
+
}),
|
|
157
|
+
icon && /*#__PURE__*/ _jsx(Icon, {
|
|
158
|
+
name: icon,
|
|
159
|
+
className: "size-16 shrink-0 text-foreground-neutral-subtle"
|
|
160
|
+
}),
|
|
161
|
+
/*#__PURE__*/ _jsx("span", {
|
|
162
|
+
className: "flex-1 truncate",
|
|
163
|
+
children: children
|
|
164
|
+
}),
|
|
165
|
+
shortcut && /*#__PURE__*/ _jsx(DropdownMenuShortcut, {
|
|
166
|
+
children: shortcut
|
|
167
|
+
})
|
|
168
|
+
]
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
function DropdownMenuRadioGroup({ className, ...props }) {
|
|
172
|
+
return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.RadioGroup, {
|
|
173
|
+
"data-slot": "dropdown-menu-radio-group",
|
|
174
|
+
className: cn('flex flex-col', className),
|
|
175
|
+
...props
|
|
176
|
+
});
|
|
177
|
+
}
|
|
178
|
+
function DropdownMenuRadioItem({ className, children, icon, closeOnSelect = true, onSelect, ...props }) {
|
|
179
|
+
return /*#__PURE__*/ _jsxs(DropdownMenuPrimitive.RadioItem, {
|
|
180
|
+
"data-slot": "dropdown-menu-radio-item",
|
|
181
|
+
className: cn([
|
|
182
|
+
'relative flex cursor-pointer select-none items-center gap-8 rounded-6 py-6 pl-32 pr-8',
|
|
183
|
+
'text-sm leading-20 text-foreground-neutral-subtle outline-none transition-colors',
|
|
184
|
+
'focus:bg-background-components-hover',
|
|
185
|
+
'data-disabled:pointer-events-none data-disabled:text-foreground-neutral-disabled',
|
|
186
|
+
'data-[state=checked]:text-foreground-neutral-base'
|
|
187
|
+
], className),
|
|
188
|
+
onSelect: (e)=>{
|
|
189
|
+
if (!closeOnSelect) e.preventDefault();
|
|
190
|
+
onSelect?.(e);
|
|
191
|
+
},
|
|
192
|
+
...props,
|
|
193
|
+
children: [
|
|
194
|
+
/*#__PURE__*/ _jsx("span", {
|
|
195
|
+
className: "absolute left-8 flex size-16 items-center justify-center",
|
|
196
|
+
children: /*#__PURE__*/ _jsx(DropdownMenuPrimitive.ItemIndicator, {
|
|
197
|
+
children: /*#__PURE__*/ _jsx(Icon, {
|
|
198
|
+
name: "ellipseMiniSolid",
|
|
199
|
+
className: "size-6 text-foreground-neutral-base"
|
|
200
|
+
})
|
|
201
|
+
})
|
|
202
|
+
}),
|
|
203
|
+
icon && /*#__PURE__*/ _jsx(Icon, {
|
|
204
|
+
name: icon,
|
|
205
|
+
className: "size-16 shrink-0 text-foreground-neutral-subtle"
|
|
206
|
+
}),
|
|
207
|
+
/*#__PURE__*/ _jsx("span", {
|
|
208
|
+
className: "flex-1 truncate",
|
|
209
|
+
children: children
|
|
210
|
+
})
|
|
211
|
+
]
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
function DropdownMenuSeparator({ className, ...props }) {
|
|
215
|
+
return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.Separator, {
|
|
216
|
+
"data-slot": "dropdown-menu-separator",
|
|
217
|
+
className: cn('relative -mx-4 my-4 h-px', 'bg-border-neutral-menu-top', 'after:absolute after:inset-x-0 after:top-px after:h-px', 'after:bg-border-neutral-menu-bottom', className),
|
|
218
|
+
...props
|
|
219
|
+
});
|
|
220
|
+
}
|
|
221
|
+
function DropdownMenuShortcut({ className, ...props }) {
|
|
222
|
+
return /*#__PURE__*/ _jsx("span", {
|
|
223
|
+
"data-slot": "dropdown-menu-shortcut",
|
|
224
|
+
className: cn('ml-auto text-xs leading-20 text-foreground-neutral-muted tabular-nums', className),
|
|
225
|
+
...props
|
|
226
|
+
});
|
|
227
|
+
}
|
|
228
|
+
function DropdownMenuSub({ ...props }) {
|
|
229
|
+
return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.Sub, {
|
|
230
|
+
"data-slot": "dropdown-menu-sub",
|
|
231
|
+
...props
|
|
232
|
+
});
|
|
233
|
+
}
|
|
234
|
+
function DropdownMenuSubTrigger({ className, inset, icon, children, ...props }) {
|
|
235
|
+
return /*#__PURE__*/ _jsxs(DropdownMenuPrimitive.SubTrigger, {
|
|
236
|
+
"data-slot": "dropdown-menu-sub-trigger",
|
|
237
|
+
className: cn([
|
|
238
|
+
'relative flex cursor-pointer select-none items-center gap-8 rounded-6 px-8 py-6',
|
|
239
|
+
'text-sm leading-20 text-foreground-neutral-subtle outline-none transition-colors',
|
|
240
|
+
'focus:bg-background-components-hover',
|
|
241
|
+
'data-[state=open]:bg-background-components-hover',
|
|
242
|
+
'data-disabled:pointer-events-none data-disabled:text-foreground-neutral-disabled',
|
|
243
|
+
'data-[state=checked]:text-foreground-neutral-base'
|
|
244
|
+
], inset && 'pl-32', className),
|
|
245
|
+
...props,
|
|
246
|
+
children: [
|
|
247
|
+
icon && /*#__PURE__*/ _jsx(Icon, {
|
|
248
|
+
name: icon,
|
|
249
|
+
className: "size-16 shrink-0 text-foreground-neutral-subtle"
|
|
250
|
+
}),
|
|
251
|
+
/*#__PURE__*/ _jsx("span", {
|
|
252
|
+
className: "flex-1 truncate",
|
|
253
|
+
children: children
|
|
254
|
+
}),
|
|
255
|
+
/*#__PURE__*/ _jsx(Icon, {
|
|
256
|
+
name: "chevronRight",
|
|
257
|
+
className: "ml-auto size-14 text-foreground-neutral-muted"
|
|
258
|
+
})
|
|
259
|
+
]
|
|
260
|
+
});
|
|
261
|
+
}
|
|
262
|
+
function DropdownMenuSubContent({ className, ...props }) {
|
|
263
|
+
return /*#__PURE__*/ _jsx(DropdownMenuPrimitive.SubContent, {
|
|
264
|
+
"data-slot": "dropdown-menu-sub-content",
|
|
265
|
+
className: cn([
|
|
266
|
+
'z-50 min-w-180 overflow-hidden rounded-10 p-4',
|
|
267
|
+
'bg-background-neutral-overlay text-foreground-neutral-subtle',
|
|
268
|
+
'shadow-tooltip',
|
|
269
|
+
'data-[state=open]:animate-in data-[state=closed]:animate-out',
|
|
270
|
+
'data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0',
|
|
271
|
+
'data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95',
|
|
272
|
+
'data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2',
|
|
273
|
+
'data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2'
|
|
274
|
+
], className),
|
|
275
|
+
...props
|
|
276
|
+
});
|
|
277
|
+
}
|
|
278
|
+
export { DropdownMenu, DropdownMenuTrigger, DropdownMenuPortal, DropdownMenuContent, DropdownMenuGroup, DropdownMenuLabel, DropdownMenuItem, DropdownMenuCheckboxItem, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubTrigger, DropdownMenuSubContent, dropdownMenuContentVariants, dropdownMenuItemVariants, dropdownMenuLabelVariants };
|
|
279
|
+
|
|
280
|
+
//# sourceMappingURL=dropdown-menu.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/components/dropdown-menu/dropdown-menu.tsx"],"sourcesContent":["import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';\nimport {cva, type VariantProps} from 'class-variance-authority';\nimport type {ComponentProps} from 'react';\nimport {cn} from 'utils/cn';\nimport {Icon, type IconName} from '../icon';\n\nfunction DropdownMenu({...props}: ComponentProps<typeof DropdownMenuPrimitive.Root>) {\n return <DropdownMenuPrimitive.Root data-slot=\"dropdown-menu\" {...props} />;\n}\n\nfunction DropdownMenuTrigger({\n className,\n ...props\n}: ComponentProps<typeof DropdownMenuPrimitive.Trigger>) {\n return (\n <DropdownMenuPrimitive.Trigger\n data-slot=\"dropdown-menu-trigger\"\n className={cn('outline-none', className)}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuPortal({...props}: ComponentProps<typeof DropdownMenuPrimitive.Portal>) {\n return <DropdownMenuPrimitive.Portal data-slot=\"dropdown-menu-portal\" {...props} />;\n}\n\nconst dropdownMenuContentVariants = cva(\n [\n 'z-50 min-w-[180px] overflow-hidden rounded-10 p-4',\n 'bg-background-neutral-overlay text-foreground-neutral-subtle',\n 'shadow-tooltip',\n 'data-[state=open]:animate-in data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0',\n 'data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95',\n 'data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2',\n 'data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\n ],\n {\n variants: {\n size: {\n sm: 'min-w-[160px]',\n md: 'min-w-[200px]',\n lg: 'min-w-[240px]',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n },\n);\n\ntype DropdownMenuContentProps = ComponentProps<typeof DropdownMenuPrimitive.Content> &\n VariantProps<typeof dropdownMenuContentVariants> & {\n container?: HTMLElement | null;\n };\n\nfunction DropdownMenuContent({\n className,\n sideOffset = 4,\n size,\n onCloseAutoFocus,\n container,\n ...props\n}: DropdownMenuContentProps) {\n return (\n <DropdownMenuPrimitive.Portal container={container}>\n <DropdownMenuPrimitive.Content\n data-slot=\"dropdown-menu-content\"\n sideOffset={sideOffset}\n className={cn(dropdownMenuContentVariants({size}), className)}\n onCloseAutoFocus={(e) => {\n e.preventDefault();\n onCloseAutoFocus?.(e);\n }}\n {...props}\n />\n </DropdownMenuPrimitive.Portal>\n );\n}\n\nfunction DropdownMenuGroup({\n className,\n ...props\n}: ComponentProps<typeof DropdownMenuPrimitive.Group>) {\n return (\n <DropdownMenuPrimitive.Group\n data-slot=\"dropdown-menu-group\"\n className={cn('flex flex-col', className)}\n {...props}\n />\n );\n}\n\nconst dropdownMenuLabelVariants = cva(\n 'px-8 py-4 text-xs leading-20 text-foreground-neutral-subtle select-none',\n {\n variants: {\n inset: {\n true: 'pl-32',\n },\n },\n },\n);\n\ntype DropdownMenuLabelProps = ComponentProps<typeof DropdownMenuPrimitive.Label> & {\n inset?: boolean;\n};\n\nfunction DropdownMenuLabel({className, inset, ...props}: DropdownMenuLabelProps) {\n return (\n <DropdownMenuPrimitive.Label\n data-slot=\"dropdown-menu-label\"\n className={cn(dropdownMenuLabelVariants({inset}), className)}\n {...props}\n />\n );\n}\n\nconst dropdownMenuItemVariants = cva(\n [\n 'relative flex cursor-pointer select-none items-center gap-8 rounded-6 px-8 py-6',\n 'text-sm leading-20 text-foreground-neutral-subtle outline-none transition-colors',\n 'focus:bg-background-components-hover',\n 'data-disabled:pointer-events-none data-disabled:text-foreground-neutral-disabled',\n ],\n {\n variants: {\n inset: {\n true: 'pl-32',\n },\n variant: {\n default: '',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n },\n);\n\ntype DropdownMenuItemProps = ComponentProps<typeof DropdownMenuPrimitive.Item> &\n VariantProps<typeof dropdownMenuItemVariants> & {\n icon?: IconName;\n shortcut?: string;\n closeOnSelect?: boolean;\n iconStyle?: string;\n };\n\nfunction DropdownMenuItem({\n className,\n inset,\n variant,\n icon,\n shortcut,\n children,\n closeOnSelect = true,\n iconStyle,\n onSelect,\n ...props\n}: DropdownMenuItemProps) {\n return (\n <DropdownMenuPrimitive.Item\n data-slot=\"dropdown-menu-item\"\n className={cn(dropdownMenuItemVariants({inset, variant}), className)}\n onSelect={(e) => {\n if (!closeOnSelect) e.preventDefault();\n onSelect?.(e);\n }}\n {...props}\n >\n {icon && (\n <Icon\n name={icon}\n className={cn('size-16 shrink-0 text-foreground-neutral-subtle', iconStyle)}\n />\n )}\n <span className=\"flex-1 truncate\">{children}</span>\n {shortcut && <DropdownMenuShortcut>{shortcut}</DropdownMenuShortcut>}\n </DropdownMenuPrimitive.Item>\n );\n}\n\ntype DropdownMenuCheckboxItemProps = ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem> & {\n icon?: IconName;\n shortcut?: string;\n closeOnSelect?: boolean;\n};\n\nfunction DropdownMenuCheckboxItem({\n className,\n children,\n checked,\n icon,\n shortcut,\n closeOnSelect = true,\n onSelect,\n ...props\n}: DropdownMenuCheckboxItemProps) {\n return (\n <DropdownMenuPrimitive.CheckboxItem\n data-slot=\"dropdown-menu-checkbox-item\"\n className={cn(\n [\n 'relative flex cursor-pointer select-none items-center gap-8 rounded-6 py-6 pl-32 pr-8',\n 'text-sm leading-20 text-foreground-neutral-subtle outline-none transition-colors',\n 'focus:bg-background-components-hover',\n 'data-disabled:pointer-events-none data-disabled:text-foreground-neutral-disabled',\n 'data-[state=checked]:text-foreground-neutral-base',\n ],\n className,\n )}\n checked={checked}\n onSelect={(e) => {\n if (!closeOnSelect) e.preventDefault();\n onSelect?.(e);\n }}\n {...props}\n >\n <span className=\"absolute left-8 flex size-16 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <Icon name=\"check\" className=\"size-14 text-foreground-neutral-base\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {icon && <Icon name={icon} className=\"size-16 shrink-0 text-foreground-neutral-subtle\" />}\n <span className=\"flex-1 truncate\">{children}</span>\n {shortcut && <DropdownMenuShortcut>{shortcut}</DropdownMenuShortcut>}\n </DropdownMenuPrimitive.CheckboxItem>\n );\n}\n\nfunction DropdownMenuRadioGroup({\n className,\n ...props\n}: ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>) {\n return (\n <DropdownMenuPrimitive.RadioGroup\n data-slot=\"dropdown-menu-radio-group\"\n className={cn('flex flex-col', className)}\n {...props}\n />\n );\n}\n\ntype DropdownMenuRadioItemProps = ComponentProps<typeof DropdownMenuPrimitive.RadioItem> & {\n icon?: IconName;\n closeOnSelect?: boolean;\n};\n\nfunction DropdownMenuRadioItem({\n className,\n children,\n icon,\n closeOnSelect = true,\n onSelect,\n ...props\n}: DropdownMenuRadioItemProps) {\n return (\n <DropdownMenuPrimitive.RadioItem\n data-slot=\"dropdown-menu-radio-item\"\n className={cn(\n [\n 'relative flex cursor-pointer select-none items-center gap-8 rounded-6 py-6 pl-32 pr-8',\n 'text-sm leading-20 text-foreground-neutral-subtle outline-none transition-colors',\n 'focus:bg-background-components-hover',\n 'data-disabled:pointer-events-none data-disabled:text-foreground-neutral-disabled',\n 'data-[state=checked]:text-foreground-neutral-base',\n ],\n className,\n )}\n onSelect={(e) => {\n if (!closeOnSelect) e.preventDefault();\n onSelect?.(e);\n }}\n {...props}\n >\n <span className=\"absolute left-8 flex size-16 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <Icon name=\"ellipseMiniSolid\" className=\"size-6 text-foreground-neutral-base\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {icon && <Icon name={icon} className=\"size-16 shrink-0 text-foreground-neutral-subtle\" />}\n <span className=\"flex-1 truncate\">{children}</span>\n </DropdownMenuPrimitive.RadioItem>\n );\n}\n\nfunction DropdownMenuSeparator({\n className,\n ...props\n}: ComponentProps<typeof DropdownMenuPrimitive.Separator>) {\n return (\n <DropdownMenuPrimitive.Separator\n data-slot=\"dropdown-menu-separator\"\n className={cn(\n 'relative -mx-4 my-4 h-px',\n 'bg-border-neutral-menu-top',\n 'after:absolute after:inset-x-0 after:top-px after:h-px',\n 'after:bg-border-neutral-menu-bottom',\n className,\n )}\n {...props}\n />\n );\n}\n\ntype DropdownMenuShortcutProps = ComponentProps<'span'>;\n\nfunction DropdownMenuShortcut({className, ...props}: DropdownMenuShortcutProps) {\n return (\n <span\n data-slot=\"dropdown-menu-shortcut\"\n className={cn(\n 'ml-auto text-xs leading-20 text-foreground-neutral-muted tabular-nums',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuSub({...props}: ComponentProps<typeof DropdownMenuPrimitive.Sub>) {\n return <DropdownMenuPrimitive.Sub data-slot=\"dropdown-menu-sub\" {...props} />;\n}\n\ntype DropdownMenuSubTriggerProps = ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {\n inset?: boolean;\n icon?: IconName;\n};\n\nfunction DropdownMenuSubTrigger({\n className,\n inset,\n icon,\n children,\n ...props\n}: DropdownMenuSubTriggerProps) {\n return (\n <DropdownMenuPrimitive.SubTrigger\n data-slot=\"dropdown-menu-sub-trigger\"\n className={cn(\n [\n 'relative flex cursor-pointer select-none items-center gap-8 rounded-6 px-8 py-6',\n 'text-sm leading-20 text-foreground-neutral-subtle outline-none transition-colors',\n 'focus:bg-background-components-hover',\n 'data-[state=open]:bg-background-components-hover',\n 'data-disabled:pointer-events-none data-disabled:text-foreground-neutral-disabled',\n 'data-[state=checked]:text-foreground-neutral-base',\n ],\n inset && 'pl-32',\n className,\n )}\n {...props}\n >\n {icon && <Icon name={icon} className=\"size-16 shrink-0 text-foreground-neutral-subtle\" />}\n <span className=\"flex-1 truncate\">{children}</span>\n <Icon name=\"chevronRight\" className=\"ml-auto size-14 text-foreground-neutral-muted\" />\n </DropdownMenuPrimitive.SubTrigger>\n );\n}\n\nfunction DropdownMenuSubContent({\n className,\n ...props\n}: ComponentProps<typeof DropdownMenuPrimitive.SubContent>) {\n return (\n <DropdownMenuPrimitive.SubContent\n data-slot=\"dropdown-menu-sub-content\"\n className={cn(\n [\n 'z-50 min-w-180 overflow-hidden rounded-10 p-4',\n 'bg-background-neutral-overlay text-foreground-neutral-subtle',\n 'shadow-tooltip',\n 'data-[state=open]:animate-in data-[state=closed]:animate-out',\n 'data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0',\n 'data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95',\n 'data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2',\n 'data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\n ],\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n DropdownMenu,\n DropdownMenuTrigger,\n DropdownMenuPortal,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuLabel,\n DropdownMenuItem,\n DropdownMenuCheckboxItem,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuSub,\n DropdownMenuSubTrigger,\n DropdownMenuSubContent,\n dropdownMenuContentVariants,\n dropdownMenuItemVariants,\n dropdownMenuLabelVariants,\n};\n\nexport type {\n DropdownMenuContentProps,\n DropdownMenuLabelProps,\n DropdownMenuItemProps,\n DropdownMenuCheckboxItemProps,\n DropdownMenuRadioItemProps,\n DropdownMenuSubTriggerProps,\n DropdownMenuShortcutProps,\n};\n"],"names":["DropdownMenuPrimitive","cva","cn","Icon","DropdownMenu","props","Root","data-slot","DropdownMenuTrigger","className","Trigger","DropdownMenuPortal","Portal","dropdownMenuContentVariants","variants","size","sm","md","lg","defaultVariants","DropdownMenuContent","sideOffset","onCloseAutoFocus","container","Content","e","preventDefault","DropdownMenuGroup","Group","dropdownMenuLabelVariants","inset","true","DropdownMenuLabel","Label","dropdownMenuItemVariants","variant","default","DropdownMenuItem","icon","shortcut","children","closeOnSelect","iconStyle","onSelect","Item","name","span","DropdownMenuShortcut","DropdownMenuCheckboxItem","checked","CheckboxItem","ItemIndicator","DropdownMenuRadioGroup","RadioGroup","DropdownMenuRadioItem","RadioItem","DropdownMenuSeparator","Separator","DropdownMenuSub","Sub","DropdownMenuSubTrigger","SubTrigger","DropdownMenuSubContent","SubContent"],"mappings":"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"}
|