{"version":3,"file":"default-node_modules_fortawesome_angular-fontawesome_fesm2022_angular-fontawesome_mjs.js","mappings":"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","sources":["./node_modules/@fortawesome/angular-fontawesome/fesm2022/angular-fontawesome.mjs","./node_modules/@fortawesome/fontawesome-svg-core/index.mjs"],"sourcesContent":["import * as i0 from '@angular/core';\nimport { Injectable, Directive, Input, Component, inject, Optional, HostBinding, NgModule } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { dom, config, icon, parse, counter, text } from '@fortawesome/fontawesome-svg-core';\nimport * as i2 from '@angular/platform-browser';\n\nconst faWarnIfIconDefinitionMissing = (iconSpec) => {\n throw new Error(`Could not find icon with iconName=${iconSpec.iconName} and prefix=${iconSpec.prefix} in the icon library.`);\n};\n\nconst faWarnIfIconSpecMissing = () => {\n throw new Error('Property `icon` is required for `fa-icon`/`fa-duotone-icon` components.');\n};\n\nconst isKnownRotateValue = (rotate) => rotate != null &&\n (rotate === 90 || rotate === 180 || rotate === 270 || rotate === '90' || rotate === '180' || rotate === '270');\n/**\n * Fontawesome class list.\n * Returns classes array by props.\n */\nconst faClassList = (props) => {\n const knownRotateValue = isKnownRotateValue(props.rotate);\n const classes = {\n [`fa-${props.animation}`]: props.animation != null && !props.animation.startsWith('spin'),\n 'fa-spin': props.animation === 'spin' || props.animation === 'spin-reverse',\n 'fa-spin-pulse': props.animation === 'spin-pulse' || props.animation === 'spin-pulse-reverse',\n 'fa-spin-reverse': props.animation === 'spin-reverse' || props.animation === 'spin-pulse-reverse',\n // According to https://fontawesome.com/docs/web/style/animate#spin fa-pulse\n // class is deprecated, remove the below line when Font Awesome 5 support\n // is dropped.\n 'fa-pulse': props.animation === 'spin-pulse' || props.animation === 'spin-pulse-reverse',\n 'fa-fw': props.fixedWidth,\n 'fa-border': props.border,\n 'fa-inverse': props.inverse,\n 'fa-layers-counter': props.counter,\n 'fa-flip-horizontal': props.flip === 'horizontal' || props.flip === 'both',\n 'fa-flip-vertical': props.flip === 'vertical' || props.flip === 'both',\n [`fa-${props.size}`]: props.size !== null,\n [`fa-rotate-${props.rotate}`]: knownRotateValue,\n 'fa-rotate-by': props.rotate != null && !knownRotateValue,\n [`fa-pull-${props.pull}`]: props.pull !== null,\n [`fa-stack-${props.stackItemSize}`]: props.stackItemSize != null,\n };\n return Object.keys(classes)\n .map((key) => (classes[key] ? key : null))\n .filter((key) => key);\n};\n\nconst cssInserted = new WeakSet();\nconst autoCssId = 'fa-auto-css';\n/**\n * Ensure that Font Awesome CSS is inserted into the page.\n *\n * SVG Core has the same logic to insert the same styles into the page, however\n * it's not aware of Angular SSR and therefore styles won't be added in that\n * context leading to https://github.com/FortAwesome/angular-fontawesome/issues/48.\n * That's why the same logic is duplicated here.\n *\n * @param document - Document.\n * @param config - Font Awesome configuration.\n */\nfunction ensureCss(document, config) {\n if (!config.autoAddCss) {\n return;\n }\n if (cssInserted.has(document)) {\n return;\n }\n // Prevent adding the same styles again after hydration.\n if (document.getElementById(autoCssId) != null) {\n config.autoAddCss = false;\n cssInserted.add(document);\n return;\n }\n const style = document.createElement('style');\n style.setAttribute('type', 'text/css');\n style.setAttribute('id', autoCssId);\n style.innerHTML = dom.css();\n const headChildren = document.head.childNodes;\n let beforeChild = null;\n for (let i = headChildren.length - 1; i > -1; i--) {\n const child = headChildren[i];\n const tagName = child.nodeName.toUpperCase();\n if (['STYLE', 'LINK'].indexOf(tagName) > -1) {\n beforeChild = child;\n }\n }\n document.head.insertBefore(style, beforeChild);\n // Prevent SVG Core from adding the same styles.\n //\n // As the logic is present in two places and SVG Core is not aware about\n // this library, it may lead to styles being added twice. This can only\n // occur when icon is rendered by SVG Core before the Angular component\n // and should not have any significant negative impact. This is a rare\n // use case, and it's tricky to prevent, so we accept this behavior. Consumer\n // can choose to disable `FaConfig.autoAddCss` and add styles manually to\n // prevent this from happening.\n config.autoAddCss = false;\n cssInserted.add(document);\n}\n\n/**\n * Returns if is IconLookup or not.\n */\nconst isIconLookup = (i) => i.prefix !== undefined && i.iconName !== undefined;\n\n/**\n * Normalizing icon spec.\n */\nconst faNormalizeIconSpec = (iconSpec, defaultPrefix) => {\n if (isIconLookup(iconSpec)) {\n return iconSpec;\n }\n if (Array.isArray(iconSpec) && iconSpec.length === 2) {\n return { prefix: iconSpec[0], iconName: iconSpec[1] };\n }\n return { prefix: defaultPrefix, iconName: iconSpec };\n};\n\nclass FaConfig {\n constructor() {\n /**\n * Default prefix to use, when one is not provided with the icon name.\n *\n * @default 'fas'\n */\n this.defaultPrefix = 'fas';\n /**\n * Provides a fallback icon to use whilst main icon is being loaded asynchronously.\n * When value is null, then fa-icon component will throw an error if icon input is missing.\n * When value is not null, then the provided icon will be used as a fallback icon if icon input is missing.\n *\n * @default null\n */\n this.fallbackIcon = null;\n this._autoAddCss = true;\n }\n /**\n * Automatically add Font Awesome styles to the document when icon is rendered.\n *\n * For the majority of the cases the automatically added CSS is sufficient,\n * please refer to the linked guide for more information on when to disable\n * this feature.\n *\n * @see {@link: https://github.com/FortAwesome/angular-fontawesome/blob/main/docs/guide/adding-css.md}\n * @default true\n */\n set autoAddCss(value) {\n config.autoAddCss = value;\n this._autoAddCss = value;\n }\n get autoAddCss() {\n return this._autoAddCss;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FaConfig, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FaConfig, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FaConfig, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n\nclass FaIconLibrary {\n constructor() {\n this.definitions = {};\n }\n addIcons(...icons) {\n for (const icon of icons) {\n if (!(icon.prefix in this.definitions)) {\n this.definitions[icon.prefix] = {};\n }\n this.definitions[icon.prefix][icon.iconName] = icon;\n for (const alias of icon.icon[2]) {\n if (typeof alias === 'string') {\n this.definitions[icon.prefix][alias] = icon;\n }\n }\n }\n }\n addIconPacks(...packs) {\n for (const pack of packs) {\n const icons = Object.keys(pack).map((key) => pack[key]);\n this.addIcons(...icons);\n }\n }\n getIconDefinition(prefix, name) {\n if (prefix in this.definitions && name in this.definitions[prefix]) {\n return this.definitions[prefix][name];\n }\n return null;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FaIconLibrary, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FaIconLibrary, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FaIconLibrary, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n\nclass FaStackItemSizeDirective {\n constructor() {\n /**\n * Specify whether icon inside {@link FaStackComponent} should be rendered in\n * regular size (1x) or as a larger icon (2x).\n */\n this.stackItemSize = '1x';\n }\n ngOnChanges(changes) {\n if ('size' in changes) {\n throw new Error('fa-icon is not allowed to customize size when used inside fa-stack. ' +\n 'Set size on the enclosing fa-stack instead: ....');\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FaStackItemSizeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"19.0.0\", type: FaStackItemSizeDirective, isStandalone: true, selector: \"fa-icon[stackItemSize],fa-duotone-icon[stackItemSize]\", inputs: { stackItemSize: \"stackItemSize\", size: \"size\" }, usesOnChanges: true, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FaStackItemSizeDirective, decorators: [{\n type: Directive,\n args: [{\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'fa-icon[stackItemSize],fa-duotone-icon[stackItemSize]',\n }]\n }], propDecorators: { stackItemSize: [{\n type: Input\n }], size: [{\n type: Input\n }] } });\n\nclass FaStackComponent {\n constructor(renderer, elementRef) {\n this.renderer = renderer;\n this.elementRef = elementRef;\n }\n ngOnInit() {\n this.renderer.addClass(this.elementRef.nativeElement, 'fa-stack');\n }\n ngOnChanges(changes) {\n if ('size' in changes) {\n if (changes.size.currentValue != null) {\n this.renderer.addClass(this.elementRef.nativeElement, `fa-${changes.size.currentValue}`);\n }\n if (changes.size.previousValue != null) {\n this.renderer.removeClass(this.elementRef.nativeElement, `fa-${changes.size.previousValue}`);\n }\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FaStackComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"19.0.0\", type: FaStackComponent, isStandalone: true, selector: \"fa-stack\", inputs: { size: \"size\" }, usesOnChanges: true, ngImport: i0, template: ``, isInline: true }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FaStackComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'fa-stack',\n template: ``,\n }]\n }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }], propDecorators: { size: [{\n type: Input\n }] } });\n\nclass FaIconComponent {\n constructor(sanitizer, config, iconLibrary, stackItem, stack) {\n this.sanitizer = sanitizer;\n this.config = config;\n this.iconLibrary = iconLibrary;\n this.stackItem = stackItem;\n this.document = inject(DOCUMENT);\n if (stack != null && stackItem == null) {\n console.error('FontAwesome: fa-icon and fa-duotone-icon elements must specify stackItemSize attribute when wrapped into ' +\n 'fa-stack. Example: .');\n }\n }\n ngOnChanges(changes) {\n if (this.icon == null && this.config.fallbackIcon == null) {\n faWarnIfIconSpecMissing();\n return;\n }\n if (changes) {\n const iconDefinition = this.findIconDefinition(this.icon ?? this.config.fallbackIcon);\n if (iconDefinition != null) {\n const params = this.buildParams();\n ensureCss(this.document, this.config);\n const renderedIcon = icon(iconDefinition, params);\n this.renderedIconHTML = this.sanitizer.bypassSecurityTrustHtml(renderedIcon.html.join('\\n'));\n }\n }\n }\n /**\n * Programmatically trigger rendering of the icon.\n *\n * This method is useful, when creating {@link FaIconComponent} dynamically or\n * changing its inputs programmatically as in these cases icon won't be\n * re-rendered automatically.\n */\n render() {\n this.ngOnChanges({});\n }\n findIconDefinition(i) {\n const lookup = faNormalizeIconSpec(i, this.config.defaultPrefix);\n if ('icon' in lookup) {\n return lookup;\n }\n const definition = this.iconLibrary.getIconDefinition(lookup.prefix, lookup.iconName);\n if (definition != null) {\n return definition;\n }\n faWarnIfIconDefinitionMissing(lookup);\n return null;\n }\n buildParams() {\n const classOpts = {\n flip: this.flip,\n animation: this.animation,\n border: this.border,\n inverse: this.inverse,\n size: this.size || null,\n pull: this.pull || null,\n rotate: this.rotate || null,\n fixedWidth: typeof this.fixedWidth === 'boolean' ? this.fixedWidth : this.config.fixedWidth,\n stackItemSize: this.stackItem != null ? this.stackItem.stackItemSize : null,\n };\n const parsedTransform = typeof this.transform === 'string' ? parse.transform(this.transform) : this.transform;\n const styles = {};\n if (classOpts.rotate != null && !isKnownRotateValue(classOpts.rotate)) {\n styles['--fa-rotate-angle'] = `${classOpts.rotate}`;\n }\n return {\n title: this.title,\n transform: parsedTransform,\n classes: faClassList(classOpts),\n mask: this.mask != null ? this.findIconDefinition(this.mask) : null,\n symbol: this.symbol,\n attributes: {\n role: this.a11yRole,\n },\n styles,\n };\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FaIconComponent, deps: [{ token: i2.DomSanitizer }, { token: FaConfig }, { token: FaIconLibrary }, { token: FaStackItemSizeDirective, optional: true }, { token: FaStackComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"19.0.0\", type: FaIconComponent, isStandalone: true, selector: \"fa-icon\", inputs: { icon: \"icon\", title: \"title\", animation: \"animation\", mask: \"mask\", flip: \"flip\", size: \"size\", pull: \"pull\", border: \"border\", inverse: \"inverse\", symbol: \"symbol\", rotate: \"rotate\", fixedWidth: \"fixedWidth\", transform: \"transform\", a11yRole: \"a11yRole\" }, host: { properties: { \"attr.title\": \"title\", \"innerHTML\": \"this.renderedIconHTML\" }, classAttribute: \"ng-fa-icon\" }, usesOnChanges: true, ngImport: i0, template: ``, isInline: true }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FaIconComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'fa-icon',\n template: ``,\n host: {\n class: 'ng-fa-icon',\n '[attr.title]': 'title',\n },\n }]\n }], ctorParameters: () => [{ type: i2.DomSanitizer }, { type: FaConfig }, { type: FaIconLibrary }, { type: FaStackItemSizeDirective, decorators: [{\n type: Optional\n }] }, { type: FaStackComponent, decorators: [{\n type: Optional\n }] }], propDecorators: { icon: [{\n type: Input\n }], title: [{\n type: Input\n }], animation: [{\n type: Input\n }], mask: [{\n type: Input\n }], flip: [{\n type: Input\n }], size: [{\n type: Input\n }], pull: [{\n type: Input\n }], border: [{\n type: Input\n }], inverse: [{\n type: Input\n }], symbol: [{\n type: Input\n }], rotate: [{\n type: Input\n }], fixedWidth: [{\n type: Input\n }], transform: [{\n type: Input\n }], a11yRole: [{\n type: Input\n }], renderedIconHTML: [{\n type: HostBinding,\n args: ['innerHTML']\n }] } });\n\nclass FaDuotoneIconComponent extends FaIconComponent {\n findIconDefinition(i) {\n const definition = super.findIconDefinition(i);\n if (definition != null && !Array.isArray(definition.icon[4])) {\n throw new Error('The specified icon does not appear to be a Duotone icon. ' +\n 'Check that you specified the correct style: ' +\n ` ` +\n `or use: instead.`);\n }\n return definition;\n }\n buildParams() {\n const params = super.buildParams();\n if (this.swapOpacity === true || this.swapOpacity === 'true') {\n if (Array.isArray(params.classes)) {\n params.classes.push('fa-swap-opacity');\n }\n else if (typeof params.classes === 'string') {\n params.classes = [params.classes, 'fa-swap-opacity'];\n }\n else {\n params.classes = ['fa-swap-opacity'];\n }\n }\n if (params.styles == null) {\n params.styles = {};\n }\n if (this.primaryOpacity != null) {\n params.styles['--fa-primary-opacity'] = this.primaryOpacity.toString();\n }\n if (this.secondaryOpacity != null) {\n params.styles['--fa-secondary-opacity'] = this.secondaryOpacity.toString();\n }\n if (this.primaryColor != null) {\n params.styles['--fa-primary-color'] = this.primaryColor;\n }\n if (this.secondaryColor != null) {\n params.styles['--fa-secondary-color'] = this.secondaryColor;\n }\n return params;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FaDuotoneIconComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"19.0.0\", type: FaDuotoneIconComponent, isStandalone: true, selector: \"fa-duotone-icon\", inputs: { swapOpacity: \"swapOpacity\", primaryOpacity: \"primaryOpacity\", secondaryOpacity: \"secondaryOpacity\", primaryColor: \"primaryColor\", secondaryColor: \"secondaryColor\" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FaDuotoneIconComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'fa-duotone-icon',\n template: ``,\n }]\n }], propDecorators: { swapOpacity: [{\n type: Input\n }], primaryOpacity: [{\n type: Input\n }], secondaryOpacity: [{\n type: Input\n }], primaryColor: [{\n type: Input\n }], secondaryColor: [{\n type: Input\n }] } });\n\n/**\n * Warns if parent component not existing.\n */\nconst faWarnIfParentNotExist = (parent, parentName, childName) => {\n if (!parent) {\n throw new Error(`${childName} should be used as child of ${parentName} only.`);\n }\n};\n\n/**\n * Fontawesome layers.\n */\nclass FaLayersComponent {\n constructor(renderer, elementRef, config) {\n this.renderer = renderer;\n this.elementRef = elementRef;\n this.config = config;\n this.document = inject(DOCUMENT);\n }\n ngOnInit() {\n this.renderer.addClass(this.elementRef.nativeElement, 'fa-layers');\n ensureCss(this.document, this.config);\n this.fixedWidth = typeof this.fixedWidth === 'boolean' ? this.fixedWidth : this.config.fixedWidth;\n }\n ngOnChanges(changes) {\n if ('size' in changes) {\n if (changes.size.currentValue != null) {\n this.renderer.addClass(this.elementRef.nativeElement, `fa-${changes.size.currentValue}`);\n }\n if (changes.size.previousValue != null) {\n this.renderer.removeClass(this.elementRef.nativeElement, `fa-${changes.size.previousValue}`);\n }\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FaLayersComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: FaConfig }], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"19.0.0\", type: FaLayersComponent, isStandalone: true, selector: \"fa-layers\", inputs: { size: \"size\", fixedWidth: \"fixedWidth\" }, host: { properties: { \"class.fa-fw\": \"this.fixedWidth\" } }, usesOnChanges: true, ngImport: i0, template: ``, isInline: true }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FaLayersComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'fa-layers',\n template: ``,\n }]\n }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: FaConfig }], propDecorators: { size: [{\n type: Input\n }], fixedWidth: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['class.fa-fw']\n }] } });\n\nclass FaLayersCounterComponent {\n constructor(parent, sanitizer) {\n this.parent = parent;\n this.sanitizer = sanitizer;\n this.document = inject(DOCUMENT);\n this.config = inject(FaConfig);\n faWarnIfParentNotExist(this.parent, 'FaLayersComponent', this.constructor.name);\n }\n ngOnChanges(changes) {\n if (changes) {\n const params = this.buildParams();\n this.updateContent(params);\n }\n }\n buildParams() {\n return {\n title: this.title,\n classes: this.position != null ? [`fa-layers-${this.position}`] : undefined,\n };\n }\n updateContent(params) {\n ensureCss(this.document, this.config);\n this.renderedHTML = this.sanitizer.bypassSecurityTrustHtml(counter(this.content || '', params).html.join(''));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FaLayersCounterComponent, deps: [{ token: FaLayersComponent, optional: true }, { token: i2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"19.0.0\", type: FaLayersCounterComponent, isStandalone: true, selector: \"fa-layers-counter\", inputs: { content: \"content\", title: \"title\", position: \"position\" }, host: { properties: { \"innerHTML\": \"this.renderedHTML\" }, classAttribute: \"ng-fa-layers-counter\" }, usesOnChanges: true, ngImport: i0, template: '', isInline: true }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FaLayersCounterComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'fa-layers-counter',\n template: '',\n host: {\n class: 'ng-fa-layers-counter',\n },\n }]\n }], ctorParameters: () => [{ type: FaLayersComponent, decorators: [{\n type: Optional\n }] }, { type: i2.DomSanitizer }], propDecorators: { content: [{\n type: Input\n }], title: [{\n type: Input\n }], position: [{\n type: Input\n }], renderedHTML: [{\n type: HostBinding,\n args: ['innerHTML']\n }] } });\n\nclass FaLayersTextComponent {\n constructor(parent, sanitizer) {\n this.parent = parent;\n this.sanitizer = sanitizer;\n this.document = inject(DOCUMENT);\n this.config = inject(FaConfig);\n faWarnIfParentNotExist(this.parent, 'FaLayersComponent', this.constructor.name);\n }\n ngOnChanges(changes) {\n if (changes) {\n const params = this.buildParams();\n this.updateContent(params);\n }\n }\n /**\n * Updating params by component props.\n */\n buildParams() {\n const classOpts = {\n flip: this.flip,\n border: this.border,\n inverse: this.inverse,\n size: this.size || null,\n pull: this.pull || null,\n rotate: this.rotate || null,\n fixedWidth: this.fixedWidth,\n };\n const parsedTransform = typeof this.transform === 'string' ? parse.transform(this.transform) : this.transform;\n const styles = {};\n if (classOpts.rotate != null && !isKnownRotateValue(classOpts.rotate)) {\n styles['--fa-rotate-angle'] = `${classOpts.rotate}`;\n }\n return {\n transform: parsedTransform,\n classes: faClassList(classOpts),\n title: this.title,\n styles,\n };\n }\n updateContent(params) {\n ensureCss(this.document, this.config);\n this.renderedHTML = this.sanitizer.bypassSecurityTrustHtml(text(this.content || '', params).html.join('\\n'));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FaLayersTextComponent, deps: [{ token: FaLayersComponent, optional: true }, { token: i2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"19.0.0\", type: FaLayersTextComponent, isStandalone: true, selector: \"fa-layers-text\", inputs: { content: \"content\", title: \"title\", flip: \"flip\", size: \"size\", pull: \"pull\", border: \"border\", inverse: \"inverse\", rotate: \"rotate\", fixedWidth: \"fixedWidth\", transform: \"transform\" }, host: { properties: { \"innerHTML\": \"this.renderedHTML\" }, classAttribute: \"ng-fa-layers-text\" }, usesOnChanges: true, ngImport: i0, template: '', isInline: true }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FaLayersTextComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'fa-layers-text',\n template: '',\n host: {\n class: 'ng-fa-layers-text',\n },\n }]\n }], ctorParameters: () => [{ type: FaLayersComponent, decorators: [{\n type: Optional\n }] }, { type: i2.DomSanitizer }], propDecorators: { content: [{\n type: Input\n }], title: [{\n type: Input\n }], flip: [{\n type: Input\n }], size: [{\n type: Input\n }], pull: [{\n type: Input\n }], border: [{\n type: Input\n }], inverse: [{\n type: Input\n }], rotate: [{\n type: Input\n }], fixedWidth: [{\n type: Input\n }], transform: [{\n type: Input\n }], renderedHTML: [{\n type: HostBinding,\n args: ['innerHTML']\n }] } });\n\nclass FontAwesomeModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FontAwesomeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"19.0.0\", ngImport: i0, type: FontAwesomeModule, imports: [FaIconComponent,\n FaDuotoneIconComponent,\n FaLayersComponent,\n FaLayersTextComponent,\n FaLayersCounterComponent,\n FaStackComponent,\n FaStackItemSizeDirective], exports: [FaIconComponent,\n FaDuotoneIconComponent,\n FaLayersComponent,\n FaLayersTextComponent,\n FaLayersCounterComponent,\n FaStackComponent,\n FaStackItemSizeDirective] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FontAwesomeModule }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"19.0.0\", ngImport: i0, type: FontAwesomeModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [\n FaIconComponent,\n FaDuotoneIconComponent,\n FaLayersComponent,\n FaLayersTextComponent,\n FaLayersCounterComponent,\n FaStackComponent,\n FaStackItemSizeDirective,\n ],\n exports: [\n FaIconComponent,\n FaDuotoneIconComponent,\n FaLayersComponent,\n FaLayersTextComponent,\n FaLayersCounterComponent,\n FaStackComponent,\n FaStackItemSizeDirective,\n ],\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { FaConfig, FaDuotoneIconComponent, FaIconComponent, FaIconLibrary, FaLayersComponent, FaLayersCounterComponent, FaLayersTextComponent, FaStackComponent, FaStackItemSizeDirective, FontAwesomeModule };\n","/*!\n * Font Awesome Free 6.7.1 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)\n * Copyright 2024 Fonticons, Inc.\n */\nfunction _defineProperty(e, r, t) {\n return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nfunction _inherits(t, e) {\n if (\"function\" != typeof e && null !== e) throw new TypeError(\"Super expression must either be null or a function\");\n t.prototype = Object.create(e && e.prototype, {\n constructor: {\n value: t,\n writable: !0,\n configurable: !0\n }\n }), Object.defineProperty(t, \"prototype\", {\n writable: !1\n }), e && _setPrototypeOf(t, e);\n}\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread2(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n _defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nfunction _setPrototypeOf(t, e) {\n return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {\n return t.__proto__ = e, t;\n }, _setPrototypeOf(t, e);\n}\nfunction _toPrimitive(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _wrapRegExp() {\n _wrapRegExp = function (e, r) {\n return new BabelRegExp(e, void 0, r);\n };\n var e = RegExp.prototype,\n r = new WeakMap();\n function BabelRegExp(e, t, p) {\n var o = RegExp(e, t);\n return r.set(o, p || r.get(e)), _setPrototypeOf(o, BabelRegExp.prototype);\n }\n function buildGroups(e, t) {\n var p = r.get(t);\n return Object.keys(p).reduce(function (r, t) {\n var o = p[t];\n if (\"number\" == typeof o) r[t] = e[o];else {\n for (var i = 0; void 0 === e[o[i]] && i + 1 < o.length;) i++;\n r[t] = e[o[i]];\n }\n return r;\n }, Object.create(null));\n }\n return _inherits(BabelRegExp, RegExp), BabelRegExp.prototype.exec = function (r) {\n var t = e.exec.call(this, r);\n if (t) {\n t.groups = buildGroups(t, this);\n var p = t.indices;\n p && (p.groups = buildGroups(p, this));\n }\n return t;\n }, BabelRegExp.prototype[Symbol.replace] = function (t, p) {\n if (\"string\" == typeof p) {\n var o = r.get(this);\n return e[Symbol.replace].call(this, t, p.replace(/\\$<([^>]+)>/g, function (e, r) {\n var t = o[r];\n return \"$\" + (Array.isArray(t) ? t.join(\"$\") : t);\n }));\n }\n if (\"function\" == typeof p) {\n var i = this;\n return e[Symbol.replace].call(this, t, function () {\n var e = arguments;\n return \"object\" != typeof e[e.length - 1] && (e = [].slice.call(e)).push(buildGroups(e, i)), p.apply(this, e);\n });\n }\n return e[Symbol.replace].call(this, t, p);\n }, _wrapRegExp.apply(this, arguments);\n}\n\nconst noop = () => {};\nlet _WINDOW = {};\nlet _DOCUMENT = {};\nlet _MUTATION_OBSERVER = null;\nlet _PERFORMANCE = {\n mark: noop,\n measure: noop\n};\ntry {\n if (typeof window !== 'undefined') _WINDOW = window;\n if (typeof document !== 'undefined') _DOCUMENT = document;\n if (typeof MutationObserver !== 'undefined') _MUTATION_OBSERVER = MutationObserver;\n if (typeof performance !== 'undefined') _PERFORMANCE = performance;\n} catch (e) {}\nconst {\n userAgent = ''\n} = _WINDOW.navigator || {};\nconst WINDOW = _WINDOW;\nconst DOCUMENT = _DOCUMENT;\nconst MUTATION_OBSERVER = _MUTATION_OBSERVER;\nconst PERFORMANCE = _PERFORMANCE;\nconst IS_BROWSER = !!WINDOW.document;\nconst IS_DOM = !!DOCUMENT.documentElement && !!DOCUMENT.head && typeof DOCUMENT.addEventListener === 'function' && typeof DOCUMENT.createElement === 'function';\nconst IS_IE = ~userAgent.indexOf('MSIE') || ~userAgent.indexOf('Trident/');\n\nvar p = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\\-\\ ]/,\n g = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i;\nvar S = {\n classic: {\n fa: \"solid\",\n fas: \"solid\",\n \"fa-solid\": \"solid\",\n far: \"regular\",\n \"fa-regular\": \"regular\",\n fal: \"light\",\n \"fa-light\": \"light\",\n fat: \"thin\",\n \"fa-thin\": \"thin\",\n fab: \"brands\",\n \"fa-brands\": \"brands\"\n },\n duotone: {\n fa: \"solid\",\n fad: \"solid\",\n \"fa-solid\": \"solid\",\n \"fa-duotone\": \"solid\",\n fadr: \"regular\",\n \"fa-regular\": \"regular\",\n fadl: \"light\",\n \"fa-light\": \"light\",\n fadt: \"thin\",\n \"fa-thin\": \"thin\"\n },\n sharp: {\n fa: \"solid\",\n fass: \"solid\",\n \"fa-solid\": \"solid\",\n fasr: \"regular\",\n \"fa-regular\": \"regular\",\n fasl: \"light\",\n \"fa-light\": \"light\",\n fast: \"thin\",\n \"fa-thin\": \"thin\"\n },\n \"sharp-duotone\": {\n fa: \"solid\",\n fasds: \"solid\",\n \"fa-solid\": \"solid\",\n fasdr: \"regular\",\n \"fa-regular\": \"regular\",\n fasdl: \"light\",\n \"fa-light\": \"light\",\n fasdt: \"thin\",\n \"fa-thin\": \"thin\"\n }\n },\n A = {\n GROUP: \"duotone-group\",\n SWAP_OPACITY: \"swap-opacity\",\n PRIMARY: \"primary\",\n SECONDARY: \"secondary\"\n },\n P = [\"fa-classic\", \"fa-duotone\", \"fa-sharp\", \"fa-sharp-duotone\"];\nvar s = \"classic\",\n t = \"duotone\",\n r = \"sharp\",\n o = \"sharp-duotone\",\n L = [s, t, r, o];\nvar G = {\n classic: {\n 900: \"fas\",\n 400: \"far\",\n normal: \"far\",\n 300: \"fal\",\n 100: \"fat\"\n },\n duotone: {\n 900: \"fad\",\n 400: \"fadr\",\n 300: \"fadl\",\n 100: \"fadt\"\n },\n sharp: {\n 900: \"fass\",\n 400: \"fasr\",\n 300: \"fasl\",\n 100: \"fast\"\n },\n \"sharp-duotone\": {\n 900: \"fasds\",\n 400: \"fasdr\",\n 300: \"fasdl\",\n 100: \"fasdt\"\n }\n };\nvar lt = {\n \"Font Awesome 6 Free\": {\n 900: \"fas\",\n 400: \"far\"\n },\n \"Font Awesome 6 Pro\": {\n 900: \"fas\",\n 400: \"far\",\n normal: \"far\",\n 300: \"fal\",\n 100: \"fat\"\n },\n \"Font Awesome 6 Brands\": {\n 400: \"fab\",\n normal: \"fab\"\n },\n \"Font Awesome 6 Duotone\": {\n 900: \"fad\",\n 400: \"fadr\",\n normal: \"fadr\",\n 300: \"fadl\",\n 100: \"fadt\"\n },\n \"Font Awesome 6 Sharp\": {\n 900: \"fass\",\n 400: \"fasr\",\n normal: \"fasr\",\n 300: \"fasl\",\n 100: \"fast\"\n },\n \"Font Awesome 6 Sharp Duotone\": {\n 900: \"fasds\",\n 400: \"fasdr\",\n normal: \"fasdr\",\n 300: \"fasdl\",\n 100: \"fasdt\"\n }\n };\nvar pt = new Map([[\"classic\", {\n defaultShortPrefixId: \"fas\",\n defaultStyleId: \"solid\",\n styleIds: [\"solid\", \"regular\", \"light\", \"thin\", \"brands\"],\n futureStyleIds: [],\n defaultFontWeight: 900\n }], [\"sharp\", {\n defaultShortPrefixId: \"fass\",\n defaultStyleId: \"solid\",\n styleIds: [\"solid\", \"regular\", \"light\", \"thin\"],\n futureStyleIds: [],\n defaultFontWeight: 900\n }], [\"duotone\", {\n defaultShortPrefixId: \"fad\",\n defaultStyleId: \"solid\",\n styleIds: [\"solid\", \"regular\", \"light\", \"thin\"],\n futureStyleIds: [],\n defaultFontWeight: 900\n }], [\"sharp-duotone\", {\n defaultShortPrefixId: \"fasds\",\n defaultStyleId: \"solid\",\n styleIds: [\"solid\", \"regular\", \"light\", \"thin\"],\n futureStyleIds: [],\n defaultFontWeight: 900\n }]]),\n xt = {\n classic: {\n solid: \"fas\",\n regular: \"far\",\n light: \"fal\",\n thin: \"fat\",\n brands: \"fab\"\n },\n duotone: {\n solid: \"fad\",\n regular: \"fadr\",\n light: \"fadl\",\n thin: \"fadt\"\n },\n sharp: {\n solid: \"fass\",\n regular: \"fasr\",\n light: \"fasl\",\n thin: \"fast\"\n },\n \"sharp-duotone\": {\n solid: \"fasds\",\n regular: \"fasdr\",\n light: \"fasdl\",\n thin: \"fasdt\"\n }\n };\nvar Ft = [\"fak\", \"fa-kit\", \"fakd\", \"fa-kit-duotone\"],\n St = {\n kit: {\n fak: \"kit\",\n \"fa-kit\": \"kit\"\n },\n \"kit-duotone\": {\n fakd: \"kit-duotone\",\n \"fa-kit-duotone\": \"kit-duotone\"\n }\n },\n At = [\"kit\"];\nvar Ct = {\n kit: {\n \"fa-kit\": \"fak\"\n },\n \"kit-duotone\": {\n \"fa-kit-duotone\": \"fakd\"\n }\n};\nvar Lt = [\"fak\", \"fakd\"],\n Wt = {\n kit: {\n fak: \"fa-kit\"\n },\n \"kit-duotone\": {\n fakd: \"fa-kit-duotone\"\n }\n };\nvar Et = {\n kit: {\n kit: \"fak\"\n },\n \"kit-duotone\": {\n \"kit-duotone\": \"fakd\"\n }\n };\n\nvar t$1 = {\n GROUP: \"duotone-group\",\n SWAP_OPACITY: \"swap-opacity\",\n PRIMARY: \"primary\",\n SECONDARY: \"secondary\"\n },\n r$1 = [\"fa-classic\", \"fa-duotone\", \"fa-sharp\", \"fa-sharp-duotone\"];\nvar bt$1 = [\"fak\", \"fa-kit\", \"fakd\", \"fa-kit-duotone\"];\nvar Yt = {\n \"Font Awesome Kit\": {\n 400: \"fak\",\n normal: \"fak\"\n },\n \"Font Awesome Kit Duotone\": {\n 400: \"fakd\",\n normal: \"fakd\"\n }\n };\nvar po = {\n classic: {\n \"fa-brands\": \"fab\",\n \"fa-duotone\": \"fad\",\n \"fa-light\": \"fal\",\n \"fa-regular\": \"far\",\n \"fa-solid\": \"fas\",\n \"fa-thin\": \"fat\"\n },\n duotone: {\n \"fa-regular\": \"fadr\",\n \"fa-light\": \"fadl\",\n \"fa-thin\": \"fadt\"\n },\n sharp: {\n \"fa-solid\": \"fass\",\n \"fa-regular\": \"fasr\",\n \"fa-light\": \"fasl\",\n \"fa-thin\": \"fast\"\n },\n \"sharp-duotone\": {\n \"fa-solid\": \"fasds\",\n \"fa-regular\": \"fasdr\",\n \"fa-light\": \"fasdl\",\n \"fa-thin\": \"fasdt\"\n }\n },\n I$1 = {\n classic: [\"fas\", \"far\", \"fal\", \"fat\", \"fad\"],\n duotone: [\"fadr\", \"fadl\", \"fadt\"],\n sharp: [\"fass\", \"fasr\", \"fasl\", \"fast\"],\n \"sharp-duotone\": [\"fasds\", \"fasdr\", \"fasdl\", \"fasdt\"]\n },\n co = {\n classic: {\n fab: \"fa-brands\",\n fad: \"fa-duotone\",\n fal: \"fa-light\",\n far: \"fa-regular\",\n fas: \"fa-solid\",\n fat: \"fa-thin\"\n },\n duotone: {\n fadr: \"fa-regular\",\n fadl: \"fa-light\",\n fadt: \"fa-thin\"\n },\n sharp: {\n fass: \"fa-solid\",\n fasr: \"fa-regular\",\n fasl: \"fa-light\",\n fast: \"fa-thin\"\n },\n \"sharp-duotone\": {\n fasds: \"fa-solid\",\n fasdr: \"fa-regular\",\n fasdl: \"fa-light\",\n fasdt: \"fa-thin\"\n }\n },\n x = [\"fa-solid\", \"fa-regular\", \"fa-light\", \"fa-thin\", \"fa-duotone\", \"fa-brands\"],\n xo = [\"fa\", \"fas\", \"far\", \"fal\", \"fat\", \"fad\", \"fadr\", \"fadl\", \"fadt\", \"fab\", \"fass\", \"fasr\", \"fasl\", \"fast\", \"fasds\", \"fasdr\", \"fasdl\", \"fasdt\", ...r$1, ...x],\n m$1 = [\"solid\", \"regular\", \"light\", \"thin\", \"duotone\", \"brands\"],\n c$1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],\n F$1 = c$1.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]),\n Fo = [...Object.keys(I$1), ...m$1, \"2xs\", \"xs\", \"sm\", \"lg\", \"xl\", \"2xl\", \"beat\", \"border\", \"fade\", \"beat-fade\", \"bounce\", \"flip-both\", \"flip-horizontal\", \"flip-vertical\", \"flip\", \"fw\", \"inverse\", \"layers-counter\", \"layers-text\", \"layers\", \"li\", \"pull-left\", \"pull-right\", \"pulse\", \"rotate-180\", \"rotate-270\", \"rotate-90\", \"rotate-by\", \"shake\", \"spin-pulse\", \"spin-reverse\", \"spin\", \"stack-1x\", \"stack-2x\", \"stack\", \"ul\", t$1.GROUP, t$1.SWAP_OPACITY, t$1.PRIMARY, t$1.SECONDARY].concat(c$1.map(o => \"\".concat(o, \"x\"))).concat(F$1.map(o => \"w-\".concat(o)));\nvar ko = {\n \"Font Awesome 5 Free\": {\n 900: \"fas\",\n 400: \"far\"\n },\n \"Font Awesome 5 Pro\": {\n 900: \"fas\",\n 400: \"far\",\n normal: \"far\",\n 300: \"fal\"\n },\n \"Font Awesome 5 Brands\": {\n 400: \"fab\",\n normal: \"fab\"\n },\n \"Font Awesome 5 Duotone\": {\n 900: \"fad\"\n }\n };\n\nconst NAMESPACE_IDENTIFIER = '___FONT_AWESOME___';\nconst UNITS_IN_GRID = 16;\nconst DEFAULT_CSS_PREFIX = 'fa';\nconst DEFAULT_REPLACEMENT_CLASS = 'svg-inline--fa';\nconst DATA_FA_I2SVG = 'data-fa-i2svg';\nconst DATA_FA_PSEUDO_ELEMENT = 'data-fa-pseudo-element';\nconst DATA_FA_PSEUDO_ELEMENT_PENDING = 'data-fa-pseudo-element-pending';\nconst DATA_PREFIX = 'data-prefix';\nconst DATA_ICON = 'data-icon';\nconst HTML_CLASS_I2SVG_BASE_CLASS = 'fontawesome-i2svg';\nconst MUTATION_APPROACH_ASYNC = 'async';\nconst TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS = ['HTML', 'HEAD', 'STYLE', 'SCRIPT'];\nconst PRODUCTION = (() => {\n try {\n return process.env.NODE_ENV === 'production';\n } catch (e$$1) {\n return false;\n }\n})();\nfunction familyProxy(obj) {\n // Defaults to the classic family if family is not available\n return new Proxy(obj, {\n get(target, prop) {\n return prop in target ? target[prop] : target[s];\n }\n });\n}\nconst _PREFIX_TO_STYLE = _objectSpread2({}, S);\n\n// We changed FACSSClassesToStyleId in the icons repo to be canonical and as such, \"classic\" family does not have any\n// duotone styles. But we do still need duotone in _PREFIX_TO_STYLE below, so we are manually adding\n// {'fa-duotone': 'duotone'}\n_PREFIX_TO_STYLE[s] = _objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2({}, {\n 'fa-duotone': 'duotone'\n}), S[s]), St['kit']), St['kit-duotone']);\nconst PREFIX_TO_STYLE = familyProxy(_PREFIX_TO_STYLE);\nconst _STYLE_TO_PREFIX = _objectSpread2({}, xt);\n\n// We changed FAStyleIdToShortPrefixId in the icons repo to be canonical and as such, \"classic\" family does not have any\n// duotone styles. But we do still need duotone in _STYLE_TO_PREFIX below, so we are manually adding {duotone: 'fad'}\n_STYLE_TO_PREFIX[s] = _objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2({}, {\n duotone: 'fad'\n}), _STYLE_TO_PREFIX[s]), Et['kit']), Et['kit-duotone']);\nconst STYLE_TO_PREFIX = familyProxy(_STYLE_TO_PREFIX);\nconst _PREFIX_TO_LONG_STYLE = _objectSpread2({}, co);\n_PREFIX_TO_LONG_STYLE[s] = _objectSpread2(_objectSpread2({}, _PREFIX_TO_LONG_STYLE[s]), Wt['kit']);\nconst PREFIX_TO_LONG_STYLE = familyProxy(_PREFIX_TO_LONG_STYLE);\nconst _LONG_STYLE_TO_PREFIX = _objectSpread2({}, po);\n_LONG_STYLE_TO_PREFIX[s] = _objectSpread2(_objectSpread2({}, _LONG_STYLE_TO_PREFIX[s]), Ct['kit']);\nconst LONG_STYLE_TO_PREFIX = familyProxy(_LONG_STYLE_TO_PREFIX);\nconst ICON_SELECTION_SYNTAX_PATTERN = p; // eslint-disable-line no-useless-escape\n\nconst LAYERS_TEXT_CLASSNAME = 'fa-layers-text';\nconst FONT_FAMILY_PATTERN = g;\nconst _FONT_WEIGHT_TO_PREFIX = _objectSpread2({}, G);\nconst FONT_WEIGHT_TO_PREFIX = familyProxy(_FONT_WEIGHT_TO_PREFIX);\nconst ATTRIBUTES_WATCHED_FOR_MUTATION = ['class', 'data-prefix', 'data-icon', 'data-fa-transform', 'data-fa-mask'];\nconst DUOTONE_CLASSES = A;\nconst RESERVED_CLASSES = [...At, ...Fo];\n\nconst initial = WINDOW.FontAwesomeConfig || {};\nfunction getAttrConfig(attr) {\n var element = DOCUMENT.querySelector('script[' + attr + ']');\n if (element) {\n return element.getAttribute(attr);\n }\n}\nfunction coerce(val) {\n // Getting an empty string will occur if the attribute is set on the HTML tag but without a value\n // We'll assume that this is an indication that it should be toggled to true\n if (val === '') return true;\n if (val === 'false') return false;\n if (val === 'true') return true;\n return val;\n}\nif (DOCUMENT && typeof DOCUMENT.querySelector === 'function') {\n const attrs = [['data-family-prefix', 'familyPrefix'], ['data-css-prefix', 'cssPrefix'], ['data-family-default', 'familyDefault'], ['data-style-default', 'styleDefault'], ['data-replacement-class', 'replacementClass'], ['data-auto-replace-svg', 'autoReplaceSvg'], ['data-auto-add-css', 'autoAddCss'], ['data-auto-a11y', 'autoA11y'], ['data-search-pseudo-elements', 'searchPseudoElements'], ['data-observe-mutations', 'observeMutations'], ['data-mutate-approach', 'mutateApproach'], ['data-keep-original-source', 'keepOriginalSource'], ['data-measure-performance', 'measurePerformance'], ['data-show-missing-icons', 'showMissingIcons']];\n attrs.forEach(_ref => {\n let [attr, key] = _ref;\n const val = coerce(getAttrConfig(attr));\n if (val !== undefined && val !== null) {\n initial[key] = val;\n }\n });\n}\nconst _default = {\n styleDefault: 'solid',\n familyDefault: s,\n cssPrefix: DEFAULT_CSS_PREFIX,\n replacementClass: DEFAULT_REPLACEMENT_CLASS,\n autoReplaceSvg: true,\n autoAddCss: true,\n autoA11y: true,\n searchPseudoElements: false,\n observeMutations: true,\n mutateApproach: 'async',\n keepOriginalSource: true,\n measurePerformance: false,\n showMissingIcons: true\n};\n\n// familyPrefix is deprecated but we must still support it if present\nif (initial.familyPrefix) {\n initial.cssPrefix = initial.familyPrefix;\n}\nconst _config = _objectSpread2(_objectSpread2({}, _default), initial);\nif (!_config.autoReplaceSvg) _config.observeMutations = false;\nconst config = {};\nObject.keys(_default).forEach(key => {\n Object.defineProperty(config, key, {\n enumerable: true,\n set: function (val) {\n _config[key] = val;\n _onChangeCb.forEach(cb => cb(config));\n },\n get: function () {\n return _config[key];\n }\n });\n});\n\n// familyPrefix is deprecated as of 6.2.0 and should be removed in 7.0.0\nObject.defineProperty(config, 'familyPrefix', {\n enumerable: true,\n set: function (val) {\n _config.cssPrefix = val;\n _onChangeCb.forEach(cb => cb(config));\n },\n get: function () {\n return _config.cssPrefix;\n }\n});\nWINDOW.FontAwesomeConfig = config;\nconst _onChangeCb = [];\nfunction onChange(cb) {\n _onChangeCb.push(cb);\n return () => {\n _onChangeCb.splice(_onChangeCb.indexOf(cb), 1);\n };\n}\n\nconst d$2 = UNITS_IN_GRID;\nconst meaninglessTransform = {\n size: 16,\n x: 0,\n y: 0,\n rotate: 0,\n flipX: false,\n flipY: false\n};\nfunction insertCss(css) {\n if (!css || !IS_DOM) {\n return;\n }\n const style = DOCUMENT.createElement('style');\n style.setAttribute('type', 'text/css');\n style.innerHTML = css;\n const headChildren = DOCUMENT.head.childNodes;\n let beforeChild = null;\n for (let i = headChildren.length - 1; i > -1; i--) {\n const child = headChildren[i];\n const tagName = (child.tagName || '').toUpperCase();\n if (['STYLE', 'LINK'].indexOf(tagName) > -1) {\n beforeChild = child;\n }\n }\n DOCUMENT.head.insertBefore(style, beforeChild);\n return css;\n}\nconst idPool = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';\nfunction nextUniqueId() {\n let size = 12;\n let id = '';\n while (size-- > 0) {\n id += idPool[Math.random() * 62 | 0];\n }\n return id;\n}\nfunction toArray(obj) {\n const array = [];\n for (let i = (obj || []).length >>> 0; i--;) {\n array[i] = obj[i];\n }\n return array;\n}\nfunction classArray(node) {\n if (node.classList) {\n return toArray(node.classList);\n } else {\n return (node.getAttribute('class') || '').split(' ').filter(i => i);\n }\n}\nfunction htmlEscape(str) {\n return \"\".concat(str).replace(/&/g, '&').replace(/\"/g, '"').replace(/'/g, ''').replace(//g, '>');\n}\nfunction joinAttributes(attributes) {\n return Object.keys(attributes || {}).reduce((acc, attributeName) => {\n return acc + \"\".concat(attributeName, \"=\\\"\").concat(htmlEscape(attributes[attributeName]), \"\\\" \");\n }, '').trim();\n}\nfunction joinStyles(styles) {\n return Object.keys(styles || {}).reduce((acc, styleName) => {\n return acc + \"\".concat(styleName, \": \").concat(styles[styleName].trim(), \";\");\n }, '');\n}\nfunction transformIsMeaningful(transform) {\n return transform.size !== meaninglessTransform.size || transform.x !== meaninglessTransform.x || transform.y !== meaninglessTransform.y || transform.rotate !== meaninglessTransform.rotate || transform.flipX || transform.flipY;\n}\nfunction transformForSvg(_ref) {\n let {\n transform,\n containerWidth,\n iconWidth\n } = _ref;\n const outer = {\n transform: \"translate(\".concat(containerWidth / 2, \" 256)\")\n };\n const innerTranslate = \"translate(\".concat(transform.x * 32, \", \").concat(transform.y * 32, \") \");\n const innerScale = \"scale(\".concat(transform.size / 16 * (transform.flipX ? -1 : 1), \", \").concat(transform.size / 16 * (transform.flipY ? -1 : 1), \") \");\n const innerRotate = \"rotate(\".concat(transform.rotate, \" 0 0)\");\n const inner = {\n transform: \"\".concat(innerTranslate, \" \").concat(innerScale, \" \").concat(innerRotate)\n };\n const path = {\n transform: \"translate(\".concat(iconWidth / 2 * -1, \" -256)\")\n };\n return {\n outer,\n inner,\n path\n };\n}\nfunction transformForCss(_ref2) {\n let {\n transform,\n width = UNITS_IN_GRID,\n height = UNITS_IN_GRID,\n startCentered = false\n } = _ref2;\n let val = '';\n if (startCentered && IS_IE) {\n val += \"translate(\".concat(transform.x / d$2 - width / 2, \"em, \").concat(transform.y / d$2 - height / 2, \"em) \");\n } else if (startCentered) {\n val += \"translate(calc(-50% + \".concat(transform.x / d$2, \"em), calc(-50% + \").concat(transform.y / d$2, \"em)) \");\n } else {\n val += \"translate(\".concat(transform.x / d$2, \"em, \").concat(transform.y / d$2, \"em) \");\n }\n val += \"scale(\".concat(transform.size / d$2 * (transform.flipX ? -1 : 1), \", \").concat(transform.size / d$2 * (transform.flipY ? -1 : 1), \") \");\n val += \"rotate(\".concat(transform.rotate, \"deg) \");\n return val;\n}\n\nvar baseStyles = \":root, :host {\\n --fa-font-solid: normal 900 1em/1 \\\"Font Awesome 6 Free\\\";\\n --fa-font-regular: normal 400 1em/1 \\\"Font Awesome 6 Free\\\";\\n --fa-font-light: normal 300 1em/1 \\\"Font Awesome 6 Pro\\\";\\n --fa-font-thin: normal 100 1em/1 \\\"Font Awesome 6 Pro\\\";\\n --fa-font-duotone: normal 900 1em/1 \\\"Font Awesome 6 Duotone\\\";\\n --fa-font-duotone-regular: normal 400 1em/1 \\\"Font Awesome 6 Duotone\\\";\\n --fa-font-duotone-light: normal 300 1em/1 \\\"Font Awesome 6 Duotone\\\";\\n --fa-font-duotone-thin: normal 100 1em/1 \\\"Font Awesome 6 Duotone\\\";\\n --fa-font-brands: normal 400 1em/1 \\\"Font Awesome 6 Brands\\\";\\n --fa-font-sharp-solid: normal 900 1em/1 \\\"Font Awesome 6 Sharp\\\";\\n --fa-font-sharp-regular: normal 400 1em/1 \\\"Font Awesome 6 Sharp\\\";\\n --fa-font-sharp-light: normal 300 1em/1 \\\"Font Awesome 6 Sharp\\\";\\n --fa-font-sharp-thin: normal 100 1em/1 \\\"Font Awesome 6 Sharp\\\";\\n --fa-font-sharp-duotone-solid: normal 900 1em/1 \\\"Font Awesome 6 Sharp Duotone\\\";\\n --fa-font-sharp-duotone-regular: normal 400 1em/1 \\\"Font Awesome 6 Sharp Duotone\\\";\\n --fa-font-sharp-duotone-light: normal 300 1em/1 \\\"Font Awesome 6 Sharp Duotone\\\";\\n --fa-font-sharp-duotone-thin: normal 100 1em/1 \\\"Font Awesome 6 Sharp Duotone\\\";\\n}\\n\\nsvg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {\\n overflow: visible;\\n box-sizing: content-box;\\n}\\n\\n.svg-inline--fa {\\n display: var(--fa-display, inline-block);\\n height: 1em;\\n overflow: visible;\\n vertical-align: -0.125em;\\n}\\n.svg-inline--fa.fa-2xs {\\n vertical-align: 0.1em;\\n}\\n.svg-inline--fa.fa-xs {\\n vertical-align: 0em;\\n}\\n.svg-inline--fa.fa-sm {\\n vertical-align: -0.0714285705em;\\n}\\n.svg-inline--fa.fa-lg {\\n vertical-align: -0.2em;\\n}\\n.svg-inline--fa.fa-xl {\\n vertical-align: -0.25em;\\n}\\n.svg-inline--fa.fa-2xl {\\n vertical-align: -0.3125em;\\n}\\n.svg-inline--fa.fa-pull-left {\\n margin-right: var(--fa-pull-margin, 0.3em);\\n width: auto;\\n}\\n.svg-inline--fa.fa-pull-right {\\n margin-left: var(--fa-pull-margin, 0.3em);\\n width: auto;\\n}\\n.svg-inline--fa.fa-li {\\n width: var(--fa-li-width, 2em);\\n top: 0.25em;\\n}\\n.svg-inline--fa.fa-fw {\\n width: var(--fa-fw-width, 1.25em);\\n}\\n\\n.fa-layers svg.svg-inline--fa {\\n bottom: 0;\\n left: 0;\\n margin: auto;\\n position: absolute;\\n right: 0;\\n top: 0;\\n}\\n\\n.fa-layers-counter, .fa-layers-text {\\n display: inline-block;\\n position: absolute;\\n text-align: center;\\n}\\n\\n.fa-layers {\\n display: inline-block;\\n height: 1em;\\n position: relative;\\n text-align: center;\\n vertical-align: -0.125em;\\n width: 1em;\\n}\\n.fa-layers svg.svg-inline--fa {\\n transform-origin: center center;\\n}\\n\\n.fa-layers-text {\\n left: 50%;\\n top: 50%;\\n transform: translate(-50%, -50%);\\n transform-origin: center center;\\n}\\n\\n.fa-layers-counter {\\n background-color: var(--fa-counter-background-color, #ff253a);\\n border-radius: var(--fa-counter-border-radius, 1em);\\n box-sizing: border-box;\\n color: var(--fa-inverse, #fff);\\n line-height: var(--fa-counter-line-height, 1);\\n max-width: var(--fa-counter-max-width, 5em);\\n min-width: var(--fa-counter-min-width, 1.5em);\\n overflow: hidden;\\n padding: var(--fa-counter-padding, 0.25em 0.5em);\\n right: var(--fa-right, 0);\\n text-overflow: ellipsis;\\n top: var(--fa-top, 0);\\n transform: scale(var(--fa-counter-scale, 0.25));\\n transform-origin: top right;\\n}\\n\\n.fa-layers-bottom-right {\\n bottom: var(--fa-bottom, 0);\\n right: var(--fa-right, 0);\\n top: auto;\\n transform: scale(var(--fa-layers-scale, 0.25));\\n transform-origin: bottom right;\\n}\\n\\n.fa-layers-bottom-left {\\n bottom: var(--fa-bottom, 0);\\n left: var(--fa-left, 0);\\n right: auto;\\n top: auto;\\n transform: scale(var(--fa-layers-scale, 0.25));\\n transform-origin: bottom left;\\n}\\n\\n.fa-layers-top-right {\\n top: var(--fa-top, 0);\\n right: var(--fa-right, 0);\\n transform: scale(var(--fa-layers-scale, 0.25));\\n transform-origin: top right;\\n}\\n\\n.fa-layers-top-left {\\n left: var(--fa-left, 0);\\n right: auto;\\n top: var(--fa-top, 0);\\n transform: scale(var(--fa-layers-scale, 0.25));\\n transform-origin: top left;\\n}\\n\\n.fa-1x {\\n font-size: 1em;\\n}\\n\\n.fa-2x {\\n font-size: 2em;\\n}\\n\\n.fa-3x {\\n font-size: 3em;\\n}\\n\\n.fa-4x {\\n font-size: 4em;\\n}\\n\\n.fa-5x {\\n font-size: 5em;\\n}\\n\\n.fa-6x {\\n font-size: 6em;\\n}\\n\\n.fa-7x {\\n font-size: 7em;\\n}\\n\\n.fa-8x {\\n font-size: 8em;\\n}\\n\\n.fa-9x {\\n font-size: 9em;\\n}\\n\\n.fa-10x {\\n font-size: 10em;\\n}\\n\\n.fa-2xs {\\n font-size: 0.625em;\\n line-height: 0.1em;\\n vertical-align: 0.225em;\\n}\\n\\n.fa-xs {\\n font-size: 0.75em;\\n line-height: 0.0833333337em;\\n vertical-align: 0.125em;\\n}\\n\\n.fa-sm {\\n font-size: 0.875em;\\n line-height: 0.0714285718em;\\n vertical-align: 0.0535714295em;\\n}\\n\\n.fa-lg {\\n font-size: 1.25em;\\n line-height: 0.05em;\\n vertical-align: -0.075em;\\n}\\n\\n.fa-xl {\\n font-size: 1.5em;\\n line-height: 0.0416666682em;\\n vertical-align: -0.125em;\\n}\\n\\n.fa-2xl {\\n font-size: 2em;\\n line-height: 0.03125em;\\n vertical-align: -0.1875em;\\n}\\n\\n.fa-fw {\\n text-align: center;\\n width: 1.25em;\\n}\\n\\n.fa-ul {\\n list-style-type: none;\\n margin-left: var(--fa-li-margin, 2.5em);\\n padding-left: 0;\\n}\\n.fa-ul > li {\\n position: relative;\\n}\\n\\n.fa-li {\\n left: calc(-1 * var(--fa-li-width, 2em));\\n position: absolute;\\n text-align: center;\\n width: var(--fa-li-width, 2em);\\n line-height: inherit;\\n}\\n\\n.fa-border {\\n border-color: var(--fa-border-color, #eee);\\n border-radius: var(--fa-border-radius, 0.1em);\\n border-style: var(--fa-border-style, solid);\\n border-width: var(--fa-border-width, 0.08em);\\n padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);\\n}\\n\\n.fa-pull-left {\\n float: left;\\n margin-right: var(--fa-pull-margin, 0.3em);\\n}\\n\\n.fa-pull-right {\\n float: right;\\n margin-left: var(--fa-pull-margin, 0.3em);\\n}\\n\\n.fa-beat {\\n animation-name: fa-beat;\\n animation-delay: var(--fa-animation-delay, 0s);\\n animation-direction: var(--fa-animation-direction, normal);\\n animation-duration: var(--fa-animation-duration, 1s);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-timing-function: var(--fa-animation-timing, ease-in-out);\\n}\\n\\n.fa-bounce {\\n animation-name: fa-bounce;\\n animation-delay: var(--fa-animation-delay, 0s);\\n animation-direction: var(--fa-animation-direction, normal);\\n animation-duration: var(--fa-animation-duration, 1s);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));\\n}\\n\\n.fa-fade {\\n animation-name: fa-fade;\\n animation-delay: var(--fa-animation-delay, 0s);\\n animation-direction: var(--fa-animation-direction, normal);\\n animation-duration: var(--fa-animation-duration, 1s);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\\n}\\n\\n.fa-beat-fade {\\n animation-name: fa-beat-fade;\\n animation-delay: var(--fa-animation-delay, 0s);\\n animation-direction: var(--fa-animation-direction, normal);\\n animation-duration: var(--fa-animation-duration, 1s);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\\n}\\n\\n.fa-flip {\\n animation-name: fa-flip;\\n animation-delay: var(--fa-animation-delay, 0s);\\n animation-direction: var(--fa-animation-direction, normal);\\n animation-duration: var(--fa-animation-duration, 1s);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-timing-function: var(--fa-animation-timing, ease-in-out);\\n}\\n\\n.fa-shake {\\n animation-name: fa-shake;\\n animation-delay: var(--fa-animation-delay, 0s);\\n animation-direction: var(--fa-animation-direction, normal);\\n animation-duration: var(--fa-animation-duration, 1s);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-timing-function: var(--fa-animation-timing, linear);\\n}\\n\\n.fa-spin {\\n animation-name: fa-spin;\\n animation-delay: var(--fa-animation-delay, 0s);\\n animation-direction: var(--fa-animation-direction, normal);\\n animation-duration: var(--fa-animation-duration, 2s);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-timing-function: var(--fa-animation-timing, linear);\\n}\\n\\n.fa-spin-reverse {\\n --fa-animation-direction: reverse;\\n}\\n\\n.fa-pulse,\\n.fa-spin-pulse {\\n animation-name: fa-spin;\\n animation-direction: var(--fa-animation-direction, normal);\\n animation-duration: var(--fa-animation-duration, 1s);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-timing-function: var(--fa-animation-timing, steps(8));\\n}\\n\\n@media (prefers-reduced-motion: reduce) {\\n .fa-beat,\\n.fa-bounce,\\n.fa-fade,\\n.fa-beat-fade,\\n.fa-flip,\\n.fa-pulse,\\n.fa-shake,\\n.fa-spin,\\n.fa-spin-pulse {\\n animation-delay: -1ms;\\n animation-duration: 1ms;\\n animation-iteration-count: 1;\\n transition-delay: 0s;\\n transition-duration: 0s;\\n }\\n}\\n@keyframes fa-beat {\\n 0%, 90% {\\n transform: scale(1);\\n }\\n 45% {\\n transform: scale(var(--fa-beat-scale, 1.25));\\n }\\n}\\n@keyframes fa-bounce {\\n 0% {\\n transform: scale(1, 1) translateY(0);\\n }\\n 10% {\\n transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);\\n }\\n 30% {\\n transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));\\n }\\n 50% {\\n transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);\\n }\\n 57% {\\n transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));\\n }\\n 64% {\\n transform: scale(1, 1) translateY(0);\\n }\\n 100% {\\n transform: scale(1, 1) translateY(0);\\n }\\n}\\n@keyframes fa-fade {\\n 50% {\\n opacity: var(--fa-fade-opacity, 0.4);\\n }\\n}\\n@keyframes fa-beat-fade {\\n 0%, 100% {\\n opacity: var(--fa-beat-fade-opacity, 0.4);\\n transform: scale(1);\\n }\\n 50% {\\n opacity: 1;\\n transform: scale(var(--fa-beat-fade-scale, 1.125));\\n }\\n}\\n@keyframes fa-flip {\\n 50% {\\n transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));\\n }\\n}\\n@keyframes fa-shake {\\n 0% {\\n transform: rotate(-15deg);\\n }\\n 4% {\\n transform: rotate(15deg);\\n }\\n 8%, 24% {\\n transform: rotate(-18deg);\\n }\\n 12%, 28% {\\n transform: rotate(18deg);\\n }\\n 16% {\\n transform: rotate(-22deg);\\n }\\n 20% {\\n transform: rotate(22deg);\\n }\\n 32% {\\n transform: rotate(-12deg);\\n }\\n 36% {\\n transform: rotate(12deg);\\n }\\n 40%, 100% {\\n transform: rotate(0deg);\\n }\\n}\\n@keyframes fa-spin {\\n 0% {\\n transform: rotate(0deg);\\n }\\n 100% {\\n transform: rotate(360deg);\\n }\\n}\\n.fa-rotate-90 {\\n transform: rotate(90deg);\\n}\\n\\n.fa-rotate-180 {\\n transform: rotate(180deg);\\n}\\n\\n.fa-rotate-270 {\\n transform: rotate(270deg);\\n}\\n\\n.fa-flip-horizontal {\\n transform: scale(-1, 1);\\n}\\n\\n.fa-flip-vertical {\\n transform: scale(1, -1);\\n}\\n\\n.fa-flip-both,\\n.fa-flip-horizontal.fa-flip-vertical {\\n transform: scale(-1, -1);\\n}\\n\\n.fa-rotate-by {\\n transform: rotate(var(--fa-rotate-angle, 0));\\n}\\n\\n.fa-stack {\\n display: inline-block;\\n vertical-align: middle;\\n height: 2em;\\n position: relative;\\n width: 2.5em;\\n}\\n\\n.fa-stack-1x,\\n.fa-stack-2x {\\n bottom: 0;\\n left: 0;\\n margin: auto;\\n position: absolute;\\n right: 0;\\n top: 0;\\n z-index: var(--fa-stack-z-index, auto);\\n}\\n\\n.svg-inline--fa.fa-stack-1x {\\n height: 1em;\\n width: 1.25em;\\n}\\n.svg-inline--fa.fa-stack-2x {\\n height: 2em;\\n width: 2.5em;\\n}\\n\\n.fa-inverse {\\n color: var(--fa-inverse, #fff);\\n}\\n\\n.sr-only,\\n.fa-sr-only {\\n position: absolute;\\n width: 1px;\\n height: 1px;\\n padding: 0;\\n margin: -1px;\\n overflow: hidden;\\n clip: rect(0, 0, 0, 0);\\n white-space: nowrap;\\n border-width: 0;\\n}\\n\\n.sr-only-focusable:not(:focus),\\n.fa-sr-only-focusable:not(:focus) {\\n position: absolute;\\n width: 1px;\\n height: 1px;\\n padding: 0;\\n margin: -1px;\\n overflow: hidden;\\n clip: rect(0, 0, 0, 0);\\n white-space: nowrap;\\n border-width: 0;\\n}\\n\\n.svg-inline--fa .fa-primary {\\n fill: var(--fa-primary-color, currentColor);\\n opacity: var(--fa-primary-opacity, 1);\\n}\\n\\n.svg-inline--fa .fa-secondary {\\n fill: var(--fa-secondary-color, currentColor);\\n opacity: var(--fa-secondary-opacity, 0.4);\\n}\\n\\n.svg-inline--fa.fa-swap-opacity .fa-primary {\\n opacity: var(--fa-secondary-opacity, 0.4);\\n}\\n\\n.svg-inline--fa.fa-swap-opacity .fa-secondary {\\n opacity: var(--fa-primary-opacity, 1);\\n}\\n\\n.svg-inline--fa mask .fa-primary,\\n.svg-inline--fa mask .fa-secondary {\\n fill: black;\\n}\";\n\nfunction css() {\n const dcp = DEFAULT_CSS_PREFIX;\n const drc = DEFAULT_REPLACEMENT_CLASS;\n const fp = config.cssPrefix;\n const rc = config.replacementClass;\n let s = baseStyles;\n if (fp !== dcp || rc !== drc) {\n const dPatt = new RegExp(\"\\\\.\".concat(dcp, \"\\\\-\"), 'g');\n const customPropPatt = new RegExp(\"\\\\--\".concat(dcp, \"\\\\-\"), 'g');\n const rPatt = new RegExp(\"\\\\.\".concat(drc), 'g');\n s = s.replace(dPatt, \".\".concat(fp, \"-\")).replace(customPropPatt, \"--\".concat(fp, \"-\")).replace(rPatt, \".\".concat(rc));\n }\n return s;\n}\nlet _cssInserted = false;\nfunction ensureCss() {\n if (config.autoAddCss && !_cssInserted) {\n insertCss(css());\n _cssInserted = true;\n }\n}\nvar InjectCSS = {\n mixout() {\n return {\n dom: {\n css,\n insertCss: ensureCss\n }\n };\n },\n hooks() {\n return {\n beforeDOMElementCreation() {\n ensureCss();\n },\n beforeI2svg() {\n ensureCss();\n }\n };\n }\n};\n\nconst w = WINDOW || {};\nif (!w[NAMESPACE_IDENTIFIER]) w[NAMESPACE_IDENTIFIER] = {};\nif (!w[NAMESPACE_IDENTIFIER].styles) w[NAMESPACE_IDENTIFIER].styles = {};\nif (!w[NAMESPACE_IDENTIFIER].hooks) w[NAMESPACE_IDENTIFIER].hooks = {};\nif (!w[NAMESPACE_IDENTIFIER].shims) w[NAMESPACE_IDENTIFIER].shims = [];\nvar namespace = w[NAMESPACE_IDENTIFIER];\n\nconst functions = [];\nconst listener = function () {\n DOCUMENT.removeEventListener('DOMContentLoaded', listener);\n loaded = 1;\n functions.map(fn => fn());\n};\nlet loaded = false;\nif (IS_DOM) {\n loaded = (DOCUMENT.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(DOCUMENT.readyState);\n if (!loaded) DOCUMENT.addEventListener('DOMContentLoaded', listener);\n}\nfunction domready (fn) {\n if (!IS_DOM) return;\n loaded ? setTimeout(fn, 0) : functions.push(fn);\n}\n\nfunction toHtml(abstractNodes) {\n const {\n tag,\n attributes = {},\n children = []\n } = abstractNodes;\n if (typeof abstractNodes === 'string') {\n return htmlEscape(abstractNodes);\n } else {\n return \"<\".concat(tag, \" \").concat(joinAttributes(attributes), \">\").concat(children.map(toHtml).join(''), \"\").concat(tag, \">\");\n }\n}\n\nfunction iconFromMapping(mapping, prefix, iconName) {\n if (mapping && mapping[prefix] && mapping[prefix][iconName]) {\n return {\n prefix,\n iconName,\n icon: mapping[prefix][iconName]\n };\n }\n}\n\n/**\n * Internal helper to bind a function known to have 4 arguments\n * to a given context.\n */\nvar bindInternal4 = function bindInternal4(func, thisContext) {\n return function (a, b, c, d) {\n return func.call(thisContext, a, b, c, d);\n };\n};\n\n/**\n * # Reduce\n *\n * A fast object `.reduce()` implementation.\n *\n * @param {Object} subject The object to reduce over.\n * @param {Function} fn The reducer function.\n * @param {mixed} initialValue The initial value for the reducer, defaults to subject[0].\n * @param {Object} thisContext The context for the reducer.\n * @return {mixed} The final result.\n */\nvar reduce = function fastReduceObject(subject, fn, initialValue, thisContext) {\n var keys = Object.keys(subject),\n length = keys.length,\n iterator = thisContext !== undefined ? bindInternal4(fn, thisContext) : fn,\n i,\n key,\n result;\n if (initialValue === undefined) {\n i = 1;\n result = subject[keys[0]];\n } else {\n i = 0;\n result = initialValue;\n }\n for (; i < length; i++) {\n key = keys[i];\n result = iterator(result, subject[key], key, subject);\n }\n return result;\n};\n\n/**\n * ucs2decode() and codePointAt() are both works of Mathias Bynens and licensed under MIT\n *\n * Copyright Mathias Bynens \n\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n\nfunction ucs2decode(string) {\n const output = [];\n let counter = 0;\n const length = string.length;\n while (counter < length) {\n const value = string.charCodeAt(counter++);\n if (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n const extra = string.charCodeAt(counter++);\n if ((extra & 0xFC00) == 0xDC00) {\n // eslint-disable-line eqeqeq\n output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n } else {\n output.push(value);\n counter--;\n }\n } else {\n output.push(value);\n }\n }\n return output;\n}\nfunction toHex(unicode) {\n const decoded = ucs2decode(unicode);\n return decoded.length === 1 ? decoded[0].toString(16) : null;\n}\nfunction codePointAt(string, index) {\n const size = string.length;\n let first = string.charCodeAt(index);\n let second;\n if (first >= 0xD800 && first <= 0xDBFF && size > index + 1) {\n second = string.charCodeAt(index + 1);\n if (second >= 0xDC00 && second <= 0xDFFF) {\n return (first - 0xD800) * 0x400 + second - 0xDC00 + 0x10000;\n }\n }\n return first;\n}\n\nfunction normalizeIcons(icons) {\n return Object.keys(icons).reduce((acc, iconName) => {\n const icon = icons[iconName];\n const expanded = !!icon.icon;\n if (expanded) {\n acc[icon.iconName] = icon.icon;\n } else {\n acc[iconName] = icon;\n }\n return acc;\n }, {});\n}\nfunction defineIcons(prefix, icons) {\n let params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n const {\n skipHooks = false\n } = params;\n const normalized = normalizeIcons(icons);\n if (typeof namespace.hooks.addPack === 'function' && !skipHooks) {\n namespace.hooks.addPack(prefix, normalizeIcons(icons));\n } else {\n namespace.styles[prefix] = _objectSpread2(_objectSpread2({}, namespace.styles[prefix] || {}), normalized);\n }\n\n /**\n * Font Awesome 4 used the prefix of `fa` for all icons. With the introduction\n * of new styles we needed to differentiate between them. Prefix `fa` is now an alias\n * for `fas` so we'll ease the upgrade process for our users by automatically defining\n * this as well.\n */\n if (prefix === 'fas') {\n defineIcons('fa', icons);\n }\n}\n\nconst duotonePathRe = [/*#__PURE__*/_wrapRegExp(/path d=\"([^\"]+)\".*path d=\"([^\"]+)\"/, {\n d1: 1,\n d2: 2\n}), /*#__PURE__*/_wrapRegExp(/path class=\"([^\"]+)\".*d=\"([^\"]+)\".*path class=\"([^\"]+)\".*d=\"([^\"]+)\"/, {\n cls1: 1,\n d1: 2,\n cls2: 3,\n d2: 4\n}), /*#__PURE__*/_wrapRegExp(/path class=\"([^\"]+)\".*d=\"([^\"]+)\"/, {\n cls1: 1,\n d1: 2\n})];\n\nconst {\n styles,\n shims\n} = namespace;\nconst FAMILY_NAMES = Object.keys(PREFIX_TO_LONG_STYLE);\nconst PREFIXES_FOR_FAMILY = FAMILY_NAMES.reduce((acc, familyId) => {\n acc[familyId] = Object.keys(PREFIX_TO_LONG_STYLE[familyId]);\n return acc;\n}, {});\nlet _defaultUsablePrefix = null;\nlet _byUnicode = {};\nlet _byLigature = {};\nlet _byOldName = {};\nlet _byOldUnicode = {};\nlet _byAlias = {};\nfunction isReserved(name) {\n return ~RESERVED_CLASSES.indexOf(name);\n}\nfunction getIconName(cssPrefix, cls) {\n const parts = cls.split('-');\n const prefix = parts[0];\n const iconName = parts.slice(1).join('-');\n if (prefix === cssPrefix && iconName !== '' && !isReserved(iconName)) {\n return iconName;\n } else {\n return null;\n }\n}\nconst build = () => {\n const lookup = reducer => {\n return reduce(styles, (o$$1, style, prefix) => {\n o$$1[prefix] = reduce(style, reducer, {});\n return o$$1;\n }, {});\n };\n _byUnicode = lookup((acc, icon, iconName) => {\n if (icon[3]) {\n acc[icon[3]] = iconName;\n }\n if (icon[2]) {\n const aliases = icon[2].filter(a$$1 => {\n return typeof a$$1 === 'number';\n });\n aliases.forEach(alias => {\n acc[alias.toString(16)] = iconName;\n });\n }\n return acc;\n });\n _byLigature = lookup((acc, icon, iconName) => {\n acc[iconName] = iconName;\n if (icon[2]) {\n const aliases = icon[2].filter(a$$1 => {\n return typeof a$$1 === 'string';\n });\n aliases.forEach(alias => {\n acc[alias] = iconName;\n });\n }\n return acc;\n });\n _byAlias = lookup((acc, icon, iconName) => {\n const aliases = icon[2];\n acc[iconName] = iconName;\n aliases.forEach(alias => {\n acc[alias] = iconName;\n });\n return acc;\n });\n\n // If we have a Kit, we can't determine if regular is available since we\n // could be auto-fetching it. We'll have to assume that it is available.\n const hasRegular = 'far' in styles || config.autoFetchSvg;\n const shimLookups = reduce(shims, (acc, shim) => {\n const maybeNameMaybeUnicode = shim[0];\n let prefix = shim[1];\n const iconName = shim[2];\n if (prefix === 'far' && !hasRegular) {\n prefix = 'fas';\n }\n if (typeof maybeNameMaybeUnicode === 'string') {\n acc.names[maybeNameMaybeUnicode] = {\n prefix,\n iconName\n };\n }\n if (typeof maybeNameMaybeUnicode === 'number') {\n acc.unicodes[maybeNameMaybeUnicode.toString(16)] = {\n prefix,\n iconName\n };\n }\n return acc;\n }, {\n names: {},\n unicodes: {}\n });\n _byOldName = shimLookups.names;\n _byOldUnicode = shimLookups.unicodes;\n _defaultUsablePrefix = getCanonicalPrefix(config.styleDefault, {\n family: config.familyDefault\n });\n};\nonChange(c$$1 => {\n _defaultUsablePrefix = getCanonicalPrefix(c$$1.styleDefault, {\n family: config.familyDefault\n });\n});\nbuild();\nfunction byUnicode(prefix, unicode) {\n return (_byUnicode[prefix] || {})[unicode];\n}\nfunction byLigature(prefix, ligature) {\n return (_byLigature[prefix] || {})[ligature];\n}\nfunction byAlias(prefix, alias) {\n return (_byAlias[prefix] || {})[alias];\n}\nfunction byOldName(name) {\n return _byOldName[name] || {\n prefix: null,\n iconName: null\n };\n}\nfunction byOldUnicode(unicode) {\n const oldUnicode = _byOldUnicode[unicode];\n const newUnicode = byUnicode('fas', unicode);\n return oldUnicode || (newUnicode ? {\n prefix: 'fas',\n iconName: newUnicode\n } : null) || {\n prefix: null,\n iconName: null\n };\n}\nfunction getDefaultUsablePrefix() {\n return _defaultUsablePrefix;\n}\nconst emptyCanonicalIcon = () => {\n return {\n prefix: null,\n iconName: null,\n rest: []\n };\n};\nfunction getFamilyId(values) {\n let family = s;\n const famProps = FAMILY_NAMES.reduce((acc, familyId) => {\n acc[familyId] = \"\".concat(config.cssPrefix, \"-\").concat(familyId);\n return acc;\n }, {});\n L.forEach(familyId => {\n if (values.includes(famProps[familyId]) || values.some(v$$1 => PREFIXES_FOR_FAMILY[familyId].includes(v$$1))) {\n family = familyId;\n }\n });\n return family;\n}\nfunction getCanonicalPrefix(styleOrPrefix) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n family = s\n } = params;\n const style = PREFIX_TO_STYLE[family][styleOrPrefix];\n\n // handles the exception of passing in only a family of 'duotone' with no style\n if (family === t && !styleOrPrefix) {\n return 'fad';\n }\n const prefix = STYLE_TO_PREFIX[family][styleOrPrefix] || STYLE_TO_PREFIX[family][style];\n const defined = styleOrPrefix in namespace.styles ? styleOrPrefix : null;\n const result = prefix || defined || null;\n return result;\n}\nfunction moveNonFaClassesToRest(classNames) {\n let rest = [];\n let iconName = null;\n classNames.forEach(cls => {\n const result = getIconName(config.cssPrefix, cls);\n if (result) {\n iconName = result;\n } else if (cls) {\n rest.push(cls);\n }\n });\n return {\n iconName,\n rest\n };\n}\nfunction sortedUniqueValues(arr) {\n return arr.sort().filter((value, index, arr) => {\n return arr.indexOf(value) === index;\n });\n}\nfunction getCanonicalIcon(values) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n skipLookups = false\n } = params;\n let givenPrefix = null;\n const faCombinedClasses = xo.concat(bt$1);\n const faStyleOrFamilyClasses = sortedUniqueValues(values.filter(cls => faCombinedClasses.includes(cls)));\n const nonStyleOrFamilyClasses = sortedUniqueValues(values.filter(cls => !xo.includes(cls)));\n const faStyles = faStyleOrFamilyClasses.filter(cls => {\n givenPrefix = cls;\n return !P.includes(cls);\n });\n const [styleFromValues = null] = faStyles;\n const family = getFamilyId(faStyleOrFamilyClasses);\n const canonical = _objectSpread2(_objectSpread2({}, moveNonFaClassesToRest(nonStyleOrFamilyClasses)), {}, {\n prefix: getCanonicalPrefix(styleFromValues, {\n family\n })\n });\n return _objectSpread2(_objectSpread2(_objectSpread2({}, canonical), getDefaultCanonicalPrefix({\n values,\n family,\n styles,\n config,\n canonical,\n givenPrefix\n })), applyShimAndAlias(skipLookups, givenPrefix, canonical));\n}\nfunction applyShimAndAlias(skipLookups, givenPrefix, canonical) {\n let {\n prefix,\n iconName\n } = canonical;\n if (skipLookups || !prefix || !iconName) {\n return {\n prefix,\n iconName\n };\n }\n const shim = givenPrefix === 'fa' ? byOldName(iconName) : {};\n const aliasIconName = byAlias(prefix, iconName);\n iconName = shim.iconName || aliasIconName || iconName;\n prefix = shim.prefix || prefix;\n if (prefix === 'far' && !styles['far'] && styles['fas'] && !config.autoFetchSvg) {\n // Allow a fallback from the regular style to solid if regular is not available\n // but only if we aren't auto-fetching SVGs\n prefix = 'fas';\n }\n return {\n prefix,\n iconName\n };\n}\nconst newCanonicalFamilies = L.filter(familyId => {\n return familyId !== s || familyId !== t;\n});\nconst newCanonicalStyles = Object.keys(co).filter(key => key !== s).map(key => Object.keys(co[key])).flat();\nfunction getDefaultCanonicalPrefix(prefixOptions) {\n const {\n values,\n family,\n canonical,\n givenPrefix = '',\n styles = {},\n config: config$$1 = {}\n } = prefixOptions;\n const isDuotoneFamily = family === t;\n const valuesHasDuotone = values.includes('fa-duotone') || values.includes('fad');\n const defaultFamilyIsDuotone = config$$1.familyDefault === 'duotone';\n const canonicalPrefixIsDuotone = canonical.prefix === 'fad' || canonical.prefix === 'fa-duotone';\n if (!isDuotoneFamily && (valuesHasDuotone || defaultFamilyIsDuotone || canonicalPrefixIsDuotone)) {\n canonical.prefix = 'fad';\n }\n if (values.includes('fa-brands') || values.includes('fab')) {\n canonical.prefix = 'fab';\n }\n if (!canonical.prefix && newCanonicalFamilies.includes(family)) {\n const validPrefix = Object.keys(styles).find(key => newCanonicalStyles.includes(key));\n if (validPrefix || config$$1.autoFetchSvg) {\n const defaultPrefix = pt.get(family).defaultShortPrefixId;\n canonical.prefix = defaultPrefix;\n canonical.iconName = byAlias(canonical.prefix, canonical.iconName) || canonical.iconName;\n }\n }\n if (canonical.prefix === 'fa' || givenPrefix === 'fa') {\n // The fa prefix is not canonical. So if it has made it through until this point\n // we will shift it to the correct prefix.\n canonical.prefix = getDefaultUsablePrefix() || 'fas';\n }\n return canonical;\n}\n\nclass Library {\n constructor() {\n this.definitions = {};\n }\n add() {\n for (var _len = arguments.length, definitions = new Array(_len), _key = 0; _key < _len; _key++) {\n definitions[_key] = arguments[_key];\n }\n const additions = definitions.reduce(this._pullDefinitions, {});\n Object.keys(additions).forEach(key => {\n this.definitions[key] = _objectSpread2(_objectSpread2({}, this.definitions[key] || {}), additions[key]);\n defineIcons(key, additions[key]);\n\n // TODO can we stop doing this? We can't get the icons by 'fa-solid' any longer so this probably needs to change\n const longPrefix = PREFIX_TO_LONG_STYLE[s][key];\n if (longPrefix) defineIcons(longPrefix, additions[key]);\n build();\n });\n }\n reset() {\n this.definitions = {};\n }\n _pullDefinitions(additions, definition) {\n const normalized = definition.prefix && definition.iconName && definition.icon ? {\n 0: definition\n } : definition;\n Object.keys(normalized).map(key => {\n const {\n prefix,\n iconName,\n icon\n } = normalized[key];\n const aliases = icon[2];\n if (!additions[prefix]) additions[prefix] = {};\n if (aliases.length > 0) {\n aliases.forEach(alias => {\n if (typeof alias === 'string') {\n additions[prefix][alias] = icon;\n }\n });\n }\n additions[prefix][iconName] = icon;\n });\n return additions;\n }\n}\n\nlet _plugins = [];\nlet _hooks = {};\nconst providers = {};\nconst defaultProviderKeys = Object.keys(providers);\nfunction registerPlugins(nextPlugins, _ref) {\n let {\n mixoutsTo: obj\n } = _ref;\n _plugins = nextPlugins;\n _hooks = {};\n Object.keys(providers).forEach(k => {\n if (defaultProviderKeys.indexOf(k) === -1) {\n delete providers[k];\n }\n });\n _plugins.forEach(plugin => {\n const mixout = plugin.mixout ? plugin.mixout() : {};\n Object.keys(mixout).forEach(tk => {\n if (typeof mixout[tk] === 'function') {\n obj[tk] = mixout[tk];\n }\n if (typeof mixout[tk] === 'object') {\n Object.keys(mixout[tk]).forEach(sk => {\n if (!obj[tk]) {\n obj[tk] = {};\n }\n obj[tk][sk] = mixout[tk][sk];\n });\n }\n });\n if (plugin.hooks) {\n const hooks = plugin.hooks();\n Object.keys(hooks).forEach(hook => {\n if (!_hooks[hook]) {\n _hooks[hook] = [];\n }\n _hooks[hook].push(hooks[hook]);\n });\n }\n if (plugin.provides) {\n plugin.provides(providers);\n }\n });\n return obj;\n}\nfunction chainHooks(hook, accumulator) {\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n const hookFns = _hooks[hook] || [];\n hookFns.forEach(hookFn => {\n accumulator = hookFn.apply(null, [accumulator, ...args]); // eslint-disable-line no-useless-call\n });\n return accumulator;\n}\nfunction callHooks(hook) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n const hookFns = _hooks[hook] || [];\n hookFns.forEach(hookFn => {\n hookFn.apply(null, args);\n });\n return undefined;\n}\nfunction callProvided() {\n const hook = arguments[0];\n const args = Array.prototype.slice.call(arguments, 1);\n return providers[hook] ? providers[hook].apply(null, args) : undefined;\n}\n\nfunction findIconDefinition(iconLookup) {\n if (iconLookup.prefix === 'fa') {\n iconLookup.prefix = 'fas';\n }\n let {\n iconName\n } = iconLookup;\n const prefix = iconLookup.prefix || getDefaultUsablePrefix();\n if (!iconName) return;\n iconName = byAlias(prefix, iconName) || iconName;\n return iconFromMapping(library.definitions, prefix, iconName) || iconFromMapping(namespace.styles, prefix, iconName);\n}\nconst library = new Library();\nconst noAuto = () => {\n config.autoReplaceSvg = false;\n config.observeMutations = false;\n callHooks('noAuto');\n};\nconst dom = {\n i2svg: function () {\n let params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (IS_DOM) {\n callHooks('beforeI2svg', params);\n callProvided('pseudoElements2svg', params);\n return callProvided('i2svg', params);\n } else {\n return Promise.reject(new Error('Operation requires a DOM of some kind.'));\n }\n },\n watch: function () {\n let params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n const {\n autoReplaceSvgRoot\n } = params;\n if (config.autoReplaceSvg === false) {\n config.autoReplaceSvg = true;\n }\n config.observeMutations = true;\n domready(() => {\n autoReplace({\n autoReplaceSvgRoot\n });\n callHooks('watch', params);\n });\n }\n};\nconst parse = {\n icon: icon => {\n if (icon === null) {\n return null;\n }\n if (typeof icon === 'object' && icon.prefix && icon.iconName) {\n return {\n prefix: icon.prefix,\n iconName: byAlias(icon.prefix, icon.iconName) || icon.iconName\n };\n }\n if (Array.isArray(icon) && icon.length === 2) {\n const iconName = icon[1].indexOf('fa-') === 0 ? icon[1].slice(3) : icon[1];\n const prefix = getCanonicalPrefix(icon[0]);\n return {\n prefix,\n iconName: byAlias(prefix, iconName) || iconName\n };\n }\n if (typeof icon === 'string' && (icon.indexOf(\"\".concat(config.cssPrefix, \"-\")) > -1 || icon.match(ICON_SELECTION_SYNTAX_PATTERN))) {\n const canonicalIcon = getCanonicalIcon(icon.split(' '), {\n skipLookups: true\n });\n return {\n prefix: canonicalIcon.prefix || getDefaultUsablePrefix(),\n iconName: byAlias(canonicalIcon.prefix, canonicalIcon.iconName) || canonicalIcon.iconName\n };\n }\n if (typeof icon === 'string') {\n const prefix = getDefaultUsablePrefix();\n return {\n prefix,\n iconName: byAlias(prefix, icon) || icon\n };\n }\n }\n};\nconst api = {\n noAuto,\n config,\n dom,\n parse,\n library,\n findIconDefinition,\n toHtml\n};\nconst autoReplace = function () {\n let params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n const {\n autoReplaceSvgRoot = DOCUMENT\n } = params;\n if ((Object.keys(namespace.styles).length > 0 || config.autoFetchSvg) && IS_DOM && config.autoReplaceSvg) api.dom.i2svg({\n node: autoReplaceSvgRoot\n });\n};\n\nfunction domVariants(val, abstractCreator) {\n Object.defineProperty(val, 'abstract', {\n get: abstractCreator\n });\n Object.defineProperty(val, 'html', {\n get: function () {\n return val.abstract.map(a => toHtml(a));\n }\n });\n Object.defineProperty(val, 'node', {\n get: function () {\n if (!IS_DOM) return;\n const container = DOCUMENT.createElement('div');\n container.innerHTML = val.html;\n return container.children;\n }\n });\n return val;\n}\n\nfunction asIcon (_ref) {\n let {\n children,\n main,\n mask,\n attributes,\n styles,\n transform\n } = _ref;\n if (transformIsMeaningful(transform) && main.found && !mask.found) {\n const {\n width,\n height\n } = main;\n const offset = {\n x: width / height / 2,\n y: 0.5\n };\n attributes['style'] = joinStyles(_objectSpread2(_objectSpread2({}, styles), {}, {\n 'transform-origin': \"\".concat(offset.x + transform.x / 16, \"em \").concat(offset.y + transform.y / 16, \"em\")\n }));\n }\n return [{\n tag: 'svg',\n attributes,\n children\n }];\n}\n\nfunction asSymbol (_ref) {\n let {\n prefix,\n iconName,\n children,\n attributes,\n symbol\n } = _ref;\n const id = symbol === true ? \"\".concat(prefix, \"-\").concat(config.cssPrefix, \"-\").concat(iconName) : symbol;\n return [{\n tag: 'svg',\n attributes: {\n style: 'display: none;'\n },\n children: [{\n tag: 'symbol',\n attributes: _objectSpread2(_objectSpread2({}, attributes), {}, {\n id\n }),\n children\n }]\n }];\n}\n\nfunction makeInlineSvgAbstract(params) {\n const {\n icons: {\n main,\n mask\n },\n prefix,\n iconName,\n transform,\n symbol,\n title,\n maskId,\n titleId,\n extra,\n watchable = false\n } = params;\n const {\n width,\n height\n } = mask.found ? mask : main;\n const isUploadedIcon = Lt.includes(prefix);\n const attrClass = [config.replacementClass, iconName ? \"\".concat(config.cssPrefix, \"-\").concat(iconName) : ''].filter(c$$1 => extra.classes.indexOf(c$$1) === -1).filter(c$$1 => c$$1 !== '' || !!c$$1).concat(extra.classes).join(' ');\n let content = {\n children: [],\n attributes: _objectSpread2(_objectSpread2({}, extra.attributes), {}, {\n 'data-prefix': prefix,\n 'data-icon': iconName,\n 'class': attrClass,\n 'role': extra.attributes.role || 'img',\n 'xmlns': 'http://www.w3.org/2000/svg',\n 'viewBox': \"0 0 \".concat(width, \" \").concat(height)\n })\n };\n const uploadedIconWidthStyle = isUploadedIcon && !~extra.classes.indexOf('fa-fw') ? {\n width: \"\".concat(width / height * 16 * 0.0625, \"em\")\n } : {};\n if (watchable) {\n content.attributes[DATA_FA_I2SVG] = '';\n }\n if (title) {\n content.children.push({\n tag: 'title',\n attributes: {\n id: content.attributes['aria-labelledby'] || \"title-\".concat(titleId || nextUniqueId())\n },\n children: [title]\n });\n delete content.attributes.title;\n }\n const args = _objectSpread2(_objectSpread2({}, content), {}, {\n prefix,\n iconName,\n main,\n mask,\n maskId,\n transform,\n symbol,\n styles: _objectSpread2(_objectSpread2({}, uploadedIconWidthStyle), extra.styles)\n });\n const {\n children,\n attributes\n } = mask.found && main.found ? callProvided('generateAbstractMask', args) || {\n children: [],\n attributes: {}\n } : callProvided('generateAbstractIcon', args) || {\n children: [],\n attributes: {}\n };\n args.children = children;\n args.attributes = attributes;\n if (symbol) {\n return asSymbol(args);\n } else {\n return asIcon(args);\n }\n}\nfunction makeLayersTextAbstract(params) {\n const {\n content,\n width,\n height,\n transform,\n title,\n extra,\n watchable = false\n } = params;\n const attributes = _objectSpread2(_objectSpread2(_objectSpread2({}, extra.attributes), title ? {\n 'title': title\n } : {}), {}, {\n 'class': extra.classes.join(' ')\n });\n if (watchable) {\n attributes[DATA_FA_I2SVG] = '';\n }\n const styles = _objectSpread2({}, extra.styles);\n if (transformIsMeaningful(transform)) {\n styles['transform'] = transformForCss({\n transform,\n startCentered: true,\n width,\n height\n });\n styles['-webkit-transform'] = styles['transform'];\n }\n const styleString = joinStyles(styles);\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n const val = [];\n val.push({\n tag: 'span',\n attributes,\n children: [content]\n });\n if (title) {\n val.push({\n tag: 'span',\n attributes: {\n class: 'sr-only'\n },\n children: [title]\n });\n }\n return val;\n}\nfunction makeLayersCounterAbstract(params) {\n const {\n content,\n title,\n extra\n } = params;\n const attributes = _objectSpread2(_objectSpread2(_objectSpread2({}, extra.attributes), title ? {\n 'title': title\n } : {}), {}, {\n 'class': extra.classes.join(' ')\n });\n const styleString = joinStyles(extra.styles);\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n const val = [];\n val.push({\n tag: 'span',\n attributes,\n children: [content]\n });\n if (title) {\n val.push({\n tag: 'span',\n attributes: {\n class: 'sr-only'\n },\n children: [title]\n });\n }\n return val;\n}\n\nconst {\n styles: styles$1\n} = namespace;\nfunction asFoundIcon(icon) {\n const width = icon[0];\n const height = icon[1];\n const [vectorData] = icon.slice(4);\n let element = null;\n if (Array.isArray(vectorData)) {\n element = {\n tag: 'g',\n attributes: {\n class: \"\".concat(config.cssPrefix, \"-\").concat(DUOTONE_CLASSES.GROUP)\n },\n children: [{\n tag: 'path',\n attributes: {\n class: \"\".concat(config.cssPrefix, \"-\").concat(DUOTONE_CLASSES.SECONDARY),\n fill: 'currentColor',\n d: vectorData[0]\n }\n }, {\n tag: 'path',\n attributes: {\n class: \"\".concat(config.cssPrefix, \"-\").concat(DUOTONE_CLASSES.PRIMARY),\n fill: 'currentColor',\n d: vectorData[1]\n }\n }]\n };\n } else {\n element = {\n tag: 'path',\n attributes: {\n fill: 'currentColor',\n d: vectorData\n }\n };\n }\n return {\n found: true,\n width,\n height,\n icon: element\n };\n}\nconst missingIconResolutionMixin = {\n found: false,\n width: 512,\n height: 512\n};\nfunction maybeNotifyMissing(iconName, prefix) {\n if (!PRODUCTION && !config.showMissingIcons && iconName) {\n console.error(\"Icon with name \\\"\".concat(iconName, \"\\\" and prefix \\\"\").concat(prefix, \"\\\" is missing.\"));\n }\n}\nfunction findIcon(iconName, prefix) {\n let givenPrefix = prefix;\n if (prefix === 'fa' && config.styleDefault !== null) {\n prefix = getDefaultUsablePrefix();\n }\n return new Promise((resolve, reject) => {\n if (givenPrefix === 'fa') {\n const shim = byOldName(iconName) || {};\n iconName = shim.iconName || iconName;\n prefix = shim.prefix || prefix;\n }\n if (iconName && prefix && styles$1[prefix] && styles$1[prefix][iconName]) {\n const icon = styles$1[prefix][iconName];\n return resolve(asFoundIcon(icon));\n }\n maybeNotifyMissing(iconName, prefix);\n resolve(_objectSpread2(_objectSpread2({}, missingIconResolutionMixin), {}, {\n icon: config.showMissingIcons && iconName ? callProvided('missingIconAbstract') || {} : {}\n }));\n });\n}\n\nconst noop$1 = () => {};\nconst p$2 = config.measurePerformance && PERFORMANCE && PERFORMANCE.mark && PERFORMANCE.measure ? PERFORMANCE : {\n mark: noop$1,\n measure: noop$1\n};\nconst preamble = \"FA \\\"6.7.1\\\"\";\nconst begin = name => {\n p$2.mark(\"\".concat(preamble, \" \").concat(name, \" begins\"));\n return () => end(name);\n};\nconst end = name => {\n p$2.mark(\"\".concat(preamble, \" \").concat(name, \" ends\"));\n p$2.measure(\"\".concat(preamble, \" \").concat(name), \"\".concat(preamble, \" \").concat(name, \" begins\"), \"\".concat(preamble, \" \").concat(name, \" ends\"));\n};\nvar perf = {\n begin,\n end\n};\n\nconst noop$2 = () => {};\nfunction isWatched(node) {\n const i2svg = node.getAttribute ? node.getAttribute(DATA_FA_I2SVG) : null;\n return typeof i2svg === 'string';\n}\nfunction hasPrefixAndIcon(node) {\n const prefix = node.getAttribute ? node.getAttribute(DATA_PREFIX) : null;\n const icon = node.getAttribute ? node.getAttribute(DATA_ICON) : null;\n return prefix && icon;\n}\nfunction hasBeenReplaced(node) {\n return node && node.classList && node.classList.contains && node.classList.contains(config.replacementClass);\n}\nfunction getMutator() {\n if (config.autoReplaceSvg === true) {\n return mutators.replace;\n }\n const mutator = mutators[config.autoReplaceSvg];\n return mutator || mutators.replace;\n}\nfunction createElementNS(tag) {\n return DOCUMENT.createElementNS('http://www.w3.org/2000/svg', tag);\n}\nfunction createElement(tag) {\n return DOCUMENT.createElement(tag);\n}\nfunction convertSVG(abstractObj) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n ceFn = abstractObj.tag === 'svg' ? createElementNS : createElement\n } = params;\n if (typeof abstractObj === 'string') {\n return DOCUMENT.createTextNode(abstractObj);\n }\n const tag = ceFn(abstractObj.tag);\n Object.keys(abstractObj.attributes || []).forEach(function (key) {\n tag.setAttribute(key, abstractObj.attributes[key]);\n });\n const children = abstractObj.children || [];\n children.forEach(function (child) {\n tag.appendChild(convertSVG(child, {\n ceFn\n }));\n });\n return tag;\n}\nfunction nodeAsComment(node) {\n let comment = \" \".concat(node.outerHTML, \" \");\n /* BEGIN.ATTRIBUTION */\n comment = \"\".concat(comment, \"Font Awesome fontawesome.com \");\n /* END.ATTRIBUTION */\n return comment;\n}\nconst mutators = {\n replace: function (mutation) {\n const node = mutation[0];\n if (node.parentNode) {\n mutation[1].forEach(abstract => {\n node.parentNode.insertBefore(convertSVG(abstract), node);\n });\n if (node.getAttribute(DATA_FA_I2SVG) === null && config.keepOriginalSource) {\n let comment = DOCUMENT.createComment(nodeAsComment(node));\n node.parentNode.replaceChild(comment, node);\n } else {\n node.remove();\n }\n }\n },\n nest: function (mutation) {\n const node = mutation[0];\n const abstract = mutation[1];\n\n // If we already have a replaced node we do not want to continue nesting within it.\n // Short-circuit to the standard replacement\n if (~classArray(node).indexOf(config.replacementClass)) {\n return mutators.replace(mutation);\n }\n const forSvg = new RegExp(\"\".concat(config.cssPrefix, \"-.*\"));\n delete abstract[0].attributes.id;\n if (abstract[0].attributes.class) {\n const splitClasses = abstract[0].attributes.class.split(' ').reduce((acc, cls) => {\n if (cls === config.replacementClass || cls.match(forSvg)) {\n acc.toSvg.push(cls);\n } else {\n acc.toNode.push(cls);\n }\n return acc;\n }, {\n toNode: [],\n toSvg: []\n });\n abstract[0].attributes.class = splitClasses.toSvg.join(' ');\n if (splitClasses.toNode.length === 0) {\n node.removeAttribute('class');\n } else {\n node.setAttribute('class', splitClasses.toNode.join(' '));\n }\n }\n const newInnerHTML = abstract.map(a => toHtml(a)).join('\\n');\n node.setAttribute(DATA_FA_I2SVG, '');\n node.innerHTML = newInnerHTML;\n }\n};\nfunction performOperationSync(op) {\n op();\n}\nfunction perform(mutations, callback) {\n const callbackFunction = typeof callback === 'function' ? callback : noop$2;\n if (mutations.length === 0) {\n callbackFunction();\n } else {\n let frame = performOperationSync;\n if (config.mutateApproach === MUTATION_APPROACH_ASYNC) {\n frame = WINDOW.requestAnimationFrame || performOperationSync;\n }\n frame(() => {\n const mutator = getMutator();\n const mark = perf.begin('mutate');\n mutations.map(mutator);\n mark();\n callbackFunction();\n });\n }\n}\nlet disabled = false;\nfunction disableObservation() {\n disabled = true;\n}\nfunction enableObservation() {\n disabled = false;\n}\nlet mo$1 = null;\nfunction observe(options) {\n if (!MUTATION_OBSERVER) {\n return;\n }\n if (!config.observeMutations) {\n return;\n }\n const {\n treeCallback = noop$2,\n nodeCallback = noop$2,\n pseudoElementsCallback = noop$2,\n observeMutationsRoot = DOCUMENT\n } = options;\n mo$1 = new MUTATION_OBSERVER(objects => {\n if (disabled) return;\n const defaultPrefix = getDefaultUsablePrefix();\n toArray(objects).forEach(mutationRecord => {\n if (mutationRecord.type === 'childList' && mutationRecord.addedNodes.length > 0 && !isWatched(mutationRecord.addedNodes[0])) {\n if (config.searchPseudoElements) {\n pseudoElementsCallback(mutationRecord.target);\n }\n treeCallback(mutationRecord.target);\n }\n if (mutationRecord.type === 'attributes' && mutationRecord.target.parentNode && config.searchPseudoElements) {\n pseudoElementsCallback(mutationRecord.target.parentNode);\n }\n if (mutationRecord.type === 'attributes' && isWatched(mutationRecord.target) && ~ATTRIBUTES_WATCHED_FOR_MUTATION.indexOf(mutationRecord.attributeName)) {\n if (mutationRecord.attributeName === 'class' && hasPrefixAndIcon(mutationRecord.target)) {\n const {\n prefix,\n iconName\n } = getCanonicalIcon(classArray(mutationRecord.target));\n mutationRecord.target.setAttribute(DATA_PREFIX, prefix || defaultPrefix);\n if (iconName) mutationRecord.target.setAttribute(DATA_ICON, iconName);\n } else if (hasBeenReplaced(mutationRecord.target)) {\n nodeCallback(mutationRecord.target);\n }\n }\n });\n });\n if (!IS_DOM) return;\n mo$1.observe(observeMutationsRoot, {\n childList: true,\n attributes: true,\n characterData: true,\n subtree: true\n });\n}\nfunction disconnect() {\n if (!mo$1) return;\n mo$1.disconnect();\n}\n\nfunction styleParser (node) {\n const style = node.getAttribute('style');\n let val = [];\n if (style) {\n val = style.split(';').reduce((acc, style) => {\n const styles = style.split(':');\n const prop = styles[0];\n const value = styles.slice(1);\n if (prop && value.length > 0) {\n acc[prop] = value.join(':').trim();\n }\n return acc;\n }, {});\n }\n return val;\n}\n\nfunction classParser (node) {\n const existingPrefix = node.getAttribute('data-prefix');\n const existingIconName = node.getAttribute('data-icon');\n const innerText = node.innerText !== undefined ? node.innerText.trim() : '';\n let val = getCanonicalIcon(classArray(node));\n if (!val.prefix) {\n val.prefix = getDefaultUsablePrefix();\n }\n if (existingPrefix && existingIconName) {\n val.prefix = existingPrefix;\n val.iconName = existingIconName;\n }\n if (val.iconName && val.prefix) {\n return val;\n }\n if (val.prefix && innerText.length > 0) {\n val.iconName = byLigature(val.prefix, node.innerText) || byUnicode(val.prefix, toHex(node.innerText));\n }\n if (!val.iconName && config.autoFetchSvg && node.firstChild && node.firstChild.nodeType === Node.TEXT_NODE) {\n val.iconName = node.firstChild.data;\n }\n return val;\n}\n\nfunction attributesParser (node) {\n const extraAttributes = toArray(node.attributes).reduce((acc, attr) => {\n if (acc.name !== 'class' && acc.name !== 'style') {\n acc[attr.name] = attr.value;\n }\n return acc;\n }, {});\n const title = node.getAttribute('title');\n const titleId = node.getAttribute('data-fa-title-id');\n if (config.autoA11y) {\n if (title) {\n extraAttributes['aria-labelledby'] = \"\".concat(config.replacementClass, \"-title-\").concat(titleId || nextUniqueId());\n } else {\n extraAttributes['aria-hidden'] = 'true';\n extraAttributes['focusable'] = 'false';\n }\n }\n return extraAttributes;\n}\n\nfunction blankMeta() {\n return {\n iconName: null,\n title: null,\n titleId: null,\n prefix: null,\n transform: meaninglessTransform,\n symbol: false,\n mask: {\n iconName: null,\n prefix: null,\n rest: []\n },\n maskId: null,\n extra: {\n classes: [],\n styles: {},\n attributes: {}\n }\n };\n}\nfunction parseMeta(node) {\n let parser = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n styleParser: true\n };\n const {\n iconName,\n prefix,\n rest: extraClasses\n } = classParser(node);\n const extraAttributes = attributesParser(node);\n const pluginMeta = chainHooks('parseNodeAttributes', {}, node);\n let extraStyles = parser.styleParser ? styleParser(node) : [];\n return _objectSpread2({\n iconName,\n title: node.getAttribute('title'),\n titleId: node.getAttribute('data-fa-title-id'),\n prefix,\n transform: meaninglessTransform,\n mask: {\n iconName: null,\n prefix: null,\n rest: []\n },\n maskId: null,\n symbol: false,\n extra: {\n classes: extraClasses,\n styles: extraStyles,\n attributes: extraAttributes\n }\n }, pluginMeta);\n}\n\nconst {\n styles: styles$2\n} = namespace;\nfunction generateMutation(node) {\n const nodeMeta = config.autoReplaceSvg === 'nest' ? parseMeta(node, {\n styleParser: false\n }) : parseMeta(node);\n if (~nodeMeta.extra.classes.indexOf(LAYERS_TEXT_CLASSNAME)) {\n return callProvided('generateLayersText', node, nodeMeta);\n } else {\n return callProvided('generateSvgReplacementMutation', node, nodeMeta);\n }\n}\nfunction getKnownPrefixes() {\n return [...Ft, ...xo];\n}\nfunction onTree(root) {\n let callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n if (!IS_DOM) return Promise.resolve();\n const htmlClassList = DOCUMENT.documentElement.classList;\n const hclAdd = suffix => htmlClassList.add(\"\".concat(HTML_CLASS_I2SVG_BASE_CLASS, \"-\").concat(suffix));\n const hclRemove = suffix => htmlClassList.remove(\"\".concat(HTML_CLASS_I2SVG_BASE_CLASS, \"-\").concat(suffix));\n const prefixes = config.autoFetchSvg ? getKnownPrefixes() : P.concat(Object.keys(styles$2));\n if (!prefixes.includes('fa')) {\n prefixes.push('fa');\n }\n const prefixesDomQuery = [\".\".concat(LAYERS_TEXT_CLASSNAME, \":not([\").concat(DATA_FA_I2SVG, \"])\")].concat(prefixes.map(p$$1 => \".\".concat(p$$1, \":not([\").concat(DATA_FA_I2SVG, \"])\"))).join(', ');\n if (prefixesDomQuery.length === 0) {\n return Promise.resolve();\n }\n let candidates = [];\n try {\n candidates = toArray(root.querySelectorAll(prefixesDomQuery));\n } catch (e$$1) {\n // noop\n }\n if (candidates.length > 0) {\n hclAdd('pending');\n hclRemove('complete');\n } else {\n return Promise.resolve();\n }\n const mark = perf.begin('onTree');\n const mutations = candidates.reduce((acc, node) => {\n try {\n const mutation = generateMutation(node);\n if (mutation) {\n acc.push(mutation);\n }\n } catch (e$$1) {\n if (!PRODUCTION) {\n if (e$$1.name === 'MissingIcon') {\n console.error(e$$1);\n }\n }\n }\n return acc;\n }, []);\n return new Promise((resolve, reject) => {\n Promise.all(mutations).then(resolvedMutations => {\n perform(resolvedMutations, () => {\n hclAdd('active');\n hclAdd('complete');\n hclRemove('pending');\n if (typeof callback === 'function') callback();\n mark();\n resolve();\n });\n }).catch(e$$1 => {\n mark();\n reject(e$$1);\n });\n });\n}\nfunction onNode(node) {\n let callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n generateMutation(node).then(mutation => {\n if (mutation) {\n perform([mutation], callback);\n }\n });\n}\nfunction resolveIcons(next) {\n return function (maybeIconDefinition) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const iconDefinition = (maybeIconDefinition || {}).icon ? maybeIconDefinition : findIconDefinition(maybeIconDefinition || {});\n let {\n mask\n } = params;\n if (mask) {\n mask = (mask || {}).icon ? mask : findIconDefinition(mask || {});\n }\n return next(iconDefinition, _objectSpread2(_objectSpread2({}, params), {}, {\n mask\n }));\n };\n}\nconst render = function (iconDefinition) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n transform = meaninglessTransform,\n symbol = false,\n mask = null,\n maskId = null,\n title = null,\n titleId = null,\n classes = [],\n attributes = {},\n styles = {}\n } = params;\n if (!iconDefinition) return;\n const {\n prefix,\n iconName,\n icon\n } = iconDefinition;\n return domVariants(_objectSpread2({\n type: 'icon'\n }, iconDefinition), () => {\n callHooks('beforeDOMElementCreation', {\n iconDefinition,\n params\n });\n if (config.autoA11y) {\n if (title) {\n attributes['aria-labelledby'] = \"\".concat(config.replacementClass, \"-title-\").concat(titleId || nextUniqueId());\n } else {\n attributes['aria-hidden'] = 'true';\n attributes['focusable'] = 'false';\n }\n }\n return makeInlineSvgAbstract({\n icons: {\n main: asFoundIcon(icon),\n mask: mask ? asFoundIcon(mask.icon) : {\n found: false,\n width: null,\n height: null,\n icon: {}\n }\n },\n prefix,\n iconName,\n transform: _objectSpread2(_objectSpread2({}, meaninglessTransform), transform),\n symbol,\n title,\n maskId,\n titleId,\n extra: {\n attributes,\n styles,\n classes\n }\n });\n });\n};\nvar ReplaceElements = {\n mixout() {\n return {\n icon: resolveIcons(render)\n };\n },\n hooks() {\n return {\n mutationObserverCallbacks(accumulator) {\n accumulator.treeCallback = onTree;\n accumulator.nodeCallback = onNode;\n return accumulator;\n }\n };\n },\n provides(providers$$1) {\n providers$$1.i2svg = function (params) {\n const {\n node = DOCUMENT,\n callback = () => {}\n } = params;\n return onTree(node, callback);\n };\n providers$$1.generateSvgReplacementMutation = function (node, nodeMeta) {\n const {\n iconName,\n title,\n titleId,\n prefix,\n transform,\n symbol,\n mask,\n maskId,\n extra\n } = nodeMeta;\n return new Promise((resolve, reject) => {\n Promise.all([findIcon(iconName, prefix), mask.iconName ? findIcon(mask.iconName, mask.prefix) : Promise.resolve({\n found: false,\n width: 512,\n height: 512,\n icon: {}\n })]).then(_ref => {\n let [main, mask] = _ref;\n resolve([node, makeInlineSvgAbstract({\n icons: {\n main,\n mask\n },\n prefix,\n iconName,\n transform,\n symbol,\n maskId,\n title,\n titleId,\n extra,\n watchable: true\n })]);\n }).catch(reject);\n });\n };\n providers$$1.generateAbstractIcon = function (_ref2) {\n let {\n children,\n attributes,\n main,\n transform,\n styles\n } = _ref2;\n const styleString = joinStyles(styles);\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n let nextChild;\n if (transformIsMeaningful(transform)) {\n nextChild = callProvided('generateAbstractTransformGrouping', {\n main,\n transform,\n containerWidth: main.width,\n iconWidth: main.width\n });\n }\n children.push(nextChild || main.icon);\n return {\n children,\n attributes\n };\n };\n }\n};\n\nvar Layers = {\n mixout() {\n return {\n layer(assembler) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n classes = []\n } = params;\n return domVariants({\n type: 'layer'\n }, () => {\n callHooks('beforeDOMElementCreation', {\n assembler,\n params\n });\n let children = [];\n assembler(args => {\n Array.isArray(args) ? args.map(a => {\n children = children.concat(a.abstract);\n }) : children = children.concat(args.abstract);\n });\n return [{\n tag: 'span',\n attributes: {\n class: [\"\".concat(config.cssPrefix, \"-layers\"), ...classes].join(' ')\n },\n children\n }];\n });\n }\n };\n }\n};\n\nvar LayersCounter = {\n mixout() {\n return {\n counter(content) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n title = null,\n classes = [],\n attributes = {},\n styles = {}\n } = params;\n return domVariants({\n type: 'counter',\n content\n }, () => {\n callHooks('beforeDOMElementCreation', {\n content,\n params\n });\n return makeLayersCounterAbstract({\n content: content.toString(),\n title,\n extra: {\n attributes,\n styles,\n classes: [\"\".concat(config.cssPrefix, \"-layers-counter\"), ...classes]\n }\n });\n });\n }\n };\n }\n};\n\nvar LayersText = {\n mixout() {\n return {\n text(content) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n transform = meaninglessTransform,\n title = null,\n classes = [],\n attributes = {},\n styles = {}\n } = params;\n return domVariants({\n type: 'text',\n content\n }, () => {\n callHooks('beforeDOMElementCreation', {\n content,\n params\n });\n return makeLayersTextAbstract({\n content,\n transform: _objectSpread2(_objectSpread2({}, meaninglessTransform), transform),\n title,\n extra: {\n attributes,\n styles,\n classes: [\"\".concat(config.cssPrefix, \"-layers-text\"), ...classes]\n }\n });\n });\n }\n };\n },\n provides(providers$$1) {\n providers$$1.generateLayersText = function (node, nodeMeta) {\n const {\n title,\n transform,\n extra\n } = nodeMeta;\n let width = null;\n let height = null;\n if (IS_IE) {\n const computedFontSize = parseInt(getComputedStyle(node).fontSize, 10);\n const boundingClientRect = node.getBoundingClientRect();\n width = boundingClientRect.width / computedFontSize;\n height = boundingClientRect.height / computedFontSize;\n }\n if (config.autoA11y && !title) {\n extra.attributes['aria-hidden'] = 'true';\n }\n return Promise.resolve([node, makeLayersTextAbstract({\n content: node.innerHTML,\n width,\n height,\n transform,\n title,\n extra,\n watchable: true\n })]);\n };\n }\n};\n\nconst CLEAN_CONTENT_PATTERN = new RegExp('\\u{22}', 'ug');\nconst SECONDARY_UNICODE_RANGE = [1105920, 1112319];\nconst _FONT_FAMILY_WEIGHT_TO_PREFIX = _objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2({}, {\n FontAwesome: {\n normal: 'fas',\n 400: 'fas'\n }\n}), lt), ko), Yt);\nconst FONT_FAMILY_WEIGHT_TO_PREFIX = Object.keys(_FONT_FAMILY_WEIGHT_TO_PREFIX).reduce((acc, key) => {\n acc[key.toLowerCase()] = _FONT_FAMILY_WEIGHT_TO_PREFIX[key];\n return acc;\n}, {});\nconst FONT_FAMILY_WEIGHT_FALLBACK = Object.keys(FONT_FAMILY_WEIGHT_TO_PREFIX).reduce((acc, fontFamily) => {\n const weights = FONT_FAMILY_WEIGHT_TO_PREFIX[fontFamily];\n acc[fontFamily] = weights[900] || [...Object.entries(weights)][0][1];\n return acc;\n}, {});\nfunction hexValueFromContent(content) {\n const cleaned = content.replace(CLEAN_CONTENT_PATTERN, '');\n const codePoint = codePointAt(cleaned, 0);\n const isPrependTen = codePoint >= SECONDARY_UNICODE_RANGE[0] && codePoint <= SECONDARY_UNICODE_RANGE[1];\n const isDoubled = cleaned.length === 2 ? cleaned[0] === cleaned[1] : false;\n return {\n value: isDoubled ? toHex(cleaned[0]) : toHex(cleaned),\n isSecondary: isPrependTen || isDoubled\n };\n}\nfunction getPrefix(fontFamily, fontWeight) {\n const fontFamilySanitized = fontFamily.replace(/^['\"]|['\"]$/g, '').toLowerCase();\n const fontWeightInteger = parseInt(fontWeight);\n const fontWeightSanitized = isNaN(fontWeightInteger) ? 'normal' : fontWeightInteger;\n return (FONT_FAMILY_WEIGHT_TO_PREFIX[fontFamilySanitized] || {})[fontWeightSanitized] || FONT_FAMILY_WEIGHT_FALLBACK[fontFamilySanitized];\n}\nfunction replaceForPosition(node, position) {\n const pendingAttribute = \"\".concat(DATA_FA_PSEUDO_ELEMENT_PENDING).concat(position.replace(':', '-'));\n return new Promise((resolve, reject) => {\n if (node.getAttribute(pendingAttribute) !== null) {\n // This node is already being processed\n return resolve();\n }\n const children = toArray(node.children);\n const alreadyProcessedPseudoElement = children.filter(c$$1 => c$$1.getAttribute(DATA_FA_PSEUDO_ELEMENT) === position)[0];\n const styles = WINDOW.getComputedStyle(node, position);\n const fontFamily = styles.getPropertyValue('font-family');\n const fontFamilyMatch = fontFamily.match(FONT_FAMILY_PATTERN);\n const fontWeight = styles.getPropertyValue('font-weight');\n const content = styles.getPropertyValue('content');\n if (alreadyProcessedPseudoElement && !fontFamilyMatch) {\n // If we've already processed it but the current computed style does not result in a font-family,\n // that probably means that a class name that was previously present to make the icon has been\n // removed. So we now should delete the icon.\n node.removeChild(alreadyProcessedPseudoElement);\n return resolve();\n } else if (fontFamilyMatch && content !== 'none' && content !== '') {\n const content = styles.getPropertyValue('content');\n let prefix = getPrefix(fontFamily, fontWeight);\n const {\n value: hexValue,\n isSecondary\n } = hexValueFromContent(content);\n const isV4 = fontFamilyMatch[0].startsWith('FontAwesome');\n let iconName = byUnicode(prefix, hexValue);\n let iconIdentifier = iconName;\n if (isV4) {\n const iconName4 = byOldUnicode(hexValue);\n if (iconName4.iconName && iconName4.prefix) {\n iconName = iconName4.iconName;\n prefix = iconName4.prefix;\n }\n }\n\n // Only convert the pseudo element in this ::before/::after position into an icon if we haven't\n // already done so with the same prefix and iconName\n if (iconName && !isSecondary && (!alreadyProcessedPseudoElement || alreadyProcessedPseudoElement.getAttribute(DATA_PREFIX) !== prefix || alreadyProcessedPseudoElement.getAttribute(DATA_ICON) !== iconIdentifier)) {\n node.setAttribute(pendingAttribute, iconIdentifier);\n if (alreadyProcessedPseudoElement) {\n // Delete the old one, since we're replacing it with a new one\n node.removeChild(alreadyProcessedPseudoElement);\n }\n const meta = blankMeta();\n const {\n extra\n } = meta;\n extra.attributes[DATA_FA_PSEUDO_ELEMENT] = position;\n findIcon(iconName, prefix).then(main => {\n const abstract = makeInlineSvgAbstract(_objectSpread2(_objectSpread2({}, meta), {}, {\n icons: {\n main,\n mask: emptyCanonicalIcon()\n },\n prefix,\n iconName: iconIdentifier,\n extra,\n watchable: true\n }));\n const element = DOCUMENT.createElementNS('http://www.w3.org/2000/svg', 'svg');\n if (position === '::before') {\n node.insertBefore(element, node.firstChild);\n } else {\n node.appendChild(element);\n }\n element.outerHTML = abstract.map(a$$1 => toHtml(a$$1)).join('\\n');\n node.removeAttribute(pendingAttribute);\n resolve();\n }).catch(reject);\n } else {\n resolve();\n }\n } else {\n resolve();\n }\n });\n}\nfunction replace(node) {\n return Promise.all([replaceForPosition(node, '::before'), replaceForPosition(node, '::after')]);\n}\nfunction processable(node) {\n return node.parentNode !== document.head && !~TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS.indexOf(node.tagName.toUpperCase()) && !node.getAttribute(DATA_FA_PSEUDO_ELEMENT) && (!node.parentNode || node.parentNode.tagName !== 'svg');\n}\nfunction searchPseudoElements(root) {\n if (!IS_DOM) return;\n return new Promise((resolve, reject) => {\n const operations = toArray(root.querySelectorAll('*')).filter(processable).map(replace);\n const end = perf.begin('searchPseudoElements');\n disableObservation();\n Promise.all(operations).then(() => {\n end();\n enableObservation();\n resolve();\n }).catch(() => {\n end();\n enableObservation();\n reject();\n });\n });\n}\nvar PseudoElements = {\n hooks() {\n return {\n mutationObserverCallbacks(accumulator) {\n accumulator.pseudoElementsCallback = searchPseudoElements;\n return accumulator;\n }\n };\n },\n provides(providers) {\n providers.pseudoElements2svg = function (params) {\n const {\n node = DOCUMENT\n } = params;\n if (config.searchPseudoElements) {\n searchPseudoElements(node);\n }\n };\n }\n};\n\nlet _unwatched = false;\nvar MutationObserver$1 = {\n mixout() {\n return {\n dom: {\n unwatch() {\n disableObservation();\n _unwatched = true;\n }\n }\n };\n },\n hooks() {\n return {\n bootstrap() {\n observe(chainHooks('mutationObserverCallbacks', {}));\n },\n noAuto() {\n disconnect();\n },\n watch(params) {\n const {\n observeMutationsRoot\n } = params;\n if (_unwatched) {\n enableObservation();\n } else {\n observe(chainHooks('mutationObserverCallbacks', {\n observeMutationsRoot\n }));\n }\n }\n };\n }\n};\n\nconst parseTransformString = transformString => {\n let transform = {\n size: 16,\n x: 0,\n y: 0,\n flipX: false,\n flipY: false,\n rotate: 0\n };\n return transformString.toLowerCase().split(' ').reduce((acc, n) => {\n const parts = n.toLowerCase().split('-');\n const first = parts[0];\n let rest = parts.slice(1).join('-');\n if (first && rest === 'h') {\n acc.flipX = true;\n return acc;\n }\n if (first && rest === 'v') {\n acc.flipY = true;\n return acc;\n }\n rest = parseFloat(rest);\n if (isNaN(rest)) {\n return acc;\n }\n switch (first) {\n case 'grow':\n acc.size = acc.size + rest;\n break;\n case 'shrink':\n acc.size = acc.size - rest;\n break;\n case 'left':\n acc.x = acc.x - rest;\n break;\n case 'right':\n acc.x = acc.x + rest;\n break;\n case 'up':\n acc.y = acc.y - rest;\n break;\n case 'down':\n acc.y = acc.y + rest;\n break;\n case 'rotate':\n acc.rotate = acc.rotate + rest;\n break;\n }\n return acc;\n }, transform);\n};\nvar PowerTransforms = {\n mixout() {\n return {\n parse: {\n transform: transformString => {\n return parseTransformString(transformString);\n }\n }\n };\n },\n hooks() {\n return {\n parseNodeAttributes(accumulator, node) {\n const transformString = node.getAttribute('data-fa-transform');\n if (transformString) {\n accumulator.transform = parseTransformString(transformString);\n }\n return accumulator;\n }\n };\n },\n provides(providers) {\n providers.generateAbstractTransformGrouping = function (_ref) {\n let {\n main,\n transform,\n containerWidth,\n iconWidth\n } = _ref;\n const outer = {\n transform: \"translate(\".concat(containerWidth / 2, \" 256)\")\n };\n const innerTranslate = \"translate(\".concat(transform.x * 32, \", \").concat(transform.y * 32, \") \");\n const innerScale = \"scale(\".concat(transform.size / 16 * (transform.flipX ? -1 : 1), \", \").concat(transform.size / 16 * (transform.flipY ? -1 : 1), \") \");\n const innerRotate = \"rotate(\".concat(transform.rotate, \" 0 0)\");\n const inner = {\n transform: \"\".concat(innerTranslate, \" \").concat(innerScale, \" \").concat(innerRotate)\n };\n const path = {\n transform: \"translate(\".concat(iconWidth / 2 * -1, \" -256)\")\n };\n const operations = {\n outer,\n inner,\n path\n };\n return {\n tag: 'g',\n attributes: _objectSpread2({}, operations.outer),\n children: [{\n tag: 'g',\n attributes: _objectSpread2({}, operations.inner),\n children: [{\n tag: main.icon.tag,\n children: main.icon.children,\n attributes: _objectSpread2(_objectSpread2({}, main.icon.attributes), operations.path)\n }]\n }]\n };\n };\n }\n};\n\nconst ALL_SPACE = {\n x: 0,\n y: 0,\n width: '100%',\n height: '100%'\n};\nfunction fillBlack(abstract) {\n let force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n if (abstract.attributes && (abstract.attributes.fill || force)) {\n abstract.attributes.fill = 'black';\n }\n return abstract;\n}\nfunction deGroup(abstract) {\n if (abstract.tag === 'g') {\n return abstract.children;\n } else {\n return [abstract];\n }\n}\nvar Masks = {\n hooks() {\n return {\n parseNodeAttributes(accumulator, node) {\n const maskData = node.getAttribute('data-fa-mask');\n const mask = !maskData ? emptyCanonicalIcon() : getCanonicalIcon(maskData.split(' ').map(i => i.trim()));\n if (!mask.prefix) {\n mask.prefix = getDefaultUsablePrefix();\n }\n accumulator.mask = mask;\n accumulator.maskId = node.getAttribute('data-fa-mask-id');\n return accumulator;\n }\n };\n },\n provides(providers) {\n providers.generateAbstractMask = function (_ref) {\n let {\n children,\n attributes,\n main,\n mask,\n maskId: explicitMaskId,\n transform\n } = _ref;\n const {\n width: mainWidth,\n icon: mainPath\n } = main;\n const {\n width: maskWidth,\n icon: maskPath\n } = mask;\n const trans = transformForSvg({\n transform,\n containerWidth: maskWidth,\n iconWidth: mainWidth\n });\n const maskRect = {\n tag: 'rect',\n attributes: _objectSpread2(_objectSpread2({}, ALL_SPACE), {}, {\n fill: 'white'\n })\n };\n const maskInnerGroupChildrenMixin = mainPath.children ? {\n children: mainPath.children.map(fillBlack)\n } : {};\n const maskInnerGroup = {\n tag: 'g',\n attributes: _objectSpread2({}, trans.inner),\n children: [fillBlack(_objectSpread2({\n tag: mainPath.tag,\n attributes: _objectSpread2(_objectSpread2({}, mainPath.attributes), trans.path)\n }, maskInnerGroupChildrenMixin))]\n };\n const maskOuterGroup = {\n tag: 'g',\n attributes: _objectSpread2({}, trans.outer),\n children: [maskInnerGroup]\n };\n const maskId = \"mask-\".concat(explicitMaskId || nextUniqueId());\n const clipId = \"clip-\".concat(explicitMaskId || nextUniqueId());\n const maskTag = {\n tag: 'mask',\n attributes: _objectSpread2(_objectSpread2({}, ALL_SPACE), {}, {\n id: maskId,\n maskUnits: 'userSpaceOnUse',\n maskContentUnits: 'userSpaceOnUse'\n }),\n children: [maskRect, maskOuterGroup]\n };\n const defs = {\n tag: 'defs',\n children: [{\n tag: 'clipPath',\n attributes: {\n id: clipId\n },\n children: deGroup(maskPath)\n }, maskTag]\n };\n children.push(defs, {\n tag: 'rect',\n attributes: _objectSpread2({\n fill: 'currentColor',\n 'clip-path': \"url(#\".concat(clipId, \")\"),\n mask: \"url(#\".concat(maskId, \")\")\n }, ALL_SPACE)\n });\n return {\n children,\n attributes\n };\n };\n }\n};\n\nvar MissingIconIndicator = {\n provides(providers) {\n let reduceMotion = false;\n if (WINDOW.matchMedia) {\n reduceMotion = WINDOW.matchMedia('(prefers-reduced-motion: reduce)').matches;\n }\n providers.missingIconAbstract = function () {\n const gChildren = [];\n const FILL = {\n fill: 'currentColor'\n };\n const ANIMATION_BASE = {\n attributeType: 'XML',\n repeatCount: 'indefinite',\n dur: '2s'\n };\n\n // Ring\n gChildren.push({\n tag: 'path',\n attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {\n d: 'M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z'\n })\n });\n const OPACITY_ANIMATE = _objectSpread2(_objectSpread2({}, ANIMATION_BASE), {}, {\n attributeName: 'opacity'\n });\n const dot = {\n tag: 'circle',\n attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {\n cx: '256',\n cy: '364',\n r: '28'\n }),\n children: []\n };\n if (!reduceMotion) {\n dot.children.push({\n tag: 'animate',\n attributes: _objectSpread2(_objectSpread2({}, ANIMATION_BASE), {}, {\n attributeName: 'r',\n values: '28;14;28;28;14;28;'\n })\n }, {\n tag: 'animate',\n attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {\n values: '1;0;1;1;0;1;'\n })\n });\n }\n gChildren.push(dot);\n gChildren.push({\n tag: 'path',\n attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {\n opacity: '1',\n d: 'M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z'\n }),\n children: reduceMotion ? [] : [{\n tag: 'animate',\n attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {\n values: '1;0;0;0;0;1;'\n })\n }]\n });\n if (!reduceMotion) {\n // Exclamation\n gChildren.push({\n tag: 'path',\n attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {\n opacity: '0',\n d: 'M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z'\n }),\n children: [{\n tag: 'animate',\n attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {\n values: '0;0;1;1;0;0;'\n })\n }]\n });\n }\n return {\n tag: 'g',\n attributes: {\n 'class': 'missing'\n },\n children: gChildren\n };\n };\n }\n};\n\nvar SvgSymbols = {\n hooks() {\n return {\n parseNodeAttributes(accumulator, node) {\n const symbolData = node.getAttribute('data-fa-symbol');\n const symbol = symbolData === null ? false : symbolData === '' ? true : symbolData;\n accumulator['symbol'] = symbol;\n return accumulator;\n }\n };\n }\n};\n\nvar plugins = [InjectCSS, ReplaceElements, Layers, LayersCounter, LayersText, PseudoElements, MutationObserver$1, PowerTransforms, Masks, MissingIconIndicator, SvgSymbols];\n\nregisterPlugins(plugins, {\n mixoutsTo: api\n});\nconst noAuto$1 = api.noAuto;\nconst config$1 = api.config;\nconst library$1 = api.library;\nconst dom$1 = api.dom;\nconst parse$1 = api.parse;\nconst findIconDefinition$1 = api.findIconDefinition;\nconst toHtml$1 = api.toHtml;\nconst icon = api.icon;\nconst layer = api.layer;\nconst text = api.text;\nconst counter = api.counter;\n\nexport { noAuto$1 as noAuto, config$1 as config, library$1 as library, dom$1 as dom, parse$1 as parse, findIconDefinition$1 as findIconDefinition, toHtml$1 as toHtml, icon, layer, text, counter, api };\n"],"names":["i0","Injectable","Directive","Input","Component","inject","Optional","HostBinding","NgModule","DOCUMENT","dom","config","icon","parse","counter","text","i2","_c0","faWarnIfIconDefinitionMissing","iconSpec","Error","iconName","prefix","faWarnIfIconSpecMissing","isKnownRotateValue","rotate","faClassList","props","knownRotateValue","classes","animation","startsWith","fixedWidth","border","inverse","flip","size","pull","stackItemSize","Object","keys","map","key","filter","cssInserted","WeakSet","autoCssId","ensureCss","document","autoAddCss","has","getElementById","add","style","createElement","setAttribute","innerHTML","css","headChildren","head","childNodes","beforeChild","i","length","child","tagName","nodeName","toUpperCase","indexOf","insertBefore","isIconLookup","undefined","faNormalizeIconSpec","defaultPrefix","Array","isArray","FaConfig","constructor","fallbackIcon","_autoAddCss","value","ɵfac","FaConfig_Factory","__ngFactoryType__","ɵprov","ɵɵdefineInjectable","token","factory","providedIn","ngDevMode","ɵsetClassMetadata","type","args","FaIconLibrary","definitions","addIcons","icons","alias","addIconPacks","packs","pack","getIconDefinition","name","FaIconLibrary_Factory","FaStackItemSizeDirective","ngOnChanges","changes","FaStackItemSizeDirective_Factory","ɵdir","ɵɵdefineDirective","selectors","inputs","standalone","features","ɵɵNgOnChangesFeature","selector","FaStackComponent","renderer","elementRef","ngOnInit","addClass","nativeElement","currentValue","previousValue","removeClass","FaStackComponent_Factory","ɵɵdirectiveInject","Renderer2","ElementRef","ɵcmp","ɵɵdefineComponent","ɵɵStandaloneFeature","ngContentSelectors","decls","vars","template","FaStackComponent_Template","rf","ctx","ɵɵprojectionDef","ɵɵprojection","encapsulation","FaIconComponent","sanitizer","iconLibrary","stackItem","stack","console","error","iconDefinition","findIconDefinition","params","buildParams","renderedIcon","renderedIconHTML","bypassSecurityTrustHtml","html","join","render","lookup","definition","classOpts","parsedTransform","transform","styles","title","mask","symbol","attributes","role","a11yRole","FaIconComponent_Factory","DomSanitizer","hostAttrs","hostVars","hostBindings","FaIconComponent_HostBindings","ɵɵhostProperty","ɵɵsanitizeHtml","ɵɵattribute","FaIconComponent_Template","host","class","decorators","FaDuotoneIconComponent","swapOpacity","push","primaryOpacity","toString","secondaryOpacity","primaryColor","secondaryColor","ɵFaDuotoneIconComponent_BaseFactory","FaDuotoneIconComponent_Factory","ɵɵgetInheritedFactory","ɵɵInheritDefinitionFeature","FaDuotoneIconComponent_Template","faWarnIfParentNotExist","parent","parentName","childName","FaLayersComponent","FaLayersComponent_Factory","FaLayersComponent_HostBindings","ɵɵclassProp","FaLayersComponent_Template","FaLayersCounterComponent","updateContent","position","renderedHTML","content","FaLayersCounterComponent_Factory","FaLayersCounterComponent_HostBindings","FaLayersCounterComponent_Template","FaLayersTextComponent","FaLayersTextComponent_Factory","FaLayersTextComponent_HostBindings","FaLayersTextComponent_Template","FontAwesomeModule","FontAwesomeModule_Factory","ɵmod","ɵɵdefineNgModule","ɵinj","ɵɵdefineInjector","imports","exports","_defineProperty","e","r","t","_toPropertyKey","defineProperty","enumerable","configurable","writable","_inherits","TypeError","prototype","create","_setPrototypeOf","ownKeys","getOwnPropertySymbols","o","getOwnPropertyDescriptor","apply","_objectSpread2","arguments","forEach","getOwnPropertyDescriptors","defineProperties","setPrototypeOf","bind","__proto__","_toPrimitive","Symbol","toPrimitive","call","String","Number","_wrapRegExp","BabelRegExp","RegExp","WeakMap","p","set","get","buildGroups","reduce","exec","groups","indices","replace","slice","noop","_WINDOW","_DOCUMENT","_MUTATION_OBSERVER","_PERFORMANCE","mark","measure","window","MutationObserver","performance","userAgent","navigator","WINDOW","MUTATION_OBSERVER","PERFORMANCE","IS_BROWSER","IS_DOM","documentElement","addEventListener","IS_IE","g","S","classic","fa","fas","far","fal","fat","fab","duotone","fad","fadr","fadl","fadt","sharp","fass","fasr","fasl","fast","fasds","fasdr","fasdl","fasdt","A","GROUP","SWAP_OPACITY","PRIMARY","SECONDARY","P","s","L","G","normal","lt","pt","Map","defaultShortPrefixId","defaultStyleId","styleIds","futureStyleIds","defaultFontWeight","xt","solid","regular","light","thin","brands","Ft","St","kit","fak","fakd","At","Ct","Lt","Wt","Et","t$1","r$1","bt$1","Yt","po","I$1","co","x","xo","m$1","c$1","F$1","concat","Fo","ko","NAMESPACE_IDENTIFIER","UNITS_IN_GRID","DEFAULT_CSS_PREFIX","DEFAULT_REPLACEMENT_CLASS","DATA_FA_I2SVG","DATA_FA_PSEUDO_ELEMENT","DATA_FA_PSEUDO_ELEMENT_PENDING","DATA_PREFIX","DATA_ICON","HTML_CLASS_I2SVG_BASE_CLASS","MUTATION_APPROACH_ASYNC","TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS","PRODUCTION","process","env","NODE_ENV","e$$1","familyProxy","obj","Proxy","target","prop","_PREFIX_TO_STYLE","PREFIX_TO_STYLE","_STYLE_TO_PREFIX","STYLE_TO_PREFIX","_PREFIX_TO_LONG_STYLE","PREFIX_TO_LONG_STYLE","_LONG_STYLE_TO_PREFIX","LONG_STYLE_TO_PREFIX","ICON_SELECTION_SYNTAX_PATTERN","LAYERS_TEXT_CLASSNAME","FONT_FAMILY_PATTERN","_FONT_WEIGHT_TO_PREFIX","FONT_WEIGHT_TO_PREFIX","ATTRIBUTES_WATCHED_FOR_MUTATION","DUOTONE_CLASSES","RESERVED_CLASSES","initial","FontAwesomeConfig","getAttrConfig","attr","element","querySelector","getAttribute","coerce","val","attrs","_ref","_default","styleDefault","familyDefault","cssPrefix","replacementClass","autoReplaceSvg","autoA11y","searchPseudoElements","observeMutations","mutateApproach","keepOriginalSource","measurePerformance","showMissingIcons","familyPrefix","_config","_onChangeCb","cb","onChange","splice","d$2","meaninglessTransform","y","flipX","flipY","insertCss","idPool","nextUniqueId","id","Math","random","toArray","array","classArray","node","classList","split","htmlEscape","str","joinAttributes","acc","attributeName","trim","joinStyles","styleName","transformIsMeaningful","transformForSvg","containerWidth","iconWidth","outer","innerTranslate","innerScale","innerRotate","inner","path","transformForCss","_ref2","width","height","startCentered","baseStyles","dcp","drc","fp","rc","dPatt","customPropPatt","rPatt","_cssInserted","InjectCSS","mixout","hooks","beforeDOMElementCreation","beforeI2svg","w","shims","namespace","functions","listener","removeEventListener","loaded","fn","doScroll","test","readyState","domready","setTimeout","toHtml","abstractNodes","tag","children","iconFromMapping","mapping","bindInternal4","func","thisContext","a","b","c","d","fastReduceObject","subject","initialValue","iterator","result","ucs2decode","string","output","charCodeAt","extra","toHex","unicode","decoded","codePointAt","index","first","second","normalizeIcons","expanded","defineIcons","skipHooks","normalized","addPack","duotonePathRe","d1","d2","cls1","cls2","FAMILY_NAMES","PREFIXES_FOR_FAMILY","familyId","_defaultUsablePrefix","_byUnicode","_byLigature","_byOldName","_byOldUnicode","_byAlias","isReserved","getIconName","cls","parts","build","reducer","o$$1","aliases","a$$1","hasRegular","autoFetchSvg","shimLookups","shim","maybeNameMaybeUnicode","names","unicodes","getCanonicalPrefix","family","c$$1","byUnicode","byLigature","ligature","byAlias","byOldName","byOldUnicode","oldUnicode","newUnicode","getDefaultUsablePrefix","emptyCanonicalIcon","rest","getFamilyId","values","famProps","includes","some","v$$1","styleOrPrefix","defined","moveNonFaClassesToRest","classNames","sortedUniqueValues","arr","sort","getCanonicalIcon","skipLookups","givenPrefix","faCombinedClasses","faStyleOrFamilyClasses","nonStyleOrFamilyClasses","faStyles","styleFromValues","canonical","getDefaultCanonicalPrefix","applyShimAndAlias","aliasIconName","newCanonicalFamilies","newCanonicalStyles","flat","prefixOptions","config$$1","isDuotoneFamily","valuesHasDuotone","defaultFamilyIsDuotone","canonicalPrefixIsDuotone","validPrefix","find","Library","_len","_key","additions","_pullDefinitions","longPrefix","reset","_plugins","_hooks","providers","defaultProviderKeys","registerPlugins","nextPlugins","mixoutsTo","k","plugin","tk","sk","hook","provides","chainHooks","accumulator","hookFns","hookFn","callHooks","_len2","_key2","callProvided","iconLookup","library","noAuto","i2svg","Promise","reject","watch","autoReplaceSvgRoot","autoReplace","match","canonicalIcon","api","domVariants","abstractCreator","abstract","container","asIcon","main","found","offset","asSymbol","makeInlineSvgAbstract","maskId","titleId","watchable","isUploadedIcon","attrClass","uploadedIconWidthStyle","makeLayersTextAbstract","styleString","makeLayersCounterAbstract","styles$1","asFoundIcon","vectorData","fill","missingIconResolutionMixin","maybeNotifyMissing","findIcon","resolve","noop$1","p$2","preamble","begin","end","perf","noop$2","isWatched","hasPrefixAndIcon","hasBeenReplaced","contains","getMutator","mutators","mutator","createElementNS","convertSVG","abstractObj","ceFn","createTextNode","appendChild","nodeAsComment","comment","outerHTML","mutation","parentNode","createComment","replaceChild","remove","nest","forSvg","splitClasses","toSvg","toNode","removeAttribute","newInnerHTML","performOperationSync","op","perform","mutations","callback","callbackFunction","frame","requestAnimationFrame","disabled","disableObservation","enableObservation","mo$1","observe","options","treeCallback","nodeCallback","pseudoElementsCallback","observeMutationsRoot","objects","mutationRecord","addedNodes","childList","characterData","subtree","disconnect","styleParser","classParser","existingPrefix","existingIconName","innerText","firstChild","nodeType","Node","TEXT_NODE","data","attributesParser","extraAttributes","blankMeta","parseMeta","parser","extraClasses","pluginMeta","extraStyles","styles$2","generateMutation","nodeMeta","getKnownPrefixes","onTree","root","htmlClassList","hclAdd","suffix","hclRemove","prefixes","prefixesDomQuery","p$$1","candidates","querySelectorAll","all","then","resolvedMutations","catch","onNode","resolveIcons","next","maybeIconDefinition","ReplaceElements","mutationObserverCallbacks","providers$$1","generateSvgReplacementMutation","generateAbstractIcon","nextChild","Layers","layer","assembler","LayersCounter","LayersText","generateLayersText","computedFontSize","parseInt","getComputedStyle","fontSize","boundingClientRect","getBoundingClientRect","CLEAN_CONTENT_PATTERN","SECONDARY_UNICODE_RANGE","_FONT_FAMILY_WEIGHT_TO_PREFIX","FontAwesome","FONT_FAMILY_WEIGHT_TO_PREFIX","toLowerCase","FONT_FAMILY_WEIGHT_FALLBACK","fontFamily","weights","entries","hexValueFromContent","cleaned","codePoint","isPrependTen","isDoubled","isSecondary","getPrefix","fontWeight","fontFamilySanitized","fontWeightInteger","fontWeightSanitized","isNaN","replaceForPosition","pendingAttribute","alreadyProcessedPseudoElement","getPropertyValue","fontFamilyMatch","removeChild","hexValue","isV4","iconIdentifier","iconName4","meta","processable","operations","PseudoElements","pseudoElements2svg","_unwatched","MutationObserver$1","unwatch","bootstrap","parseTransformString","transformString","n","parseFloat","PowerTransforms","parseNodeAttributes","generateAbstractTransformGrouping","ALL_SPACE","fillBlack","force","deGroup","Masks","maskData","generateAbstractMask","explicitMaskId","mainWidth","mainPath","maskWidth","maskPath","trans","maskRect","maskInnerGroupChildrenMixin","maskInnerGroup","maskOuterGroup","clipId","maskTag","maskUnits","maskContentUnits","defs","MissingIconIndicator","reduceMotion","matchMedia","matches","missingIconAbstract","gChildren","FILL","ANIMATION_BASE","attributeType","repeatCount","dur","OPACITY_ANIMATE","dot","cx","cy","opacity","SvgSymbols","symbolData","plugins","noAuto$1","config$1","library$1","dom$1","parse$1","findIconDefinition$1","toHtml$1"],"sourceRoot":"webpack:///","x_google_ignoreList":[0,1]}