@dabapps/roe
Version:
A collection of React components, styles, mixins, and atomic CSS classes to aid with the development of web applications.
45 lines • 1.88 kB
JavaScript
;
var __spreadArrays = (this && this.__spreadArrays) || function () {
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
for (var r = Array(s), k = 0, i = 0; i < il; i++)
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
r[k] = a[j];
return r;
};
Object.defineProperty(exports, "__esModule", { value: true });
var React = require("react");
var utils_1 = require("../../utils");
var words_1 = require("../../words");
var ipsumItem = function (component, index) {
var ipsum = utils_1.generateIpsum(words_1.WORDS);
switch (component) {
case 'ol':
case 'ul':
return React.createElement("li", { key: index }, ipsum);
case 'text':
return React.createElement("span", { key: index }, ipsum);
case 'p':
default:
return React.createElement("p", { key: index }, ipsum);
}
};
/**
* Custom Ipsum component, useful for rendering placeholder text when prototyping.
*/
var DabIpsum = function (props) {
var _a = props.component, component = _a === void 0 ? 'p' : _a, _b = props.count, count = _b === void 0 ? 5 : _b;
var items = __spreadArrays(Array(count));
switch (component) {
case 'ul':
return (React.createElement("ul", null, items.map(function (_value, index) { return ipsumItem(component, index); })));
case 'ol':
return (React.createElement("ol", null, items.map(function (_value, index) { return ipsumItem(component, index); })));
case 'text':
return ipsumItem(component, 0);
case 'p':
default:
return (React.createElement("div", null, items.map(function (_value, index) { return ipsumItem(component, index); })));
}
};
exports.default = React.memo(DabIpsum);
//# sourceMappingURL=dab-ipsum.js.map