UNPKG

rsuite

Version:

A suite of react components

32 lines (30 loc) 1.06 kB
'use client'; "use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = void 0; exports.tplTransform = tplTransform; var _react = _interopRequireDefault(require("react")); var toJSX = function toJSX(node, key) { return typeof node !== 'undefined' ? /*#__PURE__*/_react.default.createElement("span", { key: key }, node) : null; }; /** * Transforms a pattern string by replacing placeholders with corresponding data values. * * @example * tplTransform('Show {0} data', <i>100</i>); * // output: Show <span><i>100</i></span> data */ function tplTransform(pattern) { for (var _len = arguments.length, data = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { data[_key - 1] = arguments[_key]; } return pattern.split(/\{(\d+)\}/).map(function (item, index) { return index % 2 ? toJSX(data[+item], index) : toJSX(item, index); }).filter(function (item) { return item !== ''; }); } var _default = exports.default = tplTransform;