revenge-react-components
Version:
react-components for revenge https://github.com/buildo/revenge
94 lines (71 loc) • 3.51 kB
JavaScript
;
exports.__esModule = true;
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }
function _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _revenge = require('revenge');
var _ = require('../');
var _classnames = require('classnames');
var _classnames2 = _interopRequireDefault(_classnames);
require('./tooltip.scss');
var Tooltip = (function (_React$Component) {
_inherits(Tooltip, _React$Component);
function Tooltip() {
_classCallCheck(this, _Tooltip);
_React$Component.apply(this, arguments);
}
Tooltip.prototype.getLocals = function getLocals() {
var _props = this.props;
var children = _props.children;
var props = _objectWithoutProperties(_props, ['children']);
var popover = _extends({}, props.popover, {
event: 'hover',
className: _classnames2['default']('tooltip', props.popover.className)
});
return {
props: _extends({}, props, {
popover: _extends({}, popover, {
attachToBody: true
})
}),
children: children
};
};
Tooltip.prototype.template = function template(_ref) {
var props = _ref.props;
var children = _ref.children;
return _react2['default'].createElement(
_.Popover,
props,
children
);
};
var _Tooltip = Tooltip;
Tooltip = _revenge.props({
children: _revenge.t.ReactNode,
popover: _revenge.t.struct({
content: _revenge.t.Str,
attachToBody: _revenge.t.maybe(_revenge.t.Bool),
position: _revenge.t.maybe(_revenge.t.Str),
anchor: _revenge.t.maybe(_revenge.t.Str),
onShow: _revenge.t.maybe(_revenge.t.Func),
onHide: _revenge.t.maybe(_revenge.t.Func),
dismissOnScroll: _revenge.t.maybe(_revenge.t.Bool),
className: _revenge.t.maybe(_revenge.t.Str),
id: _revenge.t.maybe(_revenge.t.Str),
maxWidth: _revenge.t.maybe(_revenge.t.union([_revenge.t.Num, _revenge.t.Str]))
}),
className: _revenge.t.maybe(_revenge.t.Str),
id: _revenge.t.maybe(_revenge.t.Str),
style: _revenge.t.maybe(_revenge.t.Obj)
})(Tooltip) || Tooltip;
Tooltip = _revenge.skinnable()(Tooltip) || Tooltip;
Tooltip = _revenge.pure(Tooltip) || Tooltip;
return Tooltip;
})(_react2['default'].Component);
exports['default'] = Tooltip;
module.exports = exports['default'];