@vuu-ui/vuu-table 0.9.2 → 0.10.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.
- package/cjs/CellFocusState.js +1 -1
- package/cjs/CellFocusState.js.map +1 -1
- package/cjs/Row.js +3 -1
- package/cjs/Row.js.map +1 -1
- package/cjs/Table.css.js +1 -1
- package/cjs/Table.js +32 -0
- package/cjs/Table.js.map +1 -1
- package/cjs/VirtualColSpan.js.map +1 -1
- package/cjs/bulk-edit/{BulkEditPanelDialog.js → BulkEditDialog.js} +13 -8
- package/cjs/bulk-edit/BulkEditDialog.js.map +1 -0
- package/cjs/bulk-edit/BulkEditPanel.js.map +1 -1
- package/cjs/bulk-edit/BulkEditRow.js.map +1 -1
- package/cjs/bulk-edit/useBulkEditPanel.js +12 -8
- package/cjs/bulk-edit/useBulkEditPanel.js.map +1 -1
- package/cjs/bulk-edit/useBulkEditRow.js +1 -1
- package/cjs/bulk-edit/useBulkEditRow.js.map +1 -1
- package/cjs/cell-block/CellBlock.js.map +1 -1
- package/cjs/cell-block/cellblock-utils.js.map +1 -1
- package/cjs/cell-block/useCellBlockSelection.js.map +1 -1
- package/cjs/cell-renderers/checkbox-cell/CheckboxCell.js.map +1 -1
- package/cjs/cell-renderers/checkbox-row-selector/CheckboxRowSelectorCell.js.map +1 -1
- package/cjs/cell-renderers/input-cell/InputCell.js.map +1 -1
- package/cjs/cell-renderers/toggle-cell/ToggleCell.js.map +1 -1
- package/cjs/column-header-pill/ColumnHeaderPill.css.js +1 -1
- package/cjs/column-header-pill/ColumnHeaderPill.js.map +1 -1
- package/cjs/column-header-pill/GroupColumnPill.js.map +1 -1
- package/cjs/column-header-pill/SortIndicator.js.map +1 -1
- package/cjs/column-menu/ColumnMenu.js.map +1 -1
- package/cjs/column-resizing/ColumnResizer.js.map +1 -1
- package/cjs/column-resizing/useTableColumnResize.js.map +1 -1
- package/cjs/context-menu/buildContextMenuDescriptors.js.map +1 -1
- package/cjs/context-menu/useHandleTableContextMenu.js.map +1 -1
- package/cjs/header-cell/GroupHeaderCell.js.map +1 -1
- package/cjs/header-cell/HeaderCell.js.map +1 -1
- package/cjs/index.js +4 -2
- package/cjs/index.js.map +1 -1
- package/cjs/moving-window.js +1 -1
- package/cjs/moving-window.js.map +1 -1
- package/cjs/pagination/PaginationControl.js.map +1 -1
- package/cjs/pagination/usePagination.js.map +1 -1
- package/cjs/table-cell/TableCell.js +8 -3
- package/cjs/table-cell/TableCell.js.map +1 -1
- package/cjs/table-cell/TableGroupCell.css.js +1 -1
- package/cjs/table-cell/TableGroupCell.js +5 -2
- package/cjs/table-cell/TableGroupCell.js.map +1 -1
- package/cjs/table-config.js.map +1 -1
- package/cjs/table-dom-utils.js.map +1 -1
- package/cjs/table-header/HeaderProvider.js.map +1 -1
- package/cjs/table-header/TableHeader.js +6 -9
- package/cjs/table-header/TableHeader.js.map +1 -1
- package/cjs/table-header/useTableHeader.js.map +1 -1
- package/cjs/useCell.js.map +1 -1
- package/cjs/useCellEditing.js.map +1 -1
- package/cjs/useCellFocus.js.map +1 -1
- package/cjs/useControlledTableNavigation.js.map +1 -1
- package/cjs/useDataSource.js +29 -3
- package/cjs/useDataSource.js.map +1 -1
- package/cjs/useEditableCell.js.map +1 -1
- package/cjs/useHighlighting.js +33 -0
- package/cjs/useHighlighting.js.map +1 -0
- package/cjs/useKeyboardNavigation.js.map +1 -1
- package/cjs/useMeasuredHeight.js.map +1 -1
- package/cjs/useRowClassNameGenerators.js.map +1 -1
- package/cjs/useSelection.js +2 -1
- package/cjs/useSelection.js.map +1 -1
- package/cjs/useTable.js +28 -12
- package/cjs/useTable.js.map +1 -1
- package/cjs/useTableAndColumnSettings.js.map +1 -1
- package/cjs/useTableContextMenu.js.map +1 -1
- package/cjs/useTableModel.js +14 -6
- package/cjs/useTableModel.js.map +1 -1
- package/cjs/useTableScroll.js.map +1 -1
- package/cjs/useTableViewport.js.map +1 -1
- package/esm/CellFocusState.js +1 -1
- package/esm/CellFocusState.js.map +1 -1
- package/esm/Row.js +3 -1
- package/esm/Row.js.map +1 -1
- package/esm/Table.css.js +1 -1
- package/esm/Table.js +33 -1
- package/esm/Table.js.map +1 -1
- package/esm/VirtualColSpan.js.map +1 -1
- package/esm/bulk-edit/{BulkEditPanelDialog.js → BulkEditDialog.js} +14 -9
- package/esm/bulk-edit/BulkEditDialog.js.map +1 -0
- package/esm/bulk-edit/BulkEditPanel.js.map +1 -1
- package/esm/bulk-edit/BulkEditRow.js.map +1 -1
- package/esm/bulk-edit/useBulkEditPanel.js +12 -8
- package/esm/bulk-edit/useBulkEditPanel.js.map +1 -1
- package/esm/bulk-edit/useBulkEditRow.js +1 -1
- package/esm/bulk-edit/useBulkEditRow.js.map +1 -1
- package/esm/cell-block/CellBlock.js.map +1 -1
- package/esm/cell-block/cellblock-utils.js.map +1 -1
- package/esm/cell-block/useCellBlockSelection.js.map +1 -1
- package/esm/cell-renderers/checkbox-cell/CheckboxCell.js.map +1 -1
- package/esm/cell-renderers/checkbox-row-selector/CheckboxRowSelectorCell.js.map +1 -1
- package/esm/cell-renderers/input-cell/InputCell.js.map +1 -1
- package/esm/cell-renderers/toggle-cell/ToggleCell.js.map +1 -1
- package/esm/column-header-pill/ColumnHeaderPill.css.js +1 -1
- package/esm/column-header-pill/ColumnHeaderPill.js.map +1 -1
- package/esm/column-header-pill/GroupColumnPill.js.map +1 -1
- package/esm/column-header-pill/SortIndicator.js.map +1 -1
- package/esm/column-menu/ColumnMenu.js.map +1 -1
- package/esm/column-resizing/ColumnResizer.js.map +1 -1
- package/esm/column-resizing/useTableColumnResize.js.map +1 -1
- package/esm/context-menu/buildContextMenuDescriptors.js.map +1 -1
- package/esm/context-menu/useHandleTableContextMenu.js.map +1 -1
- package/esm/header-cell/GroupHeaderCell.js.map +1 -1
- package/esm/header-cell/HeaderCell.js.map +1 -1
- package/esm/index.js +2 -1
- package/esm/index.js.map +1 -1
- package/esm/moving-window.js +1 -1
- package/esm/moving-window.js.map +1 -1
- package/esm/pagination/PaginationControl.js.map +1 -1
- package/esm/pagination/usePagination.js.map +1 -1
- package/esm/table-cell/TableCell.js +8 -3
- package/esm/table-cell/TableCell.js.map +1 -1
- package/esm/table-cell/TableGroupCell.css.js +1 -1
- package/esm/table-cell/TableGroupCell.js +5 -2
- package/esm/table-cell/TableGroupCell.js.map +1 -1
- package/esm/table-config.js.map +1 -1
- package/esm/table-dom-utils.js.map +1 -1
- package/esm/table-header/HeaderProvider.js.map +1 -1
- package/esm/table-header/TableHeader.js +6 -9
- package/esm/table-header/TableHeader.js.map +1 -1
- package/esm/table-header/useTableHeader.js.map +1 -1
- package/esm/useCell.js.map +1 -1
- package/esm/useCellEditing.js.map +1 -1
- package/esm/useCellFocus.js.map +1 -1
- package/esm/useControlledTableNavigation.js.map +1 -1
- package/esm/useDataSource.js +29 -3
- package/esm/useDataSource.js.map +1 -1
- package/esm/useEditableCell.js.map +1 -1
- package/esm/useHighlighting.js +31 -0
- package/esm/useHighlighting.js.map +1 -0
- package/esm/useKeyboardNavigation.js.map +1 -1
- package/esm/useMeasuredHeight.js.map +1 -1
- package/esm/useRowClassNameGenerators.js.map +1 -1
- package/esm/useSelection.js +2 -1
- package/esm/useSelection.js.map +1 -1
- package/esm/useTable.js +28 -12
- package/esm/useTable.js.map +1 -1
- package/esm/useTableAndColumnSettings.js.map +1 -1
- package/esm/useTableContextMenu.js.map +1 -1
- package/esm/useTableModel.js +14 -6
- package/esm/useTableModel.js.map +1 -1
- package/esm/useTableScroll.js.map +1 -1
- package/esm/useTableViewport.js.map +1 -1
- package/package.json +12 -12
- package/types/Row.d.ts +2 -3
- package/types/Table.d.ts +46 -3
- package/types/VirtualColSpan.d.ts +0 -1
- package/types/bulk-edit/BulkEditDialog.d.ts +9 -0
- package/types/bulk-edit/BulkEditRow.d.ts +1 -1
- package/types/bulk-edit/index.d.ts +1 -1
- package/types/bulk-edit/useBulkEditRow.d.ts +1 -1
- package/types/cell-renderers/checkbox-cell/CheckboxCell.d.ts +1 -2
- package/types/cell-renderers/checkbox-row-selector/CheckboxRowSelectorCell.d.ts +0 -1
- package/types/cell-renderers/input-cell/InputCell.d.ts +1 -2
- package/types/cell-renderers/toggle-cell/ToggleCell.d.ts +0 -1
- package/types/column-header-pill/ColumnHeaderPill.d.ts +1 -1
- package/types/column-header-pill/GroupColumnPill.d.ts +1 -2
- package/types/column-header-pill/SortIndicator.d.ts +1 -2
- package/types/column-menu/ColumnMenu.d.ts +1 -1
- package/types/column-resizing/ColumnResizer.d.ts +1 -2
- package/types/header-cell/GroupHeaderCell.d.ts +1 -2
- package/types/header-cell/HeaderCell.d.ts +1 -2
- package/types/index.d.ts +1 -0
- package/types/table-cell/TableCell.d.ts +1 -2
- package/types/table-cell/TableGroupCell.d.ts +1 -2
- package/types/table-header/HeaderProvider.d.ts +4 -2
- package/types/table-header/TableHeader.d.ts +1 -2
- package/types/table-header/useTableHeader.d.ts +0 -1
- package/types/useCell.d.ts +0 -1
- package/types/useControlledTableNavigation.d.ts +1 -1
- package/types/useDataSource.d.ts +4 -6
- package/types/useHighlighting.d.ts +1 -0
- package/types/useSelection.d.ts +3 -4
- package/types/useTable.d.ts +13 -13
- package/types/useTableModel.d.ts +13 -7
- package/cjs/bulk-edit/BulkEditPanelDialog.js.map +0 -1
- package/esm/bulk-edit/BulkEditPanelDialog.js.map +0 -1
- package/types/bulk-edit/BulkEditPanelDialog.d.ts +0 -10
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
import { RuntimeColumnDescriptor } from "@vuu-ui/vuu-table-types";
|
|
3
2
|
import { ColumnHeaderPillProps } from "./ColumnHeaderPill";
|
|
4
3
|
export interface GroupColumnPillProps extends ColumnHeaderPillProps {
|
|
5
4
|
column: RuntimeColumnDescriptor;
|
|
6
5
|
}
|
|
7
|
-
export declare const GroupColumnPill: ({ column, ...columnHeaderProps }: GroupColumnPillProps) => JSX.Element;
|
|
6
|
+
export declare const GroupColumnPill: ({ column, ...columnHeaderProps }: GroupColumnPillProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
import { RuntimeColumnDescriptor } from "@vuu-ui/vuu-table-types";
|
|
3
2
|
export interface SortIndicatorProps {
|
|
4
3
|
column: RuntimeColumnDescriptor;
|
|
5
4
|
}
|
|
6
|
-
export declare const SortIndicator: ({ column }: SortIndicatorProps) => JSX.Element | null;
|
|
5
|
+
export declare const SortIndicator: ({ column }: SortIndicatorProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -3,4 +3,4 @@ import { HTMLAttributes } from "react";
|
|
|
3
3
|
export interface ColumnMenuProps extends HTMLAttributes<HTMLSpanElement> {
|
|
4
4
|
column: RuntimeColumnDescriptor;
|
|
5
5
|
}
|
|
6
|
-
export declare const ColumnMenu: ({ className, column }: ColumnMenuProps) => JSX.Element;
|
|
6
|
+
export declare const ColumnMenu: ({ className, column }: ColumnMenuProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
export interface TableColumnResizerProps {
|
|
3
2
|
onDrag: (evt: MouseEvent, moveBy: number, totalDistanceMoved: number) => void;
|
|
4
3
|
onDragEnd: (evt: MouseEvent, totalDistanceMoved: number) => void;
|
|
5
4
|
onDragStart: (evt: React.MouseEvent) => void;
|
|
6
5
|
}
|
|
7
|
-
export declare const ColumnResizer: ({ onDrag, onDragEnd, onDragStart, }: TableColumnResizerProps) => JSX.Element;
|
|
6
|
+
export declare const ColumnResizer: ({ onDrag, onDragEnd, onDragStart, }: TableColumnResizerProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
import { ColumnDescriptor, GroupColumnDescriptor, HeaderCellProps, RuntimeColumnDescriptor } from "@vuu-ui/vuu-table-types";
|
|
3
2
|
export interface GroupHeaderCellProps extends Omit<HeaderCellProps, "onDragStart" | "onDrag" | "onDragEnd"> {
|
|
4
3
|
column: GroupColumnDescriptor;
|
|
5
4
|
onMoveColumn?: (columns: ColumnDescriptor[]) => void;
|
|
6
5
|
onRemoveColumn: (column: RuntimeColumnDescriptor) => void;
|
|
7
6
|
}
|
|
8
|
-
export declare const GroupHeaderCell: ({ column: groupColumn, className: classNameProp, onMoveColumn, onRemoveColumn, onResize, ...htmlAttributes }: GroupHeaderCellProps) => JSX.Element;
|
|
7
|
+
export declare const GroupHeaderCell: ({ column: groupColumn, className: classNameProp, onMoveColumn, onRemoveColumn, onResize, ...htmlAttributes }: GroupHeaderCellProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
import { HeaderCellProps } from "@vuu-ui/vuu-table-types";
|
|
3
|
-
export declare const HeaderCell: ({ className: classNameProp, column, onClick, onResize, showMenu, ...htmlAttributes }: HeaderCellProps) => JSX.Element;
|
|
2
|
+
export declare const HeaderCell: ({ className: classNameProp, column, onClick, onResize, showMenu, ...htmlAttributes }: HeaderCellProps) => import("react/jsx-runtime").JSX.Element;
|
package/types/index.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ export * from "./table-config";
|
|
|
8
8
|
export * from "./table-header";
|
|
9
9
|
export * from "./useControlledTableNavigation";
|
|
10
10
|
export * from "./useEditableCell";
|
|
11
|
+
export * from "./useHighlighting";
|
|
11
12
|
export * from "./useKeyboardNavigation";
|
|
12
13
|
export * from "./useTableModel";
|
|
13
14
|
export * from "./useTableScroll";
|
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
import type { TableCellProps } from "@vuu-ui/vuu-table-types";
|
|
3
|
-
export declare const TableCell: ({ column, columnMap, onClick, onDataEdited, row, }: TableCellProps) => JSX.Element;
|
|
2
|
+
export declare const TableCell: ({ column, columnMap, onClick, onDataEdited, row, searchPattern, }: TableCellProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
import { TableCellProps } from "@vuu-ui/vuu-table-types";
|
|
3
|
-
export declare const TableGroupCell: ({ column, columnMap, onClick, row, }: TableCellProps) => JSX.Element;
|
|
2
|
+
export declare const TableGroupCell: ({ column, columnMap, onClick, row, searchPattern, }: TableCellProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { BaseRowProps } from "@vuu-ui/vuu-table-types";
|
|
2
|
-
import { FC } from "react";
|
|
3
|
-
export declare const HeaderProvider: FC<BaseRowProps
|
|
2
|
+
import { FC, ReactNode } from "react";
|
|
3
|
+
export declare const HeaderProvider: FC<BaseRowProps & {
|
|
4
|
+
children: ReactNode;
|
|
5
|
+
}>;
|
|
4
6
|
export declare const useHeaderProps: () => BaseRowProps;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
import { VuuSortType } from "@vuu-ui/vuu-protocol-types";
|
|
3
2
|
import { ColumnDescriptor, CustomHeader, RuntimeColumnDescriptor, TableColumnResizeHandler, TableConfig, TableHeadings } from "@vuu-ui/vuu-table-types";
|
|
4
3
|
export type ColumnSortHandler = (column: ColumnDescriptor, addToExistingSort: boolean, sortType?: VuuSortType) => void;
|
|
@@ -19,4 +18,4 @@ export interface TableHeaderProps {
|
|
|
19
18
|
tableId: string;
|
|
20
19
|
virtualColSpan?: number;
|
|
21
20
|
}
|
|
22
|
-
export declare const TableHeader: import("react").MemoExoticComponent<({ allowDragColumnHeader, classBase, columns, customHeader, headings, onHeightMeasured, onMoveColumn, onMoveGroupColumn, onRemoveGroupColumn, onResizeColumn, onSortColumn, showColumnHeaderMenus, tableConfig, tableId, virtualColSpan, }: TableHeaderProps) => JSX.Element>;
|
|
21
|
+
export declare const TableHeader: import("react").MemoExoticComponent<({ allowDragColumnHeader, classBase, columns, customHeader, headings, onHeightMeasured, onMoveColumn, onMoveGroupColumn, onRemoveGroupColumn, onResizeColumn, onSortColumn, showColumnHeaderMenus, tableConfig, tableId, virtualColSpan, }: TableHeaderProps) => import("react/jsx-runtime").JSX.Element>;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
import { ColumnDescriptor, TableHeadings } from "@vuu-ui/vuu-table-types";
|
|
3
2
|
import { TableHeaderProps } from "./TableHeader";
|
|
4
3
|
export interface TableHeaderHookProps extends Pick<TableHeaderProps, "allowDragColumnHeader" | "columns" | "onMoveColumn" | "onSortColumn" | "tableConfig"> {
|
package/types/useCell.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { KeyboardEventHandler } from "react";
|
|
2
|
-
export declare const isRowSelectionKey: (key: string) =>
|
|
2
|
+
export declare const isRowSelectionKey: (key: string) => key is "Enter" | " ";
|
|
3
3
|
export declare const useControlledTableNavigation: (initialValue: number, rowCount: number) => {
|
|
4
4
|
highlightedIndexRef: import("react").MutableRefObject<number | undefined>;
|
|
5
5
|
onHighlight: (idx: number) => void;
|
package/types/useDataSource.d.ts
CHANGED
|
@@ -1,13 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
import { DataSource, DataSourceRow, DataSourceSubscribedMessage } from "@vuu-ui/vuu-data-types";
|
|
1
|
+
import { DataSourceRow, DataSourceSubscribedMessage } from "@vuu-ui/vuu-data-types";
|
|
3
2
|
import { VuuRange } from "@vuu-ui/vuu-protocol-types";
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
import { TableProps } from "./Table";
|
|
4
|
+
export interface DataSourceHookProps extends Pick<TableProps, "dataSource" | "defaultSelectedIndexValues" | "defaultSelectedKeyValues" | "renderBufferSize" | "revealSelected"> {
|
|
6
5
|
onSizeChange: (size: number) => void;
|
|
7
6
|
onSubscribed: (subscription: DataSourceSubscribedMessage) => void;
|
|
8
|
-
renderBufferSize?: number;
|
|
9
7
|
}
|
|
10
|
-
export declare const useDataSource: ({ dataSource, onSizeChange, onSubscribed, renderBufferSize, }: DataSourceHookProps) => {
|
|
8
|
+
export declare const useDataSource: ({ dataSource, defaultSelectedIndexValues, defaultSelectedKeyValues, onSizeChange, onSubscribed, renderBufferSize, revealSelected, }: DataSourceHookProps) => {
|
|
11
9
|
data: DataSourceRow[];
|
|
12
10
|
dataRef: import("react").MutableRefObject<DataSourceRow[]>;
|
|
13
11
|
getSelectedRows: () => DataSourceRow[];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const useHighlighting: (value: string, pattern: Lowercase<string>) => string | JSX.Element;
|
package/types/useSelection.d.ts
CHANGED
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
import { TableRowClickHandlerInternal, TableRowSelectHandlerInternal, TableSelectionModel } from "@vuu-ui/vuu-table-types";
|
|
2
|
-
import { SelectionChangeHandler } from "@vuu-ui/vuu-data-types";
|
|
3
2
|
import { KeyboardEventHandler, MutableRefObject, RefObject } from "react";
|
|
4
|
-
|
|
3
|
+
import { TableProps } from "./Table";
|
|
4
|
+
export interface SelectionHookProps extends Pick<TableProps, "defaultSelectedIndexValues" | "onSelectionChange"> {
|
|
5
5
|
containerRef: RefObject<HTMLElement>;
|
|
6
6
|
highlightedIndexRef: MutableRefObject<number | undefined>;
|
|
7
7
|
selectionKeys?: string[];
|
|
8
8
|
selectionModel: TableSelectionModel;
|
|
9
9
|
onSelect?: TableRowSelectHandlerInternal;
|
|
10
|
-
onSelectionChange: SelectionChangeHandler;
|
|
11
10
|
}
|
|
12
|
-
export declare const useSelection: ({ containerRef, highlightedIndexRef, selectionKeys, selectionModel, onSelect, onSelectionChange, }: SelectionHookProps) => {
|
|
11
|
+
export declare const useSelection: ({ containerRef, defaultSelectedIndexValues, highlightedIndexRef, selectionKeys, selectionModel, onSelect, onSelectionChange, }: SelectionHookProps) => {
|
|
13
12
|
onKeyDown: KeyboardEventHandler<HTMLElement>;
|
|
14
13
|
onRowClick: TableRowClickHandlerInternal;
|
|
15
14
|
};
|
package/types/useTable.d.ts
CHANGED
|
@@ -8,13 +8,13 @@ type HeaderState = {
|
|
|
8
8
|
height: number;
|
|
9
9
|
count: number;
|
|
10
10
|
};
|
|
11
|
-
export interface TableHookProps extends MeasuredProps, Pick<TableProps, "allowCellBlockSelection" | "allowDragDrop" | "availableColumns" | "config" | "dataSource" | "disableFocus" | "highlightedIndex" | "id" | "navigationStyle" | "onAvailableColumnsChange" | "onConfigChange" | "onDataEdited" | "onDragStart" | "onDrop" | "onHighlight" | "onSelect" | "onSelectCellBlock" | "onSelectionChange" | "onRowClick" | "renderBufferSize" | "scrollingApiRef" | "selectionBookendWidth" | "showColumnHeaders" | "showPaginationControls"> {
|
|
11
|
+
export interface TableHookProps extends MeasuredProps, Pick<TableProps, "allowCellBlockSelection" | "allowDragDrop" | "availableColumns" | "config" | "dataSource" | "defaultSelectedIndexValues" | "defaultSelectedKeyValues" | "disableFocus" | "highlightedIndex" | "id" | "navigationStyle" | "onAvailableColumnsChange" | "onConfigChange" | "onDataEdited" | "onDragStart" | "onDrop" | "onHighlight" | "onSelect" | "onSelectCellBlock" | "onSelectionChange" | "onRowClick" | "renderBufferSize" | "revealSelected" | "rowToObject" | "scrollingApiRef" | "selectionBookendWidth" | "showColumnHeaders" | "showPaginationControls"> {
|
|
12
12
|
containerRef: RefObject<HTMLDivElement>;
|
|
13
13
|
rowHeight: number;
|
|
14
14
|
selectionModel: TableSelectionModel;
|
|
15
15
|
size: MeasuredSize;
|
|
16
16
|
}
|
|
17
|
-
export declare const useTable: ({ allowCellBlockSelection, allowDragDrop, availableColumns, config, containerRef, dataSource, disableFocus, highlightedIndex: highlightedIndexProp, id, navigationStyle, onAvailableColumnsChange, onConfigChange, onDataEdited: onDataEditedProp, onDragStart, onDrop, onHighlight, onRowClick: onRowClickProp, onSelect, onSelectCellBlock, onSelectionChange, renderBufferSize, rowHeight, scrollingApiRef, selectionBookendWidth, selectionModel, showColumnHeaders, showPaginationControls, size, }: TableHookProps) => {
|
|
17
|
+
export declare const useTable: ({ allowCellBlockSelection, allowDragDrop, availableColumns, config, containerRef, dataSource, defaultSelectedIndexValues, defaultSelectedKeyValues, disableFocus, highlightedIndex: highlightedIndexProp, id, navigationStyle, onAvailableColumnsChange, onConfigChange, onDataEdited: onDataEditedProp, onDragStart, onDrop, onHighlight, onRowClick: onRowClickProp, onSelect, onSelectCellBlock, onSelectionChange, renderBufferSize, revealSelected, rowHeight, rowToObject, scrollingApiRef, selectionBookendWidth, selectionModel, showColumnHeaders, showPaginationControls, size, }: TableHookProps) => {
|
|
18
18
|
"aria-rowcount": number;
|
|
19
19
|
cellBlock: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | null;
|
|
20
20
|
columnMap: import("@vuu-ui/vuu-utils").ColumnMap;
|
|
@@ -30,18 +30,18 @@ export declare const useTable: ({ allowCellBlockSelection, allowDragDrop, availa
|
|
|
30
30
|
highlightedIndex: number | undefined;
|
|
31
31
|
menuBuilder: import("@vuu-ui/vuu-data-types").MenuBuilder;
|
|
32
32
|
onBlur: import("react").FocusEventHandler;
|
|
33
|
-
onDoubleClick: (e: import("react").MouseEvent<HTMLElement
|
|
33
|
+
onDoubleClick: (e: import("react").MouseEvent<HTMLElement>) => void;
|
|
34
34
|
onFocus: (e: FocusEvent<HTMLElement>) => void;
|
|
35
35
|
onKeyDown: (e: KeyboardEvent<HTMLElement>) => void;
|
|
36
36
|
onMouseDown: MouseEventHandler;
|
|
37
|
-
onContextMenu: (evt: import("react").MouseEvent<HTMLElement
|
|
37
|
+
onContextMenu: (evt: import("react").MouseEvent<HTMLElement>) => void;
|
|
38
38
|
onDataEdited: (editState: DataCellEditEvent) => Promise<string | true | undefined>;
|
|
39
39
|
onHeaderHeightMeasured: (height: number, count: number) => void;
|
|
40
40
|
onMoveColumn: (columns: ColumnDescriptor[]) => void;
|
|
41
41
|
onMoveGroupColumn: (columns: ColumnDescriptor[]) => void;
|
|
42
42
|
onRemoveGroupColumn: (column: RuntimeColumnDescriptor) => void;
|
|
43
43
|
onRowClick: TableRowClickHandlerInternal;
|
|
44
|
-
onSortColumn: (column: ColumnDescriptor, extendSort?:
|
|
44
|
+
onSortColumn: (column: ColumnDescriptor, extendSort?: boolean, sortType?: VuuSortType) => void;
|
|
45
45
|
onResizeColumn: TableColumnResizeHandler;
|
|
46
46
|
onToggleGroup: (row: DataSourceRow, column: RuntimeColumnDescriptor) => void;
|
|
47
47
|
rowClassNameGenerator: import("@vuu-ui/vuu-utils").RowClassNameGenerator | undefined;
|
|
@@ -53,12 +53,12 @@ export declare const useTable: ({ allowCellBlockSelection, allowDragDrop, availa
|
|
|
53
53
|
};
|
|
54
54
|
tableAttributes: {
|
|
55
55
|
availableWidth: number;
|
|
56
|
-
columnDefaultWidth?: number
|
|
57
|
-
columnFormatHeader?: "capitalize" | "uppercase"
|
|
58
|
-
columnLayout?: import("@vuu-ui/vuu-table-types").ColumnLayout
|
|
59
|
-
columnSeparators?: boolean
|
|
60
|
-
rowSeparators?: boolean
|
|
61
|
-
zebraStripes?: boolean
|
|
56
|
+
columnDefaultWidth?: number;
|
|
57
|
+
columnFormatHeader?: "capitalize" | "uppercase";
|
|
58
|
+
columnLayout?: import("@vuu-ui/vuu-table-types").ColumnLayout;
|
|
59
|
+
columnSeparators?: boolean;
|
|
60
|
+
rowSeparators?: boolean;
|
|
61
|
+
zebraStripes?: boolean;
|
|
62
62
|
};
|
|
63
63
|
tableBodyRef: import("react").RefCallback<HTMLDivElement>;
|
|
64
64
|
tableConfig: Readonly<TableConfig>;
|
|
@@ -77,8 +77,8 @@ export declare const useTable: ({ allowCellBlockSelection, allowDragDrop, availa
|
|
|
77
77
|
viewportBodyHeight: number;
|
|
78
78
|
viewportWidth: number;
|
|
79
79
|
};
|
|
80
|
-
onClick: (evt: import("react").MouseEvent
|
|
80
|
+
onClick: (evt: import("react").MouseEvent) => void;
|
|
81
81
|
onMouseLeave: (() => void) | undefined;
|
|
82
|
-
onMouseMove: ((evt: import("react").MouseEvent
|
|
82
|
+
onMouseMove: ((evt: import("react").MouseEvent) => void) | undefined;
|
|
83
83
|
};
|
|
84
84
|
export {};
|
package/types/useTableModel.d.ts
CHANGED
|
@@ -89,18 +89,24 @@ export type PersistentColumnAction = ColumnActionPin | ColumnActionHide | Column
|
|
|
89
89
|
export type GridModelAction = ColumnActionHide | ColumnActionInit | ColumnActionMove | ColumnActionPin | ColumnActionResize | ColumnActionSetTableSchema | ColumnActionShow | ColumnActionUpdate | ColumnActionUpdateProp | ColumnActionTableConfig;
|
|
90
90
|
export type GridModelReducer = Reducer<InternalTableModel, GridModelAction>;
|
|
91
91
|
export type ColumnActionDispatch = (action: GridModelAction) => void;
|
|
92
|
-
export
|
|
92
|
+
export interface TableModelHookProps {
|
|
93
|
+
config: TableConfig;
|
|
94
|
+
dataSource: DataSource;
|
|
95
|
+
selectionModel: TableSelectionModel;
|
|
96
|
+
availableWidth: number;
|
|
97
|
+
}
|
|
98
|
+
export declare const useTableModel: ({ config: tableConfigProp, dataSource, selectionModel, availableWidth, }: TableModelHookProps) => {
|
|
93
99
|
columns: RuntimeColumnDescriptor[];
|
|
94
100
|
dispatchTableModelAction: import("react").Dispatch<GridModelAction>;
|
|
95
101
|
headings: TableHeadings;
|
|
96
102
|
tableAttributes: {
|
|
97
103
|
availableWidth: number;
|
|
98
|
-
columnDefaultWidth?: number
|
|
99
|
-
columnFormatHeader?: "capitalize" | "uppercase"
|
|
100
|
-
columnLayout?: ColumnLayout
|
|
101
|
-
columnSeparators?: boolean
|
|
102
|
-
rowSeparators?: boolean
|
|
103
|
-
zebraStripes?: boolean
|
|
104
|
+
columnDefaultWidth?: number;
|
|
105
|
+
columnFormatHeader?: "capitalize" | "uppercase";
|
|
106
|
+
columnLayout?: ColumnLayout;
|
|
107
|
+
columnSeparators?: boolean;
|
|
108
|
+
rowSeparators?: boolean;
|
|
109
|
+
zebraStripes?: boolean;
|
|
104
110
|
};
|
|
105
111
|
tableConfig: Readonly<TableConfig>;
|
|
106
112
|
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BulkEditPanelDialog.js","sources":["../../src/bulk-edit/BulkEditPanelDialog.tsx"],"sourcesContent":["import { DataSource } from \"@vuu-ui/vuu-data-types\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { HTMLAttributes, useCallback, useState } from \"react\";\n\nimport bulkEditPanelCss from \"./BulkEditPanel.css\";\nimport { BulkEditPanel } from \"./BulkEditPanel\";\nimport { Button, DialogActions } from \"@salt-ds/core\";\nimport { ColumnDescriptor } from \"@vuu-ui/vuu-table-types\";\nimport { viewportRpcRequest } from \"@vuu-ui/vuu-utils\";\n\nexport interface BulkEditPanelDialogProps\n extends Omit<HTMLAttributes<HTMLDivElement>, \"onChange\"> {\n columns?: ColumnDescriptor[];\n sessionDs: DataSource;\n parentDs: DataSource;\n closeDialog: () => void;\n}\n\nexport const BulkEditPanelDialog = ({\n columns,\n sessionDs,\n parentDs,\n closeDialog,\n // ...htmlAttributes\n}: BulkEditPanelDialogProps) => {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"vuu-bulk-edit-row\",\n css: bulkEditPanelCss,\n window: targetWindow,\n });\n\n const [valid, setValid] = useState(true);\n const handleValidationStatusChange = useCallback((isValid: boolean) => {\n setValid(isValid);\n }, []);\n\n const handleSubmit = () => {\n sessionDs?.rpcCall?.(viewportRpcRequest(\"VP_BULK_EDIT_SUBMIT_RPC\"));\n closeDialog();\n };\n\n return (\n <>\n <BulkEditPanel\n columns={columns}\n dataSource={sessionDs}\n onSubmit={handleSubmit}\n parentDs={parentDs}\n onValidationStatusChange={handleValidationStatusChange}\n />\n <DialogActions>\n <Button key=\"cancel\" onClick={closeDialog}>\n Cancel\n </Button>\n <Button key=\"submit\" onClick={handleSubmit} disabled={!valid}>\n Save\n </Button>\n </DialogActions>\n </>\n );\n};\n"],"names":["useWindow","useComponentCssInjection","bulkEditPanelCss","useState","useCallback","viewportRpcRequest","jsxs","Fragment","jsx","BulkEditPanel","DialogActions","Button"],"mappings":";;;;;;;;;;;AAmBO,MAAM,sBAAsB,CAAC;AAAA,EAClC,OAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA;AAAA;AAEF,CAAgC,KAAA;AAC9B,EAAA,MAAM,eAAeA,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,mBAAA;AAAA,IACR,GAAK,EAAAC,aAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAA,MAAM,CAAC,KAAA,EAAO,QAAQ,CAAA,GAAIC,eAAS,IAAI,CAAA,CAAA;AACvC,EAAM,MAAA,4BAAA,GAA+BC,iBAAY,CAAA,CAAC,OAAqB,KAAA;AACrE,IAAA,QAAA,CAAS,OAAO,CAAA,CAAA;AAAA,GAClB,EAAG,EAAE,CAAA,CAAA;AAEL,EAAA,MAAM,eAAe,MAAM;AACzB,IAAW,SAAA,EAAA,OAAA,GAAUC,2BAAmB,CAAA,yBAAyB,CAAC,CAAA,CAAA;AAClE,IAAY,WAAA,EAAA,CAAA;AAAA,GACd,CAAA;AAEA,EAAA,uBAEIC,eAAA,CAAAC,mBAAA,EAAA,EAAA,QAAA,EAAA;AAAA,oBAAAC,cAAA;AAAA,MAACC,6BAAA;AAAA,MAAA;AAAA,QACC,OAAA;AAAA,QACA,UAAY,EAAA,SAAA;AAAA,QACZ,QAAU,EAAA,YAAA;AAAA,QACV,QAAA;AAAA,QACA,wBAA0B,EAAA,4BAAA;AAAA,OAAA;AAAA,KAC5B;AAAA,oCACCC,kBACC,EAAA,EAAA,QAAA,EAAA;AAAA,sBAAAF,cAAA,CAACG,WAAoB,EAAA,EAAA,OAAA,EAAS,WAAa,EAAA,QAAA,EAAA,QAAA,EAAA,EAA/B,QAEZ,CAAA;AAAA,sBACAH,cAAA,CAACG,eAAoB,OAAS,EAAA,YAAA,EAAc,UAAU,CAAC,KAAA,EAAO,oBAAlD,QAEZ,CAAA;AAAA,KACF,EAAA,CAAA;AAAA,GACF,EAAA,CAAA,CAAA;AAEJ;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BulkEditPanelDialog.js","sources":["../../src/bulk-edit/BulkEditPanelDialog.tsx"],"sourcesContent":["import { DataSource } from \"@vuu-ui/vuu-data-types\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { HTMLAttributes, useCallback, useState } from \"react\";\n\nimport bulkEditPanelCss from \"./BulkEditPanel.css\";\nimport { BulkEditPanel } from \"./BulkEditPanel\";\nimport { Button, DialogActions } from \"@salt-ds/core\";\nimport { ColumnDescriptor } from \"@vuu-ui/vuu-table-types\";\nimport { viewportRpcRequest } from \"@vuu-ui/vuu-utils\";\n\nexport interface BulkEditPanelDialogProps\n extends Omit<HTMLAttributes<HTMLDivElement>, \"onChange\"> {\n columns?: ColumnDescriptor[];\n sessionDs: DataSource;\n parentDs: DataSource;\n closeDialog: () => void;\n}\n\nexport const BulkEditPanelDialog = ({\n columns,\n sessionDs,\n parentDs,\n closeDialog,\n // ...htmlAttributes\n}: BulkEditPanelDialogProps) => {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"vuu-bulk-edit-row\",\n css: bulkEditPanelCss,\n window: targetWindow,\n });\n\n const [valid, setValid] = useState(true);\n const handleValidationStatusChange = useCallback((isValid: boolean) => {\n setValid(isValid);\n }, []);\n\n const handleSubmit = () => {\n sessionDs?.rpcCall?.(viewportRpcRequest(\"VP_BULK_EDIT_SUBMIT_RPC\"));\n closeDialog();\n };\n\n return (\n <>\n <BulkEditPanel\n columns={columns}\n dataSource={sessionDs}\n onSubmit={handleSubmit}\n parentDs={parentDs}\n onValidationStatusChange={handleValidationStatusChange}\n />\n <DialogActions>\n <Button key=\"cancel\" onClick={closeDialog}>\n Cancel\n </Button>\n <Button key=\"submit\" onClick={handleSubmit} disabled={!valid}>\n Save\n </Button>\n </DialogActions>\n </>\n );\n};\n"],"names":[],"mappings":";;;;;;;;;AAmBO,MAAM,sBAAsB,CAAC;AAAA,EAClC,OAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA;AAAA;AAEF,CAAgC,KAAA;AAC9B,EAAA,MAAM,eAAe,SAAU,EAAA,CAAA;AAC/B,EAAyB,wBAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,mBAAA;AAAA,IACR,GAAK,EAAA,gBAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAA,MAAM,CAAC,KAAA,EAAO,QAAQ,CAAA,GAAI,SAAS,IAAI,CAAA,CAAA;AACvC,EAAM,MAAA,4BAAA,GAA+B,WAAY,CAAA,CAAC,OAAqB,KAAA;AACrE,IAAA,QAAA,CAAS,OAAO,CAAA,CAAA;AAAA,GAClB,EAAG,EAAE,CAAA,CAAA;AAEL,EAAA,MAAM,eAAe,MAAM;AACzB,IAAW,SAAA,EAAA,OAAA,GAAU,kBAAmB,CAAA,yBAAyB,CAAC,CAAA,CAAA;AAClE,IAAY,WAAA,EAAA,CAAA;AAAA,GACd,CAAA;AAEA,EAAA,uBAEI,IAAA,CAAA,QAAA,EAAA,EAAA,QAAA,EAAA;AAAA,oBAAA,GAAA;AAAA,MAAC,aAAA;AAAA,MAAA;AAAA,QACC,OAAA;AAAA,QACA,UAAY,EAAA,SAAA;AAAA,QACZ,QAAU,EAAA,YAAA;AAAA,QACV,QAAA;AAAA,QACA,wBAA0B,EAAA,4BAAA;AAAA,OAAA;AAAA,KAC5B;AAAA,yBACC,aACC,EAAA,EAAA,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,MAAoB,EAAA,EAAA,OAAA,EAAS,WAAa,EAAA,QAAA,EAAA,QAAA,EAAA,EAA/B,QAEZ,CAAA;AAAA,sBACA,GAAA,CAAC,UAAoB,OAAS,EAAA,YAAA,EAAc,UAAU,CAAC,KAAA,EAAO,oBAAlD,QAEZ,CAAA;AAAA,KACF,EAAA,CAAA;AAAA,GACF,EAAA,CAAA,CAAA;AAEJ;;;;"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { DataSource } from "@vuu-ui/vuu-data-types";
|
|
2
|
-
import { HTMLAttributes } from "react";
|
|
3
|
-
import { ColumnDescriptor } from "@vuu-ui/vuu-table-types";
|
|
4
|
-
export interface BulkEditPanelDialogProps extends Omit<HTMLAttributes<HTMLDivElement>, "onChange"> {
|
|
5
|
-
columns?: ColumnDescriptor[];
|
|
6
|
-
sessionDs: DataSource;
|
|
7
|
-
parentDs: DataSource;
|
|
8
|
-
closeDialog: () => void;
|
|
9
|
-
}
|
|
10
|
-
export declare const BulkEditPanelDialog: ({ columns, sessionDs, parentDs, closeDialog, }: BulkEditPanelDialogProps) => JSX.Element;
|