@titaui/pc 1.16.42 → 1.16.43-beta.10

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 (66) hide show
  1. package/lib/components/communication/index.js +98 -54
  2. package/lib/components/date-picker/BodyItem.js +3 -3
  3. package/lib/components/date-picker/CalendarHeader.js +3 -3
  4. package/lib/components/delete-confirm-pop/ConfirmPop.js +3 -3
  5. package/lib/components/eReport/eReportLists/reportList.js +3 -3
  6. package/lib/components/emotions-selector/selector-pop.js +3 -3
  7. package/lib/components/ereport-list/index.js +3 -3
  8. package/lib/components/mblog/components/MblogAction.js +3 -3
  9. package/lib/components/mblog/components/MblogContent.js +2 -0
  10. package/lib/components/mblog/index.js +3 -1
  11. package/lib/components/okr-detail/components/okr-tree/tree-node/kr-node/kr-score-editor/edit-pop.js +3 -3
  12. package/lib/components/okr-review/components/confirm-pop/ConfirmPop.js +3 -3
  13. package/lib/components/picker/components/panels/date-panel/date-body.js +27 -101
  14. package/lib/components/picker/components/panels/date-panel/date-head.js +8 -16
  15. package/lib/components/picker/components/panels/date-panel/date-rows.js +145 -0
  16. package/lib/components/picker/components/panels/date-panel/index.css +26 -7
  17. package/lib/components/picker/components/panels/date-panel/index.js +46 -11
  18. package/lib/components/picker/components/panels/date-panel/useRowsData.js +77 -0
  19. package/lib/components/picker/components/panels/month-panel/index.css +19 -9
  20. package/lib/components/picker/components/panels/month-panel/month-body.js +14 -56
  21. package/lib/components/picker/components/panels/month-panel/month-head.js +19 -2
  22. package/lib/components/picker/components/panels/month-panel/useRowsData.js +61 -0
  23. package/lib/components/picker/components/panels/panel-head/index.js +4 -0
  24. package/lib/components/picker/components/panels/week-panel/index.css +1 -1
  25. package/lib/components/picker/components/panels/year-panel/index.css +28 -6
  26. package/lib/components/picker/components/panels/year-panel/useRowsData.js +63 -0
  27. package/lib/components/picker/components/panels/year-panel/year-body.js +19 -48
  28. package/lib/components/picker/components/panels/year-panel/year-head.js +20 -1
  29. package/lib/components/picker/components/picker-trigger/index.js +1 -1
  30. package/lib/components/picker/context.js +19 -9
  31. package/lib/components/picker/index.css +16 -2
  32. package/lib/components/picker/picker-panels.js +14 -26
  33. package/lib/components/picker/picker.js +27 -28
  34. package/lib/components/picker/range-picker/components/picker-trigger/index.js +3 -3
  35. package/lib/components/picker/range-picker/components/select-input/index.js +3 -9
  36. package/lib/components/picker/range-picker/index.js +13 -18
  37. package/lib/components/picker/utils.js +11 -5
  38. package/lib/components/range-selector-pop/RangeSelectorPop.js +3 -3
  39. package/lib/components/rich-editor/models/schema.js +6 -6
  40. package/lib/components/rich-editor/plugins/block/block-quote/index.js +8 -8
  41. package/lib/components/rich-editor/plugins/block/heading/index.js +8 -8
  42. package/lib/components/rich-editor/plugins/block/lists/index.js +14 -14
  43. package/lib/components/rich-editor/plugins/block/paragraph/index.js +5 -5
  44. package/lib/components/rich-editor/plugins/core/index.js +4 -4
  45. package/lib/components/rich-editor/plugins/extension/alignment/index.js +5 -5
  46. package/lib/components/rich-editor/plugins/extension/placeholder/index.js +4 -4
  47. package/lib/components/rich-editor/plugins/inline/color/index.js +11 -11
  48. package/lib/components/rich-editor/plugins/inline/delete-line/index.js +8 -8
  49. package/lib/components/rich-editor/plugins/inline/em/index.js +5 -5
  50. package/lib/components/rich-editor/plugins/inline/link/index.js +8 -8
  51. package/lib/components/rich-editor/plugins/inline/strong/index.js +8 -8
  52. package/lib/components/rich-editor/plugins/inline/under-line/index.js +8 -8
  53. package/lib/components/rich-editor/react/uiProvider.js +3 -3
  54. package/lib/components/rich-editor/ui/Popup/index.js +3 -3
  55. package/lib/components/select/Option.js +3 -3
  56. package/lib/components/tita-chart/errorBoundary/index.js +3 -3
  57. package/lib/components-v1/animate/AnimateChild.js +3 -3
  58. package/lib/components-v1/avatar/index.js +3 -3
  59. package/lib/components-v1/dropDownSelector/StatelessDropdown.js +3 -3
  60. package/lib/components-v1/progress/CircleProgress.js +3 -3
  61. package/lib/components-v1/select/Option.js +3 -3
  62. package/lib/components-v1/userSelector/UserSelectorPop.js +3 -3
  63. package/lib/components-v1/userSelector/components/MultiMode/index.js +3 -3
  64. package/lib/components-v1/userSelector/components/UserItem.js +3 -3
  65. package/lib/utils/editor.js +7 -4
  66. package/package.json +2 -1
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _react = require("react");
9
+
10
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
11
+
12
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
13
+
14
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
15
+
16
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
17
+
18
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
19
+
20
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
21
+
22
+ var MONTH_ROW_NUM = 4;
23
+ var MONTH_COL_NUM = 3;
24
+
25
+ function useRowsData() {
26
+ var _useState = (0, _react.useState)([]),
27
+ _useState2 = _slicedToArray(_useState, 2),
28
+ rowsData = _useState2[0],
29
+ setRowsData = _useState2[1];
30
+
31
+ var getCells = function getCells(baseMonth) {
32
+ var cols = [];
33
+
34
+ for (var col = 0; col < MONTH_COL_NUM; col += 1) {
35
+ var month = col + baseMonth;
36
+ cols.push(month);
37
+ }
38
+
39
+ return cols;
40
+ };
41
+
42
+ var getRows = function getRows() {
43
+ var rows = [];
44
+ var baseMonth = 0;
45
+
46
+ for (var row = 0; row < MONTH_ROW_NUM; row += 1) {
47
+ rows.push(getCells(baseMonth));
48
+ baseMonth += MONTH_COL_NUM;
49
+ }
50
+
51
+ return rows;
52
+ };
53
+
54
+ (0, _react.useEffect)(function () {
55
+ setRowsData(getRows());
56
+ }, []);
57
+ return rowsData;
58
+ }
59
+
60
+ var _default = useRowsData;
61
+ exports["default"] = _default;
@@ -21,6 +21,8 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
21
21
 
22
22
  var PanelHead = function PanelHead(props) {
23
23
  var children = props.children,
24
+ prevBtnDisabled = props.prevBtnDisabled,
25
+ nextBtnDisabled = props.nextBtnDisabled,
24
26
  onPrev = props.onPrev,
25
27
  onNext = props.onNext;
26
28
  return /*#__PURE__*/React.createElement("div", {
@@ -30,6 +32,7 @@ var PanelHead = function PanelHead(props) {
30
32
  // eslint-disable-next-line jsx-a11y/control-has-associated-label
31
33
  React.createElement("button", {
32
34
  className: (0, _classnames["default"])("".concat(_utils.PickerHeadClass, "-btn__prev"), "tu-icon-left"),
35
+ disabled: prevBtnDisabled,
33
36
  onClick: onPrev,
34
37
  type: "button"
35
38
  }), /*#__PURE__*/React.createElement("div", {
@@ -39,6 +42,7 @@ var PanelHead = function PanelHead(props) {
39
42
  // eslint-disable-next-line jsx-a11y/control-has-associated-label
40
43
  React.createElement("button", {
41
44
  className: (0, _classnames["default"])("".concat(_utils.PickerHeadClass, "-btn__next"), "tu-icon-APP-xi"),
45
+ disabled: nextBtnDisabled,
42
46
  onClick: onNext,
43
47
  type: "button"
44
48
  }));
@@ -1,5 +1,5 @@
1
1
  .tita-ui__picker-panel__date {
2
- max-height: 252px;
2
+ max-height: 261px;
3
3
  overflow: hidden;
4
4
  }
5
5
 
@@ -1,28 +1,50 @@
1
- .tita-ui__picker-panel__year .tita-ui__picker-head {
2
- margin-bottom: 6px;
1
+ .tita-ui__picker-panel__year {
2
+ display: grid;
3
+ grid-template: auto 1fr / 100%;
4
+ gap: 17px;
3
5
  }
4
6
 
5
7
  .tita-ui__picker-panel__year .tita-ui__picker-head__view {
6
8
  text-align: center;
7
9
  }
8
10
 
11
+ .tita-ui__picker-panel__year .tita-ui__picker-body {
12
+ height: 178px;
13
+ display: grid;
14
+ grid-template: repeat(4, 1fr)/repeat(3, 1fr);
15
+ gap: 22px 42px;
16
+ }
17
+
9
18
  .tita-ui__picker-panel__year .tita-ui__picker-cell {
10
19
  width: 52px;
11
20
  height: 28px;
12
- padding: 11px 21px;
21
+ padding: 5px 0;
22
+ border-radius: 8px;
23
+ transition: all .3s ease;
24
+ background-color: transparent;
25
+ border: none;
26
+ box-sizing: border-box;
13
27
  }
14
28
 
15
- .tita-ui__picker-panel__year .tita-ui__picker-cell--this-year .tita-ui__picker-cell__inner, .tita-ui__picker-panel__year .tita-ui__picker-cell:hover .tita-ui__picker-cell__inner {
29
+ .tita-ui__picker-panel__year .tita-ui__picker-cell--this-year, .tita-ui__picker-panel__year .tita-ui__picker-cell:hover {
16
30
  background-color: #f0f4fa;
17
31
  color: #2879ff;
18
32
  }
19
33
 
20
- .tita-ui__picker-panel__year .tita-ui__picker-cell--selected .tita-ui__picker-cell__inner {
34
+ .tita-ui__picker-panel__year .tita-ui__picker-cell--in-view {
35
+ color: #141C28;
36
+ }
37
+
38
+ .tita-ui__picker-panel__year .tita-ui__picker-cell--selected {
21
39
  background-color: #2879ff;
22
40
  color: #ffffff;
23
41
  }
24
42
 
25
- .tita-ui__picker-panel__year .tita-ui__picker-cell--selected:hover .tita-ui__picker-cell__inner {
43
+ .tita-ui__picker-panel__year .tita-ui__picker-cell--selected:hover {
26
44
  background-color: #5c8eff;
27
45
  color: #ffffff;
28
46
  }
47
+
48
+ .tita-ui__picker-panel__year .tita-ui__picker-cell:disabled {
49
+ display: none;
50
+ }
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _react = require("react");
9
+
10
+ var _utils = require("../../../utils");
11
+
12
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
13
+
14
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
15
+
16
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
17
+
18
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
19
+
20
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
21
+
22
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
23
+
24
+ var YEAR_ROW_NUM = 4;
25
+ var YEAR_COL_NUM = 3;
26
+
27
+ function useRowsData(startYear) {
28
+ var _useState = (0, _react.useState)([]),
29
+ _useState2 = _slicedToArray(_useState, 2),
30
+ rowsData = _useState2[0],
31
+ setRowsData = _useState2[1];
32
+
33
+ var getCells = function getCells(baseYear) {
34
+ var cols = [];
35
+
36
+ for (var col = 0; col < YEAR_COL_NUM; col += 1) {
37
+ var year = baseYear + col;
38
+ cols.push(year);
39
+ }
40
+
41
+ return cols;
42
+ };
43
+
44
+ var getRows = function getRows() {
45
+ var baseYear = startYear - (YEAR_COL_NUM * YEAR_ROW_NUM - _utils.YEAR_DECADE_COUNT) / 2;
46
+ var rows = [];
47
+
48
+ for (var row = 0; row < YEAR_ROW_NUM; row += 1) {
49
+ rows.push(getCells(baseYear));
50
+ baseYear += YEAR_COL_NUM;
51
+ }
52
+
53
+ return rows;
54
+ };
55
+
56
+ (0, _react.useEffect)(function () {
57
+ setRowsData(getRows());
58
+ }, [startYear]);
59
+ return rowsData;
60
+ }
61
+
62
+ var _default = useRowsData;
63
+ exports["default"] = _default;
@@ -17,6 +17,8 @@ var _utils = require("../../../utils");
17
17
 
18
18
  var _context = _interopRequireDefault(require("../../../context"));
19
19
 
20
+ var _useRowsData = _interopRequireDefault(require("./useRowsData"));
21
+
20
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
21
23
 
22
24
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -25,9 +27,6 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
25
27
 
26
28
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
27
29
 
28
- var YEAR_ROW_NUM = 4;
29
- var YEAR_COL_NUM = 3;
30
-
31
30
  var YearPanelBody = function YearPanelBody(props) {
32
31
  var _props$viewDate = props.viewDate,
33
32
  viewDate = _props$viewDate === void 0 ? (0, _moment["default"])() : _props$viewDate,
@@ -37,62 +36,34 @@ var YearPanelBody = function YearPanelBody(props) {
37
36
 
38
37
  var _useContext = (0, _react.useContext)(_context["default"]),
39
38
  format = _useContext.format,
40
- value = _useContext.value,
39
+ max = _useContext.max,
40
+ min = _useContext.min,
41
41
  settingType = _useContext.settingType;
42
42
 
43
+ var maxYear = (0, _moment["default"])(max).year();
44
+ var minYear = (0, _moment["default"])(min).year();
45
+ var rowsData = (0, _useRowsData["default"])(startYear);
43
46
  var date = (0, _utils.getPickerDateBySettingType)({
44
47
  format: format,
45
48
  settingType: settingType,
46
- values: value
49
+ values: [viewDate]
47
50
  });
48
-
49
- var getCells = function getCells(baseYear) {
50
- var cols = [];
51
-
52
- var _loop = function _loop(col) {
51
+ return /*#__PURE__*/_react["default"].createElement("div", {
52
+ className: (0, _classnames["default"])(_utils.PickerBodyClass)
53
+ }, rowsData.map(function (row) {
54
+ return row.map(function (year) {
53
55
  var _classNames;
54
56
 
55
- var year = baseYear + col;
56
- cols.push( /*#__PURE__*/_react["default"].createElement("td", {
57
+ return /*#__PURE__*/_react["default"].createElement("button", {
57
58
  className: (0, _classnames["default"])(_utils.PickerCellClass, (_classNames = {}, _defineProperty(_classNames, "".concat(_utils.PickerCellClass, "--this-year"), year === (0, _moment["default"])().year()), _defineProperty(_classNames, "".concat(_utils.PickerCellClass, "--in-view"), year >= startYear && year <= endYear), _defineProperty(_classNames, "".concat(_utils.PickerCellClass, "--selected"), year === (0, _moment["default"])(date).year()), _classNames)),
58
- key: year
59
- }, /*#__PURE__*/_react["default"].createElement("div", {
60
- className: (0, _classnames["default"])("".concat(_utils.PickerCellClass, "__inner")),
61
- title: year,
59
+ disabled: year < minYear || year > maxYear,
60
+ key: year,
62
61
  onClick: function onClick() {
63
- if (onSelect) {
64
- onSelect((0, _moment["default"])(viewDate).year(year), 'year');
65
- }
62
+ return onSelect === null || onSelect === void 0 ? void 0 : onSelect((0, _moment["default"])(viewDate).year(year), 'year');
66
63
  }
67
- }, year)));
68
- };
69
-
70
- for (var col = 0; col < YEAR_COL_NUM; col += 1) {
71
- _loop(col);
72
- }
73
-
74
- return cols;
75
- };
76
-
77
- var getRows = function getRows() {
78
- var baseYear = startYear - (YEAR_COL_NUM * YEAR_ROW_NUM - _utils.YEAR_DECADE_COUNT) / 2;
79
- var rows = [];
80
-
81
- for (var row = 0; row < YEAR_ROW_NUM; row += 1) {
82
- rows.push( /*#__PURE__*/_react["default"].createElement("tr", {
83
- key: row
84
- }, getCells(baseYear)));
85
- baseYear += YEAR_COL_NUM;
86
- }
87
-
88
- return rows;
89
- };
90
-
91
- return /*#__PURE__*/_react["default"].createElement("div", {
92
- className: (0, _classnames["default"])(_utils.PickerBodyClass)
93
- }, /*#__PURE__*/_react["default"].createElement("table", {
94
- className: (0, _classnames["default"])("".concat(_utils.PickerClass, "-content"))
95
- }, /*#__PURE__*/_react["default"].createElement("tbody", null, getRows())));
64
+ }, year);
65
+ });
66
+ }));
96
67
  };
97
68
 
98
69
  var _default = YearPanelBody;
@@ -1,20 +1,30 @@
1
1
  "use strict";
2
2
 
3
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
6
8
  exports["default"] = void 0;
7
9
 
8
- var _react = _interopRequireDefault(require("react"));
10
+ var _react = _interopRequireWildcard(require("react"));
9
11
 
10
12
  var _classnames = _interopRequireDefault(require("classnames"));
11
13
 
14
+ var _moment = _interopRequireDefault(require("moment"));
15
+
16
+ var _context = _interopRequireDefault(require("../../../context"));
17
+
12
18
  var _utils = require("../../../utils");
13
19
 
14
20
  var _panelHead = _interopRequireDefault(require("../panel-head"));
15
21
 
16
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
17
23
 
24
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
25
+
26
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
27
+
18
28
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
19
29
 
20
30
  var YearPanelHead = function YearPanelHead(props) {
@@ -22,7 +32,16 @@ var YearPanelHead = function YearPanelHead(props) {
22
32
  onNextDecadeYear = props.onNextDecadeYear,
23
33
  startYear = props.startYear,
24
34
  endYear = props.endYear;
35
+
36
+ var _useContext = (0, _react.useContext)(_context["default"]),
37
+ max = _useContext.max,
38
+ min = _useContext.min;
39
+
40
+ var maxYear = (0, _moment["default"])(max).year();
41
+ var minYear = (0, _moment["default"])(min).year();
25
42
  return /*#__PURE__*/_react["default"].createElement(_panelHead["default"], _extends({}, props, {
43
+ prevBtnDisabled: startYear <= minYear,
44
+ nextBtnDisabled: endYear >= maxYear,
26
45
  onPrev: onPrevDecadeYear,
27
46
  onNext: onNextDecadeYear
28
47
  }), /*#__PURE__*/_react["default"].createElement("button", {
@@ -49,7 +49,7 @@ var PickerTrigger = function PickerTrigger(props) {
49
49
 
50
50
  switch (picker) {
51
51
  case 'date':
52
- currFormat = 'YYYY/MM/DD';
52
+ currFormat = _utils.PickerFormat;
53
53
  break;
54
54
 
55
55
  case 'month':
@@ -9,21 +9,31 @@ var _react = _interopRequireDefault(require("react"));
9
9
 
10
10
  var _moment = _interopRequireDefault(require("moment"));
11
11
 
12
+ var _utils = require("./utils");
13
+
12
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
13
15
 
14
- var PickerContext = /*#__PURE__*/_react["default"].createContext({
15
- format: 'YYYY/MM/DD',
16
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
17
+
18
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
19
+
20
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
21
+
22
+ var DefaultContextData = {
23
+ format: _utils.PickerFormat,
24
+ max: _utils.PickerMaxDate,
25
+ min: _utils.PickerMinDate,
16
26
  picker: 'date',
17
- settingType: 'startDate',
27
+ settingType: 'startDate'
28
+ };
29
+
30
+ var PickerContext = /*#__PURE__*/_react["default"].createContext(_objectSpread(_objectSpread({}, DefaultContextData), {}, {
18
31
  value: [(0, _moment["default"])()]
19
- });
32
+ }));
20
33
 
21
- var RangePickerContext = /*#__PURE__*/_react["default"].createContext({
22
- format: 'YYYY/MM/DD',
23
- picker: 'date',
24
- settingType: 'startDate',
34
+ var RangePickerContext = /*#__PURE__*/_react["default"].createContext(_objectSpread(_objectSpread({}, DefaultContextData), {}, {
25
35
  values: [(0, _moment["default"])(), (0, _moment["default"])()]
26
- });
36
+ }));
27
37
 
28
38
  exports.RangePickerContext = RangePickerContext;
29
39
  var _default = PickerContext;
@@ -1,6 +1,6 @@
1
1
  .tita-ui__picker {
2
2
  width: 276px;
3
- max-height: 282px;
3
+ max-height: 292px;
4
4
  padding: 15px 18px 16px;
5
5
  border-radius: 16px;
6
6
  box-shadow: 0px 8px 24px 0px rgba(127, 145, 180, 0.16);
@@ -33,10 +33,14 @@
33
33
  }
34
34
 
35
35
  .tita-ui__picker-cell--selected .tita-ui__picker-cell__inner {
36
- background-color: #2879ff;
36
+ background-color: #5c8eff;
37
37
  color: #ffffff;
38
38
  }
39
39
 
40
+ .tita-ui__picker-cell--selected.tita-ui__picker-cell--in-view .tita-ui__picker-cell__inner {
41
+ background-color: #2879ff;
42
+ }
43
+
40
44
  .tita-ui__picker-cell--selected:hover .tita-ui__picker-cell__inner {
41
45
  background-color: #5c8eff;
42
46
  color: #ffffff;
@@ -132,6 +136,16 @@
132
136
  line-height: 18px;
133
137
  }
134
138
 
139
+ .tita-ui__picker-head-btn__prev:disabled, .tita-ui__picker-head-btn__next:disabled {
140
+ color: #6f7886;
141
+ cursor: not-allowed;
142
+ }
143
+
144
+ .tita-ui__picker-head-btn__prev:disabled:hover, .tita-ui__picker-head-btn__next:disabled:hover {
145
+ background-color: transparent;
146
+ color: #6f7886;
147
+ }
148
+
135
149
  .tita-ui__picker-head-btn__year, .tita-ui__picker-head-btn__month {
136
150
  padding: 1px 2px;
137
151
  font-size: 14px;
@@ -9,8 +9,6 @@ exports["default"] = void 0;
9
9
 
10
10
  var _react = _interopRequireWildcard(require("react"));
11
11
 
12
- var _moment = _interopRequireDefault(require("moment"));
13
-
14
12
  var _datePanel = _interopRequireDefault(require("./components/panels/date-panel"));
15
13
 
16
14
  var _monthPanel = _interopRequireDefault(require("./components/panels/month-panel"));
@@ -44,16 +42,15 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
44
42
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
45
43
 
46
44
  var PickerPanels = function PickerPanels(props) {
47
- var _props$picker = props.picker,
48
- picker = _props$picker === void 0 ? 'date' : _props$picker,
49
- onChange = props.onChange,
50
- onClose = props.onClose,
51
- settingType = props.settingType,
52
- _props$value = props.value,
53
- value = _props$value === void 0 ? [(0, _moment["default"])()] : _props$value;
45
+ var onChange = props.onChange,
46
+ onClose = props.onClose;
54
47
 
55
48
  var _useContext = (0, _react.useContext)(_context["default"]),
56
- format = _useContext.format;
49
+ format = _useContext.format,
50
+ _useContext$picker = _useContext.picker,
51
+ picker = _useContext$picker === void 0 ? 'date' : _useContext$picker,
52
+ settingType = _useContext.settingType,
53
+ value = _useContext.value;
57
54
 
58
55
  var _useState = (0, _react.useState)(picker),
59
56
  _useState2 = _slicedToArray(_useState, 2),
@@ -77,6 +74,7 @@ var PickerPanels = function PickerPanels(props) {
77
74
  };
78
75
 
79
76
  var onPanelChange = function onPanelChange(viewDate, type) {
77
+ onViewDateChange(viewDate);
80
78
  setPickerMode(function () {
81
79
  return type;
82
80
  });
@@ -89,17 +87,12 @@ var PickerPanels = function PickerPanels(props) {
89
87
  };
90
88
 
91
89
  var onDateSelect = function onDateSelect(date) {
92
- if (onChange) {
93
- onChange([date]);
94
- }
95
-
90
+ onChange === null || onChange === void 0 ? void 0 : onChange([date]);
96
91
  onCloseHandler();
97
92
  };
98
93
 
99
94
  var onMonthSelect = function onMonthSelect(date) {
100
- setViewDate(function () {
101
- return [date];
102
- });
95
+ onViewDateChange(date);
103
96
 
104
97
  if (picker !== 'month' && picker !== 'week') {
105
98
  onPanelChange(date, 'date');
@@ -113,9 +106,7 @@ var PickerPanels = function PickerPanels(props) {
113
106
  };
114
107
 
115
108
  var onYearSelect = function onYearSelect(date) {
116
- setViewDate(function () {
117
- return [date];
118
- });
109
+ onViewDateChange(date);
119
110
 
120
111
  if (picker !== 'year') {
121
112
  onPanelChange(date, 'month');
@@ -172,7 +163,6 @@ var PickerPanels = function PickerPanels(props) {
172
163
  panel = /*#__PURE__*/_react["default"].createElement(_datePanel["default"], {
173
164
  viewDate: date,
174
165
  onSelect: onSelectChange,
175
- onViewDateChange: onViewDateChange,
176
166
  onPanelChange: onPanelChange
177
167
  });
178
168
  break;
@@ -209,8 +199,10 @@ var PickerPanels = function PickerPanels(props) {
209
199
  }
210
200
 
211
201
  return panel;
212
- }, [pickerMode, viewDate, selectWeekDate]);
202
+ }, [pickerMode, selectWeekDate, viewDate]);
213
203
  (0, _react.useEffect)(function () {
204
+ setViewDate(value);
205
+
214
206
  if (typeof value[0] === 'string') {
215
207
  setSelectWeekDate(value);
216
208
  }
@@ -220,9 +212,5 @@ var PickerPanels = function PickerPanels(props) {
220
212
  }, renderPanels());
221
213
  };
222
214
 
223
- PickerPanels.defaultProps = {
224
- picker: 'date',
225
- value: [(0, _moment["default"])()]
226
- };
227
215
  var _default = PickerPanels;
228
216
  exports["default"] = _default;
@@ -25,7 +25,7 @@ var _utils = require("./utils");
25
25
 
26
26
  require("./index.css");
27
27
 
28
- var _excluded = ["children", "direction", "displayMode", "format", "picker", "popupPlacement", "settingType", "value", "visible", "onChange", "onPopupVisibleChange"];
28
+ var _excluded = ["children", "direction", "displayMode", "format", "max", "min", "picker", "popupPlacement", "settingType", "value", "visible", "onChange", "onPopupVisibleChange"];
29
29
 
30
30
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
31
31
 
@@ -53,14 +53,26 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
53
53
 
54
54
  var Picker = function Picker(props) {
55
55
  var children = props.children,
56
- direction = props.direction,
57
- displayMode = props.displayMode,
58
- format = props.format,
59
- picker = props.picker,
60
- popupPlacement = props.popupPlacement,
61
- settingType = props.settingType,
62
- value = props.value,
63
- visible = props.visible,
56
+ _props$direction = props.direction,
57
+ direction = _props$direction === void 0 ? 'ltr' : _props$direction,
58
+ _props$displayMode = props.displayMode,
59
+ displayMode = _props$displayMode === void 0 ? 'layer' : _props$displayMode,
60
+ _props$format = props.format,
61
+ format = _props$format === void 0 ? _utils.PickerFormat : _props$format,
62
+ _props$max = props.max,
63
+ max = _props$max === void 0 ? _utils.PickerMaxDate : _props$max,
64
+ _props$min = props.min,
65
+ min = _props$min === void 0 ? _utils.PickerMinDate : _props$min,
66
+ _props$picker = props.picker,
67
+ picker = _props$picker === void 0 ? 'date' : _props$picker,
68
+ _props$popupPlacement = props.popupPlacement,
69
+ popupPlacement = _props$popupPlacement === void 0 ? 'bottomLeft' : _props$popupPlacement,
70
+ _props$settingType = props.settingType,
71
+ settingType = _props$settingType === void 0 ? 'startDate' : _props$settingType,
72
+ _props$value = props.value,
73
+ value = _props$value === void 0 ? [(0, _moment["default"])()] : _props$value,
74
+ _props$visible = props.visible,
75
+ visible = _props$visible === void 0 ? false : _props$visible,
64
76
  onChange = props.onChange,
65
77
  onPopupVisibleChange = props.onPopupVisibleChange,
66
78
  restProps = _objectWithoutProperties(props, _excluded);
@@ -98,24 +110,23 @@ var Picker = function Picker(props) {
98
110
  }
99
111
  };
100
112
 
101
- var handlePopupVisibleChange = function handlePopupVisibleChange(visible) {
113
+ var onPopupVisibleChangeHandler = function onPopupVisibleChangeHandler(visible) {
102
114
  setPopupVisible(visible);
103
115
  onPopupVisibleChange === null || onPopupVisibleChange === void 0 ? void 0 : onPopupVisibleChange(visible);
104
116
  };
105
117
 
106
118
  var popContent = (0, _react.useMemo)(function () {
107
119
  return /*#__PURE__*/_react["default"].createElement(_pickerPanels["default"], _extends({
108
- value: value,
109
- picker: picker,
110
120
  onChange: onChangeHandler,
111
- onClose: onCloseHandler,
112
- settingType: settingType
121
+ onClose: onCloseHandler
113
122
  }, restProps));
114
- }, [settingType, value, picker]);
123
+ }, [value]);
115
124
  return /*#__PURE__*/_react["default"].createElement(_context["default"].Provider, {
116
125
  value: {
117
126
  picker: picker,
118
127
  format: format,
128
+ max: max,
129
+ min: min,
119
130
  settingType: settingType,
120
131
  value: value
121
132
  }
@@ -124,7 +135,7 @@ var Picker = function Picker(props) {
124
135
  popup: popContent,
125
136
  popupVisible: popupVisible,
126
137
  popupPlacement: getPopupPlacement(),
127
- onPopupVisibleChange: handlePopupVisibleChange
138
+ onPopupVisibleChange: onPopupVisibleChangeHandler
128
139
  }, restProps), /*#__PURE__*/_react["default"].createElement(_pickerTrigger["default"], _extends({
129
140
  focused: popupVisible,
130
141
  viewDate: (0, _moment["default"])(value[0]),
@@ -134,17 +145,5 @@ var Picker = function Picker(props) {
134
145
  }, restProps), children)), displayMode === 'tiled' && popContent);
135
146
  };
136
147
 
137
- Picker.defaultProps = {
138
- children: null,
139
- value: [(0, _moment["default"])()],
140
- picker: 'date',
141
- format: 'YYYY/MM/DD',
142
- popupStyle: {},
143
- popupPlacement: 'bottomLeft',
144
- direction: 'ltr',
145
- displayMode: 'layer',
146
- settingType: 'startDate',
147
- visible: false
148
- };
149
148
  var _default = Picker;
150
149
  exports["default"] = _default;