@semcore/popper
Advanced tools
Comparing version 3.5.0 to 3.5.1
@@ -5,5 +5,11 @@ # Changelog | ||
## [3.5.1] - 2019-11-14 | ||
### Fixed | ||
- Поправили доступ к `DOM` нодам `Trigger, Popper` | ||
## [3.5.0] - 2019-10-10 | ||
### Change | ||
### Changed | ||
@@ -10,0 +16,0 @@ - Убрано `inline` свойство для дефолтного триггера |
@@ -11,3 +11,3 @@ import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray'; | ||
import { findDOMNode } from 'react-dom'; | ||
import React, { PureComponent, Component } from 'react'; | ||
import React, { forwardRef, PureComponent, Component } from 'react'; | ||
import PopperJS from 'popper.js'; | ||
@@ -22,2 +22,3 @@ import ResizeObserver from 'resize-observer-polyfill'; | ||
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties'; | ||
import setRef from '@semcore/utils/lib/setRef'; | ||
import UI from '@semcore/ui'; | ||
@@ -107,3 +108,4 @@ import Portal from '@semcore/portal'; | ||
children = _this$props.children, | ||
getTriggerProps = _this$props.getTriggerProps; | ||
getTriggerProps = _this$props.getTriggerProps, | ||
forwardedRef = _this$props.forwardedRef; | ||
@@ -113,3 +115,12 @@ if (typeof children === 'function') { | ||
} else { | ||
return React.createElement(UI, Object.assign({}, assignProps(this.props, getTriggerProps()))); | ||
var _getTriggerProps = getTriggerProps(), | ||
refTrigger = _getTriggerProps.ref, | ||
other = _objectWithoutProperties(_getTriggerProps, ["ref"]); | ||
return React.createElement(UI, Object.assign({}, assignProps(this.props, other), { | ||
ref: function ref(_ref) { | ||
setRef(forwardedRef, _ref); | ||
setRef(refTrigger, _ref); | ||
} | ||
})); | ||
} | ||
@@ -123,4 +134,3 @@ } | ||
InnerTrigger.displayName = 'PopperInnerTrigger'; | ||
function PopperTrigger(props) { | ||
var PopperTrigger = forwardRef(function (props, ref) { | ||
var Consumer = props.consumer, | ||
@@ -130,6 +140,7 @@ other = _objectWithoutProperties(props, ["consumer"]); | ||
return React.createElement(Consumer, null, function (ctx) { | ||
return React.createElement(InnerTrigger, Object.assign({}, other, ctx)); | ||
return React.createElement(InnerTrigger, Object.assign({}, other, ctx, { | ||
forwardedRef: ref | ||
})); | ||
}); | ||
} | ||
}); | ||
PopperTrigger.defaultProps = { | ||
@@ -158,3 +169,21 @@ consumer: Consumer | ||
children = _this$props.children, | ||
getPopperProps = _this$props.getPopperProps; | ||
getPopperProps = _this$props.getPopperProps, | ||
forwardedRef = _this$props.forwardedRef; | ||
var renderChildren = null; | ||
if (typeof children === 'function') { | ||
renderChildren = children(this.props); | ||
} else { | ||
var _getPopperProps = getPopperProps(), | ||
refPopper = _getPopperProps.ref, | ||
other = _objectWithoutProperties(_getPopperProps, ["ref"]); | ||
renderChildren = React.createElement(Box, Object.assign({}, assignProps(this.props, other), { | ||
ref: function ref(_ref) { | ||
setRef(forwardedRef, _ref); | ||
setRef(refPopper, _ref); | ||
} | ||
})); | ||
} | ||
return React.createElement(If, { | ||
@@ -164,3 +193,3 @@ condition: visible | ||
disablePortal: disablePortal | ||
}, typeof children === 'function' ? children(this.props) : React.createElement(Box, Object.assign({}, assignProps(this.props, getPopperProps()))))); | ||
}, renderChildren)); | ||
} | ||
@@ -173,4 +202,3 @@ }]); | ||
InnerPopper.displayName = 'PopperInnerPopper'; | ||
function PopperPopper(props) { | ||
var PopperPopper = forwardRef(function (props, ref) { | ||
var Consumer = props.consumer, | ||
@@ -184,6 +212,7 @@ other = _objectWithoutProperties(props, ["consumer"]); | ||
} | ||
}, React.createElement(InnerPopper, Object.assign({}, other, ctx))); | ||
}, React.createElement(InnerPopper, Object.assign({}, other, ctx, { | ||
forwardedRef: ref | ||
}))); | ||
}); | ||
} | ||
}); | ||
PopperPopper.defaultProps = { | ||
@@ -190,0 +219,0 @@ consumer: Consumer |
@@ -28,2 +28,3 @@ 'use strict'; | ||
var _objectWithoutProperties = _interopDefault(require('@babel/runtime/helpers/objectWithoutProperties')); | ||
var setRef = _interopDefault(require('@semcore/utils/lib/setRef')); | ||
var UI = _interopDefault(require('@semcore/ui')); | ||
@@ -113,3 +114,4 @@ var Portal = require('@semcore/portal'); | ||
children = _this$props.children, | ||
getTriggerProps = _this$props.getTriggerProps; | ||
getTriggerProps = _this$props.getTriggerProps, | ||
forwardedRef = _this$props.forwardedRef; | ||
@@ -119,3 +121,12 @@ if (typeof children === 'function') { | ||
} else { | ||
return React__default.createElement(UI, Object.assign({}, assignProps(this.props, getTriggerProps()))); | ||
var _getTriggerProps = getTriggerProps(), | ||
refTrigger = _getTriggerProps.ref, | ||
other = _objectWithoutProperties(_getTriggerProps, ["ref"]); | ||
return React__default.createElement(UI, Object.assign({}, assignProps(this.props, other), { | ||
ref: function ref(_ref) { | ||
setRef(forwardedRef, _ref); | ||
setRef(refTrigger, _ref); | ||
} | ||
})); | ||
} | ||
@@ -129,4 +140,3 @@ } | ||
InnerTrigger.displayName = 'PopperInnerTrigger'; | ||
function PopperTrigger(props) { | ||
var PopperTrigger = React.forwardRef(function (props, ref) { | ||
var Consumer = props.consumer, | ||
@@ -136,6 +146,7 @@ other = _objectWithoutProperties(props, ["consumer"]); | ||
return React__default.createElement(Consumer, null, function (ctx) { | ||
return React__default.createElement(InnerTrigger, Object.assign({}, other, ctx)); | ||
return React__default.createElement(InnerTrigger, Object.assign({}, other, ctx, { | ||
forwardedRef: ref | ||
})); | ||
}); | ||
} | ||
}); | ||
PopperTrigger.defaultProps = { | ||
@@ -164,3 +175,21 @@ consumer: Consumer | ||
children = _this$props.children, | ||
getPopperProps = _this$props.getPopperProps; | ||
getPopperProps = _this$props.getPopperProps, | ||
forwardedRef = _this$props.forwardedRef; | ||
var renderChildren = null; | ||
if (typeof children === 'function') { | ||
renderChildren = children(this.props); | ||
} else { | ||
var _getPopperProps = getPopperProps(), | ||
refPopper = _getPopperProps.ref, | ||
other = _objectWithoutProperties(_getPopperProps, ["ref"]); | ||
renderChildren = React__default.createElement(flexBox.Box, Object.assign({}, assignProps(this.props, other), { | ||
ref: function ref(_ref) { | ||
setRef(forwardedRef, _ref); | ||
setRef(refPopper, _ref); | ||
} | ||
})); | ||
} | ||
return React__default.createElement(If, { | ||
@@ -170,3 +199,3 @@ condition: visible | ||
disablePortal: disablePortal | ||
}, typeof children === 'function' ? children(this.props) : React__default.createElement(flexBox.Box, Object.assign({}, assignProps(this.props, getPopperProps()))))); | ||
}, renderChildren)); | ||
} | ||
@@ -179,4 +208,3 @@ }]); | ||
InnerPopper.displayName = 'PopperInnerPopper'; | ||
function PopperPopper(props) { | ||
var PopperPopper = React.forwardRef(function (props, ref) { | ||
var Consumer = props.consumer, | ||
@@ -190,6 +218,7 @@ other = _objectWithoutProperties(props, ["consumer"]); | ||
} | ||
}, React__default.createElement(InnerPopper, Object.assign({}, other, ctx))); | ||
}, React__default.createElement(InnerPopper, Object.assign({}, other, ctx, { | ||
forwardedRef: ref | ||
}))); | ||
}); | ||
} | ||
}); | ||
PopperPopper.defaultProps = { | ||
@@ -196,0 +225,0 @@ consumer: Consumer |
@@ -5,4 +5,2 @@ import React, { Component } from 'react'; | ||
import { IPopperContext } from './context'; | ||
import PopperTrigger from './Trigger'; | ||
import PopperPopper from './Popper/index'; | ||
export declare type Modifiers = PopperJS.Modifiers; | ||
@@ -87,4 +85,4 @@ export declare type Placement = PopperJS.Placement; | ||
static contextType: React.Context<import("./context").IChildPopperGetter>; | ||
static Trigger: typeof PopperTrigger; | ||
static Popper: typeof PopperPopper; | ||
static Trigger: React.ForwardRefExoticComponent<Pick<import("./Trigger").IPopperTriggerProps & React.HTMLAttributes<any>, string | number> & React.RefAttributes<unknown>>; | ||
static Popper: React.ForwardRefExoticComponent<Pick<import("./Popper").IPopperPopperProps & React.HTMLAttributes<any>, string | number> & React.RefAttributes<unknown>>; | ||
static placements: PopperJS.Placement[]; | ||
@@ -91,0 +89,0 @@ popperInstance: any; |
@@ -1,2 +0,2 @@ | ||
import React from 'react'; | ||
import React, { Ref } from 'react'; | ||
import { PortalProvider } from '@semcore/portal'; | ||
@@ -8,2 +8,3 @@ import { IBoxProps } from '@semcore/flex-box'; | ||
children?: PopperChildrenAsFn | React.ReactNode; | ||
forwardedRef?: Ref<any>; | ||
} | ||
@@ -14,10 +15,4 @@ export interface IPopperPopperProps extends IBoxProps { | ||
} | ||
declare function PopperPopper(props: IPopperPopperProps & React.HTMLAttributes<any>): JSX.Element; | ||
declare namespace PopperPopper { | ||
var defaultProps: { | ||
consumer: React.ExoticComponent<React.ConsumerProps<IPopperContext>>; | ||
}; | ||
var displayName: string; | ||
} | ||
declare const PopperPopper: React.ForwardRefExoticComponent<Pick<IPopperPopperProps & React.HTMLAttributes<any>, React.ReactText> & React.RefAttributes<unknown>>; | ||
export { PortalProvider }; | ||
export default PopperPopper; |
@@ -1,2 +0,2 @@ | ||
import React from 'react'; | ||
import React, { Ref } from 'react'; | ||
import { IUIProps } from '@semcore/ui'; | ||
@@ -7,2 +7,3 @@ import { IPopperContext } from '../context'; | ||
children?: TriggerChildrenAsFn | React.ReactNode; | ||
forwardedRef?: Ref<any>; | ||
} | ||
@@ -13,9 +14,3 @@ export interface IPopperTriggerProps extends IUIProps { | ||
} | ||
declare function PopperTrigger(props: IPopperTriggerProps & React.HTMLAttributes<any>): JSX.Element; | ||
declare namespace PopperTrigger { | ||
var defaultProps: { | ||
consumer: React.ExoticComponent<React.ConsumerProps<IPopperContext>>; | ||
}; | ||
var displayName: string; | ||
} | ||
declare const PopperTrigger: React.ForwardRefExoticComponent<Pick<IPopperTriggerProps & React.HTMLAttributes<any>, React.ReactText> & React.RefAttributes<unknown>>; | ||
export default PopperTrigger; |
{ | ||
"name": "@semcore/popper", | ||
"description": "SEMRush Popper Component", | ||
"version": "3.5.0", | ||
"version": "3.5.1", | ||
"main": "lib/index.js", | ||
@@ -15,8 +15,8 @@ "module": "lib/index.es.js", | ||
"dependencies": { | ||
"@semcore/utils": "^3.2", | ||
"@semcore/flex-box": "^3.2", | ||
"@semcore/utils": "^3.4", | ||
"@semcore/flex-box": "^3.3", | ||
"@semcore/outside-click": "^1.1", | ||
"@semcore/portal": "^1.1", | ||
"@semcore/visibility-handler": "^2.2", | ||
"popper.js": "^1.15", | ||
"popper.js": "^1.16", | ||
"resize-observer-polyfill": "^1.5" | ||
@@ -23,0 +23,0 @@ }, |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
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
138722
1741
Updated@semcore/flex-box@^3.3
Updated@semcore/utils@^3.4
Updatedpopper.js@^1.16