@cdx-ui/data-grid 0.0.1-beta.185

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 (54) hide show
  1. package/README.md +11 -0
  2. package/lib/commonjs/DataGrid.js +478 -0
  3. package/lib/commonjs/DataGrid.js.map +1 -0
  4. package/lib/commonjs/adapter/columns.js +38 -0
  5. package/lib/commonjs/adapter/columns.js.map +1 -0
  6. package/lib/commonjs/adapter/selectColumn.js +18 -0
  7. package/lib/commonjs/adapter/selectColumn.js.map +1 -0
  8. package/lib/commonjs/index.js +13 -0
  9. package/lib/commonjs/index.js.map +1 -0
  10. package/lib/commonjs/package.json +1 -0
  11. package/lib/commonjs/styles.js +61 -0
  12. package/lib/commonjs/styles.js.map +1 -0
  13. package/lib/commonjs/types.js +17 -0
  14. package/lib/commonjs/types.js.map +1 -0
  15. package/lib/commonjs/useDataGridTable.js +253 -0
  16. package/lib/commonjs/useDataGridTable.js.map +1 -0
  17. package/lib/module/DataGrid.js +474 -0
  18. package/lib/module/DataGrid.js.map +1 -0
  19. package/lib/module/adapter/columns.js +32 -0
  20. package/lib/module/adapter/columns.js.map +1 -0
  21. package/lib/module/adapter/selectColumn.js +14 -0
  22. package/lib/module/adapter/selectColumn.js.map +1 -0
  23. package/lib/module/index.js +4 -0
  24. package/lib/module/index.js.map +1 -0
  25. package/lib/module/styles.js +57 -0
  26. package/lib/module/styles.js.map +1 -0
  27. package/lib/module/types.js +13 -0
  28. package/lib/module/types.js.map +1 -0
  29. package/lib/module/useDataGridTable.js +240 -0
  30. package/lib/module/useDataGridTable.js.map +1 -0
  31. package/lib/typescript/DataGrid.d.ts +7 -0
  32. package/lib/typescript/DataGrid.d.ts.map +1 -0
  33. package/lib/typescript/adapter/columns.d.ts +17 -0
  34. package/lib/typescript/adapter/columns.d.ts.map +1 -0
  35. package/lib/typescript/adapter/selectColumn.d.ts +9 -0
  36. package/lib/typescript/adapter/selectColumn.d.ts.map +1 -0
  37. package/lib/typescript/index.d.ts +3 -0
  38. package/lib/typescript/index.d.ts.map +1 -0
  39. package/lib/typescript/styles.d.ts +22 -0
  40. package/lib/typescript/styles.d.ts.map +1 -0
  41. package/lib/typescript/types.d.ts +112 -0
  42. package/lib/typescript/types.d.ts.map +1 -0
  43. package/lib/typescript/useDataGridTable.d.ts +54 -0
  44. package/lib/typescript/useDataGridTable.d.ts.map +1 -0
  45. package/package.json +87 -0
  46. package/src/DataGrid.tsx +622 -0
  47. package/src/adapter/columns.test.ts +47 -0
  48. package/src/adapter/columns.ts +32 -0
  49. package/src/adapter/selectColumn.ts +12 -0
  50. package/src/index.ts +17 -0
  51. package/src/styles.ts +104 -0
  52. package/src/types.ts +133 -0
  53. package/src/useDataGridTable.test.ts +125 -0
  54. package/src/useDataGridTable.ts +295 -0
package/README.md ADDED
@@ -0,0 +1,11 @@
1
+ # @cdx-ui/data-grid
2
+
3
+ Web DataGrid with a MUI Community–shaped `rows` / `columns` API. TanStack Table is an internal engine — do not import it from consumer code.
4
+
5
+ ```tsx
6
+ import { DataGrid, type GridColDef } from '@cdx-ui/data-grid';
7
+ ```
8
+
9
+ Install alongside `@cdx-ui/components`. DataGrid is web-only.
10
+
11
+ The grid uses a **300px** viewport by default (MUI Data Grid Community). Headers stay visible while rows scroll; pagination stays at the bottom. Override with `className` or `style`.
@@ -0,0 +1,478 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.DataGrid = DataGrid;
7
+ var _react = require("react");
8
+ var _reactNative = require("react-native");
9
+ var _components = require("@cdx-ui/components");
10
+ var _icons = require("@cdx-ui/icons");
11
+ var _primitives = require("@cdx-ui/primitives");
12
+ var _utils = require("@cdx-ui/utils");
13
+ var _columns = require("./adapter/columns");
14
+ var _styles = require("./styles");
15
+ var _types = require("./types");
16
+ var _useDataGridTable = require("./useDataGridTable");
17
+ var _jsxRuntime = require("react/jsx-runtime");
18
+ const MAX_SKELETON_ROW_COUNT = 10;
19
+ const DEFAULT_WEB_COLUMN_WIDTH = 100;
20
+ const SELECT_COLUMN_WIDTH = 56;
21
+ const WEB_TABLE_CONTAINER_STYLE = {
22
+ overflow: 'visible'
23
+ };
24
+ function cellStyle(col, webWidth) {
25
+ if (!col) {
26
+ return undefined;
27
+ }
28
+ const style = {};
29
+ if (_reactNative.Platform.OS === 'web' && webWidth !== undefined) {
30
+ style.width = webWidth;
31
+ } else if (col.width !== undefined) {
32
+ style.width = col.width;
33
+ }
34
+ if (col.minWidth !== undefined) {
35
+ style.minWidth = col.minWidth;
36
+ }
37
+ if (_reactNative.Platform.OS !== 'web' && col.flex !== undefined) {
38
+ style.flex = col.flex;
39
+ }
40
+ return Object.keys(style).length > 0 ? style : undefined;
41
+ }
42
+ function webColumnWidths(columns, checkboxSelection) {
43
+ const totalFlex = columns.reduce((total, column) => total + Math.max(column.flex ?? 0, 0), 0);
44
+ const widths = new Map();
45
+ if (totalFlex === 0) {
46
+ for (const column of columns) {
47
+ if (column.width !== undefined) {
48
+ widths.set(column.field, column.width);
49
+ }
50
+ }
51
+ return widths;
52
+ }
53
+ const fixedWidth = (checkboxSelection ? SELECT_COLUMN_WIDTH : 0) + columns.reduce((total, column) => {
54
+ if ((column.flex ?? 0) > 0) {
55
+ return total;
56
+ }
57
+ return total + Math.max(column.width ?? DEFAULT_WEB_COLUMN_WIDTH, column.minWidth ?? 0);
58
+ }, 0);
59
+ for (const column of columns) {
60
+ if ((column.flex ?? 0) > 0) {
61
+ const share = (column.flex ?? 0) / totalFlex;
62
+ const percentage = share * 100;
63
+ const fixedShare = fixedWidth * share;
64
+ const width = `calc(${percentage.toString()}% - ${fixedShare.toString()}px)`;
65
+ widths.set(column.field, column.minWidth === undefined ? width : `max(${column.minWidth.toString()}px, ${width})`);
66
+ } else {
67
+ widths.set(column.field, Math.max(column.width ?? DEFAULT_WEB_COLUMN_WIDTH, column.minWidth ?? 0));
68
+ }
69
+ }
70
+ return widths;
71
+ }
72
+ function defaultCellContent(value) {
73
+ if (value == null) {
74
+ return '';
75
+ }
76
+ if (typeof value === 'string' || typeof value === 'number') {
77
+ return value;
78
+ }
79
+ try {
80
+ if (typeof value === 'bigint' || typeof value === 'boolean' || typeof value === 'symbol') {
81
+ return String(value);
82
+ }
83
+ const serialized = JSON.stringify(value, null, 2);
84
+ return typeof serialized === 'string' ? serialized : '[Unserializable value]';
85
+ } catch {
86
+ return '[Unserializable value]';
87
+ }
88
+ }
89
+ function DefaultLoadingRows({
90
+ columns,
91
+ checkboxSelection,
92
+ rowCount,
93
+ columnWidths
94
+ }) {
95
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
96
+ children: Array.from({
97
+ length: rowCount
98
+ }, (_, rowIndex) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.Table.Row, {
99
+ className: "pointer-events-none web:hover:bg-surface-primary",
100
+ testID: rowIndex === 0 ? 'data-grid-default-loading-rows' : undefined,
101
+ children: [checkboxSelection ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Table.Cell, {
102
+ align: "center",
103
+ className: (0, _styles.dataGridSelectCellVariants)(),
104
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Skeleton, {
105
+ className: "size-5"
106
+ })
107
+ }) : null, columns.map(column => /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Table.Cell, {
108
+ align: (0, _columns.normalizeGridAlignment)(column.align),
109
+ className: (0, _styles.dataGridCellVariants)(),
110
+ style: cellStyle(column, columnWidths.get(column.field)),
111
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Skeleton, {
112
+ className: "h-4 w-3/5"
113
+ })
114
+ }, column.field))]
115
+ }, rowIndex))
116
+ });
117
+ }
118
+ function paginationRangeLabel(page, pageSize, total) {
119
+ if (total <= 0) {
120
+ return `0\u20130 of 0`;
121
+ }
122
+ const start = page * pageSize + 1;
123
+ const end = Math.min((page + 1) * pageSize, total);
124
+ return `${start.toString()}\u2013${end.toString()} of ${total.toString()}`;
125
+ }
126
+ function withCurrentPageSize(options, pageSize) {
127
+ const exists = options.some(option => typeof option === 'number' ? option === pageSize : option.value === pageSize);
128
+ return exists ? [...options] : [pageSize, ...options];
129
+ }
130
+ function DataGridInner(props) {
131
+ const {
132
+ rows,
133
+ columns,
134
+ getRowId,
135
+ loading = false,
136
+ checkboxSelection = false,
137
+ hideFooter = false,
138
+ hideFooterPagination = false,
139
+ disableColumnSorting = false,
140
+ paginationMode = 'client',
141
+ sortingMode = 'client',
142
+ rowCount,
143
+ showToolbar = false,
144
+ headerFilters = false,
145
+ pageSizeOptions = _types.DEFAULT_PAGE_SIZE_OPTIONS,
146
+ noRowsOverlay,
147
+ loadingOverlay,
148
+ toolbarActions,
149
+ className,
150
+ style,
151
+ label,
152
+ 'aria-label': ariaLabel,
153
+ 'aria-labelledby': ariaLabelledBy
154
+ } = props;
155
+ const [sortModel, setSortModel] = (0, _utils.useControllableState)({
156
+ prop: props.sortModel,
157
+ defaultProp: props.defaultSortModel ?? [],
158
+ onChange: props.onSortModelChange
159
+ });
160
+ const [paginationModel, setPaginationModel] = (0, _utils.useControllableState)({
161
+ prop: props.paginationModel,
162
+ defaultProp: props.defaultPaginationModel ?? _types.DEFAULT_PAGINATION_MODEL,
163
+ onChange: props.onPaginationModelChange
164
+ });
165
+ const [filterModel, setFilterModel] = (0, _utils.useControllableState)({
166
+ prop: props.filterModel,
167
+ defaultProp: props.defaultFilterModel ?? [],
168
+ onChange: props.onFilterModelChange
169
+ });
170
+ const [quickFilter, setQuickFilter] = (0, _utils.useControllableState)({
171
+ prop: props.quickFilter,
172
+ defaultProp: props.defaultQuickFilter ?? '',
173
+ onChange: props.onQuickFilterChange
174
+ });
175
+ const [rowSelectionModel, setRowSelectionModel] = (0, _utils.useControllableState)({
176
+ prop: props.rowSelectionModel,
177
+ defaultProp: props.defaultRowSelectionModel ?? _types.EMPTY_SELECTION,
178
+ onChange: props.onRowSelectionModelChange
179
+ });
180
+ const resolvedSortModel = sortModel ?? [];
181
+ const resolvedPagination = paginationModel ?? _types.DEFAULT_PAGINATION_MODEL;
182
+ const resolvedFilterModel = filterModel ?? [];
183
+ const resolvedQuickFilter = quickFilter ?? '';
184
+ const resolvedSelection = rowSelectionModel ?? _types.EMPTY_SELECTION;
185
+ const {
186
+ table,
187
+ setQuickFilter: setQuickFilterWithPageReset,
188
+ setColumnFilter
189
+ } = (0, _useDataGridTable.useDataGridTable)({
190
+ rows,
191
+ columns,
192
+ getRowId,
193
+ checkboxSelection,
194
+ disableColumnSorting,
195
+ paginationMode,
196
+ sortingMode,
197
+ rowCount,
198
+ sortModel: resolvedSortModel,
199
+ onSortModelChange: model => setSortModel(model),
200
+ paginationModel: resolvedPagination,
201
+ onPaginationModelChange: model => setPaginationModel(model),
202
+ filterModel: resolvedFilterModel,
203
+ onFilterModelChange: model => setFilterModel(model),
204
+ quickFilter: resolvedQuickFilter,
205
+ onQuickFilterChange: value => setQuickFilter(value),
206
+ rowSelectionModel: resolvedSelection,
207
+ onRowSelectionModelChange: model => setRowSelectionModel(model)
208
+ });
209
+ const colByField = (0, _react.useMemo)(() => {
210
+ const map = new Map();
211
+ for (const col of columns) {
212
+ map.set(col.field, col);
213
+ }
214
+ return map;
215
+ }, [columns]);
216
+ const columnWidths = (0, _react.useMemo)(() => webColumnWidths(columns, checkboxSelection), [checkboxSelection, columns]);
217
+ const hasFlexColumns = (0, _react.useMemo)(() => columns.some(column => (column.flex ?? 0) > 0), [columns]);
218
+ const visibleRows = table.getRowModel().rows;
219
+ const pageCount = Math.max(table.getPageCount(), 1);
220
+ const selectedCount = table.getFilteredSelectedRowModel().rows.length;
221
+ const filterableCount = table.getFilteredRowModel().rows.length;
222
+ const headerSelectState = selectedCount === 0 ? {
223
+ checked: false,
224
+ indeterminate: false
225
+ } : selectedCount === filterableCount ? {
226
+ checked: true,
227
+ indeterminate: false
228
+ } : {
229
+ checked: false,
230
+ indeterminate: true
231
+ };
232
+ const accessibleName = ariaLabel ?? label;
233
+ const isEmpty = !loading && rows.length === 0;
234
+ const totalCount = paginationMode === 'server' ? rowCount ?? rows.length : filterableCount;
235
+ const filterValueFor = field => resolvedFilterModel.find(item => item.field === field)?.value ?? '';
236
+ const showToolbarBar = showToolbar || toolbarActions != null;
237
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
238
+ className: (0, _utils.cn)((0, _styles.dataGridRootVariants)(), className),
239
+ style: style,
240
+ ...(0, _primitives.mergeDataAttributes)({}, (0, _primitives.dataAttributes)({
241
+ slot: 'data-grid'
242
+ })),
243
+ children: [showToolbarBar ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
244
+ className: (0, _styles.dataGridToolbarVariants)(),
245
+ children: [showToolbar ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.Input, {
246
+ size: "small",
247
+ className: (0, _styles.dataGridToolbarSearchVariants)(),
248
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Input.Icon, {
249
+ as: _icons.Search
250
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Input.Field, {
251
+ value: resolvedQuickFilter,
252
+ onChangeText: setQuickFilterWithPageReset,
253
+ placeholder: "Search",
254
+ accessibilityLabel: "Search"
255
+ })]
256
+ }) : null, toolbarActions ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
257
+ className: (0, _styles.dataGridToolbarActionsVariants)(),
258
+ children: toolbarActions
259
+ }) : null]
260
+ }) : null, /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
261
+ className: (0, _styles.dataGridMainVariants)(),
262
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.Table, {
263
+ className: (0, _utils.cn)((0, _styles.dataGridTableVariants)(), _reactNative.Platform.OS === 'web' && hasFlexColumns ? 'table-fixed' : undefined),
264
+ containerStyle: _reactNative.Platform.OS === 'web' ? WEB_TABLE_CONTAINER_STYLE : undefined,
265
+ accessibilityLabel: accessibleName,
266
+ ...(_reactNative.Platform.OS === 'web' ? {
267
+ 'aria-label': accessibleName,
268
+ 'aria-labelledby': ariaLabelledBy,
269
+ 'aria-busy': loading
270
+ } : {}),
271
+ children: [label ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Table.Caption, {
272
+ children: label
273
+ }) : null, _reactNative.Platform.OS === 'web' && hasFlexColumns ? /*#__PURE__*/(0, _jsxRuntime.jsxs)("colgroup", {
274
+ children: [checkboxSelection ? /*#__PURE__*/(0, _jsxRuntime.jsx)("col", {
275
+ style: {
276
+ width: SELECT_COLUMN_WIDTH
277
+ }
278
+ }) : null, columns.map(column => /*#__PURE__*/(0, _jsxRuntime.jsx)("col", {
279
+ style: {
280
+ width: columnWidths.get(column.field),
281
+ minWidth: column.minWidth
282
+ }
283
+ }, column.field))]
284
+ }) : null, /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.Table.Header, {
285
+ className: (0, _styles.dataGridHeaderVariants)(),
286
+ children: [table.getHeaderGroups().map(headerGroup => /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Table.Row, {
287
+ children: headerGroup.headers.map(header => {
288
+ if (header.id === _types.SELECT_COLUMN_ID) {
289
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Table.Head, {
290
+ align: "center",
291
+ className: (0, _styles.dataGridSelectHeadVariants)(),
292
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Checkbox, {
293
+ value: "select-all",
294
+ isChecked: headerSelectState.checked,
295
+ isIndeterminate: headerSelectState.indeterminate,
296
+ onChange: () => table.toggleAllRowsSelected(),
297
+ accessibilityLabel: "Select all",
298
+ "aria-label": "Select all"
299
+ })
300
+ }, header.id);
301
+ }
302
+ const col = colByField.get(header.column.id);
303
+ const sorted = header.column.getIsSorted();
304
+ const canSort = !disableColumnSorting && header.column.getCanSort();
305
+ const headerAlign = col?.headerAlign ?? col?.align;
306
+ const SortIcon = sorted === 'asc' ? _icons.KeyboardArrowUp : sorted === 'desc' ? _icons.KeyboardArrowDown : _icons.KeyboardArrowDown;
307
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Table.Head, {
308
+ align: (0, _columns.normalizeGridAlignment)(headerAlign),
309
+ className: (0, _styles.dataGridHeadVariants)(),
310
+ style: cellStyle(col, columnWidths.get(header.column.id)),
311
+ ...(_reactNative.Platform.OS === 'web' && canSort ? {
312
+ 'aria-sort': sorted === 'asc' ? 'ascending' : sorted === 'desc' ? 'descending' : 'none'
313
+ } : {}),
314
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
315
+ className: (0, _styles.dataGridHeaderCellInnerVariants)(),
316
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Text, {
317
+ className: "font-medium text-content-primary",
318
+ children: col?.renderHeader ? col.renderHeader() : col?.headerName ?? col?.field
319
+ }), canSort ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.IconButton, {
320
+ as: SortIcon,
321
+ variant: "ghost",
322
+ color: "neutral",
323
+ size: "small",
324
+ iconClassName: "size-4",
325
+ accessibilityLabel: `Sort by ${col?.headerName ?? header.column.id}`,
326
+ onPress: () => {
327
+ header.column.toggleSorting();
328
+ },
329
+ className: sorted ? undefined : 'opacity-40'
330
+ }) : null]
331
+ })
332
+ }, header.id);
333
+ })
334
+ }, headerGroup.id)), headerFilters ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Table.Row, {
335
+ children: table.getAllLeafColumns().map(column => {
336
+ if (column.id === _types.SELECT_COLUMN_ID) {
337
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Table.Cell, {
338
+ align: "center",
339
+ className: (0, _styles.dataGridSelectHeadVariants)()
340
+ }, column.id);
341
+ }
342
+ const col = colByField.get(column.id);
343
+ const headerAlign = col?.headerAlign ?? col?.align;
344
+ if (col?.filterable === false) {
345
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Table.Head, {
346
+ align: (0, _columns.normalizeGridAlignment)(headerAlign),
347
+ className: (0, _styles.dataGridHeadVariants)(),
348
+ style: cellStyle(col, columnWidths.get(column.id))
349
+ }, column.id);
350
+ }
351
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Table.Head, {
352
+ align: (0, _columns.normalizeGridAlignment)(headerAlign),
353
+ className: (0, _styles.dataGridHeadVariants)(),
354
+ style: cellStyle(col, columnWidths.get(column.id)),
355
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Input, {
356
+ size: "small",
357
+ className: (0, _styles.dataGridFilterInputVariants)(),
358
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Input.Field, {
359
+ value: filterValueFor(column.id),
360
+ onChangeText: value => setColumnFilter(column.id, value),
361
+ placeholder: "Filter",
362
+ accessibilityLabel: `Filter ${col?.headerName ?? column.id}`
363
+ })
364
+ })
365
+ }, column.id);
366
+ })
367
+ }) : null]
368
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Table.Body, {
369
+ className: (0, _styles.dataGridBodyVariants)(),
370
+ children: loading && loadingOverlay == null ? /*#__PURE__*/(0, _jsxRuntime.jsx)(DefaultLoadingRows, {
371
+ columns: columns,
372
+ checkboxSelection: checkboxSelection,
373
+ rowCount: Math.min(resolvedPagination.pageSize, MAX_SKELETON_ROW_COUNT),
374
+ columnWidths: columnWidths
375
+ }) : isEmpty ? null : visibleRows.map(row => {
376
+ const rowId = (0, _useDataGridTable.resolveRowId)(row.original, getRowId);
377
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Table.Row, {
378
+ children: row.getAllCells().map(cell => {
379
+ if (cell.column.id === _types.SELECT_COLUMN_ID) {
380
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Table.Cell, {
381
+ align: "center",
382
+ className: (0, _styles.dataGridSelectCellVariants)(),
383
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Checkbox, {
384
+ value: String(rowId),
385
+ isChecked: row.getIsSelected(),
386
+ onChange: () => row.toggleSelected(),
387
+ accessibilityLabel: `Select row ${String(rowId)}`,
388
+ "aria-label": `Select row ${String(rowId)}`
389
+ })
390
+ }, cell.id);
391
+ }
392
+ const col = colByField.get(cell.column.id);
393
+ const value = cell.getValue();
394
+ let content;
395
+ if (col?.renderCell) {
396
+ content = col.renderCell({
397
+ value,
398
+ row: row.original,
399
+ field: col.field,
400
+ id: rowId
401
+ });
402
+ } else if (col?.valueFormatter) {
403
+ content = col.valueFormatter(value, row.original, col);
404
+ } else {
405
+ content = defaultCellContent(value);
406
+ }
407
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Table.Cell, {
408
+ align: (0, _columns.normalizeGridAlignment)(col?.align),
409
+ className: (0, _styles.dataGridCellVariants)(),
410
+ style: cellStyle(col, columnWidths.get(cell.column.id)),
411
+ children: content
412
+ }, cell.id);
413
+ })
414
+ }, row.id);
415
+ })
416
+ })]
417
+ }), isEmpty ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
418
+ className: (0, _styles.dataGridEmptyOverlayVariants)(),
419
+ accessibilityLabel: "No rows",
420
+ children: noRowsOverlay ?? /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Text, {
421
+ className: "text-center text-content-secondary",
422
+ children: "No rows"
423
+ })
424
+ }) : null, loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Text, {
425
+ className: "pointer-events-none absolute h-px w-px overflow-hidden opacity-0",
426
+ accessibilityLiveRegion: "polite",
427
+ children: "Loading"
428
+ }) : null, loading && loadingOverlay != null ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
429
+ className: (0, _styles.dataGridOverlayVariants)({
430
+ headerFilters
431
+ }),
432
+ children: loadingOverlay
433
+ }) : null]
434
+ }), !hideFooter && !hideFooterPagination && (paginationMode === 'server' ? totalCount > 0 : rows.length > 0) ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
435
+ className: (0, _styles.dataGridFooterVariants)(),
436
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.TablePagination, {
437
+ page: resolvedPagination.page + 1,
438
+ count: pageCount,
439
+ pageSize: resolvedPagination.pageSize,
440
+ pageSizeOptions: withCurrentPageSize(pageSizeOptions, resolvedPagination.pageSize),
441
+ onPageChange: page => setPaginationModel({
442
+ ...resolvedPagination,
443
+ page: page - 1
444
+ }),
445
+ onPageSizeChange: pageSize => setPaginationModel({
446
+ page: 0,
447
+ pageSize
448
+ }),
449
+ disabled: loading,
450
+ accessibilityLabel: "Grid pagination",
451
+ className: (0, _styles.dataGridPaginationVariants)(),
452
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Text, {
453
+ size: "md",
454
+ className: "text-content-primary",
455
+ children: "Rows per page:"
456
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.TablePagination.PageSize, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.TablePagination.Status, {
457
+ className: (0, _styles.dataGridPaginationRangeVariants)(),
458
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Text, {
459
+ size: "md",
460
+ className: "text-content-primary",
461
+ children: paginationRangeLabel(resolvedPagination.page, resolvedPagination.pageSize, totalCount)
462
+ })
463
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.TablePagination.Previous, {
464
+ className: "h-11 w-11 min-w-11"
465
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.TablePagination.Next, {
466
+ className: "h-11 w-11 min-w-11"
467
+ })]
468
+ })
469
+ }) : null]
470
+ });
471
+ }
472
+ function DataGrid(props) {
473
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(DataGridInner, {
474
+ ...props
475
+ });
476
+ }
477
+ DataGrid.displayName = 'DataGrid';
478
+ //# sourceMappingURL=DataGrid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_reactNative","_components","_icons","_primitives","_utils","_columns","_styles","_types","_useDataGridTable","_jsxRuntime","MAX_SKELETON_ROW_COUNT","DEFAULT_WEB_COLUMN_WIDTH","SELECT_COLUMN_WIDTH","WEB_TABLE_CONTAINER_STYLE","overflow","cellStyle","col","webWidth","undefined","style","Platform","OS","width","minWidth","flex","Object","keys","length","webColumnWidths","columns","checkboxSelection","totalFlex","reduce","total","column","Math","max","widths","Map","set","field","fixedWidth","share","percentage","fixedShare","toString","defaultCellContent","value","String","serialized","JSON","stringify","DefaultLoadingRows","rowCount","columnWidths","jsx","Fragment","children","Array","from","_","rowIndex","jsxs","Table","Row","className","testID","Cell","align","dataGridSelectCellVariants","Skeleton","map","normalizeGridAlignment","dataGridCellVariants","get","paginationRangeLabel","page","pageSize","start","end","min","withCurrentPageSize","options","exists","some","option","DataGridInner","props","rows","getRowId","loading","hideFooter","hideFooterPagination","disableColumnSorting","paginationMode","sortingMode","showToolbar","headerFilters","pageSizeOptions","DEFAULT_PAGE_SIZE_OPTIONS","noRowsOverlay","loadingOverlay","toolbarActions","label","ariaLabel","ariaLabelledBy","sortModel","setSortModel","useControllableState","prop","defaultProp","defaultSortModel","onChange","onSortModelChange","paginationModel","setPaginationModel","defaultPaginationModel","DEFAULT_PAGINATION_MODEL","onPaginationModelChange","filterModel","setFilterModel","defaultFilterModel","onFilterModelChange","quickFilter","setQuickFilter","defaultQuickFilter","onQuickFilterChange","rowSelectionModel","setRowSelectionModel","defaultRowSelectionModel","EMPTY_SELECTION","onRowSelectionModelChange","resolvedSortModel","resolvedPagination","resolvedFilterModel","resolvedQuickFilter","resolvedSelection","table","setQuickFilterWithPageReset","setColumnFilter","useDataGridTable","model","colByField","useMemo","hasFlexColumns","visibleRows","getRowModel","pageCount","getPageCount","selectedCount","getFilteredSelectedRowModel","filterableCount","getFilteredRowModel","headerSelectState","checked","indeterminate","accessibleName","isEmpty","totalCount","filterValueFor","find","item","showToolbarBar","View","cn","dataGridRootVariants","mergeDataAttributes","dataAttributes","slot","dataGridToolbarVariants","Input","size","dataGridToolbarSearchVariants","Icon","as","Search","Field","onChangeText","placeholder","accessibilityLabel","dataGridToolbarActionsVariants","dataGridMainVariants","dataGridTableVariants","containerStyle","Caption","Header","dataGridHeaderVariants","getHeaderGroups","headerGroup","headers","header","id","SELECT_COLUMN_ID","Head","dataGridSelectHeadVariants","Checkbox","isChecked","isIndeterminate","toggleAllRowsSelected","sorted","getIsSorted","canSort","getCanSort","headerAlign","SortIcon","KeyboardArrowUp","KeyboardArrowDown","dataGridHeadVariants","dataGridHeaderCellInnerVariants","Text","renderHeader","headerName","IconButton","variant","color","iconClassName","onPress","toggleSorting","getAllLeafColumns","filterable","dataGridFilterInputVariants","Body","dataGridBodyVariants","row","rowId","resolveRowId","original","getAllCells","cell","getIsSelected","toggleSelected","getValue","content","renderCell","valueFormatter","dataGridEmptyOverlayVariants","accessibilityLiveRegion","dataGridOverlayVariants","dataGridFooterVariants","TablePagination","count","onPageChange","onPageSizeChange","disabled","dataGridPaginationVariants","PageSize","Status","dataGridPaginationRangeVariants","Previous","Next","DataGrid","displayName"],"sourceRoot":"../../src","sources":["DataGrid.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.applyUpdater = applyUpdater;
7
+ exports.gridColDefToColumnDef = gridColDefToColumnDef;
8
+ exports.normalizeGridAlignment = normalizeGridAlignment;
9
+ function gridColDefToColumnDef(col) {
10
+ return {
11
+ id: col.field,
12
+ accessorFn: row => {
13
+ const raw = row[col.field];
14
+ return col.valueGetter ? col.valueGetter(raw, row, col) : raw;
15
+ },
16
+ header: col.headerName ?? col.field,
17
+ enableSorting: col.sortable !== false,
18
+ enableColumnFilter: col.filterable !== false,
19
+ enableGlobalFilter: col.filterable !== false,
20
+ filterFn: 'includesString',
21
+ meta: {
22
+ colDef: col
23
+ }
24
+ };
25
+ }
26
+ function applyUpdater(updater, previous) {
27
+ return typeof updater === 'function' ? updater(previous) : updater;
28
+ }
29
+ function normalizeGridAlignment(align) {
30
+ if (align === 'left') {
31
+ return 'start';
32
+ }
33
+ if (align === 'right') {
34
+ return 'end';
35
+ }
36
+ return align ?? 'start';
37
+ }
38
+ //# sourceMappingURL=columns.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["gridColDefToColumnDef","col","id","field","accessorFn","row","raw","valueGetter","header","headerName","enableSorting","sortable","enableColumnFilter","filterable","enableGlobalFilter","filterFn","meta","colDef","applyUpdater","updater","previous","normalizeGridAlignment","align"],"sourceRoot":"../../../src","sources":["adapter/columns.ts"],"mappings":";;;;;;;;AAGO,SAASA,qBAAqBA,CAA8BC,GAAkB,EAAE;EACrF,OAAO;IACLC,EAAE,EAAED,GAAG,CAACE,KAAK;IACbC,UAAU,EAAGC,GAAM,IAAK;MACtB,MAAMC,GAAG,GAAGD,GAAG,CAACJ,GAAG,CAACE,KAAK,CAAC;MAC1B,OAAOF,GAAG,CAACM,WAAW,GAAGN,GAAG,CAACM,WAAW,CAACD,GAAG,EAAED,GAAG,EAAEJ,GAAG,CAAC,GAAGK,GAAG;IAC/D,CAAC;IACDE,MAAM,EAAEP,GAAG,CAACQ,UAAU,IAAIR,GAAG,CAACE,KAAK;IACnCO,aAAa,EAAET,GAAG,CAACU,QAAQ,KAAK,KAAK;IACrCC,kBAAkB,EAAEX,GAAG,CAACY,UAAU,KAAK,KAAK;IAC5CC,kBAAkB,EAAEb,GAAG,CAACY,UAAU,KAAK,KAAK;IAC5CE,QAAQ,EAAE,gBAAyB;IACnCC,IAAI,EAAE;MAAEC,MAAM,EAAEhB;IAAI;EACtB,CAAC;AACH;AAEO,SAASiB,YAAYA,CAAIC,OAA4B,EAAEC,QAAW,EAAK;EAC5E,OAAO,OAAOD,OAAO,KAAK,UAAU,GAAIA,OAAO,CAAmBC,QAAQ,CAAC,GAAGD,OAAO;AACvF;AAEO,SAASE,sBAAsBA,CAACC,KAAqB,EAAkB;EAC5E,IAAIA,KAAK,KAAK,MAAM,EAAE;IACpB,OAAO,OAAO;EAChB;EACA,IAAIA,KAAK,KAAK,OAAO,EAAE;IACrB,OAAO,KAAK;EACd;EACA,OAAOA,KAAK,IAAI,OAAO;AACzB","ignoreList":[]}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createSelectColumn = createSelectColumn;
7
+ var _types = require("../types");
8
+ function createSelectColumn() {
9
+ return {
10
+ id: _types.SELECT_COLUMN_ID,
11
+ header: _types.SELECT_COLUMN_ID,
12
+ enableSorting: false,
13
+ enableColumnFilter: false,
14
+ enableGlobalFilter: false,
15
+ size: 48
16
+ };
17
+ }
18
+ //# sourceMappingURL=selectColumn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_types","require","createSelectColumn","id","SELECT_COLUMN_ID","header","enableSorting","enableColumnFilter","enableGlobalFilter","size"],"sourceRoot":"../../../src","sources":["adapter/selectColumn.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEO,SAASC,kBAAkBA,CAAA,EAAG;EACnC,OAAO;IACLC,EAAE,EAAEC,uBAAgB;IACpBC,MAAM,EAAED,uBAAgB;IACxBE,aAAa,EAAE,KAAK;IACpBC,kBAAkB,EAAE,KAAK;IACzBC,kBAAkB,EAAE,KAAK;IACzBC,IAAI,EAAE;EACR,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "DataGrid", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _DataGrid.DataGrid;
10
+ }
11
+ });
12
+ var _DataGrid = require("./DataGrid");
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_DataGrid","require"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA","ignoreList":[]}
@@ -0,0 +1 @@
1
+ {"type":"commonjs"}