@semcore/date-picker 2.8.1 → 2.8.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/lib/cjs/DatePicker.js +1 -1
  3. package/lib/cjs/DatePicker.js.map +1 -1
  4. package/lib/cjs/DateRangePicker.js.map +1 -1
  5. package/lib/cjs/MonthPicker.js.map +1 -1
  6. package/lib/cjs/MonthRangePicker.js.map +1 -1
  7. package/lib/cjs/components/ButtonTrigger.js +3 -9
  8. package/lib/cjs/components/ButtonTrigger.js.map +1 -1
  9. package/lib/cjs/components/Calendar.js +5 -5
  10. package/lib/cjs/components/Calendar.js.map +1 -1
  11. package/lib/cjs/components/PickerAbstract.js +1 -2
  12. package/lib/cjs/components/PickerAbstract.js.map +1 -1
  13. package/lib/cjs/components/RangePickerAbstract.js +2 -4
  14. package/lib/cjs/components/RangePickerAbstract.js.map +1 -1
  15. package/lib/cjs/components/index.js +15 -20
  16. package/lib/cjs/components/index.js.map +1 -1
  17. package/lib/cjs/index.d.ts +355 -0
  18. package/lib/cjs/index.js +5 -39
  19. package/lib/cjs/index.js.map +1 -1
  20. package/lib/cjs/utils/shortDateRangeFormat.js +1 -0
  21. package/lib/cjs/utils/shortDateRangeFormat.js.map +1 -1
  22. package/lib/es6/DatePicker.js +1 -1
  23. package/lib/es6/DatePicker.js.map +1 -1
  24. package/lib/es6/DateRangePicker.js.map +1 -1
  25. package/lib/es6/MonthPicker.js.map +1 -1
  26. package/lib/es6/MonthRangePicker.js.map +1 -1
  27. package/lib/es6/components/ButtonTrigger.js +3 -9
  28. package/lib/es6/components/ButtonTrigger.js.map +1 -1
  29. package/lib/es6/components/Calendar.js +5 -5
  30. package/lib/es6/components/Calendar.js.map +1 -1
  31. package/lib/es6/components/PickerAbstract.js +1 -2
  32. package/lib/es6/components/PickerAbstract.js.map +1 -1
  33. package/lib/es6/components/RangePickerAbstract.js +2 -4
  34. package/lib/es6/components/RangePickerAbstract.js.map +1 -1
  35. package/lib/es6/components/index.js +15 -20
  36. package/lib/es6/components/index.js.map +1 -1
  37. package/lib/es6/index.d.ts +355 -0
  38. package/lib/es6/index.js +0 -3
  39. package/lib/es6/index.js.map +1 -1
  40. package/lib/es6/utils/shortDateRangeFormat.js +1 -0
  41. package/lib/es6/utils/shortDateRangeFormat.js.map +1 -1
  42. package/package.json +5 -2
  43. package/src/{DatePicker.js → DatePicker.jsx} +0 -0
  44. package/src/{DateRangePicker.js → DateRangePicker.jsx} +0 -0
  45. package/src/{MonthPicker.js → MonthPicker.jsx} +0 -0
  46. package/src/{MonthRangePicker.js → MonthRangePicker.jsx} +0 -0
  47. package/src/components/{ButtonTrigger.js → ButtonTrigger.jsx} +2 -3
  48. package/src/components/{Calendar.js → Calendar.jsx} +0 -0
  49. package/src/components/{PickerAbstract.js → PickerAbstract.jsx} +0 -1
  50. package/src/components/{RangePickerAbstract.js → RangePickerAbstract.jsx} +2 -8
  51. package/src/components/{index.js → index.jsx} +2 -8
  52. package/src/index.js +0 -3
  53. package/src/utils/shortDateRangeFormat.js +1 -0
@@ -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).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
+ {"version":3,"sources":["../../src/DatePicker.jsx"],"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/DateRangePicker.js"],"names":["React","dayjs","createComponent","shortDateRangeFormat","Header","Next","Period","Popper","Prev","Title","Trigger","CalendarDays","Calendar","RangePickerAbstract","DateRangePickerRoot","getI18nText","asProps","today","Date","setHours","children","value","subtract","toDate","locale","placeholder","day","month","year","props","defaultProps","DateRangePicker","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
+ {"version":3,"sources":["../../src/DateRangePicker.jsx"],"names":["React","dayjs","createComponent","shortDateRangeFormat","Header","Next","Period","Popper","Prev","Title","Trigger","CalendarDays","Calendar","RangePickerAbstract","DateRangePickerRoot","getI18nText","asProps","today","Date","setHours","children","value","subtract","toDate","locale","placeholder","day","month","year","props","defaultProps","DateRangePicker","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":["React","dayjs","createComponent","Header","Next","Popper","Prev","Title","Trigger","CalendarMonths","Calendar","PickerAbstract","MonthPickerRoot","asProps","value","locale","placeholder","children","Intl","DateTimeFormat","month","year","format","toDate","displayedPeriod","startOf","props","defaultProps","MonthPicker","parent"],"mappings":";;;;;;;;;;;;;;;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,KAAP,MAAkB,OAAlB;AACA,OAAOC,eAAP,MAA4B,eAA5B;AACA,SAASC,MAAT,EAAiBC,IAAjB,EAAuBC,MAAvB,EAA+BC,IAA/B,EAAqCC,KAArC,EAA4CC,OAA5C,QAA2D,cAA3D;AACA,SAASC,cAAc,IAAIC,QAA3B,QAA2C,uBAA3C;AACA,OAAOC,cAAP,MAA2B,6BAA3B;;IAEMC,e;;;;;;;;;;;;;;;;mEAaW,M;;8DACL,O;;8DACA;AACR,UAAI,CAAC,CADG;AAER,UAAI,CAAC,CAFG;AAGR,UAAI,CAHI;AAIR,UAAI;AAJI,K;;;;;;;WAOV,2BAAkB;AAChB,0BAA0B,KAAKC,OAA/B;AAAA,UAAQC,KAAR,iBAAQA,KAAR;AAAA,UAAeC,MAAf,iBAAeA,MAAf;AACA;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,CAGUrB,KAAK,CAACa,KAAD,CAAL,CAAaS,MAAb,EAHV,CADW,GAKX;AARN;AAUD;;;WAED,yBAAgB;AACd,2BAAoC,KAAKV,OAAzC;AAAA,UAAQW,eAAR,kBAAQA,eAAR;AAAA,UAAyBT,MAAzB,kBAAyBA,MAAzB;AACA;AAEEE,QAAAA,QAAQ,EAAE,IAAIC,IAAI,CAACC,cAAT,CAAwBJ,MAAxB,EAAgC;AAAEM,UAAAA,IAAI,EAAE;AAAR,SAAhC,EAAqDC,MAArD,CACRrB,KAAK,CAACuB,eAAD,CAAL,CAAuBC,OAAvB,CAA+B,MAA/B,EAAuCF,MAAvC,EADQ;AAFZ;AAMD;;;;EA5C2BZ,c;;gBAAxBC,e,iBACiB,a;;gBADjBA,e,kBAGkB,UAACc,KAAD;AAAA,yCACjBf,cAAc,CAACgB,YAAf,CAA4BD,KAA5B,CADiB;AAEpBT,IAAAA,QAAQ,eACN,uDACE,oBAAC,WAAD,CAAa,OAAb,OADF,eAEE,oBAAC,WAAD,CAAa,MAAb,OAFF;AAHkB;AAAA,C;;AA4CxB,IAAMW,WAAW,GAAG1B,eAAe,CACjCU,eADiC,EAEjC;AACEJ,EAAAA,OAAO,EAAPA,OADF;AAEEH,EAAAA,MAAM,EAANA,MAFF;AAGEF,EAAAA,MAAM,EAANA,MAHF;AAIEI,EAAAA,KAAK,EAALA,KAJF;AAKED,EAAAA,IAAI,EAAJA,IALF;AAMEF,EAAAA,IAAI,EAAJA,IANF;AAOEM,EAAAA,QAAQ,EAARA;AAPF,CAFiC,EAWjC;AACEmB,EAAAA,MAAM,EAAEnB;AADV,CAXiC,CAAnC;AAgBA,eAAekB,WAAf","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
+ {"version":3,"sources":["../../src/MonthPicker.jsx"],"names":["React","dayjs","createComponent","Header","Next","Popper","Prev","Title","Trigger","CalendarMonths","Calendar","PickerAbstract","MonthPickerRoot","asProps","value","locale","placeholder","children","Intl","DateTimeFormat","month","year","format","toDate","displayedPeriod","startOf","props","defaultProps","MonthPicker","parent"],"mappings":";;;;;;;;;;;;;;;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,KAAP,MAAkB,OAAlB;AACA,OAAOC,eAAP,MAA4B,eAA5B;AACA,SAASC,MAAT,EAAiBC,IAAjB,EAAuBC,MAAvB,EAA+BC,IAA/B,EAAqCC,KAArC,EAA4CC,OAA5C,QAA2D,cAA3D;AACA,SAASC,cAAc,IAAIC,QAA3B,QAA2C,uBAA3C;AACA,OAAOC,cAAP,MAA2B,6BAA3B;;IAEMC,e;;;;;;;;;;;;;;;;mEAaW,M;;8DACL,O;;8DACA;AACR,UAAI,CAAC,CADG;AAER,UAAI,CAAC,CAFG;AAGR,UAAI,CAHI;AAIR,UAAI;AAJI,K;;;;;;;WAOV,2BAAkB;AAChB,0BAA0B,KAAKC,OAA/B;AAAA,UAAQC,KAAR,iBAAQA,KAAR;AAAA,UAAeC,MAAf,iBAAeA,MAAf;AACA;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,CAGUrB,KAAK,CAACa,KAAD,CAAL,CAAaS,MAAb,EAHV,CADW,GAKX;AARN;AAUD;;;WAED,yBAAgB;AACd,2BAAoC,KAAKV,OAAzC;AAAA,UAAQW,eAAR,kBAAQA,eAAR;AAAA,UAAyBT,MAAzB,kBAAyBA,MAAzB;AACA;AAEEE,QAAAA,QAAQ,EAAE,IAAIC,IAAI,CAACC,cAAT,CAAwBJ,MAAxB,EAAgC;AAAEM,UAAAA,IAAI,EAAE;AAAR,SAAhC,EAAqDC,MAArD,CACRrB,KAAK,CAACuB,eAAD,CAAL,CAAuBC,OAAvB,CAA+B,MAA/B,EAAuCF,MAAvC,EADQ;AAFZ;AAMD;;;;EA5C2BZ,c;;gBAAxBC,e,iBACiB,a;;gBADjBA,e,kBAGkB,UAACc,KAAD;AAAA,yCACjBf,cAAc,CAACgB,YAAf,CAA4BD,KAA5B,CADiB;AAEpBT,IAAAA,QAAQ,eACN,uDACE,oBAAC,WAAD,CAAa,OAAb,OADF,eAEE,oBAAC,WAAD,CAAa,MAAb,OAFF;AAHkB;AAAA,C;;AA4CxB,IAAMW,WAAW,GAAG1B,eAAe,CACjCU,eADiC,EAEjC;AACEJ,EAAAA,OAAO,EAAPA,OADF;AAEEH,EAAAA,MAAM,EAANA,MAFF;AAGEF,EAAAA,MAAM,EAANA,MAHF;AAIEI,EAAAA,KAAK,EAALA,KAJF;AAKED,EAAAA,IAAI,EAAJA,IALF;AAMEF,EAAAA,IAAI,EAAJA,IANF;AAOEM,EAAAA,QAAQ,EAARA;AAPF,CAFiC,EAWjC;AACEmB,EAAAA,MAAM,EAAEnB;AADV,CAXiC,CAAnC;AAgBA,eAAekB,WAAf","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":["React","dayjs","createComponent","shortDateRangeFormat","Header","Next","Period","Popper","Prev","Title","Trigger","CalendarMonths","Calendar","RangePickerAbstract","MonthRangePickerRoot","getI18nText","asProps","today","Date","setHours","children","value","subtract","startOf","toDate","locale","placeholder","month","year","props","index","displayedPeriod","Intl","DateTimeFormat","format","add","navigateStep","defaultProps","MonthRangePicker","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"}
1
+ {"version":3,"sources":["../../src/MonthRangePicker.jsx"],"names":["React","dayjs","createComponent","shortDateRangeFormat","Header","Next","Period","Popper","Prev","Title","Trigger","CalendarMonths","Calendar","RangePickerAbstract","MonthRangePickerRoot","getI18nText","asProps","today","Date","setHours","children","value","subtract","startOf","toDate","locale","placeholder","month","year","props","index","displayedPeriod","Intl","DateTimeFormat","format","add","navigateStep","defaultProps","MonthRangePicker","parent"],"mappings":";;;;;;;;;;;;;;;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,KAAP,MAAkB,OAAlB;AACA,OAAOC,eAAP,MAA4B,eAA5B;AACA,OAAOC,oBAAP,MAAiC,8BAAjC;AACA,SAASC,MAAT,EAAiBC,IAAjB,EAAuBC,MAAvB,EAA+BC,MAA/B,EAAuCC,IAAvC,EAA6CC,KAA7C,EAAoDC,OAApD,QAAmE,cAAnE;AACA,SAASC,cAAc,IAAIC,QAA3B,QAA2C,uBAA3C;AACA,OAAOC,mBAAP,MAAgC,kCAAhC;;IAEMC,oB;;;;;;;;;;;;;;;;mEAcW,M;;8DACL,O;;8DACA;AACR,UAAI,CAAC,CADG;AAER,UAAI,CAAC,CAFG;AAGR,UAAI,CAHI;AAIR,UAAI;AAJI,K;;;;;;;WAOV,6BAAoB;AAClB,UAAQC,WAAR,GAAwB,KAAKC,OAA7B,CAAQD,WAAR;AACA,UAAME,KAAK,GAAG,IAAIC,IAAJ,CAAS,IAAIA,IAAJ,GAAWC,QAAX,CAAoB,CAApB,EAAuB,CAAvB,EAA0B,CAA1B,EAA6B,CAA7B,CAAT,CAAd;AACA,aAAO,CACL;AACEC,QAAAA,QAAQ,EAAEL,WAAW,CAAC,WAAD,CADvB;AAEEM,QAAAA,KAAK,EAAE,CACLpB,KAAK,CAACgB,KAAD,CAAL,CAAaK,QAAb,CAAsB,CAAtB,EAAyB,OAAzB,EAAkCC,OAAlC,CAA0C,OAA1C,EAAmDC,MAAnD,EADK,EAELvB,KAAK,CAACgB,KAAD,CAAL,CAAaM,OAAb,CAAqB,OAArB,EAA8BC,MAA9B,EAFK;AAFT,OADK,EAQL;AACEJ,QAAAA,QAAQ,EAAEL,WAAW,CAAC,aAAD,CADvB;AAEEM,QAAAA,KAAK,EAAE,CACLpB,KAAK,CAACgB,KAAD,CAAL,CAAaK,QAAb,CAAsB,CAAtB,EAAyB,OAAzB,EAAkCC,OAAlC,CAA0C,OAA1C,EAAmDC,MAAnD,EADK,EAELvB,KAAK,CAACgB,KAAD,CAAL,CAAaM,OAAb,CAAqB,OAArB,EAA8BC,MAA9B,EAFK;AAFT,OARK,EAeL;AACEJ,QAAAA,QAAQ,EAAEL,WAAW,CAAC,aAAD,CADvB;AAEEM,QAAAA,KAAK,EAAE,CACLpB,KAAK,CAACgB,KAAD,CAAL,CAAaK,QAAb,CAAsB,CAAtB,EAAyB,OAAzB,EAAkCC,OAAlC,CAA0C,OAA1C,EAAmDC,MAAnD,EADK,EAELvB,KAAK,CAACgB,KAAD,CAAL,CAAaM,OAAb,CAAqB,OAArB,EAA8BC,MAA9B,EAFK;AAFT,OAfK,EAsBL;AACEJ,QAAAA,QAAQ,EAAEL,WAAW,CAAC,cAAD,CADvB;AAEEM,QAAAA,KAAK,EAAE,CACLpB,KAAK,CAACgB,KAAD,CAAL,CAAaK,QAAb,CAAsB,EAAtB,EAA0B,OAA1B,EAAmCC,OAAnC,CAA2C,OAA3C,EAAoDC,MAApD,EADK,EAELvB,KAAK,CAACgB,KAAD,CAAL,CAAaM,OAAb,CAAqB,OAArB,EAA8BC,MAA9B,EAFK;AAFT,OAtBK,CAAP;AA8BD;;;WAED,2BAAkB;AAChB,0BAA0B,KAAKR,OAA/B;AAAA,UAAQK,KAAR,iBAAQA,KAAR;AAAA,UAAeI,MAAf,iBAAeA,MAAf;AACA;AAEEC,QAAAA,WAAW,EAAE,qBAFf;AAGEN,QAAAA,QAAQ,EAAEjB,oBAAoB,CAACkB,KAAD,EAAQ;AACpCI,UAAAA,MAAM,EAANA,MADoC;AAEpCE,UAAAA,KAAK,EAAE,OAF6B;AAGpCC,UAAAA,IAAI,EAAE;AAH8B,SAAR;AAHhC;AASD;;;WAED,uBAAcC,KAAd,EAAqBC,KAArB,EAA4B;AAC1B,2BAAoC,KAAKd,OAAzC;AAAA,UAAQe,eAAR,kBAAQA,eAAR;AAAA,UAAyBN,MAAzB,kBAAyBA,MAAzB;AACA,qIACyBI,KADzB,EACgCC,KADhC;AAEEV,QAAAA,QAAQ,EAAE,IAAIY,IAAI,CAACC,cAAT,CAAwBR,MAAxB,EAAgC;AAAEG,UAAAA,IAAI,EAAE;AAAR,SAAhC,EAAqDM,MAArD,CACRjC,KAAK,CAAC8B,eAAD,CAAL,CAAuBI,GAAvB,CAA2BL,KAA3B,EAAkC,KAAKM,YAAvC,EAAqDb,OAArD,CAA6D,KAAKa,YAAlE,EAAgFZ,MAAhF,EADQ;AAFZ;AAMD;;;;EA/EgCX,mB;;gBAA7BC,oB,iBACiB,kB;;gBADjBA,oB,kBAEkB,UAACe,KAAD,EAAW;AAC/B,yCACKhB,mBAAmB,CAACwB,YAApB,CAAiCR,KAAjC,CADL;AAEET,IAAAA,QAAQ,eACN,uDACE,oBAAC,gBAAD,CAAkB,OAAlB,OADF,eAEE,oBAAC,gBAAD,CAAkB,MAAlB,OAFF;AAHJ;AASD,C;;AAsEH,IAAMkB,gBAAgB,GAAGpC,eAAe,CACtCY,oBADsC,EAEtC;AACEJ,EAAAA,OAAO,EAAPA,OADF;AAEEH,EAAAA,MAAM,EAANA,MAFF;AAGEH,EAAAA,MAAM,EAANA,MAHF;AAIEK,EAAAA,KAAK,EAALA,KAJF;AAKED,EAAAA,IAAI,EAAJA,IALF;AAMEH,EAAAA,IAAI,EAAJA,IANF;AAOEO,EAAAA,QAAQ,EAARA,QAPF;AAQEN,EAAAA,MAAM,EAANA;AARF,CAFsC,EAYtC;AACEiC,EAAAA,MAAM,EAAE3B;AADV,CAZsC,CAAxC;AAiBA,eAAe0B,gBAAf","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"}
@@ -1,19 +1,13 @@
1
1
  import { assignProps as _assignProps } from "@semcore/core";
2
-
3
- var _this = this;
4
-
5
- import React, { ComponentProps } from 'react';
2
+ import React from 'react';
6
3
  import BaseTrigger from '@semcore/base-trigger';
7
- import { Box } from '@semcore/flex-box';
8
4
  import addonTextChildren from '@semcore/utils/lib/addonTextChildren';
9
5
  import Calendar from '@semcore/icon/Calendar/m';
10
6
  import createComponent, { Root } from '@semcore/core';
11
7
 
12
8
  var ButtonTriggerRoot = function ButtonTriggerRoot(_ref2) {
13
- var _ref = _this ? _this.asProps : arguments[0];
14
-
15
- var Children = _ref2.Children,
16
- size = _ref2.size;
9
+ var _ref = arguments[0];
10
+ var Children = _ref2.Children;
17
11
  return /*#__PURE__*/React.createElement(BaseTrigger, _assignProps({}, _ref), /*#__PURE__*/React.createElement(ButtonTrigger.Addon, {
18
12
  tag: Calendar
19
13
  }), addonTextChildren(Children, ButtonTrigger.Text, ButtonTrigger.Addon));
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/ButtonTrigger.js"],"names":["React","ComponentProps","BaseTrigger","Box","addonTextChildren","Calendar","createComponent","Root","ButtonTriggerRoot","Children","size","ButtonTrigger","Text","Addon","displayName"],"mappings":";;;;AAAA,OAAOA,KAAP,IAAgBC,cAAhB,QAAsC,OAAtC;AACA,OAAOC,WAAP,MAAwB,uBAAxB;AACA,SAASC,GAAT,QAAoB,mBAApB;AACA,OAAOC,iBAAP,MAA8B,sCAA9B;AACA,OAAOC,QAAP,MAAqB,0BAArB;AACA,OAAOC,eAAP,IAA0BC,IAA1B,QAAsC,eAAtC;;AAEA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,QAAwB;AAAA;;AAAA,MAArBC,QAAqB,SAArBA,QAAqB;AAAA,MAAXC,IAAW,SAAXA,IAAW;AAChD,sBACE,oBAAcR,WAAd,uCACE,oBAAC,aAAD,CAAe,KAAf;AAAqB,IAAA,GAAG,EAAEG;AAA1B,IADF,EAEGD,iBAAiB,CAACK,QAAD,EAAWE,aAAa,CAACC,IAAzB,EAA+BD,aAAa,CAACE,KAA7C,CAFpB,CADF;AAMD,CAPD;;AASAL,iBAAiB,CAACM,WAAlB,GAAgC,eAAhC;AAEA,IAAMH,aAAa,GAAGL,eAAe,CAACE,iBAAD,EAAoB;AACvDI,EAAAA,IAAI,EAAEV,WAAW,CAACU,IADqC;AAEvDC,EAAAA,KAAK,EAAEX,WAAW,CAACW;AAFoC,CAApB,CAArC;AAKA,eAAeF,aAAf","sourcesContent":["import React, { ComponentProps } from 'react';\nimport BaseTrigger from '@semcore/base-trigger';\nimport { Box } from '@semcore/flex-box';\nimport addonTextChildren from '@semcore/utils/lib/addonTextChildren';\nimport Calendar from '@semcore/icon/Calendar/m';\nimport createComponent, { Root } from '@semcore/core';\n\nconst ButtonTriggerRoot = ({ Children, size }) => {\n return (\n <Root render={BaseTrigger}>\n <ButtonTrigger.Addon tag={Calendar} />\n {addonTextChildren(Children, ButtonTrigger.Text, ButtonTrigger.Addon)}\n </Root>\n );\n};\n\nButtonTriggerRoot.displayName = 'ButtonTrigger';\n\nconst ButtonTrigger = createComponent(ButtonTriggerRoot, {\n Text: BaseTrigger.Text,\n Addon: BaseTrigger.Addon,\n});\n\nexport default ButtonTrigger;\n"],"file":"ButtonTrigger.js"}
1
+ {"version":3,"sources":["../../../src/components/ButtonTrigger.jsx"],"names":["React","BaseTrigger","addonTextChildren","Calendar","createComponent","Root","ButtonTriggerRoot","Children","ButtonTrigger","Text","Addon","displayName"],"mappings":";AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,WAAP,MAAwB,uBAAxB;AACA,OAAOC,iBAAP,MAA8B,sCAA9B;AACA,OAAOC,QAAP,MAAqB,0BAArB;AACA,OAAOC,eAAP,IAA0BC,IAA1B,QAAsC,eAAtC;;AAEA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,QAAkB;AAAA;AAAA,MAAfC,QAAe,SAAfA,QAAe;AAC1C,sBACE,oBAAcN,WAAd,uCACE,oBAAC,aAAD,CAAe,KAAf;AAAqB,IAAA,GAAG,EAAEE;AAA1B,IADF,EAEGD,iBAAiB,CAACK,QAAD,EAAWC,aAAa,CAACC,IAAzB,EAA+BD,aAAa,CAACE,KAA7C,CAFpB,CADF;AAMD,CAPD;;AASAJ,iBAAiB,CAACK,WAAlB,GAAgC,eAAhC;AAEA,IAAMH,aAAa,GAAGJ,eAAe,CAACE,iBAAD,EAAoB;AACvDG,EAAAA,IAAI,EAAER,WAAW,CAACQ,IADqC;AAEvDC,EAAAA,KAAK,EAAET,WAAW,CAACS;AAFoC,CAApB,CAArC;AAKA,eAAeF,aAAf","sourcesContent":["import React from 'react';\nimport BaseTrigger from '@semcore/base-trigger';\nimport addonTextChildren from '@semcore/utils/lib/addonTextChildren';\nimport Calendar from '@semcore/icon/Calendar/m';\nimport createComponent, { Root } from '@semcore/core';\n\nconst ButtonTriggerRoot = ({ Children }) => {\n return (\n <Root render={BaseTrigger}>\n <ButtonTrigger.Addon tag={Calendar} />\n {addonTextChildren(Children, ButtonTrigger.Text, ButtonTrigger.Addon)}\n </Root>\n );\n};\n\nButtonTriggerRoot.displayName = 'ButtonTrigger';\n\nconst ButtonTrigger = createComponent(ButtonTriggerRoot, {\n Text: BaseTrigger.Text,\n Addon: BaseTrigger.Addon,\n});\n\nexport default ButtonTrigger;\n"],"file":"ButtonTrigger.js"}
@@ -117,7 +117,7 @@ var CalendarWeekDaysRoot = /*#__PURE__*/function (_Component) {
117
117
  }, {
118
118
  key: "render",
119
119
  value: function render() {
120
- var _ref = this ? this.asProps : arguments[0],
120
+ var _ref = this.asProps,
121
121
  _ref6;
122
122
 
123
123
  var SWeekDays = Box;
@@ -148,7 +148,7 @@ _defineProperty(CalendarWeekDaysRoot, "defaultProps", {
148
148
  });
149
149
 
150
150
  function CalendarWeekUnit(props) {
151
- var _ref2 = this ? this.asProps : arguments[0],
151
+ var _ref2 = arguments[0],
152
152
  _ref7;
153
153
 
154
154
  var SWeekDay = Box;
@@ -274,7 +274,7 @@ var CalendarAbstract = /*#__PURE__*/function (_Component2) {
274
274
  _defineProperty(CalendarAbstract, "style", style);
275
275
 
276
276
  function CalendarUnit(_ref14) {
277
- var _ref3 = this ? this.asProps : arguments[0],
277
+ var _ref3 = arguments[0],
278
278
  _ref8;
279
279
 
280
280
  var styles = _ref14.styles,
@@ -366,7 +366,7 @@ var CalendarDaysRoot = /*#__PURE__*/function (_CalendarAbstract) {
366
366
  }, {
367
367
  key: "render",
368
368
  value: function render() {
369
- var _ref4 = this ? this.asProps : arguments[0],
369
+ var _ref4 = this.asProps,
370
370
  _ref9;
371
371
 
372
372
  var SCalendar = Box;
@@ -445,7 +445,7 @@ var CalendarMonthsRoot = /*#__PURE__*/function (_CalendarAbstract2) {
445
445
  }, {
446
446
  key: "render",
447
447
  value: function render() {
448
- var _ref5 = this ? this.asProps : arguments[0],
448
+ var _ref5 = this.asProps,
449
449
  _ref10;
450
450
 
451
451
  var SCalendar = Box;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/Calendar.js"],"names":["React","dayjs","isBetween","createComponent","Component","Root","sstyled","Box","fire","includesDate","getLocaleDate","extend","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","Children","styles","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().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"}
1
+ {"version":3,"sources":["../../../src/components/Calendar.jsx"],"names":["React","dayjs","isBetween","createComponent","Component","Root","sstyled","Box","fire","includesDate","getLocaleDate","extend","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","Children","styles","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().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"}
@@ -177,7 +177,6 @@ var PickerAbstract = /*#__PURE__*/function (_Component) {
177
177
  }, {
178
178
  key: "getPopperProps",
179
179
  value: function getPopperProps() {
180
- var interaction = this.asProps.interaction;
181
180
  var Picker = this[CORE_INSTANCE];
182
181
  return {
183
182
  tabIndex: 0,
@@ -235,7 +234,7 @@ var PickerAbstract = /*#__PURE__*/function (_Component) {
235
234
  }, {
236
235
  key: "render",
237
236
  value: function render() {
238
- var _ref = this ? this.asProps : arguments[0],
237
+ var _ref = this.asProps,
239
238
  _ref2;
240
239
 
241
240
  var _this$asProps4 = this.asProps,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/PickerAbstract.js"],"names":["React","dayjs","Component","Root","CORE_INSTANCE","sstyled","Dropdown","i18nEnhance","de","en","es","fr","it","ja","pt","ru","zh","ko","vi","includesDate","i18n","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","tabIndex","children","onClick","bindHandlerNavigateClick","locale","onChange","renderOutdated","styles","Children","defaultValue","defaultVisible","defaultHighlighted","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"}
1
+ {"version":3,"sources":["../../../src/components/PickerAbstract.jsx"],"names":["React","dayjs","Component","Root","CORE_INSTANCE","sstyled","Dropdown","i18nEnhance","de","en","es","fr","it","ja","pt","ru","zh","ko","vi","includesDate","i18n","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","Picker","tabIndex","children","onClick","bindHandlerNavigateClick","locale","onChange","renderOutdated","styles","Children","defaultValue","defaultVisible","defaultHighlighted","style","amount","unit","subtract"],"mappings":";;;;;;;;;;;;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,KAAP,MAAkB,OAAlB;AACA,SAASC,SAAT,EAAoBC,IAApB,EAA0BC,aAA1B,EAAyCC,OAAzC,QAAwD,eAAxD;AACA,OAAOC,QAAP,MAAqB,mBAArB;AACA,OAAOC,WAAP,MAAwB,yCAAxB;AACA,OAAOC,EAAP,MAAe,yBAAf;AACA,OAAOC,EAAP,MAAe,yBAAf;AACA,OAAOC,EAAP,MAAe,yBAAf;AACA,OAAOC,EAAP,MAAe,yBAAf;AACA,OAAOC,EAAP,MAAe,yBAAf;AACA,OAAOC,EAAP,MAAe,yBAAf;AACA,OAAOC,EAAP,MAAe,yBAAf;AACA,OAAOC,EAAP,MAAe,yBAAf;AACA,OAAOC,EAAP,MAAe,yBAAf;AACA,OAAOC,EAAP,MAAe,yBAAf;AACA,OAAOC,EAAP,MAAe,yBAAf;;;;;;;;;;;;;;;;;;AAGA,OAAOC,YAAP,MAAyB,uBAAzB;AAEA,IAAMC,IAAI,GAAG;AAAEZ,EAAAA,EAAE,EAAFA,EAAF;AAAMC,EAAAA,EAAE,EAAFA,EAAN;AAAUC,EAAAA,EAAE,EAAFA,EAAV;AAAcC,EAAAA,EAAE,EAAFA,EAAd;AAAkBC,EAAAA,EAAE,EAAFA,EAAlB;AAAsBC,EAAAA,EAAE,EAAFA,EAAtB;AAA0BE,EAAAA,EAAE,EAAFA,EAA1B;AAA8BC,EAAAA,EAAE,EAAFA,EAA9B;AAAkCF,EAAAA,EAAE,EAAFA,EAAlC;AAAsCG,EAAAA,EAAE,EAAFA,EAAtC;AAA0CC,EAAAA,EAAE,EAAFA;AAA1C,CAAb;AAEA,IAAMG,gBAAgB,GAAG,CAAC,OAAD,CAAzB;AAEA,IAAMC,sBAAsB,GAAG,IAAIC,IAAJ,CAAS,IAAIA,IAAJ,GAAWC,QAAX,CAAoB,CAApB,EAAuB,CAAvB,EAA0B,CAA1B,EAA6B,CAA7B,CAAT,CAA/B;;IAEMC,c;;;;;;;;;;;;;;;;;;;;;;mEAqDW,UAACC,SAAD,EAAe;AAC5B,UAAQC,eAAR,GAA4B,MAAKC,OAAjC,CAAQD,eAAR;AACA,UAAME,MAAM,GAAGH,SAAS,IAAI,CAAb,GAAiB,KAAjB,GAAyB,UAAxC;AACA,UAAMI,IAAI,GAAG7B,KAAK,CAAC0B,eAAD,CAAL,CAAuBE,MAAvB,EAA+B,CAA/B,EAAkC,MAAKE,YAAvC,EAAqDC,MAArD,EAAb;;AACA,YAAKC,QAAL,CAAcN,eAAd,CAA8BG,IAA9B;AACD,K;;+EAE0B,UAACJ,SAAD;AAAA,aAAe,YAAM;AAC9C,cAAKQ,YAAL,CAAkBR,SAAlB;AACD,OAF0B;AAAA,K;;qEAIV,UAACS,CAAD,EAAO;AACtB,UAAIA,CAAC,CAACC,MAAF,KAAaD,CAAC,CAACE,aAAnB,EAAkC;AAClC,0BAAqE,MAAKT,OAA1E;AAAA,UAAQU,KAAR,iBAAQA,KAAR;AAAA,UAAeX,eAAf,iBAAeA,eAAf;AAAA,UAAgCY,WAAhC,iBAAgCA,WAAhC;AAAA,UAAuDC,SAAvD,iBAA6CC,QAA7C;AACA,UAAMC,GAAG,GAAG,MAAKC,OAAL,CAAaR,CAAC,CAACS,OAAf,CAAZ;;AAEA,UAAMC,wBAAwB,GAAG,SAA3BA,wBAA2B,CAACH,GAAD,EAAS;AACxC,YAAMI,WAAW,GAAGJ,GAAG,CAACV,MAAJ,EAApB;;AACA,YAAMe,aAAa,GAAGP,SAAS,CAACQ,IAAV,CAAe7B,YAAY,CAAClB,KAAK,CAAC6C,WAAD,CAAN,EAAqB,MAArB,CAA3B,CAAtB;;AACA,eAAOC,aAAa,GAAG,IAAH,GAAUD,WAA9B;AACD,OAJD;;AAMA,UAAIX,CAAC,CAACS,OAAF,KAAc,EAAd,IAAqBT,CAAC,CAACS,OAAF,KAAc,EAAd,IAAoBL,WAAW,CAACU,MAAzD,EAAkE;AAChE,cAAKhB,QAAL,CAAcK,KAAd,CAAoBC,WAAW,CAAC,CAAD,CAA/B;;AACAJ,QAAAA,CAAC,CAACe,cAAF;AACD;;AACD,UAAIR,GAAJ,EAAS;AACP,YAAIrB,gBAAgB,CAAC8B,QAAjB,CAA0BhB,CAAC,CAACC,MAAF,CAASgB,OAAnC,CAAJ,EAAiD;AACjD,YAAMC,mBAAmB,GACvB,CAACd,WAAW,CAAC,CAAD,CAAZ,IAAmB,CAACD,KAApB,GACIrC,KAAK,CAACsC,WAAW,CAAC,CAAD,CAAX,IAAkBZ,eAAnB,CADT,GAEI1B,KAAK,CAAC0B,eAAD,CAAL,CAAuB2B,GAAvB,CAA2BZ,GAA3B,EAAgC,MAAKa,OAArC,CAHN;AAIA,YAAMT,WAAW,GACfD,wBAAwB,CAACQ,mBAAD,CAAxB,IACAR,wBAAwB,CAAC5C,KAAK,CAACsC,WAAW,CAAC,CAAD,CAAX,IAAkBZ,eAAnB,CAAN,CAF1B;;AAIA,YAAImB,WAAJ,EAAiB;AACf,gBAAKb,QAAL,CAAcM,WAAd,CAA0B,CAACO,WAAD,CAA1B;;AACA,gBAAKb,QAAL,CAAcN,eAAd,CAA8BmB,WAA9B;;AACAX,UAAAA,CAAC,CAACe,cAAF;AACD;AACF;AACF,K;;;;;;;WAlED,6BAAoB;AAAA;;AAClB,aAAO;AACLvB,QAAAA,eAAe,EAAE,IADZ;AAEL6B,QAAAA,OAAO,EAAE,CACP,IADO,EAEP,UAACA,OAAD,EAAa;AACX,cAAI,CAACA,OAAL,EAAc;AACZ,YAAA,MAAI,CAACvB,QAAL,CAAcM,WAAd,CAA0B,EAA1B;;AACA,YAAA,MAAI,CAACN,QAAL,CAAcN,eAAd,CAA8B,MAAI,CAACC,OAAL,CAAaU,KAAb,IAAsB,MAAI,CAACmB,KAAL,CAAWnC,sBAA/D;AACD;AACF,SAPM,CAFJ;AAWLiB,QAAAA,WAAW,EAAE,IAXR;AAYLD,QAAAA,KAAK,EAAE,CACL,IADK,EAEL,UAACA,KAAD,EAAW;AACT;AACA,UAAA,MAAI,CAACL,QAAL,CAAcuB,OAAd,CAAsB,KAAtB;;AACA,UAAA,MAAI,CAACvB,QAAL,CAAcN,eAAd,CAA8BW,KAA9B;AACD,SANI;AAZF,OAAP;AAqBD;;;WA8CD,2BAAkB;AAChB,2BAAwB,KAAKV,OAA7B;AAAA,UAAQU,KAAR,kBAAQA,KAAR;AAAA,UAAeoB,IAAf,kBAAeA,IAAf;AACA,aAAO;AACLA,QAAAA,IAAI,EAAJA,IADK;AAELC,QAAAA,KAAK,EAAE,CAACrB,KAFH;AAGLsB,QAAAA,SAAS,EAAE,KAAKC;AAHX,OAAP;AAKD;;;WAED,0BAAiB;AACf,UAAMC,MAAM,GAAG,KAAK1D,aAAL,CAAf;AACA,aAAO;AACL2D,QAAAA,QAAQ,EAAE,CADL;AAELH,QAAAA,SAAS,EAAE,KAAKC,cAFX;AAGLG,QAAAA,QAAQ,eACN,uDACE,oBAAC,MAAD,CAAQ,MAAR,OADF,eAEE,oBAAC,MAAD,CAAQ,QAAR,OAFF;AAJG,OAAP;AAUD;;;WAED,0BAAiB;AACf,UAAMF,MAAM,GAAG,KAAK1D,aAAL,CAAf;AACA,aAAO;AACL4D,QAAAA,QAAQ,eACN,uDACE,oBAAC,MAAD,CAAQ,IAAR,OADF,eAEE,oBAAC,MAAD,CAAQ,KAAR,OAFF,eAGE,oBAAC,MAAD,CAAQ,IAAR,OAHF;AAFG,OAAP;AASD;;;WAED,yBAAgB;AACd,aAAO,EAAP;AACD;;;WAED,wBAAe;AACb,aAAO;AACLC,QAAAA,OAAO,EAAE,KAAKC,wBAAL,CAA8B,CAA9B;AADJ,OAAP;AAGD;;;WAED,wBAAe;AACb,aAAO;AACLD,QAAAA,OAAO,EAAE,KAAKC,wBAAL,CAA8B,CAAC,CAA/B;AADJ,OAAP;AAGD;;;WAED,4BAAmB;AACjB,2BAA4E,KAAKtC,OAAjF;AAAA,UAAQuC,MAAR,kBAAQA,MAAR;AAAA,UAAgBxC,eAAhB,kBAAgBA,eAAhB;AAAA,UAAiCc,QAAjC,kBAAiCA,QAAjC;AAAA,UAA2CH,KAA3C,kBAA2CA,KAA3C;AAAA,UAAkD8B,QAAlD,kBAAkDA,QAAlD;AAAA,UAA4D7B,WAA5D,kBAA4DA,WAA5D;AACA,aAAO;AACL4B,QAAAA,MAAM,EAANA,MADK;AAELxC,QAAAA,eAAe,EAAfA,eAFK;AAGLc,QAAAA,QAAQ,EAARA,QAHK;AAIL2B,QAAAA,QAAQ,EAARA,QAJK;AAKL7B,QAAAA,WAAW,EAAXA,WALK;AAMLD,QAAAA,KAAK,EAAE,CAACA,KAAD,EAAQA,KAAR,CANF;AAOL+B,QAAAA,cAAc,EAAE;AAPX,OAAP;AASD;;;WAED,kBAAS;AAAA;AAAA;;AACP,2BAA6B,KAAKzC,OAAlC;AAAA,UAAQ0C,MAAR,kBAAQA,MAAR;AAAA,UAAgBC,QAAhB,kBAAgBA,QAAhB;AACA,qBAAOlE,OAAO,CAACiE,MAAD,CAAd,eACE,oBAAchE,QAAd,uCACE,oBAAC,QAAD,2BADF,CADF;AAKD;;;WAtKD,6BAA6C;AAAA,UAAvBgC,KAAuB,SAAvBA,KAAuB;AAAA,UAAhBkC,YAAgB,SAAhBA,YAAgB;AAC3C,aAAO;AACLpD,QAAAA,IAAI,EAAJA,IADK;AAEL+C,QAAAA,MAAM,EAAE,IAFH;AAGL7C,QAAAA,sBAAsB,EAAEgB,KAAK,IAAIkC,YAAT,IAAyBlD,sBAH5C;AAILkD,QAAAA,YAAY,EAAE,IAJT;AAKLC,QAAAA,cAAc,EAAE,KALX;AAMLC,QAAAA,kBAAkB,EAAE,EANf;AAOLjC,QAAAA,QAAQ,EAAE,EAPL;AAQLiB,QAAAA,IAAI,EAAE;AARD,OAAP;AAUD;;;;EAd0BxD,S;;gBAAvBuB,c,iBACiB,Y;;gBADjBA,c,WAEWkD,K;;gBAFXlD,c,aAea,CAAClB,WAAW,EAAZ,C;;gBAfbkB,c,SAiBS,UAACK,IAAD,EAAO8C,MAAP,EAAeC,IAAf,EAAwB;AACnC,SAAO5E,KAAK,CAAC6B,IAAD,CAAL,CAAYwB,GAAZ,CAAgBsB,MAAhB,EAAwBC,IAAxB,EAA8B7C,MAA9B,EAAP;AACD,C;;gBAnBGP,c,cAqBc,UAACK,IAAD,EAAO8C,MAAP,EAAeC,IAAf,EAAwB;AACxC,SAAO5E,KAAK,CAAC6B,IAAD,CAAL,CAAYgD,QAAZ,CAAqBF,MAArB,EAA6BC,IAA7B,EAAmC7C,MAAnC,EAAP;AACD,C;;AAqJH,eAAeP,cAAf","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 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"}
@@ -126,7 +126,6 @@ var RangePickerAbstract = /*#__PURE__*/function (_Component) {
126
126
 
127
127
  var setNextDisplayedPeriod = function setNextDisplayedPeriod(next_highlighted) {
128
128
  var _next_highlighted = _slicedToArray(next_highlighted, 2),
129
- _ = _next_highlighted[0],
130
129
  right_period = _next_highlighted[1];
131
130
 
132
131
  if (right_period) {
@@ -266,8 +265,7 @@ var RangePickerAbstract = /*#__PURE__*/function (_Component) {
266
265
  _this$asProps3$period = _this$asProps3.periods,
267
266
  periods = _this$asProps3$period === void 0 ? this.getDefaultPeriods() : _this$asProps3$period,
268
267
  unclearable = _this$asProps3.unclearable,
269
- getI18nText = _this$asProps3.getI18nText,
270
- interaction = _this$asProps3.interaction;
268
+ getI18nText = _this$asProps3.getI18nText;
271
269
  var dirtyValue = this.state.dirtyValue;
272
270
  var buttons = /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Button, {
273
271
  use: "primary",
@@ -381,7 +379,7 @@ var RangePickerAbstract = /*#__PURE__*/function (_Component) {
381
379
  }, {
382
380
  key: "render",
383
381
  value: function render() {
384
- var _ref = this ? this.asProps : arguments[0],
382
+ var _ref = this.asProps,
385
383
  _ref2;
386
384
 
387
385
  var _this$asProps7 = this.asProps,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/RangePickerAbstract.js"],"names":["React","dayjs","Component","Root","CORE_INSTANCE","sstyled","Button","Box","Flex","Divider","Dropdown","i18nEnhance","de","en","es","fr","it","ja","pt","ru","zh","ko","vi","i18n","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","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","defaultValue","defaultHighlighted","defaultVisible","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"}
1
+ {"version":3,"sources":["../../../src/components/RangePickerAbstract.jsx"],"names":["React","dayjs","Component","Root","CORE_INSTANCE","sstyled","Button","Box","Flex","Divider","Dropdown","i18nEnhance","de","en","es","fr","it","ja","pt","ru","zh","ko","vi","i18n","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","periods","getDefaultPeriods","unclearable","getI18nText","buttons","handlerApply","tabIndex","children","Boolean","index","locale","Intl","DateTimeFormat","month","year","format","startOf","onClick","bindHandlerNavigateClick","disabled","onHighlightedChange","onChange","onDisplayedPeriodChange","Children","styles","defaultValue","defaultHighlighted","defaultVisible","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 { value, periods = this.getDefaultPeriods(), unclearable, getI18nText } = 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"}