{ "version": 3, "sources": ["../../../../../node_modules/@ant-design/colors/es/generate.js", "../../../../../node_modules/@ant-design/colors/es/index.js", "../../../../../node_modules/@ant-design/icons-angular/fesm2022/ant-design-icons-angular.mjs", "../../../../../node_modules/@ant-design/icons-angular/fesm2022/ant-design-icons-angular-icons.mjs", "../../../../../node_modules/ng-zorro-antd/fesm2022/ng-zorro-antd-icon.mjs"], "sourcesContent": ["import { inputToRGB, rgbToHex, rgbToHsv } from '@ctrl/tinycolor';\nvar hueStep = 2; // 色相阶梯\n\nvar saturationStep = 0.16; // 饱和度阶梯,浅色部分\n\nvar saturationStep2 = 0.05; // 饱和度阶梯,深色部分\n\nvar brightnessStep1 = 0.05; // 亮度阶梯,浅色部分\n\nvar brightnessStep2 = 0.15; // 亮度阶梯,深色部分\n\nvar lightColorCount = 5; // 浅色数量,主色上\n\nvar darkColorCount = 4; // 深色数量,主色下\n// 暗色主题颜色映射关系表\n\nvar darkColorMap = [{\n index: 7,\n opacity: 0.15\n}, {\n index: 6,\n opacity: 0.25\n}, {\n index: 5,\n opacity: 0.3\n}, {\n index: 5,\n opacity: 0.45\n}, {\n index: 5,\n opacity: 0.65\n}, {\n index: 5,\n opacity: 0.85\n}, {\n index: 4,\n opacity: 0.9\n}, {\n index: 3,\n opacity: 0.95\n}, {\n index: 2,\n opacity: 0.97\n}, {\n index: 1,\n opacity: 0.98\n}];\n\n// Wrapper function ported from TinyColor.prototype.toHsv\n// Keep it here because of `hsv.h * 360`\nfunction toHsv(_ref) {\n var r = _ref.r,\n g = _ref.g,\n b = _ref.b;\n var hsv = rgbToHsv(r, g, b);\n return {\n h: hsv.h * 360,\n s: hsv.s,\n v: hsv.v\n };\n} // Wrapper function ported from TinyColor.prototype.toHexString\n// Keep it here because of the prefix `#`\n\n\nfunction toHex(_ref2) {\n var r = _ref2.r,\n g = _ref2.g,\n b = _ref2.b;\n return \"#\".concat(rgbToHex(r, g, b, false));\n} // Wrapper function ported from TinyColor.prototype.mix, not treeshakable.\n// Amount in range [0, 1]\n// Assume color1 & color2 has no alpha, since the following src code did so.\n\n\nfunction mix(rgb1, rgb2, amount) {\n var p = amount / 100;\n var rgb = {\n r: (rgb2.r - rgb1.r) * p + rgb1.r,\n g: (rgb2.g - rgb1.g) * p + rgb1.g,\n b: (rgb2.b - rgb1.b) * p + rgb1.b\n };\n return rgb;\n}\n\nfunction getHue(hsv, i, light) {\n var hue; // 根据色相不同,色相转向不同\n\n if (Math.round(hsv.h) >= 60 && Math.round(hsv.h) <= 240) {\n hue = light ? Math.round(hsv.h) - hueStep * i : Math.round(hsv.h) + hueStep * i;\n } else {\n hue = light ? Math.round(hsv.h) + hueStep * i : Math.round(hsv.h) - hueStep * i;\n }\n\n if (hue < 0) {\n hue += 360;\n } else if (hue >= 360) {\n hue -= 360;\n }\n\n return hue;\n}\n\nfunction getSaturation(hsv, i, light) {\n // grey color don't change saturation\n if (hsv.h === 0 && hsv.s === 0) {\n return hsv.s;\n }\n\n var saturation;\n\n if (light) {\n saturation = hsv.s - saturationStep * i;\n } else if (i === darkColorCount) {\n saturation = hsv.s + saturationStep;\n } else {\n saturation = hsv.s + saturationStep2 * i;\n } // 边界值修正\n\n\n if (saturation > 1) {\n saturation = 1;\n } // 第一格的 s 限制在 0.06-0.1 之间\n\n\n if (light && i === lightColorCount && saturation > 0.1) {\n saturation = 0.1;\n }\n\n if (saturation < 0.06) {\n saturation = 0.06;\n }\n\n return Number(saturation.toFixed(2));\n}\n\nfunction getValue(hsv, i, light) {\n var value;\n\n if (light) {\n value = hsv.v + brightnessStep1 * i;\n } else {\n value = hsv.v - brightnessStep2 * i;\n }\n\n if (value > 1) {\n value = 1;\n }\n\n return Number(value.toFixed(2));\n}\n\nexport default function generate(color) {\n var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var patterns = [];\n var pColor = inputToRGB(color);\n\n for (var i = lightColorCount; i > 0; i -= 1) {\n var hsv = toHsv(pColor);\n var colorString = toHex(inputToRGB({\n h: getHue(hsv, i, true),\n s: getSaturation(hsv, i, true),\n v: getValue(hsv, i, true)\n }));\n patterns.push(colorString);\n }\n\n patterns.push(toHex(pColor));\n\n for (var _i = 1; _i <= darkColorCount; _i += 1) {\n var _hsv = toHsv(pColor);\n\n var _colorString = toHex(inputToRGB({\n h: getHue(_hsv, _i),\n s: getSaturation(_hsv, _i),\n v: getValue(_hsv, _i)\n }));\n\n patterns.push(_colorString);\n } // dark theme patterns\n\n\n if (opts.theme === 'dark') {\n return darkColorMap.map(function (_ref3) {\n var index = _ref3.index,\n opacity = _ref3.opacity;\n var darkColorString = toHex(mix(inputToRGB(opts.backgroundColor || '#141414'), inputToRGB(patterns[index]), opacity * 100));\n return darkColorString;\n });\n }\n\n return patterns;\n}", "import generate from \"./generate\";\nvar presetPrimaryColors = {\n red: '#F5222D',\n volcano: '#FA541C',\n orange: '#FA8C16',\n gold: '#FAAD14',\n yellow: '#FADB14',\n lime: '#A0D911',\n green: '#52C41A',\n cyan: '#13C2C2',\n blue: '#1677FF',\n geekblue: '#2F54EB',\n purple: '#722ED1',\n magenta: '#EB2F96',\n grey: '#666666'\n};\nvar presetPalettes = {};\nvar presetDarkPalettes = {};\nObject.keys(presetPrimaryColors).forEach(function (key) {\n presetPalettes[key] = generate(presetPrimaryColors[key]);\n presetPalettes[key].primary = presetPalettes[key][5]; // dark presetPalettes\n\n presetDarkPalettes[key] = generate(presetPrimaryColors[key], {\n theme: 'dark',\n backgroundColor: '#141414'\n });\n presetDarkPalettes[key].primary = presetDarkPalettes[key][5];\n});\nvar red = presetPalettes.red;\nvar volcano = presetPalettes.volcano;\nvar gold = presetPalettes.gold;\nvar orange = presetPalettes.orange;\nvar yellow = presetPalettes.yellow;\nvar lime = presetPalettes.lime;\nvar green = presetPalettes.green;\nvar cyan = presetPalettes.cyan;\nvar blue = presetPalettes.blue;\nvar geekblue = presetPalettes.geekblue;\nvar purple = presetPalettes.purple;\nvar magenta = presetPalettes.magenta;\nvar grey = presetPalettes.grey;\nvar gray = presetPalettes.grey;\nexport { generate, presetPalettes, presetDarkPalettes, presetPrimaryColors, red, volcano, orange, gold, yellow, lime, green, cyan, blue, geekblue, purple, magenta, grey, gray };", "import * as i0 from '@angular/core';\nimport { isDevMode, InjectionToken, SecurityContext, Injectable, Optional, Inject, Directive, Input, NgModule } from '@angular/core';\nimport { generate } from '@ant-design/colors';\nimport { DOCUMENT } from '@angular/common';\nimport * as i1 from '@angular/common/http';\nimport { HttpClient } from '@angular/common/http';\nimport { Subject, of, Observable } from 'rxjs';\nimport { map, tap, finalize, catchError, share, filter, take } from 'rxjs/operators';\nimport * as i2 from '@angular/platform-browser';\nconst ANT_ICON_ANGULAR_CONSOLE_PREFIX = '[@ant-design/icons-angular]:';\nfunction error(message) {\n console.error(`${ANT_ICON_ANGULAR_CONSOLE_PREFIX} ${message}.`);\n}\nfunction warn(message) {\n if (isDevMode()) {\n console.warn(`${ANT_ICON_ANGULAR_CONSOLE_PREFIX} ${message}.`);\n }\n}\nfunction getSecondaryColor(primaryColor) {\n return generate(primaryColor)[0];\n}\nfunction withSuffix(name, theme) {\n switch (theme) {\n case 'fill':\n return `${name}-fill`;\n case 'outline':\n return `${name}-o`;\n case 'twotone':\n return `${name}-twotone`;\n case undefined:\n return name;\n default:\n throw new Error(`${ANT_ICON_ANGULAR_CONSOLE_PREFIX}Theme \"${theme}\" is not a recognized theme!`);\n }\n}\nfunction withSuffixAndColor(name, theme, pri, sec) {\n return `${withSuffix(name, theme)}-${pri}-${sec}`;\n}\nfunction mapAbbrToTheme(abbr) {\n return abbr === 'o' ? 'outline' : abbr;\n}\nfunction alreadyHasAThemeSuffix(name) {\n return name.endsWith('-fill') || name.endsWith('-o') || name.endsWith('-twotone');\n}\nfunction isIconDefinition(target) {\n return typeof target === 'object' && typeof target.name === 'string' && (typeof target.theme === 'string' || target.theme === undefined) && typeof target.icon === 'string';\n}\n/**\n * Get an `IconDefinition` object from abbreviation type, like `account-book-fill`.\n * @param str\n */\nfunction getIconDefinitionFromAbbr(str) {\n const arr = str.split('-');\n const theme = mapAbbrToTheme(arr.splice(arr.length - 1, 1)[0]);\n const name = arr.join('-');\n return {\n name,\n theme,\n icon: ''\n };\n}\nfunction cloneSVG(svg) {\n return svg.cloneNode(true);\n}\n/**\n * Parse inline SVG string and replace colors with placeholders. For twotone icons only.\n */\nfunction replaceFillColor(raw) {\n return raw.replace(/['\"]#333['\"]/g, '\"primaryColor\"').replace(/['\"]#E6E6E6['\"]/g, '\"secondaryColor\"').replace(/['\"]#D9D9D9['\"]/g, '\"secondaryColor\"').replace(/['\"]#D8D8D8['\"]/g, '\"secondaryColor\"');\n}\n/**\n * Split a name with namespace in it into a tuple like [ name, namespace ].\n */\nfunction getNameAndNamespace(type) {\n const split = type.split(':');\n switch (split.length) {\n case 1:\n return [type, ''];\n case 2:\n return [split[1], split[0]];\n default:\n throw new Error(`${ANT_ICON_ANGULAR_CONSOLE_PREFIX}The icon type ${type} is not valid!`);\n }\n}\nfunction hasNamespace(type) {\n return getNameAndNamespace(type)[1] !== '';\n}\nfunction NameSpaceIsNotSpecifyError() {\n return new Error(`${ANT_ICON_ANGULAR_CONSOLE_PREFIX}Type should have a namespace. Try \"namespace:${name}\".`);\n}\nfunction IconNotFoundError(icon) {\n return new Error(`${ANT_ICON_ANGULAR_CONSOLE_PREFIX}the icon ${icon} does not exist or is not registered.`);\n}\nfunction HttpModuleNotImport() {\n error(`you need to import \"HttpClientModule\" to use dynamic importing.`);\n return null;\n}\nfunction UrlNotSafeError(url) {\n return new Error(`${ANT_ICON_ANGULAR_CONSOLE_PREFIX}The url \"${url}\" is unsafe.`);\n}\nfunction SVGTagNotFoundError() {\n return new Error(`${ANT_ICON_ANGULAR_CONSOLE_PREFIX} tag not found.`);\n}\nfunction DynamicLoadingTimeoutError() {\n return new Error(`${ANT_ICON_ANGULAR_CONSOLE_PREFIX}Importing timeout error.`);\n}\nconst JSONP_HANDLER_NAME = '__ant_icon_load';\nconst ANT_ICONS = new InjectionToken('ant_icons');\nclass IconService {\n set twoToneColor({\n primaryColor,\n secondaryColor\n }) {\n this._twoToneColorPalette.primaryColor = primaryColor;\n this._twoToneColorPalette.secondaryColor = secondaryColor || getSecondaryColor(primaryColor);\n }\n get twoToneColor() {\n // Make a copy to avoid unexpected changes.\n return {\n ...this._twoToneColorPalette\n };\n }\n /**\n * Disable dynamic loading (support static loading only).\n */\n get _disableDynamicLoading() {\n return false;\n }\n constructor(_rendererFactory, _handler, _document, sanitizer, _antIcons) {\n this._rendererFactory = _rendererFactory;\n this._handler = _handler;\n this._document = _document;\n this.sanitizer = sanitizer;\n this._antIcons = _antIcons;\n this.defaultTheme = 'outline';\n /**\n * All icon definitions would be registered here.\n */\n this._svgDefinitions = new Map();\n /**\n * Cache all rendered icons. Icons are identified by name, theme,\n * and for twotone icons, primary color and secondary color.\n */\n this._svgRenderedDefinitions = new Map();\n this._inProgressFetches = new Map();\n /**\n * Url prefix for fetching inline SVG by dynamic importing.\n */\n this._assetsUrlRoot = '';\n this._twoToneColorPalette = {\n primaryColor: '#333333',\n secondaryColor: '#E6E6E6'\n };\n /** A flag indicates whether jsonp loading is enabled. */\n this._enableJsonpLoading = false;\n this._jsonpIconLoad$ = new Subject();\n this._renderer = this._rendererFactory.createRenderer(null, null);\n if (this._handler) {\n this._http = new HttpClient(this._handler);\n }\n if (this._antIcons) {\n this.addIcon(...this._antIcons);\n }\n }\n /**\n * Call this method to switch to jsonp like loading.\n */\n useJsonpLoading() {\n if (!this._enableJsonpLoading) {\n this._enableJsonpLoading = true;\n window[JSONP_HANDLER_NAME] = icon => {\n this._jsonpIconLoad$.next(icon);\n };\n } else {\n warn('You are already using jsonp loading.');\n }\n }\n /**\n * Change the prefix of the inline svg resources, so they could be deployed elsewhere, like CDN.\n * @param prefix\n */\n changeAssetsSource(prefix) {\n this._assetsUrlRoot = prefix.endsWith('/') ? prefix : prefix + '/';\n }\n /**\n * Add icons provided by ant design.\n * @param icons\n */\n addIcon(...icons) {\n icons.forEach(icon => {\n this._svgDefinitions.set(withSuffix(icon.name, icon.theme), icon);\n });\n }\n /**\n * Register an icon. Namespace is required.\n * @param type\n * @param literal\n */\n addIconLiteral(type, literal) {\n const [_, namespace] = getNameAndNamespace(type);\n if (!namespace) {\n throw NameSpaceIsNotSpecifyError();\n }\n this.addIcon({\n name: type,\n icon: literal\n });\n }\n /**\n * Remove all cache.\n */\n clear() {\n this._svgDefinitions.clear();\n this._svgRenderedDefinitions.clear();\n }\n /**\n * Get a rendered `SVGElement`.\n * @param icon\n * @param twoToneColor\n */\n getRenderedContent(icon, twoToneColor) {\n // If `icon` is a `IconDefinition`, go to the next step. If not, try to fetch it from cache.\n const definition = isIconDefinition(icon) ? icon : this._svgDefinitions.get(icon) || null;\n if (!definition && this._disableDynamicLoading) {\n throw IconNotFoundError(icon);\n }\n // If `icon` is a `IconDefinition` of successfully fetch, wrap it in an `Observable`.\n // Otherwise try to fetch it from remote.\n const $iconDefinition = definition ? of(definition) : this._loadIconDynamically(icon);\n // If finally get an `IconDefinition`, render and return it. Otherwise throw an error.\n return $iconDefinition.pipe(map(i => {\n if (!i) {\n throw IconNotFoundError(icon);\n }\n return this._loadSVGFromCacheOrCreateNew(i, twoToneColor);\n }));\n }\n getCachedIcons() {\n return this._svgDefinitions;\n }\n /**\n * Get raw svg and assemble a `IconDefinition` object.\n * @param type\n */\n _loadIconDynamically(type) {\n // If developer doesn't provide HTTP module nor enable jsonp loading, just throw an error.\n if (!this._http && !this._enableJsonpLoading) {\n return of(HttpModuleNotImport());\n }\n // If multi directive ask for the same icon at the same time,\n // request should only be fired once.\n let inProgress = this._inProgressFetches.get(type);\n if (!inProgress) {\n const [name, namespace] = getNameAndNamespace(type);\n // If the string has a namespace within, create a simple `IconDefinition`.\n const icon = namespace ? {\n name: type,\n icon: ''\n } : getIconDefinitionFromAbbr(name);\n const suffix = this._enableJsonpLoading ? '.js' : '.svg';\n const url = (namespace ? `${this._assetsUrlRoot}assets/${namespace}/${name}` : `${this._assetsUrlRoot}assets/${icon.theme}/${icon.name}`) + suffix;\n const safeUrl = this.sanitizer.sanitize(SecurityContext.URL, url);\n if (!safeUrl) {\n throw UrlNotSafeError(url);\n }\n const source = !this._enableJsonpLoading ? this._http.get(safeUrl, {\n responseType: 'text'\n }).pipe(map(literal => ({\n ...icon,\n icon: literal\n }))) : this._loadIconDynamicallyWithJsonp(icon, safeUrl);\n inProgress = source.pipe(tap(definition => this.addIcon(definition)), finalize(() => this._inProgressFetches.delete(type)), catchError(() => of(null)), share());\n this._inProgressFetches.set(type, inProgress);\n }\n return inProgress;\n }\n _loadIconDynamicallyWithJsonp(icon, url) {\n return new Observable(subscriber => {\n const loader = this._document.createElement('script');\n const timer = setTimeout(() => {\n clean();\n subscriber.error(DynamicLoadingTimeoutError());\n }, 6000);\n loader.src = url;\n function clean() {\n loader.parentNode.removeChild(loader);\n clearTimeout(timer);\n }\n this._document.body.appendChild(loader);\n this._jsonpIconLoad$.pipe(filter(i => i.name === icon.name && i.theme === icon.theme), take(1)).subscribe(i => {\n subscriber.next(i);\n clean();\n });\n });\n }\n /**\n * Render a new `SVGElement` for a given `IconDefinition`, or make a copy from cache.\n * @param icon\n * @param twoToneColor\n */\n _loadSVGFromCacheOrCreateNew(icon, twoToneColor) {\n let svg;\n const pri = twoToneColor || this._twoToneColorPalette.primaryColor;\n const sec = getSecondaryColor(pri) || this._twoToneColorPalette.secondaryColor;\n const key = icon.theme === 'twotone' ? withSuffixAndColor(icon.name, icon.theme, pri, sec) : icon.theme === undefined ? icon.name : withSuffix(icon.name, icon.theme);\n // Try to make a copy from cache.\n const cached = this._svgRenderedDefinitions.get(key);\n if (cached) {\n svg = cached.icon;\n } else {\n svg = this._setSVGAttribute(this._colorizeSVGIcon(\n // Icons provided by ant design should be refined to remove preset colors.\n this._createSVGElementFromString(hasNamespace(icon.name) ? icon.icon : replaceFillColor(icon.icon)), icon.theme === 'twotone', pri, sec));\n // Cache it.\n this._svgRenderedDefinitions.set(key, {\n ...icon,\n icon: svg\n });\n }\n return cloneSVG(svg);\n }\n _createSVGElementFromString(str) {\n const div = this._document.createElement('div');\n div.innerHTML = str;\n const svg = div.querySelector('svg');\n if (!svg) {\n throw SVGTagNotFoundError;\n }\n return svg;\n }\n _setSVGAttribute(svg) {\n this._renderer.setAttribute(svg, 'width', '1em');\n this._renderer.setAttribute(svg, 'height', '1em');\n return svg;\n }\n _colorizeSVGIcon(svg, twotone, pri, sec) {\n if (twotone) {\n const children = svg.childNodes;\n const length = children.length;\n for (let i = 0; i < length; i++) {\n const child = children[i];\n if (child.getAttribute('fill') === 'secondaryColor') {\n this._renderer.setAttribute(child, 'fill', sec);\n } else {\n this._renderer.setAttribute(child, 'fill', pri);\n }\n }\n }\n this._renderer.setAttribute(svg, 'fill', 'currentColor');\n return svg;\n }\n static {\n this.ɵfac = function IconService_Factory(t) {\n return new (t || IconService)(i0.ɵɵinject(i0.RendererFactory2), i0.ɵɵinject(i1.HttpBackend, 8), i0.ɵɵinject(DOCUMENT, 8), i0.ɵɵinject(i2.DomSanitizer), i0.ɵɵinject(ANT_ICONS, 8));\n };\n }\n static {\n this.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: IconService,\n factory: IconService.ɵfac\n });\n }\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(IconService, [{\n type: Injectable\n }], () => [{\n type: i0.RendererFactory2\n }, {\n type: i1.HttpBackend,\n decorators: [{\n type: Optional\n }]\n }, {\n type: undefined,\n decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [DOCUMENT]\n }]\n }, {\n type: i2.DomSanitizer\n }, {\n type: undefined,\n decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [ANT_ICONS]\n }]\n }], null);\n})();\nfunction checkMeta(prev, after) {\n return prev.type === after.type && prev.theme === after.theme && prev.twoToneColor === after.twoToneColor;\n}\nclass IconDirective {\n constructor(_iconService, _elementRef, _renderer) {\n this._iconService = _iconService;\n this._elementRef = _elementRef;\n this._renderer = _renderer;\n }\n ngOnChanges(changes) {\n if (changes.type || changes.theme || changes.twoToneColor) {\n this._changeIcon();\n }\n }\n /**\n * Render a new icon in the current element. Remove the icon when `type` is falsy.\n */\n _changeIcon() {\n return new Promise(resolve => {\n if (!this.type) {\n this._clearSVGElement();\n resolve(null);\n return;\n }\n const beforeMeta = this._getSelfRenderMeta();\n this._iconService.getRenderedContent(this._parseIconType(this.type, this.theme), this.twoToneColor).subscribe(svg => {\n // avoid race condition\n // see https://github.com/ant-design/ant-design-icons/issues/315\n const afterMeta = this._getSelfRenderMeta();\n if (checkMeta(beforeMeta, afterMeta)) {\n this._setSVGElement(svg);\n resolve(svg);\n } else {\n resolve(null);\n }\n });\n });\n }\n _getSelfRenderMeta() {\n return {\n type: this.type,\n theme: this.theme,\n twoToneColor: this.twoToneColor\n };\n }\n /**\n * Parse a icon to the standard form, an `IconDefinition` or a string like 'account-book-fill` (with a theme suffixed).\n * If namespace is specified, ignore theme because it meaningless for users' icons.\n *\n * @param type\n * @param theme\n */\n _parseIconType(type, theme) {\n if (isIconDefinition(type)) {\n return type;\n } else {\n const [name, namespace] = getNameAndNamespace(type);\n if (namespace) {\n return type;\n }\n if (alreadyHasAThemeSuffix(name)) {\n if (!!theme) {\n warn(`'type' ${name} already gets a theme inside so 'theme' ${theme} would be ignored`);\n }\n return name;\n } else {\n return withSuffix(name, theme || this._iconService.defaultTheme);\n }\n }\n }\n _setSVGElement(svg) {\n this._clearSVGElement();\n this._renderer.appendChild(this._elementRef.nativeElement, svg);\n }\n _clearSVGElement() {\n const el = this._elementRef.nativeElement;\n const children = el.childNodes;\n const length = children.length;\n for (let i = length - 1; i >= 0; i--) {\n const child = children[i];\n if (child.tagName?.toLowerCase() === 'svg') {\n this._renderer.removeChild(el, child);\n }\n }\n }\n static {\n this.ɵfac = function IconDirective_Factory(t) {\n return new (t || IconDirective)(i0.ɵɵdirectiveInject(IconService), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.Renderer2));\n };\n }\n static {\n this.ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: IconDirective,\n selectors: [[\"\", \"antIcon\", \"\"]],\n inputs: {\n type: \"type\",\n theme: \"theme\",\n twoToneColor: \"twoToneColor\"\n },\n features: [i0.ɵɵNgOnChangesFeature]\n });\n }\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(IconDirective, [{\n type: Directive,\n args: [{\n selector: '[antIcon]'\n }]\n }], () => [{\n type: IconService\n }, {\n type: i0.ElementRef\n }, {\n type: i0.Renderer2\n }], {\n type: [{\n type: Input\n }],\n theme: [{\n type: Input\n }],\n twoToneColor: [{\n type: Input\n }]\n });\n})();\nclass IconModule {\n static {\n this.ɵfac = function IconModule_Factory(t) {\n return new (t || IconModule)();\n };\n }\n static {\n this.ɵmod = /* @__PURE__ */i0.ɵɵdefineNgModule({\n type: IconModule,\n declarations: [IconDirective],\n exports: [IconDirective]\n });\n }\n static {\n this.ɵinj = /* @__PURE__ */i0.ɵɵdefineInjector({\n providers: [IconService]\n });\n }\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(IconModule, [{\n type: NgModule,\n args: [{\n exports: [IconDirective],\n declarations: [IconDirective],\n providers: [IconService]\n }]\n }], null, null);\n})();\nconst manifest = {\n fill: ['account-book', 'alert', 'alipay-circle', 'alipay-square', 'amazon-square', 'android', 'apple', 'amazon-circle', 'appstore', 'bank', 'backward', 'audio', 'behance-circle', 'behance-square', 'aliwangwang', 'box-plot', 'book', 'build', 'bulb', 'calculator', 'bug', 'calendar', 'caret-down', 'car', 'camera', 'caret-up', 'carry-out', 'caret-left', 'check-circle', 'check-square', 'clock-circle', 'chrome', 'close-circle', 'close-square', 'caret-right', 'cloud', 'code', 'codepen-circle', 'code-sandbox-square', 'codepen-square', 'ci-circle', 'bell', 'contacts', 'container', 'copyright-circle', 'copy', 'control', 'compass', 'credit-card', 'crown', 'database', 'delete', 'dashboard', 'diff', 'dislike', 'dingtalk-circle', 'dingtalk-square', 'dollar-circle', 'down-circle', 'down-square', 'dribbble-square', 'dribbble-circle', 'dropbox-circle', 'edit', 'dropbox-square', 'environment', 'euro-circle', 'code-sandbox-circle', 'eye', 'experiment', 'exclamation-circle', 'facebook', 'fast-backward', 'eye-invisible', 'file-add', 'fast-forward', 'file-excel', 'file-exclamation', 'file', 'file-image', 'api', 'file-pdf', 'file-ppt', 'file-text', 'file-markdown', 'file-unknown', 'file-word', 'file-zip', 'fire', 'filter', 'flag', 'folder-add', 'folder-open', 'forward', 'frown', 'funnel-plot', 'fund', 'format-painter', 'gift', 'customer-service', 'github', 'gitlab', 'golden', 'google-circle', 'gold', 'google-square', 'google-plus-circle', 'highlight', 'heart', 'hourglass', 'home', 'html5', 'folder', 'idcard', 'ie-circle', 'info-circle', 'instagram', 'insurance', 'hdd', 'like', 'layout', 'left-square', 'left-circle', 'linkedin', 'lock', 'mac-command', 'mail', 'medium-circle', 'interaction', 'medium-square', 'meh', 'ie-square', 'message', 'minus-circle', 'minus-square', 'mobile', 'money-collect', 'notification', 'pause-circle', 'pay-circle', 'picture', 'phone', 'pie-chart', 'play-square', 'play-circle', 'plus-circle', 'pound-circle', 'plus-square', 'profile', 'printer', 'project', 'pushpin', 'qq-circle', 'property-safety', 'question-circle', 'qq-square', 'read', 'reconciliation', 'red-envelope', 'reddit-circle', 'google-plus-square', 'reddit-square', 'rest', 'right-circle', 'right-square', 'robot', 'rocket', 'safety-certificate', 'medicine-box', 'schedule', 'save', 'security-scan', 'setting', 'shop', 'shopping', 'signal', 'sketch-circle', 'sketch-square', 'slack-square', 'skype', 'sliders', 'snippets', 'smile', 'sound', 'star', 'step-forward', 'stop', 'switcher', 'tag', 'tablet', 'taobao-circle', 'tags', 'taobao-square', 'thunderbolt', 'tool', 'step-backward', 'trademark-circle', 'trophy', 'twitter-circle', 'unlock', 'slack-circle', 'up-circle', 'twitter-square', 'usb', 'up-square', 'video-camera', 'wallet', 'weibo-circle', 'weibo-square', 'yahoo', 'zhihu-circle', 'warning', 'youtube', 'windows', 'wechat', 'zhihu-square', 'yuque', 'skin'],\n outline: ['account-book', 'alert', 'aim', 'alibaba', 'align-center', 'alipay-circle', 'align-right', 'alipay', 'api', 'aliwangwang', 'amazon', 'ant-cloud', 'appstore', 'appstore-add', 'apple', 'area-chart', 'arrow-right', 'audio-muted', 'arrows-alt', 'backward', 'audit', 'bar-chart', 'audio', 'bank', 'bars', 'arrow-left', 'arrow-up', 'bell', 'bold', 'behance', 'aliyun', 'arrow-down', 'behance-square', 'apartment', 'block', 'border-outer', 'barcode', 'border-horizontal', 'border-verticle', 'borderless-table', 'border', 'border-inner', 'border-top', 'bg-colors', 'border-left', 'branches', 'box-plot', 'bug', 'build', 'bulb', 'calculator', 'border-right', 'car', 'camera', 'calendar', 'caret-left', 'check-circle', 'ant-design', 'check', 'align-left', 'book', 'carry-out', 'caret-down', 'clear', 'chrome', 'close-circle', 'clock-circle', 'ci-circle', 'cloud-download', 'close', 'cloud-server', 'ci', 'cloud-sync', 'cloud', 'code-sandbox', 'check-square', 'cluster', 'cloud-upload', 'close-square', 'column-height', 'codepen', 'coffee', 'codepen-circle', 'code', 'compress', 'contacts', 'caret-up', 'compass', 'comment', 'border-bottom', 'container', 'caret-right', 'copy', 'column-width', 'control', 'database', 'crown', 'delete-column', 'delete', 'dashboard', 'dash', 'deployment-unit', 'desktop', 'diff', 'delivered-procedure', 'dingtalk', 'dingding', 'delete-row', 'credit-card', 'dollar-circle', 'dislike', 'double-left', 'dot-chart', 'dollar', 'copyright', 'double-right', 'down-circle', 'down', 'download', 'down-square', 'drag', 'dropbox', 'dribbble-square', 'edit', 'ellipsis', 'dribbble', 'enter', 'environment', 'euro-circle', 'expand-alt', 'expand', 'customer-service', 'exception', 'exclamation-circle', 'exclamation', 'euro', 'eye-invisible', 'export', 'facebook', 'fast-backward', 'fast-forward', 'field-number', 'field-string', 'field-time', 'file-add', 'fall', 'file-done', 'file-excel', 'file-exclamation', 'field-binary', 'file-gif', 'file-jpg', 'file-markdown', 'file-image', 'file-pdf', 'file-search', 'file-ppt', 'file-protect', 'file-unknown', 'file-text', 'file-sync', 'filter', 'file-word', 'file-zip', 'flag', 'fire', 'folder-add', 'folder', 'font-colors', 'fork', 'folder-view', 'form', 'folder-open', 'font-size', 'forward', 'experiment', 'fullscreen', 'function', 'fullscreen-exit', 'gateway', 'fund-view', 'format-painter', 'gift', 'gif', 'fund-projection-screen', 'funnel-plot', 'fund', 'global', 'frown', 'gold', 'github', 'google', 'google-plus', 'hdd', 'heart', 'android', 'heat-map', 'group', 'holder', 'home', 'highlight', 'html5', 'idcard', 'hourglass', 'copyright-circle', 'info-circle', 'info', 'insert-row-above', 'inbox', 'insert-row-left', 'import', 'instagram', 'key', 'insert-row-below', 'insurance', 'interaction', 'insert-row-right', 'left-circle', 'laptop', 'issues-close', 'italic', 'file', 'layout', 'left', 'left-square', 'line-height', 'like', 'link', 'linkedin', 'line-chart', 'loading-3-quarters', 'line', 'logout', 'lock', 'login', 'mail', 'mac-command', 'loading', 'console-sql', 'man', 'medicine-box', 'eye', 'meh', 'menu-unfold', 'medium', 'message', 'merge-cells', 'menu-fold', 'minus-circle', 'ie', 'disconnect', 'money-collect', 'monitor', 'minus', 'node-collapse', 'menu', 'node-expand', 'notification', 'number', 'gitlab', 'paper-clip', 'pause', 'phone', 'partition', 'one-to-one', 'pause-circle', 'ordered-list', 'pic-center', 'pay-circle', 'percentage', 'picture', 'minus-square', 'pie-chart', 'pic-left', 'pic-right', 'plus-circle', 'plus', 'plus-square', 'pound-circle', 'play-square', 'poweroff', 'pound', 'project', 'printer', 'property-safety', 'mobile', 'qq', 'pushpin', 'pull-request', 'profile', 'radius-bottomleft', 'question-circle', 'qrcode', 'radar-chart', 'reconciliation', 'radius-upright', 'question', 'read', 'red-envelope', 'radius-bottomright', 'radius-setting', 'reddit', 'redo', 'more', 'node-index', 'right-circle', 'right', 'reload', 'right-square', 'rocket', 'rotate-left', 'robot', 'safety', 'save', 'rotate-right', 'rollback', 'scan', 'schedule', 'safety-certificate', 'scissor', 'send', 'shake', 'share-alt', 'search', 'security-scan', 'radius-upleft', 'history', 'rest', 'shopping', 'medium-workmark', 'shrink', 'sketch', 'skype', 'retweet', 'slack', 'slack-square', 'sisternode', 'sliders', 'shop', 'small-dash', 'smile', 'snippets', 'shopping-cart', 'solution', 'sort-ascending', 'split-cells', 'play-circle', 'star', 'step-backward', 'strikethrough', 'step-forward', 'rise', 'stock', 'stop', 'swap-left', 'switcher', 'swap', 'subnode', 'swap-right', 'sync', 'table', 'skin', 'tag', 'taobao', 'tags', 'team', 'thunderbolt', 'taobao-circle', 'tool', 'trademark-circle', 'to-top', 'trademark', 'transaction', 'trophy', 'sound', 'underline', 'twitter', 'unlock', 'undo', 'setting', 'ungroup', 'select', 'up-circle', 'up-square', 'unordered-list', 'upload', 'up', 'tablet', 'user-delete', 'user', 'usergroup-delete', 'user-switch', 'verified', 'vertical-align-middle', 'vertical-align-top', 'video-camera-add', 'vertical-align-bottom', 'vertical-right', 'vertical-left', 'usb', 'wallet', 'video-camera', 'weibo-square', 'weibo', 'wechat', 'weibo-circle', 'usergroup-add', 'whats-app', 'woman', 'translation', 'windows', 'wifi', 'yahoo', 'yuque', 'warning', 'zoom-in', 'sort-descending', 'youtube', 'zoom-out', 'zhihu', 'user-add'],\n twotone: ['alert', 'appstore', 'audio', 'bank', 'account-book', 'book', 'box-plot', 'bug', 'build', 'calculator', 'calendar', 'bulb', 'camera', 'car', 'carry-out', 'check-circle', 'check-square', 'ci', 'clock-circle', 'close-circle', 'ci-circle', 'bell', 'cloud', 'close-square', 'code', 'contacts', 'container', 'copyright-circle', 'control', 'credit-card', 'crown', 'compass', 'copyright', 'customer-service', 'delete', 'dashboard', 'database', 'api', 'copy', 'diff', 'dislike', 'dollar-circle', 'dollar', 'down-square', 'edit', 'environment', 'euro', 'exclamation-circle', 'down-circle', 'eye', 'experiment', 'file-excel', 'file-exclamation', 'file-add', 'file-image', 'file-markdown', 'file-pdf', 'file-ppt', 'file-text', 'file-zip', 'file', 'file-word', 'file-unknown', 'fire', 'filter', 'eye-invisible', 'flag', 'folder-add', 'folder', 'folder-open', 'fund', 'frown', 'funnel-plot', 'gift', 'gold', 'hdd', 'heart', 'euro-circle', 'highlight', 'idcard', 'hourglass', 'html5', 'home', 'info-circle', 'interaction', 'layout', 'left-square', 'left-circle', 'like', 'lock', 'mail', 'medicine-box', 'message', 'meh', 'minus-circle', 'mobile', 'minus-square', 'money-collect', 'pause-circle', 'notification', 'phone', 'pie-chart', 'play-circle', 'plus-circle', 'picture', 'play-square', 'plus-square', 'pound-circle', 'project', 'profile', 'printer', 'pushpin', 'reconciliation', 'property-safety', 'right-circle', 'red-envelope', 'right-square', 'rocket', 'insurance', 'question-circle', 'save', 'schedule', 'safety-certificate', 'security-scan', 'setting', 'shop', 'rest', 'skin', 'sliders', 'sound', 'smile', 'shopping', 'star', 'stop', 'switcher', 'tag', 'tags', 'tablet', 'thunderbolt', 'tool', 'trademark-circle', 'trophy', 'unlock', 'up-circle', 'usb', 'video-camera', 'warning', 'wallet', 'up-square', 'snippets']\n};\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { ANT_ICONS, ANT_ICON_ANGULAR_CONSOLE_PREFIX, DynamicLoadingTimeoutError, HttpModuleNotImport, IconDirective, IconModule, IconNotFoundError, IconService, NameSpaceIsNotSpecifyError, SVGTagNotFoundError, UrlNotSafeError, alreadyHasAThemeSuffix, cloneSVG, error, getIconDefinitionFromAbbr, getNameAndNamespace, getSecondaryColor, hasNamespace, isIconDefinition, manifest, mapAbbrToTheme, replaceFillColor, warn, withSuffix, withSuffixAndColor };\n", "const AccountBookOutline = {\n name: 'account-book',\n theme: 'outline',\n icon: ''\n};\n\nconst AccountBookFill = {\n name: 'account-book',\n theme: 'fill',\n icon: ''\n};\n\nconst AlertOutline = {\n name: 'alert',\n theme: 'outline',\n icon: ''\n};\n\nconst AimOutline = {\n name: 'aim',\n theme: 'outline',\n icon: ''\n};\n\nconst AlibabaOutline = {\n name: 'alibaba',\n theme: 'outline',\n icon: ''\n};\n\nconst AlertFill = {\n name: 'alert',\n theme: 'fill',\n icon: ''\n};\n\nconst AlignCenterOutline = {\n name: 'align-center',\n theme: 'outline',\n icon: ''\n};\n\nconst AlertTwoTone = {\n name: 'alert',\n theme: 'twotone',\n icon: ''\n};\n\nconst AlipayCircleFill = {\n name: 'alipay-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst AlipaySquareFill = {\n name: 'alipay-square',\n theme: 'fill',\n icon: ''\n};\n\nconst AlipayCircleOutline = {\n name: 'alipay-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst AlignRightOutline = {\n name: 'align-right',\n theme: 'outline',\n icon: ''\n};\n\nconst AmazonSquareFill = {\n name: 'amazon-square',\n theme: 'fill',\n icon: ''\n};\n\nconst AlipayOutline = {\n name: 'alipay',\n theme: 'outline',\n icon: ''\n};\n\nconst ApiOutline = {\n name: 'api',\n theme: 'outline',\n icon: ''\n};\n\nconst AliwangwangOutline = {\n name: 'aliwangwang',\n theme: 'outline',\n icon: ''\n};\n\nconst AmazonOutline = {\n name: 'amazon',\n theme: 'outline',\n icon: ''\n};\n\nconst AndroidFill = {\n name: 'android',\n theme: 'fill',\n icon: ''\n};\n\nconst AntCloudOutline = {\n name: 'ant-cloud',\n theme: 'outline',\n icon: ''\n};\n\nconst AppleFill = {\n name: 'apple',\n theme: 'fill',\n icon: ''\n};\n\nconst AmazonCircleFill = {\n name: 'amazon-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst AppstoreOutline = {\n name: 'appstore',\n theme: 'outline',\n icon: ''\n};\n\nconst AppstoreAddOutline = {\n name: 'appstore-add',\n theme: 'outline',\n icon: ''\n};\n\nconst AppleOutline = {\n name: 'apple',\n theme: 'outline',\n icon: ''\n};\n\nconst AreaChartOutline = {\n name: 'area-chart',\n theme: 'outline',\n icon: ''\n};\n\nconst AppstoreTwoTone = {\n name: 'appstore',\n theme: 'twotone',\n icon: ''\n};\n\nconst AppstoreFill = {\n name: 'appstore',\n theme: 'fill',\n icon: ''\n};\n\nconst ArrowRightOutline = {\n name: 'arrow-right',\n theme: 'outline',\n icon: ''\n};\n\nconst AudioMutedOutline = {\n name: 'audio-muted',\n theme: 'outline',\n icon: ''\n};\n\nconst ArrowsAltOutline = {\n name: 'arrows-alt',\n theme: 'outline',\n icon: ''\n};\n\nconst BackwardOutline = {\n name: 'backward',\n theme: 'outline',\n icon: ''\n};\n\nconst AuditOutline = {\n name: 'audit',\n theme: 'outline',\n icon: ''\n};\n\nconst BarChartOutline = {\n name: 'bar-chart',\n theme: 'outline',\n icon: ''\n};\n\nconst BankFill = {\n name: 'bank',\n theme: 'fill',\n icon: ''\n};\n\nconst AudioOutline = {\n name: 'audio',\n theme: 'outline',\n icon: ''\n};\n\nconst AudioTwoTone = {\n name: 'audio',\n theme: 'twotone',\n icon: ''\n};\n\nconst BankOutline = {\n name: 'bank',\n theme: 'outline',\n icon: ''\n};\n\nconst BackwardFill = {\n name: 'backward',\n theme: 'fill',\n icon: ''\n};\n\nconst BarsOutline = {\n name: 'bars',\n theme: 'outline',\n icon: ''\n};\n\nconst ArrowLeftOutline = {\n name: 'arrow-left',\n theme: 'outline',\n icon: ''\n};\n\nconst ArrowUpOutline = {\n name: 'arrow-up',\n theme: 'outline',\n icon: ''\n};\n\nconst BankTwoTone = {\n name: 'bank',\n theme: 'twotone',\n icon: ''\n};\n\nconst BellOutline = {\n name: 'bell',\n theme: 'outline',\n icon: ''\n};\n\nconst AudioFill = {\n name: 'audio',\n theme: 'fill',\n icon: ''\n};\n\nconst BoldOutline = {\n name: 'bold',\n theme: 'outline',\n icon: ''\n};\n\nconst BehanceOutline = {\n name: 'behance',\n theme: 'outline',\n icon: ''\n};\n\nconst BehanceCircleFill = {\n name: 'behance-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst AliyunOutline = {\n name: 'aliyun',\n theme: 'outline',\n icon: ''\n};\n\nconst BehanceSquareFill = {\n name: 'behance-square',\n theme: 'fill',\n icon: ''\n};\n\nconst AccountBookTwoTone = {\n name: 'account-book',\n theme: 'twotone',\n icon: ''\n};\n\nconst AliwangwangFill = {\n name: 'aliwangwang',\n theme: 'fill',\n icon: ''\n};\n\nconst ArrowDownOutline = {\n name: 'arrow-down',\n theme: 'outline',\n icon: ''\n};\n\nconst BehanceSquareOutline = {\n name: 'behance-square',\n theme: 'outline',\n icon: ''\n};\n\nconst ApartmentOutline = {\n name: 'apartment',\n theme: 'outline',\n icon: ''\n};\n\nconst BlockOutline = {\n name: 'block',\n theme: 'outline',\n icon: ''\n};\n\nconst BorderOuterOutline = {\n name: 'border-outer',\n theme: 'outline',\n icon: ''\n};\n\nconst BarcodeOutline = {\n name: 'barcode',\n theme: 'outline',\n icon: ''\n};\n\nconst BookTwoTone = {\n name: 'book',\n theme: 'twotone',\n icon: ''\n};\n\nconst BorderHorizontalOutline = {\n name: 'border-horizontal',\n theme: 'outline',\n icon: ''\n};\n\nconst BorderVerticleOutline = {\n name: 'border-verticle',\n theme: 'outline',\n icon: ''\n};\n\nconst BorderlessTableOutline = {\n name: 'borderless-table',\n theme: 'outline',\n icon: ''\n};\n\nconst BorderOutline = {\n name: 'border',\n theme: 'outline',\n icon: ''\n};\n\nconst BorderInnerOutline = {\n name: 'border-inner',\n theme: 'outline',\n icon: ''\n};\n\nconst BorderTopOutline = {\n name: 'border-top',\n theme: 'outline',\n icon: ''\n};\n\nconst BgColorsOutline = {\n name: 'bg-colors',\n theme: 'outline',\n icon: ''\n};\n\nconst BoxPlotFill = {\n name: 'box-plot',\n theme: 'fill',\n icon: ''\n};\n\nconst BorderLeftOutline = {\n name: 'border-left',\n theme: 'outline',\n icon: ''\n};\n\nconst BranchesOutline = {\n name: 'branches',\n theme: 'outline',\n icon: ''\n};\n\nconst BoxPlotTwoTone = {\n name: 'box-plot',\n theme: 'twotone',\n icon: ''\n};\n\nconst BoxPlotOutline = {\n name: 'box-plot',\n theme: 'outline',\n icon: ''\n};\n\nconst BookFill = {\n name: 'book',\n theme: 'fill',\n icon: ''\n};\n\nconst BuildFill = {\n name: 'build',\n theme: 'fill',\n icon: ''\n};\n\nconst BulbFill = {\n name: 'bulb',\n theme: 'fill',\n icon: ''\n};\n\nconst BugOutline = {\n name: 'bug',\n theme: 'outline',\n icon: ''\n};\n\nconst BuildOutline = {\n name: 'build',\n theme: 'outline',\n icon: ''\n};\n\nconst BugTwoTone = {\n name: 'bug',\n theme: 'twotone',\n icon: ''\n};\n\nconst BulbOutline = {\n name: 'bulb',\n theme: 'outline',\n icon: ''\n};\n\nconst CalculatorFill = {\n name: 'calculator',\n theme: 'fill',\n icon: ''\n};\n\nconst BuildTwoTone = {\n name: 'build',\n theme: 'twotone',\n icon: ''\n};\n\nconst CalculatorTwoTone = {\n name: 'calculator',\n theme: 'twotone',\n icon: ''\n};\n\nconst CalendarTwoTone = {\n name: 'calendar',\n theme: 'twotone',\n icon: ''\n};\n\nconst CalculatorOutline = {\n name: 'calculator',\n theme: 'outline',\n icon: ''\n};\n\nconst BulbTwoTone = {\n name: 'bulb',\n theme: 'twotone',\n icon: ''\n};\n\nconst BugFill = {\n name: 'bug',\n theme: 'fill',\n icon: ''\n};\n\nconst BorderRightOutline = {\n name: 'border-right',\n theme: 'outline',\n icon: ''\n};\n\nconst CarOutline = {\n name: 'car',\n theme: 'outline',\n icon: ''\n};\n\nconst CalendarFill = {\n name: 'calendar',\n theme: 'fill',\n icon: ''\n};\n\nconst CameraOutline = {\n name: 'camera',\n theme: 'outline',\n icon: ''\n};\n\nconst CalendarOutline = {\n name: 'calendar',\n theme: 'outline',\n icon: ''\n};\n\nconst CaretDownFill = {\n name: 'caret-down',\n theme: 'fill',\n icon: ''\n};\n\nconst CarFill = {\n name: 'car',\n theme: 'fill',\n icon: ''\n};\n\nconst CameraTwoTone = {\n name: 'camera',\n theme: 'twotone',\n icon: ''\n};\n\nconst CameraFill = {\n name: 'camera',\n theme: 'fill',\n icon: ''\n};\n\nconst CarTwoTone = {\n name: 'car',\n theme: 'twotone',\n icon: ''\n};\n\nconst CaretUpFill = {\n name: 'caret-up',\n theme: 'fill',\n icon: ''\n};\n\nconst CarryOutFill = {\n name: 'carry-out',\n theme: 'fill',\n icon: ''\n};\n\nconst CaretLeftFill = {\n name: 'caret-left',\n theme: 'fill',\n icon: ''\n};\n\nconst CaretLeftOutline = {\n name: 'caret-left',\n theme: 'outline',\n icon: ''\n};\n\nconst CarryOutTwoTone = {\n name: 'carry-out',\n theme: 'twotone',\n icon: ''\n};\n\nconst CheckCircleFill = {\n name: 'check-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst CheckCircleOutline = {\n name: 'check-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst CheckCircleTwoTone = {\n name: 'check-circle',\n theme: 'twotone',\n icon: ''\n};\n\nconst AntDesignOutline = {\n name: 'ant-design',\n theme: 'outline',\n icon: ''\n};\n\nconst CheckOutline = {\n name: 'check',\n theme: 'outline',\n icon: ''\n};\n\nconst AlignLeftOutline = {\n name: 'align-left',\n theme: 'outline',\n icon: ''\n};\n\nconst CheckSquareTwoTone = {\n name: 'check-square',\n theme: 'twotone',\n icon: ''\n};\n\nconst BookOutline = {\n name: 'book',\n theme: 'outline',\n icon: ''\n};\n\nconst CheckSquareFill = {\n name: 'check-square',\n theme: 'fill',\n icon: ''\n};\n\nconst CarryOutOutline = {\n name: 'carry-out',\n theme: 'outline',\n icon: ''\n};\n\nconst CaretDownOutline = {\n name: 'caret-down',\n theme: 'outline',\n icon: ''\n};\n\nconst CiTwoTone = {\n name: 'ci',\n theme: 'twotone',\n icon: ''\n};\n\nconst ClockCircleFill = {\n name: 'clock-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst ChromeFill = {\n name: 'chrome',\n theme: 'fill',\n icon: ''\n};\n\nconst ClockCircleTwoTone = {\n name: 'clock-circle',\n theme: 'twotone',\n icon: ''\n};\n\nconst ClearOutline = {\n name: 'clear',\n theme: 'outline',\n icon: ''\n};\n\nconst CloseCircleFill = {\n name: 'close-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst ChromeOutline = {\n name: 'chrome',\n theme: 'outline',\n icon: ''\n};\n\nconst CloseCircleOutline = {\n name: 'close-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst ClockCircleOutline = {\n name: 'clock-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst CloseSquareFill = {\n name: 'close-square',\n theme: 'fill',\n icon: ''\n};\n\nconst CiCircleOutline = {\n name: 'ci-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst CloseCircleTwoTone = {\n name: 'close-circle',\n theme: 'twotone',\n icon: ''\n};\n\nconst CiCircleTwoTone = {\n name: 'ci-circle',\n theme: 'twotone',\n icon: ''\n};\n\nconst BellTwoTone = {\n name: 'bell',\n theme: 'twotone',\n icon: ''\n};\n\nconst CaretRightFill = {\n name: 'caret-right',\n theme: 'fill',\n icon: ''\n};\n\nconst CloudDownloadOutline = {\n name: 'cloud-download',\n theme: 'outline',\n icon: ''\n};\n\nconst CloseOutline = {\n name: 'close',\n theme: 'outline',\n icon: ''\n};\n\nconst CloudTwoTone = {\n name: 'cloud',\n theme: 'twotone',\n icon: ''\n};\n\nconst CloudServerOutline = {\n name: 'cloud-server',\n theme: 'outline',\n icon: ''\n};\n\nconst CiOutline = {\n name: 'ci',\n theme: 'outline',\n icon: ''\n};\n\nconst CloudFill = {\n name: 'cloud',\n theme: 'fill',\n icon: ''\n};\n\nconst CloseSquareTwoTone = {\n name: 'close-square',\n theme: 'twotone',\n icon: ''\n};\n\nconst CloudSyncOutline = {\n name: 'cloud-sync',\n theme: 'outline',\n icon: ''\n};\n\nconst CloudOutline = {\n name: 'cloud',\n theme: 'outline',\n icon: ''\n};\n\nconst CodeFill = {\n name: 'code',\n theme: 'fill',\n icon: ''\n};\n\nconst CodepenCircleFill = {\n name: 'codepen-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst CodeSandboxOutline = {\n name: 'code-sandbox',\n theme: 'outline',\n icon: ''\n};\n\nconst CheckSquareOutline = {\n name: 'check-square',\n theme: 'outline',\n icon: ''\n};\n\nconst ClusterOutline = {\n name: 'cluster',\n theme: 'outline',\n icon: ''\n};\n\nconst CodeSandboxSquareFill = {\n name: 'code-sandbox-square',\n theme: 'fill',\n icon: ''\n};\n\nconst CloudUploadOutline = {\n name: 'cloud-upload',\n theme: 'outline',\n icon: ''\n};\n\nconst CloseSquareOutline = {\n name: 'close-square',\n theme: 'outline',\n icon: ''\n};\n\nconst CodepenSquareFill = {\n name: 'codepen-square',\n theme: 'fill',\n icon: ''\n};\n\nconst ColumnHeightOutline = {\n name: 'column-height',\n theme: 'outline',\n icon: ''\n};\n\nconst CodepenOutline = {\n name: 'codepen',\n theme: 'outline',\n icon: ''\n};\n\nconst CoffeeOutline = {\n name: 'coffee',\n theme: 'outline',\n icon: ''\n};\n\nconst CodepenCircleOutline = {\n name: 'codepen-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst CodeTwoTone = {\n name: 'code',\n theme: 'twotone',\n icon: ''\n};\n\nconst CiCircleFill = {\n name: 'ci-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst CodeOutline = {\n name: 'code',\n theme: 'outline',\n icon: ''\n};\n\nconst CompressOutline = {\n name: 'compress',\n theme: 'outline',\n icon: ''\n};\n\nconst ContactsTwoTone = {\n name: 'contacts',\n theme: 'twotone',\n icon: ''\n};\n\nconst BellFill = {\n name: 'bell',\n theme: 'fill',\n icon: ''\n};\n\nconst ContactsOutline = {\n name: 'contacts',\n theme: 'outline',\n icon: ''\n};\n\nconst ContactsFill = {\n name: 'contacts',\n theme: 'fill',\n icon: ''\n};\n\nconst CaretUpOutline = {\n name: 'caret-up',\n theme: 'outline',\n icon: ''\n};\n\nconst CompassOutline = {\n name: 'compass',\n theme: 'outline',\n icon: ''\n};\n\nconst ContainerFill = {\n name: 'container',\n theme: 'fill',\n icon: ''\n};\n\nconst CommentOutline = {\n name: 'comment',\n theme: 'outline',\n icon: ''\n};\n\nconst BorderBottomOutline = {\n name: 'border-bottom',\n theme: 'outline',\n icon: ''\n};\n\nconst ContainerTwoTone = {\n name: 'container',\n theme: 'twotone',\n icon: ''\n};\n\nconst ContainerOutline = {\n name: 'container',\n theme: 'outline',\n icon: ''\n};\n\nconst CaretRightOutline = {\n name: 'caret-right',\n theme: 'outline',\n icon: ''\n};\n\nconst CopyrightCircleFill = {\n name: 'copyright-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst CopyFill = {\n name: 'copy',\n theme: 'fill',\n icon: ''\n};\n\nconst ControlFill = {\n name: 'control',\n theme: 'fill',\n icon: ''\n};\n\nconst CompassFill = {\n name: 'compass',\n theme: 'fill',\n icon: ''\n};\n\nconst CopyrightCircleTwoTone = {\n name: 'copyright-circle',\n theme: 'twotone',\n icon: ''\n};\n\nconst ControlTwoTone = {\n name: 'control',\n theme: 'twotone',\n icon: ''\n};\n\nconst CreditCardTwoTone = {\n name: 'credit-card',\n theme: 'twotone',\n icon: ''\n};\n\nconst CopyOutline = {\n name: 'copy',\n theme: 'outline',\n icon: ''\n};\n\nconst ColumnWidthOutline = {\n name: 'column-width',\n theme: 'outline',\n icon: ''\n};\n\nconst CrownTwoTone = {\n name: 'crown',\n theme: 'twotone',\n icon: ''\n};\n\nconst CreditCardFill = {\n name: 'credit-card',\n theme: 'fill',\n icon: ''\n};\n\nconst ControlOutline = {\n name: 'control',\n theme: 'outline',\n icon: ''\n};\n\nconst CrownFill = {\n name: 'crown',\n theme: 'fill',\n icon: ''\n};\n\nconst DatabaseFill = {\n name: 'database',\n theme: 'fill',\n icon: ''\n};\n\nconst DatabaseOutline = {\n name: 'database',\n theme: 'outline',\n icon: ''\n};\n\nconst CrownOutline = {\n name: 'crown',\n theme: 'outline',\n icon: ''\n};\n\nconst DeleteColumnOutline = {\n name: 'delete-column',\n theme: 'outline',\n icon: ''\n};\n\nconst CompassTwoTone = {\n name: 'compass',\n theme: 'twotone',\n icon: ''\n};\n\nconst CopyrightTwoTone = {\n name: 'copyright',\n theme: 'twotone',\n icon: ''\n};\n\nconst DeleteOutline = {\n name: 'delete',\n theme: 'outline',\n icon: ''\n};\n\nconst DeleteFill = {\n name: 'delete',\n theme: 'fill',\n icon: ''\n};\n\nconst DashboardOutline = {\n name: 'dashboard',\n theme: 'outline',\n icon: ''\n};\n\nconst DashboardFill = {\n name: 'dashboard',\n theme: 'fill',\n icon: ''\n};\n\nconst CustomerServiceTwoTone = {\n name: 'customer-service',\n theme: 'twotone',\n icon: ''\n};\n\nconst DeleteTwoTone = {\n name: 'delete',\n theme: 'twotone',\n icon: ''\n};\n\nconst DashboardTwoTone = {\n name: 'dashboard',\n theme: 'twotone',\n icon: ''\n};\n\nconst DashOutline = {\n name: 'dash',\n theme: 'outline',\n icon: ''\n};\n\nconst DiffFill = {\n name: 'diff',\n theme: 'fill',\n icon: ''\n};\n\nconst DatabaseTwoTone = {\n name: 'database',\n theme: 'twotone',\n icon: ''\n};\n\nconst ApiTwoTone = {\n name: 'api',\n theme: 'twotone',\n icon: ''\n};\n\nconst DeploymentUnitOutline = {\n name: 'deployment-unit',\n theme: 'outline',\n icon: ''\n};\n\nconst DesktopOutline = {\n name: 'desktop',\n theme: 'outline',\n icon: ''\n};\n\nconst DiffOutline = {\n name: 'diff',\n theme: 'outline',\n icon: ''\n};\n\nconst CopyTwoTone = {\n name: 'copy',\n theme: 'twotone',\n icon: ''\n};\n\nconst DiffTwoTone = {\n name: 'diff',\n theme: 'twotone',\n icon: ''\n};\n\nconst DeliveredProcedureOutline = {\n name: 'delivered-procedure',\n theme: 'outline',\n icon: ''\n};\n\nconst DislikeFill = {\n name: 'dislike',\n theme: 'fill',\n icon: ''\n};\n\nconst DingtalkOutline = {\n name: 'dingtalk',\n theme: 'outline',\n icon: ''\n};\n\nconst DingdingOutline = {\n name: 'dingding',\n theme: 'outline',\n icon: ''\n};\n\nconst DeleteRowOutline = {\n name: 'delete-row',\n theme: 'outline',\n icon: ''\n};\n\nconst DingtalkCircleFill = {\n name: 'dingtalk-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst CreditCardOutline = {\n name: 'credit-card',\n theme: 'outline',\n icon: ''\n};\n\nconst DingtalkSquareFill = {\n name: 'dingtalk-square',\n theme: 'fill',\n icon: ''\n};\n\nconst DislikeTwoTone = {\n name: 'dislike',\n theme: 'twotone',\n icon: ''\n};\n\nconst DollarCircleOutline = {\n name: 'dollar-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst DollarCircleFill = {\n name: 'dollar-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst DislikeOutline = {\n name: 'dislike',\n theme: 'outline',\n icon: ''\n};\n\nconst DoubleLeftOutline = {\n name: 'double-left',\n theme: 'outline',\n icon: ''\n};\n\nconst DotChartOutline = {\n name: 'dot-chart',\n theme: 'outline',\n icon: ''\n};\n\nconst DollarCircleTwoTone = {\n name: 'dollar-circle',\n theme: 'twotone',\n icon: ''\n};\n\nconst DollarOutline = {\n name: 'dollar',\n theme: 'outline',\n icon: ''\n};\n\nconst DollarTwoTone = {\n name: 'dollar',\n theme: 'twotone',\n icon: ''\n};\n\nconst DownCircleFill = {\n name: 'down-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst DownSquareFill = {\n name: 'down-square',\n theme: 'fill',\n icon: ''\n};\n\nconst CopyrightOutline = {\n name: 'copyright',\n theme: 'outline',\n icon: ''\n};\n\nconst DoubleRightOutline = {\n name: 'double-right',\n theme: 'outline',\n icon: ''\n};\n\nconst DownCircleOutline = {\n name: 'down-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst DownOutline = {\n name: 'down',\n theme: 'outline',\n icon: ''\n};\n\nconst DownloadOutline = {\n name: 'download',\n theme: 'outline',\n icon: ''\n};\n\nconst DownSquareOutline = {\n name: 'down-square',\n theme: 'outline',\n icon: ''\n};\n\nconst DragOutline = {\n name: 'drag',\n theme: 'outline',\n icon: ''\n};\n\nconst DribbbleSquareFill = {\n name: 'dribbble-square',\n theme: 'fill',\n icon: ''\n};\n\nconst DownSquareTwoTone = {\n name: 'down-square',\n theme: 'twotone',\n icon: ''\n};\n\nconst DribbbleCircleFill = {\n name: 'dribbble-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst DropboxCircleFill = {\n name: 'dropbox-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst DropboxOutline = {\n name: 'dropbox',\n theme: 'outline',\n icon: ''\n};\n\nconst EditFill = {\n name: 'edit',\n theme: 'fill',\n icon: ''\n};\n\nconst DropboxSquareFill = {\n name: 'dropbox-square',\n theme: 'fill',\n icon: ''\n};\n\nconst DribbbleSquareOutline = {\n name: 'dribbble-square',\n theme: 'outline',\n icon: ''\n};\n\nconst EditOutline = {\n name: 'edit',\n theme: 'outline',\n icon: ''\n};\n\nconst EllipsisOutline = {\n name: 'ellipsis',\n theme: 'outline',\n icon: ''\n};\n\nconst EditTwoTone = {\n name: 'edit',\n theme: 'twotone',\n icon: ''\n};\n\nconst EnvironmentFill = {\n name: 'environment',\n theme: 'fill',\n icon: ''\n};\n\nconst DribbbleOutline = {\n name: 'dribbble',\n theme: 'outline',\n icon: ''\n};\n\nconst EnterOutline = {\n name: 'enter',\n theme: 'outline',\n icon: ''\n};\n\nconst EnvironmentOutline = {\n name: 'environment',\n theme: 'outline',\n icon: ''\n};\n\nconst EuroCircleFill = {\n name: 'euro-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst EnvironmentTwoTone = {\n name: 'environment',\n theme: 'twotone',\n icon: ''\n};\n\nconst EuroTwoTone = {\n name: 'euro',\n theme: 'twotone',\n icon: ''\n};\n\nconst EuroCircleOutline = {\n name: 'euro-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst ExpandAltOutline = {\n name: 'expand-alt',\n theme: 'outline',\n icon: ''\n};\n\nconst ExpandOutline = {\n name: 'expand',\n theme: 'outline',\n icon: ''\n};\n\nconst CodeSandboxCircleFill = {\n name: 'code-sandbox-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst CustomerServiceOutline = {\n name: 'customer-service',\n theme: 'outline',\n icon: ''\n};\n\nconst ExceptionOutline = {\n name: 'exception',\n theme: 'outline',\n icon: ''\n};\n\nconst ExclamationCircleTwoTone = {\n name: 'exclamation-circle',\n theme: 'twotone',\n icon: ''\n};\n\nconst ExclamationCircleOutline = {\n name: 'exclamation-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst ExclamationOutline = {\n name: 'exclamation',\n theme: 'outline',\n icon: ''\n};\n\nconst EyeFill = {\n name: 'eye',\n theme: 'fill',\n icon: ''\n};\n\nconst ExperimentFill = {\n name: 'experiment',\n theme: 'fill',\n icon: ''\n};\n\nconst EuroOutline = {\n name: 'euro',\n theme: 'outline',\n icon: ''\n};\n\nconst ExclamationCircleFill = {\n name: 'exclamation-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst DownCircleTwoTone = {\n name: 'down-circle',\n theme: 'twotone',\n icon: ''\n};\n\nconst EyeInvisibleOutline = {\n name: 'eye-invisible',\n theme: 'outline',\n icon: ''\n};\n\nconst ExportOutline = {\n name: 'export',\n theme: 'outline',\n icon: ''\n};\n\nconst EyeTwoTone = {\n name: 'eye',\n theme: 'twotone',\n icon: ''\n};\n\nconst FacebookOutline = {\n name: 'facebook',\n theme: 'outline',\n icon: ''\n};\n\nconst FacebookFill = {\n name: 'facebook',\n theme: 'fill',\n icon: ''\n};\n\nconst ExperimentTwoTone = {\n name: 'experiment',\n theme: 'twotone',\n icon: ''\n};\n\nconst FastBackwardOutline = {\n name: 'fast-backward',\n theme: 'outline',\n icon: ''\n};\n\nconst FastForwardOutline = {\n name: 'fast-forward',\n theme: 'outline',\n icon: ''\n};\n\nconst FastBackwardFill = {\n name: 'fast-backward',\n theme: 'fill',\n icon: ''\n};\n\nconst EyeInvisibleFill = {\n name: 'eye-invisible',\n theme: 'fill',\n icon: ''\n};\n\nconst FileAddFill = {\n name: 'file-add',\n theme: 'fill',\n icon: ''\n};\n\nconst FieldNumberOutline = {\n name: 'field-number',\n theme: 'outline',\n icon: ''\n};\n\nconst FieldStringOutline = {\n name: 'field-string',\n theme: 'outline',\n icon: ''\n};\n\nconst FastForwardFill = {\n name: 'fast-forward',\n theme: 'fill',\n icon: ''\n};\n\nconst FieldTimeOutline = {\n name: 'field-time',\n theme: 'outline',\n icon: ''\n};\n\nconst FileAddOutline = {\n name: 'file-add',\n theme: 'outline',\n icon: ''\n};\n\nconst FallOutline = {\n name: 'fall',\n theme: 'outline',\n icon: ''\n};\n\nconst FileExcelFill = {\n name: 'file-excel',\n theme: 'fill',\n icon: ''\n};\n\nconst FileExcelTwoTone = {\n name: 'file-excel',\n theme: 'twotone',\n icon: ''\n};\n\nconst FileDoneOutline = {\n name: 'file-done',\n theme: 'outline',\n icon: ''\n};\n\nconst FileExclamationTwoTone = {\n name: 'file-exclamation',\n theme: 'twotone',\n icon: ''\n};\n\nconst FileExclamationFill = {\n name: 'file-exclamation',\n theme: 'fill',\n icon: ''\n};\n\nconst FileExcelOutline = {\n name: 'file-excel',\n theme: 'outline',\n icon: ''\n};\n\nconst FileFill = {\n name: 'file',\n theme: 'fill',\n icon: ''\n};\n\nconst FileExclamationOutline = {\n name: 'file-exclamation',\n theme: 'outline',\n icon: ''\n};\n\nconst FieldBinaryOutline = {\n name: 'field-binary',\n theme: 'outline',\n icon: ''\n};\n\nconst FileAddTwoTone = {\n name: 'file-add',\n theme: 'twotone',\n icon: ''\n};\n\nconst FileImageTwoTone = {\n name: 'file-image',\n theme: 'twotone',\n icon: ''\n};\n\nconst FileGifOutline = {\n name: 'file-gif',\n theme: 'outline',\n icon: ''\n};\n\nconst FileJpgOutline = {\n name: 'file-jpg',\n theme: 'outline',\n icon: ''\n};\n\nconst FileMarkdownOutline = {\n name: 'file-markdown',\n theme: 'outline',\n icon: ''\n};\n\nconst FileImageFill = {\n name: 'file-image',\n theme: 'fill',\n icon: ''\n};\n\nconst FileMarkdownTwoTone = {\n name: 'file-markdown',\n theme: 'twotone',\n icon: ''\n};\n\nconst FileImageOutline = {\n name: 'file-image',\n theme: 'outline',\n icon: ''\n};\n\nconst FilePdfOutline = {\n name: 'file-pdf',\n theme: 'outline',\n icon: ''\n};\n\nconst ApiFill = {\n name: 'api',\n theme: 'fill',\n icon: ''\n};\n\nconst FilePdfTwoTone = {\n name: 'file-pdf',\n theme: 'twotone',\n icon: ''\n};\n\nconst FilePdfFill = {\n name: 'file-pdf',\n theme: 'fill',\n icon: ''\n};\n\nconst FileSearchOutline = {\n name: 'file-search',\n theme: 'outline',\n icon: ''\n};\n\nconst FilePptFill = {\n name: 'file-ppt',\n theme: 'fill',\n icon: ''\n};\n\nconst FileTextFill = {\n name: 'file-text',\n theme: 'fill',\n icon: ''\n};\n\nconst FilePptOutline = {\n name: 'file-ppt',\n theme: 'outline',\n icon: ''\n};\n\nconst FileMarkdownFill = {\n name: 'file-markdown',\n theme: 'fill',\n icon: ''\n};\n\nconst FilePptTwoTone = {\n name: 'file-ppt',\n theme: 'twotone',\n icon: ''\n};\n\nconst FileProtectOutline = {\n name: 'file-protect',\n theme: 'outline',\n icon: ''\n};\n\nconst FileTextTwoTone = {\n name: 'file-text',\n theme: 'twotone',\n icon: ''\n};\n\nconst FileUnknownOutline = {\n name: 'file-unknown',\n theme: 'outline',\n icon: ''\n};\n\nconst FileUnknownFill = {\n name: 'file-unknown',\n theme: 'fill',\n icon: ''\n};\n\nconst FileTextOutline = {\n name: 'file-text',\n theme: 'outline',\n icon: ''\n};\n\nconst FileWordFill = {\n name: 'file-word',\n theme: 'fill',\n icon: ''\n};\n\nconst FileZipTwoTone = {\n name: 'file-zip',\n theme: 'twotone',\n icon: ''\n};\n\nconst FileTwoTone = {\n name: 'file',\n theme: 'twotone',\n icon: ''\n};\n\nconst FileZipFill = {\n name: 'file-zip',\n theme: 'fill',\n icon: ''\n};\n\nconst FileWordTwoTone = {\n name: 'file-word',\n theme: 'twotone',\n icon: ''\n};\n\nconst FileUnknownTwoTone = {\n name: 'file-unknown',\n theme: 'twotone',\n icon: ''\n};\n\nconst FireFill = {\n name: 'fire',\n theme: 'fill',\n icon: ''\n};\n\nconst FilterFill = {\n name: 'filter',\n theme: 'fill',\n icon: ''\n};\n\nconst FileSyncOutline = {\n name: 'file-sync',\n theme: 'outline',\n icon: ''\n};\n\nconst FilterOutline = {\n name: 'filter',\n theme: 'outline',\n icon: ''\n};\n\nconst FileWordOutline = {\n name: 'file-word',\n theme: 'outline',\n icon: ''\n};\n\nconst FileZipOutline = {\n name: 'file-zip',\n theme: 'outline',\n icon: ''\n};\n\nconst FlagOutline = {\n name: 'flag',\n theme: 'outline',\n icon: ''\n};\n\nconst FireOutline = {\n name: 'fire',\n theme: 'outline',\n icon: ''\n};\n\nconst FlagFill = {\n name: 'flag',\n theme: 'fill',\n icon: ''\n};\n\nconst FireTwoTone = {\n name: 'fire',\n theme: 'twotone',\n icon: ''\n};\n\nconst FilterTwoTone = {\n name: 'filter',\n theme: 'twotone',\n icon: ''\n};\n\nconst FolderAddFill = {\n name: 'folder-add',\n theme: 'fill',\n icon: ''\n};\n\nconst FolderOpenFill = {\n name: 'folder-open',\n theme: 'fill',\n icon: ''\n};\n\nconst EyeInvisibleTwoTone = {\n name: 'eye-invisible',\n theme: 'twotone',\n icon: ''\n};\n\nconst FlagTwoTone = {\n name: 'flag',\n theme: 'twotone',\n icon: ''\n};\n\nconst FolderAddOutline = {\n name: 'folder-add',\n theme: 'outline',\n icon: ''\n};\n\nconst FolderAddTwoTone = {\n name: 'folder-add',\n theme: 'twotone',\n icon: ''\n};\n\nconst FolderTwoTone = {\n name: 'folder',\n theme: 'twotone',\n icon: ''\n};\n\nconst FolderOutline = {\n name: 'folder',\n theme: 'outline',\n icon: ''\n};\n\nconst FolderOpenTwoTone = {\n name: 'folder-open',\n theme: 'twotone',\n icon: ''\n};\n\nconst FontColorsOutline = {\n name: 'font-colors',\n theme: 'outline',\n icon: ''\n};\n\nconst ForkOutline = {\n name: 'fork',\n theme: 'outline',\n icon: ''\n};\n\nconst FolderViewOutline = {\n name: 'folder-view',\n theme: 'outline',\n icon: ''\n};\n\nconst FormOutline = {\n name: 'form',\n theme: 'outline',\n icon: ''\n};\n\nconst FolderOpenOutline = {\n name: 'folder-open',\n theme: 'outline',\n icon: ''\n};\n\nconst ForwardFill = {\n name: 'forward',\n theme: 'fill',\n icon: ''\n};\n\nconst FontSizeOutline = {\n name: 'font-size',\n theme: 'outline',\n icon: ''\n};\n\nconst ForwardOutline = {\n name: 'forward',\n theme: 'outline',\n icon: ''\n};\n\nconst ExperimentOutline = {\n name: 'experiment',\n theme: 'outline',\n icon: ''\n};\n\nconst FrownFill = {\n name: 'frown',\n theme: 'fill',\n icon: ''\n};\n\nconst FullscreenOutline = {\n name: 'fullscreen',\n theme: 'outline',\n icon: ''\n};\n\nconst FundTwoTone = {\n name: 'fund',\n theme: 'twotone',\n icon: ''\n};\n\nconst FunctionOutline = {\n name: 'function',\n theme: 'outline',\n icon: ''\n};\n\nconst FrownTwoTone = {\n name: 'frown',\n theme: 'twotone',\n icon: ''\n};\n\nconst FullscreenExitOutline = {\n name: 'fullscreen-exit',\n theme: 'outline',\n icon: ''\n};\n\nconst GatewayOutline = {\n name: 'gateway',\n theme: 'outline',\n icon: ''\n};\n\nconst FundViewOutline = {\n name: 'fund-view',\n theme: 'outline',\n icon: ''\n};\n\nconst FormatPainterOutline = {\n name: 'format-painter',\n theme: 'outline',\n icon: ''\n};\n\nconst FunnelPlotFill = {\n name: 'funnel-plot',\n theme: 'fill',\n icon: ''\n};\n\nconst FundFill = {\n name: 'fund',\n theme: 'fill',\n icon: ''\n};\n\nconst FunnelPlotTwoTone = {\n name: 'funnel-plot',\n theme: 'twotone',\n icon: ''\n};\n\nconst FormatPainterFill = {\n name: 'format-painter',\n theme: 'fill',\n icon: ''\n};\n\nconst GiftTwoTone = {\n name: 'gift',\n theme: 'twotone',\n icon: ''\n};\n\nconst GiftOutline = {\n name: 'gift',\n theme: 'outline',\n icon: ''\n};\n\nconst GifOutline = {\n name: 'gif',\n theme: 'outline',\n icon: ''\n};\n\nconst FundProjectionScreenOutline = {\n name: 'fund-projection-screen',\n theme: 'outline',\n icon: ''\n};\n\nconst FunnelPlotOutline = {\n name: 'funnel-plot',\n theme: 'outline',\n icon: ''\n};\n\nconst FundOutline = {\n name: 'fund',\n theme: 'outline',\n icon: ''\n};\n\nconst GlobalOutline = {\n name: 'global',\n theme: 'outline',\n icon: ''\n};\n\nconst GiftFill = {\n name: 'gift',\n theme: 'fill',\n icon: ''\n};\n\nconst FrownOutline = {\n name: 'frown',\n theme: 'outline',\n icon: ''\n};\n\nconst CustomerServiceFill = {\n name: 'customer-service',\n theme: 'fill',\n icon: ''\n};\n\nconst GoldOutline = {\n name: 'gold',\n theme: 'outline',\n icon: ''\n};\n\nconst GithubOutline = {\n name: 'github',\n theme: 'outline',\n icon: ''\n};\n\nconst GithubFill = {\n name: 'github',\n theme: 'fill',\n icon: ''\n};\n\nconst GitlabFill = {\n name: 'gitlab',\n theme: 'fill',\n icon: ''\n};\n\nconst GoldenFill = {\n name: 'golden',\n theme: 'fill',\n icon: ''\n};\n\nconst GoogleOutline = {\n name: 'google',\n theme: 'outline',\n icon: ''\n};\n\nconst GoldTwoTone = {\n name: 'gold',\n theme: 'twotone',\n icon: ''\n};\n\nconst GooglePlusOutline = {\n name: 'google-plus',\n theme: 'outline',\n icon: ''\n};\n\nconst GoogleCircleFill = {\n name: 'google-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst HddOutline = {\n name: 'hdd',\n theme: 'outline',\n icon: ''\n};\n\nconst GoldFill = {\n name: 'gold',\n theme: 'fill',\n icon: ''\n};\n\nconst GoogleSquareFill = {\n name: 'google-square',\n theme: 'fill',\n icon: ''\n};\n\nconst GooglePlusCircleFill = {\n name: 'google-plus-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst HddTwoTone = {\n name: 'hdd',\n theme: 'twotone',\n icon: ''\n};\n\nconst HeartOutline = {\n name: 'heart',\n theme: 'outline',\n icon: ''\n};\n\nconst AndroidOutline = {\n name: 'android',\n theme: 'outline',\n icon: ''\n};\n\nconst HeatMapOutline = {\n name: 'heat-map',\n theme: 'outline',\n icon: ''\n};\n\nconst GroupOutline = {\n name: 'group',\n theme: 'outline',\n icon: ''\n};\n\nconst HeartTwoTone = {\n name: 'heart',\n theme: 'twotone',\n icon: ''\n};\n\nconst HolderOutline = {\n name: 'holder',\n theme: 'outline',\n icon: ''\n};\n\nconst EuroCircleTwoTone = {\n name: 'euro-circle',\n theme: 'twotone',\n icon: ''\n};\n\nconst HighlightFill = {\n name: 'highlight',\n theme: 'fill',\n icon: ''\n};\n\nconst HeartFill = {\n name: 'heart',\n theme: 'fill',\n icon: ''\n};\n\nconst HomeOutline = {\n name: 'home',\n theme: 'outline',\n icon: ''\n};\n\nconst HighlightOutline = {\n name: 'highlight',\n theme: 'outline',\n icon: ''\n};\n\nconst HourglassFill = {\n name: 'hourglass',\n theme: 'fill',\n icon: ''\n};\n\nconst HomeFill = {\n name: 'home',\n theme: 'fill',\n icon: ''\n};\n\nconst HighlightTwoTone = {\n name: 'highlight',\n theme: 'twotone',\n icon: ''\n};\n\nconst Html5Outline = {\n name: 'html5',\n theme: 'outline',\n icon: ''\n};\n\nconst Html5Fill = {\n name: 'html5',\n theme: 'fill',\n icon: ''\n};\n\nconst IdcardOutline = {\n name: 'idcard',\n theme: 'outline',\n icon: ''\n};\n\nconst FolderFill = {\n name: 'folder',\n theme: 'fill',\n icon: ''\n};\n\nconst HourglassOutline = {\n name: 'hourglass',\n theme: 'outline',\n icon: ''\n};\n\nconst IdcardTwoTone = {\n name: 'idcard',\n theme: 'twotone',\n icon: ''\n};\n\nconst HourglassTwoTone = {\n name: 'hourglass',\n theme: 'twotone',\n icon: ''\n};\n\nconst Html5TwoTone = {\n name: 'html5',\n theme: 'twotone',\n icon: ''\n};\n\nconst CopyrightCircleOutline = {\n name: 'copyright-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst IdcardFill = {\n name: 'idcard',\n theme: 'fill',\n icon: ''\n};\n\nconst HomeTwoTone = {\n name: 'home',\n theme: 'twotone',\n icon: ''\n};\n\nconst InfoCircleOutline = {\n name: 'info-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst IeCircleFill = {\n name: 'ie-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst InfoOutline = {\n name: 'info',\n theme: 'outline',\n icon: ''\n};\n\nconst InsertRowAboveOutline = {\n name: 'insert-row-above',\n theme: 'outline',\n icon: ''\n};\n\nconst InfoCircleTwoTone = {\n name: 'info-circle',\n theme: 'twotone',\n icon: ''\n};\n\nconst InboxOutline = {\n name: 'inbox',\n theme: 'outline',\n icon: ''\n};\n\nconst InsertRowLeftOutline = {\n name: 'insert-row-left',\n theme: 'outline',\n icon: ''\n};\n\nconst InfoCircleFill = {\n name: 'info-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst InstagramFill = {\n name: 'instagram',\n theme: 'fill',\n icon: ''\n};\n\nconst ImportOutline = {\n name: 'import',\n theme: 'outline',\n icon: ''\n};\n\nconst InsuranceFill = {\n name: 'insurance',\n theme: 'fill',\n icon: ''\n};\n\nconst InstagramOutline = {\n name: 'instagram',\n theme: 'outline',\n icon: ''\n};\n\nconst KeyOutline = {\n name: 'key',\n theme: 'outline',\n icon: ''\n};\n\nconst InsertRowBelowOutline = {\n name: 'insert-row-below',\n theme: 'outline',\n icon: ''\n};\n\nconst InsuranceOutline = {\n name: 'insurance',\n theme: 'outline',\n icon: ''\n};\n\nconst InteractionOutline = {\n name: 'interaction',\n theme: 'outline',\n icon: ''\n};\n\nconst HddFill = {\n name: 'hdd',\n theme: 'fill',\n icon: ''\n};\n\nconst InsertRowRightOutline = {\n name: 'insert-row-right',\n theme: 'outline',\n icon: ''\n};\n\nconst InteractionTwoTone = {\n name: 'interaction',\n theme: 'twotone',\n icon: ''\n};\n\nconst LeftCircleOutline = {\n name: 'left-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst LaptopOutline = {\n name: 'laptop',\n theme: 'outline',\n icon: ''\n};\n\nconst IssuesCloseOutline = {\n name: 'issues-close',\n theme: 'outline',\n icon: ''\n};\n\nconst ItalicOutline = {\n name: 'italic',\n theme: 'outline',\n icon: ''\n};\n\nconst FileOutline = {\n name: 'file',\n theme: 'outline',\n icon: ''\n};\n\nconst LayoutOutline = {\n name: 'layout',\n theme: 'outline',\n icon: ''\n};\n\nconst LayoutTwoTone = {\n name: 'layout',\n theme: 'twotone',\n icon: ''\n};\n\nconst LeftSquareTwoTone = {\n name: 'left-square',\n theme: 'twotone',\n icon: ''\n};\n\nconst LeftCircleTwoTone = {\n name: 'left-circle',\n theme: 'twotone',\n icon: ''\n};\n\nconst LikeFill = {\n name: 'like',\n theme: 'fill',\n icon: ''\n};\n\nconst LayoutFill = {\n name: 'layout',\n theme: 'fill',\n icon: ''\n};\n\nconst LeftSquareFill = {\n name: 'left-square',\n theme: 'fill',\n icon: ''\n};\n\nconst LeftOutline = {\n name: 'left',\n theme: 'outline',\n icon: ''\n};\n\nconst LeftSquareOutline = {\n name: 'left-square',\n theme: 'outline',\n icon: ''\n};\n\nconst LineHeightOutline = {\n name: 'line-height',\n theme: 'outline',\n icon: ''\n};\n\nconst LeftCircleFill = {\n name: 'left-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst LikeOutline = {\n name: 'like',\n theme: 'outline',\n icon: ''\n};\n\nconst LikeTwoTone = {\n name: 'like',\n theme: 'twotone',\n icon: ''\n};\n\nconst LinkOutline = {\n name: 'link',\n theme: 'outline',\n icon: ''\n};\n\nconst LinkedinOutline = {\n name: 'linkedin',\n theme: 'outline',\n icon: ''\n};\n\nconst LineChartOutline = {\n name: 'line-chart',\n theme: 'outline',\n icon: ''\n};\n\nconst Loading3QuartersOutline = {\n name: 'loading-3-quarters',\n theme: 'outline',\n icon: ''\n};\n\nconst LineOutline = {\n name: 'line',\n theme: 'outline',\n icon: ''\n};\n\nconst LockTwoTone = {\n name: 'lock',\n theme: 'twotone',\n icon: ''\n};\n\nconst LogoutOutline = {\n name: 'logout',\n theme: 'outline',\n icon: ''\n};\n\nconst LinkedinFill = {\n name: 'linkedin',\n theme: 'fill',\n icon: ''\n};\n\nconst LockOutline = {\n name: 'lock',\n theme: 'outline',\n icon: ''\n};\n\nconst LoginOutline = {\n name: 'login',\n theme: 'outline',\n icon: ''\n};\n\nconst LockFill = {\n name: 'lock',\n theme: 'fill',\n icon: ''\n};\n\nconst MailOutline = {\n name: 'mail',\n theme: 'outline',\n icon: ''\n};\n\nconst MacCommandFill = {\n name: 'mac-command',\n theme: 'fill',\n icon: ''\n};\n\nconst MacCommandOutline = {\n name: 'mac-command',\n theme: 'outline',\n icon: ''\n};\n\nconst LoadingOutline = {\n name: 'loading',\n theme: 'outline',\n icon: ''\n};\n\nconst MailFill = {\n name: 'mail',\n theme: 'fill',\n icon: ''\n};\n\nconst ConsoleSqlOutline = {\n name: 'console-sql',\n theme: 'outline',\n icon: ''\n};\n\nconst MediumCircleFill = {\n name: 'medium-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst MailTwoTone = {\n name: 'mail',\n theme: 'twotone',\n icon: ''\n};\n\nconst ManOutline = {\n name: 'man',\n theme: 'outline',\n icon: ''\n};\n\nconst MedicineBoxTwoTone = {\n name: 'medicine-box',\n theme: 'twotone',\n icon: ''\n};\n\nconst InteractionFill = {\n name: 'interaction',\n theme: 'fill',\n icon: ''\n};\n\nconst MedicineBoxOutline = {\n name: 'medicine-box',\n theme: 'outline',\n icon: ''\n};\n\nconst EyeOutline = {\n name: 'eye',\n theme: 'outline',\n icon: ''\n};\n\nconst MediumSquareFill = {\n name: 'medium-square',\n theme: 'fill',\n icon: ''\n};\n\nconst MehFill = {\n name: 'meh',\n theme: 'fill',\n icon: ''\n};\n\nconst IeSquareFill = {\n name: 'ie-square',\n theme: 'fill',\n icon: ''\n};\n\nconst MehOutline = {\n name: 'meh',\n theme: 'outline',\n icon: ''\n};\n\nconst MenuUnfoldOutline = {\n name: 'menu-unfold',\n theme: 'outline',\n icon: ''\n};\n\nconst MediumOutline = {\n name: 'medium',\n theme: 'outline',\n icon: ''\n};\n\nconst MessageOutline = {\n name: 'message',\n theme: 'outline',\n icon: ''\n};\n\nconst MergeCellsOutline = {\n name: 'merge-cells',\n theme: 'outline',\n icon: ''\n};\n\nconst MessageFill = {\n name: 'message',\n theme: 'fill',\n icon: ''\n};\n\nconst MinusCircleFill = {\n name: 'minus-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst MessageTwoTone = {\n name: 'message',\n theme: 'twotone',\n icon: ''\n};\n\nconst MenuFoldOutline = {\n name: 'menu-fold',\n theme: 'outline',\n icon: ''\n};\n\nconst MinusCircleOutline = {\n name: 'minus-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst MehTwoTone = {\n name: 'meh',\n theme: 'twotone',\n icon: ''\n};\n\nconst MinusCircleTwoTone = {\n name: 'minus-circle',\n theme: 'twotone',\n icon: ''\n};\n\nconst MinusSquareFill = {\n name: 'minus-square',\n theme: 'fill',\n icon: ''\n};\n\nconst IeOutline = {\n name: 'ie',\n theme: 'outline',\n icon: ''\n};\n\nconst DisconnectOutline = {\n name: 'disconnect',\n theme: 'outline',\n icon: ''\n};\n\nconst MobileFill = {\n name: 'mobile',\n theme: 'fill',\n icon: ''\n};\n\nconst MoneyCollectOutline = {\n name: 'money-collect',\n theme: 'outline',\n icon: ''\n};\n\nconst MobileTwoTone = {\n name: 'mobile',\n theme: 'twotone',\n icon: ''\n};\n\nconst MonitorOutline = {\n name: 'monitor',\n theme: 'outline',\n icon: ''\n};\n\nconst MinusOutline = {\n name: 'minus',\n theme: 'outline',\n icon: ''\n};\n\nconst MinusSquareTwoTone = {\n name: 'minus-square',\n theme: 'twotone',\n icon: ''\n};\n\nconst MoneyCollectFill = {\n name: 'money-collect',\n theme: 'fill',\n icon: ''\n};\n\nconst NodeCollapseOutline = {\n name: 'node-collapse',\n theme: 'outline',\n icon: ''\n};\n\nconst MoneyCollectTwoTone = {\n name: 'money-collect',\n theme: 'twotone',\n icon: ''\n};\n\nconst MenuOutline = {\n name: 'menu',\n theme: 'outline',\n icon: ''\n};\n\nconst NodeExpandOutline = {\n name: 'node-expand',\n theme: 'outline',\n icon: ''\n};\n\nconst NotificationOutline = {\n name: 'notification',\n theme: 'outline',\n icon: ''\n};\n\nconst NotificationFill = {\n name: 'notification',\n theme: 'fill',\n icon: ''\n};\n\nconst NumberOutline = {\n name: 'number',\n theme: 'outline',\n icon: ''\n};\n\nconst GitlabOutline = {\n name: 'gitlab',\n theme: 'outline',\n icon: ''\n};\n\nconst PaperClipOutline = {\n name: 'paper-clip',\n theme: 'outline',\n icon: ''\n};\n\nconst PauseCircleFill = {\n name: 'pause-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst PauseCircleTwoTone = {\n name: 'pause-circle',\n theme: 'twotone',\n icon: ''\n};\n\nconst NotificationTwoTone = {\n name: 'notification',\n theme: 'twotone',\n icon: ''\n};\n\nconst PauseOutline = {\n name: 'pause',\n theme: 'outline',\n icon: ''\n};\n\nconst PhoneOutline = {\n name: 'phone',\n theme: 'outline',\n icon: ''\n};\n\nconst PartitionOutline = {\n name: 'partition',\n theme: 'outline',\n icon: ''\n};\n\nconst OneToOneOutline = {\n name: 'one-to-one',\n theme: 'outline',\n icon: ''\n};\n\nconst PauseCircleOutline = {\n name: 'pause-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst PayCircleFill = {\n name: 'pay-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst OrderedListOutline = {\n name: 'ordered-list',\n theme: 'outline',\n icon: ''\n};\n\nconst PicCenterOutline = {\n name: 'pic-center',\n theme: 'outline',\n icon: ''\n};\n\nconst PayCircleOutline = {\n name: 'pay-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst PercentageOutline = {\n name: 'percentage',\n theme: 'outline',\n icon: ''\n};\n\nconst PhoneTwoTone = {\n name: 'phone',\n theme: 'twotone',\n icon: ''\n};\n\nconst PictureFill = {\n name: 'picture',\n theme: 'fill',\n icon: ''\n};\n\nconst PictureOutline = {\n name: 'picture',\n theme: 'outline',\n icon: ''\n};\n\nconst MinusSquareOutline = {\n name: 'minus-square',\n theme: 'outline',\n icon: ''\n};\n\nconst PhoneFill = {\n name: 'phone',\n theme: 'fill',\n icon: ''\n};\n\nconst PieChartOutline = {\n name: 'pie-chart',\n theme: 'outline',\n icon: ''\n};\n\nconst PicLeftOutline = {\n name: 'pic-left',\n theme: 'outline',\n icon: ''\n};\n\nconst PieChartTwoTone = {\n name: 'pie-chart',\n theme: 'twotone',\n icon: ''\n};\n\nconst PieChartFill = {\n name: 'pie-chart',\n theme: 'fill',\n icon: ''\n};\n\nconst PlayCircleTwoTone = {\n name: 'play-circle',\n theme: 'twotone',\n icon: ''\n};\n\nconst PlaySquareFill = {\n name: 'play-square',\n theme: 'fill',\n icon: ''\n};\n\nconst PlusCircleTwoTone = {\n name: 'plus-circle',\n theme: 'twotone',\n icon: ''\n};\n\nconst PictureTwoTone = {\n name: 'picture',\n theme: 'twotone',\n icon: ''\n};\n\nconst PlayCircleFill = {\n name: 'play-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst PicRightOutline = {\n name: 'pic-right',\n theme: 'outline',\n icon: ''\n};\n\nconst PlusCircleOutline = {\n name: 'plus-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst PlusCircleFill = {\n name: 'plus-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst PlaySquareTwoTone = {\n name: 'play-square',\n theme: 'twotone',\n icon: ''\n};\n\nconst PlusOutline = {\n name: 'plus',\n theme: 'outline',\n icon: ''\n};\n\nconst PlusSquareOutline = {\n name: 'plus-square',\n theme: 'outline',\n icon: ''\n};\n\nconst PoundCircleFill = {\n name: 'pound-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst PlusSquareFill = {\n name: 'plus-square',\n theme: 'fill',\n icon: ''\n};\n\nconst PoundCircleOutline = {\n name: 'pound-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst PlusSquareTwoTone = {\n name: 'plus-square',\n theme: 'twotone',\n icon: ''\n};\n\nconst PlaySquareOutline = {\n name: 'play-square',\n theme: 'outline',\n icon: ''\n};\n\nconst PoweroffOutline = {\n name: 'poweroff',\n theme: 'outline',\n icon: ''\n};\n\nconst PoundOutline = {\n name: 'pound',\n theme: 'outline',\n icon: ''\n};\n\nconst ProfileFill = {\n name: 'profile',\n theme: 'fill',\n icon: ''\n};\n\nconst PrinterFill = {\n name: 'printer',\n theme: 'fill',\n icon: ''\n};\n\nconst PoundCircleTwoTone = {\n name: 'pound-circle',\n theme: 'twotone',\n icon: ''\n};\n\nconst ProjectTwoTone = {\n name: 'project',\n theme: 'twotone',\n icon: ''\n};\n\nconst ProjectFill = {\n name: 'project',\n theme: 'fill',\n icon: ''\n};\n\nconst ProjectOutline = {\n name: 'project',\n theme: 'outline',\n icon: ''\n};\n\nconst PrinterOutline = {\n name: 'printer',\n theme: 'outline',\n icon: ''\n};\n\nconst ProfileTwoTone = {\n name: 'profile',\n theme: 'twotone',\n icon: ''\n};\n\nconst PropertySafetyOutline = {\n name: 'property-safety',\n theme: 'outline',\n icon: ''\n};\n\nconst PrinterTwoTone = {\n name: 'printer',\n theme: 'twotone',\n icon: ''\n};\n\nconst MobileOutline = {\n name: 'mobile',\n theme: 'outline',\n icon: ''\n};\n\nconst PushpinTwoTone = {\n name: 'pushpin',\n theme: 'twotone',\n icon: ''\n};\n\nconst QqOutline = {\n name: 'qq',\n theme: 'outline',\n icon: ''\n};\n\nconst PushpinFill = {\n name: 'pushpin',\n theme: 'fill',\n icon: ''\n};\n\nconst PushpinOutline = {\n name: 'pushpin',\n theme: 'outline',\n icon: ''\n};\n\nconst PullRequestOutline = {\n name: 'pull-request',\n theme: 'outline',\n icon: ''\n};\n\nconst QqCircleFill = {\n name: 'qq-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst ProfileOutline = {\n name: 'profile',\n theme: 'outline',\n icon: ''\n};\n\nconst RadiusBottomleftOutline = {\n name: 'radius-bottomleft',\n theme: 'outline',\n icon: ''\n};\n\nconst QuestionCircleOutline = {\n name: 'question-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst PropertySafetyFill = {\n name: 'property-safety',\n theme: 'fill',\n icon: ''\n};\n\nconst QuestionCircleFill = {\n name: 'question-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst QrcodeOutline = {\n name: 'qrcode',\n theme: 'outline',\n icon: ''\n};\n\nconst QqSquareFill = {\n name: 'qq-square',\n theme: 'fill',\n icon: ''\n};\n\nconst ReadFill = {\n name: 'read',\n theme: 'fill',\n icon: ''\n};\n\nconst RadarChartOutline = {\n name: 'radar-chart',\n theme: 'outline',\n icon: ''\n};\n\nconst ReconciliationOutline = {\n name: 'reconciliation',\n theme: 'outline',\n icon: ''\n};\n\nconst RadiusUprightOutline = {\n name: 'radius-upright',\n theme: 'outline',\n icon: ''\n};\n\nconst QuestionOutline = {\n name: 'question',\n theme: 'outline',\n icon: ''\n};\n\nconst ReadOutline = {\n name: 'read',\n theme: 'outline',\n icon: ''\n};\n\nconst RedEnvelopeOutline = {\n name: 'red-envelope',\n theme: 'outline',\n icon: ''\n};\n\nconst ReconciliationTwoTone = {\n name: 'reconciliation',\n theme: 'twotone',\n icon: ''\n};\n\nconst RadiusBottomrightOutline = {\n name: 'radius-bottomright',\n theme: 'outline',\n icon: ''\n};\n\nconst ReconciliationFill = {\n name: 'reconciliation',\n theme: 'fill',\n icon: ''\n};\n\nconst RedEnvelopeFill = {\n name: 'red-envelope',\n theme: 'fill',\n icon: ''\n};\n\nconst RadiusSettingOutline = {\n name: 'radius-setting',\n theme: 'outline',\n icon: ''\n};\n\nconst RedditCircleFill = {\n name: 'reddit-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst RedditOutline = {\n name: 'reddit',\n theme: 'outline',\n icon: ''\n};\n\nconst GooglePlusSquareFill = {\n name: 'google-plus-square',\n theme: 'fill',\n icon: ''\n};\n\nconst RedoOutline = {\n name: 'redo',\n theme: 'outline',\n icon: ''\n};\n\nconst MoreOutline = {\n name: 'more',\n theme: 'outline',\n icon: ''\n};\n\nconst PropertySafetyTwoTone = {\n name: 'property-safety',\n theme: 'twotone',\n icon: ''\n};\n\nconst RedditSquareFill = {\n name: 'reddit-square',\n theme: 'fill',\n icon: ''\n};\n\nconst RestFill = {\n name: 'rest',\n theme: 'fill',\n icon: ''\n};\n\nconst NodeIndexOutline = {\n name: 'node-index',\n theme: 'outline',\n icon: ''\n};\n\nconst RightCircleOutline = {\n name: 'right-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst RightOutline = {\n name: 'right',\n theme: 'outline',\n icon: ''\n};\n\nconst RightCircleTwoTone = {\n name: 'right-circle',\n theme: 'twotone',\n icon: ''\n};\n\nconst RedEnvelopeTwoTone = {\n name: 'red-envelope',\n theme: 'twotone',\n icon: ''\n};\n\nconst RightCircleFill = {\n name: 'right-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst ReloadOutline = {\n name: 'reload',\n theme: 'outline',\n icon: ''\n};\n\nconst RightSquareTwoTone = {\n name: 'right-square',\n theme: 'twotone',\n icon: ''\n};\n\nconst RightSquareOutline = {\n name: 'right-square',\n theme: 'outline',\n icon: ''\n};\n\nconst RocketOutline = {\n name: 'rocket',\n theme: 'outline',\n icon: ''\n};\n\nconst RightSquareFill = {\n name: 'right-square',\n theme: 'fill',\n icon: ''\n};\n\nconst RobotFill = {\n name: 'robot',\n theme: 'fill',\n icon: ''\n};\n\nconst RocketTwoTone = {\n name: 'rocket',\n theme: 'twotone',\n icon: ''\n};\n\nconst RocketFill = {\n name: 'rocket',\n theme: 'fill',\n icon: ''\n};\n\nconst RotateLeftOutline = {\n name: 'rotate-left',\n theme: 'outline',\n icon: ''\n};\n\nconst RobotOutline = {\n name: 'robot',\n theme: 'outline',\n icon: ''\n};\n\nconst InsuranceTwoTone = {\n name: 'insurance',\n theme: 'twotone',\n icon: ''\n};\n\nconst SafetyOutline = {\n name: 'safety',\n theme: 'outline',\n icon: ''\n};\n\nconst SafetyCertificateFill = {\n name: 'safety-certificate',\n theme: 'fill',\n icon: ''\n};\n\nconst MedicineBoxFill = {\n name: 'medicine-box',\n theme: 'fill',\n icon: ''\n};\n\nconst SaveOutline = {\n name: 'save',\n theme: 'outline',\n icon: ''\n};\n\nconst RotateRightOutline = {\n name: 'rotate-right',\n theme: 'outline',\n icon: ''\n};\n\nconst QuestionCircleTwoTone = {\n name: 'question-circle',\n theme: 'twotone',\n icon: ''\n};\n\nconst RollbackOutline = {\n name: 'rollback',\n theme: 'outline',\n icon: ''\n};\n\nconst ScanOutline = {\n name: 'scan',\n theme: 'outline',\n icon: ''\n};\n\nconst ScheduleOutline = {\n name: 'schedule',\n theme: 'outline',\n icon: ''\n};\n\nconst SafetyCertificateOutline = {\n name: 'safety-certificate',\n theme: 'outline',\n icon: ''\n};\n\nconst SaveTwoTone = {\n name: 'save',\n theme: 'twotone',\n icon: ''\n};\n\nconst ScheduleFill = {\n name: 'schedule',\n theme: 'fill',\n icon: ''\n};\n\nconst ScheduleTwoTone = {\n name: 'schedule',\n theme: 'twotone',\n icon: ''\n};\n\nconst SaveFill = {\n name: 'save',\n theme: 'fill',\n icon: ''\n};\n\nconst ScissorOutline = {\n name: 'scissor',\n theme: 'outline',\n icon: ''\n};\n\nconst SecurityScanFill = {\n name: 'security-scan',\n theme: 'fill',\n icon: ''\n};\n\nconst SafetyCertificateTwoTone = {\n name: 'safety-certificate',\n theme: 'twotone',\n icon: ''\n};\n\nconst SecurityScanTwoTone = {\n name: 'security-scan',\n theme: 'twotone',\n icon: ''\n};\n\nconst SendOutline = {\n name: 'send',\n theme: 'outline',\n icon: ''\n};\n\nconst ShakeOutline = {\n name: 'shake',\n theme: 'outline',\n icon: ''\n};\n\nconst SettingTwoTone = {\n name: 'setting',\n theme: 'twotone',\n icon: ''\n};\n\nconst SettingFill = {\n name: 'setting',\n theme: 'fill',\n icon: ''\n};\n\nconst ShareAltOutline = {\n name: 'share-alt',\n theme: 'outline',\n icon: ''\n};\n\nconst SearchOutline = {\n name: 'search',\n theme: 'outline',\n icon: ''\n};\n\nconst SecurityScanOutline = {\n name: 'security-scan',\n theme: 'outline',\n icon: ''\n};\n\nconst RadiusUpleftOutline = {\n name: 'radius-upleft',\n theme: 'outline',\n icon: ''\n};\n\nconst HistoryOutline = {\n name: 'history',\n theme: 'outline',\n icon: ''\n};\n\nconst RestOutline = {\n name: 'rest',\n theme: 'outline',\n icon: ''\n};\n\nconst ShopTwoTone = {\n name: 'shop',\n theme: 'twotone',\n icon: ''\n};\n\nconst ShopFill = {\n name: 'shop',\n theme: 'fill',\n icon: ''\n};\n\nconst ShoppingOutline = {\n name: 'shopping',\n theme: 'outline',\n icon: ''\n};\n\nconst ShoppingFill = {\n name: 'shopping',\n theme: 'fill',\n icon: ''\n};\n\nconst SignalFill = {\n name: 'signal',\n theme: 'fill',\n icon: ''\n};\n\nconst MediumWorkmarkOutline = {\n name: 'medium-workmark',\n theme: 'outline',\n icon: ''\n};\n\nconst SketchCircleFill = {\n name: 'sketch-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst SketchSquareFill = {\n name: 'sketch-square',\n theme: 'fill',\n icon: ''\n};\n\nconst ShrinkOutline = {\n name: 'shrink',\n theme: 'outline',\n icon: ''\n};\n\nconst SketchOutline = {\n name: 'sketch',\n theme: 'outline',\n icon: ''\n};\n\nconst RestTwoTone = {\n name: 'rest',\n theme: 'twotone',\n icon: ''\n};\n\nconst SkypeOutline = {\n name: 'skype',\n theme: 'outline',\n icon: ''\n};\n\nconst RetweetOutline = {\n name: 'retweet',\n theme: 'outline',\n icon: ''\n};\n\nconst SlackSquareFill = {\n name: 'slack-square',\n theme: 'fill',\n icon: ''\n};\n\nconst SlackOutline = {\n name: 'slack',\n theme: 'outline',\n icon: ''\n};\n\nconst SlackSquareOutline = {\n name: 'slack-square',\n theme: 'outline',\n icon: ''\n};\n\nconst SisternodeOutline = {\n name: 'sisternode',\n theme: 'outline',\n icon: ''\n};\n\nconst SkypeFill = {\n name: 'skype',\n theme: 'fill',\n icon: ''\n};\n\nconst SkinTwoTone = {\n name: 'skin',\n theme: 'twotone',\n icon: ''\n};\n\nconst SlidersOutline = {\n name: 'sliders',\n theme: 'outline',\n icon: ''\n};\n\nconst ShopOutline = {\n name: 'shop',\n theme: 'outline',\n icon: ''\n};\n\nconst SmallDashOutline = {\n name: 'small-dash',\n theme: 'outline',\n icon: ''\n};\n\nconst SlidersTwoTone = {\n name: 'sliders',\n theme: 'twotone',\n icon: ''\n};\n\nconst SlidersFill = {\n name: 'sliders',\n theme: 'fill',\n icon: ''\n};\n\nconst SnippetsFill = {\n name: 'snippets',\n theme: 'fill',\n icon: ''\n};\n\nconst SmileOutline = {\n name: 'smile',\n theme: 'outline',\n icon: ''\n};\n\nconst SnippetsOutline = {\n name: 'snippets',\n theme: 'outline',\n icon: ''\n};\n\nconst ShoppingCartOutline = {\n name: 'shopping-cart',\n theme: 'outline',\n icon: ''\n};\n\nconst SmileFill = {\n name: 'smile',\n theme: 'fill',\n icon: ''\n};\n\nconst SolutionOutline = {\n name: 'solution',\n theme: 'outline',\n icon: ''\n};\n\nconst SortAscendingOutline = {\n name: 'sort-ascending',\n theme: 'outline',\n icon: ''\n};\n\nconst SoundTwoTone = {\n name: 'sound',\n theme: 'twotone',\n icon: ''\n};\n\nconst SmileTwoTone = {\n name: 'smile',\n theme: 'twotone',\n icon: ''\n};\n\nconst SplitCellsOutline = {\n name: 'split-cells',\n theme: 'outline',\n icon: ''\n};\n\nconst PlayCircleOutline = {\n name: 'play-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst SoundFill = {\n name: 'sound',\n theme: 'fill',\n icon: ''\n};\n\nconst StarFill = {\n name: 'star',\n theme: 'fill',\n icon: ''\n};\n\nconst ShoppingTwoTone = {\n name: 'shopping',\n theme: 'twotone',\n icon: ''\n};\n\nconst StarTwoTone = {\n name: 'star',\n theme: 'twotone',\n icon: ''\n};\n\nconst StarOutline = {\n name: 'star',\n theme: 'outline',\n icon: ''\n};\n\nconst StepBackwardOutline = {\n name: 'step-backward',\n theme: 'outline',\n icon: ''\n};\n\nconst StepForwardFill = {\n name: 'step-forward',\n theme: 'fill',\n icon: ''\n};\n\nconst StrikethroughOutline = {\n name: 'strikethrough',\n theme: 'outline',\n icon: ''\n};\n\nconst StepForwardOutline = {\n name: 'step-forward',\n theme: 'outline',\n icon: ''\n};\n\nconst RiseOutline = {\n name: 'rise',\n theme: 'outline',\n icon: ''\n};\n\nconst StockOutline = {\n name: 'stock',\n theme: 'outline',\n icon: ''\n};\n\nconst StopOutline = {\n name: 'stop',\n theme: 'outline',\n icon: ''\n};\n\nconst StopTwoTone = {\n name: 'stop',\n theme: 'twotone',\n icon: ''\n};\n\nconst StopFill = {\n name: 'stop',\n theme: 'fill',\n icon: ''\n};\n\nconst SwitcherFill = {\n name: 'switcher',\n theme: 'fill',\n icon: ''\n};\n\nconst SwapLeftOutline = {\n name: 'swap-left',\n theme: 'outline',\n icon: ''\n};\n\nconst SwitcherOutline = {\n name: 'switcher',\n theme: 'outline',\n icon: ''\n};\n\nconst SwitcherTwoTone = {\n name: 'switcher',\n theme: 'twotone',\n icon: ''\n};\n\nconst SwapOutline = {\n name: 'swap',\n theme: 'outline',\n icon: ''\n};\n\nconst SubnodeOutline = {\n name: 'subnode',\n theme: 'outline',\n icon: ''\n};\n\nconst SwapRightOutline = {\n name: 'swap-right',\n theme: 'outline',\n icon: ''\n};\n\nconst SyncOutline = {\n name: 'sync',\n theme: 'outline',\n icon: ''\n};\n\nconst TableOutline = {\n name: 'table',\n theme: 'outline',\n icon: ''\n};\n\nconst SkinOutline = {\n name: 'skin',\n theme: 'outline',\n icon: ''\n};\n\nconst TagFill = {\n name: 'tag',\n theme: 'fill',\n icon: ''\n};\n\nconst TabletFill = {\n name: 'tablet',\n theme: 'fill',\n icon: ''\n};\n\nconst TagTwoTone = {\n name: 'tag',\n theme: 'twotone',\n icon: ''\n};\n\nconst TagOutline = {\n name: 'tag',\n theme: 'outline',\n icon: ''\n};\n\nconst TaobaoOutline = {\n name: 'taobao',\n theme: 'outline',\n icon: ''\n};\n\nconst TagsTwoTone = {\n name: 'tags',\n theme: 'twotone',\n icon: ''\n};\n\nconst TagsOutline = {\n name: 'tags',\n theme: 'outline',\n icon: ''\n};\n\nconst TabletTwoTone = {\n name: 'tablet',\n theme: 'twotone',\n icon: ''\n};\n\nconst TeamOutline = {\n name: 'team',\n theme: 'outline',\n icon: ''\n};\n\nconst TaobaoCircleFill = {\n name: 'taobao-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst TagsFill = {\n name: 'tags',\n theme: 'fill',\n icon: ''\n};\n\nconst ThunderboltOutline = {\n name: 'thunderbolt',\n theme: 'outline',\n icon: ''\n};\n\nconst TaobaoCircleOutline = {\n name: 'taobao-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst TaobaoSquareFill = {\n name: 'taobao-square',\n theme: 'fill',\n icon: ''\n};\n\nconst ThunderboltTwoTone = {\n name: 'thunderbolt',\n theme: 'twotone',\n icon: ''\n};\n\nconst ThunderboltFill = {\n name: 'thunderbolt',\n theme: 'fill',\n icon: ''\n};\n\nconst ToolFill = {\n name: 'tool',\n theme: 'fill',\n icon: ''\n};\n\nconst ToolTwoTone = {\n name: 'tool',\n theme: 'twotone',\n icon: ''\n};\n\nconst StepBackwardFill = {\n name: 'step-backward',\n theme: 'fill',\n icon: ''\n};\n\nconst ToolOutline = {\n name: 'tool',\n theme: 'outline',\n icon: ''\n};\n\nconst TrademarkCircleTwoTone = {\n name: 'trademark-circle',\n theme: 'twotone',\n icon: ''\n};\n\nconst TrademarkCircleOutline = {\n name: 'trademark-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst TrademarkCircleFill = {\n name: 'trademark-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst ToTopOutline = {\n name: 'to-top',\n theme: 'outline',\n icon: ''\n};\n\nconst TrademarkOutline = {\n name: 'trademark',\n theme: 'outline',\n icon: ''\n};\n\nconst TrophyFill = {\n name: 'trophy',\n theme: 'fill',\n icon: ''\n};\n\nconst TransactionOutline = {\n name: 'transaction',\n theme: 'outline',\n icon: ''\n};\n\nconst TrophyOutline = {\n name: 'trophy',\n theme: 'outline',\n icon: ''\n};\n\nconst SoundOutline = {\n name: 'sound',\n theme: 'outline',\n icon: ''\n};\n\nconst TwitterCircleFill = {\n name: 'twitter-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst TrophyTwoTone = {\n name: 'trophy',\n theme: 'twotone',\n icon: ''\n};\n\nconst UnderlineOutline = {\n name: 'underline',\n theme: 'outline',\n icon: ''\n};\n\nconst UnlockFill = {\n name: 'unlock',\n theme: 'fill',\n icon: ''\n};\n\nconst TwitterOutline = {\n name: 'twitter',\n theme: 'outline',\n icon: ''\n};\n\nconst UnlockOutline = {\n name: 'unlock',\n theme: 'outline',\n icon: ''\n};\n\nconst UndoOutline = {\n name: 'undo',\n theme: 'outline',\n icon: ''\n};\n\nconst UnlockTwoTone = {\n name: 'unlock',\n theme: 'twotone',\n icon: ''\n};\n\nconst SettingOutline = {\n name: 'setting',\n theme: 'outline',\n icon: ''\n};\n\nconst UngroupOutline = {\n name: 'ungroup',\n theme: 'outline',\n icon: ''\n};\n\nconst SelectOutline = {\n name: 'select',\n theme: 'outline',\n icon: ''\n};\n\nconst UpCircleTwoTone = {\n name: 'up-circle',\n theme: 'twotone',\n icon: ''\n};\n\nconst SlackCircleFill = {\n name: 'slack-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst UpCircleOutline = {\n name: 'up-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst UpSquareOutline = {\n name: 'up-square',\n theme: 'outline',\n icon: ''\n};\n\nconst UpCircleFill = {\n name: 'up-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst TwitterSquareFill = {\n name: 'twitter-square',\n theme: 'fill',\n icon: ''\n};\n\nconst UnorderedListOutline = {\n name: 'unordered-list',\n theme: 'outline',\n icon: ''\n};\n\nconst UploadOutline = {\n name: 'upload',\n theme: 'outline',\n icon: ''\n};\n\nconst UpOutline = {\n name: 'up',\n theme: 'outline',\n icon: ''\n};\n\nconst TabletOutline = {\n name: 'tablet',\n theme: 'outline',\n icon: ''\n};\n\nconst UsbTwoTone = {\n name: 'usb',\n theme: 'twotone',\n icon: ''\n};\n\nconst UserDeleteOutline = {\n name: 'user-delete',\n theme: 'outline',\n icon: ''\n};\n\nconst UsbFill = {\n name: 'usb',\n theme: 'fill',\n icon: ''\n};\n\nconst UserOutline = {\n name: 'user',\n theme: 'outline',\n icon: ''\n};\n\nconst UsergroupDeleteOutline = {\n name: 'usergroup-delete',\n theme: 'outline',\n icon: ''\n};\n\nconst UserSwitchOutline = {\n name: 'user-switch',\n theme: 'outline',\n icon: ''\n};\n\nconst VerifiedOutline = {\n name: 'verified',\n theme: 'outline',\n icon: ''\n};\n\nconst VerticalAlignMiddleOutline = {\n name: 'vertical-align-middle',\n theme: 'outline',\n icon: ''\n};\n\nconst VerticalAlignTopOutline = {\n name: 'vertical-align-top',\n theme: 'outline',\n icon: ''\n};\n\nconst VideoCameraAddOutline = {\n name: 'video-camera-add',\n theme: 'outline',\n icon: ''\n};\n\nconst VerticalAlignBottomOutline = {\n name: 'vertical-align-bottom',\n theme: 'outline',\n icon: ''\n};\n\nconst UpSquareFill = {\n name: 'up-square',\n theme: 'fill',\n icon: ''\n};\n\nconst VideoCameraTwoTone = {\n name: 'video-camera',\n theme: 'twotone',\n icon: ''\n};\n\nconst VerticalRightOutline = {\n name: 'vertical-right',\n theme: 'outline',\n icon: ''\n};\n\nconst VerticalLeftOutline = {\n name: 'vertical-left',\n theme: 'outline',\n icon: ''\n};\n\nconst UsbOutline = {\n name: 'usb',\n theme: 'outline',\n icon: ''\n};\n\nconst VideoCameraFill = {\n name: 'video-camera',\n theme: 'fill',\n icon: ''\n};\n\nconst WarningTwoTone = {\n name: 'warning',\n theme: 'twotone',\n icon: ''\n};\n\nconst WalletOutline = {\n name: 'wallet',\n theme: 'outline',\n icon: ''\n};\n\nconst WalletTwoTone = {\n name: 'wallet',\n theme: 'twotone',\n icon: ''\n};\n\nconst VideoCameraOutline = {\n name: 'video-camera',\n theme: 'outline',\n icon: ''\n};\n\nconst WeiboSquareOutline = {\n name: 'weibo-square',\n theme: 'outline',\n icon: ''\n};\n\nconst WalletFill = {\n name: 'wallet',\n theme: 'fill',\n icon: ''\n};\n\nconst WeiboOutline = {\n name: 'weibo',\n theme: 'outline',\n icon: ''\n};\n\nconst WechatOutline = {\n name: 'wechat',\n theme: 'outline',\n icon: ''\n};\n\nconst WeiboCircleFill = {\n name: 'weibo-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst WeiboCircleOutline = {\n name: 'weibo-circle',\n theme: 'outline',\n icon: ''\n};\n\nconst UsergroupAddOutline = {\n name: 'usergroup-add',\n theme: 'outline',\n icon: ''\n};\n\nconst WeiboSquareFill = {\n name: 'weibo-square',\n theme: 'fill',\n icon: ''\n};\n\nconst WhatsAppOutline = {\n name: 'whats-app',\n theme: 'outline',\n icon: ''\n};\n\nconst WomanOutline = {\n name: 'woman',\n theme: 'outline',\n icon: ''\n};\n\nconst YahooFill = {\n name: 'yahoo',\n theme: 'fill',\n icon: ''\n};\n\nconst ZhihuCircleFill = {\n name: 'zhihu-circle',\n theme: 'fill',\n icon: ''\n};\n\nconst WarningFill = {\n name: 'warning',\n theme: 'fill',\n icon: ''\n};\n\nconst YoutubeFill = {\n name: 'youtube',\n theme: 'fill',\n icon: ''\n};\n\nconst TranslationOutline = {\n name: 'translation',\n theme: 'outline',\n icon: ''\n};\n\nconst WindowsOutline = {\n name: 'windows',\n theme: 'outline',\n icon: ''\n};\n\nconst WindowsFill = {\n name: 'windows',\n theme: 'fill',\n icon: ''\n};\n\nconst WifiOutline = {\n name: 'wifi',\n theme: 'outline',\n icon: ''\n};\n\nconst YahooOutline = {\n name: 'yahoo',\n theme: 'outline',\n icon: ''\n};\n\nconst WechatFill = {\n name: 'wechat',\n theme: 'fill',\n icon: ''\n};\n\nconst UpSquareTwoTone = {\n name: 'up-square',\n theme: 'twotone',\n icon: ''\n};\n\nconst YuqueOutline = {\n name: 'yuque',\n theme: 'outline',\n icon: ''\n};\n\nconst ZhihuSquareFill = {\n name: 'zhihu-square',\n theme: 'fill',\n icon: ''\n};\n\nconst YuqueFill = {\n name: 'yuque',\n theme: 'fill',\n icon: ''\n};\n\nconst WarningOutline = {\n name: 'warning',\n theme: 'outline',\n icon: ''\n};\n\nconst ZoomInOutline = {\n name: 'zoom-in',\n theme: 'outline',\n icon: ''\n};\n\nconst SortDescendingOutline = {\n name: 'sort-descending',\n theme: 'outline',\n icon: ''\n};\n\nconst YoutubeOutline = {\n name: 'youtube',\n theme: 'outline',\n icon: ''\n};\n\nconst SkinFill = {\n name: 'skin',\n theme: 'fill',\n icon: ''\n};\n\nconst ZoomOutOutline = {\n name: 'zoom-out',\n theme: 'outline',\n icon: ''\n};\n\nconst ZhihuOutline = {\n name: 'zhihu',\n theme: 'outline',\n icon: ''\n};\n\nconst SnippetsTwoTone = {\n name: 'snippets',\n theme: 'twotone',\n icon: ''\n};\n\nconst UserAddOutline = {\n name: 'user-add',\n theme: 'outline',\n icon: ''\n};\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { AccountBookFill, AccountBookOutline, AccountBookTwoTone, AimOutline, AlertFill, AlertOutline, AlertTwoTone, AlibabaOutline, AlignCenterOutline, AlignLeftOutline, AlignRightOutline, AlipayCircleFill, AlipayCircleOutline, AlipayOutline, AlipaySquareFill, AliwangwangFill, AliwangwangOutline, AliyunOutline, AmazonCircleFill, AmazonOutline, AmazonSquareFill, AndroidFill, AndroidOutline, AntCloudOutline, AntDesignOutline, ApartmentOutline, ApiFill, ApiOutline, ApiTwoTone, AppleFill, AppleOutline, AppstoreAddOutline, AppstoreFill, AppstoreOutline, AppstoreTwoTone, AreaChartOutline, ArrowDownOutline, ArrowLeftOutline, ArrowRightOutline, ArrowUpOutline, ArrowsAltOutline, AudioFill, AudioMutedOutline, AudioOutline, AudioTwoTone, AuditOutline, BackwardFill, BackwardOutline, BankFill, BankOutline, BankTwoTone, BarChartOutline, BarcodeOutline, BarsOutline, BehanceCircleFill, BehanceOutline, BehanceSquareFill, BehanceSquareOutline, BellFill, BellOutline, BellTwoTone, BgColorsOutline, BlockOutline, BoldOutline, BookFill, BookOutline, BookTwoTone, BorderBottomOutline, BorderHorizontalOutline, BorderInnerOutline, BorderLeftOutline, BorderOuterOutline, BorderOutline, BorderRightOutline, BorderTopOutline, BorderVerticleOutline, BorderlessTableOutline, BoxPlotFill, BoxPlotOutline, BoxPlotTwoTone, BranchesOutline, BugFill, BugOutline, BugTwoTone, BuildFill, BuildOutline, BuildTwoTone, BulbFill, BulbOutline, BulbTwoTone, CalculatorFill, CalculatorOutline, CalculatorTwoTone, CalendarFill, CalendarOutline, CalendarTwoTone, CameraFill, CameraOutline, CameraTwoTone, CarFill, CarOutline, CarTwoTone, CaretDownFill, CaretDownOutline, CaretLeftFill, CaretLeftOutline, CaretRightFill, CaretRightOutline, CaretUpFill, CaretUpOutline, CarryOutFill, CarryOutOutline, CarryOutTwoTone, CheckCircleFill, CheckCircleOutline, CheckCircleTwoTone, CheckOutline, CheckSquareFill, CheckSquareOutline, CheckSquareTwoTone, ChromeFill, ChromeOutline, CiCircleFill, CiCircleOutline, CiCircleTwoTone, CiOutline, CiTwoTone, ClearOutline, ClockCircleFill, ClockCircleOutline, ClockCircleTwoTone, CloseCircleFill, CloseCircleOutline, CloseCircleTwoTone, CloseOutline, CloseSquareFill, CloseSquareOutline, CloseSquareTwoTone, CloudDownloadOutline, CloudFill, CloudOutline, CloudServerOutline, CloudSyncOutline, CloudTwoTone, CloudUploadOutline, ClusterOutline, CodeFill, CodeOutline, CodeSandboxCircleFill, CodeSandboxOutline, CodeSandboxSquareFill, CodeTwoTone, CodepenCircleFill, CodepenCircleOutline, CodepenOutline, CodepenSquareFill, CoffeeOutline, ColumnHeightOutline, ColumnWidthOutline, CommentOutline, CompassFill, CompassOutline, CompassTwoTone, CompressOutline, ConsoleSqlOutline, ContactsFill, ContactsOutline, ContactsTwoTone, ContainerFill, ContainerOutline, ContainerTwoTone, ControlFill, ControlOutline, ControlTwoTone, CopyFill, CopyOutline, CopyTwoTone, CopyrightCircleFill, CopyrightCircleOutline, CopyrightCircleTwoTone, CopyrightOutline, CopyrightTwoTone, CreditCardFill, CreditCardOutline, CreditCardTwoTone, CrownFill, CrownOutline, CrownTwoTone, CustomerServiceFill, CustomerServiceOutline, CustomerServiceTwoTone, DashOutline, DashboardFill, DashboardOutline, DashboardTwoTone, DatabaseFill, DatabaseOutline, DatabaseTwoTone, DeleteColumnOutline, DeleteFill, DeleteOutline, DeleteRowOutline, DeleteTwoTone, DeliveredProcedureOutline, DeploymentUnitOutline, DesktopOutline, DiffFill, DiffOutline, DiffTwoTone, DingdingOutline, DingtalkCircleFill, DingtalkOutline, DingtalkSquareFill, DisconnectOutline, DislikeFill, DislikeOutline, DislikeTwoTone, DollarCircleFill, DollarCircleOutline, DollarCircleTwoTone, DollarOutline, DollarTwoTone, DotChartOutline, DoubleLeftOutline, DoubleRightOutline, DownCircleFill, DownCircleOutline, DownCircleTwoTone, DownOutline, DownSquareFill, DownSquareOutline, DownSquareTwoTone, DownloadOutline, DragOutline, DribbbleCircleFill, DribbbleOutline, DribbbleSquareFill, DribbbleSquareOutline, DropboxCircleFill, DropboxOutline, DropboxSquareFill, EditFill, EditOutline, EditTwoTone, EllipsisOutline, EnterOutline, EnvironmentFill, EnvironmentOutline, EnvironmentTwoTone, EuroCircleFill, EuroCircleOutline, EuroCircleTwoTone, EuroOutline, EuroTwoTone, ExceptionOutline, ExclamationCircleFill, ExclamationCircleOutline, ExclamationCircleTwoTone, ExclamationOutline, ExpandAltOutline, ExpandOutline, ExperimentFill, ExperimentOutline, ExperimentTwoTone, ExportOutline, EyeFill, EyeInvisibleFill, EyeInvisibleOutline, EyeInvisibleTwoTone, EyeOutline, EyeTwoTone, FacebookFill, FacebookOutline, FallOutline, FastBackwardFill, FastBackwardOutline, FastForwardFill, FastForwardOutline, FieldBinaryOutline, FieldNumberOutline, FieldStringOutline, FieldTimeOutline, FileAddFill, FileAddOutline, FileAddTwoTone, FileDoneOutline, FileExcelFill, FileExcelOutline, FileExcelTwoTone, FileExclamationFill, FileExclamationOutline, FileExclamationTwoTone, FileFill, FileGifOutline, FileImageFill, FileImageOutline, FileImageTwoTone, FileJpgOutline, FileMarkdownFill, FileMarkdownOutline, FileMarkdownTwoTone, FileOutline, FilePdfFill, FilePdfOutline, FilePdfTwoTone, FilePptFill, FilePptOutline, FilePptTwoTone, FileProtectOutline, FileSearchOutline, FileSyncOutline, FileTextFill, FileTextOutline, FileTextTwoTone, FileTwoTone, FileUnknownFill, FileUnknownOutline, FileUnknownTwoTone, FileWordFill, FileWordOutline, FileWordTwoTone, FileZipFill, FileZipOutline, FileZipTwoTone, FilterFill, FilterOutline, FilterTwoTone, FireFill, FireOutline, FireTwoTone, FlagFill, FlagOutline, FlagTwoTone, FolderAddFill, FolderAddOutline, FolderAddTwoTone, FolderFill, FolderOpenFill, FolderOpenOutline, FolderOpenTwoTone, FolderOutline, FolderTwoTone, FolderViewOutline, FontColorsOutline, FontSizeOutline, ForkOutline, FormOutline, FormatPainterFill, FormatPainterOutline, ForwardFill, ForwardOutline, FrownFill, FrownOutline, FrownTwoTone, FullscreenExitOutline, FullscreenOutline, FunctionOutline, FundFill, FundOutline, FundProjectionScreenOutline, FundTwoTone, FundViewOutline, FunnelPlotFill, FunnelPlotOutline, FunnelPlotTwoTone, GatewayOutline, GifOutline, GiftFill, GiftOutline, GiftTwoTone, GithubFill, GithubOutline, GitlabFill, GitlabOutline, GlobalOutline, GoldFill, GoldOutline, GoldTwoTone, GoldenFill, GoogleCircleFill, GoogleOutline, GooglePlusCircleFill, GooglePlusOutline, GooglePlusSquareFill, GoogleSquareFill, GroupOutline, HddFill, HddOutline, HddTwoTone, HeartFill, HeartOutline, HeartTwoTone, HeatMapOutline, HighlightFill, HighlightOutline, HighlightTwoTone, HistoryOutline, HolderOutline, HomeFill, HomeOutline, HomeTwoTone, HourglassFill, HourglassOutline, HourglassTwoTone, Html5Fill, Html5Outline, Html5TwoTone, IdcardFill, IdcardOutline, IdcardTwoTone, IeCircleFill, IeOutline, IeSquareFill, ImportOutline, InboxOutline, InfoCircleFill, InfoCircleOutline, InfoCircleTwoTone, InfoOutline, InsertRowAboveOutline, InsertRowBelowOutline, InsertRowLeftOutline, InsertRowRightOutline, InstagramFill, InstagramOutline, InsuranceFill, InsuranceOutline, InsuranceTwoTone, InteractionFill, InteractionOutline, InteractionTwoTone, IssuesCloseOutline, ItalicOutline, KeyOutline, LaptopOutline, LayoutFill, LayoutOutline, LayoutTwoTone, LeftCircleFill, LeftCircleOutline, LeftCircleTwoTone, LeftOutline, LeftSquareFill, LeftSquareOutline, LeftSquareTwoTone, LikeFill, LikeOutline, LikeTwoTone, LineChartOutline, LineHeightOutline, LineOutline, LinkOutline, LinkedinFill, LinkedinOutline, Loading3QuartersOutline, LoadingOutline, LockFill, LockOutline, LockTwoTone, LoginOutline, LogoutOutline, MacCommandFill, MacCommandOutline, MailFill, MailOutline, MailTwoTone, ManOutline, MedicineBoxFill, MedicineBoxOutline, MedicineBoxTwoTone, MediumCircleFill, MediumOutline, MediumSquareFill, MediumWorkmarkOutline, MehFill, MehOutline, MehTwoTone, MenuFoldOutline, MenuOutline, MenuUnfoldOutline, MergeCellsOutline, MessageFill, MessageOutline, MessageTwoTone, MinusCircleFill, MinusCircleOutline, MinusCircleTwoTone, MinusOutline, MinusSquareFill, MinusSquareOutline, MinusSquareTwoTone, MobileFill, MobileOutline, MobileTwoTone, MoneyCollectFill, MoneyCollectOutline, MoneyCollectTwoTone, MonitorOutline, MoreOutline, NodeCollapseOutline, NodeExpandOutline, NodeIndexOutline, NotificationFill, NotificationOutline, NotificationTwoTone, NumberOutline, OneToOneOutline, OrderedListOutline, PaperClipOutline, PartitionOutline, PauseCircleFill, PauseCircleOutline, PauseCircleTwoTone, PauseOutline, PayCircleFill, PayCircleOutline, PercentageOutline, PhoneFill, PhoneOutline, PhoneTwoTone, PicCenterOutline, PicLeftOutline, PicRightOutline, PictureFill, PictureOutline, PictureTwoTone, PieChartFill, PieChartOutline, PieChartTwoTone, PlayCircleFill, PlayCircleOutline, PlayCircleTwoTone, PlaySquareFill, PlaySquareOutline, PlaySquareTwoTone, PlusCircleFill, PlusCircleOutline, PlusCircleTwoTone, PlusOutline, PlusSquareFill, PlusSquareOutline, PlusSquareTwoTone, PoundCircleFill, PoundCircleOutline, PoundCircleTwoTone, PoundOutline, PoweroffOutline, PrinterFill, PrinterOutline, PrinterTwoTone, ProfileFill, ProfileOutline, ProfileTwoTone, ProjectFill, ProjectOutline, ProjectTwoTone, PropertySafetyFill, PropertySafetyOutline, PropertySafetyTwoTone, PullRequestOutline, PushpinFill, PushpinOutline, PushpinTwoTone, QqCircleFill, QqOutline, QqSquareFill, QrcodeOutline, QuestionCircleFill, QuestionCircleOutline, QuestionCircleTwoTone, QuestionOutline, RadarChartOutline, RadiusBottomleftOutline, RadiusBottomrightOutline, RadiusSettingOutline, RadiusUpleftOutline, RadiusUprightOutline, ReadFill, ReadOutline, ReconciliationFill, ReconciliationOutline, ReconciliationTwoTone, RedEnvelopeFill, RedEnvelopeOutline, RedEnvelopeTwoTone, RedditCircleFill, RedditOutline, RedditSquareFill, RedoOutline, ReloadOutline, RestFill, RestOutline, RestTwoTone, RetweetOutline, RightCircleFill, RightCircleOutline, RightCircleTwoTone, RightOutline, RightSquareFill, RightSquareOutline, RightSquareTwoTone, RiseOutline, RobotFill, RobotOutline, RocketFill, RocketOutline, RocketTwoTone, RollbackOutline, RotateLeftOutline, RotateRightOutline, SafetyCertificateFill, SafetyCertificateOutline, SafetyCertificateTwoTone, SafetyOutline, SaveFill, SaveOutline, SaveTwoTone, ScanOutline, ScheduleFill, ScheduleOutline, ScheduleTwoTone, ScissorOutline, SearchOutline, SecurityScanFill, SecurityScanOutline, SecurityScanTwoTone, SelectOutline, SendOutline, SettingFill, SettingOutline, SettingTwoTone, ShakeOutline, ShareAltOutline, ShopFill, ShopOutline, ShopTwoTone, ShoppingCartOutline, ShoppingFill, ShoppingOutline, ShoppingTwoTone, ShrinkOutline, SignalFill, SisternodeOutline, SketchCircleFill, SketchOutline, SketchSquareFill, SkinFill, SkinOutline, SkinTwoTone, SkypeFill, SkypeOutline, SlackCircleFill, SlackOutline, SlackSquareFill, SlackSquareOutline, SlidersFill, SlidersOutline, SlidersTwoTone, SmallDashOutline, SmileFill, SmileOutline, SmileTwoTone, SnippetsFill, SnippetsOutline, SnippetsTwoTone, SolutionOutline, SortAscendingOutline, SortDescendingOutline, SoundFill, SoundOutline, SoundTwoTone, SplitCellsOutline, StarFill, StarOutline, StarTwoTone, StepBackwardFill, StepBackwardOutline, StepForwardFill, StepForwardOutline, StockOutline, StopFill, StopOutline, StopTwoTone, StrikethroughOutline, SubnodeOutline, SwapLeftOutline, SwapOutline, SwapRightOutline, SwitcherFill, SwitcherOutline, SwitcherTwoTone, SyncOutline, TableOutline, TabletFill, TabletOutline, TabletTwoTone, TagFill, TagOutline, TagTwoTone, TagsFill, TagsOutline, TagsTwoTone, TaobaoCircleFill, TaobaoCircleOutline, TaobaoOutline, TaobaoSquareFill, TeamOutline, ThunderboltFill, ThunderboltOutline, ThunderboltTwoTone, ToTopOutline, ToolFill, ToolOutline, ToolTwoTone, TrademarkCircleFill, TrademarkCircleOutline, TrademarkCircleTwoTone, TrademarkOutline, TransactionOutline, TranslationOutline, TrophyFill, TrophyOutline, TrophyTwoTone, TwitterCircleFill, TwitterOutline, TwitterSquareFill, UnderlineOutline, UndoOutline, UngroupOutline, UnlockFill, UnlockOutline, UnlockTwoTone, UnorderedListOutline, UpCircleFill, UpCircleOutline, UpCircleTwoTone, UpOutline, UpSquareFill, UpSquareOutline, UpSquareTwoTone, UploadOutline, UsbFill, UsbOutline, UsbTwoTone, UserAddOutline, UserDeleteOutline, UserOutline, UserSwitchOutline, UsergroupAddOutline, UsergroupDeleteOutline, VerifiedOutline, VerticalAlignBottomOutline, VerticalAlignMiddleOutline, VerticalAlignTopOutline, VerticalLeftOutline, VerticalRightOutline, VideoCameraAddOutline, VideoCameraFill, VideoCameraOutline, VideoCameraTwoTone, WalletFill, WalletOutline, WalletTwoTone, WarningFill, WarningOutline, WarningTwoTone, WechatFill, WechatOutline, WeiboCircleFill, WeiboCircleOutline, WeiboOutline, WeiboSquareFill, WeiboSquareOutline, WhatsAppOutline, WifiOutline, WindowsFill, WindowsOutline, WomanOutline, YahooFill, YahooOutline, YoutubeFill, YoutubeOutline, YuqueFill, YuqueOutline, ZhihuCircleFill, ZhihuOutline, ZhihuSquareFill, ZoomInOutline, ZoomOutOutline };\n\n", "import * as i0 from '@angular/core';\nimport { InjectionToken, Injectable, Optional, Inject, Self, Directive, Input, NgModule } from '@angular/core';\nimport { __decorate } from 'tslib';\nimport { Subject, from } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { IconService, IconDirective } from '@ant-design/icons-angular';\nimport { warn } from 'ng-zorro-antd/core/logger';\nimport { InputBoolean } from 'ng-zorro-antd/core/util';\nimport { DOCUMENT } from '@angular/common';\nimport { BarsOutline, CalendarOutline, CaretUpFill, CaretUpOutline, CaretDownFill, CaretDownOutline, CheckCircleFill, CheckCircleOutline, CheckOutline, ClockCircleOutline, CloseCircleOutline, CloseCircleFill, CloseOutline, CopyOutline, DeleteOutline, DoubleLeftOutline, DoubleRightOutline, DownOutline, EditOutline, EllipsisOutline, ExclamationCircleFill, ExclamationCircleOutline, EyeOutline, FileFill, FileOutline, FilterFill, InfoCircleFill, InfoCircleOutline, LeftOutline, LoadingOutline, PaperClipOutline, QuestionCircleOutline, RightOutline, RotateRightOutline, RotateLeftOutline, StarFill, SearchOutline, UploadOutline, VerticalAlignTopOutline, UpOutline, SwapRightOutline, ZoomInOutline, ZoomOutOutline } from '@ant-design/icons-angular/icons';\nimport * as i1 from '@angular/platform-browser';\nimport * as i2 from 'ng-zorro-antd/core/config';\nimport * as i3 from '@angular/cdk/platform';\nimport * as i4 from '@angular/common/http';\n\n/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\nconst NZ_ICONS_USED_BY_ZORRO = [BarsOutline, CalendarOutline, CaretUpFill, CaretUpOutline, CaretDownFill, CaretDownOutline, CheckCircleFill, CheckCircleOutline, CheckOutline, ClockCircleOutline, CloseCircleOutline, CloseCircleFill, CloseOutline, CopyOutline, DeleteOutline, DoubleLeftOutline, DoubleRightOutline, DownOutline, EditOutline, EllipsisOutline, ExclamationCircleFill, ExclamationCircleOutline, EyeOutline, FileFill, FileOutline, FilterFill, InfoCircleFill, InfoCircleOutline, LeftOutline, LoadingOutline, PaperClipOutline, QuestionCircleOutline, RightOutline, RotateRightOutline, RotateLeftOutline, StarFill, SearchOutline, StarFill, UploadOutline, VerticalAlignTopOutline, UpOutline, SwapRightOutline, ZoomInOutline, ZoomOutOutline];\nconst NZ_ICONS = new InjectionToken('nz_icons');\nconst NZ_ICON_DEFAULT_TWOTONE_COLOR = new InjectionToken('nz_icon_default_twotone_color');\nconst DEFAULT_TWOTONE_COLOR = '#1890ff';\n/**\n * It should be a global singleton, otherwise registered icons could not be found.\n */\nclass NzIconService extends IconService {\n get _disableDynamicLoading() {\n return !this.platform.isBrowser;\n }\n ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n this.subscription = null;\n }\n }\n normalizeSvgElement(svg) {\n if (!svg.getAttribute('viewBox')) {\n this._renderer.setAttribute(svg, 'viewBox', '0 0 1024 1024');\n }\n if (!svg.getAttribute('width') || !svg.getAttribute('height')) {\n this._renderer.setAttribute(svg, 'width', '1em');\n this._renderer.setAttribute(svg, 'height', '1em');\n }\n if (!svg.getAttribute('fill')) {\n this._renderer.setAttribute(svg, 'fill', 'currentColor');\n }\n }\n fetchFromIconfont(opt) {\n const {\n scriptUrl\n } = opt;\n if (this._document && !this.iconfontCache.has(scriptUrl)) {\n const script = this._renderer.createElement('script');\n this._renderer.setAttribute(script, 'src', scriptUrl);\n this._renderer.setAttribute(script, 'data-namespace', scriptUrl.replace(/^(https?|http):/g, ''));\n this._renderer.appendChild(this._document.body, script);\n this.iconfontCache.add(scriptUrl);\n }\n }\n createIconfontIcon(type) {\n return this._createSVGElementFromString(``);\n }\n constructor(rendererFactory, sanitizer, nzConfigService, platform, handler, _document, icons) {\n super(rendererFactory, handler, _document, sanitizer, [...NZ_ICONS_USED_BY_ZORRO, ...(icons || [])]);\n this.nzConfigService = nzConfigService;\n this.platform = platform;\n this.configUpdated$ = new Subject();\n this.iconfontCache = new Set();\n this.subscription = null;\n this.onConfigChange();\n this.configDefaultTwotoneColor();\n this.configDefaultTheme();\n }\n onConfigChange() {\n this.subscription = this.nzConfigService.getConfigChangeEventForComponent('icon').subscribe(() => {\n this.configDefaultTwotoneColor();\n this.configDefaultTheme();\n this.configUpdated$.next();\n });\n }\n configDefaultTheme() {\n const iconConfig = this.getConfig();\n this.defaultTheme = iconConfig.nzTheme || 'outline';\n }\n configDefaultTwotoneColor() {\n const iconConfig = this.getConfig();\n const defaultTwotoneColor = iconConfig.nzTwotoneColor || DEFAULT_TWOTONE_COLOR;\n let primaryColor = DEFAULT_TWOTONE_COLOR;\n if (defaultTwotoneColor) {\n if (defaultTwotoneColor.startsWith('#')) {\n primaryColor = defaultTwotoneColor;\n } else {\n warn('Twotone color must be a hex color!');\n }\n }\n this.twoToneColor = {\n primaryColor\n };\n }\n getConfig() {\n return this.nzConfigService.getConfigForComponent('icon') || {};\n }\n static {\n this.ɵfac = function NzIconService_Factory(t) {\n return new (t || NzIconService)(i0.ɵɵinject(i0.RendererFactory2), i0.ɵɵinject(i1.DomSanitizer), i0.ɵɵinject(i2.NzConfigService), i0.ɵɵinject(i3.Platform), i0.ɵɵinject(i4.HttpBackend, 8), i0.ɵɵinject(DOCUMENT, 8), i0.ɵɵinject(NZ_ICONS, 8));\n };\n }\n static {\n this.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: NzIconService,\n factory: NzIconService.ɵfac,\n providedIn: 'root'\n });\n }\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(NzIconService, [{\n type: Injectable,\n args: [{\n providedIn: 'root'\n }]\n }], () => [{\n type: i0.RendererFactory2\n }, {\n type: i1.DomSanitizer\n }, {\n type: i2.NzConfigService\n }, {\n type: i3.Platform\n }, {\n type: i4.HttpBackend,\n decorators: [{\n type: Optional\n }]\n }, {\n type: undefined,\n decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [DOCUMENT]\n }]\n }, {\n type: undefined,\n decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [NZ_ICONS]\n }]\n }], null);\n})();\nconst NZ_ICONS_PATCH = new InjectionToken('nz_icons_patch');\nclass NzIconPatchService {\n constructor(extraIcons, rootIconService) {\n this.extraIcons = extraIcons;\n this.rootIconService = rootIconService;\n this.patched = false;\n }\n doPatch() {\n if (this.patched) {\n return;\n }\n this.extraIcons.forEach(iconDefinition => this.rootIconService.addIcon(iconDefinition));\n this.patched = true;\n }\n static {\n this.ɵfac = function NzIconPatchService_Factory(t) {\n return new (t || NzIconPatchService)(i0.ɵɵinject(NZ_ICONS_PATCH, 2), i0.ɵɵinject(NzIconService));\n };\n }\n static {\n this.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: NzIconPatchService,\n factory: NzIconPatchService.ɵfac\n });\n }\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(NzIconPatchService, [{\n type: Injectable\n }], () => [{\n type: undefined,\n decorators: [{\n type: Self\n }, {\n type: Inject,\n args: [NZ_ICONS_PATCH]\n }]\n }, {\n type: NzIconService\n }], null);\n})();\nclass NzIconDirective extends IconDirective {\n set nzSpin(value) {\n this.spin = value;\n }\n set nzType(value) {\n this.type = value;\n }\n set nzTheme(value) {\n this.theme = value;\n }\n set nzTwotoneColor(value) {\n this.twoToneColor = value;\n }\n set nzIconfont(value) {\n this.iconfont = value;\n }\n constructor(ngZone, changeDetectorRef, elementRef, iconService, renderer, iconPatch) {\n super(iconService, elementRef, renderer);\n this.ngZone = ngZone;\n this.changeDetectorRef = changeDetectorRef;\n this.iconService = iconService;\n this.renderer = renderer;\n this.cacheClassName = null;\n this.nzRotate = 0;\n this.spin = false;\n this.destroy$ = new Subject();\n if (iconPatch) {\n iconPatch.doPatch();\n }\n this.el = elementRef.nativeElement;\n }\n ngOnChanges(changes) {\n const {\n nzType,\n nzTwotoneColor,\n nzSpin,\n nzTheme,\n nzRotate\n } = changes;\n if (nzType || nzTwotoneColor || nzSpin || nzTheme) {\n this.changeIcon2();\n } else if (nzRotate) {\n this.handleRotate(this.el.firstChild);\n } else {\n this._setSVGElement(this.iconService.createIconfontIcon(`#${this.iconfont}`));\n }\n }\n ngOnInit() {\n this.renderer.setAttribute(this.el, 'class', `anticon ${this.el.className}`.trim());\n }\n /**\n * If custom content is provided, try to normalize SVG elements.\n */\n ngAfterContentChecked() {\n if (!this.type) {\n const children = this.el.children;\n let length = children.length;\n if (!this.type && children.length) {\n while (length--) {\n const child = children[length];\n if (child.tagName.toLowerCase() === 'svg') {\n this.iconService.normalizeSvgElement(child);\n }\n }\n }\n }\n }\n ngOnDestroy() {\n this.destroy$.next();\n }\n /**\n * Replacement of `changeIcon` for more modifications.\n */\n changeIcon2() {\n this.setClassName();\n // The Angular zone is left deliberately before the SVG is set\n // since `_changeIcon` spawns asynchronous tasks as promise and\n // HTTP calls. This is used to reduce the number of change detections\n // while the icon is being loaded dynamically.\n this.ngZone.runOutsideAngular(() => {\n from(this._changeIcon()).pipe(takeUntil(this.destroy$)).subscribe({\n next: svgOrRemove => {\n // Get back into the Angular zone after completing all the tasks.\n // Since we manually run change detection locally, we have to re-enter\n // the zone because the change detection might also be run on other local\n // components, leading them to handle template functions outside of the Angular zone.\n this.ngZone.run(() => {\n // The _changeIcon method would call Renderer to remove the element of the old icon,\n // which would call `markElementAsRemoved` eventually,\n // so we should call `detectChanges` to tell Angular remove the DOM node.\n // #7186\n this.changeDetectorRef.detectChanges();\n if (svgOrRemove) {\n this.setSVGData(svgOrRemove);\n this.handleSpin(svgOrRemove);\n this.handleRotate(svgOrRemove);\n }\n });\n },\n error: warn\n });\n });\n }\n handleSpin(svg) {\n if (this.spin || this.type === 'loading') {\n this.renderer.addClass(svg, 'anticon-spin');\n } else {\n this.renderer.removeClass(svg, 'anticon-spin');\n }\n }\n handleRotate(svg) {\n if (this.nzRotate) {\n this.renderer.setAttribute(svg, 'style', `transform: rotate(${this.nzRotate}deg)`);\n } else {\n this.renderer.removeAttribute(svg, 'style');\n }\n }\n setClassName() {\n if (this.cacheClassName) {\n this.renderer.removeClass(this.el, this.cacheClassName);\n }\n this.cacheClassName = `anticon-${this.type}`;\n this.renderer.addClass(this.el, this.cacheClassName);\n }\n setSVGData(svg) {\n this.renderer.setAttribute(svg, 'data-icon', this.type);\n this.renderer.setAttribute(svg, 'aria-hidden', 'true');\n }\n static {\n this.ɵfac = function NzIconDirective_Factory(t) {\n return new (t || NzIconDirective)(i0.ɵɵdirectiveInject(i0.NgZone), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(NzIconService), i0.ɵɵdirectiveInject(i0.Renderer2), i0.ɵɵdirectiveInject(NzIconPatchService, 8));\n };\n }\n static {\n this.ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: NzIconDirective,\n selectors: [[\"\", \"nz-icon\", \"\"]],\n hostVars: 2,\n hostBindings: function NzIconDirective_HostBindings(rf, ctx) {\n if (rf & 2) {\n i0.ɵɵclassProp(\"anticon\", true);\n }\n },\n inputs: {\n nzSpin: \"nzSpin\",\n nzRotate: \"nzRotate\",\n nzType: \"nzType\",\n nzTheme: \"nzTheme\",\n nzTwotoneColor: \"nzTwotoneColor\",\n nzIconfont: \"nzIconfont\"\n },\n exportAs: [\"nzIcon\"],\n standalone: true,\n features: [i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature]\n });\n }\n}\n__decorate([InputBoolean()], NzIconDirective.prototype, \"nzSpin\", null);\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(NzIconDirective, [{\n type: Directive,\n args: [{\n selector: '[nz-icon]',\n exportAs: 'nzIcon',\n host: {\n '[class.anticon]': 'true'\n },\n standalone: true\n }]\n }], () => [{\n type: i0.NgZone\n }, {\n type: i0.ChangeDetectorRef\n }, {\n type: i0.ElementRef\n }, {\n type: NzIconService\n }, {\n type: i0.Renderer2\n }, {\n type: NzIconPatchService,\n decorators: [{\n type: Optional\n }]\n }], {\n nzSpin: [{\n type: Input\n }],\n nzRotate: [{\n type: Input\n }],\n nzType: [{\n type: Input\n }],\n nzTheme: [{\n type: Input\n }],\n nzTwotoneColor: [{\n type: Input\n }],\n nzIconfont: [{\n type: Input\n }]\n });\n})();\n\n/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\nclass NzIconModule {\n static forRoot(icons) {\n return {\n ngModule: NzIconModule,\n providers: [{\n provide: NZ_ICONS,\n useValue: icons\n }]\n };\n }\n static forChild(icons) {\n return {\n ngModule: NzIconModule,\n providers: [NzIconPatchService, {\n provide: NZ_ICONS_PATCH,\n useValue: icons\n }]\n };\n }\n static {\n this.ɵfac = function NzIconModule_Factory(t) {\n return new (t || NzIconModule)();\n };\n }\n static {\n this.ɵmod = /* @__PURE__ */i0.ɵɵdefineNgModule({\n type: NzIconModule,\n imports: [NzIconDirective],\n exports: [NzIconDirective]\n });\n }\n static {\n this.ɵinj = /* @__PURE__ */i0.ɵɵdefineInjector({});\n }\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(NzIconModule, [{\n type: NgModule,\n args: [{\n imports: [NzIconDirective],\n exports: [NzIconDirective]\n }]\n }], null, null);\n})();\n\n/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { DEFAULT_TWOTONE_COLOR, NZ_ICONS, NZ_ICONS_PATCH, NZ_ICONS_USED_BY_ZORRO, NZ_ICON_DEFAULT_TWOTONE_COLOR, NzIconDirective, NzIconModule, NzIconPatchService, NzIconService };\n"], "mappings": "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", "names": ["warn", "name"] }