Repository URL to install this package:
|
Version:
1.2.9 ▾
|
@skava/modules
/
___dist
/
view-container
/
styles
/
styled-components
/
src
/
models
/
StyleSheetManager.js
|
|---|
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = require("react");
var _propTypes = _interopRequireDefault(require("prop-types"));
var _constants = require("../constants");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/* eslint-disable no-negated-condition */
/* eslint-disable no-underscore-dangle */
// @note - circuar
// import StyleSheet from './StyleSheet'
// import ServerStyleSheet from './ServerStyleSheet'
/* this error is used for makeStyleTag */
const targetPropErr = process.env.NODE_ENV !== 'production' ? `
The StyleSheetManager expects a valid target or sheet prop!
- Does this error occur on the client and is your target falsy?
- Does this error occur on the server and is the sheet falsy?
`.trim() : '';
let StyleSheetManager = class StyleSheetManager extends _react.Component {
constructor(...args) {
var _temp;
return _temp = super(...args), this.sheetInstance = void 0, this.props = void 0, _temp;
}
getChildContext() {
return {
[_constants.CONTEXT_KEY]: this.sheetInstance
};
}
componentWillMount() {
if (this.props.sheet) {
this.sheetInstance = this.props.sheet;
} else if (this.props.target) {
this.sheetInstance = new StyleSheet(this.props.target);
} else {
throw new Error(targetPropErr);
}
}
render() {
/* eslint-disable react/prop-types */
// Flow v0.43.1 will report an error accessing the `children` property,
// but v0.47.0 will not. It is necessary to use a type cast instead of
// a "fixme" comment to satisfy both Flow versions.
// return React.Children.only(this.props.children)
return this.props.children;
}
};
StyleSheetManager.childContextTypes = {
[_constants.CONTEXT_KEY]: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.object] // PropTypes.instanceOf(StyleSheet),
// PropTypes.instanceOf(ServerStyleSheet),
).isRequired
};
StyleSheetManager.propTypes = {
sheet: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.object] // PropTypes.instanceOf(StyleSheet),
// PropTypes.instanceOf(ServerStyleSheet),
),
target: _propTypes.default.shape({
appendChild: _propTypes.default.func.isRequired
})
};
var _default = StyleSheetManager;
exports.default = _default;