@synerise/ds-date-range-picker 0.31.1 → 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 +20 -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 +11 -10
- 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 +63 -86
- package/package.json +22 -22
|
@@ -19,19 +19,15 @@ export var DefaultIconWrapper = styled.div.withConfig({
|
|
|
19
19
|
})(["margin-left:3px;&&:hover{.ds-icon > svg{fill:", ";}}"], function (props) {
|
|
20
20
|
return props.theme.palette['grey-600'];
|
|
21
21
|
});
|
|
22
|
-
|
|
23
22
|
var disabledStyled = function disabledStyled(props) {
|
|
24
23
|
return css(["&:hover,&,&& > *{cursor:not-allowed;}opacity:0.8;color:", ";background:", ";"], props.theme.palette["grey-600"], props.theme.palette['grey-050']);
|
|
25
24
|
};
|
|
26
|
-
|
|
27
25
|
var errorInputStyle = function errorInputStyle(props) {
|
|
28
26
|
return "\n &&, .ant-input {\n border-color: " + props.theme.palette['red-600'] + ";\n box-shadow: inset 0 0 0 2px " + props.theme.palette['red-600'] + ";\n background: " + props.theme.palette['red-050'] + ";\n border-radius: 4px;\n }\n";
|
|
29
27
|
};
|
|
30
|
-
|
|
31
28
|
var activeStyle = function activeStyle(props) {
|
|
32
29
|
return css(["box-shadow:inset 0 0 0 1px ", ";border-color:", ";background:", ";"], props.theme.palette['blue-600'], props.theme.palette['blue-600'], props.theme.palette['blue-050']);
|
|
33
30
|
};
|
|
34
|
-
|
|
35
31
|
export var RangeInputWrapper = styled(InputWrapper).withConfig({
|
|
36
32
|
displayName: "RangePickerInputstyles__RangeInputWrapper",
|
|
37
33
|
componentId: "sc-1b9h1ef-3"
|
|
@@ -1,19 +1,11 @@
|
|
|
1
1
|
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); }
|
|
2
|
-
|
|
3
2
|
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
|
|
4
|
-
|
|
5
3
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
6
|
-
|
|
7
4
|
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; }
|
|
8
|
-
|
|
9
5
|
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; }
|
|
10
|
-
|
|
11
6
|
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; }
|
|
12
|
-
|
|
13
7
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
14
|
-
|
|
15
8
|
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); }
|
|
16
|
-
|
|
17
9
|
import React, { PureComponent } from 'react';
|
|
18
10
|
import { omitBy, isUndefined } from 'lodash';
|
|
19
11
|
import { injectIntl } from 'react-intl';
|
|
@@ -34,10 +26,9 @@ import RangeFilterStatus from './RangeFilter/Shared/RangeFilterStatus/RangeFilte
|
|
|
34
26
|
import { isLifetime } from './RelativeRangePicker/Elements/RangeDropdown/RangeDropdown';
|
|
35
27
|
export function defaultValueTransformer(value) {
|
|
36
28
|
var id = value.id,
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
29
|
+
timestamp = value.timestamp,
|
|
30
|
+
translationKey = value.translationKey,
|
|
31
|
+
filter = value.filter;
|
|
41
32
|
if (value.key === 'ALL_TIME' || isLifetime(value)) {
|
|
42
33
|
return _objectSpread({
|
|
43
34
|
type: 'ABSOLUTE',
|
|
@@ -46,7 +37,6 @@ export function defaultValueTransformer(value) {
|
|
|
46
37
|
filter: filter
|
|
47
38
|
} : {});
|
|
48
39
|
}
|
|
49
|
-
|
|
50
40
|
var baseValue = _objectSpread({}, id ? {
|
|
51
41
|
id: id
|
|
52
42
|
} : {}, {}, timestamp ? {
|
|
@@ -56,7 +46,6 @@ export function defaultValueTransformer(value) {
|
|
|
56
46
|
} : {}, {}, filter ? {
|
|
57
47
|
filter: filter
|
|
58
48
|
} : {});
|
|
59
|
-
|
|
60
49
|
if (value.type === 'ABSOLUTE') {
|
|
61
50
|
return _objectSpread({}, baseValue, {
|
|
62
51
|
type: value.type
|
|
@@ -66,7 +55,6 @@ export function defaultValueTransformer(value) {
|
|
|
66
55
|
to: value.to
|
|
67
56
|
} : {});
|
|
68
57
|
}
|
|
69
|
-
|
|
70
58
|
if (value.type === 'RELATIVE') {
|
|
71
59
|
return _objectSpread({}, baseValue, {
|
|
72
60
|
type: value.type,
|
|
@@ -76,24 +64,20 @@ export function defaultValueTransformer(value) {
|
|
|
76
64
|
future: value.future
|
|
77
65
|
});
|
|
78
66
|
}
|
|
79
|
-
|
|
80
67
|
return value;
|
|
81
68
|
}
|
|
82
69
|
export var RawDateRangePicker = /*#__PURE__*/function (_PureComponent) {
|
|
83
70
|
function RawDateRangePicker(props) {
|
|
84
71
|
var _this;
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
72
|
+
_this = _PureComponent.call(this, props) || this;
|
|
73
|
+
// eslint-disable-next-line react/state-in-constructor
|
|
88
74
|
_defineProperty(_this, "handleFilterCancel", function () {
|
|
89
75
|
_this.setState({
|
|
90
76
|
mode: MODES.DATE
|
|
91
77
|
});
|
|
92
78
|
});
|
|
93
|
-
|
|
94
79
|
_defineProperty(_this, "handleFilterApply", function (filter) {
|
|
95
80
|
var value = _this.state.value;
|
|
96
|
-
|
|
97
81
|
_this.setState({
|
|
98
82
|
mode: MODES.DATE,
|
|
99
83
|
value: _objectSpread({}, value, {
|
|
@@ -101,115 +85,93 @@ export var RawDateRangePicker = /*#__PURE__*/function (_PureComponent) {
|
|
|
101
85
|
})
|
|
102
86
|
});
|
|
103
87
|
});
|
|
104
|
-
|
|
105
88
|
_defineProperty(_this, "allTexts", function () {
|
|
106
89
|
var _this$props = _this.props,
|
|
107
|
-
|
|
108
|
-
|
|
90
|
+
texts = _this$props.texts,
|
|
91
|
+
intl = _this$props.intl;
|
|
109
92
|
return getDefaultTexts(intl, false, texts);
|
|
110
93
|
});
|
|
111
|
-
|
|
112
94
|
_defineProperty(_this, "handleRangeChange", function (range) {
|
|
113
95
|
var _valueTransformer;
|
|
114
|
-
|
|
115
96
|
if (!range) {
|
|
116
97
|
return;
|
|
117
98
|
}
|
|
118
|
-
|
|
119
99
|
if (range.from && !fnsIsValid(range == null ? void 0 : range.from)) {
|
|
120
100
|
return;
|
|
121
101
|
}
|
|
122
|
-
|
|
123
102
|
var _this$props2 = _this.props,
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
103
|
+
onValueChange = _this$props2.onValueChange,
|
|
104
|
+
valueTransformer = _this$props2.valueTransformer,
|
|
105
|
+
isTruncateMs = _this$props2.isTruncateMs;
|
|
127
106
|
var _this$state = _this.state,
|
|
128
|
-
|
|
129
|
-
|
|
107
|
+
value = _this$state.value,
|
|
108
|
+
mode = _this$state.mode;
|
|
130
109
|
var newValue = normalizeRange(_objectSpread({}, range, {
|
|
131
110
|
filter: value.filter
|
|
132
111
|
}));
|
|
133
|
-
|
|
134
112
|
if (isTruncateMs) {
|
|
135
113
|
if (newValue.from !== undefined) {
|
|
136
114
|
newValue.from = fnsStartOfSecond(legacyParse(newValue.from));
|
|
137
115
|
}
|
|
138
|
-
|
|
139
116
|
if (newValue.to !== undefined) {
|
|
140
117
|
newValue.to = fnsStartOfSecond(legacyParse(newValue.to));
|
|
141
118
|
}
|
|
142
119
|
}
|
|
143
|
-
|
|
144
120
|
if ((newValue.type === 'RELATIVE' || newValue.key === CONST.ALL_TIME) && mode === MODES.TIME) {
|
|
145
121
|
_this.setState({
|
|
146
122
|
mode: MODES.DATE
|
|
147
123
|
});
|
|
148
124
|
}
|
|
149
|
-
|
|
150
125
|
if (range != null && range.key) {
|
|
151
126
|
newValue.key = range == null ? void 0 : range.key;
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
|
|
127
|
+
}
|
|
128
|
+
// transformation has to take place here, because `key` property might get omitted by valueTransformer
|
|
155
129
|
var legacyValue = (_valueTransformer = valueTransformer == null ? void 0 : valueTransformer(newValue)) != null ? _valueTransformer : newValue;
|
|
156
|
-
|
|
157
130
|
_this.setState({
|
|
158
131
|
value: _objectSpread({}, legacyValue, {
|
|
159
132
|
translationKey: range == null ? void 0 : range.translationKey
|
|
160
133
|
})
|
|
161
134
|
});
|
|
162
|
-
|
|
163
135
|
onValueChange && onValueChange(legacyValue);
|
|
164
136
|
});
|
|
165
|
-
|
|
166
137
|
_defineProperty(_this, "handleApply", function () {
|
|
167
138
|
var intl = _this.props.intl;
|
|
168
139
|
var value = _this.state.value;
|
|
169
140
|
var _this$props3 = _this.props,
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
141
|
+
forceAbsolute = _this$props3.forceAbsolute,
|
|
142
|
+
onApply = _this$props3.onApply;
|
|
173
143
|
if (forceAbsolute && value.type === RELATIVE) {
|
|
174
144
|
onApply && onApply(_objectSpread({}, value, {}, relativeToAbsolute(value)));
|
|
175
145
|
return;
|
|
176
146
|
}
|
|
177
|
-
|
|
178
147
|
if (value.key === CONST.ALL_TIME) {
|
|
179
148
|
onApply && onApply(omitBy(value, isUndefined));
|
|
180
149
|
return;
|
|
181
150
|
}
|
|
182
|
-
|
|
183
151
|
if (onApply) {
|
|
184
152
|
var valueToEmit = _objectSpread({}, value, {
|
|
185
153
|
from: value.type === ABSOLUTE && value.from instanceof Date ? toIsoString(value.from, intl.timeZone) : undefined,
|
|
186
154
|
to: value.type === ABSOLUTE && value.to instanceof Date ? toIsoString(value.to, intl.timeZone) : undefined,
|
|
187
155
|
type: value.type
|
|
188
156
|
});
|
|
189
|
-
|
|
190
157
|
onApply(valueToEmit);
|
|
191
158
|
}
|
|
192
159
|
});
|
|
193
|
-
|
|
194
160
|
_defineProperty(_this, "handleModalOpenClick", function () {
|
|
195
161
|
_this.setState({
|
|
196
162
|
mode: MODES.FILTER
|
|
197
163
|
});
|
|
198
164
|
});
|
|
199
|
-
|
|
200
165
|
_defineProperty(_this, "handleRemoveFilterClick", function () {
|
|
201
166
|
_this.handleFilterApply(undefined);
|
|
202
167
|
});
|
|
203
|
-
|
|
204
168
|
_defineProperty(_this, "handleSwitchMode", function () {
|
|
205
169
|
var mode = _this.state.mode;
|
|
206
170
|
var updatedMode = mode === MODES.TIME ? MODES.DATE : MODES.TIME;
|
|
207
|
-
|
|
208
171
|
_this.setState({
|
|
209
172
|
mode: updatedMode
|
|
210
173
|
});
|
|
211
174
|
});
|
|
212
|
-
|
|
213
175
|
_defineProperty(_this, "handleAddonCollapse", function (addonKey, expanded) {
|
|
214
176
|
_this.setState(function (state) {
|
|
215
177
|
return _objectSpread({}, state, {
|
|
@@ -217,26 +179,22 @@ export var RawDateRangePicker = /*#__PURE__*/function (_PureComponent) {
|
|
|
217
179
|
});
|
|
218
180
|
});
|
|
219
181
|
});
|
|
220
|
-
|
|
221
182
|
_defineProperty(_this, "getAddons", function () {
|
|
222
183
|
var _this$props4 = _this.props,
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
184
|
+
showRelativePicker = _this$props4.showRelativePicker,
|
|
185
|
+
showFilter = _this$props4.showFilter,
|
|
186
|
+
relativeFuture = _this$props4.relativeFuture,
|
|
187
|
+
relativePast = _this$props4.relativePast,
|
|
188
|
+
ranges = _this$props4.ranges,
|
|
189
|
+
relativeModes = _this$props4.relativeModes,
|
|
190
|
+
rangeUnits = _this$props4.rangeUnits,
|
|
191
|
+
showCustomRange = _this$props4.showCustomRange,
|
|
192
|
+
valueTransformer = _this$props4.valueTransformer;
|
|
232
193
|
var _this$state2 = _this.state,
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
194
|
+
value = _this$state2.value,
|
|
195
|
+
visibleAddonKey = _this$state2.visibleAddonKey;
|
|
236
196
|
var allTexts = _this.allTexts();
|
|
237
|
-
|
|
238
197
|
var addons = [];
|
|
239
|
-
|
|
240
198
|
if (showRelativePicker && !!relativeModes && (relativeModes == null ? void 0 : relativeModes.length) > 0) {
|
|
241
199
|
var addonKey = 'relative-picker';
|
|
242
200
|
var rangeTranslationKey = value == null ? void 0 : value.translationKey;
|
|
@@ -264,7 +222,6 @@ export var RawDateRangePicker = /*#__PURE__*/function (_PureComponent) {
|
|
|
264
222
|
key: addonKey
|
|
265
223
|
});
|
|
266
224
|
}
|
|
267
|
-
|
|
268
225
|
if (showFilter) {
|
|
269
226
|
var _addonKey = 'filter';
|
|
270
227
|
var filterEnabled = value.from && value.to || isLifetime(value);
|
|
@@ -281,10 +238,8 @@ export var RawDateRangePicker = /*#__PURE__*/function (_PureComponent) {
|
|
|
281
238
|
key: _addonKey
|
|
282
239
|
});
|
|
283
240
|
}
|
|
284
|
-
|
|
285
241
|
return addons;
|
|
286
242
|
});
|
|
287
|
-
|
|
288
243
|
_this.state = {
|
|
289
244
|
mode: MODES.DATE,
|
|
290
245
|
value: normalizeRange(props.value),
|
|
@@ -292,47 +247,41 @@ export var RawDateRangePicker = /*#__PURE__*/function (_PureComponent) {
|
|
|
292
247
|
};
|
|
293
248
|
return _this;
|
|
294
249
|
}
|
|
295
|
-
|
|
296
250
|
_inheritsLoose(RawDateRangePicker, _PureComponent);
|
|
297
|
-
|
|
298
251
|
var _proto = RawDateRangePicker.prototype;
|
|
299
|
-
|
|
300
252
|
_proto.componentDidUpdate = function componentDidUpdate(prevProps) {
|
|
301
253
|
var value = this.props.value;
|
|
302
|
-
|
|
303
254
|
if (prevProps.value !== value) {
|
|
304
255
|
this.handleRangeChange(value);
|
|
305
256
|
}
|
|
306
257
|
};
|
|
307
|
-
|
|
308
258
|
_proto.render = function render() {
|
|
309
259
|
var _this$props5 = this.props,
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
260
|
+
showRelativePicker = _this$props5.showRelativePicker,
|
|
261
|
+
showFilter = _this$props5.showFilter,
|
|
262
|
+
showTime = _this$props5.showTime,
|
|
263
|
+
format = _this$props5.format,
|
|
264
|
+
valueFormatOptions = _this$props5.valueFormatOptions,
|
|
265
|
+
disabledDate = _this$props5.disabledDate,
|
|
266
|
+
validate = _this$props5.validate,
|
|
267
|
+
forceAdjacentMonths = _this$props5.forceAdjacentMonths,
|
|
268
|
+
savedFilters = _this$props5.savedFilters,
|
|
269
|
+
onFilterSave = _this$props5.onFilterSave,
|
|
270
|
+
intl = _this$props5.intl,
|
|
271
|
+
_this$props5$containe = _this$props5.containerClass,
|
|
272
|
+
containerClass = _this$props5$containe === void 0 ? 'ds-date-range-picker' : _this$props5$containe,
|
|
273
|
+
footerProps = _this$props5.footerProps,
|
|
274
|
+
allowedFilterTypes = _this$props5.allowedFilterTypes,
|
|
275
|
+
_this$props5$disableA = _this$props5.disableAbsoluteTimepickerInRelative,
|
|
276
|
+
disableAbsoluteTimepickerInRelative = _this$props5$disableA === void 0 ? false : _this$props5$disableA,
|
|
277
|
+
filterValueSelectionModes = _this$props5.filterValueSelectionModes,
|
|
278
|
+
filterRangeDisplayMode = _this$props5.filterRangeDisplayMode,
|
|
279
|
+
_this$props5$showNowB = _this$props5.showNowButton,
|
|
280
|
+
showNowButton = _this$props5$showNowB === void 0 ? true : _this$props5$showNowB,
|
|
281
|
+
alignContentToTop = _this$props5.alignContentToTop;
|
|
332
282
|
var _this$state3 = this.state,
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
283
|
+
value = _this$state3.value,
|
|
284
|
+
mode = _this$state3.mode;
|
|
336
285
|
if (value.type === 'RELATIVE' && (!value.from || !value.to)) {
|
|
337
286
|
var absolute = normalizeRange(value);
|
|
338
287
|
Object.assign(value, {
|
|
@@ -340,22 +289,18 @@ export var RawDateRangePicker = /*#__PURE__*/function (_PureComponent) {
|
|
|
340
289
|
to: absolute.to
|
|
341
290
|
});
|
|
342
291
|
}
|
|
343
|
-
|
|
344
292
|
var from = value.from,
|
|
345
|
-
|
|
346
|
-
|
|
293
|
+
to = value.to,
|
|
294
|
+
key = value.key;
|
|
347
295
|
var addons = this.getAddons();
|
|
348
296
|
var allTexts = this.allTexts();
|
|
349
|
-
|
|
350
297
|
function isRelative(dateRange) {
|
|
351
298
|
var isLegacyCustom = Object.keys(value).includes('key') && key === undefined;
|
|
352
299
|
return dateRange.key && (CONST.RELATIVE_PRESETS.map(function (e) {
|
|
353
300
|
return e.key;
|
|
354
301
|
}).includes(dateRange.key) || dateRange.key === CONST.CUSTOM_RANGE_KEY) || isLegacyCustom;
|
|
355
302
|
}
|
|
356
|
-
|
|
357
303
|
var content;
|
|
358
|
-
|
|
359
304
|
if (mode === MODES.FILTER) {
|
|
360
305
|
content = /*#__PURE__*/React.createElement(Container, null, /*#__PURE__*/React.createElement(RangeFilter, {
|
|
361
306
|
texts: allTexts,
|
|
@@ -374,8 +319,8 @@ export var RawDateRangePicker = /*#__PURE__*/function (_PureComponent) {
|
|
|
374
319
|
};
|
|
375
320
|
var isValidAbsolute = !Object.keys(value).includes('key') && Boolean(from && to);
|
|
376
321
|
var isValidRelative = isRelative(value) && Boolean(value.offset && value.duration);
|
|
377
|
-
var isValidSince = value.type === 'SINCE' && Boolean(value.offset && value.duration);
|
|
378
|
-
|
|
322
|
+
var isValidSince = value.type === 'SINCE' && Boolean(value.offset && value.duration);
|
|
323
|
+
// TODO apply ranges and find mapped lifetime here, this applies only for defaultValueTransformer
|
|
379
324
|
var isValid = (isValidAbsolute || isValidRelative || isValidSince || key === CONST.ALL_TIME) && validator.valid;
|
|
380
325
|
var canSwitchToTimePicker = isValid && !isLifetime(value) && (!disableAbsoluteTimepickerInRelative || value.type === 'ABSOLUTE');
|
|
381
326
|
content = /*#__PURE__*/React.createElement(Container, {
|
|
@@ -413,17 +358,16 @@ export var RawDateRangePicker = /*#__PURE__*/function (_PureComponent) {
|
|
|
413
358
|
valueFormatOptions: valueFormatOptions
|
|
414
359
|
}, footerProps)));
|
|
415
360
|
}
|
|
416
|
-
|
|
417
361
|
return /*#__PURE__*/React.createElement(PopupWrapper, {
|
|
418
362
|
alignContentToTop: alignContentToTop,
|
|
419
363
|
hasFilter: showFilter,
|
|
420
364
|
hasRelativePicker: showRelativePicker
|
|
421
365
|
}, content);
|
|
422
366
|
};
|
|
423
|
-
|
|
424
367
|
return RawDateRangePicker;
|
|
425
|
-
}(PureComponent);
|
|
368
|
+
}(PureComponent);
|
|
426
369
|
|
|
370
|
+
// @ts-ignore
|
|
427
371
|
_defineProperty(RawDateRangePicker, "defaultProps", {
|
|
428
372
|
ranges: [].concat(RELATIVE_PRESETS, ABSOLUTE_PRESETS),
|
|
429
373
|
relativePast: true,
|
|
@@ -436,5 +380,4 @@ _defineProperty(RawDateRangePicker, "defaultProps", {
|
|
|
436
380
|
valueTransformer: defaultValueTransformer,
|
|
437
381
|
isTruncateMs: true
|
|
438
382
|
});
|
|
439
|
-
|
|
440
383
|
export default injectIntl(RawDateRangePicker);
|
|
@@ -8,22 +8,20 @@ import OffsetField from './OffsetField/OffsetField';
|
|
|
8
8
|
import { RANGES_MODE } from '../../../constants';
|
|
9
9
|
import TimestampRange from '../TimestampRange/TimestampRange';
|
|
10
10
|
export var setOffsetType = set(lensPath(['offset', 'type']));
|
|
11
|
-
|
|
12
11
|
var CustomRangeForm = function CustomRangeForm(_ref) {
|
|
13
12
|
var ranges = _ref.ranges,
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
13
|
+
rangeUnits = _ref.rangeUnits,
|
|
14
|
+
currentRange = _ref.currentRange,
|
|
15
|
+
currentGroup = _ref.currentGroup,
|
|
16
|
+
handleDurationValueChange = _ref.handleDurationValueChange,
|
|
17
|
+
handleOffsetValueChange = _ref.handleOffsetValueChange,
|
|
18
|
+
handleModeChange = _ref.handleModeChange,
|
|
19
|
+
handleChange = _ref.handleChange,
|
|
20
|
+
texts = _ref.texts,
|
|
21
|
+
handleTimestampChange = _ref.handleTimestampChange,
|
|
22
|
+
timestamp = _ref.timestamp,
|
|
23
|
+
relativeModes = _ref.relativeModes;
|
|
25
24
|
var isSinceModeEnable = currentGroup === RANGES_MODE.SINCE;
|
|
26
|
-
|
|
27
25
|
var renderOffsetColumn = function renderOffsetColumn() {
|
|
28
26
|
return /*#__PURE__*/React.createElement(S.RangeFormColumn, null, /*#__PURE__*/React.createElement(OffsetField, {
|
|
29
27
|
currentRange: currentRange,
|
|
@@ -34,7 +32,6 @@ var CustomRangeForm = function CustomRangeForm(_ref) {
|
|
|
34
32
|
rangeUnits: rangeUnits
|
|
35
33
|
}));
|
|
36
34
|
};
|
|
37
|
-
|
|
38
35
|
var renderDurationColumn = function renderDurationColumn() {
|
|
39
36
|
return /*#__PURE__*/React.createElement(S.RangeFormColumn, null, /*#__PURE__*/React.createElement(DurationField, {
|
|
40
37
|
currentRange: currentRange,
|
|
@@ -45,7 +42,6 @@ var CustomRangeForm = function CustomRangeForm(_ref) {
|
|
|
45
42
|
rangeUnits: rangeUnits
|
|
46
43
|
}));
|
|
47
44
|
};
|
|
48
|
-
|
|
49
45
|
var renderTimestampRange = function renderTimestampRange() {
|
|
50
46
|
return /*#__PURE__*/React.createElement(S.RangeFormColumn, null, /*#__PURE__*/React.createElement(TimestampRange, {
|
|
51
47
|
handleModeChange: handleModeChange,
|
|
@@ -56,7 +52,6 @@ var CustomRangeForm = function CustomRangeForm(_ref) {
|
|
|
56
52
|
texts: texts
|
|
57
53
|
}));
|
|
58
54
|
};
|
|
59
|
-
|
|
60
55
|
return /*#__PURE__*/React.createElement(S.CustomForm, null, /*#__PURE__*/React.createElement(S.RangeFormColumn, null, /*#__PURE__*/React.createElement(ModeDropdown, {
|
|
61
56
|
ranges: ranges,
|
|
62
57
|
currentGroup: currentGroup,
|
|
@@ -66,5 +61,4 @@ var CustomRangeForm = function CustomRangeForm(_ref) {
|
|
|
66
61
|
modes: relativeModes
|
|
67
62
|
})), isSinceModeEnable ? renderTimestampRange() : renderDurationColumn(), !isSinceModeEnable && renderOffsetColumn());
|
|
68
63
|
};
|
|
69
|
-
|
|
70
64
|
export default CustomRangeForm;
|
|
@@ -7,14 +7,13 @@ import * as S from '../../../RelativeRangePicker.styles';
|
|
|
7
7
|
import { RELATIVE_UNITS, RANGES_MODE, RELATIVE_DURATION_MAX } from '../../../../constants';
|
|
8
8
|
export var setDurationType = set(lensPath(['duration', 'type']));
|
|
9
9
|
var SELECT_DROPDOWN_OFFSET = -4;
|
|
10
|
-
|
|
11
10
|
var DurationField = function DurationField(_ref) {
|
|
12
11
|
var currentGroup = _ref.currentGroup,
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
12
|
+
currentRange = _ref.currentRange,
|
|
13
|
+
handleChange = _ref.handleChange,
|
|
14
|
+
handleDurationValueChange = _ref.handleDurationValueChange,
|
|
15
|
+
rangeUnits = _ref.rangeUnits,
|
|
16
|
+
texts = _ref.texts;
|
|
18
17
|
var duration = currentRange.duration;
|
|
19
18
|
React.useEffect(function () {
|
|
20
19
|
if ((duration == null ? void 0 : duration.value) < 1) {
|
|
@@ -54,5 +53,4 @@ var DurationField = function DurationField(_ref) {
|
|
|
54
53
|
}, texts[type.toLowerCase()]);
|
|
55
54
|
}))));
|
|
56
55
|
};
|
|
57
|
-
|
|
58
56
|
export default DurationField;
|
|
@@ -5,14 +5,13 @@ import * as S from '../../../RelativeRangePicker.styles';
|
|
|
5
5
|
import { RELATIVE_UNITS, RANGES_MODE, RELATIVE_OFFSET_MAX } from '../../../../constants';
|
|
6
6
|
import { setOffsetType } from '../CustomRangeForm';
|
|
7
7
|
var SELECT_DROPDOWN_OFFSET = -4;
|
|
8
|
-
|
|
9
8
|
var OffsetField = function OffsetField(_ref) {
|
|
10
9
|
var handleOffsetValueChange = _ref.handleOffsetValueChange,
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
10
|
+
currentGroup = _ref.currentGroup,
|
|
11
|
+
handleChange = _ref.handleChange,
|
|
12
|
+
currentRange = _ref.currentRange,
|
|
13
|
+
texts = _ref.texts,
|
|
14
|
+
rangeUnits = _ref.rangeUnits;
|
|
16
15
|
var offset = currentRange.offset;
|
|
17
16
|
React.useEffect(function () {
|
|
18
17
|
if ((offset == null ? void 0 : offset.value) < 0) {
|
|
@@ -51,5 +50,4 @@ var OffsetField = function OffsetField(_ref) {
|
|
|
51
50
|
}, texts[type.toLowerCase()]);
|
|
52
51
|
}))));
|
|
53
52
|
};
|
|
54
|
-
|
|
55
53
|
export default OffsetField;
|
|
@@ -9,17 +9,14 @@ var MODE_TRANSLATION_KEYS = {
|
|
|
9
9
|
FUTURE: 'next',
|
|
10
10
|
SINCE: 'since'
|
|
11
11
|
};
|
|
12
|
-
|
|
13
12
|
var ModeDrop = function ModeDrop(_ref) {
|
|
14
13
|
var currentGroup = _ref.currentGroup,
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
14
|
+
onModeChange = _ref.onModeChange,
|
|
15
|
+
modes = _ref.modes,
|
|
16
|
+
texts = _ref.texts;
|
|
19
17
|
var _React$useState = React.useState(false),
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
18
|
+
dropVisible = _React$useState[0],
|
|
19
|
+
setDropVisible = _React$useState[1];
|
|
23
20
|
var overlayRef = React.useRef(null);
|
|
24
21
|
var handleMenuItemClick = React.useCallback(function (mode) {
|
|
25
22
|
onModeChange && onModeChange(mode);
|
|
@@ -60,5 +57,4 @@ var ModeDrop = function ModeDrop(_ref) {
|
|
|
60
57
|
component: [RANGES_ICON[currentGroup]]
|
|
61
58
|
})), overlay);
|
|
62
59
|
};
|
|
63
|
-
|
|
64
60
|
export default ModeDrop;
|
|
@@ -3,12 +3,11 @@ import * as S from '../../RelativeRangePicker.styles';
|
|
|
3
3
|
import { isLifetime } from '../RangeDropdown/RangeDropdown';
|
|
4
4
|
import { ALL_TIME } from '../../../constants';
|
|
5
5
|
import { findMatchingPreset } from '../../utils';
|
|
6
|
-
|
|
7
6
|
var RangeButtons = function RangeButtons(_ref) {
|
|
8
7
|
var ranges = _ref.ranges,
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
currentRange = _ref.currentRange,
|
|
9
|
+
texts = _ref.texts,
|
|
10
|
+
onChange = _ref.onChange;
|
|
12
11
|
var matchingPreset = findMatchingPreset(currentRange);
|
|
13
12
|
return /*#__PURE__*/React.createElement(React.Fragment, null, ranges.map(function (range) {
|
|
14
13
|
return /*#__PURE__*/React.createElement(S.Range, {
|
|
@@ -21,5 +20,4 @@ var RangeButtons = function RangeButtons(_ref) {
|
|
|
21
20
|
}, range.translationKey ? texts[range.translationKey] : texts == null ? void 0 : texts.custom);
|
|
22
21
|
}));
|
|
23
22
|
};
|
|
24
|
-
|
|
25
23
|
export default RangeButtons;
|
|
@@ -12,44 +12,39 @@ var MAX_ITEMS_COUNT = 7;
|
|
|
12
12
|
var ITEMS_HEIGHT = 32;
|
|
13
13
|
var DROPDOWN_WIDTH = 160;
|
|
14
14
|
var DROPDOWN_PADDING = 8;
|
|
15
|
+
|
|
15
16
|
/**
|
|
16
17
|
* Tell whether given date (range) is a lifetime value.
|
|
17
18
|
*
|
|
18
19
|
* @param date-value @{type DateRange}
|
|
19
20
|
* @param fallback whether to accept existing properties, but set to `undefined`, default `false`
|
|
20
21
|
*/
|
|
21
|
-
|
|
22
22
|
export var isLifetime = function isLifetime(range, fallback) {
|
|
23
23
|
if (fallback === void 0) {
|
|
24
24
|
fallback = false;
|
|
25
25
|
}
|
|
26
|
-
|
|
27
26
|
if (!range) {
|
|
28
27
|
return false;
|
|
29
28
|
}
|
|
30
|
-
|
|
31
29
|
var keys = Object.keys(range);
|
|
32
|
-
var legacyDef = range.type === 'ABSOLUTE' && !keys.includes('from') && !keys.includes('to');
|
|
33
|
-
|
|
30
|
+
var legacyDef = range.type === 'ABSOLUTE' && !keys.includes('from') && !keys.includes('to');
|
|
31
|
+
// reasonable def comes from the fact that empty from and to sometimes might be also set like this (from/to as undefined)
|
|
34
32
|
var reasonableDef = range.type === 'ABSOLUTE' && range.from === undefined && range.to === undefined;
|
|
35
33
|
var legacyValueButLifetimeForSure = reasonableDef && range.translationKey === 'allTime';
|
|
36
34
|
return legacyDef || fallback && reasonableDef || legacyValueButLifetimeForSure;
|
|
37
35
|
};
|
|
38
|
-
|
|
39
36
|
var RangeDropdown = function RangeDropdown(_ref) {
|
|
40
37
|
var ranges = _ref.ranges,
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
38
|
+
currentRange = _ref.currentRange,
|
|
39
|
+
texts = _ref.texts,
|
|
40
|
+
onChange = _ref.onChange,
|
|
41
|
+
_ref$valueTransformer = _ref.valueTransformer,
|
|
42
|
+
valueTransformer = _ref$valueTransformer === void 0 ? function (e) {
|
|
43
|
+
return e;
|
|
44
|
+
} : _ref$valueTransformer;
|
|
49
45
|
var _React$useState = React.useState(false),
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
46
|
+
dropVisible = _React$useState[0],
|
|
47
|
+
setDropVisible = _React$useState[1];
|
|
53
48
|
var dropdownRef = React.useRef(null);
|
|
54
49
|
useOnClickOutside(dropdownRef, function () {
|
|
55
50
|
setDropVisible(false);
|
|
@@ -103,5 +98,4 @@ var RangeDropdown = function RangeDropdown(_ref) {
|
|
|
103
98
|
component: /*#__PURE__*/React.createElement(AngleDownS, null)
|
|
104
99
|
})), overlay);
|
|
105
100
|
};
|
|
106
|
-
|
|
107
101
|
export default RangeDropdown;
|