@ornery/ui-grid-react 0.1.6 → 0.1.7-hotfix-1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/demo/main.tsx +1 -1
- package/demo/vite.config.ts +1 -1
- package/dist/UiGrid.d.ts +1 -1
- package/dist/UiGrid.d.ts.map +1 -1
- package/dist/gridStateMath.d.ts +1 -1
- package/dist/gridStateMath.d.ts.map +1 -1
- package/dist/index.d.ts +6 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +388 -239
- package/dist/index.mjs +245 -96
- package/dist/rustWasmGridEngine.d.ts +1 -1
- package/dist/rustWasmGridEngine.d.ts.map +1 -1
- package/dist/useGridState.d.ts +3 -2
- package/dist/useGridState.d.ts.map +1 -1
- package/dist/vanillaAdapter.d.ts +14 -0
- package/dist/vanillaAdapter.d.ts.map +1 -0
- package/package.json +11 -11
- package/src/UiGrid.test.tsx +61 -24
- package/src/UiGrid.tsx +320 -198
- package/src/gridStateMath.test.ts +10 -8
- package/src/gridStateMath.ts +20 -7
- package/src/index.ts +20 -5
- package/src/rustWasmGridEngine.test.ts +4 -4
- package/src/rustWasmGridEngine.ts +4 -4
- package/src/ui-grid.css +56 -17
- package/src/useGridState.ts +20 -6
- package/src/vanillaAdapter.test.ts +33 -0
- package/src/vanillaAdapter.ts +36 -0
- package/tsconfig.dts.json +1 -1
- package/tsconfig.json +1 -1
- package/vitest.config.ts +1 -1
package/dist/index.mjs
CHANGED
|
@@ -5,7 +5,7 @@ import React from "react";
|
|
|
5
5
|
import { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
6
6
|
|
|
7
7
|
// src/gridStateMath.ts
|
|
8
|
-
import { gridColumnWidth } from "@ornery/ui-grid";
|
|
8
|
+
import { gridColumnWidth } from "@ornery/ui-grid-core";
|
|
9
9
|
function orderVisibleColumns(columns, order) {
|
|
10
10
|
return [...columns].filter((column) => column.visible !== false).sort((left, right) => order.indexOf(left.name) - order.indexOf(right.name));
|
|
11
11
|
}
|
|
@@ -99,6 +99,7 @@ import {
|
|
|
99
99
|
clearGridFiltersCommand,
|
|
100
100
|
clearGridGroupingCommand,
|
|
101
101
|
moveGridColumnCommand,
|
|
102
|
+
moveGridVisibleColumnCommand,
|
|
102
103
|
seekGridPaginationCommand,
|
|
103
104
|
setGridPaginationPageSizeCommand,
|
|
104
105
|
sortGridColumnCommand,
|
|
@@ -129,7 +130,7 @@ import {
|
|
|
129
130
|
raiseGridBenchmarkComplete,
|
|
130
131
|
downloadGridCsvFile,
|
|
131
132
|
observeGridHostSize
|
|
132
|
-
} from "@ornery/ui-grid";
|
|
133
|
+
} from "@ornery/ui-grid-core";
|
|
133
134
|
function escapeCssSelectorValue(value) {
|
|
134
135
|
const nativeEscape = globalThis.CSS?.escape;
|
|
135
136
|
if (typeof nativeEscape === "function") {
|
|
@@ -236,7 +237,9 @@ function useGridState(options, onRegisterApi) {
|
|
|
236
237
|
const columnByName = new Map(orderedColumns.map((column) => [column.name, column]));
|
|
237
238
|
const pinnedLeft = pinnedEntries.filter(([, direction]) => direction === "left").map(([columnName]) => columnByName.get(columnName)).filter((column) => column !== void 0);
|
|
238
239
|
const pinnedRight = pinnedEntries.filter(([, direction]) => direction === "right").map(([columnName]) => columnByName.get(columnName)).filter((column) => column !== void 0);
|
|
239
|
-
const centerColumns = orderedColumns.filter(
|
|
240
|
+
const centerColumns = orderedColumns.filter(
|
|
241
|
+
(column) => pinnedColumns[column.name] === void 0
|
|
242
|
+
);
|
|
240
243
|
return [...pinnedLeft, ...centerColumns, ...pinnedRight];
|
|
241
244
|
}, [options.columnDefs, columnOrder, pinnedColumns]);
|
|
242
245
|
const visibleColumnsRef = useRef(visibleColumns);
|
|
@@ -1215,6 +1218,17 @@ function useGridState(options, onRegisterApi) {
|
|
|
1215
1218
|
toIndex
|
|
1216
1219
|
);
|
|
1217
1220
|
}, []);
|
|
1221
|
+
const moveVisibleColumnFn = useCallback((columnName, targetColumnName) => {
|
|
1222
|
+
moveGridVisibleColumnCommand(
|
|
1223
|
+
gridApiRef.current,
|
|
1224
|
+
FEATURE_COLUMN_MOVING && optionsRef.current.enableColumnMoving === true,
|
|
1225
|
+
columnOrderRef.current,
|
|
1226
|
+
visibleColumnsRef.current.map((column) => column.name),
|
|
1227
|
+
columnName,
|
|
1228
|
+
targetColumnName,
|
|
1229
|
+
(order) => setColumnOrder(order)
|
|
1230
|
+
);
|
|
1231
|
+
}, []);
|
|
1218
1232
|
const nextPageFn = useCallback(() => {
|
|
1219
1233
|
seekPageFn(getCurrentPageValueFn() + 1);
|
|
1220
1234
|
}, [seekPageFn, getCurrentPageValueFn]);
|
|
@@ -1344,6 +1358,7 @@ function useGridState(options, onRegisterApi) {
|
|
|
1344
1358
|
toggleRowExpansion: toggleRowExpansionFn,
|
|
1345
1359
|
toggleTreeRow: toggleTreeRowFn,
|
|
1346
1360
|
moveColumn: moveColumnFn,
|
|
1361
|
+
moveVisibleColumn: moveVisibleColumnFn,
|
|
1347
1362
|
nextPage: nextPageFn,
|
|
1348
1363
|
previousPage: previousPageFn,
|
|
1349
1364
|
onPageSizeChange: onPageSizeChangeFn,
|
|
@@ -1443,23 +1458,30 @@ function UiGrid({
|
|
|
1443
1458
|
expandableFeature,
|
|
1444
1459
|
treeViewFeature,
|
|
1445
1460
|
csvExportFeature,
|
|
1461
|
+
columnMovingFeature,
|
|
1446
1462
|
paginationCurrentPage,
|
|
1447
1463
|
paginationTotalPages,
|
|
1448
1464
|
paginationSelectedPageSize
|
|
1449
1465
|
} = state;
|
|
1466
|
+
const headerGridRef = React.useRef(null);
|
|
1467
|
+
const filterGridRef = React.useRef(null);
|
|
1468
|
+
const [headerStickyHeight, setHeaderStickyHeight] = React.useState(0);
|
|
1469
|
+
const [filterStickyHeight, setFilterStickyHeight] = React.useState(0);
|
|
1470
|
+
const stickyChromeHeight = headerStickyHeight + filterStickyHeight;
|
|
1471
|
+
const bodyViewportHeight = Math.max(
|
|
1472
|
+
rowSize,
|
|
1473
|
+
(options.viewportHeight ?? 560) - stickyChromeHeight
|
|
1474
|
+
);
|
|
1450
1475
|
const virtualScroll = useVirtualScroll({
|
|
1451
1476
|
itemCount: displayItems.length,
|
|
1452
1477
|
itemSize: rowSize,
|
|
1453
|
-
viewportHeight:
|
|
1478
|
+
viewportHeight: bodyViewportHeight,
|
|
1454
1479
|
overscan: 3
|
|
1455
1480
|
});
|
|
1456
|
-
const headerGridRef = React.useRef(null);
|
|
1457
|
-
const filterGridRef = React.useRef(null);
|
|
1458
1481
|
const [openPinMenuColumn, setOpenPinMenuColumn] = React.useState(null);
|
|
1459
|
-
const [
|
|
1460
|
-
const [
|
|
1461
|
-
const
|
|
1462
|
-
const scrollContainerHeight = `${(options.viewportHeight ?? 560) + stickyChromeHeight}px`;
|
|
1482
|
+
const [draggedColumnName, setDraggedColumnName] = React.useState(null);
|
|
1483
|
+
const [dropTargetColumnName, setDropTargetColumnName] = React.useState(null);
|
|
1484
|
+
const scrollContainerHeight = `${options.viewportHeight ?? 560}px`;
|
|
1463
1485
|
const eventPathIncludesClass = React.useCallback((event, className2) => {
|
|
1464
1486
|
const eventPath = typeof event.composedPath === "function" ? event.composedPath() : event.target ? [event.target] : [];
|
|
1465
1487
|
return eventPath.some((target) => {
|
|
@@ -1498,10 +1520,72 @@ function UiGrid({
|
|
|
1498
1520
|
},
|
|
1499
1521
|
[state]
|
|
1500
1522
|
);
|
|
1523
|
+
const handleHeaderDragStart = React.useCallback(
|
|
1524
|
+
(column, event) => {
|
|
1525
|
+
if (!columnMovingFeature) {
|
|
1526
|
+
event.preventDefault();
|
|
1527
|
+
return;
|
|
1528
|
+
}
|
|
1529
|
+
setDraggedColumnName(column.name);
|
|
1530
|
+
setDropTargetColumnName(null);
|
|
1531
|
+
event.dataTransfer.effectAllowed = "move";
|
|
1532
|
+
event.dataTransfer.setData("text/plain", column.name);
|
|
1533
|
+
},
|
|
1534
|
+
[columnMovingFeature]
|
|
1535
|
+
);
|
|
1536
|
+
const handleHeaderDragOver = React.useCallback(
|
|
1537
|
+
(column, event) => {
|
|
1538
|
+
if (!columnMovingFeature || !draggedColumnName || draggedColumnName === column.name) {
|
|
1539
|
+
return;
|
|
1540
|
+
}
|
|
1541
|
+
event.preventDefault();
|
|
1542
|
+
event.dataTransfer.dropEffect = "move";
|
|
1543
|
+
setDropTargetColumnName(column.name);
|
|
1544
|
+
},
|
|
1545
|
+
[columnMovingFeature, draggedColumnName]
|
|
1546
|
+
);
|
|
1547
|
+
const handleHeaderDrop = React.useCallback(
|
|
1548
|
+
(column, event) => {
|
|
1549
|
+
event.preventDefault();
|
|
1550
|
+
if (!columnMovingFeature) {
|
|
1551
|
+
return;
|
|
1552
|
+
}
|
|
1553
|
+
const sourceColumnName = draggedColumnName ?? event.dataTransfer.getData("text/plain");
|
|
1554
|
+
setDraggedColumnName(null);
|
|
1555
|
+
setDropTargetColumnName(null);
|
|
1556
|
+
if (!sourceColumnName || sourceColumnName === column.name) {
|
|
1557
|
+
return;
|
|
1558
|
+
}
|
|
1559
|
+
state.moveVisibleColumn(sourceColumnName, column.name);
|
|
1560
|
+
},
|
|
1561
|
+
[columnMovingFeature, draggedColumnName, state]
|
|
1562
|
+
);
|
|
1563
|
+
const handleHeaderDragEnd = React.useCallback(() => {
|
|
1564
|
+
setDraggedColumnName(null);
|
|
1565
|
+
setDropTargetColumnName(null);
|
|
1566
|
+
}, []);
|
|
1501
1567
|
React.useLayoutEffect(() => {
|
|
1502
1568
|
setHeaderStickyHeight(headerGridRef.current?.offsetHeight ?? 0);
|
|
1503
1569
|
setFilterStickyHeight(filterGridRef.current?.offsetHeight ?? 0);
|
|
1504
1570
|
}, [visibleColumns, filteringFeature, options.enableFiltering]);
|
|
1571
|
+
React.useLayoutEffect(() => {
|
|
1572
|
+
const headerElement = headerGridRef.current;
|
|
1573
|
+
const filterElement = filterGridRef.current;
|
|
1574
|
+
if (typeof ResizeObserver === "undefined" || !headerElement && !filterElement) {
|
|
1575
|
+
return;
|
|
1576
|
+
}
|
|
1577
|
+
const observer = new ResizeObserver(() => {
|
|
1578
|
+
setHeaderStickyHeight(headerGridRef.current?.offsetHeight ?? 0);
|
|
1579
|
+
setFilterStickyHeight(filterGridRef.current?.offsetHeight ?? 0);
|
|
1580
|
+
});
|
|
1581
|
+
if (headerElement) {
|
|
1582
|
+
observer.observe(headerElement);
|
|
1583
|
+
}
|
|
1584
|
+
if (filterElement) {
|
|
1585
|
+
observer.observe(filterElement);
|
|
1586
|
+
}
|
|
1587
|
+
return () => observer.disconnect();
|
|
1588
|
+
}, []);
|
|
1505
1589
|
React.useEffect(() => {
|
|
1506
1590
|
if (!openPinMenuColumn) {
|
|
1507
1591
|
return;
|
|
@@ -1622,12 +1706,21 @@ function UiGrid({
|
|
|
1622
1706
|
"aria-label": state.treeToggleLabel(rowItem.row),
|
|
1623
1707
|
"aria-expanded": state.isTreeRowExpanded(rowItem.row),
|
|
1624
1708
|
onClick: (e) => state.toggleTreeRow(rowItem.row, e),
|
|
1625
|
-
children: /* @__PURE__ */ jsx(
|
|
1626
|
-
"
|
|
1709
|
+
children: /* @__PURE__ */ jsx(
|
|
1710
|
+
"svg",
|
|
1627
1711
|
{
|
|
1628
|
-
|
|
1712
|
+
className: "toggle-icon",
|
|
1713
|
+
viewBox: "0 0 24 24",
|
|
1714
|
+
"aria-hidden": "true",
|
|
1715
|
+
focusable: false,
|
|
1716
|
+
children: /* @__PURE__ */ jsx(
|
|
1717
|
+
"path",
|
|
1718
|
+
{
|
|
1719
|
+
d: state.isTreeRowExpanded(rowItem.row) ? "M7 10l5 5 5-5z" : "M10 7l5 5-5 5z"
|
|
1720
|
+
}
|
|
1721
|
+
)
|
|
1629
1722
|
}
|
|
1630
|
-
)
|
|
1723
|
+
)
|
|
1631
1724
|
}
|
|
1632
1725
|
),
|
|
1633
1726
|
expandableFeature && state.showExpandToggle(rowItem.row, column) && /* @__PURE__ */ jsx(
|
|
@@ -1639,7 +1732,16 @@ function UiGrid({
|
|
|
1639
1732
|
"aria-label": state.expandToggleLabel(rowItem.row),
|
|
1640
1733
|
"aria-expanded": rowItem.row.expanded,
|
|
1641
1734
|
onClick: (e) => state.toggleRowExpansion(rowItem.row, e),
|
|
1642
|
-
children: /* @__PURE__ */ jsx(
|
|
1735
|
+
children: /* @__PURE__ */ jsx(
|
|
1736
|
+
"svg",
|
|
1737
|
+
{
|
|
1738
|
+
className: "toggle-icon",
|
|
1739
|
+
viewBox: "0 0 24 24",
|
|
1740
|
+
"aria-hidden": "true",
|
|
1741
|
+
focusable: false,
|
|
1742
|
+
children: /* @__PURE__ */ jsx("path", { d: rowItem.row.expanded ? "M7 10l5 5 5-5z" : "M10 7l5 5-5 5z" })
|
|
1743
|
+
}
|
|
1744
|
+
)
|
|
1643
1745
|
}
|
|
1644
1746
|
),
|
|
1645
1747
|
/* @__PURE__ */ jsx("span", { className: "cell-value", children: cellEditFeature && state.isEditingCell(rowItem.row, column) ? /* @__PURE__ */ jsx(
|
|
@@ -1791,10 +1893,20 @@ function UiGrid({
|
|
|
1791
1893
|
return /* @__PURE__ */ jsxs(
|
|
1792
1894
|
"div",
|
|
1793
1895
|
{
|
|
1794
|
-
className: `header-cell ui-grid-header-cell${sortingFeature && state.sortDirection(column) !== "none" ? " is-active" : ""}${pinned ? " is-pinned" : ""}${pinMenuOpen ? " is-pin-menu-open" : ""}`,
|
|
1896
|
+
className: `header-cell ui-grid-header-cell${sortingFeature && state.sortDirection(column) !== "none" ? " is-active" : ""}${pinned ? " is-pinned" : ""}${pinMenuOpen ? " is-pin-menu-open" : ""}${draggedColumnName === column.name ? " is-dragging" : ""}${dropTargetColumnName === column.name ? " is-drag-target" : ""}`,
|
|
1795
1897
|
"data-part": "header-cell",
|
|
1796
1898
|
role: "columnheader",
|
|
1797
1899
|
"aria-sort": sortingFeature ? state.sortAriaSort(column) : void 0,
|
|
1900
|
+
draggable: columnMovingFeature,
|
|
1901
|
+
onDragStart: (event) => handleHeaderDragStart(column, event),
|
|
1902
|
+
onDragOver: (event) => handleHeaderDragOver(column, event),
|
|
1903
|
+
onDrop: (event) => handleHeaderDrop(column, event),
|
|
1904
|
+
onDragEnd: handleHeaderDragEnd,
|
|
1905
|
+
onDragLeave: () => {
|
|
1906
|
+
if (dropTargetColumnName === column.name) {
|
|
1907
|
+
setDropTargetColumnName(null);
|
|
1908
|
+
}
|
|
1909
|
+
},
|
|
1798
1910
|
style: {
|
|
1799
1911
|
position: pinned ? "sticky" : void 0,
|
|
1800
1912
|
left: pinOffset?.side === "left" ? pinOffset.offset : void 0,
|
|
@@ -1834,71 +1946,78 @@ function UiGrid({
|
|
|
1834
1946
|
]
|
|
1835
1947
|
}
|
|
1836
1948
|
),
|
|
1837
|
-
state.pinningFeature && state.isPinningEnabled() && state.isColumnPinnable(column) && /* @__PURE__ */ jsxs(
|
|
1838
|
-
|
|
1839
|
-
|
|
1840
|
-
{
|
|
1841
|
-
|
|
1842
|
-
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
|
|
1850
|
-
|
|
1851
|
-
|
|
1852
|
-
|
|
1853
|
-
|
|
1854
|
-
|
|
1855
|
-
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
|
|
1861
|
-
|
|
1862
|
-
|
|
1863
|
-
|
|
1864
|
-
|
|
1865
|
-
"
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
|
|
1872
|
-
|
|
1873
|
-
|
|
1874
|
-
|
|
1875
|
-
|
|
1876
|
-
|
|
1877
|
-
|
|
1878
|
-
|
|
1879
|
-
|
|
1880
|
-
|
|
1881
|
-
|
|
1882
|
-
|
|
1883
|
-
|
|
1884
|
-
|
|
1885
|
-
|
|
1886
|
-
|
|
1887
|
-
|
|
1888
|
-
|
|
1889
|
-
|
|
1890
|
-
|
|
1891
|
-
|
|
1892
|
-
|
|
1893
|
-
|
|
1894
|
-
|
|
1895
|
-
|
|
1896
|
-
|
|
1897
|
-
|
|
1898
|
-
|
|
1899
|
-
|
|
1900
|
-
|
|
1901
|
-
|
|
1949
|
+
state.pinningFeature && state.isPinningEnabled() && state.isColumnPinnable(column) && /* @__PURE__ */ jsxs(
|
|
1950
|
+
"div",
|
|
1951
|
+
{
|
|
1952
|
+
className: `pin-control${pinMenuOpen ? " pin-control-open" : ""}`,
|
|
1953
|
+
onClick: (event) => event.stopPropagation(),
|
|
1954
|
+
children: [
|
|
1955
|
+
/* @__PURE__ */ jsxs(
|
|
1956
|
+
"button",
|
|
1957
|
+
{
|
|
1958
|
+
type: "button",
|
|
1959
|
+
className: `chip-action pin-trigger${pinned || pinMenuOpen ? " chip-action-active" : ""}`,
|
|
1960
|
+
"data-part": "pin-toggle",
|
|
1961
|
+
"aria-label": pinButtonLabel(column),
|
|
1962
|
+
title: pinButtonLabel(column),
|
|
1963
|
+
"aria-haspopup": pinned ? void 0 : "menu",
|
|
1964
|
+
"aria-expanded": pinned ? void 0 : pinMenuOpen,
|
|
1965
|
+
onClick: (event) => onPinTrigger(column, event),
|
|
1966
|
+
children: [
|
|
1967
|
+
/* @__PURE__ */ jsx("svg", { viewBox: "0 0 24 24", "aria-hidden": "true", focusable: false, children: /* @__PURE__ */ jsx("path", { d: "M16 12V4h1V2H7v2h1v8l-2 2v2h5v6l1 1 1-1v-6h5v-2l-2-2z" }) }),
|
|
1968
|
+
/* @__PURE__ */ jsx("span", { className: "sr-only ui-grid-sr-only", children: pinButtonLabel(column) })
|
|
1969
|
+
]
|
|
1970
|
+
}
|
|
1971
|
+
),
|
|
1972
|
+
/* @__PURE__ */ jsxs(
|
|
1973
|
+
"div",
|
|
1974
|
+
{
|
|
1975
|
+
className: "pin-menu",
|
|
1976
|
+
"data-part": "pin-menu",
|
|
1977
|
+
role: "menu",
|
|
1978
|
+
"aria-label": "Pin options",
|
|
1979
|
+
"aria-hidden": !pinMenuOpen,
|
|
1980
|
+
children: [
|
|
1981
|
+
/* @__PURE__ */ jsxs(
|
|
1982
|
+
"button",
|
|
1983
|
+
{
|
|
1984
|
+
type: "button",
|
|
1985
|
+
className: "pin-menu-action",
|
|
1986
|
+
"data-part": "pin-left-action",
|
|
1987
|
+
role: "menuitem",
|
|
1988
|
+
"aria-label": labels.pinLeft,
|
|
1989
|
+
title: labels.pinLeft,
|
|
1990
|
+
tabIndex: pinMenuOpen ? 0 : -1,
|
|
1991
|
+
onClick: (event) => choosePinDirection(column, "left", event),
|
|
1992
|
+
children: [
|
|
1993
|
+
/* @__PURE__ */ jsx("svg", { viewBox: "0 0 24 24", "aria-hidden": "true", focusable: false, children: /* @__PURE__ */ jsx("path", { d: "M10 6 4 12l6 6v-4h10v-4H10V6z" }) }),
|
|
1994
|
+
/* @__PURE__ */ jsx("span", { className: "sr-only ui-grid-sr-only", children: labels.pinLeft })
|
|
1995
|
+
]
|
|
1996
|
+
}
|
|
1997
|
+
),
|
|
1998
|
+
/* @__PURE__ */ jsxs(
|
|
1999
|
+
"button",
|
|
2000
|
+
{
|
|
2001
|
+
type: "button",
|
|
2002
|
+
className: "pin-menu-action",
|
|
2003
|
+
"data-part": "pin-right-action",
|
|
2004
|
+
role: "menuitem",
|
|
2005
|
+
"aria-label": labels.pinRight,
|
|
2006
|
+
title: labels.pinRight,
|
|
2007
|
+
tabIndex: pinMenuOpen ? 0 : -1,
|
|
2008
|
+
onClick: (event) => choosePinDirection(column, "right", event),
|
|
2009
|
+
children: [
|
|
2010
|
+
/* @__PURE__ */ jsx("svg", { viewBox: "0 0 24 24", "aria-hidden": "true", focusable: false, children: /* @__PURE__ */ jsx("path", { d: "M14 6v4H4v4h10v4l6-6-6-6z" }) }),
|
|
2011
|
+
/* @__PURE__ */ jsx("span", { className: "sr-only ui-grid-sr-only", children: labels.pinRight })
|
|
2012
|
+
]
|
|
2013
|
+
}
|
|
2014
|
+
)
|
|
2015
|
+
]
|
|
2016
|
+
}
|
|
2017
|
+
)
|
|
2018
|
+
]
|
|
2019
|
+
}
|
|
2020
|
+
)
|
|
1902
2021
|
] })
|
|
1903
2022
|
]
|
|
1904
2023
|
},
|
|
@@ -1913,7 +2032,10 @@ function UiGrid({
|
|
|
1913
2032
|
className: "filter-grid ui-grid-header",
|
|
1914
2033
|
"data-part": "filters",
|
|
1915
2034
|
ref: filterGridRef,
|
|
1916
|
-
style: {
|
|
2035
|
+
style: {
|
|
2036
|
+
gridTemplateColumns,
|
|
2037
|
+
["--ui-grid-header-sticky-top"]: `${headerStickyHeight}px`
|
|
2038
|
+
},
|
|
1917
2039
|
children: visibleColumns.map((column) => {
|
|
1918
2040
|
const pinned = state.isPinned(column);
|
|
1919
2041
|
const pinOffset = pinned ? state.pinnedOffset(column) : null;
|
|
@@ -1952,21 +2074,28 @@ function UiGrid({
|
|
|
1952
2074
|
})
|
|
1953
2075
|
}
|
|
1954
2076
|
),
|
|
1955
|
-
displayItems.length > 0 ? virtualizationEnabled ? /* @__PURE__ */ jsx(
|
|
2077
|
+
displayItems.length > 0 ? virtualizationEnabled ? /* @__PURE__ */ jsx(
|
|
1956
2078
|
"div",
|
|
1957
2079
|
{
|
|
1958
|
-
className: "
|
|
1959
|
-
|
|
1960
|
-
|
|
1961
|
-
|
|
1962
|
-
|
|
1963
|
-
|
|
1964
|
-
|
|
1965
|
-
|
|
1966
|
-
|
|
1967
|
-
|
|
2080
|
+
className: "grid-virtual-spacer",
|
|
2081
|
+
style: { height: `${virtualScroll.totalHeight}px` },
|
|
2082
|
+
children: /* @__PURE__ */ jsx(
|
|
2083
|
+
"div",
|
|
2084
|
+
{
|
|
2085
|
+
className: "body-grid ui-grid-canvas grid-virtual-body",
|
|
2086
|
+
"data-part": "body",
|
|
2087
|
+
role: "rowgroup",
|
|
2088
|
+
style: {
|
|
2089
|
+
gridTemplateColumns,
|
|
2090
|
+
position: "absolute",
|
|
2091
|
+
top: `${virtualScroll.offsetY}px`,
|
|
2092
|
+
left: 0
|
|
2093
|
+
},
|
|
2094
|
+
children: itemsToRender.map(renderDisplayItem)
|
|
2095
|
+
}
|
|
2096
|
+
)
|
|
1968
2097
|
}
|
|
1969
|
-
)
|
|
2098
|
+
) : /* @__PURE__ */ jsx(
|
|
1970
2099
|
"div",
|
|
1971
2100
|
{
|
|
1972
2101
|
className: "body-grid ui-grid-canvas",
|
|
@@ -2078,8 +2207,27 @@ function mountUiGrid(container, props) {
|
|
|
2078
2207
|
return root;
|
|
2079
2208
|
}
|
|
2080
2209
|
|
|
2210
|
+
// src/vanillaAdapter.ts
|
|
2211
|
+
async function mountUiGridCustomElement(container, mountOptions) {
|
|
2212
|
+
const tagName = mountOptions.tagName ?? "ui-grid-element";
|
|
2213
|
+
if (mountOptions.ensureDefined) {
|
|
2214
|
+
await mountOptions.ensureDefined(tagName);
|
|
2215
|
+
}
|
|
2216
|
+
const element = document.createElement(tagName);
|
|
2217
|
+
element.options = mountOptions.options;
|
|
2218
|
+
container.replaceChildren(element);
|
|
2219
|
+
return {
|
|
2220
|
+
element,
|
|
2221
|
+
unmount: () => {
|
|
2222
|
+
if (container.firstElementChild === element) {
|
|
2223
|
+
container.replaceChildren();
|
|
2224
|
+
}
|
|
2225
|
+
}
|
|
2226
|
+
};
|
|
2227
|
+
}
|
|
2228
|
+
|
|
2081
2229
|
// src/rustWasmGridEngine.ts
|
|
2082
|
-
import { registerRustWasmGridEngine } from "@ornery/ui-grid";
|
|
2230
|
+
import { registerRustWasmGridEngine } from "@ornery/ui-grid-core";
|
|
2083
2231
|
var uiGridWasmModulePath = "../../../dist/ui-grid-wasm-web/ui_grid_wasm.js";
|
|
2084
2232
|
var uiGridWasmBinaryPath = "/dist/ui-grid-wasm-web/ui_grid_wasm_bg.wasm";
|
|
2085
2233
|
function registerReactUiGridWasmEngineFromModule(module) {
|
|
@@ -2099,7 +2247,7 @@ async function enableReactUiGridWasmEngine() {
|
|
|
2099
2247
|
}
|
|
2100
2248
|
|
|
2101
2249
|
// src/index.ts
|
|
2102
|
-
import { DEFAULT_GRID_LABELS } from "@ornery/ui-grid";
|
|
2250
|
+
import { DEFAULT_GRID_LABELS } from "@ornery/ui-grid-core";
|
|
2103
2251
|
export {
|
|
2104
2252
|
DEFAULT_GRID_LABELS,
|
|
2105
2253
|
UiGrid,
|
|
@@ -2109,6 +2257,7 @@ export {
|
|
|
2109
2257
|
enableReactUiGridWasmEngine,
|
|
2110
2258
|
formatPaginationSummary,
|
|
2111
2259
|
mountUiGrid,
|
|
2260
|
+
mountUiGridCustomElement,
|
|
2112
2261
|
orderVisibleColumns,
|
|
2113
2262
|
registerReactUiGridWasmEngineFromModule,
|
|
2114
2263
|
resolveBenchmarkIterations,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rustWasmGridEngine.d.ts","sourceRoot":"","sources":["../src/rustWasmGridEngine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA4B,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"rustWasmGridEngine.d.ts","sourceRoot":"","sources":["../src/rustWasmGridEngine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA4B,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAMrF,KAAK,gBAAgB,GAAG;IACtB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,cAAc,CAAC;CACrD,CAAC;AAEF,wBAAgB,uCAAuC,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAMtF;AAED,wBAAsB,2BAA2B,IAAI,OAAO,CAAC,IAAI,CAAC,CAIjE"}
|
package/dist/useGridState.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { UiGridApi, GridOptions, GridColumnDef, GridRow, GridBenchmarkResult, GridCellPosition, GridLabels, SortState } from '@ornery/ui-grid';
|
|
2
|
-
import type { DisplayItem, GroupItem, ExpandableItem, RowItem, PipelineResult, GridInfiniteScrollState, GridCellTemplateContext, GridExpandableTemplateContext } from '@ornery/ui-grid';
|
|
1
|
+
import { UiGridApi, GridOptions, GridColumnDef, GridRow, GridBenchmarkResult, GridCellPosition, GridLabels, SortState } from '@ornery/ui-grid-core';
|
|
2
|
+
import type { DisplayItem, GroupItem, ExpandableItem, RowItem, PipelineResult, GridInfiniteScrollState, GridCellTemplateContext, GridExpandableTemplateContext } from '@ornery/ui-grid-core';
|
|
3
3
|
export interface UseGridStateResult {
|
|
4
4
|
pipeline: PipelineResult;
|
|
5
5
|
visibleColumns: GridColumnDef[];
|
|
@@ -99,6 +99,7 @@ export interface UseGridStateResult {
|
|
|
99
99
|
toggleRowExpansion: (row: GridRow, event?: React.MouseEvent) => void;
|
|
100
100
|
toggleTreeRow: (row: GridRow, event?: React.MouseEvent) => void;
|
|
101
101
|
moveColumn: (fromIndex: number, toIndex: number) => void;
|
|
102
|
+
moveVisibleColumn: (columnName: string, targetColumnName: string) => void;
|
|
102
103
|
nextPage: () => void;
|
|
103
104
|
previousPage: () => void;
|
|
104
105
|
onPageSizeChange: (value: string) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useGridState.d.ts","sourceRoot":"","sources":["../src/useGridState.ts"],"names":[],"mappings":"AASA,OAAO,EAEL,SAAS,EAET,WAAW,EACX,aAAa,EACb,OAAO,EAEP,mBAAmB,EACnB,gBAAgB,EAChB,UAAU,EACV,SAAS,EA8GV,MAAM,
|
|
1
|
+
{"version":3,"file":"useGridState.d.ts","sourceRoot":"","sources":["../src/useGridState.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { GridOptions } from '@ornery/ui-grid-core';
|
|
2
|
+
export interface MountUiGridCustomElementOptions {
|
|
3
|
+
options: GridOptions;
|
|
4
|
+
tagName?: string;
|
|
5
|
+
ensureDefined?: (tagName: string) => Promise<void> | void;
|
|
6
|
+
}
|
|
7
|
+
export interface MountedUiGridCustomElement {
|
|
8
|
+
element: HTMLElement & {
|
|
9
|
+
options: GridOptions;
|
|
10
|
+
};
|
|
11
|
+
unmount: () => void;
|
|
12
|
+
}
|
|
13
|
+
export declare function mountUiGridCustomElement(container: Element, mountOptions: MountUiGridCustomElementOptions): Promise<MountedUiGridCustomElement>;
|
|
14
|
+
//# sourceMappingURL=vanillaAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vanillaAdapter.d.ts","sourceRoot":"","sources":["../src/vanillaAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD,MAAM,WAAW,+BAA+B;IAC9C,OAAO,EAAE,WAAW,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAC3D;AAED,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,WAAW,GAAG;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,CAAC;IAChD,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAsB,wBAAwB,CAC5C,SAAS,EAAE,OAAO,EAClB,YAAY,EAAE,+BAA+B,GAC5C,OAAO,CAAC,0BAA0B,CAAC,CAmBrC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ornery/ui-grid-react",
|
|
3
|
-
"version": "0.1.
|
|
4
|
-
"description": "React wrapper for @ornery/ui-grid",
|
|
3
|
+
"version": "0.1.7-hotfix-1",
|
|
4
|
+
"description": "React wrapper for @ornery/ui-grid-core",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.mjs",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
@@ -14,27 +14,27 @@
|
|
|
14
14
|
"./styles": "./dist/ui-grid.css"
|
|
15
15
|
},
|
|
16
16
|
"peerDependencies": {
|
|
17
|
+
"@ornery/ui-grid-core": "^0.1.7",
|
|
17
18
|
"react": "^18.0.0 || ^19.0.0",
|
|
18
|
-
"react-dom": "^18.0.0 || ^19.0.0"
|
|
19
|
-
"@ornery/ui-grid": "^0.1.6"
|
|
19
|
+
"react-dom": "^18.0.0 || ^19.0.0"
|
|
20
20
|
},
|
|
21
21
|
"devDependencies": {
|
|
22
|
-
"@ornery/ui-grid": "file:../ui-grid",
|
|
23
|
-
"react": "^19.1.0",
|
|
24
|
-
"react-dom": "^19.1.0",
|
|
22
|
+
"@ornery/ui-grid-core": "file:../ui-grid-core",
|
|
25
23
|
"@testing-library/react": "^16.0.0",
|
|
26
24
|
"@types/react": "^19.0.0",
|
|
27
25
|
"@types/react-dom": "^19.0.0",
|
|
28
|
-
"
|
|
29
|
-
"vitest": "^4.1.0",
|
|
26
|
+
"@vitejs/plugin-react": "^4.0.0",
|
|
30
27
|
"jsdom": "^26.0.0",
|
|
28
|
+
"react": "^19.1.0",
|
|
29
|
+
"react-dom": "^19.1.0",
|
|
31
30
|
"tsup": "^8.0.0",
|
|
31
|
+
"typescript": "~5.8.0",
|
|
32
32
|
"vite": "^6.0.0",
|
|
33
|
-
"
|
|
33
|
+
"vitest": "^4.1.0"
|
|
34
34
|
},
|
|
35
35
|
"scripts": {
|
|
36
36
|
"start": "vite serve demo --config demo/vite.config.ts",
|
|
37
|
-
"build": "npm run build
|
|
37
|
+
"build": "npm run build --prefix ../ui-grid-core && tsup src/index.ts --format esm,cjs --tsconfig tsconfig.build.json --external react --external react-dom --external @ornery/ui-grid-core && tsc -p tsconfig.dts.json",
|
|
38
38
|
"test": "vitest run",
|
|
39
39
|
"test:watch": "vitest"
|
|
40
40
|
}
|