@veeqo/ui 6.0.0 → 6.1.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.
@@ -4,7 +4,7 @@ import { ColumnMenu } from './components/ColumnMenu';
4
4
  import { SelectionCell } from './components/SelectionCell';
5
5
  import { SelectionHeader } from './components/SelectionHeader';
6
6
  export declare const DataTable: {
7
- ({ ActionBarSlot, borderMode, columns: initialColumns, emptyState, expandedRowIds, loading, loadingRowCount, onChangeSort, rows, disabledRowIds, selectionMode, selectionState, setExpanded, sortState, stripingMode, enableStickyHeader, resizeableColumns, }: DataTableProps): React.JSX.Element;
7
+ ({ ActionBarSlot, borderMode, columns: initialColumns, emptyState, expandedRowIds, loading, loadingRowCount, onChangeSort, rows, disabledRowIds, selectionMode, selectionState, setExpanded, sortState, stripingMode, enableStickyHeader, resizeableColumns, onResizeColumns, }: DataTableProps): React.JSX.Element;
8
8
  defaultProps: {
9
9
  loading: boolean;
10
10
  loadingRowCount: number;
@@ -3,9 +3,10 @@ import { ColumnId, ColumnWidthHandler } from '../types';
3
3
  export type ColumnDividerProps = {
4
4
  columnId: ColumnId;
5
5
  setColumnWidth?: ColumnWidthHandler;
6
+ minWidth?: number;
6
7
  };
7
8
  export type CalculateWidthProps = {
8
9
  event: MouseEvent;
9
10
  };
10
11
  export declare const ResizerBar: import("styled-components").StyledComponent<"div", any, {}, never>;
11
- export declare const ColumnDivider: ({ columnId, setColumnWidth }: ColumnDividerProps) => React.JSX.Element;
12
+ export declare const ColumnDivider: ({ columnId, setColumnWidth, minWidth }: ColumnDividerProps) => React.JSX.Element;
@@ -1,6 +1,6 @@
1
1
  import { RefObject } from 'react';
2
- import { ColumnConfigs } from '../types';
3
- export declare function useColumns(columns: ColumnConfigs, tableRef: RefObject<HTMLElement>): {
2
+ import { ColumnConfigs, ColumnWidthState, ResizeColumnData } from '../types';
3
+ export declare function useColumns(columns: ColumnConfigs, tableRef: RefObject<HTMLElement>, onResizeColumns?: (columnWidths: ResizeColumnData) => void): {
4
4
  visible: {
5
5
  width: import("../types").ColumnWidth | import("../types").ColumnWidthBounded | undefined;
6
6
  id: import("../types").ColumnId;
@@ -13,6 +13,7 @@ export declare function useColumns(columns: ColumnConfigs, tableRef: RefObject<H
13
13
  span?: number | undefined;
14
14
  title?: string | undefined;
15
15
  tooltip?: string | undefined;
16
+ resizeMinWidth?: number | undefined;
16
17
  renderCell: import("../types").CellRenderer;
17
18
  renderFooter?: import("../types").FooterRenderer | undefined;
18
19
  renderHeader?: import("../types").HeaderRenderer | undefined;
@@ -30,6 +31,7 @@ export declare function useColumns(columns: ColumnConfigs, tableRef: RefObject<H
30
31
  span?: number | undefined;
31
32
  title?: string | undefined;
32
33
  tooltip?: string | undefined;
34
+ resizeMinWidth?: number | undefined;
33
35
  renderCell: import("../types").CellRenderer;
34
36
  renderFooter?: import("../types").FooterRenderer | undefined;
35
37
  renderHeader?: import("../types").HeaderRenderer | undefined;
@@ -47,10 +49,11 @@ export declare function useColumns(columns: ColumnConfigs, tableRef: RefObject<H
47
49
  span?: number | undefined;
48
50
  title?: string | undefined;
49
51
  tooltip?: string | undefined;
52
+ resizeMinWidth?: number | undefined;
50
53
  renderCell: import("../types").CellRenderer;
51
54
  renderFooter?: import("../types").FooterRenderer | undefined;
52
55
  renderHeader?: import("../types").HeaderRenderer | undefined;
53
56
  renderNestedCell?: import("../types").NestedCellRenderer | undefined;
54
57
  }[];
55
- setColumnWidth: import("../types").ColumnWidthHandler;
58
+ setColumnWidth: ({ columnId, width }: ColumnWidthState) => void;
56
59
  };
@@ -30,6 +30,7 @@ export type ColumnConfig = {
30
30
  title?: string;
31
31
  tooltip?: string;
32
32
  width?: ColumnWidthFixed | ColumnWidthBounded;
33
+ resizeMinWidth?: number;
33
34
  renderCell: CellRenderer;
34
35
  renderFooter?: FooterRenderer;
35
36
  renderHeader?: HeaderRenderer;
@@ -103,26 +104,49 @@ export type SelectionMode = 'single' | 'multiple';
103
104
  export type SelectionState = [RowId[], (rowIds: RowId[]) => void];
104
105
  export type StripingMode = 'row' | 'nested';
105
106
  export interface DataTableProps {
107
+ /** slot for the action bar above the table */
106
108
  ActionBarSlot?: ReactNode;
109
+ /** Type of border for the table */
107
110
  borderMode?: BorderMode;
111
+ /** Columns for the table */
108
112
  columns: ColumnConfigs;
113
+ /** Disable specific rows of the table */
109
114
  disabledRowIds?: Array<RowId>;
115
+ /** Enable sticky header */
110
116
  enableStickyHeader?: boolean;
117
+ /** Render a custom empty state for the table */
111
118
  emptyState?: CustomState;
119
+ /** The rows that can be expanded to show more information */
112
120
  expandedRowIds?: Array<RowId>;
121
+ /** Renders a loading indicator inside the table */
113
122
  loading?: boolean;
123
+ /** Number of rows to display when loading */
114
124
  loadingRowCount?: number;
125
+ /** OnChange handler for sorting functionality */
115
126
  onChangeSort?: SortChangeHandler;
127
+ /** Rows of data to be displayed in the table */
116
128
  rows: TableRows;
129
+ /** Decide how many rows can be selected */
117
130
  selectionMode?: SelectionMode;
131
+ /** The current selected rows */
118
132
  selectionState?: SelectionState;
133
+ /** Handler to expand specific row */
119
134
  setExpanded?: SetExpandedAction;
135
+ /** State of each column's sorting */
120
136
  sortState?: SortState;
137
+ /** Renders alternate row a slightly different colour */
121
138
  stripingMode?: StripingMode;
139
+ /** Enable column resizing */
122
140
  resizeableColumns?: boolean;
141
+ /** Callback for when columns are resized */
142
+ onResizeColumns?: (columnWidths: ResizeColumnData) => void;
123
143
  }
124
144
  export type ColumnWidthsType = {
125
145
  [key: ColumnId]: ColumnWidthType;
126
146
  };
127
147
  export type ColumnWidthType = ColumnWidthFixed | ColumnWidthBounded | undefined;
148
+ export type ResizeColumnData = {
149
+ id: ColumnId;
150
+ columnWidth?: ColumnWidth | ColumnWidthBounded;
151
+ }[];
128
152
  export {};
@@ -0,0 +1,2 @@
1
+ import { ColumnConfigs, ColumnId, ColumnWidthsType } from '../types';
2
+ export declare function getColumnWidth(columnId: ColumnId, columnWidths: ColumnWidthsType, columns: ColumnConfigs): string | number | import("../types").ColumnWidthBounded | undefined;