@rc-component/trigger 1.5.5 → 1.5.7

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.
@@ -1,5 +1,6 @@
1
1
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
2
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
+ import { isDOM } from "rc-util/es/Dom/findDOMNode";
3
4
  import isVisible from "rc-util/es/Dom/isVisible";
4
5
  import useEvent from "rc-util/es/hooks/useEvent";
5
6
  import useLayoutEffect from "rc-util/es/hooks/useLayoutEffect";
@@ -86,7 +87,7 @@ export default function useAlign(open, popupEle, target, placement, builtinPlace
86
87
  var win = getWin(popupElement);
87
88
 
88
89
  // Placement
89
- var placementInfo = builtinPlacements[placement] || popupAlign || {};
90
+ var placementInfo = _objectSpread(_objectSpread({}, builtinPlacements[placement]), popupAlign);
90
91
 
91
92
  // Reset first
92
93
  popupElement.style.left = '0';
@@ -141,6 +142,9 @@ export default function useAlign(open, popupEle, target, placement, builtinPlace
141
142
  bottom: clientHeight
142
143
  };
143
144
  (scrollerList || []).forEach(function (ele) {
145
+ if (ele instanceof HTMLBodyElement) {
146
+ return;
147
+ }
144
148
  var eleRect = ele.getBoundingClientRect();
145
149
  var eleOutHeight = ele.offsetHeight,
146
150
  eleInnerHeight = ele.clientHeight,
@@ -167,7 +171,7 @@ export default function useAlign(open, popupEle, target, placement, builtinPlace
167
171
  var _scaleY = toNum(Math.round(popupHeight / parseFloat(height) * 1000) / 1000);
168
172
 
169
173
  // No need to align since it's not visible in view
170
- if (_scaleX === 0 || _scaleY === 0 || target instanceof HTMLElement && !isVisible(target)) {
174
+ if (_scaleX === 0 || _scaleY === 0 || isDOM(target) && !isVisible(target)) {
171
175
  return;
172
176
  }
173
177
 
package/es/index.js CHANGED
@@ -8,6 +8,7 @@ import ResizeObserver from 'rc-resize-observer';
8
8
  import useEvent from "rc-util/es/hooks/useEvent";
9
9
  import useId from "rc-util/es/hooks/useId";
10
10
  import useLayoutEffect from "rc-util/es/hooks/useLayoutEffect";
11
+ import { isDOM } from "rc-util/es/Dom/findDOMNode";
11
12
  import * as React from 'react';
12
13
  import TriggerContext from "./context";
13
14
  import useAction from "./hooks/useAction";
@@ -86,7 +87,7 @@ export function generateTrigger() {
86
87
  popupEle = _React$useState2[0],
87
88
  setPopupEle = _React$useState2[1];
88
89
  var setPopupRef = React.useCallback(function (node) {
89
- if (node instanceof HTMLElement) {
90
+ if (isDOM(node)) {
90
91
  setPopupEle(node);
91
92
  }
92
93
  parentContext === null || parentContext === void 0 ? void 0 : parentContext.registerSubPopup(id, node);
@@ -99,7 +100,7 @@ export function generateTrigger() {
99
100
  targetEle = _React$useState4[0],
100
101
  setTargetEle = _React$useState4[1];
101
102
  var setTargetRef = React.useCallback(function (node) {
102
- if (node instanceof HTMLElement) {
103
+ if (isDOM(node)) {
103
104
  setTargetEle(node);
104
105
  }
105
106
  }, []);
@@ -8,6 +8,7 @@ Object.defineProperty(exports, "__esModule", {
8
8
  exports.default = useAlign;
9
9
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
10
10
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+ var _findDOMNode = require("rc-util/lib/Dom/findDOMNode");
11
12
  var _isVisible = _interopRequireDefault(require("rc-util/lib/Dom/isVisible"));
12
13
  var _useEvent = _interopRequireDefault(require("rc-util/lib/hooks/useEvent"));
13
14
  var _useLayoutEffect = _interopRequireDefault(require("rc-util/lib/hooks/useLayoutEffect"));
@@ -94,7 +95,7 @@ function useAlign(open, popupEle, target, placement, builtinPlacements, popupAli
94
95
  var win = (0, _util.getWin)(popupElement);
95
96
 
96
97
  // Placement
97
- var placementInfo = builtinPlacements[placement] || popupAlign || {};
98
+ var placementInfo = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, builtinPlacements[placement]), popupAlign);
98
99
 
99
100
  // Reset first
100
101
  popupElement.style.left = '0';
@@ -149,6 +150,9 @@ function useAlign(open, popupEle, target, placement, builtinPlacements, popupAli
149
150
  bottom: clientHeight
150
151
  };
151
152
  (scrollerList || []).forEach(function (ele) {
153
+ if (ele instanceof HTMLBodyElement) {
154
+ return;
155
+ }
152
156
  var eleRect = ele.getBoundingClientRect();
153
157
  var eleOutHeight = ele.offsetHeight,
154
158
  eleInnerHeight = ele.clientHeight,
@@ -175,7 +179,7 @@ function useAlign(open, popupEle, target, placement, builtinPlacements, popupAli
175
179
  var _scaleY = toNum(Math.round(popupHeight / parseFloat(height) * 1000) / 1000);
176
180
 
177
181
  // No need to align since it's not visible in view
178
- if (_scaleX === 0 || _scaleY === 0 || target instanceof HTMLElement && !(0, _isVisible.default)(target)) {
182
+ if (_scaleX === 0 || _scaleY === 0 || (0, _findDOMNode.isDOM)(target) && !(0, _isVisible.default)(target)) {
179
183
  return;
180
184
  }
181
185
 
package/lib/index.js CHANGED
@@ -16,6 +16,7 @@ var _rcResizeObserver = _interopRequireDefault(require("rc-resize-observer"));
16
16
  var _useEvent = _interopRequireDefault(require("rc-util/lib/hooks/useEvent"));
17
17
  var _useId = _interopRequireDefault(require("rc-util/lib/hooks/useId"));
18
18
  var _useLayoutEffect = _interopRequireDefault(require("rc-util/lib/hooks/useLayoutEffect"));
19
+ var _findDOMNode = require("rc-util/lib/Dom/findDOMNode");
19
20
  var React = _interopRequireWildcard(require("react"));
20
21
  var _context = _interopRequireDefault(require("./context"));
21
22
  var _useAction3 = _interopRequireDefault(require("./hooks/useAction"));
@@ -95,7 +96,7 @@ function generateTrigger() {
95
96
  popupEle = _React$useState2[0],
96
97
  setPopupEle = _React$useState2[1];
97
98
  var setPopupRef = React.useCallback(function (node) {
98
- if (node instanceof HTMLElement) {
99
+ if ((0, _findDOMNode.isDOM)(node)) {
99
100
  setPopupEle(node);
100
101
  }
101
102
  parentContext === null || parentContext === void 0 ? void 0 : parentContext.registerSubPopup(id, node);
@@ -108,7 +109,7 @@ function generateTrigger() {
108
109
  targetEle = _React$useState4[0],
109
110
  setTargetEle = _React$useState4[1];
110
111
  var setTargetRef = React.useCallback(function (node) {
111
- if (node instanceof HTMLElement) {
112
+ if ((0, _findDOMNode.isDOM)(node)) {
112
113
  setTargetEle(node);
113
114
  }
114
115
  }, []);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rc-component/trigger",
3
- "version": "1.5.5",
3
+ "version": "1.5.7",
4
4
  "description": "base abstract trigger component for react",
5
5
  "engines": {
6
6
  "node": ">=8.x"
@@ -66,7 +66,7 @@
66
66
  "rc-align": "^4.0.0",
67
67
  "rc-motion": "^2.0.0",
68
68
  "rc-resize-observer": "^1.3.1",
69
- "rc-util": "^5.27.1"
69
+ "rc-util": "^5.29.2"
70
70
  },
71
71
  "peerDependencies": {
72
72
  "react": ">=16.9.0",