Comparing version 4.0.9 to 4.0.10
@@ -6,3 +6,3 @@ /** | ||
import React from 'react'; | ||
import { AlignType, AlignResult, TargetType } from './interface'; | ||
import type { AlignType, AlignResult, TargetType } from './interface'; | ||
declare type OnAlign = (source: HTMLElement, result: AlignResult) => void; | ||
@@ -21,3 +21,3 @@ export interface AlignProps { | ||
} | ||
declare const RefAlign: React.ForwardRefExoticComponent<AlignProps & React.RefAttributes<RefAlign>>; | ||
export default RefAlign; | ||
declare const RcAlign: React.ForwardRefExoticComponent<AlignProps & React.RefAttributes<RefAlign>>; | ||
export default RcAlign; |
@@ -13,2 +13,3 @@ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray"; | ||
import addEventListener from "rc-util/es/Dom/addEventListener"; | ||
import isEqual from 'lodash/isEqual'; | ||
import { isSamePoint, restoreFocus, monitorResize } from './util'; | ||
@@ -44,2 +45,3 @@ import useBuffer from './hooks/useBuffer'; | ||
forceAlignPropsRef.current.target = target; | ||
forceAlignPropsRef.current.align = align; | ||
forceAlignPropsRef.current.onAlign = onAlign; | ||
@@ -51,2 +53,3 @@ | ||
latestTarget = _forceAlignPropsRef$c.target, | ||
latestAlign = _forceAlignPropsRef$c.align, | ||
latestOnAlign = _forceAlignPropsRef$c.onAlign; | ||
@@ -60,8 +63,12 @@ | ||
cacheRef.current.element = element; | ||
cacheRef.current.point = point; // IE lose focus after element realign | ||
cacheRef.current.point = point; | ||
cacheRef.current.align = latestAlign; // IE lose focus after element realign | ||
// We should record activeElement and restore later | ||
// IE lose focus after element realign | ||
// We should record activeElement and restore later | ||
var _document = document, | ||
activeElement = _document.activeElement; // We only align when element is visible | ||
// We only align when element is visible | ||
if (element && isVisible(element)) { | ||
@@ -107,3 +114,3 @@ result = alignElement(source, element, align); | ||
if (cacheRef.current.element !== element || !isSamePoint(cacheRef.current.point, point)) { | ||
if (cacheRef.current.element !== element || !isSamePoint(cacheRef.current.point, point) || !isEqual(cacheRef.current.align, align)) { | ||
_forceAlign(); // Add resize observer | ||
@@ -157,4 +164,4 @@ | ||
if (React.isValidElement(childNode)) { | ||
childNode = React.cloneElement(childNode, { | ||
if ( /*#__PURE__*/React.isValidElement(childNode)) { | ||
childNode = /*#__PURE__*/React.cloneElement(childNode, { | ||
ref: composeRef(childNode.ref, nodeRef) | ||
@@ -167,4 +174,4 @@ }); | ||
var RefAlign = React.forwardRef(Align); | ||
RefAlign.displayName = 'Align'; | ||
export default RefAlign; | ||
var RcAlign = /*#__PURE__*/React.forwardRef(Align); | ||
RcAlign.displayName = 'Align'; | ||
export default RcAlign; |
@@ -1,4 +0,4 @@ | ||
import { TargetPoint } from './interface'; | ||
import type { TargetPoint } from './interface'; | ||
export declare function isSamePoint(prev: TargetPoint, next: TargetPoint): boolean; | ||
export declare function restoreFocus(activeElement: any, container: any): void; | ||
export declare function monitorResize(element: HTMLElement, callback: Function): () => void; |
@@ -6,3 +6,3 @@ /** | ||
import React from 'react'; | ||
import { AlignType, AlignResult, TargetType } from './interface'; | ||
import type { AlignType, AlignResult, TargetType } from './interface'; | ||
declare type OnAlign = (source: HTMLElement, result: AlignResult) => void; | ||
@@ -21,3 +21,3 @@ export interface AlignProps { | ||
} | ||
declare const RefAlign: React.ForwardRefExoticComponent<AlignProps & React.RefAttributes<RefAlign>>; | ||
export default RefAlign; | ||
declare const RcAlign: React.ForwardRefExoticComponent<AlignProps & React.RefAttributes<RefAlign>>; | ||
export default RcAlign; |
@@ -24,2 +24,4 @@ "use strict"; | ||
var _isEqual = _interopRequireDefault(require("lodash/isEqual")); | ||
var _util = require("./util"); | ||
@@ -65,2 +67,3 @@ | ||
forceAlignPropsRef.current.target = target; | ||
forceAlignPropsRef.current.align = align; | ||
forceAlignPropsRef.current.onAlign = onAlign; | ||
@@ -72,2 +75,3 @@ | ||
latestTarget = _forceAlignPropsRef$c.target, | ||
latestAlign = _forceAlignPropsRef$c.align, | ||
latestOnAlign = _forceAlignPropsRef$c.onAlign; | ||
@@ -81,8 +85,12 @@ | ||
cacheRef.current.element = element; | ||
cacheRef.current.point = point; // IE lose focus after element realign | ||
cacheRef.current.point = point; | ||
cacheRef.current.align = latestAlign; // IE lose focus after element realign | ||
// We should record activeElement and restore later | ||
// IE lose focus after element realign | ||
// We should record activeElement and restore later | ||
var _document = document, | ||
activeElement = _document.activeElement; // We only align when element is visible | ||
// We only align when element is visible | ||
if (element && (0, _isVisible.default)(element)) { | ||
@@ -130,3 +138,3 @@ result = (0, _domAlign.alignElement)(source, element, align); | ||
if (cacheRef.current.element !== element || !(0, _util.isSamePoint)(cacheRef.current.point, point)) { | ||
if (cacheRef.current.element !== element || !(0, _util.isSamePoint)(cacheRef.current.point, point) || !(0, _isEqual.default)(cacheRef.current.align, align)) { | ||
_forceAlign(); // Add resize observer | ||
@@ -186,4 +194,4 @@ | ||
if (_react.default.isValidElement(childNode)) { | ||
childNode = _react.default.cloneElement(childNode, { | ||
if ( /*#__PURE__*/_react.default.isValidElement(childNode)) { | ||
childNode = /*#__PURE__*/_react.default.cloneElement(childNode, { | ||
ref: (0, _ref2.composeRef)(childNode.ref, nodeRef) | ||
@@ -196,6 +204,6 @@ }); | ||
var RefAlign = _react.default.forwardRef(Align); | ||
var RcAlign = /*#__PURE__*/_react.default.forwardRef(Align); | ||
RefAlign.displayName = 'Align'; | ||
var _default = RefAlign; | ||
RcAlign.displayName = 'Align'; | ||
var _default = RcAlign; | ||
exports.default = _default; |
@@ -1,1 +0,5 @@ | ||
"use strict"; | ||
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); |
@@ -1,4 +0,4 @@ | ||
import { TargetPoint } from './interface'; | ||
import type { TargetPoint } from './interface'; | ||
export declare function isSamePoint(prev: TargetPoint, next: TargetPoint): boolean; | ||
export declare function restoreFocus(activeElement: any, container: any): void; | ||
export declare function monitorResize(element: HTMLElement, callback: Function): () => void; |
{ | ||
"name": "rc-align", | ||
"version": "4.0.9", | ||
"version": "4.0.10", | ||
"description": "align ui component for react", | ||
@@ -31,2 +31,3 @@ "keywords": [ | ||
"compile": "father build", | ||
"tsc": "tsc --noEmit", | ||
"prepublishOnly": "npm run compile && np --yolo --no-publish", | ||
@@ -46,2 +47,3 @@ "lint": "eslint src/ examples/ --ext .tsx,.ts,.jsx,.js", | ||
"dom-align": "^1.7.0", | ||
"lodash": "^4.17.21", | ||
"rc-util": "^5.3.0", | ||
@@ -55,3 +57,3 @@ "resize-observer-polyfill": "^1.5.1" | ||
"@types/warning": "^3.0.0", | ||
"cross-env": "^6.0.0", | ||
"cross-env": "^7.0.3", | ||
"enzyme": "^3.3.0", | ||
@@ -58,0 +60,0 @@ "enzyme-adapter-react-16": "^1.14.0", |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
30279
652
8
23
+ Addedlodash@^4.17.21
+ Addedlodash@4.17.21(transitive)