@semcore/date-picker 4.17.0 → 4.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/CHANGELOG.md +7 -1
  2. package/lib/cjs/DateRangeComparator.js +188 -0
  3. package/lib/cjs/DateRangeComparator.js.map +1 -0
  4. package/lib/cjs/MonthDateRangeComparator.js +223 -0
  5. package/lib/cjs/MonthDateRangeComparator.js.map +1 -0
  6. package/lib/cjs/components/Calendar.js +103 -63
  7. package/lib/cjs/components/Calendar.js.map +1 -1
  8. package/lib/cjs/components/DateRangeComparatorAbstract.js +584 -0
  9. package/lib/cjs/components/DateRangeComparatorAbstract.js.map +1 -0
  10. package/lib/cjs/components/InputTrigger.js +25 -18
  11. package/lib/cjs/components/InputTrigger.js.map +1 -1
  12. package/lib/cjs/components/PickerAbstract.js +25 -18
  13. package/lib/cjs/components/PickerAbstract.js.map +1 -1
  14. package/lib/cjs/components/RangePickerAbstract.js +25 -18
  15. package/lib/cjs/components/RangePickerAbstract.js.map +1 -1
  16. package/lib/cjs/index.d.js.map +1 -1
  17. package/lib/cjs/index.js +17 -1
  18. package/lib/cjs/index.js.map +1 -1
  19. package/lib/cjs/style/calendar.shadow.css +57 -10
  20. package/lib/cjs/style/date-picker.shadow.css +31 -0
  21. package/lib/es6/DateRangeComparator.js +180 -0
  22. package/lib/es6/DateRangeComparator.js.map +1 -0
  23. package/lib/es6/MonthDateRangeComparator.js +215 -0
  24. package/lib/es6/MonthDateRangeComparator.js.map +1 -0
  25. package/lib/es6/components/Calendar.js +103 -63
  26. package/lib/es6/components/Calendar.js.map +1 -1
  27. package/lib/es6/components/DateRangeComparatorAbstract.js +574 -0
  28. package/lib/es6/components/DateRangeComparatorAbstract.js.map +1 -0
  29. package/lib/es6/components/InputTrigger.js +25 -18
  30. package/lib/es6/components/InputTrigger.js.map +1 -1
  31. package/lib/es6/components/PickerAbstract.js +25 -18
  32. package/lib/es6/components/PickerAbstract.js.map +1 -1
  33. package/lib/es6/components/RangePickerAbstract.js +25 -18
  34. package/lib/es6/components/RangePickerAbstract.js.map +1 -1
  35. package/lib/es6/index.d.js.map +1 -1
  36. package/lib/es6/index.js +2 -0
  37. package/lib/es6/index.js.map +1 -1
  38. package/lib/es6/style/calendar.shadow.css +57 -10
  39. package/lib/es6/style/date-picker.shadow.css +31 -0
  40. package/lib/types/index.d.ts +136 -2
  41. package/package.json +5 -4
@@ -0,0 +1,180 @@
1
+ import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
2
+ import _createClass from "@babel/runtime/helpers/createClass";
3
+ import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
4
+ import _get from "@babel/runtime/helpers/get";
5
+ import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
6
+ import _inherits from "@babel/runtime/helpers/inherits";
7
+ import _createSuper from "@babel/runtime/helpers/createSuper";
8
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
9
+ import _objectSpread from "@babel/runtime/helpers/objectSpread2";
10
+ import { assignProps as _assignProps } from "@semcore/core";
11
+ import React from 'react';
12
+ import createComponent, { Root, sstyled } from '@semcore/core';
13
+ import { Header as CalendarHeader, Next, Period, Popper, Prev, Title } from './components';
14
+ import { CalendarDays as Calendar } from './components/Calendar';
15
+ import { Box, Flex } from '@semcore/flex-box';
16
+ import Divider from '@semcore/divider';
17
+ import RangeComparatorAbstract, { Apply, Reset, Header, Trigger, CompareToggle, Body, Footer } from './components/DateRangeComparatorAbstract';
18
+ import InputTriggerBase from './components/InputTrigger';
19
+ function RangeInput(props) {
20
+ var _ref = arguments[0],
21
+ _ref2;
22
+ var styles = props.styles;
23
+ var SComparatorRangeInput = Box;
24
+ var SRangeIndicator = Box;
25
+ return _ref2 = sstyled(styles), /*#__PURE__*/React.createElement(SComparatorRangeInput, _ref2.cn("SComparatorRangeInput", _objectSpread({}, _assignProps({
26
+ "data-name": 'SComparatorRangeInput',
27
+ "tag": InputTriggerBase,
28
+ "__excludeProps": ['role', 'aria-haspopup', 'onChange', 'value']
29
+ }, _ref))), /*#__PURE__*/React.createElement(InputTriggerBase.DateRange, null, /*#__PURE__*/React.createElement(SRangeIndicator, _ref2.cn("SRangeIndicator", {
30
+ "range": props.range,
31
+ "w": 12,
32
+ "h": 12,
33
+ "ml": 2
34
+ })), /*#__PURE__*/React.createElement(InputTriggerBase.DateRange.Indicator, null), /*#__PURE__*/React.createElement(InputTriggerBase.DateRange.FromMaskedInput, null), /*#__PURE__*/React.createElement(InputTriggerBase.DateRange.RangeSep, null), /*#__PURE__*/React.createElement(InputTriggerBase.DateRange.ToMaskedInput, null)));
35
+ }
36
+ RangeInput.Indicator = InputTriggerBase.Indicator;
37
+ RangeInput.MaskedInput = InputTriggerBase.MaskedInput;
38
+ RangeInput.Addon = InputTriggerBase.Addon;
39
+ RangeInput.SingleDateInput = InputTriggerBase.SingleDateInput;
40
+ RangeInput.DateRange = InputTriggerBase.DateRange;
41
+ RangeInput.DateRangeFromInput = InputTriggerBase.DateRangeFromInput;
42
+ RangeInput.DateRangeToInput = InputTriggerBase.DateRangeToInput;
43
+ var DateRangeComparatorRoot = /*#__PURE__*/function (_RangeComparatorAbstr) {
44
+ _inherits(DateRangeComparatorRoot, _RangeComparatorAbstr);
45
+ var _super = _createSuper(DateRangeComparatorRoot);
46
+ function DateRangeComparatorRoot() {
47
+ var _this;
48
+ _classCallCheck(this, DateRangeComparatorRoot);
49
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
50
+ args[_key] = arguments[_key];
51
+ }
52
+ _this = _super.call.apply(_super, [this].concat(args));
53
+ _defineProperty(_assertThisInitialized(_this), "navigateStep", 'month');
54
+ _defineProperty(_assertThisInitialized(_this), "keyStep", 'day');
55
+ _defineProperty(_assertThisInitialized(_this), "keyDiff", {
56
+ 37: -1,
57
+ 38: -7,
58
+ 39: 1,
59
+ 40: 7
60
+ });
61
+ return _this;
62
+ }
63
+ _createClass(DateRangeComparatorRoot, [{
64
+ key: "getRangeInput",
65
+ value: function getRangeInput() {
66
+ return /*#__PURE__*/React.createElement(DateRangeComparator.RangeInput.DateRange, null);
67
+ }
68
+ }, {
69
+ key: "getPopperProps",
70
+ value: function getPopperProps() {
71
+ return _objectSpread(_objectSpread({}, _get(_getPrototypeOf(DateRangeComparatorRoot.prototype), "getPopperProps", this).call(this)), {}, {
72
+ children: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(DateRangeComparator.Header, null), /*#__PURE__*/React.createElement(DateRangeComparator.Body, null), /*#__PURE__*/React.createElement(DateRangeComparator.Footer, null))
73
+ });
74
+ }
75
+ }, {
76
+ key: "getHeaderProps",
77
+ value: function getHeaderProps() {
78
+ return {
79
+ children: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(DateRangeComparator.ValueDateRange, null), /*#__PURE__*/React.createElement(DateRangeComparator.CompareToggle, null), /*#__PURE__*/React.createElement(DateRangeComparator.CompareDateRange, null))
80
+ };
81
+ }
82
+ }, {
83
+ key: "getBodyProps",
84
+ value: function getBodyProps() {
85
+ return {
86
+ children: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(DateRangeComparator.RangeCalendar, null), /*#__PURE__*/React.createElement(DateRangeComparator.Periods, null))
87
+ };
88
+ }
89
+ }, {
90
+ key: "getFooterProps",
91
+ value: function getFooterProps(_ref7) {
92
+ var _ref7$unclearable = _ref7.unclearable,
93
+ unclearable = _ref7$unclearable === void 0 ? false : _ref7$unclearable;
94
+ return {
95
+ children: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(DateRangeComparator.Apply, null), !unclearable && /*#__PURE__*/React.createElement(DateRangeComparator.Reset, null))
96
+ };
97
+ }
98
+ }]);
99
+ return DateRangeComparatorRoot;
100
+ }(RangeComparatorAbstract);
101
+ _defineProperty(DateRangeComparatorRoot, "displayName", 'DateRangeComparator');
102
+ _defineProperty(DateRangeComparatorRoot, "defaultProps", function (props) {
103
+ return _objectSpread(_objectSpread({}, RangeComparatorAbstract.defaultProps(props)), {}, {
104
+ children: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(DateRangeComparator.Trigger, null), /*#__PURE__*/React.createElement(DateRangeComparator.Popper, null))
105
+ });
106
+ });
107
+ function ValueDateRange(props) {
108
+ var _ref3;
109
+ var SValueDateRange = props.Root,
110
+ styles = props.styles;
111
+ return _ref3 = sstyled(styles), /*#__PURE__*/React.createElement(SValueDateRange, _ref3.cn("SValueDateRange", {
112
+ "render": DateRangeComparator.RangeInput,
113
+ "range": 'value'
114
+ }));
115
+ }
116
+ function CompareDateRange(props) {
117
+ var _ref4;
118
+ var SSecondaryDateRange = props.Root,
119
+ styles = props.styles;
120
+ return _ref4 = sstyled(styles), /*#__PURE__*/React.createElement(SSecondaryDateRange, _ref4.cn("SSecondaryDateRange", {
121
+ "render": DateRangeComparator.RangeInput,
122
+ "range": 'compare'
123
+ }));
124
+ }
125
+ function RangeCalendar(props) {
126
+ var _ref5;
127
+ var SRangeCalendar = props.Root,
128
+ styles = props.styles;
129
+ return _ref5 = sstyled(styles), /*#__PURE__*/React.createElement(SRangeCalendar, _ref5.cn("SRangeCalendar", {
130
+ "render": Flex,
131
+ "gap": 8
132
+ }), /*#__PURE__*/React.createElement(Flex, _ref5.cn("Flex", {
133
+ "direction": 'column'
134
+ }), /*#__PURE__*/React.createElement(DateRangeComparator.CalendarHeader, {
135
+ tag: Flex
136
+ }, /*#__PURE__*/React.createElement(DateRangeComparator.Prev, null), /*#__PURE__*/React.createElement(DateRangeComparator.Title, null)), /*#__PURE__*/React.createElement(DateRangeComparator.Calendar, null)), /*#__PURE__*/React.createElement(Flex, _ref5.cn("Flex", {
137
+ "direction": 'column'
138
+ }), /*#__PURE__*/React.createElement(DateRangeComparator.CalendarHeader, {
139
+ tag: Flex
140
+ }, /*#__PURE__*/React.createElement(DateRangeComparator.Title, null), /*#__PURE__*/React.createElement(DateRangeComparator.Next, null)), /*#__PURE__*/React.createElement(DateRangeComparator.Calendar, null)));
141
+ }
142
+ function Periods(props) {
143
+ var _ref6;
144
+ var SPeriods = props.Root,
145
+ styles = props.styles;
146
+ var SPeriodsList = DateRangeComparator.Period;
147
+ return _ref6 = sstyled(styles), /*#__PURE__*/React.createElement(SPeriods, _ref6.cn("SPeriods", {
148
+ "render": Flex
149
+ }), /*#__PURE__*/React.createElement(Divider, _ref6.cn("Divider", {
150
+ "orientation": 'vertical',
151
+ "h": 'auto'
152
+ })), /*#__PURE__*/React.createElement(Flex, _ref6.cn("Flex", {
153
+ "direction": 'column'
154
+ }), /*#__PURE__*/React.createElement(SPeriodsList, _ref6.cn("SPeriodsList", {}))));
155
+ }
156
+ var DateRangeComparator = createComponent(DateRangeComparatorRoot, {
157
+ Popper: Popper,
158
+ CalendarHeader: CalendarHeader,
159
+ Title: Title,
160
+ Header: Header,
161
+ Prev: Prev,
162
+ Next: Next,
163
+ Calendar: Calendar,
164
+ Period: Period,
165
+ Apply: Apply,
166
+ Reset: Reset,
167
+ Trigger: Trigger,
168
+ ValueDateRange: ValueDateRange,
169
+ CompareToggle: CompareToggle,
170
+ CompareDateRange: CompareDateRange,
171
+ Body: Body,
172
+ RangeCalendar: RangeCalendar,
173
+ Periods: Periods,
174
+ Footer: Footer,
175
+ RangeInput: RangeInput
176
+ }, {
177
+ parent: Calendar
178
+ });
179
+ export default DateRangeComparator;
180
+ //# sourceMappingURL=DateRangeComparator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DateRangeComparator.js","names":["React","createComponent","Root","sstyled","Header","CalendarHeader","Next","Period","Popper","Prev","Title","CalendarDays","Calendar","Box","Flex","Divider","RangeComparatorAbstract","Apply","Reset","Trigger","CompareToggle","Body","Footer","InputTriggerBase","RangeInput","props","_ref","arguments[0]","_ref2","styles","SComparatorRangeInput","SRangeIndicator","createElement","cn","_objectSpread","_assignProps","DateRange","range","Indicator","FromMaskedInput","RangeSep","ToMaskedInput","MaskedInput","Addon","SingleDateInput","DateRangeFromInput","DateRangeToInput","DateRangeComparatorRoot","_RangeComparatorAbstr","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","_createClass","key","value","getRangeInput","DateRangeComparator","getPopperProps","_get","_getPrototypeOf","prototype","children","Fragment","getHeaderProps","ValueDateRange","CompareDateRange","getBodyProps","RangeCalendar","Periods","getFooterProps","_ref7","_ref7$unclearable","unclearable","defaultProps","_ref3","SValueDateRange","_ref4","SSecondaryDateRange","_ref5","SRangeCalendar","tag","_ref6","SPeriods","SPeriodsList","parent"],"sources":["../../src/DateRangeComparator.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Root, sstyled } from '@semcore/core';\nimport { Header as CalendarHeader, Next, Period, Popper, Prev, Title } from './components';\nimport { CalendarDays as Calendar } from './components/Calendar';\nimport { Box, Flex } from '@semcore/flex-box';\nimport Divider from '@semcore/divider';\nimport RangeComparatorAbstract, {\n Apply,\n Reset,\n Header,\n Trigger,\n CompareToggle,\n Body,\n Footer,\n} from './components/DateRangeComparatorAbstract';\nimport InputTriggerBase from './components/InputTrigger';\n\nfunction RangeInput(props) {\n const { styles } = props;\n const SComparatorRangeInput = Root;\n const SRangeIndicator = Box;\n return sstyled(styles)(\n <SComparatorRangeInput\n data-name='SComparatorRangeInput'\n render={Box}\n tag={InputTriggerBase}\n __excludeProps={['role', 'aria-haspopup', 'onChange', 'value']}\n >\n <InputTriggerBase.DateRange>\n <SRangeIndicator range={props.range} w={12} h={12} ml={2} />\n <InputTriggerBase.DateRange.Indicator />\n <InputTriggerBase.DateRange.FromMaskedInput />\n <InputTriggerBase.DateRange.RangeSep />\n <InputTriggerBase.DateRange.ToMaskedInput />\n </InputTriggerBase.DateRange>\n </SComparatorRangeInput>,\n );\n}\nRangeInput.Indicator = InputTriggerBase.Indicator;\nRangeInput.MaskedInput = InputTriggerBase.MaskedInput;\nRangeInput.Addon = InputTriggerBase.Addon;\nRangeInput.SingleDateInput = InputTriggerBase.SingleDateInput;\nRangeInput.DateRange = InputTriggerBase.DateRange;\nRangeInput.DateRangeFromInput = InputTriggerBase.DateRangeFromInput;\nRangeInput.DateRangeToInput = InputTriggerBase.DateRangeToInput;\nclass DateRangeComparatorRoot extends RangeComparatorAbstract {\n static displayName = 'DateRangeComparator';\n static defaultProps = (props) => {\n return {\n ...RangeComparatorAbstract.defaultProps(props),\n children: (\n <>\n <DateRangeComparator.Trigger />\n <DateRangeComparator.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 getRangeInput() {\n return <DateRangeComparator.RangeInput.DateRange />;\n }\n\n getPopperProps() {\n return {\n ...super.getPopperProps(),\n children: (\n <>\n <DateRangeComparator.Header />\n <DateRangeComparator.Body />\n <DateRangeComparator.Footer />\n </>\n ),\n };\n }\n\n getHeaderProps() {\n return {\n children: (\n <>\n <DateRangeComparator.ValueDateRange />\n <DateRangeComparator.CompareToggle />\n <DateRangeComparator.CompareDateRange />\n </>\n ),\n };\n }\n\n getBodyProps() {\n return {\n children: (\n <>\n <DateRangeComparator.RangeCalendar />\n <DateRangeComparator.Periods />\n </>\n ),\n };\n }\n\n getFooterProps({ unclearable = false }) {\n return {\n children: (\n <>\n <DateRangeComparator.Apply />\n {!unclearable && <DateRangeComparator.Reset />}\n </>\n ),\n };\n }\n}\n\nfunction ValueDateRange(props) {\n const { Root: SValueDateRange, styles } = props;\n return sstyled(styles)(<SValueDateRange render={DateRangeComparator.RangeInput} range='value' />);\n}\n\nfunction CompareDateRange(props) {\n const { Root: SSecondaryDateRange, styles } = props;\n return sstyled(styles)(\n <SSecondaryDateRange render={DateRangeComparator.RangeInput} range='compare' />,\n );\n}\n\nfunction RangeCalendar(props) {\n const { Root: SRangeCalendar, styles } = props;\n return sstyled(styles)(\n <SRangeCalendar render={Flex} gap={8}>\n <Flex direction='column'>\n <DateRangeComparator.CalendarHeader tag={Flex}>\n <DateRangeComparator.Prev />\n <DateRangeComparator.Title />\n </DateRangeComparator.CalendarHeader>\n <DateRangeComparator.Calendar />\n </Flex>\n <Flex direction='column'>\n <DateRangeComparator.CalendarHeader tag={Flex}>\n <DateRangeComparator.Title />\n <DateRangeComparator.Next />\n </DateRangeComparator.CalendarHeader>\n <DateRangeComparator.Calendar />\n </Flex>\n </SRangeCalendar>,\n );\n}\nfunction Periods(props) {\n const { Root: SPeriods, styles } = props;\n const SPeriodsList = DateRangeComparator.Period;\n return sstyled(styles)(\n <SPeriods render={Flex}>\n <Divider orientation='vertical' h='auto' />\n <Flex direction='column'>\n <SPeriodsList />\n </Flex>\n </SPeriods>,\n );\n}\n\nconst DateRangeComparator = createComponent(\n DateRangeComparatorRoot,\n {\n Popper,\n CalendarHeader,\n Title,\n Header,\n Prev,\n Next,\n Calendar,\n Period,\n Apply,\n Reset,\n\n Trigger,\n ValueDateRange,\n CompareToggle,\n CompareDateRange,\n Body,\n RangeCalendar,\n Periods,\n Footer,\n RangeInput,\n },\n {\n parent: Calendar,\n },\n);\n\nexport default DateRangeComparator;\n"],"mappings":"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"}
@@ -0,0 +1,215 @@
1
+ import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
2
+ import _createClass from "@babel/runtime/helpers/createClass";
3
+ import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
4
+ import _get from "@babel/runtime/helpers/get";
5
+ import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
6
+ import _inherits from "@babel/runtime/helpers/inherits";
7
+ import _createSuper from "@babel/runtime/helpers/createSuper";
8
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
9
+ import _objectSpread from "@babel/runtime/helpers/objectSpread2";
10
+ import { assignProps as _assignProps } from "@semcore/core";
11
+ import React from 'react';
12
+ import createComponent, { Root, sstyled } from '@semcore/core';
13
+ import { Header as CalendarHeader, Next, Period, Popper, Prev, Title } from './components';
14
+ import { CalendarMonths as Calendar } from './components/Calendar';
15
+ import { Box, Flex } from '@semcore/flex-box';
16
+ import dayjs from 'dayjs';
17
+ import Divider from '@semcore/divider';
18
+ import RangeComparatorAbstract, { Apply, Reset, Header, Trigger, CompareToggle, Body, Footer } from './components/DateRangeComparatorAbstract';
19
+ import InputTriggerBase from './components/InputTrigger';
20
+ var dateParts = {
21
+ day: false,
22
+ month: true,
23
+ year: true
24
+ };
25
+ function RangeInput(props) {
26
+ var _ref = arguments[0],
27
+ _ref2;
28
+ var styles = props.styles;
29
+ var SComparatorRangeInput = Box;
30
+ var SRangeIndicator = Box;
31
+ return _ref2 = sstyled(styles), /*#__PURE__*/React.createElement(SComparatorRangeInput, _ref2.cn("SComparatorRangeInput", _objectSpread({}, _assignProps({
32
+ "data-name": 'SComparatorRangeInput',
33
+ "tag": InputTriggerBase,
34
+ "parts": dateParts,
35
+ "__excludeProps": ['role', 'aria-haspopup', 'onChange', 'value']
36
+ }, _ref))), /*#__PURE__*/React.createElement(InputTriggerBase.DateRange, null, /*#__PURE__*/React.createElement(SRangeIndicator, _ref2.cn("SRangeIndicator", {
37
+ "range": props.range,
38
+ "w": 12,
39
+ "h": 12,
40
+ "ml": 2
41
+ })), /*#__PURE__*/React.createElement(InputTriggerBase.DateRange.Indicator, null), /*#__PURE__*/React.createElement(InputTriggerBase.DateRange.FromMaskedInput, null), /*#__PURE__*/React.createElement(InputTriggerBase.DateRange.RangeSep, null), /*#__PURE__*/React.createElement(InputTriggerBase.DateRange.ToMaskedInput, null)));
42
+ }
43
+ RangeInput.Indicator = InputTriggerBase.Indicator;
44
+ RangeInput.MaskedInput = InputTriggerBase.MaskedInput;
45
+ RangeInput.Addon = InputTriggerBase.Addon;
46
+ RangeInput.SingleDateInput = InputTriggerBase.SingleDateInput;
47
+ RangeInput.DateRange = InputTriggerBase.DateRange;
48
+ RangeInput.DateRangeFromInput = InputTriggerBase.DateRangeFromInput;
49
+ RangeInput.DateRangeToInput = InputTriggerBase.DateRangeToInput;
50
+ var MonthDateRangeComparatorRoot = /*#__PURE__*/function (_RangeComparatorAbstr) {
51
+ _inherits(MonthDateRangeComparatorRoot, _RangeComparatorAbstr);
52
+ var _super = _createSuper(MonthDateRangeComparatorRoot);
53
+ function MonthDateRangeComparatorRoot() {
54
+ var _this;
55
+ _classCallCheck(this, MonthDateRangeComparatorRoot);
56
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
57
+ args[_key] = arguments[_key];
58
+ }
59
+ _this = _super.call.apply(_super, [this].concat(args));
60
+ _defineProperty(_assertThisInitialized(_this), "navigateStep", 'year');
61
+ _defineProperty(_assertThisInitialized(_this), "keyStep", 'month');
62
+ _defineProperty(_assertThisInitialized(_this), "keyDiff", {
63
+ 37: -1,
64
+ 38: -3,
65
+ 39: 1,
66
+ 40: 3
67
+ });
68
+ return _this;
69
+ }
70
+ _createClass(MonthDateRangeComparatorRoot, [{
71
+ key: "getTitleProps",
72
+ value: function getTitleProps(props, index) {
73
+ var _this$asProps = this.asProps,
74
+ displayedPeriod = _this$asProps.displayedPeriod,
75
+ locale = _this$asProps.locale;
76
+ return _objectSpread(_objectSpread({}, _get(_getPrototypeOf(MonthDateRangeComparatorRoot.prototype), "getTitleProps", this).call(this, props, index)), {}, {
77
+ children: new Intl.DateTimeFormat(locale, {
78
+ year: 'numeric'
79
+ }).format(dayjs(displayedPeriod).add(index, this.navigateStep).startOf(this.navigateStep).toDate())
80
+ });
81
+ }
82
+ }, {
83
+ key: "getRangeInput",
84
+ value: function getRangeInput() {
85
+ return /*#__PURE__*/React.createElement(MonthDateRangeComparator.RangeInput.DateRange, null);
86
+ }
87
+ }, {
88
+ key: "getValueDateRangeProps",
89
+ value: function getValueDateRangeProps() {
90
+ var props = _get(_getPrototypeOf(MonthDateRangeComparatorRoot.prototype), "getValueDateRangeProps", this).call(this);
91
+ return _objectSpread(_objectSpread({}, props), {}, {
92
+ w: props.w - 60
93
+ });
94
+ }
95
+ }, {
96
+ key: "getCompareDateRangeProps",
97
+ value: function getCompareDateRangeProps() {
98
+ var props = _get(_getPrototypeOf(MonthDateRangeComparatorRoot.prototype), "getCompareDateRangeProps", this).call(this);
99
+ return _objectSpread(_objectSpread({}, props), {}, {
100
+ w: props.w - 60
101
+ });
102
+ }
103
+ }, {
104
+ key: "getPopperProps",
105
+ value: function getPopperProps() {
106
+ return _objectSpread(_objectSpread({}, _get(_getPrototypeOf(MonthDateRangeComparatorRoot.prototype), "getPopperProps", this).call(this)), {}, {
107
+ children: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(MonthDateRangeComparator.Header, null), /*#__PURE__*/React.createElement(MonthDateRangeComparator.Body, null), /*#__PURE__*/React.createElement(MonthDateRangeComparator.Footer, null))
108
+ });
109
+ }
110
+ }, {
111
+ key: "getHeaderProps",
112
+ value: function getHeaderProps() {
113
+ return {
114
+ children: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(MonthDateRangeComparator.ValueDateRange, null), /*#__PURE__*/React.createElement(MonthDateRangeComparator.CompareToggle, null), /*#__PURE__*/React.createElement(MonthDateRangeComparator.CompareDateRange, null))
115
+ };
116
+ }
117
+ }, {
118
+ key: "getBodyProps",
119
+ value: function getBodyProps() {
120
+ return {
121
+ children: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(MonthDateRangeComparator.RangeCalendar, null), /*#__PURE__*/React.createElement(MonthDateRangeComparator.Periods, null))
122
+ };
123
+ }
124
+ }, {
125
+ key: "getFooterProps",
126
+ value: function getFooterProps(_ref7) {
127
+ var _ref7$unclearable = _ref7.unclearable,
128
+ unclearable = _ref7$unclearable === void 0 ? false : _ref7$unclearable;
129
+ return {
130
+ children: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(MonthDateRangeComparator.Apply, null), !unclearable && /*#__PURE__*/React.createElement(MonthDateRangeComparator.Reset, null))
131
+ };
132
+ }
133
+ }]);
134
+ return MonthDateRangeComparatorRoot;
135
+ }(RangeComparatorAbstract);
136
+ _defineProperty(MonthDateRangeComparatorRoot, "displayName", 'MonthDateRangeComparator');
137
+ _defineProperty(MonthDateRangeComparatorRoot, "defaultProps", function (props) {
138
+ return _objectSpread(_objectSpread({}, RangeComparatorAbstract.defaultProps(props)), {}, {
139
+ children: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(MonthDateRangeComparator.Trigger, null), /*#__PURE__*/React.createElement(MonthDateRangeComparator.Popper, null))
140
+ });
141
+ });
142
+ function ValueDateRange(props) {
143
+ var _ref3;
144
+ var SValueDateRange = props.Root,
145
+ styles = props.styles;
146
+ return _ref3 = sstyled(styles), /*#__PURE__*/React.createElement(SValueDateRange, _ref3.cn("SValueDateRange", {
147
+ "render": MonthDateRangeComparator.RangeInput,
148
+ "range": 'value'
149
+ }));
150
+ }
151
+ function CompareDateRange(props) {
152
+ var _ref4;
153
+ var SCompareDateRange = props.Root,
154
+ styles = props.styles;
155
+ return _ref4 = sstyled(styles), /*#__PURE__*/React.createElement(SCompareDateRange, _ref4.cn("SCompareDateRange", {
156
+ "render": MonthDateRangeComparator.RangeInput,
157
+ "range": 'compare'
158
+ }));
159
+ }
160
+ function RangeCalendar(props) {
161
+ var _ref5;
162
+ var SRangeCalendar = props.Root,
163
+ styles = props.styles;
164
+ return _ref5 = sstyled(styles), /*#__PURE__*/React.createElement(SRangeCalendar, _ref5.cn("SRangeCalendar", {
165
+ "render": Flex,
166
+ "gap": 8
167
+ }), /*#__PURE__*/React.createElement(Flex, _ref5.cn("Flex", {
168
+ "direction": 'column'
169
+ }), /*#__PURE__*/React.createElement(MonthDateRangeComparator.CalendarHeader, {
170
+ tag: Flex
171
+ }, /*#__PURE__*/React.createElement(MonthDateRangeComparator.Prev, null), /*#__PURE__*/React.createElement(MonthDateRangeComparator.Title, null)), /*#__PURE__*/React.createElement(MonthDateRangeComparator.Calendar, null)), /*#__PURE__*/React.createElement(Flex, _ref5.cn("Flex", {
172
+ "direction": 'column'
173
+ }), /*#__PURE__*/React.createElement(MonthDateRangeComparator.CalendarHeader, {
174
+ tag: Flex
175
+ }, /*#__PURE__*/React.createElement(MonthDateRangeComparator.Title, null), /*#__PURE__*/React.createElement(MonthDateRangeComparator.Next, null)), /*#__PURE__*/React.createElement(MonthDateRangeComparator.Calendar, null)));
176
+ }
177
+ function Periods(props) {
178
+ var _ref6;
179
+ var SPeriods = props.Root,
180
+ styles = props.styles;
181
+ var SPeriodsList = MonthDateRangeComparator.Period;
182
+ return _ref6 = sstyled(styles), /*#__PURE__*/React.createElement(SPeriods, _ref6.cn("SPeriods", {
183
+ "render": Flex
184
+ }), /*#__PURE__*/React.createElement(Divider, _ref6.cn("Divider", {
185
+ "orientation": 'vertical',
186
+ "h": 'auto'
187
+ })), /*#__PURE__*/React.createElement(Flex, _ref6.cn("Flex", {
188
+ "direction": 'column'
189
+ }), /*#__PURE__*/React.createElement(SPeriodsList, _ref6.cn("SPeriodsList", {}))));
190
+ }
191
+ var MonthDateRangeComparator = createComponent(MonthDateRangeComparatorRoot, {
192
+ Popper: Popper,
193
+ CalendarHeader: CalendarHeader,
194
+ Title: Title,
195
+ Header: Header,
196
+ Prev: Prev,
197
+ Next: Next,
198
+ Calendar: Calendar,
199
+ Period: Period,
200
+ Apply: Apply,
201
+ Reset: Reset,
202
+ Trigger: Trigger,
203
+ ValueDateRange: ValueDateRange,
204
+ CompareToggle: CompareToggle,
205
+ CompareDateRange: CompareDateRange,
206
+ Body: Body,
207
+ RangeCalendar: RangeCalendar,
208
+ Periods: Periods,
209
+ Footer: Footer,
210
+ RangeInput: RangeInput
211
+ }, {
212
+ parent: Calendar
213
+ });
214
+ export default MonthDateRangeComparator;
215
+ //# sourceMappingURL=MonthDateRangeComparator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MonthDateRangeComparator.js","names":["React","createComponent","Root","sstyled","Header","CalendarHeader","Next","Period","Popper","Prev","Title","CalendarMonths","Calendar","Box","Flex","dayjs","Divider","RangeComparatorAbstract","Apply","Reset","Trigger","CompareToggle","Body","Footer","InputTriggerBase","dateParts","day","month","year","RangeInput","props","_ref","arguments[0]","_ref2","styles","SComparatorRangeInput","SRangeIndicator","createElement","cn","_objectSpread","_assignProps","DateRange","range","Indicator","FromMaskedInput","RangeSep","ToMaskedInput","MaskedInput","Addon","SingleDateInput","DateRangeFromInput","DateRangeToInput","MonthDateRangeComparatorRoot","_RangeComparatorAbstr","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","_createClass","key","value","getTitleProps","index","_this$asProps","asProps","displayedPeriod","locale","_get","_getPrototypeOf","prototype","children","Intl","DateTimeFormat","format","add","navigateStep","startOf","toDate","getRangeInput","MonthDateRangeComparator","getValueDateRangeProps","w","getCompareDateRangeProps","getPopperProps","Fragment","getHeaderProps","ValueDateRange","CompareDateRange","getBodyProps","RangeCalendar","Periods","getFooterProps","_ref7","_ref7$unclearable","unclearable","defaultProps","_ref3","SValueDateRange","_ref4","SCompareDateRange","_ref5","SRangeCalendar","tag","_ref6","SPeriods","SPeriodsList","parent"],"sources":["../../src/MonthDateRangeComparator.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Root, sstyled } from '@semcore/core';\nimport { Header as CalendarHeader, Next, Period, Popper, Prev, Title } from './components';\nimport { CalendarMonths as Calendar } from './components/Calendar';\nimport { Box, Flex } from '@semcore/flex-box';\nimport dayjs from 'dayjs';\nimport Divider from '@semcore/divider';\nimport RangeComparatorAbstract, {\n Apply,\n Reset,\n Header,\n Trigger,\n CompareToggle,\n Body,\n Footer,\n} from './components/DateRangeComparatorAbstract';\nimport InputTriggerBase from './components/InputTrigger';\n\nconst dateParts = { day: false, month: true, year: true };\n\nfunction RangeInput(props) {\n const { styles } = props;\n const SComparatorRangeInput = Root;\n const SRangeIndicator = Box;\n return sstyled(styles)(\n <SComparatorRangeInput\n data-name='SComparatorRangeInput'\n render={Box}\n tag={InputTriggerBase}\n parts={dateParts}\n __excludeProps={['role', 'aria-haspopup', 'onChange', 'value']}\n >\n <InputTriggerBase.DateRange>\n <SRangeIndicator range={props.range} w={12} h={12} ml={2} />\n <InputTriggerBase.DateRange.Indicator />\n <InputTriggerBase.DateRange.FromMaskedInput />\n <InputTriggerBase.DateRange.RangeSep />\n <InputTriggerBase.DateRange.ToMaskedInput />\n </InputTriggerBase.DateRange>\n </SComparatorRangeInput>,\n );\n}\nRangeInput.Indicator = InputTriggerBase.Indicator;\nRangeInput.MaskedInput = InputTriggerBase.MaskedInput;\nRangeInput.Addon = InputTriggerBase.Addon;\nRangeInput.SingleDateInput = InputTriggerBase.SingleDateInput;\nRangeInput.DateRange = InputTriggerBase.DateRange;\nRangeInput.DateRangeFromInput = InputTriggerBase.DateRangeFromInput;\nRangeInput.DateRangeToInput = InputTriggerBase.DateRangeToInput;\n\nclass MonthDateRangeComparatorRoot extends RangeComparatorAbstract {\n static displayName = 'MonthDateRangeComparator';\n static defaultProps = (props) => {\n return {\n ...RangeComparatorAbstract.defaultProps(props),\n children: (\n <>\n <MonthDateRangeComparator.Trigger />\n <MonthDateRangeComparator.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 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 getRangeInput() {\n return <MonthDateRangeComparator.RangeInput.DateRange />;\n }\n\n getValueDateRangeProps() {\n const props = super.getValueDateRangeProps();\n return {\n ...props,\n w: props.w - 60,\n };\n }\n\n getCompareDateRangeProps() {\n const props = super.getCompareDateRangeProps();\n return {\n ...props,\n w: props.w - 60,\n };\n }\n\n getPopperProps() {\n return {\n ...super.getPopperProps(),\n children: (\n <>\n <MonthDateRangeComparator.Header />\n <MonthDateRangeComparator.Body />\n <MonthDateRangeComparator.Footer />\n </>\n ),\n };\n }\n\n getHeaderProps() {\n return {\n children: (\n <>\n <MonthDateRangeComparator.ValueDateRange />\n <MonthDateRangeComparator.CompareToggle />\n <MonthDateRangeComparator.CompareDateRange />\n </>\n ),\n };\n }\n\n getBodyProps() {\n return {\n children: (\n <>\n <MonthDateRangeComparator.RangeCalendar />\n <MonthDateRangeComparator.Periods />\n </>\n ),\n };\n }\n\n getFooterProps({ unclearable = false }) {\n return {\n children: (\n <>\n <MonthDateRangeComparator.Apply />\n {!unclearable && <MonthDateRangeComparator.Reset />}\n </>\n ),\n };\n }\n}\n\nfunction ValueDateRange(props) {\n const { Root: SValueDateRange, styles } = props;\n return sstyled(styles)(\n <SValueDateRange render={MonthDateRangeComparator.RangeInput} range='value' />,\n );\n}\n\nfunction CompareDateRange(props) {\n const { Root: SCompareDateRange, styles } = props;\n return sstyled(styles)(\n <SCompareDateRange render={MonthDateRangeComparator.RangeInput} range='compare' />,\n );\n}\n\nfunction RangeCalendar(props) {\n const { Root: SRangeCalendar, styles } = props;\n return sstyled(styles)(\n <SRangeCalendar render={Flex} gap={8}>\n <Flex direction='column'>\n <MonthDateRangeComparator.CalendarHeader tag={Flex}>\n <MonthDateRangeComparator.Prev />\n <MonthDateRangeComparator.Title />\n </MonthDateRangeComparator.CalendarHeader>\n <MonthDateRangeComparator.Calendar />\n </Flex>\n <Flex direction='column'>\n <MonthDateRangeComparator.CalendarHeader tag={Flex}>\n <MonthDateRangeComparator.Title />\n <MonthDateRangeComparator.Next />\n </MonthDateRangeComparator.CalendarHeader>\n <MonthDateRangeComparator.Calendar />\n </Flex>\n </SRangeCalendar>,\n );\n}\nfunction Periods(props) {\n const { Root: SPeriods, styles } = props;\n const SPeriodsList = MonthDateRangeComparator.Period;\n return sstyled(styles)(\n <SPeriods render={Flex}>\n <Divider orientation='vertical' h='auto' />\n <Flex direction='column'>\n <SPeriodsList />\n </Flex>\n </SPeriods>,\n );\n}\n\nconst MonthDateRangeComparator = createComponent(\n MonthDateRangeComparatorRoot,\n {\n Popper,\n CalendarHeader,\n Title,\n Header,\n Prev,\n Next,\n Calendar,\n Period,\n Apply,\n Reset,\n\n Trigger,\n ValueDateRange,\n CompareToggle,\n CompareDateRange,\n Body,\n RangeCalendar,\n Periods,\n Footer,\n RangeInput,\n },\n {\n parent: Calendar,\n },\n);\n\nexport default MonthDateRangeComparator;\n"],"mappings":"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"}