@lglab/compose-ui 0.28.0 → 0.30.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/dist/accordion.d.ts +49 -40
- package/dist/accordion.d.ts.map +1 -0
- package/dist/accordion.js +47 -45
- package/dist/accordion.js.map +1 -0
- package/dist/alert-dialog.d.ts +93 -87
- package/dist/alert-dialog.d.ts.map +1 -0
- package/dist/alert-dialog.js +94 -111
- package/dist/alert-dialog.js.map +1 -0
- package/dist/autocomplete.d.ts +99 -96
- package/dist/autocomplete.d.ts.map +1 -0
- package/dist/autocomplete.js +92 -116
- package/dist/autocomplete.js.map +1 -0
- package/dist/avatar.d.ts +56 -47
- package/dist/avatar.d.ts.map +1 -0
- package/dist/avatar.js +66 -79
- package/dist/avatar.js.map +1 -0
- package/dist/badge.d.ts +48 -42
- package/dist/badge.d.ts.map +1 -0
- package/dist/badge.js +195 -202
- package/dist/badge.js.map +1 -0
- package/dist/button.d.ts +26 -21
- package/dist/button.d.ts.map +1 -0
- package/dist/button.js +24 -24
- package/dist/button.js.map +1 -0
- package/dist/card.d.ts +105 -99
- package/dist/card.d.ts.map +1 -0
- package/dist/card.js +105 -66
- package/dist/card.js.map +1 -0
- package/dist/checkbox-group.d.ts +16 -12
- package/dist/checkbox-group.d.ts.map +1 -0
- package/dist/checkbox-group.js +18 -14
- package/dist/checkbox-group.js.map +1 -0
- package/dist/checkbox.d.ts +25 -19
- package/dist/checkbox.d.ts.map +1 -0
- package/dist/checkbox.js +26 -32
- package/dist/checkbox.js.map +1 -0
- package/dist/collapsible.d.ts +32 -26
- package/dist/collapsible.d.ts.map +1 -0
- package/dist/collapsible.js +32 -32
- package/dist/collapsible.js.map +1 -0
- package/dist/combobox.d.ts +191 -182
- package/dist/combobox.d.ts.map +1 -0
- package/dist/combobox.js +176 -250
- package/dist/combobox.js.map +1 -0
- package/dist/components/table/filters.d.ts +29 -0
- package/dist/components/table/filters.d.ts.map +1 -0
- package/dist/components/table/filters.js +47 -0
- package/dist/components/table/filters.js.map +1 -0
- package/dist/components/table/primitives.d.ts +93 -0
- package/dist/components/table/primitives.d.ts.map +1 -0
- package/dist/components/table/primitives.js +129 -0
- package/dist/components/table/primitives.js.map +1 -0
- package/dist/components/table/sort.js +17 -0
- package/dist/components/table/sort.js.map +1 -0
- package/dist/components/table/types.d.ts +101 -0
- package/dist/components/table/types.d.ts.map +1 -0
- package/dist/context-menu.d.ts +151 -138
- package/dist/context-menu.d.ts.map +1 -0
- package/dist/context-menu.js +151 -173
- package/dist/context-menu.js.map +1 -0
- package/dist/dialog.d.ts +101 -92
- package/dist/dialog.d.ts.map +1 -0
- package/dist/dialog.js +101 -105
- package/dist/dialog.js.map +1 -0
- package/dist/drawer.d.ts +109 -99
- package/dist/drawer.d.ts.map +1 -0
- package/dist/drawer.js +120 -111
- package/dist/drawer.js.map +1 -0
- package/dist/field.d.ts +61 -54
- package/dist/field.d.ts.map +1 -0
- package/dist/field.js +58 -27
- package/dist/field.js.map +1 -0
- package/dist/fieldset.d.ts +24 -19
- package/dist/fieldset.d.ts.map +1 -0
- package/dist/fieldset.js +26 -18
- package/dist/fieldset.js.map +1 -0
- package/dist/form.d.ts +16 -12
- package/dist/form.d.ts.map +1 -0
- package/dist/form.js +18 -8
- package/dist/form.js.map +1 -0
- package/dist/index.d.ts +48 -2115
- package/dist/index.js +47 -318
- package/dist/input.d.ts +16 -12
- package/dist/input.d.ts.map +1 -0
- package/dist/input.js +19 -9
- package/dist/input.js.map +1 -0
- package/dist/lib/arrow-svg.js +28 -0
- package/dist/lib/arrow-svg.js.map +1 -0
- package/dist/lib/button-variants.d.ts +6 -0
- package/dist/lib/button-variants.d.ts.map +1 -0
- package/dist/lib/button-variants.js +31 -0
- package/dist/lib/button-variants.js.map +1 -0
- package/dist/lib/control-variants.d.ts +6 -0
- package/dist/lib/control-variants.d.ts.map +1 -0
- package/dist/lib/control-variants.js +38 -0
- package/dist/lib/control-variants.js.map +1 -0
- package/dist/lib/form-variants.js +11 -0
- package/dist/lib/form-variants.js.map +1 -0
- package/dist/lib/tooltip-variants.d.ts +5 -0
- package/dist/lib/tooltip-variants.d.ts.map +1 -0
- package/dist/lib/tooltip-variants.js +36 -0
- package/dist/lib/tooltip-variants.js.map +1 -0
- package/dist/lib/utils.js +11 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/menu.d.ts +151 -138
- package/dist/menu.d.ts.map +1 -0
- package/dist/menu.js +151 -146
- package/dist/menu.js.map +1 -0
- package/dist/menubar.d.ts +168 -155
- package/dist/menubar.d.ts.map +1 -0
- package/dist/menubar.js +163 -169
- package/dist/menubar.js.map +1 -0
- package/dist/meter.d.ts +53 -43
- package/dist/meter.d.ts.map +1 -0
- package/dist/meter.js +59 -64
- package/dist/meter.js.map +1 -0
- package/dist/navigation-menu.d.ts +111 -96
- package/dist/navigation-menu.d.ts.map +1 -0
- package/dist/navigation-menu.js +117 -175
- package/dist/navigation-menu.js.map +1 -0
- package/dist/number-field.d.ts +64 -54
- package/dist/number-field.d.ts.map +1 -0
- package/dist/number-field.js +61 -69
- package/dist/number-field.js.map +1 -0
- package/dist/pagination.d.ts +184 -0
- package/dist/pagination.d.ts.map +1 -0
- package/dist/pagination.js +164 -0
- package/dist/pagination.js.map +1 -0
- package/dist/popover.d.ts +90 -82
- package/dist/popover.d.ts.map +1 -0
- package/dist/popover.js +85 -94
- package/dist/popover.js.map +1 -0
- package/dist/preview-card.d.ts +58 -54
- package/dist/preview-card.d.ts.map +1 -0
- package/dist/preview-card.js +57 -81
- package/dist/preview-card.js.map +1 -0
- package/dist/progress.d.ts +48 -40
- package/dist/progress.d.ts.map +1 -0
- package/dist/progress.js +46 -50
- package/dist/progress.js.map +1 -0
- package/dist/radio-group.d.ts +16 -12
- package/dist/radio-group.d.ts.map +1 -0
- package/dist/radio-group.js +18 -14
- package/dist/radio-group.js.map +1 -0
- package/dist/radio.d.ts +24 -19
- package/dist/radio.d.ts.map +1 -0
- package/dist/radio.js +25 -34
- package/dist/radio.js.map +1 -0
- package/dist/scroll-area.d.ts +57 -47
- package/dist/scroll-area.d.ts.map +1 -0
- package/dist/scroll-area.js +54 -56
- package/dist/scroll-area.js.map +1 -0
- package/dist/select.d.ts +146 -133
- package/dist/select.d.ts.map +1 -0
- package/dist/select.js +133 -167
- package/dist/select.js.map +1 -0
- package/dist/separator.d.ts +17 -12
- package/dist/separator.d.ts.map +1 -0
- package/dist/separator.js +19 -23
- package/dist/separator.js.map +1 -0
- package/dist/skeleton.d.ts +20 -0
- package/dist/skeleton.d.ts.map +1 -0
- package/dist/skeleton.js +27 -0
- package/dist/skeleton.js.map +1 -0
- package/dist/slider.d.ts +56 -47
- package/dist/slider.d.ts.map +1 -0
- package/dist/slider.js +53 -62
- package/dist/slider.js.map +1 -0
- package/dist/styles/default.css +15 -1
- package/dist/switch.d.ts +24 -19
- package/dist/switch.d.ts.map +1 -0
- package/dist/switch.js +23 -39
- package/dist/switch.js.map +1 -0
- package/dist/table/index.d.ts +5 -0
- package/dist/table/index.js +5 -0
- package/dist/table/use-table.d.ts +9 -0
- package/dist/table/use-table.d.ts.map +1 -0
- package/dist/table/use-table.js +256 -0
- package/dist/table/use-table.js.map +1 -0
- package/dist/tabs.d.ts +60 -49
- package/dist/tabs.d.ts.map +1 -0
- package/dist/tabs.js +76 -84
- package/dist/tabs.js.map +1 -0
- package/dist/textarea.d.ts +15 -11
- package/dist/textarea.d.ts.map +1 -0
- package/dist/textarea.js +18 -14
- package/dist/textarea.js.map +1 -0
- package/dist/toast.d.ts +87 -81
- package/dist/toast.d.ts.map +1 -0
- package/dist/toast.js +79 -150
- package/dist/toast.js.map +1 -0
- package/dist/toggle-group.d.ts +34 -29
- package/dist/toggle-group.d.ts.map +1 -0
- package/dist/toggle-group.js +31 -34
- package/dist/toggle-group.js.map +1 -0
- package/dist/toggle.d.ts +24 -21
- package/dist/toggle.d.ts.map +1 -0
- package/dist/toggle.js +22 -15
- package/dist/toggle.js.map +1 -0
- package/dist/toolbar.d.ts +64 -56
- package/dist/toolbar.d.ts.map +1 -0
- package/dist/toolbar.js +57 -68
- package/dist/toolbar.js.map +1 -0
- package/dist/tooltip.d.ts +67 -62
- package/dist/tooltip.d.ts.map +1 -0
- package/dist/tooltip.js +65 -90
- package/dist/tooltip.js.map +1 -0
- package/package.json +25 -13
- package/dist/arrow-svg-C6zQTvgS.js +0 -40
- package/dist/button-variants-CbFMPwc8.js +0 -33
- package/dist/control-variants-Bwep4n0y.js +0 -37
- package/dist/form-variants-LJ8gIbk0.js +0 -9
- package/dist/utils-B6yFEsav.js +0 -8
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import { cn } from "../../lib/utils.js";
|
|
4
|
+
import "react";
|
|
5
|
+
import { cva } from "class-variance-authority";
|
|
6
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
7
|
+
|
|
8
|
+
//#region src/components/table/primitives.tsx
|
|
9
|
+
const tableVariants = cva("w-full caption-bottom text-sm", {
|
|
10
|
+
variants: {
|
|
11
|
+
variant: {
|
|
12
|
+
default: "",
|
|
13
|
+
striped: "[&_tbody_tr:nth-child(even)]:bg-muted/50",
|
|
14
|
+
bordered: "[&_th:not(:last-child)]:border-r [&_td:not(:last-child)]:border-r [&_th]:border-border [&_td]:border-border"
|
|
15
|
+
},
|
|
16
|
+
size: {
|
|
17
|
+
default: "",
|
|
18
|
+
compact: "[&_th]:h-8 [&_th]:px-2 [&_td]:p-2.5"
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
defaultVariants: {
|
|
22
|
+
variant: "default",
|
|
23
|
+
size: "default"
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
const TableRoot = ({ className, variant, size, ...props }) => {
|
|
27
|
+
return /* @__PURE__ */ jsx("div", {
|
|
28
|
+
className: "relative w-full overflow-x-auto",
|
|
29
|
+
children: /* @__PURE__ */ jsx("table", {
|
|
30
|
+
className: cn(tableVariants({
|
|
31
|
+
variant,
|
|
32
|
+
size
|
|
33
|
+
}), className),
|
|
34
|
+
...props
|
|
35
|
+
})
|
|
36
|
+
});
|
|
37
|
+
};
|
|
38
|
+
TableRoot.displayName = "TableRoot";
|
|
39
|
+
const TableHeader = ({ className, ...props }) => {
|
|
40
|
+
return /* @__PURE__ */ jsx("thead", {
|
|
41
|
+
className: cn("[&_tr]:border-b", className),
|
|
42
|
+
...props
|
|
43
|
+
});
|
|
44
|
+
};
|
|
45
|
+
TableHeader.displayName = "TableHeader";
|
|
46
|
+
const TableBody = ({ className, ...props }) => {
|
|
47
|
+
return /* @__PURE__ */ jsx("tbody", {
|
|
48
|
+
className: cn("[&_tr:last-child]:border-0", className),
|
|
49
|
+
...props
|
|
50
|
+
});
|
|
51
|
+
};
|
|
52
|
+
TableBody.displayName = "TableBody";
|
|
53
|
+
const TableFooter = ({ className, ...props }) => {
|
|
54
|
+
return /* @__PURE__ */ jsx("tfoot", {
|
|
55
|
+
className: cn("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0", className),
|
|
56
|
+
...props
|
|
57
|
+
});
|
|
58
|
+
};
|
|
59
|
+
TableFooter.displayName = "TableFooter";
|
|
60
|
+
const TableRow = ({ className, ...props }) => {
|
|
61
|
+
return /* @__PURE__ */ jsx("tr", {
|
|
62
|
+
className: cn("border-b transition-colors hover:bg-muted/50", className),
|
|
63
|
+
...props
|
|
64
|
+
});
|
|
65
|
+
};
|
|
66
|
+
TableRow.displayName = "TableRow";
|
|
67
|
+
const ariaSortValues = {
|
|
68
|
+
asc: "ascending",
|
|
69
|
+
desc: "descending"
|
|
70
|
+
};
|
|
71
|
+
const SortIcon = ({ direction }) => {
|
|
72
|
+
return /* @__PURE__ */ jsx("svg", {
|
|
73
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
74
|
+
width: "16",
|
|
75
|
+
height: "16",
|
|
76
|
+
viewBox: "0 0 24 24",
|
|
77
|
+
fill: "none",
|
|
78
|
+
stroke: "currentColor",
|
|
79
|
+
strokeWidth: "2",
|
|
80
|
+
strokeLinecap: "round",
|
|
81
|
+
strokeLinejoin: "round",
|
|
82
|
+
className: "ml-1 inline-block",
|
|
83
|
+
"aria-hidden": "true",
|
|
84
|
+
children: direction === "asc" ? /* @__PURE__ */ jsx("path", { d: "m18 15-6-6-6 6" }) : direction === "desc" ? /* @__PURE__ */ jsx("path", { d: "m6 9 6 6 6-6" }) : /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("path", { d: "m7 15 5 5 5-5" }), /* @__PURE__ */ jsx("path", { d: "m7 9 5-5 5 5" })] })
|
|
85
|
+
});
|
|
86
|
+
};
|
|
87
|
+
const TableHead = ({ className, sortable, sortDirection, onSort, children, ...props }) => {
|
|
88
|
+
const isInteractive = sortable && onSort;
|
|
89
|
+
const handleClick = () => {
|
|
90
|
+
if (isInteractive) onSort();
|
|
91
|
+
};
|
|
92
|
+
const handleKeyDown = (e) => {
|
|
93
|
+
if (isInteractive && (e.key === "Enter" || e.key === " ")) {
|
|
94
|
+
e.preventDefault();
|
|
95
|
+
onSort();
|
|
96
|
+
}
|
|
97
|
+
};
|
|
98
|
+
return /* @__PURE__ */ jsx("th", {
|
|
99
|
+
className: cn("h-10 px-4 text-left align-middle font-medium [&:has([role=checkbox])]:pr-0 *:[[role=checkbox]]:translate-y-[2px]", isInteractive && "cursor-pointer select-none hover:bg-muted/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset", className),
|
|
100
|
+
tabIndex: isInteractive ? 0 : void 0,
|
|
101
|
+
"aria-sort": sortDirection ? ariaSortValues[sortDirection] : void 0,
|
|
102
|
+
onClick: handleClick,
|
|
103
|
+
onKeyDown: handleKeyDown,
|
|
104
|
+
...props,
|
|
105
|
+
children: /* @__PURE__ */ jsxs("span", {
|
|
106
|
+
className: "inline-flex items-center",
|
|
107
|
+
children: [children, sortable && /* @__PURE__ */ jsx(SortIcon, { direction: sortDirection })]
|
|
108
|
+
})
|
|
109
|
+
});
|
|
110
|
+
};
|
|
111
|
+
TableHead.displayName = "TableHead";
|
|
112
|
+
const TableCell = ({ className, ...props }) => {
|
|
113
|
+
return /* @__PURE__ */ jsx("td", {
|
|
114
|
+
className: cn("p-4 align-middle [&:has([role=checkbox])]:pr-0 *:[[role=checkbox]]:translate-y-[2px]", className),
|
|
115
|
+
...props
|
|
116
|
+
});
|
|
117
|
+
};
|
|
118
|
+
TableCell.displayName = "TableCell";
|
|
119
|
+
const TableCaption = ({ className, position = "bottom", ...props }) => {
|
|
120
|
+
return /* @__PURE__ */ jsx("caption", {
|
|
121
|
+
className: cn("mt-4 text-sm text-muted-foreground", position === "top" && "caption-top mb-4 mt-0", className),
|
|
122
|
+
...props
|
|
123
|
+
});
|
|
124
|
+
};
|
|
125
|
+
TableCaption.displayName = "TableCaption";
|
|
126
|
+
|
|
127
|
+
//#endregion
|
|
128
|
+
export { TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRoot, TableRow };
|
|
129
|
+
//# sourceMappingURL=primitives.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"primitives.js","names":[],"sources":["../../../src/components/table/primitives.tsx"],"sourcesContent":["'use client'\n\nimport { type VariantProps, cva } from 'class-variance-authority'\nimport * as React from 'react'\n\nimport { cn } from '../../lib/utils'\nimport type { SortDirection } from './types'\n\n// ============================================================================\n// Table Variants\n// ============================================================================\n\nconst tableVariants = cva('w-full caption-bottom text-sm', {\n variants: {\n variant: {\n default: '',\n striped: '[&_tbody_tr:nth-child(even)]:bg-muted/50',\n bordered:\n '[&_th:not(:last-child)]:border-r [&_td:not(:last-child)]:border-r [&_th]:border-border [&_td]:border-border',\n },\n size: {\n default: '',\n compact: '[&_th]:h-8 [&_th]:px-2 [&_td]:p-2.5',\n },\n },\n defaultVariants: { variant: 'default', size: 'default' },\n})\n\nexport type TableVariant = VariantProps<typeof tableVariants>['variant']\nexport type TableSize = VariantProps<typeof tableVariants>['size']\n\n// ============================================================================\n// TableRoot\n// ============================================================================\n\ntype TableRootProps = React.ComponentProps<'table'> & VariantProps<typeof tableVariants>\n\nconst TableRoot = ({ className, variant, size, ...props }: TableRootProps) => {\n return (\n <div className='relative w-full overflow-x-auto'>\n <table className={cn(tableVariants({ variant, size }), className)} {...props} />\n </div>\n )\n}\n\nTableRoot.displayName = 'TableRoot'\n\n// ============================================================================\n// TableHeader\n// ============================================================================\n\ntype TableHeaderProps = React.ComponentProps<'thead'>\n\nconst TableHeader = ({ className, ...props }: TableHeaderProps) => {\n return <thead className={cn('[&_tr]:border-b', className)} {...props} />\n}\n\nTableHeader.displayName = 'TableHeader'\n\n// ============================================================================\n// TableBody\n// ============================================================================\n\ntype TableBodyProps = React.ComponentProps<'tbody'>\n\nconst TableBody = ({ className, ...props }: TableBodyProps) => {\n return <tbody className={cn('[&_tr:last-child]:border-0', className)} {...props} />\n}\n\nTableBody.displayName = 'TableBody'\n\n// ============================================================================\n// TableFooter\n// ============================================================================\n\ntype TableFooterProps = React.ComponentProps<'tfoot'>\n\nconst TableFooter = ({ className, ...props }: TableFooterProps) => {\n return (\n <tfoot\n className={cn('border-t bg-muted/50 font-medium [&>tr]:last:border-b-0', className)}\n {...props}\n />\n )\n}\n\nTableFooter.displayName = 'TableFooter'\n\n// ============================================================================\n// TableRow\n// ============================================================================\n\ntype TableRowProps = React.ComponentProps<'tr'>\n\nconst TableRow = ({ className, ...props }: TableRowProps) => {\n return (\n <tr\n className={cn('border-b transition-colors hover:bg-muted/50', className)}\n {...props}\n />\n )\n}\n\nTableRow.displayName = 'TableRow'\n\n// ============================================================================\n// TableHead\n// ============================================================================\n\nconst ariaSortValues: Record<SortDirection, 'ascending' | 'descending'> = {\n asc: 'ascending',\n desc: 'descending',\n}\n\ntype TableHeadProps = React.ComponentProps<'th'> & {\n sortable?: boolean\n sortDirection?: SortDirection\n onSort?: () => void\n}\n\nconst SortIcon = ({ direction }: { direction?: SortDirection }) => {\n return (\n <svg\n xmlns='http://www.w3.org/2000/svg'\n width='16'\n height='16'\n viewBox='0 0 24 24'\n fill='none'\n stroke='currentColor'\n strokeWidth='2'\n strokeLinecap='round'\n strokeLinejoin='round'\n className='ml-1 inline-block'\n aria-hidden='true'\n >\n {direction === 'asc' ? (\n <path d='m18 15-6-6-6 6' />\n ) : direction === 'desc' ? (\n <path d='m6 9 6 6 6-6' />\n ) : (\n <>\n <path d='m7 15 5 5 5-5' />\n <path d='m7 9 5-5 5 5' />\n </>\n )}\n </svg>\n )\n}\n\nconst TableHead = ({\n className,\n sortable,\n sortDirection,\n onSort,\n children,\n ...props\n}: TableHeadProps) => {\n const isInteractive = sortable && onSort\n\n const handleClick = () => {\n if (isInteractive) onSort()\n }\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLTableCellElement>) => {\n if (isInteractive && (e.key === 'Enter' || e.key === ' ')) {\n e.preventDefault()\n onSort()\n }\n }\n\n return (\n <th\n className={cn(\n 'h-10 px-4 text-left align-middle font-medium [&:has([role=checkbox])]:pr-0 *:[[role=checkbox]]:translate-y-[2px]',\n isInteractive &&\n 'cursor-pointer select-none hover:bg-muted/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset',\n className,\n )}\n tabIndex={isInteractive ? 0 : undefined}\n aria-sort={sortDirection ? ariaSortValues[sortDirection] : undefined}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n {...props}\n >\n <span className='inline-flex items-center'>\n {children}\n {sortable && <SortIcon direction={sortDirection} />}\n </span>\n </th>\n )\n}\n\nTableHead.displayName = 'TableHead'\n\n// ============================================================================\n// TableCell\n// ============================================================================\n\ntype TableCellProps = React.ComponentProps<'td'>\n\nconst TableCell = ({ className, ...props }: TableCellProps) => {\n return (\n <td\n className={cn(\n 'p-4 align-middle [&:has([role=checkbox])]:pr-0 *:[[role=checkbox]]:translate-y-[2px]',\n className,\n )}\n {...props}\n />\n )\n}\n\nTableCell.displayName = 'TableCell'\n\n// ============================================================================\n// TableCaption\n// ============================================================================\n\ntype TableCaptionProps = React.ComponentProps<'caption'> & {\n position?: 'top' | 'bottom'\n}\n\nconst TableCaption = ({\n className,\n position = 'bottom',\n ...props\n}: TableCaptionProps) => {\n return (\n <caption\n className={cn(\n 'mt-4 text-sm text-muted-foreground',\n position === 'top' && 'caption-top mb-4 mt-0',\n className,\n )}\n {...props}\n />\n )\n}\n\nTableCaption.displayName = 'TableCaption'\n\n// ============================================================================\n// Exports\n// ============================================================================\n\nexport {\n TableRoot,\n TableHeader,\n TableBody,\n TableFooter,\n TableRow,\n TableHead,\n TableCell,\n TableCaption,\n}\n\nexport type {\n TableRootProps,\n TableHeaderProps,\n TableBodyProps,\n TableFooterProps,\n TableRowProps,\n TableHeadProps,\n TableCellProps,\n TableCaptionProps,\n}\n"],"mappings":";;;;;;;;AAYA,MAAM,gBAAgB,IAAI,iCAAiC;CACzD,UAAU;EACR,SAAS;GACP,SAAS;GACT,SAAS;GACT,UACE;GACH;EACD,MAAM;GACJ,SAAS;GACT,SAAS;GACV;EACF;CACD,iBAAiB;EAAE,SAAS;EAAW,MAAM;EAAW;CACzD,CAAC;AAWF,MAAM,aAAa,EAAE,WAAW,SAAS,MAAM,GAAG,YAA4B;AAC5E,QACE,oBAAC;EAAI,WAAU;YACb,oBAAC;GAAM,WAAW,GAAG,cAAc;IAAE;IAAS;IAAM,CAAC,EAAE,UAAU;GAAE,GAAI;IAAS;GAC5E;;AAIV,UAAU,cAAc;AAQxB,MAAM,eAAe,EAAE,WAAW,GAAG,YAA8B;AACjE,QAAO,oBAAC;EAAM,WAAW,GAAG,mBAAmB,UAAU;EAAE,GAAI;GAAS;;AAG1E,YAAY,cAAc;AAQ1B,MAAM,aAAa,EAAE,WAAW,GAAG,YAA4B;AAC7D,QAAO,oBAAC;EAAM,WAAW,GAAG,8BAA8B,UAAU;EAAE,GAAI;GAAS;;AAGrF,UAAU,cAAc;AAQxB,MAAM,eAAe,EAAE,WAAW,GAAG,YAA8B;AACjE,QACE,oBAAC;EACC,WAAW,GAAG,2DAA2D,UAAU;EACnF,GAAI;GACJ;;AAIN,YAAY,cAAc;AAQ1B,MAAM,YAAY,EAAE,WAAW,GAAG,YAA2B;AAC3D,QACE,oBAAC;EACC,WAAW,GAAG,gDAAgD,UAAU;EACxE,GAAI;GACJ;;AAIN,SAAS,cAAc;AAMvB,MAAM,iBAAoE;CACxE,KAAK;CACL,MAAM;CACP;AAQD,MAAM,YAAY,EAAE,gBAA+C;AACjE,QACE,oBAAC;EACC,OAAM;EACN,OAAM;EACN,QAAO;EACP,SAAQ;EACR,MAAK;EACL,QAAO;EACP,aAAY;EACZ,eAAc;EACd,gBAAe;EACf,WAAU;EACV,eAAY;YAEX,cAAc,QACb,oBAAC,UAAK,GAAE,mBAAmB,GACzB,cAAc,SAChB,oBAAC,UAAK,GAAE,iBAAiB,GAEzB,4CACE,oBAAC,UAAK,GAAE,kBAAkB,EAC1B,oBAAC,UAAK,GAAE,iBAAiB,IACxB;GAED;;AAIV,MAAM,aAAa,EACjB,WACA,UACA,eACA,QACA,UACA,GAAG,YACiB;CACpB,MAAM,gBAAgB,YAAY;CAElC,MAAM,oBAAoB;AACxB,MAAI,cAAe,SAAQ;;CAG7B,MAAM,iBAAiB,MAAiD;AACtE,MAAI,kBAAkB,EAAE,QAAQ,WAAW,EAAE,QAAQ,MAAM;AACzD,KAAE,gBAAgB;AAClB,WAAQ;;;AAIZ,QACE,oBAAC;EACC,WAAW,GACT,oHACA,iBACE,iJACF,UACD;EACD,UAAU,gBAAgB,IAAI;EAC9B,aAAW,gBAAgB,eAAe,iBAAiB;EAC3D,SAAS;EACT,WAAW;EACX,GAAI;YAEJ,qBAAC;GAAK,WAAU;cACb,UACA,YAAY,oBAAC,YAAS,WAAW,gBAAiB;IAC9C;GACJ;;AAIT,UAAU,cAAc;AAQxB,MAAM,aAAa,EAAE,WAAW,GAAG,YAA4B;AAC7D,QACE,oBAAC;EACC,WAAW,GACT,wFACA,UACD;EACD,GAAI;GACJ;;AAIN,UAAU,cAAc;AAUxB,MAAM,gBAAgB,EACpB,WACA,WAAW,UACX,GAAG,YACoB;AACvB,QACE,oBAAC;EACC,WAAW,GACT,sCACA,aAAa,SAAS,yBACtB,UACD;EACD,GAAI;GACJ;;AAIN,aAAa,cAAc"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
//#region src/components/table/sort.ts
|
|
2
|
+
function compareValues(a, b, direction) {
|
|
3
|
+
if (a == null && b == null) return 0;
|
|
4
|
+
if (a == null) return 1;
|
|
5
|
+
if (b == null) return -1;
|
|
6
|
+
const multiplier = direction === "asc" ? 1 : -1;
|
|
7
|
+
if (typeof a === "number" && typeof b === "number") return (a - b) * multiplier;
|
|
8
|
+
if (typeof a === "boolean" && typeof b === "boolean") return (Number(a) - Number(b)) * multiplier;
|
|
9
|
+
if (a instanceof Date && b instanceof Date) return (a.getTime() - b.getTime()) * multiplier;
|
|
10
|
+
const strA = String(a).toLowerCase();
|
|
11
|
+
const strB = String(b).toLowerCase();
|
|
12
|
+
return strA.localeCompare(strB) * multiplier;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
//#endregion
|
|
16
|
+
export { compareValues };
|
|
17
|
+
//# sourceMappingURL=sort.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sort.js","names":[],"sources":["../../../src/components/table/sort.ts"],"sourcesContent":["import type { SortDirection } from './types'\n\nexport function compareValues(a: unknown, b: unknown, direction: SortDirection): number {\n // Nulls always sort to end regardless of direction\n if (a == null && b == null) return 0\n if (a == null) return 1\n if (b == null) return -1\n\n const multiplier = direction === 'asc' ? 1 : -1\n\n // Number comparison\n if (typeof a === 'number' && typeof b === 'number') {\n return (a - b) * multiplier\n }\n\n // Boolean comparison (true > false)\n if (typeof a === 'boolean' && typeof b === 'boolean') {\n return (Number(a) - Number(b)) * multiplier\n }\n\n // Date comparison\n if (a instanceof Date && b instanceof Date) {\n return (a.getTime() - b.getTime()) * multiplier\n }\n\n // String comparison (case-insensitive)\n const strA = String(a).toLowerCase()\n const strB = String(b).toLowerCase()\n return strA.localeCompare(strB) * multiplier\n}\n"],"mappings":";AAEA,SAAgB,cAAc,GAAY,GAAY,WAAkC;AAEtF,KAAI,KAAK,QAAQ,KAAK,KAAM,QAAO;AACnC,KAAI,KAAK,KAAM,QAAO;AACtB,KAAI,KAAK,KAAM,QAAO;CAEtB,MAAM,aAAa,cAAc,QAAQ,IAAI;AAG7C,KAAI,OAAO,MAAM,YAAY,OAAO,MAAM,SACxC,SAAQ,IAAI,KAAK;AAInB,KAAI,OAAO,MAAM,aAAa,OAAO,MAAM,UACzC,SAAQ,OAAO,EAAE,GAAG,OAAO,EAAE,IAAI;AAInC,KAAI,aAAa,QAAQ,aAAa,KACpC,SAAQ,EAAE,SAAS,GAAG,EAAE,SAAS,IAAI;CAIvC,MAAM,OAAO,OAAO,EAAE,CAAC,aAAa;CACpC,MAAM,OAAO,OAAO,EAAE,CAAC,aAAa;AACpC,QAAO,KAAK,cAAc,KAAK,GAAG"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { CSSProperties, ReactNode } from "react";
|
|
2
|
+
|
|
3
|
+
//#region src/components/table/types.d.ts
|
|
4
|
+
type SortDirection = 'asc' | 'desc';
|
|
5
|
+
interface ColumnDef<T, K extends keyof T = keyof T> {
|
|
6
|
+
key: K;
|
|
7
|
+
header: ReactNode;
|
|
8
|
+
format?: (value: T[K], row: T) => string;
|
|
9
|
+
cell?: (value: T[K], row: T) => ReactNode;
|
|
10
|
+
className?: string;
|
|
11
|
+
headerClassName?: string;
|
|
12
|
+
cellClassName?: string;
|
|
13
|
+
width?: string | number;
|
|
14
|
+
sortable?: boolean;
|
|
15
|
+
}
|
|
16
|
+
interface PaginationConfig {
|
|
17
|
+
pageSize: number;
|
|
18
|
+
pageSizeOptions?: number[];
|
|
19
|
+
}
|
|
20
|
+
interface SearchConfig<T> {
|
|
21
|
+
keys: (keyof T)[];
|
|
22
|
+
}
|
|
23
|
+
type FilterPredicate<T, V = unknown> = (row: T, value: V) => boolean;
|
|
24
|
+
interface FilterDef<T, V = unknown> {
|
|
25
|
+
predicate: FilterPredicate<T, V>;
|
|
26
|
+
defaultValue?: V;
|
|
27
|
+
}
|
|
28
|
+
type FiltersConfig<T> = Record<string, FilterDef<T, any>>;
|
|
29
|
+
type FilterValues = Record<string, unknown>;
|
|
30
|
+
type RowKeyGetter<T> = (row: T) => string | number;
|
|
31
|
+
interface SelectionConfig<T> {
|
|
32
|
+
rowKey: RowKeyGetter<T>;
|
|
33
|
+
defaultSelectedKeys?: (string | number)[];
|
|
34
|
+
selectedKeys?: (string | number)[];
|
|
35
|
+
onSelectionChange?: (keys: (string | number)[]) => void;
|
|
36
|
+
}
|
|
37
|
+
interface SelectionState<T> {
|
|
38
|
+
selectedKeys: (string | number)[];
|
|
39
|
+
selectedCount: number;
|
|
40
|
+
isSelected: (key: string | number) => boolean;
|
|
41
|
+
toggleRow: (key: string | number) => void;
|
|
42
|
+
isRowSelected: (row: T) => boolean;
|
|
43
|
+
toggleRowSelection: (row: T) => void;
|
|
44
|
+
toggleAllOnPage: () => void;
|
|
45
|
+
clearSelection: () => void;
|
|
46
|
+
pageSelectionState: 'all' | 'some' | 'none';
|
|
47
|
+
isIndeterminate: boolean;
|
|
48
|
+
isAllOnPageSelected: boolean;
|
|
49
|
+
}
|
|
50
|
+
interface UseTableOptions<T> {
|
|
51
|
+
data: T[];
|
|
52
|
+
columns: ColumnDef<T, keyof T>[];
|
|
53
|
+
pagination?: PaginationConfig;
|
|
54
|
+
sort?: {
|
|
55
|
+
key: keyof T;
|
|
56
|
+
direction: SortDirection;
|
|
57
|
+
};
|
|
58
|
+
search?: SearchConfig<T>;
|
|
59
|
+
filters?: FiltersConfig<T>;
|
|
60
|
+
selection?: SelectionConfig<T>;
|
|
61
|
+
}
|
|
62
|
+
interface ProcessedColumn<T> {
|
|
63
|
+
key: keyof T;
|
|
64
|
+
head: {
|
|
65
|
+
children: ReactNode;
|
|
66
|
+
className?: string;
|
|
67
|
+
style?: CSSProperties;
|
|
68
|
+
sortable: boolean;
|
|
69
|
+
sortDirection?: SortDirection;
|
|
70
|
+
onSort?: () => void;
|
|
71
|
+
};
|
|
72
|
+
cell: {
|
|
73
|
+
className?: string;
|
|
74
|
+
};
|
|
75
|
+
renderCell: (row: T) => ReactNode;
|
|
76
|
+
}
|
|
77
|
+
interface UseTableReturn<T> {
|
|
78
|
+
columns: ProcessedColumn<T>[];
|
|
79
|
+
rows: T[];
|
|
80
|
+
totalItems: number;
|
|
81
|
+
currentPage: number;
|
|
82
|
+
totalPages: number;
|
|
83
|
+
pageSize: number;
|
|
84
|
+
pageSizeOptions: number[];
|
|
85
|
+
onPageChange: (page: number) => void;
|
|
86
|
+
onPageSizeChange: (size: number) => void;
|
|
87
|
+
sortKey: keyof T | null;
|
|
88
|
+
sortDirection: SortDirection;
|
|
89
|
+
onSort: (key: keyof T) => void;
|
|
90
|
+
searchTerm: string;
|
|
91
|
+
onSearchChange: (term: string) => void;
|
|
92
|
+
filterValues: FilterValues;
|
|
93
|
+
setFilterValue: (filterId: string, value: unknown) => void;
|
|
94
|
+
clearFilters: () => void;
|
|
95
|
+
activeFilterCount: number;
|
|
96
|
+
selection?: SelectionState<T>;
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=types.d.ts.map
|
|
99
|
+
//#endregion
|
|
100
|
+
export { ColumnDef, FilterDef, FilterPredicate, FilterValues, FiltersConfig, PaginationConfig, ProcessedColumn, RowKeyGetter, SearchConfig, SelectionConfig, SelectionState, SortDirection, UseTableOptions, UseTableReturn };
|
|
101
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","names":[],"sources":["../../../src/components/table/types.ts"],"sourcesContent":[],"mappings":"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"}
|
package/dist/context-menu.d.ts
CHANGED
|
@@ -1,138 +1,151 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
};
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
};
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
};
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import * as react_jsx_runtime254 from "react/jsx-runtime";
|
|
3
|
+
import { ContextMenu } from "@base-ui/react/context-menu";
|
|
4
|
+
|
|
5
|
+
//#region src/components/context-menu.d.ts
|
|
6
|
+
type ContextMenuRootProps = React.ComponentProps<typeof ContextMenu.Root>;
|
|
7
|
+
declare const ContextMenuRoot: {
|
|
8
|
+
(props: ContextMenuRootProps): react_jsx_runtime254.JSX.Element;
|
|
9
|
+
displayName: string;
|
|
10
|
+
};
|
|
11
|
+
type ContextMenuTriggerProps = React.ComponentProps<typeof ContextMenu.Trigger>;
|
|
12
|
+
declare const ContextMenuTrigger: {
|
|
13
|
+
({
|
|
14
|
+
className,
|
|
15
|
+
...props
|
|
16
|
+
}: ContextMenuTriggerProps): react_jsx_runtime254.JSX.Element;
|
|
17
|
+
displayName: string;
|
|
18
|
+
};
|
|
19
|
+
type ContextMenuPortalProps = React.ComponentProps<typeof ContextMenu.Portal>;
|
|
20
|
+
declare const ContextMenuPortal: {
|
|
21
|
+
(props: ContextMenuPortalProps): react_jsx_runtime254.JSX.Element;
|
|
22
|
+
displayName: string;
|
|
23
|
+
};
|
|
24
|
+
type ContextMenuPositionerProps = React.ComponentProps<typeof ContextMenu.Positioner>;
|
|
25
|
+
declare const ContextMenuPositioner: {
|
|
26
|
+
({
|
|
27
|
+
className,
|
|
28
|
+
...props
|
|
29
|
+
}: ContextMenuPositionerProps): react_jsx_runtime254.JSX.Element;
|
|
30
|
+
displayName: string;
|
|
31
|
+
};
|
|
32
|
+
type ContextMenuPopupProps = React.ComponentProps<typeof ContextMenu.Popup>;
|
|
33
|
+
declare const ContextMenuPopup: {
|
|
34
|
+
({
|
|
35
|
+
className,
|
|
36
|
+
...props
|
|
37
|
+
}: ContextMenuPopupProps): react_jsx_runtime254.JSX.Element;
|
|
38
|
+
displayName: string;
|
|
39
|
+
};
|
|
40
|
+
type ContextMenuArrowProps = React.ComponentProps<typeof ContextMenu.Arrow>;
|
|
41
|
+
declare const ContextMenuArrow: {
|
|
42
|
+
({
|
|
43
|
+
className,
|
|
44
|
+
...props
|
|
45
|
+
}: ContextMenuArrowProps): react_jsx_runtime254.JSX.Element;
|
|
46
|
+
displayName: string;
|
|
47
|
+
};
|
|
48
|
+
type ContextMenuItemProps = React.ComponentProps<typeof ContextMenu.Item>;
|
|
49
|
+
declare const ContextMenuItem: {
|
|
50
|
+
({
|
|
51
|
+
className,
|
|
52
|
+
...props
|
|
53
|
+
}: ContextMenuItemProps): react_jsx_runtime254.JSX.Element;
|
|
54
|
+
displayName: string;
|
|
55
|
+
};
|
|
56
|
+
type ContextMenuSeparatorProps = React.ComponentProps<typeof ContextMenu.Separator>;
|
|
57
|
+
declare const ContextMenuSeparator: {
|
|
58
|
+
({
|
|
59
|
+
className,
|
|
60
|
+
...props
|
|
61
|
+
}: ContextMenuSeparatorProps): react_jsx_runtime254.JSX.Element;
|
|
62
|
+
displayName: string;
|
|
63
|
+
};
|
|
64
|
+
type ContextMenuGroupProps = React.ComponentProps<typeof ContextMenu.Group>;
|
|
65
|
+
declare const ContextMenuGroup: {
|
|
66
|
+
({
|
|
67
|
+
className,
|
|
68
|
+
...props
|
|
69
|
+
}: ContextMenuGroupProps): react_jsx_runtime254.JSX.Element;
|
|
70
|
+
displayName: string;
|
|
71
|
+
};
|
|
72
|
+
type ContextMenuGroupLabelProps = React.ComponentProps<typeof ContextMenu.GroupLabel>;
|
|
73
|
+
declare const ContextMenuGroupLabel: {
|
|
74
|
+
({
|
|
75
|
+
className,
|
|
76
|
+
...props
|
|
77
|
+
}: ContextMenuGroupLabelProps): react_jsx_runtime254.JSX.Element;
|
|
78
|
+
displayName: string;
|
|
79
|
+
};
|
|
80
|
+
type ContextMenuRadioGroupProps = React.ComponentProps<typeof ContextMenu.RadioGroup>;
|
|
81
|
+
declare const ContextMenuRadioGroup: {
|
|
82
|
+
({
|
|
83
|
+
className,
|
|
84
|
+
...props
|
|
85
|
+
}: ContextMenuRadioGroupProps): react_jsx_runtime254.JSX.Element;
|
|
86
|
+
displayName: string;
|
|
87
|
+
};
|
|
88
|
+
type ContextMenuRadioItemProps = React.ComponentProps<typeof ContextMenu.RadioItem>;
|
|
89
|
+
declare const ContextMenuRadioItem: {
|
|
90
|
+
({
|
|
91
|
+
className,
|
|
92
|
+
...props
|
|
93
|
+
}: ContextMenuRadioItemProps): react_jsx_runtime254.JSX.Element;
|
|
94
|
+
displayName: string;
|
|
95
|
+
};
|
|
96
|
+
type ContextMenuCheckboxItemProps = React.ComponentProps<typeof ContextMenu.CheckboxItem>;
|
|
97
|
+
declare const ContextMenuCheckboxItem: {
|
|
98
|
+
({
|
|
99
|
+
className,
|
|
100
|
+
...props
|
|
101
|
+
}: ContextMenuCheckboxItemProps): react_jsx_runtime254.JSX.Element;
|
|
102
|
+
displayName: string;
|
|
103
|
+
};
|
|
104
|
+
type ContextMenuRadioItemIndicatorProps = React.ComponentProps<typeof ContextMenu.RadioItemIndicator>;
|
|
105
|
+
declare const ContextMenuRadioItemIndicator: {
|
|
106
|
+
({
|
|
107
|
+
className,
|
|
108
|
+
...props
|
|
109
|
+
}: ContextMenuRadioItemIndicatorProps): react_jsx_runtime254.JSX.Element;
|
|
110
|
+
displayName: string;
|
|
111
|
+
};
|
|
112
|
+
type ContextMenuCheckboxItemIndicatorProps = React.ComponentProps<typeof ContextMenu.CheckboxItemIndicator>;
|
|
113
|
+
declare const ContextMenuCheckboxItemIndicator: {
|
|
114
|
+
({
|
|
115
|
+
className,
|
|
116
|
+
...props
|
|
117
|
+
}: ContextMenuCheckboxItemIndicatorProps): react_jsx_runtime254.JSX.Element;
|
|
118
|
+
displayName: string;
|
|
119
|
+
};
|
|
120
|
+
type ContextMenuCheckboxItemLabelProps = React.ComponentProps<'span'>;
|
|
121
|
+
declare const ContextMenuCheckboxItemLabel: {
|
|
122
|
+
({
|
|
123
|
+
className,
|
|
124
|
+
...props
|
|
125
|
+
}: ContextMenuCheckboxItemLabelProps): react_jsx_runtime254.JSX.Element;
|
|
126
|
+
displayName: string;
|
|
127
|
+
};
|
|
128
|
+
type ContextMenuRadioItemLabelProps = React.ComponentProps<'span'>;
|
|
129
|
+
declare const ContextMenuRadioItemLabel: {
|
|
130
|
+
({
|
|
131
|
+
className,
|
|
132
|
+
...props
|
|
133
|
+
}: ContextMenuRadioItemLabelProps): react_jsx_runtime254.JSX.Element;
|
|
134
|
+
displayName: string;
|
|
135
|
+
};
|
|
136
|
+
type ContextMenuSubmenuTriggerProps = React.ComponentProps<typeof ContextMenu.SubmenuTrigger>;
|
|
137
|
+
declare const ContextMenuSubmenuTrigger: {
|
|
138
|
+
({
|
|
139
|
+
className,
|
|
140
|
+
...props
|
|
141
|
+
}: ContextMenuSubmenuTriggerProps): react_jsx_runtime254.JSX.Element;
|
|
142
|
+
displayName: string;
|
|
143
|
+
};
|
|
144
|
+
type ContextMenuSubmenuRootProps = React.ComponentProps<typeof ContextMenu.SubmenuRoot>;
|
|
145
|
+
declare const ContextMenuSubmenuRoot: {
|
|
146
|
+
(props: ContextMenuSubmenuRootProps): react_jsx_runtime254.JSX.Element;
|
|
147
|
+
displayName: string;
|
|
148
|
+
};
|
|
149
|
+
//#endregion
|
|
150
|
+
export { ContextMenuArrow, type ContextMenuArrowProps, ContextMenuCheckboxItem, ContextMenuCheckboxItemIndicator, type ContextMenuCheckboxItemIndicatorProps, ContextMenuCheckboxItemLabel, type ContextMenuCheckboxItemLabelProps, type ContextMenuCheckboxItemProps, ContextMenuGroup, ContextMenuGroupLabel, type ContextMenuGroupLabelProps, type ContextMenuGroupProps, ContextMenuItem, type ContextMenuItemProps, ContextMenuPopup, type ContextMenuPopupProps, ContextMenuPortal, type ContextMenuPortalProps, ContextMenuPositioner, type ContextMenuPositionerProps, ContextMenuRadioGroup, type ContextMenuRadioGroupProps, ContextMenuRadioItem, ContextMenuRadioItemIndicator, type ContextMenuRadioItemIndicatorProps, ContextMenuRadioItemLabel, type ContextMenuRadioItemLabelProps, type ContextMenuRadioItemProps, ContextMenuRoot, type ContextMenuRootProps, ContextMenuSeparator, type ContextMenuSeparatorProps, ContextMenuSubmenuRoot, type ContextMenuSubmenuRootProps, ContextMenuSubmenuTrigger, type ContextMenuSubmenuTriggerProps, ContextMenuTrigger, type ContextMenuTriggerProps };
|
|
151
|
+
//# sourceMappingURL=context-menu.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-menu.d.ts","names":[],"sources":["../src/components/context-menu.tsx"],"sourcesContent":[],"mappings":"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"}
|