shineout 3.7.8-beta.4 → 3.7.8-beta.6

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/cjs/index.js CHANGED
@@ -522,5 +522,5 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
522
522
  // 此文件由脚本自动生成,请勿直接修改。
523
523
  // This file was generated automatically by a script. Please do not modify it directly.
524
524
  var _default = exports.default = {
525
- version: '3.7.8-beta.4'
525
+ version: '3.7.8-beta.6'
526
526
  };
package/dist/shineout.js CHANGED
@@ -12234,7 +12234,7 @@ var handleStyle = function handleStyle(style) {
12234
12234
  };
12235
12235
  /* harmony default export */ var jss_style_handleStyle = (handleStyle);
12236
12236
  ;// CONCATENATED MODULE: ../shineout-style/src/version.ts
12237
- /* harmony default export */ var version = ('3.7.8-beta.4');
12237
+ /* harmony default export */ var version = ('3.7.8-beta.6');
12238
12238
  ;// CONCATENATED MODULE: ../shineout-style/src/jss-style/index.tsx
12239
12239
 
12240
12240
 
@@ -30411,20 +30411,20 @@ var usePopup = function usePopup(props) {
30411
30411
  }
30412
30412
  };
30413
30413
  var handleMouseEnter = use_persist_fn(function (e) {
30414
- var _targetEvents$onMouse, _targetRef$current;
30414
+ var _targetEvents$onMouse, _targetRef$current, _popupRef$current2;
30415
30415
  targetEvents === null || targetEvents === void 0 || (_targetEvents$onMouse = targetEvents.onMouseEnter) === null || _targetEvents$onMouse === void 0 || _targetEvents$onMouse.call(targetEvents, e);
30416
30416
  if (trigger !== 'hover') return;
30417
30417
  var isParentContainsCurrent = (_targetRef$current = targetRef.current) === null || _targetRef$current === void 0 ? void 0 : _targetRef$current.contains(e.target);
30418
- if (isParentContainsCurrent) {
30418
+ if (isParentContainsCurrent || popupRef !== null && popupRef !== void 0 && (_popupRef$current2 = popupRef.current) !== null && _popupRef$current2 !== void 0 && _popupRef$current2.contains(e.target)) {
30419
30419
  handleHoverToggle(true);
30420
30420
  }
30421
30421
  });
30422
30422
  var handleMouseLeave = use_persist_fn(function (e) {
30423
- var _targetEvents$onMouse2, _popupRef$current2;
30423
+ var _targetEvents$onMouse2, _popupRef$current3;
30424
30424
  targetEvents === null || targetEvents === void 0 || (_targetEvents$onMouse2 = targetEvents.onMouseLeave) === null || _targetEvents$onMouse2 === void 0 || _targetEvents$onMouse2.call(targetEvents, e);
30425
30425
  if (trigger !== 'hover') return;
30426
30426
  // @ts-ignore
30427
- if (e.relatedTarget instanceof HTMLElement && (_popupRef$current2 = popupRef.current) !== null && _popupRef$current2 !== void 0 && _popupRef$current2.contains(e.relatedTarget)) {
30427
+ if (e.relatedTarget instanceof HTMLElement && (_popupRef$current3 = popupRef.current) !== null && _popupRef$current3 !== void 0 && _popupRef$current3.contains(e.relatedTarget)) {
30428
30428
  return;
30429
30429
  }
30430
30430
  handleHoverToggle(false);
@@ -41392,25 +41392,44 @@ function getResetMore(onFilter, container, doms) {
41392
41392
  var hideMargin = parsePxToNumber(hideElStyle.marginLeft) + parsePxToNumber(hideElStyle.marginRight);
41393
41393
  var num = 0;
41394
41394
  var sumWidth = 0;
41395
- for (var i = 0; i < doms.length; i++) {
41396
- var _item2 = doms[i];
41397
- var itemStyle = getComputedStyle(_item2);
41398
- var itemWidth = _item2.offsetWidth + parsePxToNumber(itemStyle.marginLeft) + parsePxToNumber(itemStyle.marginRight);
41399
- sumWidth += itemWidth;
41400
- var moreWidth = 0;
41401
- var resetNum = items.length - 1 - i;
41402
- if (resetNum > 0) {
41403
- var reset = "+".concat(resetNum);
41404
- hideEl.childNodes[0].innerText = reset;
41405
- moreWidth = hideEl.offsetWidth + hideMargin;
41406
- }
41407
- if (sumWidth > contentWidth - moreWidth) {
41408
- num = i;
41409
- break;
41410
- }
41395
+ var itemWidthArr = items.map(function (item) {
41396
+ var itemStyle = getComputedStyle(item);
41397
+ var itemLen = item.offsetWidth + parsePxToNumber(itemStyle.marginLeft) + parsePxToNumber(itemStyle.marginRight);
41398
+ sumWidth += itemLen;
41399
+ return itemLen;
41400
+ });
41401
+ if (sumWidth <= contentWidth) {
41411
41402
  num = -1;
41403
+ } else {
41404
+ var len = 0;
41405
+ for (var i = 0; i < itemWidthArr.length; i++) {
41406
+ var itemLen = itemWidthArr[i];
41407
+ // number length
41408
+ var resetNum = items.length - 1 - i;
41409
+ var moreWidth = void 0;
41410
+ if (resetNum <= 0) {
41411
+ moreWidth = 0;
41412
+ } else {
41413
+ var reset = "+".concat(resetNum);
41414
+ hideEl.childNodes[0].innerText = reset;
41415
+ // (+num) width
41416
+ moreWidth = hideEl.offsetWidth + hideMargin;
41417
+ }
41418
+ len += itemLen;
41419
+ if (len > contentWidth - moreWidth) {
41420
+ break;
41421
+ }
41422
+ num += 1;
41423
+ if (i === items.length - 1) {
41424
+ // not show more
41425
+ num = -1;
41426
+ }
41427
+ }
41428
+ }
41429
+ // at least show one
41430
+ if (num === 0 && itemWidthArr[0]) {
41431
+ num = 1;
41412
41432
  }
41413
- ;
41414
41433
  return num;
41415
41434
  }
41416
41435
  var More = function More(props) {
@@ -71835,7 +71854,7 @@ var upload_interface = __webpack_require__(8821);
71835
71854
 
71836
71855
 
71837
71856
  /* harmony default export */ var src_0 = ({
71838
- version: '3.7.8-beta.4'
71857
+ version: '3.7.8-beta.6'
71839
71858
  });
71840
71859
  }();
71841
71860
  /******/ return __webpack_exports__;