react-storybook-addon-chapters
Version:
React Storybook Chapters addon allows showcasing of multiple components within a story by breaking it down into smaller categories (chapters) and subcategories (sections) for more organizational goodness.
54 lines (41 loc) • 1.23 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = renderInfoContent;
var _react = _interopRequireDefault(require("react"));
var _marksy = _interopRequireDefault(require("marksy"));
var _markdown = require("@storybook/addon-info/dist/components/markdown");
var defaultMarksyConf = {
h1: _markdown.H1,
h2: _markdown.H2,
h3: _markdown.H3,
h4: _markdown.H4,
h5: _markdown.H5,
h6: _markdown.H6,
code: _markdown.Code,
a: _markdown.A,
p: _markdown.P,
li: _markdown.LI,
ul: _markdown.UL
};
function renderInfoContent(content) {
var markdownInfo = (0, _marksy["default"])(defaultMarksyConf, content);
if (!content || content === '' || typeof content !== 'string') {
return null;
}
var lines = content.split('\n');
while (lines[0].trim() === '') {
lines.shift();
}
var padding = 0;
var matches = lines[0].match(/^ */);
if (matches) {
padding = matches[0].length;
}
var source = lines.map(function (s) {
return s.slice(padding);
}).join('\n');
return _react["default"].createElement("div", null, markdownInfo(source).tree);
}