@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
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
4
3
|
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
4
|
+
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
5
|
+
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
6
|
+
require('core-js/modules/esnext.iterator.constructor.js');
|
|
7
|
+
require('core-js/modules/esnext.iterator.filter.js');
|
|
8
|
+
require('core-js/modules/web.dom-collections.iterator.js');
|
|
9
|
+
require('core-js/modules/esnext.async-iterator.for-each.js');
|
|
10
|
+
require('core-js/modules/esnext.iterator.for-each.js');
|
|
5
11
|
var React = require('react');
|
|
6
12
|
var lodash = require('lodash');
|
|
7
13
|
var PropTypes = require('prop-types');
|
|
@@ -9,7 +15,7 @@ var moment = require('moment');
|
|
|
9
15
|
require('react-dates/initialize');
|
|
10
16
|
var reactDates = require('react-dates');
|
|
11
17
|
var dsClassnames = require('@elliemae/ds-classnames');
|
|
12
|
-
var
|
|
18
|
+
var dsIcons = require('@elliemae/ds-icons');
|
|
13
19
|
var defaultPhrases = require('../../defaultPhrases.js');
|
|
14
20
|
var DatePickerRenderMonth = require('../DatePickerRenderMonth/DatePickerRenderMonth.js');
|
|
15
21
|
var DatePickerNavigation = require('../DatePickerNavigation/DatePickerNavigation.js');
|
|
@@ -18,16 +24,15 @@ var jsxRuntime = require('react/jsx-runtime');
|
|
|
18
24
|
|
|
19
25
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
20
26
|
|
|
21
|
-
var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
22
27
|
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
|
|
28
|
+
var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
23
29
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
24
30
|
var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
|
|
25
31
|
var moment__default = /*#__PURE__*/_interopDefaultLegacy(moment);
|
|
26
|
-
var ChevronLeft__default = /*#__PURE__*/_interopDefaultLegacy(ChevronLeft);
|
|
27
32
|
|
|
28
33
|
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; }
|
|
29
34
|
|
|
30
|
-
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[
|
|
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["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; }
|
|
31
36
|
const {
|
|
32
37
|
classNameElement,
|
|
33
38
|
classNameBlock
|
|
@@ -49,19 +54,19 @@ const focusElementOnOpen = lodash.debounce((datePickerDom, firstFocusableItemDom
|
|
|
49
54
|
}
|
|
50
55
|
}
|
|
51
56
|
}, 100);
|
|
52
|
-
class DSDatePickerController extends React__default[
|
|
57
|
+
class DSDatePickerController extends React__default["default"].Component {
|
|
53
58
|
// eslint-disable-next-line react/static-property-placement
|
|
54
59
|
constructor(props) {
|
|
55
60
|
super(props);
|
|
56
61
|
|
|
57
|
-
|
|
62
|
+
this.handleMouseUp = () => {
|
|
58
63
|
var _focusedElement$blur;
|
|
59
64
|
|
|
60
65
|
const focusedElement = document.activeElement;
|
|
61
66
|
focusedElement === null || focusedElement === void 0 ? void 0 : (_focusedElement$blur = focusedElement.blur) === null || _focusedElement$blur === void 0 ? void 0 : _focusedElement$blur.call(focusedElement);
|
|
62
|
-
}
|
|
67
|
+
};
|
|
63
68
|
|
|
64
|
-
|
|
69
|
+
this.handleKeyDown = event => {
|
|
65
70
|
const [firstDay, ...restOfDays] = document.getElementsByClassName('CalendarMonthGrid_month__horizontal')[1].getElementsByClassName('CalendarDay');
|
|
66
71
|
const [lastDay] = restOfDays.slice(-1);
|
|
67
72
|
const {
|
|
@@ -81,9 +86,9 @@ class DSDatePickerController extends React__default['default'].Component {
|
|
|
81
86
|
onClickEscape();
|
|
82
87
|
break;
|
|
83
88
|
}
|
|
84
|
-
}
|
|
89
|
+
};
|
|
85
90
|
|
|
86
|
-
|
|
91
|
+
this.getSafeValue = () => {
|
|
87
92
|
const {
|
|
88
93
|
value,
|
|
89
94
|
date,
|
|
@@ -92,22 +97,22 @@ class DSDatePickerController extends React__default['default'].Component {
|
|
|
92
97
|
const {
|
|
93
98
|
selectedDate
|
|
94
99
|
} = this.state;
|
|
95
|
-
if (value) return moment__default[
|
|
96
|
-
if (date) return moment__default[
|
|
97
|
-
if (defaultValue) return moment__default[
|
|
98
|
-
if (selectedDate) return moment__default[
|
|
100
|
+
if (value) return moment__default["default"](value);
|
|
101
|
+
if (date) return moment__default["default"](date);
|
|
102
|
+
if (defaultValue) return moment__default["default"](defaultValue);
|
|
103
|
+
if (selectedDate) return moment__default["default"](selectedDate);
|
|
99
104
|
return null;
|
|
100
|
-
}
|
|
105
|
+
};
|
|
101
106
|
|
|
102
|
-
|
|
107
|
+
this.isControlled = () => {
|
|
103
108
|
const {
|
|
104
109
|
value,
|
|
105
110
|
date
|
|
106
111
|
} = this.props;
|
|
107
112
|
return Boolean(value) || Boolean(date);
|
|
108
|
-
}
|
|
113
|
+
};
|
|
109
114
|
|
|
110
|
-
|
|
115
|
+
this.handleDateChange = date => {
|
|
111
116
|
const {
|
|
112
117
|
readOnly,
|
|
113
118
|
onDateChange,
|
|
@@ -124,22 +129,22 @@ class DSDatePickerController extends React__default['default'].Component {
|
|
|
124
129
|
onDateChange(date);
|
|
125
130
|
onChange(date);
|
|
126
131
|
}
|
|
127
|
-
}
|
|
132
|
+
};
|
|
128
133
|
|
|
129
|
-
|
|
134
|
+
this.handleChange = dataInput => {
|
|
130
135
|
const {
|
|
131
136
|
onDateChange,
|
|
132
137
|
onChange
|
|
133
138
|
} = this.props;
|
|
134
|
-
const momentvalue = moment__default[
|
|
139
|
+
const momentvalue = moment__default["default"](dataInput.target.value);
|
|
135
140
|
this.setState({
|
|
136
141
|
selectedDate: momentvalue
|
|
137
142
|
});
|
|
138
143
|
onDateChange(momentvalue);
|
|
139
144
|
onChange(momentvalue);
|
|
140
|
-
}
|
|
145
|
+
};
|
|
141
146
|
|
|
142
|
-
|
|
147
|
+
this.handleNavClick = (date, nav) => {
|
|
143
148
|
const [prev, next] = document.getElementsByClassName('DayPickerNavigation_button');
|
|
144
149
|
const {
|
|
145
150
|
onPrevMonthClick,
|
|
@@ -157,9 +162,9 @@ class DSDatePickerController extends React__default['default'].Component {
|
|
|
157
162
|
next === null || next === void 0 ? void 0 : (_next$focus = next.focus) === null || _next$focus === void 0 ? void 0 : _next$focus.call(next);
|
|
158
163
|
onNextMonthClick(date);
|
|
159
164
|
}
|
|
160
|
-
}
|
|
165
|
+
};
|
|
161
166
|
|
|
162
|
-
|
|
167
|
+
this.insideBlur = event => {
|
|
163
168
|
const {
|
|
164
169
|
datePicker
|
|
165
170
|
} = this.state;
|
|
@@ -167,12 +172,12 @@ class DSDatePickerController extends React__default['default'].Component {
|
|
|
167
172
|
if (!datePicker.current.contains(event.currentTarget)) {
|
|
168
173
|
this.props.onClose();
|
|
169
174
|
}
|
|
170
|
-
}
|
|
175
|
+
};
|
|
171
176
|
|
|
172
177
|
this.state = {
|
|
173
178
|
selectedDate: null,
|
|
174
|
-
firstFocusableItem: /*#__PURE__*/React__default[
|
|
175
|
-
datePicker: /*#__PURE__*/React__default[
|
|
179
|
+
firstFocusableItem: /*#__PURE__*/React__default["default"].createRef(),
|
|
180
|
+
datePicker: /*#__PURE__*/React__default["default"].createRef()
|
|
176
181
|
};
|
|
177
182
|
}
|
|
178
183
|
|
|
@@ -221,13 +226,13 @@ class DSDatePickerController extends React__default['default'].Component {
|
|
|
221
226
|
} = this.state;
|
|
222
227
|
const safedate = this.getSafeValue();
|
|
223
228
|
const safeinitialMonth = safedate && safedate.isValid() ? () => safedate : () => initialVisibleMonth;
|
|
224
|
-
return /*#__PURE__*/_jsx__default[
|
|
229
|
+
return /*#__PURE__*/_jsx__default["default"]("div", {}, void 0, /*#__PURE__*/jsxRuntime.jsx("div", _objectSpread(_objectSpread({
|
|
225
230
|
onBlur: this.insideBlur,
|
|
226
231
|
ref: datePicker,
|
|
227
232
|
className: classNameBlock('wrapper-day-picker-single-date-controller'),
|
|
228
233
|
"data-testid": "calendar-wrapper"
|
|
229
234
|
}, calendarProps), {}, {
|
|
230
|
-
children: /*#__PURE__*/_jsx__default[
|
|
235
|
+
children: /*#__PURE__*/_jsx__default["default"](reactDates.DayPickerSingleDateController, {
|
|
231
236
|
date: safedate,
|
|
232
237
|
enableOutsideDays: enableOutsideDays,
|
|
233
238
|
firstDayOfWeek: firstDayOfWeek,
|
|
@@ -238,12 +243,12 @@ class DSDatePickerController extends React__default['default'].Component {
|
|
|
238
243
|
isDayHighlighted: isDayHighlighted,
|
|
239
244
|
isOutsideRange: isOutsideRange,
|
|
240
245
|
keepOpenOnDateSelect: keepOpenOnDateSelect,
|
|
241
|
-
navNext: /*#__PURE__*/_jsx__default[
|
|
246
|
+
navNext: /*#__PURE__*/_jsx__default["default"](DatePickerNavigation, {
|
|
242
247
|
className: classNameElement('navigation-next')
|
|
243
248
|
}),
|
|
244
|
-
navPrev: /*#__PURE__*/_jsx__default[
|
|
249
|
+
navPrev: /*#__PURE__*/_jsx__default["default"](DatePickerNavigation, {
|
|
245
250
|
className: classNameElement('navigation-prev'),
|
|
246
|
-
icon:
|
|
251
|
+
icon: dsIcons.ChevronLeft,
|
|
247
252
|
innerRef: firstFocusableItem
|
|
248
253
|
}),
|
|
249
254
|
renderMonthElement: DatePickerRenderMonth.renderMonthElement,
|
|
@@ -258,7 +263,7 @@ class DSDatePickerController extends React__default['default'].Component {
|
|
|
258
263
|
this.handleNavClick(e, 'prev');
|
|
259
264
|
},
|
|
260
265
|
phrases: phrases,
|
|
261
|
-
renderDayContents: date => /*#__PURE__*/_jsx__default[
|
|
266
|
+
renderDayContents: date => /*#__PURE__*/_jsx__default["default"](DatePickerDay, {
|
|
262
267
|
className: classNameElement('day-contents'),
|
|
263
268
|
date: date.format(displayFormatDay)
|
|
264
269
|
}),
|
|
@@ -274,12 +279,11 @@ class DSDatePickerController extends React__default['default'].Component {
|
|
|
274
279
|
}
|
|
275
280
|
|
|
276
281
|
}
|
|
277
|
-
|
|
278
|
-
_defineProperty__default['default'](DSDatePickerController, "defaultProps", {
|
|
282
|
+
DSDatePickerController.defaultProps = {
|
|
279
283
|
date: '',
|
|
280
284
|
value: '',
|
|
281
285
|
enableOutsideDays: false,
|
|
282
|
-
initialVisibleMonth: moment__default[
|
|
286
|
+
initialVisibleMonth: moment__default["default"](),
|
|
283
287
|
firstDayOfWeek: 0,
|
|
284
288
|
keepOpenOnDateSelect: true,
|
|
285
289
|
hideKeyboardShortcutsPanel: true,
|
|
@@ -298,13 +302,12 @@ _defineProperty__default['default'](DSDatePickerController, "defaultProps", {
|
|
|
298
302
|
isOutsideRange: () => false,
|
|
299
303
|
isDayHighlighted: () => false,
|
|
300
304
|
numberOfMonths: 1
|
|
301
|
-
}
|
|
302
|
-
|
|
305
|
+
};
|
|
303
306
|
DSDatePickerController.defaultProps = {
|
|
304
307
|
date: '',
|
|
305
308
|
value: '',
|
|
306
309
|
enableOutsideDays: false,
|
|
307
|
-
initialVisibleMonth: moment__default[
|
|
310
|
+
initialVisibleMonth: moment__default["default"](),
|
|
308
311
|
firstDayOfWeek: 0,
|
|
309
312
|
keepOpenOnDateSelect: true,
|
|
310
313
|
hideKeyboardShortcutsPanel: true,
|
|
@@ -314,35 +317,35 @@ DSDatePickerController.defaultProps = {
|
|
|
314
317
|
onClickEscape: () => null,
|
|
315
318
|
onChange: () => null,
|
|
316
319
|
onDateChange: () => null,
|
|
317
|
-
phrases: PropTypes__default[
|
|
318
|
-
calendarLabel: PropTypes__default[
|
|
319
|
-
closeDatePicker: PropTypes__default[
|
|
320
|
-
clearDates: PropTypes__default[
|
|
321
|
-
focusStartDate: PropTypes__default[
|
|
322
|
-
jumpToPrevMonth: PropTypes__default[
|
|
323
|
-
jumpToNextMonth: PropTypes__default[
|
|
324
|
-
keyboardShortcuts: PropTypes__default[
|
|
325
|
-
showKeyboardShortcutsPanel: PropTypes__default[
|
|
326
|
-
hideKeyboardShortcutsPanel: PropTypes__default[
|
|
327
|
-
openThisPanel: PropTypes__default[
|
|
328
|
-
enterKey: PropTypes__default[
|
|
329
|
-
leftArrowRightArrow: PropTypes__default[
|
|
330
|
-
upArrowDownArrow: PropTypes__default[
|
|
331
|
-
pageUpPageDown: PropTypes__default[
|
|
332
|
-
homeEnd: PropTypes__default[
|
|
333
|
-
escape: PropTypes__default[
|
|
334
|
-
questionMark: PropTypes__default[
|
|
335
|
-
selectFocusedDate: PropTypes__default[
|
|
336
|
-
moveFocusByOneDay: PropTypes__default[
|
|
337
|
-
moveFocusByOneWeek: PropTypes__default[
|
|
338
|
-
moveFocusByOneMonth: PropTypes__default[
|
|
339
|
-
moveFocustoStartAndEndOfWeek: PropTypes__default[
|
|
340
|
-
returnFocusToInput: PropTypes__default[
|
|
341
|
-
keyboardNavigationInstructions: PropTypes__default[
|
|
342
|
-
chooseAvailableStartDate: PropTypes__default[
|
|
343
|
-
chooseAvailableEndDate: PropTypes__default[
|
|
344
|
-
dateIsUnavailable: PropTypes__default[
|
|
345
|
-
dateIsSelected: PropTypes__default[
|
|
320
|
+
phrases: PropTypes__default["default"].shape({
|
|
321
|
+
calendarLabel: PropTypes__default["default"].string,
|
|
322
|
+
closeDatePicker: PropTypes__default["default"].string,
|
|
323
|
+
clearDates: PropTypes__default["default"].string,
|
|
324
|
+
focusStartDate: PropTypes__default["default"].string,
|
|
325
|
+
jumpToPrevMonth: PropTypes__default["default"].string,
|
|
326
|
+
jumpToNextMonth: PropTypes__default["default"].string,
|
|
327
|
+
keyboardShortcuts: PropTypes__default["default"].string,
|
|
328
|
+
showKeyboardShortcutsPanel: PropTypes__default["default"].string,
|
|
329
|
+
hideKeyboardShortcutsPanel: PropTypes__default["default"].string,
|
|
330
|
+
openThisPanel: PropTypes__default["default"].string,
|
|
331
|
+
enterKey: PropTypes__default["default"].string,
|
|
332
|
+
leftArrowRightArrow: PropTypes__default["default"].string,
|
|
333
|
+
upArrowDownArrow: PropTypes__default["default"].string,
|
|
334
|
+
pageUpPageDown: PropTypes__default["default"].string,
|
|
335
|
+
homeEnd: PropTypes__default["default"].string,
|
|
336
|
+
escape: PropTypes__default["default"].string,
|
|
337
|
+
questionMark: PropTypes__default["default"].string,
|
|
338
|
+
selectFocusedDate: PropTypes__default["default"].string,
|
|
339
|
+
moveFocusByOneDay: PropTypes__default["default"].string,
|
|
340
|
+
moveFocusByOneWeek: PropTypes__default["default"].string,
|
|
341
|
+
moveFocusByOneMonth: PropTypes__default["default"].string,
|
|
342
|
+
moveFocustoStartAndEndOfWeek: PropTypes__default["default"].string,
|
|
343
|
+
returnFocusToInput: PropTypes__default["default"].string,
|
|
344
|
+
keyboardNavigationInstructions: PropTypes__default["default"].string,
|
|
345
|
+
chooseAvailableStartDate: PropTypes__default["default"].func,
|
|
346
|
+
chooseAvailableEndDate: PropTypes__default["default"].func,
|
|
347
|
+
dateIsUnavailable: PropTypes__default["default"].func,
|
|
348
|
+
dateIsSelected: PropTypes__default["default"].func
|
|
346
349
|
}),
|
|
347
350
|
// displayFormat: 'L',
|
|
348
351
|
displayFormatDay: 'D',
|
|
@@ -7,15 +7,18 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
|
|
|
7
7
|
|
|
8
8
|
var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
9
9
|
|
|
10
|
-
const Day =
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
"
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
"
|
|
19
|
-
|
|
10
|
+
const Day = _ref => {
|
|
11
|
+
let {
|
|
12
|
+
className = 'date-picker-content-day',
|
|
13
|
+
date = ''
|
|
14
|
+
} = _ref;
|
|
15
|
+
return /*#__PURE__*/_jsx__default["default"]("div", {
|
|
16
|
+
className: className,
|
|
17
|
+
"data-testid": "datepicker-day-".concat(date)
|
|
18
|
+
}, void 0, /*#__PURE__*/_jsx__default["default"]("div", {
|
|
19
|
+
className: "".concat(className, "-half"),
|
|
20
|
+
"data-testid": "datepicker-day"
|
|
21
|
+
}, void 0, date));
|
|
22
|
+
};
|
|
20
23
|
|
|
21
24
|
module.exports = Day;
|
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
4
|
+
require('core-js/modules/esnext.iterator.constructor.js');
|
|
5
|
+
require('core-js/modules/esnext.iterator.filter.js');
|
|
6
|
+
require('core-js/modules/esnext.async-iterator.for-each.js');
|
|
7
|
+
require('core-js/modules/esnext.iterator.for-each.js');
|
|
3
8
|
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
4
9
|
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
5
10
|
require('react');
|
|
6
11
|
var dsClassnames = require('@elliemae/ds-classnames');
|
|
7
|
-
var DSPopper = require('@elliemae/ds-
|
|
12
|
+
var DSPopper = require('@elliemae/ds-popper');
|
|
8
13
|
var DatePickerPicker = require('./DatePickerPicker/DatePickerPicker.js');
|
|
9
14
|
var jsxRuntime = require('react/jsx-runtime');
|
|
10
15
|
|
|
@@ -16,24 +21,25 @@ var DSPopper__default = /*#__PURE__*/_interopDefaultLegacy(DSPopper);
|
|
|
16
21
|
|
|
17
22
|
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; }
|
|
18
23
|
|
|
19
|
-
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[
|
|
24
|
+
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; }
|
|
20
25
|
const {
|
|
21
26
|
classNameElement
|
|
22
27
|
} = dsClassnames.convertPropToCssClassName('datepicker-range');
|
|
23
28
|
|
|
24
29
|
const noop = () => null;
|
|
25
30
|
|
|
26
|
-
function DatePickerDropdown({
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
31
|
+
function DatePickerDropdown(_ref) {
|
|
32
|
+
let {
|
|
33
|
+
disabled = false,
|
|
34
|
+
readOnly,
|
|
35
|
+
onClick = noop,
|
|
36
|
+
isOpen,
|
|
37
|
+
menu,
|
|
38
|
+
zIndex = 1,
|
|
39
|
+
pickerProps,
|
|
40
|
+
pickerRef
|
|
41
|
+
} = _ref;
|
|
42
|
+
return /*#__PURE__*/_jsx__default["default"](DSPopper__default["default"], {
|
|
37
43
|
contentComponent: menu,
|
|
38
44
|
isOpen: isOpen,
|
|
39
45
|
modifiers: {
|
|
@@ -44,7 +50,7 @@ function DatePickerDropdown({
|
|
|
44
50
|
}
|
|
45
51
|
},
|
|
46
52
|
showArrow: false,
|
|
47
|
-
triggerComponent: /*#__PURE__*/_jsx__default[
|
|
53
|
+
triggerComponent: /*#__PURE__*/_jsx__default["default"]("div", {}, void 0, /*#__PURE__*/jsxRuntime.jsx(DatePickerPicker.Picker, _objectSpread(_objectSpread({
|
|
48
54
|
innerRef: pickerRef
|
|
49
55
|
}, pickerProps), {}, {
|
|
50
56
|
className: classNameElement('picker'),
|
|
@@ -1,18 +1,16 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
4
|
+
require('core-js/modules/web.dom-collections.iterator.js');
|
|
4
5
|
var React = require('react');
|
|
5
6
|
var moment = require('moment');
|
|
6
|
-
var
|
|
7
|
-
var DSInputGroup = require('@elliemae/ds-basic/form/InputGroup');
|
|
7
|
+
var dsForm = require('@elliemae/ds-form');
|
|
8
8
|
var dsClassnames = require('@elliemae/ds-classnames');
|
|
9
9
|
|
|
10
10
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
11
11
|
|
|
12
12
|
var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
13
13
|
var moment__default = /*#__PURE__*/_interopDefaultLegacy(moment);
|
|
14
|
-
var DSDateInput__default = /*#__PURE__*/_interopDefaultLegacy(DSDateInput);
|
|
15
|
-
var DSInputGroup__default = /*#__PURE__*/_interopDefaultLegacy(DSInputGroup);
|
|
16
14
|
|
|
17
15
|
const DATE_FORMAT = 'MMDDYYYY';
|
|
18
16
|
const blockname = 'date-picker-header';
|
|
@@ -20,11 +18,12 @@ const Header = dsClassnames.aggregatedClasses('div')(blockname);
|
|
|
20
18
|
|
|
21
19
|
const isFn = variable => typeof variable === 'function';
|
|
22
20
|
|
|
23
|
-
const DatePickerHeader =
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
21
|
+
const DatePickerHeader = _ref => {
|
|
22
|
+
let {
|
|
23
|
+
onInputChange = () => null,
|
|
24
|
+
selectedDate,
|
|
25
|
+
updateKeyDate
|
|
26
|
+
} = _ref;
|
|
28
27
|
const [value, setValue] = React.useState(isFn(selectedDate === null || selectedDate === void 0 ? void 0 : selectedDate.format) ? selectedDate.format(DATE_FORMAT) : '');
|
|
29
28
|
React.useEffect(() => {
|
|
30
29
|
if (isFn(selectedDate === null || selectedDate === void 0 ? void 0 : selectedDate.format)) {
|
|
@@ -38,13 +37,13 @@ const DatePickerHeader = ({
|
|
|
38
37
|
|
|
39
38
|
const handleOnKeyDown = e => {
|
|
40
39
|
if (e.key === 'Enter' && value.length === DATE_FORMAT.length) {
|
|
41
|
-
const momentValue = moment__default[
|
|
40
|
+
const momentValue = moment__default["default"](value, DATE_FORMAT);
|
|
42
41
|
onInputChange(momentValue);
|
|
43
42
|
updateKeyDate(momentValue);
|
|
44
43
|
}
|
|
45
44
|
};
|
|
46
45
|
|
|
47
|
-
return /*#__PURE__*/_jsx__default[
|
|
46
|
+
return /*#__PURE__*/_jsx__default["default"](Header, {}, void 0, /*#__PURE__*/_jsx__default["default"](dsForm.DSInputGroup, {}, void 0, /*#__PURE__*/_jsx__default["default"](dsForm.DSDateInputV2, {
|
|
48
47
|
onChange: handleOnChange,
|
|
49
48
|
onKeyDown: handleOnKeyDown,
|
|
50
49
|
value: value,
|
|
@@ -10,20 +10,23 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
|
|
|
10
10
|
var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
11
11
|
var ChevronRight__default = /*#__PURE__*/_interopDefaultLegacy(ChevronRight);
|
|
12
12
|
|
|
13
|
-
const Navigation =
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
"
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
13
|
+
const Navigation = _ref => {
|
|
14
|
+
let {
|
|
15
|
+
className = 'date-picker-navigation',
|
|
16
|
+
icon: Icon$1 = ChevronRight__default["default"],
|
|
17
|
+
color = Icon.DSIconColors.NEUTRAL,
|
|
18
|
+
size = Icon.DSIconSizes.S,
|
|
19
|
+
innerRef
|
|
20
|
+
} = _ref;
|
|
21
|
+
return /*#__PURE__*/_jsx__default["default"]("div", {
|
|
22
|
+
tabIndex: 0,
|
|
23
|
+
"data-testid": "date-picker-nav"
|
|
24
|
+
}, void 0, /*#__PURE__*/_jsx__default["default"](Icon$1, {
|
|
25
|
+
className: className,
|
|
26
|
+
color: color,
|
|
27
|
+
innerRef: innerRef,
|
|
28
|
+
size: size
|
|
29
|
+
}));
|
|
30
|
+
};
|
|
28
31
|
|
|
29
32
|
module.exports = Navigation;
|
|
@@ -8,7 +8,7 @@ require('react');
|
|
|
8
8
|
var PropTypes = require('prop-types');
|
|
9
9
|
var Icon = require('@elliemae/ds-basic/Icon');
|
|
10
10
|
var DatePicker = require('@elliemae/ds-icons/DatePicker');
|
|
11
|
-
var DSButton = require('@elliemae/ds-
|
|
11
|
+
var DSButton = require('@elliemae/ds-button');
|
|
12
12
|
var propTypes = require('@elliemae/ds-shared/prop-types');
|
|
13
13
|
|
|
14
14
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
@@ -26,7 +26,7 @@ const Picker = _ref => {
|
|
|
26
26
|
let {
|
|
27
27
|
className = 'date-picker-icon',
|
|
28
28
|
disabled = false,
|
|
29
|
-
icon = _DatePicker || (_DatePicker = /*#__PURE__*/_jsx__default[
|
|
29
|
+
icon = _DatePicker || (_DatePicker = /*#__PURE__*/_jsx__default["default"](DatePicker__default["default"], {})),
|
|
30
30
|
size = Icon.DSIconSizes.M,
|
|
31
31
|
buttonActionType = 'secondary',
|
|
32
32
|
onClick = () => null,
|
|
@@ -35,9 +35,9 @@ const Picker = _ref => {
|
|
|
35
35
|
tabIndex = 0,
|
|
36
36
|
innerRef
|
|
37
37
|
} = _ref,
|
|
38
|
-
rest = _objectWithoutProperties__default[
|
|
38
|
+
rest = _objectWithoutProperties__default["default"](_ref, _excluded);
|
|
39
39
|
|
|
40
|
-
return /*#__PURE__*/_jsx__default[
|
|
40
|
+
return /*#__PURE__*/_jsx__default["default"](DSButton__default["default"], {
|
|
41
41
|
innerRef: innerRef,
|
|
42
42
|
"aria-label": rest['aria-label'] || 'Date Picker Button',
|
|
43
43
|
buttonType: buttonActionType,
|
|
@@ -54,21 +54,21 @@ const Picker = _ref => {
|
|
|
54
54
|
});
|
|
55
55
|
};
|
|
56
56
|
const PickerPropsTypes = {
|
|
57
|
-
innerRef: PropTypes__default[
|
|
58
|
-
current: PropTypes__default[
|
|
57
|
+
innerRef: PropTypes__default["default"].oneOfType([PropTypes__default["default"].func, PropTypes__default["default"].shape({
|
|
58
|
+
current: PropTypes__default["default"].any
|
|
59
59
|
})]),
|
|
60
|
-
className: PropTypes__default[
|
|
61
|
-
disabled: PropTypes__default[
|
|
62
|
-
icon: PropTypes__default[
|
|
63
|
-
size: PropTypes__default[
|
|
64
|
-
buttonActionType: PropTypes__default[
|
|
65
|
-
onClick: PropTypes__default[
|
|
66
|
-
onFocus: PropTypes__default[
|
|
67
|
-
onBlur: PropTypes__default[
|
|
68
|
-
readOnly: PropTypes__default[
|
|
69
|
-
tabIndex: PropTypes__default[
|
|
60
|
+
className: PropTypes__default["default"].string,
|
|
61
|
+
disabled: PropTypes__default["default"].bool,
|
|
62
|
+
icon: PropTypes__default["default"].element,
|
|
63
|
+
size: PropTypes__default["default"].oneOf(propTypes.iconSizes),
|
|
64
|
+
buttonActionType: PropTypes__default["default"].oneOf(DSButton.buttonTypes),
|
|
65
|
+
onClick: PropTypes__default["default"].func,
|
|
66
|
+
onFocus: PropTypes__default["default"].func,
|
|
67
|
+
onBlur: PropTypes__default["default"].func,
|
|
68
|
+
readOnly: PropTypes__default["default"].bool,
|
|
69
|
+
tabIndex: PropTypes__default["default"].number
|
|
70
70
|
};
|
|
71
71
|
|
|
72
72
|
exports.Picker = Picker;
|
|
73
73
|
exports.PickerPropsTypes = PickerPropsTypes;
|
|
74
|
-
exports[
|
|
74
|
+
exports["default"] = Picker;
|