@semcore/date-picker 4.35.0 → 4.36.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/lib/cjs/DatePicker.js +2 -0
  3. package/lib/cjs/DatePicker.js.map +1 -1
  4. package/lib/cjs/DateRangePicker.js +2 -0
  5. package/lib/cjs/DateRangePicker.js.map +1 -1
  6. package/lib/cjs/MonthPicker.js +2 -0
  7. package/lib/cjs/MonthPicker.js.map +1 -1
  8. package/lib/cjs/MonthRangePicker.js +2 -0
  9. package/lib/cjs/MonthRangePicker.js.map +1 -1
  10. package/lib/cjs/components/Calendar.js +21 -21
  11. package/lib/cjs/components/DateRangeComparatorAbstract.js +31 -26
  12. package/lib/cjs/components/DateRangeComparatorAbstract.js.map +1 -1
  13. package/lib/cjs/components/InputTrigger.js +200 -73
  14. package/lib/cjs/components/InputTrigger.js.map +1 -1
  15. package/lib/cjs/components/PickerAbstract.js +27 -26
  16. package/lib/cjs/components/PickerAbstract.js.map +1 -1
  17. package/lib/cjs/components/RangePickerAbstract.js +27 -26
  18. package/lib/cjs/components/RangePickerAbstract.js.map +1 -1
  19. package/lib/cjs/index.d.js.map +1 -1
  20. package/lib/cjs/style/date-picker.shadow.css +4 -0
  21. package/lib/cjs/translations/en.json +5 -1
  22. package/lib/es6/DatePicker.js +2 -0
  23. package/lib/es6/DatePicker.js.map +1 -1
  24. package/lib/es6/DateRangePicker.js +2 -0
  25. package/lib/es6/DateRangePicker.js.map +1 -1
  26. package/lib/es6/MonthPicker.js +2 -0
  27. package/lib/es6/MonthPicker.js.map +1 -1
  28. package/lib/es6/MonthRangePicker.js +2 -0
  29. package/lib/es6/MonthRangePicker.js.map +1 -1
  30. package/lib/es6/components/Calendar.js +21 -21
  31. package/lib/es6/components/DateRangeComparatorAbstract.js +31 -26
  32. package/lib/es6/components/DateRangeComparatorAbstract.js.map +1 -1
  33. package/lib/es6/components/InputTrigger.js +200 -73
  34. package/lib/es6/components/InputTrigger.js.map +1 -1
  35. package/lib/es6/components/PickerAbstract.js +27 -26
  36. package/lib/es6/components/PickerAbstract.js.map +1 -1
  37. package/lib/es6/components/RangePickerAbstract.js +27 -26
  38. package/lib/es6/components/RangePickerAbstract.js.map +1 -1
  39. package/lib/es6/index.d.js.map +1 -1
  40. package/lib/es6/style/date-picker.shadow.css +4 -0
  41. package/lib/es6/translations/en.json +5 -1
  42. package/lib/types/index.d.ts +32 -14
  43. package/package.json +13 -13
@@ -1 +1 @@
1
- {"version":3,"file":"DateRangeComparatorAbstract.js","names":["_core","require","_react","_interopRequireDefault","_dayjs","_button","_flexBox","_dropdown","_i18nEnhance","_intergalacticDynamicLocales","_shortDateRangeFormat","_checkbox","_baseTrigger","_formatDate","style","sstyled","insert","INTERACTION_TAGS","INTERACTION_KEYS","defaultDisplayedPeriod","Date","setHours","getLatestDate","_len","arguments","length","dateRanges","Array","_key","allDates","flat","filter","Boolean","date","Number","isNaN","getTime","sort","a","b","latestDate","DateRangeComparatorAbstract","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len2","args","_key2","call","apply","concat","_defineProperty2","_assertThisInitialized2","React","createRef","direction","displayedPeriod","asProps","action","dayjs","navigateStep","toDate","handlers","navigateView","_this$asProps","value","preselectedValue","preselectedCompare","handleApply","compare","visible","place","e","_this$asProps2","focusedRange","key","highlighted","compareHighlighted","includes","stopPropagation","setTimeout","popper","popperRef","current","focus","day","keyDiff","setNextDisplayedPeriod","next_highlighted","_next_highlighted","_slicedToArray2","startPeriod","endPeriod","highlightedPeriod","displayedPeriodNormalized","getDate","highlightedPeriodNormalized","getMonth","getYear","offset","highlightedDate","isDisabled","handleChange","preventDefault","metaKey","ctrlKey","handleApplyClick","changedDate","undefined","target","tagName","add","keyStep","_this$unitRefs$format","formatter","formatMMYY","formatDDMMYY","formattedDate","locale","unitRefs","_value","_value2","_value3","_this$asProps3","isArray","_value4","_value5","_createClass2","getPeriodProps","_this$asProps$value","_this2","_this$asProps4","_this$asProps4$period","periods","getDefaultPeriods","onHighlightedChange","onCompareHighlightedChange","onDisplayedPeriodChange","_this$asProps$value2","onChange","getPrevProps","getI18nText","onClick","bindHandlerNavigateClick","getNextProps","uncontrolledProps","_this3","compareToggle","_this3$asProps","newDisplayedPeriod","_this3$props","props","dates","_date$isValid","isValid","getApplyProps","getResetProps","_this4","today","children","subtract","startOf","getTitleProps","index","_this$asProps5","Intl","DateTimeFormat","month","year","format","getTriggerProps","_ref10","_this$asProps$value3","_this$asProps$value4","_this5","_ref10$placeholder","placeholder","_ref10$separator","separator","_this$asProps6","formattingProps","shortDateRangeFormat","onKeyDown","handleKeydownDown","getRangeInput","Error","getValueDateRangeProps","_this6","_this$asProps7","disabled","size","focused","w","disabledDates","onFocus","getCompareDateRangeProps","_value$compare","_this7","_this$asProps8","getCompareToggleProps","_value$compare2","_this8","_this$asProps9","checked","getCalendarProps","_props","_this$asProps10","range","actionsDescribing","getPopperProps","p","ref","render","_ref","_ref4","_this$asProps11","Children","styles","providedAriaLabel","createElement","Fragment","Dropdown","assignProps","cn","defaultProps","_ref11","primaryRange","defaultPrimaryRange","secondaryRange","defaultSecondaryRange","i18n","localizedMessages","defaultValue","defaultHighlighted","defaultCompareHighlighted","defaultVisible","defaultPreselectedValue","defaultPreselectedCompare","defaultCompareToggle","defaultFocusedRange","Component","i18nEnhance","amount","unit","Apply","_ref2","arguments[0]","Button","Reset","_ref3","Trigger","_ref5","STrigger","Root","LinkTrigger","CompareToggle","_ref6","SCompareToggle","Checkbox","Header","_ref7","SRangeComparatorHeader","Flex","Body","_ref8","SBody","Footer","_ref9","SFooter","_default","exports"],"sources":["../../../src/components/DateRangeComparatorAbstract.jsx"],"sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport Button from '@semcore/button';\nimport { Flex } from '@semcore/flex-box';\nimport Dropdown from '@semcore/dropdown';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { localizedMessages } from '../translations/__intergalactic-dynamic-locales';\nimport shortDateRangeFormat from '../utils/shortDateRangeFormat';\nimport Checkbox from '@semcore/checkbox';\nimport { LinkTrigger } from '@semcore/base-trigger';\nimport { formatDDMMYY, formatMMYY } from '../utils/formatDate';\n\nimport style from '../style/date-picker.shadow.css';\n\nconst INTERACTION_TAGS = ['INPUT'];\nconst INTERACTION_KEYS = ['ArrowDown', 'Enter', ' '];\nconst defaultDisplayedPeriod = new Date(new Date().setHours(0, 0, 0, 0));\n\nconst getLatestDate = (...dateRanges) => {\n const allDates = dateRanges\n .flat()\n .filter(Boolean)\n .filter((date) => !Number.isNaN(new Date(date).getTime()));\n if (!allDates.length) return null;\n\n allDates.sort((a, b) => new Date(b).getTime() - new Date(a).getTime());\n const latestDate = allDates[0];\n\n return latestDate;\n};\n\nclass DateRangeComparatorAbstract extends Component {\n static displayName = 'DateRangeComparator';\n static style = style;\n\n static defaultProps({\n primaryRange,\n defaultPrimaryRange,\n secondaryRange,\n defaultSecondaryRange,\n }) {\n return {\n i18n: localizedMessages,\n locale: 'en',\n defaultValue: null,\n defaultHighlighted: [],\n defaultCompareHighlighted: [],\n defaultDisplayedPeriod:\n getLatestDate(primaryRange, defaultPrimaryRange, secondaryRange, defaultSecondaryRange) ||\n defaultDisplayedPeriod,\n defaultVisible: false,\n defaultPreselectedValue: null,\n defaultPreselectedCompare: null,\n defaultCompareToggle: null,\n defaultFocusedRange: 'value',\n disabled: [],\n size: 'm',\n };\n }\n\n static enhance = [i18nEnhance(localizedMessages)];\n\n static subtract = (date, amount, unit) => {\n return dayjs(date).subtract(amount, unit).toDate();\n };\n\n popperRef = React.createRef();\n unitRefs = {};\n\n getPeriodProps() {\n const {\n periods = this.getDefaultPeriods(),\n onHighlightedChange,\n onCompareHighlightedChange,\n onDisplayedPeriodChange,\n preselectedValue,\n preselectedCompare,\n focusedRange,\n } = this.asProps;\n\n let value = preselectedValue ?? this.asProps.value?.value;\n if (focusedRange === 'compare') {\n value = preselectedCompare ?? this.asProps.value?.compare;\n }\n return {\n periods,\n value,\n onChange: (value) => {\n if (focusedRange === 'compare') {\n this.handlers.preselectedCompare(value);\n } else {\n this.handlers.preselectedValue(value);\n }\n },\n onHighlightedChange:\n focusedRange === 'compare' ? onCompareHighlightedChange : onHighlightedChange,\n onDisplayedPeriodChange,\n };\n }\n\n navigateView = (direction) => {\n const { displayedPeriod } = this.asProps;\n const action = direction >= 1 ? 'add' : 'subtract';\n const date = dayjs(displayedPeriod)[action](1, this.navigateStep).toDate();\n this.handlers.displayedPeriod(date);\n };\n\n bindHandlerNavigateClick = (direction) => () => this.navigateView(direction);\n\n getPrevProps() {\n const { getI18nText } = this.asProps;\n return {\n getI18nText,\n onClick: this.bindHandlerNavigateClick(-1),\n };\n }\n getNextProps() {\n const { getI18nText } = this.asProps;\n return {\n getI18nText,\n onClick: this.bindHandlerNavigateClick(1),\n };\n }\n\n uncontrolledProps() {\n return {\n displayedPeriod: null,\n visible: [\n null,\n (visible) => {\n if (!visible) {\n this.handlers.highlighted([]);\n this.handlers.compareHighlighted([]);\n this.handlers.preselectedValue(undefined);\n this.handlers.preselectedCompare(undefined);\n this.handlers.compareToggle(undefined);\n this.handlers.focusedRange('value');\n }\n\n const { value, displayedPeriod } = this.asProps;\n const newDisplayedPeriod = value ? getLatestDate(value.value, value.compare) : undefined;\n\n if (visible) {\n if (newDisplayedPeriod && newDisplayedPeriod !== displayedPeriod) {\n this.handlers.displayedPeriod(newDisplayedPeriod);\n } else if (!newDisplayedPeriod) {\n const { displayedPeriod, defaultDisplayedPeriod } = this.props;\n this.handlers.displayedPeriod(displayedPeriod || defaultDisplayedPeriod);\n }\n }\n },\n ],\n highlighted: null,\n compareHighlighted: null,\n preselectedValue: null,\n preselectedCompare: null,\n compareToggle: null,\n focusedRange: null,\n value: [\n null,\n (value) => {\n const dates = [value?.value, value?.compare].flat(2).filter((date) => date?.isValid?.());\n if (dates.length > 0) this.handlers.displayedPeriod(getLatestDate(value));\n },\n ],\n };\n }\n\n handleApplyClick = () => {\n const { value, preselectedValue, preselectedCompare } = this.asProps;\n return this.handleApply(preselectedValue ?? value?.value, preselectedCompare ?? value?.compare);\n };\n\n getApplyProps() {\n const { getI18nText } = this.asProps;\n return {\n getI18nText,\n onClick: this.handleApplyClick,\n };\n }\n\n getResetProps() {\n const { getI18nText } = this.asProps;\n return {\n getI18nText,\n onClick: () => this.handleApply(null, null),\n };\n }\n\n handleApply = (value, compare) => {\n this.handlers.value({ value, compare });\n this.handlers.visible(false);\n };\n\n handleKeydownDown = (place) => (e) => {\n const { displayedPeriod, preselectedValue, visible, focusedRange } = this.asProps;\n const key = e.key;\n const highlighted =\n focusedRange === 'compare' ? this.asProps.compareHighlighted : this.asProps.highlighted;\n\n if (place === 'trigger' && INTERACTION_KEYS.includes(key)) {\n e.stopPropagation();\n this.handlers.visible(!visible);\n\n setTimeout(() => {\n const popper = this.popperRef.current;\n\n if (popper) {\n popper.focus();\n }\n }, 0);\n }\n\n const day = this.keyDiff[key];\n\n const setNextDisplayedPeriod = (next_highlighted) => {\n const [startPeriod, endPeriod] = next_highlighted;\n const highlightedPeriod = endPeriod || startPeriod;\n\n let displayedPeriodNormalized = displayedPeriod?.getDate();\n let highlightedPeriodNormalized = highlightedPeriod?.getDate();\n if (this.navigateStep === 'month') {\n displayedPeriodNormalized = displayedPeriod?.getMonth();\n highlightedPeriodNormalized = highlightedPeriod?.getMonth();\n }\n if (this.navigateStep === 'year') {\n displayedPeriodNormalized = displayedPeriod?.getYear();\n highlightedPeriodNormalized = highlightedPeriod?.getYear();\n }\n const offset = highlightedPeriodNormalized - displayedPeriodNormalized;\n\n if (offset < 0 || offset > 1) {\n return highlightedPeriod;\n }\n return displayedPeriod;\n };\n\n if (place === 'popper' && e.key === ' ' && highlighted.length) {\n const highlightedDate = highlighted[1] || highlighted[0];\n\n if (!this.isDisabled(highlightedDate)) {\n this.handleChange(highlightedDate);\n }\n e.preventDefault();\n }\n if (place === 'popper' && e.key === 'Enter' && (e.metaKey || e.ctrlKey)) {\n return this.handleApplyClick();\n }\n let changedDate = undefined;\n if (day) {\n if (INTERACTION_TAGS.includes(e.target.tagName)) return;\n if (highlighted.length) {\n let next_highlighted;\n if (preselectedValue?.length === 1) {\n next_highlighted = [\n preselectedValue[0],\n dayjs(highlighted[1] || highlighted[0])\n .add(day, this.keyStep)\n .toDate(),\n ];\n changedDate = next_highlighted[1];\n } else {\n next_highlighted = [\n dayjs(highlighted[0])\n .add(day, this.keyStep)\n .toDate(),\n ];\n changedDate = next_highlighted[0];\n }\n if (focusedRange === 'compare') {\n this.handlers.compareHighlighted(next_highlighted);\n } else {\n this.handlers.highlighted(next_highlighted);\n }\n this.handlers.displayedPeriod(setNextDisplayedPeriod(next_highlighted));\n } else {\n const highlighted = [displayedPeriod ? displayedPeriod : dayjs().toDate()];\n if (focusedRange === 'compare') {\n this.handlers.compareHighlighted(highlighted);\n } else {\n this.handlers.highlighted(highlighted);\n }\n changedDate = highlighted[0];\n }\n e.preventDefault();\n\n if (changedDate) {\n const formatter = this.keyStep === 'month' ? formatMMYY : formatDDMMYY;\n const formattedDate = formatter(changedDate, this.asProps.locale);\n this.unitRefs[formattedDate]?.focus();\n }\n }\n };\n\n getDefaultPeriods() {\n const { getI18nText } = this.asProps;\n const today = new Date(new Date().setHours(0, 0, 0, 0));\n return [\n {\n children: getI18nText('lastMonth'),\n value: [\n dayjs(today).subtract(1, 'month').startOf('month').toDate(),\n dayjs(today).startOf('month').toDate(),\n ],\n },\n {\n children: getI18nText('last3Months'),\n value: [\n dayjs(today).subtract(2, 'month').startOf('month').toDate(),\n dayjs(today).startOf('month').toDate(),\n ],\n },\n {\n children: getI18nText('last6Months'),\n value: [\n dayjs(today).subtract(5, 'month').startOf('month').toDate(),\n dayjs(today).startOf('month').toDate(),\n ],\n },\n {\n children: getI18nText('last12Months'),\n value: [\n dayjs(today).subtract(11, 'month').startOf('month').toDate(),\n dayjs(today).startOf('month').toDate(),\n ],\n },\n ];\n }\n\n getTitleProps(props, index) {\n const { locale, displayedPeriod } = this.asProps;\n return {\n children: new Intl.DateTimeFormat(locale, { month: 'long', year: 'numeric' }).format(\n dayjs(displayedPeriod).add(index, this.navigateStep).startOf(this.navigateStep).toDate(),\n ),\n };\n }\n\n getTriggerProps({ placeholder = 'Select date ranges', separator = 'vs.' }) {\n const { locale, visible } = this.asProps;\n const value = this.asProps.value?.value;\n const compare = this.asProps.value?.compare;\n const formattingProps = {\n locale,\n day: 'numeric',\n month: 'short',\n year: 'numeric',\n };\n let children = placeholder;\n if (value?.[0] && value?.[1]) {\n children = shortDateRangeFormat(value, formattingProps);\n }\n if (compare?.[0] && compare?.[1]) {\n children = `${children || ''} ${separator} ${shortDateRangeFormat(compare, formattingProps)}`;\n }\n return {\n children,\n visible,\n onClick: () => this.handlers.visible(!visible),\n onKeyDown: this.handleKeydownDown('trigger'),\n };\n }\n\n getRangeInput() {\n throw new Error('not implemented');\n }\n\n getValueDateRangeProps() {\n const {\n value,\n onDisplayedPeriodChange,\n locale,\n disabled,\n size,\n getI18nText,\n focusedRange,\n preselectedValue,\n } = this.asProps;\n\n return {\n focused: focusedRange === 'value' ? true : undefined,\n value: preselectedValue ?? value?.value,\n onChange: (value) => this.handlers.preselectedValue(value),\n onDisplayedPeriodChange,\n locale,\n w: size === 'm' ? 300 : 330,\n disabledDates: disabled,\n children: this.getRangeInput(),\n getI18nText,\n onFocus: () => {\n this.handlers.focusedRange('value');\n return false;\n },\n };\n }\n\n getCompareDateRangeProps() {\n const {\n value,\n onDisplayedPeriodChange,\n locale,\n disabled,\n size,\n getI18nText,\n focusedRange,\n preselectedCompare,\n compareToggle,\n } = this.asProps;\n\n return {\n focused: focusedRange === 'compare' ? true : undefined,\n disabled: !(compareToggle ?? value?.compare?.length),\n value: preselectedCompare ?? value?.compare,\n onChange: (value) => this.handlers.preselectedCompare(value),\n onDisplayedPeriodChange,\n locale,\n w: size === 'm' ? 300 : 330,\n disabledDates: disabled,\n children: this.getRangeInput(),\n getI18nText,\n onFocus: () => {\n this.handlers.focusedRange('compare');\n return false;\n },\n };\n }\n\n getCompareToggleProps() {\n const { getI18nText, value, compareToggle } = this.asProps;\n\n return {\n getI18nText,\n checked: compareToggle ?? value?.compare?.length,\n onChange: (checked) => {\n if (checked) {\n this.handlers.compareToggle(true);\n this.handlers.focusedRange('compare');\n } else {\n this.handlers.compareToggle(false);\n this.handlers.focusedRange('value');\n }\n },\n };\n }\n\n getCalendarProps(_props, index) {\n const {\n locale,\n displayedPeriod,\n disabled,\n value,\n onCompareHighlightedChange,\n highlighted,\n compareHighlighted,\n onHighlightedChange,\n preselectedCompare,\n preselectedValue,\n focusedRange,\n getI18nText,\n } = this.asProps;\n\n return {\n locale,\n displayedPeriod: dayjs(displayedPeriod)\n .add(index, this.navigateStep)\n .startOf(this.navigateStep)\n .toDate(),\n disabled,\n onChange: this.handleChange,\n highlighted,\n compareHighlighted,\n onCompareHighlightedChange,\n onHighlightedChange,\n range: focusedRange,\n value: preselectedValue ?? value?.value,\n compare: preselectedCompare ?? value?.compare,\n unitRefs: this.unitRefs,\n getI18nText,\n actionsDescribing: index === 0 ? 'range-compare' : null,\n };\n }\n\n handleChange = (date) => {\n const { focusedRange, preselectedCompare, preselectedValue } = this.asProps;\n let highlighted = [];\n let value = focusedRange === 'compare' ? preselectedCompare : preselectedValue;\n if (Array.isArray(date)) {\n value = date;\n } else if (!value?.length) {\n value = [date];\n highlighted = [date];\n } else if (value?.length >= 2) {\n value = [date];\n highlighted = [date];\n } else if (value?.[0] > date) {\n value = [date, value?.[0]];\n } else {\n value = [value?.[0], date];\n }\n\n if (focusedRange === 'compare') {\n this.handlers.preselectedCompare(value);\n this.handlers.compareHighlighted(highlighted);\n } else {\n this.handlers.preselectedValue(value);\n this.handlers.highlighted(highlighted);\n }\n };\n\n getPopperProps() {\n return {\n p: 0,\n ref: this.popperRef,\n onKeyDown: this.handleKeydownDown('popper'),\n };\n }\n\n render() {\n const { Children, styles, 'aria-label': providedAriaLabel } = this.asProps;\n\n return (\n <>\n {sstyled(styles)(\n <Root\n render={Dropdown}\n use:aria-label={providedAriaLabel}\n __excludeProps={['onChange', 'value']}\n >\n <Children />\n </Root>,\n )}\n </>\n );\n }\n}\n\nfunction Apply(props) {\n const { getI18nText } = props;\n return <Root render={Button} use='primary' children={getI18nText('apply')} />;\n}\n\nfunction Reset(props) {\n const { getI18nText } = props;\n return <Root render={Button} use='tertiary' theme='muted' children={getI18nText('reset')} />;\n}\n\nfunction Trigger(props) {\n const { Root: STrigger, styles } = props;\n return sstyled(styles)(<STrigger render={Dropdown.Trigger} tag={LinkTrigger} />);\n}\n\nfunction CompareToggle(props) {\n const { Root: SCompareToggle, styles, getI18nText } = props;\n return sstyled(styles)(<SCompareToggle render={Checkbox} label={getI18nText('compare')} />);\n}\nfunction Header(props) {\n const { Root: SRangeComparatorHeader, Children, styles } = props;\n return sstyled(styles)(\n <SRangeComparatorHeader render={Flex} gap={4} alignItems='center'>\n <Children />\n </SRangeComparatorHeader>,\n );\n}\nfunction Body(props) {\n const { Root: SBody, Children, styles } = props;\n return sstyled(styles)(\n <SBody render={Flex} gap={4}>\n <Children />\n </SBody>,\n );\n}\n\nfunction Footer(props) {\n const { Root: SFooter, styles, Children } = props;\n return sstyled(styles)(\n <SFooter render={Flex} gap={2}>\n <Children />\n </SFooter>,\n );\n}\n\nexport { Apply, Reset, Trigger, CompareToggle, Body, Footer, Header };\n\nexport default DateRangeComparatorAbstract;\n"],"mappings":"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"}
1
+ {"version":3,"file":"DateRangeComparatorAbstract.js","names":["_core","require","_react","_interopRequireDefault","_dayjs","_button","_flexBox","_dropdown","_i18nEnhance","_intergalacticDynamicLocales","_shortDateRangeFormat","_checkbox","_baseTrigger","_formatDate","style","sstyled","insert","INTERACTION_TAGS","INTERACTION_KEYS","defaultDisplayedPeriod","Date","setHours","getLatestDate","_len","arguments","length","dateRanges","Array","_key","allDates","flat","filter","Boolean","date","Number","isNaN","getTime","sort","a","b","latestDate","DateRangeComparatorAbstract","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len2","args","_key2","call","apply","concat","_defineProperty2","_assertThisInitialized2","React","createRef","direction","displayedPeriod","asProps","action","dayjs","navigateStep","toDate","handlers","navigateView","_this$asProps","value","preselectedValue","preselectedCompare","handleApply","compare","visible","place","e","_this$asProps2","focusedRange","key","highlighted","compareHighlighted","includes","stopPropagation","setTimeout","popper","popperRef","current","focus","day","keyDiff","setNextDisplayedPeriod","next_highlighted","_next_highlighted","_slicedToArray2","startPeriod","endPeriod","highlightedPeriod","displayedPeriodNormalized","getDate","highlightedPeriodNormalized","getMonth","getYear","offset","highlightedDate","isDisabled","handleChange","preventDefault","metaKey","ctrlKey","handleApplyClick","changedDate","undefined","target","tagName","add","keyStep","_this$unitRefs$format","formatter","formatMMYY","formatDDMMYY","formattedDate","locale","unitRefs","_value","_value2","_value3","_this$asProps3","isArray","_value4","_value5","_createClass2","getPeriodProps","_this$asProps$value","_this2","_this$asProps4","_this$asProps4$period","periods","getDefaultPeriods","onHighlightedChange","onCompareHighlightedChange","onDisplayedPeriodChange","_this$asProps$value2","onChange","getPrevProps","getI18nText","onClick","bindHandlerNavigateClick","getNextProps","uncontrolledProps","_this3","compareToggle","_this3$asProps","newDisplayedPeriod","_this3$props","props","dates","_date$isValid","isValid","getApplyProps","getResetProps","_this4","today","children","subtract","startOf","getTitleProps","index","_this$asProps5","Intl","DateTimeFormat","month","year","format","getTriggerProps","_ref10","_this$asProps$value3","_this$asProps$value4","_this5","_ref10$placeholder","placeholder","_ref10$separator","separator","_this$asProps6","formattingProps","shortDateRangeFormat","onKeyDown","handleKeydownDown","getRangeInput","Error","getValueDateRangeProps","_this6","_this$asProps7","disabled","disabledErrorText","size","focused","w","disabledDates","onFocus","getCompareDateRangeProps","_value$compare","_this7","_this$asProps8","getCompareToggleProps","_value$compare2","_this8","_this$asProps9","checked","getCalendarProps","_props","_this$asProps10","range","actionsDescribing","getPopperProps","p","ref","render","_ref","_ref4","_this$asProps11","Children","styles","providedAriaLabel","createElement","Fragment","Dropdown","assignProps","cn","defaultProps","_ref11","primaryRange","defaultPrimaryRange","secondaryRange","defaultSecondaryRange","i18n","localizedMessages","defaultValue","defaultHighlighted","defaultCompareHighlighted","defaultVisible","defaultPreselectedValue","defaultPreselectedCompare","defaultCompareToggle","defaultFocusedRange","Component","i18nEnhance","amount","unit","Apply","_ref2","arguments[0]","Button","Reset","_ref3","Trigger","_ref5","STrigger","Root","LinkTrigger","CompareToggle","_ref6","SCompareToggle","Checkbox","Header","_ref7","SRangeComparatorHeader","Flex","Body","_ref8","SBody","Footer","_ref9","SFooter","_default","exports"],"sources":["../../../src/components/DateRangeComparatorAbstract.jsx"],"sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport Button from '@semcore/button';\nimport { Flex } from '@semcore/flex-box';\nimport Dropdown from '@semcore/dropdown';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { localizedMessages } from '../translations/__intergalactic-dynamic-locales';\nimport shortDateRangeFormat from '../utils/shortDateRangeFormat';\nimport Checkbox from '@semcore/checkbox';\nimport { LinkTrigger } from '@semcore/base-trigger';\nimport { formatDDMMYY, formatMMYY } from '../utils/formatDate';\n\nimport style from '../style/date-picker.shadow.css';\n\nconst INTERACTION_TAGS = ['INPUT'];\nconst INTERACTION_KEYS = ['ArrowDown', 'Enter', ' '];\nconst defaultDisplayedPeriod = new Date(new Date().setHours(0, 0, 0, 0));\n\nconst getLatestDate = (...dateRanges) => {\n const allDates = dateRanges\n .flat()\n .filter(Boolean)\n .filter((date) => !Number.isNaN(new Date(date).getTime()));\n if (!allDates.length) return null;\n\n allDates.sort((a, b) => new Date(b).getTime() - new Date(a).getTime());\n const latestDate = allDates[0];\n\n return latestDate;\n};\n\nclass DateRangeComparatorAbstract extends Component {\n static displayName = 'DateRangeComparator';\n static style = style;\n\n static defaultProps({\n primaryRange,\n defaultPrimaryRange,\n secondaryRange,\n defaultSecondaryRange,\n }) {\n return {\n i18n: localizedMessages,\n locale: 'en',\n defaultValue: null,\n defaultHighlighted: [],\n defaultCompareHighlighted: [],\n defaultDisplayedPeriod:\n getLatestDate(primaryRange, defaultPrimaryRange, secondaryRange, defaultSecondaryRange) ||\n defaultDisplayedPeriod,\n defaultVisible: false,\n defaultPreselectedValue: null,\n defaultPreselectedCompare: null,\n defaultCompareToggle: null,\n defaultFocusedRange: 'value',\n disabled: [],\n size: 'm',\n };\n }\n\n static enhance = [i18nEnhance(localizedMessages)];\n\n static subtract = (date, amount, unit) => {\n return dayjs(date).subtract(amount, unit).toDate();\n };\n\n popperRef = React.createRef();\n unitRefs = {};\n\n getPeriodProps() {\n const {\n periods = this.getDefaultPeriods(),\n onHighlightedChange,\n onCompareHighlightedChange,\n onDisplayedPeriodChange,\n preselectedValue,\n preselectedCompare,\n focusedRange,\n } = this.asProps;\n\n let value = preselectedValue ?? this.asProps.value?.value;\n if (focusedRange === 'compare') {\n value = preselectedCompare ?? this.asProps.value?.compare;\n }\n return {\n periods,\n value,\n onChange: (value) => {\n if (focusedRange === 'compare') {\n this.handlers.preselectedCompare(value);\n } else {\n this.handlers.preselectedValue(value);\n }\n },\n onHighlightedChange:\n focusedRange === 'compare' ? onCompareHighlightedChange : onHighlightedChange,\n onDisplayedPeriodChange,\n };\n }\n\n navigateView = (direction) => {\n const { displayedPeriod } = this.asProps;\n const action = direction >= 1 ? 'add' : 'subtract';\n const date = dayjs(displayedPeriod)[action](1, this.navigateStep).toDate();\n this.handlers.displayedPeriod(date);\n };\n\n bindHandlerNavigateClick = (direction) => () => this.navigateView(direction);\n\n getPrevProps() {\n const { getI18nText } = this.asProps;\n return {\n getI18nText,\n onClick: this.bindHandlerNavigateClick(-1),\n };\n }\n getNextProps() {\n const { getI18nText } = this.asProps;\n return {\n getI18nText,\n onClick: this.bindHandlerNavigateClick(1),\n };\n }\n\n uncontrolledProps() {\n return {\n displayedPeriod: null,\n visible: [\n null,\n (visible) => {\n if (!visible) {\n this.handlers.highlighted([]);\n this.handlers.compareHighlighted([]);\n this.handlers.preselectedValue(undefined);\n this.handlers.preselectedCompare(undefined);\n this.handlers.compareToggle(undefined);\n this.handlers.focusedRange('value');\n }\n\n const { value, displayedPeriod } = this.asProps;\n const newDisplayedPeriod = value ? getLatestDate(value.value, value.compare) : undefined;\n\n if (visible) {\n if (newDisplayedPeriod && newDisplayedPeriod !== displayedPeriod) {\n this.handlers.displayedPeriod(newDisplayedPeriod);\n } else if (!newDisplayedPeriod) {\n const { displayedPeriod, defaultDisplayedPeriod } = this.props;\n this.handlers.displayedPeriod(displayedPeriod || defaultDisplayedPeriod);\n }\n }\n },\n ],\n highlighted: null,\n compareHighlighted: null,\n preselectedValue: null,\n preselectedCompare: null,\n compareToggle: null,\n focusedRange: null,\n value: [\n null,\n (value) => {\n const dates = [value?.value, value?.compare].flat(2).filter((date) => date?.isValid?.());\n if (dates.length > 0) this.handlers.displayedPeriod(getLatestDate(value));\n },\n ],\n };\n }\n\n handleApplyClick = () => {\n const { value, preselectedValue, preselectedCompare } = this.asProps;\n return this.handleApply(preselectedValue ?? value?.value, preselectedCompare ?? value?.compare);\n };\n\n getApplyProps() {\n const { getI18nText } = this.asProps;\n return {\n getI18nText,\n onClick: this.handleApplyClick,\n };\n }\n\n getResetProps() {\n const { getI18nText } = this.asProps;\n return {\n getI18nText,\n onClick: () => this.handleApply(null, null),\n };\n }\n\n handleApply = (value, compare) => {\n this.handlers.value({ value, compare });\n this.handlers.visible(false);\n };\n\n handleKeydownDown = (place) => (e) => {\n const { displayedPeriod, preselectedValue, visible, focusedRange } = this.asProps;\n const key = e.key;\n const highlighted =\n focusedRange === 'compare' ? this.asProps.compareHighlighted : this.asProps.highlighted;\n\n if (place === 'trigger' && INTERACTION_KEYS.includes(key)) {\n e.stopPropagation();\n this.handlers.visible(!visible);\n\n setTimeout(() => {\n const popper = this.popperRef.current;\n\n if (popper) {\n popper.focus();\n }\n }, 0);\n }\n\n const day = this.keyDiff[key];\n\n const setNextDisplayedPeriod = (next_highlighted) => {\n const [startPeriod, endPeriod] = next_highlighted;\n const highlightedPeriod = endPeriod || startPeriod;\n\n let displayedPeriodNormalized = displayedPeriod?.getDate();\n let highlightedPeriodNormalized = highlightedPeriod?.getDate();\n if (this.navigateStep === 'month') {\n displayedPeriodNormalized = displayedPeriod?.getMonth();\n highlightedPeriodNormalized = highlightedPeriod?.getMonth();\n }\n if (this.navigateStep === 'year') {\n displayedPeriodNormalized = displayedPeriod?.getYear();\n highlightedPeriodNormalized = highlightedPeriod?.getYear();\n }\n const offset = highlightedPeriodNormalized - displayedPeriodNormalized;\n\n if (offset < 0 || offset > 1) {\n return highlightedPeriod;\n }\n return displayedPeriod;\n };\n\n if (place === 'popper' && e.key === ' ' && highlighted.length) {\n const highlightedDate = highlighted[1] || highlighted[0];\n\n if (!this.isDisabled(highlightedDate)) {\n this.handleChange(highlightedDate);\n }\n e.preventDefault();\n }\n if (place === 'popper' && e.key === 'Enter' && (e.metaKey || e.ctrlKey)) {\n return this.handleApplyClick();\n }\n let changedDate = undefined;\n if (day) {\n if (INTERACTION_TAGS.includes(e.target.tagName)) return;\n if (highlighted.length) {\n let next_highlighted;\n if (preselectedValue?.length === 1) {\n next_highlighted = [\n preselectedValue[0],\n dayjs(highlighted[1] || highlighted[0])\n .add(day, this.keyStep)\n .toDate(),\n ];\n changedDate = next_highlighted[1];\n } else {\n next_highlighted = [\n dayjs(highlighted[0])\n .add(day, this.keyStep)\n .toDate(),\n ];\n changedDate = next_highlighted[0];\n }\n if (focusedRange === 'compare') {\n this.handlers.compareHighlighted(next_highlighted);\n } else {\n this.handlers.highlighted(next_highlighted);\n }\n this.handlers.displayedPeriod(setNextDisplayedPeriod(next_highlighted));\n } else {\n const highlighted = [displayedPeriod ? displayedPeriod : dayjs().toDate()];\n if (focusedRange === 'compare') {\n this.handlers.compareHighlighted(highlighted);\n } else {\n this.handlers.highlighted(highlighted);\n }\n changedDate = highlighted[0];\n }\n e.preventDefault();\n\n if (changedDate) {\n const formatter = this.keyStep === 'month' ? formatMMYY : formatDDMMYY;\n const formattedDate = formatter(changedDate, this.asProps.locale);\n this.unitRefs[formattedDate]?.focus();\n }\n }\n };\n\n getDefaultPeriods() {\n const { getI18nText } = this.asProps;\n const today = new Date(new Date().setHours(0, 0, 0, 0));\n return [\n {\n children: getI18nText('lastMonth'),\n value: [\n dayjs(today).subtract(1, 'month').startOf('month').toDate(),\n dayjs(today).startOf('month').toDate(),\n ],\n },\n {\n children: getI18nText('last3Months'),\n value: [\n dayjs(today).subtract(2, 'month').startOf('month').toDate(),\n dayjs(today).startOf('month').toDate(),\n ],\n },\n {\n children: getI18nText('last6Months'),\n value: [\n dayjs(today).subtract(5, 'month').startOf('month').toDate(),\n dayjs(today).startOf('month').toDate(),\n ],\n },\n {\n children: getI18nText('last12Months'),\n value: [\n dayjs(today).subtract(11, 'month').startOf('month').toDate(),\n dayjs(today).startOf('month').toDate(),\n ],\n },\n ];\n }\n\n getTitleProps(props, index) {\n const { locale, displayedPeriod } = this.asProps;\n return {\n children: new Intl.DateTimeFormat(locale, { month: 'long', year: 'numeric' }).format(\n dayjs(displayedPeriod).add(index, this.navigateStep).startOf(this.navigateStep).toDate(),\n ),\n };\n }\n\n getTriggerProps({ placeholder = 'Select date ranges', separator = 'vs.' }) {\n const { locale, visible } = this.asProps;\n const value = this.asProps.value?.value;\n const compare = this.asProps.value?.compare;\n const formattingProps = {\n locale,\n day: 'numeric',\n month: 'short',\n year: 'numeric',\n };\n let children = placeholder;\n if (value?.[0] && value?.[1]) {\n children = shortDateRangeFormat(value, formattingProps);\n }\n if (compare?.[0] && compare?.[1]) {\n children = `${children || ''} ${separator} ${shortDateRangeFormat(compare, formattingProps)}`;\n }\n return {\n children,\n visible,\n onClick: () => this.handlers.visible(!visible),\n onKeyDown: this.handleKeydownDown('trigger'),\n };\n }\n\n getRangeInput() {\n throw new Error('not implemented');\n }\n\n getValueDateRangeProps() {\n const {\n value,\n onDisplayedPeriodChange,\n locale,\n disabled,\n disabledErrorText,\n size,\n getI18nText,\n focusedRange,\n preselectedValue,\n } = this.asProps;\n\n return {\n focused: focusedRange === 'value' ? true : undefined,\n value: preselectedValue ?? value?.value,\n onChange: (value) => this.handlers.preselectedValue(value),\n onDisplayedPeriodChange,\n locale,\n w: size === 'm' ? 300 : 330,\n disabledDates: disabled,\n disabledErrorText,\n children: this.getRangeInput(),\n getI18nText,\n onFocus: () => {\n this.handlers.focusedRange('value');\n return false;\n },\n };\n }\n\n getCompareDateRangeProps() {\n const {\n value,\n onDisplayedPeriodChange,\n locale,\n disabled,\n disabledErrorText,\n size,\n getI18nText,\n focusedRange,\n preselectedCompare,\n compareToggle,\n } = this.asProps;\n\n return {\n focused: focusedRange === 'compare' ? true : undefined,\n disabled: !(compareToggle ?? value?.compare?.length),\n value: preselectedCompare ?? value?.compare,\n onChange: (value) => this.handlers.preselectedCompare(value),\n onDisplayedPeriodChange,\n locale,\n w: size === 'm' ? 300 : 330,\n disabledDates: disabled,\n children: this.getRangeInput(),\n getI18nText,\n disabledErrorText,\n onFocus: () => {\n this.handlers.focusedRange('compare');\n return false;\n },\n };\n }\n\n getCompareToggleProps() {\n const { getI18nText, value, compareToggle } = this.asProps;\n\n return {\n getI18nText,\n checked: compareToggle ?? value?.compare?.length,\n onChange: (checked) => {\n if (checked) {\n this.handlers.compareToggle(true);\n this.handlers.focusedRange('compare');\n } else {\n this.handlers.compareToggle(false);\n this.handlers.focusedRange('value');\n }\n },\n };\n }\n\n getCalendarProps(_props, index) {\n const {\n locale,\n displayedPeriod,\n disabled,\n value,\n onCompareHighlightedChange,\n highlighted,\n compareHighlighted,\n onHighlightedChange,\n preselectedCompare,\n preselectedValue,\n focusedRange,\n getI18nText,\n } = this.asProps;\n\n return {\n locale,\n displayedPeriod: dayjs(displayedPeriod)\n .add(index, this.navigateStep)\n .startOf(this.navigateStep)\n .toDate(),\n disabled,\n onChange: this.handleChange,\n highlighted,\n compareHighlighted,\n onCompareHighlightedChange,\n onHighlightedChange,\n range: focusedRange,\n value: preselectedValue ?? value?.value,\n compare: preselectedCompare ?? value?.compare,\n unitRefs: this.unitRefs,\n getI18nText,\n actionsDescribing: index === 0 ? 'range-compare' : null,\n };\n }\n\n handleChange = (date) => {\n const { focusedRange, preselectedCompare, preselectedValue } = this.asProps;\n let highlighted = [];\n let value = focusedRange === 'compare' ? preselectedCompare : preselectedValue;\n if (Array.isArray(date)) {\n value = date;\n } else if (!value?.length) {\n value = [date];\n highlighted = [date];\n } else if (value?.length >= 2) {\n value = [date];\n highlighted = [date];\n } else if (value?.[0] > date) {\n value = [date, value?.[0]];\n } else {\n value = [value?.[0], date];\n }\n\n if (focusedRange === 'compare') {\n this.handlers.preselectedCompare(value);\n this.handlers.compareHighlighted(highlighted);\n } else {\n this.handlers.preselectedValue(value);\n this.handlers.highlighted(highlighted);\n }\n };\n\n getPopperProps() {\n return {\n p: 0,\n ref: this.popperRef,\n onKeyDown: this.handleKeydownDown('popper'),\n };\n }\n\n render() {\n const { Children, styles, 'aria-label': providedAriaLabel } = this.asProps;\n\n return (\n <>\n {sstyled(styles)(\n <Root\n render={Dropdown}\n use:aria-label={providedAriaLabel}\n __excludeProps={['onChange', 'value']}\n >\n <Children />\n </Root>,\n )}\n </>\n );\n }\n}\n\nfunction Apply(props) {\n const { getI18nText } = props;\n return <Root render={Button} use='primary' children={getI18nText('apply')} />;\n}\n\nfunction Reset(props) {\n const { getI18nText } = props;\n return <Root render={Button} use='tertiary' theme='muted' children={getI18nText('reset')} />;\n}\n\nfunction Trigger(props) {\n const { Root: STrigger, styles } = props;\n return sstyled(styles)(<STrigger render={Dropdown.Trigger} tag={LinkTrigger} />);\n}\n\nfunction CompareToggle(props) {\n const { Root: SCompareToggle, styles, getI18nText } = props;\n return sstyled(styles)(<SCompareToggle render={Checkbox} label={getI18nText('compare')} />);\n}\nfunction Header(props) {\n const { Root: SRangeComparatorHeader, Children, styles } = props;\n return sstyled(styles)(\n <SRangeComparatorHeader render={Flex} gap={4} alignItems='center'>\n <Children />\n </SRangeComparatorHeader>,\n );\n}\nfunction Body(props) {\n const { Root: SBody, Children, styles } = props;\n return sstyled(styles)(\n <SBody render={Flex} gap={4}>\n <Children />\n </SBody>,\n );\n}\n\nfunction Footer(props) {\n const { Root: SFooter, styles, Children } = props;\n return sstyled(styles)(\n <SFooter render={Flex} gap={2}>\n <Children />\n </SFooter>,\n );\n}\n\nexport { Apply, Reset, Trigger, CompareToggle, Body, Footer, Header };\n\nexport default DateRangeComparatorAbstract;\n"],"mappings":"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"}