@semcore/date-picker 3.4.5 → 3.4.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/CHANGELOG.md +8 -2
  2. package/lib/cjs/DatePicker.js +32 -9
  3. package/lib/cjs/DatePicker.js.map +1 -1
  4. package/lib/cjs/DateRangePicker.js +23 -0
  5. package/lib/cjs/DateRangePicker.js.map +1 -1
  6. package/lib/cjs/MonthPicker.js +33 -3
  7. package/lib/cjs/MonthPicker.js.map +1 -1
  8. package/lib/cjs/MonthRangePicker.js +33 -3
  9. package/lib/cjs/MonthRangePicker.js.map +1 -1
  10. package/lib/cjs/components/Calendar.js +20 -18
  11. package/lib/cjs/components/Calendar.js.map +1 -1
  12. package/lib/cjs/components/InputTrigger.js +820 -0
  13. package/lib/cjs/components/InputTrigger.js.map +1 -0
  14. package/lib/cjs/components/PickerAbstract.js +36 -15
  15. package/lib/cjs/components/PickerAbstract.js.map +1 -1
  16. package/lib/cjs/components/RangePickerAbstract.js +34 -13
  17. package/lib/cjs/components/RangePickerAbstract.js.map +1 -1
  18. package/lib/cjs/components/index.js +52 -32
  19. package/lib/cjs/components/index.js.map +1 -1
  20. package/lib/cjs/index.d.js.map +1 -1
  21. package/lib/cjs/style/date-picker.shadow.css +48 -0
  22. package/lib/es6/DatePicker.js +33 -10
  23. package/lib/es6/DatePicker.js.map +1 -1
  24. package/lib/es6/DateRangePicker.js +24 -1
  25. package/lib/es6/DateRangePicker.js.map +1 -1
  26. package/lib/es6/MonthPicker.js +33 -4
  27. package/lib/es6/MonthPicker.js.map +1 -1
  28. package/lib/es6/MonthRangePicker.js +33 -4
  29. package/lib/es6/MonthRangePicker.js.map +1 -1
  30. package/lib/es6/components/Calendar.js +20 -18
  31. package/lib/es6/components/Calendar.js.map +1 -1
  32. package/lib/es6/components/InputTrigger.js +803 -0
  33. package/lib/es6/components/InputTrigger.js.map +1 -0
  34. package/lib/es6/components/PickerAbstract.js +36 -15
  35. package/lib/es6/components/PickerAbstract.js.map +1 -1
  36. package/lib/es6/components/RangePickerAbstract.js +34 -13
  37. package/lib/es6/components/RangePickerAbstract.js.map +1 -1
  38. package/lib/es6/components/index.js +48 -30
  39. package/lib/es6/components/index.js.map +1 -1
  40. package/lib/es6/index.d.js.map +1 -1
  41. package/lib/es6/style/date-picker.shadow.css +48 -0
  42. package/lib/types/index.d.ts +64 -2
  43. package/package.json +10 -5
@@ -1 +1 @@
1
- {"version":3,"file":"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"],"sources":["../../src/MonthPicker.jsx"],"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"],"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;MACR,IAAI,CAAC,CADG;MAER,IAAI,CAAC,CAFG;MAGR,IAAI,CAHI;MAIR,IAAI;IAJI,C;;;;;;;WAOV,2BAAkB;MAChB,oBAA0B,KAAKC,OAA/B;MAAA,IAAQC,KAAR,iBAAQA,KAAR;MAAA,IAAeC,MAAf,iBAAeA,MAAf;MACA;QAEEC,WAAW,EAAE,cAFf;QAGEC,QAAQ,EAAEH,KAAK,GACX,IAAII,IAAI,CAACC,cAAT,CAAwBJ,MAAxB,EAAgC;UAC9BK,KAAK,EAAE,OADuB;UAE9BC,IAAI,EAAE;QAFwB,CAAhC,EAGGC,MAHH,CAGUrB,KAAK,CAACa,KAAD,CAAL,CAAaS,MAAb,EAHV,CADW,GAKX;MARN;IAUD;;;WAED,yBAAgB;MACd,qBAAoC,KAAKV,OAAzC;MAAA,IAAQW,eAAR,kBAAQA,eAAR;MAAA,IAAyBT,MAAzB,kBAAyBA,MAAzB;MACA;QAEEE,QAAQ,EAAE,IAAIC,IAAI,CAACC,cAAT,CAAwBJ,MAAxB,EAAgC;UAAEM,IAAI,EAAE;QAAR,CAAhC,EAAqDC,MAArD,CACRrB,KAAK,CAACuB,eAAD,CAAL,CAAuBC,OAAvB,CAA+B,MAA/B,EAAuCF,MAAvC,EADQ;MAFZ;IAMD;;;;EA5C2BZ,c;;gBAAxBC,e,iBACiB,a;;gBADjBA,e,kBAGkB,UAACc,KAAD;EAAA,uCACjBf,cAAc,CAACgB,YAAf,CAA4BD,KAA5B,CADiB;IAEpBT,QAAQ,eACN,uDACE,oBAAC,WAAD,CAAa,OAAb,OADF,eAEE,oBAAC,WAAD,CAAa,MAAb,OAFF;EAHkB;AAAA,C;;AA4CxB,IAAMW,WAAW,GAAG1B,eAAe,CACjCU,eADiC,EAEjC;EACEJ,OAAO,EAAPA,OADF;EAEEH,MAAM,EAANA,MAFF;EAGEF,MAAM,EAANA,MAHF;EAIEI,KAAK,EAALA,KAJF;EAKED,IAAI,EAAJA,IALF;EAMEF,IAAI,EAAJA,IANF;EAOEM,QAAQ,EAARA;AAPF,CAFiC,EAWjC;EACEmB,MAAM,EAAEnB;AADV,CAXiC,CAAnC;AAgBA,eAAekB,WAAf"}
1
+ {"version":3,"file":"MonthPicker.js","names":["React","dayjs","createComponent","Header","Next","Popper","Prev","Title","Trigger","InputTrigger","CalendarMonths","Calendar","PickerAbstract","dateParts","day","month","year","MonthPickerRoot","asProps","value","locale","placeholder","children","Intl","DateTimeFormat","format","toDate","onChange","onDisplayedPeriodChange","disabled","size","w","parts","disabledDates","displayedPeriod","startOf","props","defaultProps","MonthPicker","parent"],"sources":["../../src/MonthPicker.jsx"],"sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport createComponent from '@semcore/core';\nimport { Header, Next, Popper, Prev, Title, Trigger, InputTrigger } from './components';\nimport { CalendarMonths as Calendar } from './components/Calendar';\nimport PickerAbstract from './components/PickerAbstract';\n\nconst dateParts = { day: false, month: true, year: true };\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 getInputTriggerProps() {\n const { value, onChange, onDisplayedPeriodChange, locale, disabled, size } = this.asProps;\n\n return {\n ...super.getTriggerProps(),\n value,\n onChange,\n onDisplayedPeriodChange,\n locale,\n w: size === 'm' ? 120 : 135,\n parts: dateParts,\n disabledDates: disabled,\n children: () => <InputTrigger.SingleDateInput />,\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 InputTrigger,\n Popper,\n Header,\n Title,\n Prev,\n Next,\n Calendar,\n },\n {\n parent: Calendar,\n },\n);\n\nexport default MonthPicker;\n"],"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,EAAqDC,YAArD,QAAyE,cAAzE;AACA,SAASC,cAAc,IAAIC,QAA3B,QAA2C,uBAA3C;AACA,OAAOC,cAAP,MAA2B,6BAA3B;AAEA,IAAMC,SAAS,GAAG;EAAEC,GAAG,EAAE,KAAP;EAAcC,KAAK,EAAE,IAArB;EAA2BC,IAAI,EAAE;AAAjC,CAAlB;;IAEMC,e;;;;;;;;;;;;;;;;mEAaW,M;;8DACL,O;;8DACA;MACR,IAAI,CAAC,CADG;MAER,IAAI,CAAC,CAFG;MAGR,IAAI,CAHI;MAIR,IAAI;IAJI,C;;;;;;;WAOV,2BAAkB;MAChB,oBAA0B,KAAKC,OAA/B;MAAA,IAAQC,KAAR,iBAAQA,KAAR;MAAA,IAAeC,MAAf,iBAAeA,MAAf;MACA;QAEEC,WAAW,EAAE,cAFf;QAGEC,QAAQ,EAAEH,KAAK,GACX,IAAII,IAAI,CAACC,cAAT,CAAwBJ,MAAxB,EAAgC;UAC9BL,KAAK,EAAE,OADuB;UAE9BC,IAAI,EAAE;QAFwB,CAAhC,EAGGS,MAHH,CAGUxB,KAAK,CAACkB,KAAD,CAAL,CAAaO,MAAb,EAHV,CADW,GAKX;MARN;IAUD;;;WAED,gCAAuB;MACrB,qBAA6E,KAAKR,OAAlF;MAAA,IAAQC,KAAR,kBAAQA,KAAR;MAAA,IAAeQ,QAAf,kBAAeA,QAAf;MAAA,IAAyBC,uBAAzB,kBAAyBA,uBAAzB;MAAA,IAAkDR,MAAlD,kBAAkDA,MAAlD;MAAA,IAA0DS,QAA1D,kBAA0DA,QAA1D;MAAA,IAAoEC,IAApE,kBAAoEA,IAApE;MAEA;QAEEX,KAAK,EAALA,KAFF;QAGEQ,QAAQ,EAARA,QAHF;QAIEC,uBAAuB,EAAvBA,uBAJF;QAKER,MAAM,EAANA,MALF;QAMEW,CAAC,EAAED,IAAI,KAAK,GAAT,GAAe,GAAf,GAAqB,GAN1B;QAOEE,KAAK,EAAEnB,SAPT;QAQEoB,aAAa,EAAEJ,QARjB;QASEP,QAAQ,EAAE;UAAA,oBAAM,oBAAC,YAAD,CAAc,eAAd,OAAN;QAAA;MATZ;IAWD;;;WAED,yBAAgB;MACd,qBAAoC,KAAKJ,OAAzC;MAAA,IAAQgB,eAAR,kBAAQA,eAAR;MAAA,IAAyBd,MAAzB,kBAAyBA,MAAzB;MACA;QAEEE,QAAQ,EAAE,IAAIC,IAAI,CAACC,cAAT,CAAwBJ,MAAxB,EAAgC;UAAEJ,IAAI,EAAE;QAAR,CAAhC,EAAqDS,MAArD,CACRxB,KAAK,CAACiC,eAAD,CAAL,CAAuBC,OAAvB,CAA+B,MAA/B,EAAuCT,MAAvC,EADQ;MAFZ;IAMD;;;;EA5D2Bd,c;;gBAAxBK,e,iBACiB,a;;gBADjBA,e,kBAGkB,UAACmB,KAAD;EAAA,uCACjBxB,cAAc,CAACyB,YAAf,CAA4BD,KAA5B,CADiB;IAEpBd,QAAQ,eACN,uDACE,oBAAC,WAAD,CAAa,OAAb,OADF,eAEE,oBAAC,WAAD,CAAa,MAAb,OAFF;EAHkB;AAAA,C;;AA4DxB,IAAMgB,WAAW,GAAGpC,eAAe,CACjCe,eADiC,EAEjC;EACET,OAAO,EAAPA,OADF;EAEEC,YAAY,EAAZA,YAFF;EAGEJ,MAAM,EAANA,MAHF;EAIEF,MAAM,EAANA,MAJF;EAKEI,KAAK,EAALA,KALF;EAMED,IAAI,EAAJA,IANF;EAOEF,IAAI,EAAJA,IAPF;EAQEO,QAAQ,EAARA;AARF,CAFiC,EAYjC;EACE4B,MAAM,EAAE5B;AADV,CAZiC,CAAnC;AAiBA,eAAe2B,WAAf"}
@@ -19,9 +19,14 @@ import React from 'react';
19
19
  import dayjs from 'dayjs';
20
20
  import createComponent from '@semcore/core';
21
21
  import shortDateRangeFormat from './utils/shortDateRangeFormat';
22
- import { Header, Next, Period, Popper, Prev, Title, Trigger } from './components';
22
+ import { Header, Next, Period, Popper, Prev, Title, Trigger, InputTrigger } from './components';
23
23
  import { CalendarMonths as Calendar } from './components/Calendar';
24
24
  import RangePickerAbstract, { Apply, Reset } from './components/RangePickerAbstract';
25
+ var dateParts = {
26
+ day: false,
27
+ month: true,
28
+ year: true
29
+ };
25
30
 
26
31
  var MonthRangePickerRoot = /*#__PURE__*/function (_RangePickerAbstract) {
27
32
  _inherits(MonthRangePickerRoot, _RangePickerAbstract);
@@ -87,12 +92,35 @@ var MonthRangePickerRoot = /*#__PURE__*/function (_RangePickerAbstract) {
87
92
  })
88
93
  });
89
94
  }
95
+ }, {
96
+ key: "getInputTriggerProps",
97
+ value: function getInputTriggerProps() {
98
+ var _this$asProps2 = this.asProps,
99
+ value = _this$asProps2.value,
100
+ onChange = _this$asProps2.onChange,
101
+ onDisplayedPeriodChange = _this$asProps2.onDisplayedPeriodChange,
102
+ locale = _this$asProps2.locale,
103
+ disabled = _this$asProps2.disabled,
104
+ size = _this$asProps2.size;
105
+ return _objectSpread(_objectSpread({}, _get(_getPrototypeOf(MonthRangePickerRoot.prototype), "getTriggerProps", this).call(this)), {}, {
106
+ value: value,
107
+ onChange: onChange,
108
+ onDisplayedPeriodChange: onDisplayedPeriodChange,
109
+ locale: locale,
110
+ w: size === 'm' ? 215 : 235,
111
+ parts: dateParts,
112
+ disabledDates: disabled,
113
+ children: function children() {
114
+ return /*#__PURE__*/React.createElement(InputTrigger.DateRange, null);
115
+ }
116
+ });
117
+ }
90
118
  }, {
91
119
  key: "getTitleProps",
92
120
  value: function getTitleProps(props, index) {
93
- var _this$asProps2 = this.asProps,
94
- displayedPeriod = _this$asProps2.displayedPeriod,
95
- locale = _this$asProps2.locale;
121
+ var _this$asProps3 = this.asProps,
122
+ displayedPeriod = _this$asProps3.displayedPeriod,
123
+ locale = _this$asProps3.locale;
96
124
  return _objectSpread(_objectSpread({}, _get(_getPrototypeOf(MonthRangePickerRoot.prototype), "getTitleProps", this).call(this, props, index)), {}, {
97
125
  children: new Intl.DateTimeFormat(locale, {
98
126
  year: 'numeric'
@@ -114,6 +142,7 @@ _defineProperty(MonthRangePickerRoot, "defaultProps", function (props) {
114
142
 
115
143
  var MonthRangePicker = createComponent(MonthRangePickerRoot, {
116
144
  Trigger: Trigger,
145
+ InputTrigger: InputTrigger,
117
146
  Popper: Popper,
118
147
  Header: Header,
119
148
  Title: Title,
@@ -1 +1 @@
1
- {"version":3,"file":"MonthRangePicker.js","names":["React","dayjs","createComponent","shortDateRangeFormat","Header","Next","Period","Popper","Prev","Title","Trigger","CalendarMonths","Calendar","RangePickerAbstract","Apply","Reset","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"],"sources":["../../src/MonthRangePicker.jsx"],"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, { Apply, Reset } 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 Apply,\n Reset,\n },\n {\n parent: Calendar,\n },\n);\n\nexport default MonthRangePicker;\n"],"mappings":"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"}
1
+ {"version":3,"file":"MonthRangePicker.js","names":["React","dayjs","createComponent","shortDateRangeFormat","Header","Next","Period","Popper","Prev","Title","Trigger","InputTrigger","CalendarMonths","Calendar","RangePickerAbstract","Apply","Reset","dateParts","day","month","year","MonthRangePickerRoot","getI18nText","asProps","today","Date","setHours","children","value","subtract","startOf","toDate","locale","placeholder","onChange","onDisplayedPeriodChange","disabled","size","w","parts","disabledDates","props","index","displayedPeriod","Intl","DateTimeFormat","format","add","navigateStep","defaultProps","MonthRangePicker","parent"],"sources":["../../src/MonthRangePicker.jsx"],"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, InputTrigger } from './components';\nimport { CalendarMonths as Calendar } from './components/Calendar';\nimport RangePickerAbstract, { Apply, Reset } from './components/RangePickerAbstract';\n\nconst dateParts = { day: false, month: true, year: true };\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 getInputTriggerProps() {\n const { value, onChange, onDisplayedPeriodChange, locale, disabled, size } = this.asProps;\n\n return {\n ...super.getTriggerProps(),\n value,\n onChange,\n onDisplayedPeriodChange,\n locale,\n w: size === 'm' ? 215 : 235,\n parts: dateParts,\n disabledDates: disabled,\n children: () => <InputTrigger.DateRange />,\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 InputTrigger,\n Popper,\n Header,\n Title,\n Prev,\n Next,\n Calendar,\n Period,\n Apply,\n Reset,\n },\n {\n parent: Calendar,\n },\n);\n\nexport default MonthRangePicker;\n"],"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,EAA6DC,YAA7D,QAAiF,cAAjF;AACA,SAASC,cAAc,IAAIC,QAA3B,QAA2C,uBAA3C;AACA,OAAOC,mBAAP,IAA8BC,KAA9B,EAAqCC,KAArC,QAAkD,kCAAlD;AAEA,IAAMC,SAAS,GAAG;EAAEC,GAAG,EAAE,KAAP;EAAcC,KAAK,EAAE,IAArB;EAA2BC,IAAI,EAAE;AAAjC,CAAlB;;IAEMC,oB;;;;;;;;;;;;;;;;mEAcW,M;;8DACL,O;;8DACA;MACR,IAAI,CAAC,CADG;MAER,IAAI,CAAC,CAFG;MAGR,IAAI,CAHI;MAIR,IAAI;IAJI,C;;;;;;;WAOV,6BAAoB;MAClB,IAAQC,WAAR,GAAwB,KAAKC,OAA7B,CAAQD,WAAR;MACA,IAAME,KAAK,GAAG,IAAIC,IAAJ,CAAS,IAAIA,IAAJ,GAAWC,QAAX,CAAoB,CAApB,EAAuB,CAAvB,EAA0B,CAA1B,EAA6B,CAA7B,CAAT,CAAd;MACA,OAAO,CACL;QACEC,QAAQ,EAAEL,WAAW,CAAC,WAAD,CADvB;QAEEM,KAAK,EAAE,CACL3B,KAAK,CAACuB,KAAD,CAAL,CAAaK,QAAb,CAAsB,CAAtB,EAAyB,OAAzB,EAAkCC,OAAlC,CAA0C,OAA1C,EAAmDC,MAAnD,EADK,EAEL9B,KAAK,CAACuB,KAAD,CAAL,CAAaM,OAAb,CAAqB,OAArB,EAA8BC,MAA9B,EAFK;MAFT,CADK,EAQL;QACEJ,QAAQ,EAAEL,WAAW,CAAC,aAAD,CADvB;QAEEM,KAAK,EAAE,CACL3B,KAAK,CAACuB,KAAD,CAAL,CAAaK,QAAb,CAAsB,CAAtB,EAAyB,OAAzB,EAAkCC,OAAlC,CAA0C,OAA1C,EAAmDC,MAAnD,EADK,EAEL9B,KAAK,CAACuB,KAAD,CAAL,CAAaM,OAAb,CAAqB,OAArB,EAA8BC,MAA9B,EAFK;MAFT,CARK,EAeL;QACEJ,QAAQ,EAAEL,WAAW,CAAC,aAAD,CADvB;QAEEM,KAAK,EAAE,CACL3B,KAAK,CAACuB,KAAD,CAAL,CAAaK,QAAb,CAAsB,CAAtB,EAAyB,OAAzB,EAAkCC,OAAlC,CAA0C,OAA1C,EAAmDC,MAAnD,EADK,EAEL9B,KAAK,CAACuB,KAAD,CAAL,CAAaM,OAAb,CAAqB,OAArB,EAA8BC,MAA9B,EAFK;MAFT,CAfK,EAsBL;QACEJ,QAAQ,EAAEL,WAAW,CAAC,cAAD,CADvB;QAEEM,KAAK,EAAE,CACL3B,KAAK,CAACuB,KAAD,CAAL,CAAaK,QAAb,CAAsB,EAAtB,EAA0B,OAA1B,EAAmCC,OAAnC,CAA2C,OAA3C,EAAoDC,MAApD,EADK,EAEL9B,KAAK,CAACuB,KAAD,CAAL,CAAaM,OAAb,CAAqB,OAArB,EAA8BC,MAA9B,EAFK;MAFT,CAtBK,CAAP;IA8BD;;;WAED,2BAAkB;MAChB,oBAA0B,KAAKR,OAA/B;MAAA,IAAQK,KAAR,iBAAQA,KAAR;MAAA,IAAeI,MAAf,iBAAeA,MAAf;MACA;QAEEC,WAAW,EAAE,qBAFf;QAGEN,QAAQ,EAAExB,oBAAoB,CAACyB,KAAD,EAAQ;UACpCI,MAAM,EAANA,MADoC;UAEpCb,KAAK,EAAE,OAF6B;UAGpCC,IAAI,EAAE;QAH8B,CAAR;MAHhC;IASD;;;WAED,gCAAuB;MACrB,qBAA6E,KAAKG,OAAlF;MAAA,IAAQK,KAAR,kBAAQA,KAAR;MAAA,IAAeM,QAAf,kBAAeA,QAAf;MAAA,IAAyBC,uBAAzB,kBAAyBA,uBAAzB;MAAA,IAAkDH,MAAlD,kBAAkDA,MAAlD;MAAA,IAA0DI,QAA1D,kBAA0DA,QAA1D;MAAA,IAAoEC,IAApE,kBAAoEA,IAApE;MAEA;QAEET,KAAK,EAALA,KAFF;QAGEM,QAAQ,EAARA,QAHF;QAIEC,uBAAuB,EAAvBA,uBAJF;QAKEH,MAAM,EAANA,MALF;QAMEM,CAAC,EAAED,IAAI,KAAK,GAAT,GAAe,GAAf,GAAqB,GAN1B;QAOEE,KAAK,EAAEtB,SAPT;QAQEuB,aAAa,EAAEJ,QARjB;QASET,QAAQ,EAAE;UAAA,oBAAM,oBAAC,YAAD,CAAc,SAAd,OAAN;QAAA;MATZ;IAWD;;;WAED,uBAAcc,KAAd,EAAqBC,KAArB,EAA4B;MAC1B,qBAAoC,KAAKnB,OAAzC;MAAA,IAAQoB,eAAR,kBAAQA,eAAR;MAAA,IAAyBX,MAAzB,kBAAyBA,MAAzB;MACA,+HACyBS,KADzB,EACgCC,KADhC;QAEEf,QAAQ,EAAE,IAAIiB,IAAI,CAACC,cAAT,CAAwBb,MAAxB,EAAgC;UAAEZ,IAAI,EAAE;QAAR,CAAhC,EAAqD0B,MAArD,CACR7C,KAAK,CAAC0C,eAAD,CAAL,CAAuBI,GAAvB,CAA2BL,KAA3B,EAAkC,KAAKM,YAAvC,EAAqDlB,OAArD,CAA6D,KAAKkB,YAAlE,EAAgFjB,MAAhF,EADQ;MAFZ;IAMD;;;;EA/FgCjB,mB;;gBAA7BO,oB,iBACiB,kB;;gBADjBA,oB,kBAEkB,UAACoB,KAAD,EAAW;EAC/B,uCACK3B,mBAAmB,CAACmC,YAApB,CAAiCR,KAAjC,CADL;IAEEd,QAAQ,eACN,uDACE,oBAAC,gBAAD,CAAkB,OAAlB,OADF,eAEE,oBAAC,gBAAD,CAAkB,MAAlB,OAFF;EAHJ;AASD,C;;AAsFH,IAAMuB,gBAAgB,GAAGhD,eAAe,CACtCmB,oBADsC,EAEtC;EACEX,OAAO,EAAPA,OADF;EAEEC,YAAY,EAAZA,YAFF;EAGEJ,MAAM,EAANA,MAHF;EAIEH,MAAM,EAANA,MAJF;EAKEK,KAAK,EAALA,KALF;EAMED,IAAI,EAAJA,IANF;EAOEH,IAAI,EAAJA,IAPF;EAQEQ,QAAQ,EAARA,QARF;EASEP,MAAM,EAANA,MATF;EAUES,KAAK,EAALA,KAVF;EAWEC,KAAK,EAALA;AAXF,CAFsC,EAetC;EACEmC,MAAM,EAAEtC;AADV,CAfsC,CAAxC;AAoBA,eAAeqC,gBAAf"}
@@ -38,26 +38,26 @@ var style = (
38
38
  /*__reshadow_css_start__*/
39
39
  _sstyled.insert(
40
40
  /*__inner_css_start__*/
41
- ":root {\n\n /* DEPRECATED START\n Deprecated variables should never be used in\n components styles but preserved for backward\n compatibility if they used in projects\n like `<Badge bg=\"red\">alpha</Badge>`\n */\n /* DEPRECATED END */\n}\n\n.___SCalendar_xomep_gg_ {\n display: flex;\n flex-direction: column;\n}\n\n.___SGridDays_xomep_gg_ {\n display: grid;\n grid-template-columns: repeat(7, minmax(32px, auto));\n grid-template-rows: repeat(auto-fit, minmax(32px, auto));\n}\n\n.___SGridMonths_xomep_gg_ {\n display: grid;\n grid-row-gap: 8px;\n grid-template-columns: repeat(3, minmax(60px, auto));\n grid-template-rows: repeat(4, minmax(32px, auto));\n}\n\n.___SWeekDays_xomep_gg_ {\n display: grid;\n grid-template-columns: repeat(7, minmax(32px, auto));\n}\n\n.___SWeekDay_xomep_gg_ {\n min-width: 32px;\n min-height: 32px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: #6c6e79;\n font-size: 14px;\n font-weight: 400;\n overflow: hidden;\n}\n\n.___SCalendarUnit_xomep_gg_ {\n font-family: inherit;\n font-weight: normal;\n line-height: normal;\n text-decoration: none;\n text-align: center;\n vertical-align: middle;\n border: 1px solid transparent;\n color: #191b23;\n outline: 0;\n box-shadow: none;\n overflow: visible;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n touch-action: manipulation;\n -webkit-tap-highlight-color: transparent;\n background: transparent;\n\n align-items: center;\n border-radius: 6px;\n box-sizing: border-box;\n cursor: pointer;\n display: flex;\n font-size: 14px;\n justify-content: center;\n min-height: 32px;\n min-width: 32px;\n position: relative;\n transition: color 0.15s, background 0.15s;\n outline: none;\n margin: 0\n}\n\n.___SCalendarUnit_xomep_gg_:hover {\n color: #191b23;\n background: #e0e1e9;\n }\n\n.___SCalendarUnit_xomep_gg_.focus-visible {\n box-shadow: 0 0 0 3px rgba(0, 143, 248, 0.2);\n }\n\n.___SCalendarUnit_xomep_gg_:focus-visible {\n box-shadow: 0 0 0 3px rgba(0, 143, 248, 0.2);\n }\n\n.___SCalendarUnit_xomep_gg_.__today_xomep_gg_:before {\n content: '';\n position: absolute;\n display: block;\n top: 1px;\n left: 1px;\n border-radius: 6px;\n width: calc(100% - 2px);\n height: calc(100% - 2px);\n box-sizing: border-box;\n border: 1px solid #c4c7cf;\n }\n\n.___SCalendarUnit_xomep_gg_.__today_xomep_gg_.___SCalendarUnit_xomep_gg_.__startSelected_xomep_gg_:before, .___SCalendarUnit_xomep_gg_.__today_xomep_gg_.___SCalendarUnit_xomep_gg_.__endSelected_xomep_gg_:before {\n border-color: rgba(255, 255, 255, 0.5);\n }\n\n.___SCalendarUnit_xomep_gg_.__selected_xomep_gg_ {\n background: #c4e5fe;\n border-radius: 0;\n color: #191b23\n}\n\n.___SCalendarUnit_xomep_gg_.__selected_xomep_gg_:hover {\n background: #008ff8;\n }\n\n.___SCalendarUnit_xomep_gg_.__highlighted_xomep_gg_ {\n background: rgba(0, 143, 248, 0.2);\n border-radius: 0;\n color: #191b23\n}\n\n.___SCalendarUnit_xomep_gg_.__highlighted_xomep_gg_:hover {\n background: rgba(0, 143, 248, 0.3);\n }\n\n.___SCalendarUnit_xomep_gg_.__startSelected_xomep_gg_ {\n border-bottom-left-radius: 6px;\n border-bottom-right-radius: 0;\n border-top-left-radius: 6px;\n border-top-right-radius: 0;\n color: white;\n background: #2bb3ff\n}\n\n.___SCalendarUnit_xomep_gg_.__startSelected_xomep_gg_:hover {\n color: white;\n background: #008ff8;\n }\n\n.___SCalendarUnit_xomep_gg_.__endSelected_xomep_gg_ {\n background: #2bb3ff;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 6px;\n border-top-left-radius: 0;\n border-top-right-radius: 6px;\n color: white\n}\n\n.___SCalendarUnit_xomep_gg_.__endSelected_xomep_gg_:hover {\n color: white;\n background: #008ff8;\n }\n\n.___SCalendarUnit_xomep_gg_.__startHighlighted_xomep_gg_ {\n border-bottom-left-radius: 6px;\n border-bottom-right-radius: 0;\n border-top-left-radius: 6px;\n border-top-right-radius: 0;\n}\n\n.___SCalendarUnit_xomep_gg_.__endHighlighted_xomep_gg_ {\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 6px;\n border-top-left-radius: 0;\n border-top-right-radius: 6px;\n}\n\n.___SCalendarUnit_xomep_gg_.__startHighlighted_xomep_gg_.___SCalendarUnit_xomep_gg_.__endHighlighted_xomep_gg_ {\n border-bottom-left-radius: 6px;\n border-bottom-right-radius: 6px;\n border-top-left-radius: 6px;\n border-top-right-radius: 6px;\n}\n\n.___SCalendarUnit_xomep_gg_.__startSelected_xomep_gg_.___SCalendarUnit_xomep_gg_.__endSelected_xomep_gg_ {\n border-bottom-left-radius: 6px;\n border-bottom-right-radius: 6px;\n border-top-left-radius: 6px;\n border-top-right-radius: 6px;\n}\n\n.___SCalendarUnit_xomep_gg_.__outdated_xomep_gg_ {\n opacity: 0.2;\n}\n\n.___SCalendarUnit_xomep_gg_.__disabled_xomep_gg_ {\n opacity: 0.4;\n cursor: default;\n pointer-events: none;\n}\n\n@media (prefers-reduced-motion) {\n .___SCalendarUnit_xomep_gg_ {\n transition: none;\n }\n}\n"
41
+ ".___SCalendar_10yx9_gg_{display:flex;flex-direction:column}.___SGridDays_10yx9_gg_{display:grid;grid-template-columns:repeat(7,minmax(32px,auto));grid-template-rows:repeat(auto-fit,minmax(32px,auto))}.___SGridMonths_10yx9_gg_{display:grid;grid-row-gap:8px;grid-template-columns:repeat(3,minmax(60px,auto));grid-template-rows:repeat(4,minmax(32px,auto))}.___SWeekDays_10yx9_gg_{display:grid;grid-template-columns:repeat(7,minmax(32px,auto))}.___SWeekDay_10yx9_gg_{min-width:32px;min-height:32px;display:flex;align-items:center;justify-content:center;color:#6c6e79;font-size:14px;font-weight:400;overflow:hidden}.___SCalendarUnit_10yx9_gg_{font-family:inherit;font-weight:400;line-height:normal;text-decoration:none;text-align:center;vertical-align:middle;border:1px solid transparent;color:#191b23;outline:0;box-shadow:none;overflow:visible;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:transparent;align-items:center;border-radius:6px;box-sizing:border-box;cursor:pointer;display:flex;font-size:14px;justify-content:center;min-height:32px;min-width:32px;position:relative;transition:color .15s,background .15s;outline:none;margin:0}.___SCalendarUnit_10yx9_gg_:hover{color:#191b23;background:#e0e1e9}.___SCalendarUnit_10yx9_gg_.focus-visible{box-shadow:0 0 0 3px rgba(0, 143, 248, 0.2)}.___SCalendarUnit_10yx9_gg_:focus-visible{box-shadow:0 0 0 3px rgba(0, 143, 248, 0.2)}.___SCalendarUnit_10yx9_gg_.__today_10yx9_gg_:before{content:\"\";position:absolute;display:block;top:1px;left:1px;border-radius:6px;width:calc(100% - 2px);height:calc(100% - 2px);box-sizing:border-box;border:1px solid #c4c7cf}.___SCalendarUnit_10yx9_gg_.__today_10yx9_gg_.___SCalendarUnit_10yx9_gg_.__endSelected_10yx9_gg_:before,.___SCalendarUnit_10yx9_gg_.__today_10yx9_gg_.___SCalendarUnit_10yx9_gg_.__startSelected_10yx9_gg_:before{border-color:hsla(0,0%,100%,.5)}.___SCalendarUnit_10yx9_gg_.__selected_10yx9_gg_{background:#c4e5fe;border-radius:0;color:#191b23}.___SCalendarUnit_10yx9_gg_.__selected_10yx9_gg_:hover{background:#008ff8}.___SCalendarUnit_10yx9_gg_.__highlighted_10yx9_gg_{background:rgba(0,143,248,.2);border-radius:0;color:#191b23}.___SCalendarUnit_10yx9_gg_.__highlighted_10yx9_gg_:hover{background:rgba(0,143,248,.3)}.___SCalendarUnit_10yx9_gg_.__startSelected_10yx9_gg_{border-bottom-left-radius:6px;border-bottom-right-radius:0;border-top-left-radius:6px;border-top-right-radius:0;color:#fff;background:#2bb3ff}.___SCalendarUnit_10yx9_gg_.__startSelected_10yx9_gg_:hover{color:#fff;background:#008ff8}.___SCalendarUnit_10yx9_gg_.__endSelected_10yx9_gg_{background:#2bb3ff;border-bottom-left-radius:0;border-bottom-right-radius:6px;border-top-left-radius:0;border-top-right-radius:6px;color:#fff}.___SCalendarUnit_10yx9_gg_.__endSelected_10yx9_gg_:hover{color:#fff;background:#008ff8}.___SCalendarUnit_10yx9_gg_.__startHighlighted_10yx9_gg_{border-bottom-left-radius:6px;border-bottom-right-radius:0;border-top-left-radius:6px;border-top-right-radius:0}.___SCalendarUnit_10yx9_gg_.__endHighlighted_10yx9_gg_{border-bottom-left-radius:0;border-bottom-right-radius:6px;border-top-left-radius:0;border-top-right-radius:6px}.___SCalendarUnit_10yx9_gg_.__startHighlighted_10yx9_gg_.___SCalendarUnit_10yx9_gg_.__endHighlighted_10yx9_gg_{border-bottom-left-radius:6px;border-bottom-right-radius:6px;border-top-left-radius:6px;border-top-right-radius:6px}.___SCalendarUnit_10yx9_gg_.__startSelected_10yx9_gg_.___SCalendarUnit_10yx9_gg_.__endSelected_10yx9_gg_{border-bottom-left-radius:6px;border-bottom-right-radius:6px;border-top-left-radius:6px;border-top-right-radius:6px}.___SCalendarUnit_10yx9_gg_.__outdated_10yx9_gg_{opacity:.2}.___SCalendarUnit_10yx9_gg_.__disabled_10yx9_gg_{opacity:.4;cursor:default;pointer-events:none}@media (prefers-reduced-motion){.___SCalendarUnit_10yx9_gg_{transition:none}}"
42
42
  /*__inner_css_end__*/
43
- , "xomep_gg_")
43
+ , "10yx9_gg_")
44
44
  /*__reshadow_css_end__*/
45
45
  , {
46
- "__SCalendar": "___SCalendar_xomep_gg_",
47
- "__SGridDays": "___SGridDays_xomep_gg_",
48
- "__SGridMonths": "___SGridMonths_xomep_gg_",
49
- "__SWeekDays": "___SWeekDays_xomep_gg_",
50
- "__SWeekDay": "___SWeekDay_xomep_gg_",
51
- "__SCalendarUnit": "___SCalendarUnit_xomep_gg_",
52
- "_today": "__today_xomep_gg_",
53
- "_startSelected": "__startSelected_xomep_gg_",
54
- "_endSelected": "__endSelected_xomep_gg_",
55
- "_selected": "__selected_xomep_gg_",
56
- "_highlighted": "__highlighted_xomep_gg_",
57
- "_startHighlighted": "__startHighlighted_xomep_gg_",
58
- "_endHighlighted": "__endHighlighted_xomep_gg_",
59
- "_outdated": "__outdated_xomep_gg_",
60
- "_disabled": "__disabled_xomep_gg_"
46
+ "__SCalendar": "___SCalendar_10yx9_gg_",
47
+ "__SGridDays": "___SGridDays_10yx9_gg_",
48
+ "__SGridMonths": "___SGridMonths_10yx9_gg_",
49
+ "__SWeekDays": "___SWeekDays_10yx9_gg_",
50
+ "__SWeekDay": "___SWeekDay_10yx9_gg_",
51
+ "__SCalendarUnit": "___SCalendarUnit_10yx9_gg_",
52
+ "_today": "__today_10yx9_gg_",
53
+ "_endSelected": "__endSelected_10yx9_gg_",
54
+ "_startSelected": "__startSelected_10yx9_gg_",
55
+ "_selected": "__selected_10yx9_gg_",
56
+ "_highlighted": "__highlighted_10yx9_gg_",
57
+ "_startHighlighted": "__startHighlighted_10yx9_gg_",
58
+ "_endHighlighted": "__endHighlighted_10yx9_gg_",
59
+ "_outdated": "__outdated_10yx9_gg_",
60
+ "_disabled": "__disabled_10yx9_gg_"
61
61
  });
62
62
  dayjs.extend(isBetween);
63
63
 
@@ -375,7 +375,9 @@ var CalendarDaysRoot = /*#__PURE__*/function (_CalendarAbstract) {
375
375
  Children = _this$asProps4.Children,
376
376
  styles = _this$asProps4.styles,
377
377
  locale = _this$asProps4.locale;
378
- return _ref9 = sstyled(styles), /*#__PURE__*/React.createElement(SCalendar, _ref9.cn("SCalendar", _objectSpread({}, _assignProps4({}, _ref4))), /*#__PURE__*/React.createElement(CalendarWeekDays, _ref9.cn("CalendarWeekDays", {
378
+ return _ref9 = sstyled(styles), /*#__PURE__*/React.createElement(SCalendar, _ref9.cn("SCalendar", _objectSpread({}, _assignProps4({
379
+ "aria-hidden": "true"
380
+ }, _ref4))), /*#__PURE__*/React.createElement(CalendarWeekDays, _ref9.cn("CalendarWeekDays", {
379
381
  "locale": locale
380
382
  })), /*#__PURE__*/React.createElement(SGridDays, _ref9.cn("SGridDays", {
381
383
  "onMouseLeave": this.handleMouseLeave
@@ -1 +1 @@
1
- {"version":3,"file":"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"],"sources":["../../../src/components/Calendar.jsx"],"sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport isBetween from 'dayjs/plugin/isBetween';\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport fire from '@semcore/utils/lib/fire';\nimport includesDate from '../utils/includesDate';\nimport { 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"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,wBAAtB;AACA,OAAOC,eAAP,IAA0BC,SAA1B,EAAqCC,IAArC,EAA2CC,OAA3C,QAA0D,eAA1D;AACA,SAASC,GAAT,QAAoB,mBAApB;AACA,OAAOC,IAAP,MAAiB,yBAAjB;AACA,OAAOC,YAAP,MAAyB,uBAAzB;AACA,SAASC,aAAT,QAA8B,qBAA9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIAT,KAAK,CAACU,MAAN,CAAaT,SAAb;;AAEA,IAAMU,KAAK,GAAG,SAARA,KAAQ,CAACC,CAAD,EAAIC,EAAJ;EAAA,OAAWC,KAAK,CAACC,IAAN,CAAW;IAAEC,MAAM,EAAEJ;EAAV,CAAX,EAA0B,UAACK,CAAD,EAAIC,CAAJ;IAAA,OAAUL,EAAE,CAACK,CAAD,CAAZ;EAAA,CAA1B,CAAX;AAAA,CAAd;;AAEA,SAASC,oBAAT,CAA8BC,MAA9B,EAAsC;EACpC,IAAIA,MAAM,CAACC,QAAP,CAAgB,IAAhB,KAAyBD,MAAM,CAACC,QAAP,CAAgB,IAAhB,CAA7B,EAAoD;IAClD;MACEC,SAAS,EAAE;IADb,GAEKtB,KAAK,CAACuB,EAAN,CAASH,MAAT,CAFL;EAID;;EACD;IACEE,SAAS,EAAE;EADb,GAEKtB,KAAK,CAACuB,EAAN,CAASH,MAAT,CAFL;AAID;;IAEKI,oB;;;;;;;;;;;;;WAQJ,yBAAgB;MACd,IAAQJ,MAAR,GAAmB,KAAKK,OAAxB,CAAQL,MAAR;MAEA,IAAIM,IAAI,GAAG1B,KAAK,GAAGoB,MAAR,CAAeA,MAAf,EAAuBD,oBAAoB,CAACC,MAAD,CAA3C,EAAqDO,OAArD,CAA6D,MAA7D,CAAX;MACA,OAAOhB,KAAK,CAAC,CAAD,EAAI,YAAM;QACpB,IAAMiB,OAAO,GAAG,IAAIC,IAAI,CAACC,cAAT,CAAwBV,MAAxB,EAAgC;UAAEQ,OAAO,EAAE;QAAX,CAAhC,EAAsDG,MAAtD,CAA6DL,IAAI,CAACM,OAAL,EAA7D,CAAhB;QACAN,IAAI,GAAGA,IAAI,CAACO,GAAL,CAAS,CAAT,EAAY,KAAZ,CAAP;QACA,OAAO;UACLC,QAAQ,EAAEN;QADL,CAAP;MAGD,CANW,CAAZ;IAOD;;;WAED,sBAAa;MACX,OAAO;QACLO,IAAI,EAAE,KAAKC,aAAL;MADD,CAAP;IAGD;;;WAED,kBAAS;MAAA;MAAA;;MACP,IAAMC,SAAS,GAGM/B,GAHrB;MACA,oBAA6B,KAAKmB,OAAlC;MAAA,IAAQa,QAAR,iBAAQA,QAAR;MAAA,IAAkBC,MAAlB,iBAAkBA,MAAlB;MACA,eAAOlC,OAAO,CAACkC,MAAD,CAAd,eACE,oBAAC,SAAD,iFACE,oBAAC,QAAD,2BADF,CADF;IAKD;;;;EAnCgCpC,S;;gBAA7BqB,oB,iBACiB,kB;;gBADjBA,oB,WAEWgB,K;;gBAFXhB,oB,kBAGkB;EACpBJ,MAAM,EAAE,IADY;EAEpBc,QAAQ,EAAE;IAAA,IAAGC,IAAH,UAAGA,IAAH;IAAA,OAAcA,IAAI,CAACM,GAAL,CAAS,UAACC,IAAD,EAAOC,CAAP;MAAA,oBAAa,oBAAC,gBAAD,CAAkB,IAAlB;QAAuB,GAAG,EAAEA;MAA5B,GAAmCD,IAAnC,EAAb;IAAA,CAAT,CAAd;EAAA;AAFU,C;;AAmCxB,SAASE,gBAAT,CAA0BC,KAA1B,EAAiC;EAAA;EAAA;;EAC/B,IAAMC,QAAQ,GACiCxC,GAD/C;EACA,eAAOD,OAAO,CAACwC,KAAK,CAACN,MAAP,CAAd,eAA6B,oBAAC,QAAD,oEAA7B;AACD;;IAEKQ,gB;;;;;;;;;;;;;;;;4DAGI,IAAIC,IAAJ,CAAS,IAAIA,IAAJ,GAAWC,QAAX,CAAoB,CAApB,EAAuB,CAAvB,EAA0B,CAA1B,EAA6B,CAA7B,CAAT,C;;uEA+DW,YAAM;MACvB,IAAQC,WAAR,GAAwB,MAAKzB,OAA7B,CAAQyB,WAAR;MAEA3C,IAAI,gCAAO,qBAAP,EAA8B2C,WAAW,CAAClC,MAAZ,GAAqB,CAACkC,WAAW,CAAC,CAAD,CAAZ,CAArB,GAAwC,EAAtE,CAAJ;IACD,C;;;;;;;WAjED,4BAA+BC,IAA/B,EAAqC;MAAA;;MAAA,IAAxBzB,IAAwB,UAAxBA,IAAwB;MAAA,IAAf0B,KAAe;;MACnC,IAAMC,IAAI,GAAG,IAAb;MACA,qBAA0E,KAAK5B,OAA/E;MAAA,IAAkB6B,SAAlB,kBAAQC,QAAR;MAAA,IAA6BC,KAA7B,kBAA6BA,KAA7B;MAAA,IAAoCpC,MAApC,kBAAoCA,MAApC;MAAA,IAAyDqC,YAAzD,kBAA4CP,WAA5C;MACA,IAAIQ,MAAM,GAAGF,KAAK,CAAC,CAAD,CAAL,GAAWxD,KAAK,CAACwD,KAAK,CAAC,CAAD,CAAN,CAAhB,GAA6B,IAA1C;MACA,IAAIG,MAAM,GAAGH,KAAK,CAAC,CAAD,CAAL,GAAWxD,KAAK,CAACwD,KAAK,CAAC,CAAD,CAAN,CAAhB,GAA6B,IAA1C;MACA,IAAII,QAAJ;;MACA,IAAIF,MAAM,IAAIC,MAAd,EAAsB;QACpB,IAAID,MAAM,GAAGC,MAAb;UAAA,aAAwC,CAACD,MAAD,EAASC,MAAT,CAAxC;UAAsBA,MAAtB;UAA8BD,MAA9B;QAAA;;QACAE,QAAQ,GAAGlC,IAAI,CAACzB,SAAL,CAAeyD,MAAf,EAAuBC,MAAvB,EAA+BR,IAA/B,EAAqC,IAArC,CAAX;MACD;;MACD,IAAMU,aAAa,GAAGH,MAAM,IAAIhC,IAAI,CAACoC,MAAL,CAAYJ,MAAZ,EAAoBP,IAApB,CAAhC;MACA,IAAMY,WAAW,GAAGJ,MAAM,IAAIjC,IAAI,CAACoC,MAAL,CAAYH,MAAZ,EAAoBR,IAApB,CAA9B;MAEA,IAAIa,YAAY,GAAGP,YAAY,CAAC,CAAD,CAAZ,GAAkBzD,KAAK,CAACyD,YAAY,CAAC,CAAD,CAAb,CAAvB,GAA2C,IAA9D;MACA,IAAIQ,YAAY,GAAGR,YAAY,CAAC,CAAD,CAAZ,GAAkBzD,KAAK,CAACyD,YAAY,CAAC,CAAD,CAAb,CAAvB,GAA2CO,YAA9D;MACA,IAAIE,gBAAJ,EAAsBC,cAAtB,EAAsCjB,WAAtC;;MACA,IAAIc,YAAY,IAAIC,YAApB,EAAkC;QAChC,IAAID,YAAY,GAAGC,YAAnB;UAAA,aAAgE,CAACD,YAAD,EAAeC,YAAf,CAAhE;UAAkCA,YAAlC;UAAgDD,YAAhD;QAAA;;QACAd,WAAW,GAAGxB,IAAI,CAACzB,SAAL,CAAe+D,YAAf,EAA6BC,YAA7B,EAA2Cd,IAA3C,EAAiD,IAAjD,CAAd;QACAe,gBAAgB,GAAGF,YAAY,IAAItC,IAAI,CAACoC,MAAL,CAAYE,YAAZ,EAA0B,MAA1B,CAAnC;QACAG,cAAc,GAAGF,YAAY,IAAIvC,IAAI,CAACoC,MAAL,CAAYG,YAAZ,EAA0B,MAA1B,CAAjC;MACD;;MAED,IAAMV,QAAQ,GAAGD,SAAS,CAACc,IAAV,CAAe5D,YAAY,CAACkB,IAAD,EAAOyB,IAAP,CAA3B,CAAjB;;MAEA;QACEzB,IAAI,EAAEjB,aAAa,CAACiB,IAAD,EAAON,MAAP,CADrB;QAEEc,QAAQ,EAAE,EAFZ;QAGE2B,aAAa,EAAbA,aAHF;QAIEE,WAAW,EAAXA,WAJF;QAKEH,QAAQ,EAARA,QALF;QAMEL,QAAQ,EAARA,QANF;QAOEL,WAAW,EAAXA,WAPF;QAQEgB,gBAAgB,EAAhBA,gBARF;QASEC,cAAc,EAAdA,cATF;QAUEE,KAAK,EAAE3C,IAAI,CAACoC,MAAL,CAAYT,IAAI,CAACgB,KAAjB,EAAwBlB,IAAxB,CAVT;QAWEmB,OAAO,EAAE,mBAAM;UACb,IAAqBb,YAArB,GAAsC,MAAI,CAAChC,OAA3C,CAAQyB,WAAR;UACA,IAAIA,WAAW,GAAG,CAACxB,IAAI,CAACM,OAAL,EAAD,CAAlB;;UAEA,IAAIyB,YAAY,CAACzC,MAAb,KAAwB,CAA5B,EAA+B;YAC7BkC,WAAW,GAAG,CAACO,YAAY,CAAC,CAAD,CAAb,EAAkB/B,IAAI,CAACM,OAAL,EAAlB,CAAd;UACD,CAFD,MAEO,IAAIyB,YAAY,CAACzC,MAAb,IAAuB,CAA3B,EAA8B;YACnCkC,WAAW,GAAG,EAAd;UACD;;UAED3C,IAAI,CAAC,MAAD,EAAO,qBAAP,EAA8B2C,WAA9B,CAAJ;UACA3C,IAAI,CAAC,MAAD,EAAO,UAAP,EAAmBmB,IAAI,CAAC6C,MAAL,EAAnB,CAAJ;QACD,CAvBH;QAwBEC,YAAY,EAAE,wBAAM;UAClB,qBAA6C,MAAI,CAAC/C,OAAlD;UAAA,IAAQ+B,KAAR,kBAAQA,KAAR;UAAA,IAA4BC,YAA5B,kBAAeP,WAAf;;UACA,IAAIO,YAAY,CAAC,CAAD,CAAZ,IAAmBD,KAAK,CAACxC,MAAN,KAAiB,CAAxC,EAA2C;YACzC,IAAMyD,SAAS,GAAGhB,YAAY,CAAC,CAAD,CAAZ,IAAmBD,KAAK,CAAC,CAAD,CAA1C;YACA,IAAMN,aAAW,GAAG,CAACuB,SAAS,CAACzC,OAAV,EAAD,EAAsBN,IAAI,CAACM,OAAL,EAAtB,CAApB;YACAzB,IAAI,CAAC,MAAD,EAAO,qBAAP,EAA8B2C,aAA9B,CAAJ;UACD;QACF;MA/BH,GAgCKE,KAhCL;IAkCD;;;;EAhE4BjD,S;;gBAAzB4C,gB,WACWP,K;;AAwEjB,SAASkC,YAAT,SAAwC;EAAA;EAAA;;EAAA,IAAhBnC,MAAgB,UAAhBA,MAAgB;EAAA,IAARb,IAAQ,UAARA,IAAQ;EACtC,IAAMiD,aAAa,GAEMrE,GAFzB;EACA,eAAOD,OAAO,CAACkC,MAAD,CAAd,eACE,oBAAC,aAAD;IAAA,OAAgC,QAAhC;IAAA,eAAsD,CAACb,IAAvD;IAAA,cAAyEA,IAAzE;IAAA,YAAyF,CAAC;EAA1F,YADF;AAGD;;IAEKkD,gB;;;;;;;;;;;;;WAUJ,0BAAiB;MAAA;;MACf,qBAAoD,KAAKnD,OAAzD;MAAA,IAAQoD,eAAR,kBAAQA,eAAR;MAAA,IAAyBC,cAAzB,kBAAyBA,cAAzB;MAAA,IAAyC1D,MAAzC,kBAAyCA,MAAzC;MACA,IAAIM,IAAI,GAAG1B,KAAK,CAAC6E,eAAD,CAAL,CAAuBlD,OAAvB,CAA+B,OAA/B,CAAX;MACA,IAAIoD,QAAQ,GAAGrD,IAAI,CAACsD,QAAL,CAAc,CAAd,EAAiB,OAAjB,CAAf;MACA,IAAIC,QAAQ,GAAGvD,IAAI,CAACO,GAAL,CAAS,CAAT,EAAY,OAAZ,CAAf;MAEA;;MACA,IAAMiD,eAAe,GAAGxD,IAAI,CACzBN,MADqB,CACdA,MADc,EACND,oBAAoB,CAACC,MAAD,CADd,EAErBO,OAFqB,CAEb,MAFa,EAGrBwD,GAHqB,CAGjB,GAHiB,IAIpB,CAACzD,IAAI,CAACyD,GAAL,CAAS,GAAT,KAAiB,CAAlB,IAAuB,CAJH,GAKpBzD,IAAI,CAACyD,GAAL,CAAS,GAAT,CALJ;MAOA,IAAIC,aAAa,GAAGF,eAAe,GAC/BvE,KAAK,CAACoE,QAAQ,CAACM,WAAT,EAAD,EAAyB,YAAM;QAClC,IAAMC,GAAG,GAAG,MAAI,CAACC,UAAL,CAAgB;UAAE7D,IAAI,EAAEqD,QAAR;UAAkBS,QAAQ,EAAE;QAA5B,CAAhB,EAAoD,MAApD,CAAZ;;QACAF,GAAG,CAACpD,QAAJ,GAAeuD,MAAM,CAACV,QAAQ,CAACI,GAAT,CAAa,MAAb,CAAD,CAArB;QACAJ,QAAQ,GAAGA,QAAQ,CAAC9C,GAAT,CAAa,CAAb,EAAgB,KAAhB,CAAX;QACA,OAAOqD,GAAP;MACD,CALI,CAAL,CAKGI,KALH,CAKS,CAACR,eALV,CAD+B,GAO/B,EAPJ;MASA,IAAMS,SAAS,GAAGhF,KAAK,CAACe,IAAI,CAAC2D,WAAL,EAAD,EAAqB,YAAM;QAChD,IAAMC,GAAG,GAAG,MAAI,CAACC,UAAL,CAAgB;UAAE7D,IAAI,EAAJA;QAAF,CAAhB,EAA0B,MAA1B,CAAZ;;QACA4D,GAAG,CAACpD,QAAJ,GAAeuD,MAAM,CAAC/D,IAAI,CAACyD,GAAL,CAAS,MAAT,CAAD,CAArB;QACAzD,IAAI,GAAGA,IAAI,CAACO,GAAL,CAAS,CAAT,EAAY,KAAZ,CAAP;QACA,OAAOqD,GAAP;MACD,CALsB,CAAvB;MAOA,IAAIM,aAAa,GAAGjF,KAAK,CAAC,KAAKyE,aAAa,CAACpE,MAAnB,GAA4B2E,SAAS,CAAC3E,MAAvC,EAA+C,YAAM;QAC5E,IAAMsE,GAAG,GAAG,MAAI,CAACC,UAAL,CAAgB;UAAE7D,IAAI,EAAEuD,QAAR;UAAkBO,QAAQ,EAAE;QAA5B,CAAhB,EAAoD,MAApD,CAAZ;;QACAF,GAAG,CAACpD,QAAJ,GAAeuD,MAAM,CAACR,QAAQ,CAACE,GAAT,CAAa,MAAb,CAAD,CAArB;QACAF,QAAQ,GAAGA,QAAQ,CAAChD,GAAT,CAAa,CAAb,EAAgB,KAAhB,CAAX;QACA,OAAOqD,GAAP;MACD,CALwB,CAAzB;;MAOA,IAAI,CAACR,cAAL,EAAqB;QACnBM,aAAa,GAAGA,aAAa,CAAC3C,GAAd,CAAkB;UAAA,OAAO;YACvCc,QAAQ,EAAE,IAD6B;YAEvCrB,QAAQ,EAAE;UAF6B,CAAP;QAAA,CAAlB,CAAhB;QAIA0D,aAAa,GAAG,EAAhB;MACD;;MAED,oCAAWR,aAAX,sBAA6BO,SAA7B,sBAA2CC,aAA3C;IACD;;;WAED,sBAAa;MACX,OAAO;QACLzD,IAAI,EAAE,KAAK0D,cAAL;MADD,CAAP;IAGD;;;WAED,kBAAS;MAAA;MAAA;;MACP,IAAMC,SAAS,GAKMxF,GALrB;MACA,IAAMyF,SAAS,GAAG,KAAlB;MACA,qBAAqC,KAAKtE,OAA1C;MAAA,IAAQa,QAAR,kBAAQA,QAAR;MAAA,IAAkBC,MAAlB,kBAAkBA,MAAlB;MAAA,IAA0BnB,MAA1B,kBAA0BA,MAA1B;MAEA,eAAOf,OAAO,CAACkC,MAAD,CAAd,eACE,oBAAC,SAAD,mFACE,oBAAC,gBAAD;QAAA,UAA0BnB;MAA1B,GADF,eAEE,oBAAC,SAAD;QAAA,gBAAyB,KAAK4E;MAA9B,iBACE,oBAAC,QAAD,2BADF,CAFF,CADF;IAQD;;;;EA7E4BjD,gB;;gBAAzB6B,gB,iBACiB,c;;gBADjBA,gB,kBAEkB;EACpBC,eAAe,EAAE,IAAI7B,IAAJ,CAAS,IAAIA,IAAJ,GAAWC,QAAX,CAAoB,CAApB,EAAuB,CAAvB,EAA0B,CAA1B,EAA6B,CAA7B,CAAT,CADG;EAEpBM,QAAQ,EAAE,EAFU;EAGpBC,KAAK,EAAE,EAHa;EAIpBpC,MAAM,EAAE,IAJY;EAKpBc,QAAQ,EAAE;IAAA,IAAGC,IAAH,UAAGA,IAAH;IAAA,OAAcA,IAAI,CAACM,GAAL,CAAS,UAACC,IAAD,EAAOC,CAAP;MAAA,oBAAa,oBAAC,YAAD,CAAc,IAAd;QAAmB,GAAG,EAAEA;MAAxB,GAA+BD,IAA/B,EAAb;IAAA,CAAT,CAAd;EAAA;AALU,C;;IA8ElBuD,kB;;;;;;;;;;;;;WAMJ,2BAAkB;MAAA;;MAChB,qBAAoC,KAAKxE,OAAzC;MAAA,IAAQoD,eAAR,kBAAQA,eAAR;MAAA,IAAyBzD,MAAzB,kBAAyBA,MAAzB;MAEA,IAAIM,IAAI,GAAG1B,KAAK,CAAC6E,eAAD,CAAL,CAAuBlD,OAAvB,CAA+B,MAA/B,CAAX;MAEA,OAAOhB,KAAK,CAAC,EAAD,EAAK,YAAM;QACrB,IAAMuF,KAAK,GAAG,MAAI,CAACX,UAAL,CAAgB;UAAE7D,IAAI,EAAJA;QAAF,CAAhB,EAA0B,OAA1B,CAAd;;QACAwE,KAAK,CAAChE,QAAN,GAAiB,IAAIL,IAAI,CAACC,cAAT,CAAwBV,MAAxB,EAAgC;UAAE8E,KAAK,EAAE;QAAT,CAAhC,EAAoDnE,MAApD,CAA2DL,IAAI,CAACM,OAAL,EAA3D,CAAjB;QACAN,IAAI,GAAGA,IAAI,CAACO,GAAL,CAAS,CAAT,EAAY,OAAZ,CAAP;QACA,OAAOiE,KAAP;MACD,CALW,CAAZ;IAMD;;;WAED,sBAAa;MACX,OAAO;QACLC,MAAM,EAAE,KAAKC,eAAL;MADH,CAAP;IAGD;;;WAED,kBAAS;MAAA;MAAA;;MACP,IAAMN,SAAS,GAKMxF,GALrB;MACA,IAAM+F,WAAW,GAAG,KAApB;MACA,qBAA6B,KAAK5E,OAAlC;MAAA,IAAQa,QAAR,kBAAQA,QAAR;MAAA,IAAkBC,MAAlB,kBAAkBA,MAAlB;MAEA,gBAAOlC,OAAO,CAACkC,MAAD,CAAd,eACE,oBAAC,SAAD,oFACE,oBAAC,WAAD;QAAA,gBAA2B,KAAKyD;MAAhC,iBACE,oBAAC,QAAD,4BADF,CADF,CADF;IAOD;;;;EArC8BjD,gB;;gBAA3BkD,kB,iBACiB,gB;;gBADjBA,kB,kBAEkB;EACpB/D,QAAQ,EAAE;IAAA,IAAGiE,MAAH,UAAGA,MAAH;IAAA,OAAgBA,MAAM,CAAC1D,GAAP,CAAW,UAACC,IAAD,EAAOC,CAAP;MAAA,oBAAa,oBAAC,cAAD,CAAgB,IAAhB;QAAqB,GAAG,EAAEA;MAA1B,GAAiCD,IAAjC,EAAb;IAAA,CAAX,CAAhB;EAAA;AADU,C;;AAsCxB,IAAM4D,gBAAgB,GAAGpG,eAAe,CAACsB,oBAAD,EAAuB;EAC7D+E,IAAI,EAAE3D;AADuD,CAAvB,CAAxC;AAIA,IAAM4D,YAAY,GAAGtG,eAAe,CAAC0E,gBAAD,EAAmB;EACrD2B,IAAI,EAAE7B;AAD+C,CAAnB,CAApC;AAIA,IAAM+B,cAAc,GAAGvG,eAAe,CAAC+F,kBAAD,EAAqB;EACzDM,IAAI,EAAE7B;AADmD,CAArB,CAAtC;AAIA,SAASA,YAAT,EAAuB4B,gBAAvB,EAAyCE,YAAzC,EAAuDC,cAAvD"}
1
+ {"version":3,"file":"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"],"sources":["../../../src/components/Calendar.jsx"],"sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport isBetween from 'dayjs/plugin/isBetween';\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport fire from '@semcore/utils/lib/fire';\nimport includesDate from '../utils/includesDate';\nimport { 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} aria-hidden=\"true\">\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"],"mappings":"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"}