{
  "version": 3,
  "sources": ["../../../../../node_modules/.pnpm/@iconify+utils@3.0.2/node_modules/@iconify/utils/lib/icon/defaults.js", "../../../../../node_modules/.pnpm/@iconify+utils@3.0.2/node_modules/@iconify/utils/lib/customisations/defaults.js", "../../../../../node_modules/.pnpm/@iconify+utils@3.0.2/node_modules/@iconify/utils/lib/icon/name.js", "../../../../../node_modules/.pnpm/@iconify+utils@3.0.2/node_modules/@iconify/utils/lib/icon/transformations.js", "../../../../../node_modules/.pnpm/@iconify+utils@3.0.2/node_modules/@iconify/utils/lib/icon/merge.js", "../../../../../node_modules/.pnpm/@iconify+utils@3.0.2/node_modules/@iconify/utils/lib/icon-set/tree.js", "../../../../../node_modules/.pnpm/@iconify+utils@3.0.2/node_modules/@iconify/utils/lib/icon-set/get-icon.js", "../../../../../node_modules/.pnpm/@iconify+utils@3.0.2/node_modules/@iconify/utils/lib/svg/size.js", "../../../../../node_modules/.pnpm/@iconify+utils@3.0.2/node_modules/@iconify/utils/lib/svg/defs.js", "../../../../../node_modules/.pnpm/@iconify+utils@3.0.2/node_modules/@iconify/utils/lib/svg/build.js", "../../../../../node_modules/.pnpm/@iconify+utils@3.0.2/node_modules/@iconify/utils/lib/svg/id.js", "../../../../../node_modules/.pnpm/@iconify+utils@3.0.2/node_modules/@iconify/utils/lib/svg/html.js", "../../../src/rendering-util/icons.ts"],
  "sourcesContent": ["/**\n* Default values for dimensions\n*/\nconst defaultIconDimensions = Object.freeze({\n\tleft: 0,\n\ttop: 0,\n\twidth: 16,\n\theight: 16\n});\n/**\n* Default values for transformations\n*/\nconst defaultIconTransformations = Object.freeze({\n\trotate: 0,\n\tvFlip: false,\n\thFlip: false\n});\n/**\n* Default values for all optional IconifyIcon properties\n*/\nconst defaultIconProps = Object.freeze({\n\t...defaultIconDimensions,\n\t...defaultIconTransformations\n});\n/**\n* Default values for all properties used in ExtendedIconifyIcon\n*/\nconst defaultExtendedIconProps = Object.freeze({\n\t...defaultIconProps,\n\tbody: \"\",\n\thidden: false\n});\n\nexport { defaultExtendedIconProps, defaultIconDimensions, defaultIconProps, defaultIconTransformations };", "import { defaultIconTransformations } from \"../icon/defaults.js\";\n\n/**\n* Default icon customisations values\n*/\nconst defaultIconSizeCustomisations = Object.freeze({\n\twidth: null,\n\theight: null\n});\nconst defaultIconCustomisations = Object.freeze({\n\t...defaultIconSizeCustomisations,\n\t...defaultIconTransformations\n});\n\nexport { defaultIconCustomisations, defaultIconSizeCustomisations };", "/**\n* Expression to test part of icon name.\n*\n* Used when loading icons from Iconify API due to project naming convension.\n* Ignored when using custom icon sets - convension does not apply.\n*/\nconst matchIconName = /^[a-z0-9]+(-[a-z0-9]+)*$/;\n/**\n* Convert string icon name to IconifyIconName object.\n*/\nconst stringToIcon = (value, validate, allowSimpleName, provider = \"\") => {\n\tconst colonSeparated = value.split(\":\");\n\tif (value.slice(0, 1) === \"@\") {\n\t\tif (colonSeparated.length < 2 || colonSeparated.length > 3) return null;\n\t\tprovider = colonSeparated.shift().slice(1);\n\t}\n\tif (colonSeparated.length > 3 || !colonSeparated.length) return null;\n\tif (colonSeparated.length > 1) {\n\t\tconst name$1 = colonSeparated.pop();\n\t\tconst prefix = colonSeparated.pop();\n\t\tconst result = {\n\t\t\tprovider: colonSeparated.length > 0 ? colonSeparated[0] : provider,\n\t\t\tprefix,\n\t\t\tname: name$1\n\t\t};\n\t\treturn validate && !validateIconName(result) ? null : result;\n\t}\n\tconst name = colonSeparated[0];\n\tconst dashSeparated = name.split(\"-\");\n\tif (dashSeparated.length > 1) {\n\t\tconst result = {\n\t\t\tprovider,\n\t\t\tprefix: dashSeparated.shift(),\n\t\t\tname: dashSeparated.join(\"-\")\n\t\t};\n\t\treturn validate && !validateIconName(result) ? null : result;\n\t}\n\tif (allowSimpleName && provider === \"\") {\n\t\tconst result = {\n\t\t\tprovider,\n\t\t\tprefix: \"\",\n\t\t\tname\n\t\t};\n\t\treturn validate && !validateIconName(result, allowSimpleName) ? null : result;\n\t}\n\treturn null;\n};\n/**\n* Check if icon is valid.\n*\n* This function is not part of stringToIcon because validation is not needed for most code.\n*/\nconst validateIconName = (icon, allowSimpleName) => {\n\tif (!icon) return false;\n\treturn !!((allowSimpleName && icon.prefix === \"\" || !!icon.prefix) && !!icon.name);\n};\n\nexport { matchIconName, stringToIcon, validateIconName };", "/**\n* Merge transformations\n*/\nfunction mergeIconTransformations(obj1, obj2) {\n\tconst result = {};\n\tif (!obj1.hFlip !== !obj2.hFlip) result.hFlip = true;\n\tif (!obj1.vFlip !== !obj2.vFlip) result.vFlip = true;\n\tconst rotate = ((obj1.rotate || 0) + (obj2.rotate || 0)) % 4;\n\tif (rotate) result.rotate = rotate;\n\treturn result;\n}\n\nexport { mergeIconTransformations };", "import { defaultExtendedIconProps, defaultIconTransformations } from \"./defaults.js\";\nimport { mergeIconTransformations } from \"./transformations.js\";\n\n/**\n* Merge icon and alias\n*\n* Can also be used to merge default values and icon\n*/\nfunction mergeIconData(parent, child) {\n\tconst result = mergeIconTransformations(parent, child);\n\tfor (const key in defaultExtendedIconProps) if (key in defaultIconTransformations) {\n\t\tif (key in parent && !(key in result)) result[key] = defaultIconTransformations[key];\n\t} else if (key in child) result[key] = child[key];\n\telse if (key in parent) result[key] = parent[key];\n\treturn result;\n}\n\nexport { mergeIconData };", "/**\n* Resolve icon set icons\n*\n* Returns parent icon for each icon\n*/\nfunction getIconsTree(data, names) {\n\tconst icons = data.icons;\n\tconst aliases = data.aliases || Object.create(null);\n\tconst resolved = Object.create(null);\n\tfunction resolve(name) {\n\t\tif (icons[name]) return resolved[name] = [];\n\t\tif (!(name in resolved)) {\n\t\t\tresolved[name] = null;\n\t\t\tconst parent = aliases[name] && aliases[name].parent;\n\t\t\tconst value = parent && resolve(parent);\n\t\t\tif (value) resolved[name] = [parent].concat(value);\n\t\t}\n\t\treturn resolved[name];\n\t}\n\t(names || Object.keys(icons).concat(Object.keys(aliases))).forEach(resolve);\n\treturn resolved;\n}\n\nexport { getIconsTree };", "import { mergeIconData } from \"../icon/merge.js\";\nimport { getIconsTree } from \"./tree.js\";\n\n/**\n* Get icon data, using prepared aliases tree\n*/\nfunction internalGetIconData(data, name, tree) {\n\tconst icons = data.icons;\n\tconst aliases = data.aliases || Object.create(null);\n\tlet currentProps = {};\n\tfunction parse(name$1) {\n\t\tcurrentProps = mergeIconData(icons[name$1] || aliases[name$1], currentProps);\n\t}\n\tparse(name);\n\ttree.forEach(parse);\n\treturn mergeIconData(data, currentProps);\n}\n/**\n* Get data for icon\n*/\nfunction getIconData(data, name) {\n\tif (data.icons[name]) return internalGetIconData(data, name, []);\n\tconst tree = getIconsTree(data, [name])[name];\n\treturn tree ? internalGetIconData(data, name, tree) : null;\n}\n\nexport { getIconData, internalGetIconData };", "/**\n* Regular expressions for calculating dimensions\n*/\nconst unitsSplit = /(-?[0-9.]*[0-9]+[0-9.]*)/g;\nconst unitsTest = /^-?[0-9.]*[0-9]+[0-9.]*$/g;\nfunction calculateSize(size, ratio, precision) {\n\tif (ratio === 1) return size;\n\tprecision = precision || 100;\n\tif (typeof size === \"number\") return Math.ceil(size * ratio * precision) / precision;\n\tif (typeof size !== \"string\") return size;\n\tconst oldParts = size.split(unitsSplit);\n\tif (oldParts === null || !oldParts.length) return size;\n\tconst newParts = [];\n\tlet code = oldParts.shift();\n\tlet isNumber = unitsTest.test(code);\n\twhile (true) {\n\t\tif (isNumber) {\n\t\t\tconst num = parseFloat(code);\n\t\t\tif (isNaN(num)) newParts.push(code);\n\t\t\telse newParts.push(Math.ceil(num * ratio * precision) / precision);\n\t\t} else newParts.push(code);\n\t\tcode = oldParts.shift();\n\t\tif (code === void 0) return newParts.join(\"\");\n\t\tisNumber = !isNumber;\n\t}\n}\n\nexport { calculateSize };", "function splitSVGDefs(content, tag = \"defs\") {\n\tlet defs = \"\";\n\tconst index = content.indexOf(\"<\" + tag);\n\twhile (index >= 0) {\n\t\tconst start = content.indexOf(\">\", index);\n\t\tconst end = content.indexOf(\"</\" + tag);\n\t\tif (start === -1 || end === -1) break;\n\t\tconst endEnd = content.indexOf(\">\", end);\n\t\tif (endEnd === -1) break;\n\t\tdefs += content.slice(start + 1, end).trim();\n\t\tcontent = content.slice(0, index).trim() + content.slice(endEnd + 1);\n\t}\n\treturn {\n\t\tdefs,\n\t\tcontent\n\t};\n}\n/**\n* Merge defs and content\n*/\nfunction mergeDefsAndContent(defs, content) {\n\treturn defs ? \"<defs>\" + defs + \"</defs>\" + content : content;\n}\n/**\n* Wrap SVG content, without wrapping definitions\n*/\nfunction wrapSVGContent(body, start, end) {\n\tconst split = splitSVGDefs(body);\n\treturn mergeDefsAndContent(split.defs, start + split.content + end);\n}\n\nexport { mergeDefsAndContent, splitSVGDefs, wrapSVGContent };", "import { defaultIconProps } from \"../icon/defaults.js\";\nimport { defaultIconCustomisations } from \"../customisations/defaults.js\";\nimport { calculateSize } from \"./size.js\";\nimport { wrapSVGContent } from \"./defs.js\";\n\n/**\n* Check if value should be unset. Allows multiple keywords\n*/\nconst isUnsetKeyword = (value) => value === \"unset\" || value === \"undefined\" || value === \"none\";\n/**\n* Get SVG attributes and content from icon + customisations\n*\n* Does not generate style to make it compatible with frameworks that use objects for style, such as React.\n* Instead, it generates 'inline' value. If true, rendering engine should add verticalAlign: -0.125em to icon.\n*\n* Customisations should be normalised by platform specific parser.\n* Result should be converted to <svg> by platform specific parser.\n* Use replaceIDs to generate unique IDs for body.\n*/\nfunction iconToSVG(icon, customisations) {\n\tconst fullIcon = {\n\t\t...defaultIconProps,\n\t\t...icon\n\t};\n\tconst fullCustomisations = {\n\t\t...defaultIconCustomisations,\n\t\t...customisations\n\t};\n\tconst box = {\n\t\tleft: fullIcon.left,\n\t\ttop: fullIcon.top,\n\t\twidth: fullIcon.width,\n\t\theight: fullIcon.height\n\t};\n\tlet body = fullIcon.body;\n\t[fullIcon, fullCustomisations].forEach((props) => {\n\t\tconst transformations = [];\n\t\tconst hFlip = props.hFlip;\n\t\tconst vFlip = props.vFlip;\n\t\tlet rotation = props.rotate;\n\t\tif (hFlip) if (vFlip) rotation += 2;\n\t\telse {\n\t\t\ttransformations.push(\"translate(\" + (box.width + box.left).toString() + \" \" + (0 - box.top).toString() + \")\");\n\t\t\ttransformations.push(\"scale(-1 1)\");\n\t\t\tbox.top = box.left = 0;\n\t\t}\n\t\telse if (vFlip) {\n\t\t\ttransformations.push(\"translate(\" + (0 - box.left).toString() + \" \" + (box.height + box.top).toString() + \")\");\n\t\t\ttransformations.push(\"scale(1 -1)\");\n\t\t\tbox.top = box.left = 0;\n\t\t}\n\t\tlet tempValue;\n\t\tif (rotation < 0) rotation -= Math.floor(rotation / 4) * 4;\n\t\trotation = rotation % 4;\n\t\tswitch (rotation) {\n\t\t\tcase 1:\n\t\t\t\ttempValue = box.height / 2 + box.top;\n\t\t\t\ttransformations.unshift(\"rotate(90 \" + tempValue.toString() + \" \" + tempValue.toString() + \")\");\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\ttransformations.unshift(\"rotate(180 \" + (box.width / 2 + box.left).toString() + \" \" + (box.height / 2 + box.top).toString() + \")\");\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\ttempValue = box.width / 2 + box.left;\n\t\t\t\ttransformations.unshift(\"rotate(-90 \" + tempValue.toString() + \" \" + tempValue.toString() + \")\");\n\t\t\t\tbreak;\n\t\t}\n\t\tif (rotation % 2 === 1) {\n\t\t\tif (box.left !== box.top) {\n\t\t\t\ttempValue = box.left;\n\t\t\t\tbox.left = box.top;\n\t\t\t\tbox.top = tempValue;\n\t\t\t}\n\t\t\tif (box.width !== box.height) {\n\t\t\t\ttempValue = box.width;\n\t\t\t\tbox.width = box.height;\n\t\t\t\tbox.height = tempValue;\n\t\t\t}\n\t\t}\n\t\tif (transformations.length) body = wrapSVGContent(body, \"<g transform=\\\"\" + transformations.join(\" \") + \"\\\">\", \"</g>\");\n\t});\n\tconst customisationsWidth = fullCustomisations.width;\n\tconst customisationsHeight = fullCustomisations.height;\n\tconst boxWidth = box.width;\n\tconst boxHeight = box.height;\n\tlet width;\n\tlet height;\n\tif (customisationsWidth === null) {\n\t\theight = customisationsHeight === null ? \"1em\" : customisationsHeight === \"auto\" ? boxHeight : customisationsHeight;\n\t\twidth = calculateSize(height, boxWidth / boxHeight);\n\t} else {\n\t\twidth = customisationsWidth === \"auto\" ? boxWidth : customisationsWidth;\n\t\theight = customisationsHeight === null ? calculateSize(width, boxHeight / boxWidth) : customisationsHeight === \"auto\" ? boxHeight : customisationsHeight;\n\t}\n\tconst attributes = {};\n\tconst setAttr = (prop, value) => {\n\t\tif (!isUnsetKeyword(value)) attributes[prop] = value.toString();\n\t};\n\tsetAttr(\"width\", width);\n\tsetAttr(\"height\", height);\n\tconst viewBox = [\n\t\tbox.left,\n\t\tbox.top,\n\t\tboxWidth,\n\t\tboxHeight\n\t];\n\tattributes.viewBox = viewBox.join(\" \");\n\treturn {\n\t\tattributes,\n\t\tviewBox,\n\t\tbody\n\t};\n}\n\nexport { iconToSVG, isUnsetKeyword };", "/**\n* IDs usage:\n*\n* id=\"{id}\"\n* xlink:href=\"#{id}\"\n* url(#{id})\n*\n* From SVG animations:\n*\n* begin=\"0;{id}.end\"\n* begin=\"{id}.end\"\n* begin=\"{id}.click\"\n*/\n/**\n* Regular expression for finding ids\n*/\nconst regex = /\\sid=\"(\\S+)\"/g;\n/**\n* New random-ish prefix for ids\n*\n* Do not use dash, it cannot be used in SVG 2 animations\n*/\nconst randomPrefix = \"IconifyId\" + Date.now().toString(16) + (Math.random() * 16777216 | 0).toString(16);\n/**\n* Counter for ids, increasing with every replacement\n*/\nlet counter = 0;\n/**\n* Replace IDs in SVG output with unique IDs\n*/\nfunction replaceIDs(body, prefix = randomPrefix) {\n\tconst ids = [];\n\tlet match;\n\twhile (match = regex.exec(body)) ids.push(match[1]);\n\tif (!ids.length) return body;\n\tconst suffix = \"suffix\" + (Math.random() * 16777216 | Date.now()).toString(16);\n\tids.forEach((id) => {\n\t\tconst newID = typeof prefix === \"function\" ? prefix(id) : prefix + (counter++).toString();\n\t\tconst escapedID = id.replace(/[.*+?^${}()|[\\]\\\\]/g, \"\\\\$&\");\n\t\tbody = body.replace(new RegExp(\"([#;\\\"])(\" + escapedID + \")([\\\")]|\\\\.[a-z])\", \"g\"), \"$1\" + newID + suffix + \"$3\");\n\t});\n\tbody = body.replace(new RegExp(suffix, \"g\"), \"\");\n\treturn body;\n}\n\nexport { replaceIDs };", "/**\n* Generate <svg>\n*/\nfunction iconToHTML(body, attributes) {\n\tlet renderAttribsHTML = body.indexOf(\"xlink:\") === -1 ? \"\" : \" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\"\";\n\tfor (const attr in attributes) renderAttribsHTML += \" \" + attr + \"=\\\"\" + attributes[attr] + \"\\\"\";\n\treturn \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\"\" + renderAttribsHTML + \">\" + body + \"</svg>\";\n}\n\nexport { iconToHTML };", "import type { ExtendedIconifyIcon, IconifyIcon, IconifyJSON } from '@iconify/types';\nimport type { IconifyIconCustomisations } from '@iconify/utils';\nimport { getIconData, iconToHTML, iconToSVG, replaceIDs, stringToIcon } from '@iconify/utils';\nimport { getConfig } from '../config.js';\nimport { sanitizeText } from '../diagrams/common/common.js';\nimport { log } from '../logger.js';\n\nexport interface AsyncIconLoader {\n  name: string;\n  loader: () => Promise<IconifyJSON>;\n}\n\nexport interface SyncIconLoader {\n  name: string;\n  icons: IconifyJSON;\n}\n\nexport type IconLoader = AsyncIconLoader | SyncIconLoader;\n\nexport const unknownIcon: IconifyIcon = {\n  body: '<g><rect width=\"80\" height=\"80\" style=\"fill: #087ebf; stroke-width: 0px;\"/><text transform=\"translate(21.16 64.67)\" style=\"fill: #fff; font-family: ArialMT, Arial; font-size: 67.75px;\"><tspan x=\"0\" y=\"0\">?</tspan></text></g>',\n  height: 80,\n  width: 80,\n};\n\nconst iconsStore = new Map<string, IconifyJSON>();\nconst loaderStore = new Map<string, AsyncIconLoader['loader']>();\n\nexport const registerIconPacks = (iconLoaders: IconLoader[]) => {\n  for (const iconLoader of iconLoaders) {\n    if (!iconLoader.name) {\n      throw new Error(\n        'Invalid icon loader. Must have a \"name\" property with non-empty string value.'\n      );\n    }\n    log.debug('Registering icon pack:', iconLoader.name);\n    if ('loader' in iconLoader) {\n      loaderStore.set(iconLoader.name, iconLoader.loader);\n    } else if ('icons' in iconLoader) {\n      iconsStore.set(iconLoader.name, iconLoader.icons);\n    } else {\n      log.error('Invalid icon loader:', iconLoader);\n      throw new Error('Invalid icon loader. Must have either \"icons\" or \"loader\" property.');\n    }\n  }\n};\n\nconst getRegisteredIconData = async (iconName: string, fallbackPrefix?: string) => {\n  const data = stringToIcon(iconName, true, fallbackPrefix !== undefined);\n  if (!data) {\n    throw new Error(`Invalid icon name: ${iconName}`);\n  }\n  const prefix = data.prefix || fallbackPrefix;\n  if (!prefix) {\n    throw new Error(`Icon name must contain a prefix: ${iconName}`);\n  }\n  let icons = iconsStore.get(prefix);\n  if (!icons) {\n    const loader = loaderStore.get(prefix);\n    if (!loader) {\n      throw new Error(`Icon set not found: ${data.prefix}`);\n    }\n    try {\n      const loaded = await loader();\n      icons = { ...loaded, prefix };\n      iconsStore.set(prefix, icons);\n    } catch (e) {\n      log.error(e);\n      throw new Error(`Failed to load icon set: ${data.prefix}`);\n    }\n  }\n  const iconData = getIconData(icons, data.name);\n  if (!iconData) {\n    throw new Error(`Icon not found: ${iconName}`);\n  }\n  return iconData;\n};\n\nexport const isIconAvailable = async (iconName: string) => {\n  try {\n    await getRegisteredIconData(iconName);\n    return true;\n  } catch {\n    return false;\n  }\n};\n\nexport const getIconSVG = async (\n  iconName: string,\n  customisations?: IconifyIconCustomisations & { fallbackPrefix?: string },\n  extraAttributes?: Record<string, string>\n) => {\n  let iconData: ExtendedIconifyIcon;\n  try {\n    iconData = await getRegisteredIconData(iconName, customisations?.fallbackPrefix);\n  } catch (e) {\n    log.error(e);\n    iconData = unknownIcon;\n  }\n  const renderData = iconToSVG(iconData, customisations);\n  const svg = iconToHTML(replaceIDs(renderData.body), {\n    ...renderData.attributes,\n    ...extraAttributes,\n  });\n  return sanitizeText(svg, getConfig());\n};\n"],
  "mappings": "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",
  "names": ["defaultIconDimensions", "defaultIconTransformations", "defaultIconProps", "defaultExtendedIconProps", "defaultIconSizeCustomisations", "defaultIconCustomisations", "defaultIconTransformations", "stringToIcon", "__name", "value", "validate", "allowSimpleName", "provider", "colonSeparated", "name$1", "prefix", "result", "validateIconName", "name", "dashSeparated", "icon", "mergeIconTransformations", "obj1", "obj2", "result", "rotate", "__name", "mergeIconData", "parent", "child", "result", "mergeIconTransformations", "key", "defaultExtendedIconProps", "defaultIconTransformations", "__name", "getIconsTree", "data", "names", "icons", "aliases", "resolved", "resolve", "name", "parent", "value", "__name", "internalGetIconData", "data", "name", "tree", "icons", "aliases", "currentProps", "parse", "name$1", "mergeIconData", "__name", "getIconData", "getIconsTree", "unitsSplit", "unitsTest", "calculateSize", "size", "ratio", "precision", "oldParts", "newParts", "code", "isNumber", "num", "__name", "splitSVGDefs", "content", "tag", "defs", "index", "start", "end", "endEnd", "__name", "mergeDefsAndContent", "wrapSVGContent", "body", "split", "isUnsetKeyword", "__name", "value", "iconToSVG", "icon", "customisations", "fullIcon", "defaultIconProps", "fullCustomisations", "defaultIconCustomisations", "box", "body", "props", "transformations", "hFlip", "vFlip", "rotation", "tempValue", "wrapSVGContent", "customisationsWidth", "customisationsHeight", "boxWidth", "boxHeight", "width", "height", "calculateSize", "attributes", "setAttr", "prop", "viewBox", "regex", "randomPrefix", "counter", "replaceIDs", "body", "prefix", "ids", "match", "suffix", "id", "newID", "escapedID", "__name", "iconToHTML", "body", "attributes", "renderAttribsHTML", "attr", "__name", "unknownIcon", "iconsStore", "loaderStore", "registerIconPacks", "__name", "iconLoaders", "iconLoader", "log", "getRegisteredIconData", "iconName", "fallbackPrefix", "data", "stringToIcon", "prefix", "icons", "loader", "e", "iconData", "getIconData", "isIconAvailable", "getIconSVG", "customisations", "extraAttributes", "renderData", "iconToSVG", "svg", "iconToHTML", "replaceIDs", "sanitizeText", "getConfig"]
}
