@semcore/date-picker 4.58.0-prerelease.0 → 4.58.0-prerelease.4
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/lib/cjs/DatePicker.js +36 -27
- package/lib/cjs/DatePicker.js.map +1 -1
- package/lib/cjs/DateRangeComparator.js +43 -38
- package/lib/cjs/DateRangeComparator.js.map +1 -1
- package/lib/cjs/DateRangePicker.js +22 -17
- package/lib/cjs/DateRangePicker.js.map +1 -1
- package/lib/cjs/MonthDateRangeComparator.js +47 -42
- package/lib/cjs/MonthDateRangeComparator.js.map +1 -1
- package/lib/cjs/MonthPicker.js +21 -16
- package/lib/cjs/MonthPicker.js.map +1 -1
- package/lib/cjs/MonthRangePicker.js +23 -18
- package/lib/cjs/MonthRangePicker.js.map +1 -1
- package/lib/cjs/components/ButtonTrigger.js +10 -8
- package/lib/cjs/components/ButtonTrigger.js.map +1 -1
- package/lib/cjs/components/Calendar.js +125 -109
- package/lib/cjs/components/Calendar.js.map +1 -1
- package/lib/cjs/components/DateRangeComparatorAbstract.js +104 -121
- package/lib/cjs/components/DateRangeComparatorAbstract.js.map +1 -1
- package/lib/cjs/components/InputTrigger.js +189 -179
- package/lib/cjs/components/InputTrigger.js.map +1 -1
- package/lib/cjs/components/PickerAbstract.js +57 -58
- package/lib/cjs/components/PickerAbstract.js.map +1 -1
- package/lib/cjs/components/RangePickerAbstract.js +76 -97
- package/lib/cjs/components/RangePickerAbstract.js.map +1 -1
- package/lib/cjs/components/index.js +46 -41
- package/lib/cjs/components/index.js.map +1 -1
- package/lib/cjs/index.d.js.map +1 -1
- package/lib/cjs/index.js +2 -2
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/style/calendar.shadow.css +21 -19
- package/lib/cjs/style/date-picker.shadow.css +8 -7
- package/lib/cjs/translations/__intergalactic-dynamic-locales.js +5 -4
- package/lib/cjs/translations/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/cjs/translations/de.json +2 -6
- package/lib/cjs/translations/es.json +2 -6
- package/lib/cjs/translations/fr.json +2 -6
- package/lib/cjs/translations/it.json +2 -6
- package/lib/cjs/translations/ja.json +2 -6
- package/lib/cjs/translations/ko.json +2 -6
- package/lib/cjs/translations/nl.json +2 -6
- package/lib/cjs/translations/pl.json +2 -6
- package/lib/cjs/translations/pt.json +2 -6
- package/lib/cjs/translations/sv.json +2 -6
- package/lib/cjs/translations/tr.json +2 -6
- package/lib/cjs/translations/vi.json +2 -6
- package/lib/cjs/translations/zh.json +2 -6
- package/lib/cjs/utils/cronTabScheduler.js +5 -8
- package/lib/cjs/utils/cronTabScheduler.js.map +1 -1
- package/lib/cjs/utils/datesIntersects.js +4 -3
- package/lib/cjs/utils/datesIntersects.js.map +1 -1
- package/lib/cjs/utils/formatDate.js +5 -3
- package/lib/cjs/utils/formatDate.js.map +1 -1
- package/lib/cjs/utils/includesDate.js +3 -2
- package/lib/cjs/utils/includesDate.js.map +1 -1
- package/lib/cjs/utils/shortDateRangeFormat.js +2 -2
- package/lib/cjs/utils/shortDateRangeFormat.js.map +1 -1
- package/lib/es6/DatePicker.js +28 -22
- package/lib/es6/DatePicker.js.map +1 -1
- package/lib/es6/DateRangeComparator.js +27 -23
- package/lib/es6/DateRangeComparator.js.map +1 -1
- package/lib/es6/DateRangePicker.js +17 -13
- package/lib/es6/DateRangePicker.js.map +1 -1
- package/lib/es6/MonthDateRangeComparator.js +32 -28
- package/lib/es6/MonthDateRangeComparator.js.map +1 -1
- package/lib/es6/MonthPicker.js +17 -13
- package/lib/es6/MonthPicker.js.map +1 -1
- package/lib/es6/MonthRangePicker.js +18 -14
- package/lib/es6/MonthRangePicker.js.map +1 -1
- package/lib/es6/components/ButtonTrigger.js +5 -5
- package/lib/es6/components/ButtonTrigger.js.map +1 -1
- package/lib/es6/components/Calendar.js +112 -100
- package/lib/es6/components/Calendar.js.map +1 -1
- package/lib/es6/components/DateRangeComparatorAbstract.js +101 -120
- package/lib/es6/components/DateRangeComparatorAbstract.js.map +1 -1
- package/lib/es6/components/InputTrigger.js +180 -173
- package/lib/es6/components/InputTrigger.js.map +1 -1
- package/lib/es6/components/PickerAbstract.js +55 -58
- package/lib/es6/components/PickerAbstract.js.map +1 -1
- package/lib/es6/components/RangePickerAbstract.js +71 -94
- package/lib/es6/components/RangePickerAbstract.js.map +1 -1
- package/lib/es6/components/index.js +38 -35
- package/lib/es6/components/index.js.map +1 -1
- package/lib/es6/index.d.js.map +1 -1
- package/lib/es6/index.js.map +1 -1
- package/lib/es6/style/calendar.shadow.css +21 -19
- package/lib/es6/style/date-picker.shadow.css +8 -7
- package/lib/es6/translations/__intergalactic-dynamic-locales.js +2 -2
- package/lib/es6/translations/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/es6/translations/de.json +2 -6
- package/lib/es6/translations/es.json +2 -6
- package/lib/es6/translations/fr.json +2 -6
- package/lib/es6/translations/it.json +2 -6
- package/lib/es6/translations/ja.json +2 -6
- package/lib/es6/translations/ko.json +2 -6
- package/lib/es6/translations/nl.json +2 -6
- package/lib/es6/translations/pl.json +2 -6
- package/lib/es6/translations/pt.json +2 -6
- package/lib/es6/translations/sv.json +2 -6
- package/lib/es6/translations/tr.json +2 -6
- package/lib/es6/translations/vi.json +2 -6
- package/lib/es6/translations/zh.json +2 -6
- package/lib/es6/utils/cronTabScheduler.js +4 -7
- package/lib/es6/utils/cronTabScheduler.js.map +1 -1
- package/lib/es6/utils/datesIntersects.js +1 -1
- package/lib/es6/utils/datesIntersects.js.map +1 -1
- package/lib/es6/utils/formatDate.js.map +1 -1
- package/lib/es6/utils/includesDate.js.map +1 -1
- package/lib/es6/utils/shortDateRangeFormat.js +1 -1
- package/lib/es6/utils/shortDateRangeFormat.js.map +1 -1
- package/lib/esm/DatePicker.mjs +33 -27
- package/lib/esm/DateRangeComparator.mjs +30 -26
- package/lib/esm/DateRangePicker.mjs +21 -17
- package/lib/esm/MonthDateRangeComparator.mjs +35 -31
- package/lib/esm/MonthPicker.mjs +20 -16
- package/lib/esm/MonthRangePicker.mjs +22 -18
- package/lib/esm/components/ButtonTrigger.mjs +5 -5
- package/lib/esm/components/Calendar.mjs +115 -103
- package/lib/esm/components/DateRangeComparatorAbstract.mjs +89 -105
- package/lib/esm/components/InputTrigger.mjs +181 -143
- package/lib/esm/components/PickerAbstract.mjs +62 -61
- package/lib/esm/components/RangePickerAbstract.mjs +73 -94
- package/lib/esm/components/index.mjs +33 -29
- package/lib/esm/style/calendar.shadow.css +21 -19
- package/lib/esm/style/date-picker.shadow.css +8 -7
- package/lib/esm/translations/__intergalactic-dynamic-locales.mjs +2 -2
- package/lib/esm/translations/de.json.mjs +6 -18
- package/lib/esm/translations/es.json.mjs +6 -18
- package/lib/esm/translations/fr.json.mjs +6 -18
- package/lib/esm/translations/it.json.mjs +6 -18
- package/lib/esm/translations/ja.json.mjs +6 -18
- package/lib/esm/translations/ko.json.mjs +6 -18
- package/lib/esm/translations/nl.json.mjs +6 -18
- package/lib/esm/translations/pl.json.mjs +6 -18
- package/lib/esm/translations/pt.json.mjs +6 -18
- package/lib/esm/translations/sv.json.mjs +6 -18
- package/lib/esm/translations/tr.json.mjs +6 -18
- package/lib/esm/translations/vi.json.mjs +6 -18
- package/lib/esm/translations/zh.json.mjs +6 -18
- package/lib/esm/utils/cronTabScheduler.mjs +4 -4
- package/lib/esm/utils/datesIntersects.mjs +1 -1
- package/lib/esm/utils/shortDateRangeFormat.mjs +2 -1
- package/lib/types/index.d.ts +171 -140
- package/package.json +16 -16
- package/lib/cjs/utils/isBetweenPlugin.js +0 -21
- package/lib/cjs/utils/isBetweenPlugin.js.map +0 -1
- package/lib/es6/utils/isBetweenPlugin.js +0 -16
- package/lib/es6/utils/isBetweenPlugin.js.map +0 -1
- package/lib/esm/utils/isBetweenPlugin.mjs +0 -13
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputTrigger.js","names":["NeighborLocation","Flex","Box","BaseTrigger","createComponent","Root","sstyled","Component","assignProps","useEnhancedEffect","Calendar","InputMask","Tooltip","dayjs","React","style","_sstyled","insert","datesIntersects","includesDate","defaultAllowedParts","year","month","day","exampleDate","Date","InputTriggerRoot","_Component","_classCallCheck","_callSuper","arguments","_inherits","_createClass","key","value","getSingleDateInputProps","_this$asProps","asProps","_children","children","id","_role","role","ariaHasPopup","_ariaLabel","_style","otherProps","_objectWithoutProperties","_excluded","_objectSpread","inputId","getDateRangeProps","_this$asProps2","_rolw","_excluded2","render","_ref","_ref8","SInputTrigger","_this$asProps3","Children","getI18nText","createElement","cn","_assignProps","_defineProperty","duration","popoverVisible","SingleDateInputRoot","_Component2","_this","_len","length","args","Array","_key","concat","errorText","showError","focused","setState","disabledDateInputAttempt","handlers","uncontrolledProps","_this2","date","state","disabledErrorText","undefined","parts","getMaskedInputProps","_this$asProps4","onChange","onDisplayedPeriodChange","locale","_w","w","_ariaHasPopup","_showError","neighborLocation","_excluded3","handleInputMaskPipeBlock","_ref2","_ref9","_this$asProps5","forwardRef","styles","showErrorProps","_this$state","showErrorState","SSingleDateInput","_assignProps2","handleFocus","handleBlur","Fragment","SingleDateInput","Indicator","MaskedInput","defaultDisabledDateInputAttempt","DateRangeRoot","_Component3","_this3","_len2","_key2","containerFocused","lastChangedInput","createRef","event","_this3$asProps$value$","_this3$asProps$value","_this3$asProps$value$2","_this3$asProps$value2","prevValue","toRef","current","focus","setTimeout","setSelectionRange","_this3$asProps$value$3","_this3$asProps$value3","_this3$asProps$value$4","_this3$asProps$value4","fromRef","selectionStart","selectionEnd","disabledDates","invalid","some","unit","invalidValue","_this4","getFromMaskedInputProps","_this$asProps6","_excluded4","handleFromChange","handleFromKeydown","getToMaskedInputProps","_this$asProps7","_inputId","_excluded5","ariaLabel","handleToChange","handleToKeydown","getRangeSepProps","fulfilled","componentDidUpdate","prevProps","updateDisabledDateInputAttempt","componentDidMount","_ref3","_ref0","SDateRange","_this$asProps8","_this$state2","_assignProps3","DateRange","FromMaskedInput","RangeSep","ToMaskedInput","props","_ref4","arguments[0]","_ref1","SFromMaskedInput","_assignProps4","_ref5","_ref10","SToMaskedInput","_assignProps5","_ref6","_ref11","SIndicator","Addon","_assignProps6","_ref7","_ref12","SRangeSep","_assignProps7","_ref14","_ref13","outerValue","onDateChange","_ref14$parts","allowedParts","providedPlaceholders","placeholders","_ref14$labelPrefix","labelPrefix","onMaskPipeBlock","animationsDisabled","_ref14$inputRole","inputRole","__excludeProps","_root","_excluded6","ref","useRef","_React$useState","useState","_React$useState2","_slicedToArray","width","setWidth","useMemo","console","error","Error","_React$useMemo","options","dateTimeFormat","Intl","DateTimeFormat","sep","order","formatToParts","_iterator","_createForOfIteratorHelper","_step","s","n","done","part","type","includes","push","err","e","f","outer","outerDate","validDate","Number","isNaN","getTime","getFullYear","toString","padStart","getMonth","getDate","stringifyValue","useCallback","result","_iterator2","_step2","join","_React$useState3","_React$useState4","internalValue","setInternalValue","lastKnownOuterValue","useEffect","_lastKnownOuterValue$","_lastKnownOuterValue$2","_lastKnownOuterValue$3","pipeMask","placeholdersOnly","i","getOffsetTo","partName","partsBefore","slice","indexOf","offset","_iterator3","_step3","indexesOfPipedChars","parsed","split","parseInt","map","char","yearFulfilled","monthFulfilled","dayFulfilled","yearParsed","monthParsed","dayParsed","setFullYear","_iterator4","_step4","handleChange","setMonth","mask","_iterator5","_step5","aliases","maskOnlySymbols","humanizedDate","format","stringsToMeasure","widths","measureSpan","document","computedStyle","window","getComputedStyle","typographyRelatedStyles","_i2","_typographyRelatedSty","position","visibility","body","appendChild","_i3","_stringsToMeasure","string","innerHTML","Math","ceil","getBoundingClientRect","remove","maxWidth","max","apply","SHumanizedDate","handleInputRef","node","tagName","_React$useState5","_React$useState6","appliedWidth","setAppliedWidth","_React$useState7","_React$useState8","innerFocused","setInnerFocused","_otherProps$onFocus","onFocus","call","_otherProps$onBlur","onBlur","Value","_extends","title","placeholder","inputW","wMin","pipe","noHumanizedDate","inputMode","InputTrigger"],"sources":["../../../src/components/InputTrigger.jsx"],"sourcesContent":["import { NeighborLocation, Flex, Box } from '@semcore/base-components';\nimport BaseTrigger from '@semcore/base-trigger';\nimport { createComponent, Root, sstyled, Component } from '@semcore/core';\nimport assignProps from '@semcore/core/lib/utils/assignProps';\nimport useEnhancedEffect from '@semcore/core/lib/utils/use/useEnhancedEffect';\nimport Calendar from '@semcore/icon/Calendar/m';\nimport InputMask from '@semcore/input-mask';\nimport Tooltip from '@semcore/tooltip';\nimport dayjs from 'dayjs';\nimport React from 'react';\n\nimport style from '../style/date-picker.shadow.css';\nimport { datesIntersects } from '../utils/datesIntersects';\nimport { includesDate } from '../utils/includesDate';\n\nconst defaultAllowedParts = { year: true, month: true, day: true };\nconst exampleDate = new Date(2000, 4, 29);\n\nclass InputTriggerRoot extends Component {\n static displayName = 'InputTrigger';\n static style = style;\n static defaultProps = {\n duration: 300,\n popoverVisible: true,\n };\n\n getSingleDateInputProps() {\n const {\n children: _children,\n id,\n role: _role,\n 'aria-haspopup': ariaHasPopup,\n // 'aria-expanded': ariaExpanded,\n 'aria-label': _ariaLabel,\n style: _style,\n ...otherProps\n } = this.asProps;\n return { ...otherProps, ariaHasPopup, inputId: id };\n }\n\n getDateRangeProps() {\n const {\n children: _children,\n id,\n role: _rolw,\n 'aria-haspopup': ariaHasPopup,\n 'aria-label': _ariaLabel,\n // 'aria-expanded': ariaExpanded,\n style: _style,\n ...otherProps\n } = this.asProps;\n return { ...otherProps, ariaHasPopup, inputId: id };\n }\n\n render() {\n const SInputTrigger = Root;\n const { Children, style, getI18nText } = this.asProps;\n\n return sstyled(style)(\n <SInputTrigger\n render={Box}\n aria-label={getI18nText('input')}\n __excludeProps={['onChange', 'value', 'role', 'id']}\n >\n <Children />\n </SInputTrigger>,\n );\n }\n}\n\nclass SingleDateInputRoot extends Component {\n static displayName = 'SingleDateInput';\n static style = style;\n static defaultProps = {\n children: () => (\n <>\n <SingleDateInput.Indicator />\n <SingleDateInput.MaskedInput />\n </>\n ),\n defaultDisabledDateInputAttempt: false,\n showError: true,\n };\n\n state = {\n errorText: null,\n showError: false,\n focused: false,\n };\n\n uncontrolledProps() {\n return {\n disabledDateInputAttempt: [\n null,\n (date) => {\n let errorText = this.state.errorText;\n let showError = false;\n if (date !== null) {\n errorText = this.asProps.disabledErrorText;\n if (errorText === undefined) {\n let key = 'unavailableDate';\n if (this.asProps.parts && !this.asProps.parts.day) {\n key = 'unavailableMonth';\n }\n errorText = this.asProps.getI18nText(key);\n }\n if (typeof errorText === 'function') {\n errorText = errorText(date);\n }\n showError = this.asProps.disabledErrorText !== null;\n }\n this.setState({ errorText, showError });\n },\n ],\n };\n }\n\n handleFocus = () => {\n this.setState({ focused: true });\n };\n\n handleBlur = () => {\n this.setState({ focused: false });\n };\n\n handleInputMaskPipeBlock = (value) => {\n if (value === this.asProps.disabledDateInputAttempt) return;\n this.handlers.disabledDateInputAttempt(value);\n };\n\n getMaskedInputProps() {\n const {\n value,\n onChange,\n onDisplayedPeriodChange,\n locale,\n w: _w,\n ariaHasPopup: _ariaHasPopup,\n showError: _showError,\n neighborLocation,\n ...otherProps\n } = this.asProps;\n\n return {\n 'date': value,\n 'onDateChange': onChange,\n onDisplayedPeriodChange,\n locale,\n 'aria-haspopup': 'true',\n 'onMaskPipeBlock': this.handleInputMaskPipeBlock,\n ...otherProps,\n };\n }\n\n render() {\n const {\n Children,\n forwardRef,\n styles,\n state,\n showError: showErrorProps,\n popoverVisible,\n } = this.asProps;\n const { errorText, showError: showErrorState, focused } = this.state;\n const showError = showErrorState && showErrorProps;\n const SSingleDateInput = Root;\n\n return sstyled(styles)(\n <SSingleDateInput\n render={InputMask}\n tag={Tooltip}\n placement='top-start'\n title={errorText}\n theme='warning'\n visible={showError && (popoverVisible || focused)}\n state={showError ? 'invalid' : state}\n ref={forwardRef}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n __excludeProps={['onChange', 'style', 'aria-expanded']}\n >\n <NeighborLocation>\n <Children />\n </NeighborLocation>\n </SSingleDateInput>,\n );\n }\n}\nclass DateRangeRoot extends Component {\n static displayName = 'DateRange';\n static style = style;\n static defaultProps = {\n children: () => (\n <>\n <DateRange.Indicator />\n <DateRange.FromMaskedInput />\n <DateRange.RangeSep />\n <DateRange.ToMaskedInput />\n </>\n ),\n defaultDisabledDateInputAttempt: false,\n showError: true,\n };\n\n state = {\n containerFocused: false,\n errorText: null,\n showError: false,\n lastChangedInput: 'from',\n };\n\n uncontrolledProps() {\n return {\n disabledDateInputAttempt: [\n null,\n (date) => {\n let errorText = this.state.errorText;\n let showError = false;\n if (date !== null) {\n errorText = this.asProps.disabledErrorText;\n if (errorText === undefined) {\n let key = 'unavailableDate';\n if (this.asProps.parts && !this.asProps.parts.day) {\n key = 'unavailableMonth';\n }\n if (this.state.lastChangedInput === 'to') {\n key = 'unavailableEndDate';\n if (this.asProps.parts && !this.asProps.parts.day) {\n key = 'unavailableEndMonth';\n }\n }\n errorText = this.asProps.getI18nText(key);\n }\n if (typeof errorText === 'function') {\n errorText = errorText(date);\n }\n showError = this.asProps.disabledErrorText !== null;\n }\n this.setState({ errorText, showError });\n },\n ],\n };\n }\n\n fromRef = React.createRef();\n toRef = React.createRef();\n\n handleFromChange = (value, event) => {\n const { onChange } = this.asProps;\n const prevValue = [this.asProps.value?.[0] ?? null, this.asProps.value?.[1] ?? null];\n onChange([value, prevValue[1]], event);\n if (value) {\n if (!this.toRef.current) return;\n this.toRef.current.focus();\n setTimeout(() => {\n if (!this.toRef.current) return;\n this.toRef.current.setSelectionRange(0, 0);\n }, 0);\n }\n };\n\n handleToChange = (value, event) => {\n const { onChange } = this.asProps;\n const prevValue = [this.asProps.value?.[0] ?? null, this.asProps.value?.[1] ?? null];\n onChange([prevValue[0], value], event);\n };\n\n handleFromKeydown = (event) => {\n if (!this.toRef.current) return;\n if (!this.fromRef.current) return;\n this.setState({ lastChangedInput: 'from' });\n\n if (\n event.key === 'ArrowRight' &&\n this.fromRef.current.selectionStart === this.fromRef.current.value.length &&\n this.fromRef.current.selectionEnd === this.fromRef.current.value.length\n ) {\n this.toRef.current.focus();\n setTimeout(() => {\n this.toRef.current.setSelectionRange(0, 0);\n }, 0);\n }\n };\n\n handleToKeydown = (event) => {\n if (!this.toRef.current) return;\n if (!this.fromRef.current) return;\n this.setState({ lastChangedInput: 'to' });\n\n if (event.key === 'Backspace' && !this.toRef.current.value) {\n const value = this.fromRef.current.value;\n this.fromRef.current.focus();\n setTimeout(() => {\n this.fromRef.current.setSelectionRange(value.length, value.length);\n }, 0);\n }\n if (\n event.key === 'ArrowLeft' &&\n this.toRef.current.selectionStart === 0 &&\n this.toRef.current.selectionEnd === 0\n ) {\n const value = this.fromRef.current.value;\n this.fromRef.current.focus();\n setTimeout(() => {\n this.fromRef.current.setSelectionRange(value.length, value.length);\n }, 0);\n }\n };\n\n handleInputMaskPipeBlock = (value) => {\n if (value === this.asProps.disabledDateInputAttempt) return;\n this.handlers.disabledDateInputAttempt(value);\n };\n\n getFromMaskedInputProps() {\n const { value, locale, onDisplayedPeriodChange, ariaHasPopup, showError: _showError, neighborLocation, ...otherProps } =\n this.asProps;\n\n return assignProps(\n {\n 'ref': this.fromRef,\n 'date': value?.[0],\n 'onDateChange': this.handleFromChange,\n 'onKeyDown': this.handleFromKeydown,\n locale,\n 'flex': 1,\n onDisplayedPeriodChange,\n 'aria-haspopup': ariaHasPopup,\n 'onMaskPipeBlock': this.handleInputMaskPipeBlock,\n 'containerFocused': this.state.containerFocused,\n },\n otherProps,\n );\n }\n\n getToMaskedInputProps() {\n const {\n value,\n locale,\n onDisplayedPeriodChange,\n ariaHasPopup,\n inputId: _inputId,\n showError: _showError,\n neighborLocation,\n ...otherProps\n } = this.asProps;\n const ariaLabel = this.asProps.getI18nText('toDate', {\n date: this.asProps.getI18nText('input'),\n });\n\n return assignProps(\n {\n 'ref': this.toRef,\n 'date': value?.[1],\n 'onDateChange': this.handleToChange,\n 'onKeyDown': this.handleToKeydown,\n locale,\n 'flex': 1,\n onDisplayedPeriodChange,\n 'aria-label': ariaLabel,\n 'aria-haspopup': ariaHasPopup,\n 'onMaskPipeBlock': this.handleInputMaskPipeBlock,\n 'containerFocused': this.state.containerFocused,\n },\n otherProps,\n );\n }\n\n getRangeSepProps() {\n const { value } = this.asProps;\n\n return {\n fulfilled: !!(value && (value[0] || value[1])),\n };\n }\n\n handleFocus = () => {\n this.setState({ containerFocused: true });\n };\n\n handleBlur = () => {\n this.setState({ containerFocused: false });\n };\n\n updateDisabledDateInputAttempt = (value) => {\n const { disabledDates } = this.asProps;\n\n let invalid = false;\n if (value) {\n if (value[0] && value[1])\n invalid = disabledDates.some(datesIntersects([value[0], value[1]], this.asProps.unit));\n else if (value[0])\n invalid = disabledDates.some(includesDate(dayjs(value[0]), this.asProps.unit));\n else if (value[1])\n invalid = disabledDates.some(includesDate(dayjs(value[1]), this.asProps.unit));\n }\n\n if (invalid) {\n const invalidValue = this.state.lastChangedInput === 'to' ? value[1] : value[0];\n setTimeout(() => {\n if (value === this.asProps.disabledDateInputAttempt) return;\n this.handlers.disabledDateInputAttempt(invalidValue);\n }, 0);\n }\n };\n\n componentDidUpdate(prevProps) {\n if (prevProps.value !== this.asProps.value) {\n this.updateDisabledDateInputAttempt(this.asProps.value);\n }\n }\n\n componentDidMount() {\n this.updateDisabledDateInputAttempt(this.asProps.value);\n }\n\n render() {\n const SDateRange = Root;\n const { Children, styles, w, state, showError: showErrorProps, popoverVisible } = this.asProps;\n const { errorText, lastChangedInput, showError: showErrorState, containerFocused } = this.state;\n const showError = showErrorState && showErrorProps;\n\n return sstyled(styles)(\n <SDateRange\n render={InputMask}\n tag={Tooltip}\n ignorePortalsStacking\n placement={lastChangedInput === 'to' ? 'top-end' : 'top-start'}\n title={errorText}\n theme='warning'\n visible={showError && (popoverVisible || containerFocused)}\n state={showError ? 'invalid' : state}\n __excludeProps={['onChange', 'value', 'aria-expanded']}\n w={w}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n >\n <Children />\n </SDateRange>,\n );\n }\n}\n\nfunction FromMaskedInput(props) {\n const SFromMaskedInput = Root;\n const { getI18nText } = props;\n\n return sstyled(props.styles)(\n <SFromMaskedInput labelPrefix={getI18nText('fromDatePlaceholder')} render={MaskedInput} />,\n );\n}\n\nfunction ToMaskedInput(props) {\n const SToMaskedInput = Root;\n const { getI18nText } = props;\n\n return sstyled(props.styles)(\n <SToMaskedInput labelPrefix={getI18nText('toDatePlaceholder')} render={MaskedInput} />,\n );\n}\n\nfunction Indicator(props) {\n const SIndicator = Root;\n\n return sstyled(props.styles)(\n <SIndicator render={InputMask.Addon} tag={Calendar} aria-hidden='true' tabIndex={-1} />,\n );\n}\n\nfunction RangeSep(props) {\n const SRangeSep = Root;\n\n return sstyled(props.styles)(\n <SRangeSep\n render={InputMask.Addon}\n tag={Flex}\n alignItems='center'\n justifyContent='center'\n pl={0}\n flex='0'\n >\n –\n </SRangeSep>,\n );\n}\n\nfunction MaskedInput({\n date: outerValue,\n onDateChange,\n onDisplayedPeriodChange,\n locale,\n styles,\n parts: allowedParts = defaultAllowedParts,\n disabledDates,\n forwardRef,\n placeholders: providedPlaceholders,\n labelPrefix = 'Date',\n onMaskPipeBlock,\n containerFocused,\n animationsDisabled,\n getI18nText,\n inputId,\n inputRole = 'combobox',\n\n __excludeProps,\n\n Root: _root,\n ...otherProps\n}) {\n const ref = React.useRef();\n const [width, setWidth] = React.useState(undefined);\n\n const placeholders = React.useMemo(() => {\n if (providedPlaceholders) return providedPlaceholders;\n\n return {\n year: getI18nText('placeholder-years'),\n month: getI18nText('placeholder-months'),\n day: getI18nText('placeholder-days'),\n };\n }, [providedPlaceholders, getI18nText]);\n\n if (\n placeholders.year.length !== 1 ||\n placeholders.month.length !== 1 ||\n placeholders.day.length !== 1\n ) {\n // eslint-disable-next-line no-console\n console.error({ placeholders });\n throw new Error(\n `InputTrigger placeholder prop should contain fields year, month and day each one with string value of single character length. [see above what was received] (${placeholders})`,\n placeholders,\n );\n }\n\n const { sep, order } = React.useMemo(() => {\n const options = { year: 'numeric', month: 'numeric', day: 'numeric' };\n const dateTimeFormat = new Intl.DateTimeFormat(locale, options);\n\n let sep = undefined;\n const order = [];\n const parts = dateTimeFormat.formatToParts(exampleDate);\n for (const part of parts) {\n if (!sep && part.type === 'literal') {\n sep = part.value;\n }\n if (\n order.length < 3 &&\n ['day', 'month', 'year'].includes(part.type) &&\n allowedParts[part.type]\n ) {\n order.push(part.type);\n }\n }\n sep = sep ?? ' ';\n\n return { sep, order };\n }, [locale, allowedParts]);\n\n const outer = React.useMemo(() => {\n let outerDate = outerValue;\n if (typeof outerValue === 'number' || typeof outerValue === 'string') {\n outerDate = new Date(outerValue);\n }\n const validDate = outerDate && outerDate instanceof Date && !Number.isNaN(outerDate.getTime());\n if (!validDate) return null;\n\n return {\n year: outerDate.getFullYear().toString().padStart(4, '0'),\n month: (outerDate.getMonth() + 1).toString().padStart(2, '0'),\n day: outerDate.getDate().toString().padStart(2, '0'),\n };\n }, [outerValue]);\n const stringifyValue = React.useCallback(\n (value) => {\n if (!value) return null;\n if (!value.year && !value.month && !value.day) return null;\n\n const result = [];\n for (const part of order) {\n if (!allowedParts[part]) continue;\n if (part === 'year' && value.year) result.push(value.year);\n if (part === 'month' && value.month) result.push(value.month);\n if (part === 'day' && value.day) result.push(value.day);\n }\n return result.join(sep);\n },\n [order, allowedParts],\n );\n\n const [internalValue, setInternalValue] = React.useState(outer);\n const value = React.useMemo(() => stringifyValue(internalValue), [stringifyValue, internalValue]);\n\n const lastKnownOuterValue = React.useRef(outer);\n React.useEffect(() => {\n if (\n lastKnownOuterValue.current?.day !== outer?.day ||\n lastKnownOuterValue.current?.month !== outer?.month ||\n lastKnownOuterValue.current?.year !== outer?.year\n ) {\n setInternalValue(outer);\n }\n lastKnownOuterValue.current = outer;\n }, [outer, setInternalValue]);\n\n const pipeMask = React.useCallback(\n (value) => {\n let placeholdersOnly = true;\n for (let i = 0; i < value.length; i++) {\n if (value[i] !== '_' && value[i] !== sep) {\n placeholdersOnly = false;\n break;\n }\n }\n\n if (placeholdersOnly) {\n onMaskPipeBlock?.(null);\n return '';\n }\n\n const getOffsetTo = (partName) => {\n const partsBefore = order.slice(0, order.indexOf(partName));\n let offset = 0;\n for (const part of partsBefore) {\n if (part === 'year' && allowedParts.year) offset += 4;\n if (part === 'month' && allowedParts.month) offset += 2;\n if (part === 'day' && allowedParts.day) offset += 2;\n }\n offset += partsBefore.length * sep.length;\n return offset;\n };\n\n const indexesOfPipedChars = [];\n const parsed = {};\n const parts = value.split(sep);\n for (const partName in placeholders) {\n parsed[partName] = placeholders[partName];\n }\n for (let i = 0; i < order.length; i++) {\n parsed[order[i]] = parts[i];\n }\n\n let { year, month, day } = parsed;\n\n if (allowedParts.month) {\n if (month[0] !== '_' && Number.parseInt(month[0], 10) > 1) {\n month = `0${month[0]}`;\n indexesOfPipedChars.push(getOffsetTo('month'));\n }\n if (month === '00') month = '01';\n if (month[0] !== '_' && month[1] !== '_' && Number.parseInt(month, 10) > 12) return false;\n }\n if (allowedParts.day) {\n if (day[0] !== '_' && Number.parseInt(day[0], 10) > 3) {\n day = `0${day[0]}`;\n indexesOfPipedChars.push(getOffsetTo('day'));\n }\n if (day === '00') day = '01';\n if (day[0] !== '_' && day[1] !== '_' && Number.parseInt(day, 10) > 31) return false;\n }\n\n year = year\n .split('')\n .map((char) => (char === '_' ? placeholders.year : char))\n .join('');\n month = month\n .split('')\n .map((char) => (char === '_' ? placeholders.month : char))\n .join('');\n day = day\n .split('')\n .map((char) => (char === '_' ? placeholders.day : char))\n .join('');\n\n const yearFulfilled =\n !allowedParts.year || (year && year.length >= 4 && !year.includes(placeholders.year));\n const monthFulfilled =\n !allowedParts.month || (month && month.length === 2 && !month.includes(placeholders.month));\n const dayFulfilled =\n !allowedParts.day || (day && day.length === 2 && !day.includes(placeholders.day));\n const fulfilled = yearFulfilled && monthFulfilled && dayFulfilled;\n\n if (fulfilled) {\n const date = new Date(0, 0, 0, 0, 0, 0, 0);\n const yearParsed = allowedParts.year ? Number.parseInt(year, 10) : 0;\n const monthParsed = allowedParts.month ? Number.parseInt(month, 10) - 1 : 0;\n const dayParsed = allowedParts.day ? Number.parseInt(day, 10) : 1;\n\n date.setFullYear(yearParsed, monthParsed, dayParsed);\n\n if (disabledDates?.some(includesDate(dayjs(date), 'date'))) {\n onMaskPipeBlock?.(date);\n return false;\n }\n\n if (allowedParts.day) {\n if (date.getDate() !== Number.parseInt(day, 10)) {\n onMaskPipeBlock?.(date);\n return false;\n }\n }\n }\n\n const result = [];\n for (const part of order) {\n if (part === 'year') result.push(year);\n if (part === 'month') result.push(month);\n if (part === 'day') result.push(day);\n }\n\n onMaskPipeBlock?.(null);\n return { value: result.join(sep), indexesOfPipedChars };\n },\n [placeholders, sep, order, allowedParts, disabledDates, onMaskPipeBlock],\n );\n\n const handleChange = React.useCallback(\n (value) => {\n const parsed = {};\n for (const partName in placeholders) {\n parsed[partName] = placeholders[partName];\n }\n const parts = value.split(sep);\n for (let i = 0; i < order.length; i++) {\n parsed[order[i]] = parts[i];\n }\n const { year, month, day } = parsed;\n setInternalValue({ year, month, day });\n\n const yearFulfilled =\n !allowedParts.year || (year && year.length >= 4 && !year.includes(placeholders.year));\n const monthFulfilled =\n !allowedParts.month || (month && month.length === 2 && !month.includes(placeholders.month));\n const dayFulfilled =\n !allowedParts.day || (day && day.length === 2 && !day.includes(placeholders.day));\n const fulfilled = yearFulfilled && monthFulfilled && dayFulfilled;\n if (fulfilled) {\n const date = new Date(0, 0, 0, 0, 0, 0, 0);\n const yearParsed = allowedParts.year ? Number.parseInt(year, 10) : 0;\n const monthParsed = allowedParts.month ? Number.parseInt(month, 10) - 1 : 0;\n const dayParsed = allowedParts.day ? Number.parseInt(day, 10) : 1;\n\n date.setFullYear(yearParsed, monthParsed, dayParsed);\n\n onDateChange(date);\n lastKnownOuterValue.current = { year, month, day };\n return;\n }\n\n if (lastKnownOuterValue.current !== null) {\n onDateChange(null);\n lastKnownOuterValue.current = null;\n }\n\n if (yearFulfilled && allowedParts.year) {\n const date = new Date(0, 0, 0, 0, 0, 0, 0);\n date.setFullYear(Number.parseInt(year, 10));\n if (monthFulfilled && allowedParts.month) {\n date.setMonth(Number.parseInt(month, 10) - 1);\n }\n onDisplayedPeriodChange(date);\n }\n },\n [onDateChange, setInternalValue, placeholders, onDisplayedPeriodChange, order, allowedParts],\n );\n\n const mask = React.useMemo(() => {\n const result = [];\n for (const part of order) {\n if (part === 'year')\n result.push(placeholders.year + placeholders.year + placeholders.year + placeholders.year);\n if (part === 'month') result.push(placeholders.month + placeholders.month);\n if (part === 'day') result.push(placeholders.day + placeholders.day);\n }\n return result.join(sep);\n }, [sep, order, placeholders]);\n const aliases = React.useMemo(\n () => ({\n [placeholders.year]: /\\d/,\n [placeholders.month]: /\\d/,\n [placeholders.day]: /\\d/,\n }),\n [placeholders],\n );\n const maskOnlySymbols = React.useMemo(\n () => ({\n [placeholders.year]: true,\n [placeholders.month]: true,\n [placeholders.day]: true,\n [sep]: true,\n }),\n [sep, placeholders],\n );\n const humanizedDate = React.useMemo(() => {\n let outerDate = outerValue;\n if (typeof outerValue === 'number' || typeof outerValue === 'string') {\n outerDate = new Date(outerValue);\n }\n const validDate = outerDate && outerDate instanceof Date && !Number.isNaN(outerDate.getTime());\n if (!validDate) return null;\n\n return new Intl.DateTimeFormat(locale, {\n year: allowedParts.year ? 'numeric' : undefined,\n month: allowedParts.month ? 'short' : undefined,\n day: allowedParts.day ? 'numeric' : undefined,\n }).format(outerDate);\n }, [outerValue, locale, allowedParts]);\n\n useEnhancedEffect(() => {\n if (!ref.current) return;\n const stringsToMeasure = humanizedDate ? [humanizedDate, mask] : [mask];\n const widths = [];\n const measureSpan = document.createElement('span');\n const computedStyle = window.getComputedStyle(ref.current);\n const typographyRelatedStyles = [\n 'height',\n 'font-size',\n 'font-family',\n 'font-weight',\n 'font-style',\n 'line-height',\n 'letter-spacing',\n 'text-transform',\n 'word-spacing',\n ];\n for (const style of typographyRelatedStyles) {\n measureSpan.style[style] = computedStyle[style];\n }\n measureSpan.style.position = 'absolute';\n measureSpan.style.visibility = 'hidden';\n document.body.appendChild(measureSpan);\n for (const string of stringsToMeasure) {\n measureSpan.innerHTML = string;\n widths.push(Math.ceil(measureSpan.getBoundingClientRect().width));\n }\n measureSpan.remove();\n const maxWidth = Math.max(...widths);\n setWidth(maxWidth);\n }, [locale, humanizedDate, allowedParts, mask]);\n\n const SHumanizedDate = 'div';\n const handleInputRef = React.useCallback(\n (node) => {\n ref.current = node;\n if (!node || node.tagName !== 'INPUT') return;\n if (typeof forwardRef === 'function') forwardRef(node);\n else forwardRef.current = node;\n },\n [forwardRef],\n );\n\n const [appliedWidth, setAppliedWidth] = React.useState(width);\n const [innerFocused, setInnerFocused] = React.useState(false);\n const focused = containerFocused ?? innerFocused;\n const handleFocus = React.useCallback((event) => {\n otherProps.onFocus?.(event);\n setInnerFocused(true);\n }, []);\n const handleBlur = React.useCallback((event) => {\n otherProps.onBlur?.(event);\n setInnerFocused(false);\n }, []);\n useEnhancedEffect(() => {\n if (focused) return;\n setAppliedWidth(width);\n }, [width, focused]);\n\n return sstyled(styles)(\n <InputMask.Value\n aria-label={labelPrefix}\n title={mask}\n mask={mask}\n aliases={aliases}\n maskOnlySymbols={maskOnlySymbols}\n placeholder={mask}\n inputW={appliedWidth}\n wMin={appliedWidth}\n id={inputId}\n {...otherProps}\n onFocus={handleFocus}\n onBlur={handleBlur}\n focused={focused}\n ref={handleInputRef}\n pipe={pipeMask}\n value={value ?? ''}\n onChange={handleChange}\n noHumanizedDate={!humanizedDate}\n animationsDisabled={animationsDisabled}\n inputRole={inputRole}\n inputMode='numeric'\n >\n {humanizedDate && <SHumanizedDate>{humanizedDate}</SHumanizedDate>}\n </InputMask.Value>,\n );\n}\n\nconst SingleDateInput = createComponent(SingleDateInputRoot, {\n Indicator,\n MaskedInput,\n});\nconst DateRange = createComponent(DateRangeRoot, {\n Indicator,\n RangeSep,\n FromMaskedInput,\n ToMaskedInput,\n});\n\nconst InputTrigger = createComponent(InputTriggerRoot, {\n Addon: BaseTrigger.Addon,\n SingleDateInput,\n DateRange,\n});\n\nexport default InputTrigger;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"InputTrigger.js","names":["React","BaseTrigger","InputMask","Tooltip","Flex","Box","Calendar","createComponent","Root","sstyled","Component","NeighborLocation","datesIntersects","includesDate","dayjs","useEnhancedEffect","style","_sstyled","insert","assignProps","defaultAllowedParts","year","month","day","exampleDate","Date","InputTriggerRoot","_Component","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","key","value","getSingleDateInputProps","_this$asProps","asProps","children","id","role","ariaHasPopup","ariaLabel","otherProps","_objectWithoutProperties","_excluded","_objectSpread","inputId","getDateRangeProps","_this$asProps2","_excluded2","render","_ref","_ref8","SInputTrigger","_this$asProps3","Children","getI18nText","createElement","cn","_assignProps","_defineProperty","duration","popoverVisible","SingleDateInputRoot","_Component2","_super2","_this","_len","length","args","Array","_key","call","concat","_assertThisInitialized","errorText","showError","focused","setState","disabledDateInputAttempt","handlers","uncontrolledProps","_this2","date","state","disabledErrorText","undefined","parts","getMaskedInputProps","_this$asProps4","onChange","onDisplayedPeriodChange","locale","w","_excluded3","onDateChange","onMaskPipeBlock","handleInputMaskPipeBlock","_ref2","_ref9","_this$asProps5","forwardRef","styles","showErrorProps","_this$state","showErrorState","SSingleDateInput","_assignProps2","handleFocus","handleBlur","Fragment","SingleDateInput","Indicator","MaskedInput","defaultDisabledDateInputAttempt","DateRangeRoot","_Component3","_super3","_this3","_len2","_key2","containerFocused","lastChangedInput","createRef","event","_this3$asProps$value$","_this3$asProps$value","_this3$asProps$value$2","_this3$asProps$value2","prevValue","toRef","current","focus","setTimeout","setSelectionRange","_this3$asProps$value$3","_this3$asProps$value3","_this3$asProps$value$4","_this3$asProps$value4","fromRef","selectionStart","selectionEnd","disabledDates","invalid","some","unit","invalidValue","_this4","getFromMaskedInputProps","_this$asProps6","_excluded4","ref","handleFromChange","onKeyDown","handleFromKeydown","flex","getToMaskedInputProps","_this$asProps7","_excluded5","handleToChange","handleToKeydown","getRangeSepProps","fulfilled","componentDidUpdate","prevProps","updateDisabledDateInputAttempt","componentDidMount","_ref3","_ref10","SDateRange","_this$asProps8","_this$state2","_assignProps3","DateRange","FromMaskedInput","RangeSep","ToMaskedInput","props","_ref4","arguments[0]","_ref11","SFromMaskedInput","_assignProps4","_ref5","_ref12","SToMaskedInput","_assignProps5","_ref6","_ref13","SIndicator","Addon","_assignProps6","_ref7","_ref14","SRangeSep","_assignProps7","_ref16","_ref15","outerValue","_ref16$parts","allowedParts","providedPlaceholders","placeholders","_ref16$labelPrefix","labelPrefix","animationsDisabled","_ref16$inputRole","inputRole","__excludeProps","_root","_excluded6","useRef","_React$useState","useState","_React$useState2","_slicedToArray","width","setWidth","useMemo","console","error","Error","_React$useMemo","_sep","options","dateTimeFormat","Intl","DateTimeFormat","sep","order","formatToParts","_iterator","_createForOfIteratorHelper","_step","s","n","done","part","type","includes","push","err","e","f","outer","outerDate","validDate","Number","isNaN","getTime","getFullYear","toString","padStart","getMonth","getDate","stringifyValue","useCallback","result","_iterator2","_step2","join","_React$useState3","_React$useState4","internalValue","setInternalValue","lastKnownOuterValue","useEffect","_lastKnownOuterValue$","_lastKnownOuterValue$2","_lastKnownOuterValue$3","pipeMask","placeholdersOnly","i","getOffsetTo","partName","partsBefore","slice","indexOf","offset","_iterator3","_step3","indexesOfPipedChars","parsed","split","parseInt","map","char","yearFulfilled","monthFulfilled","dayFulfilled","yearParsed","monthParsed","dayParsed","setFullYear","_iterator4","_step4","handleChange","setMonth","mask","_iterator5","_step5","aliases","_ref17","maskOnlySymbols","_ref18","humanizedDate","format","stringsToMeasure","widths","measureSpan","document","computedStyle","window","getComputedStyle","typographyRelatedStyles","_i2","_typographyRelatedSty","position","visibility","body","appendChild","_i3","_stringsToMeasure","string","innerHTML","offsetWidth","remove","maxWidth","Math","max","SHumanizedDate","handleInputRef","node","tagName","_React$useState5","_React$useState6","appliedWidth","setAppliedWidth","_React$useState7","_React$useState8","innerFocused","setInnerFocused","_otherProps$onFocus","onFocus","_otherProps$onBlur","onBlur","Value","_extends","title","placeholder","inputW","wMin","pipe","noHumanizedDate","inputMode","InputTrigger"],"sources":["../../../src/components/InputTrigger.jsx"],"sourcesContent":["import React from 'react';\nimport BaseTrigger from '@semcore/base-trigger';\nimport InputMask from '@semcore/input-mask';\nimport Tooltip from '@semcore/tooltip';\nimport { Flex, Box } from '@semcore/flex-box';\nimport Calendar from '@semcore/icon/Calendar/m';\nimport createComponent, { Root, sstyled, Component } from '@semcore/core';\nimport NeighborLocation from '@semcore/neighbor-location';\nimport { datesIntersects } from '../utils/datesIntersects';\nimport { includesDate } from '../utils/includesDate';\nimport dayjs from 'dayjs';\nimport useEnhancedEffect from '@semcore/utils/lib/use/useEnhancedEffect';\n\nimport style from '../style/date-picker.shadow.css';\nimport assignProps from '@semcore/utils/lib/assignProps';\n\nconst defaultAllowedParts = { year: true, month: true, day: true };\nconst exampleDate = new Date(2000, 4, 29);\n\nclass InputTriggerRoot extends Component {\n static displayName = 'InputTrigger';\n static style = style;\n static defaultProps = {\n duration: 300,\n popoverVisible: true,\n };\n\n getSingleDateInputProps() {\n const {\n children,\n id,\n role,\n 'aria-haspopup': ariaHasPopup,\n // 'aria-expanded': ariaExpanded,\n 'aria-label': ariaLabel,\n style,\n ...otherProps\n } = this.asProps;\n return { ...otherProps, ariaHasPopup, inputId: id };\n }\n getDateRangeProps() {\n const {\n children,\n id,\n role,\n 'aria-haspopup': ariaHasPopup,\n 'aria-label': ariaLabel,\n // 'aria-expanded': ariaExpanded,\n style,\n ...otherProps\n } = this.asProps;\n return { ...otherProps, ariaHasPopup, inputId: id };\n }\n\n render() {\n const SInputTrigger = Root;\n const { Children, style, getI18nText } = this.asProps;\n\n return sstyled(style)(\n <SInputTrigger\n render={Box}\n aria-label={getI18nText('input')}\n __excludeProps={['onChange', 'value', 'role', 'id']}\n >\n <Children />\n </SInputTrigger>,\n );\n }\n}\n\nclass SingleDateInputRoot extends Component {\n static displayName = 'SingleDateInput';\n static style = style;\n static defaultProps = {\n children: () => (\n <>\n <SingleDateInput.Indicator />\n <SingleDateInput.MaskedInput />\n </>\n ),\n defaultDisabledDateInputAttempt: false,\n showError: true,\n };\n state = {\n errorText: null,\n showError: false,\n focused: false,\n };\n uncontrolledProps() {\n return {\n disabledDateInputAttempt: [\n null,\n (date) => {\n let errorText = this.state.errorText;\n let showError = false;\n if (date !== null) {\n errorText = this.asProps.disabledErrorText;\n if (errorText === undefined) {\n let key = 'unavailableDate';\n if (this.asProps.parts && !this.asProps.parts.day) {\n key = 'unavailableMonth';\n }\n errorText = this.asProps.getI18nText(key);\n }\n if (typeof errorText === 'function') {\n errorText = errorText(date);\n }\n showError = this.asProps.disabledErrorText !== null;\n }\n this.setState({ errorText, showError });\n },\n ],\n };\n }\n\n handleFocus = () => {\n this.setState({ focused: true });\n };\n\n handleBlur = () => {\n this.setState({ focused: false });\n };\n\n handleInputMaskPipeBlock = (value) => {\n if (value === this.asProps.disabledDateInputAttempt) return;\n this.handlers.disabledDateInputAttempt(value);\n };\n\n getMaskedInputProps() {\n const {\n value,\n onChange,\n onDisplayedPeriodChange,\n locale,\n w,\n ariaHasPopup,\n showError,\n ...otherProps\n } = this.asProps;\n\n return {\n date: value,\n onDateChange: onChange,\n onDisplayedPeriodChange,\n locale,\n 'aria-haspopup': 'true',\n onMaskPipeBlock: this.handleInputMaskPipeBlock,\n ...otherProps,\n };\n }\n\n render() {\n const {\n Children,\n forwardRef,\n styles,\n state,\n showError: showErrorProps,\n popoverVisible,\n } = this.asProps;\n const { errorText, showError: showErrorState, focused } = this.state;\n const showError = showErrorState && showErrorProps;\n const SSingleDateInput = Root;\n\n return sstyled(styles)(\n <SSingleDateInput\n render={InputMask}\n tag={Tooltip}\n placement='top-start'\n title={errorText}\n theme='warning'\n visible={showError && (popoverVisible || focused)}\n state={showError ? 'invalid' : state}\n ref={forwardRef}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n __excludeProps={['onChange', 'style', 'aria-expanded']}\n >\n <NeighborLocation>\n <Children />\n </NeighborLocation>\n </SSingleDateInput>,\n );\n }\n}\nclass DateRangeRoot extends Component {\n static displayName = 'DateRange';\n static style = style;\n static defaultProps = {\n children: () => (\n <>\n <DateRange.Indicator />\n <DateRange.FromMaskedInput />\n <DateRange.RangeSep />\n <DateRange.ToMaskedInput />\n </>\n ),\n defaultDisabledDateInputAttempt: false,\n showError: true,\n };\n state = {\n containerFocused: false,\n errorText: null,\n showError: false,\n lastChangedInput: 'from',\n };\n uncontrolledProps() {\n return {\n disabledDateInputAttempt: [\n null,\n (date) => {\n let errorText = this.state.errorText;\n let showError = false;\n if (date !== null) {\n errorText = this.asProps.disabledErrorText;\n if (errorText === undefined) {\n let key = 'unavailableDate';\n if (this.asProps.parts && !this.asProps.parts.day) {\n key = 'unavailableMonth';\n }\n if (this.state.lastChangedInput === 'to') {\n key = 'unavailableEndDate';\n if (this.asProps.parts && !this.asProps.parts.day) {\n key = 'unavailableEndMonth';\n }\n }\n errorText = this.asProps.getI18nText(key);\n }\n if (typeof errorText === 'function') {\n errorText = errorText(date);\n }\n showError = this.asProps.disabledErrorText !== null;\n }\n this.setState({ errorText, showError });\n },\n ],\n };\n }\n\n fromRef = React.createRef();\n toRef = React.createRef();\n\n handleFromChange = (value, event) => {\n const { onChange } = this.asProps;\n const prevValue = [this.asProps.value?.[0] ?? null, this.asProps.value?.[1] ?? null];\n onChange([value, prevValue[1]], event);\n if (value) {\n if (!this.toRef.current) return;\n this.toRef.current.focus();\n setTimeout(() => {\n if (!this.toRef.current) return;\n this.toRef.current.setSelectionRange(0, 0);\n }, 0);\n }\n };\n handleToChange = (value, event) => {\n const { onChange } = this.asProps;\n const prevValue = [this.asProps.value?.[0] ?? null, this.asProps.value?.[1] ?? null];\n onChange([prevValue[0], value], event);\n };\n handleFromKeydown = (event) => {\n if (!this.toRef.current) return;\n if (!this.fromRef.current) return;\n this.setState({ lastChangedInput: 'from' });\n\n if (\n event.key === 'ArrowRight' &&\n this.fromRef.current.selectionStart === this.fromRef.current.value.length &&\n this.fromRef.current.selectionEnd === this.fromRef.current.value.length\n ) {\n this.toRef.current.focus();\n setTimeout(() => {\n this.toRef.current.setSelectionRange(0, 0);\n }, 0);\n }\n };\n handleToKeydown = (event) => {\n if (!this.toRef.current) return;\n if (!this.fromRef.current) return;\n this.setState({ lastChangedInput: 'to' });\n\n if (event.key === 'Backspace' && !this.toRef.current.value) {\n const value = this.fromRef.current.value;\n this.fromRef.current.focus();\n setTimeout(() => {\n this.fromRef.current.setSelectionRange(value.length, value.length);\n }, 0);\n }\n if (\n event.key === 'ArrowLeft' &&\n this.toRef.current.selectionStart === 0 &&\n this.toRef.current.selectionEnd === 0\n ) {\n const value = this.fromRef.current.value;\n this.fromRef.current.focus();\n setTimeout(() => {\n this.fromRef.current.setSelectionRange(value.length, value.length);\n }, 0);\n }\n };\n handleInputMaskPipeBlock = (value) => {\n if (value === this.asProps.disabledDateInputAttempt) return;\n this.handlers.disabledDateInputAttempt(value);\n };\n\n getFromMaskedInputProps() {\n const { value, locale, onDisplayedPeriodChange, ariaHasPopup, showError, ...otherProps } =\n this.asProps;\n\n return assignProps(\n {\n ref: this.fromRef,\n date: value?.[0],\n onDateChange: this.handleFromChange,\n onKeyDown: this.handleFromKeydown,\n locale,\n flex: 1,\n onDisplayedPeriodChange,\n 'aria-haspopup': ariaHasPopup,\n onMaskPipeBlock: this.handleInputMaskPipeBlock,\n containerFocused: this.state.containerFocused,\n },\n otherProps,\n );\n }\n getToMaskedInputProps() {\n const {\n value,\n locale,\n onDisplayedPeriodChange,\n ariaHasPopup,\n inputId,\n showError,\n ...otherProps\n } = this.asProps;\n const ariaLabel = this.asProps.getI18nText('toDate', {\n date: this.asProps.getI18nText('input'),\n });\n\n return assignProps(\n {\n ref: this.toRef,\n date: value?.[1],\n onDateChange: this.handleToChange,\n onKeyDown: this.handleToKeydown,\n locale,\n flex: 1,\n onDisplayedPeriodChange,\n 'aria-label': ariaLabel,\n 'aria-haspopup': ariaHasPopup,\n onMaskPipeBlock: this.handleInputMaskPipeBlock,\n containerFocused: this.state.containerFocused,\n },\n otherProps,\n );\n }\n getRangeSepProps() {\n const { value } = this.asProps;\n\n return {\n fulfilled: !!(value && (value[0] || value[1])),\n };\n }\n handleFocus = () => {\n this.setState({ containerFocused: true });\n };\n handleBlur = () => {\n this.setState({ containerFocused: false });\n };\n\n updateDisabledDateInputAttempt = (value) => {\n const { disabledDates } = this.asProps;\n\n let invalid = false;\n if (value) {\n if (value[0] && value[1])\n invalid = disabledDates.some(datesIntersects([value[0], value[1]], this.asProps.unit));\n else if (value[0])\n invalid = disabledDates.some(includesDate(dayjs(value[0]), this.asProps.unit));\n else if (value[1])\n invalid = disabledDates.some(includesDate(dayjs(value[1]), this.asProps.unit));\n }\n\n if (invalid) {\n const invalidValue = this.state.lastChangedInput === 'to' ? value[1] : value[0];\n setTimeout(() => {\n if (value === this.asProps.disabledDateInputAttempt) return;\n this.handlers.disabledDateInputAttempt(invalidValue);\n }, 0);\n }\n };\n\n componentDidUpdate(prevProps) {\n if (prevProps.value !== this.asProps.value) {\n this.updateDisabledDateInputAttempt(this.asProps.value);\n }\n }\n\n componentDidMount() {\n this.updateDisabledDateInputAttempt(this.asProps.value);\n }\n\n render() {\n const SDateRange = Root;\n const { Children, styles, w, state, showError: showErrorProps, popoverVisible } = this.asProps;\n const { errorText, lastChangedInput, showError: showErrorState, containerFocused } = this.state;\n const showError = showErrorState && showErrorProps;\n\n return sstyled(styles)(\n <SDateRange\n render={InputMask}\n tag={Tooltip}\n ignorePortalsStacking\n placement={lastChangedInput === 'to' ? 'top-end' : 'top-start'}\n title={errorText}\n theme='warning'\n visible={showError && (popoverVisible || containerFocused)}\n state={showError ? 'invalid' : state}\n __excludeProps={['onChange', 'value', 'aria-expanded']}\n w={w}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n >\n <Children />\n </SDateRange>,\n );\n }\n}\n\nconst FromMaskedInput = (props) => {\n const SFromMaskedInput = Root;\n const { getI18nText } = props;\n\n return sstyled(props.styles)(\n <SFromMaskedInput labelPrefix={getI18nText('fromDatePlaceholder')} render={MaskedInput} />,\n );\n};\n\nconst ToMaskedInput = (props) => {\n const SToMaskedInput = Root;\n const { getI18nText } = props;\n\n return sstyled(props.styles)(\n <SToMaskedInput labelPrefix={getI18nText('toDatePlaceholder')} render={MaskedInput} />,\n );\n};\n\nconst Indicator = (props) => {\n const SIndicator = Root;\n\n return sstyled(props.styles)(\n <SIndicator render={InputMask.Addon} tag={Calendar} aria-hidden='true' tabIndex={-1} />,\n );\n};\n\nconst RangeSep = (props) => {\n const SRangeSep = Root;\n\n return sstyled(props.styles)(\n <SRangeSep\n render={InputMask.Addon}\n tag={Flex}\n alignItems='center'\n justifyContent='center'\n pl={0}\n flex='0'\n >\n –\n </SRangeSep>,\n );\n};\n\nconst MaskedInput = ({\n date: outerValue,\n onDateChange,\n onDisplayedPeriodChange,\n locale,\n styles,\n parts: allowedParts = defaultAllowedParts,\n disabledDates,\n forwardRef,\n placeholders: providedPlaceholders,\n labelPrefix = 'Date',\n onMaskPipeBlock,\n containerFocused,\n animationsDisabled,\n getI18nText,\n inputId,\n inputRole = 'combobox',\n\n __excludeProps,\n\n Root: _root,\n ...otherProps\n}) => {\n const ref = React.useRef();\n const [width, setWidth] = React.useState(undefined);\n\n const placeholders = React.useMemo(() => {\n if (providedPlaceholders) return providedPlaceholders;\n\n return {\n year: getI18nText('placeholder-years'),\n month: getI18nText('placeholder-months'),\n day: getI18nText('placeholder-days'),\n };\n }, [providedPlaceholders, getI18nText]);\n\n if (\n placeholders.year.length !== 1 ||\n placeholders.month.length !== 1 ||\n placeholders.day.length !== 1\n ) {\n console.error({ placeholders });\n throw new Error(\n `InputTrigger placeholder prop should contain fields year, month and day each one with string value of single character length. [see above what was received] (${placeholders})`,\n placeholders,\n );\n }\n\n const { sep, order } = React.useMemo(() => {\n const options = { year: 'numeric', month: 'numeric', day: 'numeric' };\n const dateTimeFormat = new Intl.DateTimeFormat(locale, options);\n\n let sep = undefined;\n const order = [];\n const parts = dateTimeFormat.formatToParts(exampleDate);\n for (const part of parts) {\n if (!sep && part.type === 'literal') {\n sep = part.value;\n }\n if (\n order.length < 3 &&\n ['day', 'month', 'year'].includes(part.type) &&\n allowedParts[part.type]\n ) {\n order.push(part.type);\n }\n }\n sep = sep ?? ' ';\n\n return { sep, order };\n }, [locale, allowedParts]);\n\n const outer = React.useMemo(() => {\n let outerDate = outerValue;\n if (typeof outerValue === 'number' || typeof outerValue === 'string') {\n outerDate = new Date(outerValue);\n }\n const validDate = outerDate && outerDate instanceof Date && !Number.isNaN(outerDate.getTime());\n if (!validDate) return null;\n\n return {\n year: outerDate.getFullYear().toString().padStart(4, '0'),\n month: (outerDate.getMonth() + 1).toString().padStart(2, '0'),\n day: outerDate.getDate().toString().padStart(2, '0'),\n };\n }, [outerValue]);\n const stringifyValue = React.useCallback(\n (value) => {\n if (!value) return null;\n if (!value.year && !value.month && !value.day) return null;\n\n const result = [];\n for (const part of order) {\n if (!allowedParts[part]) continue;\n if (part === 'year' && value.year) result.push(value.year);\n if (part === 'month' && value.month) result.push(value.month);\n if (part === 'day' && value.day) result.push(value.day);\n }\n return result.join(sep);\n },\n [order, allowedParts],\n );\n\n const [internalValue, setInternalValue] = React.useState(outer);\n const value = React.useMemo(() => stringifyValue(internalValue), [stringifyValue, internalValue]);\n\n const lastKnownOuterValue = React.useRef(outer);\n React.useEffect(() => {\n if (\n lastKnownOuterValue.current?.day !== outer?.day ||\n lastKnownOuterValue.current?.month !== outer?.month ||\n lastKnownOuterValue.current?.year !== outer?.year\n ) {\n setInternalValue(outer);\n }\n lastKnownOuterValue.current = outer;\n }, [outer, setInternalValue]);\n\n const pipeMask = React.useCallback(\n (value) => {\n let placeholdersOnly = true;\n for (let i = 0; i < value.length; i++) {\n if (value[i] !== '_' && value[i] !== sep) {\n placeholdersOnly = false;\n break;\n }\n }\n\n if (placeholdersOnly) {\n onMaskPipeBlock?.(null);\n return '';\n }\n\n const getOffsetTo = (partName) => {\n const partsBefore = order.slice(0, order.indexOf(partName));\n let offset = 0;\n for (const part of partsBefore) {\n if (part === 'year' && allowedParts.year) offset += 4;\n if (part === 'month' && allowedParts.month) offset += 2;\n if (part === 'day' && allowedParts.day) offset += 2;\n }\n offset += partsBefore.length * sep.length;\n return offset;\n };\n\n const indexesOfPipedChars = [];\n const parsed = {};\n const parts = value.split(sep);\n for (const partName in placeholders) {\n parsed[partName] = placeholders[partName];\n }\n for (let i = 0; i < order.length; i++) {\n parsed[order[i]] = parts[i];\n }\n\n let { year, month, day } = parsed;\n\n if (allowedParts.month) {\n if (month[0] !== '_' && parseInt(month[0], 10) > 1) {\n month = `0${month[0]}`;\n indexesOfPipedChars.push(getOffsetTo('month'));\n }\n if (month === '00') month = '01';\n if (month[0] !== '_' && month[1] !== '_' && parseInt(month, 10) > 12) return false;\n }\n if (allowedParts.day) {\n if (day[0] !== '_' && parseInt(day[0], 10) > 3) {\n day = `0${day[0]}`;\n indexesOfPipedChars.push(getOffsetTo('day'));\n }\n if (day === '00') day = '01';\n if (day[0] !== '_' && day[1] !== '_' && parseInt(day, 10) > 31) return false;\n }\n\n year = year\n .split('')\n .map((char) => (char === '_' ? placeholders.year : char))\n .join('');\n month = month\n .split('')\n .map((char) => (char === '_' ? placeholders.month : char))\n .join('');\n day = day\n .split('')\n .map((char) => (char === '_' ? placeholders.day : char))\n .join('');\n\n const yearFulfilled =\n !allowedParts.year || (year && year.length >= 4 && !year.includes(placeholders.year));\n const monthFulfilled =\n !allowedParts.month || (month && month.length === 2 && !month.includes(placeholders.month));\n const dayFulfilled =\n !allowedParts.day || (day && day.length === 2 && !day.includes(placeholders.day));\n const fulfilled = yearFulfilled && monthFulfilled && dayFulfilled;\n\n if (fulfilled) {\n const date = new Date(0, 0, 0, 0, 0, 0, 0);\n const yearParsed = allowedParts.year ? parseInt(year, 10) : 0;\n const monthParsed = allowedParts.month ? parseInt(month, 10) - 1 : 0;\n const dayParsed = allowedParts.day ? parseInt(day, 10) : 1;\n\n date.setFullYear(yearParsed, monthParsed, dayParsed);\n\n if (disabledDates?.some(includesDate(dayjs(date), 'date'))) {\n onMaskPipeBlock?.(date);\n return false;\n }\n\n if (allowedParts.day) {\n if (date.getDate() !== parseInt(day, 10)) {\n onMaskPipeBlock?.(date);\n return false;\n }\n }\n }\n\n const result = [];\n for (const part of order) {\n if (part === 'year') result.push(year);\n if (part === 'month') result.push(month);\n if (part === 'day') result.push(day);\n }\n\n onMaskPipeBlock?.(null);\n return { value: result.join(sep), indexesOfPipedChars };\n },\n [placeholders, sep, order, allowedParts, disabledDates, onMaskPipeBlock],\n );\n\n const handleChange = React.useCallback(\n (value) => {\n const parsed = {};\n for (const partName in placeholders) {\n parsed[partName] = placeholders[partName];\n }\n const parts = value.split(sep);\n for (let i = 0; i < order.length; i++) {\n parsed[order[i]] = parts[i];\n }\n const { year, month, day } = parsed;\n setInternalValue({ year, month, day });\n\n const yearFulfilled =\n !allowedParts.year || (year && year.length >= 4 && !year.includes(placeholders.year));\n const monthFulfilled =\n !allowedParts.month || (month && month.length === 2 && !month.includes(placeholders.month));\n const dayFulfilled =\n !allowedParts.day || (day && day.length === 2 && !day.includes(placeholders.day));\n const fulfilled = yearFulfilled && monthFulfilled && dayFulfilled;\n if (fulfilled) {\n const date = new Date(0, 0, 0, 0, 0, 0, 0);\n const yearParsed = allowedParts.year ? parseInt(year, 10) : 0;\n const monthParsed = allowedParts.month ? parseInt(month, 10) - 1 : 0;\n const dayParsed = allowedParts.day ? parseInt(day, 10) : 1;\n\n date.setFullYear(yearParsed, monthParsed, dayParsed);\n\n onDateChange(date);\n lastKnownOuterValue.current = { year, month, day };\n return;\n }\n\n if (lastKnownOuterValue.current !== null) {\n onDateChange(null);\n lastKnownOuterValue.current = null;\n }\n\n if (yearFulfilled && allowedParts.year) {\n const date = new Date(0, 0, 0, 0, 0, 0, 0);\n date.setFullYear(parseInt(year, 10));\n if (monthFulfilled && allowedParts.month) {\n date.setMonth(parseInt(month, 10) - 1);\n }\n onDisplayedPeriodChange(date);\n }\n },\n [onDateChange, setInternalValue, placeholders, onDisplayedPeriodChange, order, allowedParts],\n );\n\n const mask = React.useMemo(() => {\n const result = [];\n for (const part of order) {\n if (part === 'year')\n result.push(placeholders.year + placeholders.year + placeholders.year + placeholders.year);\n if (part === 'month') result.push(placeholders.month + placeholders.month);\n if (part === 'day') result.push(placeholders.day + placeholders.day);\n }\n return result.join(sep);\n }, [sep, order, placeholders]);\n const aliases = React.useMemo(\n () => ({\n [placeholders.year]: /\\d/,\n [placeholders.month]: /\\d/,\n [placeholders.day]: /\\d/,\n }),\n [placeholders],\n );\n const maskOnlySymbols = React.useMemo(\n () => ({\n [placeholders.year]: true,\n [placeholders.month]: true,\n [placeholders.day]: true,\n [sep]: true,\n }),\n [sep, placeholders],\n );\n const humanizedDate = React.useMemo(() => {\n let outerDate = outerValue;\n if (typeof outerValue === 'number' || typeof outerValue === 'string') {\n outerDate = new Date(outerValue);\n }\n const validDate = outerDate && outerDate instanceof Date && !Number.isNaN(outerDate.getTime());\n if (!validDate) return null;\n\n return new Intl.DateTimeFormat(locale, {\n year: allowedParts.year ? 'numeric' : undefined,\n month: allowedParts.month ? 'short' : undefined,\n day: allowedParts.day ? 'numeric' : undefined,\n }).format(outerDate);\n }, [outerValue, locale, allowedParts]);\n\n useEnhancedEffect(() => {\n if (!ref.current) return;\n const stringsToMeasure = humanizedDate ? [humanizedDate, mask] : [mask];\n const widths = [];\n const measureSpan = document.createElement('span');\n const computedStyle = window.getComputedStyle(ref.current);\n const typographyRelatedStyles = [\n 'height',\n 'font-size',\n 'font-family',\n 'font-weight',\n 'font-style',\n 'line-height',\n 'letter-spacing',\n 'text-transform',\n 'word-spacing',\n ];\n for (const style of typographyRelatedStyles) {\n measureSpan.style[style] = computedStyle[style];\n }\n measureSpan.style.position = 'absolute';\n measureSpan.style.visibility = 'hidden';\n document.body.appendChild(measureSpan);\n for (const string of stringsToMeasure) {\n measureSpan.innerHTML = string;\n widths.push(measureSpan.offsetWidth);\n }\n measureSpan.remove();\n const maxWidth = Math.max(...widths);\n setWidth(maxWidth);\n }, [locale, humanizedDate, allowedParts, mask]);\n\n const SHumanizedDate = 'div';\n const handleInputRef = React.useCallback(\n (node) => {\n ref.current = node;\n if (!node || node.tagName !== 'INPUT') return;\n if (typeof forwardRef === 'function') forwardRef(node);\n else forwardRef.current = node;\n },\n [forwardRef],\n );\n\n const [appliedWidth, setAppliedWidth] = React.useState(width);\n const [innerFocused, setInnerFocused] = React.useState(false);\n const focused = containerFocused ?? innerFocused;\n const handleFocus = React.useCallback((event) => {\n otherProps.onFocus?.(event);\n setInnerFocused(true);\n }, []);\n const handleBlur = React.useCallback((event) => {\n otherProps.onBlur?.(event);\n setInnerFocused(false);\n }, []);\n useEnhancedEffect(() => {\n if (focused) return;\n setAppliedWidth(width);\n }, [width, focused]);\n\n return sstyled(styles)(\n <InputMask.Value\n aria-label={labelPrefix}\n title={mask}\n mask={mask}\n aliases={aliases}\n maskOnlySymbols={maskOnlySymbols}\n placeholder={mask}\n inputW={appliedWidth}\n wMin={appliedWidth}\n id={inputId}\n {...otherProps}\n onFocus={handleFocus}\n onBlur={handleBlur}\n focused={focused}\n ref={handleInputRef}\n pipe={pipeMask}\n value={value ?? ''}\n onChange={handleChange}\n noHumanizedDate={!humanizedDate}\n animationsDisabled={animationsDisabled}\n inputRole={inputRole}\n inputMode={'numeric'}\n >\n {humanizedDate && <SHumanizedDate>{humanizedDate}</SHumanizedDate>}\n </InputMask.Value>,\n );\n};\n\nconst SingleDateInput = createComponent(SingleDateInputRoot, {\n Indicator,\n MaskedInput,\n});\nconst DateRange = createComponent(DateRangeRoot, {\n Indicator,\n RangeSep,\n FromMaskedInput,\n ToMaskedInput,\n});\n\nconst InputTrigger = createComponent(InputTriggerRoot, {\n Addon: BaseTrigger.Addon,\n SingleDateInput,\n DateRange,\n});\n\nexport default InputTrigger;\n"],"mappings":"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"}
|
|
@@ -1,81 +1,82 @@
|
|
|
1
1
|
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
2
2
|
import _createClass from "@babel/runtime/helpers/createClass";
|
|
3
|
-
import
|
|
3
|
+
import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
|
|
4
4
|
import _inherits from "@babel/runtime/helpers/inherits";
|
|
5
|
+
import _createSuper from "@babel/runtime/helpers/createSuper";
|
|
5
6
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
6
|
-
import { sstyled as _sstyled } from "@semcore/core";
|
|
7
|
+
import { sstyled as _sstyled } from "@semcore/utils/lib/core/index";
|
|
7
8
|
import { assignProps as _assignProps } from "@semcore/core";
|
|
9
|
+
import React from 'react';
|
|
10
|
+
import dayjs from 'dayjs';
|
|
8
11
|
import { Component, Root, CORE_INSTANCE, sstyled } from '@semcore/core';
|
|
9
|
-
import i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';
|
|
10
12
|
import Dropdown from '@semcore/dropdown';
|
|
11
|
-
import
|
|
12
|
-
import
|
|
13
|
+
import i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';
|
|
14
|
+
import { localizedMessages } from '../translations/__intergalactic-dynamic-locales';
|
|
13
15
|
/*!__reshadow-styles__:"../style/date-picker.shadow.css"*/
|
|
14
|
-
var style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".
|
|
16
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SPopper_ylan0_gg_{padding:var(--intergalactic-spacing-4x, 16px);outline:0}.___SPopper_ylan0_gg_::-moz-focus-inner{border:0;padding:0}.___SPopper_ylan0_gg_:active,.___SPopper_ylan0_gg_:focus{outline:0;-webkit-text-decoration:none;text-decoration:none}@media (hover:hover){.___SPopper_ylan0_gg_:hover{outline:0;-webkit-text-decoration:none;text-decoration:none}}.___SPopper_ylan0_gg_:focus{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 33, 220, 0.469))}@supports (color:color(display-p3 0 0 0)){.___SPopper_ylan0_gg_:focus{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 33, 220, 0.469))}@media (color-gamut:p3){.___SPopper_ylan0_gg_:focus{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px color(display-p3 0.03256 0.12227 0.83249 / 0.469))}}}.___SHeader_ylan0_gg_,.___STitle_ylan0_gg_{display:flex;align-items:center}.___STitle_ylan0_gg_{font-size:var(--intergalactic-fs-200, 14px);color:var(--intergalactic-text-primary, rgba(1, 5, 0, 0.899));height:32px;width:100%;justify-content:center}.___SToday_ylan0_gg_{display:flex;margin-top:var(--intergalactic-spacing-3x, 12px);justify-content:center}.___SPeriod_ylan0_gg_{display:flex;flex-direction:column;margin-bottom:var(--intergalactic-spacing-2x, 8px)}.___SButton_ylan0_gg_ .___SInner_ylan0_gg_{justify-content:flex-start}.___SInputMask_ylan0_gg_{color:var(--intergalactic-text-primary, rgba(1, 5, 0, 0.899));line-height:normal;padding-right:var(--intergalactic-spacing-2x, 8px);transition:width calc(var(--intergalactic-duration-medium, 300)*1ms) ease,min-width calc(var(--intergalactic-duration-medium, 300)*1ms) ease}.___SInputMask_ylan0_gg_.__animationsDisabled_ylan0_gg_{transition:none}.___SInputMask_ylan0_gg_ .___SValue_ylan0_gg_{letter-spacing:0}.___SIndicator_ylan0_gg_{color:var(--intergalactic-text-secondary, rgba(0, 3, 0, 0.583))}@supports (color:color(display-p3 0 0 0)){.___SIndicator_ylan0_gg_{color:var(--intergalactic-text-secondary, rgba(0, 3, 0, 0.583))}@media (color-gamut:p3){.___SIndicator_ylan0_gg_{color:var(--intergalactic-text-secondary, color(display-p3 0.00228 0.01289 0.00252 / 0.583))}}}.___SRangeIndicator_ylan0_gg_{border-radius:50%;flex-shrink:0}.___SRangeIndicator_ylan0_gg_._range_value_ylan0_gg_{background-color:var(--intergalactic-date-picker-cell-active, rgb(118, 128, 231))}.___SRangeIndicator_ylan0_gg_._range_compare_ylan0_gg_{background-color:var(--intergalactic-date-picker-cell-comparison-active, rgb(162, 97, 253))}.___SRangeIndicator_ylan0_gg_.__disabled_ylan0_gg_{opacity:var(--intergalactic-disabled-opacity, 0.4)}.___SHumanizedDate_ylan0_gg_{position:absolute;pointer-events:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.___SMask_ylan0_gg_{letter-spacing:0;white-space:nowrap;overflow:hidden}.___SDateRange_ylan0_gg_ .___SMask_ylan0_gg_,.___SDateRange_ylan0_gg_ .___SValue_ylan0_gg_,.___SSingleDateInput_ylan0_gg_ .___SMask_ylan0_gg_,.___SSingleDateInput_ylan0_gg_ .___SValue_ylan0_gg_{opacity:0}.___SSingleDateInput_ylan0_gg_:focus-within .___SHumanizedDate_ylan0_gg_{opacity:0;z-index:var(--intergalactic-z-index-deep, -999)}.___SSingleDateInput_ylan0_gg_:focus-within .___SMask_ylan0_gg_,.___SSingleDateInput_ylan0_gg_:focus-within .___SValue_ylan0_gg_{opacity:1}.___SDateRange_ylan0_gg_:focus-within .___SHumanizedDate_ylan0_gg_{opacity:0;z-index:var(--intergalactic-z-index-deep, -999)}.___SDateRange_ylan0_gg_:focus-within .___SMask_ylan0_gg_,.___SDateRange_ylan0_gg_:focus-within .___SValue_ylan0_gg_{opacity:1}.___SInputMask_ylan0_gg_.__noHumanizedDate_ylan0_gg_ .___SMask_ylan0_gg_,.___SInputMask_ylan0_gg_.__noHumanizedDate_ylan0_gg_ .___SValue_ylan0_gg_{opacity:1}.___SDateRange_ylan0_gg_ .___SInputMask_ylan0_gg_:focus-within .___SMask_ylan0_gg_{background-color:var(--intergalactic-bg-highlight-focus, rgb(226, 235, 255))}@supports (color:color(display-p3 0 0 0)){.___SDateRange_ylan0_gg_ .___SInputMask_ylan0_gg_:focus-within .___SMask_ylan0_gg_{background-color:var(--intergalactic-bg-highlight-focus, rgb(226, 235, 255))}@media (color-gamut:p3){.___SDateRange_ylan0_gg_ .___SInputMask_ylan0_gg_:focus-within .___SMask_ylan0_gg_{background-color:var(--intergalactic-bg-highlight-focus, color(display-p3 0.89101 0.91919 1))}}}.___SDateRange_ylan0_gg_:focus-within .___SRangeSep_ylan0_gg_,.___SRangeSep_ylan0_gg_.__fulfilled_ylan0_gg_{color:var(--intergalactic-text-primary, rgba(1, 5, 0, 0.899))}.___SRangeComparatorHeader_ylan0_gg_{border-bottom:1px solid var(--intergalactic-border-primary, rgba(0, 12, 8, 0.161));padding:var(--intergalactic-spacing-4x, 16px)}@supports (color:color(display-p3 0 0 0)){.___SRangeComparatorHeader_ylan0_gg_{border-bottom:1px solid var(--intergalactic-border-primary, rgba(0, 12, 8, 0.161))}@media (color-gamut:p3){.___SRangeComparatorHeader_ylan0_gg_{border-bottom:1px solid var(--intergalactic-border-primary, color(display-p3 0.00798 0.04498 0.03219 / 0.161))}}}.___SFooter_ylan0_gg_,.___SRangeCalendar_ylan0_gg_{padding:var(--intergalactic-spacing-4x, 16px)}.___SFooter_ylan0_gg_{border-top:1px solid var(--intergalactic-border-primary, rgba(0, 12, 8, 0.161))}@supports (color:color(display-p3 0 0 0)){.___SFooter_ylan0_gg_{border-top:1px solid var(--intergalactic-border-primary, rgba(0, 12, 8, 0.161))}@media (color-gamut:p3){.___SFooter_ylan0_gg_{border-top:1px solid var(--intergalactic-border-primary, color(display-p3 0.00798 0.04498 0.03219 / 0.161))}}}.___SPeriodsList_ylan0_gg_{padding:var(--intergalactic-spacing-4x, 16px)}.___STooltip_ylan0_gg_{padding:var(--intergalactic-spacing-3x, 12px)}.___SCompareToggle_ylan0_gg_{white-space:nowrap}@media (prefers-reduced-motion){.___SInputMask_ylan0_gg_{transition:none}}", /*__inner_css_end__*/"ylan0_gg_"),
|
|
15
17
|
/*__reshadow_css_end__*/
|
|
16
18
|
{
|
|
17
|
-
"__SHeader": "
|
|
18
|
-
"__STitle": "
|
|
19
|
-
"__SToday": "
|
|
20
|
-
"__SPeriod": "
|
|
21
|
-
"__SButton": "
|
|
22
|
-
"__SInner": "
|
|
23
|
-
"__SInputMask": "
|
|
24
|
-
"_animationsDisabled": "
|
|
25
|
-
"
|
|
26
|
-
"
|
|
27
|
-
"
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
"__SDateRange": "
|
|
35
|
-
"_noHumanizedDate": "
|
|
36
|
-
"__SRangeSep": "
|
|
37
|
-
"_fulfilled": "
|
|
38
|
-
"__SRangeComparatorHeader": "
|
|
39
|
-
"__SRangeCalendar": "
|
|
40
|
-
"__SFooter": "
|
|
41
|
-
"__SPeriodsList": "
|
|
42
|
-
"__STooltip": "
|
|
43
|
-
"__SCompareToggle": "
|
|
44
|
-
"__SPopper": "
|
|
19
|
+
"__SHeader": "___SHeader_ylan0_gg_",
|
|
20
|
+
"__STitle": "___STitle_ylan0_gg_",
|
|
21
|
+
"__SToday": "___SToday_ylan0_gg_",
|
|
22
|
+
"__SPeriod": "___SPeriod_ylan0_gg_",
|
|
23
|
+
"__SButton": "___SButton_ylan0_gg_",
|
|
24
|
+
"__SInner": "___SInner_ylan0_gg_",
|
|
25
|
+
"__SInputMask": "___SInputMask_ylan0_gg_",
|
|
26
|
+
"_animationsDisabled": "__animationsDisabled_ylan0_gg_",
|
|
27
|
+
"__SValue": "___SValue_ylan0_gg_",
|
|
28
|
+
"__SIndicator": "___SIndicator_ylan0_gg_",
|
|
29
|
+
"__SRangeIndicator": "___SRangeIndicator_ylan0_gg_",
|
|
30
|
+
"_range_value": "_range_value_ylan0_gg_",
|
|
31
|
+
"_range_compare": "_range_compare_ylan0_gg_",
|
|
32
|
+
"_disabled": "__disabled_ylan0_gg_",
|
|
33
|
+
"__SHumanizedDate": "___SHumanizedDate_ylan0_gg_",
|
|
34
|
+
"__SMask": "___SMask_ylan0_gg_",
|
|
35
|
+
"__SSingleDateInput": "___SSingleDateInput_ylan0_gg_",
|
|
36
|
+
"__SDateRange": "___SDateRange_ylan0_gg_",
|
|
37
|
+
"_noHumanizedDate": "__noHumanizedDate_ylan0_gg_",
|
|
38
|
+
"__SRangeSep": "___SRangeSep_ylan0_gg_",
|
|
39
|
+
"_fulfilled": "__fulfilled_ylan0_gg_",
|
|
40
|
+
"__SRangeComparatorHeader": "___SRangeComparatorHeader_ylan0_gg_",
|
|
41
|
+
"__SRangeCalendar": "___SRangeCalendar_ylan0_gg_",
|
|
42
|
+
"__SFooter": "___SFooter_ylan0_gg_",
|
|
43
|
+
"__SPeriodsList": "___SPeriodsList_ylan0_gg_",
|
|
44
|
+
"__STooltip": "___STooltip_ylan0_gg_",
|
|
45
|
+
"__SCompareToggle": "___SCompareToggle_ylan0_gg_",
|
|
46
|
+
"__SPopper": "___SPopper_ylan0_gg_"
|
|
45
47
|
});
|
|
46
|
-
import { localizedMessages } from '../translations/__intergalactic-dynamic-locales';
|
|
47
|
-
import { formatDDMMYY, formatMMYY } from '../utils/formatDate';
|
|
48
48
|
import { includesDate } from '../utils/includesDate';
|
|
49
|
+
import { formatDDMMYY, formatMMYY } from '../utils/formatDate';
|
|
49
50
|
var INTERACTION_TAGS = ['INPUT'];
|
|
50
51
|
var INTERACTION_KEYS = ['ArrowDown', 'Enter', ' '];
|
|
51
52
|
var defaultDisplayedPeriod = new Date(new Date().setHours(0, 0, 0, 0));
|
|
52
53
|
var PickerAbstract = /*#__PURE__*/function (_Component) {
|
|
54
|
+
_inherits(PickerAbstract, _Component);
|
|
55
|
+
var _super = _createSuper(PickerAbstract);
|
|
53
56
|
function PickerAbstract() {
|
|
54
57
|
var _this;
|
|
55
58
|
_classCallCheck(this, PickerAbstract);
|
|
56
59
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
57
60
|
args[_key] = arguments[_key];
|
|
58
61
|
}
|
|
59
|
-
_this =
|
|
60
|
-
_defineProperty(_this, "
|
|
61
|
-
_defineProperty(_this, "
|
|
62
|
-
_defineProperty(_this, "
|
|
63
|
-
_defineProperty(_this, "
|
|
64
|
-
_defineProperty(_this, "
|
|
65
|
-
_defineProperty(_this, "
|
|
66
|
-
_defineProperty(_this, "keyStep", void 0);
|
|
67
|
-
_defineProperty(_this, "navigateView", function (direction) {
|
|
62
|
+
_this = _super.call.apply(_super, [this].concat(args));
|
|
63
|
+
_defineProperty(_assertThisInitialized(_this), "popperRef", /*#__PURE__*/React.createRef());
|
|
64
|
+
_defineProperty(_assertThisInitialized(_this), "unitRefs", {});
|
|
65
|
+
_defineProperty(_assertThisInitialized(_this), "navigateStep", void 0);
|
|
66
|
+
_defineProperty(_assertThisInitialized(_this), "keyDiff", void 0);
|
|
67
|
+
_defineProperty(_assertThisInitialized(_this), "keyStep", void 0);
|
|
68
|
+
_defineProperty(_assertThisInitialized(_this), "navigateView", function (direction) {
|
|
68
69
|
var displayedPeriod = _this.asProps.displayedPeriod;
|
|
69
70
|
var action = direction >= 1 ? 'add' : 'subtract';
|
|
70
71
|
var date = dayjs(displayedPeriod)[action](1, _this.navigateStep).toDate();
|
|
71
72
|
_this.handlers.displayedPeriod(date);
|
|
72
73
|
});
|
|
73
|
-
_defineProperty(_this, "bindHandlerNavigateClick", function (direction) {
|
|
74
|
+
_defineProperty(_assertThisInitialized(_this), "bindHandlerNavigateClick", function (direction) {
|
|
74
75
|
return function () {
|
|
75
76
|
_this.navigateView(direction);
|
|
76
77
|
};
|
|
77
78
|
});
|
|
78
|
-
_defineProperty(_this, "handlerKeyDown", function (place) {
|
|
79
|
+
_defineProperty(_assertThisInitialized(_this), "handlerKeyDown", function (place) {
|
|
79
80
|
return function (e) {
|
|
80
81
|
var _this$asProps = _this.asProps,
|
|
81
82
|
value = _this$asProps.value,
|
|
@@ -83,9 +84,7 @@ var PickerAbstract = /*#__PURE__*/function (_Component) {
|
|
|
83
84
|
highlighted = _this$asProps.highlighted,
|
|
84
85
|
_disabled = _this$asProps.disabled,
|
|
85
86
|
visible = _this$asProps.visible;
|
|
86
|
-
var key = e.key
|
|
87
|
-
target = e.target;
|
|
88
|
-
if ([' ', 'Enter'].includes(key) && [_this.prevButtonRef.current, _this.nextButtonRef.current].includes(target)) return;
|
|
87
|
+
var key = e.key;
|
|
89
88
|
if (place === 'trigger' && INTERACTION_KEYS.includes(key)) {
|
|
90
89
|
e.stopPropagation();
|
|
91
90
|
_this.handlers.visible(!visible);
|
|
@@ -100,7 +99,7 @@ var PickerAbstract = /*#__PURE__*/function (_Component) {
|
|
|
100
99
|
var getCurrentHighlightedDay = function getCurrentHighlightedDay(day) {
|
|
101
100
|
return day.toDate();
|
|
102
101
|
};
|
|
103
|
-
if (place === 'popper' && (e.key === ' ' || e.key === 'Enter'
|
|
102
|
+
if (place === 'popper' && (e.key === ' ' || e.key === 'Enter' && highlighted.length)) {
|
|
104
103
|
if (!_this.isDisabled(highlighted[0])) {
|
|
105
104
|
_this.handlers.value(highlighted[0]);
|
|
106
105
|
}
|
|
@@ -117,15 +116,14 @@ var PickerAbstract = /*#__PURE__*/function (_Component) {
|
|
|
117
116
|
e.preventDefault();
|
|
118
117
|
var formatter = _this.keyStep === 'month' ? formatMMYY : formatDDMMYY;
|
|
119
118
|
var formattedDate = formatter(current_day, _this.asProps.locale);
|
|
120
|
-
(_this$unitRefs$format = _this.unitRefs[formattedDate]) === null || _this$unitRefs$format === void 0
|
|
119
|
+
(_this$unitRefs$format = _this.unitRefs[formattedDate]) === null || _this$unitRefs$format === void 0 ? void 0 : _this$unitRefs$format.focus();
|
|
121
120
|
}
|
|
122
121
|
}
|
|
123
122
|
};
|
|
124
123
|
});
|
|
125
124
|
return _this;
|
|
126
125
|
}
|
|
127
|
-
|
|
128
|
-
return _createClass(PickerAbstract, [{
|
|
126
|
+
_createClass(PickerAbstract, [{
|
|
129
127
|
key: "uncontrolledProps",
|
|
130
128
|
value: function uncontrolledProps() {
|
|
131
129
|
var _this2 = this;
|
|
@@ -208,8 +206,7 @@ var PickerAbstract = /*#__PURE__*/function (_Component) {
|
|
|
208
206
|
var getI18nText = this.asProps.getI18nText;
|
|
209
207
|
var navigateStep = this.navigateStep;
|
|
210
208
|
return {
|
|
211
|
-
|
|
212
|
-
'onClick': this.bindHandlerNavigateClick(1),
|
|
209
|
+
onClick: this.bindHandlerNavigateClick(1),
|
|
213
210
|
getI18nText: getI18nText,
|
|
214
211
|
'aria-label': navigateStep === 'month' ? getI18nText('nextMonth') : getI18nText('nextYear')
|
|
215
212
|
};
|
|
@@ -220,8 +217,7 @@ var PickerAbstract = /*#__PURE__*/function (_Component) {
|
|
|
220
217
|
var getI18nText = this.asProps.getI18nText;
|
|
221
218
|
var navigateStep = this.navigateStep;
|
|
222
219
|
return {
|
|
223
|
-
|
|
224
|
-
'onClick': this.bindHandlerNavigateClick(-1),
|
|
220
|
+
onClick: this.bindHandlerNavigateClick(-1),
|
|
225
221
|
getI18nText: getI18nText,
|
|
226
222
|
'aria-label': navigateStep === 'month' ? getI18nText('prevMonth') : getI18nText('prevYear')
|
|
227
223
|
};
|
|
@@ -283,6 +279,7 @@ var PickerAbstract = /*#__PURE__*/function (_Component) {
|
|
|
283
279
|
};
|
|
284
280
|
}
|
|
285
281
|
}]);
|
|
282
|
+
return PickerAbstract;
|
|
286
283
|
}(Component);
|
|
287
284
|
_defineProperty(PickerAbstract, "displayName", 'DatePicker');
|
|
288
285
|
_defineProperty(PickerAbstract, "style", style);
|