mig-schema-table 4.0.4 → 4.0.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/dist/index-BAWwGDLp.mjs +16162 -0
- package/dist/index-DnHilIb1.mjs +25093 -0
- package/dist/index.d.ts +6 -3
- package/dist/mig-schema-table.es.js +9 -0
- package/dist/mig-schema-table.umd.js +117 -0
- package/dist/style.css +1 -0
- package/package.json +54 -67
- package/dist/SchemaTable/ColumnResizers/index.d.ts +0 -9
- package/dist/SchemaTable/ColumnResizers/index.js +0 -34
- package/dist/SchemaTable/Td/index.d.ts +0 -24
- package/dist/SchemaTable/Td/index.js +0 -121
- package/dist/SchemaTable/Th/index.d.ts +0 -29
- package/dist/SchemaTable/Th/index.js +0 -133
- package/dist/SchemaTable/ThMenu/FilterMenuComponent/index.d.ts +0 -14
- package/dist/SchemaTable/ThMenu/FilterMenuComponent/index.js +0 -132
- package/dist/SchemaTable/ThMenu/index.d.ts +0 -25
- package/dist/SchemaTable/ThMenu/index.js +0 -56
- package/dist/SchemaTable/constants.d.ts +0 -2
- package/dist/SchemaTable/constants.js +0 -2
- package/dist/SchemaTable/index.d.ts +0 -67
- package/dist/SchemaTable/index.js +0 -715
- package/dist/inc/constant.d.ts +0 -9
- package/dist/inc/constant.js +0 -10
- package/dist/inc/data.d.ts +0 -2
- package/dist/inc/data.js +0 -50
- package/dist/inc/date.d.ts +0 -3
- package/dist/inc/date.js +0 -7
- package/dist/inc/schema.d.ts +0 -2
- package/dist/inc/schema.js +0 -32
- package/dist/inc/string.d.ts +0 -2
- package/dist/inc/string.js +0 -31
- package/dist/index.css +0 -208
- package/dist/index.js +0 -2
- package/dist/types.d.ts +0 -31
- package/dist/types.js +0 -1
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
2
|
-
var t = {};
|
|
3
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
4
|
-
t[p] = s[p];
|
|
5
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
6
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
7
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
8
|
-
t[p[i]] = s[p[i]];
|
|
9
|
-
}
|
|
10
|
-
return t;
|
|
11
|
-
};
|
|
12
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
|
-
import React from "react";
|
|
14
|
-
import { DEFAULT_DATE_FORMAT, DEFAULT_DATE_TIME_FORMAT, ENumberColumnFilterOperation, } from "../../../inc/constant";
|
|
15
|
-
import DatePicker from "react-datepicker";
|
|
16
|
-
import nl from "date-fns/locale/nl";
|
|
17
|
-
import { endOfDay } from "date-fns";
|
|
18
|
-
const numberColumnFilterOperationsLabelMap = {
|
|
19
|
-
[ENumberColumnFilterOperation.GT]: ">",
|
|
20
|
-
[ENumberColumnFilterOperation.LT]: "<",
|
|
21
|
-
[ENumberColumnFilterOperation.EQ]: "=",
|
|
22
|
-
};
|
|
23
|
-
const FilterMenuComponent = ({ columnFilterValue, onChange, onInputKeyDown, propIsRequired, propName, propSchema, translate, }) => {
|
|
24
|
-
const { type, format, minimum, maximum } = propSchema || {};
|
|
25
|
-
const value = columnFilterValue;
|
|
26
|
-
const isDateTime = format === "date-time";
|
|
27
|
-
switch (type) {
|
|
28
|
-
case "number":
|
|
29
|
-
case "integer":
|
|
30
|
-
const numberColumnFilterValue = (value || {});
|
|
31
|
-
const changeOperationValue = (operation, el, persistState) => {
|
|
32
|
-
const newValue = Object.assign(Object.assign({}, numberColumnFilterValue), { [operation]: el.value === "" ? undefined : parseInt(el.value) });
|
|
33
|
-
const hasValue = Object.values(newValue).find((opValue) => isFinite(opValue));
|
|
34
|
-
onChange(hasValue !== undefined &&
|
|
35
|
-
(minimum !== undefined ? hasValue >= minimum : true)
|
|
36
|
-
? newValue
|
|
37
|
-
: undefined, persistState);
|
|
38
|
-
};
|
|
39
|
-
return (_jsxs("ol", Object.assign({ className: "mig-schema-table-menu mig-schema-table__th-menu__filter-menu-component" }, { children: [propIsRequired ? null : (_jsxs("li", Object.assign({ style: { padding: 8 } }, { children: [_jsxs("label", Object.assign({ className: "d-flex" }, { children: [_jsx("input", { type: "checkbox", style: { marginRight: 14 }, checked: !!numberColumnFilterValue.filterEmpty, onChange: () => {
|
|
40
|
-
const { filterEmpty } = numberColumnFilterValue, newNumberColumnFilterValue = __rest(numberColumnFilterValue, ["filterEmpty"]);
|
|
41
|
-
if (!filterEmpty) {
|
|
42
|
-
newNumberColumnFilterValue.filterEmpty = true;
|
|
43
|
-
}
|
|
44
|
-
onChange(Object.keys(newNumberColumnFilterValue).length
|
|
45
|
-
? newNumberColumnFilterValue
|
|
46
|
-
: undefined, true);
|
|
47
|
-
} }), "Hide empty values"] })), _jsx("hr", {})] }))), Object.keys(ENumberColumnFilterOperation).map((operation) => {
|
|
48
|
-
const val = numberColumnFilterValue[operation];
|
|
49
|
-
return (_jsxs("li", { children: [_jsx("label", Object.assign({ style: { width: 40, paddingLeft: 16 } }, { children: numberColumnFilterOperationsLabelMap[operation] })), _jsx("input", { className: "form-control", style: { width: 120 }, type: "number", value: val !== undefined ? val : "", "data-prop-name": propName, onChange: (e) => {
|
|
50
|
-
changeOperationValue(operation, e.currentTarget, false);
|
|
51
|
-
}, onBlur: (e) => {
|
|
52
|
-
changeOperationValue(operation, e.currentTarget, true);
|
|
53
|
-
}, onKeyDown: onInputKeyDown, min: minimum, max: maximum })] }, operation));
|
|
54
|
-
})] })));
|
|
55
|
-
case "boolean":
|
|
56
|
-
let selectValue = value ? "✓" : "✕";
|
|
57
|
-
if (value === undefined) {
|
|
58
|
-
selectValue = "";
|
|
59
|
-
}
|
|
60
|
-
return (_jsx("ol", Object.assign({ className: "mig-schema-table-menu mig-schema-table__th-menu__filter-menu-component" }, { children: _jsx("li", { children: _jsxs("select", Object.assign({ autoFocus: true, className: "form-select", value: selectValue, "data-prop-name": propName, onChange: (e) => {
|
|
61
|
-
switch (e.currentTarget.value) {
|
|
62
|
-
case "✓":
|
|
63
|
-
onChange(true, true);
|
|
64
|
-
break;
|
|
65
|
-
case "✕":
|
|
66
|
-
onChange(false, true);
|
|
67
|
-
break;
|
|
68
|
-
default:
|
|
69
|
-
onChange(undefined, true);
|
|
70
|
-
}
|
|
71
|
-
} }, { children: [_jsx("option", Object.assign({ value: "" }, { children: "All" }), "all"), ["✓", "✕"].map((optionValue) => (_jsx("option", Object.assign({ value: optionValue }, { children: optionValue }), `column-filter-select-${optionValue}`)))] })) }) })));
|
|
72
|
-
// @ts-ignore
|
|
73
|
-
case "string":
|
|
74
|
-
if (propSchema === null || propSchema === void 0 ? void 0 : propSchema.enum) {
|
|
75
|
-
return (_jsx("ol", Object.assign({ className: "mig-schema-table-menu mig-schema-table__th-menu__filter-menu-component" }, { children: _jsx("li", { children: _jsxs("select", Object.assign({ autoFocus: true, className: "form-select", value: value, "data-prop-name": propName, onChange: (e) => {
|
|
76
|
-
onChange(e.currentTarget.value || undefined, true);
|
|
77
|
-
} }, { children: [_jsx("option", Object.assign({ value: "" }, { children: "All" }), "all"), propSchema.enum.map((value) => {
|
|
78
|
-
return (_jsx("option", Object.assign({ value: value }, { children: translate(value) }), `column-filter-select-${value}`));
|
|
79
|
-
})] })) }) })));
|
|
80
|
-
}
|
|
81
|
-
if (isDateTime || format === "date") {
|
|
82
|
-
const dateFormat = isDateTime
|
|
83
|
-
? DEFAULT_DATE_TIME_FORMAT
|
|
84
|
-
: DEFAULT_DATE_FORMAT;
|
|
85
|
-
const dateRangeValue = (columnFilterValue || {
|
|
86
|
-
from: undefined,
|
|
87
|
-
to: undefined,
|
|
88
|
-
filterEmpty: undefined,
|
|
89
|
-
});
|
|
90
|
-
return (_jsxs("ol", Object.assign({ className: "mig-schema-table-menu mig-schema-table__th-menu__filter-menu-component" }, { children: [propIsRequired ? null : (_jsxs("li", Object.assign({ style: { padding: 8 } }, { children: [_jsxs("label", Object.assign({ className: "d-flex" }, { children: [_jsx("input", { type: "checkbox", checked: !!dateRangeValue.filterEmpty, onChange: () => {
|
|
91
|
-
const { filterEmpty } = dateRangeValue, newDateRangeValue = __rest(dateRangeValue, ["filterEmpty"]);
|
|
92
|
-
if (!filterEmpty) {
|
|
93
|
-
newDateRangeValue.filterEmpty = true;
|
|
94
|
-
}
|
|
95
|
-
onChange(Object.keys(newDateRangeValue).length
|
|
96
|
-
? newDateRangeValue
|
|
97
|
-
: undefined, true);
|
|
98
|
-
} }), "Hide empty values"] })), _jsx("hr", {})] }))), _jsxs("li", Object.assign({ style: { padding: 8 } }, { children: [_jsx("label", Object.assign({ style: { width: 120, paddingLeft: 4 } }, { children: "After" })), _jsx(DatePicker, { dateFormat: dateFormat, "data-prop-name": propName, locale: nl, selected: dateRangeValue.from, onChange: (date) => {
|
|
99
|
-
if (!date && !dateRangeValue.to) {
|
|
100
|
-
onChange(undefined, true);
|
|
101
|
-
return;
|
|
102
|
-
}
|
|
103
|
-
if (dateRangeValue.to && date && date > dateRangeValue.to) {
|
|
104
|
-
return;
|
|
105
|
-
}
|
|
106
|
-
onChange(Object.assign(Object.assign({}, columnFilterValue), { from: date || undefined }), true);
|
|
107
|
-
}, placeholderText: dateFormat, isClearable: true, selectsStart: true, showTimeSelect: isDateTime, showTimeInput: isDateTime, timeIntervals: 15, shouldCloseOnSelect: !isDateTime })] })), _jsxs("li", Object.assign({ style: { padding: 8 } }, { children: [_jsx("label", Object.assign({ style: { width: 120, paddingLeft: 4 } }, { children: "Before" })), _jsx(DatePicker, { id: "filter-date", dateFormat: dateFormat, "data-prop-name": propName, locale: nl, selectsEnd: true, selected: dateRangeValue.to, onChange: (date) => {
|
|
108
|
-
if (!date && !dateRangeValue.from) {
|
|
109
|
-
onChange(undefined, true);
|
|
110
|
-
return;
|
|
111
|
-
}
|
|
112
|
-
const to = date
|
|
113
|
-
? isDateTime
|
|
114
|
-
? date
|
|
115
|
-
: endOfDay(date)
|
|
116
|
-
: undefined;
|
|
117
|
-
if (dateRangeValue.from && to && to < dateRangeValue.from) {
|
|
118
|
-
return;
|
|
119
|
-
}
|
|
120
|
-
onChange(Object.assign(Object.assign({}, columnFilterValue), { to }), true);
|
|
121
|
-
}, placeholderText: dateFormat, isClearable: true, startDate: dateRangeValue.from, endDate: dateRangeValue.to, showTimeInput: isDateTime, showTimeSelect: isDateTime, timeIntervals: 15, shouldCloseOnSelect: !isDateTime })] }))] })));
|
|
122
|
-
}
|
|
123
|
-
// falls through
|
|
124
|
-
default:
|
|
125
|
-
return (_jsx("ol", Object.assign({ className: "mig-schema-table-menu mig-schema-table__th-menu__filter-menu-component" }, { children: _jsx("li", { children: _jsx("input", { autoFocus: true, type: "text", className: "form-control", placeholder: `Search ${propName}`, "aria-label": `Search ${propName}`, value: (value || ""), "data-prop-name": propName, onChange: (e) => {
|
|
126
|
-
onChange(e.currentTarget.value || undefined, false);
|
|
127
|
-
}, onKeyDown: onInputKeyDown, onBlur: (e) => {
|
|
128
|
-
onChange(e.currentTarget.value || undefined, true);
|
|
129
|
-
} }) }) })));
|
|
130
|
-
}
|
|
131
|
-
};
|
|
132
|
-
export default React.memo(FilterMenuComponent);
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import React, { Dispatch, SetStateAction } from "react";
|
|
2
|
-
import { oas31 } from "openapi3-ts";
|
|
3
|
-
import { TColumnFilterValue } from "../index";
|
|
4
|
-
import { IColumnConfig } from "../../types";
|
|
5
|
-
export interface IThMenuConfig {
|
|
6
|
-
referenceElement: HTMLElement;
|
|
7
|
-
propName: string;
|
|
8
|
-
propConfig?: IColumnConfig<any>;
|
|
9
|
-
propIsRequired: boolean;
|
|
10
|
-
}
|
|
11
|
-
type TThMenuProps = IThMenuConfig & {
|
|
12
|
-
isSortable: boolean;
|
|
13
|
-
isFilterable: boolean;
|
|
14
|
-
onChange: (newValue: TColumnFilterValue | undefined, persistState?: boolean) => void;
|
|
15
|
-
onClose: (e: MouseEvent | React.MouseEvent) => void;
|
|
16
|
-
onInputKeyDown: (e: React.KeyboardEvent<HTMLElement>) => void;
|
|
17
|
-
propIsRequired: boolean;
|
|
18
|
-
propSchema: oas31.SchemaObject;
|
|
19
|
-
setSortAsc: Dispatch<SetStateAction<boolean>>;
|
|
20
|
-
setSortColumn: Dispatch<SetStateAction<string>>;
|
|
21
|
-
translate: (key: string, ...args: Array<string | number>) => string;
|
|
22
|
-
value: TColumnFilterValue;
|
|
23
|
-
};
|
|
24
|
-
declare const _default: React.MemoExoticComponent<({ isSortable, isFilterable, onChange, onClose, onInputKeyDown, propConfig, propIsRequired, propName, propSchema, referenceElement, setSortAsc, setSortColumn, translate, value, }: TThMenuProps) => import("react/jsx-runtime").JSX.Element | null>;
|
|
25
|
-
export default _default;
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import React from "react";
|
|
3
|
-
import FilterMenuComponent from "./FilterMenuComponent";
|
|
4
|
-
import { usePopper } from "react-popper";
|
|
5
|
-
const ThMenu = ({ isSortable, isFilterable, onChange, onClose, onInputKeyDown, propConfig, propIsRequired, propName, propSchema, referenceElement, setSortAsc, setSortColumn, translate, value, }) => {
|
|
6
|
-
const [menu, setMenu] = React.useState(null);
|
|
7
|
-
const [subMenu, setSubMenu] = React.useState(null);
|
|
8
|
-
const [subMenuReferenceElement, setSubMenuReferenceElement] = React.useState(null);
|
|
9
|
-
const menuPopper = usePopper(referenceElement, menu, {
|
|
10
|
-
placement: "bottom-end",
|
|
11
|
-
});
|
|
12
|
-
const subMenuPopper = usePopper(subMenuReferenceElement, subMenu, {
|
|
13
|
-
placement: "right-start",
|
|
14
|
-
});
|
|
15
|
-
React.useEffect(() => {
|
|
16
|
-
const onWindowClick = (e) => {
|
|
17
|
-
if (!menu) {
|
|
18
|
-
return;
|
|
19
|
-
}
|
|
20
|
-
let parent = e.target;
|
|
21
|
-
while (parent && menu) {
|
|
22
|
-
if (parent === menu || parent === subMenu) {
|
|
23
|
-
return;
|
|
24
|
-
}
|
|
25
|
-
parent =
|
|
26
|
-
parent.parentNode === window.document ? null : parent.parentNode;
|
|
27
|
-
}
|
|
28
|
-
onClose(e);
|
|
29
|
-
};
|
|
30
|
-
window.addEventListener("click", onWindowClick, { capture: true });
|
|
31
|
-
return () => {
|
|
32
|
-
window.removeEventListener("click", onWindowClick, { capture: true });
|
|
33
|
-
};
|
|
34
|
-
}, [onClose, menu, subMenu]);
|
|
35
|
-
const FilterMenu = (propConfig === null || propConfig === void 0 ? void 0 : propConfig.FilterMenu) || FilterMenuComponent;
|
|
36
|
-
const onSortAscendingClick = React.useCallback((e) => {
|
|
37
|
-
setSortColumn(propName);
|
|
38
|
-
setSortAsc(true);
|
|
39
|
-
onClose(e);
|
|
40
|
-
}, [onClose, propName, setSortAsc, setSortColumn]);
|
|
41
|
-
const onSortDescendingClick = React.useCallback((e) => {
|
|
42
|
-
setSortColumn(propName);
|
|
43
|
-
setSortAsc(false);
|
|
44
|
-
onClose(e);
|
|
45
|
-
}, [onClose, propName, setSortAsc, setSortColumn]);
|
|
46
|
-
const onFilterCheckboxChange = React.useCallback(() => {
|
|
47
|
-
onChange(undefined, true);
|
|
48
|
-
}, [onChange]);
|
|
49
|
-
if (!isSortable && !isFilterable) {
|
|
50
|
-
return null;
|
|
51
|
-
}
|
|
52
|
-
return (_jsxs(_Fragment, { children: [_jsx("div", Object.assign({ className: "mig-schema-table__th-menu", ref: setMenu, style: menuPopper.styles.popper }, menuPopper.attributes.popper, { children: _jsxs("ol", Object.assign({ className: "mig-schema-table-menu" }, { children: [isSortable ? (_jsxs("li", Object.assign({ onClick: onSortAscendingClick, style: { padding: 8 } }, { children: [_jsx("span", Object.assign({ className: "mig-schema-table__th-menu__icon" }, { children: "\u2193" })), " Sort ascending"] }))) : null, isSortable ? (_jsxs("li", Object.assign({ onClick: onSortDescendingClick, style: { padding: 8 } }, { children: [_jsx("span", Object.assign({ className: "mig-schema-table__th-menu__icon" }, { children: "\u2191" })), " Sort descending"] }))) : null, isFilterable ? (_jsxs("li", Object.assign({ style: { padding: 8 }, onMouseOver: (e) => {
|
|
53
|
-
setSubMenuReferenceElement(e.currentTarget);
|
|
54
|
-
} }, { children: [_jsx("span", Object.assign({ className: "mig-schema-table__th-menu__icon" }, { children: _jsx("input", { type: "checkbox", id: "mig-schema-table__th-menu__filters", checked: value !== undefined, disabled: value === undefined, onChange: onFilterCheckboxChange }) })), _jsx("label", Object.assign({ htmlFor: "mig-schema-table__th-menu__filters" }, { children: "Filters" })), _jsx("div", { className: "mig-schema-table__th-menu__sub-menu-indicator" })] }))) : null] })) })), subMenuReferenceElement ? (_jsx("div", Object.assign({ className: "mig-schema-table__th-menu__sub-menu", ref: setSubMenu, style: subMenuPopper.styles.popper }, subMenuPopper.attributes.popper, { children: _jsx(FilterMenu, { columnFilterValue: value, onChange: onChange, onInputKeyDown: onInputKeyDown, propIsRequired: propIsRequired, propName: propName, propSchema: propSchema, translate: translate }) }))) : null] }));
|
|
55
|
-
};
|
|
56
|
-
export default React.memo(ThMenu);
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { oas31 } from "openapi3-ts";
|
|
3
|
-
import { VariableSizeGrid } from "react-window";
|
|
4
|
-
import { IColumnConfig, IRenderData } from "../types";
|
|
5
|
-
import { ENumberColumnFilterOperation } from "../inc/constant";
|
|
6
|
-
export interface IGetDataProps {
|
|
7
|
-
searchQuery: string;
|
|
8
|
-
columnFilterMap: {
|
|
9
|
-
[propName: string]: TColumnFilterValue;
|
|
10
|
-
};
|
|
11
|
-
sortColumn?: string;
|
|
12
|
-
sortAsc: boolean;
|
|
13
|
-
}
|
|
14
|
-
interface IColumnFilterMap {
|
|
15
|
-
[propName: string]: TColumnFilterValue;
|
|
16
|
-
}
|
|
17
|
-
export interface ISchemaTableProps<T> {
|
|
18
|
-
Heading?: any;
|
|
19
|
-
checkedIndexes?: number[];
|
|
20
|
-
config?: {
|
|
21
|
-
[propName: string]: IColumnConfig<T>;
|
|
22
|
-
};
|
|
23
|
-
customElement?: React.ReactNode;
|
|
24
|
-
data: T[] | ((getDataProps: IGetDataProps) => Promise<T[]>);
|
|
25
|
-
defaultColumnFilters?: IColumnFilterMap;
|
|
26
|
-
defaultSortAsc?: boolean;
|
|
27
|
-
defaultSortColumn?: keyof T;
|
|
28
|
-
disabledCheckedIndexes?: number[];
|
|
29
|
-
enableAutoFocus?: boolean;
|
|
30
|
-
enableRowCounter?: boolean;
|
|
31
|
-
getRowClassName?: (rowData: T, dataIndex: number, filteredSortedData: IRenderData[]) => string;
|
|
32
|
-
getRowSelected?: (rowData: T, dataIndex: number) => boolean;
|
|
33
|
-
isColumnFilterable?: boolean;
|
|
34
|
-
isExportable?: boolean;
|
|
35
|
-
isResizable?: boolean;
|
|
36
|
-
isSearchable?: boolean;
|
|
37
|
-
isSortable?: boolean;
|
|
38
|
-
maxHeight?: number;
|
|
39
|
-
onCheckedIndexesChange?: (dataIndex: number[]) => void;
|
|
40
|
-
onRowClick?: (rowData: T, dataIndex: number, event: React.MouseEvent) => void;
|
|
41
|
-
onRowDoubleClick?: (rowData: T, dataIndex: number, event: React.MouseEvent) => void;
|
|
42
|
-
onSearchEnter?: (searchQuery: string) => void;
|
|
43
|
-
rowHeight?: number;
|
|
44
|
-
schema: oas31.SchemaObject;
|
|
45
|
-
searchPlaceholder?: string;
|
|
46
|
-
settingsStorageKey?: string;
|
|
47
|
-
style?: React.CSSProperties;
|
|
48
|
-
translate?: (key: string, ...args: Array<string | number>) => string;
|
|
49
|
-
useFilterStateHash?: boolean;
|
|
50
|
-
width: number;
|
|
51
|
-
tableRef?: React.RefObject<VariableSizeGrid>;
|
|
52
|
-
}
|
|
53
|
-
export interface IDateColumnFilterValue {
|
|
54
|
-
from?: Date;
|
|
55
|
-
to?: Date;
|
|
56
|
-
filterEmpty?: true;
|
|
57
|
-
}
|
|
58
|
-
export interface INumberColumnFilterValue {
|
|
59
|
-
[ENumberColumnFilterOperation.GT]: number;
|
|
60
|
-
[ENumberColumnFilterOperation.LT]: number;
|
|
61
|
-
[ENumberColumnFilterOperation.EQ]: number;
|
|
62
|
-
filterEmpty?: true;
|
|
63
|
-
}
|
|
64
|
-
export type TColumnFilterValue = string | boolean | number | IDateColumnFilterValue | INumberColumnFilterValue;
|
|
65
|
-
declare function SchemaTable<T>({ Heading, checkedIndexes, config, customElement, data, defaultColumnFilters, defaultSortAsc, defaultSortColumn, disabledCheckedIndexes, enableAutoFocus, enableRowCounter, getRowClassName, getRowSelected, isColumnFilterable, isExportable, isResizable, isSearchable, isSortable, maxHeight, onCheckedIndexesChange, onRowClick, onRowDoubleClick, onSearchEnter, rowHeight, schema, searchPlaceholder, settingsStorageKey, style, translate, useFilterStateHash, width, tableRef, }: ISchemaTableProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
66
|
-
declare const _default: typeof SchemaTable;
|
|
67
|
-
export default _default;
|