@semcore/data-table 4.51.0-prerelease.5 → 4.51.0-prerelease.6
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/lib/cjs/Body.js +477 -0
- package/lib/cjs/Body.js.map +1 -0
- package/lib/cjs/DataTable.js +629 -0
- package/lib/cjs/DataTable.js.map +1 -0
- package/lib/cjs/Head.js +398 -0
- package/lib/cjs/Head.js.map +1 -0
- package/lib/cjs/index.js +15 -38
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/style/data-table.shadow.css +413 -0
- package/lib/cjs/style/scroll-shadows.shadow.css +5 -50
- package/lib/cjs/translations/__intergalactic-dynamic-locales.js +5 -4
- package/lib/cjs/translations/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/cjs/translations/de.json +1 -6
- package/lib/cjs/translations/en.json +1 -6
- package/lib/cjs/translations/es.json +1 -6
- package/lib/cjs/translations/fr.json +1 -6
- package/lib/cjs/translations/it.json +1 -6
- package/lib/cjs/translations/ja.json +1 -6
- package/lib/cjs/translations/ko.json +1 -6
- package/lib/cjs/translations/nl.json +1 -6
- package/lib/cjs/translations/pl.json +1 -6
- package/lib/cjs/translations/pt.json +1 -6
- package/lib/cjs/translations/sv.json +1 -6
- package/lib/cjs/translations/tr.json +1 -6
- package/lib/cjs/translations/vi.json +1 -6
- package/lib/cjs/translations/zh.json +1 -6
- package/lib/cjs/types.js +4 -0
- package/lib/cjs/types.js.map +1 -0
- package/lib/cjs/utils.js +57 -0
- package/lib/cjs/utils.js.map +1 -0
- package/lib/es6/Body.js +469 -0
- package/lib/es6/Body.js.map +1 -0
- package/lib/es6/DataTable.js +619 -0
- package/lib/es6/DataTable.js.map +1 -0
- package/lib/es6/Head.js +390 -0
- package/lib/es6/Head.js.map +1 -0
- package/lib/es6/index.js +2 -7
- package/lib/es6/index.js.map +1 -1
- package/lib/es6/style/data-table.shadow.css +413 -0
- package/lib/es6/style/scroll-shadows.shadow.css +5 -50
- package/lib/es6/translations/__intergalactic-dynamic-locales.js +2 -2
- package/lib/es6/translations/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/es6/translations/de.json +1 -6
- package/lib/es6/translations/en.json +1 -6
- package/lib/es6/translations/es.json +1 -6
- package/lib/es6/translations/fr.json +1 -6
- package/lib/es6/translations/it.json +1 -6
- package/lib/es6/translations/ja.json +1 -6
- package/lib/es6/translations/ko.json +1 -6
- package/lib/es6/translations/nl.json +1 -6
- package/lib/es6/translations/pl.json +1 -6
- package/lib/es6/translations/pt.json +1 -6
- package/lib/es6/translations/sv.json +1 -6
- package/lib/es6/translations/tr.json +1 -6
- package/lib/es6/translations/vi.json +1 -6
- package/lib/es6/translations/zh.json +1 -6
- package/lib/es6/types.js +2 -0
- package/lib/es6/types.js.map +1 -0
- package/lib/es6/utils.js +48 -0
- package/lib/es6/utils.js.map +1 -0
- package/lib/esm/Body.mjs +430 -0
- package/lib/esm/DataTable.mjs +589 -0
- package/lib/esm/Head.mjs +368 -0
- package/lib/esm/index.mjs +5 -12
- package/lib/esm/style/data-table.shadow.css +413 -0
- package/lib/esm/style/scroll-shadows.shadow.css +5 -50
- package/lib/esm/translations/__intergalactic-dynamic-locales.mjs +2 -2
- package/lib/esm/translations/de.json.mjs +1 -6
- package/lib/esm/translations/en.json.mjs +1 -6
- package/lib/esm/translations/es.json.mjs +1 -6
- package/lib/esm/translations/fr.json.mjs +1 -6
- package/lib/esm/translations/it.json.mjs +1 -6
- package/lib/esm/translations/ja.json.mjs +1 -6
- package/lib/esm/translations/ko.json.mjs +1 -6
- package/lib/esm/translations/nl.json.mjs +1 -6
- package/lib/esm/translations/pl.json.mjs +1 -6
- package/lib/esm/translations/pt.json.mjs +1 -6
- package/lib/esm/translations/sv.json.mjs +1 -6
- package/lib/esm/translations/tr.json.mjs +1 -6
- package/lib/esm/translations/vi.json.mjs +1 -6
- package/lib/esm/translations/zh.json.mjs +1 -6
- package/lib/esm/utils.mjs +52 -0
- package/lib/types/Body.d.ts +61 -0
- package/lib/types/DataTable.d.ts +205 -0
- package/lib/types/Head.d.ts +45 -0
- package/lib/types/index.d.ts +2 -10
- package/lib/types/translations/__intergalactic-dynamic-locales.d.ts +0 -70
- package/lib/types/types.d.ts +73 -0
- package/lib/types/utils.d.ts +4 -0
- package/package.json +6 -6
- package/lib/cjs/components/AccordionRows/AccordionRows.js +0 -177
- package/lib/cjs/components/AccordionRows/AccordionRows.js.map +0 -1
- package/lib/cjs/components/Body/Body.js +0 -445
- package/lib/cjs/components/Body/Body.js.map +0 -1
- package/lib/cjs/components/Body/Body.types.js +0 -2
- package/lib/cjs/components/Body/Body.types.js.map +0 -1
- package/lib/cjs/components/Body/Cell.js +0 -205
- package/lib/cjs/components/Body/Cell.js.map +0 -1
- package/lib/cjs/components/Body/Cell.types.js +0 -2
- package/lib/cjs/components/Body/Cell.types.js.map +0 -1
- package/lib/cjs/components/Body/LimitOverlay.js +0 -191
- package/lib/cjs/components/Body/LimitOverlay.js.map +0 -1
- package/lib/cjs/components/Body/MergedCells.js +0 -31
- package/lib/cjs/components/Body/MergedCells.js.map +0 -1
- package/lib/cjs/components/Body/Row.js +0 -630
- package/lib/cjs/components/Body/Row.js.map +0 -1
- package/lib/cjs/components/Body/Row.types.js +0 -2
- package/lib/cjs/components/Body/Row.types.js.map +0 -1
- package/lib/cjs/components/Body/RowGroup.js +0 -118
- package/lib/cjs/components/Body/RowGroup.js.map +0 -1
- package/lib/cjs/components/Body/style.shadow.css +0 -367
- package/lib/cjs/components/DataTable/DataTable.js +0 -1303
- package/lib/cjs/components/DataTable/DataTable.js.map +0 -1
- package/lib/cjs/components/DataTable/DataTable.types.js +0 -2
- package/lib/cjs/components/DataTable/DataTable.types.js.map +0 -1
- package/lib/cjs/components/DataTable/ScrollBars.js +0 -63
- package/lib/cjs/components/DataTable/ScrollBars.js.map +0 -1
- package/lib/cjs/components/DataTable/dataTable.shadow.css +0 -43
- package/lib/cjs/components/Head/Column.js +0 -350
- package/lib/cjs/components/Head/Column.js.map +0 -1
- package/lib/cjs/components/Head/Column.types.js +0 -2
- package/lib/cjs/components/Head/Column.types.js.map +0 -1
- package/lib/cjs/components/Head/Group.js +0 -116
- package/lib/cjs/components/Head/Group.js.map +0 -1
- package/lib/cjs/components/Head/Group.type.js +0 -2
- package/lib/cjs/components/Head/Group.type.js.map +0 -1
- package/lib/cjs/components/Head/Head.js +0 -350
- package/lib/cjs/components/Head/Head.js.map +0 -1
- package/lib/cjs/components/Head/Head.types.js +0 -2
- package/lib/cjs/components/Head/Head.types.js.map +0 -1
- package/lib/cjs/components/Head/style.shadow.css +0 -292
- package/lib/cjs/components/RowSelector/RowsSelector.js +0 -132
- package/lib/cjs/components/RowSelector/RowsSelector.js.map +0 -1
- package/lib/cjs/components/RowSelector/SRAnnouncer.js +0 -62
- package/lib/cjs/components/RowSelector/SRAnnouncer.js.map +0 -1
- package/lib/cjs/components/RowSelector/SRReactiveAnnouncer.js +0 -39
- package/lib/cjs/components/RowSelector/SRReactiveAnnouncer.js.map +0 -1
- package/lib/cjs/enhancers/focusableCell.js +0 -76
- package/lib/cjs/enhancers/focusableCell.js.map +0 -1
- package/lib/cjs/store/SelectableRows.js +0 -211
- package/lib/cjs/store/SelectableRows.js.map +0 -1
- package/lib/es6/components/AccordionRows/AccordionRows.js +0 -171
- package/lib/es6/components/AccordionRows/AccordionRows.js.map +0 -1
- package/lib/es6/components/Body/Body.js +0 -439
- package/lib/es6/components/Body/Body.js.map +0 -1
- package/lib/es6/components/Body/Body.types.js +0 -2
- package/lib/es6/components/Body/Body.types.js.map +0 -1
- package/lib/es6/components/Body/Cell.js +0 -199
- package/lib/es6/components/Body/Cell.js.map +0 -1
- package/lib/es6/components/Body/Cell.types.js +0 -2
- package/lib/es6/components/Body/Cell.types.js.map +0 -1
- package/lib/es6/components/Body/LimitOverlay.js +0 -184
- package/lib/es6/components/Body/LimitOverlay.js.map +0 -1
- package/lib/es6/components/Body/MergedCells.js +0 -24
- package/lib/es6/components/Body/MergedCells.js.map +0 -1
- package/lib/es6/components/Body/Row.js +0 -624
- package/lib/es6/components/Body/Row.js.map +0 -1
- package/lib/es6/components/Body/Row.types.js +0 -2
- package/lib/es6/components/Body/Row.types.js.map +0 -1
- package/lib/es6/components/Body/RowGroup.js +0 -111
- package/lib/es6/components/Body/RowGroup.js.map +0 -1
- package/lib/es6/components/Body/style.shadow.css +0 -367
- package/lib/es6/components/DataTable/DataTable.js +0 -1298
- package/lib/es6/components/DataTable/DataTable.js.map +0 -1
- package/lib/es6/components/DataTable/DataTable.types.js +0 -2
- package/lib/es6/components/DataTable/DataTable.types.js.map +0 -1
- package/lib/es6/components/DataTable/ScrollBars.js +0 -57
- package/lib/es6/components/DataTable/ScrollBars.js.map +0 -1
- package/lib/es6/components/DataTable/dataTable.shadow.css +0 -43
- package/lib/es6/components/Head/Column.js +0 -344
- package/lib/es6/components/Head/Column.js.map +0 -1
- package/lib/es6/components/Head/Column.types.js +0 -2
- package/lib/es6/components/Head/Column.types.js.map +0 -1
- package/lib/es6/components/Head/Group.js +0 -111
- package/lib/es6/components/Head/Group.js.map +0 -1
- package/lib/es6/components/Head/Group.type.js +0 -2
- package/lib/es6/components/Head/Group.type.js.map +0 -1
- package/lib/es6/components/Head/Head.js +0 -345
- package/lib/es6/components/Head/Head.js.map +0 -1
- package/lib/es6/components/Head/Head.types.js +0 -2
- package/lib/es6/components/Head/Head.types.js.map +0 -1
- package/lib/es6/components/Head/style.shadow.css +0 -292
- package/lib/es6/components/RowSelector/RowsSelector.js +0 -125
- package/lib/es6/components/RowSelector/RowsSelector.js.map +0 -1
- package/lib/es6/components/RowSelector/SRAnnouncer.js +0 -55
- package/lib/es6/components/RowSelector/SRAnnouncer.js.map +0 -1
- package/lib/es6/components/RowSelector/SRReactiveAnnouncer.js +0 -32
- package/lib/es6/components/RowSelector/SRReactiveAnnouncer.js.map +0 -1
- package/lib/es6/enhancers/focusableCell.js +0 -69
- package/lib/es6/enhancers/focusableCell.js.map +0 -1
- package/lib/es6/store/SelectableRows.js +0 -204
- package/lib/es6/store/SelectableRows.js.map +0 -1
- package/lib/esm/components/AccordionRows/AccordionRows.mjs +0 -155
- package/lib/esm/components/Body/Body.mjs +0 -395
- package/lib/esm/components/Body/Cell.mjs +0 -192
- package/lib/esm/components/Body/LimitOverlay.mjs +0 -179
- package/lib/esm/components/Body/MergedCells.mjs +0 -27
- package/lib/esm/components/Body/Row.mjs +0 -556
- package/lib/esm/components/Body/RowGroup.mjs +0 -113
- package/lib/esm/components/Body/style.shadow.css +0 -367
- package/lib/esm/components/DataTable/DataTable.mjs +0 -1216
- package/lib/esm/components/DataTable/ScrollBars.mjs +0 -61
- package/lib/esm/components/DataTable/dataTable.shadow.css +0 -43
- package/lib/esm/components/Head/Column.mjs +0 -321
- package/lib/esm/components/Head/Group.mjs +0 -111
- package/lib/esm/components/Head/Head.mjs +0 -307
- package/lib/esm/components/Head/style.shadow.css +0 -292
- package/lib/esm/components/RowSelector/RowsSelector.mjs +0 -105
- package/lib/esm/components/RowSelector/SRAnnouncer.mjs +0 -51
- package/lib/esm/components/RowSelector/SRReactiveAnnouncer.mjs +0 -31
- package/lib/esm/enhancers/focusableCell.mjs +0 -72
- package/lib/esm/store/SelectableRows.mjs +0 -201
- package/lib/types/components/AccordionRows/AccordionRows.d.ts +0 -41
- package/lib/types/components/Body/Body.d.ts +0 -6
- package/lib/types/components/Body/Body.types.d.ts +0 -87
- package/lib/types/components/Body/Cell.d.ts +0 -1
- package/lib/types/components/Body/Cell.types.d.ts +0 -36
- package/lib/types/components/Body/LimitOverlay.d.ts +0 -17
- package/lib/types/components/Body/MergedCells.d.ts +0 -17
- package/lib/types/components/Body/Row.d.ts +0 -47
- package/lib/types/components/Body/Row.types.d.ts +0 -74
- package/lib/types/components/Body/RowGroup.d.ts +0 -19
- package/lib/types/components/DataTable/DataTable.d.ts +0 -14
- package/lib/types/components/DataTable/DataTable.types.d.ts +0 -202
- package/lib/types/components/DataTable/ScrollBars.d.ts +0 -11
- package/lib/types/components/Head/Column.d.ts +0 -39
- package/lib/types/components/Head/Column.types.d.ts +0 -85
- package/lib/types/components/Head/Group.d.ts +0 -15
- package/lib/types/components/Head/Group.type.d.ts +0 -18
- package/lib/types/components/Head/Head.d.ts +0 -9
- package/lib/types/components/Head/Head.types.d.ts +0 -58
- package/lib/types/components/RowSelector/RowsSelector.d.ts +0 -32
- package/lib/types/components/RowSelector/SRAnnouncer.d.ts +0 -10
- package/lib/types/components/RowSelector/SRReactiveAnnouncer.d.ts +0 -8
- package/lib/types/enhancers/focusableCell.d.ts +0 -9
- package/lib/types/store/SelectableRows.d.ts +0 -60
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { Component } from '@semcore/core';
|
|
2
|
-
import * as React from 'react';
|
|
3
|
-
import type { DataTableCellProps } from './Cell.types';
|
|
4
|
-
import { MergedColumnsCell, MergedRowsCell } from './MergedCells';
|
|
5
|
-
import type { DataTableRowProps, DataTableRowType, DTRow, DTRows, RowPropsInner } from './Row.types';
|
|
6
|
-
import type { DataTableData, DTValue } from '../DataTable/DataTable.types';
|
|
7
|
-
type State<UniqKeyType> = {
|
|
8
|
-
expandedForAnimation: boolean;
|
|
9
|
-
accordionRows?: DTRows<UniqKeyType>;
|
|
10
|
-
accordionComponent?: React.ReactNode;
|
|
11
|
-
};
|
|
12
|
-
export declare class RowRoot<Data extends DataTableData, UniqKeyType> extends Component<DataTableRowProps<Data, UniqKeyType>, [], {}, RowPropsInner<Data, UniqKeyType>, State<UniqKeyType>> {
|
|
13
|
-
static displayName: string;
|
|
14
|
-
static style: {
|
|
15
|
-
[key: string]: string;
|
|
16
|
-
};
|
|
17
|
-
static defaultProps: {
|
|
18
|
-
'aria-level': undefined;
|
|
19
|
-
};
|
|
20
|
-
private cellName;
|
|
21
|
-
private closeAccordionTimeout;
|
|
22
|
-
private openAccordionTimeout;
|
|
23
|
-
rowElementRef: React.RefObject<HTMLDivElement>;
|
|
24
|
-
state: State<UniqKeyType>;
|
|
25
|
-
constructor(props: DataTableRowProps<Data, UniqKeyType>);
|
|
26
|
-
componentDidMount(): void;
|
|
27
|
-
componentDidUpdate(prevProps: DataTableRowProps<Data, UniqKeyType>): void;
|
|
28
|
-
componentWillUnmount(): void;
|
|
29
|
-
setAccordion(): void;
|
|
30
|
-
cellHasAccordion(cellValue?: DTValue | MergedColumnsCell | MergedRowsCell): cellValue is DTValue;
|
|
31
|
-
handleBackFromAccordion: (e: React.KeyboardEvent) => void;
|
|
32
|
-
handleExpandRow: (row: DTRow<UniqKeyType>, index: number) => void;
|
|
33
|
-
closeAccordion: (row: DTRow<UniqKeyType>, closeDuration: number) => void;
|
|
34
|
-
handleClickRow(row: DTRow<UniqKeyType>): (e: React.SyntheticEvent) => void;
|
|
35
|
-
handleClickCell: (e: React.SyntheticEvent<HTMLElement>, opt: {
|
|
36
|
-
row: DTRow<UniqKeyType>;
|
|
37
|
-
rowIndex: number;
|
|
38
|
-
}) => void;
|
|
39
|
-
getCellProps(props: DataTableCellProps<Data, UniqKeyType>): Record<string, any>;
|
|
40
|
-
get isRowHidden(): true | undefined;
|
|
41
|
-
render(): React.ReactNode;
|
|
42
|
-
private isReactNode;
|
|
43
|
-
}
|
|
44
|
-
export declare const Row: DataTableRowType & {
|
|
45
|
-
Cell: any;
|
|
46
|
-
};
|
|
47
|
-
export {};
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
import type { Intergalactic } from '@semcore/core';
|
|
2
|
-
import type * as React from 'react';
|
|
3
|
-
import type { CellRenderProps } from './Body.types';
|
|
4
|
-
import type { DataTableCellProps, Theme } from './Cell.types';
|
|
5
|
-
import type { MergedColumnsCell, MergedRowsCell } from './MergedCells';
|
|
6
|
-
import type { RowRoot } from './Row';
|
|
7
|
-
import type { ISelectedRows } from '../../store/SelectableRows';
|
|
8
|
-
import type { ACCORDION, GRID_ROW_INDEX, IS_EMPTY_DATA_ROW, ROW_GROUP, ROW_INDEX, UNIQ_ROW_KEY } from '../DataTable/DataTable';
|
|
9
|
-
import type { DTValue, DTUse, DataTableData, VirtualScroll, DataRowItem, DataTableProps } from '../DataTable/DataTable.types';
|
|
10
|
-
import type { DTColumn } from '../Head/Column.types';
|
|
11
|
-
export type DTRow<UniqKeyType> = {
|
|
12
|
-
[UNIQ_ROW_KEY]: UniqKeyType;
|
|
13
|
-
[IS_EMPTY_DATA_ROW]?: boolean;
|
|
14
|
-
[GRID_ROW_INDEX]: number;
|
|
15
|
-
[ROW_INDEX]: number;
|
|
16
|
-
[key: string]: DTValue | MergedRowsCell | MergedColumnsCell;
|
|
17
|
-
[ACCORDION]?: React.ReactNode | DTRows<UniqKeyType>;
|
|
18
|
-
[ROW_GROUP]?: Set<UniqKeyType>;
|
|
19
|
-
};
|
|
20
|
-
export type DTRows<UniqKeyType> = Array<DTRow<UniqKeyType> | DTRow<UniqKeyType>[]>;
|
|
21
|
-
export type DataTableRowProps<Data extends DataTableData, UniqKeyType> = {
|
|
22
|
-
row: DTRow<UniqKeyType>;
|
|
23
|
-
mergedRow?: boolean;
|
|
24
|
-
isAccordionRow?: boolean;
|
|
25
|
-
accordionRowIndex?: DataTableCellProps<Data, UniqKeyType>['accordionRowIndex'];
|
|
26
|
-
isNonInteractive?: boolean;
|
|
27
|
-
componentRef?: (component: RowRoot<Data, UniqKeyType> | null) => void;
|
|
28
|
-
accordionIndex?: number;
|
|
29
|
-
theme?: Theme;
|
|
30
|
-
};
|
|
31
|
-
export type RowPropsInner<Data extends DataTableData, UniqKeyType> = JSX.IntrinsicElements['div'] & {
|
|
32
|
-
use: DTUse;
|
|
33
|
-
/**
|
|
34
|
-
* Flag to show is row in a merged list or not.
|
|
35
|
-
*/
|
|
36
|
-
mergedRow?: boolean;
|
|
37
|
-
columns: DTColumn[];
|
|
38
|
-
row: DTRow<UniqKeyType> | DTRow<UniqKeyType>[];
|
|
39
|
-
rows: DTRows<UniqKeyType>;
|
|
40
|
-
flatRows: DTRow<UniqKeyType>[];
|
|
41
|
-
rowIndex: number;
|
|
42
|
-
gridRowIndex: number;
|
|
43
|
-
onExpandRow: (expandedRow: DTRow<UniqKeyType>) => void;
|
|
44
|
-
gridTemplateAreas: string[];
|
|
45
|
-
gridTemplateColumns: string[];
|
|
46
|
-
selectedRows?: UniqKeyType[] | ISelectedRows<UniqKeyType>;
|
|
47
|
-
onSelectRow?: (isSelect: boolean, selectedRowIndex: number, row: DTRow<UniqKeyType>, event?: React.SyntheticEvent<HTMLElement>) => void;
|
|
48
|
-
inert?: '';
|
|
49
|
-
accordionDuration: number | [number, number];
|
|
50
|
-
accordionAnimationRows: number;
|
|
51
|
-
onBackFromAccordion: (colName: string) => void;
|
|
52
|
-
scrollAreaRef: React.RefObject<HTMLDivElement>;
|
|
53
|
-
uid: string;
|
|
54
|
-
sideIndents?: 'wide';
|
|
55
|
-
getFixedStyle: (cell: Pick<DTColumn, 'name' | 'fixed'>) => [side: 'left' | 'right', style: string | number] | [side: undefined, style: undefined];
|
|
56
|
-
renderCell?: (props: CellRenderProps<Data[number], UniqKeyType>) => React.ReactNode | Record<string, any>;
|
|
57
|
-
getI18nText: (key: string) => string;
|
|
58
|
-
virtualScroll?: VirtualScroll;
|
|
59
|
-
tableRef: React.RefObject<HTMLDivElement>;
|
|
60
|
-
onCellClick: DataTableCellProps<Data, UniqKeyType>['onClick'];
|
|
61
|
-
rawData: DataRowItem[];
|
|
62
|
-
shadowVertical?: '' | 'end' | 'start' | 'median';
|
|
63
|
-
expandedRows: Set<UniqKeyType>;
|
|
64
|
-
accordionMode?: DataTableProps<any, any, any>['accordionMode'];
|
|
65
|
-
rowsHeightMap: Map<number, [number, number, HTMLElement]>;
|
|
66
|
-
setRowHeight: (index: number, row: DTRow<UniqKeyType>) => void;
|
|
67
|
-
componentsMap: Map<UniqKeyType, RowRoot<Data, UniqKeyType>>;
|
|
68
|
-
calculateAriaRowIndex: () => void;
|
|
69
|
-
variant: DataTableProps<any, any, any>['variant'];
|
|
70
|
-
limit: DataTableProps<any, any, any>['limit'];
|
|
71
|
-
totalRows?: number;
|
|
72
|
-
hasGroups: boolean;
|
|
73
|
-
};
|
|
74
|
-
export type DataTableRowType = (<Data extends DataTableData, UniqKeyType, Tag extends Intergalactic.Tag = 'div'>(props: Intergalactic.InternalTypings.ComponentProps<Tag, 'div', DataTableRowProps<Data, UniqKeyType> & Partial<RowPropsInner<Data, UniqKeyType>>>) => Intergalactic.InternalTypings.ComponentRenderingResults) & Intergalactic.InternalTypings.ComponentAdditive<'div', 'div', DataTableRowProps<any, any>>;
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import type { ISelectedRows } from '../../store/SelectableRows';
|
|
3
|
-
import type { RowRoot } from '../Body/Row';
|
|
4
|
-
import type { DTRow } from '../Body/Row.types';
|
|
5
|
-
import type { DataTableData } from '../DataTable/DataTable.types';
|
|
6
|
-
import type { DTColumn } from '../Head/Column.types';
|
|
7
|
-
type RowGroupProps<Data extends DataTableData, UniqKeyType> = {
|
|
8
|
-
rows: DTRow<UniqKeyType>[];
|
|
9
|
-
selectedRows?: UniqKeyType[] | ISelectedRows<UniqKeyType>;
|
|
10
|
-
columns: DTColumn[];
|
|
11
|
-
startIndex: number;
|
|
12
|
-
rowIndex: number;
|
|
13
|
-
handleRef: (index: number, row: DTRow<UniqKeyType>) => (node: HTMLElement | null) => void;
|
|
14
|
-
handleComponentRef: (row: DTRow<UniqKeyType>) => (component: RowRoot<Data, UniqKeyType> | null) => void;
|
|
15
|
-
};
|
|
16
|
-
export declare class RowGroup<Data extends DataTableData, UniqKeyType> extends React.PureComponent<RowGroupProps<Data, UniqKeyType>> {
|
|
17
|
-
render(): React.ReactNode;
|
|
18
|
-
}
|
|
19
|
-
export {};
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import type { DataTableType } from './DataTable.types';
|
|
2
|
-
import { Body } from '../Body/Body';
|
|
3
|
-
import { Head } from '../Head/Head';
|
|
4
|
-
export declare const ACCORDION: unique symbol;
|
|
5
|
-
export declare const ROW_GROUP: unique symbol;
|
|
6
|
-
export declare const UNIQ_ROW_KEY: unique symbol;
|
|
7
|
-
export declare const IS_EMPTY_DATA_ROW: unique symbol;
|
|
8
|
-
export declare const SELECT_ALL = "SELECT_ALL_ROWS";
|
|
9
|
-
export declare const ROW_INDEX: unique symbol;
|
|
10
|
-
export declare const GRID_ROW_INDEX: unique symbol;
|
|
11
|
-
export declare const DataTable: DataTableType & {
|
|
12
|
-
Head: typeof Head;
|
|
13
|
-
Body: typeof Body;
|
|
14
|
-
};
|
|
@@ -1,202 +0,0 @@
|
|
|
1
|
-
import type { BoxProps } from '@semcore/base-components';
|
|
2
|
-
import type { Intergalactic } from '@semcore/core';
|
|
3
|
-
import type Tooltip from '@semcore/tooltip';
|
|
4
|
-
import type * as React from 'react';
|
|
5
|
-
import type { ACCORDION, ROW_GROUP, UNIQ_ROW_KEY } from './DataTable';
|
|
6
|
-
import type { ISelectedRows } from '../../store/SelectableRows';
|
|
7
|
-
import type { DataTableBodyProps } from '../Body/Body.types';
|
|
8
|
-
import type { DTRow, RowPropsInner } from '../Body/Row.types';
|
|
9
|
-
import type { DataTableColumnProps } from '../Head/Column.types';
|
|
10
|
-
import type { DataTableHeadProps } from '../Head/Head.types';
|
|
11
|
-
/**
|
|
12
|
-
* Datatable must have an accessible name (aria-table-name).
|
|
13
|
-
* It should describe table content.
|
|
14
|
-
*/
|
|
15
|
-
export type DataTableAriaProps = Intergalactic.RequireAtLeastOne<{
|
|
16
|
-
'aria-label'?: string;
|
|
17
|
-
'aria-labelledby'?: string;
|
|
18
|
-
'title'?: string;
|
|
19
|
-
}>;
|
|
20
|
-
export type SortDirection = 'asc' | 'desc';
|
|
21
|
-
export type DataTableSort<Column> = [sortBy: Column, sortDirection: SortDirection];
|
|
22
|
-
export type DataTableChangeSort<Column> = (sort: [sortBy: Column, sortDirection: SortDirection], e?: React.SyntheticEvent) => void;
|
|
23
|
-
export type DataRowItem = {
|
|
24
|
-
[key: string]: DTValue | undefined | null;
|
|
25
|
-
[ACCORDION]?: React.ReactNode | DataTableData;
|
|
26
|
-
[ROW_GROUP]?: DataTableData;
|
|
27
|
-
[UNIQ_ROW_KEY]?: string;
|
|
28
|
-
};
|
|
29
|
-
export interface DTValue {
|
|
30
|
-
toString(): string;
|
|
31
|
-
[ACCORDION]?: React.ReactNode;
|
|
32
|
-
}
|
|
33
|
-
export type DataTableData = DataRowItem[];
|
|
34
|
-
export type DTUse = 'primary' | 'secondary';
|
|
35
|
-
export type Sizes = Partial<Pick<BoxProps, 'w' | 'wMax' | 'wMin' | 'h' | 'hMax' | 'hMin'>>;
|
|
36
|
-
export type DataTableProps<Data extends DataTableData, UniqKey extends (Data[number] extends {
|
|
37
|
-
[ROW_GROUP]: DataTableData;
|
|
38
|
-
} ? keyof Data[number][typeof ROW_GROUP][number] : keyof Data[number]), UniqKeyType extends (Data[number] extends {
|
|
39
|
-
[ROW_GROUP]: DataTableData;
|
|
40
|
-
} ? Data[number][typeof ROW_GROUP][number][UniqKey] : Data[number][UniqKey])> = DataTableAriaProps & Sizes & {
|
|
41
|
-
/** Data for table */
|
|
42
|
-
data: Data;
|
|
43
|
-
/** Count of total rows if table using virtual scroll. Needs for accessibility */
|
|
44
|
-
totalRows?: number;
|
|
45
|
-
/** Table theme according to visual hierarchy on the page
|
|
46
|
-
* @default primary
|
|
47
|
-
* */
|
|
48
|
-
use?: DTUse;
|
|
49
|
-
/** Active sort object */
|
|
50
|
-
sort?: DataTableSort<keyof Data[0]>;
|
|
51
|
-
/** Handler call when request will change sort */
|
|
52
|
-
onSortChange?: DataTableChangeSort<keyof Data[0]>;
|
|
53
|
-
/**
|
|
54
|
-
* Value to describe width for each column. Could be overridden in the column.gtcWidth property.
|
|
55
|
-
* Use `auto` to automatically fit the table to the content,
|
|
56
|
-
* `1fr` for equal-width columns or any other value for the grid-template-column css property.
|
|
57
|
-
* @default auto
|
|
58
|
-
*/
|
|
59
|
-
defaultGridTemplateColumnWidth?: string;
|
|
60
|
-
/**
|
|
61
|
-
* Flag for compact view (smaller horizontal paddings)
|
|
62
|
-
*/
|
|
63
|
-
compact?: boolean;
|
|
64
|
-
/**
|
|
65
|
-
* Size of paddings for the first and last columns in the table
|
|
66
|
-
*/
|
|
67
|
-
sideIndents?: 'wide';
|
|
68
|
-
/**
|
|
69
|
-
* Flag for showing spinner on table body
|
|
70
|
-
*/
|
|
71
|
-
loading?: boolean;
|
|
72
|
-
children?: never;
|
|
73
|
-
/**
|
|
74
|
-
* Set of expanded rows (uniq id from them)
|
|
75
|
-
* This is mutable! variable because of table performance. Don't change the link on it.
|
|
76
|
-
*/
|
|
77
|
-
expandedRows?: Set<UniqKeyType>;
|
|
78
|
-
/** Configuration for virtual scroll */
|
|
79
|
-
virtualScroll?: VirtualScroll;
|
|
80
|
-
/** Configuration for table columns including headers, sorting, and layout */
|
|
81
|
-
columns: ColumnsConfig;
|
|
82
|
-
/** Configuration for sticky headers, height, scroll bars, etc. */
|
|
83
|
-
headerProps?: DataTableHeadProps;
|
|
84
|
-
/** Function to add custom props to rows */
|
|
85
|
-
rowProps?: DataTableBodyProps<Data, UniqKeyType>['rowProps'];
|
|
86
|
-
/** Custom cell renderer function */
|
|
87
|
-
renderCell?: DataTableBodyProps<Data, UniqKeyType>['renderCell'];
|
|
88
|
-
/**
|
|
89
|
-
* Name of a unique key for each row data item
|
|
90
|
-
*/
|
|
91
|
-
uniqueRowKey?: UniqKey;
|
|
92
|
-
/**
|
|
93
|
-
* For custom empty data widget.
|
|
94
|
-
*/
|
|
95
|
-
renderEmptyData?: () => React.ReactNode;
|
|
96
|
-
/**
|
|
97
|
-
* For adding an overlay over table cells.
|
|
98
|
-
*/
|
|
99
|
-
renderCellOverlay?: () => React.ReactNode;
|
|
100
|
-
/**
|
|
101
|
-
* Duration for collapse/expand accordion rows in tables in ms.
|
|
102
|
-
* @default 200
|
|
103
|
-
*/
|
|
104
|
-
accordionDuration?: number | [number, number];
|
|
105
|
-
/**
|
|
106
|
-
* List of animated rows in accordion.
|
|
107
|
-
* @default 20
|
|
108
|
-
*/
|
|
109
|
-
accordionAnimationRows?: RowPropsInner<Data, UniqKeyType>['accordionAnimationRows'];
|
|
110
|
-
/**
|
|
111
|
-
* Whether multiple accordion items can be open at a time, or only one.
|
|
112
|
-
* @default 'independent'
|
|
113
|
-
*/
|
|
114
|
-
accordionMode?: 'toggle' | 'independent';
|
|
115
|
-
/**
|
|
116
|
-
* Handle open/close accordion.
|
|
117
|
-
* Work only with table-in-table accordions. In accordions with custom components use mount/unmount hooks in components.
|
|
118
|
-
*/
|
|
119
|
-
onAccordionToggle?: (type: 'open' | 'close', uniqRowKey: UniqKeyType, rowIndex: number) => void;
|
|
120
|
-
/** Defines a limit configuration */
|
|
121
|
-
limit?: {
|
|
122
|
-
/**
|
|
123
|
-
* Start limit from this row
|
|
124
|
-
* @default 0
|
|
125
|
-
*/
|
|
126
|
-
fromRow?: number;
|
|
127
|
-
/**
|
|
128
|
-
* Start limit from this column
|
|
129
|
-
* @default 0
|
|
130
|
-
*/
|
|
131
|
-
fromColumn?: number;
|
|
132
|
-
/** Limit overlay */
|
|
133
|
-
renderOverlay: () => React.ReactNode;
|
|
134
|
-
};
|
|
135
|
-
/**
|
|
136
|
-
* Visual variant that adapts the table styling to different usage contexts
|
|
137
|
-
* @default 'default'
|
|
138
|
-
*/
|
|
139
|
-
variant?: 'default' | 'card';
|
|
140
|
-
/**
|
|
141
|
-
* Handle change expanded rows
|
|
142
|
-
*/
|
|
143
|
-
onExpandedRowsChange?: (expandedRows: Set<UniqKeyType>) => void;
|
|
144
|
-
/**
|
|
145
|
-
* Handling table container resizing.
|
|
146
|
-
*/
|
|
147
|
-
onResize?: ResizeObserverCallback;
|
|
148
|
-
} & ({
|
|
149
|
-
/**
|
|
150
|
-
* List of selected rows (uniqIds from a data array)
|
|
151
|
-
* @deprecated use ISelectedRows for this property instead of an array.
|
|
152
|
-
*/
|
|
153
|
-
selectedRows?: UniqKeyType[];
|
|
154
|
-
/** Callback when row selection changes */
|
|
155
|
-
onSelectedRowsChange?: (selectedRows: UniqKeyType[], event?: React.SyntheticEvent<HTMLElement>, opts?: {
|
|
156
|
-
selectedRowIndex: number;
|
|
157
|
-
isSelected: boolean;
|
|
158
|
-
row: DTRow<UniqKeyType>;
|
|
159
|
-
}) => void;
|
|
160
|
-
} | {
|
|
161
|
-
/**
|
|
162
|
-
* Entity of selected rows (uniq id from them)
|
|
163
|
-
* This is mutable! variable because of table performance. Don't change the link on it.
|
|
164
|
-
*/
|
|
165
|
-
selectedRows?: ISelectedRows<UniqKeyType>;
|
|
166
|
-
});
|
|
167
|
-
export type ColumnItemConfig = Intergalactic.InternalTypings.EfficientOmit<Intergalactic.InternalTypings.ComponentProps<'div' | typeof Tooltip, 'div', DataTableColumnProps, {}, [
|
|
168
|
-
]>, 'children'> & {
|
|
169
|
-
children: React.ReactNode | React.FC;
|
|
170
|
-
};
|
|
171
|
-
export type ColumnGroupConfig = {
|
|
172
|
-
/**
|
|
173
|
-
* Name of column for mapping with data.
|
|
174
|
-
*
|
|
175
|
-
* Necessary to set a unique name for a group. (It will use as a React key).
|
|
176
|
-
*
|
|
177
|
-
* Note: Column names cannot contain the "/" character as it is reserved
|
|
178
|
-
* as a separator for merged columns. Column names are also used to generate
|
|
179
|
-
* CSS variable names for grid layout, so they must be valid CSS identifiers.
|
|
180
|
-
* Use letters, numbers, hyphens, and underscores only.
|
|
181
|
-
*/
|
|
182
|
-
name: string;
|
|
183
|
-
borders?: 'both' | 'left' | 'right';
|
|
184
|
-
fixed?: 'left' | 'right';
|
|
185
|
-
children: React.ReactNode;
|
|
186
|
-
columns: ColumnItemConfig[];
|
|
187
|
-
};
|
|
188
|
-
export type ColumnsConfig = Array<ColumnItemConfig | ColumnGroupConfig>;
|
|
189
|
-
export type VirtualScroll = boolean | {
|
|
190
|
-
rowsBuffer?: number;
|
|
191
|
-
aproxRowsOnPage?: number;
|
|
192
|
-
} | {
|
|
193
|
-
rowHeight: number;
|
|
194
|
-
rowsBuffer?: number;
|
|
195
|
-
};
|
|
196
|
-
export type RowIndex = number;
|
|
197
|
-
export type ColIndex = number;
|
|
198
|
-
export type DataTableType = (<Data extends DataTableData, UniqKey extends (Data[number] extends {
|
|
199
|
-
[ROW_GROUP]: DataTableData;
|
|
200
|
-
} ? keyof Data[number][typeof ROW_GROUP][number] : keyof Data[number]), UniqKeyType extends (Data[number] extends {
|
|
201
|
-
[ROW_GROUP]: DataTableData;
|
|
202
|
-
} ? Data[number][typeof ROW_GROUP][number][UniqKey] : Data[number][UniqKey]), Tag extends Intergalactic.Tag = 'div'>(props: Intergalactic.InternalTypings.EfficientOmit<Intergalactic.InternalTypings.ComponentProps<Tag, 'div', DataTableProps<Data, UniqKey, UniqKeyType>>, 'tag' | 'children'>) => Intergalactic.InternalTypings.ComponentRenderingResults) & Intergalactic.InternalTypings.ComponentAdditive<'div', 'div', DataTableProps<any, any, any>>;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
type Props = {
|
|
3
|
-
loading?: boolean;
|
|
4
|
-
withHeaderScrollBar?: boolean;
|
|
5
|
-
topOffset?: number;
|
|
6
|
-
withAnimation: boolean;
|
|
7
|
-
};
|
|
8
|
-
export declare class ScrollBars extends React.PureComponent<Props> {
|
|
9
|
-
render(): React.ReactNode;
|
|
10
|
-
}
|
|
11
|
-
export {};
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { Component } from '@semcore/core';
|
|
2
|
-
import * as React from 'react';
|
|
3
|
-
import type { ColumnPropsInner, DataTableColumnProps } from './Column.types';
|
|
4
|
-
import type { IFocusableCell, LockedCell } from '../../enhancers/focusableCell';
|
|
5
|
-
import type { ROW_GROUP } from '../DataTable/DataTable';
|
|
6
|
-
import type { DataTableData, SortDirection } from '../DataTable/DataTable.types';
|
|
7
|
-
type State = {
|
|
8
|
-
sortVisible: boolean;
|
|
9
|
-
};
|
|
10
|
-
export declare class Column<Data extends DataTableData, UniqKey extends (Data[number] extends {
|
|
11
|
-
[ROW_GROUP]: DataTableData;
|
|
12
|
-
} ? keyof Data[number][typeof ROW_GROUP][number] : keyof Data[number]), UniqKeyType extends (Data[number] extends {
|
|
13
|
-
[ROW_GROUP]: DataTableData;
|
|
14
|
-
} ? Data[number][typeof ROW_GROUP][number][UniqKey] : Data[number][UniqKey])> extends Component<DataTableColumnProps, [
|
|
15
|
-
], {}, ColumnPropsInner<Data, UniqKey, UniqKeyType>, State> implements IFocusableCell {
|
|
16
|
-
lockedCell: LockedCell;
|
|
17
|
-
static displayName: string;
|
|
18
|
-
static style: {
|
|
19
|
-
[key: string]: string;
|
|
20
|
-
};
|
|
21
|
-
columnRef: React.RefObject<HTMLDivElement>;
|
|
22
|
-
sortWrapperRef: React.RefObject<HTMLDivElement>;
|
|
23
|
-
state: State;
|
|
24
|
-
componentDidMount(): void;
|
|
25
|
-
componentDidUpdate(prevProps: DataTableColumnProps & ColumnPropsInner<Data, UniqKey, UniqKeyType>): void;
|
|
26
|
-
changeTemplateColumnBySort(): void;
|
|
27
|
-
calculateActiveColumnMinWidth: () => number | null;
|
|
28
|
-
get defaultDirection(): SortDirection;
|
|
29
|
-
handleMouseEnter: () => void;
|
|
30
|
-
handleMouseLeave: () => void;
|
|
31
|
-
handleBlur: (e: React.FocusEvent<HTMLElement>) => void;
|
|
32
|
-
handleSort: (e: React.SyntheticEvent<HTMLElement>) => void;
|
|
33
|
-
handleSortClick: (e: React.SyntheticEvent<HTMLElement>) => void;
|
|
34
|
-
handleFocusableCellKeyDown: (e: React.KeyboardEvent) => void;
|
|
35
|
-
handleFocusableCellFocus: (e: React.FocusEvent<HTMLElement, HTMLElement>) => void;
|
|
36
|
-
handleClick: (e: React.SyntheticEvent<HTMLElement>) => void;
|
|
37
|
-
render(): React.ReactNode;
|
|
38
|
-
}
|
|
39
|
-
export {};
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import type { Property } from 'csstype';
|
|
2
|
-
import type { BodyPropsInner } from '../Body/Body.types';
|
|
3
|
-
import type { DataTableCellProps } from '../Body/Cell.types';
|
|
4
|
-
import type { ROW_GROUP } from '../DataTable/DataTable';
|
|
5
|
-
import type { ColumnGroupConfig, ColumnItemConfig, DataTableData, DataTableProps, DTUse, SortDirection } from '../DataTable/DataTable.types';
|
|
6
|
-
export type CommonColumnType = {
|
|
7
|
-
/**
|
|
8
|
-
* Name of column for mapping with data
|
|
9
|
-
*/
|
|
10
|
-
name: string;
|
|
11
|
-
/**
|
|
12
|
-
* Flag to define column as sortable
|
|
13
|
-
*/
|
|
14
|
-
sortable?: boolean | SortDirection;
|
|
15
|
-
/**
|
|
16
|
-
* Fixes column to some side of table
|
|
17
|
-
*/
|
|
18
|
-
fixed?: 'left' | 'right';
|
|
19
|
-
/**
|
|
20
|
-
* Adds vertical border(s)
|
|
21
|
-
*/
|
|
22
|
-
borders?: 'both' | 'left' | 'right';
|
|
23
|
-
/**
|
|
24
|
-
* It manages the `flex-wrap` property
|
|
25
|
-
*/
|
|
26
|
-
flexWrap?: boolean;
|
|
27
|
-
/**
|
|
28
|
-
* It manages the `align-items` property
|
|
29
|
-
*/
|
|
30
|
-
alignItems?: Property.AlignItems;
|
|
31
|
-
/**
|
|
32
|
-
* It manages the `align-content` property
|
|
33
|
-
*/
|
|
34
|
-
alignContent?: Property.AlignContent;
|
|
35
|
-
/**
|
|
36
|
-
* CSS `justify-content` property
|
|
37
|
-
*/
|
|
38
|
-
justifyContent?: Property.JustifyContent;
|
|
39
|
-
/**
|
|
40
|
-
* CSS `text-align` property
|
|
41
|
-
*/
|
|
42
|
-
textAlign?: Property.TextAlign;
|
|
43
|
-
};
|
|
44
|
-
export type DTColumn = ColumnItemConfig & CommonColumnType & {
|
|
45
|
-
/**
|
|
46
|
-
* Width for grid-template-columns
|
|
47
|
-
*/
|
|
48
|
-
gtcWidth: string;
|
|
49
|
-
parent?: DTColumn | ColumnGroupConfig;
|
|
50
|
-
columns?: DTColumn[];
|
|
51
|
-
children?: React.ReactNode | React.FC;
|
|
52
|
-
gridArea?: string;
|
|
53
|
-
showShadowVertical?: boolean;
|
|
54
|
-
};
|
|
55
|
-
export type DataTableColumnProps = CommonColumnType & {
|
|
56
|
-
/**
|
|
57
|
-
* Value for grid-template-columns for current column
|
|
58
|
-
*/
|
|
59
|
-
gtcWidth?: string;
|
|
60
|
-
/**
|
|
61
|
-
* Flag for change column size if sorted by it
|
|
62
|
-
*/
|
|
63
|
-
changeSortSize?: boolean;
|
|
64
|
-
};
|
|
65
|
-
export type ColumnPropsInner<Data extends DataTableData, UniqKey extends (Data[number] extends {
|
|
66
|
-
[ROW_GROUP]: DataTableData;
|
|
67
|
-
} ? keyof Data[number][typeof ROW_GROUP][number] : keyof Data[number]), UniqKeyType extends (Data[number] extends {
|
|
68
|
-
[ROW_GROUP]: DataTableData;
|
|
69
|
-
} ? Data[number][typeof ROW_GROUP][number][UniqKey] : Data[number][UniqKey])> = {
|
|
70
|
-
use: DTUse;
|
|
71
|
-
borders?: 'both' | 'left' | 'right';
|
|
72
|
-
sort?: DataTableProps<Data, UniqKey, UniqKeyType>['sort'];
|
|
73
|
-
onSortChange?: DataTableProps<Data, UniqKey, UniqKeyType>['onSortChange'];
|
|
74
|
-
uid: string;
|
|
75
|
-
parent?: DTColumn;
|
|
76
|
-
sortableColumnDescribeId: string;
|
|
77
|
-
columnIndex: number;
|
|
78
|
-
tableRef: React.RefObject<HTMLElement>;
|
|
79
|
-
gridTemplateColumns: string[];
|
|
80
|
-
gridTemplateAreas: string[];
|
|
81
|
-
sticky: boolean;
|
|
82
|
-
onClick: DataTableCellProps<Data, UniqKeyType>['onClick'];
|
|
83
|
-
shadowVertical?: BodyPropsInner<Data, UniqKeyType>['shadowVertical'];
|
|
84
|
-
scrollDirection?: 'horizontal' | 'vertical' | 'both';
|
|
85
|
-
};
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { Component } from '@semcore/core';
|
|
2
|
-
import React from 'react';
|
|
3
|
-
import type { DataTableGroupProps, GroupPropsInner } from './Group.type';
|
|
4
|
-
export declare class Group extends Component<DataTableGroupProps, typeof Group.enhance, {}, GroupPropsInner> {
|
|
5
|
-
static displayName: string;
|
|
6
|
-
static style: {
|
|
7
|
-
[key: string]: string;
|
|
8
|
-
};
|
|
9
|
-
static enhance: readonly [(props: any) => {
|
|
10
|
-
uid: ReturnType<typeof import("@semcore/core/lib/utils/uniqueID").useUID>;
|
|
11
|
-
}];
|
|
12
|
-
componentDidMount(): void;
|
|
13
|
-
get groupId(): string;
|
|
14
|
-
render(): React.ReactNode;
|
|
15
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import type { ReactElement } from 'react';
|
|
2
|
-
import type { DataTableColumnProps, DTColumn } from './Column.types';
|
|
3
|
-
import type { BodyPropsInner } from '../Body/Body.types';
|
|
4
|
-
import type { DTUse } from '../DataTable/DataTable.types';
|
|
5
|
-
export type DataTableGroupProps = {
|
|
6
|
-
title: React.ReactNode;
|
|
7
|
-
borders?: 'both' | 'left' | 'right';
|
|
8
|
-
fixed?: 'left' | 'right';
|
|
9
|
-
children: Array<ReactElement<DataTableColumnProps>>;
|
|
10
|
-
name?: string;
|
|
11
|
-
columns?: DTColumn[];
|
|
12
|
-
};
|
|
13
|
-
export type GroupPropsInner = {
|
|
14
|
-
use: DTUse;
|
|
15
|
-
withConfig: boolean;
|
|
16
|
-
getFixedStyle: (cell: Pick<DTColumn, 'name' | 'fixed'>) => [side: 'left' | 'right', style: string | number] | [side: undefined, style: undefined];
|
|
17
|
-
shadowVertical?: BodyPropsInner<any, any>['shadowVertical'];
|
|
18
|
-
};
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { type Intergalactic } from '@semcore/core';
|
|
2
|
-
import type Tooltip from '@semcore/tooltip';
|
|
3
|
-
import type { DataTableColumnProps } from './Column.types';
|
|
4
|
-
import type { DataTableGroupProps } from './Group.type';
|
|
5
|
-
import type { DataTableHeadProps } from './Head.types';
|
|
6
|
-
export declare const Head: Intergalactic.Component<"div", DataTableHeadProps> & {
|
|
7
|
-
Column: <Tag extends "div" | typeof Tooltip = "div">(props: Intergalactic.InternalTypings.ComponentProps<Tag, "div", DataTableColumnProps, {}, []>) => Intergalactic.InternalTypings.ComponentRenderingResults;
|
|
8
|
-
Group: <Tag extends "div" | typeof Tooltip = "div">(props: Intergalactic.InternalTypings.ComponentProps<Tag, "div", DataTableGroupProps, {}, []>) => Intergalactic.InternalTypings.ComponentRenderingResults;
|
|
9
|
-
};
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import type { ColumnPropsInner, DTColumn } from './Column.types';
|
|
2
|
-
import type { ISelectedRows } from '../../store/SelectableRows';
|
|
3
|
-
import type { BodyPropsInner } from '../Body/Body.types';
|
|
4
|
-
import type { DataTableCellProps } from '../Body/Cell.types';
|
|
5
|
-
import type { DTRow } from '../Body/Row.types';
|
|
6
|
-
import type { ROW_GROUP } from '../DataTable/DataTable';
|
|
7
|
-
import type { DataTableData, DataTableProps, DTUse } from '../DataTable/DataTable.types';
|
|
8
|
-
export type DataTableHeadProps = {
|
|
9
|
-
/**
|
|
10
|
-
* Sticky header
|
|
11
|
-
* @default false
|
|
12
|
-
*/
|
|
13
|
-
sticky?: boolean;
|
|
14
|
-
/**
|
|
15
|
-
* offset for sticky header
|
|
16
|
-
*/
|
|
17
|
-
top?: number;
|
|
18
|
-
/**
|
|
19
|
-
* Height of header in px
|
|
20
|
-
*/
|
|
21
|
-
h?: number;
|
|
22
|
-
/** Enable scroll bar element in header */
|
|
23
|
-
withScrollBar?: boolean;
|
|
24
|
-
/** Animation duration for a top property. When it's set adds animation for top changes */
|
|
25
|
-
animationDuration?: number;
|
|
26
|
-
/** Outer ref for the header */
|
|
27
|
-
ref?: React.Ref<HTMLDivElement>;
|
|
28
|
-
};
|
|
29
|
-
export type HeadPropsInner<Data extends DataTableData, UniqKey extends (Data[number] extends {
|
|
30
|
-
[ROW_GROUP]: DataTableData;
|
|
31
|
-
} ? keyof Data[number][typeof ROW_GROUP][number] : keyof Data[number]), UniqKeyType extends (Data[number] extends {
|
|
32
|
-
[ROW_GROUP]: DataTableData;
|
|
33
|
-
} ? Data[number][typeof ROW_GROUP][number][UniqKey] : Data[number][UniqKey])> = {
|
|
34
|
-
use: DTUse;
|
|
35
|
-
tableRef: React.RefObject<HTMLElement>;
|
|
36
|
-
columns: DTColumn[];
|
|
37
|
-
treeColumns: DTColumn[];
|
|
38
|
-
compact: boolean;
|
|
39
|
-
sort?: DataTableProps<Data, UniqKey, UniqKeyType>['sort'];
|
|
40
|
-
onSortChange?: DataTableProps<Data, UniqKey, UniqKeyType>['onSortChange'];
|
|
41
|
-
getI18nText: (key: string) => string;
|
|
42
|
-
uid: string;
|
|
43
|
-
ref: React.Ref<HTMLDivElement>;
|
|
44
|
-
gridAreaGroupMap: Map<number, string>;
|
|
45
|
-
gridTemplateColumns: string[];
|
|
46
|
-
gridTemplateAreas: string[];
|
|
47
|
-
sideIndents?: 'wide';
|
|
48
|
-
totalRows: number;
|
|
49
|
-
selectedRows?: UniqKeyType[] | ISelectedRows<UniqKeyType>;
|
|
50
|
-
onChangeSelectAll?: (selectedRows: UniqKeyType[], event?: React.SyntheticEvent<HTMLElement>) => void;
|
|
51
|
-
flatRows: DTRow<UniqKeyType>[];
|
|
52
|
-
getFixedStyle: (cell: Pick<DTColumn, 'name' | 'fixed'>) => [side: 'left' | 'right', style: string | number] | [side: undefined, style: undefined];
|
|
53
|
-
onCellClick: DataTableCellProps<Data, UniqKeyType>['onClick'];
|
|
54
|
-
shadowVertical?: BodyPropsInner<Data, UniqKeyType>['shadowVertical'];
|
|
55
|
-
scrollDirection?: ColumnPropsInner<Data, UniqKey, UniqKeyType>['scrollDirection'];
|
|
56
|
-
isDataEmpty: boolean;
|
|
57
|
-
withAnimation: boolean;
|
|
58
|
-
};
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import type { ISelectedRows } from '../../store/SelectableRows';
|
|
3
|
-
import type { Theme } from '../Body/Cell.types';
|
|
4
|
-
import type { DTRow } from '../Body/Row.types';
|
|
5
|
-
type RowSelectorProps<UniqKeyType> = {
|
|
6
|
-
row: DTRow<UniqKeyType>;
|
|
7
|
-
rowIndex: number;
|
|
8
|
-
gridRowIndex: number;
|
|
9
|
-
expanded: boolean;
|
|
10
|
-
withAccordion: boolean;
|
|
11
|
-
uid: string;
|
|
12
|
-
theme?: Theme;
|
|
13
|
-
isCellHidden?: boolean;
|
|
14
|
-
isAccordionRow?: boolean;
|
|
15
|
-
selectedRows?: UniqKeyType[] | ISelectedRows<UniqKeyType>;
|
|
16
|
-
onSelectRow?: (isSelect: boolean, selectedRowIndex: number, row: DTRow<UniqKeyType>, event?: React.SyntheticEvent<HTMLElement>) => void;
|
|
17
|
-
fixed?: boolean;
|
|
18
|
-
};
|
|
19
|
-
type State = {
|
|
20
|
-
checked: boolean;
|
|
21
|
-
};
|
|
22
|
-
export declare class RowSelector<UniqKeyType> extends React.PureComponent<RowSelectorProps<UniqKeyType>, State> {
|
|
23
|
-
state: State;
|
|
24
|
-
private unsubscribeToggle;
|
|
25
|
-
constructor(props: RowSelectorProps<UniqKeyType>);
|
|
26
|
-
componentDidMount(): void;
|
|
27
|
-
componentWillUnmount(): void;
|
|
28
|
-
handleSelectRow: (value: boolean, event?: React.SyntheticEvent<HTMLElement>) => void;
|
|
29
|
-
handleClickCheckbox: (value: boolean) => (event?: React.SyntheticEvent<HTMLElement>) => void;
|
|
30
|
-
render(): React.JSX.Element;
|
|
31
|
-
}
|
|
32
|
-
export {};
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import type { DTRow } from '../Body/Row.types';
|
|
3
|
-
type Props<UniqKey> = {
|
|
4
|
-
selectedRows: Array<UniqKey>;
|
|
5
|
-
getI18nText: (key: string) => string;
|
|
6
|
-
flatRows: DTRow<UniqKey>[];
|
|
7
|
-
data: unknown[];
|
|
8
|
-
};
|
|
9
|
-
export declare function SRAnnouncer<UniqKey>(props: Props<UniqKey>): React.JSX.Element;
|
|
10
|
-
export {};
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import type { ISelectedRows } from '../../store/SelectableRows';
|
|
3
|
-
type Props<UniqKey> = {
|
|
4
|
-
selectedRows: ISelectedRows<UniqKey>;
|
|
5
|
-
getI18nText: (key: string) => string;
|
|
6
|
-
};
|
|
7
|
-
export declare function SRReactiveAnnouncer<UniqKey>(props: Props<UniqKey>): React.JSX.Element;
|
|
8
|
-
export {};
|