UNPKG

react-misc-toolbox

Version:

[ ] imageviewer | gradual scroll [ ] imageviewer | cancellable scroll

104 lines (79 loc) 3.78 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _extends2 = require('babel-runtime/helpers/extends'); var _extends3 = _interopRequireDefault(_extends2); var _objectWithoutProperties2 = require('babel-runtime/helpers/objectWithoutProperties'); var _objectWithoutProperties3 = _interopRequireDefault(_objectWithoutProperties2); var _propTypes = require('prop-types'); var _propTypes2 = _interopRequireDefault(_propTypes); var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _recompose = require('recompose'); var _helperFunctions = require('./helperFunctions'); var _RTGTransition = require('./RTGTransition'); var _RTGTransition2 = _interopRequireDefault(_RTGTransition); var _CTCGeneric = require('./CTCGeneric'); var _CTCGeneric2 = _interopRequireDefault(_CTCGeneric); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var basePopoverStyle = { position: 'absolute' }; var CCPopover = function CCPopover(_ref) { var useOCL = _ref.useOCL, _ref$transitionType = _ref.transitionType, transitionType = _ref$transitionType === undefined ? 'fade' : _ref$transitionType, children = _ref.children, transitionProps = _ref.transitionProps, debugMode = _ref.debugMode, renderTrigger = _ref.renderTrigger, _ref$className = _ref.className, className = _ref$className === undefined ? '' : _ref$className, _ref$style = _ref.style, style = _ref$style === undefined ? {} : _ref$style, _ref$onClick = _ref.onClick, onClick = _ref$onClick === undefined ? function () { return null; } : _ref$onClick, props = (0, _objectWithoutProperties3.default)(_ref, ['useOCL', 'transitionType', 'children', 'transitionProps', 'debugMode', 'renderTrigger', 'className', 'style', 'onClick']); return _react2.default.createElement( _CTCGeneric2.default, (0, _extends3.default)({}, props, { useOCL: useOCL }), function (_ref2) { var getContainerProps = _ref2.getContainerProps, getChildrenProps = _ref2.getChildrenProps, isOn = _ref2.isOn, genericProps = (0, _objectWithoutProperties3.default)(_ref2, ['getContainerProps', 'getChildrenProps', 'isOn']); var renderPopover = function renderPopover(func) { return _react2.default.createElement( _RTGTransition2.default, { in: isOn, transitionProps: transitionProps, transitionType: transitionType }, function (_ref3) { var transitionStyle = _ref3.style; var getPopoverProps = function getPopoverProps() { var _ref4 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var className = _ref4.className, style = _ref4.style, props = (0, _objectWithoutProperties3.default)(_ref4, ['className', 'style']); return getChildrenProps((0, _extends3.default)({ style: (0, _extends3.default)({}, transitionStyle, basePopoverStyle, style), className: className ? className + ' ccpopover__popover' : 'ccpopover__popover' }, props)); }; return func({ getPopoverProps: getPopoverProps }); } ); }; return children((0, _extends3.default)({ getContainerProps: getContainerProps, renderPopover: renderPopover }, genericProps)); } ); }; CCPopover.propTypes = { children: _propTypes2.default.oneOfType([_propTypes2.default.node, _propTypes2.default.func]).isRequired }; CCPopover.defaultProps = { isOn: false }; var enhance = (0, _recompose.compose)((0, _recompose.onlyUpdateForKeys)(['children'])); exports.default = enhance(CCPopover);