@elliemae/ds-date-picker 3.0.0-next.2 → 3.0.0-next.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/dist/cjs/DSDatePicker.js +248 -0
  2. package/dist/cjs/DSDatePicker.js.map +7 -0
  3. package/dist/cjs/components/DSDatePickerImpl.js +274 -0
  4. package/dist/cjs/components/DSDatePickerImpl.js.map +7 -0
  5. package/dist/cjs/components/DatePickerController/DatePickerController.js +335 -0
  6. package/dist/cjs/components/DatePickerController/DatePickerController.js.map +7 -0
  7. package/dist/cjs/components/DatePickerDay/DatePickerDay.js +49 -0
  8. package/dist/cjs/components/DatePickerDay/DatePickerDay.js.map +7 -0
  9. package/dist/cjs/components/DatePickerDropdown.js +102 -0
  10. package/dist/cjs/components/DatePickerDropdown.js.map +7 -0
  11. package/dist/cjs/components/DatePickerHeader/DatePickerHeader.js +74 -0
  12. package/dist/cjs/components/DatePickerHeader/DatePickerHeader.js.map +7 -0
  13. package/dist/cjs/components/DatePickerNavigation/DatePickerNavigation.js +63 -0
  14. package/dist/cjs/components/DatePickerNavigation/DatePickerNavigation.js.map +7 -0
  15. package/dist/cjs/components/DatePickerPicker/DatePickerPicker.js +112 -0
  16. package/dist/cjs/components/DatePickerPicker/DatePickerPicker.js.map +7 -0
  17. package/dist/cjs/components/DatePickerRange/DatePickerRange.js +126 -0
  18. package/dist/cjs/components/DatePickerRange/DatePickerRange.js.map +7 -0
  19. package/dist/cjs/components/DatePickerRangeHeader/DatePickerRangeHeader.js +138 -0
  20. package/dist/cjs/components/DatePickerRangeHeader/DatePickerRangeHeader.js.map +7 -0
  21. package/dist/cjs/components/DatePickerRenderMonth/DatePickerRenderMonth.js +61 -0
  22. package/dist/cjs/components/DatePickerRenderMonth/DatePickerRenderMonth.js.map +7 -0
  23. package/dist/cjs/components/DatePickerSingleDate/DatePickerSingleDate.js +117 -0
  24. package/dist/cjs/components/DatePickerSingleDate/DatePickerSingleDate.js.map +7 -0
  25. package/dist/cjs/components/SingleRangeDateSwitcher/SingleRangeDateSwitcher.js +80 -0
  26. package/dist/cjs/components/SingleRangeDateSwitcher/SingleRangeDateSwitcher.js.map +7 -0
  27. package/dist/cjs/components/index.js +53 -0
  28. package/dist/cjs/components/index.js.map +7 -0
  29. package/dist/cjs/defaultPhrases.js +246 -0
  30. package/dist/cjs/defaultPhrases.js.map +7 -0
  31. package/dist/cjs/index.js +38 -0
  32. package/dist/cjs/index.js.map +7 -0
  33. package/dist/esm/DSDatePicker.js +232 -0
  34. package/dist/esm/DSDatePicker.js.map +7 -0
  35. package/dist/esm/components/DSDatePickerImpl.js +245 -0
  36. package/dist/esm/components/DSDatePickerImpl.js.map +7 -0
  37. package/dist/esm/components/DatePickerController/DatePickerController.js +308 -0
  38. package/dist/esm/components/DatePickerController/DatePickerController.js.map +7 -0
  39. package/dist/esm/components/DatePickerDay/DatePickerDay.js +20 -0
  40. package/dist/esm/components/DatePickerDay/DatePickerDay.js.map +7 -0
  41. package/dist/esm/components/DatePickerDropdown.js +75 -0
  42. package/dist/esm/components/DatePickerDropdown.js.map +7 -0
  43. package/dist/esm/components/DatePickerHeader/DatePickerHeader.js +45 -0
  44. package/dist/esm/components/DatePickerHeader/DatePickerHeader.js.map +7 -0
  45. package/dist/esm/components/DatePickerNavigation/DatePickerNavigation.js +37 -0
  46. package/dist/esm/components/DatePickerNavigation/DatePickerNavigation.js.map +7 -0
  47. package/dist/esm/components/DatePickerPicker/DatePickerPicker.js +84 -0
  48. package/dist/esm/components/DatePickerPicker/DatePickerPicker.js.map +7 -0
  49. package/dist/esm/components/DatePickerRange/DatePickerRange.js +99 -0
  50. package/dist/esm/components/DatePickerRange/DatePickerRange.js.map +7 -0
  51. package/dist/esm/components/DatePickerRangeHeader/DatePickerRangeHeader.js +109 -0
  52. package/dist/esm/components/DatePickerRangeHeader/DatePickerRangeHeader.js.map +7 -0
  53. package/dist/esm/components/DatePickerRenderMonth/DatePickerRenderMonth.js +32 -0
  54. package/dist/esm/components/DatePickerRenderMonth/DatePickerRenderMonth.js.map +7 -0
  55. package/dist/esm/components/DatePickerSingleDate/DatePickerSingleDate.js +89 -0
  56. package/dist/esm/components/DatePickerSingleDate/DatePickerSingleDate.js.map +7 -0
  57. package/dist/esm/components/SingleRangeDateSwitcher/SingleRangeDateSwitcher.js +51 -0
  58. package/dist/esm/components/SingleRangeDateSwitcher/SingleRangeDateSwitcher.js.map +7 -0
  59. package/dist/esm/components/index.js +24 -0
  60. package/dist/esm/components/index.js.map +7 -0
  61. package/{esm → dist/esm}/defaultPhrases.js +48 -80
  62. package/dist/esm/defaultPhrases.js.map +7 -0
  63. package/dist/esm/index.js +9 -0
  64. package/dist/esm/index.js.map +7 -0
  65. package/package.json +63 -55
  66. package/cjs/DSDatePicker.js +0 -233
  67. package/cjs/components/DSDatePickerImpl.js +0 -354
  68. package/cjs/components/DatePickerController/DatePickerController.js +0 -360
  69. package/cjs/components/DatePickerDay/DatePickerDay.js +0 -24
  70. package/cjs/components/DatePickerDropdown.js +0 -65
  71. package/cjs/components/DatePickerHeader/DatePickerHeader.js +0 -56
  72. package/cjs/components/DatePickerNavigation/DatePickerNavigation.js +0 -32
  73. package/cjs/components/DatePickerPicker/DatePickerPicker.js +0 -74
  74. package/cjs/components/DatePickerRange/DatePickerRange.js +0 -119
  75. package/cjs/components/DatePickerRangeHeader/DatePickerRangeHeader.js +0 -144
  76. package/cjs/components/DatePickerRenderMonth/DatePickerRenderMonth.js +0 -46
  77. package/cjs/components/DatePickerSingleDate/DatePickerSingleDate.js +0 -85
  78. package/cjs/components/SingleRangeDateSwitcher/SingleRangeDateSwitcher.js +0 -59
  79. package/cjs/components/index.js +0 -27
  80. package/cjs/defaultPhrases.js +0 -261
  81. package/cjs/index.js +0 -35
  82. package/esm/DSDatePicker.js +0 -211
  83. package/esm/components/DSDatePickerImpl.js +0 -346
  84. package/esm/components/DatePickerController/DatePickerController.js +0 -350
  85. package/esm/components/DatePickerDay/DatePickerDay.js +0 -18
  86. package/esm/components/DatePickerDropdown.js +0 -57
  87. package/esm/components/DatePickerHeader/DatePickerHeader.js +0 -49
  88. package/esm/components/DatePickerNavigation/DatePickerNavigation.js +0 -25
  89. package/esm/components/DatePickerPicker/DatePickerPicker.js +0 -60
  90. package/esm/components/DatePickerRange/DatePickerRange.js +0 -111
  91. package/esm/components/DatePickerRangeHeader/DatePickerRangeHeader.js +0 -137
  92. package/esm/components/DatePickerRenderMonth/DatePickerRenderMonth.js +0 -38
  93. package/esm/components/DatePickerSingleDate/DatePickerSingleDate.js +0 -77
  94. package/esm/components/SingleRangeDateSwitcher/SingleRangeDateSwitcher.js +0 -53
  95. package/esm/components/index.js +0 -10
  96. package/esm/index.js +0 -13
  97. package/types/components/DSDatePickerImpl.d.ts +0 -20
  98. package/types/components/DatePickerController/DatePickerController.d.ts +0 -80
  99. package/types/components/DatePickerDay/DatePickerDay.d.ts +0 -13
  100. package/types/components/DatePickerDropdown.d.ts +0 -41
  101. package/types/components/DatePickerHeader/DatePickerHeader.d.ts +0 -15
  102. package/types/components/DatePickerNavigation/DatePickerNavigation.d.ts +0 -19
  103. package/types/components/DatePickerPicker/DatePickerPicker.d.ts +0 -48
  104. package/types/components/DatePickerRange/DatePickerRange.d.ts +0 -9
  105. package/types/components/DatePickerRangeHeader/DatePickerRangeHeader.d.ts +0 -23
  106. package/types/components/DatePickerRangeHeader/tests/DatePickerRangeHeader.test.d.ts +0 -1
  107. package/types/components/DatePickerRenderMonth/DatePickerRenderMonth.d.ts +0 -5
  108. package/types/components/DatePickerSingleDate/DatePickerSingleDate.d.ts +0 -11
  109. package/types/components/SingleRangeDateSwitcher/SingleRangeDateSwitcher.d.ts +0 -16
  110. package/types/components/index.d.ts +0 -10
  111. package/types/components/tests/DatePickerHeader.test.d.ts +0 -1
  112. package/types/components/tests/DatePickerRange.test.d.ts +0 -1
  113. package/types/components/tests/DatePickerRangeHeader.test.d.ts +0 -1
  114. package/types/components/tests/DatePickerSelectedDate.test.d.ts +0 -1
  115. package/types/components/tests/DatePickerSingleDate.test.d.ts +0 -1
  116. package/types/components/tests/SingleRangeDateSwitcher.test.d.ts +0 -1
  117. package/types/defaultPhrases.d.ts +0 -225
  118. package/types/index.d.ts +0 -3
@@ -0,0 +1,248 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __defProps = Object.defineProperties;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
+ var __getProtoOf = Object.getPrototypeOf;
9
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
10
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
11
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
12
+ var __spreadValues = (a, b) => {
13
+ for (var prop in b || (b = {}))
14
+ if (__hasOwnProp.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ if (__getOwnPropSymbols)
17
+ for (var prop of __getOwnPropSymbols(b)) {
18
+ if (__propIsEnum.call(b, prop))
19
+ __defNormalProp(a, prop, b[prop]);
20
+ }
21
+ return a;
22
+ };
23
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
24
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
25
+ var __export = (target, all) => {
26
+ for (var name in all)
27
+ __defProp(target, name, { get: all[name], enumerable: true });
28
+ };
29
+ var __reExport = (target, module2, copyDefault, desc) => {
30
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
31
+ for (let key of __getOwnPropNames(module2))
32
+ if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
33
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
34
+ }
35
+ return target;
36
+ };
37
+ var __toESM = (module2, isNodeMode) => {
38
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
39
+ };
40
+ var __toCommonJS = /* @__PURE__ */ ((cache) => {
41
+ return (module2, temp) => {
42
+ return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
43
+ };
44
+ })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
45
+ var DSDatePicker_exports = {};
46
+ __export(DSDatePicker_exports, {
47
+ DSDatePicker: () => DSDatePicker,
48
+ DSDatePickerController: () => import_DatePickerController.DSDatePickerController,
49
+ DatePickerDay: () => import_components.DatePickerDay,
50
+ DatePickerDropdown: () => import_components.DatePickerDropdown,
51
+ DatePickerHeader: () => import_components.DatePickerHeader,
52
+ DatePickerNavigation: () => import_components.DatePickerNavigation,
53
+ DatePickerPicker: () => import_components.DatePickerPicker,
54
+ DatePickerRange: () => import_components.DatePickerRange,
55
+ DatePickerRangeHeader: () => import_components.DatePickerRangeHeader,
56
+ DatePickerSingleDate: () => import_components.DatePickerSingleDate,
57
+ DatePickerWithSchema: () => DatePickerWithSchema,
58
+ Picker: () => import_DatePickerPicker.Picker,
59
+ SingleRangeDateSwitcher: () => import_components.SingleRangeDateSwitcher,
60
+ default: () => DSDatePicker_default,
61
+ renderMonthElement: () => import_components.renderMonthElement
62
+ });
63
+ var React = __toESM(require("react"));
64
+ var import_react = __toESM(require("react"));
65
+ var import_react_desc = require("react-desc");
66
+ var import_initialize = require("react-dates/initialize");
67
+ var import_ds_classnames = require("@elliemae/ds-classnames");
68
+ var import_moment = __toESM(require("moment"));
69
+ var import_defaultPhrases = require("./defaultPhrases");
70
+ var import_components = require("./components");
71
+ var import_DSDatePickerImpl = require("./components/DSDatePickerImpl");
72
+ var import_DatePickerController = require("./components/DatePickerController/DatePickerController");
73
+ var import_DatePickerPicker = require("./components/DatePickerPicker/DatePickerPicker");
74
+ const DSDatePicker = ({
75
+ containerProps = {},
76
+ id = "",
77
+ appendToBody = true,
78
+ className = "",
79
+ date,
80
+ value,
81
+ placeholder = "",
82
+ disabled = false,
83
+ required = false,
84
+ readOnly = false,
85
+ hasError = false,
86
+ screenReaderInputMessage = "Select date",
87
+ enableOutsideDays = true,
88
+ initialVisibleMonth = (0, import_moment.default)(),
89
+ firstDayOfWeek = 0,
90
+ keepOpenOnDateSelect = false,
91
+ hideKeyboardShortcutsPanel = true,
92
+ onChange = () => null,
93
+ onDateChange = void 0,
94
+ onPrevMonthClick = () => null,
95
+ onNextMonthClick = () => null,
96
+ onClose = () => null,
97
+ onFocus = () => null,
98
+ onBlur = () => null,
99
+ phrases = import_defaultPhrases.SingleDatePickerPhrases,
100
+ displayFormat = "L",
101
+ displayFormatDay = "D",
102
+ transitionDuration = 0,
103
+ verticalSpacing = 0,
104
+ isDayBlocked = () => false,
105
+ isOutsideRange = () => false,
106
+ isDayHighlighted = () => false,
107
+ numberOfMonths = 1,
108
+ openDirection = "down",
109
+ tabIndex = "",
110
+ zIndex = 1,
111
+ pickerProps = {},
112
+ calendarProps = {},
113
+ autoClear = false,
114
+ focusCurrentDate = false
115
+ }) => {
116
+ const { cssClassName } = (0, import_ds_classnames.convertPropToCssClassName)("datepicker", className, {
117
+ hasError,
118
+ readOnly,
119
+ disabled,
120
+ id
121
+ });
122
+ const safeDate = date || value;
123
+ return /* @__PURE__ */ import_react.default.createElement("div", __spreadProps(__spreadValues({
124
+ className: cssClassName
125
+ }, containerProps), {
126
+ style: { minWidth: "140px" }
127
+ }), /* @__PURE__ */ import_react.default.createElement(import_DSDatePickerImpl.DSDatePickerImpl, {
128
+ appendToBody,
129
+ autoClear,
130
+ date: safeDate,
131
+ disabled,
132
+ displayFormat,
133
+ displayFormatDay,
134
+ enableOutsideDays,
135
+ firstDayOfWeek,
136
+ hideKeyboardShortcutsPanel,
137
+ initialVisibleMonth: () => initialVisibleMonth ? (0, import_moment.default)(initialVisibleMonth) : (0, import_moment.default)(safeDate),
138
+ isDayBlocked,
139
+ isDayHighlighted,
140
+ isOutsideRange: isOutsideRange === true || isOutsideRange === false ? () => isOutsideRange : isOutsideRange,
141
+ keepOpenOnDateSelect,
142
+ numberOfMonths,
143
+ onBlur,
144
+ onClose,
145
+ onChange,
146
+ onDateChange: (...args) => {
147
+ if (onDateChange)
148
+ onDateChange(...args);
149
+ },
150
+ onFocus,
151
+ onNextMonthClick,
152
+ onPrevMonthClick,
153
+ openDirection,
154
+ phrases,
155
+ placeholder,
156
+ readOnly,
157
+ required,
158
+ screenReaderInputMessage,
159
+ transitionDuration,
160
+ value: safeDate,
161
+ verticalSpacing,
162
+ tabIndex,
163
+ zIndex,
164
+ pickerProps,
165
+ calendarProps,
166
+ focusCurrentDate
167
+ }));
168
+ };
169
+ const datePickerProps = {
170
+ containerProps: import_react_desc.PropTypes.shape({}).description("Set of Properties attached to the main container"),
171
+ id: import_react_desc.PropTypes.string.description("components id"),
172
+ appendToBody: import_react_desc.PropTypes.bool.description("append component to body or not").defaultValue(true),
173
+ className: import_react_desc.PropTypes.string.description("html class attribute"),
174
+ date: import_react_desc.PropTypes.instanceOf(Date, import_moment.default).description("selected date").defaultValue(void 0),
175
+ value: import_react_desc.PropTypes.instanceOf(Date, import_moment.default).description("value"),
176
+ placeholder: import_react_desc.PropTypes.string.description("input placeholder value"),
177
+ autoClear: import_react_desc.PropTypes.bool.description("autoclears the input onblur if the date is not completely set").defaultValue(false),
178
+ disabled: import_react_desc.PropTypes.bool.description("disable component or not").defaultValue(false),
179
+ required: import_react_desc.PropTypes.bool.description("value is required or not").defaultValue(false),
180
+ readOnly: import_react_desc.PropTypes.bool.description("is read only or not").defaultValue(false),
181
+ hasError: import_react_desc.PropTypes.bool.description("set error state").defaultValue(false),
182
+ screenReaderInputMessage: import_react_desc.PropTypes.string.description("message to anounce by screen reader").defaultValue("select date"),
183
+ enableOutsideDays: import_react_desc.PropTypes.bool.description("enable days oustide month or not").defaultValue(true),
184
+ initialVisibleMonth: import_react_desc.PropTypes.instanceOf(Date, import_moment.default).description("initial month to display"),
185
+ firstDayOfWeek: import_react_desc.PropTypes.number.description("first day of week").defaultValue(0),
186
+ keepOpenOnDateSelect: import_react_desc.PropTypes.bool.description("keep picker open when a date is selected").defaultValue(false),
187
+ hideKeyboardShortcutsPanel: import_react_desc.PropTypes.bool.description("hide keyabord shortcut panel or not").defaultValue(true),
188
+ onChange: import_react_desc.PropTypes.func.description(`
189
+ function executed when input changes. This could trigger with invalid dates. It returns a string and a moment
190
+ if the date is valid.
191
+ `),
192
+ onDateChange: import_react_desc.PropTypes.func.description("function executed when date changes. This doesnt trigger with invalid dates. It returns a moment object"),
193
+ onPrevMonthClick: import_react_desc.PropTypes.func.description("function executed when clicking on prev month button"),
194
+ onNextMonthClick: import_react_desc.PropTypes.func.description("function executed when clicking on next month button"),
195
+ onBlur: import_react_desc.PropTypes.func.description("function executed when component loses focus"),
196
+ onClose: import_react_desc.PropTypes.func.description("function executed when component closes"),
197
+ onFocus: import_react_desc.PropTypes.func.description("function executed when component gains focus"),
198
+ phrases: import_react_desc.PropTypes.shape({
199
+ calendarLabel: import_react_desc.PropTypes.string,
200
+ closeDatePicker: import_react_desc.PropTypes.string,
201
+ clearDates: import_react_desc.PropTypes.string,
202
+ focusStartDate: import_react_desc.PropTypes.string,
203
+ jumpToPrevMonth: import_react_desc.PropTypes.string,
204
+ jumpToNextMonth: import_react_desc.PropTypes.string,
205
+ keyboardShortcuts: import_react_desc.PropTypes.string,
206
+ showKeyboardShortcutsPanel: import_react_desc.PropTypes.string,
207
+ hideKeyboardShortcutsPanel: import_react_desc.PropTypes.string,
208
+ openThisPanel: import_react_desc.PropTypes.string,
209
+ enterKey: import_react_desc.PropTypes.string,
210
+ leftArrowRightArrow: import_react_desc.PropTypes.string,
211
+ upArrowDownArrow: import_react_desc.PropTypes.string,
212
+ pageUpPageDown: import_react_desc.PropTypes.string,
213
+ homeEnd: import_react_desc.PropTypes.string,
214
+ escape: import_react_desc.PropTypes.string,
215
+ questionMark: import_react_desc.PropTypes.string,
216
+ selectFocusedDate: import_react_desc.PropTypes.string,
217
+ moveFocusByOneDay: import_react_desc.PropTypes.string,
218
+ moveFocusByOneWeek: import_react_desc.PropTypes.string,
219
+ moveFocusByOneMonth: import_react_desc.PropTypes.string,
220
+ moveFocustoStartAndEndOfWeek: import_react_desc.PropTypes.string,
221
+ returnFocusToInput: import_react_desc.PropTypes.string,
222
+ keyboardNavigationInstructions: import_react_desc.PropTypes.string,
223
+ chooseAvailableStartDate: import_react_desc.PropTypes.func,
224
+ chooseAvailableEndDate: import_react_desc.PropTypes.func,
225
+ dateIsUnavailable: import_react_desc.PropTypes.func,
226
+ dateIsSelected: import_react_desc.PropTypes.func
227
+ }).description("react-dates phrases").defaultValue(import_defaultPhrases.SingleDatePickerPhrases),
228
+ displayFormat: import_react_desc.PropTypes.string.description("display format").defaultValue("L"),
229
+ displayFormatDay: import_react_desc.PropTypes.string.description("display format day").defaultValue("D"),
230
+ transitionDuration: import_react_desc.PropTypes.number.description("transition duration").defaultValue(0),
231
+ verticalSpacing: import_react_desc.PropTypes.number.description("vertical spacing"),
232
+ isDayBlocked: import_react_desc.PropTypes.func.description("function that returns each day and disables desired dates"),
233
+ isOutsideRange: import_react_desc.PropTypes.func.description("function that returns each day and disables outisde range dates"),
234
+ isDayHighlighted: import_react_desc.PropTypes.func.description("function that returns each day and higlights desired dates"),
235
+ numberOfMonths: import_react_desc.PropTypes.number.description("amount of months"),
236
+ openDirection: import_react_desc.PropTypes.string.description("open direction of the popup").defaultValue("down"),
237
+ tabIndex: import_react_desc.PropTypes.number.description("overrides tab index of the element"),
238
+ zIndex: import_react_desc.PropTypes.string.description("overrides z-index of the element"),
239
+ pickerProps: import_react_desc.PropTypes.shape(import_DatePickerPicker.PickerPropsTypes).description("props to be passed to the picker container"),
240
+ calendarProps: import_react_desc.PropTypes.shape({ tabIndex: import_react_desc.PropTypes.number }).description("props to be passes to the calendar container"),
241
+ focusCurrentDate: import_react_desc.PropTypes.bool.description("Wheter to focus current date on calendar").defaultValue(false)
242
+ };
243
+ DSDatePicker.propTypes = datePickerProps;
244
+ const DatePickerWithSchema = (0, import_react_desc.describe)(DSDatePicker);
245
+ DatePickerWithSchema.propTypes = datePickerProps;
246
+ var DSDatePicker_default = DSDatePicker;
247
+ module.exports = __toCommonJS(DSDatePicker_exports);
248
+ //# sourceMappingURL=DSDatePicker.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/DSDatePicker.tsx", "../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["/* eslint-disable max-lines */\nimport React from 'react';\nimport { PropTypes, describe } from 'react-desc';\nimport 'react-dates/initialize';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport moment from 'moment';\nimport { SingleDatePickerPhrases } from './defaultPhrases';\nimport {\n DatePickerNavigation,\n DatePickerDay,\n DatePickerPicker,\n DatePickerDropdown,\n DatePickerSingleDate,\n DatePickerHeader,\n DatePickerRange,\n DatePickerRangeHeader,\n SingleRangeDateSwitcher,\n renderMonthElement,\n} from './components';\nimport { DSDatePickerImpl } from './components/DSDatePickerImpl';\nimport { DSDatePickerController } from './components/DatePickerController/DatePickerController';\nimport { PickerPropsTypes, Picker } from './components/DatePickerPicker/DatePickerPicker';\n\ninterface DSDatePickerPropsType {\n containerProps: {};\n id: string;\n appendToBody: boolean;\n className: string;\n date: any;\n value: any;\n placeholder: string;\n disabled: boolean;\n required: boolean;\n readOnly: boolean;\n hasError: boolean;\n screenReaderInputMessage: boolean;\n enableOutsideDays: boolean;\n initialVisibleMonth: moment.Moment;\n firstDayOfWeek: number;\n keepOpenOnDateSelect: boolean;\n hideKeyboardShortcutsPanel: boolean;\n onChange: () => void;\n onDateChange: undefined | (() => void);\n onPrevMonthClick: () => void;\n onNextMonthClick: () => void;\n onClose: () => void;\n onFocus: () => void;\n onBlur: () => void;\n phrases: SingleDatePickerPhrases;\n displayFormat: boolean;\n displayFormatDay: boolean;\n transitionDuration: number;\n verticalSpacing: number;\n isDayBlocked: () => boolean;\n isOutsideRange: () => boolean;\n isDayHighlighted: () => boolean;\n numberOfMonths: number;\n openDirection: boolean;\n tabIndex: boolean;\n zIndex: boolean;\n pickerProps: {};\n calendarProps: {};\n autoClear: boolean;\n focusCurrentDate: boolean;\n}\ntype DSDatePickerType = React.ComponentType<DSDatePickerPropsType>;\n\nconst DSDatePicker: DSDatePickerType = ({\n containerProps = {},\n id = '',\n appendToBody = true,\n className = '',\n date,\n value,\n placeholder = '',\n disabled = false,\n required = false,\n readOnly = false,\n hasError = false,\n screenReaderInputMessage = 'Select date',\n enableOutsideDays = true,\n initialVisibleMonth = moment(),\n firstDayOfWeek = 0,\n keepOpenOnDateSelect = false,\n hideKeyboardShortcutsPanel = true,\n onChange = () => null,\n onDateChange = undefined,\n onPrevMonthClick = () => null,\n onNextMonthClick = () => null,\n onClose = () => null,\n onFocus = () => null,\n onBlur = () => null,\n phrases = SingleDatePickerPhrases,\n displayFormat = 'L',\n displayFormatDay = 'D',\n transitionDuration = 0,\n verticalSpacing = 0,\n isDayBlocked = () => false,\n isOutsideRange = () => false,\n isDayHighlighted = () => false,\n numberOfMonths = 1,\n openDirection = 'down',\n tabIndex = '',\n zIndex = 1,\n pickerProps = {},\n calendarProps = {},\n autoClear = false,\n focusCurrentDate = false,\n}) => {\n const { cssClassName } = convertPropToCssClassName('datepicker', className, {\n hasError,\n readOnly,\n disabled,\n id,\n });\n const safeDate = date || value;\n return (\n <div className={cssClassName} {...containerProps} style={{ minWidth: '140px' }}>\n <DSDatePickerImpl\n appendToBody={appendToBody}\n autoClear={autoClear}\n date={safeDate}\n disabled={disabled}\n displayFormat={displayFormat}\n displayFormatDay={displayFormatDay}\n enableOutsideDays={enableOutsideDays}\n firstDayOfWeek={firstDayOfWeek}\n hideKeyboardShortcutsPanel={hideKeyboardShortcutsPanel}\n initialVisibleMonth={() => (initialVisibleMonth ? moment(initialVisibleMonth) : moment(safeDate))}\n isDayBlocked={isDayBlocked}\n isDayHighlighted={isDayHighlighted}\n isOutsideRange={isOutsideRange === true || isOutsideRange === false ? () => isOutsideRange : isOutsideRange}\n keepOpenOnDateSelect={keepOpenOnDateSelect}\n numberOfMonths={numberOfMonths}\n onBlur={onBlur}\n onClose={onClose}\n onChange={onChange}\n onDateChange={(...args) => {\n if (onDateChange) onDateChange(...args);\n }}\n onFocus={onFocus}\n onNextMonthClick={onNextMonthClick}\n onPrevMonthClick={onPrevMonthClick}\n openDirection={openDirection}\n phrases={phrases}\n placeholder={placeholder}\n readOnly={readOnly}\n required={required}\n screenReaderInputMessage={screenReaderInputMessage}\n transitionDuration={transitionDuration}\n value={safeDate}\n verticalSpacing={verticalSpacing}\n tabIndex={tabIndex}\n zIndex={zIndex}\n pickerProps={pickerProps}\n calendarProps={calendarProps}\n focusCurrentDate={focusCurrentDate}\n />\n </div>\n );\n};\n\nconst datePickerProps = {\n containerProps: PropTypes.shape({}).description('Set of Properties attached to the main container'),\n id: PropTypes.string.description('components id'),\n appendToBody: PropTypes.bool.description('append component to body or not').defaultValue(true),\n className: PropTypes.string.description('html class attribute'),\n date: PropTypes.instanceOf(Date, moment).description('selected date').defaultValue(undefined),\n value: PropTypes.instanceOf(Date, moment).description('value'),\n placeholder: PropTypes.string.description('input placeholder value'),\n autoClear: PropTypes.bool\n .description('autoclears the input onblur if the date is not completely set')\n .defaultValue(false),\n disabled: PropTypes.bool.description('disable component or not').defaultValue(false),\n required: PropTypes.bool.description('value is required or not').defaultValue(false),\n readOnly: PropTypes.bool.description('is read only or not').defaultValue(false),\n hasError: PropTypes.bool.description('set error state').defaultValue(false),\n screenReaderInputMessage: PropTypes.string\n .description('message to anounce by screen reader')\n .defaultValue('select date'),\n enableOutsideDays: PropTypes.bool.description('enable days oustide month or not').defaultValue(true),\n initialVisibleMonth: PropTypes.instanceOf(Date, moment).description('initial month to display'),\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(false),\n hideKeyboardShortcutsPanel: PropTypes.bool.description('hide keyabord shortcut panel or not').defaultValue(true),\n onChange: PropTypes.func.description(\n `\n function executed when input changes. This could trigger with invalid dates. It returns a string and a moment\n if the date is valid.\n `,\n ),\n onDateChange: PropTypes.func.description(\n 'function executed when date changes. This doesnt trigger with invalid dates. It returns a moment object',\n ),\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 onBlur: PropTypes.func.description('function executed when component loses focus'),\n onClose: PropTypes.func.description('function executed when component closes'),\n onFocus: PropTypes.func.description('function executed when component gains focus'),\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 })\n .description('react-dates phrases')\n .defaultValue(SingleDatePickerPhrases),\n displayFormat: PropTypes.string.description('display format').defaultValue('L'),\n displayFormatDay: PropTypes.string.description('display format day').defaultValue('D'),\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 numberOfMonths: PropTypes.number.description('amount of months'),\n openDirection: PropTypes.string.description('open direction of the popup').defaultValue('down'),\n tabIndex: PropTypes.number.description('overrides tab index of the element'),\n zIndex: PropTypes.string.description('overrides z-index of the element'),\n pickerProps: PropTypes.shape(PickerPropsTypes).description('props to be passed to the picker container'),\n calendarProps: PropTypes.shape({ tabIndex: PropTypes.number }).description(\n 'props to be passes to the calendar container',\n ),\n focusCurrentDate: PropTypes.bool.description('Wheter to focus current date on calendar').defaultValue(false),\n};\n\nDSDatePicker.propTypes = datePickerProps;\n\nconst DatePickerWithSchema = describe(DSDatePicker);\nDatePickerWithSchema.propTypes = datePickerProps;\n\nexport {\n DatePickerNavigation,\n DatePickerDay,\n DatePickerPicker,\n DSDatePickerController,\n DatePickerDropdown,\n DatePickerSingleDate,\n DatePickerHeader,\n DatePickerRange,\n DatePickerRangeHeader,\n SingleRangeDateSwitcher,\n Picker,\n renderMonthElement,\n DatePickerWithSchema,\n};\n\nexport { DSDatePicker };\nexport default DSDatePicker;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -0,0 +1,274 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __reExport = (target, module2, copyDefault, desc) => {
13
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
14
+ for (let key of __getOwnPropNames(module2))
15
+ if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
16
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
17
+ }
18
+ return target;
19
+ };
20
+ var __toESM = (module2, isNodeMode) => {
21
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
22
+ };
23
+ var __toCommonJS = /* @__PURE__ */ ((cache) => {
24
+ return (module2, temp) => {
25
+ return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
26
+ };
27
+ })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
28
+ var DSDatePickerImpl_exports = {};
29
+ __export(DSDatePickerImpl_exports, {
30
+ DSDatePickerImpl: () => DSDatePickerImpl,
31
+ default: () => DSDatePickerImpl
32
+ });
33
+ var React = __toESM(require("react"));
34
+ var import_react = __toESM(require("react"));
35
+ var import_moment = __toESM(require("moment"));
36
+ var import_ds_form = require("@elliemae/ds-form");
37
+ var import_DatePickerController = require("./DatePickerController/DatePickerController");
38
+ var import_DatePickerDropdown = require("./DatePickerDropdown");
39
+ const FORMAT = "MMDDYYYY";
40
+ class DSDatePickerImpl extends import_react.default.Component {
41
+ constructor(props) {
42
+ super(props);
43
+ this.onClickPicker = () => {
44
+ this.setState({ inputFocused: true });
45
+ };
46
+ this.getSafeValue = () => {
47
+ const { value, date, defaultValue } = this.props;
48
+ const { selectedDate } = this.state;
49
+ if (value) {
50
+ return (0, import_moment.default)(value, FORMAT, true);
51
+ }
52
+ if (date) {
53
+ return (0, import_moment.default)(date, FORMAT, true);
54
+ }
55
+ if (defaultValue) {
56
+ return (0, import_moment.default)(defaultValue, FORMAT, true);
57
+ }
58
+ if (selectedDate) {
59
+ return selectedDate;
60
+ }
61
+ return null;
62
+ };
63
+ this.getSafeInputValue = () => {
64
+ const safeValue = this.getSafeValue();
65
+ if (safeValue && safeValue.isValid()) {
66
+ return safeValue.format(FORMAT);
67
+ }
68
+ const { dataInput } = this.state;
69
+ return dataInput;
70
+ };
71
+ this.isControlled = () => {
72
+ const { value, date } = this.props;
73
+ return Boolean(value) || Boolean(date);
74
+ };
75
+ this.handleDateChange = (date, event) => {
76
+ const { readOnly, onDateChange, keepOpenOnDateSelect, onChange, onBlur } = this.props;
77
+ if (!readOnly) {
78
+ if (!this.isControlled()) {
79
+ this.setState({ dataInput: date.format(FORMAT), selectedDate: date });
80
+ }
81
+ onChange(date.format(FORMAT), date);
82
+ onDateChange(date);
83
+ if (!keepOpenOnDateSelect || event.key === "Enter") {
84
+ this.setState({ inputFocused: false });
85
+ onBlur(date.format(FORMAT), date);
86
+ }
87
+ }
88
+ };
89
+ this.handleInputChange = (dataInput, newDate) => {
90
+ const { onChange } = this.props;
91
+ const newState = {
92
+ dataInput,
93
+ selectedDate: newDate
94
+ };
95
+ this.setState(() => newState);
96
+ onChange(dataInput, newDate);
97
+ };
98
+ this.handleChange = (newDate) => {
99
+ if (!newDate)
100
+ return;
101
+ const { onDateChange } = this.props;
102
+ const momentValue = (0, import_moment.default)(newDate, FORMAT, true);
103
+ if (!momentValue.isValid())
104
+ return;
105
+ this.setState({ selectedDate: momentValue });
106
+ onDateChange(momentValue);
107
+ };
108
+ this.handleFocus = ({ focused }) => {
109
+ this.setState({ inputFocused: focused });
110
+ };
111
+ this.handleCalendarClose = () => {
112
+ const { onClose } = this.props;
113
+ this.setState({ inputFocused: false });
114
+ this.handleOnBlur();
115
+ onClose();
116
+ };
117
+ this.handleClickEscape = () => {
118
+ const { onClose } = this.props;
119
+ this.setState({ inputFocused: false });
120
+ this.handleOnBlur();
121
+ onClose();
122
+ };
123
+ this.handleOnBlur = () => {
124
+ setTimeout(() => {
125
+ const { onBlur, autoClear } = this.props;
126
+ const { dataInput, selectedDate } = this.state;
127
+ if ((0, import_moment.default)(selectedDate, FORMAT, true).isValid()) {
128
+ onBlur(dataInput, selectedDate);
129
+ } else {
130
+ if (autoClear) {
131
+ this.setState({ dataInput: void 0 });
132
+ }
133
+ onBlur(dataInput, null);
134
+ }
135
+ });
136
+ };
137
+ this.handleInputFocus = (dataInput) => {
138
+ const { onFocus } = this.props;
139
+ onFocus(dataInput);
140
+ };
141
+ this.state = {
142
+ pickerRef: import_react.default.createRef(),
143
+ dataInput: "",
144
+ selectedDate: null,
145
+ inputFocused: false
146
+ };
147
+ }
148
+ static getDerivedStateFromProps(nextProps, prevState) {
149
+ const { dataInput: prevVal, selectedDate: prevDate } = prevState || {};
150
+ const { value: nextVal, date: nextDate } = nextProps;
151
+ const isPrevValMoment = prevVal instanceof import_moment.default;
152
+ const isPrevDateMoment = prevDate instanceof import_moment.default;
153
+ const prevValAsString = isPrevValMoment ? prevVal.format(FORMAT) : prevVal;
154
+ if (nextVal == null && nextDate == null) {
155
+ return {
156
+ dataInput: "",
157
+ selectedDate: null
158
+ };
159
+ }
160
+ if (prevValAsString?.length < 8) {
161
+ return null;
162
+ }
163
+ const prevDateAsString = isPrevDateMoment ? prevDate.format(FORMAT) : prevDate;
164
+ const isNextValMoment = nextVal instanceof import_moment.default;
165
+ const isNextDateMoment = nextDate instanceof import_moment.default;
166
+ const nextValAsString = isNextValMoment ? nextVal.format(FORMAT) : nextVal;
167
+ const nextValAsMoment = isNextValMoment ? nextVal : (0, import_moment.default)(nextVal);
168
+ const nextDateAsString = isNextDateMoment ? nextDate.format(FORMAT) : nextDate;
169
+ const nextDateAsMoment = isNextDateMoment ? nextDate : (0, import_moment.default)(nextDate);
170
+ const hasValChanged = nextValAsString !== prevValAsString;
171
+ const hasDateChanged = nextDateAsString !== prevDateAsString;
172
+ const newState = {};
173
+ let skipStateChange = true;
174
+ if (hasDateChanged) {
175
+ skipStateChange = false;
176
+ newState.dataInput = nextDateAsString;
177
+ newState.selectedDate = nextDateAsMoment;
178
+ }
179
+ if (hasValChanged) {
180
+ skipStateChange = false;
181
+ newState.dataInput = nextValAsString;
182
+ newState.selectedDate = nextValAsMoment;
183
+ }
184
+ if (skipStateChange)
185
+ return null;
186
+ return newState;
187
+ }
188
+ render() {
189
+ const { inputFocused } = this.state;
190
+ const {
191
+ disabled,
192
+ numberOfMonths,
193
+ readOnly,
194
+ enableOutsideDays,
195
+ transitionDuration,
196
+ firstDayOfWeek,
197
+ keepOpenOnDateSelect,
198
+ hideKeyboardShortcutsPanel,
199
+ onPrevMonthClick,
200
+ onNextMonthClick,
201
+ onClose,
202
+ phrases,
203
+ placeholder,
204
+ displayFormatDay,
205
+ isDayBlocked,
206
+ isOutsideRange,
207
+ isDayHighlighted,
208
+ tabIndex,
209
+ zIndex,
210
+ pickerProps,
211
+ calendarProps,
212
+ focusCurrentDate
213
+ } = this.props;
214
+ const safedate = this.getSafeValue();
215
+ const safeInputValue = this.getSafeInputValue();
216
+ const hasSelectedDate = !!safedate;
217
+ return /* @__PURE__ */ import_react.default.createElement(import_ds_form.DSInputGroup, {
218
+ rightAddon: /* @__PURE__ */ import_react.default.createElement(import_DatePickerDropdown.DatePickerDropdown, {
219
+ pickerRef: this.state.pickerRef,
220
+ disabled,
221
+ isOpen: inputFocused,
222
+ menu: /* @__PURE__ */ import_react.default.createElement("div", {
223
+ style: { minHeight: "310px", zIndex: 1 },
224
+ className: hasSelectedDate ? "has-selected-date" : "without-selected-date",
225
+ "data-testid": "date-picker-portal-wrapper"
226
+ }, /* @__PURE__ */ import_react.default.createElement(import_DatePickerController.DSDatePickerController, {
227
+ date: safedate,
228
+ displayFormatDay,
229
+ enableOutsideDays,
230
+ firstDayOfWeek,
231
+ hideKeyboardShortcutsPanel,
232
+ isDayBlocked,
233
+ isDayHighlighted,
234
+ isOutsideRange,
235
+ keepOpenOnDateSelect,
236
+ numberOfMonths,
237
+ onClickEscape: this.handleClickEscape,
238
+ onClose: (...args) => {
239
+ if (this.state.pickerRef.current)
240
+ this.state.pickerRef.current.focus();
241
+ onClose(...args);
242
+ this.setState({ inputFocused: false });
243
+ },
244
+ onDateChange: this.handleDateChange,
245
+ onFocusChange: this.handleFocus,
246
+ onNextMonthClick,
247
+ onOutsideClick: this.handleCalendarClose,
248
+ onPrevMonthClick,
249
+ phrases,
250
+ transitionDuration,
251
+ calendarProps,
252
+ focusCurrentDate
253
+ })),
254
+ onClick: this.onClickPicker,
255
+ readOnly,
256
+ zIndex,
257
+ pickerProps
258
+ })
259
+ }, /* @__PURE__ */ import_react.default.createElement(import_ds_form.DSDateInputV2, {
260
+ "data-testid": "datepicker-input",
261
+ "aria-label": placeholder || "Date Picker Input",
262
+ disabled,
263
+ onBlur: this.handleOnBlur,
264
+ onChange: this.handleInputChange,
265
+ onDateChange: this.handleChange,
266
+ onFocus: this.handleInputFocus,
267
+ placeholder,
268
+ tabIndex,
269
+ value: safeInputValue
270
+ }));
271
+ }
272
+ }
273
+ module.exports = __toCommonJS(DSDatePickerImpl_exports);
274
+ //# sourceMappingURL=DSDatePickerImpl.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/DSDatePickerImpl.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["/* eslint-disable max-statements */\n/* eslint-disable complexity */\n/* eslint-disable no-underscore-dangle */\n/* eslint-disable react/state-in-constructor */\n/* eslint-disable no-restricted-globals */\n/* eslint-disable react/prop-types */\n/* eslint-disable max-lines */\nimport React from 'react';\nimport moment from 'moment';\nimport { DSInputGroup, DSDateInputV2 } from '@elliemae/ds-form';\nimport { DSDatePickerController } from './DatePickerController/DatePickerController';\nimport { DatePickerDropdown } from './DatePickerDropdown';\n\nconst FORMAT = 'MMDDYYYY';\nexport default class DSDatePickerImpl extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n pickerRef: React.createRef(),\n dataInput: '',\n selectedDate: null,\n inputFocused: false,\n };\n }\n\n static getDerivedStateFromProps(nextProps, prevState) {\n const { dataInput: prevVal, selectedDate: prevDate } = prevState || {};\n const { value: nextVal, date: nextDate } = nextProps;\n\n const isPrevValMoment = prevVal instanceof moment;\n const isPrevDateMoment = prevDate instanceof moment;\n const prevValAsString = isPrevValMoment ? prevVal.format(FORMAT) : prevVal;\n\n // if users wants to clear, we use '==' to catch both undefined AND null\n if (nextVal == null && nextDate == null) {\n return {\n dataInput: '',\n selectedDate: null,\n };\n }\n\n // when val is an incomplete state, we don't want to mess with the state\n // it's incomplete when length is not the full mmddyyyy (length === 8)\n if (prevValAsString?.length < 8) {\n return null;\n }\n\n const prevDateAsString = isPrevDateMoment ? prevDate.format(FORMAT) : prevDate;\n\n const isNextValMoment = nextVal instanceof moment;\n const isNextDateMoment = nextDate instanceof moment;\n const nextValAsString = isNextValMoment ? nextVal.format(FORMAT) : nextVal;\n const nextValAsMoment = isNextValMoment ? nextVal : moment(nextVal);\n const nextDateAsString = isNextDateMoment ? nextDate.format(FORMAT) : nextDate;\n const nextDateAsMoment = isNextDateMoment ? nextDate : moment(nextDate);\n\n const hasValChanged = nextValAsString !== prevValAsString;\n const hasDateChanged = nextDateAsString !== prevDateAsString;\n\n const newState = {};\n let skipStateChange = true;\n\n // value has priority over date, if both date and value change we take date\n // as such, order of condition is meaningful\n if (hasDateChanged) {\n skipStateChange = false;\n newState.dataInput = nextDateAsString;\n newState.selectedDate = nextDateAsMoment;\n }\n\n if (hasValChanged) {\n skipStateChange = false;\n newState.dataInput = nextValAsString;\n newState.selectedDate = nextValAsMoment;\n }\n\n if (skipStateChange) return null;\n return newState;\n }\n\n onClickPicker = () => {\n this.setState({ inputFocused: true });\n };\n\n getSafeValue = () => {\n const { value, date, defaultValue } = this.props;\n const { selectedDate } = this.state;\n if (value) {\n return moment(value, FORMAT, true);\n }\n if (date) {\n return moment(date, FORMAT, true);\n }\n if (defaultValue) {\n return moment(defaultValue, FORMAT, true);\n }\n if (selectedDate) {\n return selectedDate;\n }\n return null;\n };\n\n getSafeInputValue = () => {\n const safeValue = this.getSafeValue();\n if (safeValue && safeValue.isValid()) {\n return safeValue.format(FORMAT);\n }\n const { dataInput } = this.state;\n return dataInput;\n };\n\n isControlled = () => {\n const { value, date } = this.props;\n return Boolean(value) || Boolean(date);\n };\n\n handleDateChange = (date, event) => {\n const { readOnly, onDateChange, keepOpenOnDateSelect, onChange, onBlur } = this.props;\n\n if (!readOnly) {\n if (!this.isControlled()) {\n this.setState({ dataInput: date.format(FORMAT), selectedDate: date });\n }\n onChange(date.format(FORMAT), date);\n onDateChange(date);\n if (!keepOpenOnDateSelect || event.key === 'Enter') {\n this.setState({ inputFocused: false });\n onBlur(date.format(FORMAT), date);\n }\n }\n };\n\n handleInputChange = (dataInput, newDate) => {\n const { onChange } = this.props;\n const newState = {\n dataInput,\n selectedDate: newDate,\n };\n this.setState(() => newState);\n onChange(dataInput, newDate);\n };\n\n handleChange = (newDate) => {\n if (!newDate) return;\n const { onDateChange } = this.props;\n const momentValue = moment(newDate, FORMAT, true);\n if (!momentValue.isValid()) return;\n this.setState({ selectedDate: momentValue });\n\n onDateChange(momentValue);\n };\n\n handleFocus = ({ focused }) => {\n this.setState({ inputFocused: focused });\n };\n\n handleCalendarClose = () => {\n const { onClose } = this.props;\n\n this.setState({ inputFocused: false });\n this.handleOnBlur();\n onClose();\n };\n\n handleClickEscape = () => {\n const { onClose } = this.props;\n\n this.setState({ inputFocused: false });\n this.handleOnBlur();\n onClose();\n };\n\n handleOnBlur = () => {\n setTimeout(() => {\n const { onBlur, autoClear } = this.props;\n const { dataInput, selectedDate } = this.state;\n\n if (moment(selectedDate, FORMAT, true).isValid()) {\n onBlur(dataInput, selectedDate);\n } else {\n if (autoClear) {\n this.setState({ dataInput: undefined });\n }\n onBlur(dataInput, null);\n }\n });\n };\n\n handleInputFocus = (dataInput) => {\n const { onFocus } = this.props;\n onFocus(dataInput);\n };\n\n render() {\n const { inputFocused } = this.state;\n const {\n disabled,\n numberOfMonths,\n readOnly,\n enableOutsideDays,\n transitionDuration,\n firstDayOfWeek,\n keepOpenOnDateSelect,\n hideKeyboardShortcutsPanel,\n onPrevMonthClick,\n onNextMonthClick,\n onClose,\n phrases,\n placeholder,\n displayFormatDay,\n isDayBlocked,\n isOutsideRange,\n isDayHighlighted,\n tabIndex,\n zIndex,\n pickerProps,\n calendarProps,\n focusCurrentDate,\n } = this.props;\n const safedate = this.getSafeValue();\n const safeInputValue = this.getSafeInputValue();\n const hasSelectedDate = !!safedate;\n return (\n <DSInputGroup\n rightAddon={\n <DatePickerDropdown\n pickerRef={this.state.pickerRef}\n disabled={disabled}\n isOpen={inputFocused}\n menu={\n <div\n style={{ minHeight: '310px', zIndex: 1 }}\n className={hasSelectedDate ? 'has-selected-date' : 'without-selected-date'}\n data-testid=\"date-picker-portal-wrapper\"\n >\n <DSDatePickerController\n date={safedate}\n displayFormatDay={displayFormatDay}\n enableOutsideDays={enableOutsideDays}\n firstDayOfWeek={firstDayOfWeek}\n hideKeyboardShortcutsPanel={hideKeyboardShortcutsPanel}\n isDayBlocked={isDayBlocked}\n isDayHighlighted={isDayHighlighted}\n isOutsideRange={isOutsideRange}\n keepOpenOnDateSelect={keepOpenOnDateSelect}\n numberOfMonths={numberOfMonths}\n onClickEscape={this.handleClickEscape}\n onClose={(...args) => {\n if (this.state.pickerRef.current) this.state.pickerRef.current.focus();\n onClose(...args);\n this.setState({ inputFocused: false });\n }}\n onDateChange={this.handleDateChange}\n onFocusChange={this.handleFocus}\n onNextMonthClick={onNextMonthClick}\n onOutsideClick={this.handleCalendarClose}\n onPrevMonthClick={onPrevMonthClick}\n phrases={phrases}\n transitionDuration={transitionDuration}\n calendarProps={calendarProps}\n focusCurrentDate={focusCurrentDate}\n />\n </div>\n }\n onClick={this.onClickPicker}\n readOnly={readOnly}\n zIndex={zIndex}\n pickerProps={pickerProps}\n />\n }\n >\n <DSDateInputV2\n data-testid=\"datepicker-input\"\n aria-label={placeholder || 'Date Picker Input'}\n disabled={disabled}\n onBlur={this.handleOnBlur}\n onChange={this.handleInputChange}\n onDateChange={this.handleChange}\n onFocus={this.handleInputFocus}\n placeholder={placeholder}\n tabIndex={tabIndex}\n value={safeInputValue}\n />\n </DSInputGroup>\n );\n }\n}\n\nexport { DSDatePickerImpl };\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }