@absreim/react-bootstrap-data-grid 1.2.2 → 1.4.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.
Files changed (82) hide show
  1. package/ColHeaderCell.d.ts +2 -1
  2. package/ColHeaderCell.js +6 -6
  3. package/Grid.d.ts +10 -10
  4. package/Grid.js +56 -43
  5. package/ToggleButton.d.ts +1 -0
  6. package/ToggleButton.js +5 -3
  7. package/editing/EditControlsCell.d.ts +16 -0
  8. package/editing/EditControlsCell.js +19 -0
  9. package/editing/EditableRow.d.ts +20 -0
  10. package/editing/EditableRow.js +67 -0
  11. package/editing/inputStrsToRowDef.d.ts +3 -0
  12. package/editing/inputStrsToRowDef.js +18 -0
  13. package/editing/types.d.ts +14 -0
  14. package/{FilterOptionsTable → filtering}/DateFilterRow.d.ts +8 -2
  15. package/filtering/DateFilterRow.js +46 -0
  16. package/{FilterOptionsTable → filtering}/FilterOptionsTable.d.ts +4 -1
  17. package/{FilterOptionsTable → filtering}/FilterOptionsTable.js +26 -7
  18. package/filtering/FilterRow.d.ts +19 -0
  19. package/filtering/FilterRow.js +18 -0
  20. package/{FilterOptionsTable → filtering}/NumberFilterRow.d.ts +7 -2
  21. package/filtering/NumberFilterRow.js +35 -0
  22. package/filtering/StringFilterRow.d.ts +14 -0
  23. package/filtering/StringFilterRow.js +35 -0
  24. package/filtering/types.d.ts +64 -0
  25. package/filtering/types.js +30 -0
  26. package/{FilterOptionsTable → filtering}/useFormStateFromTableFilterState.d.ts +1 -2
  27. package/index.d.ts +6 -1
  28. package/index.js +6 -1
  29. package/package.json +3 -2
  30. package/pagination/PageSelector.d.ts +2 -2
  31. package/pagination/Pagination.d.ts +3 -1
  32. package/pagination/Pagination.js +2 -2
  33. package/pagination/types.d.ts +12 -0
  34. package/pagination/types.js +1 -0
  35. package/pipeline/useCurrentPageRows.d.ts +4 -0
  36. package/pipeline/useCurrentPageRows.js +14 -0
  37. package/{hooks → pipeline}/useDisplayRows.d.ts +1 -1
  38. package/{hooks → pipeline}/useDisplayRows.js +28 -21
  39. package/{hooks → pipeline}/useEditableFromFilterState.d.ts +1 -1
  40. package/{hooks → pipeline}/useFilter.d.ts +2 -1
  41. package/{hooks → pipeline}/useFilterStateFromEditable.d.ts +2 -1
  42. package/{hooks → pipeline}/useSortedRows.d.ts +2 -1
  43. package/selection/SelectAllHeaderCell.d.ts +2 -1
  44. package/selection/SelectAllHeaderCell.js +7 -6
  45. package/selection/SelectionInput.d.ts +1 -0
  46. package/selection/SelectionInput.js +3 -2
  47. package/selection/types.d.ts +16 -0
  48. package/selection/types.js +4 -0
  49. package/sorting/types.d.ts +13 -0
  50. package/sorting/types.js +1 -0
  51. package/style.scss +4 -4
  52. package/styling/styleModelUnwrappers.d.ts +4 -0
  53. package/styling/styleModelUnwrappers.js +57 -0
  54. package/styling/types.d.ts +44 -0
  55. package/styling/types.js +1 -0
  56. package/types.d.ts +2 -83
  57. package/types.js +1 -30
  58. package/{hooks → util}/useControlledHover.js +3 -7
  59. package/FilterOptionsTable/DateFilterRow.js +0 -45
  60. package/FilterOptionsTable/NumberFilterRow.js +0 -34
  61. package/FilterOptionsTable/StringFilterRow.d.ts +0 -9
  62. package/FilterOptionsTable/StringFilterRow.js +0 -34
  63. package/FilterOptionsTable/types.d.ts +0 -13
  64. /package/{FilterOptionsTable → editing}/types.js +0 -0
  65. /package/{FilterOptionsTable → filtering}/useFormStateFromTableFilterState.js +0 -0
  66. /package/{hooks → pipeline}/useAugmentedRows.d.ts +0 -0
  67. /package/{hooks → pipeline}/useAugmentedRows.js +0 -0
  68. /package/{hooks → pipeline}/useEditableFromFilterState.js +0 -0
  69. /package/{hooks → pipeline}/useFilter.js +0 -0
  70. /package/{hooks → pipeline}/useFilterStateFromEditable.js +0 -0
  71. /package/{hooks → pipeline}/useSortedRows.js +0 -0
  72. /package/{icons → selection}/deselectAll.d.ts +0 -0
  73. /package/{icons → selection}/deselectAll.js +0 -0
  74. /package/{icons → selection}/selectAll.d.ts +0 -0
  75. /package/{icons → selection}/selectAll.js +0 -0
  76. /package/{icons → sorting}/arrowPlaceholder.d.ts +0 -0
  77. /package/{icons → sorting}/arrowPlaceholder.js +0 -0
  78. /package/{icons → sorting}/downArrow.d.ts +0 -0
  79. /package/{icons → sorting}/downArrow.js +0 -0
  80. /package/{icons → sorting}/upArrow.d.ts +0 -0
  81. /package/{icons → sorting}/upArrow.js +0 -0
  82. /package/{hooks → util}/useControlledHover.d.ts +0 -0
@@ -0,0 +1,57 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var unwrapSharedStyleModel = function (sharedStyleModel) { return ({
13
+ table: (sharedStyleModel === null || sharedStyleModel === void 0 ? void 0 : sharedStyleModel.table) || [],
14
+ tbody: (sharedStyleModel === null || sharedStyleModel === void 0 ? void 0 : sharedStyleModel.tbody) || [],
15
+ thead: (sharedStyleModel === null || sharedStyleModel === void 0 ? void 0 : sharedStyleModel.thead) || [],
16
+ theadTr: (sharedStyleModel === null || sharedStyleModel === void 0 ? void 0 : sharedStyleModel.theadTr) || [],
17
+ theadTh: (sharedStyleModel === null || sharedStyleModel === void 0 ? void 0 : sharedStyleModel.theadTh) ? sharedStyleModel.theadTh : function () { return []; },
18
+ caption: (sharedStyleModel === null || sharedStyleModel === void 0 ? void 0 : sharedStyleModel.caption) || [],
19
+ }); };
20
+ export var unwrapTableStyleModel = function (tableStyleModel) { return (__assign(__assign({}, unwrapSharedStyleModel(tableStyleModel)), { tbodyTr: (tableStyleModel === null || tableStyleModel === void 0 ? void 0 : tableStyleModel.tbodyTr) ? tableStyleModel.tbodyTr : function () { return []; }, tbodyTd: (tableStyleModel === null || tableStyleModel === void 0 ? void 0 : tableStyleModel.tbodyTd) ? tableStyleModel.tbodyTd : function () { return []; }, tbodyTdInput: (tableStyleModel === null || tableStyleModel === void 0 ? void 0 : tableStyleModel.tbodyTdInput)
21
+ ? tableStyleModel.tbodyTdInput
22
+ : function () { return []; }, editColTh: (tableStyleModel === null || tableStyleModel === void 0 ? void 0 : tableStyleModel.editColTh) || [], editColTd: (tableStyleModel === null || tableStyleModel === void 0 ? void 0 : tableStyleModel.editColTd) ? tableStyleModel.editColTd : function () { return []; }, editCancelButton: (tableStyleModel === null || tableStyleModel === void 0 ? void 0 : tableStyleModel.editCancelButton)
23
+ ? tableStyleModel.editCancelButton
24
+ : function () { return []; }, editDeleteButton: (tableStyleModel === null || tableStyleModel === void 0 ? void 0 : tableStyleModel.editDeleteButton)
25
+ ? tableStyleModel.editDeleteButton
26
+ : function () { return []; }, editSaveButton: (tableStyleModel === null || tableStyleModel === void 0 ? void 0 : tableStyleModel.editSaveButton)
27
+ ? tableStyleModel.editSaveButton
28
+ : function () { return []; }, editStartButton: (tableStyleModel === null || tableStyleModel === void 0 ? void 0 : tableStyleModel.editStartButton)
29
+ ? tableStyleModel.editStartButton
30
+ : function () { return []; }, rowSelectColTh: (tableStyleModel === null || tableStyleModel === void 0 ? void 0 : tableStyleModel.rowSelectColTh) || [], rowSelectColTd: (tableStyleModel === null || tableStyleModel === void 0 ? void 0 : tableStyleModel.rowSelectColTd)
31
+ ? tableStyleModel.rowSelectColTd
32
+ : function () { return []; }, rowSelectInput: (tableStyleModel === null || tableStyleModel === void 0 ? void 0 : tableStyleModel.rowSelectInput)
33
+ ? tableStyleModel.rowSelectInput
34
+ : function () { return []; } })); };
35
+ export var unwrapFilterInputTableStyleModel = function (filterTableStyleModel) { return (__assign(__assign({}, unwrapSharedStyleModel(filterTableStyleModel)), { tbodyTr: (filterTableStyleModel === null || filterTableStyleModel === void 0 ? void 0 : filterTableStyleModel.tbodyTr)
36
+ ? filterTableStyleModel.tbodyTr
37
+ : function () { return []; }, tbodyTd: (filterTableStyleModel === null || filterTableStyleModel === void 0 ? void 0 : filterTableStyleModel.tbodyTd)
38
+ ? filterTableStyleModel.tbodyTd
39
+ : function () { return []; }, enablementInput: (filterTableStyleModel === null || filterTableStyleModel === void 0 ? void 0 : filterTableStyleModel.enablementInput)
40
+ ? filterTableStyleModel.enablementInput
41
+ : function () { return []; }, schemeSelectionInput: (filterTableStyleModel === null || filterTableStyleModel === void 0 ? void 0 : filterTableStyleModel.schemeSelectionInput)
42
+ ? filterTableStyleModel.schemeSelectionInput
43
+ : function () { return []; }, searchStringInput: (filterTableStyleModel === null || filterTableStyleModel === void 0 ? void 0 : filterTableStyleModel.searchStringInput)
44
+ ? filterTableStyleModel.searchStringInput
45
+ : function () { return []; }, numberInput: (filterTableStyleModel === null || filterTableStyleModel === void 0 ? void 0 : filterTableStyleModel.numberInput)
46
+ ? filterTableStyleModel.numberInput
47
+ : function () { return []; }, startDateInput: (filterTableStyleModel === null || filterTableStyleModel === void 0 ? void 0 : filterTableStyleModel.startDateInput)
48
+ ? filterTableStyleModel.startDateInput
49
+ : function () { return []; }, endDateInput: (filterTableStyleModel === null || filterTableStyleModel === void 0 ? void 0 : filterTableStyleModel.endDateInput)
50
+ ? filterTableStyleModel.endDateInput
51
+ : function () { return []; }, submitButton: (filterTableStyleModel === null || filterTableStyleModel === void 0 ? void 0 : filterTableStyleModel.submitButton) || [] })); };
52
+ export var unwrapAdditionalComponentsStyleModel = function (styleModel) { return ({
53
+ topLevelDiv: (styleModel === null || styleModel === void 0 ? void 0 : styleModel.topLevelDiv) || [],
54
+ filterInputsDiv: (styleModel === null || styleModel === void 0 ? void 0 : styleModel.filterInputsDiv) || [],
55
+ tableAndPaginationDiv: (styleModel === null || styleModel === void 0 ? void 0 : styleModel.tableAndPaginationDiv) || [],
56
+ filterUiToggleButton: (styleModel === null || styleModel === void 0 ? void 0 : styleModel.filterUiToggleButton) || [],
57
+ }); };
@@ -0,0 +1,44 @@
1
+ export interface SharedTableStyleModel {
2
+ table?: string[];
3
+ tbody?: string[];
4
+ thead?: string[];
5
+ theadTr?: string[];
6
+ theadTh?: (colIndex: number) => string[];
7
+ caption?: string[];
8
+ }
9
+ export type TableStyleModel = SharedTableStyleModel & {
10
+ tbodyTr?: (origIndex: number, displayIndex: number) => string[];
11
+ tbodyTd?: (origRowIndex: number, displayRowIndex: number, colIndex: number) => string[];
12
+ tbodyTdInput?: (origRowIndex: number, displayRowIndex: number, colIndex: number) => string[];
13
+ editColTh?: string[];
14
+ editColTd?: (origIndex: number, displayIndex: number) => string[];
15
+ editStartButton?: (origIndex: number, displayIndex: number) => string[];
16
+ editDeleteButton?: (origIndex: number, displayIndex: number) => string[];
17
+ editSaveButton?: (origIndex: number, displayIndex: number) => string[];
18
+ editCancelButton?: (origIndex: number, displayIndex: number) => string[];
19
+ rowSelectColTh?: string[];
20
+ rowSelectColTd?: (origIndex: number, displayIndex: number) => string[];
21
+ rowSelectInput?: (origIndex: number, displayIndex: number) => string[];
22
+ };
23
+ export type FilterInputTableStyleModel = SharedTableStyleModel & {
24
+ tbodyTr?: (rowIndex: number) => string[];
25
+ tbodyTd?: (rowIndex: number, colIndex: number) => string[];
26
+ enablementInput?: (rowIndex: number) => string[];
27
+ schemeSelectionInput?: (rowIndex: number) => string[];
28
+ searchStringInput?: (rowIndex: number) => string[];
29
+ numberInput?: (rowIndex: number) => string[];
30
+ startDateInput?: (rowIndex: number) => string[];
31
+ endDateInput?: (rowIndex: number) => string[];
32
+ submitButton?: string[];
33
+ };
34
+ export interface AdditionalComponentsStyleModel {
35
+ topLevelDiv?: string[];
36
+ filterInputsDiv?: string[];
37
+ tableAndPaginationDiv?: string[];
38
+ filterUiToggleButton?: string[];
39
+ }
40
+ export interface StyleModel {
41
+ mainTableStyleModel?: TableStyleModel;
42
+ filterInputTableStyleModel?: FilterInputTableStyleModel;
43
+ additionalComponentsStyleModel?: AdditionalComponentsStyleModel;
44
+ }
@@ -0,0 +1 @@
1
+ export {};
package/types.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { CellData } from "./editing/types";
1
2
  export type ColDataType = string | number | Date;
2
3
  export type ColDataTypeStrings = "string" | "number" | "date" | "datetime";
3
4
  export interface ColDef {
@@ -16,90 +17,8 @@ export interface AugRowDef {
16
17
  meta: RowMetadata;
17
18
  }
18
19
  export interface FormattedRow {
19
- contents: string[];
20
+ contents: CellData[];
20
21
  origIndex: number;
21
22
  }
22
23
  export type JustifyContentSetting = "start" | "end" | "center" | "between" | "around" | "evenly";
23
24
  export type Size = "small" | "medium" | "large";
24
- export type SortOrder = "asc" | "desc";
25
- export interface SortColDef {
26
- name: string;
27
- order: SortOrder;
28
- }
29
- export interface ColSortModel {
30
- sortOrder: SortOrder | null;
31
- setSortOrder: (order: SortOrder | null) => void;
32
- }
33
- export interface TableSortModel {
34
- sortColDef: SortColDef | null;
35
- setSortColDef: (sortColDef: SortColDef | null) => void;
36
- }
37
- export type TableFilterState = Record<string, ColFilterState>;
38
- export type EditableTableFilterState = Record<string, FilterState>;
39
- export interface ColFilterState {
40
- editableState: FilterState;
41
- label: string;
42
- }
43
- export interface AbstractFilterState {
44
- enabled: boolean;
45
- }
46
- export declare const stringFilterSchemes: readonly ["contains", "startsWith", "endsWith"];
47
- export type StringFilterScheme = (typeof stringFilterSchemes)[number];
48
- export declare const stringFilterSchemeNames: Record<StringFilterScheme, string>;
49
- export interface StringFilterState extends AbstractFilterState {
50
- type: "string";
51
- scheme: StringFilterScheme;
52
- searchString: string;
53
- }
54
- export declare const numberFilterSchemes: readonly ["equals", "greaterThan", "lessThan", "greaterOrEqual", "lessOrEqual"];
55
- export type NumberFilterScheme = (typeof numberFilterSchemes)[number];
56
- export declare const numberFilterSchemeNames: Record<NumberFilterScheme, string>;
57
- export interface NumberFilterState extends AbstractFilterState {
58
- type: "number";
59
- scheme: NumberFilterScheme;
60
- numValue: number | null;
61
- }
62
- export declare const dateFilterSchemes: readonly ["startFrom", "endAt", "between"];
63
- export type DateFilterScheme = (typeof dateFilterSchemes)[number];
64
- export declare const dateFilterSchemeNames: Record<DateFilterScheme, string>;
65
- export interface AbstractDateFilterState extends AbstractFilterState {
66
- type: "date" | "datetime";
67
- scheme: DateFilterScheme;
68
- }
69
- export interface StartDateFilterState extends AbstractDateFilterState {
70
- scheme: "startFrom";
71
- startDate: Date | null;
72
- }
73
- export interface EndDateFilterState extends AbstractDateFilterState {
74
- scheme: "endAt";
75
- endDate: Date | null;
76
- }
77
- export interface BetweenDatesFilterState extends AbstractDateFilterState {
78
- scheme: "between";
79
- startDate: Date | null;
80
- endDate: Date | null;
81
- }
82
- export type DateFilterState = StartDateFilterState | EndDateFilterState | BetweenDatesFilterState;
83
- export type FilterState = StringFilterState | NumberFilterState | DateFilterState;
84
- export interface FilterModel {
85
- tableFilterState: EditableTableFilterState;
86
- setTableFilterState: (state: EditableTableFilterState) => void;
87
- }
88
- export type SelectMode = "column" | "row" | "both";
89
- export type SelectType = "single" | "multi";
90
- export interface MultiSelectModel {
91
- mode: SelectMode;
92
- type: "multi";
93
- selected: number[];
94
- setSelected: (selected: number[]) => void;
95
- }
96
- export interface SingleSelectModel {
97
- mode: SelectMode;
98
- type: "single";
99
- selected: number | null;
100
- setSelected: (selected: number | null) => void;
101
- groupName: string;
102
- }
103
- export type SelectModel = SingleSelectModel | MultiSelectModel;
104
- export type MultiSelectModelInitialState = Omit<MultiSelectModel, "setSelected">;
105
- export type SingleSelectModelInitialState = Omit<SingleSelectModel, "setSelected">;
package/types.js CHANGED
@@ -1,30 +1 @@
1
- export var stringFilterSchemes = [
2
- "contains",
3
- "startsWith",
4
- "endsWith",
5
- ];
6
- export var stringFilterSchemeNames = {
7
- contains: "Contains",
8
- startsWith: "Starts With",
9
- endsWith: "Ends With",
10
- };
11
- export var numberFilterSchemes = [
12
- "equals",
13
- "greaterThan",
14
- "lessThan",
15
- "greaterOrEqual",
16
- "lessOrEqual",
17
- ];
18
- export var numberFilterSchemeNames = {
19
- equals: "=",
20
- greaterThan: ">",
21
- lessThan: "<",
22
- greaterOrEqual: ">=",
23
- lessOrEqual: "<=",
24
- };
25
- export var dateFilterSchemes = ["startFrom", "endAt", "between"];
26
- export var dateFilterSchemeNames = {
27
- startFrom: "Start Form",
28
- endAt: "End At",
29
- between: "Between",
30
- };
1
+ export {};
@@ -1,17 +1,13 @@
1
1
  import { useState } from "react";
2
2
  var useControlledHover = function () {
3
3
  var _a = useState(false), isHovering = _a[0], setIsHovering = _a[1];
4
- var handleMouseOver = function () {
5
- return setIsHovering(true);
6
- };
7
- var handleMouseOut = function () {
8
- return setIsHovering(false);
9
- };
4
+ var handleMouseOver = function () { return setIsHovering(true); };
5
+ var handleMouseOut = function () { return setIsHovering(false); };
10
6
  return {
11
7
  isHovering: isHovering,
12
8
  setIsHovering: setIsHovering,
13
9
  handleMouseOver: handleMouseOver,
14
- handleMouseOut: handleMouseOut
10
+ handleMouseOut: handleMouseOut,
15
11
  };
16
12
  };
17
13
  export default useControlledHover;
@@ -1,45 +0,0 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
13
- import { useMemo } from "react";
14
- import { dateFilterSchemeNames, dateFilterSchemes, } from "../types";
15
- import { nanoid } from "nanoid/non-secure";
16
- var DateFilterRow = function (_a) {
17
- var includeTime = _a.includeTime, columnLabel = _a.columnLabel, filterState = _a.filterState, setFilterState = _a.setFilterState;
18
- var handleOpChange = function (_a) {
19
- var target = _a.target;
20
- setFilterState(__assign(__assign({}, filterState), { scheme: target.value }));
21
- };
22
- var handleEnabledChange = function (_a) {
23
- var target = _a.target;
24
- setFilterState(__assign(__assign({}, filterState), { enabled: target.checked }));
25
- };
26
- var handleStartValueChange = function (_a) {
27
- var target = _a.target;
28
- setFilterState(__assign(__assign({}, filterState), { startDate: target.value }));
29
- };
30
- var handleEndValueChange = function (_a) {
31
- var target = _a.target;
32
- setFilterState(__assign(__assign({}, filterState), { endDate: target.value }));
33
- };
34
- var enabled = filterState.enabled, scheme = filterState.scheme, startDate = filterState.startDate, endDate = filterState.endDate;
35
- var inputType = includeTime ? "datetime-local" : "date";
36
- var inputId = useMemo(function () { return nanoid(); }, []);
37
- var startDateInputId = "$startDate-".concat(inputId);
38
- var endDateInputId = "$endDate-".concat(inputId);
39
- var checkboxLabel = "".concat(columnLabel, " Column Filter Toggle");
40
- var opSelectLabel = "".concat(columnLabel, " Column Filter Operator Selection");
41
- var startDateInputLabel = "".concat(columnLabel, " Column Filter Start Date");
42
- var endDateInputLabel = "".concat(columnLabel, " Column Filter End Date");
43
- return (_jsxs("tr", { children: [_jsx("td", { children: _jsx("input", { name: checkboxLabel, "aria-label": checkboxLabel, type: "checkbox", checked: enabled, onChange: handleEnabledChange }) }), _jsx("td", { children: columnLabel }), _jsx("td", { children: filterState.type === "date" ? "Date" : "Datetime" }), _jsx("td", { children: _jsx("select", { name: opSelectLabel, "aria-label": opSelectLabel, disabled: !enabled, className: "form-select", value: scheme, onChange: handleOpChange, children: dateFilterSchemes.map(function (scheme) { return (_jsx("option", { value: scheme, children: dateFilterSchemeNames[scheme] }, scheme)); }) }) }), _jsxs("td", { children: [scheme !== "endAt" && (_jsxs(_Fragment, { children: [scheme === "between" && (_jsx("label", { htmlFor: startDateInputId, children: "Start Date" })), _jsx("input", { id: startDateInputId, className: "form-control", type: inputType, required: enabled, disabled: !enabled, value: startDate, onChange: handleStartValueChange, "aria-label": startDateInputLabel })] })), scheme !== "startFrom" && (_jsxs(_Fragment, { children: [scheme === "between" && (_jsx("label", { htmlFor: endDateInputId, children: "End Date" })), _jsx("input", { id: endDateInputId, className: "form-control", type: inputType, required: enabled, disabled: !enabled, value: endDate, onChange: handleEndValueChange, "aria-label": endDateInputLabel })] }))] })] }));
44
- };
45
- export default DateFilterRow;
@@ -1,34 +0,0 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
- import { numberFilterSchemeNames, numberFilterSchemes, } from "../types";
14
- var NumberFilterRow = function (_a) {
15
- var columnLabel = _a.columnLabel, filterState = _a.filterState, setFilterState = _a.setFilterState;
16
- var handleOpChange = function (_a) {
17
- var target = _a.target;
18
- setFilterState(__assign(__assign({}, filterState), { scheme: target.value }));
19
- };
20
- var handleEnabledChange = function (_a) {
21
- var target = _a.target;
22
- setFilterState(__assign(__assign({}, filterState), { enabled: target.checked }));
23
- };
24
- var handleNumInputValueChange = function (_a) {
25
- var target = _a.target;
26
- setFilterState(__assign(__assign({}, filterState), { inputValue: target.value }));
27
- };
28
- var enabled = filterState.enabled, scheme = filterState.scheme, inputValue = filterState.inputValue;
29
- var checkboxLabel = "".concat(columnLabel, " Column Filter Toggle");
30
- var opSelectLabel = "".concat(columnLabel, " Column Filter Operator Selection");
31
- var valueInputLabel = "".concat(columnLabel, " Column Filter Value");
32
- return (_jsxs("tr", { children: [_jsx("td", { children: _jsx("input", { name: checkboxLabel, "aria-label": checkboxLabel, type: "checkbox", checked: enabled, onChange: handleEnabledChange }) }), _jsx("td", { children: columnLabel }), _jsx("td", { children: "Number" }), _jsx("td", { children: _jsx("select", { name: opSelectLabel, "aria-label": opSelectLabel, disabled: !enabled, className: "form-select", value: scheme, onChange: handleOpChange, children: numberFilterSchemes.map(function (scheme) { return (_jsx("option", { value: scheme, children: numberFilterSchemeNames[scheme] }, scheme)); }) }) }), _jsx("td", { children: _jsx("input", { name: valueInputLabel, "aria-label": valueInputLabel, className: "form-control", type: "number", required: enabled, disabled: !enabled, value: inputValue, onChange: handleNumInputValueChange }) })] }));
33
- };
34
- export default NumberFilterRow;
@@ -1,9 +0,0 @@
1
- import { FC } from "react";
2
- import { StringFilterState } from "../types";
3
- interface StringFilterRowProps {
4
- columnLabel: string;
5
- filterState: StringFilterState;
6
- setFilterState: (filterState: StringFilterState) => void;
7
- }
8
- declare const StringFilterRow: FC<StringFilterRowProps>;
9
- export default StringFilterRow;
@@ -1,34 +0,0 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
- import { stringFilterSchemeNames, stringFilterSchemes, } from "../types";
14
- var StringFilterRow = function (_a) {
15
- var columnLabel = _a.columnLabel, filterState = _a.filterState, setFilterState = _a.setFilterState;
16
- var handleOpChange = function (_a) {
17
- var target = _a.target;
18
- setFilterState(__assign(__assign({}, filterState), { scheme: target.value }));
19
- };
20
- var handleEnabledChange = function (_a) {
21
- var target = _a.target;
22
- setFilterState(__assign(__assign({}, filterState), { enabled: target.checked }));
23
- };
24
- var handleSearchStringChange = function (_a) {
25
- var target = _a.target;
26
- setFilterState(__assign(__assign({}, filterState), { searchString: target.value }));
27
- };
28
- var enabled = filterState.enabled, scheme = filterState.scheme, searchString = filterState.searchString;
29
- var checkboxLabel = "".concat(columnLabel, " Column Filter Toggle");
30
- var opSelectLabel = "".concat(columnLabel, " Column Filter Operator Selection");
31
- var valueInputLabel = "".concat(columnLabel, " Column Filter Value");
32
- return (_jsxs("tr", { children: [_jsx("td", { children: _jsx("input", { name: checkboxLabel, "aria-label": checkboxLabel, type: "checkbox", checked: enabled, onChange: handleEnabledChange }) }), _jsx("td", { children: columnLabel }), _jsx("td", { children: "String" }), _jsx("td", { children: _jsx("select", { name: opSelectLabel, "aria-label": opSelectLabel, disabled: !enabled, className: "form-select", value: scheme, onChange: handleOpChange, children: stringFilterSchemes.map(function (scheme) { return (_jsx("option", { value: scheme, children: stringFilterSchemeNames[scheme] }, scheme)); }) }) }), _jsx("td", { children: _jsx("input", { name: valueInputLabel, "aria-label": valueInputLabel, className: "form-control", required: enabled, disabled: !enabled, value: searchString, onChange: handleSearchStringChange }) })] }));
33
- };
34
- export default StringFilterRow;
@@ -1,13 +0,0 @@
1
- import { AbstractDateFilterState, AbstractFilterState, DateFilterScheme, NumberFilterScheme, StringFilterState } from "../types";
2
- export interface NumberFormFilterState extends AbstractFilterState {
3
- type: "number";
4
- scheme: NumberFilterScheme;
5
- inputValue: string;
6
- }
7
- export interface DateFormFilterState extends AbstractDateFilterState {
8
- scheme: DateFilterScheme;
9
- startDate: string;
10
- endDate: string;
11
- }
12
- export type FilterFormRowState = StringFilterState | NumberFormFilterState | DateFormFilterState;
13
- export type FilterFormState = Record<string, FilterFormRowState>;
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes