UNPKG

@20minutes/draft-convert

Version:

Extensibly serialize & deserialize Draft.js ContentState

34 lines (33 loc) 1.18 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "default", { enumerable: true, get: function() { return _default; } }); const _react = /*#__PURE__*/ _interop_require_default(require("react")); const _splitReactElement = /*#__PURE__*/ _interop_require_default(require("./splitReactElement.js")); function _interop_require_default(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const getElementTagLength = (element, type = 'start')=>{ if (/*#__PURE__*/ _react.default.isValidElement(element)) { const splitElement = (0, _splitReactElement.default)(element); if (typeof splitElement === 'string') { return 0; } const { length } = splitElement[type]; const child = _react.default.Children.toArray(element.props.children)[0]; return length + (child && /*#__PURE__*/ _react.default.isValidElement(child) ? getElementTagLength(child, type) : 0); } if (typeof element === 'object') { return element[type] ? element[type].length : 0; } return 0; }; const _default = getElementTagLength;