@elliemae/ds-date-range-selector 2.2.0-alpha.3 → 3.0.0-next.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/DSDateRangeSelector.js +65 -85
- package/cjs/components/CustomOptionRender/CustomOptionRender.js +38 -44
- package/cjs/components/DateRangeSelectorImpl.js +174 -124
- package/cjs/index.js +12 -38
- package/cjs/options/dropdownPreselectedOptions.js +34 -69
- package/esm/DSDateRangeSelector.js +50 -57
- package/esm/components/CustomOptionRender/CustomOptionRender.js +32 -15
- package/esm/components/DateRangeSelectorImpl.js +161 -91
- package/esm/index.js +2 -12
- package/esm/options/dropdownPreselectedOptions.js +28 -40
- package/package.json +6 -6
- package/cjs/DSDateRangeSelector.js.map +0 -7
- package/cjs/components/CustomOptionRender/CustomOptionRender.js.map +0 -7
- package/cjs/components/DateRangeSelectorImpl.js.map +0 -7
- package/cjs/index.js.map +0 -7
- package/cjs/options/dropdownPreselectedOptions.js.map +0 -7
- package/esm/DSDateRangeSelector.js.map +0 -7
- package/esm/components/CustomOptionRender/CustomOptionRender.js.map +0 -7
- package/esm/components/DateRangeSelectorImpl.js.map +0 -7
- package/esm/index.js.map +0 -7
- package/esm/options/dropdownPreselectedOptions.js.map +0 -7
|
@@ -1,89 +1,69 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var
|
|
6
|
-
|
|
7
|
-
var
|
|
8
|
-
var
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
6
|
+
require('react');
|
|
7
|
+
var reactDesc = require('react-desc');
|
|
8
|
+
var moment = require('moment');
|
|
9
|
+
var DateRangeSelectorImpl = require('./components/DateRangeSelectorImpl.js');
|
|
10
|
+
var dropdownPreselectedOptions = require('./options/dropdownPreselectedOptions.js');
|
|
11
|
+
var CustomOptionRender = require('./components/CustomOptionRender/CustomOptionRender.js');
|
|
12
|
+
|
|
13
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
14
|
+
|
|
15
|
+
var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
16
|
+
var moment__default = /*#__PURE__*/_interopDefaultLegacy(moment);
|
|
17
|
+
|
|
18
|
+
const DSDateRangeSelector = _ref => {
|
|
19
|
+
let {
|
|
20
|
+
containerProps = {},
|
|
21
|
+
className = '',
|
|
22
|
+
preselectedOptions = dropdownPreselectedOptions.dropdownPreselectedOptions,
|
|
23
|
+
onChange = () => null,
|
|
24
|
+
placeholder = 'Select Range',
|
|
25
|
+
value = null,
|
|
26
|
+
customOptionRender = CustomOptionRender,
|
|
27
|
+
startDate = null,
|
|
28
|
+
endDate = null,
|
|
29
|
+
displayFormatDay = 'D',
|
|
30
|
+
disableCustomOption = false
|
|
31
|
+
} = _ref;
|
|
32
|
+
return /*#__PURE__*/_jsx__default["default"](DateRangeSelectorImpl, {
|
|
33
|
+
className: className,
|
|
34
|
+
containerProps: containerProps,
|
|
35
|
+
customOptionRender: customOptionRender,
|
|
36
|
+
disableCustomOption: disableCustomOption,
|
|
37
|
+
displayFormatDay: displayFormatDay,
|
|
38
|
+
dropdownPreselectedOptions: preselectedOptions,
|
|
39
|
+
endDate: endDate,
|
|
40
|
+
onChange: onChange,
|
|
41
|
+
placeholder: placeholder,
|
|
42
|
+
startDate: startDate,
|
|
43
|
+
value: value
|
|
44
|
+
});
|
|
11
45
|
};
|
|
12
|
-
var __reExport = (target, module2, copyDefault, desc) => {
|
|
13
|
-
if (module2 && typeof module2 === "object" || typeof module2 === "function") {
|
|
14
|
-
for (let key of __getOwnPropNames(module2))
|
|
15
|
-
if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
|
|
16
|
-
__defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
|
|
17
|
-
}
|
|
18
|
-
return target;
|
|
19
|
-
};
|
|
20
|
-
var __toESM = (module2, isNodeMode) => {
|
|
21
|
-
return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
|
|
22
|
-
};
|
|
23
|
-
var __toCommonJS = /* @__PURE__ */ ((cache) => {
|
|
24
|
-
return (module2, temp) => {
|
|
25
|
-
return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
|
|
26
|
-
};
|
|
27
|
-
})(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
|
|
28
|
-
var DSDateRangeSelector_exports = {};
|
|
29
|
-
__export(DSDateRangeSelector_exports, {
|
|
30
|
-
CUSTOM_OPTION_VALUE: () => import_dropdownPreselectedOptions.CUSTOM_OPTION_VALUE,
|
|
31
|
-
DateRangeRecurrenceSelectorWithSchema: () => DateRangeRecurrenceSelectorWithSchema,
|
|
32
|
-
DropdownOptionsTypes: () => import_dropdownPreselectedOptions.DropdownOptionsTypes,
|
|
33
|
-
default: () => DSDateRangeSelector_default,
|
|
34
|
-
dropdownPreselectedOptions: () => import_dropdownPreselectedOptions.dropdownPreselectedOptions
|
|
35
|
-
});
|
|
36
|
-
var React = __toESM(require("react"));
|
|
37
|
-
var import_react = __toESM(require("react"));
|
|
38
|
-
var import_react_desc = __toESM(require("react-desc"));
|
|
39
|
-
var import_moment = __toESM(require("moment"));
|
|
40
|
-
var import_DateRangeSelectorImpl = __toESM(require("./components/DateRangeSelectorImpl"));
|
|
41
|
-
var import_dropdownPreselectedOptions = __toESM(require("./options/dropdownPreselectedOptions"));
|
|
42
|
-
var import_CustomOptionRender = __toESM(require("./components/CustomOptionRender/CustomOptionRender"));
|
|
43
|
-
const DSDateRangeSelector = ({
|
|
44
|
-
containerProps = {},
|
|
45
|
-
className = "",
|
|
46
|
-
preselectedOptions = import_dropdownPreselectedOptions.dropdownPreselectedOptions,
|
|
47
|
-
onChange = () => null,
|
|
48
|
-
placeholder = "Select Range",
|
|
49
|
-
value = null,
|
|
50
|
-
customOptionRender = import_CustomOptionRender.default,
|
|
51
|
-
startDate = null,
|
|
52
|
-
endDate = null,
|
|
53
|
-
displayFormatDay = "D",
|
|
54
|
-
disableCustomOption = false
|
|
55
|
-
}) => /* @__PURE__ */ import_react.default.createElement(import_DateRangeSelectorImpl.default, {
|
|
56
|
-
className,
|
|
57
|
-
containerProps,
|
|
58
|
-
customOptionRender,
|
|
59
|
-
disableCustomOption,
|
|
60
|
-
displayFormatDay,
|
|
61
|
-
dropdownPreselectedOptions: preselectedOptions,
|
|
62
|
-
endDate,
|
|
63
|
-
onChange,
|
|
64
|
-
placeholder,
|
|
65
|
-
startDate,
|
|
66
|
-
value
|
|
67
|
-
});
|
|
68
46
|
const dateRangeRecurrenceSelectorProps = {
|
|
69
|
-
containerProps:
|
|
70
|
-
className:
|
|
71
|
-
preselectedOptions:
|
|
72
|
-
label:
|
|
73
|
-
value:
|
|
74
|
-
})).description(
|
|
75
|
-
onChange:
|
|
76
|
-
placeholder:
|
|
77
|
-
value:
|
|
78
|
-
customOptionRender:
|
|
79
|
-
startDate:
|
|
80
|
-
endDate:
|
|
81
|
-
displayFormatDay:
|
|
82
|
-
disableCustomOption:
|
|
47
|
+
containerProps: reactDesc.PropTypes.object.description('Set of properties attached to the main container'),
|
|
48
|
+
className: reactDesc.PropTypes.string.description('html class attribute'),
|
|
49
|
+
preselectedOptions: reactDesc.PropTypes.arrayOf(reactDesc.PropTypes.shape({
|
|
50
|
+
label: reactDesc.PropTypes.string,
|
|
51
|
+
value: reactDesc.PropTypes.string
|
|
52
|
+
})).description('options to display in dropdown menu'),
|
|
53
|
+
onChange: reactDesc.PropTypes.func.description('function executed when selection changes'),
|
|
54
|
+
placeholder: reactDesc.PropTypes.string.description('inputs placeholder').defaultValue('Select Range'),
|
|
55
|
+
value: reactDesc.PropTypes.oneOf([reactDesc.PropTypes.string, reactDesc.PropTypes.number]).description('selected value'),
|
|
56
|
+
customOptionRender: reactDesc.PropTypes.element.description('custom renderer for options'),
|
|
57
|
+
startDate: reactDesc.PropTypes.instanceOf(Date, moment__default["default"]).description('moment object of start date'),
|
|
58
|
+
endDate: reactDesc.PropTypes.instanceOf(Date, moment__default["default"]).description('moment object of end date'),
|
|
59
|
+
displayFormatDay: reactDesc.PropTypes.string.description('format to display date').defaultValue('D'),
|
|
60
|
+
disableCustomOption: reactDesc.PropTypes.bool.description('disables custom options').defaultValue(false)
|
|
83
61
|
};
|
|
84
|
-
|
|
85
|
-
const DateRangeRecurrenceSelectorWithSchema = (0, import_react_desc.describe)(DSDateRangeSelector);
|
|
62
|
+
const DateRangeRecurrenceSelectorWithSchema = reactDesc.describe(DSDateRangeSelector);
|
|
86
63
|
DateRangeRecurrenceSelectorWithSchema.propTypes = dateRangeRecurrenceSelectorProps;
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
64
|
+
|
|
65
|
+
exports.CUSTOM_OPTION_VALUE = dropdownPreselectedOptions.CUSTOM_OPTION_VALUE;
|
|
66
|
+
exports.DropdownOptionsTypes = dropdownPreselectedOptions.DropdownOptionsTypes;
|
|
67
|
+
exports.dropdownPreselectedOptions = dropdownPreselectedOptions.dropdownPreselectedOptions;
|
|
68
|
+
exports.DateRangeRecurrenceSelectorWithSchema = DateRangeRecurrenceSelectorWithSchema;
|
|
69
|
+
exports["default"] = DSDateRangeSelector;
|
|
@@ -1,46 +1,40 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var
|
|
4
|
-
|
|
5
|
-
var
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
const CustomOptionRender = ({ customRange: { startDate, endDate } }) => {
|
|
37
|
-
const start = startDate ? startDate.format("MM/DD/YYYY") : null;
|
|
38
|
-
const end = endDate ? endDate.format("MM/DD/YYYY") : null;
|
|
39
|
-
const display = `From ${start} to ${end}` || "Custom";
|
|
40
|
-
return /* @__PURE__ */ import_react.default.createElement("em", {
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
4
|
+
require('react');
|
|
5
|
+
var dsClassnames = require('@elliemae/ds-classnames');
|
|
6
|
+
|
|
7
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
8
|
+
|
|
9
|
+
var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
10
|
+
|
|
11
|
+
const {
|
|
12
|
+
cssClassName
|
|
13
|
+
} = dsClassnames.convertPropToCssClassName('date-range-selector-customoption');
|
|
14
|
+
/**
|
|
15
|
+
* @param root0
|
|
16
|
+
* @param root0.customRange
|
|
17
|
+
* @param root0.customRange.startDate
|
|
18
|
+
* @param root0.customRange.endDate
|
|
19
|
+
* @customRange {
|
|
20
|
+
endDate
|
|
21
|
+
startDate
|
|
22
|
+
}
|
|
23
|
+
*/
|
|
24
|
+
|
|
25
|
+
const CustomOptionRender = _ref => {
|
|
26
|
+
let {
|
|
27
|
+
customRange: {
|
|
28
|
+
startDate,
|
|
29
|
+
endDate
|
|
30
|
+
}
|
|
31
|
+
} = _ref;
|
|
32
|
+
const start = startDate ? startDate.format('MM/DD/YYYY') : null;
|
|
33
|
+
const end = endDate ? endDate.format('MM/DD/YYYY') : null;
|
|
34
|
+
const display = "From ".concat(start, " to ").concat(end) || 'Custom';
|
|
35
|
+
return /*#__PURE__*/_jsx__default["default"]("em", {
|
|
41
36
|
className: cssClassName
|
|
42
|
-
}, display);
|
|
37
|
+
}, void 0, display);
|
|
43
38
|
};
|
|
44
|
-
|
|
45
|
-
module.exports =
|
|
46
|
-
//# sourceMappingURL=CustomOptionRender.js.map
|
|
39
|
+
|
|
40
|
+
module.exports = CustomOptionRender;
|
|
@@ -1,102 +1,141 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var
|
|
4
|
-
var
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
var
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
var
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
var
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
var
|
|
34
|
-
|
|
35
|
-
var
|
|
36
|
-
|
|
37
|
-
var
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
var import_ds_popper = __toESM(require("@elliemae/ds-popper"));
|
|
41
|
-
var import_ds_date_picker = __toESM(require("@elliemae/ds-date-picker"));
|
|
42
|
-
var import_ds_icons = __toESM(require("@elliemae/ds-icons"));
|
|
43
|
-
var import_dropdownPreselectedOptions = __toESM(require("../options/dropdownPreselectedOptions"));
|
|
44
|
-
const START_DATE = "startDate";
|
|
45
|
-
const END_DATE = "endDate";
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
4
|
+
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
5
|
+
require('core-js/modules/esnext.async-iterator.find.js');
|
|
6
|
+
require('core-js/modules/esnext.iterator.constructor.js');
|
|
7
|
+
require('core-js/modules/esnext.iterator.find.js');
|
|
8
|
+
require('core-js/modules/web.dom-collections.iterator.js');
|
|
9
|
+
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
10
|
+
require('core-js/modules/esnext.iterator.filter.js');
|
|
11
|
+
require('core-js/modules/esnext.async-iterator.for-each.js');
|
|
12
|
+
require('core-js/modules/esnext.iterator.for-each.js');
|
|
13
|
+
var react = require('react');
|
|
14
|
+
var moment = require('moment');
|
|
15
|
+
var reactSelect = require('react-select');
|
|
16
|
+
require('react-dates/initialize');
|
|
17
|
+
var reactDates = require('react-dates');
|
|
18
|
+
var dsClassnames = require('@elliemae/ds-classnames');
|
|
19
|
+
var dsForm = require('@elliemae/ds-form');
|
|
20
|
+
var DSPopper = require('@elliemae/ds-popper');
|
|
21
|
+
var dsDatePicker = require('@elliemae/ds-date-picker');
|
|
22
|
+
var dsIcons = require('@elliemae/ds-icons');
|
|
23
|
+
var dropdownPreselectedOptions = require('../options/dropdownPreselectedOptions.js');
|
|
24
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
25
|
+
|
|
26
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
27
|
+
|
|
28
|
+
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
|
|
29
|
+
var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
30
|
+
var moment__default = /*#__PURE__*/_interopDefaultLegacy(moment);
|
|
31
|
+
var DSPopper__default = /*#__PURE__*/_interopDefaultLegacy(DSPopper);
|
|
32
|
+
|
|
33
|
+
var _div;
|
|
34
|
+
|
|
35
|
+
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; }
|
|
36
|
+
|
|
37
|
+
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__default["default"](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; }
|
|
38
|
+
const START_DATE = 'startDate';
|
|
39
|
+
const END_DATE = 'endDate';
|
|
46
40
|
const advanceOption = {
|
|
47
|
-
label:
|
|
48
|
-
value:
|
|
41
|
+
label: 'Custom',
|
|
42
|
+
value: dropdownPreselectedOptions.CUSTOM_OPTION_VALUE,
|
|
49
43
|
isAdvance: true
|
|
50
44
|
};
|
|
51
|
-
const {
|
|
52
|
-
|
|
53
|
-
|
|
45
|
+
const {
|
|
46
|
+
cssClassName,
|
|
47
|
+
classNameElement,
|
|
48
|
+
classNameBlock
|
|
49
|
+
} = dsClassnames.convertPropToCssClassName('date-range-selector');
|
|
50
|
+
const {
|
|
51
|
+
classNameElement: pickerNameElement
|
|
52
|
+
} = dsClassnames.convertPropToCssClassName('datepicker');
|
|
53
|
+
|
|
54
|
+
class DateTimeRecurenceSelectorImpl extends react.Component {
|
|
54
55
|
constructor(props) {
|
|
55
56
|
super(props);
|
|
57
|
+
|
|
56
58
|
this.onChange = () => {
|
|
57
|
-
const {
|
|
58
|
-
|
|
59
|
+
const {
|
|
60
|
+
onChange
|
|
61
|
+
} = this.props;
|
|
62
|
+
const {
|
|
63
|
+
customRange,
|
|
64
|
+
selected
|
|
65
|
+
} = this.state;
|
|
59
66
|
onChange(selected, customRange);
|
|
60
67
|
};
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
const
|
|
64
|
-
|
|
68
|
+
|
|
69
|
+
this.onChangeDropdown = value => {
|
|
70
|
+
const {
|
|
71
|
+
dropdownPreselectedOptions
|
|
72
|
+
} = this.props;
|
|
73
|
+
const selected = dropdownPreselectedOptions.find(op => op.value === value);
|
|
74
|
+
const {
|
|
75
|
+
onChange
|
|
76
|
+
} = this.props;
|
|
77
|
+
|
|
65
78
|
if (!selected) {
|
|
66
|
-
this.setState({
|
|
79
|
+
this.setState({
|
|
80
|
+
selected: value
|
|
81
|
+
});
|
|
67
82
|
this.handleOpenModal();
|
|
68
83
|
} else if (selected) {
|
|
69
84
|
onChange(value);
|
|
70
|
-
this.setState({
|
|
85
|
+
this.setState({
|
|
86
|
+
selected: value,
|
|
87
|
+
openModal: false
|
|
88
|
+
});
|
|
71
89
|
}
|
|
72
90
|
};
|
|
91
|
+
|
|
73
92
|
this.handleConfirm = () => {
|
|
74
|
-
const {
|
|
75
|
-
|
|
76
|
-
|
|
93
|
+
const {
|
|
94
|
+
customOptionRender: CustomOptionRender
|
|
95
|
+
} = this.props;
|
|
96
|
+
const {
|
|
77
97
|
customRange
|
|
98
|
+
} = this.state;
|
|
99
|
+
advanceOption.label = /*#__PURE__*/_jsx__default["default"](CustomOptionRender, {
|
|
100
|
+
customRange: customRange
|
|
78
101
|
});
|
|
79
102
|
this.onChange();
|
|
80
103
|
this.handleCloseModal();
|
|
81
104
|
};
|
|
82
|
-
|
|
83
|
-
this.
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
105
|
+
|
|
106
|
+
this.handleOpenModal = () => this.setState({
|
|
107
|
+
openModal: true
|
|
108
|
+
});
|
|
109
|
+
|
|
110
|
+
this.handleCloseModal = () => this.setState({
|
|
111
|
+
openModal: false
|
|
112
|
+
});
|
|
113
|
+
|
|
114
|
+
const _customRange = {
|
|
115
|
+
startDate: props.startDate ? moment__default["default"](props.startDate) : moment__default["default"](),
|
|
116
|
+
endDate: props.endDate ? moment__default["default"](props.endDate) : moment__default["default"]()
|
|
87
117
|
};
|
|
88
118
|
this.state = {
|
|
89
119
|
openModal: false,
|
|
90
120
|
selected: props.value,
|
|
91
121
|
focusedInput: START_DATE,
|
|
92
|
-
customRange
|
|
122
|
+
customRange: _customRange
|
|
93
123
|
};
|
|
94
|
-
const {
|
|
95
|
-
|
|
96
|
-
|
|
124
|
+
const {
|
|
125
|
+
customOptionRender: _CustomOptionRender
|
|
126
|
+
} = props;
|
|
127
|
+
advanceOption.label = /*#__PURE__*/_jsx__default["default"](_CustomOptionRender, {
|
|
128
|
+
customRange: _customRange
|
|
97
129
|
});
|
|
130
|
+
this.onDatesChange = this.onDatesChange.bind(this);
|
|
131
|
+
this.onFocusChange = this.onFocusChange.bind(this);
|
|
98
132
|
}
|
|
99
|
-
|
|
133
|
+
|
|
134
|
+
onDatesChange(_ref) {
|
|
135
|
+
let {
|
|
136
|
+
startDate,
|
|
137
|
+
endDate
|
|
138
|
+
} = _ref;
|
|
100
139
|
this.setState({
|
|
101
140
|
customRange: {
|
|
102
141
|
startDate,
|
|
@@ -106,11 +145,18 @@ class DateTimeRecurenceSelectorImpl extends import_react.Component {
|
|
|
106
145
|
this.onChange();
|
|
107
146
|
});
|
|
108
147
|
}
|
|
148
|
+
|
|
109
149
|
onFocusChange() {
|
|
110
|
-
this.setState(
|
|
111
|
-
|
|
112
|
-
|
|
150
|
+
this.setState(_ref2 => {
|
|
151
|
+
let {
|
|
152
|
+
focusedInput
|
|
153
|
+
} = _ref2;
|
|
154
|
+
return {
|
|
155
|
+
focusedInput: focusedInput === START_DATE ? END_DATE : START_DATE
|
|
156
|
+
};
|
|
157
|
+
});
|
|
113
158
|
}
|
|
159
|
+
|
|
114
160
|
render() {
|
|
115
161
|
const {
|
|
116
162
|
placeholder,
|
|
@@ -124,60 +170,64 @@ class DateTimeRecurenceSelectorImpl extends import_react.Component {
|
|
|
124
170
|
selected,
|
|
125
171
|
openModal,
|
|
126
172
|
focusedInput,
|
|
127
|
-
customRange: {
|
|
173
|
+
customRange: {
|
|
174
|
+
startDate,
|
|
175
|
+
endDate
|
|
176
|
+
}
|
|
128
177
|
} = this.state;
|
|
129
178
|
let options = [...dropdownPreselectedOptions];
|
|
179
|
+
|
|
130
180
|
if (!disableCustomOption) {
|
|
131
|
-
options = [...options, advanceOption];
|
|
181
|
+
options = [...options, advanceOption]; // eslint-disable-next-line max-lines
|
|
132
182
|
}
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
className:
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
183
|
+
|
|
184
|
+
return /*#__PURE__*/jsxRuntime.jsxs("div", _objectSpread(_objectSpread({}, containerProps), {}, {
|
|
185
|
+
className: "".concat(cssClassName, " ").concat(className),
|
|
186
|
+
children: [/*#__PURE__*/_jsx__default["default"]("div", {
|
|
187
|
+
className: "".concat(classNameBlock('container-selector'))
|
|
188
|
+
}, void 0, /*#__PURE__*/_jsx__default["default"](dsForm.DSComboBox, {
|
|
189
|
+
className: "".concat(classNameElement('dropdown-field-selector')),
|
|
190
|
+
components: {
|
|
191
|
+
Option: props => /*#__PURE__*/jsxRuntime.jsx(reactSelect.components.Option, _objectSpread({}, props)),
|
|
192
|
+
IndicatorSeparator: () => null
|
|
193
|
+
},
|
|
194
|
+
onChange: this.onChangeDropdown,
|
|
195
|
+
onKeyDown: this.onKeyDown,
|
|
196
|
+
options: options,
|
|
197
|
+
placeholder: placeholder,
|
|
198
|
+
value: selected,
|
|
199
|
+
keepTypedValue: false // TEMPORARY FIX
|
|
200
|
+
|
|
201
|
+
})), /*#__PURE__*/_jsx__default["default"](DSPopper__default["default"], {
|
|
202
|
+
contentComponent: /*#__PURE__*/_jsx__default["default"]("div", {
|
|
203
|
+
className: classNameBlock('wrap-day-picker')
|
|
204
|
+
}, void 0, /*#__PURE__*/_jsx__default["default"](reactDates.DayPickerRangeController, {
|
|
205
|
+
endDate: endDate,
|
|
206
|
+
focusedInput: focusedInput,
|
|
207
|
+
hideKeyboardShortcutsPanel: true,
|
|
208
|
+
navNext: /*#__PURE__*/_jsx__default["default"](dsDatePicker.DatePickerNavigation, {
|
|
209
|
+
className: pickerNameElement('navigation-next')
|
|
210
|
+
}),
|
|
211
|
+
navPrev: /*#__PURE__*/_jsx__default["default"](dsDatePicker.DatePickerNavigation, {
|
|
212
|
+
className: pickerNameElement('navigation-prev'),
|
|
213
|
+
icon: dsIcons.ChevronLeft
|
|
214
|
+
}),
|
|
215
|
+
onDatesChange: this.onDatesChange,
|
|
216
|
+
onFocusChange: this.onFocusChange,
|
|
217
|
+
onOutsideClick: this.handleConfirm,
|
|
218
|
+
renderDayContents: date => /*#__PURE__*/_jsx__default["default"](dsDatePicker.DatePickerDay, {
|
|
219
|
+
className: pickerNameElement('day-contents'),
|
|
220
|
+
date: date.format(displayFormatDay)
|
|
221
|
+
}),
|
|
222
|
+
startDate: startDate
|
|
223
|
+
})),
|
|
224
|
+
isOpen: openModal,
|
|
225
|
+
showArrow: false,
|
|
226
|
+
triggerComponent: _div || (_div = /*#__PURE__*/_jsx__default["default"]("div", {}))
|
|
227
|
+
})]
|
|
178
228
|
}));
|
|
179
229
|
}
|
|
230
|
+
|
|
180
231
|
}
|
|
181
|
-
|
|
182
|
-
module.exports =
|
|
183
|
-
//# sourceMappingURL=DateRangeSelectorImpl.js.map
|
|
232
|
+
|
|
233
|
+
module.exports = DateTimeRecurenceSelectorImpl;
|