@entur/datepicker 8.0.10 → 8.1.0-beta.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.
@@ -0,0 +1,37 @@
1
+ import React from 'react';
2
+ import type { TimeValue, AriaTimeFieldProps, MappedTimeValue } from '@react-types/datepicker';
3
+ import { VariantType } from '@entur/form';
4
+ import './SimpleTimePicker.scss';
5
+ export type SimpleTimePickerProps<TimeType extends TimeValue> = {
6
+ /** Den valgte tiden. Tid i '@internationalized/date'-pakkens format */
7
+ selectedTime: TimeType | null;
8
+ /** Kalles når tiden endres. Tid i '@internationalized/date'-pakkens format */
9
+ onChange?: (value: MappedTimeValue<TimeType> | null) => void | React.Dispatch<React.SetStateAction<TimeValue | null>>;
10
+ /** Label til TimePicker */
11
+ label: string;
12
+ /** Viser den gjeldende tidssonen hvis en er valgt
13
+ * @default false
14
+ */
15
+ showTimeZone?: boolean;
16
+ /** Viser sekund i tillegg til time og minutt
17
+ * @default false
18
+ */
19
+ showSeconds?: boolean;
20
+ /** Viser et klokkeikonet for å klarere indikere at dette
21
+ * er en tidsvelger
22
+ * @default false
23
+ */
24
+ showClockIcon?: boolean;
25
+ /** Varselmelding, som vil komme under TimePicker */
26
+ feedback?: string;
27
+ /** Valideringsvariant */
28
+ variant?: VariantType;
29
+ labelTooltip?: React.ReactNode;
30
+ disabled?: boolean;
31
+ readOnly?: boolean;
32
+ inputRef?: React.ForwardedRef<HTMLInputElement>;
33
+ /** Ekstra klassenavn */
34
+ className?: string;
35
+ style?: React.CSSProperties;
36
+ } & Omit<AriaTimeFieldProps<TimeType>, 'value' | 'onChange' | 'label' | 'hideTimeZone' | 'placeholder' | 'minValue' | 'maxValue' | 'locale'>;
37
+ export declare const SimpleTimePicker: <TimeType extends TimeValue>({ className, disabled, feedback, showClockIcon, inputRef, label, labelTooltip, onChange, readOnly, selectedTime, showSeconds, showTimeZone, style, variant, ...rest }: SimpleTimePickerProps<TimeType>) => JSX.Element;
@@ -1,3 +1,4 @@
1
1
  export * from './TimePicker';
2
2
  export * from './NativeTimePicker';
3
+ export * from './SimpleTimePicker';
3
4
  export * from '../shared/utils';
@@ -183,7 +183,7 @@ var ariaLabelIfNorwegian = function ariaLabelIfNorwegian(norwegianAriaLabel, loc
183
183
  return norwegianAriaLabel;
184
184
  };
185
185
 
186
- var _excluded$8 = ["selectedDate", "label", "locale", "showTimeZone", "showTime", "granularity", "disabled", "variant", "feedback", "validationVariant", "validationFeedback", "labelTooltip", "minDate", "maxDate", "style", "className", "labelProps", "append"];
186
+ var _excluded$9 = ["selectedDate", "label", "locale", "showTimeZone", "showTime", "granularity", "disabled", "variant", "feedback", "validationVariant", "validationFeedback", "labelTooltip", "minDate", "maxDate", "style", "className", "labelProps", "append"];
187
187
  var DateField = /*#__PURE__*/React__default["default"].forwardRef(function (_ref, ref) {
188
188
  var value = _ref.selectedDate,
189
189
  label = _ref.label,
@@ -206,7 +206,7 @@ var DateField = /*#__PURE__*/React__default["default"].forwardRef(function (_ref
206
206
  className = _ref.className,
207
207
  parentLabelProps = _ref.labelProps,
208
208
  append = _ref.append,
209
- rest = _objectWithoutPropertiesLoose(_ref, _excluded$8);
209
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$9);
210
210
  var _useLocale = i18n.useLocale(),
211
211
  locale = _useLocale.locale;
212
212
  var state = datepicker$1.useDateFieldState(_extends({}, rest, {
@@ -257,12 +257,12 @@ var DateField = /*#__PURE__*/React__default["default"].forwardRef(function (_ref
257
257
  })));
258
258
  });
259
259
 
260
- var _excluded$7 = ["children", "className", "style"];
260
+ var _excluded$8 = ["children", "className", "style"];
261
261
  var CalendarButton = function CalendarButton(_ref) {
262
262
  var children = _ref.children,
263
263
  className = _ref.className,
264
264
  style = _ref.style,
265
- props = _objectWithoutPropertiesLoose(_ref, _excluded$7);
265
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$8);
266
266
  var ref = React.useRef(null);
267
267
  var _useButton = button.useButton(props, ref),
268
268
  buttonProps = _useButton.buttonProps;
@@ -273,7 +273,7 @@ var CalendarButton = function CalendarButton(_ref) {
273
273
  }), children);
274
274
  };
275
275
 
276
- var _excluded$6 = ["state", "date", "onSelectedCellClick"];
276
+ var _excluded$7 = ["state", "date", "onSelectedCellClick"];
277
277
  var CalendarCell = function CalendarCell(_ref) {
278
278
  var _state$timeZone;
279
279
  var state = _ref.state,
@@ -282,7 +282,7 @@ var CalendarCell = function CalendarCell(_ref) {
282
282
  onSelectedCellClick = _ref$onSelectedCellCl === void 0 ? function () {
283
283
  return;
284
284
  } : _ref$onSelectedCellCl,
285
- rest = _objectWithoutPropertiesLoose(_ref, _excluded$6);
285
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$7);
286
286
  var cellRef = React.useRef(null);
287
287
  var _useCalendarCell = calendar.useCalendarCell({
288
288
  date: date$1
@@ -317,7 +317,7 @@ var CalendarCell = function CalendarCell(_ref) {
317
317
  }), formattedDate));
318
318
  };
319
319
 
320
- var _excluded$5 = ["state", "navigationDescription", "onSelectedCellClick"];
320
+ var _excluded$6 = ["state", "navigationDescription", "onSelectedCellClick"];
321
321
  var CalendarGrid = function CalendarGrid(_ref) {
322
322
  var state = _ref.state,
323
323
  navigationDescription = _ref.navigationDescription,
@@ -325,7 +325,7 @@ var CalendarGrid = function CalendarGrid(_ref) {
325
325
  onSelectedCellClick = _ref$onSelectedCellCl === void 0 ? function () {
326
326
  return;
327
327
  } : _ref$onSelectedCellCl,
328
- rest = _objectWithoutPropertiesLoose(_ref, _excluded$5);
328
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$6);
329
329
  var calendarGridId = utils.useRandomId('eds-calendar');
330
330
  var _useLocale = i18n.useLocale(),
331
331
  locale = _useLocale.locale;
@@ -376,7 +376,7 @@ var CalendarGrid = function CalendarGrid(_ref) {
376
376
  }, getNavigationDescription()));
377
377
  };
378
378
 
379
- var _excluded$4 = ["selectedDate", "onChange", "locale", "style", "children", "navigationDescription", "onSelectedCellClick"];
379
+ var _excluded$5 = ["selectedDate", "onChange", "locale", "style", "children", "navigationDescription", "onSelectedCellClick"];
380
380
  var Calendar = /*#__PURE__*/React__default["default"].forwardRef(function (_ref, ref) {
381
381
  var onChange = _ref.onChange,
382
382
  customLocale = _ref.locale,
@@ -386,7 +386,7 @@ var Calendar = /*#__PURE__*/React__default["default"].forwardRef(function (_ref,
386
386
  onSelectedCellClick = _ref$onSelectedCellCl === void 0 ? function () {
387
387
  return;
388
388
  } : _ref$onSelectedCellCl,
389
- rest = _objectWithoutPropertiesLoose(_ref, _excluded$4);
389
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$5);
390
390
  var _useLocale = i18n.useLocale(),
391
391
  locale = _useLocale.locale;
392
392
  var state = calendar$1.useCalendarState(_extends({}, rest, {
@@ -427,7 +427,7 @@ var Calendar = /*#__PURE__*/React__default["default"].forwardRef(function (_ref,
427
427
  })));
428
428
  });
429
429
 
430
- var _excluded$3 = ["selectedDate", "onChange", "locale", "disabled", "showTime", "showTimeZone", "className", "style", "variant", "feedback", "validationVariant", "validationFeedback", "disableModal", "labelTooltip", "navigationDescription", "minDate", "maxDate", "modalTreshold"];
430
+ var _excluded$4 = ["selectedDate", "onChange", "locale", "disabled", "showTime", "showTimeZone", "className", "style", "variant", "feedback", "validationVariant", "validationFeedback", "disableModal", "labelTooltip", "navigationDescription", "minDate", "maxDate", "modalTreshold"];
431
431
  var DatePicker = function DatePicker(_ref) {
432
432
  var value = _ref.selectedDate,
433
433
  onChange = _ref.onChange,
@@ -449,7 +449,7 @@ var DatePicker = function DatePicker(_ref) {
449
449
  maxValue = _ref.maxDate,
450
450
  _ref$modalTreshold = _ref.modalTreshold,
451
451
  modalTreshold = _ref$modalTreshold === void 0 ? 1000 : _ref$modalTreshold,
452
- rest = _objectWithoutPropertiesLoose(_ref, _excluded$3);
452
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$4);
453
453
  var CALENDAR_MODAL_MAX_SCREEN_WIDTH = modalTreshold;
454
454
  var datePickerRef = React.useRef(null);
455
455
  var calendarRef = React.useRef(null);
@@ -575,8 +575,8 @@ var DatePicker = function DatePicker(_ref) {
575
575
  }), React__default["default"].createElement(icons.CalendarIcon, null)), useModal ? modalCalendar : popoverCalendar)));
576
576
  };
577
577
 
578
- var _excluded$2 = ["className", "style", "label", "onChange", "feedback", "variant", "disableLabelAnimation", "prepend"],
579
- _excluded2$1 = ["onChange", "variant", "value"];
578
+ var _excluded$3 = ["className", "style", "label", "onChange", "feedback", "variant", "disableLabelAnimation", "prepend"],
579
+ _excluded2$2 = ["onChange", "variant", "value"];
580
580
  var NativeDatePicker = /*#__PURE__*/React__default["default"].forwardRef(function (_ref, ref) {
581
581
  var className = _ref.className,
582
582
  style = _ref.style,
@@ -589,7 +589,7 @@ var NativeDatePicker = /*#__PURE__*/React__default["default"].forwardRef(functio
589
589
  prepend = _ref$prepend === void 0 ? React__default["default"].createElement(icons.DateIcon, {
590
590
  inline: true
591
591
  }) : _ref$prepend,
592
- rest = _objectWithoutPropertiesLoose(_ref, _excluded$2);
592
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$3);
593
593
  var nativedatepickerId = utils.useRandomId('eds-nativetimepicker');
594
594
  return React__default["default"].createElement(form.BaseFormControl, {
595
595
  style: style,
@@ -612,7 +612,7 @@ var NativeDatePickerBase = /*#__PURE__*/React__default["default"].forwardRef(fun
612
612
  var onChange = _ref2.onChange,
613
613
  variant = _ref2.variant,
614
614
  value = _ref2.value,
615
- rest = _objectWithoutPropertiesLoose(_ref2, _excluded2$1);
615
+ rest = _objectWithoutPropertiesLoose(_ref2, _excluded2$2);
616
616
  var contextVariant = form.useVariant();
617
617
  var currentVariant = variant || contextVariant;
618
618
  var _useInputGroupContext = form.useInputGroupContext(),
@@ -665,7 +665,7 @@ var TimePickerArrowButton = function TimePickerArrowButton(_ref) {
665
665
  }, direction === 'left' ? React__default["default"].createElement(icons.LeftArrowIcon, null) : React__default["default"].createElement(icons.RightArrowIcon, null));
666
666
  };
667
667
 
668
- var _excluded$1 = ["selectedTime", "onChange", "disabled", "className", "style", "label", "labelTooltip", "feedback", "variant", "locale", "showTimeZone", "minuteIncrementForArrowButtons", "leftArrowButtonAriaLabel", "rightArrowButtonAriaLabel", "inputRef"];
668
+ var _excluded$2 = ["selectedTime", "onChange", "disabled", "className", "style", "label", "labelTooltip", "feedback", "variant", "locale", "showTimeZone", "minuteIncrementForArrowButtons", "leftArrowButtonAriaLabel", "rightArrowButtonAriaLabel", "inputRef"];
669
669
  var TimePicker = function TimePicker(_ref) {
670
670
  var selectedTime = _ref.selectedTime,
671
671
  onChange = _ref.onChange,
@@ -685,12 +685,11 @@ var TimePicker = function TimePicker(_ref) {
685
685
  _ref$rightArrowButton = _ref.rightArrowButtonAriaLabel,
686
686
  rightArrowButtonAriaLabel = _ref$rightArrowButton === void 0 ? "Legg til " + minuteIncrementForArrowButtons + " minutter" : _ref$rightArrowButton,
687
687
  inputRef = _ref.inputRef,
688
- rest = _objectWithoutPropertiesLoose(_ref, _excluded$1);
688
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$2);
689
689
  var _useLocale = i18n.useLocale(),
690
690
  locale = _useLocale.locale;
691
691
  if (customLocale) locale = customLocale;
692
692
  var state = datepicker$1.useTimeFieldState(_extends({
693
- // @ts-expect-error Time should be assignable to MappedTime<TimeType>
694
693
  onChange: onChange,
695
694
  label: label,
696
695
  locale: locale,
@@ -772,8 +771,8 @@ var TimePicker = function TimePicker(_ref) {
772
771
  })));
773
772
  };
774
773
 
775
- var _excluded = ["className", "style", "onChange", "label", "feedback", "variant", "prepend"],
776
- _excluded2 = ["onChange", "value"];
774
+ var _excluded$1 = ["className", "style", "onChange", "label", "feedback", "variant", "prepend"],
775
+ _excluded2$1 = ["onChange", "value"];
777
776
  var NativeTimePicker = /*#__PURE__*/React__default["default"].forwardRef(function (_ref, ref) {
778
777
  var className = _ref.className,
779
778
  style = _ref.style,
@@ -782,7 +781,7 @@ var NativeTimePicker = /*#__PURE__*/React__default["default"].forwardRef(functio
782
781
  feedback = _ref.feedback,
783
782
  variant = _ref.variant,
784
783
  prepend = _ref.prepend,
785
- rest = _objectWithoutPropertiesLoose(_ref, _excluded);
784
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$1);
786
785
  var nativetimepickerId = utils.useRandomId('eds-native-timepicker');
787
786
  return React__default["default"].createElement(form.BaseFormControl, {
788
787
  style: style,
@@ -802,7 +801,7 @@ var NativeTimePicker = /*#__PURE__*/React__default["default"].forwardRef(functio
802
801
  var NativeTimePickerBase = /*#__PURE__*/React__default["default"].forwardRef(function (_ref2, ref) {
803
802
  var onChange = _ref2.onChange,
804
803
  value = _ref2.value,
805
- rest = _objectWithoutPropertiesLoose(_ref2, _excluded2);
804
+ rest = _objectWithoutPropertiesLoose(_ref2, _excluded2$1);
806
805
  var contextVariant = form.useVariant();
807
806
  var currentVariant = rest.variant || contextVariant;
808
807
  var _useInputGroupContext = form.useInputGroupContext(),
@@ -838,6 +837,187 @@ var NativeTimePickerBase = /*#__PURE__*/React__default["default"].forwardRef(fun
838
837
  }, rest));
839
838
  });
840
839
 
840
+ var _excluded = ["className", "disabled", "feedback", "showClockIcon", "inputRef", "label", "labelTooltip", "onChange", "readOnly", "selectedTime", "showSeconds", "showTimeZone", "style", "variant"],
841
+ _excluded2 = ["onBlur", "onClick", "onDragStart", "onFocus", "onKeyDown", "onKeyUp", "onMouseDown", "onPointerDown", "onPointerUp"];
842
+ var inputResult;
843
+ (function (inputResult) {
844
+ inputResult[inputResult["RESET_TIME"] = 0] = "RESET_TIME";
845
+ inputResult[inputResult["INVALID"] = 1] = "INVALID";
846
+ })(inputResult || (inputResult = {}));
847
+ var SimpleTimePicker = function SimpleTimePicker(_ref) {
848
+ var disabled = _ref.disabled,
849
+ feedback = _ref.feedback,
850
+ _ref$showClockIcon = _ref.showClockIcon,
851
+ showClockIcon = _ref$showClockIcon === void 0 ? false : _ref$showClockIcon,
852
+ inputRef = _ref.inputRef,
853
+ label = _ref.label,
854
+ labelTooltip = _ref.labelTooltip,
855
+ onChange = _ref.onChange,
856
+ readOnly = _ref.readOnly,
857
+ selectedTime = _ref.selectedTime,
858
+ showSeconds = _ref.showSeconds,
859
+ showTimeZone = _ref.showTimeZone,
860
+ style = _ref.style,
861
+ variant = _ref.variant,
862
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded);
863
+ var _useState = React.useState(''),
864
+ inputText = _useState[0],
865
+ setInputText = _useState[1];
866
+ var timeFieldRef = React.useRef(null);
867
+ var _useState2 = React.useState(null),
868
+ lastValidSelectedTime = _useState2[0],
869
+ setLastValidSelectedTime = _useState2[1];
870
+ var _useLocale = i18n.useLocale(),
871
+ locale = _useLocale.locale;
872
+ var state = datepicker$1.useTimeFieldState(_extends({
873
+ onChange: onChange,
874
+ label: label,
875
+ locale: locale,
876
+ value: selectedTime === null ? undefined : selectedTime,
877
+ hideTimeZone: !showTimeZone,
878
+ isDisabled: disabled
879
+ }, rest));
880
+ var _useTimeField = datepicker.useTimeField(_extends({}, rest, {
881
+ label: label
882
+ }), state, timeFieldRef),
883
+ labelProps = _useTimeField.labelProps,
884
+ fieldProps = _useTimeField.fieldProps;
885
+ React.useEffect(function () {
886
+ updateInputWithSelectedTime();
887
+ // @ts-expect-error TimeType and MappedTimeValue<TimeType> is actually the same
888
+ if (selectedTime !== null) setLastValidSelectedTime(selectedTime);
889
+ }, [selectedTime == null ? void 0 : selectedTime.toString()]);
890
+ var updateInputWithSelectedTime = function updateInputWithSelectedTime() {
891
+ var selectedTimeString = getStringFromTimeValue(selectedTime);
892
+ setInputText(selectedTimeString);
893
+ var timeFieldIsFocused = document.activeElement === (timeFieldRef == null ? void 0 : timeFieldRef.current);
894
+ if (selectedTimeString === '' && !timeFieldIsFocused) addPlaceholderToInput();
895
+ };
896
+ var getStringFromTimeValue = function getStringFromTimeValue(timeValue) {
897
+ if (timeValue === null) return '';
898
+ var timeObject = 'day' in timeValue ? date.toTime(timeValue) : timeValue;
899
+ if (showSeconds) return timeObject.toString().slice(0, 8);
900
+ return timeObject.toString().slice(0, 5);
901
+ };
902
+ var addPlaceholderToInput = function addPlaceholderToInput() {
903
+ if (showSeconds) setInputText('–– : –– : ––');else setInputText('–– : ––');
904
+ };
905
+ var handleChangeTime = function handleChangeTime() {
906
+ var newTime = getValueForOnChangeFromInput();
907
+ if (newTime === inputResult.INVALID) {
908
+ return updateInputWithSelectedTime();
909
+ }
910
+ if ((newTime == null ? void 0 : newTime.toString()) !== (selectedTime == null ? void 0 : selectedTime.toString())) onChange == null ? void 0 : onChange(newTime);
911
+ };
912
+ var getValueForOnChangeFromInput = function getValueForOnChangeFromInput() {
913
+ var formatedTimeString = formatTimeString(inputText);
914
+ var newTimeObject = formatedTimeStringToTimeObject(formatedTimeString);
915
+ if (newTimeObject === inputResult.INVALID) {
916
+ return inputResult.INVALID;
917
+ }
918
+ if (newTimeObject === inputResult.RESET_TIME) {
919
+ return null;
920
+ }
921
+ var updatedSelectedTime = getSelectedTimeWithTimeFromObject(newTimeObject);
922
+ return updatedSelectedTime;
923
+ };
924
+ var formatTimeString = function formatTimeString(timeString) {
925
+ if (timeString.length === 0) return inputResult.RESET_TIME;
926
+ if (timeString.length < 3 || timeString.length > 8) return inputResult.INVALID;
927
+ var numberOfColons = (timeString.match(new RegExp(':', 'g')) || []).length;
928
+ var stringLength = timeString.length;
929
+ // targets 'd:dd:dd' and 'dd:dd:dd'
930
+ if (numberOfColons === 2 && stringLength >= 7) {
931
+ return timeString.padStart(8, '0');
932
+ }
933
+ // targets 'd:dd' and 'dd:dd'
934
+ if (numberOfColons === 1) {
935
+ return timeString.padStart(5, '0');
936
+ }
937
+ if (stringLength > 6) return inputResult.INVALID;
938
+ var stringLengthIsEven = stringLength % 2 == 0;
939
+ var hourString = stringLengthIsEven ? timeString.slice(0, 2) : timeString.slice(0, 1);
940
+ var minuteString = stringLengthIsEven ? timeString.slice(2, 4) : timeString.slice(1, 3);
941
+ var secondString = function () {
942
+ var stringSlice = stringLengthIsEven ? timeString.slice(4, 6) : timeString.slice(3, 5);
943
+ if (stringSlice === '') return '00';
944
+ return stringSlice;
945
+ }();
946
+ var timeStringWithColon = hourString.padStart(2, '0') + ':' + minuteString + (showSeconds ? ':' + secondString : '');
947
+ return timeStringWithColon;
948
+ };
949
+ var formatedTimeStringToTimeObject = function formatedTimeStringToTimeObject(formatedTimeString) {
950
+ if (formatedTimeString === inputResult.INVALID) return inputResult.INVALID;
951
+ if (formatedTimeString === inputResult.RESET_TIME) return inputResult.RESET_TIME;
952
+ var isNumberTest = /^\d+$/;
953
+ var hourString = formatedTimeString.slice(0, 2);
954
+ var minuteString = formatedTimeString.slice(3, 5);
955
+ var secondString = formatedTimeString.slice(6, 8);
956
+ if (hourString.match(isNumberTest) && minuteString.match(isNumberTest) && (secondString === '' || secondString.match(isNumberTest))) {
957
+ try {
958
+ var timeObject = date.parseTime(formatedTimeString);
959
+ return timeObject;
960
+ } catch (e) {
961
+ return inputResult.INVALID;
962
+ }
963
+ }
964
+ return inputResult.INVALID;
965
+ };
966
+ var getSelectedTimeWithTimeFromObject = function getSelectedTimeWithTimeFromObject(newTime) {
967
+ var selectedTimeWithUpdateTime = (lastValidSelectedTime != null ? lastValidSelectedTime : new date.Time()).set({
968
+ hour: newTime.hour,
969
+ minute: newTime.minute,
970
+ second: newTime.second
971
+ });
972
+ return selectedTimeWithUpdateTime;
973
+ };
974
+ var usedFieldProps = _objectWithoutPropertiesLoose(fieldProps, _excluded2);
975
+ return React__default["default"].createElement(i18n.I18nProvider, {
976
+ locale: locale
977
+ }, React__default["default"].createElement(form.TextField, _extends({
978
+ append: showClockIcon ? React__default["default"].createElement(icons.ClockIcon, {
979
+ inline: true,
980
+ onClick: function onClick() {
981
+ var _timeFieldRef$current;
982
+ return timeFieldRef == null ? void 0 : (_timeFieldRef$current = timeFieldRef.current) == null ? void 0 : _timeFieldRef$current.focus();
983
+ }
984
+ }) : undefined,
985
+ className: classNames__default["default"]('eds-simple-timepicker', {
986
+ 'eds-simple-timepicker--show-seconds': showSeconds
987
+ }),
988
+ disabled: disabled,
989
+ disableLabelAnimation: true,
990
+ feedback: feedback,
991
+ label: label,
992
+ labelProps: labelProps,
993
+ labelTooltip: labelTooltip,
994
+ onBlur: function onBlur() {
995
+ handleChangeTime();
996
+ if (selectedTime === null) {
997
+ addPlaceholderToInput();
998
+ }
999
+ },
1000
+ onChange: function onChange(e) {
1001
+ return setInputText(e.target.value);
1002
+ },
1003
+ onFocus: function onFocus() {
1004
+ if (selectedTime === null) {
1005
+ setInputText('');
1006
+ }
1007
+ },
1008
+ onKeyDown: function onKeyDown(_ref2) {
1009
+ var key = _ref2.key;
1010
+ if (key === 'Enter') handleChangeTime();
1011
+ },
1012
+ placeholder: showSeconds ? '–– : –– : ––' : '–– : ––',
1013
+ readOnly: readOnly,
1014
+ ref: utils.mergeRefs(timeFieldRef, inputRef),
1015
+ style: style,
1016
+ value: inputText,
1017
+ variant: variant
1018
+ }, usedFieldProps)));
1019
+ };
1020
+
841
1021
  utils.warnAboutMissingStyles('datepicker', 'form', 'icons');
842
1022
 
843
1023
  exports.Calendar = Calendar;
@@ -845,6 +1025,7 @@ exports.DateField = DateField;
845
1025
  exports.DatePicker = DatePicker;
846
1026
  exports.NativeDatePicker = NativeDatePicker;
847
1027
  exports.NativeTimePicker = NativeTimePicker;
1028
+ exports.SimpleTimePicker = SimpleTimePicker;
848
1029
  exports.TimePicker = TimePicker;
849
1030
  exports.ariaLabelIfNorwegian = ariaLabelIfNorwegian;
850
1031
  exports.createCalendar = createCalendar;