@fortawesome/fontawesome-svg-core
Version:
The iconic font, CSS, and SVG framework
1,730 lines (1,703 loc) • 131 kB
JavaScript
function _arrayLikeToArray(r, a) {
(null == a || a > r.length) && (a = r.length);
for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
return n;
}
function _arrayWithHoles(r) {
if (Array.isArray(r)) return r;
}
function _arrayWithoutHoles(r) {
if (Array.isArray(r)) return _arrayLikeToArray(r);
}
function _classCallCheck(a, n) {
if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function");
}
function _defineProperties(e, r) {
for (var t = 0; t < r.length; t++) {
var o = r[t];
o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);
}
}
function _createClass(e, r, t) {
return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", {
writable: !1
}), e;
}
function _createForOfIteratorHelper(r, e) {
var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
if (!t) {
if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) {
t && (r = t);
var n = 0,
F = function () {};
return {
s: F,
n: function () {
return n >= r.length ? {
done: !0
} : {
done: !1,
value: r[n++]
};
},
e: function (r) {
throw r;
},
f: F
};
}
throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}
var o,
a = !0,
u = !1;
return {
s: function () {
t = t.call(r);
},
n: function () {
var r = t.next();
return a = r.done, r;
},
e: function (r) {
u = !0, o = r;
},
f: function () {
try {
a || null == t.return || t.return();
} finally {
if (u) throw o;
}
}
};
}
function _defineProperty(e, r, t) {
return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
value: t,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[r] = t, e;
}
function _inherits(t, e) {
if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function");
t.prototype = Object.create(e && e.prototype, {
constructor: {
value: t,
writable: !0,
configurable: !0
}
}), Object.defineProperty(t, "prototype", {
writable: !1
}), e && _setPrototypeOf(t, e);
}
function _iterableToArray(r) {
if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r);
}
function _iterableToArrayLimit(r, l) {
var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
if (null != t) {
var e,
n,
i,
u,
a = [],
f = !0,
o = !1;
try {
if (i = (t = t.call(r)).next, 0 === l) {
if (Object(t) !== t) return;
f = !1;
} else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
} catch (r) {
o = !0, n = r;
} finally {
try {
if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return;
} finally {
if (o) throw n;
}
}
return a;
}
}
function _nonIterableRest() {
throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}
function _nonIterableSpread() {
throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}
function ownKeys(e, r) {
var t = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var o = Object.getOwnPropertySymbols(e);
r && (o = o.filter(function (r) {
return Object.getOwnPropertyDescriptor(e, r).enumerable;
})), t.push.apply(t, o);
}
return t;
}
function _objectSpread2(e) {
for (var r = 1; r < arguments.length; r++) {
var t = null != arguments[r] ? arguments[r] : {};
r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {
_defineProperty(e, r, t[r]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {
Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
});
}
return e;
}
function _setPrototypeOf(t, e) {
return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {
return t.__proto__ = e, t;
}, _setPrototypeOf(t, e);
}
function _slicedToArray(r, e) {
return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();
}
function _toConsumableArray(r) {
return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread();
}
function _toPrimitive(t, r) {
if ("object" != typeof t || !t) return t;
var e = t[Symbol.toPrimitive];
if (void 0 !== e) {
var i = e.call(t, r || "default");
if ("object" != typeof i) return i;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return ("string" === r ? String : Number)(t);
}
function _toPropertyKey(t) {
var i = _toPrimitive(t, "string");
return "symbol" == typeof i ? i : i + "";
}
function _typeof(o) {
"@babel/helpers - typeof";
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
return typeof o;
} : function (o) {
return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
}, _typeof(o);
}
function _unsupportedIterableToArray(r, a) {
if (r) {
if ("string" == typeof r) return _arrayLikeToArray(r, a);
var t = {}.toString.call(r).slice(8, -1);
return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;
}
}
function _wrapRegExp() {
_wrapRegExp = function (e, r) {
return new BabelRegExp(e, void 0, r);
};
var e = RegExp.prototype,
r = new WeakMap();
function BabelRegExp(e, t, p) {
var o = RegExp(e, t);
return r.set(o, p || r.get(e)), _setPrototypeOf(o, BabelRegExp.prototype);
}
function buildGroups(e, t) {
var p = r.get(t);
return Object.keys(p).reduce(function (r, t) {
var o = p[t];
if ("number" == typeof o) r[t] = e[o];else {
for (var i = 0; void 0 === e[o[i]] && i + 1 < o.length;) i++;
r[t] = e[o[i]];
}
return r;
}, Object.create(null));
}
return _inherits(BabelRegExp, RegExp), BabelRegExp.prototype.exec = function (r) {
var t = e.exec.call(this, r);
if (t) {
t.groups = buildGroups(t, this);
var p = t.indices;
p && (p.groups = buildGroups(p, this));
}
return t;
}, BabelRegExp.prototype[Symbol.replace] = function (t, p) {
if ("string" == typeof p) {
var o = r.get(this);
return e[Symbol.replace].call(this, t, p.replace(/\$<([^>]+)(>|$)/g, function (e, r, t) {
if ("" === t) return e;
var p = o[r];
return Array.isArray(p) ? "$" + p.join("$") : "number" == typeof p ? "$" + p : "";
}));
}
if ("function" == typeof p) {
var i = this;
return e[Symbol.replace].call(this, t, function () {
var e = arguments;
return "object" != typeof e[e.length - 1] && (e = [].slice.call(e)).push(buildGroups(e, i)), p.apply(this, e);
});
}
return e[Symbol.replace].call(this, t, p);
}, _wrapRegExp.apply(this, arguments);
}
var _plugins = [];
var _hooks = {};
var providers = {};
var defaultProviderKeys = Object.keys(providers);
function registerPlugins(nextPlugins, _ref) {
var obj = _ref.mixoutsTo;
_plugins = nextPlugins;
_hooks = {};
Object.keys(providers).forEach(function (k) {
if (defaultProviderKeys.indexOf(k) === -1) {
delete providers[k];
}
});
_plugins.forEach(function (plugin) {
var mixout = plugin.mixout ? plugin.mixout() : {};
Object.keys(mixout).forEach(function (tk) {
if (typeof mixout[tk] === 'function') {
obj[tk] = mixout[tk];
}
if (_typeof(mixout[tk]) === 'object') {
Object.keys(mixout[tk]).forEach(function (sk) {
if (!obj[tk]) {
obj[tk] = {};
}
obj[tk][sk] = mixout[tk][sk];
});
}
});
if (plugin.hooks) {
var hooks = plugin.hooks();
Object.keys(hooks).forEach(function (hook) {
if (!_hooks[hook]) {
_hooks[hook] = [];
}
_hooks[hook].push(hooks[hook]);
});
}
if (plugin.provides) {
plugin.provides(providers);
}
});
return obj;
}
function chainHooks(hook, accumulator) {
for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
args[_key - 2] = arguments[_key];
}
var hookFns = _hooks[hook] || [];
hookFns.forEach(function (hookFn) {
accumulator = hookFn.apply(null, [accumulator].concat(args));
});
return accumulator;
}
function callHooks(hook) {
for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
args[_key2 - 1] = arguments[_key2];
}
var hookFns = _hooks[hook] || [];
hookFns.forEach(function (hookFn) {
hookFn.apply(null, args);
});
return undefined;
}
function callProvided() {
var hook = arguments[0];
var args = Array.prototype.slice.call(arguments, 1);
return providers[hook] ? providers[hook].apply(null, args) : undefined;
}
var noop = function noop() {};
var _WINDOW = {};
var _DOCUMENT = {};
var _MUTATION_OBSERVER = null;
var _PERFORMANCE = {
mark: noop,
measure: noop
};
try {
if (typeof window !== 'undefined') _WINDOW = window;
if (typeof document !== 'undefined') _DOCUMENT = document;
if (typeof MutationObserver !== 'undefined') _MUTATION_OBSERVER = MutationObserver;
if (typeof performance !== 'undefined') _PERFORMANCE = performance;
} catch (e) {} // eslint-disable-line no-empty
var _ref = _WINDOW.navigator || {},
_ref$userAgent = _ref.userAgent,
userAgent = _ref$userAgent === void 0 ? '' : _ref$userAgent;
var WINDOW = _WINDOW;
var DOCUMENT = _DOCUMENT;
var MUTATION_OBSERVER = _MUTATION_OBSERVER;
var PERFORMANCE = _PERFORMANCE;
var IS_BROWSER = !!WINDOW.document;
var IS_DOM = !!DOCUMENT.documentElement && !!DOCUMENT.head && typeof DOCUMENT.addEventListener === 'function' && typeof DOCUMENT.createElement === 'function';
var IS_IE = ~userAgent.indexOf('MSIE') || ~userAgent.indexOf('Trident/');
var _ht;
var G = /fa(k|kd|s|r|l|t|d|dr|dl|dt|b|slr|slpr|wsb|tl|ns|nds|es|gt|jr|jfr|jdr|usb|ufsb|udsb|cr|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/,
M = /Font ?Awesome ?([567 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit|Notdog Duo|Notdog|Chisel|Etch|Graphite|Thumbprint|Jelly Fill|Jelly Duo|Jelly|Utility|Utility Fill|Utility Duo|Slab Press|Slab|Whiteboard)?.*/i;
var Q = {
classic: {
fa: "solid",
fas: "solid",
"fa-solid": "solid",
far: "regular",
"fa-regular": "regular",
fal: "light",
"fa-light": "light",
fat: "thin",
"fa-thin": "thin",
fab: "brands",
"fa-brands": "brands"
},
duotone: {
fa: "solid",
fad: "solid",
"fa-solid": "solid",
"fa-duotone": "solid",
fadr: "regular",
"fa-regular": "regular",
fadl: "light",
"fa-light": "light",
fadt: "thin",
"fa-thin": "thin"
},
sharp: {
fa: "solid",
fass: "solid",
"fa-solid": "solid",
fasr: "regular",
"fa-regular": "regular",
fasl: "light",
"fa-light": "light",
fast: "thin",
"fa-thin": "thin"
},
"sharp-duotone": {
fa: "solid",
fasds: "solid",
"fa-solid": "solid",
fasdr: "regular",
"fa-regular": "regular",
fasdl: "light",
"fa-light": "light",
fasdt: "thin",
"fa-thin": "thin"
},
slab: {
"fa-regular": "regular",
faslr: "regular"
},
"slab-press": {
"fa-regular": "regular",
faslpr: "regular"
},
thumbprint: {
"fa-light": "light",
fatl: "light"
},
whiteboard: {
"fa-semibold": "semibold",
fawsb: "semibold"
},
notdog: {
"fa-solid": "solid",
fans: "solid"
},
"notdog-duo": {
"fa-solid": "solid",
fands: "solid"
},
etch: {
"fa-solid": "solid",
faes: "solid"
},
graphite: {
"fa-thin": "thin",
fagt: "thin"
},
jelly: {
"fa-regular": "regular",
fajr: "regular"
},
"jelly-fill": {
"fa-regular": "regular",
fajfr: "regular"
},
"jelly-duo": {
"fa-regular": "regular",
fajdr: "regular"
},
chisel: {
"fa-regular": "regular",
facr: "regular"
},
utility: {
"fa-semibold": "semibold",
fausb: "semibold"
},
"utility-duo": {
"fa-semibold": "semibold",
faudsb: "semibold"
},
"utility-fill": {
"fa-semibold": "semibold",
faufsb: "semibold"
}
},
X = {
GROUP: "duotone-group",
SWAP_OPACITY: "swap-opacity",
PRIMARY: "primary",
SECONDARY: "secondary"
},
Z = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone", "fa-thumbprint", "fa-whiteboard", "fa-notdog", "fa-notdog-duo", "fa-chisel", "fa-etch", "fa-graphite", "fa-jelly", "fa-jelly-fill", "fa-jelly-duo", "fa-slab", "fa-slab-press", "fa-utility", "fa-utility-duo", "fa-utility-fill"];
var i = "classic",
t = "duotone",
d = "sharp",
l = "sharp-duotone",
f = "chisel",
h = "etch",
n = "graphite",
g = "jelly",
o = "jelly-duo",
u = "jelly-fill",
m = "notdog",
e = "notdog-duo",
y = "slab",
p = "slab-press",
s = "thumbprint",
w = "utility",
a = "utility-duo",
x = "utility-fill",
b = "whiteboard",
c = "Classic",
I = "Duotone",
F = "Sharp",
v = "Sharp Duotone",
S = "Chisel",
A = "Etch",
P = "Graphite",
j = "Jelly",
B = "Jelly Duo",
N = "Jelly Fill",
k = "Notdog",
D = "Notdog Duo",
T = "Slab",
C = "Slab Press",
W = "Thumbprint",
K = "Utility",
R = "Utility Duo",
L = "Utility Fill",
U = "Whiteboard",
dt = [i, t, d, l, f, h, n, g, o, u, m, e, y, p, s, w, a, x, b],
ht = (_ht = {}, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_ht, i, c), t, I), d, F), l, v), f, S), h, A), n, P), g, j), o, B), u, N), _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_ht, m, k), e, D), y, T), p, C), s, W), w, K), a, R), x, L), b, U));
var yt = {
classic: {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
duotone: {
900: "fad",
400: "fadr",
300: "fadl",
100: "fadt"
},
sharp: {
900: "fass",
400: "fasr",
300: "fasl",
100: "fast"
},
"sharp-duotone": {
900: "fasds",
400: "fasdr",
300: "fasdl",
100: "fasdt"
},
slab: {
400: "faslr"
},
"slab-press": {
400: "faslpr"
},
whiteboard: {
600: "fawsb"
},
thumbprint: {
300: "fatl"
},
notdog: {
900: "fans"
},
"notdog-duo": {
900: "fands"
},
etch: {
900: "faes"
},
graphite: {
100: "fagt"
},
chisel: {
400: "facr"
},
jelly: {
400: "fajr"
},
"jelly-fill": {
400: "fajfr"
},
"jelly-duo": {
400: "fajdr"
},
utility: {
600: "fausb"
},
"utility-duo": {
600: "faudsb"
},
"utility-fill": {
600: "faufsb"
}
};
var Kt = {
"Font Awesome 7 Free": {
900: "fas",
400: "far"
},
"Font Awesome 7 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
"Font Awesome 7 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 7 Duotone": {
900: "fad",
400: "fadr",
normal: "fadr",
300: "fadl",
100: "fadt"
},
"Font Awesome 7 Sharp": {
900: "fass",
400: "fasr",
normal: "fasr",
300: "fasl",
100: "fast"
},
"Font Awesome 7 Sharp Duotone": {
900: "fasds",
400: "fasdr",
normal: "fasdr",
300: "fasdl",
100: "fasdt"
},
"Font Awesome 7 Jelly": {
400: "fajr",
normal: "fajr"
},
"Font Awesome 7 Jelly Fill": {
400: "fajfr",
normal: "fajfr"
},
"Font Awesome 7 Jelly Duo": {
400: "fajdr",
normal: "fajdr"
},
"Font Awesome 7 Slab": {
400: "faslr",
normal: "faslr"
},
"Font Awesome 7 Slab Press": {
400: "faslpr",
normal: "faslpr"
},
"Font Awesome 7 Thumbprint": {
300: "fatl",
normal: "fatl"
},
"Font Awesome 7 Notdog": {
900: "fans",
normal: "fans"
},
"Font Awesome 7 Notdog Duo": {
900: "fands",
normal: "fands"
},
"Font Awesome 7 Etch": {
900: "faes",
normal: "faes"
},
"Font Awesome 7 Graphite": {
100: "fagt",
normal: "fagt"
},
"Font Awesome 7 Chisel": {
400: "facr",
normal: "facr"
},
"Font Awesome 7 Whiteboard": {
600: "fawsb",
normal: "fawsb"
},
"Font Awesome 7 Utility": {
600: "fausb",
normal: "fausb"
},
"Font Awesome 7 Utility Duo": {
600: "faudsb",
normal: "faudsb"
},
"Font Awesome 7 Utility Fill": {
600: "faufsb",
normal: "faufsb"
}
};
var Et = new Map([["classic", {
defaultShortPrefixId: "fas",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin", "brands"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["duotone", {
defaultShortPrefixId: "fad",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp", {
defaultShortPrefixId: "fass",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp-duotone", {
defaultShortPrefixId: "fasds",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["chisel", {
defaultShortPrefixId: "facr",
defaultStyleId: "regular",
styleIds: ["regular"],
futureStyleIds: [],
defaultFontWeight: 400
}], ["etch", {
defaultShortPrefixId: "faes",
defaultStyleId: "solid",
styleIds: ["solid"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["graphite", {
defaultShortPrefixId: "fagt",
defaultStyleId: "thin",
styleIds: ["thin"],
futureStyleIds: [],
defaultFontWeight: 100
}], ["jelly", {
defaultShortPrefixId: "fajr",
defaultStyleId: "regular",
styleIds: ["regular"],
futureStyleIds: [],
defaultFontWeight: 400
}], ["jelly-duo", {
defaultShortPrefixId: "fajdr",
defaultStyleId: "regular",
styleIds: ["regular"],
futureStyleIds: [],
defaultFontWeight: 400
}], ["jelly-fill", {
defaultShortPrefixId: "fajfr",
defaultStyleId: "regular",
styleIds: ["regular"],
futureStyleIds: [],
defaultFontWeight: 400
}], ["notdog", {
defaultShortPrefixId: "fans",
defaultStyleId: "solid",
styleIds: ["solid"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["notdog-duo", {
defaultShortPrefixId: "fands",
defaultStyleId: "solid",
styleIds: ["solid"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["slab", {
defaultShortPrefixId: "faslr",
defaultStyleId: "regular",
styleIds: ["regular"],
futureStyleIds: [],
defaultFontWeight: 400
}], ["slab-press", {
defaultShortPrefixId: "faslpr",
defaultStyleId: "regular",
styleIds: ["regular"],
futureStyleIds: [],
defaultFontWeight: 400
}], ["thumbprint", {
defaultShortPrefixId: "fatl",
defaultStyleId: "light",
styleIds: ["light"],
futureStyleIds: [],
defaultFontWeight: 300
}], ["utility", {
defaultShortPrefixId: "fausb",
defaultStyleId: "semibold",
styleIds: ["semibold"],
futureStyleIds: [],
defaultFontWeight: 600
}], ["utility-duo", {
defaultShortPrefixId: "faudsb",
defaultStyleId: "semibold",
styleIds: ["semibold"],
futureStyleIds: [],
defaultFontWeight: 600
}], ["utility-fill", {
defaultShortPrefixId: "faufsb",
defaultStyleId: "semibold",
styleIds: ["semibold"],
futureStyleIds: [],
defaultFontWeight: 600
}], ["whiteboard", {
defaultShortPrefixId: "fawsb",
defaultStyleId: "semibold",
styleIds: ["semibold"],
futureStyleIds: [],
defaultFontWeight: 600
}]]),
Mt = {
chisel: {
regular: "facr"
},
classic: {
brands: "fab",
light: "fal",
regular: "far",
solid: "fas",
thin: "fat"
},
duotone: {
light: "fadl",
regular: "fadr",
solid: "fad",
thin: "fadt"
},
etch: {
solid: "faes"
},
graphite: {
thin: "fagt"
},
jelly: {
regular: "fajr"
},
"jelly-duo": {
regular: "fajdr"
},
"jelly-fill": {
regular: "fajfr"
},
notdog: {
solid: "fans"
},
"notdog-duo": {
solid: "fands"
},
sharp: {
light: "fasl",
regular: "fasr",
solid: "fass",
thin: "fast"
},
"sharp-duotone": {
light: "fasdl",
regular: "fasdr",
solid: "fasds",
thin: "fasdt"
},
slab: {
regular: "faslr"
},
"slab-press": {
regular: "faslpr"
},
thumbprint: {
light: "fatl"
},
utility: {
semibold: "fausb"
},
"utility-duo": {
semibold: "faudsb"
},
"utility-fill": {
semibold: "faufsb"
},
whiteboard: {
semibold: "fawsb"
}
};
var Ht = ["fak", "fa-kit", "fakd", "fa-kit-duotone"],
Qt = {
kit: {
fak: "kit",
"fa-kit": "kit"
},
"kit-duotone": {
fakd: "kit-duotone",
"fa-kit-duotone": "kit-duotone"
}
},
Xt = ["kit"];
var J = "kit",
r = "kit-duotone",
E = "Kit",
_ = "Kit Duotone",
ll = _defineProperty(_defineProperty({}, J, E), r, _);
var sl = {
kit: {
"fa-kit": "fak"
},
"kit-duotone": {
"fa-kit-duotone": "fakd"
}
};
var hl = {
"Font Awesome Kit": {
400: "fak",
normal: "fak"
},
"Font Awesome Kit Duotone": {
400: "fakd",
normal: "fakd"
}
},
nl = {
kit: {
fak: "fa-kit"
},
"kit-duotone": {
fakd: "fa-kit-duotone"
}
};
var ml = {
kit: {
kit: "fak"
},
"kit-duotone": {
"kit-duotone": "fakd"
}
};
var _wt;
var t$1 = {
GROUP: "duotone-group",
SWAP_OPACITY: "swap-opacity",
PRIMARY: "primary",
SECONDARY: "secondary"
},
f$1 = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone", "fa-thumbprint", "fa-whiteboard", "fa-notdog", "fa-notdog-duo", "fa-chisel", "fa-etch", "fa-graphite", "fa-jelly", "fa-jelly-fill", "fa-jelly-duo", "fa-slab", "fa-slab-press", "fa-utility", "fa-utility-duo", "fa-utility-fill"];
var h$1 = "classic",
o$1 = "duotone",
n$1 = "sharp",
s$1 = "sharp-duotone",
u$1 = "chisel",
g$1 = "etch",
y$1 = "graphite",
m$1 = "jelly",
a$1 = "jelly-duo",
p$1 = "jelly-fill",
w$1 = "notdog",
e$1 = "notdog-duo",
b$1 = "slab",
c$1 = "slab-press",
r$1 = "thumbprint",
x$1 = "utility",
i$1 = "utility-duo",
I$1 = "utility-fill",
F$1 = "whiteboard",
v$1 = "Classic",
S$1 = "Duotone",
A$1 = "Sharp",
P$1 = "Sharp Duotone",
j$1 = "Chisel",
B$1 = "Etch",
N$1 = "Graphite",
k$1 = "Jelly",
D$1 = "Jelly Duo",
C$1 = "Jelly Fill",
T$1 = "Notdog",
L$1 = "Notdog Duo",
W$1 = "Slab",
R$1 = "Slab Press",
K$1 = "Thumbprint",
U$1 = "Utility",
J$1 = "Utility Duo",
E$1 = "Utility Fill",
_$1 = "Whiteboard",
wt$1 = (_wt = {}, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_wt, h$1, v$1), o$1, S$1), n$1, A$1), s$1, P$1), u$1, j$1), g$1, B$1), y$1, N$1), m$1, k$1), a$1, D$1), p$1, C$1), _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_wt, w$1, T$1), e$1, L$1), b$1, W$1), c$1, R$1), r$1, K$1), x$1, U$1), i$1, J$1), I$1, E$1), F$1, _$1));
var G$1 = "kit",
d$1 = "kit-duotone",
M$1 = "Kit",
O = "Kit Duotone",
dl$1 = _defineProperty(_defineProperty({}, G$1, M$1), d$1, O);
var Hl = {
classic: {
"fa-brands": "fab",
"fa-duotone": "fad",
"fa-light": "fal",
"fa-regular": "far",
"fa-solid": "fas",
"fa-thin": "fat"
},
duotone: {
"fa-regular": "fadr",
"fa-light": "fadl",
"fa-thin": "fadt"
},
sharp: {
"fa-solid": "fass",
"fa-regular": "fasr",
"fa-light": "fasl",
"fa-thin": "fast"
},
"sharp-duotone": {
"fa-solid": "fasds",
"fa-regular": "fasdr",
"fa-light": "fasdl",
"fa-thin": "fasdt"
},
slab: {
"fa-regular": "faslr"
},
"slab-press": {
"fa-regular": "faslpr"
},
whiteboard: {
"fa-semibold": "fawsb"
},
thumbprint: {
"fa-light": "fatl"
},
notdog: {
"fa-solid": "fans"
},
"notdog-duo": {
"fa-solid": "fands"
},
etch: {
"fa-solid": "faes"
},
graphite: {
"fa-thin": "fagt"
},
jelly: {
"fa-regular": "fajr"
},
"jelly-fill": {
"fa-regular": "fajfr"
},
"jelly-duo": {
"fa-regular": "fajdr"
},
chisel: {
"fa-regular": "facr"
},
utility: {
"fa-semibold": "fausb"
},
"utility-duo": {
"fa-semibold": "faudsb"
},
"utility-fill": {
"fa-semibold": "faufsb"
}
},
Y$1 = {
classic: ["fas", "far", "fal", "fat", "fad"],
duotone: ["fadr", "fadl", "fadt"],
sharp: ["fass", "fasr", "fasl", "fast"],
"sharp-duotone": ["fasds", "fasdr", "fasdl", "fasdt"],
slab: ["faslr"],
"slab-press": ["faslpr"],
whiteboard: ["fawsb"],
thumbprint: ["fatl"],
notdog: ["fans"],
"notdog-duo": ["fands"],
etch: ["faes"],
graphite: ["fagt"],
jelly: ["fajr"],
"jelly-fill": ["fajfr"],
"jelly-duo": ["fajdr"],
chisel: ["facr"],
utility: ["fausb"],
"utility-duo": ["faudsb"],
"utility-fill": ["faufsb"]
},
Xl = {
classic: {
fab: "fa-brands",
fad: "fa-duotone",
fal: "fa-light",
far: "fa-regular",
fas: "fa-solid",
fat: "fa-thin"
},
duotone: {
fadr: "fa-regular",
fadl: "fa-light",
fadt: "fa-thin"
},
sharp: {
fass: "fa-solid",
fasr: "fa-regular",
fasl: "fa-light",
fast: "fa-thin"
},
"sharp-duotone": {
fasds: "fa-solid",
fasdr: "fa-regular",
fasdl: "fa-light",
fasdt: "fa-thin"
},
slab: {
faslr: "fa-regular"
},
"slab-press": {
faslpr: "fa-regular"
},
whiteboard: {
fawsb: "fa-semibold"
},
thumbprint: {
fatl: "fa-light"
},
notdog: {
fans: "fa-solid"
},
"notdog-duo": {
fands: "fa-solid"
},
etch: {
faes: "fa-solid"
},
graphite: {
fagt: "fa-thin"
},
jelly: {
fajr: "fa-regular"
},
"jelly-fill": {
fajfr: "fa-regular"
},
"jelly-duo": {
fajdr: "fa-regular"
},
chisel: {
facr: "fa-regular"
},
utility: {
fausb: "fa-semibold"
},
"utility-duo": {
faudsb: "fa-semibold"
},
"utility-fill": {
faufsb: "fa-semibold"
}
},
V$1 = ["fa-solid", "fa-regular", "fa-light", "fa-thin", "fa-duotone", "fa-brands", "fa-semibold"],
lo = ["fa", "fas", "far", "fal", "fat", "fad", "fadr", "fadl", "fadt", "fab", "fass", "fasr", "fasl", "fast", "fasds", "fasdr", "fasdl", "fasdt", "faslr", "faslpr", "fawsb", "fatl", "fans", "fands", "faes", "fagt", "fajr", "fajfr", "fajdr", "facr", "fausb", "faudsb", "faufsb"].concat(f$1, V$1),
$ = ["solid", "regular", "light", "thin", "duotone", "brands", "semibold"],
z$1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
q$1 = z$1.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]),
H$1 = ["aw", "fw", "pull-left", "pull-right"],
so = [].concat(_toConsumableArray(Object.keys(Y$1)), $, H$1, ["2xs", "xs", "sm", "lg", "xl", "2xl", "beat", "border", "fade", "beat-fade", "bounce", "flip-both", "flip-horizontal", "flip-vertical", "flip", "inverse", "layers", "layers-bottom-left", "layers-bottom-right", "layers-counter", "layers-text", "layers-top-left", "layers-top-right", "li", "pull-end", "pull-start", "pulse", "rotate-180", "rotate-270", "rotate-90", "rotate-by", "shake", "spin-pulse", "spin-reverse", "spin", "stack-1x", "stack-2x", "stack", "ul", "width-auto", "width-fixed", t$1.GROUP, t$1.SWAP_OPACITY, t$1.PRIMARY, t$1.SECONDARY]).concat(z$1.map(function (l) {
return "".concat(l, "x");
})).concat(q$1.map(function (l) {
return "w-".concat(l);
}));
var fo = {
"Font Awesome 5 Free": {
900: "fas",
400: "far"
},
"Font Awesome 5 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal"
},
"Font Awesome 5 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 5 Duotone": {
900: "fad"
}
};
var NAMESPACE_IDENTIFIER = '___FONT_AWESOME___';
var UNITS_IN_GRID = 16;
var DEFAULT_CSS_PREFIX = 'fa';
var DEFAULT_REPLACEMENT_CLASS = 'svg-inline--fa';
var DATA_FA_I2SVG = 'data-fa-i2svg';
var DATA_FA_PSEUDO_ELEMENT = 'data-fa-pseudo-element';
var DATA_FA_PSEUDO_ELEMENT_PENDING = 'data-fa-pseudo-element-pending';
var DATA_PREFIX = 'data-prefix';
var DATA_ICON = 'data-icon';
var HTML_CLASS_I2SVG_BASE_CLASS = 'fontawesome-i2svg';
var MUTATION_APPROACH_ASYNC = 'async';
var TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS = ['HTML', 'HEAD', 'STYLE', 'SCRIPT'];
var PSEUDO_ELEMENTS = ['::before', '::after', ':before', ':after'];
var PRODUCTION = function () {
try {
return process.env.NODE_ENV === 'production';
} catch (e$$1) {
return false;
}
}();
function familyProxy(obj) {
// Defaults to the classic family if family is not available
return new Proxy(obj, {
get: function get(target, prop) {
return prop in target ? target[prop] : target[i];
}
});
}
var _PREFIX_TO_STYLE = _objectSpread2({}, Q);
// We changed FACSSClassesToStyleId in the icons repo to be canonical and as such, "classic" family does not have any
// duotone styles. But we do still need duotone in _PREFIX_TO_STYLE below, so we are manually adding
// {'fa-duotone': 'duotone'}
_PREFIX_TO_STYLE[i] = _objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2({}, {
'fa-duotone': 'duotone'
}), Q[i]), Qt['kit']), Qt['kit-duotone']);
var PREFIX_TO_STYLE = familyProxy(_PREFIX_TO_STYLE);
var _STYLE_TO_PREFIX = _objectSpread2({}, Mt);
// We changed FAStyleIdToShortPrefixId in the icons repo to be canonical and as such, "classic" family does not have any
// duotone styles. But we do still need duotone in _STYLE_TO_PREFIX below, so we are manually adding {duotone: 'fad'}
_STYLE_TO_PREFIX[i] = _objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2({}, {
duotone: 'fad'
}), _STYLE_TO_PREFIX[i]), ml['kit']), ml['kit-duotone']);
var STYLE_TO_PREFIX = familyProxy(_STYLE_TO_PREFIX);
var _PREFIX_TO_LONG_STYLE = _objectSpread2({}, Xl);
_PREFIX_TO_LONG_STYLE[i] = _objectSpread2(_objectSpread2({}, _PREFIX_TO_LONG_STYLE[i]), nl['kit']);
var PREFIX_TO_LONG_STYLE = familyProxy(_PREFIX_TO_LONG_STYLE);
var _LONG_STYLE_TO_PREFIX = _objectSpread2({}, Hl);
_LONG_STYLE_TO_PREFIX[i] = _objectSpread2(_objectSpread2({}, _LONG_STYLE_TO_PREFIX[i]), sl['kit']);
var LONG_STYLE_TO_PREFIX = familyProxy(_LONG_STYLE_TO_PREFIX);
var ICON_SELECTION_SYNTAX_PATTERN = G;
var LAYERS_TEXT_CLASSNAME = 'fa-layers-text';
var FONT_FAMILY_PATTERN = M;
var _FONT_WEIGHT_TO_PREFIX = _objectSpread2({}, yt);
var FONT_WEIGHT_TO_PREFIX = familyProxy(_FONT_WEIGHT_TO_PREFIX);
var ATTRIBUTES_WATCHED_FOR_MUTATION = ['class', 'data-prefix', 'data-icon', 'data-fa-transform', 'data-fa-mask'];
var DUOTONE_CLASSES = X;
var RESERVED_CLASSES = [].concat(_toConsumableArray(Xt), _toConsumableArray(so));
var initial = WINDOW.FontAwesomeConfig || {};
function getAttrConfig(attr) {
var element = DOCUMENT.querySelector('script[' + attr + ']');
if (element) {
return element.getAttribute(attr);
}
}
function coerce(val) {
// Getting an empty string will occur if the attribute is set on the HTML tag but without a value
// We'll assume that this is an indication that it should be toggled to true
if (val === '') return true;
if (val === 'false') return false;
if (val === 'true') return true;
return val;
}
if (DOCUMENT && typeof DOCUMENT.querySelector === 'function') {
var attrs = [['data-family-prefix', 'familyPrefix'], ['data-css-prefix', 'cssPrefix'], ['data-family-default', 'familyDefault'], ['data-style-default', 'styleDefault'], ['data-replacement-class', 'replacementClass'], ['data-auto-replace-svg', 'autoReplaceSvg'], ['data-auto-add-css', 'autoAddCss'], ['data-search-pseudo-elements', 'searchPseudoElements'], ['data-search-pseudo-elements-warnings', 'searchPseudoElementsWarnings'], ['data-search-pseudo-elements-full-scan', 'searchPseudoElementsFullScan'], ['data-observe-mutations', 'observeMutations'], ['data-mutate-approach', 'mutateApproach'], ['data-keep-original-source', 'keepOriginalSource'], ['data-measure-performance', 'measurePerformance'], ['data-show-missing-icons', 'showMissingIcons']];
attrs.forEach(function (_ref) {
var _ref2 = _slicedToArray(_ref, 2),
attr = _ref2[0],
key = _ref2[1];
var val = coerce(getAttrConfig(attr));
if (val !== undefined && val !== null) {
initial[key] = val;
}
});
}
var _default = {
styleDefault: 'solid',
familyDefault: i,
cssPrefix: DEFAULT_CSS_PREFIX,
replacementClass: DEFAULT_REPLACEMENT_CLASS,
autoReplaceSvg: true,
autoAddCss: true,
searchPseudoElements: false,
searchPseudoElementsWarnings: true,
searchPseudoElementsFullScan: false,
observeMutations: true,
mutateApproach: 'async',
keepOriginalSource: true,
measurePerformance: false,
showMissingIcons: true
};
// familyPrefix is deprecated but we must still support it if present
if (initial.familyPrefix) {
initial.cssPrefix = initial.familyPrefix;
}
var _config = _objectSpread2(_objectSpread2({}, _default), initial);
if (!_config.autoReplaceSvg) _config.observeMutations = false;
var config = {};
Object.keys(_default).forEach(function (key) {
Object.defineProperty(config, key, {
enumerable: true,
set: function set(val) {
_config[key] = val;
_onChangeCb.forEach(function (cb) {
return cb(config);
});
},
get: function get() {
return _config[key];
}
});
});
// familyPrefix is deprecated as of 6.2.0 and should be removed in 7.0.0
Object.defineProperty(config, 'familyPrefix', {
enumerable: true,
set: function set(val) {
_config.cssPrefix = val;
_onChangeCb.forEach(function (cb) {
return cb(config);
});
},
get: function get() {
return _config.cssPrefix;
}
});
WINDOW.FontAwesomeConfig = config;
var _onChangeCb = [];
function onChange(cb) {
_onChangeCb.push(cb);
return function () {
_onChangeCb.splice(_onChangeCb.indexOf(cb), 1);
};
}
var w$2 = WINDOW || {};
if (!w$2[NAMESPACE_IDENTIFIER]) w$2[NAMESPACE_IDENTIFIER] = {};
if (!w$2[NAMESPACE_IDENTIFIER].styles) w$2[NAMESPACE_IDENTIFIER].styles = {};
if (!w$2[NAMESPACE_IDENTIFIER].hooks) w$2[NAMESPACE_IDENTIFIER].hooks = {};
if (!w$2[NAMESPACE_IDENTIFIER].shims) w$2[NAMESPACE_IDENTIFIER].shims = [];
var namespace = w$2[NAMESPACE_IDENTIFIER];
var functions = [];
var _listener = function listener() {
DOCUMENT.removeEventListener('DOMContentLoaded', _listener);
loaded = 1;
functions.map(function (fn) {
return fn();
});
};
var loaded = false;
if (IS_DOM) {
loaded = (DOCUMENT.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(DOCUMENT.readyState);
if (!loaded) DOCUMENT.addEventListener('DOMContentLoaded', _listener);
}
function domready (fn) {
if (!IS_DOM) return;
loaded ? setTimeout(fn, 0) : functions.push(fn);
}
var d$2 = UNITS_IN_GRID;
var meaninglessTransform = {
size: 16,
x: 0,
y: 0,
rotate: 0,
flipX: false,
flipY: false
};
function insertCss(css) {
if (!css || !IS_DOM) {
return;
}
var style = DOCUMENT.createElement('style');
style.setAttribute('type', 'text/css');
style.innerHTML = css;
var headChildren = DOCUMENT.head.childNodes;
var beforeChild = null;
for (var i = headChildren.length - 1; i > -1; i--) {
var child = headChildren[i];
var tagName = (child.tagName || '').toUpperCase();
if (['STYLE', 'LINK'].indexOf(tagName) > -1) {
beforeChild = child;
}
}
DOCUMENT.head.insertBefore(style, beforeChild);
return css;
}
var idPool = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
function nextUniqueId() {
var size = 12;
var id = '';
while (size-- > 0) {
id += idPool[Math.random() * 62 | 0];
}
return id;
}
function toArray(obj) {
var array = [];
for (var i = (obj || []).length >>> 0; i--;) {
array[i] = obj[i];
}
return array;
}
function classArray(node) {
if (node.classList) {
return toArray(node.classList);
} else {
return (node.getAttribute('class') || '').split(' ').filter(function (i) {
return i;
});
}
}
function htmlEscape(str) {
return "".concat(str).replace(/&/g, '&').replace(/"/g, '"').replace(/'/g, ''').replace(/</g, '<').replace(/>/g, '>');
}
function joinAttributes(attributes) {
return Object.keys(attributes || {}).reduce(function (acc, attributeName) {
return acc + "".concat(attributeName, "=\"").concat(htmlEscape(attributes[attributeName]), "\" ");
}, '').trim();
}
function joinStyles(styles) {
return Object.keys(styles || {}).reduce(function (acc, styleName) {
return acc + "".concat(styleName, ": ").concat(styles[styleName].trim(), ";");
}, '');
}
function transformIsMeaningful(transform) {
return transform.size !== meaninglessTransform.size || transform.x !== meaninglessTransform.x || transform.y !== meaninglessTransform.y || transform.rotate !== meaninglessTransform.rotate || transform.flipX || transform.flipY;
}
function transformForSvg(_ref) {
var transform = _ref.transform,
containerWidth = _ref.containerWidth,
iconWidth = _ref.iconWidth;
var outer = {
transform: "translate(".concat(containerWidth / 2, " 256)")
};
var innerTranslate = "translate(".concat(transform.x * 32, ", ").concat(transform.y * 32, ") ");
var innerScale = "scale(".concat(transform.size / 16 * (transform.flipX ? -1 : 1), ", ").concat(transform.size / 16 * (transform.flipY ? -1 : 1), ") ");
var innerRotate = "rotate(".concat(transform.rotate, " 0 0)");
var inner = {
transform: "".concat(innerTranslate, " ").concat(innerScale, " ").concat(innerRotate)
};
var path = {
transform: "translate(".concat(iconWidth / 2 * -1, " -256)")
};
return {
outer: outer,
inner: inner,
path: path
};
}
function transformForCss(_ref2) {
var transform = _ref2.transform,
_ref2$width = _ref2.width,
width = _ref2$width === void 0 ? UNITS_IN_GRID : _ref2$width,
_ref2$height = _ref2.height,
height = _ref2$height === void 0 ? UNITS_IN_GRID : _ref2$height,
_ref2$startCentered = _ref2.startCentered,
startCentered = _ref2$startCentered === void 0 ? false : _ref2$startCentered;
var val = '';
if (startCentered && IS_IE) {
val += "translate(".concat(transform.x / d$2 - width / 2, "em, ").concat(transform.y / d$2 - height / 2, "em) ");
} else if (startCentered) {
val += "translate(calc(-50% + ".concat(transform.x / d$2, "em), calc(-50% + ").concat(transform.y / d$2, "em)) ");
} else {
val += "translate(".concat(transform.x / d$2, "em, ").concat(transform.y / d$2, "em) ");
}
val += "scale(".concat(transform.size / d$2 * (transform.flipX ? -1 : 1), ", ").concat(transform.size / d$2 * (transform.flipY ? -1 : 1), ") ");
val += "rotate(".concat(transform.rotate, "deg) ");
return val;
}
function toHtml(abstractNodes) {
var tag = abstractNodes.tag,
_abstractNodes$attrib = abstractNodes.attributes,
attributes = _abstractNodes$attrib === void 0 ? {} : _abstractNodes$attrib,
_abstractNodes$childr = abstractNodes.children,
children = _abstractNodes$childr === void 0 ? [] : _abstractNodes$childr;
if (typeof abstractNodes === 'string') {
return htmlEscape(abstractNodes);
} else {
return "<".concat(tag, " ").concat(joinAttributes(attributes), ">").concat(children.map(toHtml).join(''), "</").concat(tag, ">");
}
}
function iconFromMapping(mapping, prefix, iconName) {
if (mapping && mapping[prefix] && mapping[prefix][iconName]) {
return {
prefix: prefix,
iconName: iconName,
icon: mapping[prefix][iconName]
};
}
}
/**
* Internal helper to bind a function known to have 4 arguments
* to a given context.
*/
var bindInternal4 = function bindInternal4(func, thisContext) {
return function (a, b, c, d) {
return func.call(thisContext, a, b, c, d);
};
};
/**
* # Reduce
*
* A fast object `.reduce()` implementation.
*
* @param {Object} subject The object to reduce over.
* @param {Function} fn The reducer function.
* @param {mixed} initialValue The initial value for the reducer, defaults to subject[0].
* @param {Object} thisContext The context for the reducer.
* @return {mixed} The final result.
*/
var reduce = function fastReduceObject(subject, fn, initialValue, thisContext) {
var keys = Object.keys(subject),
length = keys.length,
iterator = thisContext !== undefined ? bindInternal4(fn, thisContext) : fn,
i,
key,
result;
if (initialValue === undefined) {
i = 1;
result = subject[keys[0]];
} else {
i = 0;
result = initialValue;
}
for (; i < length; i++) {
key = keys[i];
result = iterator(result, subject[key], key, subject);
}
return result;
};
/**
* Return hexadecimal string for a unicode character
* Returns `null` when more than one character (not bytes!) are passed
* For example: 'K' → '7B'
*/
function toHex(unicode) {
if (_toConsumableArray(unicode).length !== 1) return null;
return unicode.codePointAt(0).toString(16);
}
function normalizeIcons(icons) {
return Object.keys(icons).reduce(function (acc, iconName) {
var icon = icons[iconName];
var expanded = !!icon.icon;
if (expanded) {
acc[icon.iconName] = icon.icon;
} else {
acc[iconName] = icon;
}
return acc;
}, {});
}
function defineIcons(prefix, icons) {
var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
var _params$skipHooks = params.skipHooks,
skipHooks = _params$skipHooks === void 0 ? false : _params$skipHooks;
var normalized = normalizeIcons(icons);
if (typeof namespace.hooks.addPack === 'function' && !skipHooks) {
namespace.hooks.addPack(prefix, normalizeIcons(icons));
} else {
namespace.styles[prefix] = _objectSpread2(_objectSpread2({}, namespace.styles[prefix] || {}), normalized);
}
/**
* Font Awesome 4 used the prefix of `fa` for all icons. With the introduction
* of new styles we needed to differentiate between them. Prefix `fa` is now an alias
* for `fas` so we'll ease the upgrade process for our users by automatically defining
* this as well.
*/
if (prefix === 'fas') {
defineIcons('fa', icons);
}
}
var MONO = 0x1;
var DUO = 0x2;
// New v7 compatible matchers using the style attribute to determine layer membership
var modernMatches = [[DUO, /*#__PURE__*/_wrapRegExp(/path opacity="([^"]*)".*d="([^"]*)".*path.*d="([^"]*)"/, {
d2: 2,
d1: 3
})], [DUO, /*#__PURE__*/_wrapRegExp(/path opacity="([^"]*)".*d="([^"]*)"/, {
d2: 2
})], [MONO, /*#__PURE__*/_wrapRegExp(/path fill="currentColor".*d="([^"]+)"/, {
d1: 1
})]];
// Old <= v6 matchers, these should rarely get used.
//
// Why are there so many? Over the lifecycle of version 5 and 6 we modified the
// syntax for our source SVG files several times. These patterns match the
// historical record and attempt to handle backwards-compatibility in rare edge
// cases (loading version 6 SVG source files using the version 7 SVG parser)
var legacyMatches = [[DUO, /*#__PURE__*/_wrapRegExp(/path class="([^"]*secondary[^"]*)".*d="([^"]+)".*path class="([^"]*primary[^"]*)".*d="([^"]+)"/, {
attr2: 1,
d2: 2,
attr1: 3,
d1: 4
})], [DUO, /*#__PURE__*/_wrapRegExp(/path class="([^"]*primary[^"]*)".*d="([^"]+)".*path class="([^"]*secondary[^"]*)".*d="([^"]+)"/, {
attr1: 1,
d1: 2,
attr2: 3,
d2: 4
})], [DUO, /*#__PURE__*/_wrapRegExp(/path class="([^"]*primary[^"]*)".*d="([^"]+)"/, {
attr1: 1,
d1: 2
})], [DUO, /*#__PURE__*/_wrapRegExp(/path class="([^"]*secondary[^"]*)".*d="([^"]+)"/, {
attr2: 1,
d2: 2
})], [DUO, /*#__PURE__*/_wrapRegExp(/path d="([^"]+)".*class="([^"]*secondary[^"]*)".*path d="([^"]+)".*class="([^"]*primary[^"]*)"/, {
d2: 1,
attr2: 2,
d1: 3,
attr1: 4
})], [DUO, /*#__PURE__*/_wrapRegExp(/path d="([^"]+)".*class="([^"]*primary[^"]*)".*path d="([^"]+)".*class="([^"]*secondary[^"]*)"/, {
d1: 1,
attr1: 2,
d2: 3,
attr2: 4
})], [DUO, /*#__PURE__*/_wrapRegExp(/path d="([^"]+)".*class="([^"]*primary[^"]*)"/, {
d1: 1,
attr1: 2
})], [DUO, /*#__PURE__*/_wrapRegExp(/path d="([^"]+)".*class="([^"]*secondary[^"]*)"/, {
d2: 1,
attr2: 2
})], [DUO, /*#__PURE__*/_wrapRegExp(/path d="([^"]+)".*path d="([^"]+)"/, {
d1: 1,
d2: 2
})], [MONO, /*#__PURE__*/_wrapRegExp(/path d="([^"]+)"/, {
d1: 1
})], [MONO, /*#__PURE__*/_wrapRegExp(/path style="([^"]+)".*d="([^"]+)"/, {
attr1: 1,
d1: 2
})]];
var styles = namespace.styles,
shims = namespace.shims;
var FAMILY_NAMES = Object.keys(PREFIX_TO_LONG_STYLE);
var PREFIXES_FOR_FAMILY = FAMILY_NAMES.reduce(function (acc, familyId) {
acc[familyId] = Object.keys(PREFIX_TO_LONG_STYLE[familyId]);
return acc;
}, {});
var _defaultUsablePrefix = null;
var _byUnicode = {};
var _byLigature = {};
var _byOldName = {};
var _byOldUnicode = {};
var _byAlias = {};
function isReserved(name) {
return ~RESERVED_CLASSES.indexOf(name);
}
function getIconName(cssPrefix, cls) {
var parts = cls.split('-');
var prefix = parts[0];
var iconName = parts.slice(1).join('-');
if (prefix === cssPrefix && iconName !== '' && !isReserved(iconName)) {
return iconName;
} else {
return null;
}
}
var build = function build() {
var lookup = function lookup(reducer) {
return reduce(styles, function (o$$1, style, prefix) {
o$$1[prefix] = reduce(style, reducer, {});
return o$$1;
}, {});
};
_byUnicode = lookup(function (acc, icon, iconName) {
if (icon[3]) {
acc[icon[3]] = iconName;
}
if (icon[2]) {
var aliases = icon[2].filter(function (a$$1) {
return typeof a$$1 === 'number';
});
aliases.forEach(function (alias) {
acc[alias.toString(16)] = iconName;
});
}
return acc;
});
_byLigature = lookup(function (acc, icon, iconName) {
acc[iconName] = iconName;
if (icon[2]) {
var aliases = icon[2].filter(function (a$$1) {
return typeof a$$1 === 'string';
});
aliases.forEach(function (alias) {
acc[alias] = iconName;
});
}
return acc;
});
_byAlias = lookup(function (acc, icon, iconName) {
var aliases = icon[2];
acc[iconName] = iconName;
aliases.forEach(function (alias) {
acc[alias] = iconName;
});
return acc;
});
// If we have a Kit, we can't determine if regular is available since we
// could be auto-fetching it. We'll have to assume that it is available.
var hasRegular = 'far' in styles || config.autoFetchSvg;
var shimLookups = reduce(shims, function (acc, shim) {
var maybeNameMaybeUnicode = shim[0];
var prefix = shim[1];
var iconName = shim[2];
if (prefix === 'far' && !hasRegular) {
prefix = 'fas';
}
if (typeof maybeNameMaybeUnicode === 'string') {
acc.names[maybeNameMaybeUnicode] = {
prefix: prefix,
iconName: iconName
};
}
if (typeof maybeNameMaybeUnicode === 'number') {
acc.unicodes[maybeNameMaybeUnicode.toString(16)] = {
prefix: prefix,
iconName: iconName
};
}
return acc;
}, {
names: {},
unicodes: {}
});
_byOldName = shimLookups.names;
_byOldUnicode = shimLookups.unicodes;
_defaultUsablePrefix = getCanonicalPrefix(config.styleDefault, {
family: config.familyDefault
});
};
onChange(function (c$$1) {
_defaultUsablePrefix = getCanonicalPrefix(c$$1.styleDefault, {
family: config.familyDefault
});
});
build();
function byUnicode(prefix, unicode) {
return (_byUnicode[prefix] || {})[unicode];
}
function byLigature(prefix, ligature) {
return (_byLigature[prefix] || {})[ligature];
}
function byAlias(prefix, alias) {
return (_byAlias[prefix] || {})[alias];
}
function byOldName(name) {
return _byOldName[name] || {
prefix: null,
iconName: null
};
}
function byOldUnicode(unicode) {
var oldUnicode =