@entur/datepicker 0.10.8 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,18 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [0.11.0](https://bitbucket.org/enturas/design-system/compare/@entur/datepicker@0.10.8...@entur/datepicker@0.11.0) (2022-02-09)
7
+
8
+ ### Features
9
+
10
+ - **date picker:** add visual date validation to date picker and hideCalendar prop ([aae7cbf](https://bitbucket.org/enturas/design-system/commits/aae7cbfe4e02c1e5ebc676c1e083f74c54bafbbb))
11
+
12
+ ### BREAKING CHANGES
13
+
14
+ - **date picker:** - Validation icon introduces visual changes. Use hideFeedback to remove.
15
+
16
+ * dateFormat prop removed
17
+
6
18
  ## [0.10.8](https://bitbucket.org/enturas/design-system/compare/@entur/datepicker@0.10.7...@entur/datepicker@0.10.8) (2022-01-21)
7
19
 
8
20
  **Note:** Version bump only for package @entur/datepicker
@@ -8,16 +8,20 @@ export declare type DatePickerProps = {
8
8
  /** Kalles når datoen/tiden endres */
9
9
  onChange: (date: Date | null, event: React.SyntheticEvent<any, Event>) => void;
10
10
  /** Placeholder om ingen dato er valgt
11
- * @default "Velg dato"
11
+ * @default "dd.mm.yyyy"
12
12
  */
13
13
  placeholder?: string;
14
14
  /** Ekstra klassenavn */
15
15
  className?: string;
16
16
  /** Label over DatePicker */
17
17
  label: string;
18
- /** Varselmelding, som vil komme under DatePicker */
18
+ /** Varselmelding, som vil komme under DatePicker
19
+ * @default "Ugyldig dato"
20
+ */
19
21
  feedback?: string;
20
- /** Valideringsvariant */
22
+ /** Valideringsvariant
23
+ * @default "error"
24
+ */
21
25
  variant?: VariantType;
22
26
  style?: React.CSSProperties;
23
27
  /** Plasserer labelen statisk på toppen av inputfeltet
@@ -32,6 +36,14 @@ export declare type DatePickerProps = {
32
36
  * @default false
33
37
  */
34
38
  hideCalendarButton?: boolean;
39
+ /** Skjuler tilbakemeldingsteksten ved feil dato-input
40
+ * @default false
41
+ */
42
+ hideFeedback?: boolean;
43
+ /** Skjuler kalender-GUI-et
44
+ * @default false
45
+ */
46
+ hideCalendar?: boolean;
35
47
  'data-cy'?: any;
36
48
  } & Omit<ReactDatePickerProps, 'selected' | 'customInput'>;
37
49
  export declare const DatePicker: React.ForwardRefExoticComponent<{
@@ -40,17 +52,21 @@ export declare const DatePicker: React.ForwardRefExoticComponent<{
40
52
  /** Kalles når datoen/tiden endres */
41
53
  onChange: (date: Date | null, event: React.SyntheticEvent<any, Event>) => void;
42
54
  /** Placeholder om ingen dato er valgt
43
- * @default "Velg dato"
55
+ * @default "dd.mm.yyyy"
44
56
  */
45
57
  placeholder?: string | undefined;
46
58
  /** Ekstra klassenavn */
47
59
  className?: string | undefined;
48
60
  /** Label over DatePicker */
49
61
  label: string;
50
- /** Varselmelding, som vil komme under DatePicker */
62
+ /** Varselmelding, som vil komme under DatePicker
63
+ * @default "Ugyldig dato"
64
+ */
51
65
  feedback?: string | undefined;
52
- /** Valideringsvariant */
53
- variant?: "success" | "error" | "warning" | "info" | undefined;
66
+ /** Valideringsvariant
67
+ * @default "error"
68
+ */
69
+ variant?: VariantType | undefined;
54
70
  style?: React.CSSProperties | undefined;
55
71
  /** Plasserer labelen statisk på toppen av inputfeltet
56
72
  * @default false
@@ -64,5 +80,13 @@ export declare const DatePicker: React.ForwardRefExoticComponent<{
64
80
  * @default false
65
81
  */
66
82
  hideCalendarButton?: boolean | undefined;
83
+ /** Skjuler tilbakemeldingsteksten ved feil dato-input
84
+ * @default false
85
+ */
86
+ hideFeedback?: boolean | undefined;
87
+ /** Skjuler kalender-GUI-et
88
+ * @default false
89
+ */
90
+ hideCalendar?: boolean | undefined;
67
91
  'data-cy'?: any;
68
- } & Pick<ReactDatePickerProps<never>, "adjustDateOnChange" | "allowSameDay" | "ariaDescribedBy" | "ariaInvalid" | "ariaLabelClose" | "ariaLabelledBy" | "ariaRequired" | "autoComplete" | "autoFocus" | "calendarClassName" | "calendarContainer" | "calendarStartDay" | "children" | "chooseDayAriaLabelPrefix" | "className" | "clearButtonClassName" | "clearButtonTitle" | "closeOnScroll" | "customInputRef" | "customTimeInput" | "dateFormat" | "dateFormatCalendar" | "dayClassName" | "weekDayClassName" | "monthClassName" | "timeClassName" | "disabledDayAriaLabelPrefix" | "disabled" | "disabledKeyboardNavigation" | "dropdownMode" | "endDate" | "excludeDates" | "excludeTimes" | "filterDate" | "filterTime" | "fixedHeight" | "forceShowMonthNavigation" | "formatWeekDay" | "formatWeekNumber" | "highlightDates" | "id" | "includeDates" | "includeTimes" | "injectTimes" | "inline" | "focusSelectedMonth" | "isClearable" | "locale" | "maxDate" | "maxTime" | "minDate" | "minTime" | "monthsShown" | "name" | "nextMonthButtonLabel" | "nextYearButtonLabel" | "onBlur" | "onCalendarClose" | "onCalendarOpen" | "onChange" | "onChangeRaw" | "onClickOutside" | "onDayMouseEnter" | "onFocus" | "onInputClick" | "onInputError" | "onKeyDown" | "onMonthChange" | "onMonthMouseLeave" | "onSelect" | "onWeekSelect" | "onYearChange" | "open" | "openToDate" | "peekNextMonth" | "placeholderText" | "popperClassName" | "popperContainer" | "popperModifiers" | "popperPlacement" | "popperProps" | "preventOpenOnFocus" | "previousMonthButtonLabel" | "previousYearButtonLabel" | "readOnly" | "renderCustomHeader" | "renderDayContents" | "required" | "scrollableMonthYearDropdown" | "scrollableYearDropdown" | "selectsEnd" | "selectsStart" | "selectsRange" | "shouldCloseOnSelect" | "showDisabledMonthNavigation" | "showFullMonthYearPicker" | "showMonthDropdown" | "showMonthYearDropdown" | "showMonthYearPicker" | "showPopperArrow" | "showPreviousMonths" | "showQuarterYearPicker" | "showTimeInput" | "showTimeSelect" | "showTimeSelectOnly" | "showTwoColumnMonthYearPicker" | "showFourColumnMonthYearPicker" | "showWeekNumbers" | "showYearDropdown" | "showYearPicker" | "startDate" | "startOpen" | "strictParsing" | "tabIndex" | "timeCaption" | "timeFormat" | "timeInputLabel" | "timeIntervals" | "title" | "todayButton" | "useShortMonthInDropdown" | "useWeekdaysShort" | "weekAriaLabelPrefix" | "value" | "weekLabel" | "withPortal" | "portalId" | "wrapperClassName" | "yearDropdownItemNumber" | "excludeScrollbar" | "enableTabLoop" | "yearItemNumber"> & React.RefAttributes<HTMLInputElement>>;
92
+ } & Omit<ReactDatePickerProps<never>, "selected" | "customInput"> & React.RefAttributes<HTMLInputElement>>;
@@ -26,7 +26,7 @@ export declare const NativeDatePicker: React.ForwardRefExoticComponent<{
26
26
  /** Varselmelding, som vil komme under NativeDatePicker */
27
27
  feedback?: string | undefined;
28
28
  /** Valideringsvariant */
29
- variant?: "success" | "error" | "warning" | "info" | undefined;
29
+ variant?: VariantType | undefined;
30
30
  /** Plasserer labelen statisk på toppen av inputfeltet
31
31
  * @default false
32
32
  */
@@ -26,7 +26,7 @@ export declare const NativeTimePicker: React.ForwardRefExoticComponent<{
26
26
  /** Varselmelding, som vil komme under NativeTimePicker */
27
27
  feedback?: string | undefined;
28
28
  /** Valideringsvariant */
29
- variant?: "success" | "error" | "warning" | "info" | undefined;
29
+ variant?: VariantType | undefined;
30
30
  /** Plasserer labelen statisk på toppen av inputfeltet
31
31
  * @default false
32
32
  */
@@ -50,7 +50,7 @@ export declare const TimePicker: React.ForwardRefExoticComponent<{
50
50
  /** Varselmelding, som vil komme under TimePicker */
51
51
  feedback?: string | undefined;
52
52
  /** Valideringsvariant */
53
- variant?: "success" | "error" | "warning" | "info" | undefined;
53
+ variant?: VariantType | undefined;
54
54
  style?: React.CSSProperties | undefined;
55
55
  labelTooltip?: React.ReactNode;
56
56
  /** Plasserer labelen statisk på toppen av inputfeltet
@@ -2,18 +2,39 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
6
-
7
5
  var utils = require('@entur/utils');
8
- var React = _interopDefault(require('react'));
6
+ var React = require('react');
9
7
  var ReactDatepicker = require('react-datepicker');
10
- var ReactDatepicker__default = _interopDefault(ReactDatepicker);
11
- var classNames = _interopDefault(require('classnames'));
8
+ var classNames = require('classnames');
12
9
  var form = require('@entur/form');
13
10
  var icons = require('@entur/icons');
11
+ var dateFns = require('date-fns');
14
12
  var locale = require('date-fns/locale');
15
13
  var tooltip = require('@entur/tooltip');
16
- var dateFns = require('date-fns');
14
+
15
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
16
+
17
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
18
+ var ReactDatepicker__default = /*#__PURE__*/_interopDefaultLegacy(ReactDatepicker);
19
+ var classNames__default = /*#__PURE__*/_interopDefaultLegacy(classNames);
20
+
21
+ function _extends() {
22
+ _extends = Object.assign || function (target) {
23
+ for (var i = 1; i < arguments.length; i++) {
24
+ var source = arguments[i];
25
+
26
+ for (var key in source) {
27
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
28
+ target[key] = source[key];
29
+ }
30
+ }
31
+ }
32
+
33
+ return target;
34
+ };
35
+
36
+ return _extends.apply(this, arguments);
37
+ }
17
38
 
18
39
  function _objectWithoutPropertiesLoose(source, excluded) {
19
40
  if (source == null) return {};
@@ -30,38 +51,56 @@ function _objectWithoutPropertiesLoose(source, excluded) {
30
51
  return target;
31
52
  }
32
53
 
54
+ var _excluded$3 = ["selectedDate", "onChange", "placeholder", "className", "style", "readOnly", "disableLabelAnimation", "locale", "prepend", "disabled", "variant", "feedback", "label", "hideCalendarButton", "hideCalendar", "hideFeedback", "id"],
55
+ _excluded2$3 = ["value", "onClick", "onFocus", "onKeyDown", "variant", "feedback", "style", "disableLabelAnimation", "disabled", "label", "readOnly", "id", "prepend", "className", "hideCalendarButton", "inputId", "onKeyDownInput", "onBlurInput"];
33
56
  ReactDatepicker.registerLocale('nb', locale.nb);
34
- var POPPER_MODIFIERS = [{
57
+ var POPPER_MODIFIERS$1 = [{
35
58
  name: 'offset',
36
59
  enabled: true,
37
60
  options: {
38
61
  offset: [0, 0]
39
62
  }
40
63
  }];
41
- var DatePicker = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
64
+ var DatePicker = /*#__PURE__*/React__default["default"].forwardRef(function (_ref, ref) {
42
65
  var _ref$selectedDate = _ref.selectedDate,
43
66
  selectedDate = _ref$selectedDate === void 0 ? null : _ref$selectedDate,
44
67
  onChange = _ref.onChange,
45
68
  _ref$placeholder = _ref.placeholder,
46
- placeholder = _ref$placeholder === void 0 ? 'Velg dato' : _ref$placeholder,
69
+ placeholder = _ref$placeholder === void 0 ? 'dd.mm.yyyy' : _ref$placeholder,
47
70
  className = _ref.className,
48
71
  style = _ref.style,
49
72
  readOnly = _ref.readOnly,
50
73
  _ref$disableLabelAnim = _ref.disableLabelAnimation,
51
74
  disableLabelAnimation = _ref$disableLabelAnim === void 0 ? false : _ref$disableLabelAnim,
52
75
  _ref$locale = _ref.locale,
53
- locale = _ref$locale === void 0 ? 'nb' : _ref$locale,
76
+ locale$1 = _ref$locale === void 0 ? 'nb' : _ref$locale,
54
77
  prepend = _ref.prepend,
55
78
  disabled = _ref.disabled,
56
- _ref$dateFormat = _ref.dateFormat,
57
- dateFormat = _ref$dateFormat === void 0 ? ['dd.MM.yyyy', 'ddMMyyyy'] : _ref$dateFormat,
58
- variant = _ref.variant,
59
- feedback = _ref.feedback,
79
+ _ref$variant = _ref.variant,
80
+ variant = _ref$variant === void 0 ? 'error' : _ref$variant,
81
+ _ref$feedback = _ref.feedback,
82
+ feedback = _ref$feedback === void 0 ? 'Ugyldig dato' : _ref$feedback,
60
83
  label = _ref.label,
61
84
  _ref$hideCalendarButt = _ref.hideCalendarButton,
62
85
  hideCalendarButton = _ref$hideCalendarButt === void 0 ? false : _ref$hideCalendarButt,
86
+ _ref$hideCalendar = _ref.hideCalendar,
87
+ hideCalendar = _ref$hideCalendar === void 0 ? false : _ref$hideCalendar,
88
+ _ref$hideFeedback = _ref.hideFeedback,
89
+ hideFeedback = _ref$hideFeedback === void 0 ? false : _ref$hideFeedback,
63
90
  id = _ref.id,
64
- rest = _objectWithoutPropertiesLoose(_ref, ["selectedDate", "onChange", "placeholder", "className", "style", "readOnly", "disableLabelAnimation", "locale", "prepend", "disabled", "dateFormat", "variant", "feedback", "label", "hideCalendarButton", "id"]);
91
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$3);
92
+
93
+ var _useState = React.useState(false),
94
+ showFeedback = _useState[0],
95
+ setShowFeedback = _useState[1];
96
+
97
+ var _useState2 = React.useState(''),
98
+ currentValue = _useState2[0],
99
+ setCurrentValue = _useState2[1];
100
+
101
+ var _useState3 = React.useState(''),
102
+ lastValidValue = _useState3[0],
103
+ setLastValidValue = _useState3[1];
65
104
 
66
105
  var datepickerId = utils.useRandomId('eds-datepicker');
67
106
 
@@ -74,7 +113,7 @@ var DatePicker = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
74
113
  setFiller && !isDatepickerFilled && setFiller(true);
75
114
  }
76
115
  });
77
- React.useEffect(function () {
116
+ React__default["default"].useEffect(function () {
78
117
  if (selectedDate) {
79
118
  setFiller && !isDatepickerFilled && setFiller(true);
80
119
  } else {
@@ -91,30 +130,78 @@ var DatePicker = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
91
130
 
92
131
  if (onChange) {
93
132
  onChange(date, event);
133
+ var dateString = date == null ? void 0 : date.toLocaleDateString('no-NO', {
134
+ day: '2-digit',
135
+ month: '2-digit',
136
+ year: 'numeric'
137
+ });
138
+ setCurrentValue(dateString != null ? dateString : '');
139
+ setLastValidValue(dateString != null ? dateString : '');
94
140
  }
95
141
  };
96
142
 
97
- return React.createElement(ReactDatepicker__default, Object.assign({
98
- className: classNames(className),
143
+ var handleChangeRaw = function handleChangeRaw(event) {
144
+ setShowFeedback(false);
145
+ setCurrentValue(event.target.value);
146
+ };
147
+
148
+ var handleBlur = function handleBlur(event) {
149
+ if (showFeedback) {
150
+ setShowFeedback(false);
151
+ } else {
152
+ var inputValue = event.target.value;
153
+ if (inputValue) validateInput(inputValue);
154
+ }
155
+ };
156
+
157
+ var handleKeyDownInput = function handleKeyDownInput(event) {
158
+ if (event.key === 'Enter') validateInput(currentValue);
159
+ };
160
+
161
+ var validateInput = function validateInput(inputValue) {
162
+ var parsedDate = dateFns.parse(inputValue, 'dd.MM.yyyy', new Date(), {
163
+ locale: locale.nb
164
+ });
165
+ var yearIsFourCharacters = currentValue.slice(currentValue.lastIndexOf('.') + 1).length === 4;
166
+ var isValidDate = dateFns.isValid(parsedDate) && yearIsFourCharacters;
167
+
168
+ if (!isValidDate) {
169
+ setShowFeedback(true);
170
+ setCurrentValue(lastValidValue);
171
+ } else {
172
+ setShowFeedback(false);
173
+ setLastValidValue(currentValue);
174
+ }
175
+ };
176
+
177
+ return React__default["default"].createElement(ReactDatepicker__default["default"], _extends({
178
+ className: classNames__default["default"](className),
99
179
  calendarClassName: "eds-datepicker__calender",
100
180
  selected: selectedDate,
101
181
  onChange: handleChange,
102
182
  showWeekNumbers: true,
103
- dateFormat: dateFormat,
183
+ dateFormat: ['dd.MM.yyyy', 'ddMMyyyy', 'dd/MM/yyyy'],
104
184
  showPopperArrow: false,
105
185
  placeholderText: placeholder,
106
186
  readOnly: readOnly,
107
187
  id: datepickerId,
108
188
  ariaLabelledBy: datepickerId,
109
189
  disabled: disabled,
110
- locale: locale,
111
- popperModifiers: POPPER_MODIFIERS
190
+ locale: locale$1,
191
+ popperModifiers: POPPER_MODIFIERS$1,
192
+ onBlur: handleBlur,
193
+ onChangeRaw: handleChangeRaw,
194
+ onCalendarOpen: function onCalendarOpen() {
195
+ return setShowFeedback(false);
196
+ },
197
+ value: currentValue,
198
+ open: hideCalendar === true ? false : rest.open
112
199
  }, rest, {
113
- customInput: React.createElement(DatePickerInput, {
200
+ customInput: React__default["default"].createElement(DatePickerInput, {
114
201
  style: style,
115
202
  readOnly: readOnly,
116
- variant: variant,
117
- feedback: feedback,
203
+ variant: !hideFeedback && showFeedback ? variant : '',
204
+ feedback: !hideFeedback && showFeedback ? feedback : '',
118
205
  label: label,
119
206
  disabled: disabled,
120
207
  ref: ref,
@@ -122,7 +209,9 @@ var DatePicker = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
122
209
  disableLabelAnimation: disableLabelAnimation,
123
210
  prepend: prepend,
124
211
  hideCalendarButton: hideCalendarButton,
125
- inputId: id
212
+ inputId: id,
213
+ onKeyDownInput: handleKeyDownInput,
214
+ onBlurInput: handleBlur
126
215
  })
127
216
  }));
128
217
  }); // Props fra customInput i react-datepicker
@@ -148,7 +237,7 @@ var DatePicker = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
148
237
  // "aria-labelledby": this.props.ariaLabelledBy,
149
238
  // "aria-required": this.props.ariaRequired,
150
239
 
151
- var DatePickerInput = /*#__PURE__*/React.forwardRef(function (_ref2, ref) {
240
+ var DatePickerInput = /*#__PURE__*/React__default["default"].forwardRef(function (_ref2, ref) {
152
241
  var value = _ref2.value,
153
242
  onClick = _ref2.onClick,
154
243
  onKeyDown = _ref2.onKeyDown,
@@ -164,11 +253,14 @@ var DatePickerInput = /*#__PURE__*/React.forwardRef(function (_ref2, ref) {
164
253
  className = _ref2.className,
165
254
  hideCalendarButton = _ref2.hideCalendarButton,
166
255
  inputId = _ref2.inputId,
167
- rest = _objectWithoutPropertiesLoose(_ref2, ["value", "onClick", "onFocus", "onKeyDown", "variant", "feedback", "style", "disableLabelAnimation", "disabled", "label", "readOnly", "id", "prepend", "className", "hideCalendarButton", "inputId"]);
256
+ onKeyDownInput = _ref2.onKeyDownInput,
257
+ onBlurInput = _ref2.onBlurInput,
258
+ rest = _objectWithoutPropertiesLoose(_ref2, _excluded2$3);
168
259
 
169
- return React.createElement("span", {
170
- className: className
171
- }, React.createElement(form.BaseFormControl, {
260
+ return React__default["default"].createElement("span", {
261
+ className: className,
262
+ onBlur: onBlurInput
263
+ }, React__default["default"].createElement(form.BaseFormControl, {
172
264
  style: style,
173
265
  className: "eds-datepicker__form-control",
174
266
  readOnly: readOnly,
@@ -180,7 +272,7 @@ var DatePickerInput = /*#__PURE__*/React.forwardRef(function (_ref2, ref) {
180
272
  disableLabelAnimation: disableLabelAnimation,
181
273
  isFilled: value ? true : false,
182
274
  prepend: prepend
183
- }, React.createElement("input", Object.assign({
275
+ }, React__default["default"].createElement("input", _extends({
184
276
  value: value,
185
277
  onClick: onClick,
186
278
  readOnly: readOnly,
@@ -188,14 +280,15 @@ var DatePickerInput = /*#__PURE__*/React.forwardRef(function (_ref2, ref) {
188
280
  ref: ref,
189
281
  // aria-labelledby={id}
190
282
  className: "eds-form-control",
191
- id: inputId
192
- }, rest)), !hideCalendarButton && React.createElement(tooltip.Tooltip, {
283
+ id: inputId,
284
+ onKeyDown: onKeyDownInput
285
+ }, rest)), !hideCalendarButton && React__default["default"].createElement(tooltip.Tooltip, {
193
286
  placement: "top",
194
287
  content: "\xC5pne kalender",
195
288
  disableHoverListener: disabled,
196
289
  disableFocusListener: disabled
197
- }, React.createElement("button", {
198
- className: classNames('eds-datepicker__calendar-button', {
290
+ }, React__default["default"].createElement("button", {
291
+ className: classNames__default["default"]('eds-datepicker__calendar-button', {
199
292
  'eds-datepicker__calendar-button--open': true,
200
293
  'eds-datepicker__calendar-button--disabled': disabled
201
294
  }),
@@ -203,10 +296,12 @@ var DatePickerInput = /*#__PURE__*/React.forwardRef(function (_ref2, ref) {
203
296
  onClick: onClick,
204
297
  disabled: disabled,
205
298
  type: "button"
206
- }, React.createElement(icons.CalendarIcon, null)))));
299
+ }, React__default["default"].createElement(icons.CalendarIcon, null)))));
207
300
  });
208
301
 
209
- var NativeDatePicker = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
302
+ var _excluded$2 = ["className", "style", "label", "onChange", "feedback", "variant", "disableLabelAnimation", "prepend"],
303
+ _excluded2$2 = ["onChange", "variant", "value"];
304
+ var NativeDatePicker = /*#__PURE__*/React__default["default"].forwardRef(function (_ref, ref) {
210
305
  var className = _ref.className,
211
306
  style = _ref.style,
212
307
  label = _ref.label,
@@ -215,13 +310,13 @@ var NativeDatePicker = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
215
310
  variant = _ref.variant,
216
311
  disableLabelAnimation = _ref.disableLabelAnimation,
217
312
  _ref$prepend = _ref.prepend,
218
- prepend = _ref$prepend === void 0 ? React.createElement(icons.DateIcon, {
313
+ prepend = _ref$prepend === void 0 ? React__default["default"].createElement(icons.DateIcon, {
219
314
  inline: true
220
315
  }) : _ref$prepend,
221
- rest = _objectWithoutPropertiesLoose(_ref, ["className", "style", "label", "onChange", "feedback", "variant", "disableLabelAnimation", "prepend"]);
316
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$2);
222
317
 
223
318
  var nativedatepickerId = utils.useRandomId('eds-nativetimepicker');
224
- return React.createElement(form.BaseFormControl, {
319
+ return React__default["default"].createElement(form.BaseFormControl, {
225
320
  style: style,
226
321
  className: className,
227
322
  prepend: prepend,
@@ -231,18 +326,18 @@ var NativeDatePicker = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
231
326
  labelId: nativedatepickerId,
232
327
  disableLabelAnimation: disableLabelAnimation,
233
328
  isFilled: true
234
- }, React.createElement(NativeDatePickerBase, Object.assign({
329
+ }, React__default["default"].createElement(NativeDatePickerBase, _extends({
235
330
  onChange: onChange,
236
331
  "aria-labelledby": nativedatepickerId,
237
332
  ref: ref,
238
333
  variant: variant
239
334
  }, rest)));
240
335
  });
241
- var NativeDatePickerBase = /*#__PURE__*/React.forwardRef(function (_ref2, ref) {
336
+ var NativeDatePickerBase = /*#__PURE__*/React__default["default"].forwardRef(function (_ref2, ref) {
242
337
  var onChange = _ref2.onChange,
243
338
  variant = _ref2.variant,
244
339
  value = _ref2.value,
245
- rest = _objectWithoutPropertiesLoose(_ref2, ["onChange", "variant", "value"]);
340
+ rest = _objectWithoutPropertiesLoose(_ref2, _excluded2$2);
246
341
 
247
342
  var contextVariant = form.useVariant();
248
343
  var currentVariant = variant || contextVariant;
@@ -254,7 +349,7 @@ var NativeDatePickerBase = /*#__PURE__*/React.forwardRef(function (_ref2, ref) {
254
349
  utils.useOnMount(function () {
255
350
  setFiller && !isDatepickerFilled && setFiller(true);
256
351
  });
257
- React.useEffect(function () {
352
+ React__default["default"].useEffect(function () {
258
353
  if (value) {
259
354
  setFiller && !isDatepickerFilled && setFiller(true);
260
355
  } else {
@@ -274,7 +369,7 @@ var NativeDatePickerBase = /*#__PURE__*/React.forwardRef(function (_ref2, ref) {
274
369
  }
275
370
  };
276
371
 
277
- return React.createElement("input", Object.assign({
372
+ return React__default["default"].createElement("input", _extends({
278
373
  ref: ref,
279
374
  "aria-invalid": currentVariant === 'error',
280
375
  type: "date",
@@ -284,8 +379,11 @@ var NativeDatePickerBase = /*#__PURE__*/React.forwardRef(function (_ref2, ref) {
284
379
  }, rest));
285
380
  });
286
381
 
382
+ var _excluded$1 = ["selectedTime", "onChange", "placeholder", "disabled", "className", "style", "label", "labelTooltip", "feedback", "variant", "disableLabelAnimation", "locale", "onLeftArrowClick", "onRightArrowClick"],
383
+ _excluded2$1 = ["className", "onChange", "selectedTime", "placeholder", "timeFormat", "dateFormat"],
384
+ _excluded3 = ["direction"];
287
385
  ReactDatepicker.registerLocale('nb', locale.nb);
288
- var TimePicker = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
386
+ var TimePicker = /*#__PURE__*/React__default["default"].forwardRef(function (_ref, ref) {
289
387
  var _ref$selectedTime = _ref.selectedTime,
290
388
  selectedTime = _ref$selectedTime === void 0 ? null : _ref$selectedTime,
291
389
  onChange = _ref.onChange,
@@ -313,10 +411,10 @@ var TimePicker = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
313
411
  minutes: 30
314
412
  }), event);
315
413
  } : _ref$onRightArrowClic,
316
- rest = _objectWithoutPropertiesLoose(_ref, ["selectedTime", "onChange", "placeholder", "disabled", "className", "style", "label", "labelTooltip", "feedback", "variant", "disableLabelAnimation", "locale", "onLeftArrowClick", "onRightArrowClick"]);
414
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$1);
317
415
 
318
416
  var timepickerId = utils.useRandomId('eds-timepicker');
319
- return React.createElement(form.BaseFormControl, {
417
+ return React__default["default"].createElement(form.BaseFormControl, {
320
418
  style: style,
321
419
  ref: ref,
322
420
  label: label,
@@ -327,7 +425,7 @@ var TimePicker = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
327
425
  disableLabelAnimation: disableLabelAnimation,
328
426
  className: "eds-timepicker-form-control",
329
427
  disabled: disabled,
330
- prepend: React.createElement(TimePickerArrowButton, {
428
+ prepend: React__default["default"].createElement(TimePickerArrowButton, {
331
429
  direction: "left",
332
430
  tabIndex: -1,
333
431
  onClick: function onClick(e) {
@@ -335,7 +433,7 @@ var TimePicker = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
335
433
  },
336
434
  disabled: disabled
337
435
  })
338
- }, React.createElement(TimePickerBase, Object.assign({
436
+ }, React__default["default"].createElement(TimePickerBase, _extends({
339
437
  selectedTime: selectedTime,
340
438
  onChange: onChange,
341
439
  placeholder: placeholder,
@@ -343,7 +441,7 @@ var TimePicker = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
343
441
  locale: locale,
344
442
  ariaLabelledBy: timepickerId,
345
443
  disabled: disabled
346
- }, rest)), React.createElement(TimePickerArrowButton, {
444
+ }, rest)), React__default["default"].createElement(TimePickerArrowButton, {
347
445
  direction: "right",
348
446
  tabIndex: -1,
349
447
  onClick: function onClick(e) {
@@ -352,7 +450,7 @@ var TimePicker = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
352
450
  disabled: disabled
353
451
  }));
354
452
  });
355
- var POPPER_MODIFIERS$1 = [{
453
+ var POPPER_MODIFIERS = [{
356
454
  name: 'offset',
357
455
  enabled: true,
358
456
  options: {
@@ -369,7 +467,7 @@ var TimePickerBase = function TimePickerBase(_ref2) {
369
467
  timeFormat = _ref2$timeFormat === void 0 ? 'HH:mm' : _ref2$timeFormat,
370
468
  _ref2$dateFormat = _ref2.dateFormat,
371
469
  dateFormat = _ref2$dateFormat === void 0 ? ['HH:mm', 'HHmm'] : _ref2$dateFormat,
372
- rest = _objectWithoutPropertiesLoose(_ref2, ["className", "onChange", "selectedTime", "placeholder", "timeFormat", "dateFormat"]);
470
+ rest = _objectWithoutPropertiesLoose(_ref2, _excluded2$1);
373
471
 
374
472
  var _useInputGroupContext = form.useInputGroupContext(),
375
473
  isTimepickerFilled = _useInputGroupContext.isFilled,
@@ -380,7 +478,7 @@ var TimePickerBase = function TimePickerBase(_ref2) {
380
478
  setFiller && !isTimepickerFilled && setFiller(true);
381
479
  }
382
480
  });
383
- React.useEffect(function () {
481
+ React__default["default"].useEffect(function () {
384
482
  if (selectedTime) {
385
483
  setFiller && !isTimepickerFilled && setFiller(true);
386
484
  } else {
@@ -400,8 +498,8 @@ var TimePickerBase = function TimePickerBase(_ref2) {
400
498
  }
401
499
  };
402
500
 
403
- return React.createElement(ReactDatepicker__default, Object.assign({
404
- className: classNames('eds-form-control', 'eds-timepicker__input', className),
501
+ return React__default["default"].createElement(ReactDatepicker__default["default"], _extends({
502
+ className: classNames__default["default"]('eds-form-control', 'eds-timepicker__input', className),
405
503
  calendarClassName: "eds-timepicker",
406
504
  selected: selectedTime,
407
505
  onChange: handleChange,
@@ -413,22 +511,24 @@ var TimePickerBase = function TimePickerBase(_ref2) {
413
511
  showPopperArrow: false,
414
512
  placeholderText: placeholder,
415
513
  popperClassName: "eds-datepicker__popper",
416
- popperModifiers: POPPER_MODIFIERS$1,
514
+ popperModifiers: POPPER_MODIFIERS,
417
515
  open: false
418
516
  }, rest));
419
517
  };
420
518
 
421
519
  var TimePickerArrowButton = function TimePickerArrowButton(_ref3) {
422
520
  var direction = _ref3.direction,
423
- rest = _objectWithoutPropertiesLoose(_ref3, ["direction"]);
521
+ rest = _objectWithoutPropertiesLoose(_ref3, _excluded3);
424
522
 
425
- return React.createElement("button", Object.assign({
426
- className: classNames('eds-timepicker__arrowbutton', "eds-timepicker__arrowbutton--" + direction),
523
+ return React__default["default"].createElement("button", _extends({
524
+ className: classNames__default["default"]('eds-timepicker__arrowbutton', "eds-timepicker__arrowbutton--" + direction),
427
525
  type: "button"
428
- }, rest), direction === 'left' ? React.createElement(icons.LeftArrowIcon, null) : React.createElement(icons.RightArrowIcon, null));
526
+ }, rest), direction === 'left' ? React__default["default"].createElement(icons.LeftArrowIcon, null) : React__default["default"].createElement(icons.RightArrowIcon, null));
429
527
  };
430
528
 
431
- var NativeTimePicker = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
529
+ var _excluded = ["className", "style", "onChange", "label", "feedback", "variant", "disableLabelAnimation", "prepend"],
530
+ _excluded2 = ["onChange", "value"];
531
+ var NativeTimePicker = /*#__PURE__*/React__default["default"].forwardRef(function (_ref, ref) {
432
532
  var className = _ref.className,
433
533
  style = _ref.style,
434
534
  onChange = _ref.onChange,
@@ -437,11 +537,11 @@ var NativeTimePicker = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
437
537
  variant = _ref.variant,
438
538
  disableLabelAnimation = _ref.disableLabelAnimation,
439
539
  _ref$prepend = _ref.prepend,
440
- prepend = _ref$prepend === void 0 ? React.createElement(icons.ClockIcon, null) : _ref$prepend,
441
- rest = _objectWithoutPropertiesLoose(_ref, ["className", "style", "onChange", "label", "feedback", "variant", "disableLabelAnimation", "prepend"]);
540
+ prepend = _ref$prepend === void 0 ? React__default["default"].createElement(icons.ClockIcon, null) : _ref$prepend,
541
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded);
442
542
 
443
543
  var nativetimepickerId = utils.useRandomId('eds-nativetimepicker');
444
- return React.createElement(form.BaseFormControl, {
544
+ return React__default["default"].createElement(form.BaseFormControl, {
445
545
  style: style,
446
546
  className: className,
447
547
  prepend: prepend,
@@ -450,16 +550,16 @@ var NativeTimePicker = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
450
550
  variant: variant,
451
551
  labelId: nativetimepickerId,
452
552
  disableLabelAnimation: disableLabelAnimation
453
- }, React.createElement(NativeTimePickerBase, Object.assign({
553
+ }, React__default["default"].createElement(NativeTimePickerBase, _extends({
454
554
  onChange: onChange,
455
555
  "aria-labelledby": nativetimepickerId,
456
556
  ref: ref
457
557
  }, rest)));
458
558
  });
459
- var NativeTimePickerBase = /*#__PURE__*/React.forwardRef(function (_ref2, ref) {
559
+ var NativeTimePickerBase = /*#__PURE__*/React__default["default"].forwardRef(function (_ref2, ref) {
460
560
  var onChange = _ref2.onChange,
461
561
  value = _ref2.value,
462
- rest = _objectWithoutPropertiesLoose(_ref2, ["onChange", "value"]);
562
+ rest = _objectWithoutPropertiesLoose(_ref2, _excluded2);
463
563
 
464
564
  var contextVariant = form.useVariant();
465
565
  var currentVariant = rest.variant || contextVariant;
@@ -471,7 +571,7 @@ var NativeTimePickerBase = /*#__PURE__*/React.forwardRef(function (_ref2, ref) {
471
571
  utils.useOnMount(function () {
472
572
  setFiller && !isTimepickerFilled && setFiller(true);
473
573
  });
474
- React.useEffect(function () {
574
+ React__default["default"].useEffect(function () {
475
575
  if (value) {
476
576
  setFiller && !isTimepickerFilled && setFiller(true);
477
577
  } else {
@@ -491,7 +591,7 @@ var NativeTimePickerBase = /*#__PURE__*/React.forwardRef(function (_ref2, ref) {
491
591
  }
492
592
  };
493
593
 
494
- return React.createElement("input", Object.assign({
594
+ return React__default["default"].createElement("input", _extends({
495
595
  ref: ref,
496
596
  "aria-invalid": currentVariant === 'error',
497
597
  type: "time",