@elliemae/ds-date-time-recurrence-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/DSDateTimeRecurrenceSelector.js +91 -88
- package/cjs/__test__/DSDateTimeRecurrenceSelector.test.js +1 -1
- package/cjs/components/AlertModal/DateTimeRangeModal.js +53 -50
- package/cjs/components/CustomOptionRender/CustomOptionRender.js +28 -27
- package/cjs/components/DateTimeRangeModal/DateTimeRangeModal.js +17 -15
- package/cjs/components/DateTimeRangeModalImpl/DateTimeRangeModalImpl.js +26 -21
- package/cjs/components/DateTimeRecurenceSelectorImpl.js +37 -30
- package/cjs/components/DayOfMonthPicker/DayOfMonthPicker.js +20 -16
- package/cjs/components/DayOfYearPicker/DayOfYearPicker.js +19 -15
- package/cjs/components/DaysOfWeekPicker/DaysOfWeekPicker.js +33 -31
- package/cjs/components/EndDate/EndDate.js +30 -28
- package/cjs/components/FieldWrapper/FieldWrapper.js +6 -5
- package/cjs/components/LabelWrapper/LabelWrapper.js +6 -5
- package/cjs/components/RepeatPickerInput/RepeatPickerInput.js +22 -18
- package/cjs/components/StartDateTime/StartDateTime.js +22 -19
- package/cjs/components/TimeZonePicker/TimeZonePicker.js +24 -22
- package/cjs/components/ValidationMessage/ValidationMessage.js +8 -5
- package/cjs/index.js +1 -1
- package/esm/DSDateTimeRecurrenceSelector.js +90 -87
- package/esm/components/AlertModal/DateTimeRangeModal.js +53 -50
- package/esm/components/CustomOptionRender/CustomOptionRender.js +27 -26
- package/esm/components/DateTimeRangeModal/DateTimeRangeModal.js +14 -11
- package/esm/components/DateTimeRangeModalImpl/DateTimeRangeModalImpl.js +12 -7
- package/esm/components/DateTimeRecurenceSelectorImpl.js +29 -21
- package/esm/components/DayOfMonthPicker/DayOfMonthPicker.js +19 -14
- package/esm/components/DayOfYearPicker/DayOfYearPicker.js +18 -13
- package/esm/components/DaysOfWeekPicker/DaysOfWeekPicker.js +31 -25
- package/esm/components/EndDate/EndDate.js +30 -27
- package/esm/components/FieldWrapper/FieldWrapper.js +5 -4
- package/esm/components/LabelWrapper/LabelWrapper.js +5 -4
- package/esm/components/RepeatPickerInput/RepeatPickerInput.js +17 -11
- package/esm/components/StartDateTime/StartDateTime.js +22 -19
- package/esm/components/TimeZonePicker/TimeZonePicker.js +24 -21
- package/esm/components/ValidationMessage/ValidationMessage.js +8 -5
- package/package.json +12 -7
- package/types/DSDateTimeRecurrenceSelector.d.ts +276 -40
- package/cjs/package.json +0 -7
- package/esm/package.json +0 -7
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
4
4
|
require('react');
|
|
5
5
|
var DSDatePicker = require('@elliemae/ds-date-picker');
|
|
6
|
-
var DSTimePicker = require('@elliemae/ds-
|
|
6
|
+
var DSTimePicker = require('@elliemae/ds-time-picker');
|
|
7
7
|
var FormLabel = require('../Forms/FormLabel.js');
|
|
8
8
|
var FormFieldGroup = require('../Forms/FormFieldGroup.js');
|
|
9
9
|
var FormGroup = require('../Forms/FormGroup.js');
|
|
@@ -17,23 +17,26 @@ var DSTimePicker__default = /*#__PURE__*/_interopDefaultLegacy(DSTimePicker);
|
|
|
17
17
|
|
|
18
18
|
var _FormLabel;
|
|
19
19
|
|
|
20
|
-
const StartDateTime =
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
20
|
+
const StartDateTime = _ref => {
|
|
21
|
+
let {
|
|
22
|
+
onStartDateChange = () => null,
|
|
23
|
+
onStartTimeChange = () => null,
|
|
24
|
+
startDateValue = null,
|
|
25
|
+
startTimeValue = null,
|
|
26
|
+
startDayBlocked
|
|
27
|
+
} = _ref;
|
|
28
|
+
return /*#__PURE__*/_jsx__default["default"](FormGroup, {}, void 0, _FormLabel || (_FormLabel = /*#__PURE__*/_jsx__default["default"](FormLabel, {}, void 0, "Starts")), /*#__PURE__*/_jsx__default["default"](FormFieldGroup, {}, void 0, /*#__PURE__*/_jsx__default["default"](FormField, {}, void 0, /*#__PURE__*/_jsx__default["default"](DSDatePicker__default["default"], {
|
|
29
|
+
appendToBody: true,
|
|
30
|
+
date: startDateValue,
|
|
31
|
+
isDayBlocked: startDayBlocked,
|
|
32
|
+
keepOpenOnDateSelect: false,
|
|
33
|
+
onDateChange: onStartDateChange,
|
|
34
|
+
zIndex: 10
|
|
35
|
+
})), /*#__PURE__*/_jsx__default["default"](FormField, {}, void 0, /*#__PURE__*/_jsx__default["default"](DSTimePicker__default["default"], {
|
|
36
|
+
onChange: onStartTimeChange,
|
|
37
|
+
value: startTimeValue,
|
|
38
|
+
zIndex: 10
|
|
39
|
+
}))));
|
|
40
|
+
};
|
|
38
41
|
|
|
39
42
|
module.exports = StartDateTime;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
4
4
|
require('react');
|
|
5
5
|
var dsClassnames = require('@elliemae/ds-classnames');
|
|
6
|
-
var
|
|
6
|
+
var dsForm = require('@elliemae/ds-form');
|
|
7
7
|
var dropdownTimeZoneOptions = require('../../options/dropdownTimeZoneOptions.js');
|
|
8
8
|
var FieldWrapper = require('../FieldWrapper/FieldWrapper.js');
|
|
9
9
|
var LabelWrapper = require('../LabelWrapper/LabelWrapper.js');
|
|
@@ -11,32 +11,34 @@ var LabelWrapper = require('../LabelWrapper/LabelWrapper.js');
|
|
|
11
11
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
12
12
|
|
|
13
13
|
var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
14
|
-
var DSComboBox__default = /*#__PURE__*/_interopDefaultLegacy(DSComboBox);
|
|
15
14
|
|
|
16
15
|
const {
|
|
17
16
|
cssClassName,
|
|
18
17
|
classNameElement
|
|
19
18
|
} = dsClassnames.convertPropToCssClassName('timezone-picker-input-range-selector');
|
|
20
19
|
|
|
21
|
-
const TimeZonePicker =
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
}, void 0, /*#__PURE__*/_jsx__default[
|
|
31
|
-
|
|
32
|
-
}, void 0, /*#__PURE__*/_jsx__default[
|
|
33
|
-
|
|
34
|
-
}, void 0,
|
|
35
|
-
|
|
36
|
-
}, void 0,
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
20
|
+
const TimeZonePicker = _ref => {
|
|
21
|
+
let {
|
|
22
|
+
onTimezoneChange = () => null,
|
|
23
|
+
timezoneValue = dropdownTimeZoneOptions.dropdownTimeZoneOptions[0].value,
|
|
24
|
+
timezoneOptions = dropdownTimeZoneOptions.dropdownTimeZoneOptions,
|
|
25
|
+
inputLabel = 'Time Zone'
|
|
26
|
+
} = _ref;
|
|
27
|
+
return /*#__PURE__*/_jsx__default["default"]("div", {
|
|
28
|
+
className: "".concat(cssClassName)
|
|
29
|
+
}, void 0, /*#__PURE__*/_jsx__default["default"]("div", {
|
|
30
|
+
className: "grid-x"
|
|
31
|
+
}, void 0, /*#__PURE__*/_jsx__default["default"]("div", {
|
|
32
|
+
className: "cell medium-4 large-3"
|
|
33
|
+
}, void 0, /*#__PURE__*/_jsx__default["default"](LabelWrapper, {}, void 0, /*#__PURE__*/_jsx__default["default"]("div", {
|
|
34
|
+
className: "".concat(classNameElement('label'))
|
|
35
|
+
}, void 0, inputLabel))), /*#__PURE__*/_jsx__default["default"]("div", {
|
|
36
|
+
className: "cell medium-8 large-9"
|
|
37
|
+
}, void 0, /*#__PURE__*/_jsx__default["default"](FieldWrapper, {}, void 0, /*#__PURE__*/_jsx__default["default"](dsForm.DSComboBox, {
|
|
38
|
+
onChange: onTimezoneChange,
|
|
39
|
+
options: timezoneOptions,
|
|
40
|
+
value: timezoneValue
|
|
41
|
+
})))));
|
|
42
|
+
};
|
|
41
43
|
|
|
42
44
|
module.exports = TimeZonePicker;
|
|
@@ -12,10 +12,13 @@ const {
|
|
|
12
12
|
cssClassName
|
|
13
13
|
} = dsClassnames.convertPropToCssClassName('recurrence-selector-validation-message');
|
|
14
14
|
|
|
15
|
-
const ValidationMessage =
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
15
|
+
const ValidationMessage = _ref => {
|
|
16
|
+
let {
|
|
17
|
+
validationMessage = ''
|
|
18
|
+
} = _ref;
|
|
19
|
+
return /*#__PURE__*/_jsx__default["default"]("div", {
|
|
20
|
+
className: cssClassName
|
|
21
|
+
}, void 0, validationMessage);
|
|
22
|
+
};
|
|
20
23
|
|
|
21
24
|
module.exports = ValidationMessage;
|
package/cjs/index.js
CHANGED
|
@@ -15,7 +15,7 @@ var dropdownTimeZoneOptions = require('./options/dropdownTimeZoneOptions.js');
|
|
|
15
15
|
|
|
16
16
|
exports.DSDateTimeRecurrenceSelector = DSDateTimeRecurrenceSelector.DSDateTimeRecurrenceSelector;
|
|
17
17
|
exports.DateTimeRecurenceSelectorWithSchema = DSDateTimeRecurrenceSelector.DateTimeRecurenceSelectorWithSchema;
|
|
18
|
-
exports
|
|
18
|
+
exports["default"] = DSDateTimeRecurrenceSelector.DSDateTimeRecurrenceSelector;
|
|
19
19
|
exports.endTimesOptions = endTypesOptions.endTimesOptions;
|
|
20
20
|
exports.endTypes = endTypesOptions.endTypes;
|
|
21
21
|
exports.endTypesOptions = endTypesOptions.endTypesOptions;
|
|
@@ -18,93 +18,96 @@ import CustomOptionRender from './components/CustomOptionRender/CustomOptionRend
|
|
|
18
18
|
import { dropdownTimeZoneOptions } from './options/dropdownTimeZoneOptions.js';
|
|
19
19
|
export { DropdownTimeZoneTypes, dropdownTimeZoneOptions } from './options/dropdownTimeZoneOptions.js';
|
|
20
20
|
|
|
21
|
-
const DSDateTimeRecurrenceSelector =
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
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
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
21
|
+
const DSDateTimeRecurrenceSelector = _ref => {
|
|
22
|
+
let {
|
|
23
|
+
containerProps = {},
|
|
24
|
+
className = '',
|
|
25
|
+
preselectedOptions = dropdownPreselectedOptions,
|
|
26
|
+
repeatOptions = dropdownRepeatOptions,
|
|
27
|
+
endTypesOptions: endTypesOptions$1 = endTypesOptions,
|
|
28
|
+
endTimesOptions: endTimesOptions$1 = endTimesOptions,
|
|
29
|
+
dayOfWeekOptions = dropdownDayOfWeekOptions,
|
|
30
|
+
dayOfWeekOptionsEnable = true,
|
|
31
|
+
dayOfMonthOptions = dropdownDayOfMonthOptions,
|
|
32
|
+
dayOfMonthOptionsEnable = true,
|
|
33
|
+
dayOfYearOptions = dropdownDayOfYearOptions,
|
|
34
|
+
dayOfYearOptionsEnable = true,
|
|
35
|
+
displayMonthCustomOption = false,
|
|
36
|
+
displayYearCustomOption = false,
|
|
37
|
+
dayOfMonthAsCurrentDateOptions = ['numberOfMonth', 'dayOfTheWeekOfMonth'],
|
|
38
|
+
dayOfYearAsCurrentDateOptions = ['numberOfYear', 'dayOfTheMonthOfYear'],
|
|
39
|
+
onChange = () => null,
|
|
40
|
+
placeholder = 'Select Range',
|
|
41
|
+
modalSize = 'medium',
|
|
42
|
+
modalTitle = 'Report Scheduling',
|
|
43
|
+
confirmLabel = 'Apply',
|
|
44
|
+
rejectLabel = 'Cancel',
|
|
45
|
+
modalType = 'confirm',
|
|
46
|
+
onConfirmField = () => null,
|
|
47
|
+
onRejectField = () => null,
|
|
48
|
+
openModal = false,
|
|
49
|
+
appElement = '#root',
|
|
50
|
+
value = null,
|
|
51
|
+
customRange = null,
|
|
52
|
+
customOptionRender = CustomOptionRender,
|
|
53
|
+
displayCurrentMonthYear = true,
|
|
54
|
+
timeZoneOptions = dropdownTimeZoneOptions,
|
|
55
|
+
useTimezoneSelector = false,
|
|
56
|
+
allowMultipleDaysOfWeek = false,
|
|
57
|
+
advanceOption = {
|
|
58
|
+
label: 'Custom',
|
|
59
|
+
value: 'custom-range',
|
|
60
|
+
isAdvance: true
|
|
61
|
+
},
|
|
62
|
+
isValidRecurrence = () => true,
|
|
63
|
+
validationMessage = '',
|
|
64
|
+
endDayBlocked = () => false,
|
|
65
|
+
startDayBlocked = () => false,
|
|
66
|
+
repeatFrecuencyCustomProps = {}
|
|
67
|
+
} = _ref;
|
|
68
|
+
return /*#__PURE__*/_jsx(DateTimeRecurenceSelectorImpl, {
|
|
69
|
+
advanceOption: advanceOption,
|
|
70
|
+
allowMultipleDaysOfWeek: allowMultipleDaysOfWeek,
|
|
71
|
+
appElement: appElement,
|
|
72
|
+
className: className,
|
|
73
|
+
confirmLabel: confirmLabel,
|
|
74
|
+
containerProps: containerProps,
|
|
75
|
+
customOptionRender: customOptionRender,
|
|
76
|
+
customRange: customRange,
|
|
77
|
+
dayOfMonthAsCurrentDateOptions: dayOfMonthAsCurrentDateOptions,
|
|
78
|
+
dayOfMonthOptionsEnable: dayOfMonthOptionsEnable,
|
|
79
|
+
dayOfWeekOptionsEnable: dayOfWeekOptionsEnable,
|
|
80
|
+
dayOfYearAsCurrentDateOptions: dayOfYearAsCurrentDateOptions,
|
|
81
|
+
dayOfYearOptionsEnable: dayOfYearOptionsEnable,
|
|
82
|
+
displayCurrentMonthYear: displayCurrentMonthYear,
|
|
83
|
+
displayMonthCustomOption: displayMonthCustomOption,
|
|
84
|
+
displayYearCustomOption: displayYearCustomOption,
|
|
85
|
+
dropdownDayOfMonthOptions: dayOfMonthOptions,
|
|
86
|
+
dropdownDayOfWeekOptions: dayOfWeekOptions,
|
|
87
|
+
dropdownDayOfYearOptions: dayOfYearOptions,
|
|
88
|
+
dropdownPreselectedOptions: preselectedOptions,
|
|
89
|
+
dropdownRepeatOptions: repeatOptions,
|
|
90
|
+
endDayBlocked: endDayBlocked,
|
|
91
|
+
endTimesOptions: endTimesOptions$1,
|
|
92
|
+
endTypesOptions: endTypesOptions$1,
|
|
93
|
+
isValidRecurrence: isValidRecurrence,
|
|
94
|
+
modalSize: modalSize,
|
|
95
|
+
modalTitle: modalTitle,
|
|
96
|
+
modalType: modalType,
|
|
97
|
+
onChange: onChange,
|
|
98
|
+
onConfirmField: onConfirmField,
|
|
99
|
+
onRejectField: onRejectField,
|
|
100
|
+
openModal: openModal,
|
|
101
|
+
placeholder: placeholder,
|
|
102
|
+
rejectLabel: rejectLabel,
|
|
103
|
+
repeatFrecuencyCustomProps: repeatFrecuencyCustomProps,
|
|
104
|
+
startDayBlocked: startDayBlocked,
|
|
105
|
+
timeZoneOptions: timeZoneOptions,
|
|
106
|
+
useTimezoneSelector: useTimezoneSelector,
|
|
107
|
+
validationMessage: validationMessage,
|
|
108
|
+
value: value
|
|
109
|
+
});
|
|
110
|
+
};
|
|
108
111
|
const dateTimeRecurrenceSelectorProps = {
|
|
109
112
|
containerProps: PropTypes.shape({}).description('Set of Properties attached to the main container'),
|
|
110
113
|
className: PropTypes.string.description('html class attribute'),
|
|
@@ -3,55 +3,58 @@ import 'react';
|
|
|
3
3
|
import DSModal from '@elliemae/ds-modal';
|
|
4
4
|
import DateTimePredefinedRangeSelectorImpl from '../DateTimeRangeModalImpl/DateTimeRangeModalImpl.js';
|
|
5
5
|
|
|
6
|
-
const DateTimeRangeModal =
|
|
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
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
6
|
+
const DateTimeRangeModal = _ref => {
|
|
7
|
+
let {
|
|
8
|
+
isOpen = false,
|
|
9
|
+
onClose = () => null,
|
|
10
|
+
modalTitle = 'Report Scheduling',
|
|
11
|
+
modalSize = 'medium ',
|
|
12
|
+
confirmLabel = 'Apply',
|
|
13
|
+
rejectLabel = 'Cancel',
|
|
14
|
+
modalType = 'confirm',
|
|
15
|
+
onConfirmField = () => null,
|
|
16
|
+
onRejectField = () => null,
|
|
17
|
+
appElement = null,
|
|
18
|
+
onCustomDateTimeRange = () => null,
|
|
19
|
+
displayCurrentMonthYear = true,
|
|
20
|
+
dropdownDayOfMonthOptions = [],
|
|
21
|
+
dropdownDayOfWeekOptions = [],
|
|
22
|
+
dropdownDayOfYearOptions = [],
|
|
23
|
+
dropdownRepeatOptions = [],
|
|
24
|
+
rangeValue = {},
|
|
25
|
+
dayOfMonthOptionsEnable = true,
|
|
26
|
+
dayOfWeekOptionsEnable = true,
|
|
27
|
+
dayOfYearOptionsEnable = true,
|
|
28
|
+
timeZoneOptions = [],
|
|
29
|
+
useTimezoneSelector = false,
|
|
30
|
+
allowMultipleDaysOfWeek = false
|
|
31
|
+
} = _ref;
|
|
32
|
+
return /*#__PURE__*/_jsx(DSModal, {
|
|
33
|
+
appElement: appElement,
|
|
34
|
+
confirmLabel: confirmLabel,
|
|
35
|
+
isOpen: isOpen,
|
|
36
|
+
modalTitle: modalTitle,
|
|
37
|
+
modalType: modalType,
|
|
38
|
+
onClose: onClose,
|
|
39
|
+
onConfirm: onConfirmField,
|
|
40
|
+
onReject: onRejectField,
|
|
41
|
+
rejectLabel: rejectLabel,
|
|
42
|
+
size: modalSize
|
|
43
|
+
}, void 0, /*#__PURE__*/_jsx(DateTimePredefinedRangeSelectorImpl, {
|
|
44
|
+
allowMultipleDaysOfWeek: allowMultipleDaysOfWeek,
|
|
45
|
+
dayOfMonthOptionsEnable: dayOfMonthOptionsEnable,
|
|
46
|
+
dayOfWeekOptionsEnable: dayOfWeekOptionsEnable,
|
|
47
|
+
dayOfYearOptionsEnable: dayOfYearOptionsEnable,
|
|
48
|
+
displayCurrentMonthYear: displayCurrentMonthYear,
|
|
49
|
+
dropdownDayOfMonthOptions: dropdownDayOfMonthOptions,
|
|
50
|
+
dropdownDayOfWeekOptions: dropdownDayOfWeekOptions,
|
|
51
|
+
dropdownDayOfYearOptions: dropdownDayOfYearOptions,
|
|
52
|
+
dropdownRepeatOptions: dropdownRepeatOptions,
|
|
53
|
+
onCustomDateTimeRange: onCustomDateTimeRange,
|
|
54
|
+
rangeValue: rangeValue,
|
|
55
|
+
timeZoneOptions: timeZoneOptions,
|
|
56
|
+
useTimezoneSelector: useTimezoneSelector
|
|
57
|
+
}));
|
|
58
|
+
};
|
|
56
59
|
|
|
57
60
|
export { DateTimeRangeModal as default };
|
|
@@ -42,44 +42,45 @@ timezonePickerInput
|
|
|
42
42
|
}
|
|
43
43
|
*/
|
|
44
44
|
|
|
45
|
-
const CustomOptionRender =
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
45
|
+
const CustomOptionRender = _ref => {
|
|
46
|
+
let {
|
|
47
|
+
customRange: {
|
|
48
|
+
startDateInput,
|
|
49
|
+
startTimeInput,
|
|
50
|
+
qtyRepeatPickerInput,
|
|
51
|
+
typeRepeatPickerInput,
|
|
52
|
+
dayWeekRepeatPickerInput,
|
|
53
|
+
endDateInput,
|
|
54
|
+
endTypeInput,
|
|
55
|
+
endTimesInput,
|
|
56
|
+
dayOfMonthRepeatPickerInput,
|
|
57
|
+
dayOfYearRepeatPickerInput,
|
|
58
|
+
timezonePickerInput
|
|
59
|
+
},
|
|
60
|
+
dayOfMonthOptionsEnable,
|
|
61
|
+
dayOfWeekOptionsEnable,
|
|
62
|
+
dayOfYearOptionsEnable,
|
|
63
|
+
useTimezoneSelector
|
|
64
|
+
} = _ref;
|
|
64
65
|
let display = 'Custom'; // frequency
|
|
65
66
|
|
|
66
|
-
if (qtyRepeatPickerInput === 1) display = typeRepeat[typeRepeatPickerInput];else display =
|
|
67
|
+
if (qtyRepeatPickerInput === 1) display = typeRepeat[typeRepeatPickerInput];else display = "every ".concat(qtyRepeatPickerInput, " ").concat(typeRepeatPickerInput, "s"); // type
|
|
67
68
|
|
|
68
69
|
if (typeRepeatPickerInput === DropdownRepeatOptionsTypes.WEEK) {
|
|
69
|
-
display += dayOfWeekOptionsEnable ?
|
|
70
|
+
display += dayOfWeekOptionsEnable ? " on ".concat(dayWeekRepeatPickerInput, " ") : '';
|
|
70
71
|
} else if (typeRepeatPickerInput === DropdownRepeatOptionsTypes.MONTH) {
|
|
71
|
-
display += dayOfMonthOptionsEnable ?
|
|
72
|
+
display += dayOfMonthOptionsEnable ? " ".concat(dayOfMonthRepeatPickerInput, " ") : '';
|
|
72
73
|
} else if (typeRepeatPickerInput === DropdownRepeatOptionsTypes.YEAR) {
|
|
73
|
-
display += dayOfYearOptionsEnable ?
|
|
74
|
+
display += dayOfYearOptionsEnable ? " ".concat(dayOfYearRepeatPickerInput, " ") : '';
|
|
74
75
|
} // start & end
|
|
75
76
|
|
|
76
77
|
|
|
77
78
|
if (startDateInput && startDateInput.format) {
|
|
78
|
-
display +=
|
|
79
|
+
display += " starting on ".concat(startDateInput.format('MM/DD/YYYY'), " at ").concat(startTimeInput.format('HH:mm A'));
|
|
79
80
|
}
|
|
80
81
|
|
|
81
|
-
if (endTypeInput === endTypes.ON) display +=
|
|
82
|
-
if (useTimezoneSelector && timezonePickerInput) display +=
|
|
82
|
+
if (endTypeInput === endTypes.ON) display += ", until ".concat(endDateInput.format('MM/DD/YYYY'), " ");else if (endTypeInput === endTypes.AFTER) display += ", for ".concat(endTimesInput, " times");
|
|
83
|
+
if (useTimezoneSelector && timezonePickerInput) display += " [".concat(timezonePickerInput, "]");
|
|
83
84
|
return /*#__PURE__*/_jsx("em", {}, void 0, display);
|
|
84
85
|
};
|
|
85
86
|
|
|
@@ -1,27 +1,30 @@
|
|
|
1
1
|
import _jsx from '@babel/runtime/helpers/esm/jsx';
|
|
2
|
-
import
|
|
2
|
+
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
3
3
|
import React from 'react';
|
|
4
4
|
import DSModal from '@elliemae/ds-modal';
|
|
5
5
|
import DateTimePredefinedRangeSelectorImpl from '../DateTimeRangeModalImpl/DateTimeRangeModalImpl.js';
|
|
6
6
|
|
|
7
7
|
class DateTimeRangeModal extends React.Component {
|
|
8
|
-
constructor(
|
|
9
|
-
|
|
8
|
+
constructor() {
|
|
9
|
+
var _this;
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
super(...arguments);
|
|
12
|
+
_this = this;
|
|
13
|
+
this.state = {
|
|
12
14
|
isValid: true
|
|
13
|
-
}
|
|
15
|
+
};
|
|
14
16
|
|
|
15
|
-
|
|
17
|
+
this.updateIsValid = function () {
|
|
16
18
|
const {
|
|
17
19
|
onCustomDateTimeRange = () => null,
|
|
18
20
|
isValidRecurrence
|
|
19
|
-
} =
|
|
20
|
-
onCustomDateTimeRange(...
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
} = _this.props;
|
|
22
|
+
onCustomDateTimeRange(...arguments);
|
|
23
|
+
|
|
24
|
+
_this.setState({
|
|
25
|
+
isValid: isValidRecurrence(...arguments)
|
|
23
26
|
});
|
|
24
|
-
}
|
|
27
|
+
};
|
|
25
28
|
}
|
|
26
29
|
|
|
27
30
|
render() {
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
2
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
3
|
+
import 'core-js/modules/esnext.iterator.filter.js';
|
|
4
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
5
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
1
6
|
import _jsx from '@babel/runtime/helpers/esm/jsx';
|
|
2
7
|
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
3
8
|
import 'core-js/modules/es.string.replace.js';
|
|
@@ -29,20 +34,20 @@ class DateTimePredefinedRangeSelectorImpl extends Component {
|
|
|
29
34
|
constructor(props) {
|
|
30
35
|
super(props);
|
|
31
36
|
|
|
32
|
-
|
|
37
|
+
this.onChange = () => {
|
|
33
38
|
const {
|
|
34
39
|
onCustomDateTimeRange
|
|
35
40
|
} = this.props;
|
|
36
41
|
onCustomDateTimeRange(this.state);
|
|
37
|
-
}
|
|
42
|
+
};
|
|
38
43
|
|
|
39
|
-
|
|
44
|
+
this.onQtyRepeatPickerInput = value => {
|
|
40
45
|
this.setState({
|
|
41
46
|
qtyRepeatPickerInput: value.replace(/[^0-9]/g, '')
|
|
42
47
|
}, () => {
|
|
43
48
|
this.onChange();
|
|
44
49
|
});
|
|
45
|
-
}
|
|
50
|
+
};
|
|
46
51
|
|
|
47
52
|
const {
|
|
48
53
|
dropdownDayOfMonthOptions,
|
|
@@ -168,7 +173,7 @@ class DateTimePredefinedRangeSelectorImpl extends Component {
|
|
|
168
173
|
dayOfMonthRepeatPickerInput: value,
|
|
169
174
|
dayOfMonthRepeatPickerKey: option.dayOfMonthRepeatPickerKey,
|
|
170
175
|
alertModal: option.number > 28 || (option.numberLabel || '').includes('Fifth'),
|
|
171
|
-
alertReplace: option.number ||
|
|
176
|
+
alertReplace: option.number || "".concat(option.numberLabel, " ")
|
|
172
177
|
}, () => {
|
|
173
178
|
this.onChange();
|
|
174
179
|
});
|
|
@@ -231,7 +236,7 @@ class DateTimePredefinedRangeSelectorImpl extends Component {
|
|
|
231
236
|
displayYearCustomOption
|
|
232
237
|
} = this.props;
|
|
233
238
|
return /*#__PURE__*/_jsx("div", {
|
|
234
|
-
className:
|
|
239
|
+
className: "".concat(cssClassName)
|
|
235
240
|
}, void 0, /*#__PURE__*/_jsx(StartDateTime, {
|
|
236
241
|
onStartDateChange: this.onStartDateChangeInput,
|
|
237
242
|
onStartTimeChange: this.onStartTimeChangeInput,
|
|
@@ -283,7 +288,7 @@ class DateTimePredefinedRangeSelectorImpl extends Component {
|
|
|
283
288
|
}), /*#__PURE__*/_jsx(DSModal, {
|
|
284
289
|
className: "datetime-alert-modal",
|
|
285
290
|
isOpen: alertModal,
|
|
286
|
-
modalTitle:
|
|
291
|
+
modalTitle: "Some months have fewer than ".concat(alertReplace, " days") // modalType={modalType}
|
|
287
292
|
,
|
|
288
293
|
onClose: () => this.setState({
|
|
289
294
|
alertModal: false
|