@1771technologies/lytenyte-pro 1.0.0-beta.8 → 1.0.0-beta.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/+types.d.ts +4 -4
- package/dist/cell-selection/cell-selection-driver.js +9 -1
- package/dist/icons/index.d.ts +1 -1
- package/dist/icons/index.js +1 -1
- package/dist/row-data-source-client/use-client-data-source-paginated.js +4 -5
- package/dist/row-data-source-client/use-client-data-source.js +4 -5
- package/dist/row-data-source-client/use-client-tree-data-source.js +4 -5
- package/package.json +7 -7
package/dist/+types.d.ts
CHANGED
|
@@ -1708,9 +1708,9 @@ export interface ClientRowDataSourceParams<T> {
|
|
|
1708
1708
|
* Callback that transforms a column in-filter item before it's applied.
|
|
1709
1709
|
*/
|
|
1710
1710
|
readonly transformInFilterItem?: (params: {
|
|
1711
|
-
field: unknown;
|
|
1712
1711
|
column: Column<T>;
|
|
1713
|
-
|
|
1712
|
+
values: unknown[];
|
|
1713
|
+
}) => FilterInFilterItem[];
|
|
1714
1714
|
}
|
|
1715
1715
|
/**
|
|
1716
1716
|
* Parameters for initializing a tree-structured data source in LyteNyte Grid.
|
|
@@ -1744,9 +1744,9 @@ export interface ClientTreeDataSourceParams<T> {
|
|
|
1744
1744
|
* Callback that transforms a column in-filter item before it's applied.
|
|
1745
1745
|
*/
|
|
1746
1746
|
readonly transformInFilterItem?: (params: {
|
|
1747
|
-
field: unknown;
|
|
1748
1747
|
column: Column<T>;
|
|
1749
|
-
|
|
1748
|
+
values: unknown[];
|
|
1749
|
+
}) => FilterInFilterItem[];
|
|
1750
1750
|
/**
|
|
1751
1751
|
* Returns the hierarchical path to group a given data row in tree mode.
|
|
1752
1752
|
*/
|
|
@@ -2,7 +2,7 @@ import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import { useEffect } from "react";
|
|
3
3
|
import { useGridRoot } from "../context";
|
|
4
4
|
import { useEdgeScroll } from "./use-edge-scroll";
|
|
5
|
-
import { getClientX, getClientY, getRelativeXPosition, getRelativeYPosition, } from "@1771technologies/lytenyte-js-utils";
|
|
5
|
+
import { equal, getClientX, getClientY, getRelativeXPosition, getRelativeYPosition, } from "@1771technologies/lytenyte-js-utils";
|
|
6
6
|
import { getNearestFocusable, getPositionFromFocusable } from "@1771technologies/lytenyte-shared";
|
|
7
7
|
import { isHTMLElement } from "@1771technologies/lytenyte-dom-utils";
|
|
8
8
|
import { updateAdditiveCellSelection } from "./update-additive-cell-selection";
|
|
@@ -238,8 +238,16 @@ export function CellSelectionDriver() {
|
|
|
238
238
|
};
|
|
239
239
|
}, [cancelX, cancelY, edgeScrollX, edgeScrollY, grid, mode, viewport]);
|
|
240
240
|
useEffect(() => {
|
|
241
|
+
let prev = null;
|
|
241
242
|
return grid.internal.focusActive.watch(() => {
|
|
242
243
|
const focus = grid.internal.focusActive.get();
|
|
244
|
+
// If the focus is null, then we should just return. This keeps the existing selection
|
|
245
|
+
// in place - for things like copy and paste.
|
|
246
|
+
if (!focus)
|
|
247
|
+
return;
|
|
248
|
+
if (equal(prev, focus))
|
|
249
|
+
return;
|
|
250
|
+
prev = focus;
|
|
243
251
|
if (focus?.kind !== "cell" && focus?.kind !== "full-width") {
|
|
244
252
|
grid.state.cellSelections.set([]);
|
|
245
253
|
grid.internal.cellSelectionPivot.set(null);
|
package/dist/icons/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { AddIcon, AddSmallIcon, AggregateIcon, AggregationIcon, ArchiveIcon, ArrowDownIcon, ArrowLeftIcon, ArrowRightCurvedIcon, ArrowRightIcon, ArrowUpIcon, AutosizeIcon, BackIcon, BookmarkIcon, BooleanIcon, CalendarIcon, ChartIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, Close2Icon, CloseIcon, CollapseGroupIcon, Columns2Icon, ColumnsIcon, CopyIcon, CornerRadiusIcon, CustomizeThemeIcon, CutIcon, DeleteIcon, DocsIcon, DownloadIcon, Drag2Icon, DragDotsIcon, DragDotsSmallIcon, DragIcon, DuplicateIcon, EditIcon, EmailIcon, ExpandGroupIcon, ExpandIcon, Expression2Icon, ExpressionIcon, ExternalLinkIcon, File2Icon, FileIcon, FilterIcon, FolderIcon, GlobeIcon, GridViewIcon, GroupByColIcon, HamburgerIcon, HelpIcon, HiddenIcon, HistoryIcon, ImportIcon, LinkIcon, ListViewIcon, LoadingIcon, LocationIcon, ModalIcon, MoreIcon, MoreVerticalIcon, MultilineIcon, NumberIcon, PasteIcon, PieIcon, PinColumnIcon, RefreshIcon, SearchIcon, SettingsIcon, ShareIcon, SingleLineIcon, Sort2Icon, SortIcon, SpacingHIcon, SpacingIcon, StickColumnIcon, SwapIcon, TagIcon, TaskIcon, TextIcon, ThemesIcon, Tickmark2Icon, TickmarkIcon, TimeIcon, UploadIcon, UserIcon, ViewIcon, } from "@1771technologies/lytenyte-core/icons";
|
|
1
|
+
export { AddIcon, AddSmallIcon, AggregateIcon, AggregationIcon, ArchiveIcon, ArrowDownIcon, ArrowLeftIcon, ArrowRightCurvedIcon, ArrowRightIcon, ArrowUpIcon, AutosizeIcon, BackIcon, BookmarkIcon, BooleanIcon, CalendarIcon, ChartIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, Close2Icon, CloseIcon, CollapseGroupIcon, Columns2Icon, ColumnsIcon, CopyIcon, CornerRadiusIcon, CustomizeThemeIcon, CutIcon, CsvIcon, DeleteIcon, DocsIcon, DownloadIcon, Drag2Icon, DragDotsIcon, DragDotsSmallIcon, DragIcon, DuplicateIcon, EditIcon, EmailIcon, ExcelIcon, ExpandGroupIcon, ExpandIcon, Expression2Icon, ExpressionIcon, ExternalLinkIcon, File2Icon, FileIcon, FilterIcon, FolderIcon, GlobeIcon, GridViewIcon, GroupByColIcon, HamburgerIcon, HelpIcon, HiddenIcon, HistoryIcon, ImportIcon, LinkIcon, ListViewIcon, LoadingIcon, LocationIcon, ModalIcon, MoreIcon, MoreVerticalIcon, MultilineIcon, NumberIcon, PasteIcon, PieIcon, PinColumnIcon, RefreshIcon, SearchIcon, SettingsIcon, ShareIcon, SingleLineIcon, Sort2Icon, SortIcon, SpacingHIcon, SpacingIcon, StickColumnIcon, SwapIcon, TagIcon, TaskIcon, TextIcon, ThemesIcon, Tickmark2Icon, TickmarkIcon, TimeIcon, UploadIcon, UserIcon, ViewIcon, } from "@1771technologies/lytenyte-core/icons";
|
package/dist/icons/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { AddIcon, AddSmallIcon, AggregateIcon, AggregationIcon, ArchiveIcon, ArrowDownIcon, ArrowLeftIcon, ArrowRightCurvedIcon, ArrowRightIcon, ArrowUpIcon, AutosizeIcon, BackIcon, BookmarkIcon, BooleanIcon, CalendarIcon, ChartIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, Close2Icon, CloseIcon, CollapseGroupIcon, Columns2Icon, ColumnsIcon, CopyIcon, CornerRadiusIcon, CustomizeThemeIcon, CutIcon, DeleteIcon, DocsIcon, DownloadIcon, Drag2Icon, DragDotsIcon, DragDotsSmallIcon, DragIcon, DuplicateIcon, EditIcon, EmailIcon, ExpandGroupIcon, ExpandIcon, Expression2Icon, ExpressionIcon, ExternalLinkIcon, File2Icon, FileIcon, FilterIcon, FolderIcon, GlobeIcon, GridViewIcon, GroupByColIcon, HamburgerIcon, HelpIcon, HiddenIcon, HistoryIcon, ImportIcon, LinkIcon, ListViewIcon, LoadingIcon, LocationIcon, ModalIcon, MoreIcon, MoreVerticalIcon, MultilineIcon, NumberIcon, PasteIcon, PieIcon, PinColumnIcon, RefreshIcon, SearchIcon, SettingsIcon, ShareIcon, SingleLineIcon, Sort2Icon, SortIcon, SpacingHIcon, SpacingIcon, StickColumnIcon, SwapIcon, TagIcon, TaskIcon, TextIcon, ThemesIcon, Tickmark2Icon, TickmarkIcon, TimeIcon, UploadIcon, UserIcon, ViewIcon, } from "@1771technologies/lytenyte-core/icons";
|
|
1
|
+
export { AddIcon, AddSmallIcon, AggregateIcon, AggregationIcon, ArchiveIcon, ArrowDownIcon, ArrowLeftIcon, ArrowRightCurvedIcon, ArrowRightIcon, ArrowUpIcon, AutosizeIcon, BackIcon, BookmarkIcon, BooleanIcon, CalendarIcon, ChartIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, Close2Icon, CloseIcon, CollapseGroupIcon, Columns2Icon, ColumnsIcon, CopyIcon, CornerRadiusIcon, CustomizeThemeIcon, CutIcon, CsvIcon, DeleteIcon, DocsIcon, DownloadIcon, Drag2Icon, DragDotsIcon, DragDotsSmallIcon, DragIcon, DuplicateIcon, EditIcon, EmailIcon, ExcelIcon, ExpandGroupIcon, ExpandIcon, Expression2Icon, ExpressionIcon, ExternalLinkIcon, File2Icon, FileIcon, FilterIcon, FolderIcon, GlobeIcon, GridViewIcon, GroupByColIcon, HamburgerIcon, HelpIcon, HiddenIcon, HistoryIcon, ImportIcon, LinkIcon, ListViewIcon, LoadingIcon, LocationIcon, ModalIcon, MoreIcon, MoreVerticalIcon, MultilineIcon, NumberIcon, PasteIcon, PieIcon, PinColumnIcon, RefreshIcon, SearchIcon, SettingsIcon, ShareIcon, SingleLineIcon, Sort2Icon, SortIcon, SpacingHIcon, SpacingIcon, StickColumnIcon, SwapIcon, TagIcon, TaskIcon, TextIcon, ThemesIcon, Tickmark2Icon, TickmarkIcon, TimeIcon, UploadIcon, UserIcon, ViewIcon, } from "@1771technologies/lytenyte-core/icons";
|
|
@@ -375,11 +375,10 @@ export function makeClientDataSourcePaginated(p) {
|
|
|
375
375
|
const field = grid.api.columnField(c, row);
|
|
376
376
|
return field;
|
|
377
377
|
}));
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
});
|
|
378
|
+
if (p.transformInFilterItem) {
|
|
379
|
+
return p.transformInFilterItem({ column: c, values: [...values] });
|
|
380
|
+
}
|
|
381
|
+
return [...values].map((x) => ({ id: `${x}`, label: `${x}`, value: x }));
|
|
383
382
|
},
|
|
384
383
|
rowAreAllSelected: (rowId) => {
|
|
385
384
|
const g = rdsStore.get(grid$);
|
|
@@ -500,11 +500,10 @@ export function makeClientDataSource(p) {
|
|
|
500
500
|
const field = grid.api.columnField(c, row);
|
|
501
501
|
return field;
|
|
502
502
|
}));
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
});
|
|
503
|
+
if (p.transformInFilterItem) {
|
|
504
|
+
return p.transformInFilterItem({ column: c, values: [...values] });
|
|
505
|
+
}
|
|
506
|
+
return [...values].map((x) => ({ id: `${x}`, label: `${x}`, value: x }));
|
|
508
507
|
},
|
|
509
508
|
rowAdd: (newRows, place = "end") => {
|
|
510
509
|
rdsStore.set(data, (prev) => {
|
|
@@ -346,11 +346,10 @@ export function makeClientTreeDataSource(p) {
|
|
|
346
346
|
const field = grid.api.columnField(c, row);
|
|
347
347
|
return field;
|
|
348
348
|
}));
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
});
|
|
349
|
+
if (p.transformInFilterItem) {
|
|
350
|
+
return p.transformInFilterItem({ column: c, values: [...values] });
|
|
351
|
+
}
|
|
352
|
+
return [...values].map((x) => ({ id: `${x}`, label: `${x}`, value: x }));
|
|
354
353
|
},
|
|
355
354
|
rowAdd: (newRows, place = "end") => {
|
|
356
355
|
rdsStore.set(data, (prev) => {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@1771technologies/lytenyte-pro",
|
|
3
3
|
"description": "Blazingly fast headless React data grid with 100s of features.",
|
|
4
|
-
"version": "1.0.0-beta.
|
|
4
|
+
"version": "1.0.0-beta.9",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "COMMERCIAL",
|
|
7
7
|
"files": [
|
|
@@ -49,12 +49,12 @@
|
|
|
49
49
|
},
|
|
50
50
|
"dependencies": {
|
|
51
51
|
"@1771technologies/atom": "^1.0.2",
|
|
52
|
-
"@1771technologies/lytenyte-
|
|
53
|
-
"@1771technologies/lytenyte-
|
|
54
|
-
"@1771technologies/lytenyte-
|
|
55
|
-
"@1771technologies/lytenyte-
|
|
56
|
-
"@1771technologies/lytenyte-
|
|
57
|
-
"@1771technologies/lytenyte-
|
|
52
|
+
"@1771technologies/lytenyte-core": "1.0.0-beta.9",
|
|
53
|
+
"@1771technologies/lytenyte-dom-utils": "1.0.0-beta.9",
|
|
54
|
+
"@1771technologies/lytenyte-shared": "1.0.0-beta.9",
|
|
55
|
+
"@1771technologies/lytenyte-js-utils": "1.0.0-beta.9",
|
|
56
|
+
"@1771technologies/lytenyte-react-hooks": "1.0.0-beta.9",
|
|
57
|
+
"@1771technologies/lytenyte-dragon": "1.0.0-beta.9"
|
|
58
58
|
},
|
|
59
59
|
"peerDependencies": {
|
|
60
60
|
"react": "^18.0.0 || ^19.0.0",
|