@synerise/ds-date-range-picker 0.31.2 → 0.31.3
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/CHANGELOG.md +8 -0
- package/dist/AddonCollapse/AddonCollapse.js +4 -8
- package/dist/DateRangePicker.js +31 -48
- package/dist/DateRangePicker.styles.js +0 -13
- package/dist/DateRangePicker.types.js +5 -1
- package/dist/Footer/Footer.js +16 -31
- package/dist/Footer/Footer.styles.js +0 -1
- package/dist/RangeFilter/Filters/DailyFilter/DailyFilter.js +9 -11
- package/dist/RangeFilter/Filters/MonthlyFilter/MonthlyFilter.js +36 -83
- package/dist/RangeFilter/Filters/WeeklyFilter/WeeklyFilter.js +11 -12
- package/dist/RangeFilter/Filters/new/Daily/Daily.js +15 -24
- package/dist/RangeFilter/Filters/new/Monthly/Monthly.js +27 -60
- package/dist/RangeFilter/Filters/new/Monthly/utils.js +0 -7
- package/dist/RangeFilter/Filters/new/Weekly/Weekly.js +23 -49
- package/dist/RangeFilter/Filters/new/Weekly/utils.js +0 -7
- package/dist/RangeFilter/Filters/new/constants.js +2 -2
- package/dist/RangeFilter/Filters/new/hooks/useShiftAndControlKeys.js +4 -10
- package/dist/RangeFilter/RangeFilter.js +19 -55
- package/dist/RangeFilter/Shared/AddButton/AddButton.js +1 -7
- package/dist/RangeFilter/Shared/FilterDropdown/FilterDropdown.js +4 -6
- package/dist/RangeFilter/Shared/RangeFilterStatus/RangeFilterStatus.js +5 -8
- package/dist/RangeFilter/Shared/RangeFilterStatus/RangeFilterStatus.styles.d.ts +3 -2
- package/dist/RangeFilter/Shared/SaveFilterForm/SaveFilterForm.js +5 -10
- package/dist/RangeFilter/Shared/SelectionCount/SelectionCount.js +1 -3
- package/dist/RangeFilter/Shared/SelectionHint/SelectionHint.js +1 -3
- package/dist/RangeFilter/Shared/TimeWindow/Day/Day.js +15 -22
- package/dist/RangeFilter/Shared/TimeWindow/Grid/Grid.js +13 -17
- package/dist/RangeFilter/Shared/TimeWindow/Header/Header.js +2 -4
- package/dist/RangeFilter/Shared/TimeWindow/RangeActions/RangeActions.js +3 -5
- package/dist/RangeFilter/Shared/TimeWindow/RangeFormContainer/RangeForm/RangeForm.js +29 -53
- package/dist/RangeFilter/Shared/TimeWindow/RangeFormContainer/RangeForm/RangeForm.utils.js +0 -1
- package/dist/RangeFilter/Shared/TimeWindow/RangeFormContainer/RangeFormContainer.js +35 -48
- package/dist/RangeFilter/Shared/TimeWindow/RangeSummary/RangeSummary.js +4 -7
- package/dist/RangeFilter/Shared/TimeWindow/TimeWindow.js +50 -136
- package/dist/RangeFilter/Shared/TimeWindow/utils.js +0 -3
- package/dist/RangeFilter/constants.js +0 -4
- package/dist/RangeFilter/utils.js +27 -50
- package/dist/RangePicker/RangePicker.js +53 -123
- package/dist/RangePicker/utils.js +0 -22
- package/dist/RangePickerInput/RangePickerInput.js +23 -35
- package/dist/RangePickerInput/RangePickerInput.styles.js +0 -4
- package/dist/RawDateRangePicker.js +57 -114
- package/dist/RelativeRangePicker/Elements/CustomRangeForm/CustomRangeForm.js +11 -17
- package/dist/RelativeRangePicker/Elements/CustomRangeForm/DurationField/DurationField.js +5 -7
- package/dist/RelativeRangePicker/Elements/CustomRangeForm/OffsetField/OffsetField.js +5 -7
- package/dist/RelativeRangePicker/Elements/ModeDropdown/ModeDropdown.js +5 -9
- package/dist/RelativeRangePicker/Elements/RangeButtons/RangeButtons.js +3 -5
- package/dist/RelativeRangePicker/Elements/RangeDropdown/RangeDropdown.js +12 -18
- package/dist/RelativeRangePicker/Elements/TimestampRange/TimestampDuration/TimestampDuration.js +6 -8
- package/dist/RelativeRangePicker/Elements/TimestampRange/TimestampRange.js +29 -45
- package/dist/RelativeRangePicker/RelativeRangePicker.js +28 -69
- package/dist/RelativeRangePicker/RelativeRangePicker.styles.js +4 -8
- package/dist/RelativeRangePicker/utils/findMatchingPreset.utils.js +2 -9
- package/dist/RelativeRangePicker/utils/getCurrentGroupFromProps.utils.js +0 -2
- package/dist/RelativeRangePicker/utils/updatePresetKey.utils.js +0 -7
- package/dist/constants.js +0 -1
- package/dist/dateUtils/Date.js +0 -2
- package/dist/dateUtils/format.js +0 -4
- package/dist/dateUtils/getDateFromString.js +0 -1
- package/dist/dateUtils/getRelativePresetForRange.js +0 -4
- package/dist/dateUtils/relativeToAbsolute.js +2 -6
- package/dist/utils.js +2 -25
- package/package.json +3 -3
|
@@ -1,29 +1,23 @@
|
|
|
1
1
|
import { DEFAULT_MAX_ENTRIES } from '../constants';
|
|
2
2
|
export var range = function range(start, stop) {
|
|
3
3
|
var result = [];
|
|
4
|
-
|
|
5
4
|
for (var i = start; i < stop; i += 1) {
|
|
6
5
|
result.push(i);
|
|
7
6
|
}
|
|
8
|
-
|
|
9
7
|
return result;
|
|
10
8
|
};
|
|
11
9
|
export var haveActiveDaysCommonRange = function haveActiveDaysCommonRange(days, activeDaysArray) {
|
|
12
10
|
var previousDay;
|
|
13
11
|
var activeDaysHaveDifferentRanges = activeDaysArray.some(function (dayIndex) {
|
|
14
12
|
var _previousDay, _previousDay2;
|
|
15
|
-
|
|
16
13
|
var currentDay = days[dayIndex];
|
|
17
|
-
|
|
18
14
|
if (!currentDay) {
|
|
19
15
|
return true;
|
|
20
16
|
}
|
|
21
|
-
|
|
22
17
|
if (!previousDay) {
|
|
23
18
|
previousDay = currentDay;
|
|
24
19
|
return false;
|
|
25
20
|
}
|
|
26
|
-
|
|
27
21
|
var areRangeDifferent = (currentDay == null ? void 0 : currentDay.start) !== ((_previousDay = previousDay) == null ? void 0 : _previousDay.start) || (currentDay == null ? void 0 : currentDay.stop) !== ((_previousDay2 = previousDay) == null ? void 0 : _previousDay2.stop);
|
|
28
22
|
previousDay = currentDay;
|
|
29
23
|
return areRangeDifferent;
|
|
@@ -34,7 +28,6 @@ export var canAddAnotherRange = function canAddAnotherRange(schedule, activeDays
|
|
|
34
28
|
if (maxRanges === void 0) {
|
|
35
29
|
maxRanges = DEFAULT_MAX_ENTRIES;
|
|
36
30
|
}
|
|
37
|
-
|
|
38
31
|
return Object.keys(schedule).length < maxRanges || Object.keys(schedule).some(function (key) {
|
|
39
32
|
return activeDays.every(function (day) {
|
|
40
33
|
return schedule[key][day] === undefined;
|
|
@@ -1,13 +1,8 @@
|
|
|
1
1
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
|
-
|
|
3
2
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
4
|
-
|
|
5
3
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
|
-
|
|
7
4
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
8
|
-
|
|
9
5
|
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
10
|
-
|
|
11
6
|
import React, { useRef, useEffect, useCallback, useState, useMemo } from 'react';
|
|
12
7
|
import { useIntl } from 'react-intl';
|
|
13
8
|
import dayjs from 'dayjs';
|
|
@@ -23,21 +18,20 @@ import { canAddAnotherRange, haveActiveDaysCommonRange, range, removeEmptyEntrie
|
|
|
23
18
|
import { DEFAULT_RANGE_START, DEFAULT_RANGE_END, DEFAULT_TIME_FORMAT, EMPTY_OBJECT, DEFAULT_MAX_ENTRIES, RENDER_EMPTY_NODE_FN, NOOP } from '../constants';
|
|
24
19
|
import { EU_NOTATION_WEEK_DAYS_INDEXES, US_NOTATION_WEEK_DAYS_INDEXES } from '../../../Shared/TimeWindow/constants/timeWindow.constants';
|
|
25
20
|
import { getDefaultTexts } from '../../../../utils';
|
|
26
|
-
|
|
27
21
|
var Weekly = function Weekly(_ref) {
|
|
28
22
|
var _ref$maxEntries = _ref.maxEntries,
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
23
|
+
maxEntries = _ref$maxEntries === void 0 ? DEFAULT_MAX_ENTRIES : _ref$maxEntries,
|
|
24
|
+
_ref$valueSelectionMo = _ref.valueSelectionMode,
|
|
25
|
+
valueSelectionMode = _ref$valueSelectionMo === void 0 ? ['Hour', 'Range'] : _ref$valueSelectionMo,
|
|
26
|
+
_ref$onChange = _ref.onChange,
|
|
27
|
+
onChange = _ref$onChange === void 0 ? NOOP : _ref$onChange,
|
|
28
|
+
timeFormat = _ref.timeFormat,
|
|
29
|
+
valueFormatOptions = _ref.valueFormatOptions,
|
|
30
|
+
value = _ref.value,
|
|
31
|
+
texts = _ref.texts,
|
|
32
|
+
timePickerProps = _ref.timePickerProps,
|
|
33
|
+
disabled = _ref.disabled,
|
|
34
|
+
errorTexts = _ref.errorTexts;
|
|
41
35
|
var intl = useIntl();
|
|
42
36
|
var allTexts = useMemo(function () {
|
|
43
37
|
return getDefaultTexts(intl, false, texts);
|
|
@@ -52,24 +46,18 @@ var Weekly = function Weekly(_ref) {
|
|
|
52
46
|
mode: valueSelectionMode[0]
|
|
53
47
|
};
|
|
54
48
|
}, [valueSelectionMode]);
|
|
55
|
-
|
|
56
49
|
var _useState = useState(Object.keys(value)),
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
50
|
+
filteredSchedule = _useState[0],
|
|
51
|
+
setFilteredSchedule = _useState[1];
|
|
60
52
|
var _useState2 = useState([]),
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
53
|
+
activeDays = _useState2[0],
|
|
54
|
+
setActiveDays = _useState2[1];
|
|
64
55
|
var ref = useRef();
|
|
65
|
-
|
|
66
56
|
var _useShiftAndControlKe = useShiftAndControlKeys(ref),
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
57
|
+
controlKeyPressed = _useShiftAndControlKe[0],
|
|
58
|
+
shiftKeyPressed = _useShiftAndControlKe[1];
|
|
70
59
|
var _useDataFormat = useDataFormat(),
|
|
71
|
-
|
|
72
|
-
|
|
60
|
+
isSundayFirstWeekDay = _useDataFormat.isSundayFirstWeekDay;
|
|
73
61
|
var allKeys = useMemo(function () {
|
|
74
62
|
return isSundayFirstWeekDay ? US_NOTATION_WEEK_DAYS_INDEXES : EU_NOTATION_WEEK_DAYS_INDEXES;
|
|
75
63
|
}, [isSundayFirstWeekDay]);
|
|
@@ -85,9 +73,8 @@ var Weekly = function Weekly(_ref) {
|
|
|
85
73
|
var handleDayTimeChange = useCallback(function (dayValue, dayKey, guid) {
|
|
86
74
|
var updatedSchedule = value;
|
|
87
75
|
var start = dayValue[0],
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
76
|
+
end = dayValue[1],
|
|
77
|
+
inverted = dayValue[2];
|
|
91
78
|
if (dayKey instanceof Array) {
|
|
92
79
|
dayKey.forEach(function (day) {
|
|
93
80
|
if (guid in updatedSchedule) {
|
|
@@ -107,18 +94,14 @@ var Weekly = function Weekly(_ref) {
|
|
|
107
94
|
inverted: Boolean(inverted)
|
|
108
95
|
});
|
|
109
96
|
}
|
|
110
|
-
|
|
111
97
|
onChange(updatedSchedule);
|
|
112
98
|
}, [value, onChange]);
|
|
113
|
-
|
|
114
99
|
var _getDayValue = useCallback(function (dayKey, guid) {
|
|
115
100
|
if (typeof dayKey === 'number' && value[guid] && !!value[guid][dayKey]) {
|
|
116
101
|
return value[guid][dayKey];
|
|
117
102
|
}
|
|
118
|
-
|
|
119
103
|
return defaultDayValue;
|
|
120
104
|
}, [value, defaultDayValue]);
|
|
121
|
-
|
|
122
105
|
var handleModeChange = useCallback(function (selectedMode, dayKeys, guid) {
|
|
123
106
|
var updatedSchedule = value;
|
|
124
107
|
dayKeys.forEach(function (day) {
|
|
@@ -177,9 +160,7 @@ var Weekly = function Weekly(_ref) {
|
|
|
177
160
|
if (!isDayRestricted(dayKey)) {
|
|
178
161
|
checkDay(dayKey);
|
|
179
162
|
}
|
|
180
|
-
|
|
181
163
|
var updatedActiveDay = [];
|
|
182
|
-
|
|
183
164
|
if (controlKeyPressed) {
|
|
184
165
|
updatedActiveDay = activeDays.includes(dayKey) ? activeDays : [].concat(activeDays, [dayKey]);
|
|
185
166
|
} else if (activeDays.length > 0 && shiftKeyPressed) {
|
|
@@ -187,7 +168,6 @@ var Weekly = function Weekly(_ref) {
|
|
|
187
168
|
} else {
|
|
188
169
|
updatedActiveDay = [dayKey];
|
|
189
170
|
}
|
|
190
|
-
|
|
191
171
|
setActiveDays(updatedActiveDay);
|
|
192
172
|
}, [checkDay, isDayRestricted, activeDays, controlKeyPressed, shiftKeyPressed]);
|
|
193
173
|
var handleToggleDay = useCallback(function (dayKey, forcedState) {
|
|
@@ -196,7 +176,6 @@ var Weekly = function Weekly(_ref) {
|
|
|
196
176
|
activeDays.includes(dayKey) ? excludeDayFromActive(dayKey) : checkActiveDay(dayKey);
|
|
197
177
|
return;
|
|
198
178
|
}
|
|
199
|
-
|
|
200
179
|
forcedState ? checkActiveDay(dayKey) : uncheckActiveDay(dayKey);
|
|
201
180
|
} else {
|
|
202
181
|
activeDays.includes(dayKey) ? uncheckActiveDay(dayKey) : checkActiveDay(dayKey);
|
|
@@ -220,7 +199,6 @@ var Weekly = function Weekly(_ref) {
|
|
|
220
199
|
}, [activeDays, getDayLabel, isDayRestricted, disabled, intl, handleToggleDay, removeDaySelection, allTexts]);
|
|
221
200
|
var handleRangeAdd = useCallback(function () {
|
|
222
201
|
var _objectSpread2;
|
|
223
|
-
|
|
224
202
|
var updatedDay = {};
|
|
225
203
|
var guid = Object.keys(value).find(function (key) {
|
|
226
204
|
return activeDays.every(function (day) {
|
|
@@ -231,9 +209,7 @@ var Weekly = function Weekly(_ref) {
|
|
|
231
209
|
updatedDay[day] = defaultDayValue;
|
|
232
210
|
});
|
|
233
211
|
var restOfScheduleObject = guid ? value[guid] : EMPTY_OBJECT;
|
|
234
|
-
|
|
235
212
|
var updatedSchedule = _objectSpread({}, value, (_objectSpread2 = {}, _objectSpread2[guid || uuid()] = _objectSpread({}, restOfScheduleObject, {}, updatedDay), _objectSpread2));
|
|
236
|
-
|
|
237
213
|
onChange(updatedSchedule);
|
|
238
214
|
}, [value, activeDays, defaultDayValue, onChange]);
|
|
239
215
|
var renderGridTitle = useCallback(function (count) {
|
|
@@ -245,11 +221,9 @@ var Weekly = function Weekly(_ref) {
|
|
|
245
221
|
var canAddRange = canAddAnotherRange(value, activeDays, maxEntries);
|
|
246
222
|
var isAnyDaySelected = activeDays.length > 0;
|
|
247
223
|
var shouldRenderAddButton = isAnyDaySelected && filteredSchedule.length < maxEntries && canAddRange && !disabled;
|
|
248
|
-
|
|
249
224
|
var getErrorTextsForFormRow = function getErrorTextsForFormRow(guid) {
|
|
250
225
|
return activeDays.length === 1 && errorTexts && errorTexts[guid] && errorTexts[guid][activeDays[0]];
|
|
251
226
|
};
|
|
252
|
-
|
|
253
227
|
return /*#__PURE__*/React.createElement(S.NewFilterContainer, {
|
|
254
228
|
ref: ref
|
|
255
229
|
}, /*#__PURE__*/React.createElement(Grid, {
|
|
@@ -278,7 +252,8 @@ var Weekly = function Weekly(_ref) {
|
|
|
278
252
|
onMultipleDayTimeChange: function onMultipleDayTimeChange(dates) {
|
|
279
253
|
return handleDayTimeChange(dates, activeDays, guid);
|
|
280
254
|
},
|
|
281
|
-
dayKeys: activeDays
|
|
255
|
+
dayKeys: activeDays
|
|
256
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
282
257
|
,
|
|
283
258
|
getDayLabel: getDayLabel,
|
|
284
259
|
activeDays: activeDays,
|
|
@@ -309,5 +284,4 @@ var Weekly = function Weekly(_ref) {
|
|
|
309
284
|
message: allTexts.selectDaysDescription
|
|
310
285
|
}));
|
|
311
286
|
};
|
|
312
|
-
|
|
313
287
|
export default Weekly;
|
|
@@ -1,29 +1,23 @@
|
|
|
1
1
|
import { DEFAULT_MAX_ENTRIES } from '../constants';
|
|
2
2
|
export var range = function range(start, stop) {
|
|
3
3
|
var result = [];
|
|
4
|
-
|
|
5
4
|
for (var i = start; i < stop; i += 1) {
|
|
6
5
|
result.push(i);
|
|
7
6
|
}
|
|
8
|
-
|
|
9
7
|
return result;
|
|
10
8
|
};
|
|
11
9
|
export var haveActiveDaysCommonRange = function haveActiveDaysCommonRange(days, activeDaysArray) {
|
|
12
10
|
var previousDay;
|
|
13
11
|
var activeDaysHaveDifferentRanges = activeDaysArray.some(function (dayIndex) {
|
|
14
12
|
var _previousDay, _previousDay2;
|
|
15
|
-
|
|
16
13
|
var currentDay = days[dayIndex];
|
|
17
|
-
|
|
18
14
|
if (!currentDay) {
|
|
19
15
|
return true;
|
|
20
16
|
}
|
|
21
|
-
|
|
22
17
|
if (!previousDay) {
|
|
23
18
|
previousDay = currentDay;
|
|
24
19
|
return false;
|
|
25
20
|
}
|
|
26
|
-
|
|
27
21
|
var areRangeDifferent = (currentDay == null ? void 0 : currentDay.start) !== ((_previousDay = previousDay) == null ? void 0 : _previousDay.start) || (currentDay == null ? void 0 : currentDay.stop) !== ((_previousDay2 = previousDay) == null ? void 0 : _previousDay2.stop);
|
|
28
22
|
previousDay = currentDay;
|
|
29
23
|
return areRangeDifferent;
|
|
@@ -34,7 +28,6 @@ export var canAddAnotherRange = function canAddAnotherRange(schedule, activeDays
|
|
|
34
28
|
if (maxRanges === void 0) {
|
|
35
29
|
maxRanges = DEFAULT_MAX_ENTRIES;
|
|
36
30
|
}
|
|
37
|
-
|
|
38
31
|
return Object.keys(schedule).length < maxRanges || Object.keys(schedule).some(function (key) {
|
|
39
32
|
return activeDays.every(function (day) {
|
|
40
33
|
return schedule[key][day] === undefined;
|
|
@@ -2,8 +2,8 @@ export var DEFAULT_MAX_ENTRIES = 4;
|
|
|
2
2
|
export var DEFAULT_TIME_FORMAT = 'HH:mm:ss.SSS';
|
|
3
3
|
export var DEFAULT_RANGE_START = '00:00:00.000';
|
|
4
4
|
export var DEFAULT_RANGE_END = '23:59:59.999';
|
|
5
|
-
export var EMPTY_OBJECT = {};
|
|
6
|
-
|
|
5
|
+
export var EMPTY_OBJECT = {};
|
|
6
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
7
7
|
export var NOOP = function NOOP() {};
|
|
8
8
|
export var RENDER_EMPTY_NODE_FN = function RENDER_EMPTY_NODE_FN() {
|
|
9
9
|
return null;
|
|
@@ -1,21 +1,17 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
var KEYS; // eslint-disable-next-line import/prefer-default-export
|
|
3
|
-
|
|
4
3
|
(function (KEYS) {
|
|
5
4
|
KEYS["SHIFT"] = "Shift";
|
|
6
5
|
KEYS["COMMAND"] = "Meta";
|
|
7
6
|
KEYS["CONTROL"] = "Control";
|
|
8
7
|
})(KEYS || (KEYS = {}));
|
|
9
|
-
|
|
10
8
|
export var useShiftAndControlKeys = function useShiftAndControlKeys(ref) {
|
|
11
9
|
var _React$useState = React.useState(false),
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
10
|
+
controlPressed = _React$useState[0],
|
|
11
|
+
setControlPressed = _React$useState[1];
|
|
15
12
|
var _React$useState2 = React.useState(false),
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
13
|
+
shiftPressed = _React$useState2[0],
|
|
14
|
+
setShiftPressed = _React$useState2[1];
|
|
19
15
|
React.useEffect(function () {
|
|
20
16
|
if (ref != null && ref.current) {
|
|
21
17
|
ref.current.addEventListener('keydown', function (e) {
|
|
@@ -23,7 +19,6 @@ export var useShiftAndControlKeys = function useShiftAndControlKeys(ref) {
|
|
|
23
19
|
setShiftPressed(true);
|
|
24
20
|
setControlPressed(false);
|
|
25
21
|
}
|
|
26
|
-
|
|
27
22
|
if (e.key === KEYS.CONTROL || e.key === KEYS.COMMAND) {
|
|
28
23
|
setControlPressed(true);
|
|
29
24
|
setShiftPressed(false);
|
|
@@ -33,7 +28,6 @@ export var useShiftAndControlKeys = function useShiftAndControlKeys(ref) {
|
|
|
33
28
|
if (e.key === KEYS.SHIFT) {
|
|
34
29
|
setShiftPressed(false);
|
|
35
30
|
}
|
|
36
|
-
|
|
37
31
|
if (e.key === KEYS.CONTROL || e.key === KEYS.COMMAND) {
|
|
38
32
|
setControlPressed(false);
|
|
39
33
|
}
|
|
@@ -1,17 +1,10 @@
|
|
|
1
1
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
|
-
|
|
3
2
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
4
|
-
|
|
5
3
|
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
|
|
6
|
-
|
|
7
4
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
8
|
-
|
|
9
5
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
10
|
-
|
|
11
6
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
12
|
-
|
|
13
7
|
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
14
|
-
|
|
15
8
|
import React from 'react';
|
|
16
9
|
import { cloneDeep } from 'lodash';
|
|
17
10
|
import ButtonGroup from '@synerise/ds-button-group';
|
|
@@ -24,48 +17,38 @@ import { addSuffixToDuplicate, denormalizeValue, isValidValue, normalizeValue }
|
|
|
24
17
|
import FilterDropdown from './Shared/FilterDropdown/FilterDropdown';
|
|
25
18
|
import SaveFilterForm from './Shared/SaveFilterForm/SaveFilterForm';
|
|
26
19
|
import { getDefaultTexts } from '../utils';
|
|
27
|
-
|
|
28
20
|
var RangeFilter = /*#__PURE__*/function (_React$PureComponent) {
|
|
29
21
|
function RangeFilter(props) {
|
|
30
22
|
var _props$allowedFilterT, _props$value, _props$value2, _props$value3, _this$state;
|
|
31
|
-
|
|
32
23
|
var _this;
|
|
33
|
-
|
|
34
24
|
_this = _React$PureComponent.call(this, props) || this;
|
|
35
|
-
|
|
36
25
|
_defineProperty(_this, "componentDidUpdate", function () {
|
|
37
26
|
var _this2 = _this,
|
|
38
|
-
|
|
27
|
+
state = _this2.state;
|
|
39
28
|
var allowedFilterTypes = _this.props.allowedFilterTypes;
|
|
40
29
|
var activeType = state.activeType;
|
|
41
|
-
|
|
42
30
|
if (allowedFilterTypes != null && allowedFilterTypes.length && !allowedFilterTypes.includes(activeType)) {
|
|
43
31
|
_this.handleTypeChange(allowedFilterTypes[0]);
|
|
44
32
|
}
|
|
45
33
|
});
|
|
46
|
-
|
|
47
34
|
_defineProperty(_this, "handleApply", function () {
|
|
48
35
|
var _this3 = _this,
|
|
49
|
-
|
|
36
|
+
state = _this3.state;
|
|
50
37
|
var onApply = _this.props.onApply;
|
|
51
38
|
var activeType = state.activeType;
|
|
52
39
|
var filter = state[String(activeType)];
|
|
53
40
|
onApply && onApply(normalizeValue(filter));
|
|
54
41
|
});
|
|
55
|
-
|
|
56
42
|
_defineProperty(_this, "handleCancel", function () {
|
|
57
43
|
var onCancel = _this.props.onCancel;
|
|
58
44
|
onCancel && onCancel();
|
|
59
45
|
});
|
|
60
|
-
|
|
61
46
|
_defineProperty(_this, "handleTypeChange", function (type) {
|
|
62
47
|
var _this$setState;
|
|
63
|
-
|
|
64
48
|
var _this4 = _this,
|
|
65
|
-
|
|
49
|
+
state = _this4.state;
|
|
66
50
|
var previousValue = state[type];
|
|
67
51
|
var previousDefinition = previousValue == null ? void 0 : previousValue.definition;
|
|
68
|
-
|
|
69
52
|
_this.setState((_this$setState = {
|
|
70
53
|
activeType: type
|
|
71
54
|
}, _this$setState[type] = _objectSpread({
|
|
@@ -74,83 +57,70 @@ var RangeFilter = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
74
57
|
type: type
|
|
75
58
|
}), _this$setState));
|
|
76
59
|
});
|
|
77
|
-
|
|
78
60
|
_defineProperty(_this, "handleRangeCopy", function (range) {
|
|
79
61
|
_this.setState({
|
|
80
62
|
rangeClipboard: range
|
|
81
63
|
});
|
|
82
64
|
});
|
|
83
|
-
|
|
84
65
|
_defineProperty(_this, "handleFilterSave", function (filterName) {
|
|
85
66
|
var _this5 = _this,
|
|
86
|
-
|
|
67
|
+
state = _this5.state;
|
|
87
68
|
var activeType = state.activeType;
|
|
88
69
|
var _this$props = _this.props,
|
|
89
|
-
|
|
90
|
-
|
|
70
|
+
onFilterSave = _this$props.onFilterSave,
|
|
71
|
+
savedFilters = _this$props.savedFilters;
|
|
91
72
|
var currentFilter = state[activeType];
|
|
92
73
|
var filterList = savedFilters || [];
|
|
93
|
-
|
|
94
74
|
var filter = _objectSpread({}, currentFilter, {
|
|
95
75
|
type: activeType,
|
|
96
76
|
name: filterName,
|
|
97
77
|
id: uuid()
|
|
98
78
|
});
|
|
99
|
-
|
|
100
79
|
var filterWithUniqueName = addSuffixToDuplicate(filterList, filter);
|
|
101
80
|
onFilterSave && onFilterSave([].concat(filterList, [filterWithUniqueName]));
|
|
102
81
|
});
|
|
103
|
-
|
|
104
82
|
_defineProperty(_this, "handleSavedFilterRemove", function (removedFilterId) {
|
|
105
83
|
var _this$props2 = _this.props,
|
|
106
|
-
|
|
107
|
-
|
|
84
|
+
savedFilters = _this$props2.savedFilters,
|
|
85
|
+
onFilterSave = _this$props2.onFilterSave;
|
|
108
86
|
var listWithoutRemovedId = savedFilters ? savedFilters.filter(function (f) {
|
|
109
87
|
return f.id !== removedFilterId;
|
|
110
88
|
}) : [];
|
|
111
89
|
onFilterSave && onFilterSave(listWithoutRemovedId);
|
|
112
90
|
});
|
|
113
|
-
|
|
114
91
|
_defineProperty(_this, "handleSavedFilterSelect", function (selected) {
|
|
115
92
|
var _this$setState2;
|
|
116
|
-
|
|
117
93
|
_this.setState((_this$setState2 = {
|
|
118
94
|
activeType: selected.type
|
|
119
95
|
}, _this$setState2[selected.type] = selected, _this$setState2));
|
|
120
96
|
});
|
|
121
|
-
|
|
122
97
|
var _allowedFilterTypes = props != null && (_props$allowedFilterT = props.allowedFilterTypes) != null && _props$allowedFilterT.length ? props == null ? void 0 : props.allowedFilterTypes : Object.keys(TYPES);
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
98
|
+
var valueType = props != null && (_props$value = props.value) != null && _props$value.type && _allowedFilterTypes.includes(props == null || (_props$value2 = props.value) == null ? void 0 : _props$value2.type) ? props == null || (_props$value3 = props.value) == null ? void 0 : _props$value3.type : _allowedFilterTypes[0];
|
|
99
|
+
// eslint-disable-next-line react/state-in-constructor
|
|
126
100
|
_this.state = (_this$state = {
|
|
127
101
|
activeType: valueType
|
|
128
102
|
}, _this$state[String(valueType)] = _objectSpread({}, denormalizeValue(props.value)), _this$state);
|
|
129
103
|
return _this;
|
|
130
104
|
}
|
|
131
|
-
|
|
132
105
|
_inheritsLoose(RangeFilter, _React$PureComponent);
|
|
133
|
-
|
|
134
106
|
var _proto = RangeFilter.prototype;
|
|
135
|
-
|
|
136
107
|
_proto.render = function render() {
|
|
137
108
|
var _this6 = this;
|
|
138
|
-
|
|
139
109
|
var state = this.state;
|
|
140
110
|
var activeType = state.activeType,
|
|
141
|
-
|
|
111
|
+
rangeClipboard = state.rangeClipboard;
|
|
142
112
|
var activeValue = state[activeType];
|
|
143
113
|
var definition = activeValue.definition;
|
|
144
114
|
var Component = activeType && TYPES_DATA[activeType] && TYPES_DATA[activeType].component;
|
|
145
115
|
var _this$props3 = this.props,
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
116
|
+
intl = _this$props3.intl,
|
|
117
|
+
savedFilters = _this$props3.savedFilters,
|
|
118
|
+
onFilterSave = _this$props3.onFilterSave,
|
|
119
|
+
texts = _this$props3.texts,
|
|
120
|
+
hideFooter = _this$props3.hideFooter,
|
|
121
|
+
valueSelectionModes = _this$props3.valueSelectionModes,
|
|
122
|
+
allowedFilterTypes = _this$props3.allowedFilterTypes,
|
|
123
|
+
rangeDisplayMode = _this$props3.rangeDisplayMode;
|
|
154
124
|
var allTexts = getDefaultTexts(intl, false, texts);
|
|
155
125
|
var buttonSource = allowedFilterTypes != null && allowedFilterTypes.length ? allowedFilterTypes : Object.values(TYPES);
|
|
156
126
|
buttonSource.sort(function (a, b) {
|
|
@@ -180,11 +150,9 @@ var RangeFilter = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
180
150
|
value: definition,
|
|
181
151
|
onChange: function onChange(def) {
|
|
182
152
|
var _updatedFilter;
|
|
183
|
-
|
|
184
153
|
var updatedFilter = (_updatedFilter = {}, _updatedFilter[activeType] = _objectSpread({}, activeValue, {
|
|
185
154
|
definition: def
|
|
186
155
|
}), _updatedFilter);
|
|
187
|
-
|
|
188
156
|
_this6.setState(updatedFilter);
|
|
189
157
|
},
|
|
190
158
|
onRangeCopy: this.handleRangeCopy,
|
|
@@ -206,15 +174,11 @@ var RangeFilter = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
206
174
|
onClick: this.handleApply
|
|
207
175
|
}, allTexts.apply)));
|
|
208
176
|
};
|
|
209
|
-
|
|
210
177
|
return RangeFilter;
|
|
211
178
|
}(React.PureComponent); // @ts-ignore
|
|
212
|
-
|
|
213
|
-
|
|
214
179
|
_defineProperty(RangeFilter, "defaultProps", {
|
|
215
180
|
value: _objectSpread({
|
|
216
181
|
type: TYPES.DAILY
|
|
217
182
|
}, TYPES_DATA.DAILY.definition)
|
|
218
183
|
});
|
|
219
|
-
|
|
220
184
|
export default injectIntl(RangeFilter);
|
|
@@ -1,17 +1,12 @@
|
|
|
1
1
|
var _excluded = ["label"];
|
|
2
|
-
|
|
3
2
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
4
|
-
|
|
5
3
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
6
|
-
|
|
7
4
|
import React from 'react';
|
|
8
5
|
import Button from '@synerise/ds-button';
|
|
9
6
|
import Icon, { Add3M } from '@synerise/ds-icon';
|
|
10
|
-
|
|
11
7
|
var AddButton = function AddButton(_ref) {
|
|
12
8
|
var label = _ref.label,
|
|
13
|
-
|
|
14
|
-
|
|
9
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
15
10
|
var icon = React.useMemo(function () {
|
|
16
11
|
return /*#__PURE__*/React.createElement(Icon, {
|
|
17
12
|
component: /*#__PURE__*/React.createElement(Add3M, null)
|
|
@@ -22,5 +17,4 @@ var AddButton = function AddButton(_ref) {
|
|
|
22
17
|
type: "ghost"
|
|
23
18
|
}, rest), icon, label);
|
|
24
19
|
};
|
|
25
|
-
|
|
26
20
|
export default React.memo(AddButton);
|
|
@@ -5,13 +5,12 @@ import Dropdown from '@synerise/ds-dropdown';
|
|
|
5
5
|
import Icon, { AngleDownS, TrashS } from '@synerise/ds-icon';
|
|
6
6
|
import { theme } from '@synerise/ds-core';
|
|
7
7
|
import * as S from './FilterDropdown.styles';
|
|
8
|
-
|
|
9
8
|
var FilterDropdown = function FilterDropdown(_ref) {
|
|
10
9
|
var removeTooltip = _ref.removeTooltip,
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
10
|
+
label = _ref.label,
|
|
11
|
+
filters = _ref.filters,
|
|
12
|
+
onFilterSelect = _ref.onFilterSelect,
|
|
13
|
+
onFilterRemove = _ref.onFilterRemove;
|
|
15
14
|
var overlay = React.useMemo(function () {
|
|
16
15
|
return /*#__PURE__*/React.createElement(S.DropdownMenu, null, filters.map(function (filter) {
|
|
17
16
|
return /*#__PURE__*/React.createElement(S.DropdownMenuItem, {
|
|
@@ -52,5 +51,4 @@ var FilterDropdown = function FilterDropdown(_ref) {
|
|
|
52
51
|
component: /*#__PURE__*/React.createElement(AngleDownS, null)
|
|
53
52
|
})));
|
|
54
53
|
};
|
|
55
|
-
|
|
56
54
|
export default FilterDropdown;
|
|
@@ -5,14 +5,13 @@ import Tooltip from '@synerise/ds-tooltip';
|
|
|
5
5
|
import { useIntl } from 'react-intl';
|
|
6
6
|
import { theme } from '@synerise/ds-core';
|
|
7
7
|
import * as S from './RangeFilterStatus.styles';
|
|
8
|
-
|
|
9
8
|
var RangeFilterStatus = function RangeFilterStatus(_ref) {
|
|
10
9
|
var onFilterRemove = _ref.onFilterRemove,
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
10
|
+
disabled = _ref.disabled,
|
|
11
|
+
filter = _ref.filter,
|
|
12
|
+
label = _ref.label,
|
|
13
|
+
_onClick = _ref.onClick,
|
|
14
|
+
texts = _ref.texts;
|
|
16
15
|
var intl = useIntl();
|
|
17
16
|
return /*#__PURE__*/React.createElement(S.Container, null, /*#__PURE__*/React.createElement(S.Title, null, texts.filter), !filter ? /*#__PURE__*/React.createElement(S.CreatorButton, {
|
|
18
17
|
label: label,
|
|
@@ -22,7 +21,6 @@ var RangeFilterStatus = function RangeFilterStatus(_ref) {
|
|
|
22
21
|
}) : /*#__PURE__*/React.createElement(S.ContentItem, {
|
|
23
22
|
onClick: function onClick(event) {
|
|
24
23
|
event.stopPropagation();
|
|
25
|
-
|
|
26
24
|
_onClick();
|
|
27
25
|
},
|
|
28
26
|
headerSuffix: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(S.SuffixText, null, texts.change), /*#__PURE__*/React.createElement(Tooltip, {
|
|
@@ -51,5 +49,4 @@ var RangeFilterStatus = function RangeFilterStatus(_ref) {
|
|
|
51
49
|
}
|
|
52
50
|
}));
|
|
53
51
|
};
|
|
54
|
-
|
|
55
52
|
export default RangeFilterStatus;
|
|
@@ -10,12 +10,14 @@ export declare const ContentItem: import("styled-components").StyledComponent<im
|
|
|
10
10
|
suppressContentEditableWarning?: boolean | undefined;
|
|
11
11
|
suppressHydrationWarning?: boolean | undefined;
|
|
12
12
|
accessKey?: string | undefined;
|
|
13
|
+
autoCapitalize?: (string & {}) | "none" | "off" | "on" | "sentences" | "words" | "characters" | undefined;
|
|
13
14
|
autoFocus?: boolean | undefined;
|
|
14
15
|
className?: string | undefined;
|
|
15
16
|
contentEditable?: boolean | "inherit" | "true" | "false" | undefined;
|
|
16
17
|
contextMenu?: string | undefined;
|
|
17
18
|
dir?: string | undefined;
|
|
18
19
|
draggable?: boolean | undefined;
|
|
20
|
+
enterKeyHint?: "next" | "search" | "enter" | "done" | "go" | "previous" | "send" | undefined;
|
|
19
21
|
hidden?: boolean | undefined;
|
|
20
22
|
id?: string | undefined;
|
|
21
23
|
lang?: string | undefined;
|
|
@@ -37,7 +39,6 @@ export declare const ContentItem: import("styled-components").StyledComponent<im
|
|
|
37
39
|
rev?: string | undefined;
|
|
38
40
|
typeof?: string | undefined;
|
|
39
41
|
vocab?: string | undefined;
|
|
40
|
-
autoCapitalize?: string | undefined;
|
|
41
42
|
autoCorrect?: string | undefined;
|
|
42
43
|
autoSave?: string | undefined;
|
|
43
44
|
color?: string | undefined;
|
|
@@ -48,7 +49,7 @@ export declare const ContentItem: import("styled-components").StyledComponent<im
|
|
|
48
49
|
itemRef?: string | undefined;
|
|
49
50
|
results?: number | undefined;
|
|
50
51
|
security?: string | undefined;
|
|
51
|
-
unselectable?: "
|
|
52
|
+
unselectable?: "off" | "on" | undefined;
|
|
52
53
|
inputMode?: "text" | "search" | "email" | "tel" | "url" | "none" | "numeric" | "decimal" | undefined;
|
|
53
54
|
is?: string | undefined;
|
|
54
55
|
"aria-activedescendant"?: string | undefined;
|
|
@@ -3,19 +3,15 @@ import Button from '@synerise/ds-button';
|
|
|
3
3
|
import { RawInput } from '@synerise/ds-input';
|
|
4
4
|
import Icon, { CheckM, CloseM } from '@synerise/ds-icon';
|
|
5
5
|
import * as S from './SaveFilterForm.styles';
|
|
6
|
-
|
|
7
6
|
var SaveFilterForm = function SaveFilterForm(_ref) {
|
|
8
7
|
var texts = _ref.texts,
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
onFilterSave = _ref.onFilterSave;
|
|
11
9
|
var _React$useState = React.useState(false),
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
10
|
+
active = _React$useState[0],
|
|
11
|
+
setActive = _React$useState[1];
|
|
15
12
|
var _React$useState2 = React.useState(),
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
13
|
+
name = _React$useState2[0],
|
|
14
|
+
setName = _React$useState2[1];
|
|
19
15
|
var input = /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(RawInput, {
|
|
20
16
|
placeholder: texts.filterName,
|
|
21
17
|
value: name,
|
|
@@ -51,5 +47,4 @@ var SaveFilterForm = function SaveFilterForm(_ref) {
|
|
|
51
47
|
}
|
|
52
48
|
}, texts.saveFilter));
|
|
53
49
|
};
|
|
54
|
-
|
|
55
50
|
export default SaveFilterForm;
|