@helpscout/hsds-react
Version:
React component library for Help Scout's Design System
64 lines (48 loc) • 1.63 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports.default = void 0;
var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
function noop() {}
var SimpleThemeProvider = /*#__PURE__*/function (_React$PureComponent) {
(0, _inheritsLoose2.default)(SimpleThemeProvider, _React$PureComponent);
function SimpleThemeProvider(props, context) {
var _this;
_this = _React$PureComponent.call(this, props, context) || this;
_this.getChildContext = function () {
return {
theme: _this.state.theme
};
};
_this.state = {
theme: props.theme
};
return _this;
}
var _proto = SimpleThemeProvider.prototype;
_proto.UNSAFE_componentWillReceiveProps = function UNSAFE_componentWillReceiveProps(nextProps) {
if (nextProps.theme !== this.state.theme) {
this.setState({
theme: nextProps.theme
});
}
};
_proto.render = function render() {
return this.props.children;
};
return SimpleThemeProvider;
}(_react.default.PureComponent);
SimpleThemeProvider.defaultProps = {
theme: 'default'
};
SimpleThemeProvider.childContextTypes = {
theme: noop
};
SimpleThemeProvider.propTypes = {
children: _propTypes.default.any,
theme: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.oneOf(['default'])])
};
var _default = SimpleThemeProvider;
exports.default = _default;
;