html-react-parser 0.13.0 → 0.14.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"html-react-parser.min.js","sources":["../node_modules/react-property/lib/HTMLDOMPropertyConfig.js","../node_modules/react-property/lib/SVGDOMPropertyConfig.js","../node_modules/react-property/index.js","../node_modules/react-property/lib/injection.js","../node_modules/inline-style-parser/index.js","../node_modules/style-to-object/index.js","../lib/utilities.js","../lib/attributes-to-props.js","../node_modules/html-dom-parser/lib/utilities.js","../lib/dom-to-react.js","../node_modules/html-dom-parser/lib/constants.js","../node_modules/html-dom-parser/lib/domparser.js","../node_modules/html-dom-parser/lib/html-to-dom-client.js","../index.js"],"sourcesContent":["module.exports = {\n Properties: {\n autoFocus: 4,\n accept: 0,\n acceptCharset: 0,\n accessKey: 0,\n action: 0,\n allowFullScreen: 4,\n allowTransparency: 0,\n alt: 0,\n as: 0,\n async: 4,\n autoComplete: 0,\n autoPlay: 4,\n capture: 4,\n cellPadding: 0,\n cellSpacing: 0,\n charSet: 0,\n challenge: 0,\n checked: 5,\n cite: 0,\n classID: 0,\n className: 0,\n cols: 24,\n colSpan: 0,\n content: 0,\n contentEditable: 0,\n contextMenu: 0,\n controls: 4,\n controlsList: 0,\n coords: 0,\n crossOrigin: 0,\n data: 0,\n dateTime: 0,\n default: 4,\n defer: 4,\n dir: 0,\n disabled: 4,\n download: 32,\n draggable: 0,\n encType: 0,\n form: 0,\n formAction: 0,\n formEncType: 0,\n formMethod: 0,\n formNoValidate: 4,\n formTarget: 0,\n frameBorder: 0,\n headers: 0,\n height: 0,\n hidden: 4,\n high: 0,\n href: 0,\n hrefLang: 0,\n htmlFor: 0,\n httpEquiv: 0,\n icon: 0,\n id: 0,\n inputMode: 0,\n integrity: 0,\n is: 0,\n keyParams: 0,\n keyType: 0,\n kind: 0,\n label: 0,\n lang: 0,\n list: 0,\n loop: 4,\n low: 0,\n manifest: 0,\n marginHeight: 0,\n marginWidth: 0,\n max: 0,\n maxLength: 0,\n media: 0,\n mediaGroup: 0,\n method: 0,\n min: 0,\n minLength: 0,\n multiple: 5,\n muted: 5,\n name: 0,\n nonce: 0,\n noValidate: 4,\n open: 4,\n optimum: 0,\n pattern: 0,\n placeholder: 0,\n playsInline: 4,\n poster: 0,\n preload: 0,\n profile: 0,\n radioGroup: 0,\n readOnly: 4,\n referrerPolicy: 0,\n rel: 0,\n required: 4,\n reversed: 4,\n role: 0,\n rows: 24,\n rowSpan: 8,\n sandbox: 0,\n scope: 0,\n scoped: 4,\n scrolling: 0,\n seamless: 4,\n selected: 5,\n shape: 0,\n size: 24,\n sizes: 0,\n span: 24,\n spellCheck: 0,\n src: 0,\n srcDoc: 0,\n srcLang: 0,\n srcSet: 0,\n start: 8,\n step: 0,\n style: 0,\n summary: 0,\n tabIndex: 0,\n target: 0,\n title: 0,\n type: 0,\n useMap: 0,\n value: 0,\n width: 0,\n wmode: 0,\n wrap: 0,\n about: 0,\n datatype: 0,\n inlist: 0,\n prefix: 0,\n property: 0,\n resource: 0,\n typeof: 0,\n vocab: 0,\n autoCapitalize: 0,\n autoCorrect: 0,\n autoSave: 0,\n color: 0,\n itemProp: 0,\n itemScope: 4,\n itemType: 0,\n itemID: 0,\n itemRef: 0,\n results: 0,\n security: 0,\n unselectable: 0\n },\n DOMAttributeNames: {\n acceptCharset: 'accept-charset',\n className: 'class',\n htmlFor: 'for',\n httpEquiv: 'http-equiv'\n }\n};\n","module.exports = {\n Properties: {\n accentHeight: 0,\n accumulate: 0,\n additive: 0,\n alignmentBaseline: 0,\n allowReorder: 0,\n alphabetic: 0,\n amplitude: 0,\n arabicForm: 0,\n ascent: 0,\n attributeName: 0,\n attributeType: 0,\n autoReverse: 0,\n azimuth: 0,\n baseFrequency: 0,\n baseProfile: 0,\n baselineShift: 0,\n bbox: 0,\n begin: 0,\n bias: 0,\n by: 0,\n calcMode: 0,\n capHeight: 0,\n clip: 0,\n clipPath: 0,\n clipRule: 0,\n clipPathUnits: 0,\n colorInterpolation: 0,\n colorInterpolationFilters: 0,\n colorProfile: 0,\n colorRendering: 0,\n contentScriptType: 0,\n contentStyleType: 0,\n cursor: 0,\n cx: 0,\n cy: 0,\n d: 0,\n decelerate: 0,\n descent: 0,\n diffuseConstant: 0,\n direction: 0,\n display: 0,\n divisor: 0,\n dominantBaseline: 0,\n dur: 0,\n dx: 0,\n dy: 0,\n edgeMode: 0,\n elevation: 0,\n enableBackground: 0,\n end: 0,\n exponent: 0,\n externalResourcesRequired: 0,\n fill: 0,\n fillOpacity: 0,\n fillRule: 0,\n filter: 0,\n filterRes: 0,\n filterUnits: 0,\n floodColor: 0,\n floodOpacity: 0,\n focusable: 0,\n fontFamily: 0,\n fontSize: 0,\n fontSizeAdjust: 0,\n fontStretch: 0,\n fontStyle: 0,\n fontVariant: 0,\n fontWeight: 0,\n format: 0,\n from: 0,\n fx: 0,\n fy: 0,\n g1: 0,\n g2: 0,\n glyphName: 0,\n glyphOrientationHorizontal: 0,\n glyphOrientationVertical: 0,\n glyphRef: 0,\n gradientTransform: 0,\n gradientUnits: 0,\n hanging: 0,\n horizAdvX: 0,\n horizOriginX: 0,\n ideographic: 0,\n imageRendering: 0,\n in: 0,\n in2: 0,\n intercept: 0,\n k: 0,\n k1: 0,\n k2: 0,\n k3: 0,\n k4: 0,\n kernelMatrix: 0,\n kernelUnitLength: 0,\n kerning: 0,\n keyPoints: 0,\n keySplines: 0,\n keyTimes: 0,\n lengthAdjust: 0,\n letterSpacing: 0,\n lightingColor: 0,\n limitingConeAngle: 0,\n local: 0,\n markerEnd: 0,\n markerMid: 0,\n markerStart: 0,\n markerHeight: 0,\n markerUnits: 0,\n markerWidth: 0,\n mask: 0,\n maskContentUnits: 0,\n maskUnits: 0,\n mathematical: 0,\n mode: 0,\n numOctaves: 0,\n offset: 0,\n opacity: 0,\n operator: 0,\n order: 0,\n orient: 0,\n orientation: 0,\n origin: 0,\n overflow: 0,\n overlinePosition: 0,\n overlineThickness: 0,\n paintOrder: 0,\n panose1: 0,\n pathLength: 0,\n patternContentUnits: 0,\n patternTransform: 0,\n patternUnits: 0,\n pointerEvents: 0,\n points: 0,\n pointsAtX: 0,\n pointsAtY: 0,\n pointsAtZ: 0,\n preserveAlpha: 0,\n preserveAspectRatio: 0,\n primitiveUnits: 0,\n r: 0,\n radius: 0,\n refX: 0,\n refY: 0,\n renderingIntent: 0,\n repeatCount: 0,\n repeatDur: 0,\n requiredExtensions: 0,\n requiredFeatures: 0,\n restart: 0,\n result: 0,\n rotate: 0,\n rx: 0,\n ry: 0,\n scale: 0,\n seed: 0,\n shapeRendering: 0,\n slope: 0,\n spacing: 0,\n specularConstant: 0,\n specularExponent: 0,\n speed: 0,\n spreadMethod: 0,\n startOffset: 0,\n stdDeviation: 0,\n stemh: 0,\n stemv: 0,\n stitchTiles: 0,\n stopColor: 0,\n stopOpacity: 0,\n strikethroughPosition: 0,\n strikethroughThickness: 0,\n string: 0,\n stroke: 0,\n strokeDasharray: 0,\n strokeDashoffset: 0,\n strokeLinecap: 0,\n strokeLinejoin: 0,\n strokeMiterlimit: 0,\n strokeOpacity: 0,\n strokeWidth: 0,\n surfaceScale: 0,\n systemLanguage: 0,\n tableValues: 0,\n targetX: 0,\n targetY: 0,\n textAnchor: 0,\n textDecoration: 0,\n textRendering: 0,\n textLength: 0,\n to: 0,\n transform: 0,\n u1: 0,\n u2: 0,\n underlinePosition: 0,\n underlineThickness: 0,\n unicode: 0,\n unicodeBidi: 0,\n unicodeRange: 0,\n unitsPerEm: 0,\n vAlphabetic: 0,\n vHanging: 0,\n vIdeographic: 0,\n vMathematical: 0,\n values: 0,\n vectorEffect: 0,\n version: 0,\n vertAdvY: 0,\n vertOriginX: 0,\n vertOriginY: 0,\n viewBox: 0,\n viewTarget: 0,\n visibility: 0,\n widths: 0,\n wordSpacing: 0,\n writingMode: 0,\n x: 0,\n xHeight: 0,\n x1: 0,\n x2: 0,\n xChannelSelector: 0,\n xlinkActuate: 0,\n xlinkArcrole: 0,\n xlinkHref: 0,\n xlinkRole: 0,\n xlinkShow: 0,\n xlinkTitle: 0,\n xlinkType: 0,\n xmlBase: 0,\n xmlns: 0,\n xmlnsXlink: 0,\n xmlLang: 0,\n xmlSpace: 0,\n y: 0,\n y1: 0,\n y2: 0,\n yChannelSelector: 0,\n z: 0,\n zoomAndPan: 0\n },\n DOMAttributeNames: {\n accentHeight: 'accent-height',\n alignmentBaseline: 'alignment-baseline',\n arabicForm: 'arabic-form',\n baselineShift: 'baseline-shift',\n capHeight: 'cap-height',\n clipPath: 'clip-path',\n clipRule: 'clip-rule',\n colorInterpolation: 'color-interpolation',\n colorInterpolationFilters: 'color-interpolation-filters',\n colorProfile: 'color-profile',\n colorRendering: 'color-rendering',\n dominantBaseline: 'dominant-baseline',\n enableBackground: 'enable-background',\n fillOpacity: 'fill-opacity',\n fillRule: 'fill-rule',\n floodColor: 'flood-color',\n floodOpacity: 'flood-opacity',\n fontFamily: 'font-family',\n fontSize: 'font-size',\n fontSizeAdjust: 'font-size-adjust',\n fontStretch: 'font-stretch',\n fontStyle: 'font-style',\n fontVariant: 'font-variant',\n fontWeight: 'font-weight',\n glyphName: 'glyph-name',\n glyphOrientationHorizontal: 'glyph-orientation-horizontal',\n glyphOrientationVertical: 'glyph-orientation-vertical',\n horizAdvX: 'horiz-adv-x',\n horizOriginX: 'horiz-origin-x',\n imageRendering: 'image-rendering',\n letterSpacing: 'letter-spacing',\n lightingColor: 'lighting-color',\n markerEnd: 'marker-end',\n markerMid: 'marker-mid',\n markerStart: 'marker-start',\n overlinePosition: 'overline-position',\n overlineThickness: 'overline-thickness',\n paintOrder: 'paint-order',\n panose1: 'panose-1',\n pointerEvents: 'pointer-events',\n renderingIntent: 'rendering-intent',\n shapeRendering: 'shape-rendering',\n stopColor: 'stop-color',\n stopOpacity: 'stop-opacity',\n strikethroughPosition: 'strikethrough-position',\n strikethroughThickness: 'strikethrough-thickness',\n strokeDasharray: 'stroke-dasharray',\n strokeDashoffset: 'stroke-dashoffset',\n strokeLinecap: 'stroke-linecap',\n strokeLinejoin: 'stroke-linejoin',\n strokeMiterlimit: 'stroke-miterlimit',\n strokeOpacity: 'stroke-opacity',\n strokeWidth: 'stroke-width',\n textAnchor: 'text-anchor',\n textDecoration: 'text-decoration',\n textRendering: 'text-rendering',\n underlinePosition: 'underline-position',\n underlineThickness: 'underline-thickness',\n unicodeBidi: 'unicode-bidi',\n unicodeRange: 'unicode-range',\n unitsPerEm: 'units-per-em',\n vAlphabetic: 'v-alphabetic',\n vHanging: 'v-hanging',\n vIdeographic: 'v-ideographic',\n vMathematical: 'v-mathematical',\n vectorEffect: 'vector-effect',\n vertAdvY: 'vert-adv-y',\n vertOriginX: 'vert-origin-x',\n vertOriginY: 'vert-origin-y',\n wordSpacing: 'word-spacing',\n writingMode: 'writing-mode',\n xHeight: 'x-height',\n xlinkActuate: 'xlink:actuate',\n xlinkArcrole: 'xlink:arcrole',\n xlinkHref: 'xlink:href',\n xlinkRole: 'xlink:role',\n xlinkShow: 'xlink:show',\n xlinkTitle: 'xlink:title',\n xlinkType: 'xlink:type',\n xmlBase: 'xml:base',\n xmlnsXlink: 'xmlns:xlink',\n xmlLang: 'xml:lang',\n xmlSpace: 'xml:space'\n }\n};\n","var HTMLDOMPropertyConfig = require('./lib/HTMLDOMPropertyConfig');\nvar SVGDOMPropertyConfig = require('./lib/SVGDOMPropertyConfig');\nvar injection = require('./lib/injection');\n\nvar MUST_USE_PROPERTY = injection.MUST_USE_PROPERTY;\nvar HAS_BOOLEAN_VALUE = injection.HAS_BOOLEAN_VALUE;\nvar HAS_NUMERIC_VALUE = injection.HAS_NUMERIC_VALUE;\nvar HAS_POSITIVE_NUMERIC_VALUE = injection.HAS_POSITIVE_NUMERIC_VALUE;\nvar HAS_OVERLOADED_BOOLEAN_VALUE = injection.HAS_OVERLOADED_BOOLEAN_VALUE;\n\n/**\n * @see https://github.com/facebook/react/blob/15-stable/src/renderers/dom/shared/DOMProperty.js#L14-L16\n *\n * @param {Number} value\n * @param {Number} bitmask\n * @return {Boolean}\n */\nfunction checkMask(value, bitmask) {\n return (value & bitmask) === bitmask;\n}\n\n/**\n * @see https://github.com/facebook/react/blob/15-stable/src/renderers/dom/shared/DOMProperty.js#L57\n *\n * @param {Object} domPropertyConfig - HTMLDOMPropertyConfig or SVGDOMPropertyConfig\n * @param {Object} config - The object to be mutated\n * @param {Boolean} isSVG - Whether the injected config is HTML or SVG (it assumes the default is HTML)\n */\nfunction injectDOMPropertyConfig(domPropertyConfig, config, isSVG) {\n var Properties = domPropertyConfig.Properties;\n var DOMAttributeNames = domPropertyConfig.DOMAttributeNames;\n var attributeName;\n var propertyName;\n var propConfig;\n\n for (propertyName in Properties) {\n attributeName =\n DOMAttributeNames[propertyName] ||\n (isSVG ? propertyName : propertyName.toLowerCase());\n propConfig = Properties[propertyName];\n\n config[attributeName] = {\n attributeName: attributeName,\n propertyName: propertyName,\n mustUseProperty: checkMask(propConfig, MUST_USE_PROPERTY),\n hasBooleanValue: checkMask(propConfig, HAS_BOOLEAN_VALUE),\n hasNumericValue: checkMask(propConfig, HAS_NUMERIC_VALUE),\n hasPositiveNumericValue: checkMask(\n propConfig,\n HAS_POSITIVE_NUMERIC_VALUE\n ),\n hasOverloadedBooleanValue: checkMask(\n propConfig,\n HAS_OVERLOADED_BOOLEAN_VALUE\n )\n };\n }\n}\n\n/**\n * HTML properties config.\n *\n * @type {Object}\n */\nvar html = {};\ninjectDOMPropertyConfig(HTMLDOMPropertyConfig, html);\n\n/**\n * SVG properties config.\n *\n * @type {Object}\n */\nvar svg = {};\ninjectDOMPropertyConfig(SVGDOMPropertyConfig, svg, true);\n\n/**\n * HTML and SVG properties config.\n *\n * @type {Object}\n */\nvar properties = {};\ninjectDOMPropertyConfig(HTMLDOMPropertyConfig, properties);\ninjectDOMPropertyConfig(SVGDOMPropertyConfig, properties, true);\n\nvar ATTRIBUTE_NAME_START_CHAR =\n ':A-Z_a-z\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD';\nvar ATTRIBUTE_NAME_CHAR =\n ATTRIBUTE_NAME_START_CHAR + '\\\\-.0-9\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040';\n\nmodule.exports = {\n html: html,\n svg: svg,\n properties: properties,\n\n /**\n * Checks whether a property name is a custom attribute.\n *\n * @see https://github.com/facebook/react/blob/15-stable/src/renderers/dom/shared/HTMLDOMPropertyConfig.js#L23-L25\n *\n * @param {String}\n * @return {Boolean}\n */\n isCustomAttribute: RegExp.prototype.test.bind(\n new RegExp('^(data|aria)-[' + ATTRIBUTE_NAME_CHAR + ']*$')\n )\n};\n","module.exports = {\n MUST_USE_PROPERTY: 1,\n HAS_BOOLEAN_VALUE: 4,\n HAS_NUMERIC_VALUE: 8,\n HAS_POSITIVE_NUMERIC_VALUE: 24,\n HAS_OVERLOADED_BOOLEAN_VALUE: 32\n};\n","// http://www.w3.org/TR/CSS21/grammar.html\n// https://github.com/visionmedia/css-parse/pull/49#issuecomment-30088027\nvar COMMENT_REGEX = /\\/\\*[^*]*\\*+([^/*][^*]*\\*+)*\\//g;\n\nvar NEWLINE_REGEX = /\\n/g;\nvar WHITESPACE_REGEX = /^\\s*/;\n\n// declaration\nvar PROPERTY_REGEX = /^(\\*?[-#/*\\\\\\w]+(\\[[0-9a-z_-]+\\])?)\\s*/;\nvar COLON_REGEX = /^:\\s*/;\nvar VALUE_REGEX = /^((?:'(?:\\\\'|.)*?'|\"(?:\\\\\"|.)*?\"|\\([^)]*?\\)|[^};])+)/;\nvar SEMICOLON_REGEX = /^[;\\s]*/;\n\n// https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String/Trim#Polyfill\nvar TRIM_REGEX = /^\\s+|\\s+$/g;\n\n// strings\nvar NEWLINE = '\\n';\nvar FORWARD_SLASH = '/';\nvar ASTERISK = '*';\nvar EMPTY_STRING = '';\n\n// types\nvar TYPE_COMMENT = 'comment';\nvar TYPE_DECLARATION = 'declaration';\n\n/**\n * @param {String} style\n * @param {Object} [options]\n * @return {Object[]}\n * @throws {TypeError}\n * @throws {Error}\n */\nmodule.exports = function(style, options) {\n if (typeof style !== 'string') {\n throw new TypeError('First argument must be a string');\n }\n\n if (!style) return [];\n\n options = options || {};\n\n /**\n * Positional.\n */\n var lineno = 1;\n var column = 1;\n\n /**\n * Update lineno and column based on `str`.\n *\n * @param {String} str\n */\n function updatePosition(str) {\n var lines = str.match(NEWLINE_REGEX);\n if (lines) lineno += lines.length;\n var i = str.lastIndexOf(NEWLINE);\n column = ~i ? str.length - i : column + str.length;\n }\n\n /**\n * Mark position and patch `node.position`.\n *\n * @return {Function}\n */\n function position() {\n var start = { line: lineno, column: column };\n return function(node) {\n node.position = new Position(start);\n whitespace();\n return node;\n };\n }\n\n /**\n * Store position information for a node.\n *\n * @constructor\n * @property {Object} start\n * @property {Object} end\n * @property {undefined|String} source\n */\n function Position(start) {\n this.start = start;\n this.end = { line: lineno, column: column };\n this.source = options.source;\n }\n\n /**\n * Non-enumerable source string.\n */\n Position.prototype.content = style;\n\n var errorsList = [];\n\n /**\n * Error `msg`.\n *\n * @param {String} msg\n * @throws {Error}\n */\n function error(msg) {\n var err = new Error(\n options.source + ':' + lineno + ':' + column + ': ' + msg\n );\n err.reason = msg;\n err.filename = options.source;\n err.line = lineno;\n err.column = column;\n err.source = style;\n\n if (options.silent) {\n errorsList.push(err);\n } else {\n throw err;\n }\n }\n\n /**\n * Match `re` and return captures.\n *\n * @param {RegExp} re\n * @return {undefined|Array}\n */\n function match(re) {\n var m = re.exec(style);\n if (!m) return;\n var str = m[0];\n updatePosition(str);\n style = style.slice(str.length);\n return m;\n }\n\n /**\n * Parse whitespace.\n */\n function whitespace() {\n match(WHITESPACE_REGEX);\n }\n\n /**\n * Parse comments.\n *\n * @param {Object[]} [rules]\n * @return {Object[]}\n */\n function comments(rules) {\n var c;\n rules = rules || [];\n while ((c = comment())) {\n if (c !== false) {\n rules.push(c);\n }\n }\n return rules;\n }\n\n /**\n * Parse comment.\n *\n * @return {Object}\n * @throws {Error}\n */\n function comment() {\n var pos = position();\n if (FORWARD_SLASH != style.charAt(0) || ASTERISK != style.charAt(1)) return;\n\n var i = 2;\n while (\n EMPTY_STRING != style.charAt(i) &&\n (ASTERISK != style.charAt(i) || FORWARD_SLASH != style.charAt(i + 1))\n ) {\n ++i;\n }\n i += 2;\n\n if (EMPTY_STRING === style.charAt(i - 1)) {\n return error('End of comment missing');\n }\n\n var str = style.slice(2, i - 2);\n column += 2;\n updatePosition(str);\n style = style.slice(i);\n column += 2;\n\n return pos({\n type: TYPE_COMMENT,\n comment: str\n });\n }\n\n /**\n * Parse declaration.\n *\n * @return {Object}\n * @throws {Error}\n */\n function declaration() {\n var pos = position();\n\n // prop\n var prop = match(PROPERTY_REGEX);\n if (!prop) return;\n comment();\n\n // :\n if (!match(COLON_REGEX)) return error(\"property missing ':'\");\n\n // val\n var val = match(VALUE_REGEX);\n\n var ret = pos({\n type: TYPE_DECLARATION,\n property: trim(prop[0].replace(COMMENT_REGEX, EMPTY_STRING)),\n value: val\n ? trim(val[0].replace(COMMENT_REGEX, EMPTY_STRING))\n : EMPTY_STRING\n });\n\n // ;\n match(SEMICOLON_REGEX);\n\n return ret;\n }\n\n /**\n * Parse declarations.\n *\n * @return {Object[]}\n */\n function declarations() {\n var decls = [];\n\n comments(decls);\n\n // declarations\n var decl;\n while ((decl = declaration())) {\n if (decl !== false) {\n decls.push(decl);\n comments(decls);\n }\n }\n\n return decls;\n }\n\n whitespace();\n return declarations();\n};\n\n/**\n * Trim `str`.\n *\n * @param {String} str\n * @return {String}\n */\nfunction trim(str) {\n return str ? str.replace(TRIM_REGEX, EMPTY_STRING) : EMPTY_STRING;\n}\n","var parse = require('inline-style-parser');\n\n/**\n * Parses inline style to object.\n *\n * @example\n * // returns { 'line-height': '42' }\n * StyleToObject('line-height: 42;');\n *\n * @param {String} style - The inline style.\n * @param {Function} [iterator] - The iterator function.\n * @return {null|Object}\n */\nfunction StyleToObject(style, iterator) {\n var output = null;\n if (!style || typeof style !== 'string') {\n return output;\n }\n\n var declaration;\n var declarations = parse(style);\n var hasIterator = typeof iterator === 'function';\n var property;\n var value;\n\n for (var i = 0, len = declarations.length; i < len; i++) {\n declaration = declarations[i];\n property = declaration.property;\n value = declaration.value;\n\n if (hasIterator) {\n iterator(property, value, declaration);\n } else if (value) {\n output || (output = {});\n output[property] = value;\n }\n }\n\n return output;\n}\n\nmodule.exports = StyleToObject;\n","var React = require('react');\nvar hyphenPatternRegex = /-([a-z])/g;\nvar CUSTOM_PROPERTY_OR_NO_HYPHEN_REGEX = /^--[a-zA-Z0-9-]+$|^[^-]+$/;\n\n/**\n * Converts a string to camelCase.\n *\n * @param {String} string - The string.\n * @return {String}\n */\nfunction camelCase(string) {\n if (typeof string !== 'string') {\n throw new TypeError('First argument must be a string');\n }\n\n // custom property or no hyphen found\n if (CUSTOM_PROPERTY_OR_NO_HYPHEN_REGEX.test(string)) {\n return string;\n }\n\n // convert to camelCase\n return string\n .toLowerCase()\n .replace(hyphenPatternRegex, function (_, character) {\n return character.toUpperCase();\n });\n}\n\n/**\n * Swap key with value in an object.\n *\n * @param {Object} obj - The object.\n * @param {Function} [override] - The override method.\n * @return {Object} - The inverted object.\n */\nfunction invertObject(obj, override) {\n if (!obj || typeof obj !== 'object') {\n throw new TypeError('First argument must be an object');\n }\n\n var key;\n var value;\n var isOverridePresent = typeof override === 'function';\n var overrides = {};\n var result = {};\n\n for (key in obj) {\n value = obj[key];\n\n if (isOverridePresent) {\n overrides = override(key, value);\n if (overrides && overrides.length === 2) {\n result[overrides[0]] = overrides[1];\n continue;\n }\n }\n\n if (typeof value === 'string') {\n result[value] = key;\n }\n }\n\n return result;\n}\n\n/**\n * Check if a given tag is a custom component.\n *\n * @see {@link https://github.com/facebook/react/blob/v16.6.3/packages/react-dom/src/shared/isCustomComponent.js}\n *\n * @param {string} tagName - The name of the html tag.\n * @param {Object} props - The props being passed to the element.\n * @return {boolean}\n */\nfunction isCustomComponent(tagName, props) {\n if (tagName.indexOf('-') === -1) {\n return props && typeof props.is === 'string';\n }\n\n switch (tagName) {\n // These are reserved SVG and MathML elements.\n // We don't mind this whitelist too much because we expect it to never grow.\n // The alternative is to track the namespace in a few places which is convoluted.\n // https://w3c.github.io/webcomponents/spec/custom/#custom-elements-core-concepts\n case 'annotation-xml':\n case 'color-profile':\n case 'font-face':\n case 'font-face-src':\n case 'font-face-uri':\n case 'font-face-format':\n case 'font-face-name':\n case 'missing-glyph':\n return false;\n default:\n return true;\n }\n}\n\n/**\n * @constant {Boolean}\n * @see {@link https://reactjs.org/blog/2017/09/08/dom-attributes-in-react-16.html}\n */\nvar PRESERVE_CUSTOM_ATTRIBUTES = React.version.split('.')[0] >= 16;\n\nmodule.exports = {\n PRESERVE_CUSTOM_ATTRIBUTES: PRESERVE_CUSTOM_ATTRIBUTES,\n camelCase: camelCase,\n invertObject: invertObject,\n isCustomComponent: isCustomComponent\n};\n","var reactProperty = require('react-property');\nvar styleToObject = require('style-to-object');\nvar utilities = require('./utilities');\n\nvar camelCase = utilities.camelCase;\n\nvar htmlProperties = reactProperty.html;\nvar svgProperties = reactProperty.svg;\nvar isCustomAttribute = reactProperty.isCustomAttribute;\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\n/**\n * Converts HTML/SVG DOM attributes to React props.\n *\n * @param {Object} [attributes={}] - The HTML/SVG DOM attributes.\n * @return {Object} - The React props.\n */\nfunction attributesToProps(attributes) {\n attributes = attributes || {};\n\n var attributeName;\n var attributeNameLowerCased;\n var attributeValue;\n var property;\n var props = {};\n\n for (attributeName in attributes) {\n attributeValue = attributes[attributeName];\n\n // ARIA (aria-*) or custom data (data-*) attribute\n if (isCustomAttribute(attributeName)) {\n props[attributeName] = attributeValue;\n continue;\n }\n\n // convert HTML attribute to React prop\n attributeNameLowerCased = attributeName.toLowerCase();\n if (hasOwnProperty.call(htmlProperties, attributeNameLowerCased)) {\n property = htmlProperties[attributeNameLowerCased];\n props[property.propertyName] =\n property.hasBooleanValue ||\n (property.hasOverloadedBooleanValue && !attributeValue)\n ? true\n : attributeValue;\n continue;\n }\n\n // convert SVG attribute to React prop\n if (hasOwnProperty.call(svgProperties, attributeName)) {\n property = svgProperties[attributeName];\n props[property.propertyName] = attributeValue;\n continue;\n }\n\n // preserve custom attribute if React >=16\n if (utilities.PRESERVE_CUSTOM_ATTRIBUTES) {\n props[attributeName] = attributeValue;\n }\n }\n\n // convert inline style to object\n if (attributes.style != null) {\n props.style = cssToJs(attributes.style);\n }\n\n return props;\n}\n\n/**\n * Converts inline CSS style to POJO (Plain Old JavaScript Object).\n *\n * @param {String} style - The inline CSS style.\n * @return {Object} - The style object.\n */\nfunction cssToJs(style) {\n var styleObject = {};\n\n if (style) {\n styleToObject(style, function (property, value) {\n // skip CSS comment\n if (property && value) {\n styleObject[camelCase(property)] = value;\n }\n });\n }\n\n return styleObject;\n}\n\nmodule.exports = attributesToProps;\n","var CASE_SENSITIVE_TAG_NAMES = require('./constants').CASE_SENSITIVE_TAG_NAMES;\n\nvar caseSensitiveTagNamesMap = {};\nvar tagName;\nfor (var i = 0, len = CASE_SENSITIVE_TAG_NAMES.length; i < len; i++) {\n tagName = CASE_SENSITIVE_TAG_NAMES[i];\n caseSensitiveTagNamesMap[tagName.toLowerCase()] = tagName;\n}\n\n/**\n * Gets case-sensitive tag name.\n *\n * @param {String} tagName - The lowercase tag name.\n * @return {String|undefined}\n */\nfunction getCaseSensitiveTagName(tagName) {\n return caseSensitiveTagNamesMap[tagName];\n}\n\n/**\n * Formats DOM attributes to a hash map.\n *\n * @param {NamedNodeMap} attributes - The list of attributes.\n * @return {Object} - A map of attribute name to value.\n */\nfunction formatAttributes(attributes) {\n var result = {};\n var attribute;\n // `NamedNodeMap` is array-like\n for (var i = 0, len = attributes.length; i < len; i++) {\n attribute = attributes[i];\n result[attribute.name] = attribute.value;\n }\n return result;\n}\n\n/**\n * Corrects the tag name if it is case-sensitive (SVG).\n * Otherwise, returns the lowercase tag name (HTML).\n *\n * @param {String} tagName - The lowercase tag name.\n * @return {String} - The formatted tag name.\n */\nfunction formatTagName(tagName) {\n tagName = tagName.toLowerCase();\n var caseSensitiveTagName = getCaseSensitiveTagName(tagName);\n if (caseSensitiveTagName) {\n return caseSensitiveTagName;\n }\n return tagName;\n}\n\n/**\n * Formats the browser DOM nodes to mimic the output of `htmlparser2.parseDOM()`.\n *\n * @param {NodeList} nodes - The DOM nodes.\n * @param {Object} [parentObj] - The formatted parent node.\n * @param {String} [directive] - The directive.\n * @return {Object[]} - The formatted DOM object.\n */\nfunction formatDOM(nodes, parentObj, directive) {\n parentObj = parentObj || null;\n\n var result = [];\n var node;\n var prevNode;\n var nodeObj;\n\n // `NodeList` is array-like\n for (var i = 0, len = nodes.length; i < len; i++) {\n node = nodes[i];\n // reset\n nodeObj = {\n next: null,\n prev: result[i - 1] || null,\n parent: parentObj\n };\n\n // set the next node for the previous node (if applicable)\n prevNode = result[i - 1];\n if (prevNode) {\n prevNode.next = nodeObj;\n }\n\n // set the node name if it's not \"#text\" or \"#comment\"\n // e.g., \"div\"\n if (node.nodeName[0] !== '#') {\n nodeObj.name = formatTagName(node.nodeName);\n // also, nodes of type \"tag\" have \"attribs\"\n nodeObj.attribs = {}; // default\n if (node.attributes && node.attributes.length) {\n nodeObj.attribs = formatAttributes(node.attributes);\n }\n }\n\n // set the node type\n // e.g., \"tag\"\n switch (node.nodeType) {\n // 1 = element\n case 1:\n if (nodeObj.name === 'script' || nodeObj.name === 'style') {\n nodeObj.type = nodeObj.name;\n } else {\n nodeObj.type = 'tag';\n }\n // recursively format the children\n nodeObj.children = formatDOM(node.childNodes, nodeObj);\n break;\n // 2 = attribute\n // 3 = text\n case 3:\n nodeObj.type = 'text';\n nodeObj.data = node.nodeValue;\n break;\n // 8 = comment\n case 8:\n nodeObj.type = 'comment';\n nodeObj.data = node.nodeValue;\n break;\n }\n\n result.push(nodeObj);\n }\n\n if (directive) {\n result.unshift({\n name: directive.substring(0, directive.indexOf(' ')).toLowerCase(),\n data: directive,\n type: 'directive',\n next: result[0] ? result[0] : null,\n prev: null,\n parent: parentObj\n });\n\n if (result[1]) {\n result[1].prev = result[0];\n }\n }\n\n return result;\n}\n\n/**\n * Detects IE with or without version.\n *\n * @param {Number} [version] - The IE version to detect.\n * @return {Boolean} - Whether IE or the version has been detected.\n */\nfunction isIE(version) {\n if (version) {\n return document.documentMode === version;\n }\n return /(MSIE |Trident\\/|Edge\\/)/.test(navigator.userAgent);\n}\n\nmodule.exports = {\n formatAttributes: formatAttributes,\n formatDOM: formatDOM,\n isIE: isIE\n};\n","var attributesToProps = require('./attributes-to-props');\nvar utilities = require('./utilities');\n\n/**\n * Converts DOM nodes to React elements.\n *\n * @param {DomElement[]} nodes - The DOM nodes.\n * @param {Object} [options={}] - The additional options.\n * @param {Function} [options.replace] - The replacer.\n * @param {Object} [options.library] - The library (React, Preact, etc.).\n * @return {String|ReactElement|ReactElement[]}\n */\nfunction domToReact(nodes, options) {\n options = options || {};\n\n var React = options.library || require('react');\n var cloneElement = React.cloneElement;\n var createElement = React.createElement;\n var isValidElement = React.isValidElement;\n\n var result = [];\n var node;\n var hasReplace = typeof options.replace === 'function';\n var replaceElement;\n var props;\n var children;\n var data;\n var trim = options.trim;\n\n for (var i = 0, len = nodes.length; i < len; i++) {\n node = nodes[i];\n\n // replace with custom React element (if present)\n if (hasReplace) {\n replaceElement = options.replace(node);\n\n if (isValidElement(replaceElement)) {\n // set \"key\" prop for sibling elements\n // https://fb.me/react-warning-keys\n if (len > 1) {\n replaceElement = cloneElement(replaceElement, {\n key: replaceElement.key || i\n });\n }\n result.push(replaceElement);\n continue;\n }\n }\n\n if (node.type === 'text') {\n // if trim option is enabled, skip whitespace text nodes\n if (trim) {\n data = node.data.trim();\n if (data) {\n result.push(node.data);\n }\n } else {\n result.push(node.data);\n }\n continue;\n }\n\n props = node.attribs;\n if (!shouldPassAttributesUnaltered(node)) {\n props = attributesToProps(node.attribs);\n }\n\n children = null;\n\n switch (node.type) {\n case 'script':\n case 'style':\n // prevent text in <script> or <style> from being escaped\n // https://reactjs.org/docs/dom-elements.html#dangerouslysetinnerhtml\n if (node.children[0]) {\n props.dangerouslySetInnerHTML = {\n __html: node.children[0].data\n };\n }\n break;\n\n case 'tag':\n // setting textarea value in children is an antipattern in React\n // https://reactjs.org/docs/forms.html#the-textarea-tag\n if (node.name === 'textarea' && node.children[0]) {\n props.defaultValue = node.children[0].data;\n } else if (node.children && node.children.length) {\n // continue recursion of creating React elements (if applicable)\n children = domToReact(node.children, options);\n }\n break;\n\n // skip all other cases (e.g., comment)\n default:\n continue;\n }\n\n // set \"key\" prop for sibling elements\n // https://fb.me/react-warning-keys\n if (len > 1) {\n props.key = i;\n }\n\n result.push(createElement(node.name, props, children));\n }\n\n return result.length === 1 ? result[0] : result;\n}\n\n/**\n * Determines whether attributes should be altered or not.\n *\n * @param {React.ReactElement} node\n * @return {Boolean}\n */\nfunction shouldPassAttributesUnaltered(node) {\n return (\n utilities.PRESERVE_CUSTOM_ATTRIBUTES &&\n node.type === 'tag' &&\n utilities.isCustomComponent(node.name, node.attribs)\n );\n}\n\nmodule.exports = domToReact;\n","/**\n * SVG elements are case-sensitive.\n *\n * @see {@link https://developer.mozilla.org/docs/Web/SVG/Element#SVG_elements_A_to_Z}\n */\nvar CASE_SENSITIVE_TAG_NAMES = [\n 'animateMotion',\n 'animateTransform',\n 'clipPath',\n 'feBlend',\n 'feColorMatrix',\n 'feComponentTransfer',\n 'feComposite',\n 'feConvolveMatrix',\n 'feDiffuseLighting',\n 'feDisplacementMap',\n 'feDropShadow',\n 'feFlood',\n 'feFuncA',\n 'feFuncB',\n 'feFuncG',\n 'feFuncR',\n 'feGaussainBlur',\n 'feImage',\n 'feMerge',\n 'feMergeNode',\n 'feMorphology',\n 'feOffset',\n 'fePointLight',\n 'feSpecularLighting',\n 'feSpotLight',\n 'feTile',\n 'feTurbulence',\n 'foreignObject',\n 'linearGradient',\n 'radialGradient',\n 'textPath'\n];\n\nmodule.exports = {\n CASE_SENSITIVE_TAG_NAMES: CASE_SENSITIVE_TAG_NAMES\n};\n","var utilities = require('./utilities');\n\n// constants\nvar HTML = 'html';\nvar HEAD = 'head';\nvar BODY = 'body';\nvar FIRST_TAG_REGEX = /<([a-zA-Z]+[0-9]?)/; // e.g., <h1>\nvar HEAD_TAG_REGEX = /<head.*>/i;\nvar BODY_TAG_REGEX = /<body.*>/i;\n// http://www.w3.org/TR/html/syntax.html#void-elements\nvar VOID_ELEMENTS_REGEX = /<(area|base|br|col|embed|hr|img|input|keygen|link|menuitem|meta|param|source|track|wbr)(.*?)\\/?>/gi;\n\n// detect IE browser\nvar isIE9 = utilities.isIE(9);\nvar isIE = isIE9 || utilities.isIE();\n\n// falls back to `parseFromString` if `createHTMLDocument` cannot be used\nvar parseFromDocument = function () {\n throw new Error(\n 'This browser does not support `document.implementation.createHTMLDocument`'\n );\n};\n\nvar parseFromString = function () {\n throw new Error(\n 'This browser does not support `DOMParser.prototype.parseFromString`'\n );\n};\n\n/**\n * DOMParser (performance: slow).\n *\n * @see https://developer.mozilla.org/docs/Web/API/DOMParser#Parsing_an_SVG_or_HTML_document\n */\nif (typeof window.DOMParser === 'function') {\n var domParser = new window.DOMParser();\n\n // IE9 does not support 'text/html' MIME type\n // https://msdn.microsoft.com/en-us/library/ff975278(v=vs.85).aspx\n var mimeType = isIE9 ? 'text/xml' : 'text/html';\n\n /**\n * Creates an HTML document using `DOMParser.parseFromString`.\n *\n * @param {string} html - The HTML string.\n * @param {string} [tagName] - The element to render the HTML (with 'body' as fallback).\n * @return {HTMLDocument}\n */\n parseFromString = function (html, tagName) {\n if (tagName) {\n html = '<' + tagName + '>' + html + '</' + tagName + '>';\n }\n\n // because IE9 only supports MIME type 'text/xml', void elements need to be self-closed\n if (isIE9) {\n html = html.replace(VOID_ELEMENTS_REGEX, '<$1$2$3/>');\n }\n\n return domParser.parseFromString(html, mimeType);\n };\n\n parseFromDocument = parseFromString;\n}\n\n/**\n * DOMImplementation (performance: fair).\n *\n * @see https://developer.mozilla.org/docs/Web/API/DOMImplementation/createHTMLDocument\n */\nif (document.implementation) {\n // title parameter is required in IE\n // https://msdn.microsoft.com/en-us/library/ff975457(v=vs.85).aspx\n var doc = document.implementation.createHTMLDocument(\n isIE ? 'html-dom-parser' : undefined\n );\n\n /**\n * Use HTML document created by `document.implementation.createHTMLDocument`.\n *\n * @param {string} html - The HTML string.\n * @param {string} [tagName] - The element to render the HTML (with 'body' as fallback).\n * @return {HTMLDocument}\n */\n parseFromDocument = function (html, tagName) {\n if (tagName) {\n doc.documentElement.getElementsByTagName(tagName)[0].innerHTML = html;\n return doc;\n }\n\n try {\n doc.documentElement.innerHTML = html;\n return doc;\n // fallback when certain elements in `documentElement` are read-only (IE9)\n } catch (err) {\n if (parseFromString) {\n return parseFromString(html);\n }\n }\n };\n}\n\n/**\n * Template (performance: fast).\n *\n * @see https://developer.mozilla.org/docs/Web/HTML/Element/template\n */\nvar template = document.createElement('template');\nvar parseFromTemplate;\n\nif (template.content) {\n /**\n * Uses a template element (content fragment) to parse HTML.\n *\n * @param {string} html - The HTML string.\n * @return {NodeList}\n */\n parseFromTemplate = function (html) {\n template.innerHTML = html;\n return template.content.childNodes;\n };\n}\n\n/**\n * Parses HTML string to DOM nodes.\n *\n * @param {string} html - The HTML string.\n * @return {NodeList|Array}\n */\nfunction domparser(html) {\n var firstTagName;\n var match = html.match(FIRST_TAG_REGEX);\n\n if (match && match[1]) {\n firstTagName = match[1].toLowerCase();\n }\n\n var doc;\n var element;\n var elements;\n\n switch (firstTagName) {\n case HTML:\n doc = parseFromString(html);\n\n // the created document may come with filler head/body elements,\n // so make sure to remove them if they don't actually exist\n if (!HEAD_TAG_REGEX.test(html)) {\n element = doc.getElementsByTagName(HEAD)[0];\n if (element) {\n element.parentNode.removeChild(element);\n }\n }\n\n if (!BODY_TAG_REGEX.test(html)) {\n element = doc.getElementsByTagName(BODY)[0];\n if (element) {\n element.parentNode.removeChild(element);\n }\n }\n\n return doc.getElementsByTagName(HTML);\n\n case HEAD:\n case BODY:\n elements = parseFromDocument(html).getElementsByTagName(firstTagName);\n\n // if there's a sibling element, then return both elements\n if (BODY_TAG_REGEX.test(html) && HEAD_TAG_REGEX.test(html)) {\n return elements[0].parentNode.childNodes;\n }\n return elements;\n\n // low-level tag or text\n default:\n if (parseFromTemplate) {\n return parseFromTemplate(html);\n }\n\n return parseFromDocument(html, BODY).getElementsByTagName(BODY)[0]\n .childNodes;\n }\n}\n\nmodule.exports = domparser;\n","var domparser = require('./domparser');\nvar utilities = require('./utilities');\n\nvar formatDOM = utilities.formatDOM;\nvar isIE9 = utilities.isIE(9);\n\nvar DIRECTIVE_REGEX = /<(![a-zA-Z\\s]+)>/; // e.g., <!doctype html>\n\n/**\n * Parses HTML and reformats DOM nodes output.\n *\n * @param {String} html - The HTML string.\n * @return {Array} - The formatted DOM nodes.\n */\nfunction parseDOM(html) {\n if (typeof html !== 'string') {\n throw new TypeError('First argument must be a string');\n }\n\n if (!html) {\n return [];\n }\n\n // match directive\n var match = html.match(DIRECTIVE_REGEX);\n var directive;\n\n if (match && match[1]) {\n directive = match[1];\n\n // remove directive in IE9 because DOMParser uses\n // MIME type 'text/xml' instead of 'text/html'\n if (isIE9) {\n html = html.replace(match[0], '');\n }\n }\n\n return formatDOM(domparser(html), null, directive);\n}\n\nmodule.exports = parseDOM;\n","var domToReact = require('./lib/dom-to-react');\nvar htmlToDOM = require('html-dom-parser');\n\n// decode HTML entities by default for `htmlparser2`\nvar domParserOptions = { decodeEntities: true, lowerCaseAttributeNames: false };\n\n/**\n * Converts HTML string to React elements.\n *\n * @param {String} html - HTML string.\n * @param {Object} [options] - Parser options.\n * @param {Object} [options.htmlparser2] - htmlparser2 options.\n * @param {Object} [options.library] - Library for React, Preact, etc.\n * @param {Function} [options.replace] - Replace method.\n * @return {JSX.Element|JSX.Element[]|String} - React element(s), empty array, or string.\n */\nfunction HTMLReactParser(html, options) {\n if (typeof html !== 'string') {\n throw new TypeError('First argument must be a string');\n }\n if (html === '') {\n return [];\n }\n options = options || {};\n return domToReact(\n htmlToDOM(html, options.htmlparser2 || domParserOptions),\n options\n );\n}\n\nHTMLReactParser.domToReact = domToReact;\nHTMLReactParser.htmlToDOM = htmlToDOM;\n\n// support CommonJS and ES Modules\nmodule.exports = HTMLReactParser;\nmodule.exports.default = HTMLReactParser;\n"],"names":["Properties","autoFocus","accept","acceptCharset","accessKey","action","allowFullScreen","allowTransparency","alt","as","async","autoComplete","autoPlay","capture","cellPadding","cellSpacing","charSet","challenge","checked","cite","classID","className","cols","colSpan","content","contentEditable","contextMenu","controls","controlsList","coords","crossOrigin","data","dateTime","default","defer","dir","disabled","download","draggable","encType","form","formAction","formEncType","formMethod","formNoValidate","formTarget","frameBorder","headers","height","hidden","high","href","hrefLang","htmlFor","httpEquiv","icon","id","inputMode","integrity","is","keyParams","keyType","kind","label","lang","list","loop","low","manifest","marginHeight","marginWidth","max","maxLength","media","mediaGroup","method","min","minLength","multiple","muted","name","nonce","noValidate","open","optimum","pattern","placeholder","playsInline","poster","preload","profile","radioGroup","readOnly","referrerPolicy","rel","required","reversed","role","rows","rowSpan","sandbox","scope","scoped","scrolling","seamless","selected","shape","size","sizes","span","spellCheck","src","srcDoc","srcLang","srcSet","start","step","style","summary","tabIndex","target","title","type","useMap","value","width","wmode","wrap","about","datatype","inlist","prefix","property","resource","typeof","vocab","autoCapitalize","autoCorrect","autoSave","color","itemProp","itemScope","itemType","itemID","itemRef","results","security","unselectable","DOMAttributeNames","accentHeight","accumulate","additive","alignmentBaseline","allowReorder","alphabetic","amplitude","arabicForm","ascent","attributeName","attributeType","autoReverse","azimuth","baseFrequency","baseProfile","baselineShift","bbox","begin","bias","by","calcMode","capHeight","clip","clipPath","clipRule","clipPathUnits","colorInterpolation","colorInterpolationFilters","colorProfile","colorRendering","contentScriptType","contentStyleType","cursor","cx","cy","d","decelerate","descent","diffuseConstant","direction","display","divisor","dominantBaseline","dur","dx","dy","edgeMode","elevation","enableBackground","end","exponent","externalResourcesRequired","fill","fillOpacity","fillRule","filter","filterRes","filterUnits","floodColor","floodOpacity","focusable","fontFamily","fontSize","fontSizeAdjust","fontStretch","fontStyle","fontVariant","fontWeight","format","from","fx","fy","g1","g2","glyphName","glyphOrientationHorizontal","glyphOrientationVertical","glyphRef","gradientTransform","gradientUnits","hanging","horizAdvX","horizOriginX","ideographic","imageRendering","in","in2","intercept","k","k1","k2","k3","k4","kernelMatrix","kernelUnitLength","kerning","keyPoints","keySplines","keyTimes","lengthAdjust","letterSpacing","lightingColor","limitingConeAngle","local","markerEnd","markerMid","markerStart","markerHeight","markerUnits","markerWidth","mask","maskContentUnits","maskUnits","mathematical","mode","numOctaves","offset","opacity","operator","order","orient","orientation","origin","overflow","overlinePosition","overlineThickness","paintOrder","panose1","pathLength","patternContentUnits","patternTransform","patternUnits","pointerEvents","points","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","r","radius","refX","refY","renderingIntent","repeatCount","repeatDur","requiredExtensions","requiredFeatures","restart","result","rotate","rx","ry","scale","seed","shapeRendering","slope","spacing","specularConstant","specularExponent","speed","spreadMethod","startOffset","stdDeviation","stemh","stemv","stitchTiles","stopColor","stopOpacity","strikethroughPosition","strikethroughThickness","string","stroke","strokeDasharray","strokeDashoffset","strokeLinecap","strokeLinejoin","strokeMiterlimit","strokeOpacity","strokeWidth","surfaceScale","systemLanguage","tableValues","targetX","targetY","textAnchor","textDecoration","textRendering","textLength","to","transform","u1","u2","underlinePosition","underlineThickness","unicode","unicodeBidi","unicodeRange","unitsPerEm","vAlphabetic","vHanging","vIdeographic","vMathematical","values","vectorEffect","version","vertAdvY","vertOriginX","vertOriginY","viewBox","viewTarget","visibility","widths","wordSpacing","writingMode","x","xHeight","x1","x2","xChannelSelector","xlinkActuate","xlinkArcrole","xlinkHref","xlinkRole","xlinkShow","xlinkTitle","xlinkType","xmlBase","xmlns","xmlnsXlink","xmlLang","xmlSpace","y","y1","y2","yChannelSelector","z","zoomAndPan","MUST_USE_PROPERTY","HAS_BOOLEAN_VALUE","HAS_NUMERIC_VALUE","HAS_POSITIVE_NUMERIC_VALUE","HAS_OVERLOADED_BOOLEAN_VALUE","checkMask","bitmask","injectDOMPropertyConfig","domPropertyConfig","config","isSVG","propertyName","propConfig","toLowerCase","mustUseProperty","hasBooleanValue","hasNumericValue","hasPositiveNumericValue","hasOverloadedBooleanValue","html","HTMLDOMPropertyConfig","svg","SVGDOMPropertyConfig","properties","options","TypeError","lineno","column","updatePosition","str","lines","match","NEWLINE_REGEX","length","i","lastIndexOf","position","line","node","Position","whitespace","this","source","error","msg","err","Error","reason","filename","silent","re","m","exec","slice","WHITESPACE_REGEX","comments","rules","c","comment","push","pos","charAt","EMPTY_STRING","declaration","prop","PROPERTY_REGEX","COLON_REGEX","val","VALUE_REGEX","ret","trim","replace","COMMENT_REGEX","SEMICOLON_REGEX","prototype","decl","decls","declarations","isCustomAttribute","RegExp","test","bind","TRIM_REGEX","iterator","output","parse","hasIterator","len","hyphenPatternRegex","CUSTOM_PROPERTY_OR_NO_HYPHEN_REGEX","PRESERVE_CUSTOM_ATTRIBUTES","React","split","camelCase","_","character","toUpperCase","invertObject","obj","override","key","isOverridePresent","overrides","isCustomComponent","tagName","props","indexOf","utilities","htmlProperties","reactProperty","svgProperties","hasOwnProperty","Object","attributes","attributeNameLowerCased","attributeValue","call","styleObject","styleToObject","cssToJs","domToReact","nodes","replaceElement","children","library","require$$0","cloneElement","createElement","isValidElement","hasReplace","attribs","attributesToProps","dangerouslySetInnerHTML","__html","defaultValue","CASE_SENSITIVE_TAG_NAMES","caseSensitiveTagNamesMap","formatAttributes","attribute","formatTagName","caseSensitiveTagName","formatDOM","parentObj","directive","prevNode","nodeObj","next","prev","parent","nodeName","nodeType","childNodes","nodeValue","unshift","substring","isIE","document","documentMode","navigator","userAgent","BODY","FIRST_TAG_REGEX","HEAD_TAG_REGEX","BODY_TAG_REGEX","VOID_ELEMENTS_REGEX","isIE9","parseFromDocument","parseFromString","window","DOMParser","domParser","mimeType","implementation","doc","createHTMLDocument","undefined","documentElement","getElementsByTagName","innerHTML","parseFromTemplate","template","firstTagName","element","elements","parentNode","removeChild","DIRECTIVE_REGEX","domparser","domParserOptions","decodeEntities","lowerCaseAttributeNames","HTMLReactParser","htmlToDOM","htmlparser2"],"mappings":"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"}
1
+ {"version":3,"file":"html-react-parser.min.js","sources":["../node_modules/react-property/lib/HTMLDOMPropertyConfig.js","../node_modules/react-property/lib/SVGDOMPropertyConfig.js","../node_modules/react-property/index.js","../node_modules/react-property/lib/injection.js","../node_modules/inline-style-parser/index.js","../node_modules/style-to-object/index.js","../node_modules/style-to-js/cjs/utilities.js","../lib/utilities.js","../node_modules/style-to-js/cjs/index.js","../lib/attributes-to-props.js","../lib/dom-to-react.js","../node_modules/html-dom-parser/lib/utilities.js","../node_modules/html-dom-parser/lib/constants.js","../node_modules/html-dom-parser/lib/domparser.js","../node_modules/html-dom-parser/lib/html-to-dom-client.js","../index.js"],"sourcesContent":["module.exports = {\n Properties: {\n autoFocus: 4,\n accept: 0,\n acceptCharset: 0,\n accessKey: 0,\n action: 0,\n allowFullScreen: 4,\n allowTransparency: 0,\n alt: 0,\n as: 0,\n async: 4,\n autoComplete: 0,\n autoPlay: 4,\n capture: 4,\n cellPadding: 0,\n cellSpacing: 0,\n charSet: 0,\n challenge: 0,\n checked: 5,\n cite: 0,\n classID: 0,\n className: 0,\n cols: 24,\n colSpan: 0,\n content: 0,\n contentEditable: 0,\n contextMenu: 0,\n controls: 4,\n controlsList: 0,\n coords: 0,\n crossOrigin: 0,\n data: 0,\n dateTime: 0,\n default: 4,\n defer: 4,\n dir: 0,\n disabled: 4,\n download: 32,\n draggable: 0,\n encType: 0,\n form: 0,\n formAction: 0,\n formEncType: 0,\n formMethod: 0,\n formNoValidate: 4,\n formTarget: 0,\n frameBorder: 0,\n headers: 0,\n height: 0,\n hidden: 4,\n high: 0,\n href: 0,\n hrefLang: 0,\n htmlFor: 0,\n httpEquiv: 0,\n icon: 0,\n id: 0,\n inputMode: 0,\n integrity: 0,\n is: 0,\n keyParams: 0,\n keyType: 0,\n kind: 0,\n label: 0,\n lang: 0,\n list: 0,\n loop: 4,\n low: 0,\n manifest: 0,\n marginHeight: 0,\n marginWidth: 0,\n max: 0,\n maxLength: 0,\n media: 0,\n mediaGroup: 0,\n method: 0,\n min: 0,\n minLength: 0,\n multiple: 5,\n muted: 5,\n name: 0,\n nonce: 0,\n noValidate: 4,\n open: 4,\n optimum: 0,\n pattern: 0,\n placeholder: 0,\n playsInline: 4,\n poster: 0,\n preload: 0,\n profile: 0,\n radioGroup: 0,\n readOnly: 4,\n referrerPolicy: 0,\n rel: 0,\n required: 4,\n reversed: 4,\n role: 0,\n rows: 24,\n rowSpan: 8,\n sandbox: 0,\n scope: 0,\n scoped: 4,\n scrolling: 0,\n seamless: 4,\n selected: 5,\n shape: 0,\n size: 24,\n sizes: 0,\n span: 24,\n spellCheck: 0,\n src: 0,\n srcDoc: 0,\n srcLang: 0,\n srcSet: 0,\n start: 8,\n step: 0,\n style: 0,\n summary: 0,\n tabIndex: 0,\n target: 0,\n title: 0,\n type: 0,\n useMap: 0,\n value: 0,\n width: 0,\n wmode: 0,\n wrap: 0,\n about: 0,\n datatype: 0,\n inlist: 0,\n prefix: 0,\n property: 0,\n resource: 0,\n typeof: 0,\n vocab: 0,\n autoCapitalize: 0,\n autoCorrect: 0,\n autoSave: 0,\n color: 0,\n itemProp: 0,\n itemScope: 4,\n itemType: 0,\n itemID: 0,\n itemRef: 0,\n results: 0,\n security: 0,\n unselectable: 0\n },\n DOMAttributeNames: {\n acceptCharset: 'accept-charset',\n className: 'class',\n htmlFor: 'for',\n httpEquiv: 'http-equiv'\n }\n};\n","module.exports = {\n Properties: {\n accentHeight: 0,\n accumulate: 0,\n additive: 0,\n alignmentBaseline: 0,\n allowReorder: 0,\n alphabetic: 0,\n amplitude: 0,\n arabicForm: 0,\n ascent: 0,\n attributeName: 0,\n attributeType: 0,\n autoReverse: 0,\n azimuth: 0,\n baseFrequency: 0,\n baseProfile: 0,\n baselineShift: 0,\n bbox: 0,\n begin: 0,\n bias: 0,\n by: 0,\n calcMode: 0,\n capHeight: 0,\n clip: 0,\n clipPath: 0,\n clipRule: 0,\n clipPathUnits: 0,\n colorInterpolation: 0,\n colorInterpolationFilters: 0,\n colorProfile: 0,\n colorRendering: 0,\n contentScriptType: 0,\n contentStyleType: 0,\n cursor: 0,\n cx: 0,\n cy: 0,\n d: 0,\n decelerate: 0,\n descent: 0,\n diffuseConstant: 0,\n direction: 0,\n display: 0,\n divisor: 0,\n dominantBaseline: 0,\n dur: 0,\n dx: 0,\n dy: 0,\n edgeMode: 0,\n elevation: 0,\n enableBackground: 0,\n end: 0,\n exponent: 0,\n externalResourcesRequired: 0,\n fill: 0,\n fillOpacity: 0,\n fillRule: 0,\n filter: 0,\n filterRes: 0,\n filterUnits: 0,\n floodColor: 0,\n floodOpacity: 0,\n focusable: 0,\n fontFamily: 0,\n fontSize: 0,\n fontSizeAdjust: 0,\n fontStretch: 0,\n fontStyle: 0,\n fontVariant: 0,\n fontWeight: 0,\n format: 0,\n from: 0,\n fx: 0,\n fy: 0,\n g1: 0,\n g2: 0,\n glyphName: 0,\n glyphOrientationHorizontal: 0,\n glyphOrientationVertical: 0,\n glyphRef: 0,\n gradientTransform: 0,\n gradientUnits: 0,\n hanging: 0,\n horizAdvX: 0,\n horizOriginX: 0,\n ideographic: 0,\n imageRendering: 0,\n in: 0,\n in2: 0,\n intercept: 0,\n k: 0,\n k1: 0,\n k2: 0,\n k3: 0,\n k4: 0,\n kernelMatrix: 0,\n kernelUnitLength: 0,\n kerning: 0,\n keyPoints: 0,\n keySplines: 0,\n keyTimes: 0,\n lengthAdjust: 0,\n letterSpacing: 0,\n lightingColor: 0,\n limitingConeAngle: 0,\n local: 0,\n markerEnd: 0,\n markerMid: 0,\n markerStart: 0,\n markerHeight: 0,\n markerUnits: 0,\n markerWidth: 0,\n mask: 0,\n maskContentUnits: 0,\n maskUnits: 0,\n mathematical: 0,\n mode: 0,\n numOctaves: 0,\n offset: 0,\n opacity: 0,\n operator: 0,\n order: 0,\n orient: 0,\n orientation: 0,\n origin: 0,\n overflow: 0,\n overlinePosition: 0,\n overlineThickness: 0,\n paintOrder: 0,\n panose1: 0,\n pathLength: 0,\n patternContentUnits: 0,\n patternTransform: 0,\n patternUnits: 0,\n pointerEvents: 0,\n points: 0,\n pointsAtX: 0,\n pointsAtY: 0,\n pointsAtZ: 0,\n preserveAlpha: 0,\n preserveAspectRatio: 0,\n primitiveUnits: 0,\n r: 0,\n radius: 0,\n refX: 0,\n refY: 0,\n renderingIntent: 0,\n repeatCount: 0,\n repeatDur: 0,\n requiredExtensions: 0,\n requiredFeatures: 0,\n restart: 0,\n result: 0,\n rotate: 0,\n rx: 0,\n ry: 0,\n scale: 0,\n seed: 0,\n shapeRendering: 0,\n slope: 0,\n spacing: 0,\n specularConstant: 0,\n specularExponent: 0,\n speed: 0,\n spreadMethod: 0,\n startOffset: 0,\n stdDeviation: 0,\n stemh: 0,\n stemv: 0,\n stitchTiles: 0,\n stopColor: 0,\n stopOpacity: 0,\n strikethroughPosition: 0,\n strikethroughThickness: 0,\n string: 0,\n stroke: 0,\n strokeDasharray: 0,\n strokeDashoffset: 0,\n strokeLinecap: 0,\n strokeLinejoin: 0,\n strokeMiterlimit: 0,\n strokeOpacity: 0,\n strokeWidth: 0,\n surfaceScale: 0,\n systemLanguage: 0,\n tableValues: 0,\n targetX: 0,\n targetY: 0,\n textAnchor: 0,\n textDecoration: 0,\n textRendering: 0,\n textLength: 0,\n to: 0,\n transform: 0,\n u1: 0,\n u2: 0,\n underlinePosition: 0,\n underlineThickness: 0,\n unicode: 0,\n unicodeBidi: 0,\n unicodeRange: 0,\n unitsPerEm: 0,\n vAlphabetic: 0,\n vHanging: 0,\n vIdeographic: 0,\n vMathematical: 0,\n values: 0,\n vectorEffect: 0,\n version: 0,\n vertAdvY: 0,\n vertOriginX: 0,\n vertOriginY: 0,\n viewBox: 0,\n viewTarget: 0,\n visibility: 0,\n widths: 0,\n wordSpacing: 0,\n writingMode: 0,\n x: 0,\n xHeight: 0,\n x1: 0,\n x2: 0,\n xChannelSelector: 0,\n xlinkActuate: 0,\n xlinkArcrole: 0,\n xlinkHref: 0,\n xlinkRole: 0,\n xlinkShow: 0,\n xlinkTitle: 0,\n xlinkType: 0,\n xmlBase: 0,\n xmlns: 0,\n xmlnsXlink: 0,\n xmlLang: 0,\n xmlSpace: 0,\n y: 0,\n y1: 0,\n y2: 0,\n yChannelSelector: 0,\n z: 0,\n zoomAndPan: 0\n },\n DOMAttributeNames: {\n accentHeight: 'accent-height',\n alignmentBaseline: 'alignment-baseline',\n arabicForm: 'arabic-form',\n baselineShift: 'baseline-shift',\n capHeight: 'cap-height',\n clipPath: 'clip-path',\n clipRule: 'clip-rule',\n colorInterpolation: 'color-interpolation',\n colorInterpolationFilters: 'color-interpolation-filters',\n colorProfile: 'color-profile',\n colorRendering: 'color-rendering',\n dominantBaseline: 'dominant-baseline',\n enableBackground: 'enable-background',\n fillOpacity: 'fill-opacity',\n fillRule: 'fill-rule',\n floodColor: 'flood-color',\n floodOpacity: 'flood-opacity',\n fontFamily: 'font-family',\n fontSize: 'font-size',\n fontSizeAdjust: 'font-size-adjust',\n fontStretch: 'font-stretch',\n fontStyle: 'font-style',\n fontVariant: 'font-variant',\n fontWeight: 'font-weight',\n glyphName: 'glyph-name',\n glyphOrientationHorizontal: 'glyph-orientation-horizontal',\n glyphOrientationVertical: 'glyph-orientation-vertical',\n horizAdvX: 'horiz-adv-x',\n horizOriginX: 'horiz-origin-x',\n imageRendering: 'image-rendering',\n letterSpacing: 'letter-spacing',\n lightingColor: 'lighting-color',\n markerEnd: 'marker-end',\n markerMid: 'marker-mid',\n markerStart: 'marker-start',\n overlinePosition: 'overline-position',\n overlineThickness: 'overline-thickness',\n paintOrder: 'paint-order',\n panose1: 'panose-1',\n pointerEvents: 'pointer-events',\n renderingIntent: 'rendering-intent',\n shapeRendering: 'shape-rendering',\n stopColor: 'stop-color',\n stopOpacity: 'stop-opacity',\n strikethroughPosition: 'strikethrough-position',\n strikethroughThickness: 'strikethrough-thickness',\n strokeDasharray: 'stroke-dasharray',\n strokeDashoffset: 'stroke-dashoffset',\n strokeLinecap: 'stroke-linecap',\n strokeLinejoin: 'stroke-linejoin',\n strokeMiterlimit: 'stroke-miterlimit',\n strokeOpacity: 'stroke-opacity',\n strokeWidth: 'stroke-width',\n textAnchor: 'text-anchor',\n textDecoration: 'text-decoration',\n textRendering: 'text-rendering',\n underlinePosition: 'underline-position',\n underlineThickness: 'underline-thickness',\n unicodeBidi: 'unicode-bidi',\n unicodeRange: 'unicode-range',\n unitsPerEm: 'units-per-em',\n vAlphabetic: 'v-alphabetic',\n vHanging: 'v-hanging',\n vIdeographic: 'v-ideographic',\n vMathematical: 'v-mathematical',\n vectorEffect: 'vector-effect',\n vertAdvY: 'vert-adv-y',\n vertOriginX: 'vert-origin-x',\n vertOriginY: 'vert-origin-y',\n wordSpacing: 'word-spacing',\n writingMode: 'writing-mode',\n xHeight: 'x-height',\n xlinkActuate: 'xlink:actuate',\n xlinkArcrole: 'xlink:arcrole',\n xlinkHref: 'xlink:href',\n xlinkRole: 'xlink:role',\n xlinkShow: 'xlink:show',\n xlinkTitle: 'xlink:title',\n xlinkType: 'xlink:type',\n xmlBase: 'xml:base',\n xmlnsXlink: 'xmlns:xlink',\n xmlLang: 'xml:lang',\n xmlSpace: 'xml:space'\n }\n};\n","var HTMLDOMPropertyConfig = require('./lib/HTMLDOMPropertyConfig');\nvar SVGDOMPropertyConfig = require('./lib/SVGDOMPropertyConfig');\nvar injection = require('./lib/injection');\n\nvar MUST_USE_PROPERTY = injection.MUST_USE_PROPERTY;\nvar HAS_BOOLEAN_VALUE = injection.HAS_BOOLEAN_VALUE;\nvar HAS_NUMERIC_VALUE = injection.HAS_NUMERIC_VALUE;\nvar HAS_POSITIVE_NUMERIC_VALUE = injection.HAS_POSITIVE_NUMERIC_VALUE;\nvar HAS_OVERLOADED_BOOLEAN_VALUE = injection.HAS_OVERLOADED_BOOLEAN_VALUE;\n\n/**\n * @see https://github.com/facebook/react/blob/15-stable/src/renderers/dom/shared/DOMProperty.js#L14-L16\n *\n * @param {Number} value\n * @param {Number} bitmask\n * @return {Boolean}\n */\nfunction checkMask(value, bitmask) {\n return (value & bitmask) === bitmask;\n}\n\n/**\n * @see https://github.com/facebook/react/blob/15-stable/src/renderers/dom/shared/DOMProperty.js#L57\n *\n * @param {Object} domPropertyConfig - HTMLDOMPropertyConfig or SVGDOMPropertyConfig\n * @param {Object} config - The object to be mutated\n * @param {Boolean} isSVG - Whether the injected config is HTML or SVG (it assumes the default is HTML)\n */\nfunction injectDOMPropertyConfig(domPropertyConfig, config, isSVG) {\n var Properties = domPropertyConfig.Properties;\n var DOMAttributeNames = domPropertyConfig.DOMAttributeNames;\n var attributeName;\n var propertyName;\n var propConfig;\n\n for (propertyName in Properties) {\n attributeName =\n DOMAttributeNames[propertyName] ||\n (isSVG ? propertyName : propertyName.toLowerCase());\n propConfig = Properties[propertyName];\n\n config[attributeName] = {\n attributeName: attributeName,\n propertyName: propertyName,\n mustUseProperty: checkMask(propConfig, MUST_USE_PROPERTY),\n hasBooleanValue: checkMask(propConfig, HAS_BOOLEAN_VALUE),\n hasNumericValue: checkMask(propConfig, HAS_NUMERIC_VALUE),\n hasPositiveNumericValue: checkMask(\n propConfig,\n HAS_POSITIVE_NUMERIC_VALUE\n ),\n hasOverloadedBooleanValue: checkMask(\n propConfig,\n HAS_OVERLOADED_BOOLEAN_VALUE\n )\n };\n }\n}\n\n/**\n * HTML properties config.\n *\n * @type {Object}\n */\nvar html = {};\ninjectDOMPropertyConfig(HTMLDOMPropertyConfig, html);\n\n/**\n * SVG properties config.\n *\n * @type {Object}\n */\nvar svg = {};\ninjectDOMPropertyConfig(SVGDOMPropertyConfig, svg, true);\n\n/**\n * HTML and SVG properties config.\n *\n * @type {Object}\n */\nvar properties = {};\ninjectDOMPropertyConfig(HTMLDOMPropertyConfig, properties);\ninjectDOMPropertyConfig(SVGDOMPropertyConfig, properties, true);\n\nvar ATTRIBUTE_NAME_START_CHAR =\n ':A-Z_a-z\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD';\nvar ATTRIBUTE_NAME_CHAR =\n ATTRIBUTE_NAME_START_CHAR + '\\\\-.0-9\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040';\n\nmodule.exports = {\n html: html,\n svg: svg,\n properties: properties,\n\n /**\n * Checks whether a property name is a custom attribute.\n *\n * @see https://github.com/facebook/react/blob/15-stable/src/renderers/dom/shared/HTMLDOMPropertyConfig.js#L23-L25\n *\n * @param {String}\n * @return {Boolean}\n */\n isCustomAttribute: RegExp.prototype.test.bind(\n new RegExp('^(data|aria)-[' + ATTRIBUTE_NAME_CHAR + ']*$')\n )\n};\n","module.exports = {\n MUST_USE_PROPERTY: 1,\n HAS_BOOLEAN_VALUE: 4,\n HAS_NUMERIC_VALUE: 8,\n HAS_POSITIVE_NUMERIC_VALUE: 24,\n HAS_OVERLOADED_BOOLEAN_VALUE: 32\n};\n","// http://www.w3.org/TR/CSS21/grammar.html\n// https://github.com/visionmedia/css-parse/pull/49#issuecomment-30088027\nvar COMMENT_REGEX = /\\/\\*[^*]*\\*+([^/*][^*]*\\*+)*\\//g;\n\nvar NEWLINE_REGEX = /\\n/g;\nvar WHITESPACE_REGEX = /^\\s*/;\n\n// declaration\nvar PROPERTY_REGEX = /^(\\*?[-#/*\\\\\\w]+(\\[[0-9a-z_-]+\\])?)\\s*/;\nvar COLON_REGEX = /^:\\s*/;\nvar VALUE_REGEX = /^((?:'(?:\\\\'|.)*?'|\"(?:\\\\\"|.)*?\"|\\([^)]*?\\)|[^};])+)/;\nvar SEMICOLON_REGEX = /^[;\\s]*/;\n\n// https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String/Trim#Polyfill\nvar TRIM_REGEX = /^\\s+|\\s+$/g;\n\n// strings\nvar NEWLINE = '\\n';\nvar FORWARD_SLASH = '/';\nvar ASTERISK = '*';\nvar EMPTY_STRING = '';\n\n// types\nvar TYPE_COMMENT = 'comment';\nvar TYPE_DECLARATION = 'declaration';\n\n/**\n * @param {String} style\n * @param {Object} [options]\n * @return {Object[]}\n * @throws {TypeError}\n * @throws {Error}\n */\nmodule.exports = function(style, options) {\n if (typeof style !== 'string') {\n throw new TypeError('First argument must be a string');\n }\n\n if (!style) return [];\n\n options = options || {};\n\n /**\n * Positional.\n */\n var lineno = 1;\n var column = 1;\n\n /**\n * Update lineno and column based on `str`.\n *\n * @param {String} str\n */\n function updatePosition(str) {\n var lines = str.match(NEWLINE_REGEX);\n if (lines) lineno += lines.length;\n var i = str.lastIndexOf(NEWLINE);\n column = ~i ? str.length - i : column + str.length;\n }\n\n /**\n * Mark position and patch `node.position`.\n *\n * @return {Function}\n */\n function position() {\n var start = { line: lineno, column: column };\n return function(node) {\n node.position = new Position(start);\n whitespace();\n return node;\n };\n }\n\n /**\n * Store position information for a node.\n *\n * @constructor\n * @property {Object} start\n * @property {Object} end\n * @property {undefined|String} source\n */\n function Position(start) {\n this.start = start;\n this.end = { line: lineno, column: column };\n this.source = options.source;\n }\n\n /**\n * Non-enumerable source string.\n */\n Position.prototype.content = style;\n\n var errorsList = [];\n\n /**\n * Error `msg`.\n *\n * @param {String} msg\n * @throws {Error}\n */\n function error(msg) {\n var err = new Error(\n options.source + ':' + lineno + ':' + column + ': ' + msg\n );\n err.reason = msg;\n err.filename = options.source;\n err.line = lineno;\n err.column = column;\n err.source = style;\n\n if (options.silent) {\n errorsList.push(err);\n } else {\n throw err;\n }\n }\n\n /**\n * Match `re` and return captures.\n *\n * @param {RegExp} re\n * @return {undefined|Array}\n */\n function match(re) {\n var m = re.exec(style);\n if (!m) return;\n var str = m[0];\n updatePosition(str);\n style = style.slice(str.length);\n return m;\n }\n\n /**\n * Parse whitespace.\n */\n function whitespace() {\n match(WHITESPACE_REGEX);\n }\n\n /**\n * Parse comments.\n *\n * @param {Object[]} [rules]\n * @return {Object[]}\n */\n function comments(rules) {\n var c;\n rules = rules || [];\n while ((c = comment())) {\n if (c !== false) {\n rules.push(c);\n }\n }\n return rules;\n }\n\n /**\n * Parse comment.\n *\n * @return {Object}\n * @throws {Error}\n */\n function comment() {\n var pos = position();\n if (FORWARD_SLASH != style.charAt(0) || ASTERISK != style.charAt(1)) return;\n\n var i = 2;\n while (\n EMPTY_STRING != style.charAt(i) &&\n (ASTERISK != style.charAt(i) || FORWARD_SLASH != style.charAt(i + 1))\n ) {\n ++i;\n }\n i += 2;\n\n if (EMPTY_STRING === style.charAt(i - 1)) {\n return error('End of comment missing');\n }\n\n var str = style.slice(2, i - 2);\n column += 2;\n updatePosition(str);\n style = style.slice(i);\n column += 2;\n\n return pos({\n type: TYPE_COMMENT,\n comment: str\n });\n }\n\n /**\n * Parse declaration.\n *\n * @return {Object}\n * @throws {Error}\n */\n function declaration() {\n var pos = position();\n\n // prop\n var prop = match(PROPERTY_REGEX);\n if (!prop) return;\n comment();\n\n // :\n if (!match(COLON_REGEX)) return error(\"property missing ':'\");\n\n // val\n var val = match(VALUE_REGEX);\n\n var ret = pos({\n type: TYPE_DECLARATION,\n property: trim(prop[0].replace(COMMENT_REGEX, EMPTY_STRING)),\n value: val\n ? trim(val[0].replace(COMMENT_REGEX, EMPTY_STRING))\n : EMPTY_STRING\n });\n\n // ;\n match(SEMICOLON_REGEX);\n\n return ret;\n }\n\n /**\n * Parse declarations.\n *\n * @return {Object[]}\n */\n function declarations() {\n var decls = [];\n\n comments(decls);\n\n // declarations\n var decl;\n while ((decl = declaration())) {\n if (decl !== false) {\n decls.push(decl);\n comments(decls);\n }\n }\n\n return decls;\n }\n\n whitespace();\n return declarations();\n};\n\n/**\n * Trim `str`.\n *\n * @param {String} str\n * @return {String}\n */\nfunction trim(str) {\n return str ? str.replace(TRIM_REGEX, EMPTY_STRING) : EMPTY_STRING;\n}\n","var parse = require('inline-style-parser');\n\n/**\n * Parses inline style to object.\n *\n * @example\n * // returns { 'line-height': '42' }\n * StyleToObject('line-height: 42;');\n *\n * @param {String} style - The inline style.\n * @param {Function} [iterator] - The iterator function.\n * @return {null|Object}\n */\nfunction StyleToObject(style, iterator) {\n var output = null;\n if (!style || typeof style !== 'string') {\n return output;\n }\n\n var declaration;\n var declarations = parse(style);\n var hasIterator = typeof iterator === 'function';\n var property;\n var value;\n\n for (var i = 0, len = declarations.length; i < len; i++) {\n declaration = declarations[i];\n property = declaration.property;\n value = declaration.value;\n\n if (hasIterator) {\n iterator(property, value, declaration);\n } else if (value) {\n output || (output = {});\n output[property] = value;\n }\n }\n\n return output;\n}\n\nmodule.exports = StyleToObject;\n","\"use strict\";\nexports.__esModule = true;\nexports.camelCase = void 0;\nvar CUSTOM_PROPERTY_REGEX = /^--[a-zA-Z0-9-]+$/;\nvar HYPHEN_REGEX = /-([a-z])/g;\nvar NO_HYPHEN_REGEX = /^[^-]+$/;\nvar VENDOR_PREFIX_REGEX = /^-(webkit|moz|ms|o|khtml)-/;\nvar skipCamelCase = function (property) {\n return !property ||\n NO_HYPHEN_REGEX.test(property) ||\n CUSTOM_PROPERTY_REGEX.test(property);\n};\nvar capitalize = function (match, character) {\n return character.toUpperCase();\n};\nvar trimHyphen = function (match, prefix) { return prefix + \"-\"; };\nvar camelCase = function (property, options) {\n if (options === void 0) { options = {}; }\n if (skipCamelCase(property)) {\n return property;\n }\n property = property.toLowerCase();\n if (!options.reactCompat) {\n property = property.replace(VENDOR_PREFIX_REGEX, trimHyphen);\n }\n return property.replace(HYPHEN_REGEX, capitalize);\n};\nexports.camelCase = camelCase;\n","var React = require('react');\nvar styleToJS = require('style-to-js').default;\n\n/**\n * Swap key with value in an object.\n *\n * @param {Object} obj - The object.\n * @param {Function} [override] - The override method.\n * @return {Object} - The inverted object.\n */\nfunction invertObject(obj, override) {\n if (!obj || typeof obj !== 'object') {\n throw new TypeError('First argument must be an object');\n }\n\n var key;\n var value;\n var isOverridePresent = typeof override === 'function';\n var overrides = {};\n var result = {};\n\n for (key in obj) {\n value = obj[key];\n\n if (isOverridePresent) {\n overrides = override(key, value);\n if (overrides && overrides.length === 2) {\n result[overrides[0]] = overrides[1];\n continue;\n }\n }\n\n if (typeof value === 'string') {\n result[value] = key;\n }\n }\n\n return result;\n}\n\n/**\n * Check if a given tag is a custom component.\n *\n * @see {@link https://github.com/facebook/react/blob/v16.6.3/packages/react-dom/src/shared/isCustomComponent.js}\n *\n * @param {string} tagName - The name of the html tag.\n * @param {Object} props - The props being passed to the element.\n * @return {boolean}\n */\nfunction isCustomComponent(tagName, props) {\n if (tagName.indexOf('-') === -1) {\n return props && typeof props.is === 'string';\n }\n\n switch (tagName) {\n // These are reserved SVG and MathML elements.\n // We don't mind this whitelist too much because we expect it to never grow.\n // The alternative is to track the namespace in a few places which is convoluted.\n // https://w3c.github.io/webcomponents/spec/custom/#custom-elements-core-concepts\n case 'annotation-xml':\n case 'color-profile':\n case 'font-face':\n case 'font-face-src':\n case 'font-face-uri':\n case 'font-face-format':\n case 'font-face-name':\n case 'missing-glyph':\n return false;\n default:\n return true;\n }\n}\n\nvar styleToJSOptions = { reactCompat: true };\n\n/**\n * Sets style prop.\n *\n * @param {null|undefined|string} style\n * @param {object} props\n */\nfunction setStyleProp(style, props) {\n if (style === null || style === undefined) {\n return;\n }\n props.style = styleToJS(style, styleToJSOptions);\n}\n\n/**\n * @constant {boolean}\n * @see {@link https://reactjs.org/blog/2017/09/08/dom-attributes-in-react-16.html}\n */\nvar PRESERVE_CUSTOM_ATTRIBUTES = React.version.split('.')[0] >= 16;\n\nmodule.exports = {\n PRESERVE_CUSTOM_ATTRIBUTES: PRESERVE_CUSTOM_ATTRIBUTES,\n invertObject: invertObject,\n isCustomComponent: isCustomComponent,\n setStyleProp: setStyleProp\n};\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nexports.__esModule = true;\nvar style_to_object_1 = __importDefault(require(\"style-to-object\"));\nvar utilities_1 = require(\"./utilities\");\nfunction StyleToJS(style, options) {\n var output = {};\n if (!style || typeof style !== 'string') {\n return output;\n }\n style_to_object_1[\"default\"](style, function (property, value) {\n if (property && value) {\n output[utilities_1.camelCase(property, options)] = value;\n }\n });\n return output;\n}\nexports[\"default\"] = StyleToJS;\n","var reactProperty = require('react-property');\nvar utilities = require('./utilities');\n\nvar setStyleProp = utilities.setStyleProp;\n\nvar htmlProperties = reactProperty.html;\nvar svgProperties = reactProperty.svg;\nvar isCustomAttribute = reactProperty.isCustomAttribute;\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\n/**\n * Converts HTML/SVG DOM attributes to React props.\n *\n * @param {object} [attributes={}] - HTML/SVG DOM attributes.\n * @return {object} - React props.\n */\nfunction attributesToProps(attributes) {\n attributes = attributes || {};\n\n var attributeName;\n var attributeNameLowerCased;\n var attributeValue;\n var property;\n var props = {};\n\n for (attributeName in attributes) {\n attributeValue = attributes[attributeName];\n\n // ARIA (aria-*) or custom data (data-*) attribute\n if (isCustomAttribute(attributeName)) {\n props[attributeName] = attributeValue;\n continue;\n }\n\n // convert HTML attribute to React prop\n attributeNameLowerCased = attributeName.toLowerCase();\n if (hasOwnProperty.call(htmlProperties, attributeNameLowerCased)) {\n property = htmlProperties[attributeNameLowerCased];\n props[property.propertyName] =\n property.hasBooleanValue ||\n (property.hasOverloadedBooleanValue && !attributeValue)\n ? true\n : attributeValue;\n continue;\n }\n\n // convert SVG attribute to React prop\n if (hasOwnProperty.call(svgProperties, attributeName)) {\n property = svgProperties[attributeName];\n props[property.propertyName] = attributeValue;\n continue;\n }\n\n // preserve custom attribute if React >=16\n if (utilities.PRESERVE_CUSTOM_ATTRIBUTES) {\n props[attributeName] = attributeValue;\n }\n }\n\n // transform inline style to object\n setStyleProp(attributes.style, props);\n\n return props;\n}\n\nmodule.exports = attributesToProps;\n","var React = require('react');\nvar attributesToProps = require('./attributes-to-props');\nvar utilities = require('./utilities');\n\nvar setStyleProp = utilities.setStyleProp;\n\n/**\n * Converts DOM nodes to React elements.\n *\n * @param {DomElement[]} nodes - DOM nodes.\n * @param {object} [options={}] - Options.\n * @param {Function} [options.replace] - Replacer.\n * @param {object} [options.library] - Library (React/Preact/etc.).\n * @return {string|ReactElement|ReactElement[]}\n */\nfunction domToReact(nodes, options) {\n options = options || {};\n\n var library = options.library || React;\n var cloneElement = library.cloneElement;\n var createElement = library.createElement;\n var isValidElement = library.isValidElement;\n\n var result = [];\n var node;\n var hasReplace = typeof options.replace === 'function';\n var replaceElement;\n var props;\n var children;\n var data;\n var trim = options.trim;\n\n for (var i = 0, len = nodes.length; i < len; i++) {\n node = nodes[i];\n\n // replace with custom React element (if present)\n if (hasReplace) {\n replaceElement = options.replace(node);\n\n if (isValidElement(replaceElement)) {\n // set \"key\" prop for sibling elements\n // https://fb.me/react-warning-keys\n if (len > 1) {\n replaceElement = cloneElement(replaceElement, {\n key: replaceElement.key || i\n });\n }\n result.push(replaceElement);\n continue;\n }\n }\n\n if (node.type === 'text') {\n // if trim option is enabled, skip whitespace text nodes\n if (trim) {\n data = node.data.trim();\n if (data) {\n result.push(node.data);\n }\n } else {\n result.push(node.data);\n }\n continue;\n }\n\n props = node.attribs;\n if (skipAttributesToProps(node)) {\n setStyleProp(props.style, props);\n } else if (props) {\n props = attributesToProps(props);\n }\n\n children = null;\n\n switch (node.type) {\n case 'script':\n case 'style':\n // prevent text in <script> or <style> from being escaped\n // https://reactjs.org/docs/dom-elements.html#dangerouslysetinnerhtml\n if (node.children[0]) {\n props.dangerouslySetInnerHTML = {\n __html: node.children[0].data\n };\n }\n break;\n\n case 'tag':\n // setting textarea value in children is an antipattern in React\n // https://reactjs.org/docs/forms.html#the-textarea-tag\n if (node.name === 'textarea' && node.children[0]) {\n props.defaultValue = node.children[0].data;\n } else if (node.children && node.children.length) {\n // continue recursion of creating React elements (if applicable)\n children = domToReact(node.children, options);\n }\n break;\n\n // skip all other cases (e.g., comment)\n default:\n continue;\n }\n\n // set \"key\" prop for sibling elements\n // https://fb.me/react-warning-keys\n if (len > 1) {\n props.key = i;\n }\n\n result.push(createElement(node.name, props, children));\n }\n\n return result.length === 1 ? result[0] : result;\n}\n\n/**\n * Determines whether DOM element attributes should be transformed to props.\n * Web Components should not have their attributes transformed except for `style`.\n *\n * @param {DomElement} node\n * @return {boolean}\n */\nfunction skipAttributesToProps(node) {\n return (\n utilities.PRESERVE_CUSTOM_ATTRIBUTES &&\n node.type === 'tag' &&\n utilities.isCustomComponent(node.name, node.attribs)\n );\n}\n\nmodule.exports = domToReact;\n","var CASE_SENSITIVE_TAG_NAMES = require('./constants').CASE_SENSITIVE_TAG_NAMES;\n\nvar caseSensitiveTagNamesMap = {};\nvar tagName;\nfor (var i = 0, len = CASE_SENSITIVE_TAG_NAMES.length; i < len; i++) {\n tagName = CASE_SENSITIVE_TAG_NAMES[i];\n caseSensitiveTagNamesMap[tagName.toLowerCase()] = tagName;\n}\n\n/**\n * Gets case-sensitive tag name.\n *\n * @param {String} tagName - The lowercase tag name.\n * @return {String|undefined}\n */\nfunction getCaseSensitiveTagName(tagName) {\n return caseSensitiveTagNamesMap[tagName];\n}\n\n/**\n * Formats DOM attributes to a hash map.\n *\n * @param {NamedNodeMap} attributes - The list of attributes.\n * @return {Object} - A map of attribute name to value.\n */\nfunction formatAttributes(attributes) {\n var result = {};\n var attribute;\n // `NamedNodeMap` is array-like\n for (var i = 0, len = attributes.length; i < len; i++) {\n attribute = attributes[i];\n result[attribute.name] = attribute.value;\n }\n return result;\n}\n\n/**\n * Corrects the tag name if it is case-sensitive (SVG).\n * Otherwise, returns the lowercase tag name (HTML).\n *\n * @param {String} tagName - The lowercase tag name.\n * @return {String} - The formatted tag name.\n */\nfunction formatTagName(tagName) {\n tagName = tagName.toLowerCase();\n var caseSensitiveTagName = getCaseSensitiveTagName(tagName);\n if (caseSensitiveTagName) {\n return caseSensitiveTagName;\n }\n return tagName;\n}\n\n/**\n * Formats the browser DOM nodes to mimic the output of `htmlparser2.parseDOM()`.\n *\n * @param {NodeList} nodes - The DOM nodes.\n * @param {Object} [parentObj] - The formatted parent node.\n * @param {String} [directive] - The directive.\n * @return {Object[]} - The formatted DOM object.\n */\nfunction formatDOM(nodes, parentObj, directive) {\n parentObj = parentObj || null;\n\n var result = [];\n var node;\n var prevNode;\n var nodeObj;\n\n // `NodeList` is array-like\n for (var i = 0, len = nodes.length; i < len; i++) {\n node = nodes[i];\n // reset\n nodeObj = {\n next: null,\n prev: result[i - 1] || null,\n parent: parentObj\n };\n\n // set the next node for the previous node (if applicable)\n prevNode = result[i - 1];\n if (prevNode) {\n prevNode.next = nodeObj;\n }\n\n // set the node name if it's not \"#text\" or \"#comment\"\n // e.g., \"div\"\n if (node.nodeName[0] !== '#') {\n nodeObj.name = formatTagName(node.nodeName);\n // also, nodes of type \"tag\" have \"attribs\"\n nodeObj.attribs = {}; // default\n if (node.attributes && node.attributes.length) {\n nodeObj.attribs = formatAttributes(node.attributes);\n }\n }\n\n // set the node type\n // e.g., \"tag\"\n switch (node.nodeType) {\n // 1 = element\n case 1:\n if (nodeObj.name === 'script' || nodeObj.name === 'style') {\n nodeObj.type = nodeObj.name;\n } else {\n nodeObj.type = 'tag';\n }\n // recursively format the children\n nodeObj.children = formatDOM(node.childNodes, nodeObj);\n break;\n // 2 = attribute\n // 3 = text\n case 3:\n nodeObj.type = 'text';\n nodeObj.data = node.nodeValue;\n break;\n // 8 = comment\n case 8:\n nodeObj.type = 'comment';\n nodeObj.data = node.nodeValue;\n break;\n }\n\n result.push(nodeObj);\n }\n\n if (directive) {\n result.unshift({\n name: directive.substring(0, directive.indexOf(' ')).toLowerCase(),\n data: directive,\n type: 'directive',\n next: result[0] ? result[0] : null,\n prev: null,\n parent: parentObj\n });\n\n if (result[1]) {\n result[1].prev = result[0];\n }\n }\n\n return result;\n}\n\n/**\n * Detects IE with or without version.\n *\n * @param {Number} [version] - The IE version to detect.\n * @return {Boolean} - Whether IE or the version has been detected.\n */\nfunction isIE(version) {\n if (version) {\n return document.documentMode === version;\n }\n return /(MSIE |Trident\\/|Edge\\/)/.test(navigator.userAgent);\n}\n\nmodule.exports = {\n formatAttributes: formatAttributes,\n formatDOM: formatDOM,\n isIE: isIE\n};\n","/**\n * SVG elements are case-sensitive.\n *\n * @see {@link https://developer.mozilla.org/docs/Web/SVG/Element#SVG_elements_A_to_Z}\n */\nvar CASE_SENSITIVE_TAG_NAMES = [\n 'animateMotion',\n 'animateTransform',\n 'clipPath',\n 'feBlend',\n 'feColorMatrix',\n 'feComponentTransfer',\n 'feComposite',\n 'feConvolveMatrix',\n 'feDiffuseLighting',\n 'feDisplacementMap',\n 'feDropShadow',\n 'feFlood',\n 'feFuncA',\n 'feFuncB',\n 'feFuncG',\n 'feFuncR',\n 'feGaussainBlur',\n 'feImage',\n 'feMerge',\n 'feMergeNode',\n 'feMorphology',\n 'feOffset',\n 'fePointLight',\n 'feSpecularLighting',\n 'feSpotLight',\n 'feTile',\n 'feTurbulence',\n 'foreignObject',\n 'linearGradient',\n 'radialGradient',\n 'textPath'\n];\n\nmodule.exports = {\n CASE_SENSITIVE_TAG_NAMES: CASE_SENSITIVE_TAG_NAMES\n};\n","var utilities = require('./utilities');\n\n// constants\nvar HTML = 'html';\nvar HEAD = 'head';\nvar BODY = 'body';\nvar FIRST_TAG_REGEX = /<([a-zA-Z]+[0-9]?)/; // e.g., <h1>\nvar HEAD_TAG_REGEX = /<head.*>/i;\nvar BODY_TAG_REGEX = /<body.*>/i;\n// http://www.w3.org/TR/html/syntax.html#void-elements\nvar VOID_ELEMENTS_REGEX = /<(area|base|br|col|embed|hr|img|input|keygen|link|menuitem|meta|param|source|track|wbr)(.*?)\\/?>/gi;\n\n// detect IE browser\nvar isIE9 = utilities.isIE(9);\nvar isIE = isIE9 || utilities.isIE();\n\n// falls back to `parseFromString` if `createHTMLDocument` cannot be used\nvar parseFromDocument = function () {\n throw new Error(\n 'This browser does not support `document.implementation.createHTMLDocument`'\n );\n};\n\nvar parseFromString = function () {\n throw new Error(\n 'This browser does not support `DOMParser.prototype.parseFromString`'\n );\n};\n\n/**\n * DOMParser (performance: slow).\n *\n * @see https://developer.mozilla.org/docs/Web/API/DOMParser#Parsing_an_SVG_or_HTML_document\n */\nif (typeof window.DOMParser === 'function') {\n var domParser = new window.DOMParser();\n\n // IE9 does not support 'text/html' MIME type\n // https://msdn.microsoft.com/en-us/library/ff975278(v=vs.85).aspx\n var mimeType = isIE9 ? 'text/xml' : 'text/html';\n\n /**\n * Creates an HTML document using `DOMParser.parseFromString`.\n *\n * @param {string} html - The HTML string.\n * @param {string} [tagName] - The element to render the HTML (with 'body' as fallback).\n * @return {HTMLDocument}\n */\n parseFromString = function (html, tagName) {\n if (tagName) {\n html = '<' + tagName + '>' + html + '</' + tagName + '>';\n }\n\n // because IE9 only supports MIME type 'text/xml', void elements need to be self-closed\n if (isIE9) {\n html = html.replace(VOID_ELEMENTS_REGEX, '<$1$2$3/>');\n }\n\n return domParser.parseFromString(html, mimeType);\n };\n\n parseFromDocument = parseFromString;\n}\n\n/**\n * DOMImplementation (performance: fair).\n *\n * @see https://developer.mozilla.org/docs/Web/API/DOMImplementation/createHTMLDocument\n */\nif (document.implementation) {\n // title parameter is required in IE\n // https://msdn.microsoft.com/en-us/library/ff975457(v=vs.85).aspx\n var doc = document.implementation.createHTMLDocument(\n isIE ? 'html-dom-parser' : undefined\n );\n\n /**\n * Use HTML document created by `document.implementation.createHTMLDocument`.\n *\n * @param {string} html - The HTML string.\n * @param {string} [tagName] - The element to render the HTML (with 'body' as fallback).\n * @return {HTMLDocument}\n */\n parseFromDocument = function (html, tagName) {\n if (tagName) {\n doc.documentElement.getElementsByTagName(tagName)[0].innerHTML = html;\n return doc;\n }\n\n try {\n doc.documentElement.innerHTML = html;\n return doc;\n // fallback when certain elements in `documentElement` are read-only (IE9)\n } catch (err) {\n if (parseFromString) {\n return parseFromString(html);\n }\n }\n };\n}\n\n/**\n * Template (performance: fast).\n *\n * @see https://developer.mozilla.org/docs/Web/HTML/Element/template\n */\nvar template = document.createElement('template');\nvar parseFromTemplate;\n\nif (template.content) {\n /**\n * Uses a template element (content fragment) to parse HTML.\n *\n * @param {string} html - The HTML string.\n * @return {NodeList}\n */\n parseFromTemplate = function (html) {\n template.innerHTML = html;\n return template.content.childNodes;\n };\n}\n\n/**\n * Parses HTML string to DOM nodes.\n *\n * @param {string} html - The HTML string.\n * @return {NodeList|Array}\n */\nfunction domparser(html) {\n var firstTagName;\n var match = html.match(FIRST_TAG_REGEX);\n\n if (match && match[1]) {\n firstTagName = match[1].toLowerCase();\n }\n\n var doc;\n var element;\n var elements;\n\n switch (firstTagName) {\n case HTML:\n doc = parseFromString(html);\n\n // the created document may come with filler head/body elements,\n // so make sure to remove them if they don't actually exist\n if (!HEAD_TAG_REGEX.test(html)) {\n element = doc.getElementsByTagName(HEAD)[0];\n if (element) {\n element.parentNode.removeChild(element);\n }\n }\n\n if (!BODY_TAG_REGEX.test(html)) {\n element = doc.getElementsByTagName(BODY)[0];\n if (element) {\n element.parentNode.removeChild(element);\n }\n }\n\n return doc.getElementsByTagName(HTML);\n\n case HEAD:\n case BODY:\n elements = parseFromDocument(html).getElementsByTagName(firstTagName);\n\n // if there's a sibling element, then return both elements\n if (BODY_TAG_REGEX.test(html) && HEAD_TAG_REGEX.test(html)) {\n return elements[0].parentNode.childNodes;\n }\n return elements;\n\n // low-level tag or text\n default:\n if (parseFromTemplate) {\n return parseFromTemplate(html);\n }\n\n return parseFromDocument(html, BODY).getElementsByTagName(BODY)[0]\n .childNodes;\n }\n}\n\nmodule.exports = domparser;\n","var domparser = require('./domparser');\nvar utilities = require('./utilities');\n\nvar formatDOM = utilities.formatDOM;\nvar isIE9 = utilities.isIE(9);\n\nvar DIRECTIVE_REGEX = /<(![a-zA-Z\\s]+)>/; // e.g., <!doctype html>\n\n/**\n * Parses HTML and reformats DOM nodes output.\n *\n * @param {String} html - The HTML string.\n * @return {Array} - The formatted DOM nodes.\n */\nfunction parseDOM(html) {\n if (typeof html !== 'string') {\n throw new TypeError('First argument must be a string');\n }\n\n if (!html) {\n return [];\n }\n\n // match directive\n var match = html.match(DIRECTIVE_REGEX);\n var directive;\n\n if (match && match[1]) {\n directive = match[1];\n\n // remove directive in IE9 because DOMParser uses\n // MIME type 'text/xml' instead of 'text/html'\n if (isIE9) {\n html = html.replace(match[0], '');\n }\n }\n\n return formatDOM(domparser(html), null, directive);\n}\n\nmodule.exports = parseDOM;\n","var domToReact = require('./lib/dom-to-react');\nvar attributesToProps = require('./lib/attributes-to-props');\nvar htmlToDOM = require('html-dom-parser');\n\n// decode HTML entities by default for `htmlparser2`\nvar domParserOptions = { decodeEntities: true, lowerCaseAttributeNames: false };\n\n/**\n * Converts HTML string to React elements.\n *\n * @param {String} html - HTML string.\n * @param {Object} [options] - Parser options.\n * @param {Object} [options.htmlparser2] - htmlparser2 options.\n * @param {Object} [options.library] - Library for React, Preact, etc.\n * @param {Function} [options.replace] - Replace method.\n * @return {JSX.Element|JSX.Element[]|String} - React element(s), empty array, or string.\n */\nfunction HTMLReactParser(html, options) {\n if (typeof html !== 'string') {\n throw new TypeError('First argument must be a string');\n }\n if (html === '') {\n return [];\n }\n options = options || {};\n return domToReact(\n htmlToDOM(html, options.htmlparser2 || domParserOptions),\n options\n );\n}\n\nHTMLReactParser.domToReact = domToReact;\nHTMLReactParser.htmlToDOM = htmlToDOM;\nHTMLReactParser.attributesToProps = attributesToProps;\n\n// support CommonJS and ES Modules\nmodule.exports = HTMLReactParser;\nmodule.exports.default = HTMLReactParser;\n"],"names":["Properties","autoFocus","accept","acceptCharset","accessKey","action","allowFullScreen","allowTransparency","alt","as","async","autoComplete","autoPlay","capture","cellPadding","cellSpacing","charSet","challenge","checked","cite","classID","className","cols","colSpan","content","contentEditable","contextMenu","controls","controlsList","coords","crossOrigin","data","dateTime","default","defer","dir","disabled","download","draggable","encType","form","formAction","formEncType","formMethod","formNoValidate","formTarget","frameBorder","headers","height","hidden","high","href","hrefLang","htmlFor","httpEquiv","icon","id","inputMode","integrity","is","keyParams","keyType","kind","label","lang","list","loop","low","manifest","marginHeight","marginWidth","max","maxLength","media","mediaGroup","method","min","minLength","multiple","muted","name","nonce","noValidate","open","optimum","pattern","placeholder","playsInline","poster","preload","profile","radioGroup","readOnly","referrerPolicy","rel","required","reversed","role","rows","rowSpan","sandbox","scope","scoped","scrolling","seamless","selected","shape","size","sizes","span","spellCheck","src","srcDoc","srcLang","srcSet","start","step","style","summary","tabIndex","target","title","type","useMap","value","width","wmode","wrap","about","datatype","inlist","prefix","property","resource","typeof","vocab","autoCapitalize","autoCorrect","autoSave","color","itemProp","itemScope","itemType","itemID","itemRef","results","security","unselectable","DOMAttributeNames","accentHeight","accumulate","additive","alignmentBaseline","allowReorder","alphabetic","amplitude","arabicForm","ascent","attributeName","attributeType","autoReverse","azimuth","baseFrequency","baseProfile","baselineShift","bbox","begin","bias","by","calcMode","capHeight","clip","clipPath","clipRule","clipPathUnits","colorInterpolation","colorInterpolationFilters","colorProfile","colorRendering","contentScriptType","contentStyleType","cursor","cx","cy","d","decelerate","descent","diffuseConstant","direction","display","divisor","dominantBaseline","dur","dx","dy","edgeMode","elevation","enableBackground","end","exponent","externalResourcesRequired","fill","fillOpacity","fillRule","filter","filterRes","filterUnits","floodColor","floodOpacity","focusable","fontFamily","fontSize","fontSizeAdjust","fontStretch","fontStyle","fontVariant","fontWeight","format","from","fx","fy","g1","g2","glyphName","glyphOrientationHorizontal","glyphOrientationVertical","glyphRef","gradientTransform","gradientUnits","hanging","horizAdvX","horizOriginX","ideographic","imageRendering","in","in2","intercept","k","k1","k2","k3","k4","kernelMatrix","kernelUnitLength","kerning","keyPoints","keySplines","keyTimes","lengthAdjust","letterSpacing","lightingColor","limitingConeAngle","local","markerEnd","markerMid","markerStart","markerHeight","markerUnits","markerWidth","mask","maskContentUnits","maskUnits","mathematical","mode","numOctaves","offset","opacity","operator","order","orient","orientation","origin","overflow","overlinePosition","overlineThickness","paintOrder","panose1","pathLength","patternContentUnits","patternTransform","patternUnits","pointerEvents","points","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","r","radius","refX","refY","renderingIntent","repeatCount","repeatDur","requiredExtensions","requiredFeatures","restart","result","rotate","rx","ry","scale","seed","shapeRendering","slope","spacing","specularConstant","specularExponent","speed","spreadMethod","startOffset","stdDeviation","stemh","stemv","stitchTiles","stopColor","stopOpacity","strikethroughPosition","strikethroughThickness","string","stroke","strokeDasharray","strokeDashoffset","strokeLinecap","strokeLinejoin","strokeMiterlimit","strokeOpacity","strokeWidth","surfaceScale","systemLanguage","tableValues","targetX","targetY","textAnchor","textDecoration","textRendering","textLength","to","transform","u1","u2","underlinePosition","underlineThickness","unicode","unicodeBidi","unicodeRange","unitsPerEm","vAlphabetic","vHanging","vIdeographic","vMathematical","values","vectorEffect","version","vertAdvY","vertOriginX","vertOriginY","viewBox","viewTarget","visibility","widths","wordSpacing","writingMode","x","xHeight","x1","x2","xChannelSelector","xlinkActuate","xlinkArcrole","xlinkHref","xlinkRole","xlinkShow","xlinkTitle","xlinkType","xmlBase","xmlns","xmlnsXlink","xmlLang","xmlSpace","y","y1","y2","yChannelSelector","z","zoomAndPan","MUST_USE_PROPERTY","HAS_BOOLEAN_VALUE","HAS_NUMERIC_VALUE","HAS_POSITIVE_NUMERIC_VALUE","HAS_OVERLOADED_BOOLEAN_VALUE","checkMask","bitmask","injectDOMPropertyConfig","domPropertyConfig","config","isSVG","propertyName","propConfig","toLowerCase","mustUseProperty","hasBooleanValue","hasNumericValue","hasPositiveNumericValue","hasOverloadedBooleanValue","html","HTMLDOMPropertyConfig","svg","SVGDOMPropertyConfig","properties","isCustomAttribute","RegExp","prototype","test","bind","COMMENT_REGEX","NEWLINE_REGEX","WHITESPACE_REGEX","PROPERTY_REGEX","COLON_REGEX","VALUE_REGEX","SEMICOLON_REGEX","TRIM_REGEX","EMPTY_STRING","trim","str","replace","iterator","declaration","output","declarations","options","TypeError","lineno","column","updatePosition","lines","match","length","i","lastIndexOf","position","line","node","Position","whitespace","this","source","error","msg","err","Error","reason","filename","silent","re","m","exec","slice","comments","rules","c","comment","push","pos","charAt","prop","val","ret","decl","decls","parse","hasIterator","len","exports","CUSTOM_PROPERTY_REGEX","HYPHEN_REGEX","NO_HYPHEN_REGEX","VENDOR_PREFIX_REGEX","capitalize","character","toUpperCase","trimHyphen","skipCamelCase","reactCompat","styleToJS","__importDefault","mod","__esModule","style_to_object_1","require$$0","utilities_1","camelCase","styleToJSOptions","PRESERVE_CUSTOM_ATTRIBUTES","React","split","invertObject","obj","override","key","isOverridePresent","overrides","isCustomComponent","tagName","props","indexOf","setStyleProp","utilities","htmlProperties","reactProperty","svgProperties","hasOwnProperty","Object","attributes","attributeNameLowerCased","attributeValue","call","skipAttributesToProps","attribs","domToReact","nodes","replaceElement","children","library","cloneElement","createElement","isValidElement","hasReplace","attributesToProps","dangerouslySetInnerHTML","__html","defaultValue","CASE_SENSITIVE_TAG_NAMES","caseSensitiveTagNamesMap","formatAttributes","attribute","formatTagName","caseSensitiveTagName","getCaseSensitiveTagName","formatDOM","parentObj","directive","prevNode","nodeObj","next","prev","parent","nodeName","nodeType","childNodes","nodeValue","unshift","substring","isIE","document","documentMode","navigator","userAgent","HTML","HEAD","BODY","FIRST_TAG_REGEX","HEAD_TAG_REGEX","BODY_TAG_REGEX","VOID_ELEMENTS_REGEX","isIE9","parseFromDocument","parseFromString","window","DOMParser","domParser","mimeType","implementation","doc","createHTMLDocument","undefined","documentElement","getElementsByTagName","innerHTML","parseFromTemplate","template","firstTagName","element","elements","parentNode","removeChild","DIRECTIVE_REGEX","domparser","domParserOptions","decodeEntities","lowerCaseAttributeNames","HTMLReactParser","htmlToDOM","htmlparser2"],"mappings":"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"}
package/index.d.ts CHANGED
@@ -2,6 +2,7 @@
2
2
 
3
3
  import { DomElement, ParserOptions } from 'htmlparser2';
4
4
  import domToReact from './lib/dom-to-react';
5
+ import attributesToProps from './lib/attributes-to-props';
5
6
  import htmlToDOM from 'html-dom-parser';
6
7
 
7
8
  export interface HTMLReactParserOptions {
@@ -37,6 +38,6 @@ declare function HTMLReactParser(
37
38
  options?: HTMLReactParserOptions
38
39
  ): ReturnType<typeof domToReact>;
39
40
 
40
- export { DomElement, ParserOptions, domToReact, htmlToDOM };
41
+ export { DomElement, ParserOptions, domToReact, htmlToDOM, attributesToProps };
41
42
 
42
43
  export default HTMLReactParser;
package/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  var domToReact = require('./lib/dom-to-react');
2
+ var attributesToProps = require('./lib/attributes-to-props');
2
3
  var htmlToDOM = require('html-dom-parser');
3
4
 
4
5
  // decode HTML entities by default for `htmlparser2`
@@ -30,6 +31,7 @@ function HTMLReactParser(html, options) {
30
31
 
31
32
  HTMLReactParser.domToReact = domToReact;
32
33
  HTMLReactParser.htmlToDOM = htmlToDOM;
34
+ HTMLReactParser.attributesToProps = attributesToProps;
33
35
 
34
36
  // support CommonJS and ES Modules
35
37
  module.exports = HTMLReactParser;
@@ -0,0 +1,11 @@
1
+ // TypeScript Version: 3.3
2
+
3
+ /**
4
+ * Converts HTML/SVG DOM attributes to React props.
5
+ *
6
+ * @param attributes - The HTML/SVG DOM attributes.
7
+ * @returns - The React props.
8
+ */
9
+ export default function attributesToProps(
10
+ attributes: { [key: string]: string }
11
+ ): { [key: string]: string };
@@ -1,8 +1,7 @@
1
1
  var reactProperty = require('react-property');
2
- var styleToObject = require('style-to-object');
3
2
  var utilities = require('./utilities');
4
3
 
5
- var camelCase = utilities.camelCase;
4
+ var setStyleProp = utilities.setStyleProp;
6
5
 
7
6
  var htmlProperties = reactProperty.html;
8
7
  var svgProperties = reactProperty.svg;
@@ -13,8 +12,8 @@ var hasOwnProperty = Object.prototype.hasOwnProperty;
13
12
  /**
14
13
  * Converts HTML/SVG DOM attributes to React props.
15
14
  *
16
- * @param {Object} [attributes={}] - The HTML/SVG DOM attributes.
17
- * @return {Object} - The React props.
15
+ * @param {object} [attributes={}] - HTML/SVG DOM attributes.
16
+ * @return {object} - React props.
18
17
  */
19
18
  function attributesToProps(attributes) {
20
19
  attributes = attributes || {};
@@ -59,33 +58,10 @@ function attributesToProps(attributes) {
59
58
  }
60
59
  }
61
60
 
62
- // convert inline style to object
63
- if (attributes.style != null) {
64
- props.style = cssToJs(attributes.style);
65
- }
61
+ // transform inline style to object
62
+ setStyleProp(attributes.style, props);
66
63
 
67
64
  return props;
68
65
  }
69
66
 
70
- /**
71
- * Converts inline CSS style to POJO (Plain Old JavaScript Object).
72
- *
73
- * @param {String} style - The inline CSS style.
74
- * @return {Object} - The style object.
75
- */
76
- function cssToJs(style) {
77
- var styleObject = {};
78
-
79
- if (style) {
80
- styleToObject(style, function (property, value) {
81
- // skip CSS comment
82
- if (property && value) {
83
- styleObject[camelCase(property)] = value;
84
- }
85
- });
86
- }
87
-
88
- return styleObject;
89
- }
90
-
91
67
  module.exports = attributesToProps;
@@ -1,22 +1,25 @@
1
+ var React = require('react');
1
2
  var attributesToProps = require('./attributes-to-props');
2
3
  var utilities = require('./utilities');
3
4
 
5
+ var setStyleProp = utilities.setStyleProp;
6
+
4
7
  /**
5
8
  * Converts DOM nodes to React elements.
6
9
  *
7
- * @param {DomElement[]} nodes - The DOM nodes.
8
- * @param {Object} [options={}] - The additional options.
9
- * @param {Function} [options.replace] - The replacer.
10
- * @param {Object} [options.library] - The library (React, Preact, etc.).
11
- * @return {String|ReactElement|ReactElement[]}
10
+ * @param {DomElement[]} nodes - DOM nodes.
11
+ * @param {object} [options={}] - Options.
12
+ * @param {Function} [options.replace] - Replacer.
13
+ * @param {object} [options.library] - Library (React/Preact/etc.).
14
+ * @return {string|ReactElement|ReactElement[]}
12
15
  */
13
16
  function domToReact(nodes, options) {
14
17
  options = options || {};
15
18
 
16
- var React = options.library || require('react');
17
- var cloneElement = React.cloneElement;
18
- var createElement = React.createElement;
19
- var isValidElement = React.isValidElement;
19
+ var library = options.library || React;
20
+ var cloneElement = library.cloneElement;
21
+ var createElement = library.createElement;
22
+ var isValidElement = library.isValidElement;
20
23
 
21
24
  var result = [];
22
25
  var node;
@@ -61,8 +64,10 @@ function domToReact(nodes, options) {
61
64
  }
62
65
 
63
66
  props = node.attribs;
64
- if (!shouldPassAttributesUnaltered(node)) {
65
- props = attributesToProps(node.attribs);
67
+ if (skipAttributesToProps(node)) {
68
+ setStyleProp(props.style, props);
69
+ } else if (props) {
70
+ props = attributesToProps(props);
66
71
  }
67
72
 
68
73
  children = null;
@@ -108,12 +113,13 @@ function domToReact(nodes, options) {
108
113
  }
109
114
 
110
115
  /**
111
- * Determines whether attributes should be altered or not.
116
+ * Determines whether DOM element attributes should be transformed to props.
117
+ * Web Components should not have their attributes transformed except for `style`.
112
118
  *
113
- * @param {React.ReactElement} node
114
- * @return {Boolean}
119
+ * @param {DomElement} node
120
+ * @return {boolean}
115
121
  */
116
- function shouldPassAttributesUnaltered(node) {
122
+ function skipAttributesToProps(node) {
117
123
  return (
118
124
  utilities.PRESERVE_CUSTOM_ATTRIBUTES &&
119
125
  node.type === 'tag' &&
package/lib/utilities.js CHANGED
@@ -1,30 +1,5 @@
1
1
  var React = require('react');
2
- var hyphenPatternRegex = /-([a-z])/g;
3
- var CUSTOM_PROPERTY_OR_NO_HYPHEN_REGEX = /^--[a-zA-Z0-9-]+$|^[^-]+$/;
4
-
5
- /**
6
- * Converts a string to camelCase.
7
- *
8
- * @param {String} string - The string.
9
- * @return {String}
10
- */
11
- function camelCase(string) {
12
- if (typeof string !== 'string') {
13
- throw new TypeError('First argument must be a string');
14
- }
15
-
16
- // custom property or no hyphen found
17
- if (CUSTOM_PROPERTY_OR_NO_HYPHEN_REGEX.test(string)) {
18
- return string;
19
- }
20
-
21
- // convert to camelCase
22
- return string
23
- .toLowerCase()
24
- .replace(hyphenPatternRegex, function (_, character) {
25
- return character.toUpperCase();
26
- });
27
- }
2
+ var styleToJS = require('style-to-js').default;
28
3
 
29
4
  /**
30
5
  * Swap key with value in an object.
@@ -96,15 +71,30 @@ function isCustomComponent(tagName, props) {
96
71
  }
97
72
  }
98
73
 
74
+ var styleToJSOptions = { reactCompat: true };
75
+
76
+ /**
77
+ * Sets style prop.
78
+ *
79
+ * @param {null|undefined|string} style
80
+ * @param {object} props
81
+ */
82
+ function setStyleProp(style, props) {
83
+ if (style === null || style === undefined) {
84
+ return;
85
+ }
86
+ props.style = styleToJS(style, styleToJSOptions);
87
+ }
88
+
99
89
  /**
100
- * @constant {Boolean}
90
+ * @constant {boolean}
101
91
  * @see {@link https://reactjs.org/blog/2017/09/08/dom-attributes-in-react-16.html}
102
92
  */
103
93
  var PRESERVE_CUSTOM_ATTRIBUTES = React.version.split('.')[0] >= 16;
104
94
 
105
95
  module.exports = {
106
96
  PRESERVE_CUSTOM_ATTRIBUTES: PRESERVE_CUSTOM_ATTRIBUTES,
107
- camelCase: camelCase,
108
97
  invertObject: invertObject,
109
- isCustomComponent: isCustomComponent
98
+ isCustomComponent: isCustomComponent,
99
+ setStyleProp: setStyleProp
110
100
  };