@crispy-seed/data-table 0.1.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.
Files changed (56) hide show
  1. package/LICENSE +201 -0
  2. package/NOTICE +30 -0
  3. package/README.md +103 -0
  4. package/dist/DataTable-12s-8LMBtS2u.cjs +1532 -0
  5. package/dist/DataTable-12s-Bd20OuMs.js +1482 -0
  6. package/dist/DataTable-12s-Zml1x9Kr-12s-CTRzgvMT.cjs +161 -0
  7. package/dist/DataTable-12s-Zml1x9Kr-12s-Coi-3lUa.js +153 -0
  8. package/dist/Menu-12s-Db_zr1AP.cjs +104 -0
  9. package/dist/Menu-12s-Di5JADW4.js +78 -0
  10. package/dist/Select-12s-1Uh7XbkG.js +219 -0
  11. package/dist/Select-12s-D8DdKT-U.cjs +250 -0
  12. package/dist/body-cells-12s-BnOVUTKN.js +453 -0
  13. package/dist/body-cells-12s-BoOTcg-l.cjs +462 -0
  14. package/dist/column-calc-12s-C6IPSOaF.js +129 -0
  15. package/dist/column-calc-12s-CKuSpe-l.cjs +149 -0
  16. package/dist/column-layout-12s-CTu5yT_D.cjs +120 -0
  17. package/dist/column-layout-12s-s7wnxkMN.js +99 -0
  18. package/dist/column-menu-12s-BPE9N1gs.cjs +427 -0
  19. package/dist/column-menu-12s-mRBk-4oa.js +407 -0
  20. package/dist/data-table-recipe.css +442 -0
  21. package/dist/data-table-recipe.layered.css +505 -0
  22. package/dist/editors-12s-BO9Mp034.js +525 -0
  23. package/dist/editors-12s-DO8TZkYV.cjs +555 -0
  24. package/dist/index.cjs +14 -0
  25. package/dist/index.d.ts +323 -0
  26. package/dist/index.js +10 -0
  27. package/dist/resize-12s-jQY-PX67.cjs +58 -0
  28. package/dist/resize-12s-nsMvrmLt.js +58 -0
  29. package/dist/states-12s-CLO_uVue.cjs +125 -0
  30. package/dist/states-12s-DEFSxJCO.js +122 -0
  31. package/dist/styles.css +14660 -0
  32. package/dist/toolbar-12s-AVU-sbDW.js +69 -0
  33. package/dist/toolbar-12s-CaLgJrDo.cjs +71 -0
  34. package/dist/useDataTable-12s-BHiDUubw-12s-CBeCwTe7.js +61 -0
  35. package/dist/useDataTable-12s-BHiDUubw-12s-Dgvt7XDk.cjs +61 -0
  36. package/dist/useDataTableColumnCalc-12s-DTQQTtEJ-12s-CvD14JYo.cjs +207 -0
  37. package/dist/useDataTableColumnCalc-12s-DTQQTtEJ-12s-DsEse3uq.js +183 -0
  38. package/dist/useDataTableColumns-12s-Cn2ZAzFL-12s-CD6goR59.js +289 -0
  39. package/dist/useDataTableColumns-12s-Cn2ZAzFL-12s-CUk_CpYT.cjs +292 -0
  40. package/dist/useDataTableEdit-12s-9Wb_UCrN-12s-BoOHq3GB.js +98 -0
  41. package/dist/useDataTableEdit-12s-9Wb_UCrN-12s-De6YHBba.cjs +98 -0
  42. package/dist/useDataTableFilter-12s-ZzbmWMin-12s-CWyBeFna.js +74 -0
  43. package/dist/useDataTableFilter-12s-ZzbmWMin-12s-lpjzZY3_.cjs +74 -0
  44. package/dist/useDataTableInfiniteScroll-12s-8ZG31URd-12s-BexjP6iO.js +104 -0
  45. package/dist/useDataTableInfiniteScroll-12s-8ZG31URd-12s-Bt8gojr9.cjs +104 -0
  46. package/dist/useDataTableRow-12s-CPYaDa1p-12s-BmUSAnPe.js +30 -0
  47. package/dist/useDataTableRow-12s-CPYaDa1p-12s-D-DRjwAe.cjs +30 -0
  48. package/dist/useDataTableScroll-12s-BKDCr0en-12s-C7f2vHeG.js +61 -0
  49. package/dist/useDataTableScroll-12s-BKDCr0en-12s-CUvUYMtt.cjs +61 -0
  50. package/dist/useDataTableSearch-12s-Ck3iWcpX-12s-B-65V6gH.js +37 -0
  51. package/dist/useDataTableSearch-12s-Ck3iWcpX-12s-DhVfN2Hq.cjs +37 -0
  52. package/dist/useDataTableSelection-12s-BIDtiRQq-12s-IS__VAnU.cjs +71 -0
  53. package/dist/useDataTableSelection-12s-BIDtiRQq-12s-O6M_BhrH.js +71 -0
  54. package/dist/useDataTableSort-12s-DvJYtmeS-12s-C5VGnsq4.cjs +78 -0
  55. package/dist/useDataTableSort-12s-DvJYtmeS-12s-DABSNt6U.js +78 -0
  56. package/package.json +78 -0
@@ -0,0 +1,161 @@
1
+ 'use client';
2
+ function __insertCSS(code) {
3
+ if (!code || typeof document == 'undefined') return
4
+ let head = document.head || document.getElementsByTagName('head')[0]
5
+ let style = document.createElement('style')
6
+ style.type = 'text/css'
7
+ head.appendChild(style)
8
+ ;style.styleSheet ? (style.styleSheet.cssText = code) : style.appendChild(document.createTextNode(code))
9
+ }
10
+
11
+ var jsxRuntime = require('react/jsx-runtime');
12
+ var domUtils = require('@seed-design/dom-utils');
13
+ var reactPrimitive = require('@seed-design/react-primitive');
14
+ var React = require('react');
15
+ var useDataTable12sBHiDUubw12s = require('./useDataTable-12s-BHiDUubw-12s-Dgvt7XDk.cjs');
16
+ var useDataTableRow12sCPYaDa1p12s = require('./useDataTableRow-12s-CPYaDa1p-12s-D-DRjwAe.cjs');
17
+
18
+ const DataTableContext = /*#__PURE__*/ React.createContext(null);
19
+ const DataTableProvider = DataTableContext.Provider;
20
+ function useDataTableContext({ strict = true } = {}) {
21
+ const context = React.useContext(DataTableContext);
22
+ if (!context && strict) {
23
+ throw new Error("useDataTableContext must be used within a DataTable");
24
+ }
25
+ return context;
26
+ }
27
+ const DataTableRowContext = /*#__PURE__*/ React.createContext(null);
28
+ const DataTableRowProvider = DataTableRowContext.Provider;
29
+ function useDataTableRowContext({ strict = true } = {}) {
30
+ const context = React.useContext(DataTableRowContext);
31
+ if (!context && strict) {
32
+ throw new Error("useDataTableRowContext must be used within a DataTableRow");
33
+ }
34
+ return context;
35
+ }
36
+ const DataTableRoot = /*#__PURE__*/ React.forwardRef((props, ref)=>{
37
+ const { sort, defaultSort, onSortChange, rowIds, selectable, selectedIds, defaultSelectedIds, onSelectionChange, query, defaultQuery, onQueryChange, filters, defaultFilters, onFiltersChange, columnKeys, columnOrder, defaultColumnOrder, onColumnOrderChange, hiddenColumnKeys, defaultHiddenColumnKeys, onHiddenColumnKeysChange, columnWidths, defaultColumnWidths, onColumnWidthsChange, columnLabels, defaultColumnLabels, onColumnLabelsChange, columnCalcOps, defaultColumnCalcOps, onColumnCalcOpsChange, onEdit, onLoadMore, hasMore, loadingMore, ...otherProps } = props;
38
+ const api = useDataTable12sBHiDUubw12s.useDataTable({
39
+ sort,
40
+ defaultSort,
41
+ onSortChange,
42
+ rowIds,
43
+ selectable,
44
+ selectedIds,
45
+ defaultSelectedIds,
46
+ onSelectionChange,
47
+ query,
48
+ defaultQuery,
49
+ onQueryChange,
50
+ filters,
51
+ defaultFilters,
52
+ onFiltersChange,
53
+ columnKeys,
54
+ columnOrder,
55
+ defaultColumnOrder,
56
+ onColumnOrderChange,
57
+ hiddenColumnKeys,
58
+ defaultHiddenColumnKeys,
59
+ onHiddenColumnKeysChange,
60
+ columnWidths,
61
+ defaultColumnWidths,
62
+ onColumnWidthsChange,
63
+ columnLabels,
64
+ defaultColumnLabels,
65
+ onColumnLabelsChange,
66
+ columnCalcOps,
67
+ defaultColumnCalcOps,
68
+ onColumnCalcOpsChange,
69
+ onEdit,
70
+ onLoadMore,
71
+ hasMore,
72
+ loadingMore
73
+ });
74
+ return /*#__PURE__*/ jsxRuntime.jsx(DataTableProvider, {
75
+ value: api,
76
+ children: /*#__PURE__*/ jsxRuntime.jsx(reactPrimitive.Primitive.div, {
77
+ ref: ref,
78
+ ...otherProps
79
+ })
80
+ });
81
+ });
82
+ DataTableRoot.displayName = "DataTableRoot";
83
+ /**
84
+ * The real `<table>` -- everything a native table gets for free (columns that line up
85
+ * by construction across `<thead>`/`<tbody>`/`<tfoot>`, `<th scope="col">` semantics,
86
+ * sticky `th`/`td` that actually work under horizontal scroll) that a `display: flex`
87
+ * div grid faked with ARIA and broke on. `rootProps` (just `role: "table"`, which a
88
+ * real `<table>` already implies) comes off context rather than being computed here --
89
+ * `useDataTable()` runs once, in `DataTableRoot` above, not per render of this sibling.
90
+ */ const DataTableTable = /*#__PURE__*/ React.forwardRef((props, ref)=>{
91
+ const { rootProps } = useDataTableContext();
92
+ const mergedProps = domUtils.mergeProps(rootProps, props);
93
+ return /*#__PURE__*/ jsxRuntime.jsx(reactPrimitive.Primitive.table, {
94
+ ref: ref,
95
+ ...mergedProps
96
+ });
97
+ });
98
+ DataTableTable.displayName = "DataTableTable";
99
+ /**
100
+ * `<thead>`, wrapping its own children in a single `<tr>` -- the styled layer still
101
+ * renders every header cell as a flat child of `DataTableHeader` (one header row is
102
+ * the only shape this table supports), so that `<tr>` is supplied HERE rather than
103
+ * asking every call site to add it.
104
+ */ const DataTableHeader = /*#__PURE__*/ React.forwardRef(({ children, ...otherProps }, ref)=>{
105
+ return /*#__PURE__*/ jsxRuntime.jsx(reactPrimitive.Primitive.thead, {
106
+ ref: ref,
107
+ ...otherProps,
108
+ children: /*#__PURE__*/ jsxRuntime.jsx("tr", {
109
+ children: children
110
+ })
111
+ });
112
+ });
113
+ DataTableHeader.displayName = "DataTableHeader";
114
+ const DataTableHeaderCell = /*#__PURE__*/ React.forwardRef(({ columnKey, sortable, ...otherProps }, ref)=>{
115
+ const { getHeaderCellProps } = useDataTableContext();
116
+ const mergedProps = domUtils.mergeProps(getHeaderCellProps(columnKey, sortable), otherProps);
117
+ return /*#__PURE__*/ jsxRuntime.jsx(reactPrimitive.Primitive.th, {
118
+ scope: "col",
119
+ ref: ref,
120
+ ...mergedProps
121
+ });
122
+ });
123
+ DataTableHeaderCell.displayName = "DataTableHeaderCell";
124
+ const DataTableBody = /*#__PURE__*/ React.forwardRef((props, ref)=>{
125
+ return /*#__PURE__*/ jsxRuntime.jsx(reactPrimitive.Primitive.tbody, {
126
+ ref: ref,
127
+ ...props
128
+ });
129
+ });
130
+ DataTableBody.displayName = "DataTableBody";
131
+ const DataTableRow = /*#__PURE__*/ React.forwardRef(({ rowId, ...otherProps }, ref)=>{
132
+ const row = useDataTableRow12sCPYaDa1p12s.useDataTableRow({
133
+ rowId
134
+ });
135
+ const mergedProps = domUtils.mergeProps(row.rootProps, otherProps);
136
+ return /*#__PURE__*/ jsxRuntime.jsx(DataTableRowProvider, {
137
+ value: row,
138
+ children: /*#__PURE__*/ jsxRuntime.jsx(reactPrimitive.Primitive.tr, {
139
+ ref: ref,
140
+ ...mergedProps
141
+ })
142
+ });
143
+ });
144
+ DataTableRow.displayName = "DataTableRow";
145
+ const DataTableCell = /*#__PURE__*/ React.forwardRef((props, ref)=>{
146
+ return /*#__PURE__*/ jsxRuntime.jsx(reactPrimitive.Primitive.td, {
147
+ ref: ref,
148
+ ...props
149
+ });
150
+ });
151
+ DataTableCell.displayName = "DataTableCell";
152
+
153
+ exports.DataTableBody = DataTableBody;
154
+ exports.DataTableCell = DataTableCell;
155
+ exports.DataTableHeader = DataTableHeader;
156
+ exports.DataTableHeaderCell = DataTableHeaderCell;
157
+ exports.DataTableRoot = DataTableRoot;
158
+ exports.DataTableRow = DataTableRow;
159
+ exports.DataTableTable = DataTableTable;
160
+ exports.useDataTableContext = useDataTableContext;
161
+ exports.useDataTableRowContext = useDataTableRowContext;
@@ -0,0 +1,153 @@
1
+ 'use client';
2
+ function __insertCSS(code) {
3
+ if (!code || typeof document == 'undefined') return
4
+ let head = document.head || document.getElementsByTagName('head')[0]
5
+ let style = document.createElement('style')
6
+ style.type = 'text/css'
7
+ head.appendChild(style)
8
+ ;style.styleSheet ? (style.styleSheet.cssText = code) : style.appendChild(document.createTextNode(code))
9
+ }
10
+
11
+ import { jsx } from 'react/jsx-runtime';
12
+ import { mergeProps } from '@seed-design/dom-utils';
13
+ import { Primitive } from '@seed-design/react-primitive';
14
+ import { forwardRef, createContext, useContext } from 'react';
15
+ import { u as useDataTable } from './useDataTable-12s-BHiDUubw-12s-CBeCwTe7.js';
16
+ import { u as useDataTableRow } from './useDataTableRow-12s-CPYaDa1p-12s-BmUSAnPe.js';
17
+
18
+ const DataTableContext = /*#__PURE__*/ createContext(null);
19
+ const DataTableProvider = DataTableContext.Provider;
20
+ function useDataTableContext({ strict = true } = {}) {
21
+ const context = useContext(DataTableContext);
22
+ if (!context && strict) {
23
+ throw new Error("useDataTableContext must be used within a DataTable");
24
+ }
25
+ return context;
26
+ }
27
+ const DataTableRowContext = /*#__PURE__*/ createContext(null);
28
+ const DataTableRowProvider = DataTableRowContext.Provider;
29
+ function useDataTableRowContext({ strict = true } = {}) {
30
+ const context = useContext(DataTableRowContext);
31
+ if (!context && strict) {
32
+ throw new Error("useDataTableRowContext must be used within a DataTableRow");
33
+ }
34
+ return context;
35
+ }
36
+ const DataTableRoot = /*#__PURE__*/ forwardRef((props, ref)=>{
37
+ const { sort, defaultSort, onSortChange, rowIds, selectable, selectedIds, defaultSelectedIds, onSelectionChange, query, defaultQuery, onQueryChange, filters, defaultFilters, onFiltersChange, columnKeys, columnOrder, defaultColumnOrder, onColumnOrderChange, hiddenColumnKeys, defaultHiddenColumnKeys, onHiddenColumnKeysChange, columnWidths, defaultColumnWidths, onColumnWidthsChange, columnLabels, defaultColumnLabels, onColumnLabelsChange, columnCalcOps, defaultColumnCalcOps, onColumnCalcOpsChange, onEdit, onLoadMore, hasMore, loadingMore, ...otherProps } = props;
38
+ const api = useDataTable({
39
+ sort,
40
+ defaultSort,
41
+ onSortChange,
42
+ rowIds,
43
+ selectable,
44
+ selectedIds,
45
+ defaultSelectedIds,
46
+ onSelectionChange,
47
+ query,
48
+ defaultQuery,
49
+ onQueryChange,
50
+ filters,
51
+ defaultFilters,
52
+ onFiltersChange,
53
+ columnKeys,
54
+ columnOrder,
55
+ defaultColumnOrder,
56
+ onColumnOrderChange,
57
+ hiddenColumnKeys,
58
+ defaultHiddenColumnKeys,
59
+ onHiddenColumnKeysChange,
60
+ columnWidths,
61
+ defaultColumnWidths,
62
+ onColumnWidthsChange,
63
+ columnLabels,
64
+ defaultColumnLabels,
65
+ onColumnLabelsChange,
66
+ columnCalcOps,
67
+ defaultColumnCalcOps,
68
+ onColumnCalcOpsChange,
69
+ onEdit,
70
+ onLoadMore,
71
+ hasMore,
72
+ loadingMore
73
+ });
74
+ return /*#__PURE__*/ jsx(DataTableProvider, {
75
+ value: api,
76
+ children: /*#__PURE__*/ jsx(Primitive.div, {
77
+ ref: ref,
78
+ ...otherProps
79
+ })
80
+ });
81
+ });
82
+ DataTableRoot.displayName = "DataTableRoot";
83
+ /**
84
+ * The real `<table>` -- everything a native table gets for free (columns that line up
85
+ * by construction across `<thead>`/`<tbody>`/`<tfoot>`, `<th scope="col">` semantics,
86
+ * sticky `th`/`td` that actually work under horizontal scroll) that a `display: flex`
87
+ * div grid faked with ARIA and broke on. `rootProps` (just `role: "table"`, which a
88
+ * real `<table>` already implies) comes off context rather than being computed here --
89
+ * `useDataTable()` runs once, in `DataTableRoot` above, not per render of this sibling.
90
+ */ const DataTableTable = /*#__PURE__*/ forwardRef((props, ref)=>{
91
+ const { rootProps } = useDataTableContext();
92
+ const mergedProps = mergeProps(rootProps, props);
93
+ return /*#__PURE__*/ jsx(Primitive.table, {
94
+ ref: ref,
95
+ ...mergedProps
96
+ });
97
+ });
98
+ DataTableTable.displayName = "DataTableTable";
99
+ /**
100
+ * `<thead>`, wrapping its own children in a single `<tr>` -- the styled layer still
101
+ * renders every header cell as a flat child of `DataTableHeader` (one header row is
102
+ * the only shape this table supports), so that `<tr>` is supplied HERE rather than
103
+ * asking every call site to add it.
104
+ */ const DataTableHeader = /*#__PURE__*/ forwardRef(({ children, ...otherProps }, ref)=>{
105
+ return /*#__PURE__*/ jsx(Primitive.thead, {
106
+ ref: ref,
107
+ ...otherProps,
108
+ children: /*#__PURE__*/ jsx("tr", {
109
+ children: children
110
+ })
111
+ });
112
+ });
113
+ DataTableHeader.displayName = "DataTableHeader";
114
+ const DataTableHeaderCell = /*#__PURE__*/ forwardRef(({ columnKey, sortable, ...otherProps }, ref)=>{
115
+ const { getHeaderCellProps } = useDataTableContext();
116
+ const mergedProps = mergeProps(getHeaderCellProps(columnKey, sortable), otherProps);
117
+ return /*#__PURE__*/ jsx(Primitive.th, {
118
+ scope: "col",
119
+ ref: ref,
120
+ ...mergedProps
121
+ });
122
+ });
123
+ DataTableHeaderCell.displayName = "DataTableHeaderCell";
124
+ const DataTableBody = /*#__PURE__*/ forwardRef((props, ref)=>{
125
+ return /*#__PURE__*/ jsx(Primitive.tbody, {
126
+ ref: ref,
127
+ ...props
128
+ });
129
+ });
130
+ DataTableBody.displayName = "DataTableBody";
131
+ const DataTableRow = /*#__PURE__*/ forwardRef(({ rowId, ...otherProps }, ref)=>{
132
+ const row = useDataTableRow({
133
+ rowId
134
+ });
135
+ const mergedProps = mergeProps(row.rootProps, otherProps);
136
+ return /*#__PURE__*/ jsx(DataTableRowProvider, {
137
+ value: row,
138
+ children: /*#__PURE__*/ jsx(Primitive.tr, {
139
+ ref: ref,
140
+ ...mergedProps
141
+ })
142
+ });
143
+ });
144
+ DataTableRow.displayName = "DataTableRow";
145
+ const DataTableCell = /*#__PURE__*/ forwardRef((props, ref)=>{
146
+ return /*#__PURE__*/ jsx(Primitive.td, {
147
+ ref: ref,
148
+ ...props
149
+ });
150
+ });
151
+ DataTableCell.displayName = "DataTableCell";
152
+
153
+ export { DataTableTable as D, DataTableHeader as a, DataTableHeaderCell as b, DataTableRow as c, DataTableCell as d, DataTableRoot as e, DataTableBody as f, useDataTableRowContext as g, useDataTableContext as u };
@@ -0,0 +1,104 @@
1
+ 'use client';
2
+ function __insertCSS(code) {
3
+ if (!code || typeof document == 'undefined') return
4
+ let head = document.head || document.getElementsByTagName('head')[0]
5
+ let style = document.createElement('style')
6
+ style.type = 'text/css'
7
+ head.appendChild(style)
8
+ ;style.styleSheet ? (style.styleSheet.cssText = code) : style.appendChild(document.createTextNode(code))
9
+ }
10
+
11
+ var jsxRuntime = require('react/jsx-runtime');
12
+ var reactMenu = require('@seed-design/react-menu');
13
+ var menu = require('@seed-design/css/recipes/menu');
14
+ var menuItem = require('@seed-design/css/recipes/menu-item');
15
+ var reactPrimitive = require('@seed-design/react-primitive');
16
+ var DataTable12s = require('./DataTable-12s-8LMBtS2u.cjs');
17
+ var React = require('react');
18
+
19
+ function _interopNamespace(e) {
20
+ if (e && e.__esModule) return e;
21
+ var n = Object.create(null);
22
+ if (e) {
23
+ Object.keys(e).forEach(function (k) {
24
+ if (k !== 'default') {
25
+ var d = Object.getOwnPropertyDescriptor(e, k);
26
+ Object.defineProperty(n, k, d.get ? d : {
27
+ enumerable: true,
28
+ get: function () { return e[k]; }
29
+ });
30
+ }
31
+ });
32
+ }
33
+ n.default = e;
34
+ return n;
35
+ }
36
+
37
+ var React__namespace = /*#__PURE__*/_interopNamespace(React);
38
+
39
+ const { ClassNamesProvider, withContext, useClassNames } = DataTable12s.createSlotRecipeContext(menu.menu);
40
+ const { PropsProvider: ItemPropsProvider, useProps: useItemProps, withContext: withItemContext, ClassNamesProvider: ItemClassNamesProvider } = DataTable12s.createSlotRecipeContext(menuItem.menuItem);
41
+ const withStateProps = DataTable12s.createWithStateProps([
42
+ reactMenu.useMenuContext
43
+ ]);
44
+ const withItemStateProps = DataTable12s.createWithStateProps([
45
+ reactMenu.useMenuItemContext
46
+ ]);
47
+ const MenuRoot = (props)=>{
48
+ const [variantProps, otherProps] = menu.menu.splitVariantProps(props);
49
+ const classNames = menu.menu(variantProps);
50
+ return /*#__PURE__*/ jsxRuntime.jsx(ClassNamesProvider, {
51
+ value: classNames,
52
+ children: /*#__PURE__*/ jsxRuntime.jsx(ItemPropsProvider, {
53
+ value: {
54
+ size: variantProps.size
55
+ },
56
+ children: /*#__PURE__*/ jsxRuntime.jsx(reactMenu.Menu.Root, {
57
+ ...otherProps
58
+ })
59
+ })
60
+ });
61
+ };
62
+ reactMenu.Menu.Anchor;
63
+ const MenuTrigger = reactMenu.Menu.Trigger;
64
+ const MenuPositioner = /*#__PURE__*/ React__namespace.forwardRef(({ className, ...props }, ref)=>{
65
+ const classNames = useClassNames();
66
+ return /*#__PURE__*/ jsxRuntime.jsx(reactMenu.Menu.Positioner, {
67
+ ref: ref,
68
+ className: DataTable12s.clsx(classNames.positioner, className),
69
+ ...props
70
+ });
71
+ });
72
+ MenuPositioner.displayName = "MenuPositioner";
73
+ const MenuContent = withContext(reactMenu.Menu.Content, "content");
74
+ const MenuScrollArea = withContext(withStateProps(reactPrimitive.Primitive.div), "scrollArea");
75
+ withContext(reactMenu.Menu.Group, "group");
76
+ withContext(reactMenu.Menu.GroupLabel, "groupLabel");
77
+ const MenuItem = /*#__PURE__*/ React__namespace.forwardRef(({ className: propClassName, ...props }, ref)=>{
78
+ const [variantProps, otherProps] = menuItem.menuItem.splitVariantProps(props);
79
+ const parentProps = useItemProps();
80
+ const classNames = menuItem.menuItem({
81
+ ...parentProps,
82
+ ...variantProps
83
+ });
84
+ return /*#__PURE__*/ jsxRuntime.jsx(ItemClassNamesProvider, {
85
+ value: classNames,
86
+ children: /*#__PURE__*/ jsxRuntime.jsx(reactMenu.Menu.Item, {
87
+ ref: ref,
88
+ className: DataTable12s.clsx(classNames.root, propClassName),
89
+ ...otherProps
90
+ })
91
+ });
92
+ });
93
+ MenuItem.displayName = "MenuItem";
94
+ withItemContext(withItemStateProps(reactPrimitive.Primitive.div), "body");
95
+ const MenuItemLabel = withItemContext(withItemStateProps(reactPrimitive.Primitive.span), "label");
96
+ withItemContext(withItemStateProps(reactPrimitive.Primitive.span), "description");
97
+
98
+ exports.MenuContent = MenuContent;
99
+ exports.MenuItem = MenuItem;
100
+ exports.MenuItemLabel = MenuItemLabel;
101
+ exports.MenuPositioner = MenuPositioner;
102
+ exports.MenuRoot = MenuRoot;
103
+ exports.MenuScrollArea = MenuScrollArea;
104
+ exports.MenuTrigger = MenuTrigger;
@@ -0,0 +1,78 @@
1
+ 'use client';
2
+ function __insertCSS(code) {
3
+ if (!code || typeof document == 'undefined') return
4
+ let head = document.head || document.getElementsByTagName('head')[0]
5
+ let style = document.createElement('style')
6
+ style.type = 'text/css'
7
+ head.appendChild(style)
8
+ ;style.styleSheet ? (style.styleSheet.cssText = code) : style.appendChild(document.createTextNode(code))
9
+ }
10
+
11
+ import { jsx } from 'react/jsx-runtime';
12
+ import { Menu, useMenuContext, useMenuItemContext } from '@seed-design/react-menu';
13
+ import { menu } from '@seed-design/css/recipes/menu';
14
+ import { menuItem } from '@seed-design/css/recipes/menu-item';
15
+ import { Primitive } from '@seed-design/react-primitive';
16
+ import { c as createSlotRecipeContext, a as createWithStateProps, b as clsx } from './DataTable-12s-Bd20OuMs.js';
17
+ import * as React from 'react';
18
+
19
+ const { ClassNamesProvider, withContext, useClassNames } = createSlotRecipeContext(menu);
20
+ const { PropsProvider: ItemPropsProvider, useProps: useItemProps, withContext: withItemContext, ClassNamesProvider: ItemClassNamesProvider } = createSlotRecipeContext(menuItem);
21
+ const withStateProps = createWithStateProps([
22
+ useMenuContext
23
+ ]);
24
+ const withItemStateProps = createWithStateProps([
25
+ useMenuItemContext
26
+ ]);
27
+ const MenuRoot = (props)=>{
28
+ const [variantProps, otherProps] = menu.splitVariantProps(props);
29
+ const classNames = menu(variantProps);
30
+ return /*#__PURE__*/ jsx(ClassNamesProvider, {
31
+ value: classNames,
32
+ children: /*#__PURE__*/ jsx(ItemPropsProvider, {
33
+ value: {
34
+ size: variantProps.size
35
+ },
36
+ children: /*#__PURE__*/ jsx(Menu.Root, {
37
+ ...otherProps
38
+ })
39
+ })
40
+ });
41
+ };
42
+ Menu.Anchor;
43
+ const MenuTrigger = Menu.Trigger;
44
+ const MenuPositioner = /*#__PURE__*/ React.forwardRef(({ className, ...props }, ref)=>{
45
+ const classNames = useClassNames();
46
+ return /*#__PURE__*/ jsx(Menu.Positioner, {
47
+ ref: ref,
48
+ className: clsx(classNames.positioner, className),
49
+ ...props
50
+ });
51
+ });
52
+ MenuPositioner.displayName = "MenuPositioner";
53
+ const MenuContent = withContext(Menu.Content, "content");
54
+ const MenuScrollArea = withContext(withStateProps(Primitive.div), "scrollArea");
55
+ withContext(Menu.Group, "group");
56
+ withContext(Menu.GroupLabel, "groupLabel");
57
+ const MenuItem = /*#__PURE__*/ React.forwardRef(({ className: propClassName, ...props }, ref)=>{
58
+ const [variantProps, otherProps] = menuItem.splitVariantProps(props);
59
+ const parentProps = useItemProps();
60
+ const classNames = menuItem({
61
+ ...parentProps,
62
+ ...variantProps
63
+ });
64
+ return /*#__PURE__*/ jsx(ItemClassNamesProvider, {
65
+ value: classNames,
66
+ children: /*#__PURE__*/ jsx(Menu.Item, {
67
+ ref: ref,
68
+ className: clsx(classNames.root, propClassName),
69
+ ...otherProps
70
+ })
71
+ });
72
+ });
73
+ MenuItem.displayName = "MenuItem";
74
+ withItemContext(withItemStateProps(Primitive.div), "body");
75
+ const MenuItemLabel = withItemContext(withItemStateProps(Primitive.span), "label");
76
+ withItemContext(withItemStateProps(Primitive.span), "description");
77
+
78
+ export { MenuRoot as M, MenuTrigger as a, MenuPositioner as b, MenuContent as c, MenuScrollArea as d, MenuItem as e, MenuItemLabel as f };