@semcore/date-picker 2.6.0 → 2.7.0-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/DatePicker.js"],"names":["DatePickerRoot","handlers","value","Date","setHours","asProps","locale","placeholder","children","displayedPeriod","Intl","DateTimeFormat","month","year","format","startOf","toDate","i18n","onClick","handlerToday","PickerAbstract","props","defaultProps","Today","SToday","Box","styles","getI18nText","Component","DatePicker","Trigger","Popper","Header","Title","Prev","Next","Calendar","parent"],"mappings":"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","sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport Button from '@semcore/button';\nimport Divider from '@semcore/divider';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { Header, Next, Popper, Prev, Title, Trigger } from './components';\nimport { CalendarDays as Calendar } from './components/Calendar';\nimport PickerAbstract from './components/PickerAbstract';\nimport { getLocaleDate } from './utils/formatDate';\n\nexport class DatePickerRoot extends PickerAbstract {\n static displayName = 'DatePicker';\n\n static defaultProps = (props) => ({\n ...PickerAbstract.defaultProps(props),\n children: (\n <>\n <DatePicker.Trigger />\n <DatePicker.Popper />\n </>\n ),\n });\n\n navigateStep = 'month';\n keyStep = 'day';\n keyDiff = {\n 37: -1,\n 38: -7,\n 39: 1,\n 40: 7,\n };\n\n handlerToday = () => {\n this.handlers.value(new Date(new Date().setHours(0, 0, 0, 0)));\n };\n\n getTriggerProps() {\n const { value, locale } = this.asProps;\n return {\n ...super.getTriggerProps(),\n placeholder: 'Select date',\n children: value ? getLocaleDate(value, locale) : null,\n };\n }\n\n getPopperProps() {\n return {\n ...super.getPopperProps(),\n children: (\n <>\n <DatePicker.Header />\n <DatePicker.Calendar />\n <Divider ml={-4} w=\"calc(100% + 32px)\" />\n <DatePicker.Today />\n </>\n ),\n };\n }\n\n getTitleProps() {\n const { displayedPeriod, locale } = this.asProps;\n return {\n ...super.getTitleProps(),\n children: new Intl.DateTimeFormat(locale, { month: 'long', year: 'numeric' }).format(\n dayjs(displayedPeriod)\n .startOf('month')\n .toDate(),\n ),\n };\n }\n\n getTodayProps() {\n const { i18n, locale } = this.asProps;\n return {\n i18n,\n locale,\n onClick: this.handlerToday,\n };\n }\n}\n\nclass Today extends Component {\n static enhance = [i18nEnhance()];\n\n render() {\n const SToday = Root;\n const { styles, getI18nText } = this.asProps;\n return sstyled(styles)(\n <SToday render={Box}>\n <Button use=\"tertiary\" children={getI18nText('today')} />\n </SToday>,\n );\n }\n}\n\nconst DatePicker = createComponent(\n DatePickerRoot,\n {\n Trigger,\n Popper,\n Header,\n Title,\n Prev,\n Next,\n Calendar,\n Today,\n },\n {\n parent: Calendar,\n },\n);\n\nexport default DatePicker;\n"],"file":"DatePicker.js"}
1
+ {"version":3,"sources":["../../src/DatePicker.js"],"names":["DatePickerRoot","handlers","value","Date","setHours","asProps","locale","placeholder","children","displayedPeriod","Intl","DateTimeFormat","month","year","format","startOf","toDate","i18n","onClick","handlerToday","PickerAbstract","props","defaultProps","Today","SToday","Box","styles","getI18nText","Component","DatePicker","Trigger","Popper","Header","Title","Prev","Next","Calendar","parent"],"mappings":"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","sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport Button from '@semcore/button';\nimport Divider from '@semcore/divider';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { Header, Next, Popper, Prev, Title, Trigger } from './components';\nimport { CalendarDays as Calendar } from './components/Calendar';\nimport PickerAbstract from './components/PickerAbstract';\nimport { getLocaleDate } from './utils/formatDate';\n\nexport class DatePickerRoot extends PickerAbstract {\n static displayName = 'DatePicker';\n\n static defaultProps = (props) => ({\n ...PickerAbstract.defaultProps(props),\n children: (\n <>\n <DatePicker.Trigger />\n <DatePicker.Popper />\n </>\n ),\n });\n\n navigateStep = 'month';\n keyStep = 'day';\n keyDiff = {\n 37: -1,\n 38: -7,\n 39: 1,\n 40: 7,\n };\n\n handlerToday = () => {\n this.handlers.value(new Date(new Date().setHours(0, 0, 0, 0)));\n };\n\n getTriggerProps() {\n const { value, locale } = this.asProps;\n return {\n ...super.getTriggerProps(),\n placeholder: 'Select date',\n children: value ? getLocaleDate(value, locale) : null,\n };\n }\n\n getPopperProps() {\n return {\n ...super.getPopperProps(),\n children: (\n <>\n <DatePicker.Header />\n <DatePicker.Calendar />\n <Divider ml={-4} w=\"calc(100% + 32px)\" />\n <DatePicker.Today />\n </>\n ),\n };\n }\n\n getTitleProps() {\n const { displayedPeriod, locale } = this.asProps;\n return {\n ...super.getTitleProps(),\n children: new Intl.DateTimeFormat(locale, { month: 'long', year: 'numeric' }).format(\n dayjs(displayedPeriod).startOf('month').toDate(),\n ),\n };\n }\n\n getTodayProps() {\n const { i18n, locale } = this.asProps;\n return {\n i18n,\n locale,\n onClick: this.handlerToday,\n };\n }\n}\n\nclass Today extends Component {\n static enhance = [i18nEnhance()];\n\n render() {\n const SToday = Root;\n const { styles, getI18nText } = this.asProps;\n return sstyled(styles)(\n <SToday render={Box}>\n <Button use=\"tertiary\" children={getI18nText('today')} />\n </SToday>,\n );\n }\n}\n\nconst DatePicker = createComponent(\n DatePickerRoot,\n {\n Trigger,\n Popper,\n Header,\n Title,\n Prev,\n Next,\n Calendar,\n Today,\n },\n {\n parent: Calendar,\n },\n);\n\nexport default DatePicker;\n"],"file":"DatePicker.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/DateRangePicker.js"],"names":["DateRangePickerRoot","getI18nText","asProps","today","Date","setHours","children","value","subtract","toDate","locale","placeholder","day","month","year","RangePickerAbstract","props","defaultProps","DateRangePicker","Trigger","Popper","Header","Title","Prev","Next","Calendar","Period","parent"],"mappings":"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","sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport createComponent from '@semcore/core';\nimport shortDateRangeFormat from './utils/shortDateRangeFormat';\nimport { Header, Next, Period, Popper, Prev, Title, Trigger } from './components';\nimport { CalendarDays as Calendar } from './components/Calendar';\nimport RangePickerAbstract from './components/RangePickerAbstract';\n\nclass DateRangePickerRoot extends RangePickerAbstract {\n static displayName = 'DateRangePicker';\n static defaultProps = (props) => {\n return {\n ...RangePickerAbstract.defaultProps(props),\n children: (\n <>\n <DateRangePicker.Trigger />\n <DateRangePicker.Popper />\n </>\n ),\n };\n };\n\n navigateStep = 'month';\n keyStep = 'day';\n keyDiff = {\n 37: -1,\n 38: -7,\n 39: 1,\n 40: 7,\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('last2Days'),\n value: [\n dayjs(today)\n .subtract(1, 'day')\n .toDate(),\n today,\n ],\n },\n {\n children: getI18nText('lastWeek'),\n value: [\n dayjs(today)\n .subtract(6, 'day')\n .toDate(),\n today,\n ],\n },\n {\n children: getI18nText('last2Weeks'),\n value: [\n dayjs(today)\n .subtract(13, 'day')\n .toDate(),\n today,\n ],\n },\n {\n children: getI18nText('lastMonth'),\n value: [\n dayjs(today)\n .subtract(1, 'month')\n .toDate(),\n today,\n ],\n },\n {\n children: getI18nText('last2Months'),\n value: [\n dayjs(today)\n .subtract(2, 'month')\n .toDate(),\n today,\n ],\n },\n ];\n }\n\n getTriggerProps() {\n const { value, locale } = this.asProps;\n return {\n ...super.getTriggerProps(),\n placeholder: 'Select date period',\n children: shortDateRangeFormat(value, {\n locale,\n day: 'numeric',\n month: 'short',\n year: 'numeric',\n }),\n };\n }\n}\n\nconst DateRangePicker = createComponent(\n DateRangePickerRoot,\n {\n Trigger,\n Popper,\n Header,\n Title,\n Prev,\n Next,\n Calendar,\n Period,\n },\n {\n parent: Calendar,\n },\n);\n\nexport default DateRangePicker;\n"],"file":"DateRangePicker.js"}
1
+ {"version":3,"sources":["../../src/DateRangePicker.js"],"names":["DateRangePickerRoot","getI18nText","asProps","today","Date","setHours","children","value","subtract","toDate","locale","placeholder","day","month","year","RangePickerAbstract","props","defaultProps","DateRangePicker","Trigger","Popper","Header","Title","Prev","Next","Calendar","Period","parent"],"mappings":"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","sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport createComponent from '@semcore/core';\nimport shortDateRangeFormat from './utils/shortDateRangeFormat';\nimport { Header, Next, Period, Popper, Prev, Title, Trigger } from './components';\nimport { CalendarDays as Calendar } from './components/Calendar';\nimport RangePickerAbstract from './components/RangePickerAbstract';\n\nclass DateRangePickerRoot extends RangePickerAbstract {\n static displayName = 'DateRangePicker';\n static defaultProps = (props) => {\n return {\n ...RangePickerAbstract.defaultProps(props),\n children: (\n <>\n <DateRangePicker.Trigger />\n <DateRangePicker.Popper />\n </>\n ),\n };\n };\n\n navigateStep = 'month';\n keyStep = 'day';\n keyDiff = {\n 37: -1,\n 38: -7,\n 39: 1,\n 40: 7,\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('last2Days'),\n value: [dayjs(today).subtract(1, 'day').toDate(), today],\n },\n {\n children: getI18nText('lastWeek'),\n value: [dayjs(today).subtract(6, 'day').toDate(), today],\n },\n {\n children: getI18nText('last2Weeks'),\n value: [dayjs(today).subtract(13, 'day').toDate(), today],\n },\n {\n children: getI18nText('lastMonth'),\n value: [dayjs(today).subtract(1, 'month').toDate(), today],\n },\n {\n children: getI18nText('last2Months'),\n value: [dayjs(today).subtract(2, 'month').toDate(), today],\n },\n ];\n }\n\n getTriggerProps() {\n const { value, locale } = this.asProps;\n return {\n ...super.getTriggerProps(),\n placeholder: 'Select date period',\n children: shortDateRangeFormat(value, {\n locale,\n day: 'numeric',\n month: 'short',\n year: 'numeric',\n }),\n };\n }\n}\n\nconst DateRangePicker = createComponent(\n DateRangePickerRoot,\n {\n Trigger,\n Popper,\n Header,\n Title,\n Prev,\n Next,\n Calendar,\n Period,\n },\n {\n parent: Calendar,\n },\n);\n\nexport default DateRangePicker;\n"],"file":"DateRangePicker.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/MonthPicker.js"],"names":["MonthPickerRoot","asProps","value","locale","placeholder","children","Intl","DateTimeFormat","month","year","format","toDate","displayedPeriod","startOf","PickerAbstract","props","defaultProps","MonthPicker","Trigger","Popper","Header","Title","Prev","Next","Calendar","parent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;IAEMA,e;;;;;;;;;;;;;;;qGAaW,M;gGACL,O;gGACA;AACR,UAAI,CAAC,CADG;AAER,UAAI,CAAC,CAFG;AAGR,UAAI,CAHI;AAIR,UAAI;AAJI,K;;;;;;WAOV,2BAAkB;AAAA,0BACU,KAAKC,OADf;AAAA,UACRC,KADQ,iBACRA,KADQ;AAAA,UACDC,MADC,iBACDA,MADC;AAEhB;AAEEC,QAAAA,WAAW,EAAE,cAFf;AAGEC,QAAAA,QAAQ,EAAEH,KAAK,GACX,IAAII,IAAI,CAACC,cAAT,CAAwBJ,MAAxB,EAAgC;AAC9BK,UAAAA,KAAK,EAAE,OADuB;AAE9BC,UAAAA,IAAI,EAAE;AAFwB,SAAhC,EAGGC,MAHH,CAGU,uBAAMR,KAAN,EAAaS,MAAb,EAHV,CADW,GAKX;AARN;AAUD;;;WAED,yBAAgB;AAAA,2BACsB,KAAKV,OAD3B;AAAA,UACNW,eADM,kBACNA,eADM;AAAA,UACWT,MADX,kBACWA,MADX;AAEd;AAEEE,QAAAA,QAAQ,EAAE,IAAIC,IAAI,CAACC,cAAT,CAAwBJ,MAAxB,EAAgC;AAAEM,UAAAA,IAAI,EAAE;AAAR,SAAhC,EAAqDC,MAArD,CACR,uBAAME,eAAN,EACGC,OADH,CACW,MADX,EAEGF,MAFH,EADQ;AAFZ;AAQD;;;EA9C2BG,2B;;iCAAxBd,e,iBACiB,a;iCADjBA,e,kBAGkB,UAACe,KAAD;AAAA,yCACjBD,4BAAeE,YAAf,CAA4BD,KAA5B,CADiB;AAEpBV,IAAAA,QAAQ,eACN,+EACE,gCAAC,WAAD,CAAa,OAAb,OADF,eAEE,gCAAC,WAAD,CAAa,MAAb,OAFF;AAHkB;AAAA,C;AA8CxB,IAAMY,WAAW,GAAG,sBAClBjB,eADkB,EAElB;AACEkB,EAAAA,OAAO,EAAPA,mBADF;AAEEC,EAAAA,MAAM,EAANA,kBAFF;AAGEC,EAAAA,MAAM,EAANA,kBAHF;AAIEC,EAAAA,KAAK,EAALA,iBAJF;AAKEC,EAAAA,IAAI,EAAJA,gBALF;AAMEC,EAAAA,IAAI,EAAJA,gBANF;AAOEC,EAAAA,QAAQ,EAARA;AAPF,CAFkB,EAWlB;AACEC,EAAAA,MAAM,EAAED;AADV,CAXkB,CAApB;eAgBeP,W","sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport createComponent from '@semcore/core';\nimport { Header, Next, Popper, Prev, Title, Trigger } from './components';\nimport { CalendarMonths as Calendar } from './components/Calendar';\nimport PickerAbstract from './components/PickerAbstract';\n\nclass MonthPickerRoot extends PickerAbstract {\n static displayName = 'MonthPicker';\n\n static defaultProps = (props) => ({\n ...PickerAbstract.defaultProps(props),\n children: (\n <>\n <MonthPicker.Trigger />\n <MonthPicker.Popper />\n </>\n ),\n });\n\n navigateStep = 'year';\n keyStep = 'month';\n keyDiff = {\n 37: -1,\n 38: -3,\n 39: 1,\n 40: 3,\n };\n\n getTriggerProps() {\n const { value, locale } = this.asProps;\n return {\n ...super.getTriggerProps(),\n placeholder: 'Select month',\n children: value\n ? new Intl.DateTimeFormat(locale, {\n month: 'short',\n year: 'numeric',\n }).format(dayjs(value).toDate())\n : null,\n };\n }\n\n getTitleProps() {\n const { displayedPeriod, locale } = this.asProps;\n return {\n ...super.getTitleProps(),\n children: new Intl.DateTimeFormat(locale, { year: 'numeric' }).format(\n dayjs(displayedPeriod)\n .startOf('year')\n .toDate(),\n ),\n };\n }\n}\n\nconst MonthPicker = createComponent(\n MonthPickerRoot,\n {\n Trigger,\n Popper,\n Header,\n Title,\n Prev,\n Next,\n Calendar,\n },\n {\n parent: Calendar,\n },\n);\n\nexport default MonthPicker;\n"],"file":"MonthPicker.js"}
1
+ {"version":3,"sources":["../../src/MonthPicker.js"],"names":["MonthPickerRoot","asProps","value","locale","placeholder","children","Intl","DateTimeFormat","month","year","format","toDate","displayedPeriod","startOf","PickerAbstract","props","defaultProps","MonthPicker","Trigger","Popper","Header","Title","Prev","Next","Calendar","parent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;IAEMA,e;;;;;;;;;;;;;;;qGAaW,M;gGACL,O;gGACA;AACR,UAAI,CAAC,CADG;AAER,UAAI,CAAC,CAFG;AAGR,UAAI,CAHI;AAIR,UAAI;AAJI,K;;;;;;WAOV,2BAAkB;AAAA,0BACU,KAAKC,OADf;AAAA,UACRC,KADQ,iBACRA,KADQ;AAAA,UACDC,MADC,iBACDA,MADC;AAEhB;AAEEC,QAAAA,WAAW,EAAE,cAFf;AAGEC,QAAAA,QAAQ,EAAEH,KAAK,GACX,IAAII,IAAI,CAACC,cAAT,CAAwBJ,MAAxB,EAAgC;AAC9BK,UAAAA,KAAK,EAAE,OADuB;AAE9BC,UAAAA,IAAI,EAAE;AAFwB,SAAhC,EAGGC,MAHH,CAGU,uBAAMR,KAAN,EAAaS,MAAb,EAHV,CADW,GAKX;AARN;AAUD;;;WAED,yBAAgB;AAAA,2BACsB,KAAKV,OAD3B;AAAA,UACNW,eADM,kBACNA,eADM;AAAA,UACWT,MADX,kBACWA,MADX;AAEd;AAEEE,QAAAA,QAAQ,EAAE,IAAIC,IAAI,CAACC,cAAT,CAAwBJ,MAAxB,EAAgC;AAAEM,UAAAA,IAAI,EAAE;AAAR,SAAhC,EAAqDC,MAArD,CACR,uBAAME,eAAN,EAAuBC,OAAvB,CAA+B,MAA/B,EAAuCF,MAAvC,EADQ;AAFZ;AAMD;;;EA5C2BG,2B;;iCAAxBd,e,iBACiB,a;iCADjBA,e,kBAGkB,UAACe,KAAD;AAAA,yCACjBD,4BAAeE,YAAf,CAA4BD,KAA5B,CADiB;AAEpBV,IAAAA,QAAQ,eACN,+EACE,gCAAC,WAAD,CAAa,OAAb,OADF,eAEE,gCAAC,WAAD,CAAa,MAAb,OAFF;AAHkB;AAAA,C;AA4CxB,IAAMY,WAAW,GAAG,sBAClBjB,eADkB,EAElB;AACEkB,EAAAA,OAAO,EAAPA,mBADF;AAEEC,EAAAA,MAAM,EAANA,kBAFF;AAGEC,EAAAA,MAAM,EAANA,kBAHF;AAIEC,EAAAA,KAAK,EAALA,iBAJF;AAKEC,EAAAA,IAAI,EAAJA,gBALF;AAMEC,EAAAA,IAAI,EAAJA,gBANF;AAOEC,EAAAA,QAAQ,EAARA;AAPF,CAFkB,EAWlB;AACEC,EAAAA,MAAM,EAAED;AADV,CAXkB,CAApB;eAgBeP,W","sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport createComponent from '@semcore/core';\nimport { Header, Next, Popper, Prev, Title, Trigger } from './components';\nimport { CalendarMonths as Calendar } from './components/Calendar';\nimport PickerAbstract from './components/PickerAbstract';\n\nclass MonthPickerRoot extends PickerAbstract {\n static displayName = 'MonthPicker';\n\n static defaultProps = (props) => ({\n ...PickerAbstract.defaultProps(props),\n children: (\n <>\n <MonthPicker.Trigger />\n <MonthPicker.Popper />\n </>\n ),\n });\n\n navigateStep = 'year';\n keyStep = 'month';\n keyDiff = {\n 37: -1,\n 38: -3,\n 39: 1,\n 40: 3,\n };\n\n getTriggerProps() {\n const { value, locale } = this.asProps;\n return {\n ...super.getTriggerProps(),\n placeholder: 'Select month',\n children: value\n ? new Intl.DateTimeFormat(locale, {\n month: 'short',\n year: 'numeric',\n }).format(dayjs(value).toDate())\n : null,\n };\n }\n\n getTitleProps() {\n const { displayedPeriod, locale } = this.asProps;\n return {\n ...super.getTitleProps(),\n children: new Intl.DateTimeFormat(locale, { year: 'numeric' }).format(\n dayjs(displayedPeriod).startOf('year').toDate(),\n ),\n };\n }\n}\n\nconst MonthPicker = createComponent(\n MonthPickerRoot,\n {\n Trigger,\n Popper,\n Header,\n Title,\n Prev,\n Next,\n Calendar,\n },\n {\n parent: Calendar,\n },\n);\n\nexport default MonthPicker;\n"],"file":"MonthPicker.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/MonthRangePicker.js"],"names":["MonthRangePickerRoot","getI18nText","asProps","today","Date","setHours","children","value","subtract","startOf","toDate","locale","placeholder","month","year","props","index","displayedPeriod","Intl","DateTimeFormat","format","add","navigateStep","RangePickerAbstract","defaultProps","MonthRangePicker","Trigger","Popper","Header","Title","Prev","Next","Calendar","Period","parent"],"mappings":"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","sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport createComponent from '@semcore/core';\nimport shortDateRangeFormat from './utils/shortDateRangeFormat';\nimport { Header, Next, Period, Popper, Prev, Title, Trigger } from './components';\nimport { CalendarMonths as Calendar } from './components/Calendar';\nimport RangePickerAbstract from './components/RangePickerAbstract';\n\nclass MonthRangePickerRoot extends RangePickerAbstract {\n static displayName = 'MonthRangePicker';\n static defaultProps = (props) => {\n return {\n ...RangePickerAbstract.defaultProps(props),\n children: (\n <>\n <MonthRangePicker.Trigger />\n <MonthRangePicker.Popper />\n </>\n ),\n };\n };\n\n navigateStep = 'year';\n keyStep = 'month';\n keyDiff = {\n 37: -1,\n 38: -3,\n 39: 1,\n 40: 3,\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)\n .subtract(1, 'month')\n .startOf('month')\n .toDate(),\n dayjs(today)\n .startOf('month')\n .toDate(),\n ],\n },\n {\n children: getI18nText('last3Months'),\n value: [\n dayjs(today)\n .subtract(2, 'month')\n .startOf('month')\n .toDate(),\n dayjs(today)\n .startOf('month')\n .toDate(),\n ],\n },\n {\n children: getI18nText('last6Months'),\n value: [\n dayjs(today)\n .subtract(5, 'month')\n .startOf('month')\n .toDate(),\n dayjs(today)\n .startOf('month')\n .toDate(),\n ],\n },\n {\n children: getI18nText('last12Months'),\n value: [\n dayjs(today)\n .subtract(11, 'month')\n .startOf('month')\n .toDate(),\n dayjs(today)\n .startOf('month')\n .toDate(),\n ],\n },\n ];\n }\n\n getTriggerProps() {\n const { value, locale } = this.asProps;\n return {\n ...super.getTriggerProps(),\n placeholder: 'Select month period',\n children: shortDateRangeFormat(value, {\n locale,\n month: 'short',\n year: 'numeric',\n }),\n };\n }\n\n getTitleProps(props, index) {\n const { displayedPeriod, locale } = this.asProps;\n return {\n ...super.getTitleProps(props, index),\n children: new Intl.DateTimeFormat(locale, { year: 'numeric' }).format(\n dayjs(displayedPeriod)\n .add(index, this.navigateStep)\n .startOf(this.navigateStep)\n .toDate(),\n ),\n };\n }\n}\n\nconst MonthRangePicker = createComponent(\n MonthRangePickerRoot,\n {\n Trigger,\n Popper,\n Header,\n Title,\n Prev,\n Next,\n Calendar,\n Period,\n },\n {\n parent: Calendar,\n },\n);\n\nexport default MonthRangePicker;\n"],"file":"MonthRangePicker.js"}
1
+ {"version":3,"sources":["../../src/MonthRangePicker.js"],"names":["MonthRangePickerRoot","getI18nText","asProps","today","Date","setHours","children","value","subtract","startOf","toDate","locale","placeholder","month","year","props","index","displayedPeriod","Intl","DateTimeFormat","format","add","navigateStep","RangePickerAbstract","defaultProps","MonthRangePicker","Trigger","Popper","Header","Title","Prev","Next","Calendar","Period","parent"],"mappings":"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","sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport createComponent from '@semcore/core';\nimport shortDateRangeFormat from './utils/shortDateRangeFormat';\nimport { Header, Next, Period, Popper, Prev, Title, Trigger } from './components';\nimport { CalendarMonths as Calendar } from './components/Calendar';\nimport RangePickerAbstract from './components/RangePickerAbstract';\n\nclass MonthRangePickerRoot extends RangePickerAbstract {\n static displayName = 'MonthRangePicker';\n static defaultProps = (props) => {\n return {\n ...RangePickerAbstract.defaultProps(props),\n children: (\n <>\n <MonthRangePicker.Trigger />\n <MonthRangePicker.Popper />\n </>\n ),\n };\n };\n\n navigateStep = 'year';\n keyStep = 'month';\n keyDiff = {\n 37: -1,\n 38: -3,\n 39: 1,\n 40: 3,\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 getTriggerProps() {\n const { value, locale } = this.asProps;\n return {\n ...super.getTriggerProps(),\n placeholder: 'Select month period',\n children: shortDateRangeFormat(value, {\n locale,\n month: 'short',\n year: 'numeric',\n }),\n };\n }\n\n getTitleProps(props, index) {\n const { displayedPeriod, locale } = this.asProps;\n return {\n ...super.getTitleProps(props, index),\n children: new Intl.DateTimeFormat(locale, { year: 'numeric' }).format(\n dayjs(displayedPeriod).add(index, this.navigateStep).startOf(this.navigateStep).toDate(),\n ),\n };\n }\n}\n\nconst MonthRangePicker = createComponent(\n MonthRangePickerRoot,\n {\n Trigger,\n Popper,\n Header,\n Title,\n Prev,\n Next,\n Calendar,\n Period,\n },\n {\n parent: Calendar,\n },\n);\n\nexport default MonthRangePicker;\n"],"file":"MonthRangePicker.js"}
@@ -59,26 +59,26 @@ var style = (
59
59
  /*__reshadow_css_start__*/
60
60
  _core.sstyled.insert(
61
61
  /*__inner_css_start__*/
62
- ".___SCalendar_7wt21_gg_{display:flex;flex-direction:column}.___SGridDays_7wt21_gg_{display:grid;grid-template-columns:repeat(7,minmax(32px,auto));grid-template-rows:repeat(auto-fit,minmax(32px,auto))}.___SGridMonths_7wt21_gg_{display:grid;grid-row-gap:8px;grid-template-columns:repeat(3,minmax(60px,auto));grid-template-rows:repeat(4,minmax(32px,auto))}.___SWeekDays_7wt21_gg_{display:grid;grid-template-columns:repeat(7,minmax(32px,auto))}.___SWeekDay_7wt21_gg_{color:#757575;overflow:hidden}.___SCalendarUnit_7wt21_gg_,.___SWeekDay_7wt21_gg_{min-width:32px;min-height:32px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:400}.___SCalendarUnit_7wt21_gg_{font-family:inherit;line-height:normal;text-decoration:none;text-align:center;vertical-align:middle;border:1px solid transparent;color:#333;outline:0;box-shadow:none;overflow:visible;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:transparent;border-radius:4px;box-sizing:border-box;cursor:pointer;position:relative;transition:color .15s,background .15s;outline:none}.___SCalendarUnit_7wt21_gg_:hover{color:#333;background:rgba(166,176,179,.2)}.___SCalendarUnit_7wt21_gg_.focus-visible,.___SCalendarUnit_7wt21_gg_:focus-visible{box-shadow:0 0 0 3px rgba(43,148,225,.3)}.___SCalendarUnit_7wt21_gg_.__today_7wt21_gg_:before{content:\"\";position:absolute;display:block;top:2px;left:2px;border-radius:3px;width:calc(100% - 4px);height:calc(100% - 4px);box-sizing:border-box;border:1px solid rgba(0,0,0,.2)}.___SCalendarUnit_7wt21_gg_.__today_7wt21_gg_.___SCalendarUnit_7wt21_gg_.__endSelected_7wt21_gg_:before,.___SCalendarUnit_7wt21_gg_.__today_7wt21_gg_.___SCalendarUnit_7wt21_gg_.__startSelected_7wt21_gg_:before{border-color:hsla(0,0%,100%,.5)}.___SCalendarUnit_7wt21_gg_.__selected_7wt21_gg_{background:rgba(43,148,225,.1);border-radius:0;color:#333}.___SCalendarUnit_7wt21_gg_.__selected_7wt21_gg_:hover{background:rgba(43,148,225,.3)}.___SCalendarUnit_7wt21_gg_.__highlighted_7wt21_gg_{background:rgba(43,148,225,.2);border-radius:0;color:#333}.___SCalendarUnit_7wt21_gg_.__highlighted_7wt21_gg_:hover{background:rgba(43,148,225,.3)}.___SCalendarUnit_7wt21_gg_.__startSelected_7wt21_gg_{background:#2b94e1;border-bottom-left-radius:4px;border-bottom-right-radius:0;border-top-left-radius:4px;border-top-right-radius:0;color:#fff}.___SCalendarUnit_7wt21_gg_.__startSelected_7wt21_gg_:hover{color:#fff;background:#2682c6}.___SCalendarUnit_7wt21_gg_.__endSelected_7wt21_gg_{background:#2b94e1;border-bottom-left-radius:0;border-bottom-right-radius:4px;border-top-left-radius:0;border-top-right-radius:4px;color:#fff}.___SCalendarUnit_7wt21_gg_.__endSelected_7wt21_gg_:hover{color:#fff;background:#2682c6}.___SCalendarUnit_7wt21_gg_.__startHighlighted_7wt21_gg_{border-bottom-left-radius:4px;border-bottom-right-radius:0;border-top-left-radius:4px;border-top-right-radius:0}.___SCalendarUnit_7wt21_gg_.__endHighlighted_7wt21_gg_{border-bottom-left-radius:0;border-bottom-right-radius:4px;border-top-left-radius:0;border-top-right-radius:4px}.___SCalendarUnit_7wt21_gg_.__startHighlighted_7wt21_gg_.___SCalendarUnit_7wt21_gg_.__endHighlighted_7wt21_gg_,.___SCalendarUnit_7wt21_gg_.__startSelected_7wt21_gg_.___SCalendarUnit_7wt21_gg_.__endSelected_7wt21_gg_{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-top-left-radius:4px;border-top-right-radius:4px}.___SCalendarUnit_7wt21_gg_.__disabled_7wt21_gg_{opacity:.4;cursor:default;pointer-events:none}.___SCalendarUnit_7wt21_gg_.__outdated_7wt21_gg_{opacity:.2}"
62
+ ".___SCalendar_1rj7i_gg_{display:flex;flex-direction:column}.___SGridDays_1rj7i_gg_{display:grid;grid-template-columns:repeat(7,minmax(32px,auto));grid-template-rows:repeat(auto-fit,minmax(32px,auto))}.___SGridMonths_1rj7i_gg_{display:grid;grid-row-gap:8px;grid-template-columns:repeat(3,minmax(60px,auto));grid-template-rows:repeat(4,minmax(32px,auto))}.___SWeekDays_1rj7i_gg_{display:grid;grid-template-columns:repeat(7,minmax(32px,auto))}.___SWeekDay_1rj7i_gg_{color:#757575;overflow:hidden}.___SCalendarUnit_1rj7i_gg_,.___SWeekDay_1rj7i_gg_{min-width:32px;min-height:32px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:400}.___SCalendarUnit_1rj7i_gg_{font-family:inherit;line-height:normal;text-decoration:none;text-align:center;vertical-align:middle;border:1px solid transparent;color:#333;outline:0;box-shadow:none;overflow:visible;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:transparent;border-radius:4px;box-sizing:border-box;cursor:pointer;position:relative;transition:color .15s,background .15s;outline:none}.___SCalendarUnit_1rj7i_gg_:hover{color:#333;background:rgba(166,176,179,.2)}.___SCalendarUnit_1rj7i_gg_.focus-visible,.___SCalendarUnit_1rj7i_gg_:focus-visible{box-shadow:0 0 0 3px rgba(43,148,225,.3)}.___SCalendarUnit_1rj7i_gg_.__today_1rj7i_gg_:before{content:\"\";position:absolute;display:block;top:2px;left:2px;border-radius:3px;width:calc(100% - 4px);height:calc(100% - 4px);box-sizing:border-box;border:1px solid rgba(0,0,0,.2)}.___SCalendarUnit_1rj7i_gg_.__today_1rj7i_gg_.___SCalendarUnit_1rj7i_gg_.__endSelected_1rj7i_gg_:before,.___SCalendarUnit_1rj7i_gg_.__today_1rj7i_gg_.___SCalendarUnit_1rj7i_gg_.__startSelected_1rj7i_gg_:before{border-color:hsla(0,0%,100%,.5)}.___SCalendarUnit_1rj7i_gg_.__selected_1rj7i_gg_{background:rgba(43,148,225,.1);border-radius:0;color:#333}.___SCalendarUnit_1rj7i_gg_.__selected_1rj7i_gg_:hover{background:rgba(43,148,225,.3)}.___SCalendarUnit_1rj7i_gg_.__highlighted_1rj7i_gg_{background:rgba(43,148,225,.2);border-radius:0;color:#333}.___SCalendarUnit_1rj7i_gg_.__highlighted_1rj7i_gg_:hover{background:rgba(43,148,225,.3)}.___SCalendarUnit_1rj7i_gg_.__startSelected_1rj7i_gg_{background:#2b94e1;border-bottom-left-radius:4px;border-bottom-right-radius:0;border-top-left-radius:4px;border-top-right-radius:0;color:#fff}.___SCalendarUnit_1rj7i_gg_.__startSelected_1rj7i_gg_:hover{color:#fff;background:#2682c6}.___SCalendarUnit_1rj7i_gg_.__endSelected_1rj7i_gg_{background:#2b94e1;border-bottom-left-radius:0;border-bottom-right-radius:4px;border-top-left-radius:0;border-top-right-radius:4px;color:#fff}.___SCalendarUnit_1rj7i_gg_.__endSelected_1rj7i_gg_:hover{color:#fff;background:#2682c6}.___SCalendarUnit_1rj7i_gg_.__startHighlighted_1rj7i_gg_{border-bottom-left-radius:4px;border-bottom-right-radius:0;border-top-left-radius:4px;border-top-right-radius:0}.___SCalendarUnit_1rj7i_gg_.__endHighlighted_1rj7i_gg_{border-bottom-left-radius:0;border-bottom-right-radius:4px;border-top-left-radius:0;border-top-right-radius:4px}.___SCalendarUnit_1rj7i_gg_.__startHighlighted_1rj7i_gg_.___SCalendarUnit_1rj7i_gg_.__endHighlighted_1rj7i_gg_,.___SCalendarUnit_1rj7i_gg_.__startSelected_1rj7i_gg_.___SCalendarUnit_1rj7i_gg_.__endSelected_1rj7i_gg_{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-top-left-radius:4px;border-top-right-radius:4px}.___SCalendarUnit_1rj7i_gg_.__disabled_1rj7i_gg_{opacity:.4;cursor:default;pointer-events:none}.___SCalendarUnit_1rj7i_gg_.__outdated_1rj7i_gg_{opacity:.2}"
63
63
  /*__inner_css_end__*/
64
64
  , "1wiogkk_gg_")
65
65
  /*__reshadow_css_end__*/
66
66
  , {
67
- "__SCalendar": "___SCalendar_7wt21_gg_",
68
- "__SGridDays": "___SGridDays_7wt21_gg_",
69
- "__SGridMonths": "___SGridMonths_7wt21_gg_",
70
- "__SWeekDays": "___SWeekDays_7wt21_gg_",
71
- "__SWeekDay": "___SWeekDay_7wt21_gg_",
72
- "__SCalendarUnit": "___SCalendarUnit_7wt21_gg_",
73
- "_today": "__today_7wt21_gg_",
74
- "_endSelected": "__endSelected_7wt21_gg_",
75
- "_startSelected": "__startSelected_7wt21_gg_",
76
- "_selected": "__selected_7wt21_gg_",
77
- "_highlighted": "__highlighted_7wt21_gg_",
78
- "_startHighlighted": "__startHighlighted_7wt21_gg_",
79
- "_endHighlighted": "__endHighlighted_7wt21_gg_",
80
- "_disabled": "__disabled_7wt21_gg_",
81
- "_outdated": "__outdated_7wt21_gg_"
67
+ "__SCalendar": "___SCalendar_1rj7i_gg_",
68
+ "__SGridDays": "___SGridDays_1rj7i_gg_",
69
+ "__SGridMonths": "___SGridMonths_1rj7i_gg_",
70
+ "__SWeekDays": "___SWeekDays_1rj7i_gg_",
71
+ "__SWeekDay": "___SWeekDay_1rj7i_gg_",
72
+ "__SCalendarUnit": "___SCalendarUnit_1rj7i_gg_",
73
+ "_today": "__today_1rj7i_gg_",
74
+ "_endSelected": "__endSelected_1rj7i_gg_",
75
+ "_startSelected": "__startSelected_1rj7i_gg_",
76
+ "_selected": "__selected_1rj7i_gg_",
77
+ "_highlighted": "__highlighted_1rj7i_gg_",
78
+ "_startHighlighted": "__startHighlighted_1rj7i_gg_",
79
+ "_endHighlighted": "__endHighlighted_1rj7i_gg_",
80
+ "_disabled": "__disabled_1rj7i_gg_",
81
+ "_outdated": "__outdated_1rj7i_gg_"
82
82
  });
83
83
 
84
84
  _dayjs["default"].extend(_isBetween["default"]);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/Calendar.js"],"names":["dayjs","extend","isBetween","range","N","cb","Array","from","length","v","k","getDayJSLocaleParams","locale","includes","weekStart","Ls","CalendarWeekDaysRoot","asProps","date","startOf","weekday","Intl","DateTimeFormat","format","valueOf","add","children","days","getDaysByWeek","SWeekDays","Box","Children","styles","Component","style","map","data","i","CalendarWeekUnit","props","SWeekDay","CalendarAbstract","Date","setHours","highlighted","unit","other","self","_disabled","disabled","value","_highlighted","value0","value1","selected","startSelected","isSame","endSelected","highlighted0","highlighted1","startHighlighted","endHighlighted","some","today","onClick","toDate","onMouseEnter","startDate","CalendarUnit","SCalendarUnit","CalendarDaysRoot","displayedPeriod","renderOutdated","prevDate","subtract","nextDate","dateStartOfWeek","get","prevMonthDays","daysInMonth","day","createUnit","outdated","String","slice","monthDays","nextMonthDays","getDaysByMonth","SCalendar","SGridDays","handleMouseLeave","CalendarMonthsRoot","month","months","getMonthsByYear","SGridMonths","CalendarWeekDays","Unit","CalendarDays","CalendarMonths"],"mappings":"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","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 { getLocaleDate } from '../utils/formatDate';\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()\n .locale(locale, getDayJSLocaleParams(locale))\n .startOf('week');\n return range(7, () => {\n const weekday = new Intl.DateTimeFormat(locale, { weekday: 'short' }).format(date.valueOf());\n date = date.add(1, 'day');\n return {\n children: weekday,\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(props) {\n const SWeekDay = Root;\n return sstyled(props.styles)(<SWeekDay render={Box} />);\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 { disabled: _disabled, value, locale, highlighted: _highlighted } = this.asProps;\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 let highlighted0 = _highlighted[0] ? dayjs(_highlighted[0]) : null;\n let highlighted1 = _highlighted[1] ? dayjs(_highlighted[1]) : highlighted0;\n let startHighlighted, endHighlighted, highlighted;\n if (highlighted0 && highlighted1) {\n if (highlighted0 > highlighted1) [highlighted1, highlighted0] = [highlighted0, highlighted1];\n highlighted = date.isBetween(highlighted0, highlighted1, unit, '[]');\n startHighlighted = highlighted0 && date.isSame(highlighted0, 'date');\n endHighlighted = highlighted1 && date.isSame(highlighted1, 'date');\n }\n\n const disabled = _disabled.some(includesDate(date, unit));\n\n return {\n date: getLocaleDate(date, locale),\n children: '',\n startSelected,\n endSelected,\n selected,\n disabled,\n highlighted,\n startHighlighted,\n endHighlighted,\n today: date.isSame(self.today, unit),\n onClick: () => {\n const { 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 fire(this, 'onHighlightedChange', highlighted);\n fire(this, 'onChange', date.toDate());\n },\n onMouseEnter: () => {\n const { value, highlighted: _highlighted } = this.asProps;\n if (_highlighted[0] || value.length === 1) {\n const startDate = _highlighted[0] || value[0];\n const highlighted = [startDate.valueOf(), date.valueOf()];\n fire(this, 'onHighlightedChange', highlighted);\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\nfunction CalendarUnit({ styles, date }) {\n const SCalendarUnit = Root;\n return sstyled(styles)(\n <SCalendarUnit render={Box} tag=\"button\" aria-hidden={!date} aria-label={date} tabIndex={-1} />,\n );\n}\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(), () => {\n const day = this.createUnit({ date: prevDate, outdated: true }, '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(), () => {\n const day = this.createUnit({ date }, '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, () => {\n const day = this.createUnit({ date: nextDate, outdated: true }, '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\n return sstyled(styles)(\n <SCalendar render={Box}>\n <CalendarWeekDays locale={locale} />\n <SGridDays onMouseLeave={this.handleMouseLeave}>\n <Children />\n </SGridDays>\n </SCalendar>,\n );\n }\n}\n\nclass CalendarMonthsRoot extends CalendarAbstract {\n static displayName = 'CalendarMonths';\n static defaultProps = {\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 date = date.add(1, 'month');\n return month;\n });\n }\n\n setContext() {\n return {\n months: this.getMonthsByYear(),\n };\n }\n\n render() {\n const SCalendar = Root;\n const SGridMonths = 'div';\n const { Children, styles } = this.asProps;\n\n return sstyled(styles)(\n <SCalendar render={Box}>\n <SGridMonths onMouseLeave={this.handleMouseLeave}>\n <Children />\n </SGridMonths>\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"],"file":"Calendar.js"}
1
+ {"version":3,"sources":["../../../src/components/Calendar.js"],"names":["dayjs","extend","isBetween","range","N","cb","Array","from","length","v","k","getDayJSLocaleParams","locale","includes","weekStart","Ls","CalendarWeekDaysRoot","asProps","date","startOf","weekday","Intl","DateTimeFormat","format","valueOf","add","children","days","getDaysByWeek","SWeekDays","Box","Children","styles","Component","style","map","data","i","CalendarWeekUnit","props","SWeekDay","CalendarAbstract","Date","setHours","highlighted","unit","other","self","_disabled","disabled","value","_highlighted","value0","value1","selected","startSelected","isSame","endSelected","highlighted0","highlighted1","startHighlighted","endHighlighted","some","today","onClick","toDate","onMouseEnter","startDate","CalendarUnit","SCalendarUnit","CalendarDaysRoot","displayedPeriod","renderOutdated","prevDate","subtract","nextDate","dateStartOfWeek","get","prevMonthDays","daysInMonth","day","createUnit","outdated","String","slice","monthDays","nextMonthDays","getDaysByMonth","SCalendar","SGridDays","handleMouseLeave","CalendarMonthsRoot","month","months","getMonthsByYear","SGridMonths","CalendarWeekDays","Unit","CalendarDays","CalendarMonths"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;;AAHA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIAA,kBAAMC,MAAN,CAAaC,qBAAb;;AAEA,IAAMC,KAAK,GAAG,SAARA,KAAQ,CAACC,CAAD,EAAIC,EAAJ;AAAA,SAAWC,KAAK,CAACC,IAAN,CAAW;AAAEC,IAAAA,MAAM,EAAEJ;AAAV,GAAX,EAA0B,UAACK,CAAD,EAAIC,CAAJ;AAAA,WAAUL,EAAE,CAACK,CAAD,CAAZ;AAAA,GAA1B,CAAX;AAAA,CAAd;;AAEA,SAASC,oBAAT,CAA8BC,MAA9B,EAAsC;AACpC,MAAIA,MAAM,CAACC,QAAP,CAAgB,IAAhB,KAAyBD,MAAM,CAACC,QAAP,CAAgB,IAAhB,CAA7B,EAAoD;AAClD;AACEC,MAAAA,SAAS,EAAE;AADb,OAEKd,kBAAMe,EAAN,CAASH,MAAT,CAFL;AAID;;AACD;AACEE,IAAAA,SAAS,EAAE;AADb,KAEKd,kBAAMe,EAAN,CAASH,MAAT,CAFL;AAID;;IAEKI,oB;;;;;;;;;;;;WAQJ,yBAAgB;AAAA,UACNJ,MADM,GACK,KAAKK,OADV,CACNL,MADM;AAGd,UAAIM,IAAI,GAAG,yBAAQN,MAAR,CAAeA,MAAf,EAAuBD,oBAAoB,CAACC,MAAD,CAA3C,EAAqDO,OAArD,CAA6D,MAA7D,CAAX;AACA,aAAOhB,KAAK,CAAC,CAAD,EAAI,YAAM;AACpB,YAAMiB,OAAO,GAAG,IAAIC,IAAI,CAACC,cAAT,CAAwBV,MAAxB,EAAgC;AAAEQ,UAAAA,OAAO,EAAE;AAAX,SAAhC,EAAsDG,MAAtD,CAA6DL,IAAI,CAACM,OAAL,EAA7D,CAAhB;AACAN,QAAAA,IAAI,GAAGA,IAAI,CAACO,GAAL,CAAS,CAAT,EAAY,KAAZ,CAAP;AACA,eAAO;AACLC,UAAAA,QAAQ,EAAEN;AADL,SAAP;AAGD,OANW,CAAZ;AAOD;;;WAED,sBAAa;AACX,aAAO;AACLO,QAAAA,IAAI,EAAE,KAAKC,aAAL;AADD,OAAP;AAGD;;;WAED,kBAAS;AAAA;AAAA;;AACP,UAAMC,SAAS,GAGMC,YAHrB;AADO,0BAEsB,KAAKb,OAF3B;AAAA,UAECc,QAFD,iBAECA,QAFD;AAAA,UAEWC,MAFX,iBAEWA,MAFX;AAGP,qBAAO,mBAAQA,MAAR,CAAP,eACE,gCAAC,SAAD,2FACE,gCAAC,QAAD,2BADF,CADF;AAKD;;;EAnCgCC,e;;iCAA7BjB,oB,iBACiB,kB;iCADjBA,oB,WAEWkB,K;iCAFXlB,oB,kBAGkB;AACpBJ,EAAAA,MAAM,EAAE,IADY;AAEpBc,EAAAA,QAAQ,EAAE;AAAA,QAAGC,IAAH,UAAGA,IAAH;AAAA,WAAcA,IAAI,CAACQ,GAAL,CAAS,UAACC,IAAD,EAAOC,CAAP;AAAA,0BAAa,gCAAC,gBAAD,CAAkB,IAAlB;AAAuB,QAAA,GAAG,EAAEA;AAA5B,SAAmCD,IAAnC,EAAb;AAAA,KAAT,CAAd;AAAA;AAFU,C;;AAmCxB,SAASE,gBAAT,CAA0BC,KAA1B,EAAiC;AAAA;AAAA;;AAC/B,MAAMC,QAAQ,GACiCV,YAD/C;AACA,iBAAO,mBAAQS,KAAK,CAACP,MAAd,CAAP,eAA6B,gCAAC,QAAD,6EAA7B;AACD;;IAEKS,gB;;;;;;;;;;;;;;;8FAGI,IAAIC,IAAJ,CAAS,IAAIA,IAAJ,GAAWC,QAAX,CAAoB,CAApB,EAAuB,CAAvB,EAA0B,CAA1B,EAA6B,CAA7B,CAAT,C;yGA+DW,YAAM;AAAA,UACfC,WADe,GACC,MAAK3B,OADN,CACf2B,WADe;AAGvB,4EAAW,qBAAX,EAAkCA,WAAW,CAACpC,MAAZ,GAAqB,CAACoC,WAAW,CAAC,CAAD,CAAZ,CAArB,GAAwC,EAA1E;AACD,K;;;;;;WAjED,4BAA+BC,IAA/B,EAAqC;AAAA;;AAAA,UAAxB3B,IAAwB,UAAxBA,IAAwB;AAAA,UAAf4B,KAAe;AACnC,UAAMC,IAAI,GAAG,IAAb;AADmC,2BAEuC,KAAK9B,OAF5C;AAAA,UAEjB+B,SAFiB,kBAE3BC,QAF2B;AAAA,UAENC,KAFM,kBAENA,KAFM;AAAA,UAECtC,MAFD,kBAECA,MAFD;AAAA,UAEsBuC,YAFtB,kBAESP,WAFT;AAGnC,UAAIQ,MAAM,GAAGF,KAAK,CAAC,CAAD,CAAL,GAAW,uBAAMA,KAAK,CAAC,CAAD,CAAX,CAAX,GAA6B,IAA1C;AACA,UAAIG,MAAM,GAAGH,KAAK,CAAC,CAAD,CAAL,GAAW,uBAAMA,KAAK,CAAC,CAAD,CAAX,CAAX,GAA6B,IAA1C;AACA,UAAII,QAAJ;;AACA,UAAIF,MAAM,IAAIC,MAAd,EAAsB;AACpB,YAAID,MAAM,GAAGC,MAAb;AAAA,uBAAwC,CAACD,MAAD,EAASC,MAAT,CAAxC;AAAsBA,UAAAA,MAAtB;AAA8BD,UAAAA,MAA9B;AAAA;;AACAE,QAAAA,QAAQ,GAAGpC,IAAI,CAAChB,SAAL,CAAekD,MAAf,EAAuBC,MAAvB,EAA+BR,IAA/B,EAAqC,IAArC,CAAX;AACD;;AACD,UAAMU,aAAa,GAAGH,MAAM,IAAIlC,IAAI,CAACsC,MAAL,CAAYJ,MAAZ,EAAoBP,IAApB,CAAhC;AACA,UAAMY,WAAW,GAAGJ,MAAM,IAAInC,IAAI,CAACsC,MAAL,CAAYH,MAAZ,EAAoBR,IAApB,CAA9B;AAEA,UAAIa,YAAY,GAAGP,YAAY,CAAC,CAAD,CAAZ,GAAkB,uBAAMA,YAAY,CAAC,CAAD,CAAlB,CAAlB,GAA2C,IAA9D;AACA,UAAIQ,YAAY,GAAGR,YAAY,CAAC,CAAD,CAAZ,GAAkB,uBAAMA,YAAY,CAAC,CAAD,CAAlB,CAAlB,GAA2CO,YAA9D;AACA,UAAIE,gBAAJ,EAAsBC,cAAtB,EAAsCjB,WAAtC;;AACA,UAAIc,YAAY,IAAIC,YAApB,EAAkC;AAChC,YAAID,YAAY,GAAGC,YAAnB;AAAA,uBAAgE,CAACD,YAAD,EAAeC,YAAf,CAAhE;AAAkCA,UAAAA,YAAlC;AAAgDD,UAAAA,YAAhD;AAAA;;AACAd,QAAAA,WAAW,GAAG1B,IAAI,CAAChB,SAAL,CAAewD,YAAf,EAA6BC,YAA7B,EAA2Cd,IAA3C,EAAiD,IAAjD,CAAd;AACAe,QAAAA,gBAAgB,GAAGF,YAAY,IAAIxC,IAAI,CAACsC,MAAL,CAAYE,YAAZ,EAA0B,MAA1B,CAAnC;AACAG,QAAAA,cAAc,GAAGF,YAAY,IAAIzC,IAAI,CAACsC,MAAL,CAAYG,YAAZ,EAA0B,MAA1B,CAAjC;AACD;;AAED,UAAMV,QAAQ,GAAGD,SAAS,CAACc,IAAV,CAAe,8BAAa5C,IAAb,EAAmB2B,IAAnB,CAAf,CAAjB;;AAEA;AACE3B,QAAAA,IAAI,EAAE,+BAAcA,IAAd,EAAoBN,MAApB,CADR;AAEEc,QAAAA,QAAQ,EAAE,EAFZ;AAGE6B,QAAAA,aAAa,EAAbA,aAHF;AAIEE,QAAAA,WAAW,EAAXA,WAJF;AAKEH,QAAAA,QAAQ,EAARA,QALF;AAMEL,QAAAA,QAAQ,EAARA,QANF;AAOEL,QAAAA,WAAW,EAAXA,WAPF;AAQEgB,QAAAA,gBAAgB,EAAhBA,gBARF;AASEC,QAAAA,cAAc,EAAdA,cATF;AAUEE,QAAAA,KAAK,EAAE7C,IAAI,CAACsC,MAAL,CAAYT,IAAI,CAACgB,KAAjB,EAAwBlB,IAAxB,CAVT;AAWEmB,QAAAA,OAAO,EAAE,mBAAM;AAAA,cACQb,YADR,GACyB,MAAI,CAAClC,OAD9B,CACL2B,WADK;AAEb,cAAIA,WAAW,GAAG,CAAC1B,IAAI,CAACM,OAAL,EAAD,CAAlB;;AAEA,cAAI2B,YAAY,CAAC3C,MAAb,KAAwB,CAA5B,EAA+B;AAC7BoC,YAAAA,WAAW,GAAG,CAACO,YAAY,CAAC,CAAD,CAAb,EAAkBjC,IAAI,CAACM,OAAL,EAAlB,CAAd;AACD,WAFD,MAEO,IAAI2B,YAAY,CAAC3C,MAAb,IAAuB,CAA3B,EAA8B;AACnCoC,YAAAA,WAAW,GAAG,EAAd;AACD;;AAED,gCAAK,MAAL,EAAW,qBAAX,EAAkCA,WAAlC;AACA,gCAAK,MAAL,EAAW,UAAX,EAAuB1B,IAAI,CAAC+C,MAAL,EAAvB;AACD,SAvBH;AAwBEC,QAAAA,YAAY,EAAE,wBAAM;AAAA,+BAC2B,MAAI,CAACjD,OADhC;AAAA,cACViC,KADU,kBACVA,KADU;AAAA,cACUC,YADV,kBACHP,WADG;;AAElB,cAAIO,YAAY,CAAC,CAAD,CAAZ,IAAmBD,KAAK,CAAC1C,MAAN,KAAiB,CAAxC,EAA2C;AACzC,gBAAM2D,SAAS,GAAGhB,YAAY,CAAC,CAAD,CAAZ,IAAmBD,KAAK,CAAC,CAAD,CAA1C;AACA,gBAAMN,aAAW,GAAG,CAACuB,SAAS,CAAC3C,OAAV,EAAD,EAAsBN,IAAI,CAACM,OAAL,EAAtB,CAApB;AACA,kCAAK,MAAL,EAAW,qBAAX,EAAkCoB,aAAlC;AACD;AACF;AA/BH,SAgCKE,KAhCL;AAkCD;;;EAhE4Bb,e;;iCAAzBQ,gB,WACWP,K;;AAwEjB,SAASkC,YAAT,SAAwC;AAAA;AAAA;;AAAA,MAAhBpC,MAAgB,UAAhBA,MAAgB;AAAA,MAARd,IAAQ,UAARA,IAAQ;AACtC,MAAMmD,aAAa,GAEMvC,YAFzB;AACA,iBAAO,mBAAQE,MAAR,CAAP,eACE,gCAAC,aAAD;AAAA,WAAgC,QAAhC;AAAA,mBAAsD,CAACd,IAAvD;AAAA,kBAAyEA,IAAzE;AAAA,gBAAyF,CAAC;AAA1F,cADF;AAGD;;IAEKoD,gB;;;;;;;;;;;;WAUJ,0BAAiB;AAAA;;AAAA,2BACqC,KAAKrD,OAD1C;AAAA,UACPsD,eADO,kBACPA,eADO;AAAA,UACUC,cADV,kBACUA,cADV;AAAA,UAC0B5D,MAD1B,kBAC0BA,MAD1B;AAEf,UAAIM,IAAI,GAAG,uBAAMqD,eAAN,EAAuBpD,OAAvB,CAA+B,OAA/B,CAAX;AACA,UAAIsD,QAAQ,GAAGvD,IAAI,CAACwD,QAAL,CAAc,CAAd,EAAiB,OAAjB,CAAf;AACA,UAAIC,QAAQ,GAAGzD,IAAI,CAACO,GAAL,CAAS,CAAT,EAAY,OAAZ,CAAf;AAEA;;AACA,UAAMmD,eAAe,GAAG1D,IAAI,CACzBN,MADqB,CACdA,MADc,EACND,oBAAoB,CAACC,MAAD,CADd,EAErBO,OAFqB,CAEb,MAFa,EAGrB0D,GAHqB,CAGjB,GAHiB,IAIpB,CAAC3D,IAAI,CAAC2D,GAAL,CAAS,GAAT,KAAiB,CAAlB,IAAuB,CAJH,GAKpB3D,IAAI,CAAC2D,GAAL,CAAS,GAAT,CALJ;AAOA,UAAIC,aAAa,GAAGF,eAAe,GAC/BzE,KAAK,CAACsE,QAAQ,CAACM,WAAT,EAAD,EAAyB,YAAM;AAClC,YAAMC,GAAG,GAAG,MAAI,CAACC,UAAL,CAAgB;AAAE/D,UAAAA,IAAI,EAAEuD,QAAR;AAAkBS,UAAAA,QAAQ,EAAE;AAA5B,SAAhB,EAAoD,MAApD,CAAZ;;AACAF,QAAAA,GAAG,CAACtD,QAAJ,GAAeyD,MAAM,CAACV,QAAQ,CAACI,GAAT,CAAa,MAAb,CAAD,CAArB;AACAJ,QAAAA,QAAQ,GAAGA,QAAQ,CAAChD,GAAT,CAAa,CAAb,EAAgB,KAAhB,CAAX;AACA,eAAOuD,GAAP;AACD,OALI,CAAL,CAKGI,KALH,CAKS,CAACR,eALV,CAD+B,GAO/B,EAPJ;AASA,UAAMS,SAAS,GAAGlF,KAAK,CAACe,IAAI,CAAC6D,WAAL,EAAD,EAAqB,YAAM;AAChD,YAAMC,GAAG,GAAG,MAAI,CAACC,UAAL,CAAgB;AAAE/D,UAAAA,IAAI,EAAJA;AAAF,SAAhB,EAA0B,MAA1B,CAAZ;;AACA8D,QAAAA,GAAG,CAACtD,QAAJ,GAAeyD,MAAM,CAACjE,IAAI,CAAC2D,GAAL,CAAS,MAAT,CAAD,CAArB;AACA3D,QAAAA,IAAI,GAAGA,IAAI,CAACO,GAAL,CAAS,CAAT,EAAY,KAAZ,CAAP;AACA,eAAOuD,GAAP;AACD,OALsB,CAAvB;AAOA,UAAIM,aAAa,GAAGnF,KAAK,CAAC,KAAK2E,aAAa,CAACtE,MAAnB,GAA4B6E,SAAS,CAAC7E,MAAvC,EAA+C,YAAM;AAC5E,YAAMwE,GAAG,GAAG,MAAI,CAACC,UAAL,CAAgB;AAAE/D,UAAAA,IAAI,EAAEyD,QAAR;AAAkBO,UAAAA,QAAQ,EAAE;AAA5B,SAAhB,EAAoD,MAApD,CAAZ;;AACAF,QAAAA,GAAG,CAACtD,QAAJ,GAAeyD,MAAM,CAACR,QAAQ,CAACE,GAAT,CAAa,MAAb,CAAD,CAArB;AACAF,QAAAA,QAAQ,GAAGA,QAAQ,CAAClD,GAAT,CAAa,CAAb,EAAgB,KAAhB,CAAX;AACA,eAAOuD,GAAP;AACD,OALwB,CAAzB;;AAOA,UAAI,CAACR,cAAL,EAAqB;AACnBM,QAAAA,aAAa,GAAGA,aAAa,CAAC3C,GAAd,CAAkB;AAAA,iBAAO;AACvCc,YAAAA,QAAQ,EAAE,IAD6B;AAEvCvB,YAAAA,QAAQ,EAAE;AAF6B,WAAP;AAAA,SAAlB,CAAhB;AAIA4D,QAAAA,aAAa,GAAG,EAAhB;AACD;;AAED,2DAAWR,aAAX,uCAA6BO,SAA7B,uCAA2CC,aAA3C;AACD;;;WAED,sBAAa;AACX,aAAO;AACL3D,QAAAA,IAAI,EAAE,KAAK4D,cAAL;AADD,OAAP;AAGD;;;WAED,kBAAS;AAAA;AAAA;;AACP,UAAMC,SAAS,GAKM1D,YALrB;AACA,UAAM2D,SAAS,GAAG,KAAlB;AAFO,2BAG8B,KAAKxE,OAHnC;AAAA,UAGCc,QAHD,kBAGCA,QAHD;AAAA,UAGWC,MAHX,kBAGWA,MAHX;AAAA,UAGmBpB,MAHnB,kBAGmBA,MAHnB;AAKP,qBAAO,mBAAQoB,MAAR,CAAP,eACE,gCAAC,SAAD,4FACE,gCAAC,gBAAD;AAAA,kBAA0BpB;AAA1B,SADF,eAEE,gCAAC,SAAD;AAAA,wBAAyB,KAAK8E;AAA9B,uBACE,gCAAC,QAAD,2BADF,CAFF,CADF;AAQD;;;EA7E4BjD,gB;;iCAAzB6B,gB,iBACiB,c;iCADjBA,gB,kBAEkB;AACpBC,EAAAA,eAAe,EAAE,IAAI7B,IAAJ,CAAS,IAAIA,IAAJ,GAAWC,QAAX,CAAoB,CAApB,EAAuB,CAAvB,EAA0B,CAA1B,EAA6B,CAA7B,CAAT,CADG;AAEpBM,EAAAA,QAAQ,EAAE,EAFU;AAGpBC,EAAAA,KAAK,EAAE,EAHa;AAIpBtC,EAAAA,MAAM,EAAE,IAJY;AAKpBc,EAAAA,QAAQ,EAAE;AAAA,QAAGC,IAAH,UAAGA,IAAH;AAAA,WAAcA,IAAI,CAACQ,GAAL,CAAS,UAACC,IAAD,EAAOC,CAAP;AAAA,0BAAa,gCAAC,YAAD,CAAc,IAAd;AAAmB,QAAA,GAAG,EAAEA;AAAxB,SAA+BD,IAA/B,EAAb;AAAA,KAAT,CAAd;AAAA;AALU,C;;IA8ElBuD,kB;;;;;;;;;;;;WAMJ,2BAAkB;AAAA;;AAAA,2BACoB,KAAK1E,OADzB;AAAA,UACRsD,eADQ,kBACRA,eADQ;AAAA,UACS3D,MADT,kBACSA,MADT;AAGhB,UAAIM,IAAI,GAAG,uBAAMqD,eAAN,EAAuBpD,OAAvB,CAA+B,MAA/B,CAAX;AAEA,aAAOhB,KAAK,CAAC,EAAD,EAAK,YAAM;AACrB,YAAMyF,KAAK,GAAG,MAAI,CAACX,UAAL,CAAgB;AAAE/D,UAAAA,IAAI,EAAJA;AAAF,SAAhB,EAA0B,OAA1B,CAAd;;AACA0E,QAAAA,KAAK,CAAClE,QAAN,GAAiB,IAAIL,IAAI,CAACC,cAAT,CAAwBV,MAAxB,EAAgC;AAAEgF,UAAAA,KAAK,EAAE;AAAT,SAAhC,EAAoDrE,MAApD,CAA2DL,IAAI,CAACM,OAAL,EAA3D,CAAjB;AACAN,QAAAA,IAAI,GAAGA,IAAI,CAACO,GAAL,CAAS,CAAT,EAAY,OAAZ,CAAP;AACA,eAAOmE,KAAP;AACD,OALW,CAAZ;AAMD;;;WAED,sBAAa;AACX,aAAO;AACLC,QAAAA,MAAM,EAAE,KAAKC,eAAL;AADH,OAAP;AAGD;;;WAED,kBAAS;AAAA;AAAA;;AACP,UAAMN,SAAS,GAKM1D,YALrB;AACA,UAAMiE,WAAW,GAAG,KAApB;AAFO,2BAGsB,KAAK9E,OAH3B;AAAA,UAGCc,QAHD,kBAGCA,QAHD;AAAA,UAGWC,MAHX,kBAGWA,MAHX;AAKP,sBAAO,mBAAQA,MAAR,CAAP,eACE,gCAAC,SAAD,6FACE,gCAAC,WAAD;AAAA,wBAA2B,KAAK0D;AAAhC,uBACE,gCAAC,QAAD,4BADF,CADF,CADF;AAOD;;;EArC8BjD,gB;;iCAA3BkD,kB,iBACiB,gB;iCADjBA,kB,kBAEkB;AACpBjE,EAAAA,QAAQ,EAAE;AAAA,QAAGmE,MAAH,UAAGA,MAAH;AAAA,WAAgBA,MAAM,CAAC1D,GAAP,CAAW,UAACC,IAAD,EAAOC,CAAP;AAAA,0BAAa,gCAAC,cAAD,CAAgB,IAAhB;AAAqB,QAAA,GAAG,EAAEA;AAA1B,SAAiCD,IAAjC,EAAb;AAAA,KAAX,CAAhB;AAAA;AADU,C;AAsCxB,IAAM4D,gBAAgB,GAAG,sBAAgBhF,oBAAhB,EAAsC;AAC7DiF,EAAAA,IAAI,EAAE3D;AADuD,CAAtC,CAAzB;;AAIA,IAAM4D,YAAY,GAAG,sBAAgB5B,gBAAhB,EAAkC;AACrD2B,EAAAA,IAAI,EAAE7B;AAD+C,CAAlC,CAArB;;AAIA,IAAM+B,cAAc,GAAG,sBAAgBR,kBAAhB,EAAoC;AACzDM,EAAAA,IAAI,EAAE7B;AADmD,CAApC,CAAvB","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 { getLocaleDate } from '../utils/formatDate';\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 weekday = new Intl.DateTimeFormat(locale, { weekday: 'short' }).format(date.valueOf());\n date = date.add(1, 'day');\n return {\n children: weekday,\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(props) {\n const SWeekDay = Root;\n return sstyled(props.styles)(<SWeekDay render={Box} />);\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 { disabled: _disabled, value, locale, highlighted: _highlighted } = this.asProps;\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 let highlighted0 = _highlighted[0] ? dayjs(_highlighted[0]) : null;\n let highlighted1 = _highlighted[1] ? dayjs(_highlighted[1]) : highlighted0;\n let startHighlighted, endHighlighted, highlighted;\n if (highlighted0 && highlighted1) {\n if (highlighted0 > highlighted1) [highlighted1, highlighted0] = [highlighted0, highlighted1];\n highlighted = date.isBetween(highlighted0, highlighted1, unit, '[]');\n startHighlighted = highlighted0 && date.isSame(highlighted0, 'date');\n endHighlighted = highlighted1 && date.isSame(highlighted1, 'date');\n }\n\n const disabled = _disabled.some(includesDate(date, unit));\n\n return {\n date: getLocaleDate(date, locale),\n children: '',\n startSelected,\n endSelected,\n selected,\n disabled,\n highlighted,\n startHighlighted,\n endHighlighted,\n today: date.isSame(self.today, unit),\n onClick: () => {\n const { 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 fire(this, 'onHighlightedChange', highlighted);\n fire(this, 'onChange', date.toDate());\n },\n onMouseEnter: () => {\n const { value, highlighted: _highlighted } = this.asProps;\n if (_highlighted[0] || value.length === 1) {\n const startDate = _highlighted[0] || value[0];\n const highlighted = [startDate.valueOf(), date.valueOf()];\n fire(this, 'onHighlightedChange', highlighted);\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\nfunction CalendarUnit({ styles, date }) {\n const SCalendarUnit = Root;\n return sstyled(styles)(\n <SCalendarUnit render={Box} tag=\"button\" aria-hidden={!date} aria-label={date} tabIndex={-1} />,\n );\n}\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(), () => {\n const day = this.createUnit({ date: prevDate, outdated: true }, '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(), () => {\n const day = this.createUnit({ date }, '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, () => {\n const day = this.createUnit({ date: nextDate, outdated: true }, '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\n return sstyled(styles)(\n <SCalendar render={Box}>\n <CalendarWeekDays locale={locale} />\n <SGridDays onMouseLeave={this.handleMouseLeave}>\n <Children />\n </SGridDays>\n </SCalendar>,\n );\n }\n}\n\nclass CalendarMonthsRoot extends CalendarAbstract {\n static displayName = 'CalendarMonths';\n static defaultProps = {\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 date = date.add(1, 'month');\n return month;\n });\n }\n\n setContext() {\n return {\n months: this.getMonthsByYear(),\n };\n }\n\n render() {\n const SCalendar = Root;\n const SGridMonths = 'div';\n const { Children, styles } = this.asProps;\n\n return sstyled(styles)(\n <SCalendar render={Box}>\n <SGridMonths onMouseLeave={this.handleMouseLeave}>\n <Children />\n </SGridMonths>\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"],"file":"Calendar.js"}
@@ -64,16 +64,16 @@ var style = (
64
64
  /*__reshadow_css_start__*/
65
65
  _core.sstyled.insert(
66
66
  /*__inner_css_start__*/
67
- ".___SPopper_7dn2t_gg_{padding:16px;outline:0}.___SPopper_7dn2t_gg_::-moz-focus-inner{border:none;padding:0}.___SPopper_7dn2t_gg_:active,.___SPopper_7dn2t_gg_:focus,.___SPopper_7dn2t_gg_:hover{outline:0;text-decoration:none}.___SPopper_7dn2t_gg_:focus{box-shadow:0 0 0 3px rgba(43,148,225,.3)}.___SHeader_7dn2t_gg_{display:flex}.___STitle_7dn2t_gg_{font-size:12px;height:32px;width:100%;align-items:center}.___STitle_7dn2t_gg_,.___SToday_7dn2t_gg_{display:flex;justify-content:center}.___SToday_7dn2t_gg_{margin-top:12px}.___SPeriod_7dn2t_gg_{display:flex;flex-direction:column;margin-bottom:8px}"
67
+ ".___SPopper_tqjxo_gg_{padding:16px;outline:0}.___SPopper_tqjxo_gg_::-moz-focus-inner{border:none;padding:0}.___SPopper_tqjxo_gg_:active,.___SPopper_tqjxo_gg_:focus,.___SPopper_tqjxo_gg_:hover{outline:0;text-decoration:none}.___SPopper_tqjxo_gg_:focus{box-shadow:0 0 0 3px rgba(43,148,225,.3)}.___SHeader_tqjxo_gg_{display:flex}.___STitle_tqjxo_gg_{font-size:12px;height:32px;width:100%;align-items:center}.___STitle_tqjxo_gg_,.___SToday_tqjxo_gg_{display:flex;justify-content:center}.___SToday_tqjxo_gg_{margin-top:12px}.___SPeriod_tqjxo_gg_{display:flex;flex-direction:column;margin-bottom:8px}"
68
68
  /*__inner_css_end__*/
69
69
  , "1olnti5_gg_")
70
70
  /*__reshadow_css_end__*/
71
71
  , {
72
- "__SPopper": "___SPopper_7dn2t_gg_",
73
- "__SHeader": "___SHeader_7dn2t_gg_",
74
- "__STitle": "___STitle_7dn2t_gg_",
75
- "__SToday": "___SToday_7dn2t_gg_",
76
- "__SPeriod": "___SPeriod_7dn2t_gg_"
72
+ "__SPopper": "___SPopper_tqjxo_gg_",
73
+ "__SHeader": "___SHeader_tqjxo_gg_",
74
+ "__STitle": "___STitle_tqjxo_gg_",
75
+ "__SToday": "___SToday_tqjxo_gg_",
76
+ "__SPeriod": "___SPeriod_tqjxo_gg_"
77
77
  });
78
78
  var i18n = {
79
79
  de: _de["default"],
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/PickerAbstract.js"],"names":["i18n","de","en","es","fr","it","ja","ru","zh","pt","ko","vi","INTERACTION_TAGS","defaultDisplayedPeriod","Date","setHours","PickerAbstract","direction","displayedPeriod","asProps","action","date","navigateStep","toDate","handlers","navigateView","e","target","currentTarget","value","highlighted","_disabled","disabled","day","keyDiff","keyCode","getCurrentHighlightedDay","current_day","isDisabledDay","some","length","preventDefault","includes","tagName","current_highlighted","add","keyStep","visible","props","size","empty","onKeyDown","handlerKeyDown","interaction","Picker","CORE_INSTANCE","tabIndex","children","onClick","bindHandlerNavigateClick","locale","onChange","renderOutdated","styles","Children","Dropdown","defaultValue","defaultVisible","defaultHighlighted","Component","style","amount","unit","subtract"],"mappings":"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","sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport { Component, Root, CORE_INSTANCE, sstyled } from '@semcore/core';\nimport Dropdown from '@semcore/dropdown';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport de from '../translations/de.json';\nimport en from '../translations/en.json';\nimport es from '../translations/es.json';\nimport fr from '../translations/fr.json';\nimport it from '../translations/it.json';\nimport ja from '../translations/ja.json';\nimport pt from '../translations/pt.json';\nimport ru from '../translations/ru.json';\nimport zh from '../translations/zh.json';\nimport ko from '../translations/ko.json';\nimport vi from '../translations/vi.json';\n\nimport style from '../style/date-picker.shadow.css';\nimport includesDate from '../utils/includesDate';\n\nconst i18n = { de, en, es, fr, it, ja, ru, zh, pt, ko, vi };\n\nconst INTERACTION_TAGS = ['INPUT'];\n\nconst defaultDisplayedPeriod = new Date(new Date().setHours(0, 0, 0, 0));\n\nclass PickerAbstract extends Component {\n static displayName = 'DatePicker';\n static style = style;\n static defaultProps({ value, defaultValue }) {\n return {\n i18n,\n locale: 'en',\n defaultDisplayedPeriod: value || defaultValue || defaultDisplayedPeriod,\n defaultValue: null,\n defaultVisible: false,\n defaultHighlighted: [],\n disabled: [],\n size: 'm',\n };\n }\n static enhance = [i18nEnhance()];\n\n static add = (date, amount, unit) => {\n return dayjs(date)\n .add(amount, unit)\n .toDate();\n };\n\n static subtract = (date, amount, unit) => {\n return dayjs(date)\n .subtract(amount, unit)\n .toDate();\n };\n\n navigateStep;\n keyDiff;\n keyStep;\n\n uncontrolledProps() {\n return {\n displayedPeriod: null,\n visible: [\n null,\n (visible) => {\n if (!visible) {\n this.handlers.highlighted([]);\n this.handlers.displayedPeriod(this.asProps.value || this.props.defaultDisplayedPeriod);\n }\n },\n ],\n highlighted: null,\n value: [\n null,\n (value) => {\n // TODO: работает только из-за new Date() !== new Date()\n this.handlers.visible(false);\n this.handlers.displayedPeriod(value);\n },\n ],\n };\n }\n\n navigateView = (direction) => {\n const { displayedPeriod } = this.asProps;\n const action = direction >= 1 ? 'add' : 'subtract';\n const date = dayjs(displayedPeriod)\n [action](1, this.navigateStep)\n .toDate();\n this.handlers.displayedPeriod(date);\n };\n\n bindHandlerNavigateClick = (direction) => () => {\n this.navigateView(direction);\n };\n\n handlerKeyDown = (e) => {\n if (e.target !== e.currentTarget) return;\n const { value, displayedPeriod, highlighted, disabled: _disabled } = this.asProps;\n const day = this.keyDiff[e.keyCode];\n\n const getCurrentHighlightedDay = (day) => {\n const current_day = day.toDate();\n const isDisabledDay = _disabled.some(includesDate(dayjs(current_day), 'date'));\n return isDisabledDay ? null : current_day;\n };\n\n if (e.keyCode === 32 || (e.keyCode === 13 && highlighted.length)) {\n this.handlers.value(highlighted[0]);\n e.preventDefault();\n }\n if (day) {\n if (INTERACTION_TAGS.includes(e.target.tagName)) return;\n const current_highlighted =\n !highlighted[0] && !value\n ? dayjs(highlighted[0] || displayedPeriod)\n : dayjs(displayedPeriod).add(day, this.keyStep);\n const current_day =\n getCurrentHighlightedDay(current_highlighted) ||\n getCurrentHighlightedDay(dayjs(highlighted[0] || displayedPeriod));\n\n if (current_day) {\n this.handlers.highlighted([current_day]);\n this.handlers.displayedPeriod(current_day);\n e.preventDefault();\n }\n }\n };\n\n getTriggerProps() {\n const { value, size } = this.asProps;\n return {\n size,\n empty: !value,\n onKeyDown: this.handlerKeyDown,\n };\n }\n\n getPopperProps() {\n const { interaction } = this.asProps;\n const Picker = this[CORE_INSTANCE];\n return {\n tabIndex: 0,\n onKeyDown: this.handlerKeyDown,\n children: (\n <>\n <Picker.Header />\n <Picker.Calendar />\n </>\n ),\n };\n }\n\n getHeaderProps() {\n const Picker = this[CORE_INSTANCE];\n return {\n children: (\n <>\n <Picker.Prev />\n <Picker.Title />\n <Picker.Next />\n </>\n ),\n };\n }\n\n getTitleProps() {\n return {};\n }\n\n getNextProps() {\n return {\n onClick: this.bindHandlerNavigateClick(1),\n };\n }\n\n getPrevProps() {\n return {\n onClick: this.bindHandlerNavigateClick(-1),\n };\n }\n\n getCalendarProps() {\n const { locale, displayedPeriod, disabled, value, onChange, highlighted } = this.asProps;\n return {\n locale,\n displayedPeriod,\n disabled,\n onChange,\n highlighted,\n value: [value, value],\n renderOutdated: true,\n };\n }\n\n render() {\n const { styles, Children } = this.asProps;\n return sstyled(styles)(\n <Root render={Dropdown}>\n <Children />\n </Root>,\n );\n }\n}\n\nexport default PickerAbstract;\n"],"file":"PickerAbstract.js"}
1
+ {"version":3,"sources":["../../../src/components/PickerAbstract.js"],"names":["i18n","de","en","es","fr","it","ja","ru","zh","pt","ko","vi","INTERACTION_TAGS","defaultDisplayedPeriod","Date","setHours","PickerAbstract","direction","displayedPeriod","asProps","action","date","navigateStep","toDate","handlers","navigateView","e","target","currentTarget","value","highlighted","_disabled","disabled","day","keyDiff","keyCode","getCurrentHighlightedDay","current_day","isDisabledDay","some","length","preventDefault","includes","tagName","current_highlighted","add","keyStep","visible","props","size","empty","onKeyDown","handlerKeyDown","interaction","Picker","CORE_INSTANCE","tabIndex","children","onClick","bindHandlerNavigateClick","locale","onChange","renderOutdated","styles","Children","Dropdown","defaultValue","defaultVisible","defaultHighlighted","Component","style","amount","unit","subtract"],"mappings":"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","sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport { Component, Root, CORE_INSTANCE, sstyled } from '@semcore/core';\nimport Dropdown from '@semcore/dropdown';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport de from '../translations/de.json';\nimport en from '../translations/en.json';\nimport es from '../translations/es.json';\nimport fr from '../translations/fr.json';\nimport it from '../translations/it.json';\nimport ja from '../translations/ja.json';\nimport pt from '../translations/pt.json';\nimport ru from '../translations/ru.json';\nimport zh from '../translations/zh.json';\nimport ko from '../translations/ko.json';\nimport vi from '../translations/vi.json';\n\nimport style from '../style/date-picker.shadow.css';\nimport includesDate from '../utils/includesDate';\n\nconst i18n = { de, en, es, fr, it, ja, ru, zh, pt, ko, vi };\n\nconst INTERACTION_TAGS = ['INPUT'];\n\nconst defaultDisplayedPeriod = new Date(new Date().setHours(0, 0, 0, 0));\n\nclass PickerAbstract extends Component {\n static displayName = 'DatePicker';\n static style = style;\n static defaultProps({ value, defaultValue }) {\n return {\n i18n,\n locale: 'en',\n defaultDisplayedPeriod: value || defaultValue || defaultDisplayedPeriod,\n defaultValue: null,\n defaultVisible: false,\n defaultHighlighted: [],\n disabled: [],\n size: 'm',\n };\n }\n static enhance = [i18nEnhance()];\n\n static add = (date, amount, unit) => {\n return dayjs(date).add(amount, unit).toDate();\n };\n\n static subtract = (date, amount, unit) => {\n return dayjs(date).subtract(amount, unit).toDate();\n };\n\n navigateStep;\n keyDiff;\n keyStep;\n\n uncontrolledProps() {\n return {\n displayedPeriod: null,\n visible: [\n null,\n (visible) => {\n if (!visible) {\n this.handlers.highlighted([]);\n this.handlers.displayedPeriod(this.asProps.value || this.props.defaultDisplayedPeriod);\n }\n },\n ],\n highlighted: null,\n value: [\n null,\n (value) => {\n // TODO: работает только из-за new Date() !== new Date()\n this.handlers.visible(false);\n this.handlers.displayedPeriod(value);\n },\n ],\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) => () => {\n this.navigateView(direction);\n };\n\n handlerKeyDown = (e) => {\n if (e.target !== e.currentTarget) return;\n const { value, displayedPeriod, highlighted, disabled: _disabled } = this.asProps;\n const day = this.keyDiff[e.keyCode];\n\n const getCurrentHighlightedDay = (day) => {\n const current_day = day.toDate();\n const isDisabledDay = _disabled.some(includesDate(dayjs(current_day), 'date'));\n return isDisabledDay ? null : current_day;\n };\n\n if (e.keyCode === 32 || (e.keyCode === 13 && highlighted.length)) {\n this.handlers.value(highlighted[0]);\n e.preventDefault();\n }\n if (day) {\n if (INTERACTION_TAGS.includes(e.target.tagName)) return;\n const current_highlighted =\n !highlighted[0] && !value\n ? dayjs(highlighted[0] || displayedPeriod)\n : dayjs(displayedPeriod).add(day, this.keyStep);\n const current_day =\n getCurrentHighlightedDay(current_highlighted) ||\n getCurrentHighlightedDay(dayjs(highlighted[0] || displayedPeriod));\n\n if (current_day) {\n this.handlers.highlighted([current_day]);\n this.handlers.displayedPeriod(current_day);\n e.preventDefault();\n }\n }\n };\n\n getTriggerProps() {\n const { value, size } = this.asProps;\n return {\n size,\n empty: !value,\n onKeyDown: this.handlerKeyDown,\n };\n }\n\n getPopperProps() {\n const { interaction } = this.asProps;\n const Picker = this[CORE_INSTANCE];\n return {\n tabIndex: 0,\n onKeyDown: this.handlerKeyDown,\n children: (\n <>\n <Picker.Header />\n <Picker.Calendar />\n </>\n ),\n };\n }\n\n getHeaderProps() {\n const Picker = this[CORE_INSTANCE];\n return {\n children: (\n <>\n <Picker.Prev />\n <Picker.Title />\n <Picker.Next />\n </>\n ),\n };\n }\n\n getTitleProps() {\n return {};\n }\n\n getNextProps() {\n return {\n onClick: this.bindHandlerNavigateClick(1),\n };\n }\n\n getPrevProps() {\n return {\n onClick: this.bindHandlerNavigateClick(-1),\n };\n }\n\n getCalendarProps() {\n const { locale, displayedPeriod, disabled, value, onChange, highlighted } = this.asProps;\n return {\n locale,\n displayedPeriod,\n disabled,\n onChange,\n highlighted,\n value: [value, value],\n renderOutdated: true,\n };\n }\n\n render() {\n const { styles, Children } = this.asProps;\n return sstyled(styles)(\n <Root render={Dropdown}>\n <Children />\n </Root>,\n );\n }\n}\n\nexport default PickerAbstract;\n"],"file":"PickerAbstract.js"}
@@ -70,16 +70,16 @@ var style = (
70
70
  /*__reshadow_css_start__*/
71
71
  _core.sstyled.insert(
72
72
  /*__inner_css_start__*/
73
- ".___SPopper_7dn2t_gg_{padding:16px;outline:0}.___SPopper_7dn2t_gg_::-moz-focus-inner{border:none;padding:0}.___SPopper_7dn2t_gg_:active,.___SPopper_7dn2t_gg_:focus,.___SPopper_7dn2t_gg_:hover{outline:0;text-decoration:none}.___SPopper_7dn2t_gg_:focus{box-shadow:0 0 0 3px rgba(43,148,225,.3)}.___SHeader_7dn2t_gg_{display:flex}.___STitle_7dn2t_gg_{font-size:12px;height:32px;width:100%;align-items:center}.___STitle_7dn2t_gg_,.___SToday_7dn2t_gg_{display:flex;justify-content:center}.___SToday_7dn2t_gg_{margin-top:12px}.___SPeriod_7dn2t_gg_{display:flex;flex-direction:column;margin-bottom:8px}"
73
+ ".___SPopper_tqjxo_gg_{padding:16px;outline:0}.___SPopper_tqjxo_gg_::-moz-focus-inner{border:none;padding:0}.___SPopper_tqjxo_gg_:active,.___SPopper_tqjxo_gg_:focus,.___SPopper_tqjxo_gg_:hover{outline:0;text-decoration:none}.___SPopper_tqjxo_gg_:focus{box-shadow:0 0 0 3px rgba(43,148,225,.3)}.___SHeader_tqjxo_gg_{display:flex}.___STitle_tqjxo_gg_{font-size:12px;height:32px;width:100%;align-items:center}.___STitle_tqjxo_gg_,.___SToday_tqjxo_gg_{display:flex;justify-content:center}.___SToday_tqjxo_gg_{margin-top:12px}.___SPeriod_tqjxo_gg_{display:flex;flex-direction:column;margin-bottom:8px}"
74
74
  /*__inner_css_end__*/
75
75
  , "1olnti5_gg_")
76
76
  /*__reshadow_css_end__*/
77
77
  , {
78
- "__SPopper": "___SPopper_7dn2t_gg_",
79
- "__SHeader": "___SHeader_7dn2t_gg_",
80
- "__STitle": "___STitle_7dn2t_gg_",
81
- "__SToday": "___SToday_7dn2t_gg_",
82
- "__SPeriod": "___SPeriod_7dn2t_gg_"
78
+ "__SPopper": "___SPopper_tqjxo_gg_",
79
+ "__SHeader": "___SHeader_tqjxo_gg_",
80
+ "__STitle": "___STitle_tqjxo_gg_",
81
+ "__SToday": "___SToday_tqjxo_gg_",
82
+ "__SPeriod": "___SPeriod_tqjxo_gg_"
83
83
  });
84
84
  var i18n = {
85
85
  de: _de["default"],
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/RangePickerAbstract.js"],"names":["i18n","de","en","es","fr","it","ja","ru","zh","pt","ko","vi","INTERACTION_TAGS","defaultDisplayedPeriod","Date","setHours","getEndDate","value","Array","isArray","startDate","endDate","RangePickerAbstract","dirtyValue","direction","displayedPeriod","asProps","action","date","navigateStep","toDate","handlers","navigateView","e","target","currentTarget","highlighted","state","day","keyDiff","keyCode","setNextDisplayedPeriod","next_highlighted","_","right_period","month_right_period","getMonth","month_displayed_Period","subtract","length","handlerChange","preventDefault","includes","tagName","add","keyStep","setState","visible","props","size","empty","onKeyDown","handlerKeyDown","Picker","CORE_INSTANCE","periods","getDefaultPeriods","unclearable","getI18nText","interaction","buttons","handlerApply","tabIndex","children","Boolean","index","locale","Intl","DateTimeFormat","month","year","format","startOf","onClick","bindHandlerNavigateClick","disabled","onHighlightedChange","onChange","onDisplayedPeriodChange","Children","styles","Dropdown","defaultValue","defaultHighlighted","defaultVisible","Component","style","amount","unit"],"mappings":"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","sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport { Component, Root, CORE_INSTANCE, sstyled } from '@semcore/core';\nimport Button from '@semcore/button';\nimport { Box, Flex } from '@semcore/flex-box';\nimport Divider from '@semcore/divider';\nimport Dropdown from '@semcore/dropdown';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport de from '../translations/de.json';\nimport en from '../translations/en.json';\nimport es from '../translations/es.json';\nimport fr from '../translations/fr.json';\nimport it from '../translations/it.json';\nimport ja from '../translations/ja.json';\nimport pt from '../translations/pt.json';\nimport ru from '../translations/ru.json';\nimport zh from '../translations/zh.json';\nimport ko from '../translations/ko.json';\nimport vi from '../translations/vi.json';\n\nimport style from '../style/date-picker.shadow.css';\n\nconst i18n = { de, en, es, fr, it, ja, ru, zh, pt, ko, vi };\n\nconst INTERACTION_TAGS = ['INPUT'];\n\nconst defaultDisplayedPeriod = new Date(new Date().setHours(0, 0, 0, 0));\n\nfunction getEndDate(value) {\n if (!Array.isArray(value)) return null;\n const [startDate, endDate = startDate] = value;\n return endDate;\n}\n\nclass RangePickerAbstract extends Component {\n static displayName = 'DatePicker';\n static style = style;\n static defaultProps({ value, defaultValue }) {\n return {\n i18n,\n locale: 'en',\n defaultDisplayedPeriod:\n getEndDate(value) || getEndDate(defaultValue) || defaultDisplayedPeriod,\n defaultValue: [],\n defaultHighlighted: [],\n defaultVisible: false,\n disabled: [],\n size: 'm',\n };\n }\n static enhance = [i18nEnhance()];\n\n static add = (date, amount, unit) => {\n return dayjs(date)\n .add(amount, unit)\n .toDate();\n };\n\n static subtract = (date, amount, unit) => {\n return dayjs(date)\n .subtract(amount, unit)\n .toDate();\n };\n\n navigateStep;\n keyDiff;\n keyStep;\n\n state = {\n dirtyValue: [],\n };\n\n uncontrolledProps() {\n return {\n displayedPeriod: null,\n visible: [\n null,\n (visible) => {\n if (!visible) {\n this.handlers.highlighted([]);\n this.setState({ dirtyValue: [] });\n this.handlers.displayedPeriod(\n getEndDate(this.asProps.value) || this.props.defaultDisplayedPeriod,\n );\n }\n },\n ],\n highlighted: null,\n value: [\n null,\n (value) => {\n // TODO: работает только из-за new Date() !== new Date()\n this.handlers.visible(false);\n this.handlers.displayedPeriod(getEndDate(value));\n },\n ],\n };\n }\n\n navigateView = (direction) => {\n const { displayedPeriod } = this.asProps;\n const action = direction >= 1 ? 'add' : 'subtract';\n const date = dayjs(displayedPeriod)\n [action](1, this.navigateStep)\n .toDate();\n this.handlers.displayedPeriod(date);\n };\n\n bindHandlerNavigateClick = (direction) => () => this.navigateView(direction);\n\n handlerKeyDown = (e) => {\n if (e.target !== e.currentTarget) return;\n const { displayedPeriod, highlighted } = this.asProps;\n const { dirtyValue } = this.state;\n const day = this.keyDiff[e.keyCode];\n\n const setNextDisplayedPeriod = (next_highlighted) => {\n const [_, right_period] = next_highlighted;\n\n if (right_period) {\n const month_right_period = right_period.getMonth();\n const month_displayed_Period = displayedPeriod.getMonth();\n if (month_right_period - month_displayed_Period > 1) {\n return RangePickerAbstract.subtract(right_period, 1, 'month');\n } else if (month_right_period - month_displayed_Period < 0) {\n return right_period;\n }\n }\n return displayedPeriod;\n };\n\n if (e.keyCode === 32 && highlighted.length) {\n this.handlerChange(highlighted[1] || highlighted[0]);\n e.preventDefault();\n }\n if (day) {\n if (INTERACTION_TAGS.includes(e.target.tagName)) return;\n if (highlighted.length) {\n let next_highlighted;\n if (dirtyValue.length === 1) {\n next_highlighted = [\n dirtyValue[0],\n dayjs(highlighted[1] || highlighted[0])\n .add(day, this.keyStep)\n .toDate(),\n ];\n } else {\n next_highlighted = [\n dayjs(highlighted[0])\n .add(day, this.keyStep)\n .toDate(),\n ];\n }\n this.handlers.highlighted(next_highlighted);\n this.handlers.displayedPeriod(setNextDisplayedPeriod(next_highlighted));\n } else {\n this.handlers.highlighted([displayedPeriod]);\n }\n e.preventDefault();\n }\n };\n\n handlerApply = (value) => {\n const [startDate, endDate = startDate] = value;\n this.handlerChange([]);\n this.handlers.value([startDate, endDate]);\n };\n\n handlerChange = (date) => {\n let { dirtyValue } = this.state;\n let highlighted = [];\n if (Array.isArray(date)) {\n dirtyValue = date;\n } else if (!dirtyValue.length) {\n dirtyValue = [date];\n highlighted = [date];\n } else if (dirtyValue.length >= 2) {\n dirtyValue = [date];\n highlighted = [date];\n } else if (dirtyValue[0] > date) {\n dirtyValue = [date, dirtyValue[0]];\n } else {\n dirtyValue = [dirtyValue[0], date];\n }\n\n this.setState({ dirtyValue }, () => {\n this.handlers.highlighted(highlighted);\n });\n };\n\n getDefaultPeriods() {\n return [];\n }\n\n getTriggerProps() {\n const { value, size } = this.asProps;\n return {\n size,\n empty: !value[0] && !value[1],\n onKeyDown: this.handlerKeyDown,\n };\n }\n\n getPopperProps() {\n const Picker = this[CORE_INSTANCE];\n const {\n value,\n periods = this.getDefaultPeriods(),\n unclearable,\n getI18nText,\n interaction,\n } = this.asProps;\n const { dirtyValue } = this.state;\n\n const buttons = (\n <>\n <Button\n use=\"primary\"\n children={getI18nText('apply')}\n onClick={() => this.handlerApply(dirtyValue.length ? dirtyValue : value)}\n />\n {!unclearable && (\n <Button\n ml={2}\n use=\"tertiary\"\n theme=\"muted\"\n children={getI18nText('reset')}\n onClick={() => this.handlerApply([])}\n />\n )}\n </>\n );\n\n return {\n tabIndex: 0,\n onKeyDown: this.handlerKeyDown,\n children: (\n <>\n <Flex>\n <Box mr={2}>\n <Picker.Header>\n <Picker.Prev />\n <Picker.Title />\n </Picker.Header>\n <Picker.Calendar />\n </Box>\n <Box ml={2}>\n <Picker.Header>\n <Picker.Title />\n <Picker.Next />\n </Picker.Header>\n <Picker.Calendar />\n </Box>\n {Boolean(periods.length) && (\n <>\n <Divider m=\"-16px 16px\" orientation=\"vertical\" h=\"auto\" />\n <Flex direction=\"column\">\n <Picker.Period />\n <Flex mt=\"auto\">{buttons}</Flex>\n </Flex>\n </>\n )}\n </Flex>\n {!Boolean(periods.length) && <Flex mt={4}>{buttons}</Flex>}\n </>\n ),\n };\n }\n\n getHeaderProps() {\n const Picker = this[CORE_INSTANCE];\n return {\n children: (\n <>\n <Picker.Prev />\n <Picker.Title />\n <Picker.Next />\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)\n .add(index, this.navigateStep)\n .startOf(this.navigateStep)\n .toDate(),\n ),\n };\n }\n\n getNextProps() {\n return {\n onClick: this.bindHandlerNavigateClick(1),\n };\n }\n\n getPrevProps() {\n return {\n onClick: this.bindHandlerNavigateClick(-1),\n };\n }\n\n getCalendarProps(props, index) {\n const {\n locale,\n displayedPeriod,\n disabled,\n value,\n highlighted,\n onHighlightedChange,\n } = this.asProps;\n const { dirtyValue } = this.state;\n\n return {\n locale,\n displayedPeriod: dayjs(displayedPeriod)\n .add(index, this.navigateStep)\n .startOf(this.navigateStep)\n .toDate(),\n disabled,\n highlighted,\n onHighlightedChange,\n value: dirtyValue.length ? dirtyValue : value,\n onChange: this.handlerChange,\n };\n }\n\n getPeriodProps() {\n const {\n periods = this.getDefaultPeriods(),\n value,\n onHighlightedChange,\n onDisplayedPeriodChange,\n } = this.asProps;\n const { dirtyValue } = this.state;\n return {\n periods,\n value: dirtyValue.length ? dirtyValue : value,\n onChange: this.handlerApply,\n onHighlightedChange,\n onDisplayedPeriodChange,\n };\n }\n\n render() {\n const { Children, styles } = this.asProps;\n return sstyled(styles)(\n <Root render={Dropdown}>\n <Children />\n </Root>,\n );\n }\n}\n\nexport default RangePickerAbstract;\n"],"file":"RangePickerAbstract.js"}
1
+ {"version":3,"sources":["../../../src/components/RangePickerAbstract.js"],"names":["i18n","de","en","es","fr","it","ja","ru","zh","pt","ko","vi","INTERACTION_TAGS","defaultDisplayedPeriod","Date","setHours","getEndDate","value","Array","isArray","startDate","endDate","RangePickerAbstract","dirtyValue","direction","displayedPeriod","asProps","action","date","navigateStep","toDate","handlers","navigateView","e","target","currentTarget","highlighted","state","day","keyDiff","keyCode","setNextDisplayedPeriod","next_highlighted","_","right_period","month_right_period","getMonth","month_displayed_Period","subtract","length","handlerChange","preventDefault","includes","tagName","add","keyStep","setState","visible","props","size","empty","onKeyDown","handlerKeyDown","Picker","CORE_INSTANCE","periods","getDefaultPeriods","unclearable","getI18nText","interaction","buttons","handlerApply","tabIndex","children","Boolean","index","locale","Intl","DateTimeFormat","month","year","format","startOf","onClick","bindHandlerNavigateClick","disabled","onHighlightedChange","onChange","onDisplayedPeriodChange","Children","styles","Dropdown","defaultValue","defaultHighlighted","defaultVisible","Component","style","amount","unit"],"mappings":"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","sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport { Component, Root, CORE_INSTANCE, sstyled } from '@semcore/core';\nimport Button from '@semcore/button';\nimport { Box, Flex } from '@semcore/flex-box';\nimport Divider from '@semcore/divider';\nimport Dropdown from '@semcore/dropdown';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport de from '../translations/de.json';\nimport en from '../translations/en.json';\nimport es from '../translations/es.json';\nimport fr from '../translations/fr.json';\nimport it from '../translations/it.json';\nimport ja from '../translations/ja.json';\nimport pt from '../translations/pt.json';\nimport ru from '../translations/ru.json';\nimport zh from '../translations/zh.json';\nimport ko from '../translations/ko.json';\nimport vi from '../translations/vi.json';\n\nimport style from '../style/date-picker.shadow.css';\n\nconst i18n = { de, en, es, fr, it, ja, ru, zh, pt, ko, vi };\n\nconst INTERACTION_TAGS = ['INPUT'];\n\nconst defaultDisplayedPeriod = new Date(new Date().setHours(0, 0, 0, 0));\n\nfunction getEndDate(value) {\n if (!Array.isArray(value)) return null;\n const [startDate, endDate = startDate] = value;\n return endDate;\n}\n\nclass RangePickerAbstract extends Component {\n static displayName = 'DatePicker';\n static style = style;\n static defaultProps({ value, defaultValue }) {\n return {\n i18n,\n locale: 'en',\n defaultDisplayedPeriod:\n getEndDate(value) || getEndDate(defaultValue) || defaultDisplayedPeriod,\n defaultValue: [],\n defaultHighlighted: [],\n defaultVisible: false,\n disabled: [],\n size: 'm',\n };\n }\n static enhance = [i18nEnhance()];\n\n static add = (date, amount, unit) => {\n return dayjs(date).add(amount, unit).toDate();\n };\n\n static subtract = (date, amount, unit) => {\n return dayjs(date).subtract(amount, unit).toDate();\n };\n\n navigateStep;\n keyDiff;\n keyStep;\n\n state = {\n dirtyValue: [],\n };\n\n uncontrolledProps() {\n return {\n displayedPeriod: null,\n visible: [\n null,\n (visible) => {\n if (!visible) {\n this.handlers.highlighted([]);\n this.setState({ dirtyValue: [] });\n this.handlers.displayedPeriod(\n getEndDate(this.asProps.value) || this.props.defaultDisplayedPeriod,\n );\n }\n },\n ],\n highlighted: null,\n value: [\n null,\n (value) => {\n // TODO: работает только из-за new Date() !== new Date()\n this.handlers.visible(false);\n this.handlers.displayedPeriod(getEndDate(value));\n },\n ],\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 handlerKeyDown = (e) => {\n if (e.target !== e.currentTarget) return;\n const { displayedPeriod, highlighted } = this.asProps;\n const { dirtyValue } = this.state;\n const day = this.keyDiff[e.keyCode];\n\n const setNextDisplayedPeriod = (next_highlighted) => {\n const [_, right_period] = next_highlighted;\n\n if (right_period) {\n const month_right_period = right_period.getMonth();\n const month_displayed_Period = displayedPeriod.getMonth();\n if (month_right_period - month_displayed_Period > 1) {\n return RangePickerAbstract.subtract(right_period, 1, 'month');\n } else if (month_right_period - month_displayed_Period < 0) {\n return right_period;\n }\n }\n return displayedPeriod;\n };\n\n if (e.keyCode === 32 && highlighted.length) {\n this.handlerChange(highlighted[1] || highlighted[0]);\n e.preventDefault();\n }\n if (day) {\n if (INTERACTION_TAGS.includes(e.target.tagName)) return;\n if (highlighted.length) {\n let next_highlighted;\n if (dirtyValue.length === 1) {\n next_highlighted = [\n dirtyValue[0],\n dayjs(highlighted[1] || highlighted[0])\n .add(day, this.keyStep)\n .toDate(),\n ];\n } else {\n next_highlighted = [dayjs(highlighted[0]).add(day, this.keyStep).toDate()];\n }\n this.handlers.highlighted(next_highlighted);\n this.handlers.displayedPeriod(setNextDisplayedPeriod(next_highlighted));\n } else {\n this.handlers.highlighted([displayedPeriod]);\n }\n e.preventDefault();\n }\n };\n\n handlerApply = (value) => {\n const [startDate, endDate = startDate] = value;\n this.handlerChange([]);\n this.handlers.value([startDate, endDate]);\n };\n\n handlerChange = (date) => {\n let { dirtyValue } = this.state;\n let highlighted = [];\n if (Array.isArray(date)) {\n dirtyValue = date;\n } else if (!dirtyValue.length) {\n dirtyValue = [date];\n highlighted = [date];\n } else if (dirtyValue.length >= 2) {\n dirtyValue = [date];\n highlighted = [date];\n } else if (dirtyValue[0] > date) {\n dirtyValue = [date, dirtyValue[0]];\n } else {\n dirtyValue = [dirtyValue[0], date];\n }\n\n this.setState({ dirtyValue }, () => {\n this.handlers.highlighted(highlighted);\n });\n };\n\n getDefaultPeriods() {\n return [];\n }\n\n getTriggerProps() {\n const { value, size } = this.asProps;\n return {\n size,\n empty: !value[0] && !value[1],\n onKeyDown: this.handlerKeyDown,\n };\n }\n\n getPopperProps() {\n const Picker = this[CORE_INSTANCE];\n const {\n value,\n periods = this.getDefaultPeriods(),\n unclearable,\n getI18nText,\n interaction,\n } = this.asProps;\n const { dirtyValue } = this.state;\n\n const buttons = (\n <>\n <Button\n use=\"primary\"\n children={getI18nText('apply')}\n onClick={() => this.handlerApply(dirtyValue.length ? dirtyValue : value)}\n />\n {!unclearable && (\n <Button\n ml={2}\n use=\"tertiary\"\n theme=\"muted\"\n children={getI18nText('reset')}\n onClick={() => this.handlerApply([])}\n />\n )}\n </>\n );\n\n return {\n tabIndex: 0,\n onKeyDown: this.handlerKeyDown,\n children: (\n <>\n <Flex>\n <Box mr={2}>\n <Picker.Header>\n <Picker.Prev />\n <Picker.Title />\n </Picker.Header>\n <Picker.Calendar />\n </Box>\n <Box ml={2}>\n <Picker.Header>\n <Picker.Title />\n <Picker.Next />\n </Picker.Header>\n <Picker.Calendar />\n </Box>\n {Boolean(periods.length) && (\n <>\n <Divider m=\"-16px 16px\" orientation=\"vertical\" h=\"auto\" />\n <Flex direction=\"column\">\n <Picker.Period />\n <Flex mt=\"auto\">{buttons}</Flex>\n </Flex>\n </>\n )}\n </Flex>\n {!Boolean(periods.length) && <Flex mt={4}>{buttons}</Flex>}\n </>\n ),\n };\n }\n\n getHeaderProps() {\n const Picker = this[CORE_INSTANCE];\n return {\n children: (\n <>\n <Picker.Prev />\n <Picker.Title />\n <Picker.Next />\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 getNextProps() {\n return {\n onClick: this.bindHandlerNavigateClick(1),\n };\n }\n\n getPrevProps() {\n return {\n onClick: this.bindHandlerNavigateClick(-1),\n };\n }\n\n getCalendarProps(props, index) {\n const {\n locale,\n displayedPeriod,\n disabled,\n value,\n highlighted,\n onHighlightedChange,\n } = this.asProps;\n const { dirtyValue } = this.state;\n\n return {\n locale,\n displayedPeriod: dayjs(displayedPeriod)\n .add(index, this.navigateStep)\n .startOf(this.navigateStep)\n .toDate(),\n disabled,\n highlighted,\n onHighlightedChange,\n value: dirtyValue.length ? dirtyValue : value,\n onChange: this.handlerChange,\n };\n }\n\n getPeriodProps() {\n const {\n periods = this.getDefaultPeriods(),\n value,\n onHighlightedChange,\n onDisplayedPeriodChange,\n } = this.asProps;\n const { dirtyValue } = this.state;\n return {\n periods,\n value: dirtyValue.length ? dirtyValue : value,\n onChange: this.handlerApply,\n onHighlightedChange,\n onDisplayedPeriodChange,\n };\n }\n\n render() {\n const { Children, styles } = this.asProps;\n return sstyled(styles)(\n <Root render={Dropdown}>\n <Children />\n </Root>,\n );\n }\n}\n\nexport default RangePickerAbstract;\n"],"file":"RangePickerAbstract.js"}
@@ -134,12 +134,12 @@ var stylesBtn = (
134
134
  /*__reshadow_css_start__*/
135
135
  _core.sstyled.insert(
136
136
  /*__inner_css_start__*/
137
- ".___SInner_1day0_gg_{justify-content:flex-start}"
137
+ ".___SInner_b02dy_gg_{justify-content:flex-start}"
138
138
  /*__inner_css_end__*/
139
139
  , "rfgf9b_gg_")
140
140
  /*__reshadow_css_end__*/
141
141
  , {
142
- "__SInner": "___SInner_1day0_gg_"
142
+ "__SInner": "___SInner_b02dy_gg_"
143
143
  });
144
144
 
145
145
  var Period = /*#__PURE__*/function (_Component) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/DatePicker.js"],"names":["React","dayjs","createComponent","Component","Root","sstyled","Box","Button","Divider","i18nEnhance","Header","Next","Popper","Prev","Title","Trigger","CalendarDays","Calendar","PickerAbstract","getLocaleDate","DatePickerRoot","handlers","value","Date","setHours","asProps","locale","placeholder","children","displayedPeriod","Intl","DateTimeFormat","month","year","format","startOf","toDate","i18n","onClick","handlerToday","props","defaultProps","Today","SToday","styles","getI18nText","DatePicker","parent"],"mappings":"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","sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport Button from '@semcore/button';\nimport Divider from '@semcore/divider';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { Header, Next, Popper, Prev, Title, Trigger } from './components';\nimport { CalendarDays as Calendar } from './components/Calendar';\nimport PickerAbstract from './components/PickerAbstract';\nimport { getLocaleDate } from './utils/formatDate';\n\nexport class DatePickerRoot extends PickerAbstract {\n static displayName = 'DatePicker';\n\n static defaultProps = (props) => ({\n ...PickerAbstract.defaultProps(props),\n children: (\n <>\n <DatePicker.Trigger />\n <DatePicker.Popper />\n </>\n ),\n });\n\n navigateStep = 'month';\n keyStep = 'day';\n keyDiff = {\n 37: -1,\n 38: -7,\n 39: 1,\n 40: 7,\n };\n\n handlerToday = () => {\n this.handlers.value(new Date(new Date().setHours(0, 0, 0, 0)));\n };\n\n getTriggerProps() {\n const { value, locale } = this.asProps;\n return {\n ...super.getTriggerProps(),\n placeholder: 'Select date',\n children: value ? getLocaleDate(value, locale) : null,\n };\n }\n\n getPopperProps() {\n return {\n ...super.getPopperProps(),\n children: (\n <>\n <DatePicker.Header />\n <DatePicker.Calendar />\n <Divider ml={-4} w=\"calc(100% + 32px)\" />\n <DatePicker.Today />\n </>\n ),\n };\n }\n\n getTitleProps() {\n const { displayedPeriod, locale } = this.asProps;\n return {\n ...super.getTitleProps(),\n children: new Intl.DateTimeFormat(locale, { month: 'long', year: 'numeric' }).format(\n dayjs(displayedPeriod)\n .startOf('month')\n .toDate(),\n ),\n };\n }\n\n getTodayProps() {\n const { i18n, locale } = this.asProps;\n return {\n i18n,\n locale,\n onClick: this.handlerToday,\n };\n }\n}\n\nclass Today extends Component {\n static enhance = [i18nEnhance()];\n\n render() {\n const SToday = Root;\n const { styles, getI18nText } = this.asProps;\n return sstyled(styles)(\n <SToday render={Box}>\n <Button use=\"tertiary\" children={getI18nText('today')} />\n </SToday>,\n );\n }\n}\n\nconst DatePicker = createComponent(\n DatePickerRoot,\n {\n Trigger,\n Popper,\n Header,\n Title,\n Prev,\n Next,\n Calendar,\n Today,\n },\n {\n parent: Calendar,\n },\n);\n\nexport default DatePicker;\n"],"file":"DatePicker.js"}
1
+ {"version":3,"sources":["../../src/DatePicker.js"],"names":["React","dayjs","createComponent","Component","Root","sstyled","Box","Button","Divider","i18nEnhance","Header","Next","Popper","Prev","Title","Trigger","CalendarDays","Calendar","PickerAbstract","getLocaleDate","DatePickerRoot","handlers","value","Date","setHours","asProps","locale","placeholder","children","displayedPeriod","Intl","DateTimeFormat","month","year","format","startOf","toDate","i18n","onClick","handlerToday","props","defaultProps","Today","SToday","styles","getI18nText","DatePicker","parent"],"mappings":"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","sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport Button from '@semcore/button';\nimport Divider from '@semcore/divider';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { Header, Next, Popper, Prev, Title, Trigger } from './components';\nimport { CalendarDays as Calendar } from './components/Calendar';\nimport PickerAbstract from './components/PickerAbstract';\nimport { getLocaleDate } from './utils/formatDate';\n\nexport class DatePickerRoot extends PickerAbstract {\n static displayName = 'DatePicker';\n\n static defaultProps = (props) => ({\n ...PickerAbstract.defaultProps(props),\n children: (\n <>\n <DatePicker.Trigger />\n <DatePicker.Popper />\n </>\n ),\n });\n\n navigateStep = 'month';\n keyStep = 'day';\n keyDiff = {\n 37: -1,\n 38: -7,\n 39: 1,\n 40: 7,\n };\n\n handlerToday = () => {\n this.handlers.value(new Date(new Date().setHours(0, 0, 0, 0)));\n };\n\n getTriggerProps() {\n const { value, locale } = this.asProps;\n return {\n ...super.getTriggerProps(),\n placeholder: 'Select date',\n children: value ? getLocaleDate(value, locale) : null,\n };\n }\n\n getPopperProps() {\n return {\n ...super.getPopperProps(),\n children: (\n <>\n <DatePicker.Header />\n <DatePicker.Calendar />\n <Divider ml={-4} w=\"calc(100% + 32px)\" />\n <DatePicker.Today />\n </>\n ),\n };\n }\n\n getTitleProps() {\n const { displayedPeriod, locale } = this.asProps;\n return {\n ...super.getTitleProps(),\n children: new Intl.DateTimeFormat(locale, { month: 'long', year: 'numeric' }).format(\n dayjs(displayedPeriod).startOf('month').toDate(),\n ),\n };\n }\n\n getTodayProps() {\n const { i18n, locale } = this.asProps;\n return {\n i18n,\n locale,\n onClick: this.handlerToday,\n };\n }\n}\n\nclass Today extends Component {\n static enhance = [i18nEnhance()];\n\n render() {\n const SToday = Root;\n const { styles, getI18nText } = this.asProps;\n return sstyled(styles)(\n <SToday render={Box}>\n <Button use=\"tertiary\" children={getI18nText('today')} />\n </SToday>,\n );\n }\n}\n\nconst DatePicker = createComponent(\n DatePickerRoot,\n {\n Trigger,\n Popper,\n Header,\n Title,\n Prev,\n Next,\n Calendar,\n Today,\n },\n {\n parent: Calendar,\n },\n);\n\nexport default DatePicker;\n"],"file":"DatePicker.js"}