@elliemae/ds-date-range-picker 3.15.0 → 3.16.0-next.10

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.
@@ -35,12 +35,13 @@ module.exports = __toCommonJS(DSDateRangePicker_exports);
35
35
  var React = __toESM(require("react"));
36
36
  var import_jsx_runtime = require("react/jsx-runtime");
37
37
  var import_ds_utilities = require("@elliemae/ds-utilities");
38
+ var import_ds_props_helpers = require("@elliemae/ds-props-helpers");
38
39
  var import_ds_classnames = require("@elliemae/ds-classnames");
39
40
  var import_moment = __toESM(require("moment"));
40
- var import_initialize = require("react-dates/initialize");
41
- var import_defaultPhrases = require("react-dates/lib/defaultPhrases");
42
- var import_DayPickerRangeController = __toESM(require("./components/DayPickerRangeController"));
43
- var import_DSDateRangePickerImpl = __toESM(require("./components/DSDateRangePickerImpl"));
41
+ var import_initialize = require("react-dates/initialize.js");
42
+ var import_defaultPhrases = require("react-dates/lib/defaultPhrases.js");
43
+ var import_DayPickerRangeController = __toESM(require("./components/DayPickerRangeController.js"));
44
+ var import_DSDateRangePickerImpl = __toESM(require("./components/DSDateRangePickerImpl.js"));
44
45
  const DSDateRangePicker = ({
45
46
  containerProps = {},
46
47
  className = "",
@@ -82,6 +83,7 @@ const DSDateRangePicker = ({
82
83
  onChangeEndInput = () => null,
83
84
  onDatesChange = () => null
84
85
  }) => {
86
+ (0, import_ds_utilities.useDeprecateComponent)({ componentName: "ds-date-range-picker", version: "3.x Date: 2023 Q1" });
85
87
  const { cssClassName, prefixBlockName } = (0, import_ds_classnames.convertPropToCssClassName)("datepicker", className, {
86
88
  hasError,
87
89
  readOnly,
@@ -132,84 +134,84 @@ const DSDateRangePicker = ({
132
134
  ) });
133
135
  };
134
136
  const dateRangePickerProps = {
135
- containerProps: import_ds_utilities.PropTypes.shape({}).description("Set of Properties attached to the main container"),
136
- className: import_ds_utilities.PropTypes.string.description("html class attribute"),
137
- disabled: import_ds_utilities.PropTypes.bool.description("disable component or not").defaultValue(false),
138
- required: import_ds_utilities.PropTypes.bool.description("input is required or not").defaultValue(false),
139
- startDateRequired: import_ds_utilities.PropTypes.bool.description("start date is required or not").defaultValue(false),
140
- endDateRequired: import_ds_utilities.PropTypes.bool.description("end date is required or not").defaultValue(false),
141
- id: import_ds_utilities.PropTypes.string.description("components id"),
142
- hasError: import_ds_utilities.PropTypes.bool.description("set error state").defaultValue(false),
143
- validationMessage: import_ds_utilities.PropTypes.string.description("validation message"),
144
- readOnly: import_ds_utilities.PropTypes.bool.description("component is read only or not").description(false),
145
- screenReaderInputMessage: import_ds_utilities.PropTypes.string.description("message to be anounced by screen reader").defaultValue("select date"),
146
- initialVisibleMonth: import_ds_utilities.PropTypes.oneOfType([import_ds_utilities.PropTypes.instanceOf(Date), import_ds_utilities.PropTypes.instanceOf(import_moment.default)]).description(
137
+ containerProps: import_ds_props_helpers.PropTypes.shape({}).description("Set of Properties attached to the main container"),
138
+ className: import_ds_props_helpers.PropTypes.string.description("html class attribute"),
139
+ disabled: import_ds_props_helpers.PropTypes.bool.description("disable component or not").defaultValue(false),
140
+ required: import_ds_props_helpers.PropTypes.bool.description("input is required or not").defaultValue(false),
141
+ startDateRequired: import_ds_props_helpers.PropTypes.bool.description("start date is required or not").defaultValue(false),
142
+ endDateRequired: import_ds_props_helpers.PropTypes.bool.description("end date is required or not").defaultValue(false),
143
+ id: import_ds_props_helpers.PropTypes.string.description("components id"),
144
+ hasError: import_ds_props_helpers.PropTypes.bool.description("set error state").defaultValue(false),
145
+ validationMessage: import_ds_props_helpers.PropTypes.string.description("validation message"),
146
+ readOnly: import_ds_props_helpers.PropTypes.bool.description("component is read only or not").description(false),
147
+ screenReaderInputMessage: import_ds_props_helpers.PropTypes.string.description("message to be anounced by screen reader").defaultValue("select date"),
148
+ initialVisibleMonth: import_ds_props_helpers.PropTypes.oneOfType([import_ds_props_helpers.PropTypes.instanceOf(Date), import_ds_props_helpers.PropTypes.instanceOf(import_moment.default)]).description(
147
149
  "initial visible month"
148
150
  ),
149
- firstDayOfWeek: import_ds_utilities.PropTypes.number.description("first day of week").defaultValue(0),
150
- keepOpenOnDateSelect: import_ds_utilities.PropTypes.bool.description("keep picker open when a date is selected").defaultValue(true),
151
- reopenPickerOnClearDates: import_ds_utilities.PropTypes.bool.description("reopen picker when clearing dates").defaultValue(false),
152
- hideKeyboardShortcutsPanel: import_ds_utilities.PropTypes.bool.description("hide keyabord shortcut panel or not"),
153
- onPrevMonthClick: import_ds_utilities.PropTypes.func.description("function executed when clicking on prev month button"),
154
- onNextMonthClick: import_ds_utilities.PropTypes.func.description("function executed when clicking on next month button"),
155
- onClose: import_ds_utilities.PropTypes.func.description("function executed when component closes"),
156
- transitionDuration: import_ds_utilities.PropTypes.number.description("transition duration").defaultValue(0),
157
- verticalSpacing: import_ds_utilities.PropTypes.number.description("vertical spacing"),
158
- isDayBlocked: import_ds_utilities.PropTypes.func.description("function that returns each day and disables desired dates"),
159
- isOutsideRange: import_ds_utilities.PropTypes.func.description("function that returns each day and disables outisde range dates"),
160
- isDayHighlighted: import_ds_utilities.PropTypes.func.description("function that returns each day and higlights desired dates"),
161
- minimumNights: import_ds_utilities.PropTypes.number.description("Minimum nights"),
162
- displayFormat: import_ds_utilities.PropTypes.string.description("display format").defaultValue("L"),
163
- displayFormatDay: import_ds_utilities.PropTypes.string.description("display format day").defaultValue("D"),
164
- phrases: import_ds_utilities.PropTypes.shape({
165
- calendarLabel: import_ds_utilities.PropTypes.string,
166
- closeDatePicker: import_ds_utilities.PropTypes.string,
167
- clearDates: import_ds_utilities.PropTypes.string,
168
- focusStartDate: import_ds_utilities.PropTypes.string,
169
- jumpToPrevMonth: import_ds_utilities.PropTypes.string,
170
- jumpToNextMonth: import_ds_utilities.PropTypes.string,
171
- keyboardShortcuts: import_ds_utilities.PropTypes.string,
172
- showKeyboardShortcutsPanel: import_ds_utilities.PropTypes.string,
173
- hideKeyboardShortcutsPanel: import_ds_utilities.PropTypes.string,
174
- openThisPanel: import_ds_utilities.PropTypes.string,
175
- enterKey: import_ds_utilities.PropTypes.string,
176
- leftArrowRightArrow: import_ds_utilities.PropTypes.string,
177
- upArrowDownArrow: import_ds_utilities.PropTypes.string,
178
- pageUpPageDown: import_ds_utilities.PropTypes.string,
179
- homeEnd: import_ds_utilities.PropTypes.string,
180
- escape: import_ds_utilities.PropTypes.string,
181
- questionMark: import_ds_utilities.PropTypes.string,
182
- selectFocusedDate: import_ds_utilities.PropTypes.string,
183
- moveFocusByOneDay: import_ds_utilities.PropTypes.string,
184
- moveFocusByOneWeek: import_ds_utilities.PropTypes.string,
185
- moveFocusByOneMonth: import_ds_utilities.PropTypes.string,
186
- moveFocustoStartAndEndOfWeek: import_ds_utilities.PropTypes.string,
187
- returnFocusToInput: import_ds_utilities.PropTypes.string,
188
- keyboardNavigationInstructions: import_ds_utilities.PropTypes.string,
189
- chooseAvailableStartDate: import_ds_utilities.PropTypes.func,
190
- chooseAvailableEndDate: import_ds_utilities.PropTypes.func,
191
- dateIsUnavailable: import_ds_utilities.PropTypes.func,
192
- dateIsSelected: import_ds_utilities.PropTypes.func
151
+ firstDayOfWeek: import_ds_props_helpers.PropTypes.number.description("first day of week").defaultValue(0),
152
+ keepOpenOnDateSelect: import_ds_props_helpers.PropTypes.bool.description("keep picker open when a date is selected").defaultValue(true),
153
+ reopenPickerOnClearDates: import_ds_props_helpers.PropTypes.bool.description("reopen picker when clearing dates").defaultValue(false),
154
+ hideKeyboardShortcutsPanel: import_ds_props_helpers.PropTypes.bool.description("hide keyabord shortcut panel or not"),
155
+ onPrevMonthClick: import_ds_props_helpers.PropTypes.func.description("function executed when clicking on prev month button"),
156
+ onNextMonthClick: import_ds_props_helpers.PropTypes.func.description("function executed when clicking on next month button"),
157
+ onClose: import_ds_props_helpers.PropTypes.func.description("function executed when component closes"),
158
+ transitionDuration: import_ds_props_helpers.PropTypes.number.description("transition duration").defaultValue(0),
159
+ verticalSpacing: import_ds_props_helpers.PropTypes.number.description("vertical spacing"),
160
+ isDayBlocked: import_ds_props_helpers.PropTypes.func.description("function that returns each day and disables desired dates"),
161
+ isOutsideRange: import_ds_props_helpers.PropTypes.func.description("function that returns each day and disables outisde range dates"),
162
+ isDayHighlighted: import_ds_props_helpers.PropTypes.func.description("function that returns each day and higlights desired dates"),
163
+ minimumNights: import_ds_props_helpers.PropTypes.number.description("Minimum nights"),
164
+ displayFormat: import_ds_props_helpers.PropTypes.string.description("display format").defaultValue("L"),
165
+ displayFormatDay: import_ds_props_helpers.PropTypes.string.description("display format day").defaultValue("D"),
166
+ phrases: import_ds_props_helpers.PropTypes.shape({
167
+ calendarLabel: import_ds_props_helpers.PropTypes.string,
168
+ closeDatePicker: import_ds_props_helpers.PropTypes.string,
169
+ clearDates: import_ds_props_helpers.PropTypes.string,
170
+ focusStartDate: import_ds_props_helpers.PropTypes.string,
171
+ jumpToPrevMonth: import_ds_props_helpers.PropTypes.string,
172
+ jumpToNextMonth: import_ds_props_helpers.PropTypes.string,
173
+ keyboardShortcuts: import_ds_props_helpers.PropTypes.string,
174
+ showKeyboardShortcutsPanel: import_ds_props_helpers.PropTypes.string,
175
+ hideKeyboardShortcutsPanel: import_ds_props_helpers.PropTypes.string,
176
+ openThisPanel: import_ds_props_helpers.PropTypes.string,
177
+ enterKey: import_ds_props_helpers.PropTypes.string,
178
+ leftArrowRightArrow: import_ds_props_helpers.PropTypes.string,
179
+ upArrowDownArrow: import_ds_props_helpers.PropTypes.string,
180
+ pageUpPageDown: import_ds_props_helpers.PropTypes.string,
181
+ homeEnd: import_ds_props_helpers.PropTypes.string,
182
+ escape: import_ds_props_helpers.PropTypes.string,
183
+ questionMark: import_ds_props_helpers.PropTypes.string,
184
+ selectFocusedDate: import_ds_props_helpers.PropTypes.string,
185
+ moveFocusByOneDay: import_ds_props_helpers.PropTypes.string,
186
+ moveFocusByOneWeek: import_ds_props_helpers.PropTypes.string,
187
+ moveFocusByOneMonth: import_ds_props_helpers.PropTypes.string,
188
+ moveFocustoStartAndEndOfWeek: import_ds_props_helpers.PropTypes.string,
189
+ returnFocusToInput: import_ds_props_helpers.PropTypes.string,
190
+ keyboardNavigationInstructions: import_ds_props_helpers.PropTypes.string,
191
+ chooseAvailableStartDate: import_ds_props_helpers.PropTypes.func,
192
+ chooseAvailableEndDate: import_ds_props_helpers.PropTypes.func,
193
+ dateIsUnavailable: import_ds_props_helpers.PropTypes.func,
194
+ dateIsSelected: import_ds_props_helpers.PropTypes.func
193
195
  }).description("react-dates phrases"),
194
- startDate: import_ds_utilities.PropTypes.oneOfType([import_ds_utilities.PropTypes.instanceOf(Date), import_ds_utilities.PropTypes.instanceOf(import_moment.default)]).description(
196
+ startDate: import_ds_props_helpers.PropTypes.oneOfType([import_ds_props_helpers.PropTypes.instanceOf(Date), import_ds_props_helpers.PropTypes.instanceOf(import_moment.default)]).description(
195
197
  "start date value"
196
198
  ),
197
- endDate: import_ds_utilities.PropTypes.oneOfType([import_ds_utilities.PropTypes.instanceOf(Date), import_ds_utilities.PropTypes.instanceOf(import_moment.default)]).description(
199
+ endDate: import_ds_props_helpers.PropTypes.oneOfType([import_ds_props_helpers.PropTypes.instanceOf(Date), import_ds_props_helpers.PropTypes.instanceOf(import_moment.default)]).description(
198
200
  "end date value"
199
201
  ),
200
- startDateId: import_ds_utilities.PropTypes.string.description("start date id"),
201
- endDateId: import_ds_utilities.PropTypes.string.description("end date id"),
202
- labelFrom: import_ds_utilities.PropTypes.string.description("label of start date input"),
203
- labelTo: import_ds_utilities.PropTypes.string.description("label of end date input"),
204
- enableOutsideDays: import_ds_utilities.PropTypes.bool.description("enable days outside current month").defaultValue("true"),
205
- onDatesChange: import_ds_utilities.PropTypes.func.description("function executed when dates change"),
206
- onChangeStartInput: import_ds_utilities.PropTypes.func.description("function executed when start date input changes"),
207
- onChangeEndInput: import_ds_utilities.PropTypes.func.description("function executed when end date input changes"),
208
- onOutsideClick: import_ds_utilities.PropTypes.func.description("function executed when clicking outside component")
202
+ startDateId: import_ds_props_helpers.PropTypes.string.description("start date id"),
203
+ endDateId: import_ds_props_helpers.PropTypes.string.description("end date id"),
204
+ labelFrom: import_ds_props_helpers.PropTypes.string.description("label of start date input"),
205
+ labelTo: import_ds_props_helpers.PropTypes.string.description("label of end date input"),
206
+ enableOutsideDays: import_ds_props_helpers.PropTypes.bool.description("enable days outside current month").defaultValue("true"),
207
+ onDatesChange: import_ds_props_helpers.PropTypes.func.description("function executed when dates change"),
208
+ onChangeStartInput: import_ds_props_helpers.PropTypes.func.description("function executed when start date input changes"),
209
+ onChangeEndInput: import_ds_props_helpers.PropTypes.func.description("function executed when end date input changes"),
210
+ onOutsideClick: import_ds_props_helpers.PropTypes.func.description("function executed when clicking outside component")
209
211
  };
210
212
  DSDateRangePicker.propTypes = dateRangePickerProps;
211
213
  DSDateRangePicker.displayName = "DSDateRangePicker";
212
- const DateRangePickerWithSchema = (0, import_ds_utilities.describe)(DSDateRangePicker);
214
+ const DateRangePickerWithSchema = (0, import_ds_props_helpers.describe)(DSDateRangePicker);
213
215
  DateRangePickerWithSchema.propTypes = dateRangePickerProps;
214
216
  var DSDateRangePicker_default = DSDateRangePicker;
215
217
  //# sourceMappingURL=DSDateRangePicker.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/DSDateRangePicker.tsx", "../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* eslint-disable max-lines */\nimport React from 'react';\nimport { PropTypes, describe } from '@elliemae/ds-utilities';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport moment from 'moment';\nimport 'react-dates/initialize';\nimport { DateRangePickerPhrases } from 'react-dates/lib/defaultPhrases';\nimport DayPickerRangeController from './components/DayPickerRangeController';\nimport DSDateRangePickerImpl, { START_DATE, END_DATE } from './components/DSDateRangePickerImpl';\n\nconst DSDateRangePicker = ({\n containerProps = {},\n className = '',\n disabled = false,\n required = false,\n startDateRequired = false,\n endDateRequired = false,\n id,\n hasError = false,\n validationMessage = '',\n readOnly = false,\n screenReaderInputMessage = 'Select date',\n initialVisibleMonth = moment(),\n firstDayOfWeek = 0,\n keepOpenOnDateSelect = true,\n reopenPickerOnClearDates = false,\n hideKeyboardShortcutsPanel = true,\n onPrevMonthClick = () => null,\n onNextMonthClick = () => null,\n onClose = () => null,\n onOutsideClick = () => null,\n transitionDuration = 0,\n verticalSpacing = 0,\n minimumNights = 0,\n isDayBlocked = () => false,\n isOutsideRange = () => false,\n isDayHighlighted = () => false,\n displayFormat = 'L',\n displayFormatDay = 'D',\n phrases = DateRangePickerPhrases,\n startDate,\n endDate,\n startDateId = 'startDateId',\n endDateId = 'endDateId',\n labelFrom = 'From',\n labelTo = 'To',\n enableOutsideDays = true,\n onChangeStartInput = () => null,\n onChangeEndInput = () => null,\n onDatesChange = () => null,\n}) => {\n const { cssClassName, prefixBlockName } = convertPropToCssClassName('datepicker', className, {\n hasError,\n readOnly,\n disabled,\n id,\n });\n return (\n <div {...containerProps} className={`${prefixBlockName}-range ${cssClassName} ${prefixBlockName}-range`}>\n <DSDateRangePickerImpl\n appendToBody\n disabled={disabled}\n displayFormat={displayFormat}\n displayFormatDay={displayFormatDay}\n enableOutsideDays={enableOutsideDays}\n endDate={endDate}\n endDateId={endDateId}\n firstDayOfWeek={firstDayOfWeek}\n hideKeyboardShortcutsPanel={hideKeyboardShortcutsPanel}\n initialVisibleMonth={() => (initialVisibleMonth ? moment(initialVisibleMonth) : moment(startDate))}\n isDayBlocked={isDayBlocked}\n isDayHighlighted={isDayHighlighted}\n isOutsideRange={isOutsideRange === true || isOutsideRange === false ? () => isOutsideRange : isOutsideRange}\n keepOpenOnDateSelect={keepOpenOnDateSelect}\n labelFrom={labelFrom}\n labelTo={labelTo}\n minimumNights={minimumNights}\n onDatesChange={onDatesChange}\n onChangeStartInput={onChangeStartInput}\n onChangeEndInput={onChangeEndInput}\n onClose={onClose}\n onNextMonthClick={onNextMonthClick}\n onPrevMonthClick={onPrevMonthClick}\n onOutsideClick={onOutsideClick}\n phrases={phrases}\n readOnly={readOnly}\n reopenPickerOnClearDates={reopenPickerOnClearDates}\n required={required}\n startDateRequired={startDateRequired}\n endDateRequired={endDateRequired}\n screenReaderInputMessage={screenReaderInputMessage}\n startDate={startDate}\n startDateId={startDateId}\n transitionDuration={transitionDuration}\n verticalSpacing={verticalSpacing}\n hasError={hasError}\n validationMessage={validationMessage}\n />\n </div>\n );\n};\n\nconst dateRangePickerProps = {\n containerProps: PropTypes.shape({}).description('Set of Properties attached to the main container'),\n className: PropTypes.string.description('html class attribute'),\n disabled: PropTypes.bool.description('disable component or not').defaultValue(false),\n required: PropTypes.bool.description('input is required or not').defaultValue(false),\n startDateRequired: PropTypes.bool.description('start date is required or not').defaultValue(false),\n endDateRequired: PropTypes.bool.description('end date is required or not').defaultValue(false),\n id: PropTypes.string.description('components id'),\n hasError: PropTypes.bool.description('set error state').defaultValue(false),\n validationMessage: PropTypes.string.description('validation message'),\n readOnly: PropTypes.bool.description('component is read only or not').description(false),\n screenReaderInputMessage: PropTypes.string\n .description('message to be anounced by screen reader')\n .defaultValue('select date'),\n initialVisibleMonth: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.instanceOf(moment)]).description(\n 'initial visible month',\n ),\n firstDayOfWeek: PropTypes.number.description('first day of week').defaultValue(0),\n keepOpenOnDateSelect: PropTypes.bool.description('keep picker open when a date is selected').defaultValue(true),\n reopenPickerOnClearDates: PropTypes.bool.description('reopen picker when clearing dates').defaultValue(false),\n hideKeyboardShortcutsPanel: PropTypes.bool.description('hide keyabord shortcut panel or not'),\n onPrevMonthClick: PropTypes.func.description('function executed when clicking on prev month button'),\n onNextMonthClick: PropTypes.func.description('function executed when clicking on next month button'),\n onClose: PropTypes.func.description('function executed when component closes'),\n transitionDuration: PropTypes.number.description('transition duration').defaultValue(0),\n verticalSpacing: PropTypes.number.description('vertical spacing'),\n isDayBlocked: PropTypes.func.description('function that returns each day and disables desired dates'),\n isOutsideRange: PropTypes.func.description('function that returns each day and disables outisde range dates'),\n isDayHighlighted: PropTypes.func.description('function that returns each day and higlights desired dates'),\n minimumNights: PropTypes.number.description('Minimum nights'),\n displayFormat: PropTypes.string.description('display format').defaultValue('L'),\n displayFormatDay: PropTypes.string.description('display format day').defaultValue('D'),\n phrases: PropTypes.shape({\n calendarLabel: PropTypes.string,\n closeDatePicker: PropTypes.string,\n clearDates: PropTypes.string,\n focusStartDate: PropTypes.string,\n jumpToPrevMonth: PropTypes.string,\n jumpToNextMonth: PropTypes.string,\n keyboardShortcuts: PropTypes.string,\n showKeyboardShortcutsPanel: PropTypes.string,\n hideKeyboardShortcutsPanel: PropTypes.string,\n openThisPanel: PropTypes.string,\n enterKey: PropTypes.string,\n leftArrowRightArrow: PropTypes.string,\n upArrowDownArrow: PropTypes.string,\n pageUpPageDown: PropTypes.string,\n homeEnd: PropTypes.string,\n escape: PropTypes.string,\n questionMark: PropTypes.string,\n selectFocusedDate: PropTypes.string,\n moveFocusByOneDay: PropTypes.string,\n moveFocusByOneWeek: PropTypes.string,\n moveFocusByOneMonth: PropTypes.string,\n moveFocustoStartAndEndOfWeek: PropTypes.string,\n returnFocusToInput: PropTypes.string,\n keyboardNavigationInstructions: PropTypes.string,\n chooseAvailableStartDate: PropTypes.func,\n chooseAvailableEndDate: PropTypes.func,\n dateIsUnavailable: PropTypes.func,\n dateIsSelected: PropTypes.func,\n }).description('react-dates phrases'),\n startDate: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.instanceOf(moment)]).description(\n 'start date value',\n ),\n endDate: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.instanceOf(moment)]).description(\n 'end date value',\n ),\n startDateId: PropTypes.string.description('start date id'),\n endDateId: PropTypes.string.description('end date id'),\n labelFrom: PropTypes.string.description('label of start date input'),\n labelTo: PropTypes.string.description('label of end date input'),\n enableOutsideDays: PropTypes.bool.description('enable days outside current month').defaultValue('true'),\n onDatesChange: PropTypes.func.description('function executed when dates change'),\n onChangeStartInput: PropTypes.func.description('function executed when start date input changes'),\n onChangeEndInput: PropTypes.func.description('function executed when end date input changes'),\n onOutsideClick: PropTypes.func.description('function executed when clicking outside component'),\n};\n\nDSDateRangePicker.propTypes = dateRangePickerProps;\nDSDateRangePicker.displayName = 'DSDateRangePicker';\nconst DateRangePickerWithSchema = describe(DSDateRangePicker);\nDateRangePickerWithSchema.propTypes = dateRangePickerProps;\n\nexport { DayPickerRangeController, START_DATE, END_DATE, DateRangePickerWithSchema, DSDateRangePicker };\n\nexport default DSDateRangePicker;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/* eslint-disable max-lines */\nimport React from 'react';\nimport { useDeprecateComponent } from '@elliemae/ds-utilities';\nimport { PropTypes, describe } from '@elliemae/ds-props-helpers';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport moment from 'moment';\nimport 'react-dates/initialize.js';\nimport { DateRangePickerPhrases } from 'react-dates/lib/defaultPhrases.js';\nimport DayPickerRangeController from './components/DayPickerRangeController.js';\nimport DSDateRangePickerImpl, { START_DATE, END_DATE } from './components/DSDateRangePickerImpl.js';\n\nconst DSDateRangePicker = ({\n containerProps = {},\n className = '',\n disabled = false,\n required = false,\n startDateRequired = false,\n endDateRequired = false,\n id,\n hasError = false,\n validationMessage = '',\n readOnly = false,\n screenReaderInputMessage = 'Select date',\n initialVisibleMonth = moment(),\n firstDayOfWeek = 0,\n keepOpenOnDateSelect = true,\n reopenPickerOnClearDates = false,\n hideKeyboardShortcutsPanel = true,\n onPrevMonthClick = () => null,\n onNextMonthClick = () => null,\n onClose = () => null,\n onOutsideClick = () => null,\n transitionDuration = 0,\n verticalSpacing = 0,\n minimumNights = 0,\n isDayBlocked = () => false,\n isOutsideRange = () => false,\n isDayHighlighted = () => false,\n displayFormat = 'L',\n displayFormatDay = 'D',\n phrases = DateRangePickerPhrases,\n startDate,\n endDate,\n startDateId = 'startDateId',\n endDateId = 'endDateId',\n labelFrom = 'From',\n labelTo = 'To',\n enableOutsideDays = true,\n onChangeStartInput = () => null,\n onChangeEndInput = () => null,\n onDatesChange = () => null,\n}) => {\n useDeprecateComponent({ componentName: 'ds-date-range-picker', version: '3.x Date: 2023 Q1' });\n\n const { cssClassName, prefixBlockName } = convertPropToCssClassName('datepicker', className, {\n hasError,\n readOnly,\n disabled,\n id,\n });\n return (\n <div {...containerProps} className={`${prefixBlockName}-range ${cssClassName} ${prefixBlockName}-range`}>\n <DSDateRangePickerImpl\n appendToBody\n disabled={disabled}\n displayFormat={displayFormat}\n displayFormatDay={displayFormatDay}\n enableOutsideDays={enableOutsideDays}\n endDate={endDate}\n endDateId={endDateId}\n firstDayOfWeek={firstDayOfWeek}\n hideKeyboardShortcutsPanel={hideKeyboardShortcutsPanel}\n initialVisibleMonth={() => (initialVisibleMonth ? moment(initialVisibleMonth) : moment(startDate))}\n isDayBlocked={isDayBlocked}\n isDayHighlighted={isDayHighlighted}\n isOutsideRange={isOutsideRange === true || isOutsideRange === false ? () => isOutsideRange : isOutsideRange}\n keepOpenOnDateSelect={keepOpenOnDateSelect}\n labelFrom={labelFrom}\n labelTo={labelTo}\n minimumNights={minimumNights}\n onDatesChange={onDatesChange}\n onChangeStartInput={onChangeStartInput}\n onChangeEndInput={onChangeEndInput}\n onClose={onClose}\n onNextMonthClick={onNextMonthClick}\n onPrevMonthClick={onPrevMonthClick}\n onOutsideClick={onOutsideClick}\n phrases={phrases}\n readOnly={readOnly}\n reopenPickerOnClearDates={reopenPickerOnClearDates}\n required={required}\n startDateRequired={startDateRequired}\n endDateRequired={endDateRequired}\n screenReaderInputMessage={screenReaderInputMessage}\n startDate={startDate}\n startDateId={startDateId}\n transitionDuration={transitionDuration}\n verticalSpacing={verticalSpacing}\n hasError={hasError}\n validationMessage={validationMessage}\n />\n </div>\n );\n};\n\nconst dateRangePickerProps = {\n containerProps: PropTypes.shape({}).description('Set of Properties attached to the main container'),\n className: PropTypes.string.description('html class attribute'),\n disabled: PropTypes.bool.description('disable component or not').defaultValue(false),\n required: PropTypes.bool.description('input is required or not').defaultValue(false),\n startDateRequired: PropTypes.bool.description('start date is required or not').defaultValue(false),\n endDateRequired: PropTypes.bool.description('end date is required or not').defaultValue(false),\n id: PropTypes.string.description('components id'),\n hasError: PropTypes.bool.description('set error state').defaultValue(false),\n validationMessage: PropTypes.string.description('validation message'),\n readOnly: PropTypes.bool.description('component is read only or not').description(false),\n screenReaderInputMessage: PropTypes.string\n .description('message to be anounced by screen reader')\n .defaultValue('select date'),\n initialVisibleMonth: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.instanceOf(moment)]).description(\n 'initial visible month',\n ),\n firstDayOfWeek: PropTypes.number.description('first day of week').defaultValue(0),\n keepOpenOnDateSelect: PropTypes.bool.description('keep picker open when a date is selected').defaultValue(true),\n reopenPickerOnClearDates: PropTypes.bool.description('reopen picker when clearing dates').defaultValue(false),\n hideKeyboardShortcutsPanel: PropTypes.bool.description('hide keyabord shortcut panel or not'),\n onPrevMonthClick: PropTypes.func.description('function executed when clicking on prev month button'),\n onNextMonthClick: PropTypes.func.description('function executed when clicking on next month button'),\n onClose: PropTypes.func.description('function executed when component closes'),\n transitionDuration: PropTypes.number.description('transition duration').defaultValue(0),\n verticalSpacing: PropTypes.number.description('vertical spacing'),\n isDayBlocked: PropTypes.func.description('function that returns each day and disables desired dates'),\n isOutsideRange: PropTypes.func.description('function that returns each day and disables outisde range dates'),\n isDayHighlighted: PropTypes.func.description('function that returns each day and higlights desired dates'),\n minimumNights: PropTypes.number.description('Minimum nights'),\n displayFormat: PropTypes.string.description('display format').defaultValue('L'),\n displayFormatDay: PropTypes.string.description('display format day').defaultValue('D'),\n phrases: PropTypes.shape({\n calendarLabel: PropTypes.string,\n closeDatePicker: PropTypes.string,\n clearDates: PropTypes.string,\n focusStartDate: PropTypes.string,\n jumpToPrevMonth: PropTypes.string,\n jumpToNextMonth: PropTypes.string,\n keyboardShortcuts: PropTypes.string,\n showKeyboardShortcutsPanel: PropTypes.string,\n hideKeyboardShortcutsPanel: PropTypes.string,\n openThisPanel: PropTypes.string,\n enterKey: PropTypes.string,\n leftArrowRightArrow: PropTypes.string,\n upArrowDownArrow: PropTypes.string,\n pageUpPageDown: PropTypes.string,\n homeEnd: PropTypes.string,\n escape: PropTypes.string,\n questionMark: PropTypes.string,\n selectFocusedDate: PropTypes.string,\n moveFocusByOneDay: PropTypes.string,\n moveFocusByOneWeek: PropTypes.string,\n moveFocusByOneMonth: PropTypes.string,\n moveFocustoStartAndEndOfWeek: PropTypes.string,\n returnFocusToInput: PropTypes.string,\n keyboardNavigationInstructions: PropTypes.string,\n chooseAvailableStartDate: PropTypes.func,\n chooseAvailableEndDate: PropTypes.func,\n dateIsUnavailable: PropTypes.func,\n dateIsSelected: PropTypes.func,\n }).description('react-dates phrases'),\n startDate: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.instanceOf(moment)]).description(\n 'start date value',\n ),\n endDate: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.instanceOf(moment)]).description(\n 'end date value',\n ),\n startDateId: PropTypes.string.description('start date id'),\n endDateId: PropTypes.string.description('end date id'),\n labelFrom: PropTypes.string.description('label of start date input'),\n labelTo: PropTypes.string.description('label of end date input'),\n enableOutsideDays: PropTypes.bool.description('enable days outside current month').defaultValue('true'),\n onDatesChange: PropTypes.func.description('function executed when dates change'),\n onChangeStartInput: PropTypes.func.description('function executed when start date input changes'),\n onChangeEndInput: PropTypes.func.description('function executed when end date input changes'),\n onOutsideClick: PropTypes.func.description('function executed when clicking outside component'),\n};\n\nDSDateRangePicker.propTypes = dateRangePickerProps;\nDSDateRangePicker.displayName = 'DSDateRangePicker';\nconst DateRangePickerWithSchema = describe(DSDateRangePicker);\nDateRangePickerWithSchema.propTypes = dateRangePickerProps;\n\nexport { DayPickerRangeController, START_DATE, END_DATE, DateRangePickerWithSchema, DSDateRangePicker };\n\nexport default DSDateRangePicker;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": "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",
6
6
  "names": ["DayPickerRangeController", "moment", "DSDateRangePickerImpl"]
7
7
  }
@@ -38,8 +38,8 @@ var import_ds_classnames = require("@elliemae/ds-classnames");
38
38
  var import_ds_form = require("@elliemae/ds-form");
39
39
  var import_ds_popper = __toESM(require("@elliemae/ds-popper"));
40
40
  var import_ds_date_picker = require("@elliemae/ds-date-picker");
41
- var import_DayPickerRangeController = __toESM(require("./DayPickerRangeController"));
42
- var import_isMaxDiffSafe = require("../isMaxDiffSafe");
41
+ var import_DayPickerRangeController = __toESM(require("./DayPickerRangeController.js"));
42
+ var import_isMaxDiffSafe = require("../isMaxDiffSafe.js");
43
43
  const START_DATE = "startDate";
44
44
  const END_DATE = "endDate";
45
45
  const { classNameElement, classNameBlock } = (0, import_ds_classnames.convertPropToCssClassName)("datepicker");
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/DSDateRangePickerImpl.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* eslint-disable complexity */\n/* eslint-disable import/no-unresolved */\n/* eslint-disable max-lines */\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport moment from 'moment';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { MASK_TYPES, MASK_PIPES, DSFormItemLayout, DSInputMask } from '@elliemae/ds-form';\nimport DSPopper from '@elliemae/ds-popper';\nimport { DatePickerPicker, renderMonthElement } from '@elliemae/ds-date-picker';\nimport DayPickerRangeController from './DayPickerRangeController';\nimport { isMaxDiffSafe } from '../isMaxDiffSafe';\n\nexport const START_DATE = 'startDate';\nexport const END_DATE = 'endDate';\n\nconst { classNameElement, classNameBlock } = convertPropToCssClassName('datepicker');\n\nexport default class DSDateRangePickerImpl extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n startDate: props.startDate ? moment(props.startDate) : null,\n endDate: props.endDate ? moment(props.endDate) : null,\n focusedInput: START_DATE,\n showPicker: false,\n startDateError: false,\n endDateError: false,\n };\n }\n\n componentDidMount() {\n document.addEventListener('keydown', this.handleKeyDown, false);\n }\n\n componentWillUnmount() {\n document.removeEventListener('keydown', this.handleKeyDown, false);\n }\n\n onDatesChange = ({ startDate, endDate }) => {\n const { onDatesChange } = this.props;\n onDatesChange(startDate, endDate);\n const safe = isMaxDiffSafe(startDate, endDate, this.state.startDate, this.state.endDate);\n if (!safe) {\n this.setState({ showPicker: false });\n }\n this.setState({\n startDate,\n endDate,\n primaryStartInput: false,\n primaryEndInput: false,\n });\n };\n\n onFocusChange = () => {\n this.setState(({ focusedInput }) => ({\n focusedInput: focusedInput === START_DATE ? END_DATE : START_DATE,\n }));\n };\n\n handleKeyDown = (event) => {\n if (event.key === 'Escape') this.setState({ showPicker: false });\n };\n\n getSafeStartInputValue = () => {\n const { startInput, primaryStartInput, startDate } = this.state;\n if (primaryStartInput && startInput) return startInput;\n if (!startDate) return '';\n return startDate.format('MMDDYYYY');\n };\n\n getSafeEndInputValue = () => {\n const { endInput, primaryEndInput, endDate } = this.state;\n if (primaryEndInput && endInput) return endInput;\n if (!endDate) return '';\n return endDate.format('MMDDYYYY');\n };\n\n changeFocus = () => {\n const { disabled } = this.props;\n if (!disabled) {\n this.setState(() => ({ focusedInput: 'startDate' }));\n }\n };\n\n handleChangeStart = (e) => {\n const { onChangeStartInput, isDayBlocked, minimumNights } = this.props;\n const { endDate } = this.state;\n const startInputVal = e.target.value;\n let momentValue = null;\n if (startInputVal && moment(startInputVal, 'MM/DD/YYYY', true).isValid()) {\n momentValue = moment(startInputVal);\n }\n\n const startDateBlocked = isDayBlocked(momentValue);\n\n const isStartDateAcceptable = !startDateBlocked && momentValue && startInputVal !== '';\n const areDatesValid = endDate && momentValue && endDate?.isValid() && momentValue?.isValid();\n\n const canEndBeSameAsStart = minimumNights === 0;\n const isStartAcceptableWithSelectedEnd =\n !endDate ||\n (areDatesValid &&\n ((canEndBeSameAsStart && momentValue.diff(endDate, 'days') <= 0) ||\n (!canEndBeSameAsStart && momentValue.diff(endDate, 'days') < 0)));\n\n const invalidDate = !isStartDateAcceptable || !isStartAcceptableWithSelectedEnd;\n if (startDateBlocked) momentValue = null;\n onChangeStartInput(momentValue);\n this.setState((prevState: { endDateError: boolean }) => ({\n startDate: momentValue,\n startInput: startInputVal,\n primaryStartInput: true,\n startDateError: invalidDate,\n endDateError:\n !isStartDateAcceptable || !prevState.endDateError ? prevState.endDateError : !isStartAcceptableWithSelectedEnd,\n }));\n };\n\n handleChangeEnd = (e) => {\n const { onChangeEndInput, isDayBlocked, minimumNights } = this.props;\n const { startDate } = this.state;\n const endInputValue = e.target.value;\n let momentValue = null;\n if (endInputValue && moment(endInputValue, 'MM/DD/YYYY', true).isValid()) {\n momentValue = moment(endInputValue);\n }\n const endDateBlocked = isDayBlocked(momentValue);\n\n const isEndDateAcceptable = !endDateBlocked && momentValue && endInputValue !== '';\n const areDatesValid = startDate && momentValue && startDate?.isValid() && momentValue?.isValid();\n\n const canEndBeSameAsStart = minimumNights === 0;\n const isEndAcceptableWithSelectedStart =\n !startDate || // we can't compare with start date because it's not yet set\n (areDatesValid && // it's set and both are valid\n ((canEndBeSameAsStart && momentValue.diff(startDate, 'days') >= 0) || // >= is valid\n (!canEndBeSameAsStart && momentValue.diff(startDate, 'days') > 0))); // only > is valid\n\n const invalidDate = !isEndDateAcceptable || !isEndAcceptableWithSelectedStart;\n\n if (endDateBlocked) momentValue = null;\n onChangeEndInput(momentValue);\n this.setState((prevState: { startDateError: boolean }) => ({\n endDate: momentValue,\n endInput: endInputValue,\n primaryEndInput: true,\n startDateError:\n !isEndDateAcceptable || !prevState.startDateError\n ? prevState.startDateError\n : !isEndAcceptableWithSelectedStart,\n endDateError: invalidDate,\n }));\n };\n\n handleChangeDate = ({ startDate: _start, endDate }) => {\n if (_start && endDate) {\n this.setState({\n startDate: moment(_start),\n endDate,\n primaryStartInput: false,\n primaryEndInput: false,\n });\n } else if (_start) {\n this.setState({ startDate: moment(_start), primaryStartInput: false });\n } else if (endDate) {\n this.setState({ endDate, primaryEndInput: false });\n }\n };\n\n render() {\n const { startDate, endDate, focusedInput, showPicker, startDateError, endDateError } = this.state;\n\n const {\n disabled,\n displayFormatDay,\n minimumNights,\n labelFrom,\n labelTo,\n isDayBlocked,\n isDayHighlighted,\n isOutsideRange,\n enableOutsideDays,\n startDateRequired,\n endDateRequired,\n onOutsideClick,\n onNextMonthClick,\n onPrevMonthClick,\n onClose,\n hasError,\n validationMessage,\n } = this.props;\n\n const inputClass = classNameBlock('inputs', 'range-picker');\n const inputClassModifier = '';\n\n const safeStartInputValue = this.getSafeStartInputValue();\n const safeEndInputValue = this.getSafeEndInputValue();\n\n return (\n <div className={`${inputClass} ${inputClassModifier}`}>\n <div className={classNameBlock('wrapper-input-date-range-picker-controller')}>\n <DSFormItemLayout\n floatingLabel\n inputComponent={DSInputMask}\n labelText={labelFrom}\n mask={MASK_TYPES.DATE}\n onChange={this.handleChangeStart}\n onFocus={() => this.setState({ showPicker: false })}\n pipe={MASK_PIPES.AUTO_CORRECT_DATE}\n value={safeStartInputValue}\n required={startDateRequired}\n hasError={hasError || startDateError}\n placeholder=\"MM/DD/YYYY\"\n />\n <DSFormItemLayout\n floatingLabel\n inputComponent={DSInputMask}\n labelText={labelTo}\n mask={MASK_TYPES.DATE}\n onChange={this.handleChangeEnd}\n onFocus={() => this.setState({ showPicker: false })}\n pipe={MASK_PIPES.AUTO_CORRECT_DATE}\n value={safeEndInputValue}\n required={endDateRequired}\n hasError={hasError || endDateError}\n validationMessage={validationMessage}\n placeholder=\"MM/DD/YYYY\"\n />\n </div>\n <div className={classNameBlock('wrapper-button-date-range-picker-controller')}>\n <DSPopper\n contentComponent={\n <div>\n {showPicker && (\n <DayPickerRangeController\n enableOutsideDays={enableOutsideDays}\n isDayBlocked={isDayBlocked}\n isDayHighlighted={isDayHighlighted}\n isOutsideRange={isOutsideRange}\n displayFormatDay={displayFormatDay}\n endDate={endDate}\n focusedInput={focusedInput}\n hideKeyboardShortcutsPanel\n minimumNights={minimumNights}\n onDatesChange={this.onDatesChange}\n onFocusChange={this.onFocusChange}\n onOutsideClick={(e) => {\n onOutsideClick(e);\n this.setState({ showPicker: false });\n }}\n onNextMonthClick={onNextMonthClick}\n onPrevMonthClick={onPrevMonthClick}\n startDate={startDate}\n renderMonthElement={renderMonthElement}\n />\n )}\n </div>\n }\n isOpen={showPicker && !startDateError && !endDateError}\n onClose={onClose}\n placement=\"bottom-end\"\n showArrow={false}\n triggerComponent={\n <div onFocus={() => this.setState({ showPicker: true })}>\n <DatePickerPicker\n className={classNameElement('picker')}\n disabled={disabled}\n onClick={() => this.setState({ showPicker: true })}\n />\n {hasError && validationMessage && <div style={{ height: 15 }} />}\n </div>\n }\n />\n </div>\n </div>\n );\n }\n}\n\nDSDateRangePickerImpl.propTypes = {\n startDate: PropTypes.instanceOf(Date, moment),\n endDate: PropTypes.instanceOf(Date, moment),\n onDatesChange: PropTypes.func,\n onChangeStartInput: PropTypes.func,\n onChangeEndInput: PropTypes.func,\n onNextMonthClick: PropTypes.func,\n onPrevMonthClick: PropTypes.func,\n onClose: PropTypes.func,\n onOutsideClick: PropTypes.func,\n disabled: PropTypes.bool,\n displayFormatDay: PropTypes.string,\n minimumNights: PropTypes.number,\n labelTo: PropTypes.string,\n labelFrom: PropTypes.string,\n isDayBlocked: PropTypes.func,\n isDayHighlighted: PropTypes.func,\n isOutsideRange: PropTypes.func,\n enableOutsideDays: PropTypes.bool,\n startDateRequired: PropTypes.bool,\n endDateRequired: PropTypes.bool,\n hasError: PropTypes.bool,\n validationMessage: PropTypes.string,\n};\n", "import * as React from 'react';\nexport { React };\n"],
4
+ "sourcesContent": ["/* eslint-disable complexity */\n/* eslint-disable import/no-unresolved */\n/* eslint-disable max-lines */\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport moment from 'moment';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { MASK_TYPES, MASK_PIPES, DSFormItemLayout, DSInputMask } from '@elliemae/ds-form';\nimport DSPopper from '@elliemae/ds-popper';\nimport { DatePickerPicker, renderMonthElement } from '@elliemae/ds-date-picker';\nimport DayPickerRangeController from './DayPickerRangeController.js';\nimport { isMaxDiffSafe } from '../isMaxDiffSafe.js';\n\nexport const START_DATE = 'startDate';\nexport const END_DATE = 'endDate';\n\nconst { classNameElement, classNameBlock } = convertPropToCssClassName('datepicker');\n\nexport default class DSDateRangePickerImpl extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n startDate: props.startDate ? moment(props.startDate) : null,\n endDate: props.endDate ? moment(props.endDate) : null,\n focusedInput: START_DATE,\n showPicker: false,\n startDateError: false,\n endDateError: false,\n };\n }\n\n componentDidMount() {\n document.addEventListener('keydown', this.handleKeyDown, false);\n }\n\n componentWillUnmount() {\n document.removeEventListener('keydown', this.handleKeyDown, false);\n }\n\n onDatesChange = ({ startDate, endDate }) => {\n const { onDatesChange } = this.props;\n onDatesChange(startDate, endDate);\n const safe = isMaxDiffSafe(startDate, endDate, this.state.startDate, this.state.endDate);\n if (!safe) {\n this.setState({ showPicker: false });\n }\n this.setState({\n startDate,\n endDate,\n primaryStartInput: false,\n primaryEndInput: false,\n });\n };\n\n onFocusChange = () => {\n this.setState(({ focusedInput }) => ({\n focusedInput: focusedInput === START_DATE ? END_DATE : START_DATE,\n }));\n };\n\n handleKeyDown = (event) => {\n if (event.key === 'Escape') this.setState({ showPicker: false });\n };\n\n getSafeStartInputValue = () => {\n const { startInput, primaryStartInput, startDate } = this.state;\n if (primaryStartInput && startInput) return startInput;\n if (!startDate) return '';\n return startDate.format('MMDDYYYY');\n };\n\n getSafeEndInputValue = () => {\n const { endInput, primaryEndInput, endDate } = this.state;\n if (primaryEndInput && endInput) return endInput;\n if (!endDate) return '';\n return endDate.format('MMDDYYYY');\n };\n\n changeFocus = () => {\n const { disabled } = this.props;\n if (!disabled) {\n this.setState(() => ({ focusedInput: 'startDate' }));\n }\n };\n\n handleChangeStart = (e) => {\n const { onChangeStartInput, isDayBlocked, minimumNights } = this.props;\n const { endDate } = this.state;\n const startInputVal = e.target.value;\n let momentValue = null;\n if (startInputVal && moment(startInputVal, 'MM/DD/YYYY', true).isValid()) {\n momentValue = moment(startInputVal);\n }\n\n const startDateBlocked = isDayBlocked(momentValue);\n\n const isStartDateAcceptable = !startDateBlocked && momentValue && startInputVal !== '';\n const areDatesValid = endDate && momentValue && endDate?.isValid() && momentValue?.isValid();\n\n const canEndBeSameAsStart = minimumNights === 0;\n const isStartAcceptableWithSelectedEnd =\n !endDate ||\n (areDatesValid &&\n ((canEndBeSameAsStart && momentValue.diff(endDate, 'days') <= 0) ||\n (!canEndBeSameAsStart && momentValue.diff(endDate, 'days') < 0)));\n\n const invalidDate = !isStartDateAcceptable || !isStartAcceptableWithSelectedEnd;\n if (startDateBlocked) momentValue = null;\n onChangeStartInput(momentValue);\n this.setState((prevState: { endDateError: boolean }) => ({\n startDate: momentValue,\n startInput: startInputVal,\n primaryStartInput: true,\n startDateError: invalidDate,\n endDateError:\n !isStartDateAcceptable || !prevState.endDateError ? prevState.endDateError : !isStartAcceptableWithSelectedEnd,\n }));\n };\n\n handleChangeEnd = (e) => {\n const { onChangeEndInput, isDayBlocked, minimumNights } = this.props;\n const { startDate } = this.state;\n const endInputValue = e.target.value;\n let momentValue = null;\n if (endInputValue && moment(endInputValue, 'MM/DD/YYYY', true).isValid()) {\n momentValue = moment(endInputValue);\n }\n const endDateBlocked = isDayBlocked(momentValue);\n\n const isEndDateAcceptable = !endDateBlocked && momentValue && endInputValue !== '';\n const areDatesValid = startDate && momentValue && startDate?.isValid() && momentValue?.isValid();\n\n const canEndBeSameAsStart = minimumNights === 0;\n const isEndAcceptableWithSelectedStart =\n !startDate || // we can't compare with start date because it's not yet set\n (areDatesValid && // it's set and both are valid\n ((canEndBeSameAsStart && momentValue.diff(startDate, 'days') >= 0) || // >= is valid\n (!canEndBeSameAsStart && momentValue.diff(startDate, 'days') > 0))); // only > is valid\n\n const invalidDate = !isEndDateAcceptable || !isEndAcceptableWithSelectedStart;\n\n if (endDateBlocked) momentValue = null;\n onChangeEndInput(momentValue);\n this.setState((prevState: { startDateError: boolean }) => ({\n endDate: momentValue,\n endInput: endInputValue,\n primaryEndInput: true,\n startDateError:\n !isEndDateAcceptable || !prevState.startDateError\n ? prevState.startDateError\n : !isEndAcceptableWithSelectedStart,\n endDateError: invalidDate,\n }));\n };\n\n handleChangeDate = ({ startDate: _start, endDate }) => {\n if (_start && endDate) {\n this.setState({\n startDate: moment(_start),\n endDate,\n primaryStartInput: false,\n primaryEndInput: false,\n });\n } else if (_start) {\n this.setState({ startDate: moment(_start), primaryStartInput: false });\n } else if (endDate) {\n this.setState({ endDate, primaryEndInput: false });\n }\n };\n\n render() {\n const { startDate, endDate, focusedInput, showPicker, startDateError, endDateError } = this.state;\n\n const {\n disabled,\n displayFormatDay,\n minimumNights,\n labelFrom,\n labelTo,\n isDayBlocked,\n isDayHighlighted,\n isOutsideRange,\n enableOutsideDays,\n startDateRequired,\n endDateRequired,\n onOutsideClick,\n onNextMonthClick,\n onPrevMonthClick,\n onClose,\n hasError,\n validationMessage,\n } = this.props;\n\n const inputClass = classNameBlock('inputs', 'range-picker');\n const inputClassModifier = '';\n\n const safeStartInputValue = this.getSafeStartInputValue();\n const safeEndInputValue = this.getSafeEndInputValue();\n\n return (\n <div className={`${inputClass} ${inputClassModifier}`}>\n <div className={classNameBlock('wrapper-input-date-range-picker-controller')}>\n <DSFormItemLayout\n floatingLabel\n inputComponent={DSInputMask}\n labelText={labelFrom}\n mask={MASK_TYPES.DATE}\n onChange={this.handleChangeStart}\n onFocus={() => this.setState({ showPicker: false })}\n pipe={MASK_PIPES.AUTO_CORRECT_DATE}\n value={safeStartInputValue}\n required={startDateRequired}\n hasError={hasError || startDateError}\n placeholder=\"MM/DD/YYYY\"\n />\n <DSFormItemLayout\n floatingLabel\n inputComponent={DSInputMask}\n labelText={labelTo}\n mask={MASK_TYPES.DATE}\n onChange={this.handleChangeEnd}\n onFocus={() => this.setState({ showPicker: false })}\n pipe={MASK_PIPES.AUTO_CORRECT_DATE}\n value={safeEndInputValue}\n required={endDateRequired}\n hasError={hasError || endDateError}\n validationMessage={validationMessage}\n placeholder=\"MM/DD/YYYY\"\n />\n </div>\n <div className={classNameBlock('wrapper-button-date-range-picker-controller')}>\n <DSPopper\n contentComponent={\n <div>\n {showPicker && (\n <DayPickerRangeController\n enableOutsideDays={enableOutsideDays}\n isDayBlocked={isDayBlocked}\n isDayHighlighted={isDayHighlighted}\n isOutsideRange={isOutsideRange}\n displayFormatDay={displayFormatDay}\n endDate={endDate}\n focusedInput={focusedInput}\n hideKeyboardShortcutsPanel\n minimumNights={minimumNights}\n onDatesChange={this.onDatesChange}\n onFocusChange={this.onFocusChange}\n onOutsideClick={(e) => {\n onOutsideClick(e);\n this.setState({ showPicker: false });\n }}\n onNextMonthClick={onNextMonthClick}\n onPrevMonthClick={onPrevMonthClick}\n startDate={startDate}\n renderMonthElement={renderMonthElement}\n />\n )}\n </div>\n }\n isOpen={showPicker && !startDateError && !endDateError}\n onClose={onClose}\n placement=\"bottom-end\"\n showArrow={false}\n triggerComponent={\n <div onFocus={() => this.setState({ showPicker: true })}>\n <DatePickerPicker\n className={classNameElement('picker')}\n disabled={disabled}\n onClick={() => this.setState({ showPicker: true })}\n />\n {hasError && validationMessage && <div style={{ height: 15 }} />}\n </div>\n }\n />\n </div>\n </div>\n );\n }\n}\n\nDSDateRangePickerImpl.propTypes = {\n startDate: PropTypes.instanceOf(Date, moment),\n endDate: PropTypes.instanceOf(Date, moment),\n onDatesChange: PropTypes.func,\n onChangeStartInput: PropTypes.func,\n onChangeEndInput: PropTypes.func,\n onNextMonthClick: PropTypes.func,\n onPrevMonthClick: PropTypes.func,\n onClose: PropTypes.func,\n onOutsideClick: PropTypes.func,\n disabled: PropTypes.bool,\n displayFormatDay: PropTypes.string,\n minimumNights: PropTypes.number,\n labelTo: PropTypes.string,\n labelFrom: PropTypes.string,\n isDayBlocked: PropTypes.func,\n isDayHighlighted: PropTypes.func,\n isOutsideRange: PropTypes.func,\n enableOutsideDays: PropTypes.bool,\n startDateRequired: PropTypes.bool,\n endDateRequired: PropTypes.bool,\n hasError: PropTypes.bool,\n validationMessage: PropTypes.string,\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
5
  "mappings": "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",
6
6
  "names": ["React", "moment", "DSPopper", "DayPickerRangeController", "PropTypes"]
7
7
  }
package/dist/cjs/index.js CHANGED
@@ -29,6 +29,6 @@ __export(src_exports, {
29
29
  });
30
30
  module.exports = __toCommonJS(src_exports);
31
31
  var React = __toESM(require("react"));
32
- var import_DSDateRangePicker = __toESM(require("./DSDateRangePicker"));
33
- __reExport(src_exports, require("./DSDateRangePicker"), module.exports);
32
+ var import_DSDateRangePicker = __toESM(require("./DSDateRangePicker.js"));
33
+ __reExport(src_exports, require("./DSDateRangePicker.js"), module.exports);
34
34
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.tsx", "../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["export { default } from './DSDateRangePicker';\nexport * from './DSDateRangePicker';\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,+BAAwB;AACxB,wBAAc,gCADd;",
4
+ "sourcesContent": ["export { default } from './DSDateRangePicker.js';\nexport * from './DSDateRangePicker.js';\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,+BAAwB;AACxB,wBAAc,mCADd;",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,7 @@
1
+ {
2
+ "type": "commonjs",
3
+ "sideEffects": [
4
+ "*.css",
5
+ "*.scss"
6
+ ]
7
+ }
@@ -1,12 +1,13 @@
1
1
  import * as React from "react";
2
2
  import { jsx } from "react/jsx-runtime";
3
- import { PropTypes, describe } from "@elliemae/ds-utilities";
3
+ import { useDeprecateComponent } from "@elliemae/ds-utilities";
4
+ import { PropTypes, describe } from "@elliemae/ds-props-helpers";
4
5
  import { convertPropToCssClassName } from "@elliemae/ds-classnames";
5
6
  import moment from "moment";
6
- import "react-dates/initialize";
7
- import { DateRangePickerPhrases } from "react-dates/lib/defaultPhrases";
8
- import DayPickerRangeController from "./components/DayPickerRangeController";
9
- import DSDateRangePickerImpl, { START_DATE, END_DATE } from "./components/DSDateRangePickerImpl";
7
+ import "react-dates/initialize.js";
8
+ import { DateRangePickerPhrases } from "react-dates/lib/defaultPhrases.js";
9
+ import DayPickerRangeController from "./components/DayPickerRangeController.js";
10
+ import DSDateRangePickerImpl, { START_DATE, END_DATE } from "./components/DSDateRangePickerImpl.js";
10
11
  const DSDateRangePicker = ({
11
12
  containerProps = {},
12
13
  className = "",
@@ -48,6 +49,7 @@ const DSDateRangePicker = ({
48
49
  onChangeEndInput = () => null,
49
50
  onDatesChange = () => null
50
51
  }) => {
52
+ useDeprecateComponent({ componentName: "ds-date-range-picker", version: "3.x Date: 2023 Q1" });
51
53
  const { cssClassName, prefixBlockName } = convertPropToCssClassName("datepicker", className, {
52
54
  hasError,
53
55
  readOnly,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/DSDateRangePicker.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\nimport React from 'react';\nimport { PropTypes, describe } from '@elliemae/ds-utilities';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport moment from 'moment';\nimport 'react-dates/initialize';\nimport { DateRangePickerPhrases } from 'react-dates/lib/defaultPhrases';\nimport DayPickerRangeController from './components/DayPickerRangeController';\nimport DSDateRangePickerImpl, { START_DATE, END_DATE } from './components/DSDateRangePickerImpl';\n\nconst DSDateRangePicker = ({\n containerProps = {},\n className = '',\n disabled = false,\n required = false,\n startDateRequired = false,\n endDateRequired = false,\n id,\n hasError = false,\n validationMessage = '',\n readOnly = false,\n screenReaderInputMessage = 'Select date',\n initialVisibleMonth = moment(),\n firstDayOfWeek = 0,\n keepOpenOnDateSelect = true,\n reopenPickerOnClearDates = false,\n hideKeyboardShortcutsPanel = true,\n onPrevMonthClick = () => null,\n onNextMonthClick = () => null,\n onClose = () => null,\n onOutsideClick = () => null,\n transitionDuration = 0,\n verticalSpacing = 0,\n minimumNights = 0,\n isDayBlocked = () => false,\n isOutsideRange = () => false,\n isDayHighlighted = () => false,\n displayFormat = 'L',\n displayFormatDay = 'D',\n phrases = DateRangePickerPhrases,\n startDate,\n endDate,\n startDateId = 'startDateId',\n endDateId = 'endDateId',\n labelFrom = 'From',\n labelTo = 'To',\n enableOutsideDays = true,\n onChangeStartInput = () => null,\n onChangeEndInput = () => null,\n onDatesChange = () => null,\n}) => {\n const { cssClassName, prefixBlockName } = convertPropToCssClassName('datepicker', className, {\n hasError,\n readOnly,\n disabled,\n id,\n });\n return (\n <div {...containerProps} className={`${prefixBlockName}-range ${cssClassName} ${prefixBlockName}-range`}>\n <DSDateRangePickerImpl\n appendToBody\n disabled={disabled}\n displayFormat={displayFormat}\n displayFormatDay={displayFormatDay}\n enableOutsideDays={enableOutsideDays}\n endDate={endDate}\n endDateId={endDateId}\n firstDayOfWeek={firstDayOfWeek}\n hideKeyboardShortcutsPanel={hideKeyboardShortcutsPanel}\n initialVisibleMonth={() => (initialVisibleMonth ? moment(initialVisibleMonth) : moment(startDate))}\n isDayBlocked={isDayBlocked}\n isDayHighlighted={isDayHighlighted}\n isOutsideRange={isOutsideRange === true || isOutsideRange === false ? () => isOutsideRange : isOutsideRange}\n keepOpenOnDateSelect={keepOpenOnDateSelect}\n labelFrom={labelFrom}\n labelTo={labelTo}\n minimumNights={minimumNights}\n onDatesChange={onDatesChange}\n onChangeStartInput={onChangeStartInput}\n onChangeEndInput={onChangeEndInput}\n onClose={onClose}\n onNextMonthClick={onNextMonthClick}\n onPrevMonthClick={onPrevMonthClick}\n onOutsideClick={onOutsideClick}\n phrases={phrases}\n readOnly={readOnly}\n reopenPickerOnClearDates={reopenPickerOnClearDates}\n required={required}\n startDateRequired={startDateRequired}\n endDateRequired={endDateRequired}\n screenReaderInputMessage={screenReaderInputMessage}\n startDate={startDate}\n startDateId={startDateId}\n transitionDuration={transitionDuration}\n verticalSpacing={verticalSpacing}\n hasError={hasError}\n validationMessage={validationMessage}\n />\n </div>\n );\n};\n\nconst dateRangePickerProps = {\n containerProps: PropTypes.shape({}).description('Set of Properties attached to the main container'),\n className: PropTypes.string.description('html class attribute'),\n disabled: PropTypes.bool.description('disable component or not').defaultValue(false),\n required: PropTypes.bool.description('input is required or not').defaultValue(false),\n startDateRequired: PropTypes.bool.description('start date is required or not').defaultValue(false),\n endDateRequired: PropTypes.bool.description('end date is required or not').defaultValue(false),\n id: PropTypes.string.description('components id'),\n hasError: PropTypes.bool.description('set error state').defaultValue(false),\n validationMessage: PropTypes.string.description('validation message'),\n readOnly: PropTypes.bool.description('component is read only or not').description(false),\n screenReaderInputMessage: PropTypes.string\n .description('message to be anounced by screen reader')\n .defaultValue('select date'),\n initialVisibleMonth: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.instanceOf(moment)]).description(\n 'initial visible month',\n ),\n firstDayOfWeek: PropTypes.number.description('first day of week').defaultValue(0),\n keepOpenOnDateSelect: PropTypes.bool.description('keep picker open when a date is selected').defaultValue(true),\n reopenPickerOnClearDates: PropTypes.bool.description('reopen picker when clearing dates').defaultValue(false),\n hideKeyboardShortcutsPanel: PropTypes.bool.description('hide keyabord shortcut panel or not'),\n onPrevMonthClick: PropTypes.func.description('function executed when clicking on prev month button'),\n onNextMonthClick: PropTypes.func.description('function executed when clicking on next month button'),\n onClose: PropTypes.func.description('function executed when component closes'),\n transitionDuration: PropTypes.number.description('transition duration').defaultValue(0),\n verticalSpacing: PropTypes.number.description('vertical spacing'),\n isDayBlocked: PropTypes.func.description('function that returns each day and disables desired dates'),\n isOutsideRange: PropTypes.func.description('function that returns each day and disables outisde range dates'),\n isDayHighlighted: PropTypes.func.description('function that returns each day and higlights desired dates'),\n minimumNights: PropTypes.number.description('Minimum nights'),\n displayFormat: PropTypes.string.description('display format').defaultValue('L'),\n displayFormatDay: PropTypes.string.description('display format day').defaultValue('D'),\n phrases: PropTypes.shape({\n calendarLabel: PropTypes.string,\n closeDatePicker: PropTypes.string,\n clearDates: PropTypes.string,\n focusStartDate: PropTypes.string,\n jumpToPrevMonth: PropTypes.string,\n jumpToNextMonth: PropTypes.string,\n keyboardShortcuts: PropTypes.string,\n showKeyboardShortcutsPanel: PropTypes.string,\n hideKeyboardShortcutsPanel: PropTypes.string,\n openThisPanel: PropTypes.string,\n enterKey: PropTypes.string,\n leftArrowRightArrow: PropTypes.string,\n upArrowDownArrow: PropTypes.string,\n pageUpPageDown: PropTypes.string,\n homeEnd: PropTypes.string,\n escape: PropTypes.string,\n questionMark: PropTypes.string,\n selectFocusedDate: PropTypes.string,\n moveFocusByOneDay: PropTypes.string,\n moveFocusByOneWeek: PropTypes.string,\n moveFocusByOneMonth: PropTypes.string,\n moveFocustoStartAndEndOfWeek: PropTypes.string,\n returnFocusToInput: PropTypes.string,\n keyboardNavigationInstructions: PropTypes.string,\n chooseAvailableStartDate: PropTypes.func,\n chooseAvailableEndDate: PropTypes.func,\n dateIsUnavailable: PropTypes.func,\n dateIsSelected: PropTypes.func,\n }).description('react-dates phrases'),\n startDate: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.instanceOf(moment)]).description(\n 'start date value',\n ),\n endDate: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.instanceOf(moment)]).description(\n 'end date value',\n ),\n startDateId: PropTypes.string.description('start date id'),\n endDateId: PropTypes.string.description('end date id'),\n labelFrom: PropTypes.string.description('label of start date input'),\n labelTo: PropTypes.string.description('label of end date input'),\n enableOutsideDays: PropTypes.bool.description('enable days outside current month').defaultValue('true'),\n onDatesChange: PropTypes.func.description('function executed when dates change'),\n onChangeStartInput: PropTypes.func.description('function executed when start date input changes'),\n onChangeEndInput: PropTypes.func.description('function executed when end date input changes'),\n onOutsideClick: PropTypes.func.description('function executed when clicking outside component'),\n};\n\nDSDateRangePicker.propTypes = dateRangePickerProps;\nDSDateRangePicker.displayName = 'DSDateRangePicker';\nconst DateRangePickerWithSchema = describe(DSDateRangePicker);\nDateRangePickerWithSchema.propTypes = dateRangePickerProps;\n\nexport { DayPickerRangeController, START_DATE, END_DATE, DateRangePickerWithSchema, DSDateRangePicker };\n\nexport default DSDateRangePicker;\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\nimport React from 'react';\nimport { useDeprecateComponent } from '@elliemae/ds-utilities';\nimport { PropTypes, describe } from '@elliemae/ds-props-helpers';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport moment from 'moment';\nimport 'react-dates/initialize.js';\nimport { DateRangePickerPhrases } from 'react-dates/lib/defaultPhrases.js';\nimport DayPickerRangeController from './components/DayPickerRangeController.js';\nimport DSDateRangePickerImpl, { START_DATE, END_DATE } from './components/DSDateRangePickerImpl.js';\n\nconst DSDateRangePicker = ({\n containerProps = {},\n className = '',\n disabled = false,\n required = false,\n startDateRequired = false,\n endDateRequired = false,\n id,\n hasError = false,\n validationMessage = '',\n readOnly = false,\n screenReaderInputMessage = 'Select date',\n initialVisibleMonth = moment(),\n firstDayOfWeek = 0,\n keepOpenOnDateSelect = true,\n reopenPickerOnClearDates = false,\n hideKeyboardShortcutsPanel = true,\n onPrevMonthClick = () => null,\n onNextMonthClick = () => null,\n onClose = () => null,\n onOutsideClick = () => null,\n transitionDuration = 0,\n verticalSpacing = 0,\n minimumNights = 0,\n isDayBlocked = () => false,\n isOutsideRange = () => false,\n isDayHighlighted = () => false,\n displayFormat = 'L',\n displayFormatDay = 'D',\n phrases = DateRangePickerPhrases,\n startDate,\n endDate,\n startDateId = 'startDateId',\n endDateId = 'endDateId',\n labelFrom = 'From',\n labelTo = 'To',\n enableOutsideDays = true,\n onChangeStartInput = () => null,\n onChangeEndInput = () => null,\n onDatesChange = () => null,\n}) => {\n useDeprecateComponent({ componentName: 'ds-date-range-picker', version: '3.x Date: 2023 Q1' });\n\n const { cssClassName, prefixBlockName } = convertPropToCssClassName('datepicker', className, {\n hasError,\n readOnly,\n disabled,\n id,\n });\n return (\n <div {...containerProps} className={`${prefixBlockName}-range ${cssClassName} ${prefixBlockName}-range`}>\n <DSDateRangePickerImpl\n appendToBody\n disabled={disabled}\n displayFormat={displayFormat}\n displayFormatDay={displayFormatDay}\n enableOutsideDays={enableOutsideDays}\n endDate={endDate}\n endDateId={endDateId}\n firstDayOfWeek={firstDayOfWeek}\n hideKeyboardShortcutsPanel={hideKeyboardShortcutsPanel}\n initialVisibleMonth={() => (initialVisibleMonth ? moment(initialVisibleMonth) : moment(startDate))}\n isDayBlocked={isDayBlocked}\n isDayHighlighted={isDayHighlighted}\n isOutsideRange={isOutsideRange === true || isOutsideRange === false ? () => isOutsideRange : isOutsideRange}\n keepOpenOnDateSelect={keepOpenOnDateSelect}\n labelFrom={labelFrom}\n labelTo={labelTo}\n minimumNights={minimumNights}\n onDatesChange={onDatesChange}\n onChangeStartInput={onChangeStartInput}\n onChangeEndInput={onChangeEndInput}\n onClose={onClose}\n onNextMonthClick={onNextMonthClick}\n onPrevMonthClick={onPrevMonthClick}\n onOutsideClick={onOutsideClick}\n phrases={phrases}\n readOnly={readOnly}\n reopenPickerOnClearDates={reopenPickerOnClearDates}\n required={required}\n startDateRequired={startDateRequired}\n endDateRequired={endDateRequired}\n screenReaderInputMessage={screenReaderInputMessage}\n startDate={startDate}\n startDateId={startDateId}\n transitionDuration={transitionDuration}\n verticalSpacing={verticalSpacing}\n hasError={hasError}\n validationMessage={validationMessage}\n />\n </div>\n );\n};\n\nconst dateRangePickerProps = {\n containerProps: PropTypes.shape({}).description('Set of Properties attached to the main container'),\n className: PropTypes.string.description('html class attribute'),\n disabled: PropTypes.bool.description('disable component or not').defaultValue(false),\n required: PropTypes.bool.description('input is required or not').defaultValue(false),\n startDateRequired: PropTypes.bool.description('start date is required or not').defaultValue(false),\n endDateRequired: PropTypes.bool.description('end date is required or not').defaultValue(false),\n id: PropTypes.string.description('components id'),\n hasError: PropTypes.bool.description('set error state').defaultValue(false),\n validationMessage: PropTypes.string.description('validation message'),\n readOnly: PropTypes.bool.description('component is read only or not').description(false),\n screenReaderInputMessage: PropTypes.string\n .description('message to be anounced by screen reader')\n .defaultValue('select date'),\n initialVisibleMonth: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.instanceOf(moment)]).description(\n 'initial visible month',\n ),\n firstDayOfWeek: PropTypes.number.description('first day of week').defaultValue(0),\n keepOpenOnDateSelect: PropTypes.bool.description('keep picker open when a date is selected').defaultValue(true),\n reopenPickerOnClearDates: PropTypes.bool.description('reopen picker when clearing dates').defaultValue(false),\n hideKeyboardShortcutsPanel: PropTypes.bool.description('hide keyabord shortcut panel or not'),\n onPrevMonthClick: PropTypes.func.description('function executed when clicking on prev month button'),\n onNextMonthClick: PropTypes.func.description('function executed when clicking on next month button'),\n onClose: PropTypes.func.description('function executed when component closes'),\n transitionDuration: PropTypes.number.description('transition duration').defaultValue(0),\n verticalSpacing: PropTypes.number.description('vertical spacing'),\n isDayBlocked: PropTypes.func.description('function that returns each day and disables desired dates'),\n isOutsideRange: PropTypes.func.description('function that returns each day and disables outisde range dates'),\n isDayHighlighted: PropTypes.func.description('function that returns each day and higlights desired dates'),\n minimumNights: PropTypes.number.description('Minimum nights'),\n displayFormat: PropTypes.string.description('display format').defaultValue('L'),\n displayFormatDay: PropTypes.string.description('display format day').defaultValue('D'),\n phrases: PropTypes.shape({\n calendarLabel: PropTypes.string,\n closeDatePicker: PropTypes.string,\n clearDates: PropTypes.string,\n focusStartDate: PropTypes.string,\n jumpToPrevMonth: PropTypes.string,\n jumpToNextMonth: PropTypes.string,\n keyboardShortcuts: PropTypes.string,\n showKeyboardShortcutsPanel: PropTypes.string,\n hideKeyboardShortcutsPanel: PropTypes.string,\n openThisPanel: PropTypes.string,\n enterKey: PropTypes.string,\n leftArrowRightArrow: PropTypes.string,\n upArrowDownArrow: PropTypes.string,\n pageUpPageDown: PropTypes.string,\n homeEnd: PropTypes.string,\n escape: PropTypes.string,\n questionMark: PropTypes.string,\n selectFocusedDate: PropTypes.string,\n moveFocusByOneDay: PropTypes.string,\n moveFocusByOneWeek: PropTypes.string,\n moveFocusByOneMonth: PropTypes.string,\n moveFocustoStartAndEndOfWeek: PropTypes.string,\n returnFocusToInput: PropTypes.string,\n keyboardNavigationInstructions: PropTypes.string,\n chooseAvailableStartDate: PropTypes.func,\n chooseAvailableEndDate: PropTypes.func,\n dateIsUnavailable: PropTypes.func,\n dateIsSelected: PropTypes.func,\n }).description('react-dates phrases'),\n startDate: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.instanceOf(moment)]).description(\n 'start date value',\n ),\n endDate: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.instanceOf(moment)]).description(\n 'end date value',\n ),\n startDateId: PropTypes.string.description('start date id'),\n endDateId: PropTypes.string.description('end date id'),\n labelFrom: PropTypes.string.description('label of start date input'),\n labelTo: PropTypes.string.description('label of end date input'),\n enableOutsideDays: PropTypes.bool.description('enable days outside current month').defaultValue('true'),\n onDatesChange: PropTypes.func.description('function executed when dates change'),\n onChangeStartInput: PropTypes.func.description('function executed when start date input changes'),\n onChangeEndInput: PropTypes.func.description('function executed when end date input changes'),\n onOutsideClick: PropTypes.func.description('function executed when clicking outside component'),\n};\n\nDSDateRangePicker.propTypes = dateRangePickerProps;\nDSDateRangePicker.displayName = 'DSDateRangePicker';\nconst DateRangePickerWithSchema = describe(DSDateRangePicker);\nDateRangePickerWithSchema.propTypes = dateRangePickerProps;\n\nexport { DayPickerRangeController, START_DATE, END_DATE, DateRangePickerWithSchema, DSDateRangePicker };\n\nexport default DSDateRangePicker;\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -7,8 +7,8 @@ import { convertPropToCssClassName } from "@elliemae/ds-classnames";
7
7
  import { MASK_TYPES, MASK_PIPES, DSFormItemLayout, DSInputMask } from "@elliemae/ds-form";
8
8
  import DSPopper from "@elliemae/ds-popper";
9
9
  import { DatePickerPicker, renderMonthElement } from "@elliemae/ds-date-picker";
10
- import DayPickerRangeController from "./DayPickerRangeController";
11
- import { isMaxDiffSafe } from "../isMaxDiffSafe";
10
+ import DayPickerRangeController from "./DayPickerRangeController.js";
11
+ import { isMaxDiffSafe } from "../isMaxDiffSafe.js";
12
12
  const START_DATE = "startDate";
13
13
  const END_DATE = "endDate";
14
14
  const { classNameElement, classNameBlock } = convertPropToCssClassName("datepicker");
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/components/DSDateRangePickerImpl.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\n/* eslint-disable import/no-unresolved */\n/* eslint-disable max-lines */\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport moment from 'moment';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { MASK_TYPES, MASK_PIPES, DSFormItemLayout, DSInputMask } from '@elliemae/ds-form';\nimport DSPopper from '@elliemae/ds-popper';\nimport { DatePickerPicker, renderMonthElement } from '@elliemae/ds-date-picker';\nimport DayPickerRangeController from './DayPickerRangeController';\nimport { isMaxDiffSafe } from '../isMaxDiffSafe';\n\nexport const START_DATE = 'startDate';\nexport const END_DATE = 'endDate';\n\nconst { classNameElement, classNameBlock } = convertPropToCssClassName('datepicker');\n\nexport default class DSDateRangePickerImpl extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n startDate: props.startDate ? moment(props.startDate) : null,\n endDate: props.endDate ? moment(props.endDate) : null,\n focusedInput: START_DATE,\n showPicker: false,\n startDateError: false,\n endDateError: false,\n };\n }\n\n componentDidMount() {\n document.addEventListener('keydown', this.handleKeyDown, false);\n }\n\n componentWillUnmount() {\n document.removeEventListener('keydown', this.handleKeyDown, false);\n }\n\n onDatesChange = ({ startDate, endDate }) => {\n const { onDatesChange } = this.props;\n onDatesChange(startDate, endDate);\n const safe = isMaxDiffSafe(startDate, endDate, this.state.startDate, this.state.endDate);\n if (!safe) {\n this.setState({ showPicker: false });\n }\n this.setState({\n startDate,\n endDate,\n primaryStartInput: false,\n primaryEndInput: false,\n });\n };\n\n onFocusChange = () => {\n this.setState(({ focusedInput }) => ({\n focusedInput: focusedInput === START_DATE ? END_DATE : START_DATE,\n }));\n };\n\n handleKeyDown = (event) => {\n if (event.key === 'Escape') this.setState({ showPicker: false });\n };\n\n getSafeStartInputValue = () => {\n const { startInput, primaryStartInput, startDate } = this.state;\n if (primaryStartInput && startInput) return startInput;\n if (!startDate) return '';\n return startDate.format('MMDDYYYY');\n };\n\n getSafeEndInputValue = () => {\n const { endInput, primaryEndInput, endDate } = this.state;\n if (primaryEndInput && endInput) return endInput;\n if (!endDate) return '';\n return endDate.format('MMDDYYYY');\n };\n\n changeFocus = () => {\n const { disabled } = this.props;\n if (!disabled) {\n this.setState(() => ({ focusedInput: 'startDate' }));\n }\n };\n\n handleChangeStart = (e) => {\n const { onChangeStartInput, isDayBlocked, minimumNights } = this.props;\n const { endDate } = this.state;\n const startInputVal = e.target.value;\n let momentValue = null;\n if (startInputVal && moment(startInputVal, 'MM/DD/YYYY', true).isValid()) {\n momentValue = moment(startInputVal);\n }\n\n const startDateBlocked = isDayBlocked(momentValue);\n\n const isStartDateAcceptable = !startDateBlocked && momentValue && startInputVal !== '';\n const areDatesValid = endDate && momentValue && endDate?.isValid() && momentValue?.isValid();\n\n const canEndBeSameAsStart = minimumNights === 0;\n const isStartAcceptableWithSelectedEnd =\n !endDate ||\n (areDatesValid &&\n ((canEndBeSameAsStart && momentValue.diff(endDate, 'days') <= 0) ||\n (!canEndBeSameAsStart && momentValue.diff(endDate, 'days') < 0)));\n\n const invalidDate = !isStartDateAcceptable || !isStartAcceptableWithSelectedEnd;\n if (startDateBlocked) momentValue = null;\n onChangeStartInput(momentValue);\n this.setState((prevState: { endDateError: boolean }) => ({\n startDate: momentValue,\n startInput: startInputVal,\n primaryStartInput: true,\n startDateError: invalidDate,\n endDateError:\n !isStartDateAcceptable || !prevState.endDateError ? prevState.endDateError : !isStartAcceptableWithSelectedEnd,\n }));\n };\n\n handleChangeEnd = (e) => {\n const { onChangeEndInput, isDayBlocked, minimumNights } = this.props;\n const { startDate } = this.state;\n const endInputValue = e.target.value;\n let momentValue = null;\n if (endInputValue && moment(endInputValue, 'MM/DD/YYYY', true).isValid()) {\n momentValue = moment(endInputValue);\n }\n const endDateBlocked = isDayBlocked(momentValue);\n\n const isEndDateAcceptable = !endDateBlocked && momentValue && endInputValue !== '';\n const areDatesValid = startDate && momentValue && startDate?.isValid() && momentValue?.isValid();\n\n const canEndBeSameAsStart = minimumNights === 0;\n const isEndAcceptableWithSelectedStart =\n !startDate || // we can't compare with start date because it's not yet set\n (areDatesValid && // it's set and both are valid\n ((canEndBeSameAsStart && momentValue.diff(startDate, 'days') >= 0) || // >= is valid\n (!canEndBeSameAsStart && momentValue.diff(startDate, 'days') > 0))); // only > is valid\n\n const invalidDate = !isEndDateAcceptable || !isEndAcceptableWithSelectedStart;\n\n if (endDateBlocked) momentValue = null;\n onChangeEndInput(momentValue);\n this.setState((prevState: { startDateError: boolean }) => ({\n endDate: momentValue,\n endInput: endInputValue,\n primaryEndInput: true,\n startDateError:\n !isEndDateAcceptable || !prevState.startDateError\n ? prevState.startDateError\n : !isEndAcceptableWithSelectedStart,\n endDateError: invalidDate,\n }));\n };\n\n handleChangeDate = ({ startDate: _start, endDate }) => {\n if (_start && endDate) {\n this.setState({\n startDate: moment(_start),\n endDate,\n primaryStartInput: false,\n primaryEndInput: false,\n });\n } else if (_start) {\n this.setState({ startDate: moment(_start), primaryStartInput: false });\n } else if (endDate) {\n this.setState({ endDate, primaryEndInput: false });\n }\n };\n\n render() {\n const { startDate, endDate, focusedInput, showPicker, startDateError, endDateError } = this.state;\n\n const {\n disabled,\n displayFormatDay,\n minimumNights,\n labelFrom,\n labelTo,\n isDayBlocked,\n isDayHighlighted,\n isOutsideRange,\n enableOutsideDays,\n startDateRequired,\n endDateRequired,\n onOutsideClick,\n onNextMonthClick,\n onPrevMonthClick,\n onClose,\n hasError,\n validationMessage,\n } = this.props;\n\n const inputClass = classNameBlock('inputs', 'range-picker');\n const inputClassModifier = '';\n\n const safeStartInputValue = this.getSafeStartInputValue();\n const safeEndInputValue = this.getSafeEndInputValue();\n\n return (\n <div className={`${inputClass} ${inputClassModifier}`}>\n <div className={classNameBlock('wrapper-input-date-range-picker-controller')}>\n <DSFormItemLayout\n floatingLabel\n inputComponent={DSInputMask}\n labelText={labelFrom}\n mask={MASK_TYPES.DATE}\n onChange={this.handleChangeStart}\n onFocus={() => this.setState({ showPicker: false })}\n pipe={MASK_PIPES.AUTO_CORRECT_DATE}\n value={safeStartInputValue}\n required={startDateRequired}\n hasError={hasError || startDateError}\n placeholder=\"MM/DD/YYYY\"\n />\n <DSFormItemLayout\n floatingLabel\n inputComponent={DSInputMask}\n labelText={labelTo}\n mask={MASK_TYPES.DATE}\n onChange={this.handleChangeEnd}\n onFocus={() => this.setState({ showPicker: false })}\n pipe={MASK_PIPES.AUTO_CORRECT_DATE}\n value={safeEndInputValue}\n required={endDateRequired}\n hasError={hasError || endDateError}\n validationMessage={validationMessage}\n placeholder=\"MM/DD/YYYY\"\n />\n </div>\n <div className={classNameBlock('wrapper-button-date-range-picker-controller')}>\n <DSPopper\n contentComponent={\n <div>\n {showPicker && (\n <DayPickerRangeController\n enableOutsideDays={enableOutsideDays}\n isDayBlocked={isDayBlocked}\n isDayHighlighted={isDayHighlighted}\n isOutsideRange={isOutsideRange}\n displayFormatDay={displayFormatDay}\n endDate={endDate}\n focusedInput={focusedInput}\n hideKeyboardShortcutsPanel\n minimumNights={minimumNights}\n onDatesChange={this.onDatesChange}\n onFocusChange={this.onFocusChange}\n onOutsideClick={(e) => {\n onOutsideClick(e);\n this.setState({ showPicker: false });\n }}\n onNextMonthClick={onNextMonthClick}\n onPrevMonthClick={onPrevMonthClick}\n startDate={startDate}\n renderMonthElement={renderMonthElement}\n />\n )}\n </div>\n }\n isOpen={showPicker && !startDateError && !endDateError}\n onClose={onClose}\n placement=\"bottom-end\"\n showArrow={false}\n triggerComponent={\n <div onFocus={() => this.setState({ showPicker: true })}>\n <DatePickerPicker\n className={classNameElement('picker')}\n disabled={disabled}\n onClick={() => this.setState({ showPicker: true })}\n />\n {hasError && validationMessage && <div style={{ height: 15 }} />}\n </div>\n }\n />\n </div>\n </div>\n );\n }\n}\n\nDSDateRangePickerImpl.propTypes = {\n startDate: PropTypes.instanceOf(Date, moment),\n endDate: PropTypes.instanceOf(Date, moment),\n onDatesChange: PropTypes.func,\n onChangeStartInput: PropTypes.func,\n onChangeEndInput: PropTypes.func,\n onNextMonthClick: PropTypes.func,\n onPrevMonthClick: PropTypes.func,\n onClose: PropTypes.func,\n onOutsideClick: PropTypes.func,\n disabled: PropTypes.bool,\n displayFormatDay: PropTypes.string,\n minimumNights: PropTypes.number,\n labelTo: PropTypes.string,\n labelFrom: PropTypes.string,\n isDayBlocked: PropTypes.func,\n isDayHighlighted: PropTypes.func,\n isOutsideRange: PropTypes.func,\n enableOutsideDays: PropTypes.bool,\n startDateRequired: PropTypes.bool,\n endDateRequired: PropTypes.bool,\n hasError: PropTypes.bool,\n validationMessage: PropTypes.string,\n};\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\n/* eslint-disable import/no-unresolved */\n/* eslint-disable max-lines */\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport moment from 'moment';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { MASK_TYPES, MASK_PIPES, DSFormItemLayout, DSInputMask } from '@elliemae/ds-form';\nimport DSPopper from '@elliemae/ds-popper';\nimport { DatePickerPicker, renderMonthElement } from '@elliemae/ds-date-picker';\nimport DayPickerRangeController from './DayPickerRangeController.js';\nimport { isMaxDiffSafe } from '../isMaxDiffSafe.js';\n\nexport const START_DATE = 'startDate';\nexport const END_DATE = 'endDate';\n\nconst { classNameElement, classNameBlock } = convertPropToCssClassName('datepicker');\n\nexport default class DSDateRangePickerImpl extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n startDate: props.startDate ? moment(props.startDate) : null,\n endDate: props.endDate ? moment(props.endDate) : null,\n focusedInput: START_DATE,\n showPicker: false,\n startDateError: false,\n endDateError: false,\n };\n }\n\n componentDidMount() {\n document.addEventListener('keydown', this.handleKeyDown, false);\n }\n\n componentWillUnmount() {\n document.removeEventListener('keydown', this.handleKeyDown, false);\n }\n\n onDatesChange = ({ startDate, endDate }) => {\n const { onDatesChange } = this.props;\n onDatesChange(startDate, endDate);\n const safe = isMaxDiffSafe(startDate, endDate, this.state.startDate, this.state.endDate);\n if (!safe) {\n this.setState({ showPicker: false });\n }\n this.setState({\n startDate,\n endDate,\n primaryStartInput: false,\n primaryEndInput: false,\n });\n };\n\n onFocusChange = () => {\n this.setState(({ focusedInput }) => ({\n focusedInput: focusedInput === START_DATE ? END_DATE : START_DATE,\n }));\n };\n\n handleKeyDown = (event) => {\n if (event.key === 'Escape') this.setState({ showPicker: false });\n };\n\n getSafeStartInputValue = () => {\n const { startInput, primaryStartInput, startDate } = this.state;\n if (primaryStartInput && startInput) return startInput;\n if (!startDate) return '';\n return startDate.format('MMDDYYYY');\n };\n\n getSafeEndInputValue = () => {\n const { endInput, primaryEndInput, endDate } = this.state;\n if (primaryEndInput && endInput) return endInput;\n if (!endDate) return '';\n return endDate.format('MMDDYYYY');\n };\n\n changeFocus = () => {\n const { disabled } = this.props;\n if (!disabled) {\n this.setState(() => ({ focusedInput: 'startDate' }));\n }\n };\n\n handleChangeStart = (e) => {\n const { onChangeStartInput, isDayBlocked, minimumNights } = this.props;\n const { endDate } = this.state;\n const startInputVal = e.target.value;\n let momentValue = null;\n if (startInputVal && moment(startInputVal, 'MM/DD/YYYY', true).isValid()) {\n momentValue = moment(startInputVal);\n }\n\n const startDateBlocked = isDayBlocked(momentValue);\n\n const isStartDateAcceptable = !startDateBlocked && momentValue && startInputVal !== '';\n const areDatesValid = endDate && momentValue && endDate?.isValid() && momentValue?.isValid();\n\n const canEndBeSameAsStart = minimumNights === 0;\n const isStartAcceptableWithSelectedEnd =\n !endDate ||\n (areDatesValid &&\n ((canEndBeSameAsStart && momentValue.diff(endDate, 'days') <= 0) ||\n (!canEndBeSameAsStart && momentValue.diff(endDate, 'days') < 0)));\n\n const invalidDate = !isStartDateAcceptable || !isStartAcceptableWithSelectedEnd;\n if (startDateBlocked) momentValue = null;\n onChangeStartInput(momentValue);\n this.setState((prevState: { endDateError: boolean }) => ({\n startDate: momentValue,\n startInput: startInputVal,\n primaryStartInput: true,\n startDateError: invalidDate,\n endDateError:\n !isStartDateAcceptable || !prevState.endDateError ? prevState.endDateError : !isStartAcceptableWithSelectedEnd,\n }));\n };\n\n handleChangeEnd = (e) => {\n const { onChangeEndInput, isDayBlocked, minimumNights } = this.props;\n const { startDate } = this.state;\n const endInputValue = e.target.value;\n let momentValue = null;\n if (endInputValue && moment(endInputValue, 'MM/DD/YYYY', true).isValid()) {\n momentValue = moment(endInputValue);\n }\n const endDateBlocked = isDayBlocked(momentValue);\n\n const isEndDateAcceptable = !endDateBlocked && momentValue && endInputValue !== '';\n const areDatesValid = startDate && momentValue && startDate?.isValid() && momentValue?.isValid();\n\n const canEndBeSameAsStart = minimumNights === 0;\n const isEndAcceptableWithSelectedStart =\n !startDate || // we can't compare with start date because it's not yet set\n (areDatesValid && // it's set and both are valid\n ((canEndBeSameAsStart && momentValue.diff(startDate, 'days') >= 0) || // >= is valid\n (!canEndBeSameAsStart && momentValue.diff(startDate, 'days') > 0))); // only > is valid\n\n const invalidDate = !isEndDateAcceptable || !isEndAcceptableWithSelectedStart;\n\n if (endDateBlocked) momentValue = null;\n onChangeEndInput(momentValue);\n this.setState((prevState: { startDateError: boolean }) => ({\n endDate: momentValue,\n endInput: endInputValue,\n primaryEndInput: true,\n startDateError:\n !isEndDateAcceptable || !prevState.startDateError\n ? prevState.startDateError\n : !isEndAcceptableWithSelectedStart,\n endDateError: invalidDate,\n }));\n };\n\n handleChangeDate = ({ startDate: _start, endDate }) => {\n if (_start && endDate) {\n this.setState({\n startDate: moment(_start),\n endDate,\n primaryStartInput: false,\n primaryEndInput: false,\n });\n } else if (_start) {\n this.setState({ startDate: moment(_start), primaryStartInput: false });\n } else if (endDate) {\n this.setState({ endDate, primaryEndInput: false });\n }\n };\n\n render() {\n const { startDate, endDate, focusedInput, showPicker, startDateError, endDateError } = this.state;\n\n const {\n disabled,\n displayFormatDay,\n minimumNights,\n labelFrom,\n labelTo,\n isDayBlocked,\n isDayHighlighted,\n isOutsideRange,\n enableOutsideDays,\n startDateRequired,\n endDateRequired,\n onOutsideClick,\n onNextMonthClick,\n onPrevMonthClick,\n onClose,\n hasError,\n validationMessage,\n } = this.props;\n\n const inputClass = classNameBlock('inputs', 'range-picker');\n const inputClassModifier = '';\n\n const safeStartInputValue = this.getSafeStartInputValue();\n const safeEndInputValue = this.getSafeEndInputValue();\n\n return (\n <div className={`${inputClass} ${inputClassModifier}`}>\n <div className={classNameBlock('wrapper-input-date-range-picker-controller')}>\n <DSFormItemLayout\n floatingLabel\n inputComponent={DSInputMask}\n labelText={labelFrom}\n mask={MASK_TYPES.DATE}\n onChange={this.handleChangeStart}\n onFocus={() => this.setState({ showPicker: false })}\n pipe={MASK_PIPES.AUTO_CORRECT_DATE}\n value={safeStartInputValue}\n required={startDateRequired}\n hasError={hasError || startDateError}\n placeholder=\"MM/DD/YYYY\"\n />\n <DSFormItemLayout\n floatingLabel\n inputComponent={DSInputMask}\n labelText={labelTo}\n mask={MASK_TYPES.DATE}\n onChange={this.handleChangeEnd}\n onFocus={() => this.setState({ showPicker: false })}\n pipe={MASK_PIPES.AUTO_CORRECT_DATE}\n value={safeEndInputValue}\n required={endDateRequired}\n hasError={hasError || endDateError}\n validationMessage={validationMessage}\n placeholder=\"MM/DD/YYYY\"\n />\n </div>\n <div className={classNameBlock('wrapper-button-date-range-picker-controller')}>\n <DSPopper\n contentComponent={\n <div>\n {showPicker && (\n <DayPickerRangeController\n enableOutsideDays={enableOutsideDays}\n isDayBlocked={isDayBlocked}\n isDayHighlighted={isDayHighlighted}\n isOutsideRange={isOutsideRange}\n displayFormatDay={displayFormatDay}\n endDate={endDate}\n focusedInput={focusedInput}\n hideKeyboardShortcutsPanel\n minimumNights={minimumNights}\n onDatesChange={this.onDatesChange}\n onFocusChange={this.onFocusChange}\n onOutsideClick={(e) => {\n onOutsideClick(e);\n this.setState({ showPicker: false });\n }}\n onNextMonthClick={onNextMonthClick}\n onPrevMonthClick={onPrevMonthClick}\n startDate={startDate}\n renderMonthElement={renderMonthElement}\n />\n )}\n </div>\n }\n isOpen={showPicker && !startDateError && !endDateError}\n onClose={onClose}\n placement=\"bottom-end\"\n showArrow={false}\n triggerComponent={\n <div onFocus={() => this.setState({ showPicker: true })}>\n <DatePickerPicker\n className={classNameElement('picker')}\n disabled={disabled}\n onClick={() => this.setState({ showPicker: true })}\n />\n {hasError && validationMessage && <div style={{ height: 15 }} />}\n </div>\n }\n />\n </div>\n </div>\n );\n }\n}\n\nDSDateRangePickerImpl.propTypes = {\n startDate: PropTypes.instanceOf(Date, moment),\n endDate: PropTypes.instanceOf(Date, moment),\n onDatesChange: PropTypes.func,\n onChangeStartInput: PropTypes.func,\n onChangeEndInput: PropTypes.func,\n onNextMonthClick: PropTypes.func,\n onPrevMonthClick: PropTypes.func,\n onClose: PropTypes.func,\n onOutsideClick: PropTypes.func,\n disabled: PropTypes.bool,\n displayFormatDay: PropTypes.string,\n minimumNights: PropTypes.number,\n labelTo: PropTypes.string,\n labelFrom: PropTypes.string,\n isDayBlocked: PropTypes.func,\n isDayHighlighted: PropTypes.func,\n isOutsideRange: PropTypes.func,\n enableOutsideDays: PropTypes.bool,\n startDateRequired: PropTypes.bool,\n endDateRequired: PropTypes.bool,\n hasError: PropTypes.bool,\n validationMessage: PropTypes.string,\n};\n"],
5
5
  "mappings": "AAAA,YAAY,WAAW;ACyMf,SACE,KADF;AAtMR,OAAOA,YAAW;AAClB,OAAO,eAAe;AACtB,OAAO,YAAY;AACnB,SAAS,iCAAiC;AAC1C,SAAS,YAAY,YAAY,kBAAkB,mBAAmB;AACtE,OAAO,cAAc;AACrB,SAAS,kBAAkB,0BAA0B;AACrD,OAAO,8BAA8B;AACrC,SAAS,qBAAqB;AAEvB,MAAM,aAAa;AACnB,MAAM,WAAW;AAExB,MAAM,EAAE,kBAAkB,eAAe,IAAI,0BAA0B,YAAY;AAEnF,MAAO,8BAA4CA,OAAM,UAAU;AAAA,EACjE,YAAY,OAAO;AACjB,UAAM,KAAK;AAmBb,yBAAgB,CAAC,EAAE,WAAW,QAAQ,MAAM;AAC1C,YAAM,EAAE,cAAc,IAAI,KAAK;AAC/B,oBAAc,WAAW,OAAO;AAChC,YAAM,OAAO,cAAc,WAAW,SAAS,KAAK,MAAM,WAAW,KAAK,MAAM,OAAO;AACvF,UAAI,CAAC,MAAM;AACT,aAAK,SAAS,EAAE,YAAY,MAAM,CAAC;AAAA,MACrC;AACA,WAAK,SAAS;AAAA,QACZ;AAAA,QACA;AAAA,QACA,mBAAmB;AAAA,QACnB,iBAAiB;AAAA,MACnB,CAAC;AAAA,IACH;AAEA,yBAAgB,MAAM;AACpB,WAAK,SAAS,CAAC,EAAE,aAAa,OAAO;AAAA,QACnC,cAAc,iBAAiB,aAAa,WAAW;AAAA,MACzD,EAAE;AAAA,IACJ;AAEA,yBAAgB,CAAC,UAAU;AACzB,UAAI,MAAM,QAAQ;AAAU,aAAK,SAAS,EAAE,YAAY,MAAM,CAAC;AAAA,IACjE;AAEA,kCAAyB,MAAM;AAC7B,YAAM,EAAE,YAAY,mBAAmB,UAAU,IAAI,KAAK;AAC1D,UAAI,qBAAqB;AAAY,eAAO;AAC5C,UAAI,CAAC;AAAW,eAAO;AACvB,aAAO,UAAU,OAAO,UAAU;AAAA,IACpC;AAEA,gCAAuB,MAAM;AAC3B,YAAM,EAAE,UAAU,iBAAiB,QAAQ,IAAI,KAAK;AACpD,UAAI,mBAAmB;AAAU,eAAO;AACxC,UAAI,CAAC;AAAS,eAAO;AACrB,aAAO,QAAQ,OAAO,UAAU;AAAA,IAClC;AAEA,uBAAc,MAAM;AAClB,YAAM,EAAE,SAAS,IAAI,KAAK;AAC1B,UAAI,CAAC,UAAU;AACb,aAAK,SAAS,OAAO,EAAE,cAAc,YAAY,EAAE;AAAA,MACrD;AAAA,IACF;AAEA,6BAAoB,CAAC,MAAM;AACzB,YAAM,EAAE,oBAAoB,cAAc,cAAc,IAAI,KAAK;AACjE,YAAM,EAAE,QAAQ,IAAI,KAAK;AACzB,YAAM,gBAAgB,EAAE,OAAO;AAC/B,UAAI,cAAc;AAClB,UAAI,iBAAiB,OAAO,eAAe,cAAc,IAAI,EAAE,QAAQ,GAAG;AACxE,sBAAc,OAAO,aAAa;AAAA,MACpC;AAEA,YAAM,mBAAmB,aAAa,WAAW;AAEjD,YAAM,wBAAwB,CAAC,oBAAoB,eAAe,kBAAkB;AACpF,YAAM,gBAAgB,WAAW,eAAe,SAAS,QAAQ,KAAK,aAAa,QAAQ;AAE3F,YAAM,sBAAsB,kBAAkB;AAC9C,YAAM,mCACJ,CAAC,WACA,kBACG,uBAAuB,YAAY,KAAK,SAAS,MAAM,KAAK,KAC3D,CAAC,uBAAuB,YAAY,KAAK,SAAS,MAAM,IAAI;AAEnE,YAAM,cAAc,CAAC,yBAAyB,CAAC;AAC/C,UAAI;AAAkB,sBAAc;AACpC,yBAAmB,WAAW;AAC9B,WAAK,SAAS,CAAC,eAA0C;AAAA,QACvD,WAAW;AAAA,QACX,YAAY;AAAA,QACZ,mBAAmB;AAAA,QACnB,gBAAgB;AAAA,QAChB,cACE,CAAC,yBAAyB,CAAC,UAAU,eAAe,UAAU,eAAe,CAAC;AAAA,MAClF,EAAE;AAAA,IACJ;AAEA,2BAAkB,CAAC,MAAM;AACvB,YAAM,EAAE,kBAAkB,cAAc,cAAc,IAAI,KAAK;AAC/D,YAAM,EAAE,UAAU,IAAI,KAAK;AAC3B,YAAM,gBAAgB,EAAE,OAAO;AAC/B,UAAI,cAAc;AAClB,UAAI,iBAAiB,OAAO,eAAe,cAAc,IAAI,EAAE,QAAQ,GAAG;AACxE,sBAAc,OAAO,aAAa;AAAA,MACpC;AACA,YAAM,iBAAiB,aAAa,WAAW;AAE/C,YAAM,sBAAsB,CAAC,kBAAkB,eAAe,kBAAkB;AAChF,YAAM,gBAAgB,aAAa,eAAe,WAAW,QAAQ,KAAK,aAAa,QAAQ;AAE/F,YAAM,sBAAsB,kBAAkB;AAC9C,YAAM,mCACJ,CAAC,aACA,kBACG,uBAAuB,YAAY,KAAK,WAAW,MAAM,KAAK,KAC7D,CAAC,uBAAuB,YAAY,KAAK,WAAW,MAAM,IAAI;AAErE,YAAM,cAAc,CAAC,uBAAuB,CAAC;AAE7C,UAAI;AAAgB,sBAAc;AAClC,uBAAiB,WAAW;AAC5B,WAAK,SAAS,CAAC,eAA4C;AAAA,QACzD,SAAS;AAAA,QACT,UAAU;AAAA,QACV,iBAAiB;AAAA,QACjB,gBACE,CAAC,uBAAuB,CAAC,UAAU,iBAC/B,UAAU,iBACV,CAAC;AAAA,QACP,cAAc;AAAA,MAChB,EAAE;AAAA,IACJ;AAEA,4BAAmB,CAAC,EAAE,WAAW,QAAQ,QAAQ,MAAM;AACrD,UAAI,UAAU,SAAS;AACrB,aAAK,SAAS;AAAA,UACZ,WAAW,OAAO,MAAM;AAAA,UACxB;AAAA,UACA,mBAAmB;AAAA,UACnB,iBAAiB;AAAA,QACnB,CAAC;AAAA,MACH,WAAW,QAAQ;AACjB,aAAK,SAAS,EAAE,WAAW,OAAO,MAAM,GAAG,mBAAmB,MAAM,CAAC;AAAA,MACvE,WAAW,SAAS;AAClB,aAAK,SAAS,EAAE,SAAS,iBAAiB,MAAM,CAAC;AAAA,MACnD;AAAA,IACF;AAnJE,SAAK,QAAQ;AAAA,MACX,WAAW,MAAM,YAAY,OAAO,MAAM,SAAS,IAAI;AAAA,MACvD,SAAS,MAAM,UAAU,OAAO,MAAM,OAAO,IAAI;AAAA,MACjD,cAAc;AAAA,MACd,YAAY;AAAA,MACZ,gBAAgB;AAAA,MAChB,cAAc;AAAA,IAChB;AAAA,EACF;AAAA,EAEA,oBAAoB;AAClB,aAAS,iBAAiB,WAAW,KAAK,eAAe,KAAK;AAAA,EAChE;AAAA,EAEA,uBAAuB;AACrB,aAAS,oBAAoB,WAAW,KAAK,eAAe,KAAK;AAAA,EACnE;AAAA,EAqIA,SAAS;AACP,UAAM,EAAE,WAAW,SAAS,cAAc,YAAY,gBAAgB,aAAa,IAAI,KAAK;AAE5F,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,IAAI,KAAK;AAET,UAAM,aAAa,eAAe,UAAU,cAAc;AAC1D,UAAM,qBAAqB;AAE3B,UAAM,sBAAsB,KAAK,uBAAuB;AACxD,UAAM,oBAAoB,KAAK,qBAAqB;AAEpD,WACE,qBAAC,SAAI,WAAW,GAAG,cAAc,sBAC/B;AAAA,2BAAC,SAAI,WAAW,eAAe,4CAA4C,GACzE;AAAA;AAAA,UAAC;AAAA;AAAA,YACC,eAAa;AAAA,YACb,gBAAgB;AAAA,YAChB,WAAW;AAAA,YACX,MAAM,WAAW;AAAA,YACjB,UAAU,KAAK;AAAA,YACf,SAAS,MAAM,KAAK,SAAS,EAAE,YAAY,MAAM,CAAC;AAAA,YAClD,MAAM,WAAW;AAAA,YACjB,OAAO;AAAA,YACP,UAAU;AAAA,YACV,UAAU,YAAY;AAAA,YACtB,aAAY;AAAA;AAAA,QACd;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,eAAa;AAAA,YACb,gBAAgB;AAAA,YAChB,WAAW;AAAA,YACX,MAAM,WAAW;AAAA,YACjB,UAAU,KAAK;AAAA,YACf,SAAS,MAAM,KAAK,SAAS,EAAE,YAAY,MAAM,CAAC;AAAA,YAClD,MAAM,WAAW;AAAA,YACjB,OAAO;AAAA,YACP,UAAU;AAAA,YACV,UAAU,YAAY;AAAA,YACtB;AAAA,YACA,aAAY;AAAA;AAAA,QACd;AAAA,SACF;AAAA,MACA,oBAAC,SAAI,WAAW,eAAe,6CAA6C,GAC1E;AAAA,QAAC;AAAA;AAAA,UACC,kBACE,oBAAC,SACE,wBACC;AAAA,YAAC;AAAA;AAAA,cACC;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA,4BAA0B;AAAA,cAC1B;AAAA,cACA,eAAe,KAAK;AAAA,cACpB,eAAe,KAAK;AAAA,cACpB,gBAAgB,CAAC,MAAM;AACrB,+BAAe,CAAC;AAChB,qBAAK,SAAS,EAAE,YAAY,MAAM,CAAC;AAAA,cACrC;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA;AAAA,UACF,GAEJ;AAAA,UAEF,QAAQ,cAAc,CAAC,kBAAkB,CAAC;AAAA,UAC1C;AAAA,UACA,WAAU;AAAA,UACV,WAAW;AAAA,UACX,kBACE,qBAAC,SAAI,SAAS,MAAM,KAAK,SAAS,EAAE,YAAY,KAAK,CAAC,GACpD;AAAA;AAAA,cAAC;AAAA;AAAA,gBACC,WAAW,iBAAiB,QAAQ;AAAA,gBACpC;AAAA,gBACA,SAAS,MAAM,KAAK,SAAS,EAAE,YAAY,KAAK,CAAC;AAAA;AAAA,YACnD;AAAA,YACC,YAAY,qBAAqB,oBAAC,SAAI,OAAO,EAAE,QAAQ,GAAG,GAAG;AAAA,aAChE;AAAA;AAAA,MAEJ,GACF;AAAA,OACF;AAAA,EAEJ;AACF;AAEA,sBAAsB,YAAY;AAAA,EAChC,WAAW,UAAU,WAAW,MAAM,MAAM;AAAA,EAC5C,SAAS,UAAU,WAAW,MAAM,MAAM;AAAA,EAC1C,eAAe,UAAU;AAAA,EACzB,oBAAoB,UAAU;AAAA,EAC9B,kBAAkB,UAAU;AAAA,EAC5B,kBAAkB,UAAU;AAAA,EAC5B,kBAAkB,UAAU;AAAA,EAC5B,SAAS,UAAU;AAAA,EACnB,gBAAgB,UAAU;AAAA,EAC1B,UAAU,UAAU;AAAA,EACpB,kBAAkB,UAAU;AAAA,EAC5B,eAAe,UAAU;AAAA,EACzB,SAAS,UAAU;AAAA,EACnB,WAAW,UAAU;AAAA,EACrB,cAAc,UAAU;AAAA,EACxB,kBAAkB,UAAU;AAAA,EAC5B,gBAAgB,UAAU;AAAA,EAC1B,mBAAmB,UAAU;AAAA,EAC7B,mBAAmB,UAAU;AAAA,EAC7B,iBAAiB,UAAU;AAAA,EAC3B,UAAU,UAAU;AAAA,EACpB,mBAAmB,UAAU;AAC/B;",
6
6
  "names": ["React"]
7
7
  }
package/dist/esm/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import * as React from "react";
2
- import { default as default2 } from "./DSDateRangePicker";
3
- export * from "./DSDateRangePicker";
2
+ import { default as default2 } from "./DSDateRangePicker.js";
3
+ export * from "./DSDateRangePicker.js";
4
4
  export {
5
5
  default2 as default
6
6
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/index.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export { default } from './DSDateRangePicker';\nexport * from './DSDateRangePicker';\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export { default } from './DSDateRangePicker.js';\nexport * from './DSDateRangePicker.js';\n"],
5
5
  "mappings": "AAAA,YAAY,WAAW;ACAvB,SAAS,WAAAA,gBAAe;AACxB,cAAc;",
6
6
  "names": ["default"]
7
7
  }
@@ -0,0 +1,7 @@
1
+ {
2
+ "type": "module",
3
+ "sideEffects": [
4
+ "*.css",
5
+ "*.scss"
6
+ ]
7
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elliemae/ds-date-range-picker",
3
- "version": "3.15.0",
3
+ "version": "3.16.0-next.10",
4
4
  "license": "MIT",
5
5
  "description": "ICE MT - Dimsum - Date Range Picker",
6
6
  "files": [
@@ -62,12 +62,13 @@
62
62
  "moment": "~2.29.3",
63
63
  "prop-types": "~15.8.1",
64
64
  "react-dates": "~21.8.0",
65
- "@elliemae/ds-classnames": "3.15.0",
66
- "@elliemae/ds-date-picker": "3.15.0",
67
- "@elliemae/ds-form": "3.15.0",
68
- "@elliemae/ds-icons": "3.15.0",
69
- "@elliemae/ds-popper": "3.15.0",
70
- "@elliemae/ds-utilities": "3.15.0"
65
+ "@elliemae/ds-classnames": "3.16.0-next.10",
66
+ "@elliemae/ds-date-picker": "3.16.0-next.10",
67
+ "@elliemae/ds-popper": "3.16.0-next.10",
68
+ "@elliemae/ds-props-helpers": "3.16.0-next.10",
69
+ "@elliemae/ds-utilities": "3.16.0-next.10",
70
+ "@elliemae/ds-form": "3.16.0-next.10",
71
+ "@elliemae/ds-icons": "3.16.0-next.10"
71
72
  },
72
73
  "peerDependencies": {
73
74
  "lodash": "^4.17.21",
@@ -82,10 +83,10 @@
82
83
  "dev": "cross-env NODE_ENV=development node ../../scripts/build/build.mjs --watch",
83
84
  "test": "node ../../scripts/testing/test.mjs",
84
85
  "lint": "node ../../scripts/lint.mjs",
85
- "eslint:fix": "eslint --ext='.js,.jsx,.test.js,.ts,.tsx' --fix --config='../../.eslintrc.js' src/",
86
- "dts": "node ../../scripts/dts.mjs",
86
+ "eslint:fix": "exit 0",
87
+ "dts": "exit 0",
87
88
  "build": "cross-env NODE_ENV=production node ../../scripts/build/build.mjs",
88
- "dev:build": "pnpm --filter {.}... build && pnpm --filter {.}... dts",
89
+ "dev:build": "pnpm --filter {.}... build",
89
90
  "dev:install": "pnpm --filter {.}... i --no-lockfile && pnpm run dev:build",
90
91
  "checkDeps": "npx -yes ../ds-codemods check-missing-packages --projectFolderPath=\"./\" --ignorePackagesGlobPattern=\"\" --ignoreFilesGlobPattern=\"**/test-ables/*,**/tests/*\""
91
92
  }
@@ -1,132 +0,0 @@
1
- import moment from 'moment';
2
- import 'react-dates/initialize';
3
- import DayPickerRangeController from './components/DayPickerRangeController';
4
- import { START_DATE, END_DATE } from './components/DSDateRangePickerImpl';
5
- declare const DSDateRangePicker: {
6
- ({ containerProps, className, disabled, required, startDateRequired, endDateRequired, id, hasError, validationMessage, readOnly, screenReaderInputMessage, initialVisibleMonth, firstDayOfWeek, keepOpenOnDateSelect, reopenPickerOnClearDates, hideKeyboardShortcutsPanel, onPrevMonthClick, onNextMonthClick, onClose, onOutsideClick, transitionDuration, verticalSpacing, minimumNights, isDayBlocked, isOutsideRange, isDayHighlighted, displayFormat, displayFormatDay, phrases, startDate, endDate, startDateId, endDateId, labelFrom, labelTo, enableOutsideDays, onChangeStartInput, onChangeEndInput, onDatesChange, }: {
7
- containerProps?: {} | undefined;
8
- className?: string | undefined;
9
- disabled?: boolean | undefined;
10
- required?: boolean | undefined;
11
- startDateRequired?: boolean | undefined;
12
- endDateRequired?: boolean | undefined;
13
- id: any;
14
- hasError?: boolean | undefined;
15
- validationMessage?: string | undefined;
16
- readOnly?: boolean | undefined;
17
- screenReaderInputMessage?: string | undefined;
18
- initialVisibleMonth?: moment.Moment | undefined;
19
- firstDayOfWeek?: number | undefined;
20
- keepOpenOnDateSelect?: boolean | undefined;
21
- reopenPickerOnClearDates?: boolean | undefined;
22
- hideKeyboardShortcutsPanel?: boolean | undefined;
23
- onPrevMonthClick?: (() => null) | undefined;
24
- onNextMonthClick?: (() => null) | undefined;
25
- onClose?: (() => null) | undefined;
26
- onOutsideClick?: (() => null) | undefined;
27
- transitionDuration?: number | undefined;
28
- verticalSpacing?: number | undefined;
29
- minimumNights?: number | undefined;
30
- isDayBlocked?: (() => boolean) | undefined;
31
- isOutsideRange?: (() => boolean) | undefined;
32
- isDayHighlighted?: (() => boolean) | undefined;
33
- displayFormat?: string | undefined;
34
- displayFormatDay?: string | undefined;
35
- phrases?: any;
36
- startDate: any;
37
- endDate: any;
38
- startDateId?: string | undefined;
39
- endDateId?: string | undefined;
40
- labelFrom?: string | undefined;
41
- labelTo?: string | undefined;
42
- enableOutsideDays?: boolean | undefined;
43
- onChangeStartInput?: (() => null) | undefined;
44
- onChangeEndInput?: (() => null) | undefined;
45
- onDatesChange?: (() => null) | undefined;
46
- }): JSX.Element;
47
- propTypes: {
48
- containerProps: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
49
- className: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
50
- disabled: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
51
- required: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
52
- startDateRequired: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
53
- endDateRequired: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
54
- id: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
55
- hasError: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
56
- validationMessage: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
57
- readOnly: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
58
- screenReaderInputMessage: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
59
- initialVisibleMonth: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
60
- firstDayOfWeek: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
61
- keepOpenOnDateSelect: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
62
- reopenPickerOnClearDates: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
63
- hideKeyboardShortcutsPanel: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
64
- onPrevMonthClick: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
65
- onNextMonthClick: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
66
- onClose: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
67
- transitionDuration: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
68
- verticalSpacing: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
69
- isDayBlocked: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
70
- isOutsideRange: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
71
- isDayHighlighted: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
72
- minimumNights: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
73
- displayFormat: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
74
- displayFormatDay: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
75
- phrases: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
76
- startDate: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
77
- endDate: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
78
- startDateId: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
79
- endDateId: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
80
- labelFrom: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
81
- labelTo: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
82
- enableOutsideDays: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
83
- onDatesChange: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
84
- onChangeStartInput: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
85
- onChangeEndInput: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
86
- onOutsideClick: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").ReactDescT;
87
- };
88
- displayName: string;
89
- };
90
- declare const DateRangePickerWithSchema: import("@elliemae/ds-utilities/dist/types/props-helpers/propTypes/types").DocumentedReactComponent<{
91
- containerProps?: {} | undefined;
92
- className?: string | undefined;
93
- disabled?: boolean | undefined;
94
- required?: boolean | undefined;
95
- startDateRequired?: boolean | undefined;
96
- endDateRequired?: boolean | undefined;
97
- id: any;
98
- hasError?: boolean | undefined;
99
- validationMessage?: string | undefined;
100
- readOnly?: boolean | undefined;
101
- screenReaderInputMessage?: string | undefined;
102
- initialVisibleMonth?: moment.Moment | undefined;
103
- firstDayOfWeek?: number | undefined;
104
- keepOpenOnDateSelect?: boolean | undefined;
105
- reopenPickerOnClearDates?: boolean | undefined;
106
- hideKeyboardShortcutsPanel?: boolean | undefined;
107
- onPrevMonthClick?: (() => null) | undefined;
108
- onNextMonthClick?: (() => null) | undefined;
109
- onClose?: (() => null) | undefined;
110
- onOutsideClick?: (() => null) | undefined;
111
- transitionDuration?: number | undefined;
112
- verticalSpacing?: number | undefined;
113
- minimumNights?: number | undefined;
114
- isDayBlocked?: (() => boolean) | undefined;
115
- isOutsideRange?: (() => boolean) | undefined;
116
- isDayHighlighted?: (() => boolean) | undefined;
117
- displayFormat?: string | undefined;
118
- displayFormatDay?: string | undefined;
119
- phrases?: any;
120
- startDate: any;
121
- endDate: any;
122
- startDateId?: string | undefined;
123
- endDateId?: string | undefined;
124
- labelFrom?: string | undefined;
125
- labelTo?: string | undefined;
126
- enableOutsideDays?: boolean | undefined;
127
- onChangeStartInput?: (() => null) | undefined;
128
- onChangeEndInput?: (() => null) | undefined;
129
- onDatesChange?: (() => null) | undefined;
130
- }>;
131
- export { DayPickerRangeController, START_DATE, END_DATE, DateRangePickerWithSchema, DSDateRangePicker };
132
- export default DSDateRangePicker;
@@ -1,24 +0,0 @@
1
- import React from 'react';
2
- export declare const START_DATE = "startDate";
3
- export declare const END_DATE = "endDate";
4
- export default class DSDateRangePickerImpl extends React.Component {
5
- constructor(props: any);
6
- componentDidMount(): void;
7
- componentWillUnmount(): void;
8
- onDatesChange: ({ startDate, endDate }: {
9
- startDate: any;
10
- endDate: any;
11
- }) => void;
12
- onFocusChange: () => void;
13
- handleKeyDown: (event: any) => void;
14
- getSafeStartInputValue: () => any;
15
- getSafeEndInputValue: () => any;
16
- changeFocus: () => void;
17
- handleChangeStart: (e: any) => void;
18
- handleChangeEnd: (e: any) => void;
19
- handleChangeDate: ({ startDate: _start, endDate }: {
20
- startDate: any;
21
- endDate: any;
22
- }) => void;
23
- render(): JSX.Element;
24
- }
@@ -1,5 +0,0 @@
1
- declare const Label: ({ className, label }: {
2
- className?: string | undefined;
3
- label?: string | undefined;
4
- }) => JSX.Element;
5
- export default Label;
@@ -1,9 +0,0 @@
1
- declare const DatePickerRangeHeader: ({ placeholderStart, placeholderEnd, onStartInputChange, onEndInputChange, selectedStartDate, selectedEndDate, }: {
2
- placeholderStart?: string | undefined;
3
- placeholderEnd?: string | undefined;
4
- onStartInputChange?: (() => null) | undefined;
5
- onEndInputChange?: (() => null) | undefined;
6
- selectedStartDate: any;
7
- selectedEndDate: any;
8
- }) => JSX.Element;
9
- export default DatePickerRangeHeader;
@@ -1,35 +0,0 @@
1
- import PropTypes from 'prop-types';
2
- declare const DayPickerRangeController: {
3
- ({ endDate, startDate, displayFormatDay, focusedInput, enableOutsideDays, onDatesChange, onFocusChange, onOutsideClick, isDayBlocked, isDayHighlighted, isOutsideRange, onNextMonthClick, onPrevMonthClick, ...otherProps }: {
4
- [x: string]: any;
5
- endDate?: undefined;
6
- startDate?: undefined;
7
- displayFormatDay?: string | undefined;
8
- focusedInput?: undefined;
9
- enableOutsideDays?: boolean | undefined;
10
- onDatesChange?: (() => null) | undefined;
11
- onFocusChange?: (() => null) | undefined;
12
- onOutsideClick?: (() => null) | undefined;
13
- isDayBlocked?: (() => null) | undefined;
14
- isDayHighlighted?: (() => null) | undefined;
15
- isOutsideRange?: (() => null) | undefined;
16
- onNextMonthClick?: (() => null) | undefined;
17
- onPrevMonthClick?: (() => null) | undefined;
18
- }): JSX.Element;
19
- propTypes: {
20
- endDate: PropTypes.Requireable<Date>;
21
- startDate: PropTypes.Requireable<Date>;
22
- displayFormatDay: PropTypes.Requireable<string>;
23
- focusedInput: PropTypes.Requireable<boolean>;
24
- onDatesChange: PropTypes.Requireable<(...args: any[]) => any>;
25
- onFocusChange: PropTypes.Requireable<(...args: any[]) => any>;
26
- onOutsideClick: PropTypes.Requireable<(...args: any[]) => any>;
27
- onNextMonthClick: PropTypes.Requireable<(...args: any[]) => any>;
28
- onPrevMonthClick: PropTypes.Requireable<(...args: any[]) => any>;
29
- enableOutsideDays: PropTypes.Requireable<boolean>;
30
- isDayBlocked: PropTypes.Requireable<(...args: any[]) => any>;
31
- isDayHighlighted: PropTypes.Requireable<(...args: any[]) => any>;
32
- isOutsideRange: PropTypes.Requireable<(...args: any[]) => any>;
33
- };
34
- };
35
- export default DayPickerRangeController;
@@ -1,2 +0,0 @@
1
- export { default } from './DSDateRangePicker';
2
- export * from './DSDateRangePicker';
@@ -1,2 +0,0 @@
1
- export declare const MAX_YEARS_DIFF = 150;
2
- export declare const isMaxDiffSafe: (startDate: any, endDate: any, prevStart: any, prevEnd: any) => boolean;