@elliemae/ds-date-picker 2.0.0-alpha.1 → 2.0.0-alpha.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/DSDatePicker.js +59 -55
- package/cjs/components/DSDatePickerImpl.js +54 -53
- package/cjs/components/DatePickerController/DatePickerController.js +73 -70
- package/cjs/components/DatePickerDay/DatePickerDay.js +13 -10
- package/cjs/components/DatePickerDropdown.js +20 -14
- package/cjs/components/DatePickerHeader/DatePickerHeader.js +10 -11
- package/cjs/components/DatePickerNavigation/DatePickerNavigation.js +18 -15
- package/cjs/components/DatePickerPicker/DatePickerPicker.js +17 -17
- package/cjs/components/DatePickerRange/DatePickerRange.js +31 -22
- package/cjs/components/DatePickerRangeHeader/DatePickerRangeHeader.js +31 -29
- package/cjs/components/DatePickerRenderMonth/DatePickerRenderMonth.js +32 -32
- package/cjs/components/DatePickerSingleDate/DatePickerSingleDate.js +13 -11
- package/cjs/components/SingleRangeDateSwitcher/SingleRangeDateSwitcher.js +23 -21
- package/cjs/defaultPhrases.js +43 -22
- package/cjs/index.js +1 -1
- package/esm/DSDatePicker.js +52 -48
- package/esm/components/DSDatePickerImpl.js +36 -33
- package/esm/components/DatePickerController/DatePickerController.js +26 -22
- package/esm/components/DatePickerDay/DatePickerDay.js +13 -10
- package/esm/components/DatePickerDropdown.js +17 -11
- package/esm/components/DatePickerHeader/DatePickerHeader.js +9 -8
- package/esm/components/DatePickerNavigation/DatePickerNavigation.js +18 -15
- package/esm/components/DatePickerPicker/DatePickerPicker.js +1 -1
- package/esm/components/DatePickerRange/DatePickerRange.js +26 -16
- package/esm/components/DatePickerRangeHeader/DatePickerRangeHeader.js +23 -19
- package/esm/components/DatePickerRenderMonth/DatePickerRenderMonth.js +32 -30
- package/esm/components/DatePickerSingleDate/DatePickerSingleDate.js +8 -5
- package/esm/components/SingleRangeDateSwitcher/SingleRangeDateSwitcher.js +19 -16
- package/esm/defaultPhrases.js +42 -21
- package/package.json +15 -5
- package/types/components/DatePickerDropdown.d.ts +1 -1
- package/types/components/DatePickerHeader/DatePickerHeader.d.ts +1 -1
- package/types/components/DatePickerPicker/DatePickerPicker.d.ts +2 -2
- package/types/components/DatePickerRange/DatePickerRange.d.ts +1 -1
- package/cjs/package.json +0 -7
- package/esm/package.json +0 -7
package/cjs/DSDatePicker.js
CHANGED
|
@@ -4,6 +4,12 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
6
6
|
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
7
|
+
require('core-js/modules/web.dom-collections.iterator.js');
|
|
8
|
+
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
9
|
+
require('core-js/modules/esnext.iterator.constructor.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');
|
|
7
13
|
require('react');
|
|
8
14
|
var reactDesc = require('react-desc');
|
|
9
15
|
require('react-dates/initialize');
|
|
@@ -32,50 +38,51 @@ var moment__default = /*#__PURE__*/_interopDefaultLegacy(moment);
|
|
|
32
38
|
|
|
33
39
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
34
40
|
|
|
35
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty__default[
|
|
41
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
36
42
|
|
|
37
|
-
const DSDatePicker =
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
43
|
+
const DSDatePicker = _ref => {
|
|
44
|
+
let {
|
|
45
|
+
containerProps = {},
|
|
46
|
+
id = '',
|
|
47
|
+
appendToBody = true,
|
|
48
|
+
className = '',
|
|
49
|
+
date,
|
|
50
|
+
value,
|
|
51
|
+
placeholder = '',
|
|
52
|
+
disabled = false,
|
|
53
|
+
required = false,
|
|
54
|
+
readOnly = false,
|
|
55
|
+
hasError = false,
|
|
56
|
+
screenReaderInputMessage = 'Select date',
|
|
57
|
+
enableOutsideDays = true,
|
|
58
|
+
initialVisibleMonth = moment__default["default"](),
|
|
59
|
+
firstDayOfWeek = 0,
|
|
60
|
+
keepOpenOnDateSelect = false,
|
|
61
|
+
hideKeyboardShortcutsPanel = true,
|
|
62
|
+
onChange = () => null,
|
|
63
|
+
onDateChange = undefined,
|
|
64
|
+
onPrevMonthClick = () => null,
|
|
65
|
+
onNextMonthClick = () => null,
|
|
66
|
+
onClose = () => null,
|
|
67
|
+
onFocus = () => null,
|
|
68
|
+
onBlur = () => null,
|
|
69
|
+
phrases = defaultPhrases.SingleDatePickerPhrases,
|
|
70
|
+
displayFormat = 'L',
|
|
71
|
+
displayFormatDay = 'D',
|
|
72
|
+
transitionDuration = 0,
|
|
73
|
+
verticalSpacing = 0,
|
|
74
|
+
isDayBlocked = () => false,
|
|
75
|
+
isOutsideRange = () => false,
|
|
76
|
+
isDayHighlighted = () => false,
|
|
77
|
+
numberOfMonths = 1,
|
|
78
|
+
openDirection = 'down',
|
|
79
|
+
tabIndex = '',
|
|
80
|
+
zIndex = 1,
|
|
81
|
+
pickerProps = {},
|
|
82
|
+
calendarProps = {},
|
|
83
|
+
autoClear = false,
|
|
84
|
+
focusCurrentDate = false
|
|
85
|
+
} = _ref;
|
|
79
86
|
const {
|
|
80
87
|
cssClassName
|
|
81
88
|
} = dsClassnames.convertPropToCssClassName('datepicker', className, {
|
|
@@ -91,7 +98,7 @@ const DSDatePicker = ({
|
|
|
91
98
|
style: {
|
|
92
99
|
minWidth: '140px'
|
|
93
100
|
},
|
|
94
|
-
children: /*#__PURE__*/_jsx__default[
|
|
101
|
+
children: /*#__PURE__*/_jsx__default["default"](DSDatePickerImpl, {
|
|
95
102
|
appendToBody: appendToBody,
|
|
96
103
|
autoClear: autoClear,
|
|
97
104
|
date: safeDate,
|
|
@@ -101,7 +108,7 @@ const DSDatePicker = ({
|
|
|
101
108
|
enableOutsideDays: enableOutsideDays,
|
|
102
109
|
firstDayOfWeek: firstDayOfWeek,
|
|
103
110
|
hideKeyboardShortcutsPanel: hideKeyboardShortcutsPanel,
|
|
104
|
-
initialVisibleMonth: () => initialVisibleMonth ? moment__default[
|
|
111
|
+
initialVisibleMonth: () => initialVisibleMonth ? moment__default["default"](initialVisibleMonth) : moment__default["default"](safeDate),
|
|
105
112
|
isDayBlocked: isDayBlocked,
|
|
106
113
|
isDayHighlighted: isDayHighlighted,
|
|
107
114
|
isOutsideRange: isOutsideRange === true || isOutsideRange === false ? () => isOutsideRange : isOutsideRange,
|
|
@@ -110,8 +117,8 @@ const DSDatePicker = ({
|
|
|
110
117
|
onBlur: onBlur,
|
|
111
118
|
onClose: onClose,
|
|
112
119
|
onChange: onChange,
|
|
113
|
-
onDateChange: (
|
|
114
|
-
if (onDateChange) onDateChange(...
|
|
120
|
+
onDateChange: function () {
|
|
121
|
+
if (onDateChange) onDateChange(...arguments);
|
|
115
122
|
},
|
|
116
123
|
onFocus: onFocus,
|
|
117
124
|
onNextMonthClick: onNextMonthClick,
|
|
@@ -139,8 +146,8 @@ const datePickerProps = {
|
|
|
139
146
|
id: reactDesc.PropTypes.string.description('components id'),
|
|
140
147
|
appendToBody: reactDesc.PropTypes.bool.description('append component to body or not').defaultValue(true),
|
|
141
148
|
className: reactDesc.PropTypes.string.description('html class attribute'),
|
|
142
|
-
date: reactDesc.PropTypes.instanceOf(Date, moment__default[
|
|
143
|
-
value: reactDesc.PropTypes.instanceOf(Date, moment__default[
|
|
149
|
+
date: reactDesc.PropTypes.instanceOf(Date, moment__default["default"]).description('selected date').defaultValue(undefined),
|
|
150
|
+
value: reactDesc.PropTypes.instanceOf(Date, moment__default["default"]).description('value'),
|
|
144
151
|
placeholder: reactDesc.PropTypes.string.description('input placeholder value'),
|
|
145
152
|
autoClear: reactDesc.PropTypes.bool.description('autoclears the input onblur if the date is not completely set').defaultValue(false),
|
|
146
153
|
disabled: reactDesc.PropTypes.bool.description('disable component or not').defaultValue(false),
|
|
@@ -149,14 +156,11 @@ const datePickerProps = {
|
|
|
149
156
|
hasError: reactDesc.PropTypes.bool.description('set error state').defaultValue(false),
|
|
150
157
|
screenReaderInputMessage: reactDesc.PropTypes.string.description('message to anounce by screen reader').defaultValue('select date'),
|
|
151
158
|
enableOutsideDays: reactDesc.PropTypes.bool.description('enable days oustide month or not').defaultValue(true),
|
|
152
|
-
initialVisibleMonth: reactDesc.PropTypes.instanceOf(Date, moment__default[
|
|
159
|
+
initialVisibleMonth: reactDesc.PropTypes.instanceOf(Date, moment__default["default"]).description('initial month to display'),
|
|
153
160
|
firstDayOfWeek: reactDesc.PropTypes.number.description('first day of week').defaultValue(0),
|
|
154
161
|
keepOpenOnDateSelect: reactDesc.PropTypes.bool.description('keep picker open when a date is selected').defaultValue(false),
|
|
155
162
|
hideKeyboardShortcutsPanel: reactDesc.PropTypes.bool.description('hide keyabord shortcut panel or not').defaultValue(true),
|
|
156
|
-
onChange: reactDesc.PropTypes.func.description(
|
|
157
|
-
function executed when input changes. This could trigger with invalid dates. It returns a string and a moment
|
|
158
|
-
if the date is valid.
|
|
159
|
-
`),
|
|
163
|
+
onChange: reactDesc.PropTypes.func.description("\n function executed when input changes. This could trigger with invalid dates. It returns a string and a moment\n if the date is valid.\n "),
|
|
160
164
|
onDateChange: reactDesc.PropTypes.func.description('function executed when date changes. This doesnt trigger with invalid dates. It returns a moment object'),
|
|
161
165
|
onPrevMonthClick: reactDesc.PropTypes.func.description('function executed when clicking on prev month button'),
|
|
162
166
|
onNextMonthClick: reactDesc.PropTypes.func.description('function executed when clicking on next month button'),
|
|
@@ -226,4 +230,4 @@ exports.SingleRangeDateSwitcher = SingleRangeDateSwitcher;
|
|
|
226
230
|
exports.renderMonthElement = DatePickerRenderMonth.renderMonthElement;
|
|
227
231
|
exports.DSDatePickerController = DatePickerController;
|
|
228
232
|
exports.DatePickerWithSchema = DatePickerWithSchema;
|
|
229
|
-
exports[
|
|
233
|
+
exports["default"] = DSDatePicker;
|
|
@@ -1,34 +1,31 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
4
|
-
|
|
4
|
+
require('core-js/modules/web.dom-collections.iterator.js');
|
|
5
5
|
var React = require('react');
|
|
6
6
|
var moment = require('moment');
|
|
7
|
-
var
|
|
8
|
-
var DSDateInput = require('@elliemae/ds-basic/form/DateInputV2');
|
|
7
|
+
var dsForm = require('@elliemae/ds-form');
|
|
9
8
|
var DatePickerController = require('./DatePickerController/DatePickerController.js');
|
|
10
9
|
var DatePickerDropdown = require('./DatePickerDropdown.js');
|
|
11
10
|
|
|
12
11
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
13
12
|
|
|
14
13
|
var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
15
|
-
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
|
|
16
14
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
17
15
|
var moment__default = /*#__PURE__*/_interopDefaultLegacy(moment);
|
|
18
|
-
var DSInputGroup__default = /*#__PURE__*/_interopDefaultLegacy(DSInputGroup);
|
|
19
16
|
|
|
20
17
|
const FORMAT = 'MMDDYYYY';
|
|
21
|
-
class DSdatePickerImpl extends React__default[
|
|
18
|
+
class DSdatePickerImpl extends React__default["default"].Component {
|
|
22
19
|
constructor(props) {
|
|
23
20
|
super(props);
|
|
24
21
|
|
|
25
|
-
|
|
22
|
+
this.onClickPicker = () => {
|
|
26
23
|
this.setState({
|
|
27
24
|
inputFocused: true
|
|
28
25
|
});
|
|
29
|
-
}
|
|
26
|
+
};
|
|
30
27
|
|
|
31
|
-
|
|
28
|
+
this.getSafeValue = () => {
|
|
32
29
|
const {
|
|
33
30
|
value,
|
|
34
31
|
date,
|
|
@@ -39,15 +36,15 @@ class DSdatePickerImpl extends React__default['default'].Component {
|
|
|
39
36
|
} = this.state;
|
|
40
37
|
|
|
41
38
|
if (value) {
|
|
42
|
-
return moment__default[
|
|
39
|
+
return moment__default["default"](value, FORMAT, true);
|
|
43
40
|
}
|
|
44
41
|
|
|
45
42
|
if (date) {
|
|
46
|
-
return moment__default[
|
|
43
|
+
return moment__default["default"](date, FORMAT, true);
|
|
47
44
|
}
|
|
48
45
|
|
|
49
46
|
if (defaultValue) {
|
|
50
|
-
return moment__default[
|
|
47
|
+
return moment__default["default"](defaultValue, FORMAT, true);
|
|
51
48
|
}
|
|
52
49
|
|
|
53
50
|
if (selectedDate) {
|
|
@@ -55,9 +52,9 @@ class DSdatePickerImpl extends React__default['default'].Component {
|
|
|
55
52
|
}
|
|
56
53
|
|
|
57
54
|
return null;
|
|
58
|
-
}
|
|
55
|
+
};
|
|
59
56
|
|
|
60
|
-
|
|
57
|
+
this.getSafeInputValue = () => {
|
|
61
58
|
const safeValue = this.getSafeValue();
|
|
62
59
|
|
|
63
60
|
if (safeValue && safeValue.isValid()) {
|
|
@@ -68,17 +65,17 @@ class DSdatePickerImpl extends React__default['default'].Component {
|
|
|
68
65
|
dataInput
|
|
69
66
|
} = this.state;
|
|
70
67
|
return dataInput;
|
|
71
|
-
}
|
|
68
|
+
};
|
|
72
69
|
|
|
73
|
-
|
|
70
|
+
this.isControlled = () => {
|
|
74
71
|
const {
|
|
75
72
|
value,
|
|
76
73
|
date
|
|
77
74
|
} = this.props;
|
|
78
75
|
return Boolean(value) || Boolean(date);
|
|
79
|
-
}
|
|
76
|
+
};
|
|
80
77
|
|
|
81
|
-
|
|
78
|
+
this.handleDateChange = (date, event) => {
|
|
82
79
|
const {
|
|
83
80
|
readOnly,
|
|
84
81
|
onDateChange,
|
|
@@ -105,9 +102,9 @@ class DSdatePickerImpl extends React__default['default'].Component {
|
|
|
105
102
|
onBlur(date.format(FORMAT), date);
|
|
106
103
|
}
|
|
107
104
|
}
|
|
108
|
-
}
|
|
105
|
+
};
|
|
109
106
|
|
|
110
|
-
|
|
107
|
+
this.handleInputChange = (dataInput, newDate) => {
|
|
111
108
|
const {
|
|
112
109
|
onChange
|
|
113
110
|
} = this.props;
|
|
@@ -117,30 +114,31 @@ class DSdatePickerImpl extends React__default['default'].Component {
|
|
|
117
114
|
};
|
|
118
115
|
this.setState(() => newState);
|
|
119
116
|
onChange(dataInput, newDate);
|
|
120
|
-
}
|
|
117
|
+
};
|
|
121
118
|
|
|
122
|
-
|
|
119
|
+
this.handleChange = newDate => {
|
|
123
120
|
if (!newDate) return;
|
|
124
121
|
const {
|
|
125
122
|
onDateChange
|
|
126
123
|
} = this.props;
|
|
127
|
-
const momentValue = moment__default[
|
|
124
|
+
const momentValue = moment__default["default"](newDate, FORMAT, true);
|
|
128
125
|
if (!momentValue.isValid()) return;
|
|
129
126
|
this.setState({
|
|
130
127
|
selectedDate: momentValue
|
|
131
128
|
});
|
|
132
129
|
onDateChange(momentValue);
|
|
133
|
-
}
|
|
130
|
+
};
|
|
134
131
|
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
132
|
+
this.handleFocus = _ref => {
|
|
133
|
+
let {
|
|
134
|
+
focused
|
|
135
|
+
} = _ref;
|
|
138
136
|
this.setState({
|
|
139
137
|
inputFocused: focused
|
|
140
138
|
});
|
|
141
|
-
}
|
|
139
|
+
};
|
|
142
140
|
|
|
143
|
-
|
|
141
|
+
this.handleCalendarClose = () => {
|
|
144
142
|
const {
|
|
145
143
|
onClose
|
|
146
144
|
} = this.props;
|
|
@@ -149,9 +147,9 @@ class DSdatePickerImpl extends React__default['default'].Component {
|
|
|
149
147
|
});
|
|
150
148
|
this.handleOnBlur();
|
|
151
149
|
onClose();
|
|
152
|
-
}
|
|
150
|
+
};
|
|
153
151
|
|
|
154
|
-
|
|
152
|
+
this.handleClickEscape = () => {
|
|
155
153
|
const {
|
|
156
154
|
onClose
|
|
157
155
|
} = this.props;
|
|
@@ -160,9 +158,9 @@ class DSdatePickerImpl extends React__default['default'].Component {
|
|
|
160
158
|
});
|
|
161
159
|
this.handleOnBlur();
|
|
162
160
|
onClose();
|
|
163
|
-
}
|
|
161
|
+
};
|
|
164
162
|
|
|
165
|
-
|
|
163
|
+
this.handleOnBlur = () => {
|
|
166
164
|
setTimeout(() => {
|
|
167
165
|
const {
|
|
168
166
|
onBlur,
|
|
@@ -173,7 +171,7 @@ class DSdatePickerImpl extends React__default['default'].Component {
|
|
|
173
171
|
selectedDate
|
|
174
172
|
} = this.state;
|
|
175
173
|
|
|
176
|
-
if (moment__default[
|
|
174
|
+
if (moment__default["default"](selectedDate, FORMAT, true).isValid()) {
|
|
177
175
|
onBlur(dataInput, selectedDate);
|
|
178
176
|
} else {
|
|
179
177
|
if (autoClear) {
|
|
@@ -185,17 +183,17 @@ class DSdatePickerImpl extends React__default['default'].Component {
|
|
|
185
183
|
onBlur(dataInput, null);
|
|
186
184
|
}
|
|
187
185
|
});
|
|
188
|
-
}
|
|
186
|
+
};
|
|
189
187
|
|
|
190
|
-
|
|
188
|
+
this.handleInputFocus = dataInput => {
|
|
191
189
|
const {
|
|
192
190
|
onFocus
|
|
193
191
|
} = this.props;
|
|
194
192
|
onFocus(dataInput);
|
|
195
|
-
}
|
|
193
|
+
};
|
|
196
194
|
|
|
197
195
|
this.state = {
|
|
198
|
-
pickerRef: /*#__PURE__*/React__default[
|
|
196
|
+
pickerRef: /*#__PURE__*/React__default["default"].createRef(),
|
|
199
197
|
dataInput: '',
|
|
200
198
|
selectedDate: null,
|
|
201
199
|
inputFocused: false
|
|
@@ -211,8 +209,8 @@ class DSdatePickerImpl extends React__default['default'].Component {
|
|
|
211
209
|
value: nextVal,
|
|
212
210
|
date: nextDate
|
|
213
211
|
} = nextProps;
|
|
214
|
-
const isPrevValMoment = prevVal instanceof moment__default[
|
|
215
|
-
const isPrevDateMoment = prevDate instanceof moment__default[
|
|
212
|
+
const isPrevValMoment = prevVal instanceof moment__default["default"];
|
|
213
|
+
const isPrevDateMoment = prevDate instanceof moment__default["default"];
|
|
216
214
|
const prevValAsString = isPrevValMoment ? prevVal.format(FORMAT) : prevVal; // if users wants to clear, we use '==' to catch both undefined AND null
|
|
217
215
|
|
|
218
216
|
if (nextVal == null && nextDate == null) {
|
|
@@ -229,12 +227,12 @@ class DSdatePickerImpl extends React__default['default'].Component {
|
|
|
229
227
|
}
|
|
230
228
|
|
|
231
229
|
const prevDateAsString = isPrevDateMoment ? prevDate.format(FORMAT) : prevDate;
|
|
232
|
-
const isNextValMoment = nextVal instanceof moment__default[
|
|
233
|
-
const isNextDateMoment = nextDate instanceof moment__default[
|
|
230
|
+
const isNextValMoment = nextVal instanceof moment__default["default"];
|
|
231
|
+
const isNextDateMoment = nextDate instanceof moment__default["default"];
|
|
234
232
|
const nextValAsString = isNextValMoment ? nextVal.format(FORMAT) : nextVal;
|
|
235
|
-
const nextValAsMoment = isNextValMoment ? nextVal : moment__default[
|
|
233
|
+
const nextValAsMoment = isNextValMoment ? nextVal : moment__default["default"](nextVal);
|
|
236
234
|
const nextDateAsString = isNextDateMoment ? nextDate.format(FORMAT) : nextDate;
|
|
237
|
-
const nextDateAsMoment = isNextDateMoment ? nextDate : moment__default[
|
|
235
|
+
const nextDateAsMoment = isNextDateMoment ? nextDate : moment__default["default"](nextDate);
|
|
238
236
|
const hasValChanged = nextValAsString !== prevValAsString;
|
|
239
237
|
const hasDateChanged = nextDateAsString !== prevDateAsString;
|
|
240
238
|
const newState = {};
|
|
@@ -258,6 +256,8 @@ class DSdatePickerImpl extends React__default['default'].Component {
|
|
|
258
256
|
}
|
|
259
257
|
|
|
260
258
|
render() {
|
|
259
|
+
var _this = this;
|
|
260
|
+
|
|
261
261
|
const {
|
|
262
262
|
inputFocused
|
|
263
263
|
} = this.state;
|
|
@@ -288,19 +288,19 @@ class DSdatePickerImpl extends React__default['default'].Component {
|
|
|
288
288
|
const safedate = this.getSafeValue();
|
|
289
289
|
const safeInputValue = this.getSafeInputValue();
|
|
290
290
|
const hasSelectedDate = !!safedate;
|
|
291
|
-
return /*#__PURE__*/_jsx__default[
|
|
292
|
-
rightAddon: /*#__PURE__*/_jsx__default[
|
|
291
|
+
return /*#__PURE__*/_jsx__default["default"](dsForm.DSInputGroup, {
|
|
292
|
+
rightAddon: /*#__PURE__*/_jsx__default["default"](DatePickerDropdown, {
|
|
293
293
|
pickerRef: this.state.pickerRef,
|
|
294
294
|
disabled: disabled,
|
|
295
295
|
isOpen: inputFocused,
|
|
296
|
-
menu: /*#__PURE__*/_jsx__default[
|
|
296
|
+
menu: /*#__PURE__*/_jsx__default["default"]("div", {
|
|
297
297
|
style: {
|
|
298
298
|
minHeight: '310px',
|
|
299
299
|
zIndex: 1
|
|
300
300
|
},
|
|
301
301
|
className: hasSelectedDate ? 'has-selected-date' : 'without-selected-date',
|
|
302
302
|
"data-testid": "date-picker-portal-wrapper"
|
|
303
|
-
}, void 0, /*#__PURE__*/_jsx__default[
|
|
303
|
+
}, void 0, /*#__PURE__*/_jsx__default["default"](DatePickerController, {
|
|
304
304
|
date: safedate,
|
|
305
305
|
displayFormatDay: displayFormatDay,
|
|
306
306
|
enableOutsideDays: enableOutsideDays,
|
|
@@ -312,10 +312,11 @@ class DSdatePickerImpl extends React__default['default'].Component {
|
|
|
312
312
|
keepOpenOnDateSelect: keepOpenOnDateSelect,
|
|
313
313
|
numberOfMonths: numberOfMonths,
|
|
314
314
|
onClickEscape: this.handleClickEscape,
|
|
315
|
-
onClose: (
|
|
316
|
-
if (
|
|
317
|
-
onClose(...
|
|
318
|
-
|
|
315
|
+
onClose: function () {
|
|
316
|
+
if (_this.state.pickerRef.current) _this.state.pickerRef.current.focus();
|
|
317
|
+
onClose(...arguments);
|
|
318
|
+
|
|
319
|
+
_this.setState({
|
|
319
320
|
inputFocused: false
|
|
320
321
|
});
|
|
321
322
|
},
|
|
@@ -334,7 +335,7 @@ class DSdatePickerImpl extends React__default['default'].Component {
|
|
|
334
335
|
zIndex: zIndex,
|
|
335
336
|
pickerProps: pickerProps
|
|
336
337
|
})
|
|
337
|
-
}, void 0, /*#__PURE__*/_jsx__default[
|
|
338
|
+
}, void 0, /*#__PURE__*/_jsx__default["default"](dsForm.DSDateInputV2, {
|
|
338
339
|
"data-testid": "datepicker-input",
|
|
339
340
|
"aria-label": placeholder || 'Date Picker Input',
|
|
340
341
|
disabled: disabled,
|