@elliemae/ds-datagrids 2.0.0-alpha.1 → 2.0.0-alpha.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/DSDataGrid.js +247 -244
- package/cjs/DataGridImpl.js +22 -13
- package/cjs/PaginatedDataGrid.js +11 -6
- package/cjs/blockNames.js +2 -2
- package/cjs/columns/IconColumn.js +23 -21
- package/cjs/columns/NumberColumn.js +2 -4
- package/cjs/components/BodyCell.js +23 -15
- package/cjs/components/BodyList.js +11 -4
- package/cjs/components/ColumnVisibilityMenuOption.js +12 -6
- package/cjs/components/ColumnsOptionsMenuSection.js +35 -28
- package/cjs/components/EmptyState.js +23 -21
- package/cjs/components/HeaderCell.js +17 -11
- package/cjs/components/List.js +6 -1
- package/cjs/components/ListItem.js +8 -1
- package/cjs/components/NoResults.js +8 -3
- package/cjs/components/RowsLoader.js +6 -5
- package/cjs/components/Table.js +9 -4
- package/cjs/components/TableBody.js +8 -3
- package/cjs/components/TableHeader.js +6 -1
- package/cjs/components/footer/addOptionalFooterComponents.js +6 -5
- package/cjs/components/header/PrimaryControls.js +20 -15
- package/cjs/components/header/addOptionalHeaderComponents.js +5 -4
- package/cjs/components/renderers/defaultClassedRenderers.js +35 -23
- package/cjs/components/renderers/renderRowsLoader.js +1 -1
- package/cjs/components/tableContext.js +1 -1
- package/cjs/index.js +1 -1
- package/cjs/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js +54 -43
- package/cjs/plugins/column-dnd/DndColumnsPlugin.js +13 -9
- package/cjs/plugins/column-dnd/decorateGridWithDndColumns.js +3 -4
- package/cjs/plugins/column-sizing/ColumnSizingPlugin.js +12 -10
- package/cjs/plugins/column-sizing/columnMeasurerTransformer.js +14 -7
- package/cjs/plugins/column-sizing/ext-points/decorateColumn.js +3 -3
- package/cjs/plugins/column-sizing/ext-points/getTableProps.js +24 -18
- package/cjs/plugins/column-sizing/useColumnSizeService.js +14 -4
- package/cjs/plugins/column-sizing/useStylesheetHelpers.js +70 -56
- package/cjs/plugins/column-sizing/utils.js +10 -6
- package/cjs/plugins/custom-cell-renderer/CustomRendererPlugin.js +2 -2
- package/cjs/plugins/custom-cell-renderer/addCustomRendererToCell.js +11 -6
- package/cjs/plugins/custom-cell-renderer/getRendererComponent.js +24 -25
- package/cjs/plugins/editable/EditableComponents/ComboBox.js +10 -7
- package/cjs/plugins/editable/EditableComponents/TextBox.js +24 -19
- package/cjs/plugins/editable/EditablePlugin.js +17 -16
- package/cjs/plugins/editable/decorateEditable.js +25 -19
- package/cjs/plugins/editable/getEditorComponent.js +46 -35
- package/cjs/plugins/expandable-grid/ExpandableColumn.js +66 -59
- package/cjs/plugins/expandable-grid/ExpandablePlugin.js +42 -30
- package/cjs/plugins/expandable-grid/ExpandedRow.js +41 -31
- package/cjs/plugins/expandable-grid/ExpandedRowExtra.js +22 -16
- package/cjs/plugins/expandable-grid/useExpandGridState.js +4 -8
- package/cjs/plugins/export-data/ExportDataPlugin.js +34 -19
- package/cjs/plugins/filterable/FilterablePlugin.js +9 -8
- package/cjs/plugins/filterable/addFilterToColumn.js +6 -1
- package/cjs/plugins/filterable/components/FilterableHeader.js +39 -30
- package/cjs/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js +52 -45
- package/cjs/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js +38 -33
- package/cjs/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js +127 -161
- package/cjs/plugins/filterable/components/filterable-menus/TextFilterMenu.js +38 -29
- package/cjs/plugins/filterable/filterableFormatter.js +16 -11
- package/cjs/plugins/filterable/filtering-helper/filterRowsByQuery.js +18 -6
- package/cjs/plugins/filterable/filtering-helper/strategiesOperators.js +11 -8
- package/cjs/plugins/filterable/helper.js +18 -8
- package/cjs/plugins/filterable/useFilterableState.js +13 -6
- package/cjs/plugins/grouping-by/GroupingByPlugin.js +4 -2
- package/cjs/plugins/grouping-grid/GroupingPlugin.js +14 -5
- package/cjs/plugins/grouping-grid/walkStrategy.js +13 -9
- package/cjs/plugins/infinite-scrolling/InfiniteScrollPlugin.js +11 -4
- package/cjs/plugins/pagination/PaginationPlugin.js +17 -10
- package/cjs/plugins/pagination/components/Pagination.js +12 -11
- package/cjs/plugins/pagination/components/Paginator.js +23 -22
- package/cjs/plugins/pagination/components/PerPageDropdown.js +24 -17
- package/cjs/plugins/pagination/helper.js +11 -8
- package/cjs/plugins/pagination/usePaginationState.js +9 -4
- package/cjs/plugins/resizable/ResizablePlugin.js +6 -5
- package/cjs/plugins/resizable/decorateResizable.js +16 -10
- package/cjs/plugins/resizable/useResizeHandle.js +21 -16
- package/cjs/plugins/resizable/utils.js +9 -6
- package/cjs/plugins/row-dnd/DndRowsPlugin.js +27 -19
- package/cjs/plugins/selectable/SelectablePlugin.js +13 -12
- package/cjs/plugins/selectable/addSelectableColumn.js +25 -17
- package/cjs/plugins/selectable/helper.js +13 -4
- package/cjs/plugins/selectable/selectableFormatter.js +83 -74
- package/cjs/plugins/selectable/useSelectableState.js +26 -12
- package/cjs/plugins/sortable/SortablePlugin.js +11 -12
- package/cjs/plugins/sortable/checkIfSortable.js +1 -1
- package/cjs/plugins/sortable/sortHeaderFormatter.js +17 -18
- package/cjs/plugins/sortable/sortTree.js +16 -8
- package/cjs/plugins/sortable/sorter.js +153 -135
- package/cjs/plugins/sortable/useSortableState.js +12 -6
- package/cjs/plugins/toolbar/RowRenderer.js +13 -7
- package/cjs/plugins/toolbar/ToolbarPlugin.js +3 -2
- package/cjs/plugins/toolbar/ToolbarTrigger.js +26 -21
- package/cjs/plugins/virtualization/AutoHeightList.js +12 -10
- package/cjs/plugins/virtualization/VirtualizationPlugin.js +35 -28
- package/cjs/plugins/virtualization/VirtualizedBody.js +23 -13
- package/cjs/plugins/virtualization/VirtualizedBodyRow.js +8 -7
- package/cjs/renders/CellWithAddons.js +23 -21
- package/cjs/renders/styled.js +7 -18
- package/cjs/utilities/getPluginsFromProps.js +5 -1
- package/cjs/utilities/getScrollbarSize.js +2 -1
- package/cjs/utilities/normalizeData.js +8 -2
- package/esm/DSDataGrid.js +246 -243
- package/esm/DataGridImpl.js +18 -9
- package/esm/PaginatedDataGrid.js +5 -0
- package/esm/blockNames.js +2 -2
- package/esm/columns/IconColumn.js +19 -17
- package/esm/columns/NumberColumn.js +2 -4
- package/esm/components/BodyCell.js +20 -12
- package/esm/components/BodyList.js +7 -0
- package/esm/components/ColumnVisibilityMenuOption.js +12 -6
- package/esm/components/ColumnsOptionsMenuSection.js +35 -28
- package/esm/components/EmptyState.js +18 -15
- package/esm/components/HeaderCell.js +15 -9
- package/esm/components/List.js +5 -0
- package/esm/components/ListItem.js +7 -0
- package/esm/components/NoResults.js +5 -0
- package/esm/components/RowsLoader.js +5 -4
- package/esm/components/Table.js +5 -0
- package/esm/components/TableBody.js +5 -0
- package/esm/components/TableHeader.js +5 -0
- package/esm/components/footer/addOptionalFooterComponents.js +5 -4
- package/esm/components/header/PrimaryControls.js +20 -14
- package/esm/components/header/addOptionalHeaderComponents.js +4 -3
- package/esm/components/renderers/defaultClassedRenderers.js +35 -23
- package/esm/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js +50 -39
- package/esm/plugins/column-dnd/DndColumnsPlugin.js +8 -4
- package/esm/plugins/column-dnd/decorateGridWithDndColumns.js +1 -1
- package/esm/plugins/column-sizing/ColumnSizingPlugin.js +10 -8
- package/esm/plugins/column-sizing/columnMeasurerTransformer.js +12 -5
- package/esm/plugins/column-sizing/ext-points/decorateColumn.js +1 -1
- package/esm/plugins/column-sizing/ext-points/getTableProps.js +22 -15
- package/esm/plugins/column-sizing/useColumnSizeService.js +13 -3
- package/esm/plugins/column-sizing/useStylesheetHelpers.js +67 -51
- package/esm/plugins/column-sizing/utils.js +8 -4
- package/esm/plugins/custom-cell-renderer/addCustomRendererToCell.js +6 -1
- package/esm/plugins/custom-cell-renderer/getRendererComponent.js +15 -11
- package/esm/plugins/editable/EditableComponents/ComboBox.js +8 -4
- package/esm/plugins/editable/EditableComponents/TextBox.js +21 -15
- package/esm/plugins/editable/EditablePlugin.js +14 -12
- package/esm/plugins/editable/decorateEditable.js +18 -9
- package/esm/plugins/editable/getEditorComponent.js +49 -38
- package/esm/plugins/expandable-grid/ExpandableColumn.js +59 -50
- package/esm/plugins/expandable-grid/ExpandablePlugin.js +34 -20
- package/esm/plugins/expandable-grid/ExpandedRow.js +27 -17
- package/esm/plugins/expandable-grid/ExpandedRowExtra.js +17 -11
- package/esm/plugins/expandable-grid/useExpandGridState.js +2 -2
- package/esm/plugins/export-data/ExportDataPlugin.js +31 -16
- package/esm/plugins/filterable/FilterablePlugin.js +5 -4
- package/esm/plugins/filterable/addFilterToColumn.js +5 -0
- package/esm/plugins/filterable/components/FilterableHeader.js +32 -22
- package/esm/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js +41 -33
- package/esm/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js +28 -22
- package/esm/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js +121 -154
- package/esm/plugins/filterable/components/filterable-menus/TextFilterMenu.js +28 -18
- package/esm/plugins/filterable/filterableFormatter.js +15 -10
- package/esm/plugins/filterable/filtering-helper/filterRowsByQuery.js +14 -2
- package/esm/plugins/filterable/filtering-helper/strategiesOperators.js +7 -4
- package/esm/plugins/filterable/helper.js +11 -1
- package/esm/plugins/filterable/useFilterableState.js +12 -5
- package/esm/plugins/grouping-by/GroupingByPlugin.js +3 -1
- package/esm/plugins/grouping-grid/GroupingPlugin.js +10 -1
- package/esm/plugins/grouping-grid/walkStrategy.js +13 -9
- package/esm/plugins/infinite-scrolling/InfiniteScrollPlugin.js +8 -1
- package/esm/plugins/pagination/PaginationPlugin.js +8 -1
- package/esm/plugins/pagination/components/Pagination.js +10 -9
- package/esm/plugins/pagination/components/Paginator.js +20 -19
- package/esm/plugins/pagination/components/PerPageDropdown.js +17 -9
- package/esm/plugins/pagination/helper.js +10 -7
- package/esm/plugins/pagination/usePaginationState.js +7 -1
- package/esm/plugins/resizable/ResizablePlugin.js +4 -3
- package/esm/plugins/resizable/decorateResizable.js +14 -8
- package/esm/plugins/resizable/useResizeHandle.js +21 -16
- package/esm/plugins/resizable/utils.js +7 -4
- package/esm/plugins/row-dnd/DndRowsPlugin.js +22 -13
- package/esm/plugins/selectable/SelectablePlugin.js +10 -9
- package/esm/plugins/selectable/addSelectableColumn.js +24 -16
- package/esm/plugins/selectable/helper.js +10 -1
- package/esm/plugins/selectable/selectableFormatter.js +79 -68
- package/esm/plugins/selectable/useSelectableState.js +20 -5
- package/esm/plugins/sortable/SortablePlugin.js +5 -4
- package/esm/plugins/sortable/sortHeaderFormatter.js +12 -11
- package/esm/plugins/sortable/sortTree.js +13 -3
- package/esm/plugins/sortable/sorter.js +152 -134
- package/esm/plugins/sortable/useSortableState.js +8 -0
- package/esm/plugins/toolbar/RowRenderer.js +8 -2
- package/esm/plugins/toolbar/ToolbarPlugin.js +1 -0
- package/esm/plugins/toolbar/ToolbarTrigger.js +17 -11
- package/esm/plugins/virtualization/AutoHeightList.js +6 -3
- package/esm/plugins/virtualization/VirtualizationPlugin.js +31 -24
- package/esm/plugins/virtualization/VirtualizedBody.js +16 -6
- package/esm/plugins/virtualization/VirtualizedBodyRow.js +8 -7
- package/esm/renders/CellWithAddons.js +15 -14
- package/esm/renders/styled.js +3 -15
- package/esm/utilities/getPluginsFromProps.js +5 -1
- package/esm/utilities/getScrollbarSize.js +2 -1
- package/esm/utilities/normalizeData.js +7 -1
- package/package.json +27 -18
- package/types/DSDataGrid.d.ts +744 -105
- package/types/components/BodyCell.d.ts +1 -1
- package/types/components/HeaderCell.d.ts +1 -1
- package/types/plugins/column-sizing/columnMeasurerTransformer.d.ts +1 -1
- package/types/plugins/column-sizing/ext-points/getTableProps.d.ts +1 -1
- package/types/plugins/expandable-grid/ExpandedRowExtra.d.ts +1 -1
- package/types/plugins/expandable-grid/useExpandGridState.d.ts +4 -4
- package/types/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.d.ts +1 -1
- package/types/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.d.ts +1 -1
- package/types/plugins/filterable/components/filterable-menus/TextFilterMenu.d.ts +1 -1
- package/types/plugins/filterable/helper.d.ts +15 -3
- package/types/plugins/pagination/components/Paginator.d.ts +1 -1
- package/types/plugins/pagination/components/PerPageDropdown.d.ts +1 -1
- package/types/plugins/sortable/sorter.d.ts +1 -1
- package/types/renders/styled.d.ts +3 -3
- package/cjs/package.json +0 -7
- package/esm/package.json +0 -7
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
4
|
+
require('core-js/modules/web.dom-collections.iterator.js');
|
|
4
5
|
var React = require('react');
|
|
5
6
|
var dsControlledForm = require('@elliemae/ds-controlled-form');
|
|
6
|
-
var DSPopper = require('@elliemae/ds-
|
|
7
|
-
var
|
|
8
|
-
var DSButton = require('@elliemae/ds-
|
|
7
|
+
var DSPopper = require('@elliemae/ds-popper');
|
|
8
|
+
var dsIcons = require('@elliemae/ds-icons');
|
|
9
|
+
var DSButton = require('@elliemae/ds-button');
|
|
9
10
|
var moment = require('moment');
|
|
10
11
|
var dsClassnames = require('@elliemae/ds-classnames');
|
|
11
12
|
var defaultDateFormat = require('./defaultDateFormat.js');
|
|
@@ -14,26 +15,26 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
|
|
|
14
15
|
|
|
15
16
|
var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
16
17
|
var DSPopper__default = /*#__PURE__*/_interopDefaultLegacy(DSPopper);
|
|
17
|
-
var DatePickerIcon__default = /*#__PURE__*/_interopDefaultLegacy(DatePickerIcon);
|
|
18
18
|
var DSButton__default = /*#__PURE__*/_interopDefaultLegacy(DSButton);
|
|
19
19
|
var moment__default = /*#__PURE__*/_interopDefaultLegacy(moment);
|
|
20
20
|
|
|
21
|
-
var
|
|
21
|
+
var _DatePicker;
|
|
22
22
|
const blockname = 'date-range';
|
|
23
23
|
const Wrapper = dsClassnames.aggregatedClasses('div')(blockname, 'wrapper');
|
|
24
24
|
const Header = dsClassnames.aggregatedClasses('div')(blockname, 'header'); // const randomString = (maxLength = 5) => Math.random().toString(36).slice(-maxLength);
|
|
25
25
|
|
|
26
|
-
const DateRangePickerContainer =
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
26
|
+
const DateRangePickerContainer = _ref => {
|
|
27
|
+
let {
|
|
28
|
+
onChange = () => null,
|
|
29
|
+
showHeader
|
|
30
|
+
} = _ref;
|
|
30
31
|
const [startDate, setStartDate] = React.useState('');
|
|
31
32
|
const [endDate, setEndDate] = React.useState(''); // For some reason it worked like this
|
|
32
33
|
|
|
33
34
|
const [lastChangeWasPicker, setLastChangeWasPicker] = React.useState(false);
|
|
34
35
|
React.useEffect(() => {
|
|
35
|
-
const startMoment = moment__default[
|
|
36
|
-
const endMoment = moment__default[
|
|
36
|
+
const startMoment = moment__default["default"](startDate);
|
|
37
|
+
const endMoment = moment__default["default"](endDate);
|
|
37
38
|
|
|
38
39
|
if (lastChangeWasPicker && startDate && !startDate.includes('_') && endDate && !endDate.includes('_') && endMoment.diff(startMoment) >= 0) {
|
|
39
40
|
onChange({
|
|
@@ -43,19 +44,21 @@ const DateRangePickerContainer = ({
|
|
|
43
44
|
} // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
44
45
|
|
|
45
46
|
}, [startDate, endDate, lastChangeWasPicker]);
|
|
46
|
-
return /*#__PURE__*/_jsx__default[
|
|
47
|
+
return /*#__PURE__*/_jsx__default["default"](Wrapper, {
|
|
47
48
|
"data-testid": "date-range__wrapper",
|
|
49
|
+
onKeyDown: e => e.code === 'Enter' && setLastChangeWasPicker(true),
|
|
48
50
|
style: {
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
51
|
+
backgroundColor: 'white',
|
|
52
|
+
boxShadow: '0 6px 20px 0 rgb(0 0 0 / 24%)',
|
|
53
|
+
width: '261px'
|
|
54
|
+
}
|
|
55
|
+
}, void 0, showHeader && /*#__PURE__*/_jsx__default["default"](Header, {
|
|
53
56
|
style: {
|
|
54
57
|
padding: '8px',
|
|
55
58
|
display: 'flex',
|
|
56
59
|
justifyContent: 'center'
|
|
57
60
|
}
|
|
58
|
-
}, void 0, /*#__PURE__*/_jsx__default[
|
|
61
|
+
}, void 0, /*#__PURE__*/_jsx__default["default"](dsControlledForm.DSControlledDateRangePicker, {
|
|
59
62
|
fromDate: startDate,
|
|
60
63
|
onFromDateChange: _start => {
|
|
61
64
|
setStartDate(_start);
|
|
@@ -67,7 +70,7 @@ const DateRangePickerContainer = ({
|
|
|
67
70
|
setLastChangeWasPicker(false);
|
|
68
71
|
},
|
|
69
72
|
type: "date-range-inputs"
|
|
70
|
-
})), /*#__PURE__*/_jsx__default[
|
|
73
|
+
})), /*#__PURE__*/_jsx__default["default"](dsControlledForm.DSControlledDateRangePicker, {
|
|
71
74
|
fromDate: startDate,
|
|
72
75
|
onFromDateChange: _start => {
|
|
73
76
|
setStartDate(_start);
|
|
@@ -82,35 +85,39 @@ const DateRangePickerContainer = ({
|
|
|
82
85
|
}));
|
|
83
86
|
};
|
|
84
87
|
|
|
85
|
-
const formatRangeDate = ({
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
88
|
+
const formatRangeDate = function (_ref2) {
|
|
89
|
+
let {
|
|
90
|
+
startDate,
|
|
91
|
+
endDate
|
|
92
|
+
} = _ref2;
|
|
93
|
+
let format = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : defaultDateFormat.DEFAULT_DATE_FORMAT;
|
|
89
94
|
const sameDay = startDate.isSame(endDate, 'day');
|
|
90
|
-
if (sameDay) return
|
|
91
|
-
return
|
|
95
|
+
if (sameDay) return "".concat(endDate.format(format));
|
|
96
|
+
return "".concat(startDate.format(format), " - ").concat(endDate.format(format));
|
|
92
97
|
};
|
|
93
98
|
|
|
94
|
-
function DateRangeFilterMenu({
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
99
|
+
function DateRangeFilterMenu(_ref3) {
|
|
100
|
+
let {
|
|
101
|
+
column,
|
|
102
|
+
className,
|
|
103
|
+
isMenuOpened = false,
|
|
104
|
+
onOpenMenu = () => null,
|
|
105
|
+
placement = DSPopper.PopperPositions.BOTTOM_END,
|
|
106
|
+
onAddFilter = () => null,
|
|
107
|
+
dateFormatter = formatRangeDate,
|
|
108
|
+
showHeader = true,
|
|
109
|
+
menuProps
|
|
110
|
+
} = _ref3;
|
|
111
|
+
return /*#__PURE__*/_jsx__default["default"](DSPopper__default["default"], {
|
|
112
|
+
contentComponent: /*#__PURE__*/_jsx__default["default"]("div", {
|
|
107
113
|
className: className
|
|
108
|
-
}, void 0, /*#__PURE__*/_jsx__default[
|
|
114
|
+
}, void 0, /*#__PURE__*/_jsx__default["default"](DateRangePickerContainer, {
|
|
109
115
|
minimumNights: 0,
|
|
110
|
-
onChange:
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
116
|
+
onChange: _ref4 => {
|
|
117
|
+
let {
|
|
118
|
+
startDate,
|
|
119
|
+
endDate
|
|
120
|
+
} = _ref4;
|
|
114
121
|
startDate.startOf('day');
|
|
115
122
|
endDate.endOf('day');
|
|
116
123
|
onAddFilter({
|
|
@@ -126,7 +133,7 @@ function DateRangeFilterMenu({
|
|
|
126
133
|
start: startDate,
|
|
127
134
|
end: endDate
|
|
128
135
|
},
|
|
129
|
-
transformRowValue: value => moment__default[
|
|
136
|
+
transformRowValue: value => moment__default["default"](value, column.dateFormat || defaultDateFormat.DEFAULT_DATE_FORMAT),
|
|
130
137
|
operator: 'range'
|
|
131
138
|
}, column);
|
|
132
139
|
onOpenMenu(false);
|
|
@@ -137,9 +144,9 @@ function DateRangeFilterMenu({
|
|
|
137
144
|
onOpen: onOpenMenu,
|
|
138
145
|
placement: placement,
|
|
139
146
|
showArrow: false,
|
|
140
|
-
triggerComponent: /*#__PURE__*/_jsx__default[
|
|
147
|
+
triggerComponent: /*#__PURE__*/_jsx__default["default"](DSButton__default["default"], {
|
|
141
148
|
buttonType: "text",
|
|
142
|
-
icon:
|
|
149
|
+
icon: _DatePicker || (_DatePicker = /*#__PURE__*/_jsx__default["default"](dsIcons.DatePicker2, {})),
|
|
143
150
|
onClick: () => !isMenuOpened ? onOpenMenu(true) : onOpenMenu(false),
|
|
144
151
|
size: "s"
|
|
145
152
|
}),
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
4
|
+
require('core-js/modules/web.dom-collections.iterator.js');
|
|
4
5
|
var React = require('react');
|
|
5
6
|
var Grid = require('@elliemae/ds-grid');
|
|
6
7
|
var dsControlledForm = require('@elliemae/ds-controlled-form');
|
|
7
|
-
var DSPopper = require('@elliemae/ds-
|
|
8
|
-
var
|
|
9
|
-
var DSButton = require('@elliemae/ds-
|
|
8
|
+
var DSPopper = require('@elliemae/ds-popper');
|
|
9
|
+
var dsIcons = require('@elliemae/ds-icons');
|
|
10
|
+
var DSButton = require('@elliemae/ds-button');
|
|
10
11
|
var moment = require('moment');
|
|
11
12
|
var defaultDateFormat = require('./defaultDateFormat.js');
|
|
12
13
|
|
|
@@ -15,57 +16,61 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
|
|
|
15
16
|
var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
16
17
|
var Grid__default = /*#__PURE__*/_interopDefaultLegacy(Grid);
|
|
17
18
|
var DSPopper__default = /*#__PURE__*/_interopDefaultLegacy(DSPopper);
|
|
18
|
-
var DatePickerIcon__default = /*#__PURE__*/_interopDefaultLegacy(DatePickerIcon);
|
|
19
19
|
var DSButton__default = /*#__PURE__*/_interopDefaultLegacy(DSButton);
|
|
20
20
|
var moment__default = /*#__PURE__*/_interopDefaultLegacy(moment);
|
|
21
21
|
|
|
22
|
-
var
|
|
22
|
+
var _DatePicker;
|
|
23
23
|
|
|
24
|
-
const SingleDatePickerContainer =
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
24
|
+
const SingleDatePickerContainer = _ref => {
|
|
25
|
+
let {
|
|
26
|
+
onChange = () => null,
|
|
27
|
+
showHeader
|
|
28
|
+
} = _ref;
|
|
29
|
+
const [date, setDate] = React.useState('');
|
|
29
30
|
const handleDateChange = React.useCallback(data => {
|
|
30
|
-
if (!data.includes('_')) onChange(moment__default[
|
|
31
|
+
if (!data.includes('_')) onChange(moment__default["default"](data));
|
|
31
32
|
setDate(data);
|
|
32
33
|
}, [onChange]);
|
|
33
|
-
return /*#__PURE__*/_jsx__default[
|
|
34
|
+
return /*#__PURE__*/_jsx__default["default"]("div", {
|
|
34
35
|
style: {
|
|
35
36
|
boxShadow: '0 6px 20px 0 rgb(0 0 0 / 24%)'
|
|
36
37
|
}
|
|
37
|
-
}, void 0, showHeader && /*#__PURE__*/_jsx__default[
|
|
38
|
+
}, void 0, showHeader && /*#__PURE__*/_jsx__default["default"](Grid__default["default"], {
|
|
38
39
|
p: "xxs"
|
|
39
|
-
}, void 0, /*#__PURE__*/_jsx__default[
|
|
40
|
+
}, void 0, /*#__PURE__*/_jsx__default["default"](dsControlledForm.DSControlledDateTimePicker, {
|
|
40
41
|
date: date,
|
|
41
42
|
onDateChange: handleDateChange,
|
|
42
43
|
type: "date-inputs",
|
|
43
44
|
isClearable: true
|
|
44
|
-
})), /*#__PURE__*/_jsx__default[
|
|
45
|
+
})), /*#__PURE__*/_jsx__default["default"](dsControlledForm.DSControlledDateTimePicker, {
|
|
45
46
|
date: date,
|
|
46
47
|
onDateChange: handleDateChange,
|
|
47
48
|
type: "date-picker-controller-only"
|
|
48
49
|
}));
|
|
49
50
|
};
|
|
50
51
|
|
|
51
|
-
const formatDate = (date
|
|
52
|
+
const formatDate = function (date) {
|
|
53
|
+
let format = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : defaultDateFormat.DEFAULT_DATE_FORMAT;
|
|
54
|
+
return date.format(format);
|
|
55
|
+
};
|
|
52
56
|
|
|
53
|
-
function SingleDateFilterMenu({
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
57
|
+
function SingleDateFilterMenu(_ref2) {
|
|
58
|
+
let {
|
|
59
|
+
column,
|
|
60
|
+
className,
|
|
61
|
+
isMenuOpened = false,
|
|
62
|
+
onOpenMenu = () => null,
|
|
63
|
+
placement = DSPopper.PopperPositions.BOTTOM_END,
|
|
64
|
+
onAddFilter = () => null,
|
|
65
|
+
dateFormatter = formatDate,
|
|
66
|
+
showHeader = false,
|
|
67
|
+
menuProps
|
|
68
|
+
} = _ref2;
|
|
69
|
+
return /*#__PURE__*/_jsx__default["default"](DSPopper__default["default"], {
|
|
70
|
+
contentComponent: /*#__PURE__*/_jsx__default["default"]("div", {
|
|
66
71
|
className: className,
|
|
67
72
|
"data-testid": "date-single__wrapper"
|
|
68
|
-
}, void 0, /*#__PURE__*/_jsx__default[
|
|
73
|
+
}, void 0, /*#__PURE__*/_jsx__default["default"](SingleDatePickerContainer, {
|
|
69
74
|
minimumNights: 0,
|
|
70
75
|
onChange: date => {
|
|
71
76
|
const t = date.clone();
|
|
@@ -79,7 +84,7 @@ function SingleDateFilterMenu({
|
|
|
79
84
|
start: date.startOf('day'),
|
|
80
85
|
end: t.endOf('day')
|
|
81
86
|
},
|
|
82
|
-
transformRowValue: value => moment__default[
|
|
87
|
+
transformRowValue: value => moment__default["default"](value, column.dateFormat || defaultDateFormat.DEFAULT_DATE_FORMAT)
|
|
83
88
|
}, column);
|
|
84
89
|
onOpenMenu(false);
|
|
85
90
|
},
|
|
@@ -89,9 +94,9 @@ function SingleDateFilterMenu({
|
|
|
89
94
|
onOpen: onOpenMenu,
|
|
90
95
|
placement: placement,
|
|
91
96
|
showArrow: false,
|
|
92
|
-
triggerComponent: /*#__PURE__*/_jsx__default[
|
|
97
|
+
triggerComponent: /*#__PURE__*/_jsx__default["default"](DSButton__default["default"], {
|
|
93
98
|
buttonType: "text",
|
|
94
|
-
icon:
|
|
99
|
+
icon: _DatePicker || (_DatePicker = /*#__PURE__*/_jsx__default["default"](dsIcons.DatePicker2, {})),
|
|
95
100
|
onClick: () => !isMenuOpened ? onOpenMenu(true) : onOpenMenu(false),
|
|
96
101
|
size: "s"
|
|
97
102
|
}),
|
|
@@ -1,196 +1,162 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
4
|
-
|
|
5
|
-
var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
|
|
4
|
+
require('core-js/modules/web.dom-collections.iterator.js');
|
|
6
5
|
var React = require('react');
|
|
7
|
-
var
|
|
8
|
-
var dsDatePicker = require('@elliemae/ds-date-picker');
|
|
6
|
+
var dsControlledForm = require('@elliemae/ds-controlled-form');
|
|
9
7
|
var DSPopper = require('@elliemae/ds-basic/Popper');
|
|
10
|
-
var
|
|
8
|
+
var dsIcons = require('@elliemae/ds-icons');
|
|
11
9
|
var DSButton = require('@elliemae/ds-basic/Button');
|
|
10
|
+
var Grid = require('@elliemae/ds-grid');
|
|
12
11
|
var moment = require('moment');
|
|
13
|
-
var
|
|
12
|
+
var styled = require('styled-components');
|
|
14
13
|
var defaultDateFormat = require('./defaultDateFormat.js');
|
|
15
|
-
var jsxRuntime = require('react/jsx-runtime');
|
|
16
14
|
|
|
17
15
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
18
16
|
|
|
19
17
|
var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
20
|
-
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
|
|
21
|
-
var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
|
|
22
18
|
var DSPopper__default = /*#__PURE__*/_interopDefaultLegacy(DSPopper);
|
|
23
|
-
var DatePickerIcon__default = /*#__PURE__*/_interopDefaultLegacy(DatePickerIcon);
|
|
24
19
|
var DSButton__default = /*#__PURE__*/_interopDefaultLegacy(DSButton);
|
|
20
|
+
var Grid__default = /*#__PURE__*/_interopDefaultLegacy(Grid);
|
|
25
21
|
var moment__default = /*#__PURE__*/_interopDefaultLegacy(moment);
|
|
22
|
+
var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
|
|
26
23
|
|
|
27
|
-
var
|
|
24
|
+
var _DatePicker;
|
|
25
|
+
const StyledGridWrapper = /*#__PURE__*/styled__default["default"](Grid__default["default"]).withConfig({
|
|
26
|
+
componentId: "sc-jay5xg-0"
|
|
27
|
+
})([".notCurrentMonth{opacity:", ";pointer-events:", ";}"], props => props.enableOutsideDays ? '1' : '0', props => props.enableOutsideDays ? 'auto' : 'none'); // eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-empty-function
|
|
28
28
|
|
|
29
|
-
const
|
|
30
|
-
|
|
31
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
32
|
-
|
|
33
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
34
|
-
const START_DATE = 'startDate';
|
|
35
|
-
const END_DATE = 'endDate';
|
|
36
|
-
const blockname = 'date-range';
|
|
37
|
-
const Wrapper = dsClassnames.aggregatedClasses('div')(blockname, 'wrapper'); // eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-empty-function
|
|
38
|
-
|
|
39
|
-
const noop = (...args) => {};
|
|
29
|
+
const noop = function () {};
|
|
40
30
|
|
|
41
31
|
const SingleRangeSwitcherContainer = _ref => {
|
|
42
32
|
let {
|
|
43
33
|
onChange = noop,
|
|
44
34
|
enableOutsideDays
|
|
45
|
-
} = _ref
|
|
46
|
-
|
|
35
|
+
} = _ref;
|
|
36
|
+
const [startDate, setStartDate] = React.useState('');
|
|
37
|
+
const [endDate, setEndDate] = React.useState(''); // For some reason it worked like this
|
|
47
38
|
|
|
48
|
-
const [
|
|
49
|
-
const [focusedInputPicker, setFocusedInputPicker] = React.useState(START_DATE);
|
|
50
|
-
const [singleDate, setSingleDate] = React.useState();
|
|
51
|
-
const [dateRange, setDateRange] = React.useState({});
|
|
39
|
+
const [lastChangeWasPicker, setLastChangeWasPicker] = React.useState(false);
|
|
52
40
|
const [isDateRange, setIsDateRange] = React.useState(false);
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
41
|
+
React.useEffect(() => {
|
|
42
|
+
const startMoment = moment__default["default"](startDate);
|
|
43
|
+
const endMoment = moment__default["default"](endDate);
|
|
44
|
+
|
|
45
|
+
if (lastChangeWasPicker && startDate && !startDate.includes('_') && endDate && !endDate.includes('_') && endMoment.diff(startMoment) >= 0) {
|
|
46
|
+
onChange({
|
|
47
|
+
startDate: startMoment,
|
|
48
|
+
endDate: endMoment
|
|
49
|
+
});
|
|
50
|
+
} // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
51
|
+
|
|
52
|
+
}, [startDate, endDate, lastChangeWasPicker]);
|
|
53
|
+
return /*#__PURE__*/_jsx__default["default"](StyledGridWrapper, {
|
|
54
|
+
"data-testid": "date-single-range__wrapper",
|
|
55
|
+
style: {
|
|
56
|
+
backgroundColor: 'white',
|
|
57
|
+
boxShadow: '0 6px 20px 0 rgb(0 0 0 / 24%)',
|
|
58
|
+
width: '261px',
|
|
59
|
+
display: 'grid',
|
|
60
|
+
justifyContent: 'center'
|
|
61
|
+
},
|
|
62
|
+
cols: ['100%'],
|
|
63
|
+
enableOutsideDays: enableOutsideDays,
|
|
64
|
+
onKeyDown: e => e.code === 'Enter' && setLastChangeWasPicker(true)
|
|
65
|
+
}, void 0, /*#__PURE__*/_jsx__default["default"](Grid__default["default"], {
|
|
66
|
+
gutter: "xxs",
|
|
67
|
+
alignItems: "center",
|
|
68
|
+
p: "xxs"
|
|
69
|
+
}, void 0, /*#__PURE__*/_jsx__default["default"](dsControlledForm.DSControlledCheckbox, {
|
|
70
|
+
checked: isDateRange,
|
|
71
|
+
name: "Date range",
|
|
72
|
+
label: "Range",
|
|
73
|
+
id: "date-range-switcher-id-internal",
|
|
74
|
+
onChange: () => {
|
|
75
|
+
setIsDateRange(!isDateRange);
|
|
76
|
+
setStartDate('');
|
|
77
|
+
setEndDate('');
|
|
71
78
|
}
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
endDate: dateRange.endDate
|
|
76
|
-
});
|
|
77
|
-
setDateRange(dates);
|
|
78
|
-
};
|
|
79
|
-
|
|
80
|
-
const handlePickerChange = dates => {
|
|
81
|
-
if (dates.endDate) {
|
|
82
|
-
setTimeout(() => {
|
|
83
|
-
onChange({
|
|
84
|
-
startDate: dates.startDate,
|
|
85
|
-
endDate: dates.endDate
|
|
86
|
-
});
|
|
87
|
-
}, 500);
|
|
79
|
+
}), /*#__PURE__*/_jsx__default["default"]("div", {
|
|
80
|
+
style: {
|
|
81
|
+
width: 'fit-content'
|
|
88
82
|
}
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
const handleSingleDateChange = React.useCallback(date => {
|
|
96
|
-
const dates = {
|
|
97
|
-
startDate: moment__default['default'](date).startOf('day'),
|
|
98
|
-
endDate: moment__default['default'](date).endOf('day')
|
|
99
|
-
};
|
|
100
|
-
onChange(dates);
|
|
101
|
-
setSingleDate(dates);
|
|
102
|
-
}, [onChange]);
|
|
103
|
-
|
|
104
|
-
const handleStartInputChange = newDate => {
|
|
105
|
-
setDateRange({
|
|
106
|
-
startDate: newDate,
|
|
107
|
-
endDate: dateRange.endDate
|
|
108
|
-
});
|
|
109
|
-
setPickerRange(_objectSpread(_objectSpread({}, pickerRange), {}, {
|
|
110
|
-
startDate: newDate
|
|
111
|
-
}));
|
|
112
|
-
};
|
|
113
|
-
|
|
114
|
-
const handleEndInputChange = newDate => {
|
|
115
|
-
setDateRange({
|
|
116
|
-
startDate: dateRange.startDate,
|
|
117
|
-
endDate: newDate
|
|
118
|
-
});
|
|
119
|
-
setPickerRange(_objectSpread(_objectSpread({}, pickerRange), {}, {
|
|
120
|
-
endDate: newDate
|
|
121
|
-
}));
|
|
122
|
-
};
|
|
123
|
-
|
|
124
|
-
const dateRangeController = /*#__PURE__*/jsxRuntime.jsx(dsDateRangePicker.DayPickerRangeController, _objectSpread(_objectSpread({}, otherProps), {}, {
|
|
125
|
-
enableOutsideDays: enableOutsideDays,
|
|
126
|
-
endDate: pickerRange.endDate,
|
|
127
|
-
focusedInput: focusedInputPicker,
|
|
128
|
-
hideKeyboardShortcutsPanel: true,
|
|
129
|
-
onDatesChange: handlePickerChange,
|
|
130
|
-
onFocusChange: handlePickerFocusChange,
|
|
131
|
-
startDate: pickerRange.startDate
|
|
132
|
-
}));
|
|
133
|
-
|
|
134
|
-
const singleDateController = /*#__PURE__*/_jsx__default['default'](dsDatePicker.DSDatePickerController, {
|
|
135
|
-
date: singleDate,
|
|
136
|
-
enableOutsideDays: enableOutsideDays,
|
|
137
|
-
onDateChange: handleSingleDateChange
|
|
138
|
-
});
|
|
139
|
-
|
|
140
|
-
return /*#__PURE__*/_jsx__default['default'](Wrapper, {
|
|
141
|
-
"data-testid": "date-single-range__wrapper"
|
|
142
|
-
}, void 0, /*#__PURE__*/_jsx__default['default'](dsDatePicker.SingleRangeDateSwitcher, {
|
|
143
|
-
isDateRange: isDateRange,
|
|
144
|
-
focusedInput: focusedInputHeader,
|
|
145
|
-
onFocusChange: handleHeaderFocusChange,
|
|
146
|
-
onEndInputChange: handleEndInputChange,
|
|
147
|
-
onSingleInputChange: handleSingleDateChange,
|
|
148
|
-
onStartInputChange: handleStartInputChange,
|
|
149
|
-
selectedEndDate: dateRange.endDate,
|
|
150
|
-
selectedSingleDate: singleDate,
|
|
151
|
-
selectedStartDate: dateRange.startDate,
|
|
152
|
-
setIsDateRange: ({
|
|
153
|
-
target: {
|
|
154
|
-
checked
|
|
155
|
-
}
|
|
156
|
-
}) => {
|
|
157
|
-
setIsDateRange(checked);
|
|
83
|
+
}, void 0, isDateRange ? /*#__PURE__*/_jsx__default["default"](dsControlledForm.DSControlledDateRangePicker, {
|
|
84
|
+
fromDate: startDate,
|
|
85
|
+
onFromDateChange: _start => {
|
|
86
|
+
setStartDate(_start);
|
|
87
|
+
setLastChangeWasPicker(false);
|
|
158
88
|
},
|
|
159
|
-
|
|
160
|
-
|
|
89
|
+
toDate: endDate,
|
|
90
|
+
onToDateChange: _end => {
|
|
91
|
+
setEndDate(_end);
|
|
92
|
+
setLastChangeWasPicker(false);
|
|
93
|
+
},
|
|
94
|
+
type: "date-range-inputs"
|
|
95
|
+
}) : /*#__PURE__*/_jsx__default["default"](dsControlledForm.DSControlledDateTimePicker, {
|
|
96
|
+
date: startDate,
|
|
97
|
+
onDateChange: _date => {
|
|
98
|
+
setLastChangeWasPicker(false);
|
|
99
|
+
setStartDate(_date);
|
|
100
|
+
setEndDate(_date);
|
|
101
|
+
},
|
|
102
|
+
type: "date-inputs"
|
|
103
|
+
}))), /*#__PURE__*/_jsx__default["default"](Grid__default["default"], {}, void 0, isDateRange ? /*#__PURE__*/_jsx__default["default"](dsControlledForm.DSControlledDateRangePicker, {
|
|
104
|
+
fromDate: startDate,
|
|
105
|
+
onFromDateChange: _start => {
|
|
106
|
+
setStartDate(_start);
|
|
107
|
+
setLastChangeWasPicker(true);
|
|
108
|
+
},
|
|
109
|
+
toDate: endDate,
|
|
110
|
+
onToDateChange: _end => {
|
|
111
|
+
setEndDate(_end);
|
|
112
|
+
setLastChangeWasPicker(true);
|
|
113
|
+
},
|
|
114
|
+
type: "date-range-picker-controller-only"
|
|
115
|
+
}) : /*#__PURE__*/_jsx__default["default"](dsControlledForm.DSControlledDateTimePicker, {
|
|
116
|
+
date: startDate,
|
|
117
|
+
onDateChange: _date => {
|
|
118
|
+
setLastChangeWasPicker(true);
|
|
119
|
+
setStartDate(_date);
|
|
120
|
+
setEndDate(_date);
|
|
121
|
+
},
|
|
122
|
+
type: "date-picker-controller-only"
|
|
123
|
+
})));
|
|
161
124
|
};
|
|
162
125
|
|
|
163
|
-
const formatRangeDate = ({
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
126
|
+
const formatRangeDate = function (_ref2) {
|
|
127
|
+
let {
|
|
128
|
+
startDate,
|
|
129
|
+
endDate
|
|
130
|
+
} = _ref2;
|
|
131
|
+
let format = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : defaultDateFormat.DEFAULT_DATE_FORMAT;
|
|
167
132
|
const sameDay = startDate.isSame(endDate, 'day');
|
|
168
|
-
if (sameDay) return
|
|
169
|
-
return
|
|
133
|
+
if (sameDay) return "".concat(endDate.format(format));
|
|
134
|
+
return "".concat(startDate.format(format), " - ").concat(endDate.format(format));
|
|
170
135
|
}; // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
|
|
171
136
|
|
|
172
137
|
|
|
173
|
-
function SingleRangeSwitcherMenu({
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
138
|
+
function SingleRangeSwitcherMenu(_ref3) {
|
|
139
|
+
let {
|
|
140
|
+
column,
|
|
141
|
+
className,
|
|
142
|
+
isMenuOpened = false,
|
|
143
|
+
onOpenMenu = noop,
|
|
144
|
+
placement = DSPopper.PopperPositions.BOTTOM_END,
|
|
145
|
+
onAddFilter = noop,
|
|
146
|
+
dateFormatter = formatRangeDate,
|
|
147
|
+
enableOutsideDays = true,
|
|
148
|
+
menuProps
|
|
149
|
+
} = _ref3;
|
|
150
|
+
return /*#__PURE__*/_jsx__default["default"](DSPopper__default["default"], {
|
|
151
|
+
contentComponent: /*#__PURE__*/_jsx__default["default"]("div", {
|
|
186
152
|
className: className
|
|
187
|
-
}, void 0, /*#__PURE__*/_jsx__default[
|
|
153
|
+
}, void 0, /*#__PURE__*/_jsx__default["default"](SingleRangeSwitcherContainer, {
|
|
188
154
|
enableOutsideDays: enableOutsideDays,
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
155
|
+
onChange: _ref4 => {
|
|
156
|
+
let {
|
|
157
|
+
startDate,
|
|
158
|
+
endDate
|
|
159
|
+
} = _ref4;
|
|
194
160
|
startDate.startOf('day');
|
|
195
161
|
endDate.endOf('day');
|
|
196
162
|
onAddFilter({
|
|
@@ -206,7 +172,7 @@ function SingleRangeSwitcherMenu({
|
|
|
206
172
|
start: startDate,
|
|
207
173
|
end: endDate
|
|
208
174
|
},
|
|
209
|
-
transformRowValue: value => moment__default[
|
|
175
|
+
transformRowValue: value => moment__default["default"](value, column.dateFormat || defaultDateFormat.DEFAULT_DATE_FORMAT),
|
|
210
176
|
operator: 'range'
|
|
211
177
|
}, column);
|
|
212
178
|
onOpenMenu(false);
|
|
@@ -216,9 +182,9 @@ function SingleRangeSwitcherMenu({
|
|
|
216
182
|
onOpen: onOpenMenu,
|
|
217
183
|
placement: placement,
|
|
218
184
|
showArrow: false,
|
|
219
|
-
triggerComponent: /*#__PURE__*/_jsx__default[
|
|
185
|
+
triggerComponent: /*#__PURE__*/_jsx__default["default"](DSButton__default["default"], {
|
|
220
186
|
buttonType: "text",
|
|
221
|
-
icon:
|
|
187
|
+
icon: _DatePicker || (_DatePicker = /*#__PURE__*/_jsx__default["default"](dsIcons.DatePicker2, {})),
|
|
222
188
|
onClick: () => !isMenuOpened ? onOpenMenu(true) : onOpenMenu(false),
|
|
223
189
|
size: "s"
|
|
224
190
|
}),
|