@bootstrap-styled/rsg-components
Version:
Create documentation layouts for your react-styleguidist using Bootstrap-Styled rsg-component. Boostrap Styled rsg-components use the @bootstrap-styled/v4 for recreating the original rsg-components.
62 lines (51 loc) • 1.91 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = Examples;
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _Playground = _interopRequireDefault(require("react-styleguidist/lib/client/rsg-components/Playground"));
var _Markdown = _interopRequireDefault(require("react-styleguidist/lib/client/rsg-components/Markdown"));
var _ExamplesRenderer = _interopRequireDefault(require("./ExamplesRenderer"));
function Examples(_ref, _ref2) {
var examples = _ref.examples,
name = _ref.name,
exampleMode = _ref.exampleMode;
var codeRevision = _ref2.codeRevision;
return _react.default.createElement(_ExamplesRenderer.default, {
name: name
}, examples.map(function (example, index) {
switch (example.type) {
case 'code':
return _react.default.createElement(_Playground.default, {
code: example.content,
evalInContext: example.evalInContext,
key: "".concat(codeRevision, "/").concat(index) // eslint-disable-line react/no-array-index-key
,
name: name,
index: index,
settings: example.settings,
exampleMode: exampleMode
});
case 'markdown':
return _react.default.createElement(_Markdown.default, {
text: example.content,
key: index
});
// eslint-disable-line react/no-array-index-key
default:
return null;
}
}));
}
Examples.propTypes = {
examples: _propTypes.default.array.isRequired,
name: _propTypes.default.string.isRequired,
exampleMode: _propTypes.default.string.isRequired
};
Examples.contextTypes = {
codeRevision: _propTypes.default.number.isRequired
};
module.exports = exports.default;