@elliemae/ds-controlled-form 2.0.0-alpha.1 → 2.0.0-alpha.13
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/cjs/controlled-checkbox/ControlledCheckbox.js +13 -6
- package/cjs/controlled-checkbox/config/useValidateProps.js +5 -7
- package/cjs/controlled-checkbox/propTypes.js +5 -4
- package/cjs/controlled-checkbox/styles.js +88 -52
- package/cjs/controlled-checkbox/utils/setMultipleRefs.js +4 -0
- package/cjs/controlled-checkbox/utils/styleHelpers.js +15 -27
- package/cjs/controlled-date-range-picker/ControlledDateRangePicker.js +2 -2
- package/cjs/controlled-date-range-picker/ControlledDateRangePickerCTX.js +3 -2
- package/cjs/controlled-date-range-picker/ControlledDateRangePickerDatatestid.js +1 -18
- package/cjs/controlled-date-range-picker/config/useControlledDateRangePicker.js +19 -3
- package/cjs/controlled-date-range-picker/config/useRangePickerLogic.js +22 -13
- package/cjs/controlled-date-range-picker/parts/ControlledDateRangeCalendar.js +9 -1
- package/cjs/controlled-date-range-picker/parts/ControlledDateRangeContent.js +30 -5
- package/cjs/controlled-date-range-picker/parts/ControlledDateRangeFromDate.js +13 -3
- package/cjs/controlled-date-range-picker/parts/ControlledDateRangeToDate.js +9 -1
- package/cjs/controlled-date-time-picker/ControlledDateTimePicker.js +2 -2
- package/cjs/controlled-date-time-picker/ControlledDateTimePickerCTX.js +23 -2
- package/cjs/controlled-date-time-picker/ControlledDateTimePickerDatatestid.js +31 -4
- package/cjs/controlled-date-time-picker/config/useControlledDateTimePicker.js +254 -36
- package/cjs/controlled-date-time-picker/config/useGetDestructuredValues.js +149 -0
- package/cjs/controlled-date-time-picker/config/useValidateProps.js +10 -41
- package/cjs/controlled-date-time-picker/index.js +1 -1
- package/cjs/controlled-date-time-picker/parts/ClearButton/ClearButton.js +11 -9
- package/cjs/controlled-date-time-picker/parts/ClearButton/useClearButton.js +48 -3
- package/cjs/controlled-date-time-picker/parts/ControlledDateTimePickerContent.js +37 -16
- package/cjs/controlled-date-time-picker/parts/DateInputs/DDInput.js +16 -11
- package/cjs/controlled-date-time-picker/parts/DateInputs/DateInputs.js +21 -11
- package/cjs/controlled-date-time-picker/parts/DateInputs/MMInput.js +18 -11
- package/cjs/controlled-date-time-picker/parts/DateInputs/YYYYInput.js +16 -11
- package/cjs/controlled-date-time-picker/parts/DateInputs/useDateInputs.js +117 -66
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/Calendar.js +9 -8
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarBody.js +10 -4
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarContent.js +15 -9
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarContext.js +7 -1
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarDaysList.js +33 -9
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarFooter.js +3 -1
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarHead.js +43 -44
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarIconTrigger.js +13 -12
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarMonthDays.js +7 -3
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarWeekDays.js +34 -2
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarWrapper.js +10 -3
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/Day.js +59 -28
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/Styleds.js +339 -115
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/useConfigCalendarCTX.js +42 -42
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/useCurrentDisplayedMonthYearLogic.js +1 -1
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/useFocusLogic.js +48 -23
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.js +135 -59
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/usePopperTriggerLogic.js +26 -14
- package/cjs/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheel.js +4 -4
- package/cjs/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContent.js +5 -3
- package/cjs/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContext.js +4 -2
- package/cjs/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelFooter.js +3 -1
- package/cjs/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelIconTrigger.js +13 -12
- package/cjs/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelWrapper.js +10 -3
- package/cjs/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/Styleds.js +61 -24
- package/cjs/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.js +23 -8
- package/cjs/controlled-date-time-picker/parts/Pickers/PickersIcons.js +3 -3
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/HoursList.js +38 -26
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/MeridiemList.js +34 -31
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/MinutesList.js +36 -26
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/SecondsList.js +26 -23
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/Styleds.js +211 -150
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheel.js +9 -8
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContent.js +9 -6
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContext.js +5 -2
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelFooter.js +3 -1
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelIconTrigger.js +12 -12
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelWrapper.js +10 -3
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/useConfigTimePickerCTX.js +10 -58
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/useCurrentDisplayedWheelsLogic.js +11 -8
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.js +184 -147
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.js +23 -12
- package/cjs/controlled-date-time-picker/parts/Styleds.js +80 -42
- package/cjs/controlled-date-time-picker/parts/TimeInputs/HHInput.js +18 -11
- package/cjs/controlled-date-time-picker/parts/TimeInputs/MeridiemInput.js +17 -11
- package/cjs/controlled-date-time-picker/parts/TimeInputs/MinutesInput.js +16 -11
- package/cjs/controlled-date-time-picker/parts/TimeInputs/TimeInputs.js +20 -11
- package/cjs/controlled-date-time-picker/parts/TimeInputs/useTimeInputs.js +109 -205
- package/cjs/controlled-date-time-picker/propTypes.js +3 -1
- package/cjs/controlled-date-time-picker/utils/constants.js +59 -0
- package/cjs/controlled-date-time-picker/utils/dateHelpers.js +41 -23
- package/cjs/controlled-date-time-picker/utils/dateTimeHelpers.js +8 -3
- package/cjs/controlled-date-time-picker/utils/hooks/useGetMonthYearFromDateStringOrEmptyStartingMonth.js +1 -1
- package/cjs/controlled-date-time-picker/utils/stringHelpers.js +43 -17
- package/cjs/controlled-date-time-picker/utils/timeHelpers.js +2 -1
- package/cjs/controlled-toggle/ControlledToggle.js +52 -36
- package/cjs/controlled-toggle/propTypes.js +3 -2
- package/cjs/controlled-toggle/styles.js +146 -79
- package/cjs/controlled-toggle/utils/addTooltipOnReadOnly.js +2 -2
- package/cjs/controlled-toggle/utils/styleHelpers.js +15 -9
- package/cjs/index.js +1 -1
- package/esm/controlled-checkbox/ControlledCheckbox.js +12 -5
- package/esm/controlled-checkbox/config/useValidateProps.js +6 -8
- package/esm/controlled-checkbox/propTypes.js +5 -4
- package/esm/controlled-checkbox/styles.js +84 -48
- package/esm/controlled-checkbox/utils/setMultipleRefs.js +4 -0
- package/esm/controlled-checkbox/utils/styleHelpers.js +15 -27
- package/esm/controlled-date-range-picker/ControlledDateRangePickerCTX.js +2 -1
- package/esm/controlled-date-range-picker/ControlledDateRangePickerDatatestid.js +1 -18
- package/esm/controlled-date-range-picker/config/useControlledDateRangePicker.js +15 -3
- package/esm/controlled-date-range-picker/config/useRangePickerLogic.js +21 -12
- package/esm/controlled-date-range-picker/parts/ControlledDateRangeCalendar.js +8 -0
- package/esm/controlled-date-range-picker/parts/ControlledDateRangeContent.js +28 -4
- package/esm/controlled-date-range-picker/parts/ControlledDateRangeFromDate.js +12 -2
- package/esm/controlled-date-range-picker/parts/ControlledDateRangeToDate.js +8 -0
- package/esm/controlled-date-time-picker/ControlledDateTimePickerCTX.js +22 -1
- package/esm/controlled-date-time-picker/ControlledDateTimePickerDatatestid.js +31 -4
- package/esm/controlled-date-time-picker/config/useControlledDateTimePicker.js +254 -36
- package/esm/controlled-date-time-picker/config/useGetDestructuredValues.js +143 -0
- package/esm/controlled-date-time-picker/config/useValidateProps.js +10 -41
- package/esm/controlled-date-time-picker/index.js +1 -1
- package/esm/controlled-date-time-picker/parts/ClearButton/ClearButton.js +10 -7
- package/esm/controlled-date-time-picker/parts/ClearButton/useClearButton.js +48 -3
- package/esm/controlled-date-time-picker/parts/ControlledDateTimePickerContent.js +34 -14
- package/esm/controlled-date-time-picker/parts/DateInputs/DDInput.js +16 -11
- package/esm/controlled-date-time-picker/parts/DateInputs/DateInputs.js +15 -5
- package/esm/controlled-date-time-picker/parts/DateInputs/MMInput.js +18 -11
- package/esm/controlled-date-time-picker/parts/DateInputs/YYYYInput.js +16 -11
- package/esm/controlled-date-time-picker/parts/DateInputs/useDateInputs.js +119 -67
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/Calendar.js +4 -3
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarBody.js +10 -4
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarContent.js +16 -10
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarContext.js +6 -0
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarDaysList.js +35 -11
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarFooter.js +3 -1
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarHead.js +42 -39
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarIconTrigger.js +13 -10
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarMonthDays.js +6 -2
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarWeekDays.js +35 -3
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarWrapper.js +7 -0
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/Day.js +58 -28
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/Styleds.js +335 -113
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/useConfigCalendarCTX.js +43 -43
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/useCurrentDisplayedMonthYearLogic.js +1 -1
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/useFocusLogic.js +49 -24
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.js +136 -60
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/usePopperTriggerLogic.js +27 -15
- package/esm/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContent.js +3 -1
- package/esm/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContext.js +3 -1
- package/esm/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelFooter.js +3 -1
- package/esm/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelIconTrigger.js +13 -10
- package/esm/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelWrapper.js +7 -0
- package/esm/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/Styleds.js +60 -24
- package/esm/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.js +23 -8
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/HoursList.js +33 -19
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/MeridiemList.js +30 -25
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/MinutesList.js +30 -18
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/SecondsList.js +20 -15
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/Styleds.js +210 -150
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheel.js +4 -3
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContent.js +8 -5
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContext.js +4 -1
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelFooter.js +3 -1
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelIconTrigger.js +12 -10
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelWrapper.js +7 -0
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/useConfigTimePickerCTX.js +10 -58
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/useCurrentDisplayedWheelsLogic.js +11 -8
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.js +185 -148
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.js +24 -13
- package/esm/controlled-date-time-picker/parts/Styleds.js +70 -31
- package/esm/controlled-date-time-picker/parts/TimeInputs/HHInput.js +18 -11
- package/esm/controlled-date-time-picker/parts/TimeInputs/MeridiemInput.js +17 -11
- package/esm/controlled-date-time-picker/parts/TimeInputs/MinutesInput.js +16 -11
- package/esm/controlled-date-time-picker/parts/TimeInputs/TimeInputs.js +15 -6
- package/esm/controlled-date-time-picker/parts/TimeInputs/useTimeInputs.js +110 -202
- package/esm/controlled-date-time-picker/propTypes.js +3 -1
- package/esm/controlled-date-time-picker/utils/constants.js +46 -0
- package/esm/controlled-date-time-picker/utils/dateHelpers.js +40 -23
- package/esm/controlled-date-time-picker/utils/dateTimeHelpers.js +7 -2
- package/esm/controlled-date-time-picker/utils/hooks/useGetMonthYearFromDateStringOrEmptyStartingMonth.js +1 -1
- package/esm/controlled-date-time-picker/utils/stringHelpers.js +43 -18
- package/esm/controlled-date-time-picker/utils/timeHelpers.js +2 -1
- package/esm/controlled-toggle/ControlledToggle.js +47 -31
- package/esm/controlled-toggle/propTypes.js +3 -2
- package/esm/controlled-toggle/styles.js +139 -72
- package/esm/controlled-toggle/utils/addTooltipOnReadOnly.js +1 -1
- package/esm/controlled-toggle/utils/styleHelpers.js +15 -9
- package/esm/index.js +1 -1
- package/package.json +29 -12
- package/types/controlled-checkbox/ControlledCheckbox.d.ts +60 -9
- package/types/controlled-checkbox/config/useValidateProps.d.ts +1 -1
- package/types/controlled-checkbox/index.d.d.ts +1 -0
- package/types/controlled-checkbox/propTypes.d.ts +55 -8
- package/types/controlled-checkbox/styles.d.ts +4 -4
- package/types/controlled-checkbox/tests/DSControlledCheckbox.keyboard.test.d.ts +1 -0
- package/types/controlled-checkbox/tests/DSControlledCheckbox.test.d.ts +1 -0
- package/types/controlled-checkbox/tests/DSControllledCheckbox.events.test.d.ts +1 -0
- package/types/controlled-date-range-picker/ControlledDateRangePicker.d.ts +12 -2
- package/types/controlled-date-range-picker/ControlledDateRangePickerDatatestid.d.ts +1 -18
- package/types/controlled-date-range-picker/propTypes.d.ts +7 -1
- package/types/controlled-date-range-picker/tests/date-range-picker.auto-advance.test.d.ts +1 -0
- package/types/controlled-date-range-picker/tests/date-range-picker.classes.test.d.ts +1 -0
- package/types/controlled-date-range-picker/tests/date-range-picker.clear-button.test.d.ts +1 -0
- package/types/controlled-date-range-picker/tests/date-range-picker.keyboard-focus.test.d.ts +1 -0
- package/types/controlled-date-range-picker/tests/date-range-picker.manual-delete-values.test.d.ts +1 -0
- package/types/controlled-date-range-picker/tests/date-range-picker.types-dom.test.d.ts +1 -0
- package/types/controlled-date-time-picker/ControlledDateTimePicker.d.ts +84 -21
- package/types/controlled-date-time-picker/ControlledDateTimePickerDatatestid.d.ts +28 -3
- package/types/controlled-date-time-picker/config/useGetDestructuredValues.d.ts +4 -0
- package/types/controlled-date-time-picker/index.d.ts +1 -1
- package/types/controlled-date-time-picker/parts/ClearButton/useClearButton.d.ts +2 -1
- package/types/controlled-date-time-picker/parts/DateInputs/DDInput.d.ts +3 -1
- package/types/controlled-date-time-picker/parts/DateInputs/MMInput.d.ts +4 -1
- package/types/controlled-date-time-picker/parts/DateInputs/YYYYInput.d.ts +3 -1
- package/types/controlled-date-time-picker/parts/DateInputs/useDateInputs.d.ts +0 -9
- package/types/controlled-date-time-picker/parts/Pickers/Calendar/CalendarBody.d.ts +5 -1
- package/types/controlled-date-time-picker/parts/Pickers/Calendar/CalendarContext.d.ts +11 -5
- package/types/controlled-date-time-picker/parts/Pickers/Calendar/CalendarDaysList.d.ts +5 -3
- package/types/controlled-date-time-picker/parts/Pickers/Calendar/Day.d.ts +5 -3
- package/types/controlled-date-time-picker/parts/Pickers/Calendar/Styleds.d.ts +17 -123
- package/types/controlled-date-time-picker/parts/Pickers/Calendar/useFocusLogic.d.ts +3 -5
- package/types/controlled-date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.d.ts +5 -18
- package/types/controlled-date-time-picker/parts/Pickers/Calendar/usePopperTriggerLogic.d.ts +4 -7
- package/types/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContext.d.ts +2 -0
- package/types/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/Styleds.d.ts +7 -3
- package/types/controlled-date-time-picker/parts/Pickers/TimeWheel/Styleds.d.ts +19 -9
- package/types/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContext.d.ts +3 -0
- package/types/controlled-date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.d.ts +3 -11
- package/types/controlled-date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.d.ts +1 -8
- package/types/controlled-date-time-picker/parts/Styleds.d.ts +13 -10
- package/types/controlled-date-time-picker/parts/TimeInputs/HHInput.d.ts +4 -1
- package/types/controlled-date-time-picker/parts/TimeInputs/MeridiemInput.d.ts +3 -1
- package/types/controlled-date-time-picker/parts/TimeInputs/MinutesInput.d.ts +3 -1
- package/types/controlled-date-time-picker/propTypes.d.ts +79 -20
- package/types/controlled-date-time-picker/tests/date-time-picker.keyboard-focus.test.d.ts +1 -0
- package/types/controlled-date-time-picker/tests/date-time-picker.keyboard.data-entry-typing.test.d.ts +1 -0
- package/types/controlled-date-time-picker/tests/date-time-picker.keyboard.fill-with-now.test.d.ts +1 -0
- package/types/controlled-date-time-picker/tests/date-time-picker.keyboard.regressive-backspace.test.d.ts +1 -0
- package/types/controlled-date-time-picker/tests/date-time-picker.keyboard.shortcut-clear.test.d.ts +1 -0
- package/types/controlled-date-time-picker/utils/constants.d.ts +44 -0
- package/types/controlled-date-time-picker/utils/dateHelpers.d.ts +3 -2
- package/types/controlled-date-time-picker/utils/dateTimeHelpers.d.ts +1 -1
- package/types/controlled-date-time-picker/utils/stringHelpers.d.ts +1 -0
- package/types/controlled-toggle/ControlledToggle.d.ts +79 -13
- package/types/controlled-toggle/propTypes.d.ts +73 -11
- package/types/controlled-toggle/styles.d.ts +7 -7
- package/cjs/controlled-date-time-picker/parts/TimeInputs/SSInput.js +0 -53
- package/cjs/package.json +0 -7
- package/esm/controlled-date-time-picker/parts/TimeInputs/SSInput.js +0 -45
- package/esm/package.json +0 -7
- package/types/controlled-date-time-picker/parts/TimeInputs/SSInput.d.ts +0 -13
|
@@ -2,12 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
+
require('core-js/modules/esnext.async-iterator.map.js');
|
|
6
|
+
require('core-js/modules/esnext.iterator.map.js');
|
|
7
|
+
require('core-js/modules/web.dom-collections.iterator.js');
|
|
5
8
|
var React = require('react');
|
|
9
|
+
var constants = require('./constants.js');
|
|
6
10
|
var stringHelpers = require('./stringHelpers.js');
|
|
7
11
|
var numberHelpers = require('./numberHelpers.js');
|
|
8
12
|
|
|
9
|
-
/* eslint-disable max-lines */
|
|
10
|
-
const monthNames = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
|
|
11
13
|
const getLastDayOfMonth = (month, year) => new Date(year, month + 1, 0);
|
|
12
14
|
const isValidDayForTheMonth = (month, year, day) => {
|
|
13
15
|
var _Date, _Date$getMonth;
|
|
@@ -26,9 +28,9 @@ const isValidDayForTheMonthDateString = dateString => {
|
|
|
26
28
|
const monthDateMonth = monthInt - 1;
|
|
27
29
|
return ((_getDayFromDateString = getDayFromDateString(dateString)) === null || _getDayFromDateString === void 0 ? void 0 : (_getDayFromDateString2 = _getDayFromDateString.getMonth) === null || _getDayFromDateString2 === void 0 ? void 0 : _getDayFromDateString2.call(_getDayFromDateString)) === monthDateMonth;
|
|
28
30
|
};
|
|
29
|
-
const getValidationDateStringMetaInfo = (dateString
|
|
30
|
-
getIsOutOfRangeDay = day => false
|
|
31
|
-
getIsDisabledDay = day => false
|
|
31
|
+
const getValidationDateStringMetaInfo = function (dateString) {
|
|
32
|
+
let getIsOutOfRangeDay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : day => false;
|
|
33
|
+
let getIsDisabledDay = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : day => false;
|
|
32
34
|
const metaInfo = {};
|
|
33
35
|
|
|
34
36
|
if (!stringHelpers.isIncompleteString(dateString)) {
|
|
@@ -63,15 +65,17 @@ const dateAddMonths = (date, value) => {
|
|
|
63
65
|
};
|
|
64
66
|
const dateAddYear = (date, value) => dateAddMonths(date, value * 12);
|
|
65
67
|
// sumFromDateValues supports negative values to "subtract"
|
|
66
|
-
const sumFromDateValues = ({
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
68
|
+
const sumFromDateValues = (_ref, _ref2) => {
|
|
69
|
+
let {
|
|
70
|
+
month,
|
|
71
|
+
year,
|
|
72
|
+
day = 1
|
|
73
|
+
} = _ref;
|
|
74
|
+
let {
|
|
75
|
+
monthsToSum = 0,
|
|
76
|
+
yearsToSum = 0,
|
|
77
|
+
daysToSum = 0
|
|
78
|
+
} = _ref2;
|
|
75
79
|
let newDate = new Date(year, month, day);
|
|
76
80
|
if (yearsToSum) newDate = dateAddYear(newDate, yearsToSum);
|
|
77
81
|
if (monthsToSum) newDate = dateAddMonths(newDate, monthsToSum);
|
|
@@ -91,22 +95,26 @@ const sumValuesToDate = (day, sumValues) => {
|
|
|
91
95
|
} = sumFromDateValues(dateAsVals, sumValues);
|
|
92
96
|
return new Date(year, month, newD);
|
|
93
97
|
};
|
|
94
|
-
const subtractYears = (date
|
|
98
|
+
const subtractYears = function (date) {
|
|
99
|
+
let howManyMore = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
|
|
95
100
|
const newDate = new Date(date.getTime());
|
|
96
101
|
newDate.setFullYear(date.getFullYear() - howManyMore);
|
|
97
102
|
return newDate;
|
|
98
103
|
};
|
|
99
|
-
const subtractMonths = (date
|
|
104
|
+
const subtractMonths = function (date) {
|
|
105
|
+
let howManyMore = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
|
|
100
106
|
const newDate = new Date(date.getTime());
|
|
101
107
|
newDate.setMonth(date.getMonth() - howManyMore);
|
|
102
108
|
return newDate;
|
|
103
109
|
};
|
|
104
|
-
const sumMonths = (date
|
|
110
|
+
const sumMonths = function (date) {
|
|
111
|
+
let howManyMore = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
|
|
105
112
|
const newDate = new Date(date.getTime());
|
|
106
113
|
newDate.setMonth(date.getMonth() + howManyMore);
|
|
107
114
|
return newDate;
|
|
108
115
|
};
|
|
109
|
-
const sumYears = (date
|
|
116
|
+
const sumYears = function (date) {
|
|
117
|
+
let howManyMore = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
|
|
110
118
|
const newDate = new Date(date.getTime());
|
|
111
119
|
newDate.setFullYear(date.getFullYear() + howManyMore);
|
|
112
120
|
return newDate;
|
|
@@ -188,11 +196,20 @@ const getDateValuesFromDate = day => {
|
|
|
188
196
|
};
|
|
189
197
|
};
|
|
190
198
|
const getDateStringFromDay = day => {
|
|
191
|
-
const monthFromDay = stringHelpers.prependStringWithPlaceHolders(
|
|
199
|
+
const monthFromDay = stringHelpers.prependStringWithPlaceHolders("".concat(day.getMonth() + 1), 2); // months from 1-12
|
|
192
200
|
|
|
193
|
-
const dayFromDay = stringHelpers.prependStringWithPlaceHolders(
|
|
194
|
-
const yearFromDay = stringHelpers.prependStringWithPlaceHolders(
|
|
195
|
-
return
|
|
201
|
+
const dayFromDay = stringHelpers.prependStringWithPlaceHolders("".concat(day.getDate()), 2);
|
|
202
|
+
const yearFromDay = stringHelpers.prependStringWithPlaceHolders("".concat(day.getFullYear()), 4);
|
|
203
|
+
return "".concat(monthFromDay, "/").concat(dayFromDay, "/").concat(yearFromDay);
|
|
204
|
+
};
|
|
205
|
+
const getTimeStringFromDay = day => {
|
|
206
|
+
const hoursNum = day.getHours();
|
|
207
|
+
const meridiem = hoursNum > 12 ? 'PM' : 'AM';
|
|
208
|
+
const twelveHourFormat = hoursNum > 12 ? hoursNum - 12 : hoursNum;
|
|
209
|
+
const minutesNum = day.getMinutes();
|
|
210
|
+
const hoursFromDay = stringHelpers.prependStringWithPlaceHolders("".concat(twelveHourFormat), 2);
|
|
211
|
+
const minutesFromDay = stringHelpers.prependStringWithPlaceHolders("".concat(minutesNum), 2);
|
|
212
|
+
return "".concat(hoursFromDay, ":").concat(minutesFromDay, " ").concat(meridiem);
|
|
196
213
|
};
|
|
197
214
|
const getDayFromDateString = dateString => {
|
|
198
215
|
const {
|
|
@@ -206,7 +223,7 @@ const getDayFromDateString = dateString => {
|
|
|
206
223
|
if (monthNum !== -1 && dayNum !== -1 && yearNum !== -1 && isValidDayForTheMonth(monthNum - 1, yearNum, dayNum)) return new Date(yearNum, monthNum - 1, dayNum);
|
|
207
224
|
return null;
|
|
208
225
|
};
|
|
209
|
-
const getMonthNameByMonthNumber = monthNumber => monthNames[monthNumber];
|
|
226
|
+
const getMonthNameByMonthNumber = monthNumber => constants.monthNames[monthNumber];
|
|
210
227
|
const isSameDateMoment = (dateA, dateB) => {
|
|
211
228
|
var _dateA$getTime, _dateB$getTime;
|
|
212
229
|
|
|
@@ -241,6 +258,7 @@ exports.getHowManyDaysInMonth = getHowManyDaysInMonth;
|
|
|
241
258
|
exports.getLastDayOfMonth = getLastDayOfMonth;
|
|
242
259
|
exports.getLastXDaysFromPreviousMonth = getLastXDaysFromPreviousMonth;
|
|
243
260
|
exports.getMonthNameByMonthNumber = getMonthNameByMonthNumber;
|
|
261
|
+
exports.getTimeStringFromDay = getTimeStringFromDay;
|
|
244
262
|
exports.getValidationDateStringMetaInfo = getValidationDateStringMetaInfo;
|
|
245
263
|
exports.isLeapYear = isLeapYear;
|
|
246
264
|
exports.isSameDateMoment = isSameDateMoment;
|
|
@@ -2,6 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
+
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
6
|
+
require('core-js/modules/esnext.iterator.constructor.js');
|
|
7
|
+
require('core-js/modules/esnext.iterator.filter.js');
|
|
8
|
+
require('core-js/modules/esnext.async-iterator.for-each.js');
|
|
9
|
+
require('core-js/modules/esnext.iterator.for-each.js');
|
|
5
10
|
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
6
11
|
var dateHelpers = require('./dateHelpers.js');
|
|
7
12
|
var timeHelpers = require('./timeHelpers.js');
|
|
@@ -12,7 +17,7 @@ var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_definePropert
|
|
|
12
17
|
|
|
13
18
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
14
19
|
|
|
15
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty__default[
|
|
16
|
-
const
|
|
20
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
21
|
+
const getValidationDateTimeStringMetaInfo = (dateString, timeString, validators) => _objectSpread(_objectSpread({}, dateHelpers.getValidationDateStringMetaInfo(dateString, validators.getIsOutOfRangeDay, validators.getIsDisabledDay)), timeHelpers.getValidationTimeStringMetaInfo(timeString, validators.getIsDisabledTime));
|
|
17
22
|
|
|
18
|
-
exports.
|
|
23
|
+
exports.getValidationDateTimeStringMetaInfo = getValidationDateTimeStringMetaInfo;
|
|
@@ -14,7 +14,7 @@ const useGetMonthYearFromDateStringOrEmptyStartingMonth = () => {
|
|
|
14
14
|
}
|
|
15
15
|
} = React.useContext(ControlledDateTimePickerCTX.ControlledDateTimePickerContext);
|
|
16
16
|
return React.useMemo(() => {
|
|
17
|
-
const emptyPickerStartingMonthDefault =
|
|
17
|
+
const emptyPickerStartingMonthDefault = "".concat(new Date().getMonth() + 1, "/__/").concat(new Date().getFullYear());
|
|
18
18
|
const {
|
|
19
19
|
month: stringMonthVal,
|
|
20
20
|
year: stringYearVal
|
|
@@ -2,28 +2,37 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
+
require('core-js/modules/esnext.async-iterator.map.js');
|
|
6
|
+
require('core-js/modules/esnext.iterator.map.js');
|
|
7
|
+
require('core-js/modules/web.dom-collections.iterator.js');
|
|
5
8
|
require('core-js/modules/es.string.replace.js');
|
|
9
|
+
var constants = require('./constants.js');
|
|
10
|
+
var numberHelpers = require('./numberHelpers.js');
|
|
6
11
|
|
|
7
12
|
/* eslint-disable max-lines */
|
|
8
|
-
|
|
13
|
+
|
|
14
|
+
const prependStringWithPlaceHolders = function (val, finalLength) {
|
|
15
|
+
let placeholder = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '0';
|
|
9
16
|
if (val.length === finalLength) return val;
|
|
10
17
|
const stringAsAnArray = val.split('').reverse();
|
|
11
18
|
return new Array(finalLength).fill(placeholder).map((_c, i) => stringAsAnArray[i] ? stringAsAnArray[i] : placeholder).reverse().join('');
|
|
12
19
|
};
|
|
13
|
-
const fillStringWithPlaceHolders = (val, finalLength
|
|
20
|
+
const fillStringWithPlaceHolders = function (val, finalLength) {
|
|
21
|
+
let placeholder = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '_';
|
|
14
22
|
if (val.length === finalLength) return val;
|
|
15
23
|
const stringAsAnArray = val.split('');
|
|
16
24
|
return new Array(finalLength).fill(placeholder).map((_c, i) => stringAsAnArray[i] ? stringAsAnArray[i] : placeholder).join('');
|
|
17
25
|
};
|
|
18
|
-
const getFormattedDateString =
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
26
|
+
const getFormattedDateString = _ref => {
|
|
27
|
+
let {
|
|
28
|
+
month,
|
|
29
|
+
day,
|
|
30
|
+
year
|
|
31
|
+
} = _ref;
|
|
23
32
|
const finalMonth = fillStringWithPlaceHolders(month, 2);
|
|
24
33
|
const finalDay = fillStringWithPlaceHolders(day, 2);
|
|
25
34
|
const finalYear = fillStringWithPlaceHolders(year, 4);
|
|
26
|
-
return
|
|
35
|
+
return "".concat(finalMonth, "/").concat(finalDay, "/").concat(finalYear);
|
|
27
36
|
};
|
|
28
37
|
const dateTimeToDate = dateTime => {
|
|
29
38
|
var _dateTime$split, _dateTime$split$call;
|
|
@@ -63,18 +72,19 @@ const isValidDateString = testString => {
|
|
|
63
72
|
if (Number.parseInt(month, 10) > 12 || Number.parseInt(day, 10) > 31 || Number.parseInt(year, 10) > 9999) return false;
|
|
64
73
|
return true;
|
|
65
74
|
};
|
|
66
|
-
const getFormattedTimeString =
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
75
|
+
const getFormattedTimeString = _ref2 => {
|
|
76
|
+
let {
|
|
77
|
+
hours,
|
|
78
|
+
minutes,
|
|
79
|
+
// seconds,
|
|
80
|
+
meridiem
|
|
81
|
+
} = _ref2;
|
|
72
82
|
const finalHour = fillStringWithPlaceHolders(hours, 2);
|
|
73
83
|
const finalMinutes = fillStringWithPlaceHolders(minutes, 2); // const finalSeconds = fillStringWithPlaceHolders(seconds, 2); // <-- seconds format
|
|
74
84
|
|
|
75
85
|
const finalMeridiem = fillStringWithPlaceHolders(meridiem, 2); // return `${finalHour}:${finalMinutes}:${finalSeconds} ${finalMeridiem}`;// <-- seconds format
|
|
76
86
|
|
|
77
|
-
return
|
|
87
|
+
return "".concat(finalHour, ":").concat(finalMinutes, " ").concat(finalMeridiem);
|
|
78
88
|
};
|
|
79
89
|
const dateTimeToTime = dateTime => {
|
|
80
90
|
var _dateTime$split2;
|
|
@@ -82,7 +92,7 @@ const dateTimeToTime = dateTime => {
|
|
|
82
92
|
const [// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
83
93
|
_date, // timeNumbers = '__:__:__', // <-- seconds format
|
|
84
94
|
timeNumbers = '__:__', timeMeridiem = '__'] = dateTime === null || dateTime === void 0 ? void 0 : (_dateTime$split2 = dateTime.split) === null || _dateTime$split2 === void 0 ? void 0 : _dateTime$split2.call(dateTime, ' ');
|
|
85
|
-
return
|
|
95
|
+
return "".concat(timeNumbers, " ").concat(timeMeridiem);
|
|
86
96
|
};
|
|
87
97
|
const deconstructTimeValues = timeString => {
|
|
88
98
|
var _timeString$split, _dirtyTimes$split;
|
|
@@ -114,10 +124,25 @@ const isValidTimeString = testString => {
|
|
|
114
124
|
if (Number.parseInt(hours, 10) > 12 || Number.parseInt(minutes, 10) > 60) return false;
|
|
115
125
|
return true;
|
|
116
126
|
};
|
|
117
|
-
const isIncompleteString = (testString
|
|
127
|
+
const isIncompleteString = function (testString) {
|
|
128
|
+
let placeholder = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '_';
|
|
129
|
+
return testString === '' || testString.includes(placeholder);
|
|
130
|
+
};
|
|
118
131
|
const isEmptyDateStringMask = testString => testString === '__/__/____';
|
|
119
132
|
const isEmptyTimeStringMask = testString => testString === '__:__ __';
|
|
120
133
|
const isEmptyDateTimeStringMask = testString => testString === '__/__/____ __:__ __';
|
|
134
|
+
const getAriaDayFromDateString = dateString => {
|
|
135
|
+
const {
|
|
136
|
+
month: monthString,
|
|
137
|
+
day: dayString,
|
|
138
|
+
year: yearString
|
|
139
|
+
} = deconstructValuesFromDateString(dateString);
|
|
140
|
+
const monthNum = numberHelpers.convertToPositiveNumberIfPossible(monthString);
|
|
141
|
+
const dayNum = numberHelpers.convertToPositiveNumberIfPossible(dayString);
|
|
142
|
+
const yearNum = numberHelpers.convertToPositiveNumberIfPossible(yearString);
|
|
143
|
+
if (monthNum === -1 || dayNum === -1 || yearNum === -1) return '';
|
|
144
|
+
return "".concat(constants.monthNames[monthNum - 1], " ").concat(constants.announcableCardinalDays[dayNum], " ").concat(yearNum);
|
|
145
|
+
};
|
|
121
146
|
|
|
122
147
|
exports.dateTimeToDate = dateTimeToDate;
|
|
123
148
|
exports.dateTimeToTime = dateTimeToTime;
|
|
@@ -125,6 +150,7 @@ exports.deconstructTimeValues = deconstructTimeValues;
|
|
|
125
150
|
exports.deconstructValuesFromDateString = deconstructValuesFromDateString;
|
|
126
151
|
exports.deconstructValuesFromTimeString = deconstructValuesFromTimeString;
|
|
127
152
|
exports.fillStringWithPlaceHolders = fillStringWithPlaceHolders;
|
|
153
|
+
exports.getAriaDayFromDateString = getAriaDayFromDateString;
|
|
128
154
|
exports.getFormattedDateString = getFormattedDateString;
|
|
129
155
|
exports.getFormattedTimeString = getFormattedTimeString;
|
|
130
156
|
exports.isEmptyDateStringMask = isEmptyDateStringMask;
|
|
@@ -4,7 +4,8 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var stringHelpers = require('./stringHelpers.js');
|
|
6
6
|
|
|
7
|
-
const getValidationTimeStringMetaInfo = (timeString
|
|
7
|
+
const getValidationTimeStringMetaInfo = function (timeString) {
|
|
8
|
+
let getIsDisabledTime = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : timeS => false;
|
|
8
9
|
const metaInfo = {};
|
|
9
10
|
|
|
10
11
|
if (!stringHelpers.isIncompleteString(timeString)) {
|
|
@@ -4,9 +4,16 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
6
6
|
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
7
|
+
require('core-js/modules/web.dom-collections.iterator.js');
|
|
8
|
+
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
9
|
+
require('core-js/modules/esnext.iterator.constructor.js');
|
|
10
|
+
require('core-js/modules/esnext.iterator.filter.js');
|
|
11
|
+
require('core-js/modules/esnext.async-iterator.for-each.js');
|
|
12
|
+
require('core-js/modules/esnext.iterator.for-each.js');
|
|
7
13
|
var React = require('react');
|
|
8
|
-
var
|
|
14
|
+
var uid = require('uid');
|
|
9
15
|
var reactDesc = require('react-desc');
|
|
16
|
+
var propTypes = require('./propTypes.js');
|
|
10
17
|
var styles = require('./styles.js');
|
|
11
18
|
var defaultProps = require('./defaultProps.js');
|
|
12
19
|
var addTooltipOnReadOnly = require('./utils/addTooltipOnReadOnly.js');
|
|
@@ -19,26 +26,29 @@ var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
|
19
26
|
|
|
20
27
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
21
28
|
|
|
22
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty__default[
|
|
29
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
23
30
|
|
|
24
|
-
const DSControlledToggle =
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
31
|
+
const DSControlledToggle = _ref => {
|
|
32
|
+
let {
|
|
33
|
+
labelOn,
|
|
34
|
+
labelOff,
|
|
35
|
+
name,
|
|
36
|
+
value,
|
|
37
|
+
checked,
|
|
38
|
+
onChange,
|
|
39
|
+
size,
|
|
40
|
+
readOnly,
|
|
41
|
+
active,
|
|
42
|
+
disabled,
|
|
43
|
+
containerProps,
|
|
44
|
+
id
|
|
45
|
+
} = _ref;
|
|
37
46
|
const [isLongerTextRendering, setIsLongerTextRendering] = React.useState(false);
|
|
38
47
|
const [width, setWidth] = React.useState(0);
|
|
39
48
|
const labelTextRef = React.useRef(null);
|
|
40
49
|
const widthTextRef = React.useRef(null);
|
|
41
50
|
const longerText = React.useMemo(() => labelOn.length > labelOff.length ? labelOn : labelOff, [labelOff, labelOn]);
|
|
51
|
+
const instanceUID = React.useMemo(() => uid.uid(5), []);
|
|
42
52
|
React.useEffect(() => {
|
|
43
53
|
if (labelTextRef.current) {
|
|
44
54
|
setIsLongerTextRendering(labelTextRef.current.innerText === longerText);
|
|
@@ -49,43 +59,49 @@ const DSControlledToggle = ({
|
|
|
49
59
|
setWidth(widthTextRef.current.clientWidth);
|
|
50
60
|
}
|
|
51
61
|
}, [widthTextRef]);
|
|
52
|
-
const
|
|
62
|
+
const handleOnChange = React.useCallback(() => {
|
|
53
63
|
if (disabled || readOnly) return;
|
|
54
|
-
|
|
55
|
-
}, [disabled, readOnly,
|
|
64
|
+
onChange();
|
|
65
|
+
}, [disabled, readOnly, onChange]);
|
|
56
66
|
const handleKeyDown = React.useCallback(e => {
|
|
57
|
-
if (disabled || readOnly)
|
|
58
|
-
|
|
59
|
-
|
|
67
|
+
if (disabled || readOnly) {
|
|
68
|
+
e.preventDefault();
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
if (e.key === 'Enter') {
|
|
72
|
+
e.preventDefault();
|
|
73
|
+
onChange();
|
|
74
|
+
}
|
|
75
|
+
}, [disabled, onChange, readOnly]);
|
|
60
76
|
return addTooltipOnReadOnly.addTooltipOnReadOnly( /*#__PURE__*/jsxRuntime.jsxs(styles.StyledContainer, _objectSpread(_objectSpread({
|
|
61
|
-
"aria-disabled": disabled,
|
|
62
|
-
"aria-checked": checked,
|
|
63
|
-
role: "checkbox",
|
|
64
|
-
checked: checked,
|
|
65
77
|
size: size,
|
|
66
|
-
tabIndex: 0,
|
|
67
|
-
onClick: handleClick,
|
|
68
|
-
onKeyDown: handleKeyDown,
|
|
69
78
|
"data-testid": "ds-controlled-toggle"
|
|
70
79
|
}, containerProps), {}, {
|
|
71
|
-
children: [/*#__PURE__*/_jsx__default[
|
|
80
|
+
children: [/*#__PURE__*/_jsx__default["default"](styles.StyledInput, {
|
|
72
81
|
type: "checkbox",
|
|
73
|
-
id: "checkbox",
|
|
74
82
|
name: name,
|
|
75
83
|
value: value,
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
84
|
+
checked: checked,
|
|
85
|
+
"data-testid": "ds-controlled-toggle-checkbox",
|
|
86
|
+
id: id || instanceUID,
|
|
87
|
+
"aria-disabled": disabled,
|
|
88
|
+
"aria-checked": checked,
|
|
89
|
+
tabIndex: 0,
|
|
90
|
+
onChange: handleOnChange,
|
|
91
|
+
onKeyDown: handleKeyDown
|
|
92
|
+
}), /*#__PURE__*/_jsx__default["default"](styles.StyledLabel, {
|
|
79
93
|
checked: checked,
|
|
80
94
|
size: size,
|
|
81
95
|
width: width
|
|
82
|
-
}, void 0, /*#__PURE__*/_jsx__default[
|
|
96
|
+
}, void 0, /*#__PURE__*/_jsx__default["default"](styles.StyledVisibleContent, {
|
|
83
97
|
checked: checked,
|
|
84
98
|
size: size,
|
|
85
99
|
readOnly: readOnly,
|
|
86
100
|
active: active,
|
|
87
|
-
disabled: disabled
|
|
88
|
-
|
|
101
|
+
disabled: disabled,
|
|
102
|
+
htmlFor: id ? undefined : instanceUID,
|
|
103
|
+
as: id ? 'p' : 'label'
|
|
104
|
+
}, void 0, /*#__PURE__*/_jsx__default["default"](styles.StyledCircle, {
|
|
89
105
|
checked: checked,
|
|
90
106
|
size: size,
|
|
91
107
|
readOnly: readOnly,
|
|
@@ -10,12 +10,13 @@ const propTypes = {
|
|
|
10
10
|
value: reactDesc.PropTypes.string.description('Value attribute for toggle'),
|
|
11
11
|
name: reactDesc.PropTypes.string.description('Name attribute for toggle'),
|
|
12
12
|
checked: reactDesc.PropTypes.bool.description('Wether the toggle is checked or not'),
|
|
13
|
-
|
|
13
|
+
onchange: reactDesc.PropTypes.func.description('OnClick callback'),
|
|
14
14
|
size: reactDesc.PropTypes.oneOf(['s', 'm', 'l']).description('Size of toggle'),
|
|
15
15
|
readOnly: reactDesc.PropTypes.bool.description('Wether the toggle is readOnly or not'),
|
|
16
16
|
active: reactDesc.PropTypes.bool.description('Wether the toggle has active styles or not'),
|
|
17
17
|
disabled: reactDesc.PropTypes.bool.description('Wether the toggle is disabled or not'),
|
|
18
|
-
containerProps: reactDesc.PropTypes.shape({}).description('Set of properties attached to the main container')
|
|
18
|
+
containerProps: reactDesc.PropTypes.shape({}).description('Set of properties attached to the main container'),
|
|
19
|
+
id: reactDesc.PropTypes.string.description('Unique id.')
|
|
19
20
|
};
|
|
20
21
|
|
|
21
22
|
exports.propTypes = propTypes;
|