@rc-component/trigger 3.3.0 → 3.4.1

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.
@@ -100,8 +100,6 @@ export default function useAlign(open, popupEle, target, placement, builtinPlace
100
100
  const doc = popupElement.ownerDocument;
101
101
  const win = getWin(popupElement);
102
102
  const {
103
- width,
104
- height,
105
103
  position: popupPosition
106
104
  } = win.getComputedStyle(popupElement);
107
105
  const originLeft = popupElement.style.left;
@@ -153,6 +151,10 @@ export default function useAlign(open, popupEle, target, placement, builtinPlace
153
151
  };
154
152
  }
155
153
  const popupRect = popupElement.getBoundingClientRect();
154
+ const {
155
+ height,
156
+ width
157
+ } = win.getComputedStyle(popupElement);
156
158
  popupRect.x = popupRect.x ?? popupRect.left;
157
159
  popupRect.y = popupRect.y ?? popupRect.top;
158
160
  const {
package/es/index.js CHANGED
@@ -355,6 +355,10 @@ export function generateTrigger(PortalComponent = Portal) {
355
355
  };
356
356
  }
357
357
 
358
+ // ============================ Perf ============================
359
+ const rendedRef = React.useRef(false);
360
+ rendedRef.current ||= forceRender || mergedOpen || inMotion;
361
+
358
362
  // =========================== Render ===========================
359
363
  const mergedChildrenProps = {
360
364
  ...originChildProps,
@@ -392,7 +396,7 @@ export function generateTrigger(PortalComponent = Portal) {
392
396
  disabled: !mergedOpen,
393
397
  ref: setTargetRef,
394
398
  onResize: onTargetResize
395
- }, triggerNode), /*#__PURE__*/React.createElement(TriggerContext.Provider, {
399
+ }, triggerNode), rendedRef.current && /*#__PURE__*/React.createElement(TriggerContext.Provider, {
396
400
  value: context
397
401
  }, /*#__PURE__*/React.createElement(Popup, {
398
402
  portal: PortalComponent,
@@ -109,8 +109,6 @@ function useAlign(open, popupEle, target, placement, builtinPlacements, popupAli
109
109
  const doc = popupElement.ownerDocument;
110
110
  const win = (0, _util.getWin)(popupElement);
111
111
  const {
112
- width,
113
- height,
114
112
  position: popupPosition
115
113
  } = win.getComputedStyle(popupElement);
116
114
  const originLeft = popupElement.style.left;
@@ -162,6 +160,10 @@ function useAlign(open, popupEle, target, placement, builtinPlacements, popupAli
162
160
  };
163
161
  }
164
162
  const popupRect = popupElement.getBoundingClientRect();
163
+ const {
164
+ height,
165
+ width
166
+ } = win.getComputedStyle(popupElement);
165
167
  popupRect.x = popupRect.x ?? popupRect.left;
166
168
  popupRect.y = popupRect.y ?? popupRect.top;
167
169
  const {
package/lib/index.js CHANGED
@@ -364,6 +364,10 @@ function generateTrigger(PortalComponent = _portal.default) {
364
364
  };
365
365
  }
366
366
 
367
+ // ============================ Perf ============================
368
+ const rendedRef = React.useRef(false);
369
+ rendedRef.current ||= forceRender || mergedOpen || inMotion;
370
+
367
371
  // =========================== Render ===========================
368
372
  const mergedChildrenProps = {
369
373
  ...originChildProps,
@@ -401,7 +405,7 @@ function generateTrigger(PortalComponent = _portal.default) {
401
405
  disabled: !mergedOpen,
402
406
  ref: setTargetRef,
403
407
  onResize: onTargetResize
404
- }, triggerNode), /*#__PURE__*/React.createElement(_context.default.Provider, {
408
+ }, triggerNode), rendedRef.current && /*#__PURE__*/React.createElement(_context.default.Provider, {
405
409
  value: context
406
410
  }, /*#__PURE__*/React.createElement(_Popup.default, {
407
411
  portal: PortalComponent,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rc-component/trigger",
3
- "version": "3.3.0",
3
+ "version": "3.4.1",
4
4
  "description": "base abstract trigger component for react",
5
5
  "engines": {
6
6
  "node": ">=8.x"