| 1234567891011121314151617181920212223242526272829303132333435363738 |
- import parse from 'inline-style-parser';
- /**
- * Parses inline style to object.
- *
- * @param style - Inline style.
- * @param iterator - Iterator.
- * @returns - Style object or null.
- *
- * @example Parsing inline style to object:
- *
- * ```js
- * import parse from 'style-to-object';
- * parse('line-height: 42;'); // { 'line-height': '42' }
- * ```
- */
- export default function StyleToObject(style, iterator) {
- let styleObject = null;
- if (!style || typeof style !== 'string') {
- return styleObject;
- }
- const declarations = parse(style);
- const hasIterator = typeof iterator === 'function';
- declarations.forEach((declaration) => {
- if (declaration.type !== 'declaration') {
- return;
- }
- const { property, value } = declaration;
- if (hasIterator) {
- iterator(property, value, declaration);
- }
- else if (value) {
- styleObject = styleObject || {};
- styleObject[property] = value;
- }
- });
- return styleObject;
- }
- //# sourceMappingURL=index.js.map
|