@elliemae/ds-date-time-recurrence-picker 2.2.0 → 2.3.0-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/cjs/DSDateTimeRecurrenceSelector.js +226 -195
  2. package/cjs/DSDateTimeRecurrenceSelector.js.map +7 -0
  3. package/cjs/components/AlertModal/DateTimeRangeModal.js +87 -66
  4. package/cjs/components/AlertModal/DateTimeRangeModal.js.map +7 -0
  5. package/cjs/components/CustomOptionRender/CustomOptionRender.js +81 -88
  6. package/cjs/components/CustomOptionRender/CustomOptionRender.js.map +7 -0
  7. package/cjs/components/DateTimeRangeModal/DateTimeRangeModal.js +81 -69
  8. package/cjs/components/DateTimeRangeModal/DateTimeRangeModal.js.map +7 -0
  9. package/cjs/components/DateTimeRangeModalImpl/DateTimeRangeModalImpl.js +105 -149
  10. package/cjs/components/DateTimeRangeModalImpl/DateTimeRangeModalImpl.js.map +7 -0
  11. package/cjs/components/DateTimeRecurenceSelectorImpl.js +142 -172
  12. package/cjs/components/DateTimeRecurenceSelectorImpl.js.map +7 -0
  13. package/cjs/components/DayOfMonthPicker/DayOfMonthPicker.js +64 -51
  14. package/cjs/components/DayOfMonthPicker/DayOfMonthPicker.js.map +7 -0
  15. package/cjs/components/DayOfYearPicker/DayOfYearPicker.js +62 -47
  16. package/cjs/components/DayOfYearPicker/DayOfYearPicker.js.map +7 -0
  17. package/cjs/components/DaysOfWeekPicker/DaysOfWeekPicker.js +66 -56
  18. package/cjs/components/DaysOfWeekPicker/DaysOfWeekPicker.js.map +7 -0
  19. package/cjs/components/EndDate/EndDate.js +68 -49
  20. package/cjs/components/EndDate/EndDate.js.map +7 -0
  21. package/cjs/components/FieldWrapper/FieldWrapper.js +42 -23
  22. package/cjs/components/FieldWrapper/FieldWrapper.js.map +7 -0
  23. package/cjs/components/Forms/FormField.js +36 -7
  24. package/cjs/components/Forms/FormField.js.map +7 -0
  25. package/cjs/components/Forms/FormFieldGroup.js +36 -7
  26. package/cjs/components/Forms/FormFieldGroup.js.map +7 -0
  27. package/cjs/components/Forms/FormGroup.js +36 -11
  28. package/cjs/components/Forms/FormGroup.js.map +7 -0
  29. package/cjs/components/Forms/FormLabel.js +36 -7
  30. package/cjs/components/Forms/FormLabel.js.map +7 -0
  31. package/cjs/components/LabelWrapper/LabelWrapper.js +42 -23
  32. package/cjs/components/LabelWrapper/LabelWrapper.js.map +7 -0
  33. package/cjs/components/RepeatPickerInput/RepeatPickerInput.js +63 -58
  34. package/cjs/components/RepeatPickerInput/RepeatPickerInput.js.map +7 -0
  35. package/cjs/components/StartDateTime/StartDateTime.js +59 -41
  36. package/cjs/components/StartDateTime/StartDateTime.js.map +7 -0
  37. package/cjs/components/TimeZonePicker/TimeZonePicker.js +61 -43
  38. package/cjs/components/TimeZonePicker/TimeZonePicker.js.map +7 -0
  39. package/cjs/components/ValidationMessage/ValidationMessage.js +40 -23
  40. package/cjs/components/ValidationMessage/ValidationMessage.js.map +7 -0
  41. package/cjs/components/helpers/nthday.js +62 -13
  42. package/cjs/components/helpers/nthday.js.map +7 -0
  43. package/cjs/index.js +36 -29
  44. package/cjs/index.js.map +7 -0
  45. package/cjs/options/dropdownDayOfMonthOptions.js +44 -13
  46. package/cjs/options/dropdownDayOfMonthOptions.js.map +7 -0
  47. package/cjs/options/dropdownDayOfWeekOptions.js +64 -28
  48. package/cjs/options/dropdownDayOfWeekOptions.js.map +7 -0
  49. package/cjs/options/dropdownDayOfYearOptions.js +44 -13
  50. package/cjs/options/dropdownDayOfYearOptions.js.map +7 -0
  51. package/cjs/options/dropdownPreselectedOptions.js +57 -24
  52. package/cjs/options/dropdownPreselectedOptions.js.map +7 -0
  53. package/cjs/options/dropdownRepeatOptions.js +57 -24
  54. package/cjs/options/dropdownRepeatOptions.js.map +7 -0
  55. package/cjs/options/dropdownTimeZoneOptions.js +67 -32
  56. package/cjs/options/dropdownTimeZoneOptions.js.map +7 -0
  57. package/cjs/options/endTypesOptions.js +75 -37
  58. package/cjs/options/endTypesOptions.js.map +7 -0
  59. package/esm/DSDateTimeRecurrenceSelector.js +180 -155
  60. package/esm/DSDateTimeRecurrenceSelector.js.map +7 -0
  61. package/esm/components/AlertModal/DateTimeRangeModal.js +58 -59
  62. package/esm/components/AlertModal/DateTimeRangeModal.js.map +7 -0
  63. package/esm/components/CustomOptionRender/CustomOptionRender.js +49 -79
  64. package/esm/components/CustomOptionRender/CustomOptionRender.js.map +7 -0
  65. package/esm/components/DateTimeRangeModal/DateTimeRangeModal.js +52 -61
  66. package/esm/components/DateTimeRangeModal/DateTimeRangeModal.js.map +7 -0
  67. package/esm/components/DateTimeRangeModalImpl/DateTimeRangeModalImpl.js +67 -131
  68. package/esm/components/DateTimeRangeModalImpl/DateTimeRangeModalImpl.js.map +7 -0
  69. package/esm/components/DateTimeRecurenceSelectorImpl.js +111 -163
  70. package/esm/components/DateTimeRecurenceSelectorImpl.js.map +7 -0
  71. package/esm/components/DayOfMonthPicker/DayOfMonthPicker.js +35 -45
  72. package/esm/components/DayOfMonthPicker/DayOfMonthPicker.js.map +7 -0
  73. package/esm/components/DayOfYearPicker/DayOfYearPicker.js +33 -41
  74. package/esm/components/DayOfYearPicker/DayOfYearPicker.js.map +7 -0
  75. package/esm/components/DaysOfWeekPicker/DaysOfWeekPicker.js +37 -50
  76. package/esm/components/DaysOfWeekPicker/DaysOfWeekPicker.js.map +7 -0
  77. package/esm/components/EndDate/EndDate.js +39 -42
  78. package/esm/components/EndDate/EndDate.js.map +7 -0
  79. package/esm/components/FieldWrapper/FieldWrapper.js +13 -17
  80. package/esm/components/FieldWrapper/FieldWrapper.js.map +7 -0
  81. package/esm/components/Forms/FormField.js +7 -5
  82. package/esm/components/Forms/FormField.js.map +7 -0
  83. package/esm/components/Forms/FormFieldGroup.js +7 -5
  84. package/esm/components/Forms/FormFieldGroup.js.map +7 -0
  85. package/esm/components/Forms/FormGroup.js +7 -9
  86. package/esm/components/Forms/FormGroup.js.map +7 -0
  87. package/esm/components/Forms/FormLabel.js +7 -5
  88. package/esm/components/Forms/FormLabel.js.map +7 -0
  89. package/esm/components/LabelWrapper/LabelWrapper.js +13 -17
  90. package/esm/components/LabelWrapper/LabelWrapper.js.map +7 -0
  91. package/esm/components/RepeatPickerInput/RepeatPickerInput.js +34 -50
  92. package/esm/components/RepeatPickerInput/RepeatPickerInput.js.map +7 -0
  93. package/esm/components/StartDateTime/StartDateTime.js +30 -33
  94. package/esm/components/StartDateTime/StartDateTime.js.map +7 -0
  95. package/esm/components/TimeZonePicker/TimeZonePicker.js +32 -37
  96. package/esm/components/TimeZonePicker/TimeZonePicker.js.map +7 -0
  97. package/esm/components/ValidationMessage/ValidationMessage.js +11 -17
  98. package/esm/components/ValidationMessage/ValidationMessage.js.map +7 -0
  99. package/esm/components/helpers/nthday.js +33 -6
  100. package/esm/components/helpers/nthday.js.map +7 -0
  101. package/esm/index.js +7 -8
  102. package/esm/index.js.map +7 -0
  103. package/esm/options/dropdownDayOfMonthOptions.js +15 -9
  104. package/esm/options/dropdownDayOfMonthOptions.js.map +7 -0
  105. package/esm/options/dropdownDayOfWeekOptions.js +35 -24
  106. package/esm/options/dropdownDayOfWeekOptions.js.map +7 -0
  107. package/esm/options/dropdownDayOfYearOptions.js +15 -9
  108. package/esm/options/dropdownDayOfYearOptions.js.map +7 -0
  109. package/esm/options/dropdownPreselectedOptions.js +28 -19
  110. package/esm/options/dropdownPreselectedOptions.js.map +7 -0
  111. package/esm/options/dropdownRepeatOptions.js +28 -19
  112. package/esm/options/dropdownRepeatOptions.js.map +7 -0
  113. package/esm/options/dropdownTimeZoneOptions.js +38 -27
  114. package/esm/options/dropdownTimeZoneOptions.js.map +7 -0
  115. package/esm/options/endTypesOptions.js +46 -31
  116. package/esm/options/endTypesOptions.js.map +7 -0
  117. package/package.json +6 -6
  118. package/cjs/__test__/DSDateTimeRecurrenceSelector.test.js +0 -30
  119. package/esm/__test__/DSDateTimeRecurrenceSelector.test.js +0 -24
@@ -1,83 +1,69 @@
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 lodash = require('lodash');
15
- require('react-dates/initialize');
16
- var reactSelect = require('react-select');
17
- var dsClassnames = require('@elliemae/ds-classnames');
18
- var dsForm = require('@elliemae/ds-form');
19
- var DateTimeRangeModal = require('./DateTimeRangeModal/DateTimeRangeModal.js');
20
- var jsxRuntime = require('react/jsx-runtime');
21
-
22
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
23
-
24
- var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
25
- var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
26
-
27
- 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; }
28
-
29
- 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; }
30
- const {
31
- cssClassName,
32
- classNameElement,
33
- classNameBlock
34
- } = dsClassnames.convertPropToCssClassName('date-time-predefined-range-selector');
35
-
36
- class DateTimeRecurenceSelectorImpl extends React.Component {
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
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 DateTimeRecurenceSelectorImpl_exports = {};
29
+ __export(DateTimeRecurenceSelectorImpl_exports, {
30
+ default: () => DateTimeRecurenceSelectorImpl_default
31
+ });
32
+ var React = __toESM(require("react"));
33
+ var import_react = __toESM(require("react"));
34
+ var import_lodash = require("lodash");
35
+ var import_initialize = require("react-dates/initialize");
36
+ var import_react_select = require("react-select");
37
+ var import_ds_classnames = require("@elliemae/ds-classnames");
38
+ var import_ds_form = require("@elliemae/ds-form");
39
+ var import_DateTimeRangeModal = __toESM(require("./DateTimeRangeModal/DateTimeRangeModal"));
40
+ const { cssClassName, classNameElement, classNameBlock } = (0, import_ds_classnames.convertPropToCssClassName)("date-time-predefined-range-selector");
41
+ class DateTimeRecurenceSelectorImpl extends import_react.Component {
37
42
  constructor(props) {
38
43
  super(props);
39
-
40
44
  this.onChange = () => {
41
- const {
42
- onChange
43
- } = this.props;
44
- const {
45
- customRange,
46
- selected
47
- } = this.state;
45
+ const { onChange } = this.props;
46
+ const { customRange, selected } = this.state;
48
47
  onChange(selected, customRange);
49
48
  };
50
-
51
- this.onCustomDateTimeRange = customRange => {
52
- this.setState({
53
- customRange
54
- });
49
+ this.onCustomDateTimeRange = (customRange) => {
50
+ this.setState({ customRange });
55
51
  };
56
-
57
- this.onChangeDropdown = value => {
58
- const {
59
- dropdownPreselectedOptions
60
- } = this.props;
61
- const selected = dropdownPreselectedOptions.find(op => op.value === value);
62
- const {
63
- onChange
64
- } = this.props;
65
-
52
+ this.onChangeDropdown = (value) => {
53
+ const { dropdownPreselectedOptions } = this.props;
54
+ const selected = dropdownPreselectedOptions.find((op) => op.value === value);
55
+ const { onChange } = this.props;
66
56
  if (!selected) {
67
- this.setState(previousState => ({
57
+ this.setState((previousState) => ({
68
58
  selected: value,
69
59
  previousSelection: previousState.selected
70
60
  }));
71
61
  this.handleOpenModal();
72
62
  } else if (selected) {
73
63
  onChange(value);
74
- this.setState({
75
- selected: value,
76
- openModal: false
77
- });
64
+ this.setState({ selected: value, openModal: false });
78
65
  }
79
66
  };
80
-
81
67
  this.handleConfirm = () => {
82
68
  const {
83
69
  onConfirmField,
@@ -88,60 +74,48 @@ class DateTimeRecurenceSelectorImpl extends React.Component {
88
74
  useTimezoneSelector,
89
75
  allowMultipleDaysOfWeek
90
76
  } = this.props;
91
- const {
92
- customRange
93
- } = this.state;
94
- this.props.advanceOption.label = /*#__PURE__*/_jsx__default["default"](CustomOptionRender, {
95
- allowMultipleDaysOfWeek: allowMultipleDaysOfWeek,
96
- customRange: customRange,
97
- dayOfMonthOptionsEnable: dayOfMonthOptionsEnable,
98
- dayOfWeekOptionsEnable: dayOfWeekOptionsEnable,
99
- dayOfYearOptionsEnable: dayOfYearOptionsEnable,
100
- useTimezoneSelector: useTimezoneSelector
77
+ const { customRange } = this.state;
78
+ this.props.advanceOption.label = /* @__PURE__ */ import_react.default.createElement(CustomOptionRender, {
79
+ allowMultipleDaysOfWeek,
80
+ customRange,
81
+ dayOfMonthOptionsEnable,
82
+ dayOfWeekOptionsEnable,
83
+ dayOfYearOptionsEnable,
84
+ useTimezoneSelector
101
85
  });
102
86
  this.onChange();
103
87
  this.handleCloseModal();
104
88
  onConfirmField();
105
89
  };
106
-
107
90
  this.handleReject = () => {
108
- const {
109
- onRejectField
110
- } = this.props;
91
+ const { onRejectField } = this.props;
111
92
  this.handleActionClose();
112
93
  onRejectField();
113
94
  };
114
-
115
95
  this.handleActionClose = () => {
116
- this.setState(previousState => ({
96
+ this.setState((previousState) => ({
117
97
  selected: previousState.previousSelection
118
98
  }));
119
99
  this.handleCloseModal();
120
100
  };
121
-
122
- this.handleOpenModal = () => this.setState({
123
- openModal: true
124
- });
125
-
101
+ this.handleOpenModal = () => this.setState({ openModal: true });
126
102
  this.handleCloseModal = () => {
127
- this.setState({
128
- openModal: false
129
- });
130
- setTimeout(() => document.activeElement.blur(), 0); // https://github.com/reactjs/react-modal/issues/680
103
+ this.setState({ openModal: false });
104
+ setTimeout(() => document.activeElement.blur(), 0);
131
105
  };
132
-
133
106
  this.initCustomRange = props.customRange;
134
107
  this.state = {
135
- // eslint-disable-next-line react/no-unused-state
136
- previousCustomRange: _objectSpread({}, props.customRange),
108
+ previousCustomRange: {
109
+ ...props.customRange
110
+ },
137
111
  openModal: props.openModal || false,
138
112
  selected: props.value,
139
- customRange: _objectSpread({}, props.customRange)
113
+ customRange: {
114
+ ...props.customRange
115
+ }
140
116
  };
141
-
142
117
  if (props.value === props.advanceOption.value) {
143
- // eslint-disable-next-line no-param-reassign
144
- props.advanceOption.label = /*#__PURE__*/_jsx__default["default"](props.customOptionRender, {
118
+ props.advanceOption.label = /* @__PURE__ */ import_react.default.createElement(props.customOptionRender, {
145
119
  allowMultipleDaysOfWeek: props.allowMultipleDaysOfWeek,
146
120
  customRange: props.customRange,
147
121
  dayOfMonthOptionsEnable: props.dayOfMonthOptionsEnable,
@@ -151,12 +125,10 @@ class DateTimeRecurenceSelectorImpl extends React.Component {
151
125
  });
152
126
  }
153
127
  }
154
-
155
128
  static getDerivedStateFromProps(props, state) {
156
- if (props.customRange && !lodash.isEqual(props.customRange, state.previousCustomRange)) {
129
+ if (props.customRange && !(0, import_lodash.isEqual)(props.customRange, state.previousCustomRange)) {
157
130
  if (props.value === props.advanceOption.value) {
158
- // eslint-disable-next-line no-param-reassign
159
- props.advanceOption.label = /*#__PURE__*/_jsx__default["default"](props.customOptionRender, {
131
+ props.advanceOption.label = /* @__PURE__ */ import_react.default.createElement(props.customOptionRender, {
160
132
  allowMultipleDaysOfWeek: props.allowMultipleDaysOfWeek,
161
133
  customRange: props.customRange,
162
134
  dayOfMonthOptionsEnable: props.dayOfMonthOptionsEnable,
@@ -165,17 +137,18 @@ class DateTimeRecurenceSelectorImpl extends React.Component {
165
137
  useTimezoneSelector: props.useTimezoneSelector
166
138
  });
167
139
  }
168
-
169
140
  return {
170
- previousCustomRange: _objectSpread({}, props.customRange),
171
- customRange: _objectSpread({}, props.customRange),
141
+ previousCustomRange: {
142
+ ...props.customRange
143
+ },
144
+ customRange: {
145
+ ...props.customRange
146
+ },
172
147
  selected: props.value
173
148
  };
174
149
  }
175
-
176
150
  return null;
177
151
  }
178
-
179
152
  render() {
180
153
  const {
181
154
  placeholder,
@@ -212,73 +185,70 @@ class DateTimeRecurenceSelectorImpl extends React.Component {
212
185
  displayYearCustomOption,
213
186
  containerProps
214
187
  } = this.props;
215
- const {
216
- selected,
217
- openModal,
218
- customRange
219
- } = this.state;
188
+ const { selected, openModal, customRange } = this.state;
220
189
  const options = [...dropdownPreselectedOptions, advanceOption];
221
- return /*#__PURE__*/jsxRuntime.jsxs("div", _objectSpread(_objectSpread({}, containerProps), {}, {
222
- className: "".concat(cssClassName, " ").concat(className),
223
- children: [/*#__PURE__*/_jsx__default["default"]("div", {
224
- className: "".concat(classNameBlock('container-selector'))
225
- }, void 0, /*#__PURE__*/_jsx__default["default"](dsForm.DSComboBox, {
226
- className: "".concat(classNameElement('dropdown-field-selector')),
227
- components: {
228
- Option: props => /*#__PURE__*/jsxRuntime.jsx(reactSelect.components.Option, _objectSpread(_objectSpread({}, props), {}, {
229
- allowMultipleDaysOfWeek: allowMultipleDaysOfWeek,
230
- dayOfMonthOptionsEnable: dayOfMonthOptionsEnable,
231
- dayOfWeekOptionsEnable: dayOfWeekOptionsEnable,
232
- dayOfYearOptionsEnable: dayOfYearOptionsEnable,
233
- useTimezoneSelector: useTimezoneSelector
234
- })),
235
- IndicatorSeparator: () => null
236
- },
237
- onChange: this.onChangeDropdown,
238
- onKeyDown: this.onKeyDown,
239
- options: options,
240
- placeholder: placeholder,
241
- value: selected
242
- })), /*#__PURE__*/_jsx__default["default"](DateTimeRangeModal, {
243
- allowMultipleDaysOfWeek: allowMultipleDaysOfWeek,
244
- appElement: appElement,
245
- confirmLabel: confirmLabel,
246
- dayOfMonthAsCurrentDateOptions: dayOfMonthAsCurrentDateOptions,
247
- dayOfMonthOptionsEnable: dayOfMonthOptionsEnable,
248
- dayOfWeekOptionsEnable: dayOfWeekOptionsEnable,
249
- dayOfYearAsCurrentDateOptions: dayOfYearAsCurrentDateOptions,
250
- dayOfYearOptionsEnable: dayOfYearOptionsEnable,
251
- displayCurrentMonthYear: displayCurrentMonthYear,
252
- displayMonthCustomOption: displayMonthCustomOption,
253
- displayYearCustomOption: displayYearCustomOption,
254
- dropdownDayOfMonthOptions: dropdownDayOfMonthOptions,
255
- dropdownDayOfWeekOptions: dropdownDayOfWeekOptions,
256
- dropdownDayOfYearOptions: dropdownDayOfYearOptions,
257
- dropdownRepeatOptions: dropdownRepeatOptions,
258
- endDayBlocked: endDayBlocked,
259
- endTimesOptions: endTimesOptions,
260
- endTypesOptions: endTypesOptions,
261
- isOpen: openModal,
262
- isValidRecurrence: isValidRecurrence,
263
- modalSize: modalSize,
264
- modalTitle: modalTitle,
265
- modalType: modalType,
266
- onClose: this.handleActionClose,
267
- onConfirmField: this.handleConfirm,
268
- onCustomDateTimeRange: this.onCustomDateTimeRange,
269
- onRejectField: this.handleReject,
270
- placeholder: placeholder,
271
- rangeValue: customRange,
272
- rejectLabel: rejectLabel,
273
- repeatFrecuencyCustomProps: repeatFrecuencyCustomProps,
274
- startDayBlocked: startDayBlocked,
275
- timeZoneOptions: timeZoneOptions,
276
- useTimezoneSelector: useTimezoneSelector,
277
- validationMessage: validationMessage
278
- })]
190
+ return /* @__PURE__ */ import_react.default.createElement("div", {
191
+ ...containerProps,
192
+ className: `${cssClassName} ${className}`
193
+ }, /* @__PURE__ */ import_react.default.createElement("div", {
194
+ className: `${classNameBlock("container-selector")}`
195
+ }, /* @__PURE__ */ import_react.default.createElement(import_ds_form.DSComboBox, {
196
+ className: `${classNameElement("dropdown-field-selector")}`,
197
+ components: {
198
+ Option: (props) => /* @__PURE__ */ import_react.default.createElement(import_react_select.components.Option, {
199
+ ...props,
200
+ allowMultipleDaysOfWeek,
201
+ dayOfMonthOptionsEnable,
202
+ dayOfWeekOptionsEnable,
203
+ dayOfYearOptionsEnable,
204
+ useTimezoneSelector
205
+ }),
206
+ IndicatorSeparator: () => null
207
+ },
208
+ onChange: this.onChangeDropdown,
209
+ onKeyDown: this.onKeyDown,
210
+ options,
211
+ placeholder,
212
+ value: selected
213
+ })), /* @__PURE__ */ import_react.default.createElement(import_DateTimeRangeModal.default, {
214
+ allowMultipleDaysOfWeek,
215
+ appElement,
216
+ confirmLabel,
217
+ dayOfMonthAsCurrentDateOptions,
218
+ dayOfMonthOptionsEnable,
219
+ dayOfWeekOptionsEnable,
220
+ dayOfYearAsCurrentDateOptions,
221
+ dayOfYearOptionsEnable,
222
+ displayCurrentMonthYear,
223
+ displayMonthCustomOption,
224
+ displayYearCustomOption,
225
+ dropdownDayOfMonthOptions,
226
+ dropdownDayOfWeekOptions,
227
+ dropdownDayOfYearOptions,
228
+ dropdownRepeatOptions,
229
+ endDayBlocked,
230
+ endTimesOptions,
231
+ endTypesOptions,
232
+ isOpen: openModal,
233
+ isValidRecurrence,
234
+ modalSize,
235
+ modalTitle,
236
+ modalType,
237
+ onClose: this.handleActionClose,
238
+ onConfirmField: this.handleConfirm,
239
+ onCustomDateTimeRange: this.onCustomDateTimeRange,
240
+ onRejectField: this.handleReject,
241
+ placeholder,
242
+ rangeValue: customRange,
243
+ rejectLabel,
244
+ repeatFrecuencyCustomProps,
245
+ startDayBlocked,
246
+ timeZoneOptions,
247
+ useTimezoneSelector,
248
+ validationMessage
279
249
  }));
280
250
  }
281
-
282
251
  }
283
-
284
- module.exports = DateTimeRecurenceSelectorImpl;
252
+ var DateTimeRecurenceSelectorImpl_default = DateTimeRecurenceSelectorImpl;
253
+ module.exports = __toCommonJS(DateTimeRecurenceSelectorImpl_exports);
254
+ //# sourceMappingURL=DateTimeRecurenceSelectorImpl.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/DateTimeRecurenceSelectorImpl.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["/* eslint-disable react/prop-types */\n/* eslint-disable react/destructuring-assignment */\nimport React, { Component } from 'react';\nimport { isEqual } from 'lodash';\nimport 'react-dates/initialize';\nimport { components } from 'react-select';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { DSComboBox } from '@elliemae/ds-form';\n\nimport DateTimeRangeModal from './DateTimeRangeModal/DateTimeRangeModal';\n\nconst { cssClassName, classNameElement, classNameBlock } = convertPropToCssClassName(\n 'date-time-predefined-range-selector',\n);\n\nclass DateTimeRecurenceSelectorImpl extends Component {\n constructor(props) {\n super(props);\n this.initCustomRange = props.customRange;\n this.state = {\n // eslint-disable-next-line react/no-unused-state\n previousCustomRange: {\n ...props.customRange,\n },\n openModal: props.openModal || false,\n selected: props.value,\n customRange: {\n ...props.customRange,\n },\n };\n if (props.value === props.advanceOption.value) {\n // eslint-disable-next-line no-param-reassign\n props.advanceOption.label = (\n <props.customOptionRender\n allowMultipleDaysOfWeek={props.allowMultipleDaysOfWeek}\n customRange={props.customRange}\n dayOfMonthOptionsEnable={props.dayOfMonthOptionsEnable}\n dayOfWeekOptionsEnable={props.dayOfWeekOptionsEnable}\n dayOfYearOptionsEnable={props.dayOfYearOptionsEnable}\n useTimezoneSelector={props.useTimezoneSelector}\n />\n );\n }\n }\n\n onChange = () => {\n const { onChange } = this.props;\n const { customRange, selected } = this.state;\n onChange(selected, customRange);\n };\n\n onCustomDateTimeRange = (customRange) => {\n this.setState({ customRange });\n };\n\n onChangeDropdown = (value) => {\n const { dropdownPreselectedOptions } = this.props;\n const selected = dropdownPreselectedOptions.find((op) => op.value === value);\n const { onChange } = this.props;\n if (!selected) {\n this.setState((previousState) => ({\n selected: value,\n previousSelection: previousState.selected,\n }));\n this.handleOpenModal();\n } else if (selected) {\n onChange(value);\n this.setState({ selected: value, openModal: false });\n }\n };\n\n static getDerivedStateFromProps(props, state) {\n if (props.customRange && !isEqual(props.customRange, state.previousCustomRange)) {\n if (props.value === props.advanceOption.value) {\n // eslint-disable-next-line no-param-reassign\n props.advanceOption.label = (\n <props.customOptionRender\n allowMultipleDaysOfWeek={props.allowMultipleDaysOfWeek}\n customRange={props.customRange}\n dayOfMonthOptionsEnable={props.dayOfMonthOptionsEnable}\n dayOfWeekOptionsEnable={props.dayOfWeekOptionsEnable}\n dayOfYearOptionsEnable={props.dayOfYearOptionsEnable}\n useTimezoneSelector={props.useTimezoneSelector}\n />\n );\n }\n return {\n previousCustomRange: {\n ...props.customRange,\n },\n customRange: {\n ...props.customRange,\n },\n selected: props.value,\n };\n }\n return null;\n }\n\n handleConfirm = () => {\n const {\n onConfirmField,\n customOptionRender: CustomOptionRender,\n dayOfMonthOptionsEnable,\n dayOfWeekOptionsEnable,\n dayOfYearOptionsEnable,\n useTimezoneSelector,\n allowMultipleDaysOfWeek,\n } = this.props;\n const { customRange } = this.state;\n this.props.advanceOption.label = (\n <CustomOptionRender\n allowMultipleDaysOfWeek={allowMultipleDaysOfWeek}\n customRange={customRange}\n dayOfMonthOptionsEnable={dayOfMonthOptionsEnable}\n dayOfWeekOptionsEnable={dayOfWeekOptionsEnable}\n dayOfYearOptionsEnable={dayOfYearOptionsEnable}\n useTimezoneSelector={useTimezoneSelector}\n />\n );\n this.onChange();\n this.handleCloseModal();\n onConfirmField();\n };\n\n handleReject = () => {\n const { onRejectField } = this.props;\n this.handleActionClose();\n onRejectField();\n };\n\n handleActionClose = () => {\n this.setState((previousState) => ({\n selected: previousState.previousSelection,\n }));\n this.handleCloseModal();\n };\n\n handleOpenModal = () => this.setState({ openModal: true });\n\n handleCloseModal = () => {\n this.setState({ openModal: false });\n setTimeout(() => document.activeElement.blur(), 0); // https://github.com/reactjs/react-modal/issues/680\n };\n\n render() {\n const {\n placeholder,\n dropdownPreselectedOptions,\n appElement,\n confirmLabel,\n modalSize,\n modalTitle,\n modalType,\n rejectLabel,\n dropdownDayOfMonthOptions,\n dropdownDayOfWeekOptions,\n dropdownDayOfYearOptions,\n dropdownRepeatOptions,\n displayCurrentMonthYear,\n className,\n dayOfMonthOptionsEnable,\n dayOfWeekOptionsEnable,\n dayOfYearOptionsEnable,\n timeZoneOptions,\n useTimezoneSelector,\n allowMultipleDaysOfWeek,\n endTimesOptions,\n endTypesOptions,\n advanceOption,\n dayOfMonthAsCurrentDateOptions,\n dayOfYearAsCurrentDateOptions,\n isValidRecurrence,\n validationMessage,\n endDayBlocked,\n startDayBlocked,\n repeatFrecuencyCustomProps,\n displayMonthCustomOption,\n displayYearCustomOption,\n containerProps,\n } = this.props;\n const { selected, openModal, customRange } = this.state;\n\n const options = [...dropdownPreselectedOptions, advanceOption];\n\n return (\n <div {...containerProps} className={`${cssClassName} ${className}`}>\n <div className={`${classNameBlock('container-selector')}`}>\n <DSComboBox\n className={`${classNameElement('dropdown-field-selector')}`}\n components={{\n Option: (props) => (\n <components.Option\n {...props}\n allowMultipleDaysOfWeek={allowMultipleDaysOfWeek}\n dayOfMonthOptionsEnable={dayOfMonthOptionsEnable}\n dayOfWeekOptionsEnable={dayOfWeekOptionsEnable}\n dayOfYearOptionsEnable={dayOfYearOptionsEnable}\n useTimezoneSelector={useTimezoneSelector}\n />\n ),\n IndicatorSeparator: () => null,\n }}\n onChange={this.onChangeDropdown}\n onKeyDown={this.onKeyDown}\n options={options}\n placeholder={placeholder}\n value={selected}\n />\n </div>\n <DateTimeRangeModal\n allowMultipleDaysOfWeek={allowMultipleDaysOfWeek}\n appElement={appElement}\n confirmLabel={confirmLabel}\n dayOfMonthAsCurrentDateOptions={dayOfMonthAsCurrentDateOptions}\n dayOfMonthOptionsEnable={dayOfMonthOptionsEnable}\n dayOfWeekOptionsEnable={dayOfWeekOptionsEnable}\n dayOfYearAsCurrentDateOptions={dayOfYearAsCurrentDateOptions}\n dayOfYearOptionsEnable={dayOfYearOptionsEnable}\n displayCurrentMonthYear={displayCurrentMonthYear}\n displayMonthCustomOption={displayMonthCustomOption}\n displayYearCustomOption={displayYearCustomOption}\n dropdownDayOfMonthOptions={dropdownDayOfMonthOptions}\n dropdownDayOfWeekOptions={dropdownDayOfWeekOptions}\n dropdownDayOfYearOptions={dropdownDayOfYearOptions}\n dropdownRepeatOptions={dropdownRepeatOptions}\n endDayBlocked={endDayBlocked}\n endTimesOptions={endTimesOptions}\n endTypesOptions={endTypesOptions}\n isOpen={openModal}\n isValidRecurrence={isValidRecurrence}\n modalSize={modalSize}\n modalTitle={modalTitle}\n modalType={modalType}\n onClose={this.handleActionClose}\n onConfirmField={this.handleConfirm}\n onCustomDateTimeRange={this.onCustomDateTimeRange}\n onRejectField={this.handleReject}\n placeholder={placeholder}\n rangeValue={customRange}\n rejectLabel={rejectLabel}\n repeatFrecuencyCustomProps={repeatFrecuencyCustomProps}\n startDayBlocked={startDayBlocked}\n timeZoneOptions={timeZoneOptions}\n useTimezoneSelector={useTimezoneSelector}\n validationMessage={validationMessage}\n />\n </div>\n );\n }\n}\n\nexport default DateTimeRecurenceSelectorImpl;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1,74 +1,87 @@
1
- 'use strict';
2
-
3
- var _jsx = require('@babel/runtime/helpers/jsx');
4
- require('core-js/modules/web.dom-collections.iterator.js');
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('react');
9
- var dsForm = require('@elliemae/ds-form');
10
- var nthday = require('../helpers/nthday.js');
11
- var dropdownDayOfMonthOptions = require('../../options/dropdownDayOfMonthOptions.js');
12
- var FormLabel = require('../Forms/FormLabel.js');
13
- var FormFieldGroup = require('../Forms/FormFieldGroup.js');
14
- var FormGroup = require('../Forms/FormGroup.js');
15
-
16
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
17
-
18
- var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
19
-
20
- const DaysOfMonthPicker = _ref => {
21
- let {
22
- onDayChange = () => null,
23
- dayOfMonthValue = dropdownDayOfMonthOptions.dropdownDayOfMonthOptions[0].value,
24
- dayOfMonthOptions = dropdownDayOfMonthOptions.dropdownDayOfMonthOptions,
25
- displayOptionsAsCurrentDate = true,
26
- currentDate = null,
27
- inputLabel = 'On',
28
- dayOfMonthAsCurrentDateOptions,
29
- displayMonthCustomOption
30
- } = _ref;
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
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 DayOfMonthPicker_exports = {};
29
+ __export(DayOfMonthPicker_exports, {
30
+ default: () => DayOfMonthPicker_default
31
+ });
32
+ var React = __toESM(require("react"));
33
+ var import_react = __toESM(require("react"));
34
+ var import_ds_form = require("@elliemae/ds-form");
35
+ var import_nthday = require("../helpers/nthday");
36
+ var import_dropdownDayOfMonthOptions = require("../../options/dropdownDayOfMonthOptions");
37
+ var import_FormLabel = __toESM(require("../Forms/FormLabel"));
38
+ var import_FormFieldGroup = __toESM(require("../Forms/FormFieldGroup"));
39
+ var import_FormGroup = __toESM(require("../Forms/FormGroup"));
40
+ const DaysOfMonthPicker = ({
41
+ onDayChange = () => null,
42
+ dayOfMonthValue = import_dropdownDayOfMonthOptions.dropdownDayOfMonthOptions[0].value,
43
+ dayOfMonthOptions = import_dropdownDayOfMonthOptions.dropdownDayOfMonthOptions,
44
+ displayOptionsAsCurrentDate = true,
45
+ currentDate = null,
46
+ inputLabel = "On",
47
+ dayOfMonthAsCurrentDateOptions,
48
+ displayMonthCustomOption
49
+ }) => {
31
50
  let options = dayOfMonthOptions;
32
-
33
51
  if (displayOptionsAsCurrentDate) {
34
- const numberoption = "on the ".concat(currentDate.format('Do'), " of the month");
35
- const nthoption = "on the ".concat(nthday.nthDay(currentDate.toDate()), " ").concat(currentDate.format('dddd'), " of the month");
52
+ const numberoption = `on the ${currentDate.format("Do")} of the month`;
53
+ const nthoption = `on the ${(0, import_nthday.nthDay)(currentDate.toDate())} ${currentDate.format("dddd")} of the month`;
36
54
  options = [];
37
-
38
- if (dayOfMonthAsCurrentDateOptions.indexOf('numberOfMonth') > -1) {
55
+ if (dayOfMonthAsCurrentDateOptions.indexOf("numberOfMonth") > -1) {
39
56
  options.push({
40
- number: currentDate.format('DD'),
57
+ number: currentDate.format("DD"),
41
58
  label: numberoption,
42
59
  value: numberoption,
43
- dayOfMonthRepeatPickerKey: 'numberOfMonth'
60
+ dayOfMonthRepeatPickerKey: "numberOfMonth"
44
61
  });
45
62
  }
46
-
47
- if (dayOfMonthAsCurrentDateOptions.indexOf('dayOfTheWeekOfMonth') > -1) {
63
+ if (dayOfMonthAsCurrentDateOptions.indexOf("dayOfTheWeekOfMonth") > -1) {
48
64
  options.push({
49
- numberLabel: "".concat(nthday.nthDay(currentDate.toDate()), " ").concat(currentDate.format('dddd')),
65
+ numberLabel: `${(0, import_nthday.nthDay)(currentDate.toDate())} ${currentDate.format("dddd")}`,
50
66
  label: nthoption,
51
67
  value: nthoption,
52
- dayOfMonthRepeatPickerKey: 'dayOfTheWeekOfMonth'
68
+ dayOfMonthRepeatPickerKey: "dayOfTheWeekOfMonth"
53
69
  });
54
70
  }
55
-
56
71
  if (displayMonthCustomOption) {
57
72
  options = [...options, ...dayOfMonthOptions];
58
73
  }
59
74
  }
60
-
61
- const selected = options.find(option => option.value === dayOfMonthValue) ? dayOfMonthValue : null;
62
-
75
+ const selected = options.find((option) => option.value === dayOfMonthValue) ? dayOfMonthValue : null;
63
76
  if (!selected) {
64
77
  onDayChange(options[0].value, options[0]);
65
78
  }
66
-
67
- return /*#__PURE__*/_jsx__default["default"](FormGroup, {}, void 0, /*#__PURE__*/_jsx__default["default"](FormLabel, {}, void 0, inputLabel), /*#__PURE__*/_jsx__default["default"](FormFieldGroup, {}, void 0, /*#__PURE__*/_jsx__default["default"](dsForm.DSComboBox, {
68
- onChange: value => onDayChange(value, options.find(o => o.value === value)),
69
- options: options,
79
+ return /* @__PURE__ */ import_react.default.createElement(import_FormGroup.default, null, /* @__PURE__ */ import_react.default.createElement(import_FormLabel.default, null, inputLabel), /* @__PURE__ */ import_react.default.createElement(import_FormFieldGroup.default, null, /* @__PURE__ */ import_react.default.createElement(import_ds_form.DSComboBox, {
80
+ onChange: (value) => onDayChange(value, options.find((o) => o.value === value)),
81
+ options,
70
82
  value: selected
71
83
  })));
72
84
  };
73
-
74
- module.exports = DaysOfMonthPicker;
85
+ var DayOfMonthPicker_default = DaysOfMonthPicker;
86
+ module.exports = __toCommonJS(DayOfMonthPicker_exports);
87
+ //# sourceMappingURL=DayOfMonthPicker.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/components/DayOfMonthPicker/DayOfMonthPicker.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["import React from 'react';\nimport { DSComboBox } from '@elliemae/ds-form';\nimport { nthDay } from '../helpers/nthday';\nimport { dropdownDayOfMonthOptions } from '../../options/dropdownDayOfMonthOptions';\nimport FormLabel from '../Forms/FormLabel';\nimport FormFieldGroup from '../Forms/FormFieldGroup';\nimport FormGroup from '../Forms/FormGroup';\n\nconst DaysOfMonthPicker = ({\n onDayChange = () => null,\n dayOfMonthValue = dropdownDayOfMonthOptions[0].value,\n dayOfMonthOptions = dropdownDayOfMonthOptions,\n displayOptionsAsCurrentDate = true,\n currentDate = null,\n inputLabel = 'On',\n dayOfMonthAsCurrentDateOptions,\n displayMonthCustomOption,\n}) => {\n let options = dayOfMonthOptions;\n if (displayOptionsAsCurrentDate) {\n const numberoption = `on the ${currentDate.format('Do')} of the month`;\n const nthoption = `on the ${nthDay(currentDate.toDate())} ${currentDate.format('dddd')} of the month`;\n options = [];\n\n if (dayOfMonthAsCurrentDateOptions.indexOf('numberOfMonth') > -1) {\n options.push({\n number: currentDate.format('DD'),\n label: numberoption,\n value: numberoption,\n dayOfMonthRepeatPickerKey: 'numberOfMonth',\n });\n }\n if (dayOfMonthAsCurrentDateOptions.indexOf('dayOfTheWeekOfMonth') > -1) {\n options.push({\n numberLabel: `${nthDay(currentDate.toDate())} ${currentDate.format('dddd')}`,\n label: nthoption,\n value: nthoption,\n dayOfMonthRepeatPickerKey: 'dayOfTheWeekOfMonth',\n });\n }\n\n if (displayMonthCustomOption) {\n options = [...options, ...dayOfMonthOptions];\n }\n }\n\n const selected = options.find((option) => option.value === dayOfMonthValue) ? dayOfMonthValue : null;\n if (!selected) {\n onDayChange(options[0].value, options[0]);\n }\n return (\n <FormGroup>\n <FormLabel>{inputLabel}</FormLabel>\n <FormFieldGroup>\n <DSComboBox\n onChange={(value) =>\n onDayChange(\n value,\n options.find((o) => o.value === value),\n )\n }\n options={options}\n value={selected}\n />\n </FormFieldGroup>\n </FormGroup>\n );\n};\n\nexport default DaysOfMonthPicker;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,mBAAkB;AAClB,qBAA2B;AAC3B,oBAAuB;AACvB,uCAA0C;AAC1C,uBAAsB;AACtB,4BAA2B;AAC3B,uBAAsB;AAEtB,MAAM,oBAAoB,CAAC;AAAA,EACzB,cAAc,MAAM;AAAA,EACpB,kBAAkB,2DAA0B,GAAG;AAAA,EAC/C,oBAAoB;AAAA,EACpB,8BAA8B;AAAA,EAC9B,cAAc;AAAA,EACd,aAAa;AAAA,EACb;AAAA,EACA;AAAA,MACI;AACJ,MAAI,UAAU;AACd,MAAI,6BAA6B;AAC/B,UAAM,eAAe,UAAU,YAAY,OAAO;AAClD,UAAM,YAAY,UAAU,0BAAO,YAAY,aAAa,YAAY,OAAO;AAC/E,cAAU;AAEV,QAAI,+BAA+B,QAAQ,mBAAmB,IAAI;AAChE,cAAQ,KAAK;AAAA,QACX,QAAQ,YAAY,OAAO;AAAA,QAC3B,OAAO;AAAA,QACP,OAAO;AAAA,QACP,2BAA2B;AAAA;AAAA;AAG/B,QAAI,+BAA+B,QAAQ,yBAAyB,IAAI;AACtE,cAAQ,KAAK;AAAA,QACX,aAAa,GAAG,0BAAO,YAAY,aAAa,YAAY,OAAO;AAAA,QACnE,OAAO;AAAA,QACP,OAAO;AAAA,QACP,2BAA2B;AAAA;AAAA;AAI/B,QAAI,0BAA0B;AAC5B,gBAAU,CAAC,GAAG,SAAS,GAAG;AAAA;AAAA;AAI9B,QAAM,WAAW,QAAQ,KAAK,CAAC,WAAW,OAAO,UAAU,mBAAmB,kBAAkB;AAChG,MAAI,CAAC,UAAU;AACb,gBAAY,QAAQ,GAAG,OAAO,QAAQ;AAAA;AAExC,SACE,mDAAC,0BAAD,MACE,mDAAC,0BAAD,MAAY,aACZ,mDAAC,+BAAD,MACE,mDAAC,2BAAD;AAAA,IACE,UAAU,CAAC,UACT,YACE,OACA,QAAQ,KAAK,CAAC,MAAM,EAAE,UAAU;AAAA,IAGpC;AAAA,IACA,OAAO;AAAA;AAAA;AAOjB,IAAO,2BAAQ;",
6
+ "names": []
7
+ }