@ucloud-fe/react-components 1.5.2 → 1.5.5

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.
package/lib/__index.js CHANGED
@@ -151,6 +151,10 @@ import * as SelectAll from './components/Select/';
151
151
  const Select = Object.assign(SelectAll.default, SelectAll);
152
152
  export { Select };
153
153
 
154
+ import * as SkeletonAll from './components/Skeleton/';
155
+ const Skeleton = Object.assign(SkeletonAll.default, SkeletonAll);
156
+ export { Skeleton };
157
+
154
158
  import * as SliderAll from './components/Slider/';
155
159
  const Slider = Object.assign(SliderAll.default, SliderAll);
156
160
  export { Slider };
@@ -9,6 +9,8 @@ Object.defineProperty(exports, "__esModule", {
9
9
  });
10
10
  exports.default = exports.Static = void 0;
11
11
 
12
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
+
12
14
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
15
 
14
16
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
@@ -19,10 +21,10 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
19
21
 
20
22
  var _react = _interopRequireWildcard(require("react"));
21
23
 
22
- var _resizeObserverPolyfill = _interopRequireDefault(require("resize-observer-polyfill"));
23
-
24
24
  var _Tag = _interopRequireDefault(require("../../components/Tag"));
25
25
 
26
+ var _useOverflow3 = _interopRequireDefault(require("../../hooks/useOverflow"));
27
+
26
28
  var _style = require("./style");
27
29
 
28
30
  var _excluded = ["items", "renderItem", "renderRest", "count"],
@@ -33,6 +35,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
33
35
  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; }
34
36
 
35
37
  var _uid = 0;
38
+ var ID_KEY = 'data-urc-select_overflow-id';
36
39
 
37
40
  var Static = function Static(_ref) {
38
41
  var _this = this;
@@ -74,69 +77,26 @@ var Overflow = function Overflow(_ref2) {
74
77
  _useState2 = (0, _slicedToArray2.default)(_useState, 1),
75
78
  uid = _useState2[0];
76
79
 
77
- var _useState3 = (0, _react.useState)(0),
78
- _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
79
- count = _useState4[0],
80
- setCount = _useState4[1];
81
-
82
- var _useState5 = (0, _react.useState)(null),
83
- _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
84
- latestValidCount = _useState6[0],
85
- setLatestValidCount = _useState6[1];
80
+ var l = items.length;
81
+ var containerRef = (0, _react.useRef)(null);
82
+ (0, _react.useLayoutEffect)(function () {
83
+ (0, _newArrowCheck2.default)(this, _this2);
84
+ containerRef.current = document.querySelector("[".concat(ID_KEY, "=\"").concat(uid, "\"]"));
85
+ }.bind(this), [uid]);
86
86
 
87
- var compute = (0, _react.useCallback)(function () {
88
- var _this3 = this;
87
+ var _useOverflow = (0, _useOverflow3.default)({
88
+ containerRef: containerRef,
89
+ defaultCount: 1,
90
+ maxCount: l
91
+ }, [changeContent]),
92
+ _useOverflow2 = (0, _slicedToArray2.default)(_useOverflow, 2),
93
+ count = _useOverflow2[0],
94
+ measureCount = _useOverflow2[1];
89
95
 
90
- (0, _newArrowCheck2.default)(this, _this2);
91
- var containerDOM = document.querySelector("[data-urc-overflow-id=\"".concat(uid, "\"]"));
92
- if (!containerDOM) return;
93
-
94
- if (count === latestValidCount) {
95
- onMeasure(count);
96
- return;
97
- }
98
-
99
- if (containerDOM.offsetWidth >= containerDOM.scrollWidth) {
100
- setLatestValidCount(count);
101
- setCount(Math.min(items.length, count + 1));
102
- } else if (containerDOM.offsetWidth < containerDOM.scrollWidth) {
103
- setCount(function (count) {
104
- (0, _newArrowCheck2.default)(this, _this3);
105
- return Math.max(0, count - 1);
106
- }.bind(this));
107
- }
108
- }.bind(this), [count, items.length, latestValidCount, onMeasure, uid]);
109
- var computeRef = (0, _react.useRef)(compute);
110
96
  (0, _react.useEffect)(function () {
111
97
  (0, _newArrowCheck2.default)(this, _this2);
112
- computeRef.current = compute;
113
- }.bind(this), [compute]);
114
- (0, _react.useEffect)(function () {
115
- (0, _newArrowCheck2.default)(this, _this2);
116
- setLatestValidCount(null);
117
- }.bind(this), [changeContent]);
118
- (0, _react.useEffect)(function () {
119
- (0, _newArrowCheck2.default)(this, _this2);
120
- computeRef.current();
121
- }.bind(this), [compute]);
122
- (0, _react.useLayoutEffect)(function () {
123
- var _this4 = this;
124
-
125
- (0, _newArrowCheck2.default)(this, _this2);
126
- var containerDOM = document.querySelector("[data-urc-overflow-id=\"".concat(uid, "\"]"));
127
- var resizeObserver = new _resizeObserverPolyfill.default(function () {
128
- (0, _newArrowCheck2.default)(this, _this4);
129
- setLatestValidCount(null);
130
- }.bind(this));
131
- if (containerDOM) resizeObserver.observe(containerDOM);
132
- return function () {
133
- (0, _newArrowCheck2.default)(this, _this4);
134
-
135
- if (resizeObserver) {
136
- resizeObserver.disconnect();
137
- }
138
- }.bind(this);
139
- }.bind(this), [uid]);
98
+ onMeasure(measureCount);
99
+ }.bind(this), [measureCount, onMeasure]);
140
100
  var renderItems = (0, _react.useMemo)(function () {
141
101
  (0, _newArrowCheck2.default)(this, _this2);
142
102
  return items.slice(0, count).map(renderItem);
@@ -145,8 +105,7 @@ var Overflow = function Overflow(_ref2) {
145
105
  (0, _newArrowCheck2.default)(this, _this2);
146
106
  return renderRest(items.slice(count));
147
107
  }.bind(this), [count, items, renderRest]);
148
- return /*#__PURE__*/_react.default.createElement(_Tag.default.Group, (0, _extends2.default)({}, rest, {
149
- "data-urc-overflow-id": uid,
108
+ return /*#__PURE__*/_react.default.createElement(_Tag.default.Group, (0, _extends2.default)({}, rest, (0, _defineProperty2.default)({}, ID_KEY, uid), {
150
109
  className: _style.overflowCls
151
110
  }), renderItems, restItems);
152
111
  };