@vuu-ui/vuu-table 0.9.1 → 0.9.3
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 +45 -0
- package/cjs/CellFocusState.js.map +1 -0
- package/cjs/Row.js +7 -2
- package/cjs/Row.js.map +1 -1
- package/cjs/Table.css.js +1 -1
- package/cjs/Table.js +33 -0
- package/cjs/Table.js.map +1 -1
- package/cjs/VirtualColSpan.js.map +1 -1
- package/cjs/bulk-edit/BulkEditDialog.js +57 -0
- package/cjs/bulk-edit/BulkEditDialog.js.map +1 -0
- package/cjs/bulk-edit/BulkEditPanel.css.js +1 -1
- package/cjs/bulk-edit/BulkEditPanel.js +21 -31
- package/cjs/bulk-edit/BulkEditPanel.js.map +1 -1
- package/cjs/bulk-edit/BulkEditRow.css.js +1 -1
- package/cjs/bulk-edit/BulkEditRow.js +53 -48
- package/cjs/bulk-edit/BulkEditRow.js.map +1 -1
- package/cjs/bulk-edit/useBulkEditPanel.js +101 -0
- package/cjs/bulk-edit/useBulkEditPanel.js.map +1 -0
- package/cjs/bulk-edit/useBulkEditRow.js +144 -0
- package/cjs/bulk-edit/useBulkEditRow.js.map +1 -0
- 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.css.js +6 -0
- package/cjs/cell-renderers/checkbox-cell/CheckboxCell.css.js.map +1 -0
- package/cjs/cell-renderers/checkbox-cell/CheckboxCell.js +40 -5
- 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.css.js +1 -1
- package/cjs/cell-renderers/input-cell/InputCell.js +3 -9
- package/cjs/cell-renderers/input-cell/InputCell.js.map +1 -1
- package/cjs/cell-renderers/toggle-cell/ToggleCell.js +12 -10
- 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 +0 -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 +3 -2
- package/cjs/header-cell/GroupHeaderCell.js.map +1 -1
- package/cjs/header-cell/HeaderCell.js +1 -0
- package/cjs/header-cell/HeaderCell.js.map +1 -1
- package/cjs/index.js +8 -0
- 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 +33 -15
- package/cjs/table-cell/TableCell.js.map +1 -1
- package/cjs/table-cell/TableGroupCell.css.js +1 -1
- package/cjs/table-cell/TableGroupCell.js +1 -1
- package/cjs/table-cell/TableGroupCell.js.map +1 -1
- package/cjs/table-config.js.map +1 -1
- package/cjs/table-dom-utils.js +4 -2
- package/cjs/table-dom-utils.js.map +1 -1
- package/cjs/table-header/HeaderProvider.js.map +1 -1
- package/cjs/table-header/TableHeader.js +7 -12
- package/cjs/table-header/TableHeader.js.map +1 -1
- package/cjs/table-header/useTableHeader.js.map +1 -1
- package/cjs/useCell.js +4 -3
- package/cjs/useCell.js.map +1 -1
- package/cjs/useCellEditing.js.map +1 -1
- package/cjs/useCellFocus.js +2 -2
- package/cjs/useCellFocus.js.map +1 -1
- package/cjs/useControlledTableNavigation.js.map +1 -1
- package/cjs/useDataSource.js +22 -3
- package/cjs/useDataSource.js.map +1 -1
- package/cjs/useEditableCell.js +32 -0
- package/cjs/useEditableCell.js.map +1 -0
- package/cjs/useKeyboardNavigation.js +5 -2
- 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 +7 -4
- package/cjs/useSelection.js.map +1 -1
- package/cjs/useTable.js +48 -25
- 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 +29 -22
- 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 +43 -0
- package/esm/CellFocusState.js.map +1 -0
- package/esm/Row.js +7 -2
- package/esm/Row.js.map +1 -1
- package/esm/Table.css.js +1 -1
- package/esm/Table.js +33 -0
- package/esm/Table.js.map +1 -1
- package/esm/VirtualColSpan.js.map +1 -1
- package/esm/bulk-edit/BulkEditDialog.js +55 -0
- package/esm/bulk-edit/BulkEditDialog.js.map +1 -0
- package/esm/bulk-edit/BulkEditPanel.css.js +1 -1
- package/esm/bulk-edit/BulkEditPanel.js +21 -31
- package/esm/bulk-edit/BulkEditPanel.js.map +1 -1
- package/esm/bulk-edit/BulkEditRow.css.js +1 -1
- package/esm/bulk-edit/BulkEditRow.js +53 -48
- package/esm/bulk-edit/BulkEditRow.js.map +1 -1
- package/esm/bulk-edit/useBulkEditPanel.js +99 -0
- package/esm/bulk-edit/useBulkEditPanel.js.map +1 -0
- package/esm/bulk-edit/useBulkEditRow.js +142 -0
- package/esm/bulk-edit/useBulkEditRow.js.map +1 -0
- 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.css.js +4 -0
- package/esm/cell-renderers/checkbox-cell/CheckboxCell.css.js.map +1 -0
- package/esm/cell-renderers/checkbox-cell/CheckboxCell.js +40 -5
- 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.css.js +1 -1
- package/esm/cell-renderers/input-cell/InputCell.js +3 -9
- package/esm/cell-renderers/input-cell/InputCell.js.map +1 -1
- package/esm/cell-renderers/toggle-cell/ToggleCell.js +12 -10
- 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 +0 -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 +3 -2
- package/esm/header-cell/GroupHeaderCell.js.map +1 -1
- package/esm/header-cell/HeaderCell.js +1 -0
- package/esm/header-cell/HeaderCell.js.map +1 -1
- package/esm/index.js +4 -0
- 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 +35 -17
- package/esm/table-cell/TableCell.js.map +1 -1
- package/esm/table-cell/TableGroupCell.css.js +1 -1
- package/esm/table-cell/TableGroupCell.js +1 -1
- package/esm/table-cell/TableGroupCell.js.map +1 -1
- package/esm/table-config.js.map +1 -1
- package/esm/table-dom-utils.js +4 -2
- package/esm/table-dom-utils.js.map +1 -1
- package/esm/table-header/HeaderProvider.js.map +1 -1
- package/esm/table-header/TableHeader.js +7 -12
- package/esm/table-header/TableHeader.js.map +1 -1
- package/esm/table-header/useTableHeader.js.map +1 -1
- package/esm/useCell.js +4 -3
- package/esm/useCell.js.map +1 -1
- package/esm/useCellEditing.js.map +1 -1
- package/esm/useCellFocus.js +2 -2
- package/esm/useCellFocus.js.map +1 -1
- package/esm/useControlledTableNavigation.js.map +1 -1
- package/esm/useDataSource.js +22 -3
- package/esm/useDataSource.js.map +1 -1
- package/esm/useEditableCell.js +30 -0
- package/esm/useEditableCell.js.map +1 -0
- package/esm/useKeyboardNavigation.js +6 -3
- 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 +7 -4
- package/esm/useSelection.js.map +1 -1
- package/esm/useTable.js +48 -25
- 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 +30 -23
- package/esm/useTableModel.js.map +1 -1
- package/esm/useTableScroll.js.map +1 -1
- package/esm/useTableViewport.js.map +1 -1
- package/package.json +10 -10
- package/types/CellFocusState.d.ts +26 -0
- package/types/Row.d.ts +2 -3
- package/types/Table.d.ts +42 -3
- package/types/VirtualColSpan.d.ts +0 -1
- package/types/bulk-edit/BulkEditDialog.d.ts +9 -0
- package/types/bulk-edit/BulkEditPanel.d.ts +2 -1
- package/types/bulk-edit/BulkEditRow.d.ts +7 -5
- package/types/bulk-edit/index.d.ts +3 -0
- package/types/bulk-edit/useBulkEditPanel.d.ts +10 -0
- package/types/bulk-edit/useBulkEditRow.d.ts +20 -0
- 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 +2 -3
- package/types/table-cell/TableGroupCell.d.ts +1 -2
- package/types/table-header/TableHeader.d.ts +1 -2
- package/types/table-header/useTableHeader.d.ts +0 -1
- package/types/useCell.d.ts +1 -2
- package/types/useCellFocus.d.ts +4 -3
- package/types/useControlledTableNavigation.d.ts +1 -1
- package/types/useDataSource.d.ts +4 -6
- package/types/useEditableCell.d.ts +4 -0
- package/types/useKeyboardNavigation.d.ts +1 -1
- package/types/useSelection.d.ts +5 -5
- package/types/useTable.d.ts +14 -14
- package/types/useTableModel.d.ts +6 -6
- package/types/useTableScroll.d.ts +3 -2
|
@@ -5,4 +5,4 @@ export interface ColumnHeaderPillProps extends HTMLAttributes<HTMLDivElement> {
|
|
|
5
5
|
removable?: boolean;
|
|
6
6
|
onRemove?: (column: RuntimeColumnDescriptor) => void;
|
|
7
7
|
}
|
|
8
|
-
export declare const ColumnHeaderPill: ({ children, className, column, onRemove, removable, ...htmlAttributes }: ColumnHeaderPillProps) => JSX.Element;
|
|
8
|
+
export declare const ColumnHeaderPill: ({ children, className, column, onRemove, removable, ...htmlAttributes }: ColumnHeaderPillProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -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
|
@@ -7,6 +7,7 @@ export * from "./table-cell";
|
|
|
7
7
|
export * from "./table-config";
|
|
8
8
|
export * from "./table-header";
|
|
9
9
|
export * from "./useControlledTableNavigation";
|
|
10
|
+
export * from "./useEditableCell";
|
|
10
11
|
export * from "./useKeyboardNavigation";
|
|
11
12
|
export * from "./useTableModel";
|
|
12
13
|
export * from "./useTableScroll";
|
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
export declare const TableCell: ({ column, columnMap, onClick, onDataEdited, row, }: TableCellProps) => JSX.Element;
|
|
1
|
+
import type { TableCellProps } from "@vuu-ui/vuu-table-types";
|
|
2
|
+
export declare const TableCell: ({ column, columnMap, onClick, onDataEdited, row, }: 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, }: TableCellProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -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,6 +1,5 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
import { RuntimeColumnDescriptor } from "@vuu-ui/vuu-table-types";
|
|
3
|
-
export declare const useCell: (column: RuntimeColumnDescriptor, classBase: string, isHeader?: boolean) => {
|
|
2
|
+
export declare const useCell: (column: RuntimeColumnDescriptor, classBase: string, isHeader?: boolean, hasError?: boolean) => {
|
|
4
3
|
className: string;
|
|
5
4
|
style: import("react").CSSProperties;
|
|
6
5
|
};
|
package/types/useCellFocus.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { KeyboardEventHandler, MutableRefObject, RefCallback, RefObject } from "react";
|
|
2
2
|
import { ScrollRequestHandler } from "./useTableScroll";
|
|
3
|
-
import {
|
|
3
|
+
import { CellPos } from "@vuu-ui/vuu-table-types";
|
|
4
|
+
import type { ICellFocusState } from "./CellFocusState";
|
|
4
5
|
export interface CellFocusHookProps {
|
|
5
|
-
cellFocusStateRef: MutableRefObject<
|
|
6
|
+
cellFocusStateRef: MutableRefObject<ICellFocusState>;
|
|
6
7
|
containerRef: RefObject<HTMLElement>;
|
|
7
8
|
disableFocus?: boolean;
|
|
8
9
|
requestScroll?: ScrollRequestHandler;
|
|
@@ -12,5 +13,5 @@ export declare const useCellFocus: ({ cellFocusStateRef, containerRef, disableFo
|
|
|
12
13
|
focusCell: FocusCell;
|
|
13
14
|
focusCellPlaceholderKeyDown: KeyboardEventHandler;
|
|
14
15
|
focusCellPlaceholderRef: RefCallback<HTMLDivElement>;
|
|
15
|
-
|
|
16
|
+
setTableBodyRef: RefCallback<HTMLDivElement>;
|
|
16
17
|
};
|
|
@@ -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[];
|
|
@@ -5,7 +5,7 @@ import { TableNavigationStyle } from "./Table";
|
|
|
5
5
|
import { NavigationKey } from "./table-dom-utils";
|
|
6
6
|
import { ScrollRequestHandler } from "./useTableScroll";
|
|
7
7
|
import { FocusCell } from "./useCellFocus";
|
|
8
|
-
import { CellFocusState } from "
|
|
8
|
+
import { CellFocusState } from "./CellFocusState";
|
|
9
9
|
export declare const isNavigationKey: (key: string, navigationStyle: TableNavigationStyle) => key is NavigationKey;
|
|
10
10
|
export declare const isPagingKey: (key: string) => key is PageKey;
|
|
11
11
|
export type GroupToggleHandler = (treeNodeOperation: "expand" | "collapse", rowIndex: number) => void;
|
package/types/useSelection.d.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { TableRowClickHandlerInternal, TableRowSelectHandlerInternal, TableSelectionModel } from "@vuu-ui/vuu-table-types";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
export interface SelectionHookProps {
|
|
2
|
+
import { KeyboardEventHandler, MutableRefObject, RefObject } from "react";
|
|
3
|
+
import { TableProps } from "./Table";
|
|
4
|
+
export interface SelectionHookProps extends Pick<TableProps, "defaultSelectedIndexValues" | "onSelectionChange"> {
|
|
5
|
+
containerRef: RefObject<HTMLElement>;
|
|
5
6
|
highlightedIndexRef: MutableRefObject<number | undefined>;
|
|
6
7
|
selectionKeys?: string[];
|
|
7
8
|
selectionModel: TableSelectionModel;
|
|
8
9
|
onSelect?: TableRowSelectHandlerInternal;
|
|
9
|
-
onSelectionChange: SelectionChangeHandler;
|
|
10
10
|
}
|
|
11
|
-
export declare const useSelection: ({ highlightedIndexRef, selectionKeys, selectionModel, onSelect, onSelectionChange, }: SelectionHookProps) => {
|
|
11
|
+
export declare const useSelection: ({ containerRef, defaultSelectedIndexValues, highlightedIndexRef, selectionKeys, selectionModel, onSelect, onSelectionChange, }: SelectionHookProps) => {
|
|
12
12
|
onKeyDown: KeyboardEventHandler<HTMLElement>;
|
|
13
13
|
onRowClick: TableRowClickHandlerInternal;
|
|
14
14
|
};
|
package/types/useTable.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DataSourceRow } from "@vuu-ui/vuu-data-types";
|
|
2
2
|
import { VuuSortType } from "@vuu-ui/vuu-protocol-types";
|
|
3
|
-
import { ColumnDescriptor,
|
|
3
|
+
import { ColumnDescriptor, DataCellEditEvent, RuntimeColumnDescriptor, TableColumnResizeHandler, TableConfig, TableRowClickHandlerInternal, TableSelectionModel } from "@vuu-ui/vuu-table-types";
|
|
4
4
|
import { MeasuredProps, MeasuredSize } from "@vuu-ui/vuu-ui-controls";
|
|
5
5
|
import { FocusEvent, KeyboardEvent, MouseEventHandler, RefObject } from "react";
|
|
6
6
|
import { TableProps } from "./Table";
|
|
@@ -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" | "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, 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,12 +30,12 @@ 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
|
|
38
|
-
onDataEdited:
|
|
37
|
+
onContextMenu: (evt: import("react").MouseEvent<HTMLElement>) => void;
|
|
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;
|
|
@@ -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
|
@@ -95,12 +95,12 @@ export declare const useTableModel: (tableConfigProp: TableConfig, dataSource: D
|
|
|
95
95
|
headings: TableHeadings;
|
|
96
96
|
tableAttributes: {
|
|
97
97
|
availableWidth: number;
|
|
98
|
-
columnDefaultWidth?: number
|
|
99
|
-
columnFormatHeader?: "capitalize" | "uppercase"
|
|
100
|
-
columnLayout?: ColumnLayout
|
|
101
|
-
columnSeparators?: boolean
|
|
102
|
-
rowSeparators?: boolean
|
|
103
|
-
zebraStripes?: boolean
|
|
98
|
+
columnDefaultWidth?: number;
|
|
99
|
+
columnFormatHeader?: "capitalize" | "uppercase";
|
|
100
|
+
columnLayout?: ColumnLayout;
|
|
101
|
+
columnSeparators?: boolean;
|
|
102
|
+
rowSeparators?: boolean;
|
|
103
|
+
zebraStripes?: boolean;
|
|
104
104
|
};
|
|
105
105
|
tableConfig: Readonly<TableConfig>;
|
|
106
106
|
};
|
|
@@ -2,8 +2,9 @@ import { RowAtPositionFunc } from "@vuu-ui/vuu-utils";
|
|
|
2
2
|
import type { VuuRange } from "@vuu-ui/vuu-protocol-types";
|
|
3
3
|
import { ForwardedRef, MutableRefObject } from "react";
|
|
4
4
|
import type { ViewportMeasurements } from "./useTableViewport";
|
|
5
|
-
import type {
|
|
5
|
+
import type { RuntimeColumnDescriptor } from "@vuu-ui/vuu-table-types";
|
|
6
6
|
import { FocusCell } from "./useCellFocus";
|
|
7
|
+
import { ICellFocusState } from "./CellFocusState";
|
|
7
8
|
export type ScrollDirectionVertical = "up" | "down";
|
|
8
9
|
export type ScrollDirectionHorizontal = "left" | "right";
|
|
9
10
|
export type ScrollDirection = ScrollDirectionVertical | ScrollDirectionHorizontal;
|
|
@@ -37,7 +38,7 @@ export interface ScrollingAPI {
|
|
|
37
38
|
}
|
|
38
39
|
export declare const noScrolling: ScrollingAPI;
|
|
39
40
|
export interface TableScrollHookProps {
|
|
40
|
-
cellFocusStateRef: MutableRefObject<
|
|
41
|
+
cellFocusStateRef: MutableRefObject<ICellFocusState>;
|
|
41
42
|
columns: RuntimeColumnDescriptor[];
|
|
42
43
|
focusCell?: FocusCell;
|
|
43
44
|
getRowAtPosition: RowAtPositionFunc;
|