From 4fd29c877b675b90148b76d3506405bcbb739e38 Mon Sep 17 00:00:00 2001 From: Alexander Ebert Date: Tue, 9 Aug 2022 15:00:13 +0200 Subject: [PATCH] Move the brand icons into a separate `` element --- .github/workflows/typescript.yml | 4 +- .../templates/headIncludeJavaScript.tpl | 1 + extra/update-font-awesome-metadata.ts | 2 +- ts/WoltLabSuite/WebComponent/fa-brand.ts | 60 +++++++++++++++++++ ts/WoltLabSuite/WebComponent/fa-icon.ts | 56 +++-------------- .../js/WoltLabSuite/WebComponent/fa-brand.js | 51 ++++++++++++++++ .../js/WoltLabSuite/WebComponent/fa-icon.js | 52 +++------------- .../WoltLabSuite/WebComponent/fa-metadata.js | 2 +- .../IconFunctionTemplatePlugin.class.php | 2 +- .../files/style/font-awesome/000-woltlab.scss | 41 ++++++------- 10 files changed, 154 insertions(+), 117 deletions(-) create mode 100644 ts/WoltLabSuite/WebComponent/fa-brand.ts create mode 100644 wcfsetup/install/files/js/WoltLabSuite/WebComponent/fa-brand.js diff --git a/.github/workflows/typescript.yml b/.github/workflows/typescript.yml index 2f4bff98d2..71833b68c1 100644 --- a/.github/workflows/typescript.yml +++ b/.github/workflows/typescript.yml @@ -22,7 +22,7 @@ jobs: node-version: "16" cache: "npm" - run: npm install - - run: npx tsc --build --noEmit + - run: npx tsc --noEmit - name: Check that tslib is in sync. run: diff -wu wcfsetup/install/files/js/3rdParty/tslib.js node_modules/tslib/tslib.js eslint: @@ -54,7 +54,7 @@ jobs: cache: "npm" - run: npm install - run: rm -r wcfsetup/install/files/js/WoltLabSuite/ - - run: npx tsc --build + - run: npx tsc - run: echo "::add-matcher::.github/diff.json" - name: Show diff run: | diff --git a/com.woltlab.wcf/templates/headIncludeJavaScript.tpl b/com.woltlab.wcf/templates/headIncludeJavaScript.tpl index 1c2516c4dd..fa3e3a88dc 100644 --- a/com.woltlab.wcf/templates/headIncludeJavaScript.tpl +++ b/com.woltlab.wcf/templates/headIncludeJavaScript.tpl @@ -26,6 +26,7 @@ {/if} + diff --git a/extra/update-font-awesome-metadata.ts b/extra/update-font-awesome-metadata.ts index a849af4aa9..f75d91356f 100644 --- a/extra/update-font-awesome-metadata.ts +++ b/extra/update-font-awesome-metadata.ts @@ -31,7 +31,7 @@ const output = `(() => { ${JSON.stringify(values)} ); - window.getFontAwesome6Styles = (name) => styles.get(name); + window.getFontAwesome6IconMetadata = (name) => styles.get(name); })();`; process.stdout.write(output); diff --git a/ts/WoltLabSuite/WebComponent/fa-brand.ts b/ts/WoltLabSuite/WebComponent/fa-brand.ts new file mode 100644 index 0000000000..3ea5ea07e3 --- /dev/null +++ b/ts/WoltLabSuite/WebComponent/fa-brand.ts @@ -0,0 +1,60 @@ +(() => { + const HeightMap = new Map([ + [16, 14], + [24, 18], + [32, 28], + [48, 42], + [64, 56], + [96, 84], + [128, 112], + [144, 130], + ]); + + class FaBrand extends HTMLElement { + connectedCallback() { + this.validate(); + + const root = this.prepareRoot(); + + const slot = document.createElement("slot"); + slot.name = "svg"; + root.append(slot); + } + + private validate(): void { + if (this.size === 0) { + throw new TypeError("Must provide an icon size."); + } else if (!HeightMap.has(this.size)) { + throw new TypeError("Must provide a valid icon size."); + } + } + + private prepareRoot(): ShadowRoot { + const root = this.attachShadow({ mode: "open" }); + + const iconHeight = HeightMap.get(this.size)!; + const style = document.createElement("style"); + style.textContent = ` + ::slotted(svg) { + fill: currentColor; + height: ${iconHeight}px; + shape-rendering: geometricprecision; + } + `; + root.append(style); + + return root; + } + + get size(): number { + const size = this.getAttribute("size"); + if (size === null) { + return 0; + } + + return parseInt(size); + } + } + + window.customElements.define("fa-brand", FaBrand); +})(); diff --git a/ts/WoltLabSuite/WebComponent/fa-icon.ts b/ts/WoltLabSuite/WebComponent/fa-icon.ts index e13a598d49..69c541e37e 100644 --- a/ts/WoltLabSuite/WebComponent/fa-icon.ts +++ b/ts/WoltLabSuite/WebComponent/fa-icon.ts @@ -14,15 +14,9 @@ connectedCallback() { this.validate(); - const root = this.prepareRoot(); - if (this.brand) { - const slot = document.createElement("slot"); - slot.name = "svg"; - root.append(slot); - } else { - const [codepoint] = window.getFontAwesome6IconMetadata(this.name)!; - root.append(codepoint); - } + const root = this.attachShadow({ mode: "open" }); + const [codepoint] = window.getFontAwesome6IconMetadata(this.name)!; + root.append(codepoint); } private validate(): void { @@ -32,47 +26,17 @@ throw new TypeError("Must provide a valid icon size."); } - if (this.brand) { - if (this.name !== "") { - throw new TypeError("Cannot provide a name for brand icons."); - } - } else { - if (this.name === "") { - throw new TypeError("Must provide the name of the icon."); - } - - const styles = window.getFontAwesome6IconMetadata(this.name); - if (styles === undefined) { - throw new TypeError(`The icon '${this.name}' is unknown or unsupported.`); - } + if (this.name === "") { + throw new TypeError("Must provide the name of the icon."); } - } - private prepareRoot(): ShadowRoot { - const root = this.attachShadow({ mode: "open" }); - - if (this.brand) { - const iconHeight = HeightMap.get(this.size)!; - - const style = document.createElement("style"); - style.textContent = ` - ::slotted(svg) { - fill: currentColor; - height: ${iconHeight}px; - shape-rendering: geometricprecision; - } - `; - root.append(style); + const styles = window.getFontAwesome6IconMetadata(this.name); + if (styles === undefined) { + throw new TypeError(`The icon '${this.name}' is unknown or unsupported.`); } - - return root; } setIcon(name: string, type: "regular" | "solid"): void { - if (this.brand) { - throw new Error("Cannot change the icon of a brand icon."); - } - const metadata = window.getFontAwesome6IconMetadata(name); if (metadata === undefined) { throw new TypeError(`The icon '${name}' is unknown or unsupported.`); @@ -117,10 +81,6 @@ } } - get brand(): boolean { - return this.hasAttribute("brand"); - } - get name(): string { return this.getAttribute("name") || ""; } diff --git a/wcfsetup/install/files/js/WoltLabSuite/WebComponent/fa-brand.js b/wcfsetup/install/files/js/WoltLabSuite/WebComponent/fa-brand.js new file mode 100644 index 0000000000..b2e2bafdcf --- /dev/null +++ b/wcfsetup/install/files/js/WoltLabSuite/WebComponent/fa-brand.js @@ -0,0 +1,51 @@ +(() => { + const HeightMap = new Map([ + [16, 14], + [24, 18], + [32, 28], + [48, 42], + [64, 56], + [96, 84], + [128, 112], + [144, 130], + ]); + class FaBrand extends HTMLElement { + connectedCallback() { + this.validate(); + const root = this.prepareRoot(); + const slot = document.createElement("slot"); + slot.name = "svg"; + root.append(slot); + } + validate() { + if (this.size === 0) { + throw new TypeError("Must provide an icon size."); + } + else if (!HeightMap.has(this.size)) { + throw new TypeError("Must provide a valid icon size."); + } + } + prepareRoot() { + const root = this.attachShadow({ mode: "open" }); + const iconHeight = HeightMap.get(this.size); + const style = document.createElement("style"); + style.textContent = ` + ::slotted(svg) { + fill: currentColor; + height: ${iconHeight}px; + shape-rendering: geometricprecision; + } + `; + root.append(style); + return root; + } + get size() { + const size = this.getAttribute("size"); + if (size === null) { + return 0; + } + return parseInt(size); + } + } + window.customElements.define("fa-brand", FaBrand); +})(); diff --git a/wcfsetup/install/files/js/WoltLabSuite/WebComponent/fa-icon.js b/wcfsetup/install/files/js/WoltLabSuite/WebComponent/fa-icon.js index 95b78b4c7e..3e13561b82 100644 --- a/wcfsetup/install/files/js/WoltLabSuite/WebComponent/fa-icon.js +++ b/wcfsetup/install/files/js/WoltLabSuite/WebComponent/fa-icon.js @@ -12,16 +12,9 @@ class FaIcon extends HTMLElement { connectedCallback() { this.validate(); - const root = this.prepareRoot(); - if (this.brand) { - const slot = document.createElement("slot"); - slot.name = "svg"; - root.append(slot); - } - else { - const [codepoint] = window.getFontAwesome6IconMetadata(this.name); - root.append(codepoint); - } + const root = this.attachShadow({ mode: "open" }); + const [codepoint] = window.getFontAwesome6IconMetadata(this.name); + root.append(codepoint); } validate() { if (this.size === 0) { @@ -30,42 +23,16 @@ else if (!HeightMap.has(this.size)) { throw new TypeError("Must provide a valid icon size."); } - if (this.brand) { - if (this.name !== "") { - throw new TypeError("Cannot provide a name for brand icons."); - } + if (this.name === "") { + throw new TypeError("Must provide the name of the icon."); } - else { - if (this.name === "") { - throw new TypeError("Must provide the name of the icon."); - } - const styles = window.getFontAwesome6IconMetadata(this.name); - if (styles === undefined) { - throw new TypeError(`The icon '${this.name}' is unknown or unsupported.`); - } + const styles = window.getFontAwesome6IconMetadata(this.name); + if (styles === undefined) { + throw new TypeError(`The icon '${this.name}' is unknown or unsupported.`); } } - prepareRoot() { - const root = this.attachShadow({ mode: "open" }); - if (this.brand) { - const iconHeight = HeightMap.get(this.size); - const style = document.createElement("style"); - style.textContent = ` - ::slotted(svg) { - fill: currentColor; - height: ${iconHeight}px; - shape-rendering: geometricprecision; - } - `; - root.append(style); - } - return root; - } setIcon(name, type) { var _a; - if (this.brand) { - throw new Error("Cannot change the icon of a brand icon."); - } const metadata = window.getFontAwesome6IconMetadata(name); if (metadata === undefined) { throw new TypeError(`The icon '${name}' is unknown or unsupported.`); @@ -103,9 +70,6 @@ this.removeAttribute("regular"); } } - get brand() { - return this.hasAttribute("brand"); - } get name() { return this.getAttribute("name") || ""; } diff --git a/wcfsetup/install/files/js/WoltLabSuite/WebComponent/fa-metadata.js b/wcfsetup/install/files/js/WoltLabSuite/WebComponent/fa-metadata.js index 6937ff8e06..e3a4387cff 100644 --- a/wcfsetup/install/files/js/WoltLabSuite/WebComponent/fa-metadata.js +++ b/wcfsetup/install/files/js/WoltLabSuite/WebComponent/fa-metadata.js @@ -3,5 +3,5 @@ [["0",["0",["solid"]]],["1",["1",["solid"]]],["2",["2",["solid"]]],["3",["3",["solid"]]],["4",["4",["solid"]]],["5",["5",["solid"]]],["6",["6",["solid"]]],["7",["7",["solid"]]],["8",["8",["solid"]]],["9",["9",["solid"]]],["42-group",["",["brands"]]],["500px",["",["brands"]]],["a",["A",["solid"]]],["accessible-icon",["",["brands"]]],["accusoft",["",["brands"]]],["address-book",["",["solid","regular"]]],["address-card",["",["solid","regular"]]],["adn",["",["brands"]]],["adversal",["",["brands"]]],["affiliatetheme",["",["brands"]]],["airbnb",["",["brands"]]],["algolia",["",["brands"]]],["align-center",["",["solid"]]],["align-justify",["",["solid"]]],["align-left",["",["solid"]]],["align-right",["",["solid"]]],["alipay",["",["brands"]]],["amazon",["",["brands"]]],["amazon-pay",["",["brands"]]],["amilia",["",["brands"]]],["anchor",["",["solid"]]],["anchor-circle-check",["",["solid"]]],["anchor-circle-exclamation",["",["solid"]]],["anchor-circle-xmark",["",["solid"]]],["anchor-lock",["",["solid"]]],["android",["",["brands"]]],["angellist",["",["brands"]]],["angle-down",["",["solid"]]],["angle-left",["",["solid"]]],["angle-right",["",["solid"]]],["angle-up",["",["solid"]]],["angles-down",["",["solid"]]],["angles-left",["",["solid"]]],["angles-right",["",["solid"]]],["angles-up",["",["solid"]]],["angrycreative",["",["brands"]]],["angular",["",["brands"]]],["ankh",["",["solid"]]],["app-store",["",["brands"]]],["app-store-ios",["",["brands"]]],["apper",["",["brands"]]],["apple",["",["brands"]]],["apple-pay",["",["brands"]]],["apple-whole",["",["solid"]]],["archway",["",["solid"]]],["arrow-down",["",["solid"]]],["arrow-down-1-9",["",["solid"]]],["arrow-down-9-1",["",["solid"]]],["arrow-down-a-z",["",["solid"]]],["arrow-down-long",["",["solid"]]],["arrow-down-short-wide",["",["solid"]]],["arrow-down-up-across-line",["",["solid"]]],["arrow-down-up-lock",["",["solid"]]],["arrow-down-wide-short",["",["solid"]]],["arrow-down-z-a",["",["solid"]]],["arrow-left",["",["solid"]]],["arrow-left-long",["",["solid"]]],["arrow-pointer",["",["solid"]]],["arrow-right",["",["solid"]]],["arrow-right-arrow-left",["",["solid"]]],["arrow-right-from-bracket",["",["solid"]]],["arrow-right-long",["",["solid"]]],["arrow-right-to-bracket",["",["solid"]]],["arrow-right-to-city",["",["solid"]]],["arrow-rotate-left",["",["solid"]]],["arrow-rotate-right",["",["solid"]]],["arrow-trend-down",["",["solid"]]],["arrow-trend-up",["",["solid"]]],["arrow-turn-down",["",["solid"]]],["arrow-turn-up",["",["solid"]]],["arrow-up",["",["solid"]]],["arrow-up-1-9",["",["solid"]]],["arrow-up-9-1",["",["solid"]]],["arrow-up-a-z",["",["solid"]]],["arrow-up-from-bracket",["",["solid"]]],["arrow-up-from-ground-water",["",["solid"]]],["arrow-up-from-water-pump",["",["solid"]]],["arrow-up-long",["",["solid"]]],["arrow-up-right-dots",["",["solid"]]],["arrow-up-right-from-square",["",["solid"]]],["arrow-up-short-wide",["",["solid"]]],["arrow-up-wide-short",["",["solid"]]],["arrow-up-z-a",["",["solid"]]],["arrows-down-to-line",["",["solid"]]],["arrows-down-to-people",["",["solid"]]],["arrows-left-right",["",["solid"]]],["arrows-left-right-to-line",["",["solid"]]],["arrows-rotate",["",["solid"]]],["arrows-spin",["",["solid"]]],["arrows-split-up-and-left",["",["solid"]]],["arrows-to-circle",["",["solid"]]],["arrows-to-dot",["",["solid"]]],["arrows-to-eye",["",["solid"]]],["arrows-turn-right",["",["solid"]]],["arrows-turn-to-dots",["",["solid"]]],["arrows-up-down",["",["solid"]]],["arrows-up-down-left-right",["",["solid"]]],["arrows-up-to-line",["",["solid"]]],["artstation",["",["brands"]]],["asterisk",["*",["solid"]]],["asymmetrik",["",["brands"]]],["at",["@",["solid"]]],["atlassian",["",["brands"]]],["atom",["",["solid"]]],["audible",["",["brands"]]],["audio-description",["",["solid"]]],["austral-sign",["",["solid"]]],["autoprefixer",["",["brands"]]],["avianex",["",["brands"]]],["aviato",["",["brands"]]],["award",["",["solid"]]],["aws",["",["brands"]]],["b",["B",["solid"]]],["baby",["",["solid"]]],["baby-carriage",["",["solid"]]],["backward",["",["solid"]]],["backward-fast",["",["solid"]]],["backward-step",["",["solid"]]],["bacon",["",["solid"]]],["bacteria",["",["solid"]]],["bacterium",["",["solid"]]],["bag-shopping",["",["solid"]]],["bahai",["",["solid"]]],["baht-sign",["",["solid"]]],["ban",["",["solid"]]],["ban-smoking",["",["solid"]]],["bandage",["",["solid"]]],["bandcamp",["",["brands"]]],["barcode",["",["solid"]]],["bars",["",["solid"]]],["bars-progress",["",["solid"]]],["bars-staggered",["",["solid"]]],["baseball",["",["solid"]]],["baseball-bat-ball",["",["solid"]]],["basket-shopping",["",["solid"]]],["basketball",["",["solid"]]],["bath",["",["solid"]]],["battery-empty",["",["solid"]]],["battery-full",["",["solid"]]],["battery-half",["",["solid"]]],["battery-quarter",["",["solid"]]],["battery-three-quarters",["",["solid"]]],["battle-net",["",["brands"]]],["bed",["",["solid"]]],["bed-pulse",["",["solid"]]],["beer-mug-empty",["",["solid"]]],["behance",["",["brands"]]],["bell",["",["solid","regular"]]],["bell-concierge",["",["solid"]]],["bell-slash",["",["solid","regular"]]],["bezier-curve",["",["solid"]]],["bicycle",["",["solid"]]],["bilibili",["",["brands"]]],["bimobject",["",["brands"]]],["binoculars",["",["solid"]]],["biohazard",["",["solid"]]],["bitbucket",["",["brands"]]],["bitcoin",["",["brands"]]],["bitcoin-sign",["",["solid"]]],["bity",["",["brands"]]],["black-tie",["",["brands"]]],["blackberry",["",["brands"]]],["blender",["",["solid"]]],["blender-phone",["",["solid"]]],["blog",["",["solid"]]],["blogger",["",["brands"]]],["blogger-b",["",["brands"]]],["bluetooth",["",["brands"]]],["bluetooth-b",["",["brands"]]],["bold",["",["solid"]]],["bolt",["",["solid"]]],["bolt-lightning",["",["solid"]]],["bomb",["",["solid"]]],["bone",["",["solid"]]],["bong",["",["solid"]]],["book",["",["solid"]]],["book-atlas",["",["solid"]]],["book-bible",["",["solid"]]],["book-bookmark",["",["solid"]]],["book-journal-whills",["",["solid"]]],["book-medical",["",["solid"]]],["book-open",["",["solid"]]],["book-open-reader",["",["solid"]]],["book-quran",["",["solid"]]],["book-skull",["",["solid"]]],["book-tanakh",["",["solid"]]],["bookmark",["",["solid","regular"]]],["bootstrap",["",["brands"]]],["border-all",["",["solid"]]],["border-none",["",["solid"]]],["border-top-left",["",["solid"]]],["bore-hole",["",["solid"]]],["bots",["",["brands"]]],["bottle-droplet",["",["solid"]]],["bottle-water",["",["solid"]]],["bowl-food",["",["solid"]]],["bowl-rice",["",["solid"]]],["bowling-ball",["",["solid"]]],["box",["",["solid"]]],["box-archive",["",["solid"]]],["box-open",["",["solid"]]],["box-tissue",["",["solid"]]],["boxes-packing",["",["solid"]]],["boxes-stacked",["",["solid"]]],["braille",["",["solid"]]],["brain",["",["solid"]]],["brazilian-real-sign",["",["solid"]]],["bread-slice",["",["solid"]]],["bridge",["",["solid"]]],["bridge-circle-check",["",["solid"]]],["bridge-circle-exclamation",["",["solid"]]],["bridge-circle-xmark",["",["solid"]]],["bridge-lock",["",["solid"]]],["bridge-water",["",["solid"]]],["briefcase",["",["solid"]]],["briefcase-medical",["",["solid"]]],["broom",["",["solid"]]],["broom-ball",["",["solid"]]],["brush",["",["solid"]]],["btc",["",["brands"]]],["bucket",["",["solid"]]],["buffer",["",["brands"]]],["bug",["",["solid"]]],["bug-slash",["",["solid"]]],["bugs",["",["solid"]]],["building",["",["solid","regular"]]],["building-circle-arrow-right",["",["solid"]]],["building-circle-check",["",["solid"]]],["building-circle-exclamation",["",["solid"]]],["building-circle-xmark",["",["solid"]]],["building-columns",["",["solid"]]],["building-flag",["",["solid"]]],["building-lock",["",["solid"]]],["building-ngo",["",["solid"]]],["building-shield",["",["solid"]]],["building-un",["",["solid"]]],["building-user",["",["solid"]]],["building-wheat",["",["solid"]]],["bullhorn",["",["solid"]]],["bullseye",["",["solid"]]],["burger",["",["solid"]]],["buromobelexperte",["",["brands"]]],["burst",["",["solid"]]],["bus",["",["solid"]]],["bus-simple",["",["solid"]]],["business-time",["",["solid"]]],["buy-n-large",["",["brands"]]],["buysellads",["",["brands"]]],["c",["C",["solid"]]],["cable-car",["",["solid"]]],["cake-candles",["",["solid"]]],["calculator",["",["solid"]]],["calendar",["",["solid","regular"]]],["calendar-check",["",["solid","regular"]]],["calendar-day",["",["solid"]]],["calendar-days",["",["solid","regular"]]],["calendar-minus",["",["solid","regular"]]],["calendar-plus",["",["solid","regular"]]],["calendar-week",["",["solid"]]],["calendar-xmark",["",["solid","regular"]]],["camera",["",["solid"]]],["camera-retro",["",["solid"]]],["camera-rotate",["",["solid"]]],["campground",["",["solid"]]],["canadian-maple-leaf",["",["brands"]]],["candy-cane",["",["solid"]]],["cannabis",["",["solid"]]],["capsules",["",["solid"]]],["car",["",["solid"]]],["car-battery",["",["solid"]]],["car-burst",["",["solid"]]],["car-on",["",["solid"]]],["car-rear",["",["solid"]]],["car-side",["",["solid"]]],["car-tunnel",["",["solid"]]],["caravan",["",["solid"]]],["caret-down",["",["solid"]]],["caret-left",["",["solid"]]],["caret-right",["",["solid"]]],["caret-up",["",["solid"]]],["carrot",["",["solid"]]],["cart-arrow-down",["",["solid"]]],["cart-flatbed",["",["solid"]]],["cart-flatbed-suitcase",["",["solid"]]],["cart-plus",["",["solid"]]],["cart-shopping",["",["solid"]]],["cash-register",["",["solid"]]],["cat",["",["solid"]]],["cc-amazon-pay",["",["brands"]]],["cc-amex",["",["brands"]]],["cc-apple-pay",["",["brands"]]],["cc-diners-club",["",["brands"]]],["cc-discover",["",["brands"]]],["cc-jcb",["",["brands"]]],["cc-mastercard",["",["brands"]]],["cc-paypal",["",["brands"]]],["cc-stripe",["",["brands"]]],["cc-visa",["",["brands"]]],["cedi-sign",["",["solid"]]],["cent-sign",["",["solid"]]],["centercode",["",["brands"]]],["centos",["",["brands"]]],["certificate",["",["solid"]]],["chair",["",["solid"]]],["chalkboard",["",["solid"]]],["chalkboard-user",["",["solid"]]],["champagne-glasses",["",["solid"]]],["charging-station",["",["solid"]]],["chart-area",["",["solid"]]],["chart-bar",["",["solid","regular"]]],["chart-column",["",["solid"]]],["chart-gantt",["",["solid"]]],["chart-line",["",["solid"]]],["chart-pie",["",["solid"]]],["chart-simple",["",["solid"]]],["check",["",["solid"]]],["check-double",["",["solid"]]],["check-to-slot",["",["solid"]]],["cheese",["",["solid"]]],["chess",["",["solid"]]],["chess-bishop",["",["solid","regular"]]],["chess-board",["",["solid"]]],["chess-king",["",["solid","regular"]]],["chess-knight",["",["solid","regular"]]],["chess-pawn",["",["solid","regular"]]],["chess-queen",["",["solid","regular"]]],["chess-rook",["",["solid","regular"]]],["chevron-down",["",["solid"]]],["chevron-left",["",["solid"]]],["chevron-right",["",["solid"]]],["chevron-up",["",["solid"]]],["child",["",["solid"]]],["child-dress",["",["solid"]]],["child-reaching",["",["solid"]]],["child-rifle",["",["solid"]]],["children",["",["solid"]]],["chrome",["",["brands"]]],["chromecast",["",["brands"]]],["church",["",["solid"]]],["circle",["",["solid","regular"]]],["circle-arrow-down",["",["solid"]]],["circle-arrow-left",["",["solid"]]],["circle-arrow-right",["",["solid"]]],["circle-arrow-up",["",["solid"]]],["circle-check",["",["solid","regular"]]],["circle-chevron-down",["",["solid"]]],["circle-chevron-left",["",["solid"]]],["circle-chevron-right",["",["solid"]]],["circle-chevron-up",["",["solid"]]],["circle-dollar-to-slot",["",["solid"]]],["circle-dot",["",["solid","regular"]]],["circle-down",["",["solid","regular"]]],["circle-exclamation",["",["solid"]]],["circle-h",["",["solid"]]],["circle-half-stroke",["",["solid"]]],["circle-info",["",["solid"]]],["circle-left",["",["solid","regular"]]],["circle-minus",["",["solid"]]],["circle-nodes",["",["solid"]]],["circle-notch",["",["solid"]]],["circle-pause",["",["solid","regular"]]],["circle-play",["",["solid","regular"]]],["circle-plus",["",["solid"]]],["circle-question",["",["solid","regular"]]],["circle-radiation",["",["solid"]]],["circle-right",["",["solid","regular"]]],["circle-stop",["",["solid","regular"]]],["circle-up",["",["solid","regular"]]],["circle-user",["",["solid","regular"]]],["circle-xmark",["",["solid","regular"]]],["city",["",["solid"]]],["clapperboard",["",["solid"]]],["clipboard",["",["solid","regular"]]],["clipboard-check",["",["solid"]]],["clipboard-list",["",["solid"]]],["clipboard-question",["",["solid"]]],["clipboard-user",["",["solid"]]],["clock",["",["solid","regular"]]],["clock-rotate-left",["",["solid"]]],["clone",["",["solid","regular"]]],["closed-captioning",["",["solid","regular"]]],["cloud",["",["solid"]]],["cloud-arrow-down",["",["solid"]]],["cloud-arrow-up",["",["solid"]]],["cloud-bolt",["",["solid"]]],["cloud-meatball",["",["solid"]]],["cloud-moon",["",["solid"]]],["cloud-moon-rain",["",["solid"]]],["cloud-rain",["",["solid"]]],["cloud-showers-heavy",["",["solid"]]],["cloud-showers-water",["",["solid"]]],["cloud-sun",["",["solid"]]],["cloud-sun-rain",["",["solid"]]],["cloudflare",["",["brands"]]],["cloudscale",["",["brands"]]],["cloudsmith",["",["brands"]]],["cloudversify",["",["brands"]]],["clover",["",["solid"]]],["cmplid",["",["brands"]]],["code",["",["solid"]]],["code-branch",["",["solid"]]],["code-commit",["",["solid"]]],["code-compare",["",["solid"]]],["code-fork",["",["solid"]]],["code-merge",["",["solid"]]],["code-pull-request",["",["solid"]]],["codepen",["",["brands"]]],["codiepie",["",["brands"]]],["coins",["",["solid"]]],["colon-sign",["",["solid"]]],["comment",["",["solid","regular"]]],["comment-dollar",["",["solid"]]],["comment-dots",["",["solid","regular"]]],["comment-medical",["",["solid"]]],["comment-slash",["",["solid"]]],["comment-sms",["",["solid"]]],["comments",["",["solid","regular"]]],["comments-dollar",["",["solid"]]],["compact-disc",["",["solid"]]],["compass",["",["solid","regular"]]],["compass-drafting",["",["solid"]]],["compress",["",["solid"]]],["computer",["",["solid"]]],["computer-mouse",["",["solid"]]],["confluence",["",["brands"]]],["connectdevelop",["",["brands"]]],["contao",["",["brands"]]],["cookie",["",["solid"]]],["cookie-bite",["",["solid"]]],["copy",["",["solid","regular"]]],["copyright",["",["solid","regular"]]],["cotton-bureau",["",["brands"]]],["couch",["",["solid"]]],["cow",["",["solid"]]],["cpanel",["",["brands"]]],["creative-commons",["",["brands"]]],["creative-commons-by",["",["brands"]]],["creative-commons-nc",["",["brands"]]],["creative-commons-nc-eu",["",["brands"]]],["creative-commons-nc-jp",["",["brands"]]],["creative-commons-nd",["",["brands"]]],["creative-commons-pd",["",["brands"]]],["creative-commons-pd-alt",["",["brands"]]],["creative-commons-remix",["",["brands"]]],["creative-commons-sa",["",["brands"]]],["creative-commons-sampling",["",["brands"]]],["creative-commons-sampling-plus",["",["brands"]]],["creative-commons-share",["",["brands"]]],["creative-commons-zero",["",["brands"]]],["credit-card",["",["solid","regular"]]],["critical-role",["",["brands"]]],["crop",["",["solid"]]],["crop-simple",["",["solid"]]],["cross",["",["solid"]]],["crosshairs",["",["solid"]]],["crow",["",["solid"]]],["crown",["",["solid"]]],["crutch",["",["solid"]]],["cruzeiro-sign",["",["solid"]]],["css3",["",["brands"]]],["css3-alt",["",["brands"]]],["cube",["",["solid"]]],["cubes",["",["solid"]]],["cubes-stacked",["",["solid"]]],["cuttlefish",["",["brands"]]],["d",["D",["solid"]]],["d-and-d",["",["brands"]]],["d-and-d-beyond",["",["brands"]]],["dailymotion",["",["brands"]]],["dashcube",["",["brands"]]],["database",["",["solid"]]],["deezer",["",["brands"]]],["delete-left",["",["solid"]]],["delicious",["",["brands"]]],["democrat",["",["solid"]]],["deploydog",["",["brands"]]],["deskpro",["",["brands"]]],["desktop",["",["solid"]]],["dev",["",["brands"]]],["deviantart",["",["brands"]]],["dharmachakra",["",["solid"]]],["dhl",["",["brands"]]],["diagram-next",["",["solid"]]],["diagram-predecessor",["",["solid"]]],["diagram-project",["",["solid"]]],["diagram-successor",["",["solid"]]],["diamond",["",["solid"]]],["diamond-turn-right",["",["solid"]]],["diaspora",["",["brands"]]],["dice",["",["solid"]]],["dice-d20",["",["solid"]]],["dice-d6",["",["solid"]]],["dice-five",["",["solid"]]],["dice-four",["",["solid"]]],["dice-one",["",["solid"]]],["dice-six",["",["solid"]]],["dice-three",["",["solid"]]],["dice-two",["",["solid"]]],["digg",["",["brands"]]],["digital-ocean",["",["brands"]]],["discord",["",["brands"]]],["discourse",["",["brands"]]],["disease",["",["solid"]]],["display",["",["solid"]]],["divide",["",["solid"]]],["dna",["",["solid"]]],["dochub",["",["brands"]]],["docker",["",["brands"]]],["dog",["",["solid"]]],["dollar-sign",["$",["solid"]]],["dolly",["",["solid"]]],["dong-sign",["",["solid"]]],["door-closed",["",["solid"]]],["door-open",["",["solid"]]],["dove",["",["solid"]]],["down-left-and-up-right-to-center",["",["solid"]]],["down-long",["",["solid"]]],["download",["",["solid"]]],["draft2digital",["",["brands"]]],["dragon",["",["solid"]]],["draw-polygon",["",["solid"]]],["dribbble",["",["brands"]]],["dropbox",["",["brands"]]],["droplet",["",["solid"]]],["droplet-slash",["",["solid"]]],["drum",["",["solid"]]],["drum-steelpan",["",["solid"]]],["drumstick-bite",["",["solid"]]],["drupal",["",["brands"]]],["dumbbell",["",["solid"]]],["dumpster",["",["solid"]]],["dumpster-fire",["",["solid"]]],["dungeon",["",["solid"]]],["dyalog",["",["brands"]]],["e",["E",["solid"]]],["ear-deaf",["",["solid"]]],["ear-listen",["",["solid"]]],["earlybirds",["",["brands"]]],["earth-africa",["",["solid"]]],["earth-americas",["",["solid"]]],["earth-asia",["",["solid"]]],["earth-europe",["",["solid"]]],["earth-oceania",["",["solid"]]],["ebay",["",["brands"]]],["edge",["",["brands"]]],["edge-legacy",["",["brands"]]],["egg",["",["solid"]]],["eject",["",["solid"]]],["elementor",["",["brands"]]],["elevator",["",["solid"]]],["ellipsis",["",["solid"]]],["ellipsis-vertical",["",["solid"]]],["ello",["",["brands"]]],["ember",["",["brands"]]],["empire",["",["brands"]]],["envelope",["",["solid","regular"]]],["envelope-circle-check",["",["solid"]]],["envelope-open",["",["solid","regular"]]],["envelope-open-text",["",["solid"]]],["envelopes-bulk",["",["solid"]]],["envira",["",["brands"]]],["equals",["=",["solid"]]],["eraser",["",["solid"]]],["erlang",["",["brands"]]],["ethereum",["",["brands"]]],["ethernet",["",["solid"]]],["etsy",["",["brands"]]],["euro-sign",["",["solid"]]],["evernote",["",["brands"]]],["exclamation",["!",["solid"]]],["expand",["",["solid"]]],["expeditedssl",["",["brands"]]],["explosion",["",["solid"]]],["eye",["",["solid","regular"]]],["eye-dropper",["",["solid"]]],["eye-low-vision",["",["solid"]]],["eye-slash",["",["solid","regular"]]],["f",["F",["solid"]]],["face-angry",["",["solid","regular"]]],["face-dizzy",["",["solid","regular"]]],["face-flushed",["",["solid","regular"]]],["face-frown",["",["solid","regular"]]],["face-frown-open",["",["solid","regular"]]],["face-grimace",["",["solid","regular"]]],["face-grin",["",["solid","regular"]]],["face-grin-beam",["",["solid","regular"]]],["face-grin-beam-sweat",["",["solid","regular"]]],["face-grin-hearts",["",["solid","regular"]]],["face-grin-squint",["",["solid","regular"]]],["face-grin-squint-tears",["",["solid","regular"]]],["face-grin-stars",["",["solid","regular"]]],["face-grin-tears",["",["solid","regular"]]],["face-grin-tongue",["",["solid","regular"]]],["face-grin-tongue-squint",["",["solid","regular"]]],["face-grin-tongue-wink",["",["solid","regular"]]],["face-grin-wide",["",["solid","regular"]]],["face-grin-wink",["",["solid","regular"]]],["face-kiss",["",["solid","regular"]]],["face-kiss-beam",["",["solid","regular"]]],["face-kiss-wink-heart",["",["solid","regular"]]],["face-laugh",["",["solid","regular"]]],["face-laugh-beam",["",["solid","regular"]]],["face-laugh-squint",["",["solid","regular"]]],["face-laugh-wink",["",["solid","regular"]]],["face-meh",["",["solid","regular"]]],["face-meh-blank",["",["solid","regular"]]],["face-rolling-eyes",["",["solid","regular"]]],["face-sad-cry",["",["solid","regular"]]],["face-sad-tear",["",["solid","regular"]]],["face-smile",["",["solid","regular"]]],["face-smile-beam",["",["solid","regular"]]],["face-smile-wink",["",["solid","regular"]]],["face-surprise",["",["solid","regular"]]],["face-tired",["",["solid","regular"]]],["facebook",["",["brands"]]],["facebook-f",["",["brands"]]],["facebook-messenger",["",["brands"]]],["fan",["",["solid"]]],["fantasy-flight-games",["",["brands"]]],["faucet",["",["solid"]]],["faucet-drip",["",["solid"]]],["fax",["",["solid"]]],["feather",["",["solid"]]],["feather-pointed",["",["solid"]]],["fedex",["",["brands"]]],["fedora",["",["brands"]]],["ferry",["",["solid"]]],["figma",["",["brands"]]],["file",["",["solid","regular"]]],["file-arrow-down",["",["solid"]]],["file-arrow-up",["",["solid"]]],["file-audio",["",["solid","regular"]]],["file-circle-check",["",["solid"]]],["file-circle-exclamation",["",["solid"]]],["file-circle-minus",["",["solid"]]],["file-circle-plus",["",["solid"]]],["file-circle-question",["",["solid"]]],["file-circle-xmark",["",["solid"]]],["file-code",["",["solid","regular"]]],["file-contract",["",["solid"]]],["file-csv",["",["solid"]]],["file-excel",["",["solid","regular"]]],["file-export",["",["solid"]]],["file-image",["",["solid","regular"]]],["file-import",["",["solid"]]],["file-invoice",["",["solid"]]],["file-invoice-dollar",["",["solid"]]],["file-lines",["",["solid","regular"]]],["file-medical",["",["solid"]]],["file-pdf",["",["solid","regular"]]],["file-pen",["",["solid"]]],["file-powerpoint",["",["solid","regular"]]],["file-prescription",["",["solid"]]],["file-shield",["",["solid"]]],["file-signature",["",["solid"]]],["file-video",["",["solid","regular"]]],["file-waveform",["",["solid"]]],["file-word",["",["solid","regular"]]],["file-zipper",["",["solid","regular"]]],["fill",["",["solid"]]],["fill-drip",["",["solid"]]],["film",["",["solid"]]],["filter",["",["solid"]]],["filter-circle-dollar",["",["solid"]]],["filter-circle-xmark",["",["solid"]]],["fingerprint",["",["solid"]]],["fire",["",["solid"]]],["fire-burner",["",["solid"]]],["fire-extinguisher",["",["solid"]]],["fire-flame-curved",["",["solid"]]],["fire-flame-simple",["",["solid"]]],["firefox",["",["brands"]]],["firefox-browser",["",["brands"]]],["first-order",["",["brands"]]],["first-order-alt",["",["brands"]]],["firstdraft",["",["brands"]]],["fish",["",["solid"]]],["fish-fins",["",["solid"]]],["flag",["",["solid","regular"]]],["flag-checkered",["",["solid"]]],["flag-usa",["",["solid"]]],["flask",["",["solid"]]],["flask-vial",["",["solid"]]],["flickr",["",["brands"]]],["flipboard",["",["brands"]]],["floppy-disk",["",["solid","regular"]]],["florin-sign",["",["solid"]]],["fly",["",["brands"]]],["folder",["",["solid","regular"]]],["folder-closed",["",["solid","regular"]]],["folder-minus",["",["solid"]]],["folder-open",["",["solid","regular"]]],["folder-plus",["",["solid"]]],["folder-tree",["",["solid"]]],["font",["",["solid"]]],["font-awesome",["",["solid","regular","brands"]]],["fonticons",["",["brands"]]],["fonticons-fi",["",["brands"]]],["football",["",["solid"]]],["fort-awesome",["",["brands"]]],["fort-awesome-alt",["",["brands"]]],["forumbee",["",["brands"]]],["forward",["",["solid"]]],["forward-fast",["",["solid"]]],["forward-step",["",["solid"]]],["foursquare",["",["brands"]]],["franc-sign",["",["solid"]]],["free-code-camp",["",["brands"]]],["freebsd",["",["brands"]]],["frog",["",["solid"]]],["fulcrum",["",["brands"]]],["futbol",["",["solid","regular"]]],["g",["G",["solid"]]],["galactic-republic",["",["brands"]]],["galactic-senate",["",["brands"]]],["gamepad",["",["solid"]]],["gas-pump",["",["solid"]]],["gauge",["",["solid"]]],["gauge-high",["",["solid"]]],["gauge-simple",["",["solid"]]],["gauge-simple-high",["",["solid"]]],["gavel",["",["solid"]]],["gear",["",["solid"]]],["gears",["",["solid"]]],["gem",["",["solid","regular"]]],["genderless",["",["solid"]]],["get-pocket",["",["brands"]]],["gg",["",["brands"]]],["gg-circle",["",["brands"]]],["ghost",["",["solid"]]],["gift",["",["solid"]]],["gifts",["",["solid"]]],["git",["",["brands"]]],["git-alt",["",["brands"]]],["github",["",["brands"]]],["github-alt",["",["brands"]]],["gitkraken",["",["brands"]]],["gitlab",["",["brands"]]],["gitter",["",["brands"]]],["glass-water",["",["solid"]]],["glass-water-droplet",["",["solid"]]],["glasses",["",["solid"]]],["glide",["",["brands"]]],["glide-g",["",["brands"]]],["globe",["",["solid"]]],["gofore",["",["brands"]]],["golang",["",["brands"]]],["golf-ball-tee",["",["solid"]]],["goodreads",["",["brands"]]],["goodreads-g",["",["brands"]]],["google",["",["brands"]]],["google-drive",["",["brands"]]],["google-pay",["",["brands"]]],["google-play",["",["brands"]]],["google-plus",["",["brands"]]],["google-plus-g",["",["brands"]]],["google-wallet",["",["brands"]]],["gopuram",["",["solid"]]],["graduation-cap",["",["solid"]]],["gratipay",["",["brands"]]],["grav",["",["brands"]]],["greater-than",[">",["solid"]]],["greater-than-equal",["",["solid"]]],["grip",["",["solid"]]],["grip-lines",["",["solid"]]],["grip-lines-vertical",["",["solid"]]],["grip-vertical",["",["solid"]]],["gripfire",["",["brands"]]],["group-arrows-rotate",["",["solid"]]],["grunt",["",["brands"]]],["guarani-sign",["",["solid"]]],["guilded",["",["brands"]]],["guitar",["",["solid"]]],["gulp",["",["brands"]]],["gun",["",["solid"]]],["h",["H",["solid"]]],["hacker-news",["",["brands"]]],["hackerrank",["",["brands"]]],["hammer",["",["solid"]]],["hamsa",["",["solid"]]],["hand",["",["solid","regular"]]],["hand-back-fist",["",["solid","regular"]]],["hand-dots",["",["solid"]]],["hand-fist",["",["solid"]]],["hand-holding",["",["solid"]]],["hand-holding-dollar",["",["solid"]]],["hand-holding-droplet",["",["solid"]]],["hand-holding-hand",["",["solid"]]],["hand-holding-heart",["",["solid"]]],["hand-holding-medical",["",["solid"]]],["hand-lizard",["",["solid","regular"]]],["hand-middle-finger",["",["solid"]]],["hand-peace",["",["solid","regular"]]],["hand-point-down",["",["solid","regular"]]],["hand-point-left",["",["solid","regular"]]],["hand-point-right",["",["solid","regular"]]],["hand-point-up",["",["solid","regular"]]],["hand-pointer",["",["solid","regular"]]],["hand-scissors",["",["solid","regular"]]],["hand-sparkles",["",["solid"]]],["hand-spock",["",["solid","regular"]]],["handcuffs",["",["solid"]]],["hands",["",["solid"]]],["hands-asl-interpreting",["",["solid"]]],["hands-bound",["",["solid"]]],["hands-bubbles",["",["solid"]]],["hands-clapping",["",["solid"]]],["hands-holding",["",["solid"]]],["hands-holding-child",["",["solid"]]],["hands-holding-circle",["",["solid"]]],["hands-praying",["",["solid"]]],["handshake",["",["solid","regular"]]],["handshake-angle",["",["solid"]]],["handshake-simple",["",["solid"]]],["handshake-simple-slash",["",["solid"]]],["handshake-slash",["",["solid"]]],["hanukiah",["",["solid"]]],["hard-drive",["",["solid","regular"]]],["hashnode",["",["brands"]]],["hashtag",["#",["solid"]]],["hat-cowboy",["",["solid"]]],["hat-cowboy-side",["",["solid"]]],["hat-wizard",["",["solid"]]],["head-side-cough",["",["solid"]]],["head-side-cough-slash",["",["solid"]]],["head-side-mask",["",["solid"]]],["head-side-virus",["",["solid"]]],["heading",["",["solid"]]],["headphones",["",["solid"]]],["headphones-simple",["",["solid"]]],["headset",["",["solid"]]],["heart",["",["solid","regular"]]],["heart-circle-bolt",["",["solid"]]],["heart-circle-check",["",["solid"]]],["heart-circle-exclamation",["",["solid"]]],["heart-circle-minus",["",["solid"]]],["heart-circle-plus",["",["solid"]]],["heart-circle-xmark",["",["solid"]]],["heart-crack",["",["solid"]]],["heart-pulse",["",["solid"]]],["helicopter",["",["solid"]]],["helicopter-symbol",["",["solid"]]],["helmet-safety",["",["solid"]]],["helmet-un",["",["solid"]]],["highlighter",["",["solid"]]],["hill-avalanche",["",["solid"]]],["hill-rockslide",["",["solid"]]],["hippo",["",["solid"]]],["hips",["",["brands"]]],["hire-a-helper",["",["brands"]]],["hive",["",["brands"]]],["hockey-puck",["",["solid"]]],["holly-berry",["",["solid"]]],["hooli",["",["brands"]]],["hornbill",["",["brands"]]],["horse",["",["solid"]]],["horse-head",["",["solid"]]],["hospital",["",["solid","regular"]]],["hospital-user",["",["solid"]]],["hot-tub-person",["",["solid"]]],["hotdog",["",["solid"]]],["hotel",["",["solid"]]],["hotjar",["",["brands"]]],["hourglass",["",["solid","regular"]]],["hourglass-end",["",["solid"]]],["hourglass-half",["",["solid","regular"]]],["hourglass-start",["",["solid"]]],["house",["",["solid"]]],["house-chimney",["",["solid"]]],["house-chimney-crack",["",["solid"]]],["house-chimney-medical",["",["solid"]]],["house-chimney-user",["",["solid"]]],["house-chimney-window",["",["solid"]]],["house-circle-check",["",["solid"]]],["house-circle-exclamation",["",["solid"]]],["house-circle-xmark",["",["solid"]]],["house-crack",["",["solid"]]],["house-fire",["",["solid"]]],["house-flag",["",["solid"]]],["house-flood-water",["",["solid"]]],["house-flood-water-circle-arrow-right",["",["solid"]]],["house-laptop",["",["solid"]]],["house-lock",["",["solid"]]],["house-medical",["",["solid"]]],["house-medical-circle-check",["",["solid"]]],["house-medical-circle-exclamation",["",["solid"]]],["house-medical-circle-xmark",["",["solid"]]],["house-medical-flag",["",["solid"]]],["house-signal",["",["solid"]]],["house-tsunami",["",["solid"]]],["house-user",["",["solid"]]],["houzz",["",["brands"]]],["hryvnia-sign",["",["solid"]]],["html5",["",["brands"]]],["hubspot",["",["brands"]]],["hurricane",["",["solid"]]],["i",["I",["solid"]]],["i-cursor",["",["solid"]]],["ice-cream",["",["solid"]]],["icicles",["",["solid"]]],["icons",["",["solid"]]],["id-badge",["",["solid","regular"]]],["id-card",["",["solid","regular"]]],["id-card-clip",["",["solid"]]],["ideal",["",["brands"]]],["igloo",["",["solid"]]],["image",["",["solid","regular"]]],["image-portrait",["",["solid"]]],["images",["",["solid","regular"]]],["imdb",["",["brands"]]],["inbox",["",["solid"]]],["indent",["",["solid"]]],["indian-rupee-sign",["",["solid"]]],["industry",["",["solid"]]],["infinity",["",["solid"]]],["info",["",["solid"]]],["instagram",["",["brands"]]],["instalod",["",["brands"]]],["intercom",["",["brands"]]],["internet-explorer",["",["brands"]]],["invision",["",["brands"]]],["ioxhost",["",["brands"]]],["italic",["",["solid"]]],["itch-io",["",["brands"]]],["itunes",["",["brands"]]],["itunes-note",["",["brands"]]],["j",["J",["solid"]]],["jar",["",["solid"]]],["jar-wheat",["",["solid"]]],["java",["",["brands"]]],["jedi",["",["solid"]]],["jedi-order",["",["brands"]]],["jenkins",["",["brands"]]],["jet-fighter",["",["solid"]]],["jet-fighter-up",["",["solid"]]],["jira",["",["brands"]]],["joget",["",["brands"]]],["joint",["",["solid"]]],["joomla",["",["brands"]]],["js",["",["brands"]]],["jsfiddle",["",["brands"]]],["jug-detergent",["",["solid"]]],["k",["K",["solid"]]],["kaaba",["",["solid"]]],["kaggle",["",["brands"]]],["key",["",["solid"]]],["keybase",["",["brands"]]],["keyboard",["",["solid","regular"]]],["keycdn",["",["brands"]]],["khanda",["",["solid"]]],["kickstarter",["",["brands"]]],["kickstarter-k",["",["brands"]]],["kip-sign",["",["solid"]]],["kit-medical",["",["solid"]]],["kitchen-set",["",["solid"]]],["kiwi-bird",["",["solid"]]],["korvue",["",["brands"]]],["l",["L",["solid"]]],["land-mine-on",["",["solid"]]],["landmark",["",["solid"]]],["landmark-dome",["",["solid"]]],["landmark-flag",["",["solid"]]],["language",["",["solid"]]],["laptop",["",["solid"]]],["laptop-code",["",["solid"]]],["laptop-file",["",["solid"]]],["laptop-medical",["",["solid"]]],["laravel",["",["brands"]]],["lari-sign",["",["solid"]]],["lastfm",["",["brands"]]],["layer-group",["",["solid"]]],["leaf",["",["solid"]]],["leanpub",["",["brands"]]],["left-long",["",["solid"]]],["left-right",["",["solid"]]],["lemon",["",["solid","regular"]]],["less",["",["brands"]]],["less-than",["<",["solid"]]],["less-than-equal",["",["solid"]]],["life-ring",["",["solid","regular"]]],["lightbulb",["",["solid","regular"]]],["line",["",["brands"]]],["lines-leaning",["",["solid"]]],["link",["",["solid"]]],["link-slash",["",["solid"]]],["linkedin",["",["brands"]]],["linkedin-in",["",["brands"]]],["linode",["",["brands"]]],["linux",["",["brands"]]],["lira-sign",["",["solid"]]],["list",["",["solid"]]],["list-check",["",["solid"]]],["list-ol",["",["solid"]]],["list-ul",["",["solid"]]],["litecoin-sign",["",["solid"]]],["location-arrow",["",["solid"]]],["location-crosshairs",["",["solid"]]],["location-dot",["",["solid"]]],["location-pin",["",["solid"]]],["location-pin-lock",["",["solid"]]],["lock",["",["solid"]]],["lock-open",["",["solid"]]],["locust",["",["solid"]]],["lungs",["",["solid"]]],["lungs-virus",["",["solid"]]],["lyft",["",["brands"]]],["m",["M",["solid"]]],["magento",["",["brands"]]],["magnet",["",["solid"]]],["magnifying-glass",["",["solid"]]],["magnifying-glass-arrow-right",["",["solid"]]],["magnifying-glass-chart",["",["solid"]]],["magnifying-glass-dollar",["",["solid"]]],["magnifying-glass-location",["",["solid"]]],["magnifying-glass-minus",["",["solid"]]],["magnifying-glass-plus",["",["solid"]]],["mailchimp",["",["brands"]]],["manat-sign",["",["solid"]]],["mandalorian",["",["brands"]]],["map",["",["solid","regular"]]],["map-location",["",["solid"]]],["map-location-dot",["",["solid"]]],["map-pin",["",["solid"]]],["markdown",["",["brands"]]],["marker",["",["solid"]]],["mars",["",["solid"]]],["mars-and-venus",["",["solid"]]],["mars-and-venus-burst",["",["solid"]]],["mars-double",["",["solid"]]],["mars-stroke",["",["solid"]]],["mars-stroke-right",["",["solid"]]],["mars-stroke-up",["",["solid"]]],["martini-glass",["",["solid"]]],["martini-glass-citrus",["",["solid"]]],["martini-glass-empty",["",["solid"]]],["mask",["",["solid"]]],["mask-face",["",["solid"]]],["mask-ventilator",["",["solid"]]],["masks-theater",["",["solid"]]],["mastodon",["",["brands"]]],["mattress-pillow",["",["solid"]]],["maxcdn",["",["brands"]]],["maximize",["",["solid"]]],["mdb",["",["brands"]]],["medal",["",["solid"]]],["medapps",["",["brands"]]],["medium",["",["brands"]]],["medrt",["",["brands"]]],["meetup",["",["brands"]]],["megaport",["",["brands"]]],["memory",["",["solid"]]],["mendeley",["",["brands"]]],["menorah",["",["solid"]]],["mercury",["",["solid"]]],["message",["",["solid","regular"]]],["meta",["",["brands"]]],["meteor",["",["solid"]]],["microblog",["",["brands"]]],["microchip",["",["solid"]]],["microphone",["",["solid"]]],["microphone-lines",["",["solid"]]],["microphone-lines-slash",["",["solid"]]],["microphone-slash",["",["solid"]]],["microscope",["",["solid"]]],["microsoft",["",["brands"]]],["mill-sign",["",["solid"]]],["minimize",["",["solid"]]],["minus",["",["solid"]]],["mitten",["",["solid"]]],["mix",["",["brands"]]],["mixcloud",["",["brands"]]],["mixer",["",["brands"]]],["mizuni",["",["brands"]]],["mobile",["",["solid"]]],["mobile-button",["",["solid"]]],["mobile-retro",["",["solid"]]],["mobile-screen",["",["solid"]]],["mobile-screen-button",["",["solid"]]],["modx",["",["brands"]]],["monero",["",["brands"]]],["money-bill",["",["solid"]]],["money-bill-1",["",["solid","regular"]]],["money-bill-1-wave",["",["solid"]]],["money-bill-transfer",["",["solid"]]],["money-bill-trend-up",["",["solid"]]],["money-bill-wave",["",["solid"]]],["money-bill-wheat",["",["solid"]]],["money-bills",["",["solid"]]],["money-check",["",["solid"]]],["money-check-dollar",["",["solid"]]],["monument",["",["solid"]]],["moon",["",["solid","regular"]]],["mortar-pestle",["",["solid"]]],["mosque",["",["solid"]]],["mosquito",["",["solid"]]],["mosquito-net",["",["solid"]]],["motorcycle",["",["solid"]]],["mound",["",["solid"]]],["mountain",["",["solid"]]],["mountain-city",["",["solid"]]],["mountain-sun",["",["solid"]]],["mug-hot",["",["solid"]]],["mug-saucer",["",["solid"]]],["music",["",["solid"]]],["n",["N",["solid"]]],["naira-sign",["",["solid"]]],["napster",["",["brands"]]],["neos",["",["brands"]]],["network-wired",["",["solid"]]],["neuter",["",["solid"]]],["newspaper",["",["solid","regular"]]],["nfc-directional",["",["brands"]]],["nfc-symbol",["",["brands"]]],["nimblr",["",["brands"]]],["node",["",["brands"]]],["node-js",["",["brands"]]],["not-equal",["",["solid"]]],["notdef",["",["solid","regular"]]],["note-sticky",["",["solid","regular"]]],["notes-medical",["",["solid"]]],["npm",["",["brands"]]],["ns8",["",["brands"]]],["nutritionix",["",["brands"]]],["o",["O",["solid"]]],["object-group",["",["solid","regular"]]],["object-ungroup",["",["solid","regular"]]],["octopus-deploy",["",["brands"]]],["odnoklassniki",["",["brands"]]],["oil-can",["",["solid"]]],["oil-well",["",["solid"]]],["old-republic",["",["brands"]]],["om",["",["solid"]]],["opencart",["",["brands"]]],["openid",["",["brands"]]],["opera",["",["brands"]]],["optin-monster",["",["brands"]]],["orcid",["",["brands"]]],["osi",["",["brands"]]],["otter",["",["solid"]]],["outdent",["",["solid"]]],["p",["P",["solid"]]],["padlet",["",["brands"]]],["page4",["",["brands"]]],["pagelines",["",["brands"]]],["pager",["",["solid"]]],["paint-roller",["",["solid"]]],["paintbrush",["",["solid"]]],["palette",["",["solid"]]],["palfed",["",["brands"]]],["pallet",["",["solid"]]],["panorama",["",["solid"]]],["paper-plane",["",["solid","regular"]]],["paperclip",["",["solid"]]],["parachute-box",["",["solid"]]],["paragraph",["",["solid"]]],["passport",["",["solid"]]],["paste",["",["solid","regular"]]],["patreon",["",["brands"]]],["pause",["",["solid"]]],["paw",["",["solid"]]],["paypal",["",["brands"]]],["peace",["",["solid"]]],["pen",["",["solid"]]],["pen-clip",["",["solid"]]],["pen-fancy",["",["solid"]]],["pen-nib",["",["solid"]]],["pen-ruler",["",["solid"]]],["pen-to-square",["",["solid","regular"]]],["pencil",["",["solid"]]],["people-arrows",["",["solid"]]],["people-carry-box",["",["solid"]]],["people-group",["",["solid"]]],["people-line",["",["solid"]]],["people-pulling",["",["solid"]]],["people-robbery",["",["solid"]]],["people-roof",["",["solid"]]],["pepper-hot",["",["solid"]]],["perbyte",["",["brands"]]],["percent",["%",["solid"]]],["periscope",["",["brands"]]],["person",["",["solid"]]],["person-arrow-down-to-line",["",["solid"]]],["person-arrow-up-from-line",["",["solid"]]],["person-biking",["",["solid"]]],["person-booth",["",["solid"]]],["person-breastfeeding",["",["solid"]]],["person-burst",["",["solid"]]],["person-cane",["",["solid"]]],["person-chalkboard",["",["solid"]]],["person-circle-check",["",["solid"]]],["person-circle-exclamation",["",["solid"]]],["person-circle-minus",["",["solid"]]],["person-circle-plus",["",["solid"]]],["person-circle-question",["",["solid"]]],["person-circle-xmark",["",["solid"]]],["person-digging",["",["solid"]]],["person-dots-from-line",["",["solid"]]],["person-dress",["",["solid"]]],["person-dress-burst",["",["solid"]]],["person-drowning",["",["solid"]]],["person-falling",["",["solid"]]],["person-falling-burst",["",["solid"]]],["person-half-dress",["",["solid"]]],["person-harassing",["",["solid"]]],["person-hiking",["",["solid"]]],["person-military-pointing",["",["solid"]]],["person-military-rifle",["",["solid"]]],["person-military-to-person",["",["solid"]]],["person-praying",["",["solid"]]],["person-pregnant",["",["solid"]]],["person-rays",["",["solid"]]],["person-rifle",["",["solid"]]],["person-running",["",["solid"]]],["person-shelter",["",["solid"]]],["person-skating",["",["solid"]]],["person-skiing",["",["solid"]]],["person-skiing-nordic",["",["solid"]]],["person-snowboarding",["",["solid"]]],["person-swimming",["",["solid"]]],["person-through-window",["",["solid"]]],["person-walking",["",["solid"]]],["person-walking-arrow-loop-left",["",["solid"]]],["person-walking-arrow-right",["",["solid"]]],["person-walking-dashed-line-arrow-right",["",["solid"]]],["person-walking-luggage",["",["solid"]]],["person-walking-with-cane",["",["solid"]]],["peseta-sign",["",["solid"]]],["peso-sign",["",["solid"]]],["phabricator",["",["brands"]]],["phoenix-framework",["",["brands"]]],["phoenix-squadron",["",["brands"]]],["phone",["",["solid"]]],["phone-flip",["",["solid"]]],["phone-slash",["",["solid"]]],["phone-volume",["",["solid"]]],["photo-film",["",["solid"]]],["php",["",["brands"]]],["pied-piper",["",["brands"]]],["pied-piper-alt",["",["brands"]]],["pied-piper-hat",["",["brands"]]],["pied-piper-pp",["",["brands"]]],["piggy-bank",["",["solid"]]],["pills",["",["solid"]]],["pinterest",["",["brands"]]],["pinterest-p",["",["brands"]]],["pix",["",["brands"]]],["pizza-slice",["",["solid"]]],["place-of-worship",["",["solid"]]],["plane",["",["solid"]]],["plane-arrival",["",["solid"]]],["plane-circle-check",["",["solid"]]],["plane-circle-exclamation",["",["solid"]]],["plane-circle-xmark",["",["solid"]]],["plane-departure",["",["solid"]]],["plane-lock",["",["solid"]]],["plane-slash",["",["solid"]]],["plane-up",["",["solid"]]],["plant-wilt",["",["solid"]]],["plate-wheat",["",["solid"]]],["play",["",["solid"]]],["playstation",["",["brands"]]],["plug",["",["solid"]]],["plug-circle-bolt",["",["solid"]]],["plug-circle-check",["",["solid"]]],["plug-circle-exclamation",["",["solid"]]],["plug-circle-minus",["",["solid"]]],["plug-circle-plus",["",["solid"]]],["plug-circle-xmark",["",["solid"]]],["plus",["+",["solid"]]],["plus-minus",["",["solid"]]],["podcast",["",["solid"]]],["poo",["",["solid"]]],["poo-storm",["",["solid"]]],["poop",["",["solid"]]],["power-off",["",["solid"]]],["prescription",["",["solid"]]],["prescription-bottle",["",["solid"]]],["prescription-bottle-medical",["",["solid"]]],["print",["",["solid"]]],["product-hunt",["",["brands"]]],["pump-medical",["",["solid"]]],["pump-soap",["",["solid"]]],["pushed",["",["brands"]]],["puzzle-piece",["",["solid"]]],["python",["",["brands"]]],["q",["Q",["solid"]]],["qq",["",["brands"]]],["qrcode",["",["solid"]]],["question",["?",["solid"]]],["quinscape",["",["brands"]]],["quora",["",["brands"]]],["quote-left",["",["solid"]]],["quote-right",["",["solid"]]],["r",["R",["solid"]]],["r-project",["",["brands"]]],["radiation",["",["solid"]]],["radio",["",["solid"]]],["rainbow",["",["solid"]]],["ranking-star",["",["solid"]]],["raspberry-pi",["",["brands"]]],["ravelry",["",["brands"]]],["react",["",["brands"]]],["reacteurope",["",["brands"]]],["readme",["",["brands"]]],["rebel",["",["brands"]]],["receipt",["",["solid"]]],["record-vinyl",["",["solid"]]],["rectangle-ad",["",["solid"]]],["rectangle-list",["",["solid","regular"]]],["rectangle-xmark",["",["solid","regular"]]],["recycle",["",["solid"]]],["red-river",["",["brands"]]],["reddit",["",["brands"]]],["reddit-alien",["",["brands"]]],["redhat",["",["brands"]]],["registered",["",["solid","regular"]]],["renren",["",["brands"]]],["repeat",["",["solid"]]],["reply",["",["solid"]]],["reply-all",["",["solid"]]],["replyd",["",["brands"]]],["republican",["",["solid"]]],["researchgate",["",["brands"]]],["resolving",["",["brands"]]],["restroom",["",["solid"]]],["retweet",["",["solid"]]],["rev",["",["brands"]]],["ribbon",["",["solid"]]],["right-from-bracket",["",["solid"]]],["right-left",["",["solid"]]],["right-long",["",["solid"]]],["right-to-bracket",["",["solid"]]],["ring",["",["solid"]]],["road",["",["solid"]]],["road-barrier",["",["solid"]]],["road-bridge",["",["solid"]]],["road-circle-check",["",["solid"]]],["road-circle-exclamation",["",["solid"]]],["road-circle-xmark",["",["solid"]]],["road-lock",["",["solid"]]],["road-spikes",["",["solid"]]],["robot",["",["solid"]]],["rocket",["",["solid"]]],["rocketchat",["",["brands"]]],["rockrms",["",["brands"]]],["rotate",["",["solid"]]],["rotate-left",["",["solid"]]],["rotate-right",["",["solid"]]],["route",["",["solid"]]],["rss",["",["solid"]]],["ruble-sign",["",["solid"]]],["rug",["",["solid"]]],["ruler",["",["solid"]]],["ruler-combined",["",["solid"]]],["ruler-horizontal",["",["solid"]]],["ruler-vertical",["",["solid"]]],["rupee-sign",["",["solid"]]],["rupiah-sign",["",["solid"]]],["rust",["",["brands"]]],["s",["S",["solid"]]],["sack-dollar",["",["solid"]]],["sack-xmark",["",["solid"]]],["safari",["",["brands"]]],["sailboat",["",["solid"]]],["salesforce",["",["brands"]]],["sass",["",["brands"]]],["satellite",["",["solid"]]],["satellite-dish",["",["solid"]]],["scale-balanced",["",["solid"]]],["scale-unbalanced",["",["solid"]]],["scale-unbalanced-flip",["",["solid"]]],["schlix",["",["brands"]]],["school",["",["solid"]]],["school-circle-check",["",["solid"]]],["school-circle-exclamation",["",["solid"]]],["school-circle-xmark",["",["solid"]]],["school-flag",["",["solid"]]],["school-lock",["",["solid"]]],["scissors",["",["solid"]]],["screenpal",["",["brands"]]],["screwdriver",["",["solid"]]],["screwdriver-wrench",["",["solid"]]],["scribd",["",["brands"]]],["scroll",["",["solid"]]],["scroll-torah",["",["solid"]]],["sd-card",["",["solid"]]],["searchengin",["",["brands"]]],["section",["",["solid"]]],["seedling",["",["solid"]]],["sellcast",["",["brands"]]],["sellsy",["",["brands"]]],["server",["",["solid"]]],["servicestack",["",["brands"]]],["shapes",["",["solid"]]],["share",["",["solid"]]],["share-from-square",["",["solid","regular"]]],["share-nodes",["",["solid"]]],["sheet-plastic",["",["solid"]]],["shekel-sign",["",["solid"]]],["shield",["",["solid"]]],["shield-cat",["",["solid"]]],["shield-dog",["",["solid"]]],["shield-halved",["",["solid"]]],["shield-heart",["",["solid"]]],["shield-virus",["",["solid"]]],["ship",["",["solid"]]],["shirt",["",["solid"]]],["shirtsinbulk",["",["brands"]]],["shoe-prints",["",["solid"]]],["shop",["",["solid"]]],["shop-lock",["",["solid"]]],["shop-slash",["",["solid"]]],["shopify",["",["brands"]]],["shopware",["",["brands"]]],["shower",["",["solid"]]],["shrimp",["",["solid"]]],["shuffle",["",["solid"]]],["shuttle-space",["",["solid"]]],["sign-hanging",["",["solid"]]],["signal",["",["solid"]]],["signature",["",["solid"]]],["signs-post",["",["solid"]]],["sim-card",["",["solid"]]],["simplybuilt",["",["brands"]]],["sink",["",["solid"]]],["sistrix",["",["brands"]]],["sitemap",["",["solid"]]],["sith",["",["brands"]]],["sitrox",["",["brands"]]],["sketch",["",["brands"]]],["skull",["",["solid"]]],["skull-crossbones",["",["solid"]]],["skyatlas",["",["brands"]]],["skype",["",["brands"]]],["slack",["",["brands"]]],["slash",["",["solid"]]],["sleigh",["",["solid"]]],["sliders",["",["solid"]]],["slideshare",["",["brands"]]],["smog",["",["solid"]]],["smoking",["",["solid"]]],["snapchat",["",["brands"]]],["snowflake",["",["solid","regular"]]],["snowman",["",["solid"]]],["snowplow",["",["solid"]]],["soap",["",["solid"]]],["socks",["",["solid"]]],["solar-panel",["",["solid"]]],["sort",["",["solid"]]],["sort-down",["",["solid"]]],["sort-up",["",["solid"]]],["soundcloud",["",["brands"]]],["sourcetree",["",["brands"]]],["spa",["",["solid"]]],["space-awesome",["",["brands"]]],["spaghetti-monster-flying",["",["solid"]]],["speakap",["",["brands"]]],["speaker-deck",["",["brands"]]],["spell-check",["",["solid"]]],["spider",["",["solid"]]],["spinner",["",["solid"]]],["splotch",["",["solid"]]],["spoon",["",["solid"]]],["spotify",["",["brands"]]],["spray-can",["",["solid"]]],["spray-can-sparkles",["",["solid"]]],["square",["",["solid","regular"]]],["square-arrow-up-right",["",["solid"]]],["square-behance",["",["brands"]]],["square-caret-down",["",["solid","regular"]]],["square-caret-left",["",["solid","regular"]]],["square-caret-right",["",["solid","regular"]]],["square-caret-up",["",["solid","regular"]]],["square-check",["",["solid","regular"]]],["square-dribbble",["",["brands"]]],["square-envelope",["",["solid"]]],["square-facebook",["",["brands"]]],["square-font-awesome",["",["brands"]]],["square-font-awesome-stroke",["",["brands"]]],["square-full",["",["solid","regular"]]],["square-git",["",["brands"]]],["square-github",["",["brands"]]],["square-gitlab",["",["brands"]]],["square-google-plus",["",["brands"]]],["square-h",["",["solid"]]],["square-hacker-news",["",["brands"]]],["square-instagram",["",["brands"]]],["square-js",["",["brands"]]],["square-lastfm",["",["brands"]]],["square-minus",["",["solid","regular"]]],["square-nfi",["",["solid"]]],["square-odnoklassniki",["",["brands"]]],["square-parking",["",["solid"]]],["square-pen",["",["solid"]]],["square-person-confined",["",["solid"]]],["square-phone",["",["solid"]]],["square-phone-flip",["",["solid"]]],["square-pied-piper",["",["brands"]]],["square-pinterest",["",["brands"]]],["square-plus",["",["solid","regular"]]],["square-poll-horizontal",["",["solid"]]],["square-poll-vertical",["",["solid"]]],["square-reddit",["",["brands"]]],["square-root-variable",["",["solid"]]],["square-rss",["",["solid"]]],["square-share-nodes",["",["solid"]]],["square-snapchat",["",["brands"]]],["square-steam",["",["brands"]]],["square-tumblr",["",["brands"]]],["square-twitter",["",["brands"]]],["square-up-right",["",["solid"]]],["square-viadeo",["",["brands"]]],["square-vimeo",["",["brands"]]],["square-virus",["",["solid"]]],["square-whatsapp",["",["brands"]]],["square-xing",["",["brands"]]],["square-xmark",["",["solid"]]],["square-youtube",["",["brands"]]],["squarespace",["",["brands"]]],["stack-exchange",["",["brands"]]],["stack-overflow",["",["brands"]]],["stackpath",["",["brands"]]],["staff-snake",["",["solid"]]],["stairs",["",["solid"]]],["stamp",["",["solid"]]],["stapler",["",["solid"]]],["star",["",["solid","regular"]]],["star-and-crescent",["",["solid"]]],["star-half",["",["solid","regular"]]],["star-half-stroke",["",["solid","regular"]]],["star-of-david",["",["solid"]]],["star-of-life",["",["solid"]]],["staylinked",["",["brands"]]],["steam",["",["brands"]]],["steam-symbol",["",["brands"]]],["sterling-sign",["",["solid"]]],["stethoscope",["",["solid"]]],["sticker-mule",["",["brands"]]],["stop",["",["solid"]]],["stopwatch",["",["solid"]]],["stopwatch-20",["",["solid"]]],["store",["",["solid"]]],["store-slash",["",["solid"]]],["strava",["",["brands"]]],["street-view",["",["solid"]]],["strikethrough",["",["solid"]]],["stripe",["",["brands"]]],["stripe-s",["",["brands"]]],["stroopwafel",["",["solid"]]],["studiovinari",["",["brands"]]],["stumbleupon",["",["brands"]]],["stumbleupon-circle",["",["brands"]]],["subscript",["",["solid"]]],["suitcase",["",["solid"]]],["suitcase-medical",["",["solid"]]],["suitcase-rolling",["",["solid"]]],["sun",["",["solid","regular"]]],["sun-plant-wilt",["",["solid"]]],["superpowers",["",["brands"]]],["superscript",["",["solid"]]],["supple",["",["brands"]]],["suse",["",["brands"]]],["swatchbook",["",["solid"]]],["swift",["",["brands"]]],["symfony",["",["brands"]]],["synagogue",["",["solid"]]],["syringe",["",["solid"]]],["t",["T",["solid"]]],["table",["",["solid"]]],["table-cells",["",["solid"]]],["table-cells-large",["",["solid"]]],["table-columns",["",["solid"]]],["table-list",["",["solid"]]],["table-tennis-paddle-ball",["",["solid"]]],["tablet",["",["solid"]]],["tablet-button",["",["solid"]]],["tablet-screen-button",["",["solid"]]],["tablets",["",["solid"]]],["tachograph-digital",["",["solid"]]],["tag",["",["solid"]]],["tags",["",["solid"]]],["tape",["",["solid"]]],["tarp",["",["solid"]]],["tarp-droplet",["",["solid"]]],["taxi",["",["solid"]]],["teamspeak",["",["brands"]]],["teeth",["",["solid"]]],["teeth-open",["",["solid"]]],["telegram",["",["brands"]]],["temperature-arrow-down",["",["solid"]]],["temperature-arrow-up",["",["solid"]]],["temperature-empty",["",["solid"]]],["temperature-full",["",["solid"]]],["temperature-half",["",["solid"]]],["temperature-high",["",["solid"]]],["temperature-low",["",["solid"]]],["temperature-quarter",["",["solid"]]],["temperature-three-quarters",["",["solid"]]],["tencent-weibo",["",["brands"]]],["tenge-sign",["",["solid"]]],["tent",["",["solid"]]],["tent-arrow-down-to-line",["",["solid"]]],["tent-arrow-left-right",["",["solid"]]],["tent-arrow-turn-left",["",["solid"]]],["tent-arrows-down",["",["solid"]]],["tents",["",["solid"]]],["terminal",["",["solid"]]],["text-height",["",["solid"]]],["text-slash",["",["solid"]]],["text-width",["",["solid"]]],["the-red-yeti",["",["brands"]]],["themeco",["",["brands"]]],["themeisle",["",["brands"]]],["thermometer",["",["solid"]]],["think-peaks",["",["brands"]]],["thumbs-down",["",["solid","regular"]]],["thumbs-up",["",["solid","regular"]]],["thumbtack",["",["solid"]]],["ticket",["",["solid"]]],["ticket-simple",["",["solid"]]],["tiktok",["",["brands"]]],["timeline",["",["solid"]]],["toggle-off",["",["solid"]]],["toggle-on",["",["solid"]]],["toilet",["",["solid"]]],["toilet-paper",["",["solid"]]],["toilet-paper-slash",["",["solid"]]],["toilet-portable",["",["solid"]]],["toilets-portable",["",["solid"]]],["toolbox",["",["solid"]]],["tooth",["",["solid"]]],["torii-gate",["",["solid"]]],["tornado",["",["solid"]]],["tower-broadcast",["",["solid"]]],["tower-cell",["",["solid"]]],["tower-observation",["",["solid"]]],["tractor",["",["solid"]]],["trade-federation",["",["brands"]]],["trademark",["",["solid"]]],["traffic-light",["",["solid"]]],["trailer",["",["solid"]]],["train",["",["solid"]]],["train-subway",["",["solid"]]],["train-tram",["",["solid"]]],["transgender",["",["solid"]]],["trash",["",["solid"]]],["trash-arrow-up",["",["solid"]]],["trash-can",["",["solid","regular"]]],["trash-can-arrow-up",["",["solid"]]],["tree",["",["solid"]]],["tree-city",["",["solid"]]],["trello",["",["brands"]]],["triangle-exclamation",["",["solid"]]],["trophy",["",["solid"]]],["trowel",["",["solid"]]],["trowel-bricks",["",["solid"]]],["truck",["",["solid"]]],["truck-arrow-right",["",["solid"]]],["truck-droplet",["",["solid"]]],["truck-fast",["",["solid"]]],["truck-field",["",["solid"]]],["truck-field-un",["",["solid"]]],["truck-front",["",["solid"]]],["truck-medical",["",["solid"]]],["truck-monster",["",["solid"]]],["truck-moving",["",["solid"]]],["truck-pickup",["",["solid"]]],["truck-plane",["",["solid"]]],["truck-ramp-box",["",["solid"]]],["tty",["",["solid"]]],["tumblr",["",["brands"]]],["turkish-lira-sign",["",["solid"]]],["turn-down",["",["solid"]]],["turn-up",["",["solid"]]],["tv",["",["solid"]]],["twitch",["",["brands"]]],["twitter",["",["brands"]]],["typo3",["",["brands"]]],["u",["U",["solid"]]],["uber",["",["brands"]]],["ubuntu",["",["brands"]]],["uikit",["",["brands"]]],["umbraco",["",["brands"]]],["umbrella",["",["solid"]]],["umbrella-beach",["",["solid"]]],["uncharted",["",["brands"]]],["underline",["",["solid"]]],["uniregistry",["",["brands"]]],["unity",["",["brands"]]],["universal-access",["",["solid"]]],["unlock",["",["solid"]]],["unlock-keyhole",["",["solid"]]],["unsplash",["",["brands"]]],["untappd",["",["brands"]]],["up-down",["",["solid"]]],["up-down-left-right",["",["solid"]]],["up-long",["",["solid"]]],["up-right-and-down-left-from-center",["",["solid"]]],["up-right-from-square",["",["solid"]]],["upload",["",["solid"]]],["ups",["",["brands"]]],["usb",["",["brands"]]],["user",["",["solid","regular"]]],["user-astronaut",["",["solid"]]],["user-check",["",["solid"]]],["user-clock",["",["solid"]]],["user-doctor",["",["solid"]]],["user-gear",["",["solid"]]],["user-graduate",["",["solid"]]],["user-group",["",["solid"]]],["user-injured",["",["solid"]]],["user-large",["",["solid"]]],["user-large-slash",["",["solid"]]],["user-lock",["",["solid"]]],["user-minus",["",["solid"]]],["user-ninja",["",["solid"]]],["user-nurse",["",["solid"]]],["user-pen",["",["solid"]]],["user-plus",["",["solid"]]],["user-secret",["",["solid"]]],["user-shield",["",["solid"]]],["user-slash",["",["solid"]]],["user-tag",["",["solid"]]],["user-tie",["",["solid"]]],["user-xmark",["",["solid"]]],["users",["",["solid"]]],["users-between-lines",["",["solid"]]],["users-gear",["",["solid"]]],["users-line",["",["solid"]]],["users-rays",["",["solid"]]],["users-rectangle",["",["solid"]]],["users-slash",["",["solid"]]],["users-viewfinder",["",["solid"]]],["usps",["",["brands"]]],["ussunnah",["",["brands"]]],["utensils",["",["solid"]]],["v",["V",["solid"]]],["vaadin",["",["brands"]]],["van-shuttle",["",["solid"]]],["vault",["",["solid"]]],["vector-square",["",["solid"]]],["venus",["",["solid"]]],["venus-double",["",["solid"]]],["venus-mars",["",["solid"]]],["vest",["",["solid"]]],["vest-patches",["",["solid"]]],["viacoin",["",["brands"]]],["viadeo",["",["brands"]]],["vial",["",["solid"]]],["vial-circle-check",["",["solid"]]],["vial-virus",["",["solid"]]],["vials",["",["solid"]]],["viber",["",["brands"]]],["video",["",["solid"]]],["video-slash",["",["solid"]]],["vihara",["",["solid"]]],["vimeo",["",["brands"]]],["vimeo-v",["",["brands"]]],["vine",["",["brands"]]],["virus",["",["solid"]]],["virus-covid",["",["solid"]]],["virus-covid-slash",["",["solid"]]],["virus-slash",["",["solid"]]],["viruses",["",["solid"]]],["vk",["",["brands"]]],["vnv",["",["brands"]]],["voicemail",["",["solid"]]],["volcano",["",["solid"]]],["volleyball",["",["solid"]]],["volume-high",["",["solid"]]],["volume-low",["",["solid"]]],["volume-off",["",["solid"]]],["volume-xmark",["",["solid"]]],["vr-cardboard",["",["solid"]]],["vuejs",["",["brands"]]],["w",["W",["solid"]]],["walkie-talkie",["",["solid"]]],["wallet",["",["solid"]]],["wand-magic",["",["solid"]]],["wand-magic-sparkles",["",["solid"]]],["wand-sparkles",["",["solid"]]],["warehouse",["",["solid"]]],["watchman-monitoring",["",["brands"]]],["water",["",["solid"]]],["water-ladder",["",["solid"]]],["wave-square",["",["solid"]]],["waze",["",["brands"]]],["weebly",["",["brands"]]],["weibo",["",["brands"]]],["weight-hanging",["",["solid"]]],["weight-scale",["",["solid"]]],["weixin",["",["brands"]]],["whatsapp",["",["brands"]]],["wheat-awn",["",["solid"]]],["wheat-awn-circle-exclamation",["",["solid"]]],["wheelchair",["",["solid"]]],["wheelchair-move",["",["solid"]]],["whiskey-glass",["",["solid"]]],["whmcs",["",["brands"]]],["wifi",["",["solid"]]],["wikipedia-w",["",["brands"]]],["wind",["",["solid"]]],["window-maximize",["",["solid","regular"]]],["window-minimize",["",["solid","regular"]]],["window-restore",["",["solid","regular"]]],["windows",["",["brands"]]],["wine-bottle",["",["solid"]]],["wine-glass",["",["solid"]]],["wine-glass-empty",["",["solid"]]],["wirsindhandwerk",["",["brands"]]],["wix",["",["brands"]]],["wizards-of-the-coast",["",["brands"]]],["wodu",["",["brands"]]],["wolf-pack-battalion",["",["brands"]]],["won-sign",["",["solid"]]],["wordpress",["",["brands"]]],["wordpress-simple",["",["brands"]]],["worm",["",["solid"]]],["wpbeginner",["",["brands"]]],["wpexplorer",["",["brands"]]],["wpforms",["",["brands"]]],["wpressr",["",["brands"]]],["wrench",["",["solid"]]],["x",["X",["solid"]]],["x-ray",["",["solid"]]],["xbox",["",["brands"]]],["xing",["",["brands"]]],["xmark",["",["solid"]]],["xmarks-lines",["",["solid"]]],["y",["Y",["solid"]]],["y-combinator",["",["brands"]]],["yahoo",["",["brands"]]],["yammer",["",["brands"]]],["yandex",["",["brands"]]],["yandex-international",["",["brands"]]],["yarn",["",["brands"]]],["yelp",["",["brands"]]],["yen-sign",["",["solid"]]],["yin-yang",["",["solid"]]],["yoast",["",["brands"]]],["youtube",["",["brands"]]],["z",["Z",["solid"]]],["zhihu",["",["brands"]]]] ); - window.getFontAwesome6Styles = (name) => styles.get(name); + window.getFontAwesome6IconMetadata = (name) => styles.get(name); })(); \ No newline at end of file diff --git a/wcfsetup/install/files/lib/system/template/plugin/IconFunctionTemplatePlugin.class.php b/wcfsetup/install/files/lib/system/template/plugin/IconFunctionTemplatePlugin.class.php index c59bbd176c..2edc4803b9 100644 --- a/wcfsetup/install/files/lib/system/template/plugin/IconFunctionTemplatePlugin.class.php +++ b/wcfsetup/install/files/lib/system/template/plugin/IconFunctionTemplatePlugin.class.php @@ -55,7 +55,7 @@ final class IconFunctionTemplatePlugin implements IFunctionTemplatePlugin $content = \file_get_contents($svgFile); $content = \preg_replace('~^{$content} + {$content} HTML; } diff --git a/wcfsetup/install/files/style/font-awesome/000-woltlab.scss b/wcfsetup/install/files/style/font-awesome/000-woltlab.scss index 5dd7138d74..b611ff41af 100644 --- a/wcfsetup/install/files/style/font-awesome/000-woltlab.scss +++ b/wcfsetup/install/files/style/font-awesome/000-woltlab.scss @@ -38,6 +38,7 @@ $fa-size-scale-base: 15; } } +fa-brand, fa-icon { align-items: center; display: flex; @@ -53,26 +54,6 @@ fa-icon { display: none; } - &:not([brand]) { - -moz-osx-font-smoothing: grayscale; - -webkit-font-smoothing: antialiased; - - font-family: "Font Awesome 6 Free"; - font-size: var(--font-size); - font-style: normal; - font-variant: normal; - line-height: 1; - text-rendering: auto; - } - - &[solid] { - font-weight: 900; - } - - &[regular] { - font-weight: 400; - } - &[size="16"] { --font-size: 14px; --icon-size: 16px; @@ -114,6 +95,26 @@ fa-icon { } } +fa-icon { + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + + font-family: "Font Awesome 6 Free"; + font-size: var(--font-size); + font-style: normal; + font-variant: normal; + line-height: 1; + text-rendering: auto; + + &[solid] { + font-weight: 900; + } + + &[regular] { + font-weight: 400; + } +} + /* Default icon sizes */ .icon { &.icon16 { -- 2.20.1