From f68d2d223dd97565cd09962b00ab45c13cd90548 Mon Sep 17 00:00:00 2001 From: Sean Hamilton Date: Sat, 25 May 2019 22:10:13 +0100 Subject: [PATCH] chore(release): update lib files --- lib/enums/IconType.js | 20 +- lib/index.js | 98 +- lib/modals/Category.js | 84 +- lib/modals/Icon.js | 170 +- lib/parsers/FontAwesome.js | 380 +-- lib/static/aliases.json | 4778 +++++++++++++++++------------------ lib/static/categories.json | 154 +- lib/static/corrections.json | 122 +- lib/static/icon_sets.json | 54 +- lib/tasks/BuildDist.js | 208 +- lib/tasks/CleanUp.js | 66 +- lib/tasks/DownloadAsset.js | 352 +-- lib/tasks/InitialPrompt.js | 362 +-- lib/util/Converter.js | 79 +- lib/util/Logger.js | 28 +- 15 files changed, 3488 insertions(+), 3467 deletions(-) diff --git a/lib/enums/IconType.js b/lib/enums/IconType.js index 7684047..ed142ff 100644 --- a/lib/enums/IconType.js +++ b/lib/enums/IconType.js @@ -1,10 +1,10 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -var IconType; -(function (IconType) { - IconType["SOLID"] = "solid"; - IconType["OUTLINE"] = "outline"; - IconType["THIN"] = "thin"; - IconType["BRAND"] = "brand"; -})(IconType || (IconType = {})); -exports.default = IconType; +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var IconType; +(function (IconType) { + IconType["SOLID"] = "solid"; + IconType["OUTLINE"] = "outline"; + IconType["THIN"] = "thin"; + IconType["BRAND"] = "brand"; +})(IconType || (IconType = {})); +exports.default = IconType; diff --git a/lib/index.js b/lib/index.js index cf8f972..ee8443c 100644 --- a/lib/index.js +++ b/lib/index.js @@ -1,49 +1,49 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; - result["default"] = mod; - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -// tasks -var InitialPrompt_1 = __importDefault(require("./tasks/InitialPrompt")); -var DownloadAsset_1 = __importDefault(require("./tasks/DownloadAsset")); -var BuildDist_1 = __importDefault(require("./tasks/BuildDist")); -var CleanUp_1 = __importDefault(require("./tasks/CleanUp")); -// utils -var Logger_1 = __importDefault(require("./util/Logger")); -function run() { - if (process.argv.includes('--clean')) { - CleanUp_1.default() - .then(function () { - process.exit(0); - }); - } - else { - InitialPrompt_1.default() - .then(function (results) { - DownloadAsset_1.default(results) - .then(function (paths) { - Promise.resolve().then(function () { return __importStar(require("./parsers/" + results.iconSet.parser)); }).then(function (Parser) { - Parser.default(results, paths) - .then(function (parseResults) { - BuildDist_1.default(results, parseResults) - .then(function () { - process.exit(0); - }); - }); - }) - .catch(function (err) { - Logger_1.default.error(err); - process.exit(1); - }); - }); - }); - } -} -exports.default = run; +"use strict"; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; + result["default"] = mod; + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +// tasks +var InitialPrompt_1 = __importDefault(require("./tasks/InitialPrompt")); +var DownloadAsset_1 = __importDefault(require("./tasks/DownloadAsset")); +var BuildDist_1 = __importDefault(require("./tasks/BuildDist")); +var CleanUp_1 = __importDefault(require("./tasks/CleanUp")); +// utils +var Logger_1 = __importDefault(require("./util/Logger")); +function run() { + if (process.argv.includes('--clean')) { + CleanUp_1.default() + .then(function () { + process.exit(0); + }); + } + else { + InitialPrompt_1.default() + .then(function (results) { + DownloadAsset_1.default(results) + .then(function (paths) { + Promise.resolve().then(function () { return __importStar(require("./parsers/" + results.iconSet.parser)); }).then(function (Parser) { + Parser.default(results, paths) + .then(function (parseResults) { + BuildDist_1.default(results, parseResults) + .then(function () { + process.exit(0); + }); + }); + }) + .catch(function (err) { + Logger_1.default.error(err); + process.exit(1); + }); + }); + }); + } +} +exports.default = run; diff --git a/lib/modals/Category.js b/lib/modals/Category.js index 960ff62..9cb5836 100644 --- a/lib/modals/Category.js +++ b/lib/modals/Category.js @@ -1,42 +1,42 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -// static -var categories_json_1 = __importDefault(require("../static/categories.json")); -var Category = /** @class */ (function () { - function Category(data) { - this.data = data; - } - Object.defineProperty(Category.prototype, "rawName", { - get: function () { - return this.data.name; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Category.prototype, "name", { - get: function () { - return this.data.label; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Category.prototype, "description", { - get: function () { - return categories_json_1.default[this.rawName]; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Category.prototype, "icons", { - get: function () { - return this.data.icons; - }, - enumerable: true, - configurable: true - }); - return Category; -}()); -exports.default = Category; +"use strict"; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +// static +var categories_json_1 = __importDefault(require("../static/categories.json")); +var Category = /** @class */ (function () { + function Category(data) { + this.data = data; + } + Object.defineProperty(Category.prototype, "rawName", { + get: function () { + return this.data.name; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(Category.prototype, "name", { + get: function () { + return this.data.label; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(Category.prototype, "description", { + get: function () { + return categories_json_1.default[this.rawName]; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(Category.prototype, "icons", { + get: function () { + return this.data.icons; + }, + enumerable: true, + configurable: true + }); + return Category; +}()); +exports.default = Category; diff --git a/lib/modals/Icon.js b/lib/modals/Icon.js index 25abce5..f3c7dab 100644 --- a/lib/modals/Icon.js +++ b/lib/modals/Icon.js @@ -1,85 +1,85 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -// utils -var Converter_1 = __importDefault(require("../util/Converter")); -// enums -var IconType_1 = __importDefault(require("../enums/IconType")); -// static -var corrections_json_1 = __importDefault(require("../static/corrections.json")); -var Icon = /** @class */ (function () { - function Icon(data) { - this.data = data; - } - Icon.prototype.hasCorrection = function (field) { - var iconCorrection = corrections_json_1.default[this.rawName]; - if (iconCorrection !== undefined) { - return iconCorrection[field] !== undefined; - } - return false; - }; - Icon.prototype.correction = function (field) { - return this.hasCorrection(field) - ? corrections_json_1.default[this.rawName][field] - : ''; - }; - Object.defineProperty(Icon.prototype, "rawName", { - get: function () { - return this.data.name; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Icon.prototype, "name", { - get: function () { - var name = this.data.name; - if (this.type === IconType_1.default.OUTLINE) { - name += '-outline'; - } - if (this.type === IconType_1.default.THIN) { - name += '-thin'; - } - return this.hasCorrection('name') - ? this.correction('name') - : Converter_1.default.iconName(name); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Icon.prototype, "className", { - get: function () { - return this.hasCorrection('className') - ? this.correction('className') - : Converter_1.default.iconClassName(this.name); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Icon.prototype, "unicode", { - get: function () { - return this.hasCorrection('unicode') - ? this.correction('unicode') - : "\\" + this.data.unicode; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Icon.prototype, "type", { - get: function () { - return this.data.type; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Icon.prototype, "searchTerms", { - get: function () { - return this.data.searchTerms.join(', '); - }, - enumerable: true, - configurable: true - }); - return Icon; -}()); -exports.default = Icon; +"use strict"; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +// utils +var Converter_1 = __importDefault(require("../util/Converter")); +// enums +var IconType_1 = __importDefault(require("../enums/IconType")); +// static +var corrections_json_1 = __importDefault(require("../static/corrections.json")); +var Icon = /** @class */ (function () { + function Icon(data) { + this.data = data; + } + Icon.prototype.hasCorrection = function (field) { + var iconCorrection = corrections_json_1.default[this.rawName]; + if (iconCorrection !== undefined) { + return iconCorrection[field] !== undefined; + } + return false; + }; + Icon.prototype.correction = function (field) { + return this.hasCorrection(field) + ? corrections_json_1.default[this.rawName][field] + : ''; + }; + Object.defineProperty(Icon.prototype, "rawName", { + get: function () { + return this.data.name; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(Icon.prototype, "name", { + get: function () { + var name = this.data.name; + if (this.type === IconType_1.default.OUTLINE) { + name += '-outline'; + } + if (this.type === IconType_1.default.THIN) { + name += '-thin'; + } + return this.hasCorrection('name') + ? this.correction('name') + : Converter_1.default.iconName(name); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(Icon.prototype, "className", { + get: function () { + return this.hasCorrection('className') + ? this.correction('className') + : Converter_1.default.iconClassName(this.name); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(Icon.prototype, "unicode", { + get: function () { + return this.hasCorrection('unicode') + ? this.correction('unicode') + : "\\" + this.data.unicode; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(Icon.prototype, "type", { + get: function () { + return this.data.type; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(Icon.prototype, "searchTerms", { + get: function () { + return this.data.searchTerms.join(', '); + }, + enumerable: true, + configurable: true + }); + return Icon; +}()); +exports.default = Icon; diff --git a/lib/parsers/FontAwesome.js b/lib/parsers/FontAwesome.js index 401d9f7..f3c6dc3 100644 --- a/lib/parsers/FontAwesome.js +++ b/lib/parsers/FontAwesome.js @@ -1,190 +1,190 @@ -"use strict"; -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; - result["default"] = mod; - return result; -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -// node -var path_1 = require("path"); -// npm -var fse = __importStar(require("fs-extra")); -var js_yaml_1 = require("js-yaml"); -var chalk_1 = __importDefault(require("chalk")); -// utils -var Logger_1 = __importStar(require("../util/Logger")); -// modals -var Icon_1 = __importDefault(require("../modals/Icon")); -var Category_1 = __importDefault(require("../modals/Category")); -// enums -var IconType_1 = __importDefault(require("../enums/IconType")); -// static -var aliases_json_1 = __importDefault(require("../static/aliases.json")); -function parse(results, paths) { - return new Promise(function (resolve) { - var asset = results.asset; - var parseSpinner = Logger_1.spinner() - .start('parsing icons'); - var fontAwesomeDirectoryName = results.iconSet.name.toLowerCase() - .replace(/\s/g, '-'); - var fontAwesomeDirectory = fontAwesomeDirectoryName + "-" + asset.version + "-web"; - var iconsMetadataFilePath = path_1.resolve(paths.assetDirectoryPath, fontAwesomeDirectory, 'metadata', 'icons.json'); - var categoriesFilePath = path_1.resolve(paths.assetDirectoryPath, fontAwesomeDirectory, 'metadata', 'categories.yml'); - fse.readFile(iconsMetadataFilePath, function (iconsErr, iconsData) { - if (!iconsErr) { - var iconMetadata_1 = JSON.parse(iconsData.toString()); - var iconNames = Object.keys(iconMetadata_1); - var icons_1 = []; - var categories_1 = []; - iconNames.forEach(function (iconName) { - var iconMeta = iconMetadata_1[iconName]; - if (!iconMeta.private) { - // solid - if (iconMeta.styles.includes('solid')) { - icons_1.push(new Icon_1.default({ - name: iconName, - type: IconType_1.default.SOLID, - unicode: iconMeta.unicode, - searchTerms: iconMeta.search.terms, - })); - } - // outline - if (iconMeta.styles.includes('regular')) { - icons_1.push(new Icon_1.default({ - name: iconName, - type: IconType_1.default.OUTLINE, - unicode: iconMeta.unicode, - searchTerms: iconMeta.search.terms, - })); - } - // thin - if (iconMeta.styles.includes('light')) { - icons_1.push(new Icon_1.default({ - name: iconName, - type: IconType_1.default.THIN, - unicode: iconMeta.unicode, - searchTerms: iconMeta.search.terms, - })); - } - // brand - if (iconMeta.styles.includes('brands')) { - icons_1.push(new Icon_1.default({ - name: iconName, - type: IconType_1.default.BRAND, - unicode: iconMeta.unicode, - searchTerms: iconMeta.search.terms, - })); - } - } - }); - var sortAz_1 = function (a, b) { - if (a.name < b.name) - return -1; - if (a.name > b.name) - return 1; - return 0; - }; - icons_1 = icons_1.sort(sortAz_1); - parseSpinner.text = 'parsing categories'; - fse.readFile(categoriesFilePath, function (categoriesErr, categoriesData) { - if (!categoriesErr) { - var categoriesMetadata_1 = js_yaml_1.safeLoad(categoriesData.toString()); - var categoryNames = Object.keys(categoriesMetadata_1); - categoryNames.forEach(function (categoryName) { - var categoryMeta = categoriesMetadata_1[categoryName]; - var categoryIcons = []; - categoryMeta.icons.forEach(function (iconName) { - icons_1.filter(function (i) { return i.rawName === iconName; }) - .forEach(function (icon) { - categoryIcons.push(icon); - }); - }); - categories_1.push(new Category_1.default({ - name: categoryName, - label: categoryMeta.label, - icons: categoryIcons.sort(sortAz_1), - })); - }); - categories_1 = categories_1 - .sort(sortAz_1); - categories_1.push(new Category_1.default({ - name: 'brands', - label: 'Brands', - icons: icons_1 - .filter(function (i) { return i.type === IconType_1.default.BRAND; }) - .sort(sortAz_1), - })); - var parseResults = { - icons: { - solid: icons_1.filter(function (i) { return i.type === IconType_1.default.SOLID; }), - outline: icons_1.filter(function (i) { return i.type === IconType_1.default.OUTLINE; }), - thin: icons_1.filter(function (i) { return i.type === IconType_1.default.THIN; }), - brand: icons_1.filter(function (i) { return i.type === IconType_1.default.BRAND; }), - }, - categories: categories_1, - }; - var _a = parseResults.icons, solidIcons = _a.solid, outlineIcons = _a.outline, thinIcons = _a.thin, brandIcons = _a.brand; - var totalIcons = solidIcons.length + outlineIcons.length - + thinIcons.length + brandIcons.length; - parseSpinner.succeed('icons & categories parsed'); - Logger_1.default.log(); - Logger_1.default.log(chalk_1.default.cyan(' Results:')); - Logger_1.default.log(" Solid: " + chalk_1.default.cyan(String(solidIcons.length))); - Logger_1.default.log(" Outline: " + chalk_1.default.cyan(String(outlineIcons.length))); - Logger_1.default.log(" Thin: " + chalk_1.default.cyan(String(thinIcons.length))); - Logger_1.default.log(" Brand: " + chalk_1.default.cyan(String(brandIcons.length))); - Logger_1.default.log(" " + chalk_1.default.cyan(String(totalIcons))); - resolve({ - icons: { - solid: { - icons: solidIcons, - aliases: aliases_json_1.default.filter(function (alias) { return alias.type === 'solid'; }) - .sort(sortAz_1), - }, - outline: { - icons: outlineIcons, - aliases: aliases_json_1.default.filter(function (alias) { return alias.type === 'outline'; }) - .sort(sortAz_1), - }, - thin: { - icons: thinIcons, - aliases: aliases_json_1.default.filter(function (alias) { return alias.type === 'thin'; }) - .sort(sortAz_1), - }, - brand: { - icons: brandIcons, - aliases: aliases_json_1.default.filter(function (alias) { return alias.type === 'brand'; }) - .sort(sortAz_1), - }, - }, - categories: categories_1, - fontAssetsDirectory: path_1.resolve(paths.assetDirectoryPath, fontAwesomeDirectory, 'webfonts'), - fontFileNames: { - 'fa-solid-900': 'icons', - 'fa-regular-400': 'outline-icons', - 'fa-light-300': 'thin-icons', - 'fa-brands-400': 'brand-icons', - }, - }); - } - else { - parseSpinner.stop(); - Logger_1.default.error(categoriesErr); - process.exit(1); - } - }); - } - else { - parseSpinner.stop(); - Logger_1.default.error(iconsErr); - process.exit(1); - } - }); - }); -} -exports.default = parse; +"use strict"; +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; + result["default"] = mod; + return result; +}; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +// node +var path_1 = require("path"); +// npm +var fse = __importStar(require("fs-extra")); +var js_yaml_1 = require("js-yaml"); +var chalk_1 = __importDefault(require("chalk")); +// utils +var Logger_1 = __importStar(require("../util/Logger")); +// modals +var Icon_1 = __importDefault(require("../modals/Icon")); +var Category_1 = __importDefault(require("../modals/Category")); +// enums +var IconType_1 = __importDefault(require("../enums/IconType")); +// static +var aliases_json_1 = __importDefault(require("../static/aliases.json")); +function parse(results, paths) { + return new Promise(function (resolve) { + var asset = results.asset; + var parseSpinner = Logger_1.spinner() + .start('parsing icons'); + var fontAwesomeDirectoryName = results.iconSet.name.toLowerCase() + .replace(/\s/g, '-'); + var fontAwesomeDirectory = fontAwesomeDirectoryName + "-" + asset.version + "-web"; + var iconsMetadataFilePath = path_1.resolve(paths.assetDirectoryPath, fontAwesomeDirectory, 'metadata', 'icons.json'); + var categoriesFilePath = path_1.resolve(paths.assetDirectoryPath, fontAwesomeDirectory, 'metadata', 'categories.yml'); + fse.readFile(iconsMetadataFilePath, function (iconsErr, iconsData) { + if (!iconsErr) { + var iconMetadata_1 = JSON.parse(iconsData.toString()); + var iconNames = Object.keys(iconMetadata_1); + var icons_1 = []; + var categories_1 = []; + iconNames.forEach(function (iconName) { + var iconMeta = iconMetadata_1[iconName]; + if (!iconMeta.private) { + // solid + if (iconMeta.styles.includes('solid')) { + icons_1.push(new Icon_1.default({ + name: iconName, + type: IconType_1.default.SOLID, + unicode: iconMeta.unicode, + searchTerms: iconMeta.search.terms, + })); + } + // outline + if (iconMeta.styles.includes('regular')) { + icons_1.push(new Icon_1.default({ + name: iconName, + type: IconType_1.default.OUTLINE, + unicode: iconMeta.unicode, + searchTerms: iconMeta.search.terms, + })); + } + // thin + if (iconMeta.styles.includes('light')) { + icons_1.push(new Icon_1.default({ + name: iconName, + type: IconType_1.default.THIN, + unicode: iconMeta.unicode, + searchTerms: iconMeta.search.terms, + })); + } + // brand + if (iconMeta.styles.includes('brands')) { + icons_1.push(new Icon_1.default({ + name: iconName, + type: IconType_1.default.BRAND, + unicode: iconMeta.unicode, + searchTerms: iconMeta.search.terms, + })); + } + } + }); + var sortAz_1 = function (a, b) { + if (a.name < b.name) + return -1; + if (a.name > b.name) + return 1; + return 0; + }; + icons_1 = icons_1.sort(sortAz_1); + parseSpinner.text = 'parsing categories'; + fse.readFile(categoriesFilePath, function (categoriesErr, categoriesData) { + if (!categoriesErr) { + var categoriesMetadata_1 = js_yaml_1.safeLoad(categoriesData.toString()); + var categoryNames = Object.keys(categoriesMetadata_1); + categoryNames.forEach(function (categoryName) { + var categoryMeta = categoriesMetadata_1[categoryName]; + var categoryIcons = []; + categoryMeta.icons.forEach(function (iconName) { + icons_1.filter(function (i) { return i.rawName === iconName; }) + .forEach(function (icon) { + categoryIcons.push(icon); + }); + }); + categories_1.push(new Category_1.default({ + name: categoryName, + label: categoryMeta.label, + icons: categoryIcons.sort(sortAz_1), + })); + }); + categories_1 = categories_1 + .sort(sortAz_1); + categories_1.push(new Category_1.default({ + name: 'brands', + label: 'Brands', + icons: icons_1 + .filter(function (i) { return i.type === IconType_1.default.BRAND; }) + .sort(sortAz_1), + })); + var parseResults = { + icons: { + solid: icons_1.filter(function (i) { return i.type === IconType_1.default.SOLID; }), + outline: icons_1.filter(function (i) { return i.type === IconType_1.default.OUTLINE; }), + thin: icons_1.filter(function (i) { return i.type === IconType_1.default.THIN; }), + brand: icons_1.filter(function (i) { return i.type === IconType_1.default.BRAND; }), + }, + categories: categories_1, + }; + var _a = parseResults.icons, solidIcons = _a.solid, outlineIcons = _a.outline, thinIcons = _a.thin, brandIcons = _a.brand; + var totalIcons = solidIcons.length + outlineIcons.length + + thinIcons.length + brandIcons.length; + parseSpinner.succeed('icons & categories parsed'); + Logger_1.default.log(); + Logger_1.default.log(chalk_1.default.cyan(' Results:')); + Logger_1.default.log(" Solid: " + chalk_1.default.cyan(String(solidIcons.length))); + Logger_1.default.log(" Outline: " + chalk_1.default.cyan(String(outlineIcons.length))); + Logger_1.default.log(" Thin: " + chalk_1.default.cyan(String(thinIcons.length))); + Logger_1.default.log(" Brand: " + chalk_1.default.cyan(String(brandIcons.length))); + Logger_1.default.log(" " + chalk_1.default.cyan(String(totalIcons))); + resolve({ + icons: { + solid: { + icons: solidIcons, + aliases: aliases_json_1.default.filter(function (alias) { return alias.type === 'solid'; }) + .sort(sortAz_1), + }, + outline: { + icons: outlineIcons, + aliases: aliases_json_1.default.filter(function (alias) { return alias.type === 'outline'; }) + .sort(sortAz_1), + }, + thin: { + icons: thinIcons, + aliases: aliases_json_1.default.filter(function (alias) { return alias.type === 'thin'; }) + .sort(sortAz_1), + }, + brand: { + icons: brandIcons, + aliases: aliases_json_1.default.filter(function (alias) { return alias.type === 'brand'; }) + .sort(sortAz_1), + }, + }, + categories: categories_1, + fontAssetsDirectory: path_1.resolve(paths.assetDirectoryPath, fontAwesomeDirectory, 'webfonts'), + fontFileNames: { + 'fa-solid-900': 'icons', + 'fa-regular-400': 'outline-icons', + 'fa-light-300': 'thin-icons', + 'fa-brands-400': 'brand-icons', + }, + }); + } + else { + parseSpinner.stop(); + Logger_1.default.error(categoriesErr); + process.exit(1); + } + }); + } + else { + parseSpinner.stop(); + Logger_1.default.error(iconsErr); + process.exit(1); + } + }); + }); +} +exports.default = parse; diff --git a/lib/static/aliases.json b/lib/static/aliases.json index 609c072..d213738 100644 --- a/lib/static/aliases.json +++ b/lib/static/aliases.json @@ -1,2389 +1,2389 @@ -[ - { - "rawName": "chess-rock", - "name": "chess rock", - "className": "chess.rock", - "unicode": "\\f447", - "type": "solid" - }, - { - "rawName": "ordered-list", - "name": "ordered list", - "className": "ordered.list", - "unicode": "\\f0cb", - "type": "solid" - }, - { - "rawName": "unordered-list", - "name": "unordered list", - "className": "unordered.list", - "unicode": "\\f0ca", - "type": "solid" - }, - { - "rawName": "user-doctor", - "name": "user doctor", - "className": "user.doctor", - "unicode": "\\f0f0", - "type": "solid" - }, - { - "rawName": "shield", - "name": "shield", - "className": "shield", - "unicode": "\\f3ed", - "type": "solid" - }, - { - "rawName": "puzzle", - "name": "puzzle", - "className": "puzzle", - "unicode": "\\f12e", - "type": "solid" - }, - { - "rawName": "credit-card-amazon-pay", - "name": "credit card amazon pay", - "className": "credit.card.amazon.pay", - "unicode": "\\f42d", - "type": "brand" - }, - { - "rawName": "credit-card-american-express", - "name": "credit card american express", - "className": "credit.card.american.express", - "unicode": "\\f1f3", - "type": "brand" - }, - { - "rawName": "credit-card-diners-club", - "name": "credit card diners club", - "className": "credit.card.diners.club", - "unicode": "\\f24c", - "type": "brand" - }, - { - "rawName": "credit-card-discover", - "name": "credit card discover", - "className": "credit.card.discover", - "unicode": "\\f1f2", - "type": "brand" - }, - { - "rawName": "credit-card-jcb", - "name": "credit card jcb", - "className": "credit.card.jcb", - "unicode": "\\f24b", - "type": "brand" - }, - { - "rawName": "credit-card-mastercard", - "name": "credit card mastercard", - "className": "credit.card.mastercard", - "unicode": "\\f1f1", - "type": "brand" - }, - { - "rawName": "credit-card-paypal", - "name": "credit card paypal", - "className": "credit.card.paypal", - "unicode": "\\f1f4", - "type": "brand" - }, - { - "rawName": "credit-card-stripe", - "name": "credit card stripe", - "className": "credit.card.stripe", - "unicode": "\\f1f5", - "type": "brand" - }, - { - "rawName": "credit-card-visa", - "name": "credit card visa", - "className": "credit.card.visa", - "unicode": "\\f1f0", - "type": "brand" - }, - { - "rawName": "add-circle", - "name": "add circle", - "className": "add.circle", - "unicode": "\\f055", - "type": "solid" - }, - { - "rawName": "add-square", - "name": "add square", - "className": "add.square", - "unicode": "\\f0fe", - "type": "solid" - }, - { - "rawName": "add-to-calendar", - "name": "add to calendar", - "className": "add.to.calendar", - "unicode": "\\f271", - "type": "solid" - }, - { - "rawName": "add-to-cart", - "name": "add to cart", - "className": "add.to.cart", - "unicode": "\\f217", - "type": "solid" - }, - { - "rawName": "add-user", - "name": "add user", - "className": "add.user", - "unicode": "\\f234", - "type": "solid" - }, - { - "rawName": "add", - "name": "add", - "className": "add", - "unicode": "\\f067", - "type": "solid" - }, - { - "rawName": "alarm-mute", - "name": "alarm mute", - "className": "alarm.mute", - "unicode": "\\f1f6", - "type": "solid" - }, - { - "rawName": "alarm", - "name": "alarm", - "className": "alarm", - "unicode": "\\f0f3", - "type": "solid" - }, - { - "rawName": "ald", - "name": "ald", - "className": "ald", - "unicode": "\\f2a2", - "type": "solid" - }, - { - "rawName": "als", - "name": "als", - "className": "als", - "unicode": "\\f2a2", - "type": "solid" - }, - { - "rawName": "american-express-card", - "name": "american express card", - "className": "american.express.card", - "unicode": "\\f1f3", - "type": "brand" - }, - { - "rawName": "american-express", - "name": "american express", - "className": "american.express", - "unicode": "\\f1f3", - "type": "brand" - }, - { - "rawName": "amex", - "name": "amex", - "className": "amex", - "unicode": "\\f1f3", - "type": "brand" - }, - { - "rawName": "announcement", - "name": "announcement", - "className": "announcement", - "unicode": "\\f0a1", - "type": "solid" - }, - { - "rawName": "area-chart", - "name": "area chart", - "className": "area.chart", - "unicode": "\\f1fe", - "type": "solid" - }, - { - "rawName": "area-graph", - "name": "area graph", - "className": "area.graph", - "unicode": "\\f1fe", - "type": "solid" - }, - { - "rawName": "arrow-down-cart", - "name": "arrow down cart", - "className": "arrow.down.cart", - "unicode": "\\f218", - "type": "solid" - }, - { - "rawName": "asexual", - "name": "asexual", - "className": "asexual", - "unicode": "\\f22d", - "type": "solid" - }, - { - "rawName": "asl-interpreting", - "name": "asl interpreting", - "className": "asl.interpreting", - "unicode": "\\f2a3", - "type": "solid" - }, - { - "rawName": "asl", - "name": "asl", - "className": "asl", - "unicode": "\\f2a3", - "type": "solid" - }, - { - "rawName": "assistive-listening-devices", - "name": "assistive listening devices", - "className": "assistive.listening.devices", - "unicode": "\\f2a2", - "type": "solid" - }, - { - "rawName": "attach", - "name": "attach", - "className": "attach", - "unicode": "\\f0c6", - "type": "solid" - }, - { - "rawName": "attention", - "name": "attention", - "className": "attention", - "unicode": "\\f06a", - "type": "solid" - }, - { - "rawName": "balance", - "name": "balance", - "className": "balance", - "unicode": "\\f24e", - "type": "solid" - }, - { - "rawName": "bar", - "name": "bar", - "className": "bar", - "unicode": "\\f0fc", - "type": "solid" - }, - { - "rawName": "bathtub", - "name": "bathtub", - "className": "bathtub", - "unicode": "\\f2cd", - "type": "solid" - }, - { - "rawName": "battery-four", - "name": "battery four", - "className": "battery.four", - "unicode": "\\f240", - "type": "solid" - }, - { - "rawName": "battery-high", - "name": "battery high", - "className": "battery.high", - "unicode": "\\f241", - "type": "solid" - }, - { - "rawName": "battery-low", - "name": "battery low", - "className": "battery.low", - "unicode": "\\f243", - "type": "solid" - }, - { - "rawName": "battery-medium", - "name": "battery medium", - "className": "battery.medium", - "unicode": "\\f242", - "type": "solid" - }, - { - "rawName": "battery-one", - "name": "battery one", - "className": "battery.one", - "unicode": "\\f243", - "type": "solid" - }, - { - "rawName": "battery-three", - "name": "battery three", - "className": "battery.three", - "unicode": "\\f241", - "type": "solid" - }, - { - "rawName": "battery-two", - "name": "battery two", - "className": "battery.two", - "unicode": "\\f242", - "type": "solid" - }, - { - "rawName": "battery-zero", - "name": "battery zero", - "className": "battery.zero", - "unicode": "\\f244", - "type": "solid" - }, - { - "rawName": "birthday", - "name": "birthday", - "className": "birthday", - "unicode": "\\f1fd", - "type": "solid" - }, - { - "rawName": "block-layout", - "name": "block layout", - "className": "block.layout", - "unicode": "\\f009", - "type": "solid" - }, - { - "rawName": "bluetooth-alternative", - "name": "bluetooth alternative", - "className": "bluetooth.alternative", - "unicode": "\\f294", - "type": "brand" - }, - { - "rawName": "broken-chain", - "name": "broken chain", - "className": "broken.chain", - "unicode": "\\f127", - "type": "solid" - }, - { - "rawName": "browser", - "name": "browser", - "className": "browser", - "unicode": "\\f022", - "type": "solid" - }, - { - "rawName": "call-square", - "name": "call square", - "className": "call.square", - "unicode": "\\f098", - "type": "solid" - }, - { - "rawName": "call", - "name": "call", - "className": "call", - "unicode": "\\f095", - "type": "solid" - }, - { - "rawName": "cancel", - "name": "cancel", - "className": "cancel", - "unicode": "\\f00d", - "type": "solid" - }, - { - "rawName": "cart", - "name": "cart", - "className": "cart", - "unicode": "\\f07a", - "type": "solid" - }, - { - "rawName": "cc", - "name": "cc", - "className": "cc", - "unicode": "\\f20a", - "type": "solid" - }, - { - "rawName": "chain", - "name": "chain", - "className": "chain", - "unicode": "\\f0c1", - "type": "solid" - }, - { - "rawName": "chat", - "name": "chat", - "className": "chat", - "unicode": "\\f075", - "type": "solid" - }, - { - "rawName": "checked-calendar", - "name": "checked calendar", - "className": "checked.calendar", - "unicode": "\\f274", - "type": "solid" - }, - { - "rawName": "checkmark", - "name": "checkmark", - "className": "checkmark", - "unicode": "\\f00c", - "type": "solid" - }, - { - "rawName": "circle-notched", - "name": "circle notched", - "className": "circle.notched", - "unicode": "\\f1ce", - "type": "solid" - }, - { - "rawName": "close", - "name": "close", - "className": "close", - "unicode": "\\f00d", - "type": "solid" - }, - { - "rawName": "cny", - "name": "cny", - "className": "cny", - "unicode": "\\f157", - "type": "solid" - }, - { - "rawName": "cocktail", - "name": "cocktail", - "className": "cocktail", - "unicode": "\\f000", - "type": "solid" - }, - { - "rawName": "commenting", - "name": "commenting", - "className": "commenting", - "unicode": "\\f27a", - "type": "solid" - }, - { - "rawName": "computer", - "name": "computer", - "className": "computer", - "unicode": "\\f108", - "type": "solid" - }, - { - "rawName": "configure", - "name": "configure", - "className": "configure", - "unicode": "\\f0ad", - "type": "solid" - }, - { - "rawName": "content", - "name": "content", - "className": "content", - "unicode": "\\f0c9", - "type": "solid" - }, - { - "rawName": "deafness", - "name": "deafness", - "className": "deafness", - "unicode": "\\f2a4", - "type": "solid" - }, - { - "rawName": "delete-calendar", - "name": "delete calendar", - "className": "delete.calendar", - "unicode": "\\f273", - "type": "solid" - }, - { - "rawName": "delete", - "name": "delete", - "className": "delete", - "unicode": "\\f00d", - "type": "solid" - }, - { - "rawName": "detective", - "name": "detective", - "className": "detective", - "unicode": "\\f21b", - "type": "solid" - }, - { - "rawName": "diners-club-card", - "name": "diners club card", - "className": "diners.club.card", - "unicode": "\\f24c", - "type": "brand" - }, - { - "rawName": "diners-club", - "name": "diners club", - "className": "diners.club", - "unicode": "\\f24c", - "type": "brand" - }, - { - "rawName": "discover-card", - "name": "discover card", - "className": "discover.card", - "unicode": "\\f1f2", - "type": "brand" - }, - { - "rawName": "discover", - "name": "discover", - "className": "discover", - "unicode": "\\f1f2", - "type": "brand" - }, - { - "rawName": "discussions", - "name": "discussions", - "className": "discussions", - "unicode": "\\f086", - "type": "solid" - }, - { - "rawName": "doctor", - "name": "doctor", - "className": "doctor", - "unicode": "\\f0f0", - "type": "solid" - }, - { - "rawName": "dollar", - "name": "dollar", - "className": "dollar", - "unicode": "\\f155", - "type": "solid" - }, - { - "rawName": "dont", - "name": "dont", - "className": "dont", - "unicode": "\\f05e", - "type": "solid" - }, - { - "rawName": "dribble", - "name": "dribble", - "className": "dribble", - "unicode": "\\f17d", - "type": "brand" - }, - { - "rawName": "drivers-license", - "name": "drivers license", - "className": "drivers.license", - "unicode": "\\f2c2", - "type": "solid" - }, - { - "rawName": "dropdown", - "name": "dropdown", - "className": "dropdown", - "unicode": "\\f0d7", - "type": "solid" - }, - { - "rawName": "eercast", - "name": "eercast", - "className": "eercast", - "unicode": "\\f2da", - "type": "brand" - }, - { - "rawName": "emergency", - "name": "emergency", - "className": "emergency", - "unicode": "\\f0f9", - "type": "solid" - }, - { - "rawName": "envira-gallery", - "name": "envira gallery", - "className": "envira.gallery", - "unicode": "\\f299", - "type": "brand" - }, - { - "rawName": "erase", - "name": "erase", - "className": "erase", - "unicode": "\\f12d", - "type": "solid" - }, - { - "rawName": "eur", - "name": "eur", - "className": "eur", - "unicode": "\\f153", - "type": "solid" - }, - { - "rawName": "euro", - "name": "euro", - "className": "euro", - "unicode": "\\f153", - "type": "solid" - }, - { - "rawName": "eyedropper", - "name": "eyedropper", - "className": "eyedropper", - "unicode": "\\f1fb", - "type": "solid" - }, - { - "rawName": "fa", - "name": "fa", - "className": "fa", - "unicode": "\\f2b4", - "type": "brand" - }, - { - "rawName": "factory", - "name": "factory", - "className": "factory", - "unicode": "\\f275", - "type": "solid" - }, - { - "rawName": "favorite", - "name": "favorite", - "className": "favorite", - "unicode": "\\f005", - "type": "solid" - }, - { - "rawName": "feed", - "name": "feed", - "className": "feed", - "unicode": "\\f09e", - "type": "solid" - }, - { - "rawName": "female-homosexual", - "name": "female homosexual", - "className": "female.homosexual", - "unicode": "\\f226", - "type": "solid" - }, - { - "rawName": "file-text", - "name": "file text", - "className": "file.text", - "unicode": "\\f15c", - "type": "solid" - }, - { - "rawName": "find", - "name": "find", - "className": "find", - "unicode": "\\f1e5", - "type": "solid" - }, - { - "rawName": "first-aid", - "name": "first aid", - "className": "first.aid", - "unicode": "\\f0fa", - "type": "solid" - }, - { - "rawName": "five-hundred-pixels", - "name": "five hundred pixels", - "className": "five.hundred.pixels", - "unicode": "\\f26e", - "type": "brand" - }, - { - "rawName": "fork", - "name": "fork", - "className": "fork", - "unicode": "\\f126", - "type": "solid" - }, - { - "rawName": "game", - "name": "game", - "className": "game", - "unicode": "\\f11b", - "type": "solid" - }, - { - "rawName": "gay", - "name": "gay", - "className": "gay", - "unicode": "\\f227", - "type": "solid" - }, - { - "rawName": "gbp", - "name": "gbp", - "className": "gbp", - "unicode": "\\f154", - "type": "solid" - }, - { - "rawName": "gittip", - "name": "gittip", - "className": "gittip", - "unicode": "\\f184", - "type": "brand" - }, - { - "rawName": "google-plus-circle", - "name": "google plus circle", - "className": "google.plus.circle", - "unicode": "\\f2b3", - "type": "brand" - }, - { - "rawName": "google-plus-official", - "name": "google plus official", - "className": "google.plus.official", - "unicode": "\\f2b3", - "type": "brand" - }, - { - "rawName": "grab", - "name": "grab", - "className": "grab", - "unicode": "\\f255", - "type": "solid" - }, - { - "rawName": "graduation", - "name": "graduation", - "className": "graduation", - "unicode": "\\f19d", - "type": "solid" - }, - { - "rawName": "grid-layout", - "name": "grid layout", - "className": "grid.layout", - "unicode": "\\f00a", - "type": "solid" - }, - { - "rawName": "group", - "name": "group", - "className": "group", - "unicode": "\\f0c0", - "type": "solid" - }, - { - "rawName": "h", - "name": "h", - "className": "h", - "unicode": "\\f0fd", - "type": "solid" - }, - { - "rawName": "hand-victory", - "name": "hand victory", - "className": "hand.victory", - "unicode": "\\f25b", - "type": "solid" - }, - { - "rawName": "handicap", - "name": "handicap", - "className": "handicap", - "unicode": "\\f193", - "type": "solid" - }, - { - "rawName": "hard-of-hearing", - "name": "hard of hearing", - "className": "hard.of.hearing", - "unicode": "\\f2a4", - "type": "solid" - }, - { - "rawName": "header", - "name": "header", - "className": "header", - "unicode": "\\f1dc", - "type": "solid" - }, - { - "rawName": "help-circle", - "name": "help circle", - "className": "help.circle", - "unicode": "\\f059", - "type": "solid" - }, - { - "rawName": "help", - "name": "help", - "className": "help", - "unicode": "\\f128", - "type": "solid" - }, - { - "rawName": "heterosexual", - "name": "heterosexual", - "className": "heterosexual", - "unicode": "\\f228", - "type": "solid" - }, - { - "rawName": "hide", - "name": "hide", - "className": "hide", - "unicode": "\\f070", - "type": "solid" - }, - { - "rawName": "hotel", - "name": "hotel", - "className": "hotel", - "unicode": "\\f236", - "type": "solid" - }, - { - "rawName": "hourglass-four", - "name": "hourglass four", - "className": "hourglass.four", - "unicode": "\\f254", - "type": "solid" - }, - { - "rawName": "hourglass-full", - "name": "hourglass full", - "className": "hourglass.full", - "unicode": "\\f254", - "type": "solid" - }, - { - "rawName": "hourglass-one", - "name": "hourglass one", - "className": "hourglass.one", - "unicode": "\\f251", - "type": "solid" - }, - { - "rawName": "hourglass-three", - "name": "hourglass three", - "className": "hourglass.three", - "unicode": "\\f253", - "type": "solid" - }, - { - "rawName": "hourglass-two", - "name": "hourglass two", - "className": "hourglass.two", - "unicode": "\\f252", - "type": "solid" - }, - { - "rawName": "idea", - "name": "idea", - "className": "idea", - "unicode": "\\f0eb", - "type": "solid" - }, - { - "rawName": "ils", - "name": "ils", - "className": "ils", - "unicode": "\\f20b", - "type": "solid" - }, - { - "rawName": "in-cart", - "name": "in cart", - "className": "in.cart", - "unicode": "\\f218", - "type": "solid" - }, - { - "rawName": "inr", - "name": "inr", - "className": "inr", - "unicode": "\\f156", - "type": "solid" - }, - { - "rawName": "intergender", - "name": "intergender", - "className": "intergender", - "unicode": "\\f224", - "type": "solid" - }, - { - "rawName": "intersex", - "name": "intersex", - "className": "intersex", - "unicode": "\\f224", - "type": "solid" - }, - { - "rawName": "japan-credit-bureau-card", - "name": "japan credit bureau card", - "className": "japan.credit.bureau.card", - "unicode": "\\f24b", - "type": "brand" - }, - { - "rawName": "japan-credit-bureau", - "name": "japan credit bureau", - "className": "japan.credit.bureau", - "unicode": "\\f24b", - "type": "brand" - }, - { - "rawName": "jcb", - "name": "jcb", - "className": "jcb", - "unicode": "\\f24b", - "type": "brand" - }, - { - "rawName": "jpy", - "name": "jpy", - "className": "jpy", - "unicode": "\\f157", - "type": "solid" - }, - { - "rawName": "krw", - "name": "krw", - "className": "krw", - "unicode": "\\f159", - "type": "solid" - }, - { - "rawName": "lab", - "name": "lab", - "className": "lab", - "unicode": "\\f0c3", - "type": "solid" - }, - { - "rawName": "law", - "name": "law", - "className": "law", - "unicode": "\\f24e", - "type": "solid" - }, - { - "rawName": "legal", - "name": "legal", - "className": "legal", - "unicode": "\\f0e3", - "type": "solid" - }, - { - "rawName": "lesbian", - "name": "lesbian", - "className": "lesbian", - "unicode": "\\f226", - "type": "solid" - }, - { - "rawName": "lightning", - "name": "lightning", - "className": "lightning", - "unicode": "\\f0e7", - "type": "solid" - }, - { - "rawName": "like", - "name": "like", - "className": "like", - "unicode": "\\f004", - "type": "solid" - }, - { - "rawName": "line-graph", - "name": "line graph", - "className": "line.graph", - "unicode": "\\f201", - "type": "solid" - }, - { - "rawName": "linkedin-square", - "name": "linkedin square", - "className": "linkedin.square", - "unicode": "\\f08c", - "type": "brand" - }, - { - "rawName": "linkify", - "name": "linkify", - "className": "linkify", - "unicode": "\\f0c1", - "type": "solid" - }, - { - "rawName": "lira", - "name": "lira", - "className": "lira", - "unicode": "\\f195", - "type": "solid" - }, - { - "rawName": "list-layout", - "name": "list layout", - "className": "list.layout", - "unicode": "\\f00b", - "type": "solid" - }, - { - "rawName": "magnify", - "name": "magnify", - "className": "magnify", - "unicode": "\\f00e", - "type": "solid" - }, - { - "rawName": "mail-forward", - "name": "mail forward", - "className": "mail.forward", - "unicode": "\\f064", - "type": "solid" - }, - { - "rawName": "mail-square", - "name": "mail square", - "className": "mail.square", - "unicode": "\\f199", - "type": "solid" - }, - { - "rawName": "mail", - "name": "mail", - "className": "mail", - "unicode": "\\f0e0", - "type": "solid" - }, - { - "rawName": "male-homosexual", - "name": "male homosexual", - "className": "male.homosexual", - "unicode": "\\f227", - "type": "solid" - }, - { - "rawName": "man", - "name": "man", - "className": "man", - "unicode": "\\f222", - "type": "solid" - }, - { - "rawName": "marker", - "name": "marker", - "className": "marker", - "unicode": "\\f041", - "type": "solid" - }, - { - "rawName": "mars-alternate", - "name": "mars alternate", - "className": "mars.alternate", - "unicode": "\\f229", - "type": "solid" - }, - { - "rawName": "mars-horizontal", - "name": "mars horizontal", - "className": "mars.horizontal", - "unicode": "\\f22b", - "type": "solid" - }, - { - "rawName": "mars-vertical", - "name": "mars vertical", - "className": "mars.vertical", - "unicode": "\\f22a", - "type": "solid" - }, - { - "rawName": "mastercard-card", - "name": "mastercard card", - "className": "mastercard.card", - "unicode": "\\f1f1", - "type": "brand" - }, - { - "rawName": "mastercard", - "name": "mastercard", - "className": "mastercard", - "unicode": "\\f1f1", - "type": "brand" - }, - { - "rawName": "microsoft-edge", - "name": "microsoft edge", - "className": "microsoft.edge", - "unicode": "\\f282", - "type": "brand" - }, - { - "rawName": "military", - "name": "military", - "className": "military", - "unicode": "\\f0fb", - "type": "solid" - }, - { - "rawName": "ms-edge", - "name": "ms edge", - "className": "ms.edge", - "unicode": "\\f282", - "type": "brand" - }, - { - "rawName": "mute", - "name": "mute", - "className": "mute", - "unicode": "\\f131", - "type": "solid" - }, - { - "rawName": "new-pied-piper", - "name": "new pied piper", - "className": "new.pied.piper", - "unicode": "\\f2ae", - "type": "brand" - }, - { - "rawName": "non-binary-transgender", - "name": "non binary transgender", - "className": "non.binary.transgender", - "unicode": "\\f223", - "type": "solid" - }, - { - "rawName": "numbered-list", - "name": "numbered list", - "className": "numbered.list", - "unicode": "\\f0cb", - "type": "solid" - }, - { - "rawName": "optinmonster", - "name": "optinmonster", - "className": "optinmonster", - "unicode": "\\f23c", - "type": "brand" - }, - { - "rawName": "options", - "name": "options", - "className": "options", - "unicode": "\\f1de", - "type": "solid" - }, - { - "rawName": "other-gender-horizontal", - "name": "other gender horizontal", - "className": "other.gender.horizontal", - "unicode": "\\f22b", - "type": "solid" - }, - { - "rawName": "other-gender-vertical", - "name": "other gender vertical", - "className": "other.gender.vertical", - "unicode": "\\f22a", - "type": "solid" - }, - { - "rawName": "other-gender", - "name": "other gender", - "className": "other.gender", - "unicode": "\\f229", - "type": "solid" - }, - { - "rawName": "payment", - "name": "payment", - "className": "payment", - "unicode": "\\f09d", - "type": "solid" - }, - { - "rawName": "paypal-card", - "name": "paypal card", - "className": "paypal.card", - "unicode": "\\f1f4", - "type": "brand" - }, - { - "rawName": "pencil-square", - "name": "pencil square", - "className": "pencil.square", - "unicode": "\\f14b", - "type": "solid" - }, - { - "rawName": "photo", - "name": "photo", - "className": "photo", - "unicode": "\\f030", - "type": "solid" - }, - { - "rawName": "picture", - "name": "picture", - "className": "picture", - "unicode": "\\f03e", - "type": "solid" - }, - { - "rawName": "pie-chart", - "name": "pie chart", - "className": "pie.chart", - "unicode": "\\f200", - "type": "solid" - }, - { - "rawName": "pie-graph", - "name": "pie graph", - "className": "pie.graph", - "unicode": "\\f200", - "type": "solid" - }, - { - "rawName": "pied-piper-hat", - "name": "pied piper hat", - "className": "pied.piper.hat", - "unicode": "\\f2ae", - "type": "brand" - }, - { - "rawName": "pin", - "name": "pin", - "className": "pin", - "unicode": "\\f08d", - "type": "solid" - }, - { - "rawName": "plus-cart", - "name": "plus cart", - "className": "plus.cart", - "unicode": "\\f217", - "type": "solid" - }, - { - "rawName": "pocket", - "name": "pocket", - "className": "pocket", - "unicode": "\\f265", - "type": "brand" - }, - { - "rawName": "point", - "name": "point", - "className": "point", - "unicode": "\\f041", - "type": "solid" - }, - { - "rawName": "pointing-down", - "name": "pointing down", - "className": "pointing.down", - "unicode": "\\f0a7", - "type": "solid" - }, - { - "rawName": "pointing-left", - "name": "pointing left", - "className": "pointing.left", - "unicode": "\\f0a5", - "type": "solid" - }, - { - "rawName": "pointing-right", - "name": "pointing right", - "className": "pointing.right", - "unicode": "\\f0a4", - "type": "solid" - }, - { - "rawName": "pointing-up", - "name": "pointing up", - "className": "pointing.up", - "unicode": "\\f0a6", - "type": "solid" - }, - { - "rawName": "pound", - "name": "pound", - "className": "pound", - "unicode": "\\f154", - "type": "solid" - }, - { - "rawName": "power-cord", - "name": "power cord", - "className": "power.cord", - "unicode": "\\f1e6", - "type": "solid" - }, - { - "rawName": "power", - "name": "power", - "className": "power", - "unicode": "\\f011", - "type": "solid" - }, - { - "rawName": "privacy", - "name": "privacy", - "className": "privacy", - "unicode": "\\f084", - "type": "solid" - }, - { - "rawName": "r-circle", - "name": "r circle", - "className": "r.circle", - "unicode": "\\f25d", - "type": "solid" - }, - { - "rawName": "rain", - "name": "rain", - "className": "rain", - "unicode": "\\f0e9", - "type": "solid" - }, - { - "rawName": "record", - "name": "record", - "className": "record", - "unicode": "\\f03d", - "type": "solid" - }, - { - "rawName": "refresh", - "name": "refresh", - "className": "refresh", - "unicode": "\\f021", - "type": "solid" - }, - { - "rawName": "remove-circle", - "name": "remove circle", - "className": "remove.circle", - "unicode": "\\f057", - "type": "solid" - }, - { - "rawName": "remove-from-calendar", - "name": "remove from calendar", - "className": "remove.from.calendar", - "unicode": "\\f272", - "type": "solid" - }, - { - "rawName": "remove-user", - "name": "remove user", - "className": "remove.user", - "unicode": "\\f235", - "type": "solid" - }, - { - "rawName": "remove", - "name": "remove", - "className": "remove", - "unicode": "\\f00d", - "type": "solid" - }, - { - "rawName": "repeat", - "name": "repeat", - "className": "repeat", - "unicode": "\\f01e", - "type": "solid" - }, - { - "rawName": "rmb", - "name": "rmb", - "className": "rmb", - "unicode": "\\f157", - "type": "solid" - }, - { - "rawName": "rouble", - "name": "rouble", - "className": "rouble", - "unicode": "\\f158", - "type": "solid" - }, - { - "rawName": "rub", - "name": "rub", - "className": "rub", - "unicode": "\\f158", - "type": "solid" - }, - { - "rawName": "ruble", - "name": "ruble", - "className": "ruble", - "unicode": "\\f158", - "type": "solid" - }, - { - "rawName": "rupee", - "name": "rupee", - "className": "rupee", - "unicode": "\\f156", - "type": "solid" - }, - { - "rawName": "s15", - "name": "s15", - "className": "s15", - "unicode": "\\f2cd", - "type": "solid" - }, - { - "rawName": "selected-radio", - "name": "selected radio", - "className": "selected.radio", - "unicode": "\\f192", - "type": "solid" - }, - { - "rawName": "send", - "name": "send", - "className": "send", - "unicode": "\\f1d8", - "type": "solid" - }, - { - "rawName": "setting", - "name": "setting", - "className": "setting", - "unicode": "\\f013", - "type": "solid" - }, - { - "rawName": "settings", - "name": "settings", - "className": "settings", - "unicode": "\\f085", - "type": "solid" - }, - { - "rawName": "shekel", - "name": "shekel", - "className": "shekel", - "unicode": "\\f20b", - "type": "solid" - }, - { - "rawName": "sheqel", - "name": "sheqel", - "className": "sheqel", - "unicode": "\\f20b", - "type": "solid" - }, - { - "rawName": "shipping", - "name": "shipping", - "className": "shipping", - "unicode": "\\f0d1", - "type": "solid" - }, - { - "rawName": "shop", - "name": "shop", - "className": "shop", - "unicode": "\\f07a", - "type": "solid" - }, - { - "rawName": "shuffle", - "name": "shuffle", - "className": "shuffle", - "unicode": "\\f074", - "type": "solid" - }, - { - "rawName": "shutdown", - "name": "shutdown", - "className": "shutdown", - "unicode": "\\f011", - "type": "solid" - }, - { - "rawName": "sidebar", - "name": "sidebar", - "className": "sidebar", - "unicode": "\\f0c9", - "type": "solid" - }, - { - "rawName": "signing", - "name": "signing", - "className": "signing", - "unicode": "\\f2a7", - "type": "solid" - }, - { - "rawName": "signup", - "name": "signup", - "className": "signup", - "unicode": "\\f044", - "type": "solid" - }, - { - "rawName": "sliders", - "name": "sliders", - "className": "sliders", - "unicode": "\\f1de", - "type": "solid" - }, - { - "rawName": "soccer", - "name": "soccer", - "className": "soccer", - "unicode": "\\f1e3", - "type": "solid" - }, - { - "rawName": "sort-alphabet-ascending", - "name": "sort alphabet ascending", - "className": "sort.alphabet.ascending", - "unicode": "\\f15d", - "type": "solid" - }, - { - "rawName": "sort-alphabet-descending", - "name": "sort alphabet descending", - "className": "sort.alphabet.descending", - "unicode": "\\f15e", - "type": "solid" - }, - { - "rawName": "sort-ascending", - "name": "sort ascending", - "className": "sort.ascending", - "unicode": "\\f0de", - "type": "solid" - }, - { - "rawName": "sort-content-ascending", - "name": "sort content ascending", - "className": "sort.content.ascending", - "unicode": "\\f160", - "type": "solid" - }, - { - "rawName": "sort-content-descending", - "name": "sort content descending", - "className": "sort.content.descending", - "unicode": "\\f161", - "type": "solid" - }, - { - "rawName": "sort-descending", - "name": "sort descending", - "className": "sort.descending", - "unicode": "\\f0dd", - "type": "solid" - }, - { - "rawName": "sort-numeric-ascending", - "name": "sort numeric ascending", - "className": "sort.numeric.ascending", - "unicode": "\\f162", - "type": "solid" - }, - { - "rawName": "sort-numeric-descending", - "name": "sort numeric descending", - "className": "sort.numeric.descending", - "unicode": "\\f163", - "type": "solid" - }, - { - "rawName": "sound", - "name": "sound", - "className": "sound", - "unicode": "\\f025", - "type": "solid" - }, - { - "rawName": "spy", - "name": "spy", - "className": "spy", - "unicode": "\\f21b", - "type": "solid" - }, - { - "rawName": "stripe-card", - "name": "stripe card", - "className": "stripe.card", - "unicode": "\\f1f5", - "type": "brand" - }, - { - "rawName": "student", - "name": "student", - "className": "student", - "unicode": "\\f19d", - "type": "solid" - }, - { - "rawName": "talk", - "name": "talk", - "className": "talk", - "unicode": "\\f27a", - "type": "solid" - }, - { - "rawName": "target", - "name": "target", - "className": "target", - "unicode": "\\f140", - "type": "solid" - }, - { - "rawName": "teletype", - "name": "teletype", - "className": "teletype", - "unicode": "\\f1e4", - "type": "solid" - }, - { - "rawName": "television", - "name": "television", - "className": "television", - "unicode": "\\f26c", - "type": "solid" - }, - { - "rawName": "text-cursor", - "name": "text cursor", - "className": "text.cursor", - "unicode": "\\f246", - "type": "solid" - }, - { - "rawName": "text-telephone", - "name": "text telephone", - "className": "text.telephone", - "unicode": "\\f1e4", - "type": "solid" - }, - { - "rawName": "theme-isle", - "name": "theme isle", - "className": "theme.isle", - "unicode": "\\f2b2", - "type": "brand" - }, - { - "rawName": "theme", - "name": "theme", - "className": "theme", - "unicode": "\\f043", - "type": "solid" - }, - { - "rawName": "thermometer", - "name": "thermometer", - "className": "thermometer", - "unicode": "\\f2c7", - "type": "solid" - }, - { - "rawName": "thumb-tack", - "name": "thumb tack", - "className": "thumb.tack", - "unicode": "\\f08d", - "type": "solid" - }, - { - "rawName": "time", - "name": "time", - "className": "time", - "unicode": "\\f017", - "type": "solid" - }, - { - "rawName": "tm", - "name": "tm", - "className": "tm", - "unicode": "\\f25c", - "type": "solid" - }, - { - "rawName": "toggle-down", - "name": "toggle down", - "className": "toggle.down", - "unicode": "\\f150", - "type": "solid" - }, - { - "rawName": "toggle-left", - "name": "toggle left", - "className": "toggle.left", - "unicode": "\\f191", - "type": "solid" - }, - { - "rawName": "toggle-right", - "name": "toggle right", - "className": "toggle.right", - "unicode": "\\f152", - "type": "solid" - }, - { - "rawName": "toggle-up", - "name": "toggle up", - "className": "toggle.up", - "unicode": "\\f151", - "type": "solid" - }, - { - "rawName": "translate", - "name": "translate", - "className": "translate", - "unicode": "\\f1ab", - "type": "solid" - }, - { - "rawName": "travel", - "name": "travel", - "className": "travel", - "unicode": "\\f0b1", - "type": "solid" - }, - { - "rawName": "treatment", - "name": "treatment", - "className": "treatment", - "unicode": "\\f0f1", - "type": "solid" - }, - { - "rawName": "triangle-down", - "name": "triangle down", - "className": "triangle.down", - "unicode": "\\f0d7", - "type": "solid" - }, - { - "rawName": "triangle-left", - "name": "triangle left", - "className": "triangle.left", - "unicode": "\\f0d9", - "type": "solid" - }, - { - "rawName": "triangle-right", - "name": "triangle right", - "className": "triangle.right", - "unicode": "\\f0da", - "type": "solid" - }, - { - "rawName": "triangle-up", - "name": "triangle up", - "className": "triangle.up", - "unicode": "\\f0d8", - "type": "solid" - }, - { - "rawName": "try", - "name": "try", - "className": "try", - "unicode": "\\f195", - "type": "solid" - }, - { - "rawName": "unhide", - "name": "unhide", - "className": "unhide", - "unicode": "\\f06e", - "type": "solid" - }, - { - "rawName": "unlinkify", - "name": "unlinkify", - "className": "unlinkify", - "unicode": "\\f127", - "type": "solid" - }, - { - "rawName": "unmute", - "name": "unmute", - "className": "unmute", - "unicode": "\\f130", - "type": "solid" - }, - { - "rawName": "usd", - "name": "usd", - "className": "usd", - "unicode": "\\f155", - "type": "solid" - }, - { - "rawName": "user-cancel", - "name": "user cancel", - "className": "user.cancel", - "unicode": "\\f235", - "type": "solid" - }, - { - "rawName": "user-close", - "name": "user close", - "className": "user.close", - "unicode": "\\f235", - "type": "solid" - }, - { - "rawName": "user-delete", - "name": "user delete", - "className": "user.delete", - "unicode": "\\f235", - "type": "solid" - }, - { - "rawName": "user-x", - "name": "user x", - "className": "user.x", - "unicode": "\\f235", - "type": "solid" - }, - { - "rawName": "vcard", - "name": "vcard", - "className": "vcard", - "unicode": "\\f2bb", - "type": "solid" - }, - { - "rawName": "video-camera", - "name": "video camera", - "className": "video.camera", - "unicode": "\\f03d", - "type": "solid" - }, - { - "rawName": "video-play", - "name": "video play", - "className": "video.play", - "unicode": "\\f144", - "type": "solid" - }, - { - "rawName": "visa-card", - "name": "visa card", - "className": "visa.card", - "unicode": "\\f1f0", - "type": "brand" - }, - { - "rawName": "visa", - "name": "visa", - "className": "visa", - "unicode": "\\f1f0", - "type": "brand" - }, - { - "rawName": "volume-control-phone", - "name": "volume control phone", - "className": "volume.control.phone", - "unicode": "\\f2a0", - "type": "solid" - }, - { - "rawName": "wait", - "name": "wait", - "className": "wait", - "unicode": "\\f017", - "type": "solid" - }, - { - "rawName": "warning-circle", - "name": "warning circle", - "className": "warning.circle", - "unicode": "\\f06a", - "type": "solid" - }, - { - "rawName": "warning-sign", - "name": "warning sign", - "className": "warning.sign", - "unicode": "\\f071", - "type": "solid" - }, - { - "rawName": "warning", - "name": "warning", - "className": "warning", - "unicode": "\\f12a", - "type": "solid" - }, - { - "rawName": "wechat", - "name": "wechat", - "className": "wechat", - "unicode": "\\f1d7", - "type": "brand" - }, - { - "rawName": "wi-fi", - "name": "wi fi", - "className": "wi.fi", - "unicode": "\\f1eb", - "type": "solid" - }, - { - "rawName": "wikipedia", - "name": "wikipedia", - "className": "wikipedia", - "unicode": "\\f266", - "type": "brand" - }, - { - "rawName": "winner", - "name": "winner", - "className": "winner", - "unicode": "\\f091", - "type": "solid" - }, - { - "rawName": "wizard", - "name": "wizard", - "className": "wizard", - "unicode": "\\f0d0", - "type": "solid" - }, - { - "rawName": "woman", - "name": "woman", - "className": "woman", - "unicode": "\\f221", - "type": "solid" - }, - { - "rawName": "won", - "name": "won", - "className": "won", - "unicode": "\\f159", - "type": "solid" - }, - { - "rawName": "wordpress-beginner", - "name": "wordpress beginner", - "className": "wordpress.beginner", - "unicode": "\\f297", - "type": "brand" - }, - { - "rawName": "wordpress-forms", - "name": "wordpress forms", - "className": "wordpress.forms", - "unicode": "\\f298", - "type": "brand" - }, - { - "rawName": "world", - "name": "world", - "className": "world", - "unicode": "\\f0ac", - "type": "solid" - }, - { - "rawName": "write-square", - "name": "write square", - "className": "write.square", - "unicode": "\\f14b", - "type": "solid" - }, - { - "rawName": "x", - "name": "x", - "className": "x", - "unicode": "\\f00d", - "type": "solid" - }, - { - "rawName": "yc", - "name": "yc", - "className": "yc", - "unicode": "\\f23b", - "type": "brand" - }, - { - "rawName": "ycombinator", - "name": "ycombinator", - "className": "ycombinator", - "unicode": "\\f23b", - "type": "brand" - }, - { - "rawName": "yen", - "name": "yen", - "className": "yen", - "unicode": "\\f157", - "type": "solid" - }, - { - "rawName": "zip", - "name": "zip", - "className": "zip", - "unicode": "\\f187", - "type": "solid" - }, - { - "rawName": "zoom-in", - "name": "zoom in", - "className": "zoom.in", - "unicode": "\\f00e", - "type": "solid" - }, - { - "rawName": "zoom-out", - "name": "zoom out", - "className": "zoom.out", - "unicode": "\\f010", - "type": "solid" - }, - { - "rawName": "zoom", - "name": "zoom", - "className": "zoom", - "unicode": "\\f00e", - "type": "solid" - }, - { - "rawName": "bitbucket-square", - "name": "bitbucket square", - "className": "bitbucket.square", - "unicode": "\\f171", - "type": "brand" - }, - { - "rawName": "checkmark-box", - "name": "checkmark box", - "className": "checkmark.box", - "unicode": "\\f14a", - "type": "solid" - }, - { - "rawName": "circle-thin", - "name": "circle thin", - "className": "circle.thin", - "unicode": "\\f111", - "type": "solid" - }, - { - "rawName": "cloud-download", - "name": "cloud download", - "className": "cloud.download", - "unicode": "\\f381", - "type": "solid" - }, - { - "rawName": "cloud-upload", - "name": "cloud upload", - "className": "cloud.upload", - "unicode": "\\f382", - "type": "solid" - }, - { - "rawName": "compose", - "name": "compose", - "className": "compose", - "unicode": "\\f303", - "type": "solid" - }, - { - "rawName": "conversation", - "name": "conversation", - "className": "conversation", - "unicode": "\\f086", - "type": "solid" - }, - { - "rawName": "credit-card-alternative", - "name": "credit card alternative", - "className": "credit.card.alternative", - "unicode": "\\f09d", - "type": "solid" - }, - { - "rawName": "currency", - "name": "currency", - "className": "currency", - "unicode": "\\f3d1", - "type": "solid" - }, - { - "rawName": "dashboard", - "name": "dashboard", - "className": "dashboard", - "unicode": "\\f3fd", - "type": "solid" - }, - { - "rawName": "diamond", - "name": "diamond", - "className": "diamond", - "unicode": "\\f3a5", - "type": "solid" - }, - { - "rawName": "disk-outline", - "name": "disk outline", - "className": "disk.outline", - "unicode": "\\f369", - "type": "brand" - }, - { - "rawName": "disk", - "name": "disk", - "className": "disk", - "unicode": "\\f0a0", - "type": "solid" - }, - { - "rawName": "exchange", - "name": "exchange", - "className": "exchange", - "unicode": "\\f362", - "type": "solid" - }, - { - "rawName": "external-share", - "name": "external share", - "className": "external.share", - "unicode": "\\f14d", - "type": "solid" - }, - { - "rawName": "external-square", - "name": "external square", - "className": "external.square", - "unicode": "\\f360", - "type": "solid" - }, - { - "rawName": "external", - "name": "external", - "className": "external", - "unicode": "\\f35d", - "type": "solid" - }, - { - "rawName": "facebook-official", - "name": "facebook official", - "className": "facebook.official", - "unicode": "\\f082", - "type": "brand" - }, - { - "rawName": "food", - "name": "food", - "className": "food", - "unicode": "\\f2e7", - "type": "solid" - }, - { - "rawName": "heart-empty", - "name": "heart empty", - "className": "heart.empty", - "unicode": "\\f004", - "type": "solid" - }, - { - "rawName": "hourglass-zero", - "name": "hourglass zero", - "className": "hourglass.zero", - "unicode": "\\f253", - "type": "solid" - }, - { - "rawName": "level-down", - "name": "level down", - "className": "level.down", - "unicode": "\\f3be", - "type": "solid" - }, - { - "rawName": "level-up", - "name": "level up", - "className": "level.up", - "unicode": "\\f3bf", - "type": "solid" - }, - { - "rawName": "log-out", - "name": "log out", - "className": "log.out", - "unicode": "\\f2f5", - "type": "solid" - }, - { - "rawName": "meanpath", - "name": "meanpath", - "className": "meanpath", - "unicode": "\\f0c8", - "type": "solid" - }, - { - "rawName": "money", - "name": "money", - "className": "money", - "unicode": "\\f3d1", - "type": "solid" - }, - { - "rawName": "move", - "name": "move", - "className": "move", - "unicode": "\\f0b2", - "type": "solid" - }, - { - "rawName": "pencil", - "name": "pencil", - "className": "pencil", - "unicode": "\\f303", - "type": "solid" - }, - { - "rawName": "protect", - "name": "protect", - "className": "protect", - "unicode": "\\f023", - "type": "solid" - }, - { - "rawName": "radio", - "name": "radio", - "className": "radio", - "unicode": "\\f192", - "type": "solid" - }, - { - "rawName": "remove-bookmark", - "name": "remove bookmark", - "className": "remove.bookmark", - "unicode": "\\f02e", - "type": "solid" - }, - { - "rawName": "resize-horizontal", - "name": "resize horizontal", - "className": "resize.horizontal", - "unicode": "\\f337", - "type": "solid" - }, - { - "rawName": "resize-vertical", - "name": "resize vertical", - "className": "resize.vertical", - "unicode": "\\f338", - "type": "solid" - }, - { - "rawName": "sign-in", - "name": "sign in", - "className": "sign.in", - "unicode": "\\f2f6", - "type": "solid" - }, - { - "rawName": "sign-out", - "name": "sign out", - "className": "sign.out", - "unicode": "\\f2f5", - "type": "solid" - }, - { - "rawName": "spoon", - "name": "spoon", - "className": "spoon", - "unicode": "\\f2e5", - "type": "solid" - }, - { - "rawName": "star-empty", - "name": "star empty", - "className": "star.empty", - "unicode": "\\f005", - "type": "solid" - }, - { - "rawName": "star-half-empty", - "name": "star half empty", - "className": "star.half.empty", - "unicode": "\\f089", - "type": "solid" - }, - { - "rawName": "star-half-full", - "name": "star half full", - "className": "star.half.full", - "unicode": "\\f089", - "type": "solid" - }, - { - "rawName": "ticket", - "name": "ticket", - "className": "ticket", - "unicode": "\\f3ff", - "type": "solid" - }, - { - "rawName": "times-rectangle", - "name": "times rectangle", - "className": "times.rectangle", - "unicode": "\\f410", - "type": "solid" - }, - { - "rawName": "write", - "name": "write", - "className": "write", - "unicode": "\\f303", - "type": "solid" - }, - { - "rawName": "youtube-play", - "name": "youtube play", - "className": "youtube.play", - "unicode": "\\f167", - "type": "brand" - }, - { - "rawName": "bars", - "name": "hamburger", - "className": "hamburger", - "unicode": "\\f0c9", - "type": "solid" - } -] +[ + { + "rawName": "chess-rock", + "name": "chess rock", + "className": "chess.rock", + "unicode": "\\f447", + "type": "solid" + }, + { + "rawName": "ordered-list", + "name": "ordered list", + "className": "ordered.list", + "unicode": "\\f0cb", + "type": "solid" + }, + { + "rawName": "unordered-list", + "name": "unordered list", + "className": "unordered.list", + "unicode": "\\f0ca", + "type": "solid" + }, + { + "rawName": "user-doctor", + "name": "user doctor", + "className": "user.doctor", + "unicode": "\\f0f0", + "type": "solid" + }, + { + "rawName": "shield", + "name": "shield", + "className": "shield", + "unicode": "\\f3ed", + "type": "solid" + }, + { + "rawName": "puzzle", + "name": "puzzle", + "className": "puzzle", + "unicode": "\\f12e", + "type": "solid" + }, + { + "rawName": "credit-card-amazon-pay", + "name": "credit card amazon pay", + "className": "credit.card.amazon.pay", + "unicode": "\\f42d", + "type": "brand" + }, + { + "rawName": "credit-card-american-express", + "name": "credit card american express", + "className": "credit.card.american.express", + "unicode": "\\f1f3", + "type": "brand" + }, + { + "rawName": "credit-card-diners-club", + "name": "credit card diners club", + "className": "credit.card.diners.club", + "unicode": "\\f24c", + "type": "brand" + }, + { + "rawName": "credit-card-discover", + "name": "credit card discover", + "className": "credit.card.discover", + "unicode": "\\f1f2", + "type": "brand" + }, + { + "rawName": "credit-card-jcb", + "name": "credit card jcb", + "className": "credit.card.jcb", + "unicode": "\\f24b", + "type": "brand" + }, + { + "rawName": "credit-card-mastercard", + "name": "credit card mastercard", + "className": "credit.card.mastercard", + "unicode": "\\f1f1", + "type": "brand" + }, + { + "rawName": "credit-card-paypal", + "name": "credit card paypal", + "className": "credit.card.paypal", + "unicode": "\\f1f4", + "type": "brand" + }, + { + "rawName": "credit-card-stripe", + "name": "credit card stripe", + "className": "credit.card.stripe", + "unicode": "\\f1f5", + "type": "brand" + }, + { + "rawName": "credit-card-visa", + "name": "credit card visa", + "className": "credit.card.visa", + "unicode": "\\f1f0", + "type": "brand" + }, + { + "rawName": "add-circle", + "name": "add circle", + "className": "add.circle", + "unicode": "\\f055", + "type": "solid" + }, + { + "rawName": "add-square", + "name": "add square", + "className": "add.square", + "unicode": "\\f0fe", + "type": "solid" + }, + { + "rawName": "add-to-calendar", + "name": "add to calendar", + "className": "add.to.calendar", + "unicode": "\\f271", + "type": "solid" + }, + { + "rawName": "add-to-cart", + "name": "add to cart", + "className": "add.to.cart", + "unicode": "\\f217", + "type": "solid" + }, + { + "rawName": "add-user", + "name": "add user", + "className": "add.user", + "unicode": "\\f234", + "type": "solid" + }, + { + "rawName": "add", + "name": "add", + "className": "add", + "unicode": "\\f067", + "type": "solid" + }, + { + "rawName": "alarm-mute", + "name": "alarm mute", + "className": "alarm.mute", + "unicode": "\\f1f6", + "type": "solid" + }, + { + "rawName": "alarm", + "name": "alarm", + "className": "alarm", + "unicode": "\\f0f3", + "type": "solid" + }, + { + "rawName": "ald", + "name": "ald", + "className": "ald", + "unicode": "\\f2a2", + "type": "solid" + }, + { + "rawName": "als", + "name": "als", + "className": "als", + "unicode": "\\f2a2", + "type": "solid" + }, + { + "rawName": "american-express-card", + "name": "american express card", + "className": "american.express.card", + "unicode": "\\f1f3", + "type": "brand" + }, + { + "rawName": "american-express", + "name": "american express", + "className": "american.express", + "unicode": "\\f1f3", + "type": "brand" + }, + { + "rawName": "amex", + "name": "amex", + "className": "amex", + "unicode": "\\f1f3", + "type": "brand" + }, + { + "rawName": "announcement", + "name": "announcement", + "className": "announcement", + "unicode": "\\f0a1", + "type": "solid" + }, + { + "rawName": "area-chart", + "name": "area chart", + "className": "area.chart", + "unicode": "\\f1fe", + "type": "solid" + }, + { + "rawName": "area-graph", + "name": "area graph", + "className": "area.graph", + "unicode": "\\f1fe", + "type": "solid" + }, + { + "rawName": "arrow-down-cart", + "name": "arrow down cart", + "className": "arrow.down.cart", + "unicode": "\\f218", + "type": "solid" + }, + { + "rawName": "asexual", + "name": "asexual", + "className": "asexual", + "unicode": "\\f22d", + "type": "solid" + }, + { + "rawName": "asl-interpreting", + "name": "asl interpreting", + "className": "asl.interpreting", + "unicode": "\\f2a3", + "type": "solid" + }, + { + "rawName": "asl", + "name": "asl", + "className": "asl", + "unicode": "\\f2a3", + "type": "solid" + }, + { + "rawName": "assistive-listening-devices", + "name": "assistive listening devices", + "className": "assistive.listening.devices", + "unicode": "\\f2a2", + "type": "solid" + }, + { + "rawName": "attach", + "name": "attach", + "className": "attach", + "unicode": "\\f0c6", + "type": "solid" + }, + { + "rawName": "attention", + "name": "attention", + "className": "attention", + "unicode": "\\f06a", + "type": "solid" + }, + { + "rawName": "balance", + "name": "balance", + "className": "balance", + "unicode": "\\f24e", + "type": "solid" + }, + { + "rawName": "bar", + "name": "bar", + "className": "bar", + "unicode": "\\f0fc", + "type": "solid" + }, + { + "rawName": "bathtub", + "name": "bathtub", + "className": "bathtub", + "unicode": "\\f2cd", + "type": "solid" + }, + { + "rawName": "battery-four", + "name": "battery four", + "className": "battery.four", + "unicode": "\\f240", + "type": "solid" + }, + { + "rawName": "battery-high", + "name": "battery high", + "className": "battery.high", + "unicode": "\\f241", + "type": "solid" + }, + { + "rawName": "battery-low", + "name": "battery low", + "className": "battery.low", + "unicode": "\\f243", + "type": "solid" + }, + { + "rawName": "battery-medium", + "name": "battery medium", + "className": "battery.medium", + "unicode": "\\f242", + "type": "solid" + }, + { + "rawName": "battery-one", + "name": "battery one", + "className": "battery.one", + "unicode": "\\f243", + "type": "solid" + }, + { + "rawName": "battery-three", + "name": "battery three", + "className": "battery.three", + "unicode": "\\f241", + "type": "solid" + }, + { + "rawName": "battery-two", + "name": "battery two", + "className": "battery.two", + "unicode": "\\f242", + "type": "solid" + }, + { + "rawName": "battery-zero", + "name": "battery zero", + "className": "battery.zero", + "unicode": "\\f244", + "type": "solid" + }, + { + "rawName": "birthday", + "name": "birthday", + "className": "birthday", + "unicode": "\\f1fd", + "type": "solid" + }, + { + "rawName": "block-layout", + "name": "block layout", + "className": "block.layout", + "unicode": "\\f009", + "type": "solid" + }, + { + "rawName": "bluetooth-alternative", + "name": "bluetooth alternative", + "className": "bluetooth.alternative", + "unicode": "\\f294", + "type": "brand" + }, + { + "rawName": "broken-chain", + "name": "broken chain", + "className": "broken.chain", + "unicode": "\\f127", + "type": "solid" + }, + { + "rawName": "browser", + "name": "browser", + "className": "browser", + "unicode": "\\f022", + "type": "solid" + }, + { + "rawName": "call-square", + "name": "call square", + "className": "call.square", + "unicode": "\\f098", + "type": "solid" + }, + { + "rawName": "call", + "name": "call", + "className": "call", + "unicode": "\\f095", + "type": "solid" + }, + { + "rawName": "cancel", + "name": "cancel", + "className": "cancel", + "unicode": "\\f00d", + "type": "solid" + }, + { + "rawName": "cart", + "name": "cart", + "className": "cart", + "unicode": "\\f07a", + "type": "solid" + }, + { + "rawName": "cc", + "name": "cc", + "className": "cc", + "unicode": "\\f20a", + "type": "solid" + }, + { + "rawName": "chain", + "name": "chain", + "className": "chain", + "unicode": "\\f0c1", + "type": "solid" + }, + { + "rawName": "chat", + "name": "chat", + "className": "chat", + "unicode": "\\f075", + "type": "solid" + }, + { + "rawName": "checked-calendar", + "name": "checked calendar", + "className": "checked.calendar", + "unicode": "\\f274", + "type": "solid" + }, + { + "rawName": "checkmark", + "name": "checkmark", + "className": "checkmark", + "unicode": "\\f00c", + "type": "solid" + }, + { + "rawName": "circle-notched", + "name": "circle notched", + "className": "circle.notched", + "unicode": "\\f1ce", + "type": "solid" + }, + { + "rawName": "close", + "name": "close", + "className": "close", + "unicode": "\\f00d", + "type": "solid" + }, + { + "rawName": "cny", + "name": "cny", + "className": "cny", + "unicode": "\\f157", + "type": "solid" + }, + { + "rawName": "cocktail", + "name": "cocktail", + "className": "cocktail", + "unicode": "\\f000", + "type": "solid" + }, + { + "rawName": "commenting", + "name": "commenting", + "className": "commenting", + "unicode": "\\f27a", + "type": "solid" + }, + { + "rawName": "computer", + "name": "computer", + "className": "computer", + "unicode": "\\f108", + "type": "solid" + }, + { + "rawName": "configure", + "name": "configure", + "className": "configure", + "unicode": "\\f0ad", + "type": "solid" + }, + { + "rawName": "content", + "name": "content", + "className": "content", + "unicode": "\\f0c9", + "type": "solid" + }, + { + "rawName": "deafness", + "name": "deafness", + "className": "deafness", + "unicode": "\\f2a4", + "type": "solid" + }, + { + "rawName": "delete-calendar", + "name": "delete calendar", + "className": "delete.calendar", + "unicode": "\\f273", + "type": "solid" + }, + { + "rawName": "delete", + "name": "delete", + "className": "delete", + "unicode": "\\f00d", + "type": "solid" + }, + { + "rawName": "detective", + "name": "detective", + "className": "detective", + "unicode": "\\f21b", + "type": "solid" + }, + { + "rawName": "diners-club-card", + "name": "diners club card", + "className": "diners.club.card", + "unicode": "\\f24c", + "type": "brand" + }, + { + "rawName": "diners-club", + "name": "diners club", + "className": "diners.club", + "unicode": "\\f24c", + "type": "brand" + }, + { + "rawName": "discover-card", + "name": "discover card", + "className": "discover.card", + "unicode": "\\f1f2", + "type": "brand" + }, + { + "rawName": "discover", + "name": "discover", + "className": "discover", + "unicode": "\\f1f2", + "type": "brand" + }, + { + "rawName": "discussions", + "name": "discussions", + "className": "discussions", + "unicode": "\\f086", + "type": "solid" + }, + { + "rawName": "doctor", + "name": "doctor", + "className": "doctor", + "unicode": "\\f0f0", + "type": "solid" + }, + { + "rawName": "dollar", + "name": "dollar", + "className": "dollar", + "unicode": "\\f155", + "type": "solid" + }, + { + "rawName": "dont", + "name": "dont", + "className": "dont", + "unicode": "\\f05e", + "type": "solid" + }, + { + "rawName": "dribble", + "name": "dribble", + "className": "dribble", + "unicode": "\\f17d", + "type": "brand" + }, + { + "rawName": "drivers-license", + "name": "drivers license", + "className": "drivers.license", + "unicode": "\\f2c2", + "type": "solid" + }, + { + "rawName": "dropdown", + "name": "dropdown", + "className": "dropdown", + "unicode": "\\f0d7", + "type": "solid" + }, + { + "rawName": "eercast", + "name": "eercast", + "className": "eercast", + "unicode": "\\f2da", + "type": "brand" + }, + { + "rawName": "emergency", + "name": "emergency", + "className": "emergency", + "unicode": "\\f0f9", + "type": "solid" + }, + { + "rawName": "envira-gallery", + "name": "envira gallery", + "className": "envira.gallery", + "unicode": "\\f299", + "type": "brand" + }, + { + "rawName": "erase", + "name": "erase", + "className": "erase", + "unicode": "\\f12d", + "type": "solid" + }, + { + "rawName": "eur", + "name": "eur", + "className": "eur", + "unicode": "\\f153", + "type": "solid" + }, + { + "rawName": "euro", + "name": "euro", + "className": "euro", + "unicode": "\\f153", + "type": "solid" + }, + { + "rawName": "eyedropper", + "name": "eyedropper", + "className": "eyedropper", + "unicode": "\\f1fb", + "type": "solid" + }, + { + "rawName": "fa", + "name": "fa", + "className": "fa", + "unicode": "\\f2b4", + "type": "brand" + }, + { + "rawName": "factory", + "name": "factory", + "className": "factory", + "unicode": "\\f275", + "type": "solid" + }, + { + "rawName": "favorite", + "name": "favorite", + "className": "favorite", + "unicode": "\\f005", + "type": "solid" + }, + { + "rawName": "feed", + "name": "feed", + "className": "feed", + "unicode": "\\f09e", + "type": "solid" + }, + { + "rawName": "female-homosexual", + "name": "female homosexual", + "className": "female.homosexual", + "unicode": "\\f226", + "type": "solid" + }, + { + "rawName": "file-text", + "name": "file text", + "className": "file.text", + "unicode": "\\f15c", + "type": "solid" + }, + { + "rawName": "find", + "name": "find", + "className": "find", + "unicode": "\\f1e5", + "type": "solid" + }, + { + "rawName": "first-aid", + "name": "first aid", + "className": "first.aid", + "unicode": "\\f0fa", + "type": "solid" + }, + { + "rawName": "five-hundred-pixels", + "name": "five hundred pixels", + "className": "five.hundred.pixels", + "unicode": "\\f26e", + "type": "brand" + }, + { + "rawName": "fork", + "name": "fork", + "className": "fork", + "unicode": "\\f126", + "type": "solid" + }, + { + "rawName": "game", + "name": "game", + "className": "game", + "unicode": "\\f11b", + "type": "solid" + }, + { + "rawName": "gay", + "name": "gay", + "className": "gay", + "unicode": "\\f227", + "type": "solid" + }, + { + "rawName": "gbp", + "name": "gbp", + "className": "gbp", + "unicode": "\\f154", + "type": "solid" + }, + { + "rawName": "gittip", + "name": "gittip", + "className": "gittip", + "unicode": "\\f184", + "type": "brand" + }, + { + "rawName": "google-plus-circle", + "name": "google plus circle", + "className": "google.plus.circle", + "unicode": "\\f2b3", + "type": "brand" + }, + { + "rawName": "google-plus-official", + "name": "google plus official", + "className": "google.plus.official", + "unicode": "\\f2b3", + "type": "brand" + }, + { + "rawName": "grab", + "name": "grab", + "className": "grab", + "unicode": "\\f255", + "type": "solid" + }, + { + "rawName": "graduation", + "name": "graduation", + "className": "graduation", + "unicode": "\\f19d", + "type": "solid" + }, + { + "rawName": "grid-layout", + "name": "grid layout", + "className": "grid.layout", + "unicode": "\\f00a", + "type": "solid" + }, + { + "rawName": "group", + "name": "group", + "className": "group", + "unicode": "\\f0c0", + "type": "solid" + }, + { + "rawName": "h", + "name": "h", + "className": "h", + "unicode": "\\f0fd", + "type": "solid" + }, + { + "rawName": "hand-victory", + "name": "hand victory", + "className": "hand.victory", + "unicode": "\\f25b", + "type": "solid" + }, + { + "rawName": "handicap", + "name": "handicap", + "className": "handicap", + "unicode": "\\f193", + "type": "solid" + }, + { + "rawName": "hard-of-hearing", + "name": "hard of hearing", + "className": "hard.of.hearing", + "unicode": "\\f2a4", + "type": "solid" + }, + { + "rawName": "header", + "name": "header", + "className": "header", + "unicode": "\\f1dc", + "type": "solid" + }, + { + "rawName": "help-circle", + "name": "help circle", + "className": "help.circle", + "unicode": "\\f059", + "type": "solid" + }, + { + "rawName": "help", + "name": "help", + "className": "help", + "unicode": "\\f128", + "type": "solid" + }, + { + "rawName": "heterosexual", + "name": "heterosexual", + "className": "heterosexual", + "unicode": "\\f228", + "type": "solid" + }, + { + "rawName": "hide", + "name": "hide", + "className": "hide", + "unicode": "\\f070", + "type": "solid" + }, + { + "rawName": "hotel", + "name": "hotel", + "className": "hotel", + "unicode": "\\f236", + "type": "solid" + }, + { + "rawName": "hourglass-four", + "name": "hourglass four", + "className": "hourglass.four", + "unicode": "\\f254", + "type": "solid" + }, + { + "rawName": "hourglass-full", + "name": "hourglass full", + "className": "hourglass.full", + "unicode": "\\f254", + "type": "solid" + }, + { + "rawName": "hourglass-one", + "name": "hourglass one", + "className": "hourglass.one", + "unicode": "\\f251", + "type": "solid" + }, + { + "rawName": "hourglass-three", + "name": "hourglass three", + "className": "hourglass.three", + "unicode": "\\f253", + "type": "solid" + }, + { + "rawName": "hourglass-two", + "name": "hourglass two", + "className": "hourglass.two", + "unicode": "\\f252", + "type": "solid" + }, + { + "rawName": "idea", + "name": "idea", + "className": "idea", + "unicode": "\\f0eb", + "type": "solid" + }, + { + "rawName": "ils", + "name": "ils", + "className": "ils", + "unicode": "\\f20b", + "type": "solid" + }, + { + "rawName": "in-cart", + "name": "in cart", + "className": "in.cart", + "unicode": "\\f218", + "type": "solid" + }, + { + "rawName": "inr", + "name": "inr", + "className": "inr", + "unicode": "\\f156", + "type": "solid" + }, + { + "rawName": "intergender", + "name": "intergender", + "className": "intergender", + "unicode": "\\f224", + "type": "solid" + }, + { + "rawName": "intersex", + "name": "intersex", + "className": "intersex", + "unicode": "\\f224", + "type": "solid" + }, + { + "rawName": "japan-credit-bureau-card", + "name": "japan credit bureau card", + "className": "japan.credit.bureau.card", + "unicode": "\\f24b", + "type": "brand" + }, + { + "rawName": "japan-credit-bureau", + "name": "japan credit bureau", + "className": "japan.credit.bureau", + "unicode": "\\f24b", + "type": "brand" + }, + { + "rawName": "jcb", + "name": "jcb", + "className": "jcb", + "unicode": "\\f24b", + "type": "brand" + }, + { + "rawName": "jpy", + "name": "jpy", + "className": "jpy", + "unicode": "\\f157", + "type": "solid" + }, + { + "rawName": "krw", + "name": "krw", + "className": "krw", + "unicode": "\\f159", + "type": "solid" + }, + { + "rawName": "lab", + "name": "lab", + "className": "lab", + "unicode": "\\f0c3", + "type": "solid" + }, + { + "rawName": "law", + "name": "law", + "className": "law", + "unicode": "\\f24e", + "type": "solid" + }, + { + "rawName": "legal", + "name": "legal", + "className": "legal", + "unicode": "\\f0e3", + "type": "solid" + }, + { + "rawName": "lesbian", + "name": "lesbian", + "className": "lesbian", + "unicode": "\\f226", + "type": "solid" + }, + { + "rawName": "lightning", + "name": "lightning", + "className": "lightning", + "unicode": "\\f0e7", + "type": "solid" + }, + { + "rawName": "like", + "name": "like", + "className": "like", + "unicode": "\\f004", + "type": "solid" + }, + { + "rawName": "line-graph", + "name": "line graph", + "className": "line.graph", + "unicode": "\\f201", + "type": "solid" + }, + { + "rawName": "linkedin-square", + "name": "linkedin square", + "className": "linkedin.square", + "unicode": "\\f08c", + "type": "brand" + }, + { + "rawName": "linkify", + "name": "linkify", + "className": "linkify", + "unicode": "\\f0c1", + "type": "solid" + }, + { + "rawName": "lira", + "name": "lira", + "className": "lira", + "unicode": "\\f195", + "type": "solid" + }, + { + "rawName": "list-layout", + "name": "list layout", + "className": "list.layout", + "unicode": "\\f00b", + "type": "solid" + }, + { + "rawName": "magnify", + "name": "magnify", + "className": "magnify", + "unicode": "\\f00e", + "type": "solid" + }, + { + "rawName": "mail-forward", + "name": "mail forward", + "className": "mail.forward", + "unicode": "\\f064", + "type": "solid" + }, + { + "rawName": "mail-square", + "name": "mail square", + "className": "mail.square", + "unicode": "\\f199", + "type": "solid" + }, + { + "rawName": "mail", + "name": "mail", + "className": "mail", + "unicode": "\\f0e0", + "type": "solid" + }, + { + "rawName": "male-homosexual", + "name": "male homosexual", + "className": "male.homosexual", + "unicode": "\\f227", + "type": "solid" + }, + { + "rawName": "man", + "name": "man", + "className": "man", + "unicode": "\\f222", + "type": "solid" + }, + { + "rawName": "marker", + "name": "marker", + "className": "marker", + "unicode": "\\f041", + "type": "solid" + }, + { + "rawName": "mars-alternate", + "name": "mars alternate", + "className": "mars.alternate", + "unicode": "\\f229", + "type": "solid" + }, + { + "rawName": "mars-horizontal", + "name": "mars horizontal", + "className": "mars.horizontal", + "unicode": "\\f22b", + "type": "solid" + }, + { + "rawName": "mars-vertical", + "name": "mars vertical", + "className": "mars.vertical", + "unicode": "\\f22a", + "type": "solid" + }, + { + "rawName": "mastercard-card", + "name": "mastercard card", + "className": "mastercard.card", + "unicode": "\\f1f1", + "type": "brand" + }, + { + "rawName": "mastercard", + "name": "mastercard", + "className": "mastercard", + "unicode": "\\f1f1", + "type": "brand" + }, + { + "rawName": "microsoft-edge", + "name": "microsoft edge", + "className": "microsoft.edge", + "unicode": "\\f282", + "type": "brand" + }, + { + "rawName": "military", + "name": "military", + "className": "military", + "unicode": "\\f0fb", + "type": "solid" + }, + { + "rawName": "ms-edge", + "name": "ms edge", + "className": "ms.edge", + "unicode": "\\f282", + "type": "brand" + }, + { + "rawName": "mute", + "name": "mute", + "className": "mute", + "unicode": "\\f131", + "type": "solid" + }, + { + "rawName": "new-pied-piper", + "name": "new pied piper", + "className": "new.pied.piper", + "unicode": "\\f2ae", + "type": "brand" + }, + { + "rawName": "non-binary-transgender", + "name": "non binary transgender", + "className": "non.binary.transgender", + "unicode": "\\f223", + "type": "solid" + }, + { + "rawName": "numbered-list", + "name": "numbered list", + "className": "numbered.list", + "unicode": "\\f0cb", + "type": "solid" + }, + { + "rawName": "optinmonster", + "name": "optinmonster", + "className": "optinmonster", + "unicode": "\\f23c", + "type": "brand" + }, + { + "rawName": "options", + "name": "options", + "className": "options", + "unicode": "\\f1de", + "type": "solid" + }, + { + "rawName": "other-gender-horizontal", + "name": "other gender horizontal", + "className": "other.gender.horizontal", + "unicode": "\\f22b", + "type": "solid" + }, + { + "rawName": "other-gender-vertical", + "name": "other gender vertical", + "className": "other.gender.vertical", + "unicode": "\\f22a", + "type": "solid" + }, + { + "rawName": "other-gender", + "name": "other gender", + "className": "other.gender", + "unicode": "\\f229", + "type": "solid" + }, + { + "rawName": "payment", + "name": "payment", + "className": "payment", + "unicode": "\\f09d", + "type": "solid" + }, + { + "rawName": "paypal-card", + "name": "paypal card", + "className": "paypal.card", + "unicode": "\\f1f4", + "type": "brand" + }, + { + "rawName": "pencil-square", + "name": "pencil square", + "className": "pencil.square", + "unicode": "\\f14b", + "type": "solid" + }, + { + "rawName": "photo", + "name": "photo", + "className": "photo", + "unicode": "\\f030", + "type": "solid" + }, + { + "rawName": "picture", + "name": "picture", + "className": "picture", + "unicode": "\\f03e", + "type": "solid" + }, + { + "rawName": "pie-chart", + "name": "pie chart", + "className": "pie.chart", + "unicode": "\\f200", + "type": "solid" + }, + { + "rawName": "pie-graph", + "name": "pie graph", + "className": "pie.graph", + "unicode": "\\f200", + "type": "solid" + }, + { + "rawName": "pied-piper-hat", + "name": "pied piper hat", + "className": "pied.piper.hat", + "unicode": "\\f2ae", + "type": "brand" + }, + { + "rawName": "pin", + "name": "pin", + "className": "pin", + "unicode": "\\f08d", + "type": "solid" + }, + { + "rawName": "plus-cart", + "name": "plus cart", + "className": "plus.cart", + "unicode": "\\f217", + "type": "solid" + }, + { + "rawName": "pocket", + "name": "pocket", + "className": "pocket", + "unicode": "\\f265", + "type": "brand" + }, + { + "rawName": "point", + "name": "point", + "className": "point", + "unicode": "\\f041", + "type": "solid" + }, + { + "rawName": "pointing-down", + "name": "pointing down", + "className": "pointing.down", + "unicode": "\\f0a7", + "type": "solid" + }, + { + "rawName": "pointing-left", + "name": "pointing left", + "className": "pointing.left", + "unicode": "\\f0a5", + "type": "solid" + }, + { + "rawName": "pointing-right", + "name": "pointing right", + "className": "pointing.right", + "unicode": "\\f0a4", + "type": "solid" + }, + { + "rawName": "pointing-up", + "name": "pointing up", + "className": "pointing.up", + "unicode": "\\f0a6", + "type": "solid" + }, + { + "rawName": "pound", + "name": "pound", + "className": "pound", + "unicode": "\\f154", + "type": "solid" + }, + { + "rawName": "power-cord", + "name": "power cord", + "className": "power.cord", + "unicode": "\\f1e6", + "type": "solid" + }, + { + "rawName": "power", + "name": "power", + "className": "power", + "unicode": "\\f011", + "type": "solid" + }, + { + "rawName": "privacy", + "name": "privacy", + "className": "privacy", + "unicode": "\\f084", + "type": "solid" + }, + { + "rawName": "r-circle", + "name": "r circle", + "className": "r.circle", + "unicode": "\\f25d", + "type": "solid" + }, + { + "rawName": "rain", + "name": "rain", + "className": "rain", + "unicode": "\\f0e9", + "type": "solid" + }, + { + "rawName": "record", + "name": "record", + "className": "record", + "unicode": "\\f03d", + "type": "solid" + }, + { + "rawName": "refresh", + "name": "refresh", + "className": "refresh", + "unicode": "\\f021", + "type": "solid" + }, + { + "rawName": "remove-circle", + "name": "remove circle", + "className": "remove.circle", + "unicode": "\\f057", + "type": "solid" + }, + { + "rawName": "remove-from-calendar", + "name": "remove from calendar", + "className": "remove.from.calendar", + "unicode": "\\f272", + "type": "solid" + }, + { + "rawName": "remove-user", + "name": "remove user", + "className": "remove.user", + "unicode": "\\f235", + "type": "solid" + }, + { + "rawName": "remove", + "name": "remove", + "className": "remove", + "unicode": "\\f00d", + "type": "solid" + }, + { + "rawName": "repeat", + "name": "repeat", + "className": "repeat", + "unicode": "\\f01e", + "type": "solid" + }, + { + "rawName": "rmb", + "name": "rmb", + "className": "rmb", + "unicode": "\\f157", + "type": "solid" + }, + { + "rawName": "rouble", + "name": "rouble", + "className": "rouble", + "unicode": "\\f158", + "type": "solid" + }, + { + "rawName": "rub", + "name": "rub", + "className": "rub", + "unicode": "\\f158", + "type": "solid" + }, + { + "rawName": "ruble", + "name": "ruble", + "className": "ruble", + "unicode": "\\f158", + "type": "solid" + }, + { + "rawName": "rupee", + "name": "rupee", + "className": "rupee", + "unicode": "\\f156", + "type": "solid" + }, + { + "rawName": "s15", + "name": "s15", + "className": "s15", + "unicode": "\\f2cd", + "type": "solid" + }, + { + "rawName": "selected-radio", + "name": "selected radio", + "className": "selected.radio", + "unicode": "\\f192", + "type": "solid" + }, + { + "rawName": "send", + "name": "send", + "className": "send", + "unicode": "\\f1d8", + "type": "solid" + }, + { + "rawName": "setting", + "name": "setting", + "className": "setting", + "unicode": "\\f013", + "type": "solid" + }, + { + "rawName": "settings", + "name": "settings", + "className": "settings", + "unicode": "\\f085", + "type": "solid" + }, + { + "rawName": "shekel", + "name": "shekel", + "className": "shekel", + "unicode": "\\f20b", + "type": "solid" + }, + { + "rawName": "sheqel", + "name": "sheqel", + "className": "sheqel", + "unicode": "\\f20b", + "type": "solid" + }, + { + "rawName": "shipping", + "name": "shipping", + "className": "shipping", + "unicode": "\\f0d1", + "type": "solid" + }, + { + "rawName": "shop", + "name": "shop", + "className": "shop", + "unicode": "\\f07a", + "type": "solid" + }, + { + "rawName": "shuffle", + "name": "shuffle", + "className": "shuffle", + "unicode": "\\f074", + "type": "solid" + }, + { + "rawName": "shutdown", + "name": "shutdown", + "className": "shutdown", + "unicode": "\\f011", + "type": "solid" + }, + { + "rawName": "sidebar", + "name": "sidebar", + "className": "sidebar", + "unicode": "\\f0c9", + "type": "solid" + }, + { + "rawName": "signing", + "name": "signing", + "className": "signing", + "unicode": "\\f2a7", + "type": "solid" + }, + { + "rawName": "signup", + "name": "signup", + "className": "signup", + "unicode": "\\f044", + "type": "solid" + }, + { + "rawName": "sliders", + "name": "sliders", + "className": "sliders", + "unicode": "\\f1de", + "type": "solid" + }, + { + "rawName": "soccer", + "name": "soccer", + "className": "soccer", + "unicode": "\\f1e3", + "type": "solid" + }, + { + "rawName": "sort-alphabet-ascending", + "name": "sort alphabet ascending", + "className": "sort.alphabet.ascending", + "unicode": "\\f15d", + "type": "solid" + }, + { + "rawName": "sort-alphabet-descending", + "name": "sort alphabet descending", + "className": "sort.alphabet.descending", + "unicode": "\\f15e", + "type": "solid" + }, + { + "rawName": "sort-ascending", + "name": "sort ascending", + "className": "sort.ascending", + "unicode": "\\f0de", + "type": "solid" + }, + { + "rawName": "sort-content-ascending", + "name": "sort content ascending", + "className": "sort.content.ascending", + "unicode": "\\f160", + "type": "solid" + }, + { + "rawName": "sort-content-descending", + "name": "sort content descending", + "className": "sort.content.descending", + "unicode": "\\f161", + "type": "solid" + }, + { + "rawName": "sort-descending", + "name": "sort descending", + "className": "sort.descending", + "unicode": "\\f0dd", + "type": "solid" + }, + { + "rawName": "sort-numeric-ascending", + "name": "sort numeric ascending", + "className": "sort.numeric.ascending", + "unicode": "\\f162", + "type": "solid" + }, + { + "rawName": "sort-numeric-descending", + "name": "sort numeric descending", + "className": "sort.numeric.descending", + "unicode": "\\f163", + "type": "solid" + }, + { + "rawName": "sound", + "name": "sound", + "className": "sound", + "unicode": "\\f025", + "type": "solid" + }, + { + "rawName": "spy", + "name": "spy", + "className": "spy", + "unicode": "\\f21b", + "type": "solid" + }, + { + "rawName": "stripe-card", + "name": "stripe card", + "className": "stripe.card", + "unicode": "\\f1f5", + "type": "brand" + }, + { + "rawName": "student", + "name": "student", + "className": "student", + "unicode": "\\f19d", + "type": "solid" + }, + { + "rawName": "talk", + "name": "talk", + "className": "talk", + "unicode": "\\f27a", + "type": "solid" + }, + { + "rawName": "target", + "name": "target", + "className": "target", + "unicode": "\\f140", + "type": "solid" + }, + { + "rawName": "teletype", + "name": "teletype", + "className": "teletype", + "unicode": "\\f1e4", + "type": "solid" + }, + { + "rawName": "television", + "name": "television", + "className": "television", + "unicode": "\\f26c", + "type": "solid" + }, + { + "rawName": "text-cursor", + "name": "text cursor", + "className": "text.cursor", + "unicode": "\\f246", + "type": "solid" + }, + { + "rawName": "text-telephone", + "name": "text telephone", + "className": "text.telephone", + "unicode": "\\f1e4", + "type": "solid" + }, + { + "rawName": "theme-isle", + "name": "theme isle", + "className": "theme.isle", + "unicode": "\\f2b2", + "type": "brand" + }, + { + "rawName": "theme", + "name": "theme", + "className": "theme", + "unicode": "\\f043", + "type": "solid" + }, + { + "rawName": "thermometer", + "name": "thermometer", + "className": "thermometer", + "unicode": "\\f2c7", + "type": "solid" + }, + { + "rawName": "thumb-tack", + "name": "thumb tack", + "className": "thumb.tack", + "unicode": "\\f08d", + "type": "solid" + }, + { + "rawName": "time", + "name": "time", + "className": "time", + "unicode": "\\f017", + "type": "solid" + }, + { + "rawName": "tm", + "name": "tm", + "className": "tm", + "unicode": "\\f25c", + "type": "solid" + }, + { + "rawName": "toggle-down", + "name": "toggle down", + "className": "toggle.down", + "unicode": "\\f150", + "type": "solid" + }, + { + "rawName": "toggle-left", + "name": "toggle left", + "className": "toggle.left", + "unicode": "\\f191", + "type": "solid" + }, + { + "rawName": "toggle-right", + "name": "toggle right", + "className": "toggle.right", + "unicode": "\\f152", + "type": "solid" + }, + { + "rawName": "toggle-up", + "name": "toggle up", + "className": "toggle.up", + "unicode": "\\f151", + "type": "solid" + }, + { + "rawName": "translate", + "name": "translate", + "className": "translate", + "unicode": "\\f1ab", + "type": "solid" + }, + { + "rawName": "travel", + "name": "travel", + "className": "travel", + "unicode": "\\f0b1", + "type": "solid" + }, + { + "rawName": "treatment", + "name": "treatment", + "className": "treatment", + "unicode": "\\f0f1", + "type": "solid" + }, + { + "rawName": "triangle-down", + "name": "triangle down", + "className": "triangle.down", + "unicode": "\\f0d7", + "type": "solid" + }, + { + "rawName": "triangle-left", + "name": "triangle left", + "className": "triangle.left", + "unicode": "\\f0d9", + "type": "solid" + }, + { + "rawName": "triangle-right", + "name": "triangle right", + "className": "triangle.right", + "unicode": "\\f0da", + "type": "solid" + }, + { + "rawName": "triangle-up", + "name": "triangle up", + "className": "triangle.up", + "unicode": "\\f0d8", + "type": "solid" + }, + { + "rawName": "try", + "name": "try", + "className": "try", + "unicode": "\\f195", + "type": "solid" + }, + { + "rawName": "unhide", + "name": "unhide", + "className": "unhide", + "unicode": "\\f06e", + "type": "solid" + }, + { + "rawName": "unlinkify", + "name": "unlinkify", + "className": "unlinkify", + "unicode": "\\f127", + "type": "solid" + }, + { + "rawName": "unmute", + "name": "unmute", + "className": "unmute", + "unicode": "\\f130", + "type": "solid" + }, + { + "rawName": "usd", + "name": "usd", + "className": "usd", + "unicode": "\\f155", + "type": "solid" + }, + { + "rawName": "user-cancel", + "name": "user cancel", + "className": "user.cancel", + "unicode": "\\f235", + "type": "solid" + }, + { + "rawName": "user-close", + "name": "user close", + "className": "user.close", + "unicode": "\\f235", + "type": "solid" + }, + { + "rawName": "user-delete", + "name": "user delete", + "className": "user.delete", + "unicode": "\\f235", + "type": "solid" + }, + { + "rawName": "user-x", + "name": "user x", + "className": "user.x", + "unicode": "\\f235", + "type": "solid" + }, + { + "rawName": "vcard", + "name": "vcard", + "className": "vcard", + "unicode": "\\f2bb", + "type": "solid" + }, + { + "rawName": "video-camera", + "name": "video camera", + "className": "video.camera", + "unicode": "\\f03d", + "type": "solid" + }, + { + "rawName": "video-play", + "name": "video play", + "className": "video.play", + "unicode": "\\f144", + "type": "solid" + }, + { + "rawName": "visa-card", + "name": "visa card", + "className": "visa.card", + "unicode": "\\f1f0", + "type": "brand" + }, + { + "rawName": "visa", + "name": "visa", + "className": "visa", + "unicode": "\\f1f0", + "type": "brand" + }, + { + "rawName": "volume-control-phone", + "name": "volume control phone", + "className": "volume.control.phone", + "unicode": "\\f2a0", + "type": "solid" + }, + { + "rawName": "wait", + "name": "wait", + "className": "wait", + "unicode": "\\f017", + "type": "solid" + }, + { + "rawName": "warning-circle", + "name": "warning circle", + "className": "warning.circle", + "unicode": "\\f06a", + "type": "solid" + }, + { + "rawName": "warning-sign", + "name": "warning sign", + "className": "warning.sign", + "unicode": "\\f071", + "type": "solid" + }, + { + "rawName": "warning", + "name": "warning", + "className": "warning", + "unicode": "\\f12a", + "type": "solid" + }, + { + "rawName": "wechat", + "name": "wechat", + "className": "wechat", + "unicode": "\\f1d7", + "type": "brand" + }, + { + "rawName": "wi-fi", + "name": "wi fi", + "className": "wi.fi", + "unicode": "\\f1eb", + "type": "solid" + }, + { + "rawName": "wikipedia", + "name": "wikipedia", + "className": "wikipedia", + "unicode": "\\f266", + "type": "brand" + }, + { + "rawName": "winner", + "name": "winner", + "className": "winner", + "unicode": "\\f091", + "type": "solid" + }, + { + "rawName": "wizard", + "name": "wizard", + "className": "wizard", + "unicode": "\\f0d0", + "type": "solid" + }, + { + "rawName": "woman", + "name": "woman", + "className": "woman", + "unicode": "\\f221", + "type": "solid" + }, + { + "rawName": "won", + "name": "won", + "className": "won", + "unicode": "\\f159", + "type": "solid" + }, + { + "rawName": "wordpress-beginner", + "name": "wordpress beginner", + "className": "wordpress.beginner", + "unicode": "\\f297", + "type": "brand" + }, + { + "rawName": "wordpress-forms", + "name": "wordpress forms", + "className": "wordpress.forms", + "unicode": "\\f298", + "type": "brand" + }, + { + "rawName": "world", + "name": "world", + "className": "world", + "unicode": "\\f0ac", + "type": "solid" + }, + { + "rawName": "write-square", + "name": "write square", + "className": "write.square", + "unicode": "\\f14b", + "type": "solid" + }, + { + "rawName": "x", + "name": "x", + "className": "x", + "unicode": "\\f00d", + "type": "solid" + }, + { + "rawName": "yc", + "name": "yc", + "className": "yc", + "unicode": "\\f23b", + "type": "brand" + }, + { + "rawName": "ycombinator", + "name": "ycombinator", + "className": "ycombinator", + "unicode": "\\f23b", + "type": "brand" + }, + { + "rawName": "yen", + "name": "yen", + "className": "yen", + "unicode": "\\f157", + "type": "solid" + }, + { + "rawName": "zip", + "name": "zip", + "className": "zip", + "unicode": "\\f187", + "type": "solid" + }, + { + "rawName": "zoom-in", + "name": "zoom in", + "className": "zoom.in", + "unicode": "\\f00e", + "type": "solid" + }, + { + "rawName": "zoom-out", + "name": "zoom out", + "className": "zoom.out", + "unicode": "\\f010", + "type": "solid" + }, + { + "rawName": "zoom", + "name": "zoom", + "className": "zoom", + "unicode": "\\f00e", + "type": "solid" + }, + { + "rawName": "bitbucket-square", + "name": "bitbucket square", + "className": "bitbucket.square", + "unicode": "\\f171", + "type": "brand" + }, + { + "rawName": "checkmark-box", + "name": "checkmark box", + "className": "checkmark.box", + "unicode": "\\f14a", + "type": "solid" + }, + { + "rawName": "circle-thin", + "name": "circle thin", + "className": "circle.thin", + "unicode": "\\f111", + "type": "solid" + }, + { + "rawName": "cloud-download", + "name": "cloud download", + "className": "cloud.download", + "unicode": "\\f381", + "type": "solid" + }, + { + "rawName": "cloud-upload", + "name": "cloud upload", + "className": "cloud.upload", + "unicode": "\\f382", + "type": "solid" + }, + { + "rawName": "compose", + "name": "compose", + "className": "compose", + "unicode": "\\f303", + "type": "solid" + }, + { + "rawName": "conversation", + "name": "conversation", + "className": "conversation", + "unicode": "\\f086", + "type": "solid" + }, + { + "rawName": "credit-card-alternative", + "name": "credit card alternative", + "className": "credit.card.alternative", + "unicode": "\\f09d", + "type": "solid" + }, + { + "rawName": "currency", + "name": "currency", + "className": "currency", + "unicode": "\\f3d1", + "type": "solid" + }, + { + "rawName": "dashboard", + "name": "dashboard", + "className": "dashboard", + "unicode": "\\f3fd", + "type": "solid" + }, + { + "rawName": "diamond", + "name": "diamond", + "className": "diamond", + "unicode": "\\f3a5", + "type": "solid" + }, + { + "rawName": "disk-outline", + "name": "disk outline", + "className": "disk.outline", + "unicode": "\\f369", + "type": "brand" + }, + { + "rawName": "disk", + "name": "disk", + "className": "disk", + "unicode": "\\f0a0", + "type": "solid" + }, + { + "rawName": "exchange", + "name": "exchange", + "className": "exchange", + "unicode": "\\f362", + "type": "solid" + }, + { + "rawName": "external-share", + "name": "external share", + "className": "external.share", + "unicode": "\\f14d", + "type": "solid" + }, + { + "rawName": "external-square", + "name": "external square", + "className": "external.square", + "unicode": "\\f360", + "type": "solid" + }, + { + "rawName": "external", + "name": "external", + "className": "external", + "unicode": "\\f35d", + "type": "solid" + }, + { + "rawName": "facebook-official", + "name": "facebook official", + "className": "facebook.official", + "unicode": "\\f082", + "type": "brand" + }, + { + "rawName": "food", + "name": "food", + "className": "food", + "unicode": "\\f2e7", + "type": "solid" + }, + { + "rawName": "heart-empty", + "name": "heart empty", + "className": "heart.empty", + "unicode": "\\f004", + "type": "solid" + }, + { + "rawName": "hourglass-zero", + "name": "hourglass zero", + "className": "hourglass.zero", + "unicode": "\\f253", + "type": "solid" + }, + { + "rawName": "level-down", + "name": "level down", + "className": "level.down", + "unicode": "\\f3be", + "type": "solid" + }, + { + "rawName": "level-up", + "name": "level up", + "className": "level.up", + "unicode": "\\f3bf", + "type": "solid" + }, + { + "rawName": "log-out", + "name": "log out", + "className": "log.out", + "unicode": "\\f2f5", + "type": "solid" + }, + { + "rawName": "meanpath", + "name": "meanpath", + "className": "meanpath", + "unicode": "\\f0c8", + "type": "solid" + }, + { + "rawName": "money", + "name": "money", + "className": "money", + "unicode": "\\f3d1", + "type": "solid" + }, + { + "rawName": "move", + "name": "move", + "className": "move", + "unicode": "\\f0b2", + "type": "solid" + }, + { + "rawName": "pencil", + "name": "pencil", + "className": "pencil", + "unicode": "\\f303", + "type": "solid" + }, + { + "rawName": "protect", + "name": "protect", + "className": "protect", + "unicode": "\\f023", + "type": "solid" + }, + { + "rawName": "radio", + "name": "radio", + "className": "radio", + "unicode": "\\f192", + "type": "solid" + }, + { + "rawName": "remove-bookmark", + "name": "remove bookmark", + "className": "remove.bookmark", + "unicode": "\\f02e", + "type": "solid" + }, + { + "rawName": "resize-horizontal", + "name": "resize horizontal", + "className": "resize.horizontal", + "unicode": "\\f337", + "type": "solid" + }, + { + "rawName": "resize-vertical", + "name": "resize vertical", + "className": "resize.vertical", + "unicode": "\\f338", + "type": "solid" + }, + { + "rawName": "sign-in", + "name": "sign in", + "className": "sign.in", + "unicode": "\\f2f6", + "type": "solid" + }, + { + "rawName": "sign-out", + "name": "sign out", + "className": "sign.out", + "unicode": "\\f2f5", + "type": "solid" + }, + { + "rawName": "spoon", + "name": "spoon", + "className": "spoon", + "unicode": "\\f2e5", + "type": "solid" + }, + { + "rawName": "star-empty", + "name": "star empty", + "className": "star.empty", + "unicode": "\\f005", + "type": "solid" + }, + { + "rawName": "star-half-empty", + "name": "star half empty", + "className": "star.half.empty", + "unicode": "\\f089", + "type": "solid" + }, + { + "rawName": "star-half-full", + "name": "star half full", + "className": "star.half.full", + "unicode": "\\f089", + "type": "solid" + }, + { + "rawName": "ticket", + "name": "ticket", + "className": "ticket", + "unicode": "\\f3ff", + "type": "solid" + }, + { + "rawName": "times-rectangle", + "name": "times rectangle", + "className": "times.rectangle", + "unicode": "\\f410", + "type": "solid" + }, + { + "rawName": "write", + "name": "write", + "className": "write", + "unicode": "\\f303", + "type": "solid" + }, + { + "rawName": "youtube-play", + "name": "youtube play", + "className": "youtube.play", + "unicode": "\\f167", + "type": "brand" + }, + { + "rawName": "bars", + "name": "hamburger", + "className": "hamburger", + "unicode": "\\f0c9", + "type": "solid" + } +] diff --git a/lib/static/categories.json b/lib/static/categories.json index aec37b5..cb42fbc 100644 --- a/lib/static/categories.json +++ b/lib/static/categories.json @@ -1,77 +1,77 @@ -{ - "accessibility": "Icons can represent accessibility standards", - "alert": "Icons which can alert users to an action or information", - "animals": "Icons can represent animals", - "arrows": "Icons can be used to indicate a direction", - "audio-video": "Icons can be used to represent common ways to interact with audio and video", - "automotive": "Icons can represent vehicles and automotive activities", - "autumn": "Icons which represent the Autumn season", - "beverage": "Icons which represent types of beverages", - "buildings": "Icons can represent common building types", - "business": "Icons can be used to represent business and common business actions", - "camping": "Icons which represent camping activities and equipment", - "charity": "Icons can represent common charity activities", - "chat": "Icons can represent common chat symbols and actions", - "chess": "Icons which represent the game chess", - "childhood": "Icons which represent childhood activities", - "clothing": "Icons which represent types of clothing", - "code": "Icons can represent programming and programming tools", - "communication": "Icons which represent common ways of communication", - "computers": "Icons can represent computing devices, or types of content found on a computer", - "construction": "Icons which represent construction activities", - "currency": "Icons can represent units of currency", - "date-time": "Icons that represent common ways of showing date and time", - "design": "Icons can represent common design related symbols or techniques", - "editors": "Icons can represent text editors and common editor actions", - "education": "Icons can represent education types and activities", - "emoji": "Icons which represent emoji's", - "energy": "Icons which represent energy equipment, types and status", - "files": "Icons can represent elements of a computer and its file system", - "finance": "Icons which represent financial activities", - "fitness": "Icons which represent fitness activities", - "food": "Icons which represent food", - "fruit-vegetable": "Icons which represent fruit and vegetables", - "games": "Icons which represent gaming equipment and platforms", - "gender": "Icons can represent genders or types of sexuality", - "halloween": "Icons which represent Halloween", - "hands": "Icons can represent hand signals and gestures", - "health": "Icons which represent common health symbols", - "holiday": "Icons which represent holiday items", - "hotel": "Icons which represent hotel items and utilities", - "household": "Icons which represent household items and utilities", - "images": "Icons that represent common image symbols and actions", - "interfaces": "Icons can represent common actions a user can take or use", - "logistics": "Icons can represent common logistic activity", - "maps": "Icons can be used to represent elements on a map", - "maritime": "Icons which represent maritime tools and activities", - "marketing": "Icons can represent marketing materials and symbols", - "mathematics": "Icons which represent common mathematic symbols", - "medical": "Icons can represent common medical actions", - "moving": "Icons can represent moving activities", - "music": "Icons which represent musical instruments, items and platforms", - "objects": "Icons can be used to represent common objects", - "payments-shopping": "Icons can represent common forms of payment and shopping actions", - "pharmacy": "Icons which represent pharmaceutical items and activities", - "political": "Icons which represent political activities and actions", - "religion": "Icons which represent religious activities and symbols", - "science": "Icons which represent science activities and items", - "science-fiction": "Icons which represent science fiction story items", - "security": "Icons which represent security items and activities", - "shapes": "Icons can be used to create shapes", - "shopping": "Icons which represent shopping activities and actions", - "social": "Icons which represent social actions", - "spinners": "Icons can represent loading", - "sports": "Icons which represent sports", - "spring": "Icons which represent spring activities", - "status": "Icons can represent different states", - "summer": "Icons which represent summer activities", - "gaming-tabletop": "Icons which represent table-top games", - "toggle": "Icons which represent toggling an action", - "travel": "Icons which represent traveling activities", - "users-people": "Icons can represent users or people", - "vehicles": "Icons can represent vehicles or transport", - "weather": "Icons which represent the weather", - "winter": "Icons which represent winter activities", - "writing": "Icons can represent writing and editing", - "brands": "Icons can represent logos to common brands" -} +{ + "accessibility": "Icons can represent accessibility standards", + "alert": "Icons which can alert users to an action or information", + "animals": "Icons can represent animals", + "arrows": "Icons can be used to indicate a direction", + "audio-video": "Icons can be used to represent common ways to interact with audio and video", + "automotive": "Icons can represent vehicles and automotive activities", + "autumn": "Icons which represent the Autumn season", + "beverage": "Icons which represent types of beverages", + "buildings": "Icons can represent common building types", + "business": "Icons can be used to represent business and common business actions", + "camping": "Icons which represent camping activities and equipment", + "charity": "Icons can represent common charity activities", + "chat": "Icons can represent common chat symbols and actions", + "chess": "Icons which represent the game chess", + "childhood": "Icons which represent childhood activities", + "clothing": "Icons which represent types of clothing", + "code": "Icons can represent programming and programming tools", + "communication": "Icons which represent common ways of communication", + "computers": "Icons can represent computing devices, or types of content found on a computer", + "construction": "Icons which represent construction activities", + "currency": "Icons can represent units of currency", + "date-time": "Icons that represent common ways of showing date and time", + "design": "Icons can represent common design related symbols or techniques", + "editors": "Icons can represent text editors and common editor actions", + "education": "Icons can represent education types and activities", + "emoji": "Icons which represent emoji's", + "energy": "Icons which represent energy equipment, types and status", + "files": "Icons can represent elements of a computer and its file system", + "finance": "Icons which represent financial activities", + "fitness": "Icons which represent fitness activities", + "food": "Icons which represent food", + "fruit-vegetable": "Icons which represent fruit and vegetables", + "games": "Icons which represent gaming equipment and platforms", + "gender": "Icons can represent genders or types of sexuality", + "halloween": "Icons which represent Halloween", + "hands": "Icons can represent hand signals and gestures", + "health": "Icons which represent common health symbols", + "holiday": "Icons which represent holiday items", + "hotel": "Icons which represent hotel items and utilities", + "household": "Icons which represent household items and utilities", + "images": "Icons that represent common image symbols and actions", + "interfaces": "Icons can represent common actions a user can take or use", + "logistics": "Icons can represent common logistic activity", + "maps": "Icons can be used to represent elements on a map", + "maritime": "Icons which represent maritime tools and activities", + "marketing": "Icons can represent marketing materials and symbols", + "mathematics": "Icons which represent common mathematic symbols", + "medical": "Icons can represent common medical actions", + "moving": "Icons can represent moving activities", + "music": "Icons which represent musical instruments, items and platforms", + "objects": "Icons can be used to represent common objects", + "payments-shopping": "Icons can represent common forms of payment and shopping actions", + "pharmacy": "Icons which represent pharmaceutical items and activities", + "political": "Icons which represent political activities and actions", + "religion": "Icons which represent religious activities and symbols", + "science": "Icons which represent science activities and items", + "science-fiction": "Icons which represent science fiction story items", + "security": "Icons which represent security items and activities", + "shapes": "Icons can be used to create shapes", + "shopping": "Icons which represent shopping activities and actions", + "social": "Icons which represent social actions", + "spinners": "Icons can represent loading", + "sports": "Icons which represent sports", + "spring": "Icons which represent spring activities", + "status": "Icons can represent different states", + "summer": "Icons which represent summer activities", + "gaming-tabletop": "Icons which represent table-top games", + "toggle": "Icons which represent toggling an action", + "travel": "Icons which represent traveling activities", + "users-people": "Icons can represent users or people", + "vehicles": "Icons can represent vehicles or transport", + "weather": "Icons which represent the weather", + "winter": "Icons which represent winter activities", + "writing": "Icons can represent writing and editing", + "brands": "Icons can represent logos to common brands" +} diff --git a/lib/static/corrections.json b/lib/static/corrections.json index 46b72f9..6c785a5 100644 --- a/lib/static/corrections.json +++ b/lib/static/corrections.json @@ -1,61 +1,61 @@ -{ - "accessible-icon": { - "name": "accessible", - "className": "accessible" - }, - "500px": { - "className": "\\35 00px" - }, - "vimeo-v": { - "name": "vimeo v", - "className": "vimeo.v" - }, - "red-river": { - "name": "redriver", - "className": "redriver" - }, - "external-link-alt": { - "name": "external alternate", - "className": "external.alternate" - }, - "link": { - "name": "linkify", - "className": "linkify" - }, - "line": { - "name": "linechat", - "className": "linechat" - }, - "apple-alt": { - "name": "fruit-apple", - "className": "fruit-apple" - }, - "less": { - "name": "lesscss", - "className": "lesscss" - }, - "truck-loading": { - "name": "truck packing", - "className": "truck.packing" - }, - "tablet-android": { - "name": "android-tablet", - "className": "android-tablet" - }, - "tablet-android-alt": { - "name": "android-tablet alternate", - "className": "android-tablet.alternate" - }, - "mobile-android": { - "name": "android-mobile", - "className": "android-mobile" - }, - "mobile-android-alt": { - "name": "android-mobile alternate", - "className": "android-mobile.alternate" - }, - "the-red-yeti": { - "name": "redyeti", - "className": "redyeti" - } -} +{ + "accessible-icon": { + "name": "accessible", + "className": "accessible" + }, + "500px": { + "className": "\\35 00px" + }, + "vimeo-v": { + "name": "vimeo v", + "className": "vimeo.v" + }, + "red-river": { + "name": "redriver", + "className": "redriver" + }, + "external-link-alt": { + "name": "external alternate", + "className": "external.alternate" + }, + "link": { + "name": "linkify", + "className": "linkify" + }, + "line": { + "name": "linechat", + "className": "linechat" + }, + "apple-alt": { + "name": "fruit-apple", + "className": "fruit-apple" + }, + "less": { + "name": "lesscss", + "className": "lesscss" + }, + "truck-loading": { + "name": "truck packing", + "className": "truck.packing" + }, + "tablet-android": { + "name": "android-tablet", + "className": "android-tablet" + }, + "tablet-android-alt": { + "name": "android-tablet alternate", + "className": "android-tablet.alternate" + }, + "mobile-android": { + "name": "android-mobile", + "className": "android-mobile" + }, + "mobile-android-alt": { + "name": "android-mobile alternate", + "className": "android-mobile.alternate" + }, + "the-red-yeti": { + "name": "redyeti", + "className": "redyeti" + } +} diff --git a/lib/static/icon_sets.json b/lib/static/icon_sets.json index 00cf7f8..041d55a 100644 --- a/lib/static/icon_sets.json +++ b/lib/static/icon_sets.json @@ -1,27 +1,27 @@ -[ - { - "name": "FontAwesome Free", - "repo": "FortAwesome/Font-Awesome", - "requiresAuth": false, - "assetMatch": "fontawesome-free-\\d+\\.\\d+\\.\\d+-web\\.zip", - "parser": "FontAwesome", - "types": [ - "solid", - "outline", - "brand" - ] - }, - { - "name": "FontAwesome Pro", - "repo": "FortAwesome/Font-Awesome-Pro", - "requiresAuth": true, - "assetMatch": "fontawesome-pro-\\d+\\.\\d+\\.\\d+-web\\.zip", - "parser": "FontAwesome", - "types": [ - "solid", - "outline", - "light", - "brand" - ] - } -] +[ + { + "name": "FontAwesome Free", + "repo": "FortAwesome/Font-Awesome", + "requiresAuth": false, + "assetMatch": "fontawesome-free-\\d+\\.\\d+\\.\\d+-web\\.zip", + "parser": "FontAwesome", + "types": [ + "solid", + "outline", + "brand" + ] + }, + { + "name": "FontAwesome Pro", + "repo": "FortAwesome/Font-Awesome-Pro", + "requiresAuth": true, + "assetMatch": "fontawesome-pro-\\d+\\.\\d+\\.\\d+-web\\.zip", + "parser": "FontAwesome", + "types": [ + "solid", + "outline", + "light", + "brand" + ] + } +] diff --git a/lib/tasks/BuildDist.js b/lib/tasks/BuildDist.js index 86ad31d..59fa6a8 100644 --- a/lib/tasks/BuildDist.js +++ b/lib/tasks/BuildDist.js @@ -1,104 +1,104 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; - result["default"] = mod; - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -// node -var path_1 = require("path"); -// npm -var liquidjs_1 = __importDefault(require("liquidjs")); -var fse = __importStar(require("fs-extra")); -// utils -var Logger_1 = __importStar(require("../util/Logger")); -function run(results, parseResults) { - return new Promise(function (resolve) { - Logger_1.default.log(); - var distSpinner = Logger_1.spinner() - .start('building dist'); - var engine = new liquidjs_1.default({ - root: path_1.resolve(__dirname, '../../src/templates'), - extname: '.liquid', - }); - var ctx = parseResults; - ctx.version = results.asset.version; - var distFiles = { - 'icon.html.eco': 'docs/server/documents/elements/', - 'icon.overrides': 'ui/src/themes/default/elements/', - 'icon.variables': 'ui/src/themes/default/elements/', - }; - var templateFileRenderFuncs = Object.keys(distFiles) - .map(function (filename) { return new Promise(function (resolveRender, rejectRender) { - engine.renderFile(filename + ".liquid", ctx) - .then(function (renderResult) { - var fileOutputDirectory = path_1.resolve(results.distPath, distFiles[filename]); - fse.mkdirp(fileOutputDirectory) - .then(function () { - fse.writeFile(path_1.resolve(fileOutputDirectory, filename), renderResult) - .then(function () { return resolveRender(); }) - .catch(rejectRender); - }) - .catch(rejectRender); - }) - .catch(rejectRender); - }); }); - var copyAssetsFunc = new Promise(function (resolveAssetCopy, rejectAssetCopy) { - fse.readdir(parseResults.fontAssetsDirectory) - .then(function (files) { - var copiedFiles = 0; - var copied = function () { - copiedFiles += 1; - if (copiedFiles >= files.length) { - resolveAssetCopy(); - } - }; - var distPath = path_1.resolve(results.distPath, 'ui/src/themes/default/assets/fonts'); - fse.mkdirp(distPath) - .then(function () { - files.forEach(function (file) { - var filenameSplit = file.split('.'); - var newFileName = parseResults.fontFileNames[filenameSplit[0]] + "." + filenameSplit[1]; - var assetFilePath = path_1.resolve(parseResults.fontAssetsDirectory, file); - var assetDistPath = path_1.resolve(distPath, newFileName); - fse.copyFile(assetFilePath, assetDistPath) - .then(function () { - copied(); - }) - .catch(rejectAssetCopy); - }); - }) - .catch(rejectAssetCopy); - }) - .catch(rejectAssetCopy); - }); - fse.mkdirp(results.distPath) - .then(function () { - Promise - .all(templateFileRenderFuncs.concat([ - copyAssetsFunc, - ])) - .then(function () { - distSpinner.succeed('build all dist files'); - Logger_1.default.log(" Files saved to " + results.distPath); - resolve(); - }) - .catch(function (err) { - distSpinner.stop(); - Logger_1.default.error(err); - process.exit(1); - }); - }) - .catch(function (err) { - distSpinner.stop(); - Logger_1.default.error(err); - process.exit(1); - }); - }); -} -exports.default = run; +"use strict"; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; + result["default"] = mod; + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +// node +var path_1 = require("path"); +// npm +var liquidjs_1 = __importDefault(require("liquidjs")); +var fse = __importStar(require("fs-extra")); +// utils +var Logger_1 = __importStar(require("../util/Logger")); +function run(results, parseResults) { + return new Promise(function (resolve) { + Logger_1.default.log(); + var distSpinner = Logger_1.spinner() + .start('building dist'); + var engine = new liquidjs_1.default({ + root: path_1.resolve(__dirname, '../../src/templates'), + extname: '.liquid', + }); + var ctx = parseResults; + ctx.version = results.asset.version; + var distFiles = { + 'icon.html.eco': 'docs/server/documents/elements/', + 'icon.overrides': 'ui/src/themes/default/elements/', + 'icon.variables': 'ui/src/themes/default/elements/', + }; + var templateFileRenderFuncs = Object.keys(distFiles) + .map(function (filename) { return new Promise(function (resolveRender, rejectRender) { + engine.renderFile(filename + ".liquid", ctx) + .then(function (renderResult) { + var fileOutputDirectory = path_1.resolve(results.distPath, distFiles[filename]); + fse.mkdirp(fileOutputDirectory) + .then(function () { + fse.writeFile(path_1.resolve(fileOutputDirectory, filename), renderResult) + .then(function () { return resolveRender(); }) + .catch(rejectRender); + }) + .catch(rejectRender); + }) + .catch(rejectRender); + }); }); + var copyAssetsFunc = new Promise(function (resolveAssetCopy, rejectAssetCopy) { + fse.readdir(parseResults.fontAssetsDirectory) + .then(function (files) { + var copiedFiles = 0; + var copied = function () { + copiedFiles += 1; + if (copiedFiles >= files.length) { + resolveAssetCopy(); + } + }; + var distPath = path_1.resolve(results.distPath, 'ui/src/themes/default/assets/fonts'); + fse.mkdirp(distPath) + .then(function () { + files.forEach(function (file) { + var filenameSplit = file.split('.'); + var newFileName = parseResults.fontFileNames[filenameSplit[0]] + "." + filenameSplit[1]; + var assetFilePath = path_1.resolve(parseResults.fontAssetsDirectory, file); + var assetDistPath = path_1.resolve(distPath, newFileName); + fse.copyFile(assetFilePath, assetDistPath) + .then(function () { + copied(); + }) + .catch(rejectAssetCopy); + }); + }) + .catch(rejectAssetCopy); + }) + .catch(rejectAssetCopy); + }); + fse.mkdirp(results.distPath) + .then(function () { + Promise + .all(templateFileRenderFuncs.concat([ + copyAssetsFunc, + ])) + .then(function () { + distSpinner.succeed('build all dist files'); + Logger_1.default.log(" Files saved to " + results.distPath); + resolve(); + }) + .catch(function (err) { + distSpinner.stop(); + Logger_1.default.error(err); + process.exit(1); + }); + }) + .catch(function (err) { + distSpinner.stop(); + Logger_1.default.error(err); + process.exit(1); + }); + }); +} +exports.default = run; diff --git a/lib/tasks/CleanUp.js b/lib/tasks/CleanUp.js index bbb55a1..7c29df2 100644 --- a/lib/tasks/CleanUp.js +++ b/lib/tasks/CleanUp.js @@ -1,33 +1,33 @@ -"use strict"; -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; - result["default"] = mod; - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -// node -var path_1 = require("path"); -var os_1 = require("os"); -// npm -var fse = __importStar(require("fs-extra")); -// utils -var Logger_1 = __importStar(require("../util/Logger")); -function run() { - return new Promise(function (resolve) { - Logger_1.default.log(); - var cleanUpSpinner = Logger_1.spinner() - .start('cleaning up asset files'); - fse.remove(path_1.resolve(os_1.tmpdir(), 'fui-icon-script')) - .then(function () { - cleanUpSpinner.succeed('all assets cleaned up'); - resolve(); - }) - .catch(function (err) { - cleanUpSpinner.stop(); - Logger_1.default.error(err); - }); - }); -} -exports.default = run; +"use strict"; +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; + result["default"] = mod; + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +// node +var path_1 = require("path"); +var os_1 = require("os"); +// npm +var fse = __importStar(require("fs-extra")); +// utils +var Logger_1 = __importStar(require("../util/Logger")); +function run() { + return new Promise(function (resolve) { + Logger_1.default.log(); + var cleanUpSpinner = Logger_1.spinner() + .start('cleaning up asset files'); + fse.remove(path_1.resolve(os_1.tmpdir(), 'fui-icon-script')) + .then(function () { + cleanUpSpinner.succeed('all assets cleaned up'); + resolve(); + }) + .catch(function (err) { + cleanUpSpinner.stop(); + Logger_1.default.error(err); + }); + }); +} +exports.default = run; diff --git a/lib/tasks/DownloadAsset.js b/lib/tasks/DownloadAsset.js index 0ee044c..ee70813 100644 --- a/lib/tasks/DownloadAsset.js +++ b/lib/tasks/DownloadAsset.js @@ -1,176 +1,176 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; - result["default"] = mod; - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -// node -var path_1 = require("path"); -var os_1 = require("os"); -// npm -var axios_1 = __importDefault(require("axios")); -var fse = __importStar(require("fs-extra")); -var unzipper_1 = require("unzipper"); -// utils -var Logger_1 = __importStar(require("../util/Logger")); -function extractAsset(asset, filePath) { - return new Promise(function (resolve) { - var extractSpinner = Logger_1.spinner() - .start("extracting asset zip (" + asset.name + ")"); - var assetDirectory = path_1.resolve(os_1.tmpdir(), 'fui-icon-script', asset.name - .split('.').slice(0, -1).join('.')); - var assetReadStream = fse.createReadStream(filePath); - assetReadStream - .pipe(unzipper_1.Extract({ - path: assetDirectory, - })); - assetReadStream - .once('error', function (err) { - extractSpinner.stop(); - Logger_1.default.error(err); - process.exit(1); - }); - assetReadStream - .once('close', function () { - extractSpinner.succeed("asset extracted (" + assetDirectory + ")"); - resolve(assetDirectory); - }); - }); -} -exports.extractAsset = extractAsset; -function saveAssetFile(asset, data) { - return new Promise(function (resolve) { - var saveSpinner = Logger_1.spinner() - .start("saving asset (" + asset.name + ")"); - var filePath = path_1.resolve(os_1.tmpdir(), 'fui-icon-script', asset.name); - fse.outputFile(filePath, data, function (saveErr) { - if (!saveErr) { - saveSpinner.succeed("asset saved (" + filePath + ")"); - resolve(filePath); - } - else { - saveSpinner.stop(); - Logger_1.default.error(saveErr); - process.exit(1); - } - }); - }); -} -exports.saveAssetFile = saveAssetFile; -function downloadAsset(results) { - return new Promise(function (resolve) { - var asset = results.asset; - var downloadSpinner = Logger_1.spinner() - .start("downloading (" + asset.name + ")"); - var axiosConfig = { - responseType: 'arraybuffer', - headers: { - Accept: 'application/octet-stream', - 'User-Agent': 'request-module', - }, - encoding: null, - }; - if (results.iconSet.requiresAuth) { - axiosConfig.headers.Authorization = "token " + results.accessToken; - } - var apiDownloadUrl = "https://" + results.accessToken + ":@api.github.com/repos/" + results.iconSet.repo + "/releases/assets/" + results.asset.id; - var isDownloading = true; - var downloadTextTimer = setTimeout(function () { - if (isDownloading) { - downloadSpinner.text = downloadSpinner.text + " [still downloading, hold on]"; - } - }, 1000 * 120 /* 2mins */); - axios_1.default - .get(apiDownloadUrl, axiosConfig) - .then(function (_a) { - var data = _a.data, status = _a.status; - isDownloading = false; - clearTimeout(downloadTextTimer); - if (status === 200) { - downloadSpinner.succeed("downloaded (" + asset.name + ")"); - resolve(data); - } - else { - downloadSpinner.stop(); - Logger_1.default.error(new Error('Failed to download asset file.')); - process.exit(1); - } - }) - .catch(function (err) { - downloadSpinner.stop(); - Logger_1.default.error(err); - process.exit(1); - }); - }); -} -exports.downloadAsset = downloadAsset; -function startDownload(results) { - return new Promise(function (resolve) { - downloadAsset(results) - .then(function (downloadData) { - saveAssetFile(results.asset, downloadData) - .then(function (assetFilePath) { - extractAsset(results.asset, assetFilePath) - .then(function (assetDirectoryPath) { - resolve({ - assetFilePath: assetFilePath, - assetDirectoryPath: assetDirectoryPath, - }); - }); - }); - }); - }); -} -exports.startDownload = startDownload; -function run(results) { - return new Promise(function (resolve) { - Logger_1.default.log(); - var assetCheckSpinner = Logger_1.spinner() - .start('checking if asset already exists'); - var assetFilePath = path_1.resolve(os_1.tmpdir(), 'fui-icon-script', results.asset.name); - var assetDirectoryPath = path_1.resolve(os_1.tmpdir(), 'fui-icon-script', results.asset.name - .split('.').slice(0, -1).join('.')); - fse.pathExists(assetFilePath) - .then(function (assetExists) { - if (assetExists) { - fse.pathExists(assetFilePath) - .then(function (directoryExists) { - if (directoryExists) { - assetCheckSpinner.succeed('asset already exists'); - resolve({ - assetFilePath: assetFilePath, - assetDirectoryPath: assetDirectoryPath, - }); - } - else { - assetCheckSpinner.info('asset doesn\'t exist locally, starting download') - .stop(); - startDownload(results) - .then(resolve); - } - }) - .catch(function (err) { - Logger_1.default.error(err); - process.exit(1); - }); - } - else { - assetCheckSpinner.info('asset doesn\'t exist locally, starting download') - .stop(); - startDownload(results) - .then(resolve); - } - }) - .catch(function (err) { - Logger_1.default.error(err); - process.exit(1); - }); - }); -} -exports.default = run; +"use strict"; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; + result["default"] = mod; + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +// node +var path_1 = require("path"); +var os_1 = require("os"); +// npm +var axios_1 = __importDefault(require("axios")); +var fse = __importStar(require("fs-extra")); +var unzipper_1 = require("unzipper"); +// utils +var Logger_1 = __importStar(require("../util/Logger")); +function extractAsset(asset, filePath) { + return new Promise(function (resolve) { + var extractSpinner = Logger_1.spinner() + .start("extracting asset zip (" + asset.name + ")"); + var assetDirectory = path_1.resolve(os_1.tmpdir(), 'fui-icon-script', asset.name + .split('.').slice(0, -1).join('.')); + var assetReadStream = fse.createReadStream(filePath); + assetReadStream + .pipe(unzipper_1.Extract({ + path: assetDirectory, + })); + assetReadStream + .once('error', function (err) { + extractSpinner.stop(); + Logger_1.default.error(err); + process.exit(1); + }); + assetReadStream + .once('close', function () { + extractSpinner.succeed("asset extracted (" + assetDirectory + ")"); + resolve(assetDirectory); + }); + }); +} +exports.extractAsset = extractAsset; +function saveAssetFile(asset, data) { + return new Promise(function (resolve) { + var saveSpinner = Logger_1.spinner() + .start("saving asset (" + asset.name + ")"); + var filePath = path_1.resolve(os_1.tmpdir(), 'fui-icon-script', asset.name); + fse.outputFile(filePath, data, function (saveErr) { + if (!saveErr) { + saveSpinner.succeed("asset saved (" + filePath + ")"); + resolve(filePath); + } + else { + saveSpinner.stop(); + Logger_1.default.error(saveErr); + process.exit(1); + } + }); + }); +} +exports.saveAssetFile = saveAssetFile; +function downloadAsset(results) { + return new Promise(function (resolve) { + var asset = results.asset; + var downloadSpinner = Logger_1.spinner() + .start("downloading (" + asset.name + ")"); + var axiosConfig = { + responseType: 'arraybuffer', + headers: { + Accept: 'application/octet-stream', + 'User-Agent': 'request-module', + }, + encoding: null, + }; + if (results.iconSet.requiresAuth) { + axiosConfig.headers.Authorization = "token " + results.accessToken; + } + var apiDownloadUrl = "https://" + results.accessToken + ":@api.github.com/repos/" + results.iconSet.repo + "/releases/assets/" + results.asset.id; + var isDownloading = true; + var downloadTextTimer = setTimeout(function () { + if (isDownloading) { + downloadSpinner.text = downloadSpinner.text + " [still downloading, hold on]"; + } + }, 1000 * 120 /* 2mins */); + axios_1.default + .get(apiDownloadUrl, axiosConfig) + .then(function (_a) { + var data = _a.data, status = _a.status; + isDownloading = false; + clearTimeout(downloadTextTimer); + if (status === 200) { + downloadSpinner.succeed("downloaded (" + asset.name + ")"); + resolve(data); + } + else { + downloadSpinner.stop(); + Logger_1.default.error(new Error('Failed to download asset file.')); + process.exit(1); + } + }) + .catch(function (err) { + downloadSpinner.stop(); + Logger_1.default.error(err); + process.exit(1); + }); + }); +} +exports.downloadAsset = downloadAsset; +function startDownload(results) { + return new Promise(function (resolve) { + downloadAsset(results) + .then(function (downloadData) { + saveAssetFile(results.asset, downloadData) + .then(function (assetFilePath) { + extractAsset(results.asset, assetFilePath) + .then(function (assetDirectoryPath) { + resolve({ + assetFilePath: assetFilePath, + assetDirectoryPath: assetDirectoryPath, + }); + }); + }); + }); + }); +} +exports.startDownload = startDownload; +function run(results) { + return new Promise(function (resolve) { + Logger_1.default.log(); + var assetCheckSpinner = Logger_1.spinner() + .start('checking if asset already exists'); + var assetFilePath = path_1.resolve(os_1.tmpdir(), 'fui-icon-script', results.asset.name); + var assetDirectoryPath = path_1.resolve(os_1.tmpdir(), 'fui-icon-script', results.asset.name + .split('.').slice(0, -1).join('.')); + fse.pathExists(assetFilePath) + .then(function (assetExists) { + if (assetExists) { + fse.pathExists(assetFilePath) + .then(function (directoryExists) { + if (directoryExists) { + assetCheckSpinner.succeed('asset already exists'); + resolve({ + assetFilePath: assetFilePath, + assetDirectoryPath: assetDirectoryPath, + }); + } + else { + assetCheckSpinner.info('asset doesn\'t exist locally, starting download') + .stop(); + startDownload(results) + .then(resolve); + } + }) + .catch(function (err) { + Logger_1.default.error(err); + process.exit(1); + }); + } + else { + assetCheckSpinner.info('asset doesn\'t exist locally, starting download') + .stop(); + startDownload(results) + .then(resolve); + } + }) + .catch(function (err) { + Logger_1.default.error(err); + process.exit(1); + }); + }); +} +exports.default = run; diff --git a/lib/tasks/InitialPrompt.js b/lib/tasks/InitialPrompt.js index c0e48fc..2f9d4b9 100644 --- a/lib/tasks/InitialPrompt.js +++ b/lib/tasks/InitialPrompt.js @@ -1,181 +1,181 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -// node -var path_1 = require("path"); -// npm -var qoa_1 = __importDefault(require("qoa")); -var chalk_1 = __importDefault(require("chalk")); -var axios_1 = __importDefault(require("axios")); -// utils -var Logger_1 = __importDefault(require("../util/Logger")); -// icon sets -var icon_sets_json_1 = __importDefault(require("../static/icon_sets.json")); -function askForAccessToken() { - Logger_1.default.log(); - return new Promise(function (resolve) { - qoa_1.default - .secure({ - query: 'Enter your GitHub personal access token:', - handle: 'accessToken', - }) - .then(function (_a) { - var accessToken = _a.accessToken; - if (!accessToken || accessToken.length === 0) { - Logger_1.default.warn('You must enter an access token to proceed.'); - askForAccessToken() - .then(resolve); - } - else { - resolve(accessToken); - } - }) - .catch(function (err) { - Logger_1.default.error(err); - process.exit(1); - }); - }); -} -exports.askForAccessToken = askForAccessToken; -function askWhichIconSet() { - Logger_1.default.log(); - return new Promise(function (resolve) { - qoa_1.default - .interactive({ - handle: 'iconSetName', - query: 'Which icons set would you like to generate?', - menu: icon_sets_json_1.default.map(function (s) { return s.name; }), - }) - .then(function (_a) { - var iconSetName = _a.iconSetName; - resolve(icon_sets_json_1.default.find(function (s) { return s.name === iconSetName; })); - }) - .catch(function (err) { - Logger_1.default.error(err); - process.exit(1); - }); - }); -} -exports.askWhichIconSet = askWhichIconSet; -function selectIconSetVersion(iconSet, accessToken) { - Logger_1.default.log(); - var axiosConfig = accessToken === undefined ? {} : { - headers: { - Authorization: "token " + accessToken, - }, - }; - return new Promise(function (resolve) { - axios_1.default - .get("https://api.github.com/repos/" + iconSet.repo + "/releases?page=1&per_page=5", axiosConfig) - .then(function (_a) { - var status = _a.status, data = _a.data; - if (status === 200) { - var versions_1 = []; - data - .filter(function (release) { return release.assets - .some(function (asset) { - var regex = new RegExp(iconSet.assetMatch); - return regex.test(asset.name); - }); }) - .forEach(function (release) { - var asset = release.assets - .filter(function (a) { - var regex = new RegExp(iconSet.assetMatch); - return regex.test(a.name); - })[0]; - versions_1.push({ - name: asset.name, - id: asset.id, - version: release.tag_name, - downloadUrl: asset.browser_download_url, - }); - }); - qoa_1.default - .interactive({ - handle: 'setVersion', - query: "Which version of " + iconSet.name + " should we download?", - menu: versions_1.map(function (v) { return v.version; }), - }) - .then(function (_a) { - var setVersion = _a.setVersion; - resolve(versions_1.find(function (v) { return v.version === setVersion; })); - }) - .catch(function (err) { - Logger_1.default.error(err); - process.exit(1); - }); - } - else { - Logger_1.default.error(new Error('Failed to fetch releases from git repository.')); - process.exit(1); - } - }) - .catch(function (err) { - Logger_1.default.error(err); - process.exit(1); - }); - }); -} -exports.selectIconSetVersion = selectIconSetVersion; -function askForDistPath() { - return new Promise(function (resolve) { - Logger_1.default.log(); - var cwd = process.cwd(); - var defaultPath = path_1.resolve(cwd, 'fui-icons'); - qoa_1.default - .input({ - type: 'input', - query: "Where would you like the dist saved? [" + defaultPath + "]", - handle: 'distPath', - }) - .then(function (_a) { - var distPath = _a.distPath; - resolve(distPath === '' - ? defaultPath : path_1.resolve(distPath)); - }) - .catch(function (err) { - Logger_1.default.error(err); - process.exit(1); - }); - }); -} -exports.askForDistPath = askForDistPath; -function run() { - return new Promise(function (resolve) { - qoa_1.default.clearScreen(); - Logger_1.default.log(chalk_1.default.cyan('Fomantic-UI Icon Script')); - askWhichIconSet() - .then(function (iconSet) { - var selectVersion = function (accessToken) { - selectIconSetVersion(iconSet, accessToken) - .then(function (asset) { - askForDistPath() - .then(function (distPath) { - resolve({ - iconSet: iconSet, - accessToken: accessToken, - asset: asset, - distPath: distPath, - }); - }); - }); - }; - if (iconSet.requiresAuth) { - Logger_1.default.log(); - Logger_1.default.note('The icon set you selected requires authentication to download.'); - Logger_1.default.note('Generate a personal access token here: https://github.com/settings/tokens'); - Logger_1.default.note('Your token must allow private repository viewing.'); - askForAccessToken() - .then(function (accessToken) { - selectVersion(accessToken); - }); - } - else { - selectVersion(); - } - }); - }); -} -exports.default = run; +"use strict"; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +// node +var path_1 = require("path"); +// npm +var qoa_1 = __importDefault(require("qoa")); +var chalk_1 = __importDefault(require("chalk")); +var axios_1 = __importDefault(require("axios")); +// utils +var Logger_1 = __importDefault(require("../util/Logger")); +// icon sets +var icon_sets_json_1 = __importDefault(require("../static/icon_sets.json")); +function askForAccessToken() { + Logger_1.default.log(); + return new Promise(function (resolve) { + qoa_1.default + .secure({ + query: 'Enter your GitHub personal access token:', + handle: 'accessToken', + }) + .then(function (_a) { + var accessToken = _a.accessToken; + if (!accessToken || accessToken.length === 0) { + Logger_1.default.warn('You must enter an access token to proceed.'); + askForAccessToken() + .then(resolve); + } + else { + resolve(accessToken); + } + }) + .catch(function (err) { + Logger_1.default.error(err); + process.exit(1); + }); + }); +} +exports.askForAccessToken = askForAccessToken; +function askWhichIconSet() { + Logger_1.default.log(); + return new Promise(function (resolve) { + qoa_1.default + .interactive({ + handle: 'iconSetName', + query: 'Which icons set would you like to generate?', + menu: icon_sets_json_1.default.map(function (s) { return s.name; }), + }) + .then(function (_a) { + var iconSetName = _a.iconSetName; + resolve(icon_sets_json_1.default.find(function (s) { return s.name === iconSetName; })); + }) + .catch(function (err) { + Logger_1.default.error(err); + process.exit(1); + }); + }); +} +exports.askWhichIconSet = askWhichIconSet; +function selectIconSetVersion(iconSet, accessToken) { + Logger_1.default.log(); + var axiosConfig = accessToken === undefined ? {} : { + headers: { + Authorization: "token " + accessToken, + }, + }; + return new Promise(function (resolve) { + axios_1.default + .get("https://api.github.com/repos/" + iconSet.repo + "/releases?page=1&per_page=5", axiosConfig) + .then(function (_a) { + var status = _a.status, data = _a.data; + if (status === 200) { + var versions_1 = []; + data + .filter(function (release) { return release.assets + .some(function (asset) { + var regex = new RegExp(iconSet.assetMatch); + return regex.test(asset.name); + }); }) + .forEach(function (release) { + var asset = release.assets + .filter(function (a) { + var regex = new RegExp(iconSet.assetMatch); + return regex.test(a.name); + })[0]; + versions_1.push({ + name: asset.name, + id: asset.id, + version: release.tag_name, + downloadUrl: asset.browser_download_url, + }); + }); + qoa_1.default + .interactive({ + handle: 'setVersion', + query: "Which version of " + iconSet.name + " should we download?", + menu: versions_1.map(function (v) { return v.version; }), + }) + .then(function (_a) { + var setVersion = _a.setVersion; + resolve(versions_1.find(function (v) { return v.version === setVersion; })); + }) + .catch(function (err) { + Logger_1.default.error(err); + process.exit(1); + }); + } + else { + Logger_1.default.error(new Error('Failed to fetch releases from git repository.')); + process.exit(1); + } + }) + .catch(function (err) { + Logger_1.default.error(err); + process.exit(1); + }); + }); +} +exports.selectIconSetVersion = selectIconSetVersion; +function askForDistPath() { + return new Promise(function (resolve) { + Logger_1.default.log(); + var cwd = process.cwd(); + var defaultPath = path_1.resolve(cwd, 'fui-icons'); + qoa_1.default + .input({ + type: 'input', + query: "Where would you like the dist saved? [" + defaultPath + "]", + handle: 'distPath', + }) + .then(function (_a) { + var distPath = _a.distPath; + resolve(distPath === '' + ? defaultPath : path_1.resolve(distPath)); + }) + .catch(function (err) { + Logger_1.default.error(err); + process.exit(1); + }); + }); +} +exports.askForDistPath = askForDistPath; +function run() { + return new Promise(function (resolve) { + qoa_1.default.clearScreen(); + Logger_1.default.log(chalk_1.default.cyan('Fomantic-UI Icon CLI')); + askWhichIconSet() + .then(function (iconSet) { + var selectVersion = function (accessToken) { + selectIconSetVersion(iconSet, accessToken) + .then(function (asset) { + askForDistPath() + .then(function (distPath) { + resolve({ + iconSet: iconSet, + accessToken: accessToken, + asset: asset, + distPath: distPath, + }); + }); + }); + }; + if (iconSet.requiresAuth) { + Logger_1.default.log(); + Logger_1.default.note('The icon set you selected requires authentication to download.'); + Logger_1.default.note('Generate a personal access token here: https://github.com/settings/tokens'); + Logger_1.default.note('Your token must allow private repository viewing.'); + askForAccessToken() + .then(function (accessToken) { + selectVersion(accessToken); + }); + } + else { + selectVersion(); + } + }); + }); +} +exports.default = run; diff --git a/lib/util/Converter.js b/lib/util/Converter.js index 4a0ea6d..19e0f25 100644 --- a/lib/util/Converter.js +++ b/lib/util/Converter.js @@ -1,29 +1,50 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -var Converter = /** @class */ (function () { - function Converter() { - } - Converter.iconClassName = function (name) { - return name - .replace(/-alt$/, '-alternate') - .replace(/-alt-/, '-alternate-') - .replace(/-h$/, '-horizontal') - .replace(/-h-/, '-horizontal-') - .replace(/-v$/, '-vertical') - .replace(/-v-/, '-vertical-') - .replace(/-alpha$/, '-alphabet') - .replace(/-alpha-/, '-alphabet-') - .replace(/-asc$/, '-ascending') - .replace(/-asc-/, '-ascending-') - .replace(/-desc$/, '-descending') - .replace(/-desc-/, '-descending-') - .replace(/-/g, '.') - .replace(/\s/g, '.'); - }; - Converter.iconName = function (name) { - return Converter.iconClassName(name) - .replace(/\./g, ' '); - }; - return Converter; -}()); -exports.default = Converter; +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var Converter = /** @class */ (function () { + function Converter() { + } + Converter.iconClassName = function (name) { + return name + .toLowerCase() + .replace(/-alt$/, '-alternate') + .replace(/-alt-/, '-alternate-') + .replace(/-h$/, '-horizontal') + .replace(/-h-/, '-horizontal-') + .replace(/-v$/, '-vertical') + .replace(/-v-/, '-vertical-') + .replace(/-alpha$/, '-alphabet') + .replace(/-alpha-/, '-alphabet-') + .replace(/-asc$/, '-ascending') + .replace(/-asc-/, '-ascending-') + .replace(/-desc$/, '-descending') + .replace(/-desc-/, '-descending-') + .replace(/-/g, '.') + .replace(/\s/g, '.') + .split('.') + .map(function (entity) { + var replacementKeys = Object.keys(Converter.CLASSNAME_REPLACEMENTS); + return replacementKeys.includes(entity) + ? Converter.CLASSNAME_REPLACEMENTS[entity] + : entity; + }) + .join('.'); + }; + Converter.iconName = function (name) { + return Converter.iconClassName(name) + .replace(/\./g, ' '); + }; + Converter.CLASSNAME_REPLACEMENTS = { + 0: 'zero', + 1: 'one', + 2: 'two', + 3: 'three', + 4: 'four', + 5: 'five', + 6: 'six', + 7: 'seven', + 8: 'eight', + 9: 'nine', + }; + return Converter; +}()); +exports.default = Converter; diff --git a/lib/util/Logger.js b/lib/util/Logger.js index e19e5dd..0d424ff 100644 --- a/lib/util/Logger.js +++ b/lib/util/Logger.js @@ -1,14 +1,14 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -// npm -var signale_1 = require("signale"); -var ora_1 = __importDefault(require("ora")); -exports.LoggerInstance = signale_1.Signale; -function spinner(options) { - return ora_1.default(options); -} -exports.spinner = spinner; -exports.default = new signale_1.Signale(); +"use strict"; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +// npm +var signale_1 = require("signale"); +var ora_1 = __importDefault(require("ora")); +exports.LoggerInstance = signale_1.Signale; +function spinner(options) { + return ora_1.default(options); +} +exports.spinner = spinner; +exports.default = new signale_1.Signale();