UNPKG

@render-props/paragraphs

Version:

A function as child component which provides an interface for creating paragraphs with line breaks from raw text with `\n` new lines. The default render child is: ```js const defaultParagraph = props => <p key={props.key} children={props.text}/> ```

37 lines (27 loc) 688 B
'use strict' var _interopRequireDefault = require('@babel/runtime/helpers/interopRequireDefault') exports.__esModule = true exports.default = toBreaks var _react = _interopRequireDefault(require('react')) var _limitLines = _interopRequireDefault(require('./limitLines')) const _breakRe = /(\n)/g function breaker(line, x) { return line.match(_breakRe) ? _react.default.createElement('br', { key: x + '--' + line, }) : line } function _ref(line) { return line } function toBreaks(rawText) { if (!rawText) { return rawText } rawText = (0, _limitLines.default)(rawText) return rawText .split(_breakRe) .map(breaker) .filter(_ref) }