@semcore/date-picker 4.54.4 → 4.54.5

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.
@@ -1 +1 @@
1
- {"version":3,"file":"Calendar.js","names":["React","dayjs","isBetween","createComponent","Component","Root","sstyled","Box","fire","includesDate","formatDDMMYY","formatMMYY","keyboardFocusEnhance","ScreenReaderOnly","style","_sstyled","insert","extend","range","N","cb","Array","from","length","v","k","getDayJSLocaleParams","locale","includes","_objectSpread","weekStart","Ls","CalendarWeekDaysRoot","_Component","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","key","value","getDaysByWeek","asProps","date","startOf","short","Intl","DateTimeFormat","weekday","format","valueOf","long","add","children","setContext","days","render","_ref","_ref6","SWeekDays","_this$asProps","Children","styles","createElement","cn","_assignProps","_defineProperty","_ref17","map","data","i","CalendarWeekDays","Unit","_extends","CalendarWeekUnit","_ref11","_ref2","arguments[0]","_ref7","SWeekDay","_assignProps2","resolveHighlighting","unit","highlighted","highlighted0","highlighted1","_ref12","startHighlighted","isSame","endHighlighted","undefined","resolveSelecting","value0","value1","selected","_ref13","startSelected","endSelected","CalendarAbstract","_Component2","_super2","_this","_len","args","_key","call","concat","_assertThisInitialized","Date","setHours","createUnit","_ref14","_this2","other","_objectWithoutProperties","_excluded","self","_this$asProps2","_disabled","disabled","compare","compareHighlighted","highlighting","comparedHighlighting","selecting","comparing","some","dateKey","formatter","role","compareStartHighlighted","compareEndHighlighted","compareStart","compareEnd","today","onClick","_this2$asProps","_highlighted","toDate","onMouseEnter","_this2$asProps2","startDate","getUnitProps","_ref15","index","inRow","unitRefs","Math","floor","ref","node","getRootProps","tabIndex","describeValue","_this3","_this$asProps3","getI18nText","actionsDescribing","t","description","CalendarUnit","_ref16","_ref3","_ref8","outdated","SCalendarUnit","_assignProps3","enhance","CalendarDaysRoot","_CalendarAbstract","_super3","getDaysByMonth","_this4","_this$asProps4","displayedPeriod","renderOutdated","prevDate","subtract","nextDate","dateStartOfWeek","get","prevMonthDays","daysInMonth","day","String","slice","monthDays","nextMonthDays","_toConsumableArray","_ref4","_ref9","SCalendar","SGridDays","_this$asProps5","_assignProps4","handleMouseLeave","_ref18","CalendarDays","CalendarMonthsRoot","_CalendarAbstract2","_super4","_this5","_len2","_key2","getMonthsByYear","_this6","_this$asProps6","month","year","months","_ref5","_ref10","SGridMonths","_this$asProps7","_assignProps5","_ref19","CalendarMonths"],"sources":["../../../src/components/Calendar.jsx"],"sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport isBetween from 'dayjs/plugin/isBetween';\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport fire from '@semcore/utils/lib/fire';\nimport { includesDate } from '../utils/includesDate';\nimport { formatDDMMYY, formatMMYY } from '../utils/formatDate';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport { ScreenReaderOnly } from '@semcore/utils/lib/ScreenReaderOnly';\n\nimport style from '../style/calendar.shadow.css';\n\ndayjs.extend(isBetween);\n\nconst range = (N, cb) => Array.from({ length: N }, (v, k) => cb(k));\n\nfunction getDayJSLocaleParams(locale) {\n if (locale.includes('en') || locale.includes('ja')) {\n return {\n weekStart: 0,\n ...dayjs.Ls[locale],\n };\n }\n return {\n weekStart: 1,\n ...dayjs.Ls[locale],\n };\n}\n\nclass CalendarWeekDaysRoot extends Component {\n static displayName = 'CalendarWeekDays';\n static style = style;\n static defaultProps = {\n locale: 'en',\n children: ({ days }) => days.map((data, i) => <CalendarWeekDays.Unit key={i} {...data} />),\n };\n\n getDaysByWeek() {\n const { locale } = this.asProps;\n\n let date = dayjs().locale(locale, getDayJSLocaleParams(locale)).startOf('week');\n return range(7, () => {\n const short = new Intl.DateTimeFormat(locale, { weekday: 'short' }).format(date.valueOf());\n const long = new Intl.DateTimeFormat(locale, { weekday: 'long' }).format(date.valueOf());\n date = date.add(1, 'day');\n return {\n children: short,\n 'aria-label': long,\n };\n });\n }\n\n setContext() {\n return {\n days: this.getDaysByWeek(),\n };\n }\n\n render() {\n const SWeekDays = Root;\n const { Children, styles } = this.asProps;\n return sstyled(styles)(\n <SWeekDays render={Box}>\n <Children />\n </SWeekDays>,\n );\n }\n}\n\nfunction CalendarWeekUnit({ styles }) {\n const SWeekDay = Root;\n return sstyled(styles)(<SWeekDay render={Box} role='columnheader' />);\n}\n\nfunction resolveHighlighting(date, unit, highlighted) {\n let highlighted0 = highlighted[0] ? dayjs(highlighted[0]) : null;\n let highlighted1 = highlighted[1] ? dayjs(highlighted[1]) : highlighted0;\n if (highlighted0 && highlighted1) {\n if (highlighted0 > highlighted1) [highlighted1, highlighted0] = [highlighted0, highlighted1];\n return {\n highlighted: date.isBetween(highlighted0, highlighted1, unit, '[]'),\n startHighlighted: highlighted0 && date.isSame(highlighted0, 'date'),\n endHighlighted: highlighted1 && date.isSame(highlighted1, 'date'),\n };\n }\n return {\n highlighted: undefined,\n startHighlighted: undefined,\n endHighlighted: undefined,\n };\n}\nfunction resolveSelecting(date, unit, value) {\n let value0 = value[0] ? dayjs(value[0]) : null;\n let value1 = value[1] ? dayjs(value[1]) : null;\n let selected;\n if (value0 && value1) {\n if (value0 > value1) [value1, value0] = [value0, value1];\n selected = date.isBetween(value0, value1, unit, '()');\n }\n const startSelected = value0 && date.isSame(value0, unit);\n const endSelected = value1 && date.isSame(value1, unit);\n\n return {\n selected,\n startSelected,\n endSelected,\n };\n}\n\nclass CalendarAbstract extends Component {\n static style = style;\n\n today = new Date(new Date().setHours(0, 0, 0, 0));\n\n createUnit({ date, ...other }, unit) {\n const self = this;\n const {\n disabled: _disabled,\n value,\n compare,\n highlighted,\n compareHighlighted,\n locale,\n } = this.asProps;\n\n const highlighting = resolveHighlighting(date, unit, highlighted ?? []);\n const comparedHighlighting = resolveHighlighting(date, unit, compareHighlighted ?? []);\n const selecting = resolveSelecting(date, unit, value ?? []);\n const comparing = resolveSelecting(date, unit, compare ?? []);\n\n const disabled = _disabled.some(includesDate(date, unit));\n\n return {\n date: formatDDMMYY(date, locale),\n dateKey: this.formatter(date, locale),\n children: '',\n role: 'gridcell',\n startSelected: selecting.startSelected,\n endSelected: selecting.endSelected,\n selected: selecting.selected,\n highlighted: highlighting.highlighted,\n startHighlighted: highlighting.startHighlighted,\n endHighlighted: highlighting.endHighlighted,\n\n compareHighlighted: comparedHighlighting.highlighted || comparing.selected,\n compareStartHighlighted: comparedHighlighting.startHighlighted,\n compareEndHighlighted: comparedHighlighting.endHighlighted,\n compareStart: comparing.startSelected,\n compareEnd: comparing.endSelected,\n\n 'aria-selected': selecting.selected,\n 'aria-disabled': disabled,\n 'aria-current': highlighting.highlighted ? 'date' : undefined,\n\n disabled,\n today: date.isSame(self.today, unit),\n onClick: () => {\n const { range, highlighted: _highlighted } = this.asProps;\n let highlighted = [date.valueOf()];\n\n if (_highlighted.length === 1) {\n highlighted = [_highlighted[0], date.valueOf()];\n } else if (_highlighted.length >= 2) {\n highlighted = [];\n }\n\n if (range === 'compare') {\n fire(this, 'onCompareHighlightedChange', highlighted);\n } else {\n fire(this, 'onHighlightedChange', highlighted);\n }\n fire(this, 'onChange', date.toDate());\n },\n onMouseEnter: () => {\n const { range, highlighted: _highlighted } = this.asProps;\n const value = range === 'compare' ? this.asProps.compare : this.asProps.value;\n if (_highlighted[0] || (value ?? []).length === 1) {\n const startDate = _highlighted[0] || (value ?? [])[0];\n const highlighted = [startDate.valueOf(), date.valueOf()];\n if (range === 'compare') {\n fire(this, 'onCompareHighlightedChange', highlighted);\n } else {\n fire(this, 'onHighlightedChange', highlighted);\n }\n }\n },\n ...other,\n };\n }\n\n handleMouseLeave = () => {\n const { highlighted } = this.asProps;\n\n fire(this, 'onHighlightedChange', highlighted.length ? [highlighted[0]] : []);\n };\n\n getUnitProps({ dateKey }, index) {\n const inRow = 7;\n const { unitRefs } = this.asProps;\n return {\n 'aria-colindex': (index % inRow) + 1,\n 'aria-rowindex': Math.floor(index / inRow) + 1,\n ref: (node) => {\n if (!dateKey) return;\n unitRefs[dateKey] = node;\n },\n };\n }\n\n getRootProps() {\n return {\n role: 'grid',\n tabIndex: 0,\n };\n }\n\n formatter = formatDDMMYY;\n describeValue() {\n const { locale, getI18nText, actionsDescribing } = this.asProps;\n const value = this.asProps.value || [];\n const compare = this.asProps.compare || [];\n\n if (!actionsDescribing) return null;\n\n const t = (key, date) =>\n getI18nText(key, date ? { date: this.formatter(date, locale) } : undefined);\n\n let description = '';\n if (value.length === 1 || compare.length === 1) {\n description += t('selectingStarted') + '. ';\n } else if (value.length === 2 || compare.length === 2) {\n description += t('selectingFinished') + '. ';\n }\n\n if (actionsDescribing === 'range') {\n if (value[0] || value[1]) description += t('dateRange') + ' ';\n if (value[0]) description += t('fromDate', value[0]) + ', ';\n if (value[1]) description += t('toDate', value[1]) + '. ';\n } else if (actionsDescribing === 'range-compare') {\n if (compare.length === 1) {\n description += t('dateRange2') + ' ';\n if (compare[0]) description += t('fromDate', value[0]) + ', ';\n if (compare[1]) description += t('toDate', value[1]) + '. ';\n } else {\n if (value[0] || value[1]) description += t('dateRange1') + ' ';\n if (value[0]) description += t('fromDate', value[0]) + ', ';\n if (value[1]) description += t('toDate', value[1]) + '. ';\n if (compare.length > 0) {\n description += t('dateRange2') + ' ';\n if (compare[0]) description += t('fromDate', compare[0]) + ', ';\n if (compare[1]) description += t('toDate', compare[1]) + '. ';\n }\n }\n }\n\n return description;\n }\n}\n\nfunction CalendarUnit({ styles, date, long, outdated, disabled, highlighted }) {\n const SCalendarUnit = Root;\n return sstyled(styles)(\n <SCalendarUnit\n use:disabled={disabled || outdated || !date}\n render={Box}\n aria-hidden={!date}\n aria-label={long || date}\n use:tabIndex={highlighted ? 0 : -1}\n />,\n );\n}\nCalendarUnit.enhance = [keyboardFocusEnhance()];\n\nclass CalendarDaysRoot extends CalendarAbstract {\n static displayName = 'CalendarDays';\n static defaultProps = {\n displayedPeriod: new Date(new Date().setHours(0, 0, 0, 0)),\n disabled: [],\n value: [],\n locale: 'en',\n children: ({ days }) => days.map((data, i) => <CalendarDays.Unit key={i} {...data} />),\n };\n\n getDaysByMonth() {\n const { displayedPeriod, renderOutdated, locale } = this.asProps;\n let date = dayjs(displayedPeriod).startOf('month');\n let prevDate = date.subtract(1, 'month');\n let nextDate = date.add(1, 'month');\n\n /* 0 - 6 */\n const dateStartOfWeek = date\n .locale(locale, getDayJSLocaleParams(locale))\n .startOf('week')\n .get('d')\n ? (date.get('d') || 7) - 1\n : date.get('d');\n\n let prevMonthDays = dateStartOfWeek\n ? range(prevDate.daysInMonth(), (i) => {\n const day = this.createUnit({ date: prevDate, outdated: true, i }, 'date');\n day.children = String(prevDate.get('date'));\n prevDate = prevDate.add(1, 'day');\n return day;\n }).slice(-dateStartOfWeek)\n : [];\n\n const monthDays = range(date.daysInMonth(), (i) => {\n const day = this.createUnit({ date, i }, 'date');\n day.children = String(date.get('date'));\n date = date.add(1, 'day');\n return day;\n });\n\n let nextMonthDays = range(42 - prevMonthDays.length - monthDays.length, (i) => {\n const day = this.createUnit({ date: nextDate, outdated: true, i }, 'date');\n day.children = String(nextDate.get('date'));\n nextDate = nextDate.add(1, 'day');\n return day;\n });\n\n if (!renderOutdated) {\n prevMonthDays = prevMonthDays.map(() => ({\n disabled: true,\n children: '',\n }));\n nextMonthDays = [];\n }\n\n return [...prevMonthDays, ...monthDays, ...nextMonthDays];\n }\n\n setContext() {\n return {\n days: this.getDaysByMonth(),\n };\n }\n\n render() {\n const SCalendar = Root;\n const SGridDays = 'div';\n const { Children, styles, locale } = this.asProps;\n const description = this.describeValue();\n\n return sstyled(styles)(\n <SCalendar render={Box} {...this.getRootProps()}>\n <CalendarWeekDays locale={locale} role='row' />\n <SGridDays onMouseLeave={this.handleMouseLeave} role='row'>\n <Children />\n </SGridDays>\n <ScreenReaderOnly role='row'>\n <span aria-live='polite' role='gridcell'>\n {description}\n </span>\n </ScreenReaderOnly>\n </SCalendar>,\n );\n }\n}\n\nclass CalendarMonthsRoot extends CalendarAbstract {\n static displayName = 'CalendarMonths';\n static defaultProps = {\n locale: 'en',\n children: ({ months }) => months.map((data, i) => <CalendarMonths.Unit key={i} {...data} />),\n };\n\n getMonthsByYear() {\n const { displayedPeriod, locale } = this.asProps;\n\n let date = dayjs(displayedPeriod).startOf('year');\n\n return range(12, () => {\n const month = this.createUnit({ date }, 'month');\n month.children = new Intl.DateTimeFormat(locale, { month: 'short' }).format(date.valueOf());\n month.long = new Intl.DateTimeFormat(locale, { month: 'long', year: 'numeric' }).format(\n date.valueOf(),\n );\n date = date.add(1, 'month');\n return month;\n });\n }\n\n setContext() {\n return {\n months: this.getMonthsByYear(),\n };\n }\n\n formatter = formatMMYY;\n\n render() {\n const SCalendar = Root;\n const SGridMonths = 'div';\n const { Children, styles } = this.asProps;\n const description = this.describeValue();\n\n return sstyled(styles)(\n <SCalendar render={Box} {...this.getRootProps()}>\n <SGridMonths onMouseLeave={this.handleMouseLeave} role='row'>\n <Children />\n </SGridMonths>\n <ScreenReaderOnly role='row'>\n <span aria-live='polite' role='gridcell'>\n {description}\n </span>\n </ScreenReaderOnly>\n </SCalendar>,\n );\n }\n}\n\nconst CalendarWeekDays = createComponent(CalendarWeekDaysRoot, {\n Unit: CalendarWeekUnit,\n});\n\nconst CalendarDays = createComponent(CalendarDaysRoot, {\n Unit: CalendarUnit,\n});\n\nconst CalendarMonths = createComponent(CalendarMonthsRoot, {\n Unit: CalendarUnit,\n});\n\nexport { CalendarUnit, CalendarWeekDays, CalendarDays, CalendarMonths };\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,wBAAwB;AAC9C,OAAOC,eAAe,IAAIC,SAAS,EAAEC,IAAI,EAAEC,OAAO,QAAQ,eAAe;AACzE,SAASC,GAAG,QAAQ,mBAAmB;AACvC,OAAOC,IAAI,MAAM,yBAAyB;AAC1C,SAASC,YAAY,QAAQ,uBAAuB;AACpD,SAASC,YAAY,EAAEC,UAAU,QAAQ,qBAAqB;AAC9D,OAAOC,oBAAoB,MAAM,kDAAkD;AACnF,SAASC,gBAAgB,QAAQ,qCAAqC;AAAC;AAAA,IAAAC,KAAA,+BAAAC,QAAA,CAAAC,MAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAIvEf,KAAK,CAACgB,MAAM,CAACf,SAAS,CAAC;AAEvB,IAAMgB,KAAK,GAAG,SAARA,KAAKA,CAAIC,CAAC,EAAEC,EAAE;EAAA,OAAKC,KAAK,CAACC,IAAI,CAAC;IAAEC,MAAM,EAAEJ;EAAE,CAAC,EAAE,UAACK,CAAC,EAAEC,CAAC;IAAA,OAAKL,EAAE,CAACK,CAAC,CAAC;EAAA,EAAC;AAAA;AAEnE,SAASC,oBAAoBA,CAACC,MAAM,EAAE;EACpC,IAAIA,MAAM,CAACC,QAAQ,CAAC,IAAI,CAAC,IAAID,MAAM,CAACC,QAAQ,CAAC,IAAI,CAAC,EAAE;IAClD,OAAAC,aAAA;MACEC,SAAS,EAAE;IAAC,GACT7B,KAAK,CAAC8B,EAAE,CAACJ,MAAM,CAAC;EAEvB;EACA,OAAAE,aAAA;IACEC,SAAS,EAAE;EAAC,GACT7B,KAAK,CAAC8B,EAAE,CAACJ,MAAM,CAAC;AAEvB;AAAC,IAEKK,oBAAoB,0BAAAC,UAAA;EAAAC,SAAA,CAAAF,oBAAA,EAAAC,UAAA;EAAA,IAAAE,MAAA,GAAAC,YAAA,CAAAJ,oBAAA;EAAA,SAAAA,qBAAA;IAAAK,eAAA,OAAAL,oBAAA;IAAA,OAAAG,MAAA,CAAAG,KAAA,OAAAC,SAAA;EAAA;EAAAC,YAAA,CAAAR,oBAAA;IAAAS,GAAA;IAAAC,KAAA,EAQxB,SAAAC,cAAA,EAAgB;MACd,IAAQhB,MAAM,GAAK,IAAI,CAACiB,OAAO,CAAvBjB,MAAM;MAEd,IAAIkB,IAAI,GAAG5C,KAAK,EAAE,CAAC0B,MAAM,CAACA,MAAM,EAAED,oBAAoB,CAACC,MAAM,CAAC,CAAC,CAACmB,OAAO,CAAC,MAAM,CAAC;MAC/E,OAAO5B,KAAK,CAAC,CAAC,EAAE,YAAM;QACpB,IAAM6B,MAAK,GAAG,IAAIC,IAAI,CAACC,cAAc,CAACtB,MAAM,EAAE;UAAEuB,OAAO,EAAE;QAAQ,CAAC,CAAC,CAACC,MAAM,CAACN,IAAI,CAACO,OAAO,EAAE,CAAC;QAC1F,IAAMC,KAAI,GAAG,IAAIL,IAAI,CAACC,cAAc,CAACtB,MAAM,EAAE;UAAEuB,OAAO,EAAE;QAAO,CAAC,CAAC,CAACC,MAAM,CAACN,IAAI,CAACO,OAAO,EAAE,CAAC;QACxFP,IAAI,GAAGA,IAAI,CAACS,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC;QACzB,OAAO;UACLC,QAAQ,EAAER,MAAK;UACf,YAAY,EAAEM;QAChB,CAAC;MACH,CAAC,CAAC;IACJ;EAAC;IAAAZ,GAAA;IAAAC,KAAA,EAED,SAAAc,WAAA,EAAa;MACX,OAAO;QACLC,IAAI,EAAE,IAAI,CAACd,aAAa;MAC1B,CAAC;IACH;EAAC;IAAAF,GAAA;IAAAC,KAAA,EAED,SAAAgB,OAAA,EAAS;MAAA,IAAAC,IAAA,QAAAf,OAAA;QAAAgB,KAAA;MACP,IAAMC,SAAS,GAGMtD,GAAG;MAFxB,IAAAuD,aAAA,GAA6B,IAAI,CAAClB,OAAO;QAAjCmB,QAAQ,GAAAD,aAAA,CAARC,QAAQ;QAAEC,MAAM,GAAAF,aAAA,CAANE,MAAM;MACxB,OAAAJ,KAAA,GAAOtD,OAAO,CAAC0D,MAAM,CAAC,eACpBhE,KAAA,CAAAiE,aAAA,CAACJ,SAAS,EAAAD,KAAA,CAAAM,EAAA,cAAArC,aAAA,KAAAsC,YAAA,KAAAR,IAAA,kBACR3D,KAAA,CAAAiE,aAAA,CAACF,QAAQ,EAAAH,KAAA,CAAAM,EAAA,iBAAG,CACF;IAEhB;EAAC;EAAA,OAAAlC,oBAAA;AAAA,EArCgC5B,SAAS;AAAAgE,eAAA,CAAtCpC,oBAAoB,iBACH,kBAAkB;AAAAoC,eAAA,CADnCpC,oBAAoB,WAETlB,KAAK;AAAAsD,eAAA,CAFhBpC,oBAAoB,kBAGF;EACpBL,MAAM,EAAE,IAAI;EACZ4B,QAAQ,EAAE,SAAAA,SAAAc,MAAA;IAAA,IAAGZ,IAAI,GAAAY,MAAA,CAAJZ,IAAI;IAAA,OAAOA,IAAI,CAACa,GAAG,CAAC,UAACC,IAAI,EAAEC,CAAC;MAAA,oBAAKxE,KAAA,CAAAiE,aAAA,CAACQ,gBAAgB,CAACC,IAAI,EAAAC,QAAA;QAAClC,GAAG,EAAE+B;MAAE,GAAKD,IAAI,EAAI;IAAA,EAAC;EAAA;AAC5F,CAAC;AAkCH,SAASK,gBAAgBA,CAAAC,MAAA,EAAa;EAAA,IAAAC,KAAA,GAAAC,YAAA;IAAAC,KAAA;EAAA,IAAVhB,MAAM,GAAAa,MAAA,CAANb,MAAM;EAChC,IAAMiB,QAAQ,GAC2B1E,GAAG;EAA5C,OAAAyE,KAAA,GAAO1E,OAAO,CAAC0D,MAAM,CAAC,eAAChE,KAAA,CAAAiE,aAAA,CAACgB,QAAQ,EAAAD,KAAA,CAAAd,EAAA,aAAArC,aAAA,KAAAqD,aAAA;IAAA,QAAmB;EAAc,GAAAJ,KAAA,IAAG;AACtE;AAEA,SAASK,mBAAmBA,CAACtC,IAAI,EAAEuC,IAAI,EAAEC,WAAW,EAAE;EACpD,IAAIC,YAAY,GAAGD,WAAW,CAAC,CAAC,CAAC,GAAGpF,KAAK,CAACoF,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;EAChE,IAAIE,YAAY,GAAGF,WAAW,CAAC,CAAC,CAAC,GAAGpF,KAAK,CAACoF,WAAW,CAAC,CAAC,CAAC,CAAC,GAAGC,YAAY;EACxE,IAAIA,YAAY,IAAIC,YAAY,EAAE;IAChC,IAAID,YAAY,GAAGC,YAAY;MAAA,IAAAC,MAAA,GAAiC,CAACF,YAAY,EAAEC,YAAY,CAAC;MAA1DA,YAAY,GAAAC,MAAA;MAAEF,YAAY,GAAAE,MAAA;IAAA;IAC5D,OAAO;MACLH,WAAW,EAAExC,IAAI,CAAC3C,SAAS,CAACoF,YAAY,EAAEC,YAAY,EAAEH,IAAI,EAAE,IAAI,CAAC;MACnEK,gBAAgB,EAAEH,YAAY,IAAIzC,IAAI,CAAC6C,MAAM,CAACJ,YAAY,EAAE,MAAM,CAAC;MACnEK,cAAc,EAAEJ,YAAY,IAAI1C,IAAI,CAAC6C,MAAM,CAACH,YAAY,EAAE,MAAM;IAClE,CAAC;EACH;EACA,OAAO;IACLF,WAAW,EAAEO,SAAS;IACtBH,gBAAgB,EAAEG,SAAS;IAC3BD,cAAc,EAAEC;EAClB,CAAC;AACH;AACA,SAASC,gBAAgBA,CAAChD,IAAI,EAAEuC,IAAI,EAAE1C,KAAK,EAAE;EAC3C,IAAIoD,MAAM,GAAGpD,KAAK,CAAC,CAAC,CAAC,GAAGzC,KAAK,CAACyC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;EAC9C,IAAIqD,MAAM,GAAGrD,KAAK,CAAC,CAAC,CAAC,GAAGzC,KAAK,CAACyC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;EAC9C,IAAIsD,QAAQ;EACZ,IAAIF,MAAM,IAAIC,MAAM,EAAE;IACpB,IAAID,MAAM,GAAGC,MAAM;MAAA,IAAAE,MAAA,GAAqB,CAACH,MAAM,EAAEC,MAAM,CAAC;MAAlCA,MAAM,GAAAE,MAAA;MAAEH,MAAM,GAAAG,MAAA;IAAA;IACpCD,QAAQ,GAAGnD,IAAI,CAAC3C,SAAS,CAAC4F,MAAM,EAAEC,MAAM,EAAEX,IAAI,EAAE,IAAI,CAAC;EACvD;EACA,IAAMc,aAAa,GAAGJ,MAAM,IAAIjD,IAAI,CAAC6C,MAAM,CAACI,MAAM,EAAEV,IAAI,CAAC;EACzD,IAAMe,WAAW,GAAGJ,MAAM,IAAIlD,IAAI,CAAC6C,MAAM,CAACK,MAAM,EAAEX,IAAI,CAAC;EAEvD,OAAO;IACLY,QAAQ,EAARA,QAAQ;IACRE,aAAa,EAAbA,aAAa;IACbC,WAAW,EAAXA;EACF,CAAC;AACH;AAAC,IAEKC,gBAAgB,0BAAAC,WAAA;EAAAnE,SAAA,CAAAkE,gBAAA,EAAAC,WAAA;EAAA,IAAAC,OAAA,GAAAlE,YAAA,CAAAgE,gBAAA;EAAA,SAAAA,iBAAA;IAAA,IAAAG,KAAA;IAAAlE,eAAA,OAAA+D,gBAAA;IAAA,SAAAI,IAAA,GAAAjE,SAAA,CAAAhB,MAAA,EAAAkF,IAAA,OAAApF,KAAA,CAAAmF,IAAA,GAAAE,IAAA,MAAAA,IAAA,GAAAF,IAAA,EAAAE,IAAA;MAAAD,IAAA,CAAAC,IAAA,IAAAnE,SAAA,CAAAmE,IAAA;IAAA;IAAAH,KAAA,GAAAD,OAAA,CAAAK,IAAA,CAAArE,KAAA,CAAAgE,OAAA,SAAAM,MAAA,CAAAH,IAAA;IAAArC,eAAA,CAAAyC,sBAAA,CAAAN,KAAA,YAGZ,IAAIO,IAAI,CAAC,IAAIA,IAAI,EAAE,CAACC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAAA3C,eAAA,CAAAyC,sBAAA,CAAAN,KAAA,uBA8E9B,YAAM;MACvB,IAAQlB,WAAW,GAAKkB,KAAA,CAAK3D,OAAO,CAA5ByC,WAAW;MAEnB7E,IAAI,CAAAqG,sBAAA,CAAAN,KAAA,GAAO,qBAAqB,EAAElB,WAAW,CAAC9D,MAAM,GAAG,CAAC8D,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;IAC/E,CAAC;IAAAjB,eAAA,CAAAyC,sBAAA,CAAAN,KAAA,gBAsBW7F,YAAY;IAAA,OAAA6F,KAAA;EAAA;EAAA/D,YAAA,CAAA4D,gBAAA;IAAA3D,GAAA;IAAAC,KAAA,EAtGxB,SAAAsE,WAAAC,MAAA,EAA+B7B,IAAI,EAAE;MAAA,IAAA8B,MAAA;MAAA,IAAxBrE,IAAI,GAAAoE,MAAA,CAAJpE,IAAI;QAAKsE,KAAK,GAAAC,wBAAA,CAAAH,MAAA,EAAAI,SAAA;MACzB,IAAMC,IAAI,GAAG,IAAI;MACjB,IAAAC,cAAA,GAOI,IAAI,CAAC3E,OAAO;QANJ4E,SAAS,GAAAD,cAAA,CAAnBE,QAAQ;QACR/E,KAAK,GAAA6E,cAAA,CAAL7E,KAAK;QACLgF,OAAO,GAAAH,cAAA,CAAPG,OAAO;QACPrC,WAAW,GAAAkC,cAAA,CAAXlC,WAAW;QACXsC,kBAAkB,GAAAJ,cAAA,CAAlBI,kBAAkB;QAClBhG,MAAM,GAAA4F,cAAA,CAAN5F,MAAM;MAGR,IAAMiG,YAAY,GAAGzC,mBAAmB,CAACtC,IAAI,EAAEuC,IAAI,EAAEC,WAAW,aAAXA,WAAW,cAAXA,WAAW,GAAI,EAAE,CAAC;MACvE,IAAMwC,oBAAoB,GAAG1C,mBAAmB,CAACtC,IAAI,EAAEuC,IAAI,EAAEuC,kBAAkB,aAAlBA,kBAAkB,cAAlBA,kBAAkB,GAAI,EAAE,CAAC;MACtF,IAAMG,SAAS,GAAGjC,gBAAgB,CAAChD,IAAI,EAAEuC,IAAI,EAAE1C,KAAK,aAALA,KAAK,cAALA,KAAK,GAAI,EAAE,CAAC;MAC3D,IAAMqF,SAAS,GAAGlC,gBAAgB,CAAChD,IAAI,EAAEuC,IAAI,EAAEsC,OAAO,aAAPA,OAAO,cAAPA,OAAO,GAAI,EAAE,CAAC;MAE7D,IAAMD,QAAQ,GAAGD,SAAS,CAACQ,IAAI,CAACvH,YAAY,CAACoC,IAAI,EAAEuC,IAAI,CAAC,CAAC;MAEzD,OAAAvD,aAAA;QACEgB,IAAI,EAAEnC,YAAY,CAACmC,IAAI,EAAElB,MAAM,CAAC;QAChCsG,OAAO,EAAE,IAAI,CAACC,SAAS,CAACrF,IAAI,EAAElB,MAAM,CAAC;QACrC4B,QAAQ,EAAE,EAAE;QACZ4E,IAAI,EAAE,UAAU;QAChBjC,aAAa,EAAE4B,SAAS,CAAC5B,aAAa;QACtCC,WAAW,EAAE2B,SAAS,CAAC3B,WAAW;QAClCH,QAAQ,EAAE8B,SAAS,CAAC9B,QAAQ;QAC5BX,WAAW,EAAEuC,YAAY,CAACvC,WAAW;QACrCI,gBAAgB,EAAEmC,YAAY,CAACnC,gBAAgB;QAC/CE,cAAc,EAAEiC,YAAY,CAACjC,cAAc;QAE3CgC,kBAAkB,EAAEE,oBAAoB,CAACxC,WAAW,IAAI0C,SAAS,CAAC/B,QAAQ;QAC1EoC,uBAAuB,EAAEP,oBAAoB,CAACpC,gBAAgB;QAC9D4C,qBAAqB,EAAER,oBAAoB,CAAClC,cAAc;QAC1D2C,YAAY,EAAEP,SAAS,CAAC7B,aAAa;QACrCqC,UAAU,EAAER,SAAS,CAAC5B,WAAW;QAEjC,eAAe,EAAE2B,SAAS,CAAC9B,QAAQ;QACnC,eAAe,EAAEyB,QAAQ;QACzB,cAAc,EAAEG,YAAY,CAACvC,WAAW,GAAG,MAAM,GAAGO,SAAS;QAE7D6B,QAAQ,EAARA,QAAQ;QACRe,KAAK,EAAE3F,IAAI,CAAC6C,MAAM,CAAC4B,IAAI,CAACkB,KAAK,EAAEpD,IAAI,CAAC;QACpCqD,OAAO,EAAE,SAAAA,QAAA,EAAM;UACb,IAAAC,cAAA,GAA6CxB,MAAI,CAACtE,OAAO;YAAjD1B,KAAK,GAAAwH,cAAA,CAALxH,KAAK;YAAeyH,YAAY,GAAAD,cAAA,CAAzBrD,WAAW;UAC1B,IAAIA,WAAW,GAAG,CAACxC,IAAI,CAACO,OAAO,EAAE,CAAC;UAElC,IAAIuF,YAAY,CAACpH,MAAM,KAAK,CAAC,EAAE;YAC7B8D,WAAW,GAAG,CAACsD,YAAY,CAAC,CAAC,CAAC,EAAE9F,IAAI,CAACO,OAAO,EAAE,CAAC;UACjD,CAAC,MAAM,IAAIuF,YAAY,CAACpH,MAAM,IAAI,CAAC,EAAE;YACnC8D,WAAW,GAAG,EAAE;UAClB;UAEA,IAAInE,KAAK,KAAK,SAAS,EAAE;YACvBV,IAAI,CAAC0G,MAAI,EAAE,4BAA4B,EAAE7B,WAAW,CAAC;UACvD,CAAC,MAAM;YACL7E,IAAI,CAAC0G,MAAI,EAAE,qBAAqB,EAAE7B,WAAW,CAAC;UAChD;UACA7E,IAAI,CAAC0G,MAAI,EAAE,UAAU,EAAErE,IAAI,CAAC+F,MAAM,EAAE,CAAC;QACvC,CAAC;QACDC,YAAY,EAAE,SAAAA,aAAA,EAAM;UAClB,IAAAC,eAAA,GAA6C5B,MAAI,CAACtE,OAAO;YAAjD1B,KAAK,GAAA4H,eAAA,CAAL5H,KAAK;YAAeyH,YAAY,GAAAG,eAAA,CAAzBzD,WAAW;UAC1B,IAAM3C,KAAK,GAAGxB,KAAK,KAAK,SAAS,GAAGgG,MAAI,CAACtE,OAAO,CAAC8E,OAAO,GAAGR,MAAI,CAACtE,OAAO,CAACF,KAAK;UAC7E,IAAIiG,YAAY,CAAC,CAAC,CAAC,IAAI,CAACjG,KAAK,aAALA,KAAK,cAALA,KAAK,GAAI,EAAE,EAAEnB,MAAM,KAAK,CAAC,EAAE;YACjD,IAAMwH,SAAS,GAAGJ,YAAY,CAAC,CAAC,CAAC,IAAI,CAACjG,KAAK,aAALA,KAAK,cAALA,KAAK,GAAI,EAAE,EAAE,CAAC,CAAC;YACrD,IAAM2C,aAAW,GAAG,CAAC0D,SAAS,CAAC3F,OAAO,EAAE,EAAEP,IAAI,CAACO,OAAO,EAAE,CAAC;YACzD,IAAIlC,KAAK,KAAK,SAAS,EAAE;cACvBV,IAAI,CAAC0G,MAAI,EAAE,4BAA4B,EAAE7B,aAAW,CAAC;YACvD,CAAC,MAAM;cACL7E,IAAI,CAAC0G,MAAI,EAAE,qBAAqB,EAAE7B,aAAW,CAAC;YAChD;UACF;QACF;MAAC,GACE8B,KAAK;IAEZ;EAAC;IAAA1E,GAAA;IAAAC,KAAA,EAQD,SAAAsG,aAAAC,MAAA,EAA0BC,KAAK,EAAE;MAAA,IAAlBjB,OAAO,GAAAgB,MAAA,CAAPhB,OAAO;MACpB,IAAMkB,KAAK,GAAG,CAAC;MACf,IAAQC,QAAQ,GAAK,IAAI,CAACxG,OAAO,CAAzBwG,QAAQ;MAChB,OAAO;QACL,eAAe,EAAGF,KAAK,GAAGC,KAAK,GAAI,CAAC;QACpC,eAAe,EAAEE,IAAI,CAACC,KAAK,CAACJ,KAAK,GAAGC,KAAK,CAAC,GAAG,CAAC;QAC9CI,GAAG,EAAE,SAAAA,IAACC,IAAI,EAAK;UACb,IAAI,CAACvB,OAAO,EAAE;UACdmB,QAAQ,CAACnB,OAAO,CAAC,GAAGuB,IAAI;QAC1B;MACF,CAAC;IACH;EAAC;IAAA/G,GAAA;IAAAC,KAAA,EAED,SAAA+G,aAAA,EAAe;MACb,OAAO;QACLtB,IAAI,EAAE,MAAM;QACZuB,QAAQ,EAAE;MACZ,CAAC;IACH;EAAC;IAAAjH,GAAA;IAAAC,KAAA,EAGD,SAAAiH,cAAA,EAAgB;MAAA,IAAAC,MAAA;MACd,IAAAC,cAAA,GAAmD,IAAI,CAACjH,OAAO;QAAvDjB,MAAM,GAAAkI,cAAA,CAANlI,MAAM;QAAEmI,WAAW,GAAAD,cAAA,CAAXC,WAAW;QAAEC,iBAAiB,GAAAF,cAAA,CAAjBE,iBAAiB;MAC9C,IAAMrH,KAAK,GAAG,IAAI,CAACE,OAAO,CAACF,KAAK,IAAI,EAAE;MACtC,IAAMgF,OAAO,GAAG,IAAI,CAAC9E,OAAO,CAAC8E,OAAO,IAAI,EAAE;MAE1C,IAAI,CAACqC,iBAAiB,EAAE,OAAO,IAAI;MAEnC,IAAMC,CAAC,GAAG,SAAJA,CAACA,CAAIvH,GAAG,EAAEI,IAAI;QAAA,OAClBiH,WAAW,CAACrH,GAAG,EAAEI,IAAI,GAAG;UAAEA,IAAI,EAAE+G,MAAI,CAAC1B,SAAS,CAACrF,IAAI,EAAElB,MAAM;QAAE,CAAC,GAAGiE,SAAS,CAAC;MAAA;MAE7E,IAAIqE,WAAW,GAAG,EAAE;MACpB,IAAIvH,KAAK,CAACnB,MAAM,KAAK,CAAC,IAAImG,OAAO,CAACnG,MAAM,KAAK,CAAC,EAAE;QAC9C0I,WAAW,IAAID,CAAC,CAAC,kBAAkB,CAAC,GAAG,IAAI;MAC7C,CAAC,MAAM,IAAItH,KAAK,CAACnB,MAAM,KAAK,CAAC,IAAImG,OAAO,CAACnG,MAAM,KAAK,CAAC,EAAE;QACrD0I,WAAW,IAAID,CAAC,CAAC,mBAAmB,CAAC,GAAG,IAAI;MAC9C;MAEA,IAAID,iBAAiB,KAAK,OAAO,EAAE;QACjC,IAAIrH,KAAK,CAAC,CAAC,CAAC,IAAIA,KAAK,CAAC,CAAC,CAAC,EAAEuH,WAAW,IAAID,CAAC,CAAC,WAAW,CAAC,GAAG,GAAG;QAC7D,IAAItH,KAAK,CAAC,CAAC,CAAC,EAAEuH,WAAW,IAAID,CAAC,CAAC,UAAU,EAAEtH,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;QAC3D,IAAIA,KAAK,CAAC,CAAC,CAAC,EAAEuH,WAAW,IAAID,CAAC,CAAC,QAAQ,EAAEtH,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;MAC3D,CAAC,MAAM,IAAIqH,iBAAiB,KAAK,eAAe,EAAE;QAChD,IAAIrC,OAAO,CAACnG,MAAM,KAAK,CAAC,EAAE;UACxB0I,WAAW,IAAID,CAAC,CAAC,YAAY,CAAC,GAAG,GAAG;UACpC,IAAItC,OAAO,CAAC,CAAC,CAAC,EAAEuC,WAAW,IAAID,CAAC,CAAC,UAAU,EAAEtH,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;UAC7D,IAAIgF,OAAO,CAAC,CAAC,CAAC,EAAEuC,WAAW,IAAID,CAAC,CAAC,QAAQ,EAAEtH,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;QAC7D,CAAC,MAAM;UACL,IAAIA,KAAK,CAAC,CAAC,CAAC,IAAIA,KAAK,CAAC,CAAC,CAAC,EAAEuH,WAAW,IAAID,CAAC,CAAC,YAAY,CAAC,GAAG,GAAG;UAC9D,IAAItH,KAAK,CAAC,CAAC,CAAC,EAAEuH,WAAW,IAAID,CAAC,CAAC,UAAU,EAAEtH,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;UAC3D,IAAIA,KAAK,CAAC,CAAC,CAAC,EAAEuH,WAAW,IAAID,CAAC,CAAC,QAAQ,EAAEtH,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;UACzD,IAAIgF,OAAO,CAACnG,MAAM,GAAG,CAAC,EAAE;YACtB0I,WAAW,IAAID,CAAC,CAAC,YAAY,CAAC,GAAG,GAAG;YACpC,IAAItC,OAAO,CAAC,CAAC,CAAC,EAAEuC,WAAW,IAAID,CAAC,CAAC,UAAU,EAAEtC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;YAC/D,IAAIA,OAAO,CAAC,CAAC,CAAC,EAAEuC,WAAW,IAAID,CAAC,CAAC,QAAQ,EAAEtC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;UAC/D;QACF;MACF;MAEA,OAAOuC,WAAW;IACpB;EAAC;EAAA,OAAA7D,gBAAA;AAAA,EAnJ4BhG,SAAS;AAAAgE,eAAA,CAAlCgC,gBAAgB,WACLtF,KAAK;AAqJtB,SAASoJ,YAAYA,CAAAC,MAAA,EAA0D;EAAA,IAAAC,KAAA,GAAArF,YAAA;IAAAsF,KAAA;EAAA,IAAvDrG,MAAM,GAAAmG,MAAA,CAANnG,MAAM;IAAEnB,IAAI,GAAAsH,MAAA,CAAJtH,IAAI;IAAEQ,MAAI,GAAA8G,MAAA;IAAEG,QAAQ,GAAAH,MAAA,CAARG,QAAQ;IAAE7C,QAAQ,GAAA0C,MAAA,CAAR1C,QAAQ;IAAEpC,WAAW,GAAA8E,MAAA,CAAX9E,WAAW;EACzE,IAAMkF,aAAa,GAIPhK,GAAG;EAHf,OAAA8J,KAAA,GAAO/J,OAAO,CAAC0D,MAAM,CAAC,eACpBhE,KAAA,CAAAiE,aAAA,CAACsG,aAAa,EAAAF,KAAA,CAAAnG,EAAA,kBAAArC,aAAA,KAAA2I,aAAA;IAAA,gBACE/C,QAAQ,IAAI6C,QAAQ,IAAI,CAACzH,IAAI;IAAA,eAE9B,CAACA,IAAI;IAAA,cACNQ,MAAI,IAAIR,IAAI;IAAA,gBACVwC,WAAW,GAAG,CAAC,GAAG,CAAC;EAAC,GAAA+E,KAAA,IAClC;AAEN;AACAF,YAAY,CAACO,OAAO,GAAG,CAAC7J,oBAAoB,EAAE,CAAC;AAAC,IAE1C8J,gBAAgB,0BAAAC,iBAAA;EAAAzI,SAAA,CAAAwI,gBAAA,EAAAC,iBAAA;EAAA,IAAAC,OAAA,GAAAxI,YAAA,CAAAsI,gBAAA;EAAA,SAAAA,iBAAA;IAAArI,eAAA,OAAAqI,gBAAA;IAAA,OAAAE,OAAA,CAAAtI,KAAA,OAAAC,SAAA;EAAA;EAAAC,YAAA,CAAAkI,gBAAA;IAAAjI,GAAA;IAAAC,KAAA,EAUpB,SAAAmI,eAAA,EAAiB;MAAA,IAAAC,MAAA;MACf,IAAAC,cAAA,GAAoD,IAAI,CAACnI,OAAO;QAAxDoI,eAAe,GAAAD,cAAA,CAAfC,eAAe;QAAEC,cAAc,GAAAF,cAAA,CAAdE,cAAc;QAAEtJ,MAAM,GAAAoJ,cAAA,CAANpJ,MAAM;MAC/C,IAAIkB,IAAI,GAAG5C,KAAK,CAAC+K,eAAe,CAAC,CAAClI,OAAO,CAAC,OAAO,CAAC;MAClD,IAAIoI,QAAQ,GAAGrI,IAAI,CAACsI,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC;MACxC,IAAIC,QAAQ,GAAGvI,IAAI,CAACS,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC;;MAEnC;MACA,IAAM+H,eAAe,GAAGxI,IAAI,CACzBlB,MAAM,CAACA,MAAM,EAAED,oBAAoB,CAACC,MAAM,CAAC,CAAC,CAC5CmB,OAAO,CAAC,MAAM,CAAC,CACfwI,GAAG,CAAC,GAAG,CAAC,GACP,CAACzI,IAAI,CAACyI,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GACxBzI,IAAI,CAACyI,GAAG,CAAC,GAAG,CAAC;MAEjB,IAAIC,aAAa,GAAGF,eAAe,GAC/BnK,KAAK,CAACgK,QAAQ,CAACM,WAAW,EAAE,EAAE,UAAChH,CAAC,EAAK;QACnC,IAAMiH,GAAG,GAAGX,MAAI,CAAC9D,UAAU,CAAC;UAAEnE,IAAI,EAAEqI,QAAQ;UAAEZ,QAAQ,EAAE,IAAI;UAAE9F,CAAC,EAADA;QAAE,CAAC,EAAE,MAAM,CAAC;QAC1EiH,GAAG,CAAClI,QAAQ,GAAGmI,MAAM,CAACR,QAAQ,CAACI,GAAG,CAAC,MAAM,CAAC,CAAC;QAC3CJ,QAAQ,GAAGA,QAAQ,CAAC5H,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC;QACjC,OAAOmI,GAAG;MACZ,CAAC,CAAC,CAACE,KAAK,CAAC,CAACN,eAAe,CAAC,GAC1B,EAAE;MAEN,IAAMO,SAAS,GAAG1K,KAAK,CAAC2B,IAAI,CAAC2I,WAAW,EAAE,EAAE,UAAChH,CAAC,EAAK;QACjD,IAAMiH,GAAG,GAAGX,MAAI,CAAC9D,UAAU,CAAC;UAAEnE,IAAI,EAAJA,IAAI;UAAE2B,CAAC,EAADA;QAAE,CAAC,EAAE,MAAM,CAAC;QAChDiH,GAAG,CAAClI,QAAQ,GAAGmI,MAAM,CAAC7I,IAAI,CAACyI,GAAG,CAAC,MAAM,CAAC,CAAC;QACvCzI,IAAI,GAAGA,IAAI,CAACS,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC;QACzB,OAAOmI,GAAG;MACZ,CAAC,CAAC;MAEF,IAAII,aAAa,GAAG3K,KAAK,CAAC,EAAE,GAAGqK,aAAa,CAAChK,MAAM,GAAGqK,SAAS,CAACrK,MAAM,EAAE,UAACiD,CAAC,EAAK;QAC7E,IAAMiH,GAAG,GAAGX,MAAI,CAAC9D,UAAU,CAAC;UAAEnE,IAAI,EAAEuI,QAAQ;UAAEd,QAAQ,EAAE,IAAI;UAAE9F,CAAC,EAADA;QAAE,CAAC,EAAE,MAAM,CAAC;QAC1EiH,GAAG,CAAClI,QAAQ,GAAGmI,MAAM,CAACN,QAAQ,CAACE,GAAG,CAAC,MAAM,CAAC,CAAC;QAC3CF,QAAQ,GAAGA,QAAQ,CAAC9H,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC;QACjC,OAAOmI,GAAG;MACZ,CAAC,CAAC;MAEF,IAAI,CAACR,cAAc,EAAE;QACnBM,aAAa,GAAGA,aAAa,CAACjH,GAAG,CAAC;UAAA,OAAO;YACvCmD,QAAQ,EAAE,IAAI;YACdlE,QAAQ,EAAE;UACZ,CAAC;QAAA,CAAC,CAAC;QACHsI,aAAa,GAAG,EAAE;MACpB;MAEA,UAAAjF,MAAA,CAAAkF,kBAAA,CAAWP,aAAa,GAAAO,kBAAA,CAAKF,SAAS,GAAAE,kBAAA,CAAKD,aAAa;IAC1D;EAAC;IAAApJ,GAAA;IAAAC,KAAA,EAED,SAAAc,WAAA,EAAa;MACX,OAAO;QACLC,IAAI,EAAE,IAAI,CAACoH,cAAc;MAC3B,CAAC;IACH;EAAC;IAAApI,GAAA;IAAAC,KAAA,EAED,SAAAgB,OAAA,EAAS;MAAA,IAAAqI,KAAA,QAAAnJ,OAAA;QAAAoJ,KAAA;MACP,IAAMC,SAAS,GAMM1L,GAAG;MALxB,IAAM2L,SAAS,GAAG,KAAK;MACvB,IAAAC,cAAA,GAAqC,IAAI,CAACvJ,OAAO;QAAzCmB,QAAQ,GAAAoI,cAAA,CAARpI,QAAQ;QAAEC,MAAM,GAAAmI,cAAA,CAANnI,MAAM;QAAErC,MAAM,GAAAwK,cAAA,CAANxK,MAAM;MAChC,IAAMsI,WAAW,GAAG,IAAI,CAACN,aAAa,EAAE;MAExC,OAAAqC,KAAA,GAAO1L,OAAO,CAAC0D,MAAM,CAAC,eACpBhE,KAAA,CAAAiE,aAAA,CAACgI,SAAS,EAAAD,KAAA,CAAA9H,EAAA,cAAArC,aAAA,KAAAuK,aAAA,CAAAvK,aAAA,KAAkB,IAAI,CAAC4H,YAAY,EAAE,GAAAsC,KAAA,kBAC7C/L,KAAA,CAAAiE,aAAA,CAACQ,gBAAgB,EAAAuH,KAAA,CAAA9H,EAAA;QAAA,UAASvC,MAAM;QAAA,QAAO;MAAK,GAAG,eAC/C3B,KAAA,CAAAiE,aAAA,CAACiI,SAAS,EAAAF,KAAA,CAAA9H,EAAA;QAAA,gBAAe,IAAI,CAACmI,gBAAgB;QAAA,QAAO;MAAK,iBACxDrM,KAAA,CAAAiE,aAAA,CAACF,QAAQ,EAAAiI,KAAA,CAAA9H,EAAA,iBAAG,CACF,eACZlE,KAAA,CAAAiE,aAAA,CAACpD,gBAAgB,EAAAmL,KAAA,CAAA9H,EAAA;QAAA,QAAM;MAAK,iBAC1BlE,KAAA,CAAAiE,aAAA,SAAA+H,KAAA,CAAA9H,EAAA;QAAA,aAAgB,QAAQ;QAAA,QAAM;MAAU,IACrC+F,WAAW,CACP,CACU,CACT;IAEhB;EAAC;EAAA,OAAAS,gBAAA;AAAA,EAnF4BtE,gBAAgB;AAAAhC,eAAA,CAAzCsG,gBAAgB,iBACC,cAAc;AAAAtG,eAAA,CAD/BsG,gBAAgB,kBAEE;EACpBM,eAAe,EAAE,IAAIlE,IAAI,CAAC,IAAIA,IAAI,EAAE,CAACC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;EAC1DU,QAAQ,EAAE,EAAE;EACZ/E,KAAK,EAAE,EAAE;EACTf,MAAM,EAAE,IAAI;EACZ4B,QAAQ,EAAE,SAAAA,SAAA+I,MAAA;IAAA,IAAG7I,IAAI,GAAA6I,MAAA,CAAJ7I,IAAI;IAAA,OAAOA,IAAI,CAACa,GAAG,CAAC,UAACC,IAAI,EAAEC,CAAC;MAAA,oBAAKxE,KAAA,CAAAiE,aAAA,CAACsI,YAAY,CAAC7H,IAAI,EAAAC,QAAA;QAAClC,GAAG,EAAE+B;MAAE,GAAKD,IAAI,EAAI;IAAA,EAAC;EAAA;AACxF,CAAC;AAAA,IA8EGiI,kBAAkB,0BAAAC,kBAAA;EAAAvK,SAAA,CAAAsK,kBAAA,EAAAC,kBAAA;EAAA,IAAAC,OAAA,GAAAtK,YAAA,CAAAoK,kBAAA;EAAA,SAAAA,mBAAA;IAAA,IAAAG,MAAA;IAAAtK,eAAA,OAAAmK,kBAAA;IAAA,SAAAI,KAAA,GAAArK,SAAA,CAAAhB,MAAA,EAAAkF,IAAA,OAAApF,KAAA,CAAAuL,KAAA,GAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;MAAApG,IAAA,CAAAoG,KAAA,IAAAtK,SAAA,CAAAsK,KAAA;IAAA;IAAAF,MAAA,GAAAD,OAAA,CAAA/F,IAAA,CAAArE,KAAA,CAAAoK,OAAA,SAAA9F,MAAA,CAAAH,IAAA;IAAArC,eAAA,CAAAyC,sBAAA,CAAA8F,MAAA,gBA6BVhM,UAAU;IAAA,OAAAgM,MAAA;EAAA;EAAAnK,YAAA,CAAAgK,kBAAA;IAAA/J,GAAA;IAAAC,KAAA,EAtBtB,SAAAoK,gBAAA,EAAkB;MAAA,IAAAC,MAAA;MAChB,IAAAC,cAAA,GAAoC,IAAI,CAACpK,OAAO;QAAxCoI,eAAe,GAAAgC,cAAA,CAAfhC,eAAe;QAAErJ,MAAM,GAAAqL,cAAA,CAANrL,MAAM;MAE/B,IAAIkB,IAAI,GAAG5C,KAAK,CAAC+K,eAAe,CAAC,CAAClI,OAAO,CAAC,MAAM,CAAC;MAEjD,OAAO5B,KAAK,CAAC,EAAE,EAAE,YAAM;QACrB,IAAM+L,KAAK,GAAGF,MAAI,CAAC/F,UAAU,CAAC;UAAEnE,IAAI,EAAJA;QAAK,CAAC,EAAE,OAAO,CAAC;QAChDoK,KAAK,CAAC1J,QAAQ,GAAG,IAAIP,IAAI,CAACC,cAAc,CAACtB,MAAM,EAAE;UAAEsL,KAAK,EAAE;QAAQ,CAAC,CAAC,CAAC9J,MAAM,CAACN,IAAI,CAACO,OAAO,EAAE,CAAC;QAC3F6J,KAAK,QAAK,GAAG,IAAIjK,IAAI,CAACC,cAAc,CAACtB,MAAM,EAAE;UAAEsL,KAAK,EAAE,MAAM;UAAEC,IAAI,EAAE;QAAU,CAAC,CAAC,CAAC/J,MAAM,CACrFN,IAAI,CAACO,OAAO,EAAE,CACf;QACDP,IAAI,GAAGA,IAAI,CAACS,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC;QAC3B,OAAO2J,KAAK;MACd,CAAC,CAAC;IACJ;EAAC;IAAAxK,GAAA;IAAAC,KAAA,EAED,SAAAc,WAAA,EAAa;MACX,OAAO;QACL2J,MAAM,EAAE,IAAI,CAACL,eAAe;MAC9B,CAAC;IACH;EAAC;IAAArK,GAAA;IAAAC,KAAA,EAID,SAAAgB,OAAA,EAAS;MAAA,IAAA0J,KAAA,QAAAxK,OAAA;QAAAyK,MAAA;MACP,IAAMpB,SAAS,GAMM1L,GAAG;MALxB,IAAM+M,WAAW,GAAG,KAAK;MACzB,IAAAC,cAAA,GAA6B,IAAI,CAAC3K,OAAO;QAAjCmB,QAAQ,GAAAwJ,cAAA,CAARxJ,QAAQ;QAAEC,MAAM,GAAAuJ,cAAA,CAANvJ,MAAM;MACxB,IAAMiG,WAAW,GAAG,IAAI,CAACN,aAAa,EAAE;MAExC,OAAA0D,MAAA,GAAO/M,OAAO,CAAC0D,MAAM,CAAC,eACpBhE,KAAA,CAAAiE,aAAA,CAACgI,SAAS,EAAAoB,MAAA,CAAAnJ,EAAA,cAAArC,aAAA,KAAA2L,aAAA,CAAA3L,aAAA,KAAkB,IAAI,CAAC4H,YAAY,EAAE,GAAA2D,KAAA,kBAC7CpN,KAAA,CAAAiE,aAAA,CAACqJ,WAAW,EAAAD,MAAA,CAAAnJ,EAAA;QAAA,gBAAe,IAAI,CAACmI,gBAAgB;QAAA,QAAO;MAAK,iBAC1DrM,KAAA,CAAAiE,aAAA,CAACF,QAAQ,EAAAsJ,MAAA,CAAAnJ,EAAA,iBAAG,CACA,eACdlE,KAAA,CAAAiE,aAAA,CAACpD,gBAAgB,EAAAwM,MAAA,CAAAnJ,EAAA;QAAA,QAAM;MAAK,iBAC1BlE,KAAA,CAAAiE,aAAA,SAAAoJ,MAAA,CAAAnJ,EAAA;QAAA,aAAgB,QAAQ;QAAA,QAAM;MAAU,IACrC+F,WAAW,CACP,CACU,CACT;IAEhB;EAAC;EAAA,OAAAuC,kBAAA;AAAA,EAjD8BpG,gBAAgB;AAAAhC,eAAA,CAA3CoI,kBAAkB,iBACD,gBAAgB;AAAApI,eAAA,CADjCoI,kBAAkB,kBAEA;EACpB7K,MAAM,EAAE,IAAI;EACZ4B,QAAQ,EAAE,SAAAA,SAAAkK,MAAA;IAAA,IAAGN,MAAM,GAAAM,MAAA,CAANN,MAAM;IAAA,OAAOA,MAAM,CAAC7I,GAAG,CAAC,UAACC,IAAI,EAAEC,CAAC;MAAA,oBAAKxE,KAAA,CAAAiE,aAAA,CAACyJ,cAAc,CAAChJ,IAAI,EAAAC,QAAA;QAAClC,GAAG,EAAE+B;MAAE,GAAKD,IAAI,EAAI;IAAA,EAAC;EAAA;AAC9F,CAAC;AA+CH,IAAME,gBAAgB,GAAGtE,eAAe,CAAC6B,oBAAoB,EAAE;EAC7D0C,IAAI,EAAEE;AACR,CAAC,CAAC;AAEF,IAAM2H,YAAY,GAAGpM,eAAe,CAACuK,gBAAgB,EAAE;EACrDhG,IAAI,EAAEwF;AACR,CAAC,CAAC;AAEF,IAAMwD,cAAc,GAAGvN,eAAe,CAACqM,kBAAkB,EAAE;EACzD9H,IAAI,EAAEwF;AACR,CAAC,CAAC;AAEF,SAASA,YAAY,EAAEzF,gBAAgB,EAAE8H,YAAY,EAAEmB,cAAc"}
1
+ {"version":3,"file":"Calendar.js","names":["React","dayjs","isBetween","createComponent","Component","Root","sstyled","Box","fire","includesDate","formatDDMMYY","formatMMYY","keyboardFocusEnhance","ScreenReaderOnly","style","_sstyled","insert","extend","range","N","cb","Array","from","length","v","k","getDayJSLocaleParams","locale","includes","_objectSpread","weekStart","Ls","CalendarWeekDaysRoot","_Component","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","key","value","getDaysByWeek","asProps","date","startOf","short","Intl","DateTimeFormat","weekday","format","valueOf","long","add","children","setContext","days","render","_ref","_ref6","SWeekDays","_this$asProps","Children","styles","createElement","cn","_assignProps","_defineProperty","_ref17","map","data","i","CalendarWeekDays","Unit","_extends","CalendarWeekUnit","_ref11","_ref2","arguments[0]","_ref7","SWeekDay","_assignProps2","resolveHighlighting","unit","highlighted","highlighted0","highlighted1","_ref12","startHighlighted","isSame","endHighlighted","undefined","resolveSelecting","value0","value1","selected","_ref13","startSelected","endSelected","CalendarAbstract","_Component2","_super2","_this","_len","args","_key","call","concat","_assertThisInitialized","Date","setHours","createUnit","_ref14","_this2","other","_objectWithoutProperties","_excluded","self","_this$asProps2","_disabled","disabled","compare","compareHighlighted","highlighting","comparedHighlighting","selecting","comparing","some","dateKey","formatter","role","compareStartHighlighted","compareEndHighlighted","compareStart","compareEnd","today","onClick","_this2$asProps","_highlighted","toDate","onMouseEnter","_this2$asProps2","startDate","getUnitProps","_ref15","index","inRow","unitRefs","Math","floor","ref","node","getRootProps","tabIndex","describeValue","_this3","_this$asProps3","getI18nText","actionsDescribing","t","description","CalendarUnit","_ref16","_ref3","_ref8","outdated","SCalendarUnit","_assignProps3","enhance","CalendarDaysRoot","_CalendarAbstract","_super3","getDaysByMonth","_this4","_this$asProps4","displayedPeriod","renderOutdated","prevDate","subtract","nextDate","dateStartOfWeek","get","prevMonthDays","daysInMonth","day","String","slice","monthDays","nextMonthDays","_toConsumableArray","_ref4","_ref9","SCalendar","SGridDays","_this$asProps5","_assignProps4","handleMouseLeave","_ref18","CalendarDays","CalendarMonthsRoot","_CalendarAbstract2","_super4","_this5","_len2","_key2","getMonthsByYear","_this6","_this$asProps6","month","year","months","_ref5","_ref10","SGridMonths","_this$asProps7","_assignProps5","_ref19","CalendarMonths"],"sources":["../../../src/components/Calendar.jsx"],"sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport isBetween from 'dayjs/plugin/isBetween';\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport fire from '@semcore/utils/lib/fire';\nimport { includesDate } from '../utils/includesDate';\nimport { formatDDMMYY, formatMMYY } from '../utils/formatDate';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport { ScreenReaderOnly } from '@semcore/flex-box';\n\nimport style from '../style/calendar.shadow.css';\n\ndayjs.extend(isBetween);\n\nconst range = (N, cb) => Array.from({ length: N }, (v, k) => cb(k));\n\nfunction getDayJSLocaleParams(locale) {\n if (locale.includes('en') || locale.includes('ja')) {\n return {\n weekStart: 0,\n ...dayjs.Ls[locale],\n };\n }\n return {\n weekStart: 1,\n ...dayjs.Ls[locale],\n };\n}\n\nclass CalendarWeekDaysRoot extends Component {\n static displayName = 'CalendarWeekDays';\n static style = style;\n static defaultProps = {\n locale: 'en',\n children: ({ days }) => days.map((data, i) => <CalendarWeekDays.Unit key={i} {...data} />),\n };\n\n getDaysByWeek() {\n const { locale } = this.asProps;\n\n let date = dayjs().locale(locale, getDayJSLocaleParams(locale)).startOf('week');\n return range(7, () => {\n const short = new Intl.DateTimeFormat(locale, { weekday: 'short' }).format(date.valueOf());\n const long = new Intl.DateTimeFormat(locale, { weekday: 'long' }).format(date.valueOf());\n date = date.add(1, 'day');\n return {\n children: short,\n 'aria-label': long,\n };\n });\n }\n\n setContext() {\n return {\n days: this.getDaysByWeek(),\n };\n }\n\n render() {\n const SWeekDays = Root;\n const { Children, styles } = this.asProps;\n return sstyled(styles)(\n <SWeekDays render={Box}>\n <Children />\n </SWeekDays>,\n );\n }\n}\n\nfunction CalendarWeekUnit({ styles }) {\n const SWeekDay = Root;\n return sstyled(styles)(<SWeekDay render={Box} role='columnheader' />);\n}\n\nfunction resolveHighlighting(date, unit, highlighted) {\n let highlighted0 = highlighted[0] ? dayjs(highlighted[0]) : null;\n let highlighted1 = highlighted[1] ? dayjs(highlighted[1]) : highlighted0;\n if (highlighted0 && highlighted1) {\n if (highlighted0 > highlighted1) [highlighted1, highlighted0] = [highlighted0, highlighted1];\n return {\n highlighted: date.isBetween(highlighted0, highlighted1, unit, '[]'),\n startHighlighted: highlighted0 && date.isSame(highlighted0, 'date'),\n endHighlighted: highlighted1 && date.isSame(highlighted1, 'date'),\n };\n }\n return {\n highlighted: undefined,\n startHighlighted: undefined,\n endHighlighted: undefined,\n };\n}\nfunction resolveSelecting(date, unit, value) {\n let value0 = value[0] ? dayjs(value[0]) : null;\n let value1 = value[1] ? dayjs(value[1]) : null;\n let selected;\n if (value0 && value1) {\n if (value0 > value1) [value1, value0] = [value0, value1];\n selected = date.isBetween(value0, value1, unit, '()');\n }\n const startSelected = value0 && date.isSame(value0, unit);\n const endSelected = value1 && date.isSame(value1, unit);\n\n return {\n selected,\n startSelected,\n endSelected,\n };\n}\n\nclass CalendarAbstract extends Component {\n static style = style;\n\n today = new Date(new Date().setHours(0, 0, 0, 0));\n\n createUnit({ date, ...other }, unit) {\n const self = this;\n const {\n disabled: _disabled,\n value,\n compare,\n highlighted,\n compareHighlighted,\n locale,\n } = this.asProps;\n\n const highlighting = resolveHighlighting(date, unit, highlighted ?? []);\n const comparedHighlighting = resolveHighlighting(date, unit, compareHighlighted ?? []);\n const selecting = resolveSelecting(date, unit, value ?? []);\n const comparing = resolveSelecting(date, unit, compare ?? []);\n\n const disabled = _disabled.some(includesDate(date, unit));\n\n return {\n date: formatDDMMYY(date, locale),\n dateKey: this.formatter(date, locale),\n children: '',\n role: 'gridcell',\n startSelected: selecting.startSelected,\n endSelected: selecting.endSelected,\n selected: selecting.selected,\n highlighted: highlighting.highlighted,\n startHighlighted: highlighting.startHighlighted,\n endHighlighted: highlighting.endHighlighted,\n\n compareHighlighted: comparedHighlighting.highlighted || comparing.selected,\n compareStartHighlighted: comparedHighlighting.startHighlighted,\n compareEndHighlighted: comparedHighlighting.endHighlighted,\n compareStart: comparing.startSelected,\n compareEnd: comparing.endSelected,\n\n 'aria-selected': selecting.selected,\n 'aria-disabled': disabled,\n 'aria-current': highlighting.highlighted ? 'date' : undefined,\n\n disabled,\n today: date.isSame(self.today, unit),\n onClick: () => {\n const { range, highlighted: _highlighted } = this.asProps;\n let highlighted = [date.valueOf()];\n\n if (_highlighted.length === 1) {\n highlighted = [_highlighted[0], date.valueOf()];\n } else if (_highlighted.length >= 2) {\n highlighted = [];\n }\n\n if (range === 'compare') {\n fire(this, 'onCompareHighlightedChange', highlighted);\n } else {\n fire(this, 'onHighlightedChange', highlighted);\n }\n fire(this, 'onChange', date.toDate());\n },\n onMouseEnter: () => {\n const { range, highlighted: _highlighted } = this.asProps;\n const value = range === 'compare' ? this.asProps.compare : this.asProps.value;\n if (_highlighted[0] || (value ?? []).length === 1) {\n const startDate = _highlighted[0] || (value ?? [])[0];\n const highlighted = [startDate.valueOf(), date.valueOf()];\n if (range === 'compare') {\n fire(this, 'onCompareHighlightedChange', highlighted);\n } else {\n fire(this, 'onHighlightedChange', highlighted);\n }\n }\n },\n ...other,\n };\n }\n\n handleMouseLeave = () => {\n const { highlighted } = this.asProps;\n\n fire(this, 'onHighlightedChange', highlighted.length ? [highlighted[0]] : []);\n };\n\n getUnitProps({ dateKey }, index) {\n const inRow = 7;\n const { unitRefs } = this.asProps;\n return {\n 'aria-colindex': (index % inRow) + 1,\n 'aria-rowindex': Math.floor(index / inRow) + 1,\n ref: (node) => {\n if (!dateKey) return;\n unitRefs[dateKey] = node;\n },\n };\n }\n\n getRootProps() {\n return {\n role: 'grid',\n tabIndex: 0,\n };\n }\n\n formatter = formatDDMMYY;\n describeValue() {\n const { locale, getI18nText, actionsDescribing } = this.asProps;\n const value = this.asProps.value || [];\n const compare = this.asProps.compare || [];\n\n if (!actionsDescribing) return null;\n\n const t = (key, date) =>\n getI18nText(key, date ? { date: this.formatter(date, locale) } : undefined);\n\n let description = '';\n if (value.length === 1 || compare.length === 1) {\n description += t('selectingStarted') + '. ';\n } else if (value.length === 2 || compare.length === 2) {\n description += t('selectingFinished') + '. ';\n }\n\n if (actionsDescribing === 'range') {\n if (value[0] || value[1]) description += t('dateRange') + ' ';\n if (value[0]) description += t('fromDate', value[0]) + ', ';\n if (value[1]) description += t('toDate', value[1]) + '. ';\n } else if (actionsDescribing === 'range-compare') {\n if (compare.length === 1) {\n description += t('dateRange2') + ' ';\n if (compare[0]) description += t('fromDate', value[0]) + ', ';\n if (compare[1]) description += t('toDate', value[1]) + '. ';\n } else {\n if (value[0] || value[1]) description += t('dateRange1') + ' ';\n if (value[0]) description += t('fromDate', value[0]) + ', ';\n if (value[1]) description += t('toDate', value[1]) + '. ';\n if (compare.length > 0) {\n description += t('dateRange2') + ' ';\n if (compare[0]) description += t('fromDate', compare[0]) + ', ';\n if (compare[1]) description += t('toDate', compare[1]) + '. ';\n }\n }\n }\n\n return description;\n }\n}\n\nfunction CalendarUnit({ styles, date, long, outdated, disabled, highlighted }) {\n const SCalendarUnit = Root;\n return sstyled(styles)(\n <SCalendarUnit\n use:disabled={disabled || outdated || !date}\n render={Box}\n aria-hidden={!date}\n aria-label={long || date}\n use:tabIndex={highlighted ? 0 : -1}\n />,\n );\n}\nCalendarUnit.enhance = [keyboardFocusEnhance()];\n\nclass CalendarDaysRoot extends CalendarAbstract {\n static displayName = 'CalendarDays';\n static defaultProps = {\n displayedPeriod: new Date(new Date().setHours(0, 0, 0, 0)),\n disabled: [],\n value: [],\n locale: 'en',\n children: ({ days }) => days.map((data, i) => <CalendarDays.Unit key={i} {...data} />),\n };\n\n getDaysByMonth() {\n const { displayedPeriod, renderOutdated, locale } = this.asProps;\n let date = dayjs(displayedPeriod).startOf('month');\n let prevDate = date.subtract(1, 'month');\n let nextDate = date.add(1, 'month');\n\n /* 0 - 6 */\n const dateStartOfWeek = date\n .locale(locale, getDayJSLocaleParams(locale))\n .startOf('week')\n .get('d')\n ? (date.get('d') || 7) - 1\n : date.get('d');\n\n let prevMonthDays = dateStartOfWeek\n ? range(prevDate.daysInMonth(), (i) => {\n const day = this.createUnit({ date: prevDate, outdated: true, i }, 'date');\n day.children = String(prevDate.get('date'));\n prevDate = prevDate.add(1, 'day');\n return day;\n }).slice(-dateStartOfWeek)\n : [];\n\n const monthDays = range(date.daysInMonth(), (i) => {\n const day = this.createUnit({ date, i }, 'date');\n day.children = String(date.get('date'));\n date = date.add(1, 'day');\n return day;\n });\n\n let nextMonthDays = range(42 - prevMonthDays.length - monthDays.length, (i) => {\n const day = this.createUnit({ date: nextDate, outdated: true, i }, 'date');\n day.children = String(nextDate.get('date'));\n nextDate = nextDate.add(1, 'day');\n return day;\n });\n\n if (!renderOutdated) {\n prevMonthDays = prevMonthDays.map(() => ({\n disabled: true,\n children: '',\n }));\n nextMonthDays = [];\n }\n\n return [...prevMonthDays, ...monthDays, ...nextMonthDays];\n }\n\n setContext() {\n return {\n days: this.getDaysByMonth(),\n };\n }\n\n render() {\n const SCalendar = Root;\n const SGridDays = 'div';\n const { Children, styles, locale } = this.asProps;\n const description = this.describeValue();\n\n return sstyled(styles)(\n <SCalendar render={Box} {...this.getRootProps()}>\n <CalendarWeekDays locale={locale} role='row' />\n <SGridDays onMouseLeave={this.handleMouseLeave} role='row'>\n <Children />\n </SGridDays>\n <ScreenReaderOnly role='row'>\n <span aria-live='polite' role='gridcell'>\n {description}\n </span>\n </ScreenReaderOnly>\n </SCalendar>,\n );\n }\n}\n\nclass CalendarMonthsRoot extends CalendarAbstract {\n static displayName = 'CalendarMonths';\n static defaultProps = {\n locale: 'en',\n children: ({ months }) => months.map((data, i) => <CalendarMonths.Unit key={i} {...data} />),\n };\n\n getMonthsByYear() {\n const { displayedPeriod, locale } = this.asProps;\n\n let date = dayjs(displayedPeriod).startOf('year');\n\n return range(12, () => {\n const month = this.createUnit({ date }, 'month');\n month.children = new Intl.DateTimeFormat(locale, { month: 'short' }).format(date.valueOf());\n month.long = new Intl.DateTimeFormat(locale, { month: 'long', year: 'numeric' }).format(\n date.valueOf(),\n );\n date = date.add(1, 'month');\n return month;\n });\n }\n\n setContext() {\n return {\n months: this.getMonthsByYear(),\n };\n }\n\n formatter = formatMMYY;\n\n render() {\n const SCalendar = Root;\n const SGridMonths = 'div';\n const { Children, styles } = this.asProps;\n const description = this.describeValue();\n\n return sstyled(styles)(\n <SCalendar render={Box} {...this.getRootProps()}>\n <SGridMonths onMouseLeave={this.handleMouseLeave} role='row'>\n <Children />\n </SGridMonths>\n <ScreenReaderOnly role='row'>\n <span aria-live='polite' role='gridcell'>\n {description}\n </span>\n </ScreenReaderOnly>\n </SCalendar>,\n );\n }\n}\n\nconst CalendarWeekDays = createComponent(CalendarWeekDaysRoot, {\n Unit: CalendarWeekUnit,\n});\n\nconst CalendarDays = createComponent(CalendarDaysRoot, {\n Unit: CalendarUnit,\n});\n\nconst CalendarMonths = createComponent(CalendarMonthsRoot, {\n Unit: CalendarUnit,\n});\n\nexport { CalendarUnit, CalendarWeekDays, CalendarDays, CalendarMonths };\n"],"mappings":"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"}
@@ -24,35 +24,35 @@ import { LinkTrigger } from '@semcore/base-trigger';
24
24
  import { includesDate } from '../utils/includesDate';
25
25
  import { formatDDMMYY, formatMMYY } from '../utils/formatDate';
26
26
  /*__reshadow-styles__:"../style/date-picker.shadow.css"*/
27
- var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SPopper_19o3r_gg_{padding:var(--intergalactic-spacing-4x, 16px);outline:0}.___SPopper_19o3r_gg_::-moz-focus-inner{border:0;padding:0}.___SPopper_19o3r_gg_:active,.___SPopper_19o3r_gg_:focus{outline:0;-webkit-text-decoration:none;text-decoration:none}@media (hover:hover){.___SPopper_19o3r_gg_:hover{outline:0;-webkit-text-decoration:none;text-decoration:none}}.___SPopper_19o3r_gg_:focus{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___SHeader_19o3r_gg_,.___STitle_19o3r_gg_{display:flex;align-items:center}.___STitle_19o3r_gg_{font-size:var(--intergalactic-fs-200, 14px);color:var(--intergalactic-text-primary, #191b23);height:32px;width:100%;justify-content:center}.___SToday_19o3r_gg_{display:flex;margin-top:var(--intergalactic-spacing-3x, 12px);justify-content:center}.___SPeriod_19o3r_gg_{display:flex;flex-direction:column;margin-bottom:var(--intergalactic-spacing-2x, 8px)}.___SButton_19o3r_gg_ .___SInner_19o3r_gg_{justify-content:flex-start}.___SInputMask_19o3r_gg_{color:var(--intergalactic-text-primary, #191b23);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_19o3r_gg_.__animationsDisabled_19o3r_gg_{transition:none}.___SInputMask_19o3r_gg_ .___SValue_19o3r_gg_{letter-spacing:0}.___SIndicator_19o3r_gg_{color:var(--intergalactic-text-secondary, #6c6e79)}.___SRangeIndicator_19o3r_gg_{border-radius:50%;flex-shrink:0}.___SRangeIndicator_19o3r_gg_._range_value_19o3r_gg_{background-color:var(--intergalactic-date-picker-cell-active, #2bb3ff)}.___SRangeIndicator_19o3r_gg_._range_compare_19o3r_gg_{background-color:var(--intergalactic-date-picker-cell-comparison-active, #8649e1)}.___SRangeIndicator_19o3r_gg_.__disabled_19o3r_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3)}.___SHumanizedDate_19o3r_gg_{position:absolute;pointer-events:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.___SMask_19o3r_gg_{letter-spacing:0;white-space:nowrap;overflow:hidden}.___SDateRange_19o3r_gg_ .___SMask_19o3r_gg_,.___SDateRange_19o3r_gg_ .___SValue_19o3r_gg_,.___SSingleDateInput_19o3r_gg_ .___SMask_19o3r_gg_,.___SSingleDateInput_19o3r_gg_ .___SValue_19o3r_gg_{opacity:0}.___SSingleDateInput_19o3r_gg_:focus-within .___SHumanizedDate_19o3r_gg_{opacity:0;z-index:var(--intergalactic-z-index-deep, -999)}.___SSingleDateInput_19o3r_gg_:focus-within .___SMask_19o3r_gg_,.___SSingleDateInput_19o3r_gg_:focus-within .___SValue_19o3r_gg_{opacity:1}.___SDateRange_19o3r_gg_:focus-within .___SHumanizedDate_19o3r_gg_{opacity:0;z-index:var(--intergalactic-z-index-deep, -999)}.___SDateRange_19o3r_gg_:focus-within .___SMask_19o3r_gg_,.___SDateRange_19o3r_gg_:focus-within .___SValue_19o3r_gg_{opacity:1}.___SInputMask_19o3r_gg_.__noHumanizedDate_19o3r_gg_ .___SMask_19o3r_gg_,.___SInputMask_19o3r_gg_.__noHumanizedDate_19o3r_gg_ .___SValue_19o3r_gg_{opacity:1}.___SDateRange_19o3r_gg_ .___SInputMask_19o3r_gg_:focus-within .___SMask_19o3r_gg_{background-color:var(--intergalactic-bg-highlight-focus, rgba(0, 143, 248, 0.2))}.___SDateRange_19o3r_gg_:focus-within .___SRangeSep_19o3r_gg_,.___SRangeSep_19o3r_gg_.__fulfilled_19o3r_gg_{color:var(--intergalactic-text-primary, #191b23)}.___SRangeComparatorHeader_19o3r_gg_{border-bottom:1px solid var(--intergalactic-border-primary, #c4c7cf)}.___SRangeCalendar_19o3r_gg_,.___SRangeComparatorHeader_19o3r_gg_{padding:var(--intergalactic-spacing-4x, 16px)}.___SFooter_19o3r_gg_{border-top:1px solid var(--intergalactic-border-primary, #c4c7cf)}.___SFooter_19o3r_gg_,.___SPeriodsList_19o3r_gg_{padding:var(--intergalactic-spacing-4x, 16px)}.___STooltip_19o3r_gg_{padding:var(--intergalactic-spacing-3x, 12px)}.___SCompareToggle_19o3r_gg_{white-space:nowrap}@media (prefers-reduced-motion){.___SInputMask_19o3r_gg_{transition:none}}" /*__inner_css_end__*/, "19o3r_gg_") /*__reshadow_css_end__*/, {
28
- "__SHeader": "___SHeader_19o3r_gg_",
29
- "__STitle": "___STitle_19o3r_gg_",
30
- "__SToday": "___SToday_19o3r_gg_",
31
- "__SPeriod": "___SPeriod_19o3r_gg_",
32
- "__SButton": "___SButton_19o3r_gg_",
33
- "__SInner": "___SInner_19o3r_gg_",
34
- "__SInputMask": "___SInputMask_19o3r_gg_",
35
- "_animationsDisabled": "__animationsDisabled_19o3r_gg_",
36
- "__SValue": "___SValue_19o3r_gg_",
37
- "__SIndicator": "___SIndicator_19o3r_gg_",
38
- "__SRangeIndicator": "___SRangeIndicator_19o3r_gg_",
39
- "_range_value": "_range_value_19o3r_gg_",
40
- "_range_compare": "_range_compare_19o3r_gg_",
41
- "_disabled": "__disabled_19o3r_gg_",
42
- "__SHumanizedDate": "___SHumanizedDate_19o3r_gg_",
43
- "__SMask": "___SMask_19o3r_gg_",
44
- "__SSingleDateInput": "___SSingleDateInput_19o3r_gg_",
45
- "__SDateRange": "___SDateRange_19o3r_gg_",
46
- "_noHumanizedDate": "__noHumanizedDate_19o3r_gg_",
47
- "__SRangeSep": "___SRangeSep_19o3r_gg_",
48
- "_fulfilled": "__fulfilled_19o3r_gg_",
49
- "__SRangeComparatorHeader": "___SRangeComparatorHeader_19o3r_gg_",
50
- "__SRangeCalendar": "___SRangeCalendar_19o3r_gg_",
51
- "__SFooter": "___SFooter_19o3r_gg_",
52
- "__SPeriodsList": "___SPeriodsList_19o3r_gg_",
53
- "__STooltip": "___STooltip_19o3r_gg_",
54
- "__SCompareToggle": "___SCompareToggle_19o3r_gg_",
55
- "__SPopper": "___SPopper_19o3r_gg_"
27
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SPopper_1qe7j_gg_{padding:var(--intergalactic-spacing-4x, 16px);outline:0}.___SPopper_1qe7j_gg_::-moz-focus-inner{border:0;padding:0}.___SPopper_1qe7j_gg_:active,.___SPopper_1qe7j_gg_:focus{outline:0;-webkit-text-decoration:none;text-decoration:none}@media (hover:hover){.___SPopper_1qe7j_gg_:hover{outline:0;-webkit-text-decoration:none;text-decoration:none}}.___SPopper_1qe7j_gg_:focus{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___SHeader_1qe7j_gg_,.___STitle_1qe7j_gg_{display:flex;align-items:center}.___STitle_1qe7j_gg_{font-size:var(--intergalactic-fs-200, 14px);color:var(--intergalactic-text-primary, #191b23);height:32px;width:100%;justify-content:center}.___SToday_1qe7j_gg_{display:flex;margin-top:var(--intergalactic-spacing-3x, 12px);justify-content:center}.___SPeriod_1qe7j_gg_{display:flex;flex-direction:column;margin-bottom:var(--intergalactic-spacing-2x, 8px)}.___SButton_1qe7j_gg_ .___SInner_1qe7j_gg_{justify-content:flex-start}.___SInputMask_1qe7j_gg_{color:var(--intergalactic-text-primary, #191b23);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_1qe7j_gg_.__animationsDisabled_1qe7j_gg_{transition:none}.___SInputMask_1qe7j_gg_ .___SValue_1qe7j_gg_{letter-spacing:0}.___SIndicator_1qe7j_gg_{color:var(--intergalactic-text-secondary, #6c6e79)}.___SRangeIndicator_1qe7j_gg_{border-radius:50%;flex-shrink:0}.___SRangeIndicator_1qe7j_gg_._range_value_1qe7j_gg_{background-color:var(--intergalactic-date-picker-cell-active, #2bb3ff)}.___SRangeIndicator_1qe7j_gg_._range_compare_1qe7j_gg_{background-color:var(--intergalactic-date-picker-cell-comparison-active, #8649e1)}.___SRangeIndicator_1qe7j_gg_.__disabled_1qe7j_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3)}.___SHumanizedDate_1qe7j_gg_{position:absolute;pointer-events:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.___SMask_1qe7j_gg_{letter-spacing:0;white-space:nowrap;overflow:hidden}.___SDateRange_1qe7j_gg_ .___SMask_1qe7j_gg_,.___SDateRange_1qe7j_gg_ .___SValue_1qe7j_gg_,.___SSingleDateInput_1qe7j_gg_ .___SMask_1qe7j_gg_,.___SSingleDateInput_1qe7j_gg_ .___SValue_1qe7j_gg_{opacity:0}.___SSingleDateInput_1qe7j_gg_:focus-within .___SHumanizedDate_1qe7j_gg_{opacity:0;z-index:var(--intergalactic-z-index-deep, -999)}.___SSingleDateInput_1qe7j_gg_:focus-within .___SMask_1qe7j_gg_,.___SSingleDateInput_1qe7j_gg_:focus-within .___SValue_1qe7j_gg_{opacity:1}.___SDateRange_1qe7j_gg_:focus-within .___SHumanizedDate_1qe7j_gg_{opacity:0;z-index:var(--intergalactic-z-index-deep, -999)}.___SDateRange_1qe7j_gg_:focus-within .___SMask_1qe7j_gg_,.___SDateRange_1qe7j_gg_:focus-within .___SValue_1qe7j_gg_{opacity:1}.___SInputMask_1qe7j_gg_.__noHumanizedDate_1qe7j_gg_ .___SMask_1qe7j_gg_,.___SInputMask_1qe7j_gg_.__noHumanizedDate_1qe7j_gg_ .___SValue_1qe7j_gg_{opacity:1}.___SDateRange_1qe7j_gg_ .___SInputMask_1qe7j_gg_:focus-within .___SMask_1qe7j_gg_{background-color:var(--intergalactic-bg-highlight-focus, rgba(0, 143, 248, 0.2))}.___SDateRange_1qe7j_gg_:focus-within .___SRangeSep_1qe7j_gg_,.___SRangeSep_1qe7j_gg_.__fulfilled_1qe7j_gg_{color:var(--intergalactic-text-primary, #191b23)}.___SRangeComparatorHeader_1qe7j_gg_{border-bottom:1px solid var(--intergalactic-border-primary, #c4c7cf)}.___SRangeCalendar_1qe7j_gg_,.___SRangeComparatorHeader_1qe7j_gg_{padding:var(--intergalactic-spacing-4x, 16px)}.___SFooter_1qe7j_gg_{border-top:1px solid var(--intergalactic-border-primary, #c4c7cf)}.___SFooter_1qe7j_gg_,.___SPeriodsList_1qe7j_gg_{padding:var(--intergalactic-spacing-4x, 16px)}.___STooltip_1qe7j_gg_{padding:var(--intergalactic-spacing-3x, 12px)}.___SCompareToggle_1qe7j_gg_{white-space:nowrap}@media (prefers-reduced-motion){.___SInputMask_1qe7j_gg_{transition:none}}" /*__inner_css_end__*/, "1qe7j_gg_") /*__reshadow_css_end__*/, {
28
+ "__SHeader": "___SHeader_1qe7j_gg_",
29
+ "__STitle": "___STitle_1qe7j_gg_",
30
+ "__SToday": "___SToday_1qe7j_gg_",
31
+ "__SPeriod": "___SPeriod_1qe7j_gg_",
32
+ "__SButton": "___SButton_1qe7j_gg_",
33
+ "__SInner": "___SInner_1qe7j_gg_",
34
+ "__SInputMask": "___SInputMask_1qe7j_gg_",
35
+ "_animationsDisabled": "__animationsDisabled_1qe7j_gg_",
36
+ "__SValue": "___SValue_1qe7j_gg_",
37
+ "__SIndicator": "___SIndicator_1qe7j_gg_",
38
+ "__SRangeIndicator": "___SRangeIndicator_1qe7j_gg_",
39
+ "_range_value": "_range_value_1qe7j_gg_",
40
+ "_range_compare": "_range_compare_1qe7j_gg_",
41
+ "_disabled": "__disabled_1qe7j_gg_",
42
+ "__SHumanizedDate": "___SHumanizedDate_1qe7j_gg_",
43
+ "__SMask": "___SMask_1qe7j_gg_",
44
+ "__SSingleDateInput": "___SSingleDateInput_1qe7j_gg_",
45
+ "__SDateRange": "___SDateRange_1qe7j_gg_",
46
+ "_noHumanizedDate": "__noHumanizedDate_1qe7j_gg_",
47
+ "__SRangeSep": "___SRangeSep_1qe7j_gg_",
48
+ "_fulfilled": "__fulfilled_1qe7j_gg_",
49
+ "__SRangeComparatorHeader": "___SRangeComparatorHeader_1qe7j_gg_",
50
+ "__SRangeCalendar": "___SRangeCalendar_1qe7j_gg_",
51
+ "__SFooter": "___SFooter_1qe7j_gg_",
52
+ "__SPeriodsList": "___SPeriodsList_1qe7j_gg_",
53
+ "__STooltip": "___STooltip_1qe7j_gg_",
54
+ "__SCompareToggle": "___SCompareToggle_1qe7j_gg_",
55
+ "__SPopper": "___SPopper_1qe7j_gg_"
56
56
  });
57
57
  var INTERACTION_TAGS = ['INPUT'];
58
58
  var INTERACTION_KEYS = ['ArrowDown', 'Enter', ' '];
@@ -118,6 +118,7 @@ var DateRangeComparatorAbstract = /*#__PURE__*/function (_Component) {
118
118
  var key = e.key;
119
119
  var highlighted = focusedRange === 'compare' ? _this.asProps.compareHighlighted : _this.asProps.highlighted;
120
120
  if (place === 'trigger' && INTERACTION_KEYS.includes(key)) {
121
+ e.preventDefault();
121
122
  e.stopPropagation();
122
123
  _this.handlers.visible(!visible);
123
124
  setTimeout(function () {
@@ -1 +1 @@
1
- {"version":3,"file":"DateRangeComparatorAbstract.js","names":["React","dayjs","Component","Root","sstyled","Button","Flex","Dropdown","i18nEnhance","localizedMessages","shortDateRangeFormat","Checkbox","LinkTrigger","includesDate","formatDDMMYY","formatMMYY","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","_inherits","_super","_createSuper","_this","_classCallCheck","_len2","args","_key2","call","apply","concat","_defineProperty","_assertThisInitialized","createRef","direction","displayedPeriod","asProps","action","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","_slicedToArray","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","formattedDate","locale","unitRefs","month","year","_value","_value2","_value3","_this$asProps3","isArray","_value4","_value5","_createClass","getPeriodProps","_this$asProps$value","_this2","_this$asProps4","_this$asProps4$period","periods","getDefaultPeriods","onHighlightedChange","onCompareHighlightedChange","onDisplayedPeriodChange","getI18nText","_this$asProps$value2","onChange","role","getPrevProps","onClick","bindHandlerNavigateClick","getNextProps","uncontrolledProps","_this3","compareToggle","_this3$asProps$value","_this3$asProps$value$","_this3$asProps","newDisplayedPeriod","_this3$props","props","dates","_date$isValid","isValid","getApplyProps","getResetProps","_this4","disabled","some","today","children","subtract","startOf","getTitleProps","index","_this$asProps5","Intl","DateTimeFormat","format","getTriggerProps","_ref10","_this$asProps$value3","_this$asProps$value4","_this5","_ref10$placeholder","placeholder","_ref10$separator","separator","_this$asProps6","formattingProps","_objectSpread","triggerFormattingProps","onKeyDown","handleKeydownDown","getRangeInput","Error","getValueDateRangeProps","_this6","_this$asProps7","disabledErrorText","animationsDisabled","popoverVisible","focused","disabledDates","onFocus","getCompareDateRangeProps","_value$compare","_this7","_this$asProps8","getCompareToggleProps","_this8","_this$asProps9","checked","getCalendarProps","_props","_this$asProps10","range","actionsDescribing","tabIndex","getPopperProps","p","ref","render","_ref","_ref4","_this$asProps11","Children","styles","providedAriaLabel","createElement","Fragment","_assignProps","cn","defaultProps","_ref11","primaryRange","defaultPrimaryRange","secondaryRange","defaultSecondaryRange","i18n","defaultValue","defaultHighlighted","defaultCompareHighlighted","defaultVisible","defaultPreselectedValue","defaultPreselectedCompare","defaultCompareToggle","defaultFocusedRange","size","amount","unit","Apply","_ref2","arguments[0]","_assignProps2","Reset","_ref3","_assignProps3","Trigger","_ref5","STrigger","CompareToggle","_ref6","SCompareToggle","Header","_ref7","SRangeComparatorHeader","Body","_ref8","SBody","Footer","_ref9","SFooter"],"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 { includesDate } from '../utils/includesDate';\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 getI18nText,\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 role: 'listbox',\n 'aria-label': getI18nText('periods'),\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 const { navigateStep } = this;\n return {\n getI18nText,\n onClick: this.bindHandlerNavigateClick(-1),\n 'aria-label': navigateStep === 'month' ? getI18nText('prevMonth') : getI18nText('prevYear'),\n };\n }\n getNextProps() {\n const { getI18nText } = this.asProps;\n const { navigateStep } = this;\n return {\n getI18nText,\n onClick: this.bindHandlerNavigateClick(1),\n 'aria-label': navigateStep === 'month' ? getI18nText('nextMonth') : getI18nText('nextYear'),\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 } else {\n this.handlers.compareToggle(!!this.asProps.value?.compare?.length);\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 isDisabled(date) {\n const { disabled } = this.asProps;\n\n return disabled.some(includesDate(dayjs(date), 'date'));\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 triggerFormattingProps = {\n day: 'numeric',\n month: 'short',\n year: 'numeric',\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 ...this.triggerFormattingProps,\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 getI18nText,\n focusedRange,\n preselectedValue,\n animationsDisabled,\n visible,\n } = this.asProps;\n\n return {\n popoverVisible: visible,\n focused: focusedRange === 'value' ? true : undefined,\n value: preselectedValue ?? value?.value,\n onChange: (value) => this.handlers.preselectedValue(value),\n onDisplayedPeriodChange,\n locale,\n disabledDates: disabled,\n disabledErrorText,\n children: this.getRangeInput(),\n getI18nText,\n onFocus: () => {\n this.handlers.focusedRange('value');\n },\n animationsDisabled,\n };\n }\n\n getCompareDateRangeProps() {\n const {\n value,\n onDisplayedPeriodChange,\n locale,\n disabled,\n disabledErrorText,\n getI18nText,\n focusedRange,\n preselectedCompare,\n compareToggle,\n animationsDisabled,\n visible,\n } = this.asProps;\n\n return {\n popoverVisible: visible,\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 disabledDates: disabled,\n children: this.getRangeInput(),\n getI18nText,\n disabledErrorText,\n onFocus: () => {\n this.handlers.focusedRange('compare');\n },\n animationsDisabled,\n };\n }\n\n getCompareToggleProps() {\n const { getI18nText, value, compareToggle } = this.asProps;\n\n return {\n getI18nText,\n checked: compareToggle,\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 this.handlers.preselectedCompare([]);\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 tabIndex: index === 0 ? 0 : -1,\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":["React","dayjs","Component","Root","sstyled","Button","Flex","Dropdown","i18nEnhance","localizedMessages","shortDateRangeFormat","Checkbox","LinkTrigger","includesDate","formatDDMMYY","formatMMYY","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","_inherits","_super","_createSuper","_this","_classCallCheck","_len2","args","_key2","call","apply","concat","_defineProperty","_assertThisInitialized","createRef","direction","displayedPeriod","asProps","action","navigateStep","toDate","handlers","navigateView","_this$asProps","value","preselectedValue","preselectedCompare","handleApply","compare","visible","place","e","_this$asProps2","focusedRange","key","highlighted","compareHighlighted","includes","preventDefault","stopPropagation","setTimeout","popper","popperRef","current","focus","day","keyDiff","setNextDisplayedPeriod","next_highlighted","_next_highlighted","_slicedToArray","startPeriod","endPeriod","highlightedPeriod","displayedPeriodNormalized","getDate","highlightedPeriodNormalized","getMonth","getYear","offset","highlightedDate","isDisabled","handleChange","metaKey","ctrlKey","handleApplyClick","changedDate","undefined","target","tagName","add","keyStep","_this$unitRefs$format","formatter","formattedDate","locale","unitRefs","month","year","_value","_value2","_value3","_this$asProps3","isArray","_value4","_value5","_createClass","getPeriodProps","_this$asProps$value","_this2","_this$asProps4","_this$asProps4$period","periods","getDefaultPeriods","onHighlightedChange","onCompareHighlightedChange","onDisplayedPeriodChange","getI18nText","_this$asProps$value2","onChange","role","getPrevProps","onClick","bindHandlerNavigateClick","getNextProps","uncontrolledProps","_this3","compareToggle","_this3$asProps$value","_this3$asProps$value$","_this3$asProps","newDisplayedPeriod","_this3$props","props","dates","_date$isValid","isValid","getApplyProps","getResetProps","_this4","disabled","some","today","children","subtract","startOf","getTitleProps","index","_this$asProps5","Intl","DateTimeFormat","format","getTriggerProps","_ref10","_this$asProps$value3","_this$asProps$value4","_this5","_ref10$placeholder","placeholder","_ref10$separator","separator","_this$asProps6","formattingProps","_objectSpread","triggerFormattingProps","onKeyDown","handleKeydownDown","getRangeInput","Error","getValueDateRangeProps","_this6","_this$asProps7","disabledErrorText","animationsDisabled","popoverVisible","focused","disabledDates","onFocus","getCompareDateRangeProps","_value$compare","_this7","_this$asProps8","getCompareToggleProps","_this8","_this$asProps9","checked","getCalendarProps","_props","_this$asProps10","range","actionsDescribing","tabIndex","getPopperProps","p","ref","render","_ref","_ref4","_this$asProps11","Children","styles","providedAriaLabel","createElement","Fragment","_assignProps","cn","defaultProps","_ref11","primaryRange","defaultPrimaryRange","secondaryRange","defaultSecondaryRange","i18n","defaultValue","defaultHighlighted","defaultCompareHighlighted","defaultVisible","defaultPreselectedValue","defaultPreselectedCompare","defaultCompareToggle","defaultFocusedRange","size","amount","unit","Apply","_ref2","arguments[0]","_assignProps2","Reset","_ref3","_assignProps3","Trigger","_ref5","STrigger","CompareToggle","_ref6","SCompareToggle","Header","_ref7","SRangeComparatorHeader","Body","_ref8","SBody","Footer","_ref9","SFooter"],"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 { includesDate } from '../utils/includesDate';\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 getI18nText,\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 role: 'listbox',\n 'aria-label': getI18nText('periods'),\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 const { navigateStep } = this;\n return {\n getI18nText,\n onClick: this.bindHandlerNavigateClick(-1),\n 'aria-label': navigateStep === 'month' ? getI18nText('prevMonth') : getI18nText('prevYear'),\n };\n }\n getNextProps() {\n const { getI18nText } = this.asProps;\n const { navigateStep } = this;\n return {\n getI18nText,\n onClick: this.bindHandlerNavigateClick(1),\n 'aria-label': navigateStep === 'month' ? getI18nText('nextMonth') : getI18nText('nextYear'),\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 } else {\n this.handlers.compareToggle(!!this.asProps.value?.compare?.length);\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 isDisabled(date) {\n const { disabled } = this.asProps;\n\n return disabled.some(includesDate(dayjs(date), 'date'));\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.preventDefault();\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 triggerFormattingProps = {\n day: 'numeric',\n month: 'short',\n year: 'numeric',\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 ...this.triggerFormattingProps,\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 getI18nText,\n focusedRange,\n preselectedValue,\n animationsDisabled,\n visible,\n } = this.asProps;\n\n return {\n popoverVisible: visible,\n focused: focusedRange === 'value' ? true : undefined,\n value: preselectedValue ?? value?.value,\n onChange: (value) => this.handlers.preselectedValue(value),\n onDisplayedPeriodChange,\n locale,\n disabledDates: disabled,\n disabledErrorText,\n children: this.getRangeInput(),\n getI18nText,\n onFocus: () => {\n this.handlers.focusedRange('value');\n },\n animationsDisabled,\n };\n }\n\n getCompareDateRangeProps() {\n const {\n value,\n onDisplayedPeriodChange,\n locale,\n disabled,\n disabledErrorText,\n getI18nText,\n focusedRange,\n preselectedCompare,\n compareToggle,\n animationsDisabled,\n visible,\n } = this.asProps;\n\n return {\n popoverVisible: visible,\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 disabledDates: disabled,\n children: this.getRangeInput(),\n getI18nText,\n disabledErrorText,\n onFocus: () => {\n this.handlers.focusedRange('compare');\n },\n animationsDisabled,\n };\n }\n\n getCompareToggleProps() {\n const { getI18nText, value, compareToggle } = this.asProps;\n\n return {\n getI18nText,\n checked: compareToggle,\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 this.handlers.preselectedCompare([]);\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 tabIndex: index === 0 ? 0 : -1,\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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"}