Socket
Socket
Sign inDemoInstall

rc-align

Package Overview
Dependencies
Maintainers
4
Versions
50
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

rc-align - npm Package Compare versions

Comparing version 4.0.9 to 4.0.10

6

es/Align.d.ts

@@ -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",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc