102 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			102 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
'use strict';
 | 
						|
 | 
						|
Object.defineProperty(exports, "__esModule", {
 | 
						|
  value: true
 | 
						|
});
 | 
						|
exports.styles = undefined;
 | 
						|
 | 
						|
var _extends2 = require('babel-runtime/helpers/extends');
 | 
						|
 | 
						|
var _extends3 = _interopRequireDefault(_extends2);
 | 
						|
 | 
						|
var _defineProperty2 = require('babel-runtime/helpers/defineProperty');
 | 
						|
 | 
						|
var _defineProperty3 = _interopRequireDefault(_defineProperty2);
 | 
						|
 | 
						|
var _objectWithoutProperties2 = require('babel-runtime/helpers/objectWithoutProperties');
 | 
						|
 | 
						|
var _objectWithoutProperties3 = _interopRequireDefault(_objectWithoutProperties2);
 | 
						|
 | 
						|
var _react = require('react');
 | 
						|
 | 
						|
var _react2 = _interopRequireDefault(_react);
 | 
						|
 | 
						|
var _propTypes = require('prop-types');
 | 
						|
 | 
						|
var _propTypes2 = _interopRequireDefault(_propTypes);
 | 
						|
 | 
						|
var _classnames = require('classnames');
 | 
						|
 | 
						|
var _classnames2 = _interopRequireDefault(_classnames);
 | 
						|
 | 
						|
var _withStyles = require('../styles/withStyles');
 | 
						|
 | 
						|
var _withStyles2 = _interopRequireDefault(_withStyles);
 | 
						|
 | 
						|
var _Fade = require('../transitions/Fade');
 | 
						|
 | 
						|
var _Fade2 = _interopRequireDefault(_Fade);
 | 
						|
 | 
						|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 | 
						|
 | 
						|
var styles = exports.styles = {
 | 
						|
  root: {
 | 
						|
    zIndex: -1,
 | 
						|
    width: '100%',
 | 
						|
    height: '100%',
 | 
						|
    position: 'fixed',
 | 
						|
    top: 0,
 | 
						|
    left: 0,
 | 
						|
    // Remove grey highlight
 | 
						|
    WebkitTapHighlightColor: 'transparent',
 | 
						|
    willChange: 'opacity',
 | 
						|
    backgroundColor: 'rgba(0, 0, 0, 0.5)'
 | 
						|
  },
 | 
						|
  invisible: {
 | 
						|
    backgroundColor: 'transparent'
 | 
						|
  }
 | 
						|
};
 | 
						|
 | 
						|
function Backdrop(props) {
 | 
						|
  var classes = props.classes,
 | 
						|
      invisible = props.invisible,
 | 
						|
      open = props.open,
 | 
						|
      transitionDuration = props.transitionDuration,
 | 
						|
      other = (0, _objectWithoutProperties3.default)(props, ['classes', 'invisible', 'open', 'transitionDuration']);
 | 
						|
 | 
						|
 | 
						|
  var className = (0, _classnames2.default)(classes.root, (0, _defineProperty3.default)({}, classes.invisible, invisible));
 | 
						|
 | 
						|
  return _react2.default.createElement(
 | 
						|
    _Fade2.default,
 | 
						|
    (0, _extends3.default)({ appear: true, 'in': open, timeout: transitionDuration }, other),
 | 
						|
    _react2.default.createElement('div', { className: className, 'aria-hidden': 'true' })
 | 
						|
  );
 | 
						|
}
 | 
						|
 | 
						|
Backdrop.propTypes = process.env.NODE_ENV !== "production" ? {
 | 
						|
  /**
 | 
						|
   * Useful to extend the style applied to components.
 | 
						|
   */
 | 
						|
  classes: _propTypes2.default.object.isRequired,
 | 
						|
  /**
 | 
						|
   * If `true`, the backdrop is invisible.
 | 
						|
   * It can be used when rendering a popover or a custom select component.
 | 
						|
   */
 | 
						|
  invisible: _propTypes2.default.bool,
 | 
						|
  /**
 | 
						|
   * If `true`, the backdrop is open.
 | 
						|
   */
 | 
						|
  open: _propTypes2.default.bool.isRequired,
 | 
						|
  /**
 | 
						|
   * The duration for the transition, in milliseconds.
 | 
						|
   * You may specify a single timeout for all transitions, or individually with an object.
 | 
						|
   */
 | 
						|
  transitionDuration: _propTypes2.default.oneOfType([_propTypes2.default.number, _propTypes2.default.shape({ enter: _propTypes2.default.number, exit: _propTypes2.default.number })])
 | 
						|
} : {};
 | 
						|
 | 
						|
Backdrop.defaultProps = {
 | 
						|
  invisible: false
 | 
						|
};
 | 
						|
 | 
						|
exports.default = (0, _withStyles2.default)(styles, { name: 'MuiBackdrop' })(Backdrop); |