@seafile/seafile-calendar 0.0.30-beta.2 → 0.0.30-beta.3

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 (167) hide show
  1. package/assets/index.css +1177 -0
  2. package/dist/rc-calendar.css +1179 -0
  3. package/dist/rc-calendar.css.map +1 -0
  4. package/dist/rc-calendar.js +7500 -0
  5. package/dist/rc-calendar.js.map +1 -0
  6. package/dist/rc-calendar.min.css +1179 -0
  7. package/dist/rc-calendar.min.css.map +1 -0
  8. package/dist/rc-calendar.min.js +1 -0
  9. package/es/Calendar.js +454 -0
  10. package/es/FullCalendar.js +182 -0
  11. package/es/MonthCalendar.js +135 -0
  12. package/es/Picker.js +245 -0
  13. package/es/RangeCalendar.js +876 -0
  14. package/es/calendar/CalendarFooter.js +93 -0
  15. package/es/calendar/CalendarHeader.js +257 -0
  16. package/es/calendar/CalendarRightPanel.js +135 -0
  17. package/es/calendar/OkButton.js +22 -0
  18. package/es/calendar/TimePickerButton.js +28 -0
  19. package/es/calendar/TodayButton.js +28 -0
  20. package/es/date/DateConstants.js +19 -0
  21. package/es/date/DateInput.js +444 -0
  22. package/es/date/DateTBody.js +280 -0
  23. package/es/date/DateTHead.js +86 -0
  24. package/es/date/DateTable.js +32 -0
  25. package/es/decade/DecadePanel.js +181 -0
  26. package/es/full-calendar/CalendarHeader.js +180 -0
  27. package/es/index.js +3 -0
  28. package/es/locale/ar_EG.js +27 -0
  29. package/es/locale/bg_BG.js +27 -0
  30. package/es/locale/ca_ES.js +27 -0
  31. package/es/locale/cs_CZ.js +27 -0
  32. package/es/locale/da_DK.js +27 -0
  33. package/es/locale/de_DE.js +27 -0
  34. package/es/locale/el_GR.js +27 -0
  35. package/es/locale/en_GB.js +27 -0
  36. package/es/locale/en_US.js +28 -0
  37. package/es/locale/es_ES.js +27 -0
  38. package/es/locale/et_EE.js +27 -0
  39. package/es/locale/fa_IR.js +27 -0
  40. package/es/locale/fi_FI.js +27 -0
  41. package/es/locale/fr_BE.js +27 -0
  42. package/es/locale/fr_FR.js +27 -0
  43. package/es/locale/he_IL.js +28 -0
  44. package/es/locale/hi_IN.js +28 -0
  45. package/es/locale/hr_HR.js +28 -0
  46. package/es/locale/hu_HU.js +27 -0
  47. package/es/locale/id_ID.js +28 -0
  48. package/es/locale/is_IS.js +27 -0
  49. package/es/locale/it_IT.js +27 -0
  50. package/es/locale/ja_JP.js +26 -0
  51. package/es/locale/kn_IN.js +28 -0
  52. package/es/locale/ko_KR.js +27 -0
  53. package/es/locale/ku_IQ.js +27 -0
  54. package/es/locale/lv_LV.js +27 -0
  55. package/es/locale/mm_MM.js +28 -0
  56. package/es/locale/mn_MN.js +28 -0
  57. package/es/locale/ms_MY.js +27 -0
  58. package/es/locale/nb_NO.js +27 -0
  59. package/es/locale/nl_BE.js +27 -0
  60. package/es/locale/nl_NL.js +27 -0
  61. package/es/locale/pl_PL.js +27 -0
  62. package/es/locale/pt_BR.js +27 -0
  63. package/es/locale/pt_PT.js +27 -0
  64. package/es/locale/ro_RO.js +28 -0
  65. package/es/locale/ru_RU.js +27 -0
  66. package/es/locale/sk_SK.js +27 -0
  67. package/es/locale/sl_SI.js +27 -0
  68. package/es/locale/sr_RS.js +27 -0
  69. package/es/locale/sv_SE.js +27 -0
  70. package/es/locale/ta_IN.js +28 -0
  71. package/es/locale/th_TH.js +27 -0
  72. package/es/locale/tr_TR.js +27 -0
  73. package/es/locale/ug_CN.js +26 -0
  74. package/es/locale/uk_UA.js +27 -0
  75. package/es/locale/vi_VN.js +28 -0
  76. package/es/locale/zh_CN.js +27 -0
  77. package/es/locale/zh_TW.js +26 -0
  78. package/es/mixin/CalendarMixin.js +123 -0
  79. package/es/mixin/CommonMixin.js +85 -0
  80. package/es/month/MonthPanel.js +154 -0
  81. package/es/month/MonthTable.js +156 -0
  82. package/es/picker/placements.js +35 -0
  83. package/es/range-calendar/CalendarPart.js +151 -0
  84. package/es/util/dayjs.js +17 -0
  85. package/es/util/index.js +272 -0
  86. package/es/util/toTime.js +21 -0
  87. package/es/year/YearPanel.js +194 -0
  88. package/lib/Calendar.js +517 -0
  89. package/lib/FullCalendar.js +221 -0
  90. package/lib/MonthCalendar.js +172 -0
  91. package/lib/Picker.js +282 -0
  92. package/lib/RangeCalendar.js +925 -0
  93. package/lib/calendar/CalendarFooter.js +134 -0
  94. package/lib/calendar/CalendarHeader.js +290 -0
  95. package/lib/calendar/CalendarRightPanel.js +160 -0
  96. package/lib/calendar/OkButton.js +32 -0
  97. package/lib/calendar/TimePickerButton.js +41 -0
  98. package/lib/calendar/TodayButton.js +39 -0
  99. package/lib/date/DateConstants.js +23 -0
  100. package/lib/date/DateInput.js +476 -0
  101. package/lib/date/DateTBody.js +307 -0
  102. package/lib/date/DateTHead.js +106 -0
  103. package/lib/date/DateTable.js +54 -0
  104. package/lib/decade/DecadePanel.js +207 -0
  105. package/lib/full-calendar/CalendarHeader.js +201 -0
  106. package/lib/index.js +12 -0
  107. package/lib/locale/ar_EG.js +31 -0
  108. package/lib/locale/bg_BG.js +31 -0
  109. package/lib/locale/ca_ES.js +31 -0
  110. package/lib/locale/cs_CZ.js +31 -0
  111. package/lib/locale/da_DK.js +31 -0
  112. package/lib/locale/de_DE.js +31 -0
  113. package/lib/locale/el_GR.js +31 -0
  114. package/lib/locale/en_GB.js +31 -0
  115. package/lib/locale/en_US.js +32 -0
  116. package/lib/locale/es_ES.js +31 -0
  117. package/lib/locale/et_EE.js +31 -0
  118. package/lib/locale/fa_IR.js +31 -0
  119. package/lib/locale/fi_FI.js +31 -0
  120. package/lib/locale/fr_BE.js +31 -0
  121. package/lib/locale/fr_FR.js +31 -0
  122. package/lib/locale/he_IL.js +32 -0
  123. package/lib/locale/hi_IN.js +32 -0
  124. package/lib/locale/hr_HR.js +32 -0
  125. package/lib/locale/hu_HU.js +31 -0
  126. package/lib/locale/id_ID.js +32 -0
  127. package/lib/locale/is_IS.js +31 -0
  128. package/lib/locale/it_IT.js +31 -0
  129. package/lib/locale/ja_JP.js +30 -0
  130. package/lib/locale/kn_IN.js +32 -0
  131. package/lib/locale/ko_KR.js +31 -0
  132. package/lib/locale/ku_IQ.js +31 -0
  133. package/lib/locale/lv_LV.js +31 -0
  134. package/lib/locale/mm_MM.js +32 -0
  135. package/lib/locale/mn_MN.js +32 -0
  136. package/lib/locale/ms_MY.js +31 -0
  137. package/lib/locale/nb_NO.js +31 -0
  138. package/lib/locale/nl_BE.js +31 -0
  139. package/lib/locale/nl_NL.js +31 -0
  140. package/lib/locale/pl_PL.js +31 -0
  141. package/lib/locale/pt_BR.js +31 -0
  142. package/lib/locale/pt_PT.js +31 -0
  143. package/lib/locale/ro_RO.js +32 -0
  144. package/lib/locale/ru_RU.js +31 -0
  145. package/lib/locale/sk_SK.js +31 -0
  146. package/lib/locale/sl_SI.js +31 -0
  147. package/lib/locale/sr_RS.js +31 -0
  148. package/lib/locale/sv_SE.js +31 -0
  149. package/lib/locale/ta_IN.js +32 -0
  150. package/lib/locale/th_TH.js +31 -0
  151. package/lib/locale/tr_TR.js +31 -0
  152. package/lib/locale/ug_CN.js +30 -0
  153. package/lib/locale/uk_UA.js +31 -0
  154. package/lib/locale/vi_VN.js +32 -0
  155. package/lib/locale/zh_CN.js +31 -0
  156. package/lib/locale/zh_TW.js +30 -0
  157. package/lib/mixin/CalendarMixin.js +153 -0
  158. package/lib/mixin/CommonMixin.js +106 -0
  159. package/lib/month/MonthPanel.js +179 -0
  160. package/lib/month/MonthTable.js +181 -0
  161. package/lib/picker/placements.js +39 -0
  162. package/lib/range-calendar/CalendarPart.js +184 -0
  163. package/lib/util/dayjs.js +46 -0
  164. package/lib/util/index.js +307 -0
  165. package/lib/util/toTime.js +28 -0
  166. package/lib/year/YearPanel.js +219 -0
  167. package/package.json +2 -1
@@ -0,0 +1,106 @@
1
+ 'use strict';
2
+
3
+ exports.__esModule = true;
4
+ exports.commonMixinWrapper = exports.defaultProp = exports.propType = undefined;
5
+
6
+ var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
7
+
8
+ var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
9
+
10
+ var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');
11
+
12
+ var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
13
+
14
+ var _inherits2 = require('babel-runtime/helpers/inherits');
15
+
16
+ var _inherits3 = _interopRequireDefault(_inherits2);
17
+
18
+ var _propTypes = require('prop-types');
19
+
20
+ var _propTypes2 = _interopRequireDefault(_propTypes);
21
+
22
+ var _en_US = require('../locale/en_US');
23
+
24
+ var _en_US2 = _interopRequireDefault(_en_US);
25
+
26
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
27
+
28
+ function noop() {}
29
+
30
+ var propType = exports.propType = {
31
+ className: _propTypes2['default'].string,
32
+ locale: _propTypes2['default'].object,
33
+ style: _propTypes2['default'].object,
34
+ visible: _propTypes2['default'].bool,
35
+ onSelect: _propTypes2['default'].func,
36
+ prefixCls: _propTypes2['default'].string,
37
+ onChange: _propTypes2['default'].func,
38
+ onOk: _propTypes2['default'].func
39
+ };
40
+
41
+ var defaultProp = exports.defaultProp = {
42
+ locale: _en_US2['default'],
43
+ style: {},
44
+ visible: true,
45
+ prefixCls: 'rc-calendar',
46
+ className: '',
47
+ onSelect: noop,
48
+ onChange: noop,
49
+ onClear: noop,
50
+ renderFooter: function renderFooter() {
51
+ return null;
52
+ },
53
+ renderSidebar: function renderSidebar() {
54
+ return null;
55
+ }
56
+ };
57
+
58
+ var commonMixinWrapper = exports.commonMixinWrapper = function commonMixinWrapper(ComposeComponent) {
59
+ var _class, _temp2;
60
+
61
+ return _temp2 = _class = function (_ComposeComponent) {
62
+ (0, _inherits3['default'])(_class, _ComposeComponent);
63
+
64
+ function _class() {
65
+ var _temp, _this, _ret;
66
+
67
+ (0, _classCallCheck3['default'])(this, _class);
68
+
69
+ for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
70
+ args[_key] = arguments[_key];
71
+ }
72
+
73
+ return _ret = (_temp = (_this = (0, _possibleConstructorReturn3['default'])(this, _ComposeComponent.call.apply(_ComposeComponent, [this].concat(args))), _this), _this.getFormat = function () {
74
+ var format = _this.props.format;
75
+ var _this$props = _this.props,
76
+ locale = _this$props.locale,
77
+ timePicker = _this$props.timePicker;
78
+
79
+ if (!format) {
80
+ if (timePicker) {
81
+ format = locale.dateTimeFormat;
82
+ } else {
83
+ format = locale.dateFormat;
84
+ }
85
+ }
86
+ return format;
87
+ }, _this.focus = function () {
88
+ if (_this.focusElement) {
89
+ _this.focusElement.focus();
90
+ } else if (_this.rootInstance) {
91
+ _this.rootInstance.focus();
92
+ }
93
+ }, _this.saveFocusElement = function (focusElement) {
94
+ _this.focusElement = focusElement;
95
+ }, _this.saveRoot = function (root) {
96
+ _this.rootInstance = root;
97
+ }, _temp), (0, _possibleConstructorReturn3['default'])(_this, _ret);
98
+ }
99
+
100
+ _class.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps) {
101
+ return this.props.visible || nextProps.visible;
102
+ };
103
+
104
+ return _class;
105
+ }(ComposeComponent), _class.displayName = 'CommonMixinWrapper', _class.defaultProps = ComposeComponent.defaultProps, _class.getDerivedStateFromProps = ComposeComponent.getDerivedStateFromProps, _temp2;
106
+ };
@@ -0,0 +1,179 @@
1
+ 'use strict';
2
+
3
+ exports.__esModule = true;
4
+
5
+ var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
6
+
7
+ var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
8
+
9
+ var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');
10
+
11
+ var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
12
+
13
+ var _inherits2 = require('babel-runtime/helpers/inherits');
14
+
15
+ var _inherits3 = _interopRequireDefault(_inherits2);
16
+
17
+ var _react = require('react');
18
+
19
+ var _react2 = _interopRequireDefault(_react);
20
+
21
+ var _propTypes = require('prop-types');
22
+
23
+ var _propTypes2 = _interopRequireDefault(_propTypes);
24
+
25
+ var _reactLifecyclesCompat = require('react-lifecycles-compat');
26
+
27
+ var _MonthTable = require('./MonthTable');
28
+
29
+ var _MonthTable2 = _interopRequireDefault(_MonthTable);
30
+
31
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
32
+
33
+ function goYear(direction) {
34
+ this.props.changeYear(direction);
35
+ }
36
+
37
+ function noop() {}
38
+
39
+ var MonthPanel = function (_React$Component) {
40
+ (0, _inherits3['default'])(MonthPanel, _React$Component);
41
+
42
+ function MonthPanel(props) {
43
+ (0, _classCallCheck3['default'])(this, MonthPanel);
44
+
45
+ var _this = (0, _possibleConstructorReturn3['default'])(this, _React$Component.call(this, props));
46
+
47
+ _this.setAndSelectValue = function (value) {
48
+ _this.setValue(value);
49
+ _this.props.onSelect(value);
50
+ };
51
+
52
+ _this.setValue = function (value) {
53
+ if ('value' in _this.props) {
54
+ _this.setState({
55
+ value: value
56
+ });
57
+ }
58
+ };
59
+
60
+ _this.nextYear = goYear.bind(_this, 1);
61
+ _this.previousYear = goYear.bind(_this, -1);
62
+ _this.prefixCls = props.rootPrefixCls + '-month-panel';
63
+
64
+ _this.state = {
65
+ value: props.value || props.defaultValue
66
+ };
67
+ return _this;
68
+ }
69
+
70
+ MonthPanel.getDerivedStateFromProps = function getDerivedStateFromProps(props) {
71
+ var newState = {};
72
+
73
+ if ('value' in props) {
74
+ newState = {
75
+ value: props.value
76
+ };
77
+ }
78
+
79
+ return newState;
80
+ };
81
+
82
+ MonthPanel.prototype.render = function render() {
83
+ var props = this.props;
84
+ var value = this.state.value;
85
+ var locale = props.locale,
86
+ cellRender = props.cellRender,
87
+ contentRender = props.contentRender,
88
+ renderFooter = props.renderFooter;
89
+
90
+ var year = value.year();
91
+ var prefixCls = this.prefixCls;
92
+
93
+ var footer = renderFooter && renderFooter('month');
94
+
95
+ return _react2['default'].createElement(
96
+ 'div',
97
+ { className: prefixCls, style: props.style },
98
+ _react2['default'].createElement(
99
+ 'div',
100
+ null,
101
+ _react2['default'].createElement(
102
+ 'div',
103
+ { className: prefixCls + '-header' },
104
+ _react2['default'].createElement('a', {
105
+ className: prefixCls + '-prev-year-btn',
106
+ role: 'button',
107
+ onClick: this.previousYear,
108
+ title: locale.previousYear
109
+ }),
110
+ _react2['default'].createElement(
111
+ 'a',
112
+ {
113
+ className: prefixCls + '-year-select',
114
+ role: 'button',
115
+ onClick: props.onYearPanelShow,
116
+ title: locale.yearSelect
117
+ },
118
+ _react2['default'].createElement(
119
+ 'span',
120
+ { className: prefixCls + '-year-select-content' },
121
+ year
122
+ ),
123
+ _react2['default'].createElement(
124
+ 'span',
125
+ { className: prefixCls + '-year-select-arrow' },
126
+ 'x'
127
+ )
128
+ ),
129
+ _react2['default'].createElement('a', {
130
+ className: prefixCls + '-next-year-btn',
131
+ role: 'button',
132
+ onClick: this.nextYear,
133
+ title: locale.nextYear
134
+ })
135
+ ),
136
+ _react2['default'].createElement(
137
+ 'div',
138
+ { className: prefixCls + '-body' },
139
+ _react2['default'].createElement(_MonthTable2['default'], {
140
+ disabledDate: props.disabledDate,
141
+ onSelect: this.setAndSelectValue,
142
+ locale: locale,
143
+ value: value,
144
+ cellRender: cellRender,
145
+ contentRender: contentRender,
146
+ prefixCls: prefixCls
147
+ })
148
+ ),
149
+ footer && _react2['default'].createElement(
150
+ 'div',
151
+ { className: prefixCls + '-footer' },
152
+ footer
153
+ )
154
+ )
155
+ );
156
+ };
157
+
158
+ return MonthPanel;
159
+ }(_react2['default'].Component);
160
+
161
+ MonthPanel.propTypes = {
162
+ onChange: _propTypes2['default'].func,
163
+ disabledDate: _propTypes2['default'].func,
164
+ onSelect: _propTypes2['default'].func,
165
+ renderFooter: _propTypes2['default'].func,
166
+ rootPrefixCls: _propTypes2['default'].string,
167
+ value: _propTypes2['default'].object,
168
+ defaultValue: _propTypes2['default'].object
169
+ };
170
+ MonthPanel.defaultProps = {
171
+ onChange: noop,
172
+ onSelect: noop
173
+ };
174
+
175
+
176
+ (0, _reactLifecyclesCompat.polyfill)(MonthPanel);
177
+
178
+ exports['default'] = MonthPanel;
179
+ module.exports = exports['default'];
@@ -0,0 +1,181 @@
1
+ 'use strict';
2
+
3
+ exports.__esModule = true;
4
+
5
+ var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
6
+
7
+ var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
8
+
9
+ var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');
10
+
11
+ var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
12
+
13
+ var _inherits2 = require('babel-runtime/helpers/inherits');
14
+
15
+ var _inherits3 = _interopRequireDefault(_inherits2);
16
+
17
+ var _react = require('react');
18
+
19
+ var _react2 = _interopRequireDefault(_react);
20
+
21
+ var _propTypes = require('prop-types');
22
+
23
+ var _propTypes2 = _interopRequireDefault(_propTypes);
24
+
25
+ var _classnames = require('classnames');
26
+
27
+ var _classnames2 = _interopRequireDefault(_classnames);
28
+
29
+ var _index = require('../util/index');
30
+
31
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
32
+
33
+ var ROW = 4;
34
+ var COL = 3;
35
+
36
+ function chooseMonth(month) {
37
+ var next = this.state.value.clone();
38
+ next = next.month(month);
39
+ this.setAndSelectValue(next);
40
+ }
41
+
42
+ function noop() {}
43
+
44
+ var MonthTable = function (_Component) {
45
+ (0, _inherits3['default'])(MonthTable, _Component);
46
+
47
+ function MonthTable(props) {
48
+ (0, _classCallCheck3['default'])(this, MonthTable);
49
+
50
+ var _this = (0, _possibleConstructorReturn3['default'])(this, _Component.call(this, props));
51
+
52
+ _this.state = {
53
+ value: props.value
54
+ };
55
+ return _this;
56
+ }
57
+
58
+ MonthTable.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {
59
+ if ('value' in nextProps) {
60
+ this.setState({
61
+ value: nextProps.value
62
+ });
63
+ }
64
+ };
65
+
66
+ MonthTable.prototype.setAndSelectValue = function setAndSelectValue(value) {
67
+ this.setState({
68
+ value: value
69
+ });
70
+ this.props.onSelect(value);
71
+ };
72
+
73
+ MonthTable.prototype.months = function months() {
74
+ var value = this.state.value;
75
+ var current = value.clone();
76
+ var months = [];
77
+ var index = 0;
78
+ for (var rowIndex = 0; rowIndex < ROW; rowIndex++) {
79
+ months[rowIndex] = [];
80
+ for (var colIndex = 0; colIndex < COL; colIndex++) {
81
+ current = current.month(index);
82
+ var content = (0, _index.getMonthName)(current);
83
+ months[rowIndex][colIndex] = {
84
+ value: index,
85
+ content: content,
86
+ title: content
87
+ };
88
+ index++;
89
+ }
90
+ }
91
+ return months;
92
+ };
93
+
94
+ MonthTable.prototype.render = function render() {
95
+ var _this2 = this;
96
+
97
+ var props = this.props;
98
+ var value = this.state.value;
99
+ var today = (0, _index.getTodayTime)(value);
100
+ var months = this.months();
101
+ var currentMonth = value.month();
102
+ var prefixCls = props.prefixCls,
103
+ locale = props.locale,
104
+ contentRender = props.contentRender,
105
+ cellRender = props.cellRender;
106
+
107
+ var monthsEls = months.map(function (month, index) {
108
+ var tds = month.map(function (monthData) {
109
+ var _classNameMap;
110
+
111
+ var disabled = false;
112
+ if (props.disabledDate) {
113
+ var testValue = value.clone();
114
+ testValue = testValue.month(monthData.value);
115
+ disabled = props.disabledDate(testValue);
116
+ }
117
+ var classNameMap = (_classNameMap = {}, _classNameMap[prefixCls + '-cell'] = 1, _classNameMap[prefixCls + '-cell-disabled'] = disabled, _classNameMap[prefixCls + '-selected-cell'] = monthData.value === currentMonth, _classNameMap[prefixCls + '-current-cell'] = today.year() === value.year() && monthData.value === today.month(), _classNameMap);
118
+ var cellEl = void 0;
119
+ if (cellRender) {
120
+ var currentValue = value.clone();
121
+ currentValue = currentValue.month(monthData.value);
122
+ cellEl = cellRender(currentValue, locale);
123
+ } else {
124
+ var content = void 0;
125
+ if (contentRender) {
126
+ var _currentValue = value.clone();
127
+ _currentValue = _currentValue.month(monthData.value);
128
+ content = contentRender(_currentValue, locale);
129
+ } else {
130
+ content = monthData.content;
131
+ }
132
+ cellEl = _react2['default'].createElement(
133
+ 'a',
134
+ { className: prefixCls + '-month' },
135
+ content
136
+ );
137
+ }
138
+ return _react2['default'].createElement(
139
+ 'td',
140
+ {
141
+ role: 'gridcell',
142
+ key: monthData.value,
143
+ onClick: disabled ? null : chooseMonth.bind(_this2, monthData.value),
144
+ title: monthData.title,
145
+ className: (0, _classnames2['default'])(classNameMap)
146
+ },
147
+ cellEl
148
+ );
149
+ });
150
+ return _react2['default'].createElement(
151
+ 'tr',
152
+ { key: index, role: 'row' },
153
+ tds
154
+ );
155
+ });
156
+
157
+ return _react2['default'].createElement(
158
+ 'table',
159
+ { className: prefixCls + '-table', cellSpacing: '0', role: 'grid' },
160
+ _react2['default'].createElement(
161
+ 'tbody',
162
+ { className: prefixCls + '-tbody' },
163
+ monthsEls
164
+ )
165
+ );
166
+ };
167
+
168
+ return MonthTable;
169
+ }(_react.Component);
170
+
171
+ MonthTable.defaultProps = {
172
+ onSelect: noop
173
+ };
174
+ MonthTable.propTypes = {
175
+ onSelect: _propTypes2['default'].func,
176
+ cellRender: _propTypes2['default'].func,
177
+ prefixCls: _propTypes2['default'].string,
178
+ value: _propTypes2['default'].object
179
+ };
180
+ exports['default'] = MonthTable;
181
+ module.exports = exports['default'];
@@ -0,0 +1,39 @@
1
+ 'use strict';
2
+
3
+ exports.__esModule = true;
4
+ var autoAdjustOverflow = {
5
+ adjustX: 1,
6
+ adjustY: 1
7
+ };
8
+
9
+ var targetOffset = [0, 0];
10
+
11
+ var placements = {
12
+ bottomLeft: {
13
+ points: ['tl', 'tl'],
14
+ overflow: autoAdjustOverflow,
15
+ offset: [0, -3],
16
+ targetOffset: targetOffset
17
+ },
18
+ bottomRight: {
19
+ points: ['tr', 'tr'],
20
+ overflow: autoAdjustOverflow,
21
+ offset: [0, -3],
22
+ targetOffset: targetOffset
23
+ },
24
+ topRight: {
25
+ points: ['br', 'br'],
26
+ overflow: autoAdjustOverflow,
27
+ offset: [0, 3],
28
+ targetOffset: targetOffset
29
+ },
30
+ topLeft: {
31
+ points: ['bl', 'bl'],
32
+ overflow: autoAdjustOverflow,
33
+ offset: [0, 3],
34
+ targetOffset: targetOffset
35
+ }
36
+ };
37
+
38
+ exports['default'] = placements;
39
+ module.exports = exports['default'];
@@ -0,0 +1,184 @@
1
+ 'use strict';
2
+
3
+ exports.__esModule = true;
4
+
5
+ var _extends2 = require('babel-runtime/helpers/extends');
6
+
7
+ var _extends3 = _interopRequireDefault(_extends2);
8
+
9
+ var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
10
+
11
+ var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
12
+
13
+ var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');
14
+
15
+ var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
16
+
17
+ var _inherits2 = require('babel-runtime/helpers/inherits');
18
+
19
+ var _inherits3 = _interopRequireDefault(_inherits2);
20
+
21
+ var _react = require('react');
22
+
23
+ var _react2 = _interopRequireDefault(_react);
24
+
25
+ var _propTypes = require('prop-types');
26
+
27
+ var _propTypes2 = _interopRequireDefault(_propTypes);
28
+
29
+ var _CalendarHeader = require('../calendar/CalendarHeader');
30
+
31
+ var _CalendarHeader2 = _interopRequireDefault(_CalendarHeader);
32
+
33
+ var _DateTable = require('../date/DateTable');
34
+
35
+ var _DateTable2 = _interopRequireDefault(_DateTable);
36
+
37
+ var _DateInput = require('../date/DateInput');
38
+
39
+ var _DateInput2 = _interopRequireDefault(_DateInput);
40
+
41
+ var _index = require('../util/index');
42
+
43
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
44
+
45
+ var CalendarPart = function (_React$Component) {
46
+ (0, _inherits3['default'])(CalendarPart, _React$Component);
47
+
48
+ function CalendarPart() {
49
+ (0, _classCallCheck3['default'])(this, CalendarPart);
50
+ return (0, _possibleConstructorReturn3['default'])(this, _React$Component.apply(this, arguments));
51
+ }
52
+
53
+ CalendarPart.prototype.render = function render() {
54
+ var props = this.props;
55
+ var prefixCls = props.prefixCls,
56
+ value = props.value,
57
+ hoverValue = props.hoverValue,
58
+ selectedValue = props.selectedValue,
59
+ mode = props.mode,
60
+ direction = props.direction,
61
+ locale = props.locale,
62
+ format = props.format,
63
+ placeholder = props.placeholder,
64
+ disabledDate = props.disabledDate,
65
+ timePicker = props.timePicker,
66
+ disabledTime = props.disabledTime,
67
+ timePickerDisabledTime = props.timePickerDisabledTime,
68
+ showTimePicker = props.showTimePicker,
69
+ onInputChange = props.onInputChange,
70
+ onInputSelect = props.onInputSelect,
71
+ enablePrev = props.enablePrev,
72
+ enableNext = props.enableNext,
73
+ clearIcon = props.clearIcon,
74
+ showClear = props.showClear,
75
+ inputMode = props.inputMode;
76
+
77
+ var shouldShowTimePicker = showTimePicker && timePicker;
78
+ var disabledTimeConfig = shouldShowTimePicker && disabledTime ? (0, _index.getTimeConfig)(selectedValue, disabledTime) : null;
79
+ var rangeClassName = prefixCls + '-range';
80
+ var newProps = {
81
+ locale: locale,
82
+ value: value,
83
+ prefixCls: prefixCls,
84
+ showTimePicker: showTimePicker
85
+ };
86
+ var index = direction === 'left' ? 0 : 1;
87
+ var timePickerEle = shouldShowTimePicker && _react2['default'].cloneElement(timePicker, (0, _extends3['default'])({
88
+ showHour: true,
89
+ showMinute: true,
90
+ showSecond: true
91
+ }, timePicker.props, disabledTimeConfig, timePickerDisabledTime, {
92
+ onChange: onInputChange,
93
+ defaultOpenValue: value,
94
+ value: selectedValue[index]
95
+ }));
96
+
97
+ var dateInputElement = props.showDateInput && _react2['default'].createElement(_DateInput2['default'], {
98
+ format: format,
99
+ locale: locale,
100
+ prefixCls: prefixCls,
101
+ timePicker: timePicker,
102
+ disabledDate: disabledDate,
103
+ placeholder: placeholder,
104
+ disabledTime: disabledTime,
105
+ value: value,
106
+ showClear: showClear || false,
107
+ selectedValue: selectedValue[index],
108
+ onChange: onInputChange,
109
+ onSelect: onInputSelect,
110
+ clearIcon: clearIcon,
111
+ inputMode: inputMode
112
+ });
113
+
114
+ return _react2['default'].createElement(
115
+ 'div',
116
+ {
117
+ className: rangeClassName + '-part ' + rangeClassName + '-' + direction
118
+ },
119
+ dateInputElement,
120
+ _react2['default'].createElement(
121
+ 'div',
122
+ { style: { outline: 'none' } },
123
+ _react2['default'].createElement(_CalendarHeader2['default'], (0, _extends3['default'])({}, newProps, {
124
+ mode: mode,
125
+ enableNext: enableNext,
126
+ enablePrev: enablePrev,
127
+ onValueChange: props.onValueChange,
128
+ onPanelChange: props.onPanelChange,
129
+ disabledMonth: props.disabledMonth
130
+ })),
131
+ showTimePicker ? _react2['default'].createElement(
132
+ 'div',
133
+ { className: prefixCls + '-time-picker' },
134
+ _react2['default'].createElement(
135
+ 'div',
136
+ { className: prefixCls + '-time-picker-panel' },
137
+ timePickerEle
138
+ )
139
+ ) : null,
140
+ _react2['default'].createElement(
141
+ 'div',
142
+ { className: prefixCls + '-body' },
143
+ _react2['default'].createElement(_DateTable2['default'], (0, _extends3['default'])({}, newProps, {
144
+ hoverValue: hoverValue,
145
+ selectedValue: selectedValue,
146
+ dateRender: props.dateRender,
147
+ onSelect: props.onSelect,
148
+ onDayHover: props.onDayHover,
149
+ disabledDate: disabledDate,
150
+ showWeekNumber: props.showWeekNumber
151
+ }))
152
+ )
153
+ )
154
+ );
155
+ };
156
+
157
+ return CalendarPart;
158
+ }(_react2['default'].Component);
159
+
160
+ CalendarPart.propTypes = {
161
+ prefixCls: _propTypes2['default'].string,
162
+ value: _propTypes2['default'].any,
163
+ hoverValue: _propTypes2['default'].any,
164
+ selectedValue: _propTypes2['default'].any,
165
+ direction: _propTypes2['default'].any,
166
+ locale: _propTypes2['default'].any,
167
+ showDateInput: _propTypes2['default'].bool,
168
+ showTimePicker: _propTypes2['default'].bool,
169
+ format: _propTypes2['default'].any,
170
+ placeholder: _propTypes2['default'].any,
171
+ disabledDate: _propTypes2['default'].any,
172
+ timePicker: _propTypes2['default'].any,
173
+ disabledTime: _propTypes2['default'].any,
174
+ onInputChange: _propTypes2['default'].func,
175
+ onInputSelect: _propTypes2['default'].func,
176
+ timePickerDisabledTime: _propTypes2['default'].object,
177
+ enableNext: _propTypes2['default'].any,
178
+ enablePrev: _propTypes2['default'].any,
179
+ clearIcon: _propTypes2['default'].node,
180
+ dateRender: _propTypes2['default'].func,
181
+ inputMode: _propTypes2['default'].string
182
+ };
183
+ exports['default'] = CalendarPart;
184
+ module.exports = exports['default'];