text: "use strict";
  
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
  
  Object.defineProperty(exports, "__esModule", {
    value: true
  });
  Object.defineProperty(exports, "DIRECTIONS", {
    enumerable: true,
    get: function get() {
      return _reactWithDirection.DIRECTIONS;
    }
  });
  exports["default"] = void 0;
  
  var _react = require("react");
  
  var _propTypes = _interopRequireDefault(require("prop-types"));
  
  var _reactWithDirection = require("react-with-direction");
  
  function detectAndCreateContext(defaultValue) {
    if (_react.createContext) {
      return (0, _react.createContext)(defaultValue);
    }
  
    return {
      Provider: function Provider() {
        throw new ReferenceError('WithStylesContext requires React 16.3 or later');
      },
      Consumer: function Consumer() {
        throw new ReferenceError('WithStylesContext requires React 16.3 or later');
      }
    };
  }
  
  var WithStylesContext = detectAndCreateContext({
    stylesInterface: null,
    stylesTheme: null,
    direction: null
  });
  WithStylesContext.Provider.propTypes = {
    stylesInterface: _propTypes["default"].object,
    // eslint-disable-line react/forbid-prop-types
    stylesTheme: _propTypes["default"].object,
    // eslint-disable-line react/forbid-prop-types
    direction: _propTypes["default"].oneOf([_reactWithDirection.DIRECTIONS.LTR, _reactWithDirection.DIRECTIONS.RTL])
  };
  var _default = WithStylesContext;
  exports["default"] = _default;