@epilot/volt-ui-experimental-griffel 0.2.3 → 0.3.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 (169) hide show
  1. package/ADOPTING.md +416 -0
  2. package/README.md +32 -31
  3. package/dist/_virtual/jsx-dev-runtime.js +5 -0
  4. package/dist/_virtual/jsx-dev-runtime.js.map +1 -0
  5. package/dist/_virtual/react-jsx-dev-runtime.development.js +5 -0
  6. package/dist/_virtual/react-jsx-dev-runtime.development.js.map +1 -0
  7. package/dist/_virtual/react-jsx-dev-runtime.production.js +5 -0
  8. package/dist/_virtual/react-jsx-dev-runtime.production.js.map +1 -0
  9. package/dist/components/accordion/accordion.js +126 -66
  10. package/dist/components/accordion/accordion.js.map +1 -1
  11. package/dist/components/alert-dialog/alert-dialog.js +239 -137
  12. package/dist/components/alert-dialog/alert-dialog.js.map +1 -1
  13. package/dist/components/avatar/avatar-group.js +102 -47
  14. package/dist/components/avatar/avatar-group.js.map +1 -1
  15. package/dist/components/avatar/avatar.js +97 -73
  16. package/dist/components/avatar/avatar.js.map +1 -1
  17. package/dist/components/badge/badge.js +53 -37
  18. package/dist/components/badge/badge.js.map +1 -1
  19. package/dist/components/breadcrumb/breadcrumb.js +97 -49
  20. package/dist/components/breadcrumb/breadcrumb.js.map +1 -1
  21. package/dist/components/button/button.js +88 -77
  22. package/dist/components/button/button.js.map +1 -1
  23. package/dist/components/button-group/button-group.js +55 -31
  24. package/dist/components/button-group/button-group.js.map +1 -1
  25. package/dist/components/callout/callout.js +288 -164
  26. package/dist/components/callout/callout.js.map +1 -1
  27. package/dist/components/card/card.js +137 -81
  28. package/dist/components/card/card.js.map +1 -1
  29. package/dist/components/checkbox/checkbox.js +100 -49
  30. package/dist/components/checkbox/checkbox.js.map +1 -1
  31. package/dist/components/collapsible-sidebar/collapsible-sidebar.js +155 -107
  32. package/dist/components/collapsible-sidebar/collapsible-sidebar.js.map +1 -1
  33. package/dist/components/command/command.js +297 -158
  34. package/dist/components/command/command.js.map +1 -1
  35. package/dist/components/data-table/data-table-body.js +114 -54
  36. package/dist/components/data-table/data-table-body.js.map +1 -1
  37. package/dist/components/data-table/data-table-column-header.js +117 -45
  38. package/dist/components/data-table/data-table-column-header.js.map +1 -1
  39. package/dist/components/data-table/data-table-column-visibility.js +98 -39
  40. package/dist/components/data-table/data-table-column-visibility.js.map +1 -1
  41. package/dist/components/data-table/data-table-content.js +90 -58
  42. package/dist/components/data-table/data-table-content.js.map +1 -1
  43. package/dist/components/data-table/data-table-error.js +83 -39
  44. package/dist/components/data-table/data-table-error.js.map +1 -1
  45. package/dist/components/data-table/data-table-header.js +88 -54
  46. package/dist/components/data-table/data-table-header.js.map +1 -1
  47. package/dist/components/data-table/data-table-loading.js +27 -15
  48. package/dist/components/data-table/data-table-loading.js.map +1 -1
  49. package/dist/components/data-table/data-table-pagination.js +27 -19
  50. package/dist/components/data-table/data-table-pagination.js.map +1 -1
  51. package/dist/components/data-table/data-table-row.js +87 -64
  52. package/dist/components/data-table/data-table-row.js.map +1 -1
  53. package/dist/components/data-table/data-table-toolbar.js +24 -16
  54. package/dist/components/data-table/data-table-toolbar.js.map +1 -1
  55. package/dist/components/data-table/data-table.js +182 -145
  56. package/dist/components/data-table/data-table.js.map +1 -1
  57. package/dist/components/date-range-picker/date-range-picker.js +342 -214
  58. package/dist/components/date-range-picker/date-range-picker.js.map +1 -1
  59. package/dist/components/date-range-picker/range-calendar.js +132 -92
  60. package/dist/components/date-range-picker/range-calendar.js.map +1 -1
  61. package/dist/components/date-time-picker/calendar.js +501 -317
  62. package/dist/components/date-time-picker/calendar.js.map +1 -1
  63. package/dist/components/date-time-picker/date-time-picker-context.js +64 -60
  64. package/dist/components/date-time-picker/date-time-picker-context.js.map +1 -1
  65. package/dist/components/date-time-picker/date-time-picker-input.js +249 -149
  66. package/dist/components/date-time-picker/date-time-picker-input.js.map +1 -1
  67. package/dist/components/date-time-picker/date-time-picker-panel.js +273 -165
  68. package/dist/components/date-time-picker/date-time-picker-panel.js.map +1 -1
  69. package/dist/components/date-time-picker/date-time-picker-popover.js +22 -14
  70. package/dist/components/date-time-picker/date-time-picker-popover.js.map +1 -1
  71. package/dist/components/date-time-picker/date-time-picker.js +134 -90
  72. package/dist/components/date-time-picker/date-time-picker.js.map +1 -1
  73. package/dist/components/date-time-picker/time-picker.js +198 -132
  74. package/dist/components/date-time-picker/time-picker.js.map +1 -1
  75. package/dist/components/density-provider/density-provider.js +48 -0
  76. package/dist/components/density-provider/density-provider.js.map +1 -0
  77. package/dist/components/dialog/dialog.js +280 -150
  78. package/dist/components/dialog/dialog.js.map +1 -1
  79. package/dist/components/drawer/drawer.js +273 -163
  80. package/dist/components/drawer/drawer.js.map +1 -1
  81. package/dist/components/dropdown-menu/dropdown-menu.js +378 -195
  82. package/dist/components/dropdown-menu/dropdown-menu.js.map +1 -1
  83. package/dist/components/field/field-combobox.js +447 -240
  84. package/dist/components/field/field-combobox.js.map +1 -1
  85. package/dist/components/field/field-select.js +23 -19
  86. package/dist/components/field/field-select.js.map +1 -1
  87. package/dist/components/field/field.js +318 -209
  88. package/dist/components/field/field.js.map +1 -1
  89. package/dist/components/label/label.js +27 -19
  90. package/dist/components/label/label.js.map +1 -1
  91. package/dist/components/list/list.js +623 -369
  92. package/dist/components/list/list.js.map +1 -1
  93. package/dist/components/option-card/option-card.js +323 -159
  94. package/dist/components/option-card/option-card.js.map +1 -1
  95. package/dist/components/pill/pill.js +82 -64
  96. package/dist/components/pill/pill.js.map +1 -1
  97. package/dist/components/popover/popover.js +101 -56
  98. package/dist/components/popover/popover.js.map +1 -1
  99. package/dist/components/radio/radio.js +94 -51
  100. package/dist/components/radio/radio.js.map +1 -1
  101. package/dist/components/scroll-overflow/scroll-overflow.js +350 -198
  102. package/dist/components/scroll-overflow/scroll-overflow.js.map +1 -1
  103. package/dist/components/segmented-control/segmented-control.js +141 -97
  104. package/dist/components/segmented-control/segmented-control.js.map +1 -1
  105. package/dist/components/select/select.js +452 -227
  106. package/dist/components/select/select.js.map +1 -1
  107. package/dist/components/separator/separator.js +24 -16
  108. package/dist/components/separator/separator.js.map +1 -1
  109. package/dist/components/skeleton/skeleton.js +83 -43
  110. package/dist/components/skeleton/skeleton.js.map +1 -1
  111. package/dist/components/spinner/spinner.js +44 -20
  112. package/dist/components/spinner/spinner.js.map +1 -1
  113. package/dist/components/switch/switch.js +163 -86
  114. package/dist/components/switch/switch.js.map +1 -1
  115. package/dist/components/table/table-pagination.js +465 -205
  116. package/dist/components/table/table-pagination.js.map +1 -1
  117. package/dist/components/table/table.js +212 -144
  118. package/dist/components/table/table.js.map +1 -1
  119. package/dist/components/tabs/tabs.js +94 -58
  120. package/dist/components/tabs/tabs.js.map +1 -1
  121. package/dist/components/text/text.js +40 -32
  122. package/dist/components/text/text.js.map +1 -1
  123. package/dist/components/toast/toast.js +187 -111
  124. package/dist/components/toast/toast.js.map +1 -1
  125. package/dist/components/toggle/toggle-group.js +40 -24
  126. package/dist/components/toggle/toggle-group.js.map +1 -1
  127. package/dist/components/toggle/toggle.js +48 -40
  128. package/dist/components/toggle/toggle.js.map +1 -1
  129. package/dist/components/tooltip/tooltip.js +101 -55
  130. package/dist/components/tooltip/tooltip.js.map +1 -1
  131. package/dist/index.d.ts +600 -427
  132. package/dist/index.js +215 -212
  133. package/dist/index.js.map +1 -1
  134. package/dist/lib/clear-button.js +27 -15
  135. package/dist/lib/clear-button.js.map +1 -1
  136. package/dist/lib/icons.js +18 -6
  137. package/dist/lib/icons.js.map +1 -1
  138. package/dist/packages/volt-runtime/dist/sheet.js +27 -10
  139. package/dist/packages/volt-runtime/dist/sheet.js.map +1 -1
  140. package/dist/packages/volt-runtime/dist/styles/recipe.js +76 -0
  141. package/dist/packages/volt-runtime/dist/styles/recipe.js.map +1 -0
  142. package/dist/styles/document-context.js +12 -0
  143. package/dist/styles/document-context.js.map +1 -0
  144. package/dist/styles/make-styles.js +18 -10
  145. package/dist/styles/make-styles.js.map +1 -1
  146. package/dist/tokens/core.generated.js +1238 -1166
  147. package/dist/tokens/core.generated.js.map +1 -1
  148. package/dist/tokens/index.d.ts +442 -415
  149. package/dist/tokens/index.js +1105 -1078
  150. package/dist/tokens/index.js.map +1 -1
  151. package/dist/tokens/install.js +9 -5
  152. package/dist/tokens/install.js.map +1 -1
  153. package/dist/tokens/use-palette-tokens.js +20 -0
  154. package/dist/tokens/use-palette-tokens.js.map +1 -0
  155. package/dist/tokens.json +83 -2
  156. package/dist/vendor/react/cjs/react-jsx-dev-runtime.development.js +236 -0
  157. package/dist/vendor/react/cjs/react-jsx-dev-runtime.development.js.map +1 -0
  158. package/dist/vendor/react/cjs/react-jsx-dev-runtime.production.js +21 -0
  159. package/dist/vendor/react/cjs/react-jsx-dev-runtime.production.js.map +1 -0
  160. package/dist/vendor/react/jsx-dev-runtime.js +9 -0
  161. package/dist/vendor/react/jsx-dev-runtime.js.map +1 -0
  162. package/package.json +13 -5
  163. package/scripts/migration-diagnostics-core.mjs +859 -0
  164. package/scripts/migration-diagnostics.mjs +353 -0
  165. package/scripts/migration-sweep.mjs +179 -0
  166. package/AGENTS.md +0 -153
  167. package/AUTHORING.md +0 -292
  168. package/dist/packages/volt-runtime/dist/styles/make-styles.js +0 -22
  169. package/dist/packages/volt-runtime/dist/styles/make-styles.js.map +0 -1
@@ -1,24 +1,24 @@
1
- import { jsxs as W, jsx as p } from "react/jsx-runtime";
2
- import * as A from "react";
3
- import { flexRender as B } from "../../vendor/@tanstack/react-table/build/lib/index.js";
4
- import { shorthands as b } from "../../packages/volt-runtime/dist/vendor/@griffel/core/src/index.js";
1
+ import { j as u } from "../../vendor/react/jsx-dev-runtime.js";
2
+ import * as L from "react";
3
+ import { flexRender as W } from "../../vendor/@tanstack/react-table/build/lib/index.js";
4
+ import { shorthands as w } from "../../packages/volt-runtime/dist/vendor/@griffel/core/src/index.js";
5
5
  import { SLOT_ATTR as f } from "../../packages/volt-runtime/dist/renderer/contract.js";
6
6
  import { mergeClasses as h } from "../../packages/volt-runtime/dist/vendor/@griffel/core/src/mergeClasses.js";
7
- import { makeVoltStyles as N } from "../../styles/make-styles.js";
8
- import { grayA6 as P, accentA3 as g } from "../../tokens/index.js";
9
- import { TableRow as $, TableCell as x } from "../table/table.js";
10
- import { getPinnedColumnOffset as z, isLastLeftPinnedColumn as V, isFirstRightPinnedColumn as j } from "./data-table-pinning-utils.js";
11
- import { useDataTable as F } from "./hooks/use-data-table.js";
12
- import { useDataTableContent as K } from "./hooks/use-data-table-content.js";
13
- function _(t, a) {
14
- const n = t.column.columnDef.meta;
15
- return (n == null ? void 0 : n.cellOverflow) ?? a;
7
+ import { makeVoltStyles as V } from "../../styles/make-styles.js";
8
+ import { grayA6 as j, accentA3 as g } from "../../tokens/index.js";
9
+ import { TableRow as A, TableCell as x } from "../table/table.js";
10
+ import { getPinnedColumnOffset as B, isLastLeftPinnedColumn as P, isFirstRightPinnedColumn as $ } from "./data-table-pinning-utils.js";
11
+ import { useDataTable as z } from "./hooks/use-data-table.js";
12
+ import { useDataTableContent as U } from "./hooks/use-data-table-content.js";
13
+ function F(t, a) {
14
+ const i = t.column.columnDef.meta;
15
+ return (i == null ? void 0 : i.cellOverflow) ?? a;
16
16
  }
17
- function Q(t) {
17
+ function K(t) {
18
18
  const a = t.column.columnDef.meta;
19
19
  return a == null ? void 0 : a.align;
20
20
  }
21
- const C = [
21
+ const v = [
22
22
  "button",
23
23
  "a",
24
24
  "input",
@@ -38,7 +38,7 @@ const C = [
38
38
  '[role="tab"]',
39
39
  "[data-radix-collection-item]",
40
40
  `[${f}="checkbox"]`
41
- ], q = N({
41
+ ], _ = V({
42
42
  rowClickable: {
43
43
  cursor: "pointer",
44
44
  ":hover": {
@@ -49,20 +49,20 @@ const C = [
49
49
  backgroundColor: g
50
50
  },
51
51
  rowBorder: {
52
- boxShadow: `inset 0 -1px 0 0 ${P}`,
52
+ boxShadow: `inset 0 -1px 0 0 ${j}`,
53
53
  "&:last-child": {
54
54
  boxShadow: "none"
55
55
  }
56
56
  },
57
57
  cellTruncate: {
58
58
  maxWidth: 0,
59
- ...b.overflow("hidden"),
59
+ ...w.overflow("hidden"),
60
60
  textOverflow: "ellipsis",
61
61
  whiteSpace: "nowrap"
62
62
  },
63
63
  cellWrap: {
64
64
  maxWidth: 0,
65
- ...b.overflow("hidden"),
65
+ ...w.overflow("hidden"),
66
66
  overflowWrap: "break-word",
67
67
  wordBreak: "break-word"
68
68
  },
@@ -73,35 +73,35 @@ const C = [
73
73
  boxShadow: "-2px 0 5px -2px rgba(0,0,0,0.1)"
74
74
  }
75
75
  });
76
- function G({ row: t, style: a, className: n }, k) {
77
- const r = q(), {
76
+ function Q({ row: t, style: a, className: i }, C) {
77
+ const l = _(), {
78
78
  table: c,
79
- onRowClick: i,
80
- clickableRowClassName: v,
79
+ onRowClick: n,
80
+ clickableRowClassName: k,
81
81
  selectedRowClassName: R,
82
- cellOverflow: T = "truncate",
83
- showRowBorders: S,
84
- disableColumnResizing: D
85
- } = F(), d = K(), u = (d == null ? void 0 : d.spacerWidth) ?? 0, y = !D, s = !!i, I = (e) => {
86
- if (!i) return;
87
- const l = e.target;
88
- C.some(
89
- (o) => l.closest(o)
90
- ) || i(t, e);
91
- }, E = (e) => {
92
- if (i && (e.key === "Enter" || e.key === " ")) {
93
- const l = e.target;
94
- if (C.some(
95
- (o) => l.closest(o)
82
+ cellOverflow: D = "truncate",
83
+ showRowBorders: T,
84
+ disableColumnResizing: S
85
+ } = z(), d = U(), p = (d == null ? void 0 : d.spacerWidth) ?? 0, N = !S, s = !!n, E = (e) => {
86
+ if (!n) return;
87
+ const r = e.target;
88
+ v.some(
89
+ (o) => r.closest(o)
90
+ ) || n(t, e);
91
+ }, y = (e) => {
92
+ if (n && (e.key === "Enter" || e.key === " ")) {
93
+ const r = e.target;
94
+ if (v.some(
95
+ (o) => r.closest(o)
96
96
  ))
97
97
  return;
98
- e.preventDefault(), i(t, e);
98
+ e.preventDefault(), n(t, e);
99
99
  }
100
100
  };
101
- return /* @__PURE__ */ W(
102
- $,
101
+ return /* @__PURE__ */ u.jsxDEV(
102
+ A,
103
103
  {
104
- ref: k,
104
+ ref: C,
105
105
  "data-slot": "data-table-row",
106
106
  [f]: "data-table-row",
107
107
  "data-fs-element": "DataTable-Row",
@@ -109,18 +109,18 @@ function G({ row: t, style: a, className: n }, k) {
109
109
  "data-clickable": s ? "true" : void 0,
110
110
  style: a,
111
111
  className: h(
112
- S !== !1 && r.rowBorder,
113
- s && (v ?? r.rowClickable),
114
- t.getIsSelected() && (R ?? r.rowSelected),
115
- n
112
+ T !== !1 && l.rowBorder,
113
+ s && (k ?? l.rowClickable),
114
+ t.getIsSelected() && (R ?? l.rowSelected),
115
+ i
116
116
  ),
117
- onClick: s ? I : void 0,
117
+ onClick: s ? E : void 0,
118
118
  tabIndex: s ? 0 : void 0,
119
- onKeyDown: s ? E : void 0,
119
+ onKeyDown: s ? y : void 0,
120
120
  children: [
121
121
  t.getVisibleCells().map((e) => {
122
- const l = _(e, T), m = Q(e), o = e.column.getIsPinned(), w = o ? z(e.column, c) : void 0, O = V(e.column, c), L = j(e.column, c);
123
- return /* @__PURE__ */ p(
122
+ const r = F(e, D), m = K(e), o = e.column.getIsPinned(), b = o ? B(e.column, c) : void 0, I = P(e.column, c), O = $(e.column, c);
123
+ return /* @__PURE__ */ u.jsxDEV(
124
124
  x,
125
125
  {
126
126
  "data-slot": "data-table-cell",
@@ -129,35 +129,58 @@ function G({ row: t, style: a, className: n }, k) {
129
129
  "data-pinned": o || void 0,
130
130
  align: m,
131
131
  style: {
132
- width: y || o ? e.column.getSize() : void 0,
133
- left: o === "left" ? `${w}px` : void 0,
134
- right: o === "right" ? `${w}px` : void 0
132
+ width: N || o ? e.column.getSize() : void 0,
133
+ left: o === "left" ? `${b}px` : void 0,
134
+ right: o === "right" ? `${b}px` : void 0
135
135
  },
136
136
  className: h(
137
- l === "truncate" && r.cellTruncate,
138
- l === "wrap" && r.cellWrap,
139
- O && r.shadowLeft,
140
- L && r.shadowRight
137
+ r === "truncate" && l.cellTruncate,
138
+ r === "wrap" && l.cellWrap,
139
+ I && l.shadowLeft,
140
+ O && l.shadowRight
141
141
  ),
142
- children: B(e.column.columnDef.cell, e.getContext())
142
+ children: W(e.column.columnDef.cell, e.getContext())
143
143
  },
144
- e.id
144
+ e.id,
145
+ !1,
146
+ {
147
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-row.tsx",
148
+ lineNumber: 203,
149
+ columnNumber: 11
150
+ },
151
+ this
145
152
  );
146
153
  }),
147
- u > 0 && /* @__PURE__ */ p(
154
+ p > 0 && /* @__PURE__ */ u.jsxDEV(
148
155
  x,
149
156
  {
150
157
  "data-spacer": !0,
151
158
  "aria-hidden": "true",
152
- style: { width: u, padding: 0 }
153
- }
159
+ style: { width: p, padding: 0 }
160
+ },
161
+ void 0,
162
+ !1,
163
+ {
164
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-row.tsx",
165
+ lineNumber: 231,
166
+ columnNumber: 9
167
+ },
168
+ this
154
169
  )
155
170
  ]
156
- }
171
+ },
172
+ void 0,
173
+ !0,
174
+ {
175
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-row.tsx",
176
+ lineNumber: 174,
177
+ columnNumber: 5
178
+ },
179
+ this
157
180
  );
158
181
  }
159
- const re = A.forwardRef(G);
182
+ const ae = L.forwardRef(Q);
160
183
  export {
161
- re as DataTableRow
184
+ ae as DataTableRow
162
185
  };
163
186
  //# sourceMappingURL=data-table-row.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"data-table-row.js","sources":["../../../src/components/data-table/data-table-row.tsx"],"sourcesContent":["import * as React from \"react\"\nimport type { CSSProperties, MouseEvent, KeyboardEvent } from \"react\"\nimport type { Row, Cell } from \"@tanstack/react-table\"\nimport { flexRender } from \"@tanstack/react-table\"\nimport { mergeClasses, shorthands } from \"@epilot/volt-ui-runtime\"\n\nimport { SLOT_ATTR } from \"../../renderer/contract\"\nimport { makeVoltStyles } from \"../../styles/make-styles\"\nimport * as tokens from \"../../tokens\"\nimport { TableRow, TableCell } from \"../table/table\"\nimport { useDataTable, useDataTableContent } from \"./hooks\"\nimport type { DataTableCellOverflow } from \"./data-table-context\"\nimport {\n getPinnedColumnOffset,\n isLastLeftPinnedColumn,\n isFirstRightPinnedColumn,\n} from \"./data-table-pinning-utils\"\n\ntype CellAlign = \"left\" | \"center\" | \"right\"\n\n/**\n * Gets the cell overflow mode, checking column meta first, then falling back to table default.\n */\nfunction getCellOverflow<TData>(\n cell: Cell<TData, unknown>,\n tableDefault: DataTableCellOverflow\n): DataTableCellOverflow {\n const columnMeta = cell.column.columnDef.meta as\n | { cellOverflow?: DataTableCellOverflow }\n | undefined\n return columnMeta?.cellOverflow ?? tableDefault\n}\n\n/**\n * Gets the cell alignment from column meta.\n */\nfunction getCellAlign<TData>(\n cell: Cell<TData, unknown>\n): CellAlign | undefined {\n const columnMeta = cell.column.columnDef.meta as\n | { align?: CellAlign }\n | undefined\n return columnMeta?.align\n}\n\n// Interactive element selectors that should NOT trigger row click\nconst INTERACTIVE_SELECTORS = [\n \"button\",\n \"a\",\n \"input\",\n \"select\",\n \"textarea\",\n '[role=\"button\"]',\n '[role=\"checkbox\"]',\n '[role=\"link\"]',\n '[role=\"menuitem\"]',\n '[role=\"menuitemcheckbox\"]',\n '[role=\"menuitemradio\"]',\n '[role=\"option\"]',\n '[role=\"radio\"]',\n '[role=\"slider\"]',\n '[role=\"spinbutton\"]',\n '[role=\"switch\"]',\n '[role=\"tab\"]',\n \"[data-radix-collection-item]\",\n `[${SLOT_ATTR}=\"checkbox\"]`,\n]\n\nconst useStyles = makeVoltStyles({\n rowClickable: {\n cursor: \"pointer\",\n \":hover\": {\n backgroundColor: tokens.accentA3,\n },\n },\n rowSelected: {\n backgroundColor: tokens.accentA3,\n },\n rowBorder: {\n boxShadow: `inset 0 -1px 0 0 ${tokens.grayA6}`,\n \"&:last-child\": {\n boxShadow: \"none\",\n },\n },\n cellTruncate: {\n maxWidth: 0,\n ...shorthands.overflow(\"hidden\"),\n textOverflow: \"ellipsis\",\n whiteSpace: \"nowrap\",\n },\n cellWrap: {\n maxWidth: 0,\n ...shorthands.overflow(\"hidden\"),\n overflowWrap: \"break-word\",\n wordBreak: \"break-word\",\n },\n shadowLeft: {\n boxShadow: \"2px 0 5px -2px rgba(0,0,0,0.1)\",\n },\n shadowRight: {\n boxShadow: \"-2px 0 5px -2px rgba(0,0,0,0.1)\",\n },\n})\n\nexport type DataTableRowProps<TData> = {\n /** The row instance from TanStack Table */\n row: Row<TData>\n /** Optional style (used for virtualized row heights) */\n style?: CSSProperties\n /** Additional class name */\n className?: string\n}\n\n/**\n * Renders a single table row with its cells.\n * Supports clickable rows when onRowClick is provided via DataTable context.\n */\nfunction DataTableRowInner<TData>(\n { row, style, className }: DataTableRowProps<TData>,\n ref: React.ForwardedRef<HTMLTableRowElement>\n) {\n const styles = useStyles()\n const {\n table,\n onRowClick,\n clickableRowClassName,\n selectedRowClassName,\n cellOverflow: tableCellOverflow = \"truncate\",\n showRowBorders,\n disableColumnResizing,\n } = useDataTable<TData>()\n const contentContext = useDataTableContent()\n const spacerWidth = contentContext?.spacerWidth ?? 0\n\n const enableColumnResizing = !disableColumnResizing\n const isClickable = Boolean(onRowClick)\n\n const handleClick = (event: MouseEvent<HTMLTableRowElement>) => {\n if (!onRowClick) return\n\n // Check if click originated from an interactive element\n const target = event.target as HTMLElement\n const isInteractiveElement = INTERACTIVE_SELECTORS.some((selector) =>\n target.closest(selector)\n )\n\n if (isInteractiveElement) {\n return // Don't trigger row click for interactive elements\n }\n\n onRowClick(row, event)\n }\n\n const handleKeyDown = (event: KeyboardEvent<HTMLTableRowElement>) => {\n if (!onRowClick) return\n\n if (event.key === \"Enter\" || event.key === \" \") {\n // Check if key event originated from an interactive element\n const target = event.target as HTMLElement\n const isInteractiveElement = INTERACTIVE_SELECTORS.some((selector) =>\n target.closest(selector)\n )\n\n if (isInteractiveElement) {\n return // Let the interactive element handle the event\n }\n\n event.preventDefault()\n onRowClick(row, event as unknown as MouseEvent<HTMLTableRowElement>)\n }\n }\n\n return (\n <TableRow\n ref={ref}\n data-slot=\"data-table-row\"\n {...{ [SLOT_ATTR]: \"data-table-row\" }}\n data-fs-element=\"DataTable-Row\"\n data-state={row.getIsSelected() ? \"selected\" : undefined}\n data-clickable={isClickable ? \"true\" : undefined}\n style={style}\n className={mergeClasses(\n showRowBorders !== false && styles.rowBorder,\n isClickable && (clickableRowClassName ?? styles.rowClickable),\n row.getIsSelected() && (selectedRowClassName ?? styles.rowSelected),\n className\n )}\n onClick={isClickable ? handleClick : undefined}\n tabIndex={isClickable ? 0 : undefined}\n onKeyDown={isClickable ? handleKeyDown : undefined}\n >\n {row.getVisibleCells().map((cell) => {\n const overflow = getCellOverflow(cell, tableCellOverflow)\n const align = getCellAlign(cell)\n const isPinned = cell.column.getIsPinned()\n const pinnedOffset = isPinned\n ? getPinnedColumnOffset(cell.column, table)\n : undefined\n const isLastLeft = isLastLeftPinnedColumn(cell.column, table)\n const isFirstRight = isFirstRightPinnedColumn(cell.column, table)\n\n return (\n <TableCell\n key={cell.id}\n data-slot=\"data-table-cell\"\n {...{ [SLOT_ATTR]: \"data-table-cell\" }}\n data-fs-element=\"DataTable-Cell\"\n data-pinned={isPinned || undefined}\n align={align}\n style={{\n width:\n enableColumnResizing || isPinned\n ? cell.column.getSize()\n : undefined,\n left: isPinned === \"left\" ? `${pinnedOffset}px` : undefined,\n right: isPinned === \"right\" ? `${pinnedOffset}px` : undefined,\n }}\n className={mergeClasses(\n overflow === \"truncate\" && styles.cellTruncate,\n overflow === \"wrap\" && styles.cellWrap,\n isLastLeft && styles.shadowLeft,\n isFirstRight && styles.shadowRight\n )}\n >\n {flexRender(cell.column.columnDef.cell, cell.getContext())}\n </TableCell>\n )\n })}\n {/* Spacer cell - matches header spacer column */}\n {spacerWidth > 0 && (\n <TableCell\n data-spacer\n aria-hidden=\"true\"\n style={{ width: spacerWidth, padding: 0 }}\n />\n )}\n </TableRow>\n )\n}\n\nexport const DataTableRow = React.forwardRef(DataTableRowInner) as <TData>(\n props: DataTableRowProps<TData> & {\n ref?: React.Ref<HTMLTableRowElement>\n }\n) => React.ReactElement | null\n"],"names":["getCellOverflow","cell","tableDefault","columnMeta","getCellAlign","INTERACTIVE_SELECTORS","SLOT_ATTR","useStyles","makeVoltStyles","tokens.accentA3","tokens.grayA6","shorthands","DataTableRowInner","row","style","className","ref","styles","table","onRowClick","clickableRowClassName","selectedRowClassName","tableCellOverflow","showRowBorders","disableColumnResizing","useDataTable","contentContext","useDataTableContent","spacerWidth","enableColumnResizing","isClickable","handleClick","event","target","selector","handleKeyDown","jsxs","TableRow","mergeClasses","overflow","align","isPinned","pinnedOffset","getPinnedColumnOffset","isLastLeft","isLastLeftPinnedColumn","isFirstRight","isFirstRightPinnedColumn","jsx","TableCell","DataTableRow","React"],"mappings":";;;;;;;;;;;;AAuBA,SAASA,EACPC,GACAC,GACuB;AACvB,QAAMC,IAAaF,EAAK,OAAO,UAAU;AAGzC,UAAOE,KAAA,gBAAAA,EAAY,iBAAgBD;AACrC;AAKA,SAASE,EACPH,GACuB;AACvB,QAAME,IAAaF,EAAK,OAAO,UAAU;AAGzC,SAAOE,KAAA,gBAAAA,EAAY;AACrB;AAGA,MAAME,IAAwB;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,IAAIC,CAAS;AACf,GAEMC,IAAYC,EAAe;AAAA,EAC/B,cAAc;AAAA,IACZ,QAAQ;AAAA,IACR,UAAU;AAAA,MACR,iBAAiBC;AAAAA,IAAO;AAAA,EAC1B;AAAA,EAEF,aAAa;AAAA,IACX,iBAAiBA;AAAAA,EAAO;AAAA,EAE1B,WAAW;AAAA,IACT,WAAW,oBAAoBC,CAAa;AAAA,IAC5C,gBAAgB;AAAA,MACd,WAAW;AAAA,IAAA;AAAA,EACb;AAAA,EAEF,cAAc;AAAA,IACZ,UAAU;AAAA,IACV,GAAGC,EAAW,SAAS,QAAQ;AAAA,IAC/B,cAAc;AAAA,IACd,YAAY;AAAA,EAAA;AAAA,EAEd,UAAU;AAAA,IACR,UAAU;AAAA,IACV,GAAGA,EAAW,SAAS,QAAQ;AAAA,IAC/B,cAAc;AAAA,IACd,WAAW;AAAA,EAAA;AAAA,EAEb,YAAY;AAAA,IACV,WAAW;AAAA,EAAA;AAAA,EAEb,aAAa;AAAA,IACX,WAAW;AAAA,EAAA;AAEf,CAAC;AAeD,SAASC,EACP,EAAE,KAAAC,GAAK,OAAAC,GAAO,WAAAC,EAAA,GACdC,GACA;AACA,QAAMC,IAASV,EAAA,GACT;AAAA,IACJ,OAAAW;AAAA,IACA,YAAAC;AAAA,IACA,uBAAAC;AAAA,IACA,sBAAAC;AAAA,IACA,cAAcC,IAAoB;AAAA,IAClC,gBAAAC;AAAA,IACA,uBAAAC;AAAA,EAAA,IACEC,EAAA,GACEC,IAAiBC,EAAA,GACjBC,KAAcF,KAAA,gBAAAA,EAAgB,gBAAe,GAE7CG,IAAuB,CAACL,GACxBM,IAAc,EAAQX,GAEtBY,IAAc,CAACC,MAA2C;AAC9D,QAAI,CAACb,EAAY;AAGjB,UAAMc,IAASD,EAAM;AAKrB,IAJ6B3B,EAAsB;AAAA,MAAK,CAAC6B,MACvDD,EAAO,QAAQC,CAAQ;AAAA,IAAA,KAOzBf,EAAWN,GAAKmB,CAAK;AAAA,EACvB,GAEMG,IAAgB,CAACH,MAA8C;AACnE,QAAKb,MAEDa,EAAM,QAAQ,WAAWA,EAAM,QAAQ,MAAK;AAE9C,YAAMC,IAASD,EAAM;AAKrB,UAJ6B3B,EAAsB;AAAA,QAAK,CAAC6B,MACvDD,EAAO,QAAQC,CAAQ;AAAA,MAAA;AAIvB;AAGF,MAAAF,EAAM,eAAA,GACNb,EAAWN,GAAKmB,CAAmD;AAAA,IACrE;AAAA,EACF;AAEA,SACE,gBAAAI;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,KAAArB;AAAA,MACA,aAAU;AAAA,MACJ,CAACV,CAAS,GAAG;AAAA,MACnB,mBAAgB;AAAA,MAChB,cAAYO,EAAI,cAAA,IAAkB,aAAa;AAAA,MAC/C,kBAAgBiB,IAAc,SAAS;AAAA,MACvC,OAAAhB;AAAA,MACA,WAAWwB;AAAAA,QACTf,MAAmB,MAASN,EAAO;AAAA,QACnCa,MAAgBV,KAAyBH,EAAO;AAAA,QAChDJ,EAAI,cAAA,MAAoBQ,KAAwBJ,EAAO;AAAA,QACvDF;AAAA,MAAA;AAAA,MAEF,SAASe,IAAcC,IAAc;AAAA,MACrC,UAAUD,IAAc,IAAI;AAAA,MAC5B,WAAWA,IAAcK,IAAgB;AAAA,MAExC,UAAA;AAAA,QAAAtB,EAAI,gBAAA,EAAkB,IAAI,CAACZ,MAAS;AACnC,gBAAMsC,IAAWvC,EAAgBC,GAAMqB,CAAiB,GAClDkB,IAAQpC,EAAaH,CAAI,GACzBwC,IAAWxC,EAAK,OAAO,YAAA,GACvByC,IAAeD,IACjBE,EAAsB1C,EAAK,QAAQiB,CAAK,IACxC,QACE0B,IAAaC,EAAuB5C,EAAK,QAAQiB,CAAK,GACtD4B,IAAeC,EAAyB9C,EAAK,QAAQiB,CAAK;AAEhE,iBACE,gBAAA8B;AAAA,YAACC;AAAA,YAAA;AAAA,cAEC,aAAU;AAAA,cACJ,CAAC3C,CAAS,GAAG;AAAA,cACnB,mBAAgB;AAAA,cAChB,eAAamC,KAAY;AAAA,cACzB,OAAAD;AAAA,cACA,OAAO;AAAA,gBACL,OACEX,KAAwBY,IACpBxC,EAAK,OAAO,YACZ;AAAA,gBACN,MAAMwC,MAAa,SAAS,GAAGC,CAAY,OAAO;AAAA,gBAClD,OAAOD,MAAa,UAAU,GAAGC,CAAY,OAAO;AAAA,cAAA;AAAA,cAEtD,WAAWJ;AAAAA,gBACTC,MAAa,cAActB,EAAO;AAAA,gBAClCsB,MAAa,UAAUtB,EAAO;AAAA,gBAC9B2B,KAAc3B,EAAO;AAAA,gBACrB6B,KAAgB7B,EAAO;AAAA,cAAA;AAAA,cAGxB,YAAWhB,EAAK,OAAO,UAAU,MAAMA,EAAK,YAAY;AAAA,YAAA;AAAA,YArBpDA,EAAK;AAAA,UAAA;AAAA,QAwBhB,CAAC;AAAA,QAEA2B,IAAc,KACb,gBAAAoB;AAAA,UAACC;AAAA,UAAA;AAAA,YACC,eAAW;AAAA,YACX,eAAY;AAAA,YACZ,OAAO,EAAE,OAAOrB,GAAa,SAAS,EAAA;AAAA,UAAE;AAAA,QAAA;AAAA,MAC1C;AAAA,IAAA;AAAA,EAAA;AAIR;AAEO,MAAMsB,KAAeC,EAAM,WAAWvC,CAAiB;"}
1
+ {"version":3,"file":"data-table-row.js","sources":["../../../src/components/data-table/data-table-row.tsx"],"sourcesContent":["import * as React from \"react\"\nimport type { CSSProperties, MouseEvent, KeyboardEvent } from \"react\"\nimport type { Row, Cell } from \"@tanstack/react-table\"\nimport { flexRender } from \"@tanstack/react-table\"\nimport { mergeClasses, shorthands } from \"@epilot/volt-ui-runtime\"\n\nimport { SLOT_ATTR } from \"../../renderer/contract\"\nimport { makeVoltStyles } from \"../../styles/make-styles\"\nimport * as tokens from \"../../tokens\"\nimport { TableRow, TableCell } from \"../table/table\"\nimport { useDataTable, useDataTableContent } from \"./hooks\"\nimport type { DataTableCellOverflow } from \"./data-table-context\"\nimport {\n getPinnedColumnOffset,\n isLastLeftPinnedColumn,\n isFirstRightPinnedColumn,\n} from \"./data-table-pinning-utils\"\n\ntype CellAlign = \"left\" | \"center\" | \"right\"\n\n/**\n * Gets the cell overflow mode, checking column meta first, then falling back to table default.\n */\nfunction getCellOverflow<TData>(\n cell: Cell<TData, unknown>,\n tableDefault: DataTableCellOverflow\n): DataTableCellOverflow {\n const columnMeta = cell.column.columnDef.meta as\n | { cellOverflow?: DataTableCellOverflow }\n | undefined\n return columnMeta?.cellOverflow ?? tableDefault\n}\n\n/**\n * Gets the cell alignment from column meta.\n */\nfunction getCellAlign<TData>(\n cell: Cell<TData, unknown>\n): CellAlign | undefined {\n const columnMeta = cell.column.columnDef.meta as\n | { align?: CellAlign }\n | undefined\n return columnMeta?.align\n}\n\n// Interactive element selectors that should NOT trigger row click\nconst INTERACTIVE_SELECTORS = [\n \"button\",\n \"a\",\n \"input\",\n \"select\",\n \"textarea\",\n '[role=\"button\"]',\n '[role=\"checkbox\"]',\n '[role=\"link\"]',\n '[role=\"menuitem\"]',\n '[role=\"menuitemcheckbox\"]',\n '[role=\"menuitemradio\"]',\n '[role=\"option\"]',\n '[role=\"radio\"]',\n '[role=\"slider\"]',\n '[role=\"spinbutton\"]',\n '[role=\"switch\"]',\n '[role=\"tab\"]',\n \"[data-radix-collection-item]\",\n `[${SLOT_ATTR}=\"checkbox\"]`,\n]\n\nconst useStyles = makeVoltStyles({\n rowClickable: {\n cursor: \"pointer\",\n \":hover\": {\n backgroundColor: tokens.accentA3,\n },\n },\n rowSelected: {\n backgroundColor: tokens.accentA3,\n },\n rowBorder: {\n boxShadow: `inset 0 -1px 0 0 ${tokens.grayA6}`,\n \"&:last-child\": {\n boxShadow: \"none\",\n },\n },\n cellTruncate: {\n maxWidth: 0,\n ...shorthands.overflow(\"hidden\"),\n textOverflow: \"ellipsis\",\n whiteSpace: \"nowrap\",\n },\n cellWrap: {\n maxWidth: 0,\n ...shorthands.overflow(\"hidden\"),\n overflowWrap: \"break-word\",\n wordBreak: \"break-word\",\n },\n shadowLeft: {\n boxShadow: \"2px 0 5px -2px rgba(0,0,0,0.1)\",\n },\n shadowRight: {\n boxShadow: \"-2px 0 5px -2px rgba(0,0,0,0.1)\",\n },\n})\n\nexport type DataTableRowProps<TData> = {\n /** The row instance from TanStack Table */\n row: Row<TData>\n /** Optional style (used for virtualized row heights) */\n style?: CSSProperties\n /** Additional class name */\n className?: string\n}\n\n/**\n * Renders a single table row with its cells.\n * Supports clickable rows when onRowClick is provided via DataTable context.\n */\nfunction DataTableRowInner<TData>(\n { row, style, className }: DataTableRowProps<TData>,\n ref: React.ForwardedRef<HTMLTableRowElement>\n) {\n const styles = useStyles()\n const {\n table,\n onRowClick,\n clickableRowClassName,\n selectedRowClassName,\n cellOverflow: tableCellOverflow = \"truncate\",\n showRowBorders,\n disableColumnResizing,\n } = useDataTable<TData>()\n const contentContext = useDataTableContent()\n const spacerWidth = contentContext?.spacerWidth ?? 0\n\n const enableColumnResizing = !disableColumnResizing\n const isClickable = Boolean(onRowClick)\n\n const handleClick = (event: MouseEvent<HTMLTableRowElement>) => {\n if (!onRowClick) return\n\n // Check if click originated from an interactive element\n const target = event.target as HTMLElement\n const isInteractiveElement = INTERACTIVE_SELECTORS.some((selector) =>\n target.closest(selector)\n )\n\n if (isInteractiveElement) {\n return // Don't trigger row click for interactive elements\n }\n\n onRowClick(row, event)\n }\n\n const handleKeyDown = (event: KeyboardEvent<HTMLTableRowElement>) => {\n if (!onRowClick) return\n\n if (event.key === \"Enter\" || event.key === \" \") {\n // Check if key event originated from an interactive element\n const target = event.target as HTMLElement\n const isInteractiveElement = INTERACTIVE_SELECTORS.some((selector) =>\n target.closest(selector)\n )\n\n if (isInteractiveElement) {\n return // Let the interactive element handle the event\n }\n\n event.preventDefault()\n onRowClick(row, event as unknown as MouseEvent<HTMLTableRowElement>)\n }\n }\n\n return (\n <TableRow\n ref={ref}\n data-slot=\"data-table-row\"\n {...{ [SLOT_ATTR]: \"data-table-row\" }}\n data-fs-element=\"DataTable-Row\"\n data-state={row.getIsSelected() ? \"selected\" : undefined}\n data-clickable={isClickable ? \"true\" : undefined}\n style={style}\n className={mergeClasses(\n showRowBorders !== false && styles.rowBorder,\n isClickable && (clickableRowClassName ?? styles.rowClickable),\n row.getIsSelected() && (selectedRowClassName ?? styles.rowSelected),\n className\n )}\n onClick={isClickable ? handleClick : undefined}\n tabIndex={isClickable ? 0 : undefined}\n onKeyDown={isClickable ? handleKeyDown : undefined}\n >\n {row.getVisibleCells().map((cell) => {\n const overflow = getCellOverflow(cell, tableCellOverflow)\n const align = getCellAlign(cell)\n const isPinned = cell.column.getIsPinned()\n const pinnedOffset = isPinned\n ? getPinnedColumnOffset(cell.column, table)\n : undefined\n const isLastLeft = isLastLeftPinnedColumn(cell.column, table)\n const isFirstRight = isFirstRightPinnedColumn(cell.column, table)\n\n return (\n <TableCell\n key={cell.id}\n data-slot=\"data-table-cell\"\n {...{ [SLOT_ATTR]: \"data-table-cell\" }}\n data-fs-element=\"DataTable-Cell\"\n data-pinned={isPinned || undefined}\n align={align}\n style={{\n width:\n enableColumnResizing || isPinned\n ? cell.column.getSize()\n : undefined,\n left: isPinned === \"left\" ? `${pinnedOffset}px` : undefined,\n right: isPinned === \"right\" ? `${pinnedOffset}px` : undefined,\n }}\n className={mergeClasses(\n overflow === \"truncate\" && styles.cellTruncate,\n overflow === \"wrap\" && styles.cellWrap,\n isLastLeft && styles.shadowLeft,\n isFirstRight && styles.shadowRight\n )}\n >\n {flexRender(cell.column.columnDef.cell, cell.getContext())}\n </TableCell>\n )\n })}\n {/* Spacer cell - matches header spacer column */}\n {spacerWidth > 0 && (\n <TableCell\n data-spacer\n aria-hidden=\"true\"\n style={{ width: spacerWidth, padding: 0 }}\n />\n )}\n </TableRow>\n )\n}\n\nexport const DataTableRow = React.forwardRef(DataTableRowInner) as <TData>(\n props: DataTableRowProps<TData> & {\n ref?: React.Ref<HTMLTableRowElement>\n }\n) => React.ReactElement | null\n"],"names":["getCellOverflow","cell","tableDefault","columnMeta","getCellAlign","INTERACTIVE_SELECTORS","SLOT_ATTR","useStyles","makeVoltStyles","tokens.accentA3","tokens.grayA6","shorthands","DataTableRowInner","row","style","className","ref","styles","table","onRowClick","clickableRowClassName","selectedRowClassName","tableCellOverflow","showRowBorders","disableColumnResizing","useDataTable","contentContext","useDataTableContent","spacerWidth","enableColumnResizing","isClickable","handleClick","event","target","selector","handleKeyDown","jsxDEV","TableRow","mergeClasses","overflow","align","isPinned","pinnedOffset","getPinnedColumnOffset","isLastLeft","isLastLeftPinnedColumn","isFirstRight","isFirstRightPinnedColumn","TableCell","DataTableRow","React"],"mappings":";;;;;;;;;;;;AAuBA,SAASA,EACPC,GACAC,GACuB;AACvB,QAAMC,IAAaF,EAAK,OAAO,UAAU;AAGzC,UAAOE,KAAA,gBAAAA,EAAY,iBAAgBD;AACrC;AAKA,SAASE,EACPH,GACuB;AACvB,QAAME,IAAaF,EAAK,OAAO,UAAU;AAGzC,SAAOE,KAAA,gBAAAA,EAAY;AACrB;AAGA,MAAME,IAAwB;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,IAAIC,CAAS;AACf,GAEMC,IAAYC,EAAe;AAAA,EAC/B,cAAc;AAAA,IACZ,QAAQ;AAAA,IACR,UAAU;AAAA,MACR,iBAAiBC;AAAAA,IAAO;AAAA,EAC1B;AAAA,EAEF,aAAa;AAAA,IACX,iBAAiBA;AAAAA,EAAO;AAAA,EAE1B,WAAW;AAAA,IACT,WAAW,oBAAoBC,CAAa;AAAA,IAC5C,gBAAgB;AAAA,MACd,WAAW;AAAA,IAAA;AAAA,EACb;AAAA,EAEF,cAAc;AAAA,IACZ,UAAU;AAAA,IACV,GAAGC,EAAW,SAAS,QAAQ;AAAA,IAC/B,cAAc;AAAA,IACd,YAAY;AAAA,EAAA;AAAA,EAEd,UAAU;AAAA,IACR,UAAU;AAAA,IACV,GAAGA,EAAW,SAAS,QAAQ;AAAA,IAC/B,cAAc;AAAA,IACd,WAAW;AAAA,EAAA;AAAA,EAEb,YAAY;AAAA,IACV,WAAW;AAAA,EAAA;AAAA,EAEb,aAAa;AAAA,IACX,WAAW;AAAA,EAAA;AAEf,CAAC;AAeD,SAASC,EACP,EAAE,KAAAC,GAAK,OAAAC,GAAO,WAAAC,EAAA,GACdC,GACA;AACA,QAAMC,IAASV,EAAA,GACT;AAAA,IACJ,OAAAW;AAAA,IACA,YAAAC;AAAA,IACA,uBAAAC;AAAA,IACA,sBAAAC;AAAA,IACA,cAAcC,IAAoB;AAAA,IAClC,gBAAAC;AAAA,IACA,uBAAAC;AAAA,EAAA,IACEC,EAAA,GACEC,IAAiBC,EAAA,GACjBC,KAAcF,KAAA,gBAAAA,EAAgB,gBAAe,GAE7CG,IAAuB,CAACL,GACxBM,IAAc,EAAQX,GAEtBY,IAAc,CAACC,MAA2C;AAC9D,QAAI,CAACb,EAAY;AAGjB,UAAMc,IAASD,EAAM;AAKrB,IAJ6B3B,EAAsB;AAAA,MAAK,CAAC6B,MACvDD,EAAO,QAAQC,CAAQ;AAAA,IAAA,KAOzBf,EAAWN,GAAKmB,CAAK;AAAA,EACvB,GAEMG,IAAgB,CAACH,MAA8C;AACnE,QAAKb,MAEDa,EAAM,QAAQ,WAAWA,EAAM,QAAQ,MAAK;AAE9C,YAAMC,IAASD,EAAM;AAKrB,UAJ6B3B,EAAsB;AAAA,QAAK,CAAC6B,MACvDD,EAAO,QAAQC,CAAQ;AAAA,MAAA;AAIvB;AAGF,MAAAF,EAAM,eAAA,GACNb,EAAWN,GAAKmB,CAAmD;AAAA,IACrE;AAAA,EACF;AAEA,SACEI,gBAAAA,EAAAA;AAAAA,IAACC;AAAA,IAAA;AAAA,MACC,KAAArB;AAAA,MACA,aAAU;AAAA,MACJ,CAACV,CAAS,GAAG;AAAA,MACnB,mBAAgB;AAAA,MAChB,cAAYO,EAAI,cAAA,IAAkB,aAAa;AAAA,MAC/C,kBAAgBiB,IAAc,SAAS;AAAA,MACvC,OAAAhB;AAAA,MACA,WAAWwB;AAAAA,QACTf,MAAmB,MAASN,EAAO;AAAA,QACnCa,MAAgBV,KAAyBH,EAAO;AAAA,QAChDJ,EAAI,cAAA,MAAoBQ,KAAwBJ,EAAO;AAAA,QACvDF;AAAA,MAAA;AAAA,MAEF,SAASe,IAAcC,IAAc;AAAA,MACrC,UAAUD,IAAc,IAAI;AAAA,MAC5B,WAAWA,IAAcK,IAAgB;AAAA,MAExC,UAAA;AAAA,QAAAtB,EAAI,gBAAA,EAAkB,IAAI,CAACZ,MAAS;AACnC,gBAAMsC,IAAWvC,EAAgBC,GAAMqB,CAAiB,GAClDkB,IAAQpC,EAAaH,CAAI,GACzBwC,IAAWxC,EAAK,OAAO,YAAA,GACvByC,IAAeD,IACjBE,EAAsB1C,EAAK,QAAQiB,CAAK,IACxC,QACE0B,IAAaC,EAAuB5C,EAAK,QAAQiB,CAAK,GACtD4B,IAAeC,EAAyB9C,EAAK,QAAQiB,CAAK;AAEhE,iBACEkB,gBAAAA,EAAAA;AAAAA,YAACY;AAAA,YAAA;AAAA,cAEC,aAAU;AAAA,cACJ,CAAC1C,CAAS,GAAG;AAAA,cACnB,mBAAgB;AAAA,cAChB,eAAamC,KAAY;AAAA,cACzB,OAAAD;AAAA,cACA,OAAO;AAAA,gBACL,OACEX,KAAwBY,IACpBxC,EAAK,OAAO,YACZ;AAAA,gBACN,MAAMwC,MAAa,SAAS,GAAGC,CAAY,OAAO;AAAA,gBAClD,OAAOD,MAAa,UAAU,GAAGC,CAAY,OAAO;AAAA,cAAA;AAAA,cAEtD,WAAWJ;AAAAA,gBACTC,MAAa,cAActB,EAAO;AAAA,gBAClCsB,MAAa,UAAUtB,EAAO;AAAA,gBAC9B2B,KAAc3B,EAAO;AAAA,gBACrB6B,KAAgB7B,EAAO;AAAA,cAAA;AAAA,cAGxB,YAAWhB,EAAK,OAAO,UAAU,MAAMA,EAAK,YAAY;AAAA,YAAA;AAAA,YArBpDA,EAAK;AAAA,YADZ;AAAA,YAAA;AAAA,cAAA,UAAA;AAAA,cAAA,YAAA;AAAA,cAAA,cAAA;AAAA,YAAA;AAAA,YAAA;AAAA,UAAA;AAAA,QAyBJ,CAAC;AAAA,QAEA2B,IAAc,KACbQ,gBAAAA,EAAAA;AAAAA,UAACY;AAAA,UAAA;AAAA,YACC,eAAW;AAAA,YACX,eAAY;AAAA,YACZ,OAAO,EAAE,OAAOpB,GAAa,SAAS,EAAA;AAAA,UAAE;AAAA,UAH1C;AAAA,UAAA;AAAA,UAAA;AAAA,YAAA,UAAA;AAAA,YAAA,YAAA;AAAA,YAAA,cAAA;AAAA,UAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MAIA;AAAA,IAAA;AAAA,IA7DJ;AAAA,IAAA;AAAA,IAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA;AAAA,IAAA;AAAA,EAAA;AAiEJ;AAEO,MAAMqB,KAAeC,EAAM,WAAWtC,CAAiB;"}
@@ -1,35 +1,43 @@
1
- import { jsx as m } from "react/jsx-runtime";
2
- import * as n from "react";
1
+ import { j as i } from "../../vendor/react/jsx-dev-runtime.js";
2
+ import * as m from "react";
3
3
  import { shorthands as a } from "../../packages/volt-runtime/dist/vendor/@griffel/core/src/index.js";
4
- import { SLOT_ATTR as i } from "../../packages/volt-runtime/dist/renderer/contract.js";
4
+ import { SLOT_ATTR as n } from "../../packages/volt-runtime/dist/renderer/contract.js";
5
5
  import { mergeClasses as p } from "../../packages/volt-runtime/dist/vendor/@griffel/core/src/mergeClasses.js";
6
6
  import { makeVoltStyles as f } from "../../styles/make-styles.js";
7
- import { spacingGroup1 as t, spacingElement1 as d } from "../../tokens/index.js";
8
- const b = f({
7
+ import { spacingGroup1 as e, spacingElement1 as b } from "../../tokens/index.js";
8
+ const c = f({
9
9
  root: {
10
10
  display: "flex",
11
11
  alignItems: "center",
12
12
  justifyContent: "space-between",
13
- gap: t,
14
- ...a.paddingInline(d),
15
- ...a.paddingBlock(t)
13
+ gap: e,
14
+ ...a.paddingInline(b),
15
+ ...a.paddingBlock(e)
16
16
  }
17
- }), R = n.forwardRef(function({ className: o, children: e, ...r }, s) {
18
- const l = b();
19
- return /* @__PURE__ */ m(
17
+ }), j = m.forwardRef(function({ className: t, children: o, ...r }, s) {
18
+ const l = c();
19
+ return /* @__PURE__ */ i.jsxDEV(
20
20
  "div",
21
21
  {
22
22
  ref: s,
23
23
  "data-slot": "data-table-toolbar",
24
- [i]: "data-table-toolbar",
24
+ [n]: "data-table-toolbar",
25
25
  "data-fs-element": "DataTable-Toolbar",
26
- className: p(l.root, o),
26
+ className: p(l.root, t),
27
27
  ...r,
28
- children: e
29
- }
28
+ children: o
29
+ },
30
+ void 0,
31
+ !1,
32
+ {
33
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-toolbar.tsx",
34
+ lineNumber: 32,
35
+ columnNumber: 5
36
+ },
37
+ this
30
38
  );
31
39
  });
32
40
  export {
33
- R as DataTableToolbar
41
+ j as DataTableToolbar
34
42
  };
35
43
  //# sourceMappingURL=data-table-toolbar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"data-table-toolbar.js","sources":["../../../src/components/data-table/data-table-toolbar.tsx"],"sourcesContent":["import * as React from \"react\"\nimport { mergeClasses, shorthands } from \"@epilot/volt-ui-runtime\"\n\nimport { SLOT_ATTR } from \"../../renderer/contract\"\nimport { makeVoltStyles } from \"../../styles/make-styles\"\nimport * as tokens from \"../../tokens\"\n\nconst useStyles = makeVoltStyles({\n root: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n gap: tokens.spacingGroup1,\n ...shorthands.paddingInline(tokens.spacingElement1),\n ...shorthands.paddingBlock(tokens.spacingGroup1),\n },\n})\n\nexport type DataTableToolbarProps = React.ComponentProps<\"div\">\n\n/**\n * A toolbar wrapper for DataTable that contains filters, search, and actions.\n * Place above the table for consistent layout.\n */\nexport const DataTableToolbar = React.forwardRef<\n HTMLDivElement,\n DataTableToolbarProps\n>(function DataTableToolbar({ className, children, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <div\n ref={ref}\n data-slot=\"data-table-toolbar\"\n {...{ [SLOT_ATTR]: \"data-table-toolbar\" }}\n data-fs-element=\"DataTable-Toolbar\"\n className={mergeClasses(styles.root, className)}\n {...props}\n >\n {children}\n </div>\n )\n})\n"],"names":["useStyles","makeVoltStyles","tokens.spacingGroup1","shorthands","tokens.spacingElement1","DataTableToolbar","React","className","children","props","ref","styles","jsx","SLOT_ATTR","mergeClasses"],"mappings":";;;;;;;AAOA,MAAMA,IAAYC,EAAe;AAAA,EAC/B,MAAM;AAAA,IACJ,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,gBAAgB;AAAA,IAChB,KAAKC;AAAAA,IACL,GAAGC,EAAW,cAAcC,CAAsB;AAAA,IAClD,GAAGD,EAAW,aAAaD,CAAoB;AAAA,EAAA;AAEnD,CAAC,GAQYG,IAAmBC,EAAM,WAGpC,SAA0B,EAAE,WAAAC,GAAW,UAAAC,GAAU,GAAGC,EAAA,GAASC,GAAK;AAClE,QAAMC,IAASX,EAAA;AAEf,SACE,gBAAAY;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAF;AAAA,MACA,aAAU;AAAA,MACJ,CAACG,CAAS,GAAG;AAAA,MACnB,mBAAgB;AAAA,MAChB,WAAWC,EAAaH,EAAO,MAAMJ,CAAS;AAAA,MAC7C,GAAGE;AAAA,MAEH,UAAAD;AAAA,IAAA;AAAA,EAAA;AAGP,CAAC;"}
1
+ {"version":3,"file":"data-table-toolbar.js","sources":["../../../src/components/data-table/data-table-toolbar.tsx"],"sourcesContent":["import * as React from \"react\"\nimport { mergeClasses, shorthands } from \"@epilot/volt-ui-runtime\"\n\nimport { SLOT_ATTR } from \"../../renderer/contract\"\nimport { makeVoltStyles } from \"../../styles/make-styles\"\nimport * as tokens from \"../../tokens\"\n\nconst useStyles = makeVoltStyles({\n root: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n gap: tokens.spacingGroup1,\n ...shorthands.paddingInline(tokens.spacingElement1),\n ...shorthands.paddingBlock(tokens.spacingGroup1),\n },\n})\n\nexport type DataTableToolbarProps = React.ComponentProps<\"div\">\n\n/**\n * A toolbar wrapper for DataTable that contains filters, search, and actions.\n * Place above the table for consistent layout.\n */\nexport const DataTableToolbar = React.forwardRef<\n HTMLDivElement,\n DataTableToolbarProps\n>(function DataTableToolbar({ className, children, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <div\n ref={ref}\n data-slot=\"data-table-toolbar\"\n {...{ [SLOT_ATTR]: \"data-table-toolbar\" }}\n data-fs-element=\"DataTable-Toolbar\"\n className={mergeClasses(styles.root, className)}\n {...props}\n >\n {children}\n </div>\n )\n})\n"],"names":["useStyles","makeVoltStyles","tokens.spacingGroup1","shorthands","tokens.spacingElement1","DataTableToolbar","React","className","children","props","ref","styles","jsxDEV","SLOT_ATTR","mergeClasses"],"mappings":";;;;;;;AAOA,MAAMA,IAAYC,EAAe;AAAA,EAC/B,MAAM;AAAA,IACJ,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,gBAAgB;AAAA,IAChB,KAAKC;AAAAA,IACL,GAAGC,EAAW,cAAcC,CAAsB;AAAA,IAClD,GAAGD,EAAW,aAAaD,CAAoB;AAAA,EAAA;AAEnD,CAAC,GAQYG,IAAmBC,EAAM,WAGpC,SAA0B,EAAE,WAAAC,GAAW,UAAAC,GAAU,GAAGC,EAAA,GAASC,GAAK;AAClE,QAAMC,IAASX,EAAA;AAEf,SACEY,gBAAAA,EAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAF;AAAA,MACA,aAAU;AAAA,MACJ,CAACG,CAAS,GAAG;AAAA,MACnB,mBAAgB;AAAA,MAChB,WAAWC,EAAaH,EAAO,MAAMJ,CAAS;AAAA,MAC7C,GAAGE;AAAA,MAEH,UAAAD;AAAA,IAAA;AAAA,IARH;AAAA,IAAA;AAAA,IAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA;AAAA,IAAA;AAAA,EAAA;AAWJ,CAAC;"}