[Rt-commit] rt branch, 4.6/fontawesome-tree-shaking, created. rt-4.4.4-394-g708cc7f34

Jim Brandt jbrandt at bestpractical.com
Thu Sep 26 16:43:19 EDT 2019


The branch, 4.6/fontawesome-tree-shaking has been created
        at  708cc7f342315b72038202b55325be93cceb3369 (commit)

- Log -----------------------------------------------------------------
commit 708cc7f342315b72038202b55325be93cceb3369
Author: Jim Brandt <jbrandt at bestpractical.com>
Date:   Thu Sep 26 16:43:00 2019 -0400

    Add fontawesome SVG build docs and files

diff --git a/devel/third-party/README b/devel/third-party/README
index 585f50aa9..feef4827a 100644
--- a/devel/third-party/README
+++ b/devel/third-party/README
@@ -63,3 +63,8 @@ License: Apache
 Description: computes and, optionally, applies the styles to the poppers(bootstrap requires it)
 Origin: https://github.com/FezVrasta/popper.js
 License: MIT
+
+* fontawesome-5.11.2
+Description: A set of SVG icons. Icon files are installed via npm, then webpack tree-shakes to generate js for only the icons we use.
+Origin: https://github.com/FortAwesome/Font-Awesome/tree/master/js-packages/%40fortawesome
+License: Icons: CC BY 4.0, Code: MIT License
diff --git a/devel/third-party/fontawesome/README b/devel/third-party/fontawesome/README
new file mode 100644
index 000000000..e9d4182bb
--- /dev/null
+++ b/devel/third-party/fontawesome/README
@@ -0,0 +1,23 @@
+RT now uses fontawesome to render icons in the web user interface. We use the SVG version of the icons, but RT uses only a small subset of all the free icons available. To reduce the file size of the fontawesome javascript file, we run the webpack utility to perform tree shaking on the source files and generate only what RT needs. This README describes how to generate this file from the source fontawesome files.
+
+The tools to perform this tree-shaking are all written in javascript, so to generate these files you need to install node.js and have a working npm utility.
+
+The existing tools assume the below will be installed in node_modules in the rt/devel/third-party/fontawesome directory, which should be your current working directory for this process.
+
+1. Get fontawesome
+
+$ npm i @fortawesome/fontawesome-svg-core
+$ npm i @fortawesome/free-solid-svg-icons
+
+2. Install the webpack utility and babel helper
+
+$ npm install webpack
+$ npm install babel-minify-webpack-plugin
+
+3. Edit index.js and add the new icons you want.
+
+4. Run webpack:
+
+$ webpack --config=webpack.config.js
+
+5. A new dist directory should be created with a fontawesome.js file. Copy this file to a location RT can use it and you should have your new icons. For core RT, the new file should go in share/static/js.
diff --git a/devel/third-party/fontawesome/index.js b/devel/third-party/fontawesome/index.js
new file mode 100644
index 000000000..2176d8a85
--- /dev/null
+++ b/devel/third-party/fontawesome/index.js
@@ -0,0 +1,43 @@
+import { library, dom } from '@fortawesome/fontawesome-svg-core'
+
+// Import solid weight icons
+import {
+    faCog as fasCog,
+    faEdit as fasEdit,
+    faBookmark as fasBookmark,
+} from '@fortawesome/free-solid-svg-icons'
+
+
+// Import regular weight icons
+import {
+    faEdit as farEdit,
+    faBookmark as farBookmark,
+    faClock as farClock,
+    faCalendarAlt as farCalendarAlt
+} from '@fortawesome/free-regular-svg-icons'
+
+/*
+// Import brand icons
+import {
+    faLinux as fabLinux
+} from '@fortawesome/free-brands-svg-icons';
+*/
+
+// Add icons to library
+library.add(
+    // Solid
+    fasCog,
+    fasEdit,
+    fasBookmark,
+    // Regular
+    farEdit,
+    farBookmark,
+    farClock,
+    farCalendarAlt
+    // Brands
+//    fabLinux
+)
+
+// Replace any existing <i> tags with <svg> and set up a MutationObserver to
+// continue doing this as the DOM changes.
+dom.watch()
diff --git a/devel/third-party/fontawesome/webpack.config.js b/devel/third-party/fontawesome/webpack.config.js
new file mode 100644
index 000000000..20573d39b
--- /dev/null
+++ b/devel/third-party/fontawesome/webpack.config.js
@@ -0,0 +1,13 @@
+const BabelMinifyPlugin = require('babel-minify-webpack-plugin')
+module.exports = {
+    mode: 'production',
+    entry: './index.js',
+    output: {
+      filename: './fontawesome.js'
+    },
+    optimization: {
+      minimizer: [
+        new BabelMinifyPlugin()
+      ]
+    }
+}
diff --git a/lib/RT/Interface/Web.pm b/lib/RT/Interface/Web.pm
index e03710ac3..2d2c2ca84 100644
--- a/lib/RT/Interface/Web.pm
+++ b/lib/RT/Interface/Web.pm
@@ -140,6 +140,7 @@ sub JSFiles {
         /static/RichText/ckeditor.js
         dropzone.min.js
         quoteselection.js
+        fontawesome.js
         }, RT->Config->Get('JSFiles');
 }
 
diff --git a/share/static/js/fontawesome.js b/share/static/js/fontawesome.js
new file mode 100644
index 000000000..ae901478e
--- /dev/null
+++ b/share/static/js/fontawesome.js
@@ -0,0 +1 @@
+(function(e){function t(i){if(a[i])return a[i].exports;var n=a[i]={i:i,l:!1,exports:{}};return e[i].call(n.exports,n,n.exports,t),n.l=!0,n.exports}var a={};return t.m=e,t.c=a,t.d=function(e,a,i){t.o(e,a)||Object.defineProperty(e,a,{enumerable:!0,get:i})},t.r=function(e){'undefined'!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:'Module'}),Object.defineProperty(e,'__esModule',{value:!0})},t.t=function(e,a){if(1&a&&(e=t(e)),8&a)return e;if(4&a&&'object'==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(t.r(i),Object.defineProperty(i,'default',{enumerable:!0,value:e}),2&a&&'string'!=typeof e)for(var n in e)t.d(i,n,function(t){return e[t]}.bind(null,n));return i},t.n=function(e){var a=e&&e.__esModule?function(){return e['default']}:function(){return e};return t.d(a,'a',a),a},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p='',t(t.s=5)})([function(e){var t=function(){return this}();try{t=t||new Function('return 
 this')()}catch(a){'object'==typeof window&&(t=window)}e.exports=t},function(e,t,a){'use strict';(function(e,i){function n(e){return n='function'==typeof Symbol&&'symbol'==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&'function'==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?'symbol':typeof e},n(e)}function r(e,t){if(!(e instanceof t))throw new TypeError('Cannot call a class as a function')}function o(e,t){for(var a=0,i;a<t.length;a++)i=t[a],i.enumerable=i.enumerable||!1,i.configurable=!0,'value'in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}function s(e,t,a){return t&&o(e.prototype,t),a&&o(e,a),e}function c(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e){for(var t=1;t<arguments.length;t++){var a=null==arguments[t]?{}:arguments[t],i=Object.keys(a);'function'==typeof Object.getOwnPropertySymbols&&(i=i.concat(Object.getOwnPropertySymbols(a).filter(function(e){ret
 urn Object.getOwnPropertyDescriptor(a,e).enumerable}))),i.forEach(function(t){c(e,t,a[t])})}return e}function f(e,t){return g(e)||b(e,t)||v()}function m(e){return u(e)||h(e)||y()}function u(e){if(Array.isArray(e)){for(var t=0,a=Array(e.length);t<e.length;t++)a[t]=e[t];return a}}function g(e){if(Array.isArray(e))return e}function h(e){if(Symbol.iterator in Object(e)||'[object Arguments]'===Object.prototype.toString.call(e))return Array.from(e)}function b(e,t){var a=[],i=!0,n=!1,r=void 0;try{for(var o=e[Symbol.iterator](),s;!(i=(s=o.next()).done)&&(a.push(s.value),!(t&&a.length===t));i=!0);}catch(e){n=!0,r=e}finally{try{i||null==o['return']||o['return']()}finally{if(n)throw r}}return a}function y(){throw new TypeError('Invalid attempt to spread non-iterable instance')}function v(){throw new TypeError('Invalid attempt to destructure non-iterable instance')}function x(e){var t=et.querySelector('script['+e+']');if(t)return t.getAttribute(e)}function k(e){return!(''!==e)||'false'!==e&&(!(
 'true'!==e)||e)}function A(e){nt&&(Tt?setTimeout(e,0):Lt.push(e))}function N(){for(var e=0;e<Yt.length;e++)Yt[e][0](Yt[e][1]);Yt=[],Xt=!1}function M(e,t){Yt.push([e,t]),Xt||(Xt=!0,Vt(N,0))}function C(e,t){function a(e){_(t,e)}function i(e){S(t,e)}try{e(a,i)}catch(t){i(t)}}function I(e){var t=e.owner,a=t._state,i=t._data,n=e[a],r=e.then;if('function'==typeof n){a=Dt;try{i=n(i)}catch(t){S(r,t)}}E(r,i)||(a===Dt&&_(r,i),a===jt&&S(r,i))}function E(t,e){var a;try{if(t===e)throw new TypeError('A promises callback cannot return that same promise.');if(e&&('function'==typeof e||'object'===n(e))){var i=e.then;if('function'==typeof i)return i.call(e,function(i){a||(a=!0,e===i?z(t,i):_(t,i))},function(e){a||(a=!0,S(t,e))}),!0}}catch(i){return a||S(t,i),!0}return!1}function _(e,t){e!==t&&E(e,t)||z(e,t)}function z(e,t){e._state===Rt&&(e._state=Ot,e._data=t,M(T,e))}function S(e,t){e._state===Rt&&(e._state=Ot,e._data=t,M(R,e))}function L(e){e._then=e._then.forEach(I)}function T(e){e._state=Dt,L(e)}
 function R(t){t._state=jt,L(t),!t._handled&&Ht&&e.process.emit('unhandledRejection',t._data,t)}function O(t){e.process.emit('rejectionHandled',t)}function D(e){if('function'!=typeof e)throw new TypeError('Promise resolver '+e+' is not a function');if(!1==this instanceof D)throw new TypeError('Failed to construct \'Promise\': Please use the \'new\' operator, this object constructor cannot be called as a function.');this._then=[],C(e,this)}function j(e){return~Et.indexOf(e)}function F(e){if(e&&nt){var t=et.createElement('style');t.setAttribute('type','text/css'),t.innerHTML=e;for(var a=et.head.childNodes,n=null,r=a.length-1;-1<r;r--){var i=a[r],o=(i.tagName||'').toUpperCase();-1<['STYLE','LINK'].indexOf(o)&&(n=i)}return et.head.insertBefore(t,n),e}}function H(){for(var e=12,t='';0<e--;)t+=Wt[0|62*Math.random()];return t}function V(e){for(var t=[],a=(e||[]).length>>>0;a--;)t[a]=e[a];return t}function Y(e){return e.classList?V(e.classList):(e.getAttribute('class')||'').split(' ').filter
 (function(e){return e})}function X(e,t){var a=t.split('-'),i=a[0],n=a.slice(1).join('-');return i!==e||''===n||j(n)?null:n}function B(e){return''.concat(e).replace(/&/g,'&').replace(/"/g,'"').replace(/'/g,''').replace(/</g,'<').replace(/>/g,'>')}function U(e){return Object.keys(e||{}).reduce(function(t,a){return t+''.concat(a,'="').concat(B(e[a]),'" ')},'').trim()}function W(e){return Object.keys(e||{}).reduce(function(t,a){return t+''.concat(a,': ').concat(e[a],';')},'')}function q(e){return e.size!==d.size||e.x!==d.x||e.y!==d.y||e.rotate!==d.rotate||e.flipX||e.flipY}function G(e){var t=e.transform,a=e.containerWidth,i=e.iconWidth,n={transform:'translate('.concat(a/2,' 256)')},r='translate('.concat(32*t.x,', ').concat(32*t.y,') '),o='scale('.concat(t.size/16*(t.flipX?-1:1),', ').concat(t.size/16*(t.flipY?-1:1),') '),s='rotate('.concat(t.rotate,' 0 0)'),c={transform:''.concat(r,' ').concat(o,' ').concat(s)},l={transform:'translate('.concat(-1*(i/2),' -256)')};retu
 rn{outer:n,inner:c,path:l}}function K(e){var t=e.transform,a=e.width,i=void 0===a?st:a,n=e.height,r=void 0===n?st:n,o=e.startCentered,s=void 0!==o&&o,c='';return c+=s&&rt?'translate('.concat(t.x/Ut-i/2,'em, ').concat(t.y/Ut-r/2,'em) '):s?'translate(calc(-50% + '.concat(t.x/Ut,'em), calc(-50% + ').concat(t.y/Ut,'em)) '):'translate('.concat(t.x/Ut,'em, ').concat(t.y/Ut,'em) '),c+='scale('.concat(t.size/Ut*(t.flipX?-1:1),', ').concat(t.size/Ut*(t.flipY?-1:1),') '),c+='rotate('.concat(t.rotate,'deg) '),c}function $(e){var t=!(1<arguments.length&&void 0!==arguments[1])||arguments[1];return e.attributes&&(e.attributes.fill||t)&&(e.attributes.fill='black'),e}function J(e){return'g'===e.tag?e.children:[e]}function Q(e){var t=e.children,a=e.attributes,i=e.main,n=e.mask,r=e.transform,o=i.width,s=i.icon,c=n.width,f=n.icon,d=G({transform:r,containerWidth:c,iconWidth:o}),m={tag:'rect',attributes:l({},qt,{fill:'white'})},u=s.children?{children:s.children.map($)}:{},p={tag:'g',attributes:l({},d.in
 ner),children:[$(l({tag:s.tag,attributes:l({},s.attributes,d.path)},u))]},g={tag:'g',attributes:l({},d.outer),children:[p]},h='mask-'.concat(H()),b='clip-'.concat(H()),y={tag:'mask',attributes:l({},qt,{id:h,maskUnits:'userSpaceOnUse',maskContentUnits:'userSpaceOnUse'}),children:[m,g]},v={tag:'defs',children:[{tag:'clipPath',attributes:{id:b},children:J(f)},y]};return t.push(v,{tag:'rect',attributes:l({fill:'currentColor',"clip-path":'url(#'.concat(b,')'),mask:'url(#'.concat(h,')')},qt)}),{children:t,attributes:a}}function Z(e){var t=e.children,a=e.attributes,i=e.main,n=e.transform,r=e.styles,o=W(r);if(0<o.length&&(a.style=o),q(n)){var s=G({transform:n,containerWidth:i.width,iconWidth:i.width});t.push({tag:'g',attributes:l({},s.outer),children:[{tag:'g',attributes:l({},s.inner),children:[{tag:i.icon.tag,children:i.icon.children,attributes:l({},i.icon.attributes,s.path)}]}]})}else t.push(i.icon);return{children:t,attributes:a}}function ee(e){var t=e.children,a=e.main,i=e.mask,n=e.attr
 ibutes,r=e.styles,o=e.transform;if(q(o)&&a.found&&!i.found){var s=a.width,c=a.height,f={x:s/c/2,y:.5};n.style=W(l({},r,{"transform-origin":''.concat(f.x+o.x/16,'em ').concat(f.y+o.y/16,'em')}))}return[{tag:'svg',attributes:n,children:t}]}function te(e){var t=e.prefix,a=e.iconName,i=e.children,n=e.attributes,r=e.symbol,o=!0===r?''.concat(t,'-').concat(Pt.familyPrefix,'-').concat(a):r;return[{tag:'svg',attributes:{style:'display: none;'},children:[{tag:'symbol',attributes:l({},n,{id:o}),children:i}]}]}function ae(e){var t=e.icons,a=t.main,i=t.mask,n=e.prefix,r=e.iconName,o=e.transform,s=e.symbol,c=e.title,f=e.extra,d=e.watchable,m=i.found?i:a,u=m.width,p=m.height,g='fa-w-'.concat(Math.ceil(16*(u/p))),h=[Pt.replacementClass,r?''.concat(Pt.familyPrefix,'-').concat(r):'',g].filter(function(e){return-1===f.classes.indexOf(e)}).concat(f.classes).join(' '),b={children:[],attributes:l({},f.attributes,{"data-prefix":n,"data-icon":r,class:h,role:f.attributes.role||'img',xmlns:'http://www.w3.or
 g/2000/svg',viewBox:'0 0 '.concat(u,' ').concat(p)})};void 0!==d&&d&&(b.attributes[ft]=''),c&&b.children.push({tag:'title',attributes:{id:b.attributes['aria-labelledby']||'title-'.concat(H())},children:[c]});var y=l({},b,{prefix:n,iconName:r,main:a,mask:i,transform:o,symbol:s,styles:f.styles}),v=i.found&&a.found?Q(y):Z(y),x=v.children,w=v.attributes;return y.children=x,y.attributes=w,s?te(y):ee(y)}function ie(e){var t=e.content,a=e.width,i=e.height,n=e.transform,r=e.title,o=e.extra,s=e.watchable,c=l({},o.attributes,r?{title:r}:{},{class:o.classes.join(' ')});void 0!==s&&s&&(c[ft]='');var f=l({},o.styles);q(n)&&(f.transform=K({transform:n,startCentered:!0,width:a,height:i}),f['-webkit-transform']=f.transform);var d=W(f);0<d.length&&(c.style=d);var m=[];return m.push({tag:'span',attributes:c,children:[t]}),r&&m.push({tag:'span',attributes:{class:'sr-only'},children:[r]}),m}function ne(e){var t=e.content,a=e.title,i=e.extra,n=l({},i.attributes,a?{title:a}:{},{class:i.classes.join(' ')}
 ),r=W(i.styles);0<r.length&&(n.style=r);var o=[];return o.push({tag:'span',attributes:n,children:[t]}),a&&o.push({tag:'span',attributes:{class:'sr-only'},children:[a]}),o}function re(e){for(var t='',a=0,i;a<e.length;a++)i=e.charCodeAt(a).toString(16),t+=('000'+i).slice(-4);return t}function oe(e,t){var a=2<arguments.length&&arguments[2]!==void 0?arguments[2]:{},i=a.skipHooks,n=Object.keys(t).reduce(function(e,a){var i=t[a],n=!!i.icon;return n?e[i.iconName]=i.icon:e[a]=i,e},{});'function'!=typeof w.hooks.addPack||void 0!==i&&i?w.styles[e]=l({},w.styles[e]||{},n):w.hooks.addPack(e,n),'fas'===e&&oe('fa',t)}function se(e,t){return(aa[e]||{})[t]}function ce(e,t){return(ia[e]||{})[t]}function le(e){return na[e]||{prefix:null,iconName:null}}function fe(e){return e.reduce(function(e,t){var a=X(Pt.familyPrefix,t);if(oa[t])e.prefix=t;else if(Pt.autoFetchSvg&&-1<['fas','far','fal','fad','fab','fa'].indexOf(t))e.prefix=t;else if(a){var i='fa'===e.prefix?le(a):{};e.iconName=i.iconName||a,e.prefi
 x=i.prefix||e.prefix}else t!==Pt.replacementClass&&0!==t.indexOf('fa-w-')&&e.rest.push(t);return e},sa())}function de(e,t,a){if(e&&e[t]&&e[t][a])return{prefix:t,iconName:a,icon:e[t][a]}}function me(e){var t=e.tag,a=e.attributes,i=void 0===a?{}:a,n=e.children,r=void 0===n?[]:n;return'string'==typeof e?B(e):'<'.concat(t,' ').concat(U(i),'>').concat(r.map(me).join(''),'</').concat(t,'>')}function ue(e){var t=e.getAttribute?e.getAttribute(ft):null;return'string'==typeof t}function pe(){if(!0===Pt.autoReplaceSvg)return la.replace;var e=la[Pt.autoReplaceSvg];return e||la.replace}function ge(e){e()}function he(e,t){var a='function'==typeof t?t:ca;if(0===e.length)a();else{var i=ge;Pt.mutateApproach===ht&&(i=Ze.requestAnimationFrame||ge),i(function(){var t=pe(),i=Jt.begin('mutate');e.map(t),i(),a()})}}function be(){fa=!0}function ye(){fa=!1}function ve(e){if(tt&&Pt.observeMutations){var t=e.treeCallback,a=e.nodeCallback,i=e.pseudoElementsCallback,n=e.observeMutationsRoot,r=void 0===n?et:n;da
 =new tt(function(e){fa||V(e).forEach(function(e){if('childList'===e.type&&0<e.addedNodes.length&&!ue(e.addedNodes[0])&&(Pt.searchPseudoElements&&i(e.target),t(e.target)),'attributes'===e.type&&e.target.parentNode&&Pt.searchPseudoElements&&i(e.target.parentNode),'attributes'===e.type&&ue(e.target)&&~Ct.indexOf(e.attributeName))if('class'===e.attributeName){var n=fe(Y(e.target)),r=n.prefix,o=n.iconName;r&&e.target.setAttribute('data-prefix',r),o&&e.target.setAttribute('data-icon',o)}else a(e.target)})}),nt&&da.observe(r,{childList:!0,attributes:!0,characterData:!0,subtree:!0})}}function xe(){da&&da.disconnect()}function we(e){var t=e.getAttribute('style'),a=[];return t&&(a=t.split(';').reduce(function(e,t){var a=t.split(':'),i=a[0],n=a.slice(1);return i&&0<n.length&&(e[i]=n.join(':').trim()),e},{})),a}function ke(e){var t=e.getAttribute('data-prefix'),a=e.getAttribute('data-icon'),i=void 0===e.innerText?'':e.innerText.trim(),n=fe(Y(e));return t&&a&&(n.prefix=t,n.iconName=a),n.prefix&&
 1<i.length?n.iconName=ce(n.prefix,e.innerText):n.prefix&&1===i.length&&(n.iconName=se(n.prefix,re(e.innerText))),n}function Ae(e){return ma(e.getAttribute('data-fa-transform'))}function Ne(e){var t=e.getAttribute('data-fa-symbol');return null!==t&&(!(''!==t)||t)}function Me(e){var t=V(e.attributes).reduce(function(e,t){return'class'!==e.name&&'style'!==e.name&&(e[t.name]=t.value),e},{}),a=e.getAttribute('title');return Pt.autoA11y&&(a?t['aria-labelledby']=''.concat(Pt.replacementClass,'-title-').concat(H()):(t['aria-hidden']='true',t.focusable='false')),t}function Ce(e){var t=e.getAttribute('data-fa-mask');return t?fe(t.split(' ').map(function(e){return e.trim()})):sa()}function Ie(){return{iconName:null,title:null,prefix:null,transform:d,symbol:!1,mask:null,extra:{classes:[],styles:{},attributes:{}}}}function Ee(e){var t=ke(e),a=t.iconName,i=t.prefix,n=t.rest,r=we(e),o=Ae(e),s=Ne(e),c=Me(e),l=Ce(e);return{iconName:a,title:e.getAttribute('title'),prefix:i,transform:o,symbol:s,mask:l
 ,extra:{classes:n,styles:r,attributes:c}}}function _e(e){this.name='MissingIcon',this.message=e||'Icon unavailable',this.stack=new Error().stack}function ze(e){var t=e[0],a=e[1],i=e.slice(4),n=f(i,1),r=n[0],o=null;return o=Array.isArray(r)?{tag:'g',attributes:{class:''.concat(Pt.familyPrefix,'-').concat(It.GROUP)},children:[{tag:'path',attributes:{class:''.concat(Pt.familyPrefix,'-').concat(It.SECONDARY),fill:'currentColor',d:r[0]}},{tag:'path',attributes:{class:''.concat(Pt.familyPrefix,'-').concat(It.PRIMARY),fill:'currentColor',d:r[1]}}]}:{tag:'path',attributes:{fill:'currentColor',d:r}},{found:!0,width:t,height:a,icon:o}}function Pe(e,t){return new Bt(function(a,i){if(e&&t&&wa[t]&&wa[t][e]){var r=wa[t][e];return a(ze(r))}'object'===n(Ze.FontAwesomeKitConfig)&&'string'==typeof window.FontAwesomeKitConfig.token&&({}['fa-kit-token']=Ze.FontAwesomeKitConfig.token),e&&t&&!Pt.showMissingIcons?i(new _e('Icon is missing for prefix '.concat(t,' with icon name ').concat(e))):a({found:!1,w
 idth:512,height:512,icon:xa})})}function Se(e,t){var a=t.iconName,i=t.title,n=t.prefix,r=t.transform,o=t.symbol,s=t.mask,c=t.extra;return new Bt(function(t){Bt.all([Pe(a,n),Pe(s.iconName,s.prefix)]).then(function(s){var l=f(s,2),d=l[0],m=l[1];t([e,ae({icons:{main:d,mask:m},prefix:n,iconName:a,transform:r,symbol:o,mask:m,title:i,extra:c,watchable:!0})])})})}function Le(e,t){var a=t.title,i=t.transform,n=t.extra,r=null,o=null;if(rt){var s=parseInt(getComputedStyle(e).fontSize,10),c=e.getBoundingClientRect();r=c.width/s,o=c.height/s}return Pt.autoA11y&&!a&&(n.attributes['aria-hidden']='true'),Bt.resolve([e,ie({content:e.innerHTML,width:r,height:o,transform:i,title:a,extra:n,watchable:!0})])}function Te(e){var t=Ee(e);return~t.extra.classes.indexOf(wt)?Le(e,t):Se(e,t)}function Re(e){var t=1<arguments.length&&arguments[1]!==void 0?arguments[1]:null;if(nt){var a=et.documentElement.classList,i=function(e){return a.add(''.concat(gt,'-').concat(e))},n=function(e){return a.remove(''.concat(gt
 ,'-').concat(e))},r=Pt.autoFetchSvg?Object.keys(vt):Object.keys(ka),o=['.'.concat(wt,':not([').concat(ft,'])')].concat(r.map(function(e){return'.'.concat(e,':not([').concat(ft,'])')})).join(', ');if(0!==o.length){var s=[];try{s=V(e.querySelectorAll(o))}catch(t){}if(0<s.length)i('pending'),n('complete');else return;var c=Jt.begin('onTree'),l=s.reduce(function(e,t){try{var a=Te(t);a&&e.push(a)}catch(t){!yt&&t instanceof _e&&console.error(t)}return e},[]);return new Bt(function(e,a){Bt.all(l).then(function(a){he(a,function(){i('active'),i('complete'),n('pending'),'function'==typeof t&&t(),c(),e()})}).catch(function(){c(),a()})})}}}function Oe(e){var t=1<arguments.length&&arguments[1]!==void 0?arguments[1]:null;Te(e).then(function(e){e&&he([e],t)})}function De(e,t){var a=''.concat(mt).concat(t.replace(':','-'));return new Bt(function(i,n){if(null!==e.getAttribute(a))return i();var r=V(e.children),o=r.filter(function(e){return e.getAttribute(dt)===t})[0],s=Ze.getComputedStyle(e,t),c=s.ge
 tPropertyValue('font-family').match(kt),f=s.getPropertyValue('font-weight');if(o&&!c)return e.removeChild(o),i();if(c){var d=s.getPropertyValue('content'),m=~['Solid','Regular','Light','Duotone','Brands'].indexOf(c[1])?xt[c[1].toLowerCase()]:At[f],u=re(3===d.length?d.substr(1,1):d),p=se(m,u),g=p;if(p&&(!o||o.getAttribute(ut)!==m||o.getAttribute(pt)!==g)){e.setAttribute(a,g),o&&e.removeChild(o);var h=Ie(),b=h.extra;b.attributes[dt]=t,Pe(p,m).then(function(n){var r=ae(l({},h,{icons:{main:n,mask:sa()},prefix:m,iconName:g,extra:b,watchable:!0})),o=et.createElement('svg');':before'===t?e.insertBefore(o,e.firstChild):e.appendChild(o),o.outerHTML=r.map(function(e){return me(e)}).join('\n'),e.removeAttribute(a),i()}).catch(n)}else i()}else i()})}function je(e){return Bt.all([De(e,':before'),De(e,':after')])}function Fe(e){return e.parentNode!==document.head&&!~bt.indexOf(e.tagName.toUpperCase())&&!e.getAttribute(dt)&&(!e.parentNode||'svg'!==e.parentNode.tagName)}function He(e){return nt?new
  Bt(function(t,a){var i=V(e.querySelectorAll('*')).filter(Fe).map(je),n=Jt.begin('searchPseudoElements');be(),Bt.all(i).then(function(){n(),ye(),t()}).catch(function(){n(),ye(),a()})}):void 0}function Ve(){var e=Pt.familyPrefix,t=Pt.replacementClass,a=Aa;if(e!==ct||t!==lt){var i=/\.fa\-/g,n=/\--fa\-/g,r=/\.svg-inline--fa/g;a=a.replace(i,'.'.concat(e,'-')).replace(n,'--'.concat(e,'-')).replace(r,'.'.concat(t))}return a}function Ye(){Pt.autoAddCss&&!Ca&&(F(Ve()),Ca=!0)}function Xe(e,t){return Object.defineProperty(e,'abstract',{get:t}),Object.defineProperty(e,'html',{get:function(){return e.abstract.map(function(e){return me(e)})}}),Object.defineProperty(e,'node',{get:function(){if(nt){var t=et.createElement('div');return t.innerHTML=e.html,t.children}}}),e}function Be(e){var t=e.prefix,a=void 0===t?'fa':t,i=e.iconName;return i?de(Ma.definitions,a,i)||de(w.styles,a,i):void 0}a.d(t,'b',function(){return Ma}),a.d(t,'a',function(){return Ia});var Ue=function(){},We={},qe={},Ge=null,Ke={m
 ark:Ue,measure:Ue};try{'undefined'!=typeof window&&(We=window),'undefined'!=typeof document&&(qe=document),'undefined'!=typeof MutationObserver&&(Ge=MutationObserver),'undefined'!=typeof performance&&(Ke=performance)}catch(t){}var $e=We.navigator||{},Je=$e.userAgent,Qe=void 0===Je?'':Je,Ze=We,et=qe,tt=Ge,at=Ke,it=!!Ze.document,nt=!!et.documentElement&&!!et.head&&'function'==typeof et.addEventListener&&'function'==typeof et.createElement,rt=~Qe.indexOf('MSIE')||~Qe.indexOf('Trident/'),ot='___FONT_AWESOME___',st=16,ct='fa',lt='svg-inline--fa',ft='data-fa-i2svg',dt='data-fa-pseudo-element',mt='data-fa-pseudo-element-pending',ut='data-prefix',pt='data-icon',gt='fontawesome-i2svg',ht='async',bt=['HTML','HEAD','STYLE','SCRIPT'],yt=function(){try{return!0}catch(t){return!1}}(),vt={fas:'solid',far:'regular',fal:'light',fad:'duotone',fab:'brands',fa:'solid'},xt={solid:'fas',regular:'far',light:'fal',duotone:'fad',brands:'fab'},wt='fa-layers-text',kt=/Font Awesome 5 (Solid|Regular|Light|Duoto
 ne|Brands|Free|Pro)/,At={900:'fas',400:'far',normal:'far',300:'fal'},Nt=[1,2,3,4,5,6,7,8,9,10],Mt=Nt.concat([11,12,13,14,15,16,17,18,19,20]),Ct=['class','data-prefix','data-icon','data-fa-transform','data-fa-mask'],It={GROUP:'group',SWAP_OPACITY:'swap-opacity',PRIMARY:'primary',SECONDARY:'secondary'},Et=['xs','sm','lg','fw','ul','li','border','pull-left','pull-right','spin','pulse','rotate-90','rotate-180','rotate-270','flip-horizontal','flip-vertical','flip-both','stack','stack-1x','stack-2x','inverse','layers','layers-text','layers-counter',It.GROUP,It.SWAP_OPACITY,It.PRIMARY,It.SECONDARY].concat(Nt.map(function(e){return''.concat(e,'x')})).concat(Mt.map(function(e){return'w-'.concat(e)})),_t=Ze.FontAwesomeConfig||{};if(et&&'function'==typeof et.querySelector){[['data-family-prefix','familyPrefix'],['data-replacement-class','replacementClass'],['data-auto-replace-svg','autoReplaceSvg'],['data-auto-add-css','autoAddCss'],['data-auto-a11y','autoA11y'],['data-search-pseudo-elements',
 'searchPseudoElements'],['data-observe-mutations','observeMutations'],['data-mutate-approach','mutateApproach'],['data-keep-original-source','keepOriginalSource'],['data-measure-performance','measurePerformance'],['data-show-missing-icons','showMissingIcons']].forEach(function(e){var t=f(e,2),a=t[0],i=t[1],n=k(x(a));n!==void 0&&null!==n&&(_t[i]=n)})}var zt=l({},{familyPrefix:ct,replacementClass:lt,autoReplaceSvg:!0,autoAddCss:!0,autoA11y:!0,searchPseudoElements:!1,observeMutations:!0,mutateApproach:'async',keepOriginalSource:!0,measurePerformance:!1,showMissingIcons:!0},_t);zt.autoReplaceSvg||(zt.observeMutations=!1);var Pt=l({},zt);Ze.FontAwesomeConfig=Pt;var St=Ze||{};St[ot]||(St[ot]={}),St[ot].styles||(St[ot].styles={}),St[ot].hooks||(St[ot].hooks={}),St[ot].shims||(St[ot].shims=[]);var w=St[ot],Lt=[],Tt=!1;nt&&(Tt=(et.documentElement.doScroll?/^loaded|^c/:/^loaded|^i|^c/).test(et.readyState),!Tt&&et.addEventListener('DOMContentLoaded',function e(){et.removeEventListener('DOMCont
 entLoaded',e),Tt=1,Lt.map(function(e){return e()})}));var Rt='pending',Ot='settled',Dt='fulfilled',jt='rejected',Ft=function(){},Ht='undefined'!=typeof e&&'undefined'!=typeof e.process&&'function'==typeof e.process.emit,Vt='undefined'==typeof i?setTimeout:i,Yt=[],Xt;D.prototype={constructor:D,_state:Rt,_then:null,_data:void 0,_handled:!1,then:function(e,t){var a={owner:this,then:new this.constructor(Ft),fulfilled:e,rejected:t};return(t||e)&&!this._handled&&(this._handled=!0,this._state===jt&&Ht&&M(O,this)),this._state===Dt||this._state===jt?M(I,a):this._then.push(a),a.then},catch:function(e){return this.then(null,e)}},D.all=function(e){if(!Array.isArray(e))throw new TypeError('You must pass an array to Promise.all().');return new D(function(t,a){function n(e){return o++,function(a){r[e]=a,--o||t(r)}}for(var r=[],o=0,s=0,i;s<e.length;s++)i=e[s],i&&'function'==typeof i.then?i.then(n(s),a):r[s]=i;o||t(r)})},D.race=function(e){if(!Array.isArray(e))throw new TypeError('You must pass an a
 rray to Promise.race().');return new D(function(t,a){for(var n=0,i;n<e.length;n++)i=e[n],i&&'function'==typeof i.then?i.then(t,a):t(i)})},D.resolve=function(e){return e&&'object'===n(e)&&e.constructor===D?e:new D(function(t){t(e)})},D.reject=function(e){return new D(function(t,a){a(e)})};var Bt='function'==typeof Promise?Promise:D,Ut=st,d={size:16,x:0,y:0,rotate:0,flipX:!1,flipY:!1},Wt='0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',qt={x:0,y:0,width:'100%',height:'100%'},Gt=function(){},Kt=Pt.measurePerformance&&at&&at.mark&&at.measure?at:{mark:Gt,measure:Gt},p='FA "5.11.2"',$t=function(e){Kt.mark(''.concat(p,' ').concat(e,' ends')),Kt.measure(''.concat(p,' ').concat(e),''.concat(p,' ').concat(e,' begins'),''.concat(p,' ').concat(e,' ends'))},Jt={begin:function(e){return Kt.mark(''.concat(p,' ').concat(e,' begins')),function(){return $t(e)}},end:$t},Qt=function(e,t){return function(i,a,n,r){return e.call(t,i,a,n,r)}},Zt=function(e,t,a,n){var r=Object.keys(e),o=r.le
 ngth,s=n===void 0?t:Qt(t,n),c,i,l;for(void 0===a?(c=1,l=e[r[0]]):(c=0,l=a);c<o;c++)i=r[c],l=s(l,e[i],i,e);return l},ea=w.styles,ta=w.shims,aa={},ia={},na={},ra=function(){var e=function(e){return Zt(ea,function(t,a,i){return t[i]=Zt(a,e,{}),t},{})};aa=e(function(e,t,a){return t[3]&&(e[t[3]]=a),e}),ia=e(function(e,t,a){var i=t[2];return e[a]=a,i.forEach(function(t){e[t]=a}),e});var t='far'in ea;na=Zt(ta,function(e,a){var i=a[0],n=a[1],r=a[2];return'far'!==n||t||(n='fas'),e[i]={prefix:n,iconName:r},e},{})};ra();var oa=w.styles,sa=function(){return{prefix:null,iconName:null,rest:[]}},ca=function(){},la={replace:function(e){var t=e[0],a=e[1],i=a.map(function(e){return me(e)}).join('\n');if(t.parentNode&&t.outerHTML)t.outerHTML=i+(Pt.keepOriginalSource&&'svg'!==t.tagName.toLowerCase()?'<!-- '.concat(t.outerHTML,' -->'):'');else if(t.parentNode){var n=document.createElement('span');t.parentNode.replaceChild(n,t),n.outerHTML=i}},nest:function(e){var t=e[0],a=e[1];if(~Y(t).indexOf(Pt.replac
 ementClass))return la.replace(e);var i=new RegExp(''.concat(Pt.familyPrefix,'-.*'));delete a[0].attributes.style,delete a[0].attributes.id;var n=a[0].attributes.class.split(' ').reduce(function(e,t){return t===Pt.replacementClass||t.match(i)?e.toSvg.push(t):e.toNode.push(t),e},{toNode:[],toSvg:[]});a[0].attributes.class=n.toSvg.join(' ');var r=a.map(function(e){return me(e)}).join('\n');t.setAttribute('class',n.toNode.join(' ')),t.setAttribute(ft,''),t.innerHTML=r}},fa=!1,da=null,ma=function(e){var t={size:16,x:0,y:0,flipX:!1,flipY:!1,rotate:0};return e?e.toLowerCase().split(' ').reduce(function(e,t){var a=t.toLowerCase().split('-'),i=a[0],n=a.slice(1).join('-');return i&&'h'===n?(e.flipX=!0,e):i&&'v'===n?(e.flipY=!0,e):(n=parseFloat(n),isNaN(n))?e:('grow'===i?e.size+=n:'shrink'===i?e.size-=n:'left'===i?e.x-=n:'right'===i?e.x+=n:'up'===i?e.y-=n:'down'===i?e.y+=n:'rotate'===i?e.rotate+=n:void 0,e)},t):t};_e.prototype=Object.create(Error.prototype),_e.prototype.constructor=_e;var ua={
 fill:'currentColor'},pa={attributeType:'XML',repeatCount:'indefinite',dur:'2s'},ga={tag:'path',attributes:l({},ua,{d:'M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V
 471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z'})},ha=l({},pa,{attributeName:'opacity'}),ba={tag:'circle',attributes:l({},ua,{cx:'256',cy:'364',r:'28'}),children:[{tag:'animate',attributes:l({},pa,{attributeName:'r',values:'28;14;28;28;14;28;'})},{tag:'animate',attributes:l({},ha,{values:'1;0;1;1;0;1;'})}]},ya={tag:'path',attributes:l({},ua,{opacity:'1',d:'M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9
 -6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z'}),children:[{tag:'animate',attributes:l({},ha,{values:'1;0;0;0;0;1;'})}]},va={tag:'path',attributes:l({},ua,{opacity:'0',d:'M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z'}),children:[{tag:'animate',attributes:l({},ha,{values:'0;0;1;1;0;0;'})}]},xa={tag:'g',children:[ga,ba,ya,va]},wa=w.styles,ka=w.styles,Aa='svg:not(:root).svg-inline--fa {\n  overflow: visible;\n}\n\n.svg-inline--fa {\n  display: inline-block;\n  font-size: inherit;\n  height: 1em;\n  overflow: visible;\n  vertical-align: -0.125em;\n}\n.svg-inline--fa.fa-lg {\n  vertical-align: -0.225em;\n}\n.svg-inline--fa.fa-w-1 {\n  width: 0.0625em;\n}\n.svg-inline--fa.fa-w-2 {\n  width: 0.125em;\n}\n.svg-inline--fa.fa-w-3 {\n  width: 0.1875em;\n}\n.svg-inline--fa.fa-w-4 {\n  width: 0.25em;\n}\n.svg-in
 line--fa.fa-w-5 {\n  width: 0.3125em;\n}\n.svg-inline--fa.fa-w-6 {\n  width: 0.375em;\n}\n.svg-inline--fa.fa-w-7 {\n  width: 0.4375em;\n}\n.svg-inline--fa.fa-w-8 {\n  width: 0.5em;\n}\n.svg-inline--fa.fa-w-9 {\n  width: 0.5625em;\n}\n.svg-inline--fa.fa-w-10 {\n  width: 0.625em;\n}\n.svg-inline--fa.fa-w-11 {\n  width: 0.6875em;\n}\n.svg-inline--fa.fa-w-12 {\n  width: 0.75em;\n}\n.svg-inline--fa.fa-w-13 {\n  width: 0.8125em;\n}\n.svg-inline--fa.fa-w-14 {\n  width: 0.875em;\n}\n.svg-inline--fa.fa-w-15 {\n  width: 0.9375em;\n}\n.svg-inline--fa.fa-w-16 {\n  width: 1em;\n}\n.svg-inline--fa.fa-w-17 {\n  width: 1.0625em;\n}\n.svg-inline--fa.fa-w-18 {\n  width: 1.125em;\n}\n.svg-inline--fa.fa-w-19 {\n  width: 1.1875em;\n}\n.svg-inline--fa.fa-w-20 {\n  width: 1.25em;\n}\n.svg-inline--fa.fa-pull-left {\n  margin-right: 0.3em;\n  width: auto;\n}\n.svg-inline--fa.fa-pull-right {\n  margin-left: 0.3em;\n  width: auto;\n}\n.svg-inline--fa.fa-border {\n  height: 1.5em;\n}\n.svg-inline--fa.fa-li {\n
   width: 2em;\n}\n.svg-inline--fa.fa-fw {\n  width: 1.25em;\n}\n\n.fa-layers svg.svg-inline--fa {\n  bottom: 0;\n  left: 0;\n  margin: auto;\n  position: absolute;\n  right: 0;\n  top: 0;\n}\n\n.fa-layers {\n  display: inline-block;\n  height: 1em;\n  position: relative;\n  text-align: center;\n  vertical-align: -0.125em;\n  width: 1em;\n}\n.fa-layers svg.svg-inline--fa {\n  -webkit-transform-origin: center center;\n          transform-origin: center center;\n}\n\n.fa-layers-counter, .fa-layers-text {\n  display: inline-block;\n  position: absolute;\n  text-align: center;\n}\n\n.fa-layers-text {\n  left: 50%;\n  top: 50%;\n  -webkit-transform: translate(-50%, -50%);\n          transform: translate(-50%, -50%);\n  -webkit-transform-origin: center center;\n          transform-origin: center center;\n}\n\n.fa-layers-counter {\n  background-color: #ff253a;\n  border-radius: 1em;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  color: #fff;\n  height: 1.5em;\n  li
 ne-height: 1;\n  max-width: 5em;\n  min-width: 1.5em;\n  overflow: hidden;\n  padding: 0.25em;\n  right: 0;\n  text-overflow: ellipsis;\n  top: 0;\n  -webkit-transform: scale(0.25);\n          transform: scale(0.25);\n  -webkit-transform-origin: top right;\n          transform-origin: top right;\n}\n\n.fa-layers-bottom-right {\n  bottom: 0;\n  right: 0;\n  top: auto;\n  -webkit-transform: scale(0.25);\n          transform: scale(0.25);\n  -webkit-transform-origin: bottom right;\n          transform-origin: bottom right;\n}\n\n.fa-layers-bottom-left {\n  bottom: 0;\n  left: 0;\n  right: auto;\n  top: auto;\n  -webkit-transform: scale(0.25);\n          transform: scale(0.25);\n  -webkit-transform-origin: bottom left;\n          transform-origin: bottom left;\n}\n\n.fa-layers-top-right {\n  right: 0;\n  top: 0;\n  -webkit-transform: scale(0.25);\n          transform: scale(0.25);\n  -webkit-transform-origin: top right;\n          transform-origin: top right;\n}\n\n.fa-layers-top-left {
 \n  left: 0;\n  right: auto;\n  top: 0;\n  -webkit-transform: scale(0.25);\n          transform: scale(0.25);\n  -webkit-transform-origin: top left;\n          transform-origin: top left;\n}\n\n.fa-lg {\n  font-size: 1.3333333333em;\n  line-height: 0.75em;\n  vertical-align: -0.0667em;\n}\n\n.fa-xs {\n  font-size: 0.75em;\n}\n\n.fa-sm {\n  font-size: 0.875em;\n}\n\n.fa-1x {\n  font-size: 1em;\n}\n\n.fa-2x {\n  font-size: 2em;\n}\n\n.fa-3x {\n  font-size: 3em;\n}\n\n.fa-4x {\n  font-size: 4em;\n}\n\n.fa-5x {\n  font-size: 5em;\n}\n\n.fa-6x {\n  font-size: 6em;\n}\n\n.fa-7x {\n  font-size: 7em;\n}\n\n.fa-8x {\n  font-size: 8em;\n}\n\n.fa-9x {\n  font-size: 9em;\n}\n\n.fa-10x {\n  font-size: 10em;\n}\n\n.fa-fw {\n  text-align: center;\n  width: 1.25em;\n}\n\n.fa-ul {\n  list-style-type: none;\n  margin-left: 2.5em;\n  padding-left: 0;\n}\n.fa-ul > li {\n  position: relative;\n}\n\n.fa-li {\n  left: -2em;\n  position: absolute;\n  text-align: center;\n  width: 2em;\n  line-height: inher
 it;\n}\n\n.fa-border {\n  border: solid 0.08em #eee;\n  border-radius: 0.1em;\n  padding: 0.2em 0.25em 0.15em;\n}\n\n.fa-pull-left {\n  float: left;\n}\n\n.fa-pull-right {\n  float: right;\n}\n\n.fa.fa-pull-left,\n.fas.fa-pull-left,\n.far.fa-pull-left,\n.fal.fa-pull-left,\n.fab.fa-pull-left {\n  margin-right: 0.3em;\n}\n.fa.fa-pull-right,\n.fas.fa-pull-right,\n.far.fa-pull-right,\n.fal.fa-pull-right,\n.fab.fa-pull-right {\n  margin-left: 0.3em;\n}\n\n.fa-spin {\n  -webkit-animation: fa-spin 2s infinite linear;\n          animation: fa-spin 2s infinite linear;\n}\n\n.fa-pulse {\n  -webkit-animation: fa-spin 1s infinite steps(8);\n          animation: fa-spin 1s infinite steps(8);\n}\n\n at -webkit-keyframes fa-spin {\n  0% {\n    -webkit-transform: rotate(0deg);\n            transform: rotate(0deg);\n  }\n  100% {\n    -webkit-transform: rotate(360deg);\n            transform: rotate(360deg);\n  }\n}\n\n at keyframes fa-spin {\n  0% {\n    -webkit-transform: rotate(0deg);\n            tran
 sform: rotate(0deg);\n  }\n  100% {\n    -webkit-transform: rotate(360deg);\n            transform: rotate(360deg);\n  }\n}\n.fa-rotate-90 {\n  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";\n  -webkit-transform: rotate(90deg);\n          transform: rotate(90deg);\n}\n\n.fa-rotate-180 {\n  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";\n  -webkit-transform: rotate(180deg);\n          transform: rotate(180deg);\n}\n\n.fa-rotate-270 {\n  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";\n  -webkit-transform: rotate(270deg);\n          transform: rotate(270deg);\n}\n\n.fa-flip-horizontal {\n  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";\n  -webkit-transform: scale(-1, 1);\n          transform: scale(-1, 1);\n}\n\n.fa-flip-vertical {\n  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";\n  -webkit-transform: scale(1, -1);\n          transform: scale
 (1, -1);\n}\n\n.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical {\n  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";\n  -webkit-transform: scale(-1, -1);\n          transform: scale(-1, -1);\n}\n\n:root .fa-rotate-90,\n:root .fa-rotate-180,\n:root .fa-rotate-270,\n:root .fa-flip-horizontal,\n:root .fa-flip-vertical,\n:root .fa-flip-both {\n  -webkit-filter: none;\n          filter: none;\n}\n\n.fa-stack {\n  display: inline-block;\n  height: 2em;\n  position: relative;\n  width: 2.5em;\n}\n\n.fa-stack-1x,\n.fa-stack-2x {\n  bottom: 0;\n  left: 0;\n  margin: auto;\n  position: absolute;\n  right: 0;\n  top: 0;\n}\n\n.svg-inline--fa.fa-stack-1x {\n  height: 1em;\n  width: 1.25em;\n}\n.svg-inline--fa.fa-stack-2x {\n  height: 2em;\n  width: 2.5em;\n}\n\n.fa-inverse {\n  color: #fff;\n}\n\n.sr-only {\n  border: 0;\n  clip: rect(0, 0, 0, 0);\n  height: 1px;\n  margin: -1px;\n  overflow: hidden;\n  padding: 0;\n  position: absolute;\n  width: 1px;\n}\n\
 n.sr-only-focusable:active, .sr-only-focusable:focus {\n  clip: auto;\n  height: auto;\n  margin: 0;\n  overflow: visible;\n  position: static;\n  width: auto;\n}\n\n.svg-inline--fa .fa-primary {\n  fill: var(--fa-primary-color, currentColor);\n  opacity: 1;\n  opacity: var(--fa-primary-opacity, 1);\n}\n\n.svg-inline--fa .fa-secondary {\n  fill: var(--fa-secondary-color, currentColor);\n  opacity: 0.4;\n  opacity: var(--fa-secondary-opacity, 0.4);\n}\n\n.svg-inline--fa.fa-swap-opacity .fa-primary {\n  opacity: 0.4;\n  opacity: var(--fa-secondary-opacity, 0.4);\n}\n\n.svg-inline--fa.fa-swap-opacity .fa-secondary {\n  opacity: 1;\n  opacity: var(--fa-primary-opacity, 1);\n}\n\n.svg-inline--fa mask .fa-primary,\n.svg-inline--fa mask .fa-secondary {\n  fill: black;\n}\n\n.fad.fa-inverse {\n  color: #fff;\n}',Na=function(){function e(){r(this,e),this.definitions={}}return s(e,[{key:'add',value:function(){for(var e=this,t=arguments.length,a=Array(t),i=0;i<t;i++)a[i]=arguments[i];var n=a.r
 educe(this._pullDefinitions,{});Object.keys(n).forEach(function(t){e.definitions[t]=l({},e.definitions[t]||{},n[t]),oe(t,n[t]),ra()})}},{key:'reset',value:function(){this.definitions={}}},{key:'_pullDefinitions',value:function(e,t){var a=t.prefix&&t.iconName&&t.icon?{0:t}:t;return Object.keys(a).map(function(t){var i=a[t],n=i.prefix,r=i.iconName,o=i.icon;e[n]||(e[n]={}),e[n][r]=o}),e}}]),e}(),Ma=new Na,Ca=!1,Ia={i2svg:function(){var e=0<arguments.length&&arguments[0]!==void 0?arguments[0]:{};if(nt){Ye();var t=e.node,a=void 0===t?et:t,i=e.callback,n=void 0===i?function(){}:i;return Pt.searchPseudoElements&&He(a),Re(a,n)}return Bt.reject('Operation requires a DOM of some kind.')},css:Ve,insertCss:function(){Ca||(F(Ve()),Ca=!0)},watch:function(){var e=0<arguments.length&&arguments[0]!==void 0?arguments[0]:{},t=e.autoReplaceSvgRoot,a=e.observeMutationsRoot;!1===Pt.autoReplaceSvg&&(Pt.autoReplaceSvg=!0),Pt.observeMutations=!0,A(function(){za({autoReplaceSvgRoot:t}),ve({treeCallback:Re,no
 deCallback:Oe,pseudoElementsCallback:He,observeMutationsRoot:a})})}},Ea=function(e){return function(t){var a=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},i=(t||{}).icon?t:Be(t||{}),n=a.mask;return n&&(n=(n||{}).icon?n:Be(n||{})),e(i,l({},a,{mask:n}))}}(function(e){var t=1<arguments.length&&arguments[1]!==void 0?arguments[1]:{},a=t.transform,i=void 0===a?d:a,n=t.symbol,r=t.mask,o=void 0===r?null:r,s=t.title,c=void 0===s?null:s,f=t.classes,m=void 0===f?[]:f,u=t.attributes,p=void 0===u?{}:u,g=t.styles,h=void 0===g?{}:g;if(e){var b=e.prefix,y=e.iconName,v=e.icon;return Xe(l({type:'icon'},e),function(){return Ye(),Pt.autoA11y&&(c?p['aria-labelledby']=''.concat(Pt.replacementClass,'-title-').concat(H()):(p['aria-hidden']='true',p.focusable='false')),ae({icons:{main:ze(v),mask:o?ze(o.icon):{found:!1,width:null,height:null,icon:{}}},prefix:b,iconName:y,transform:l({},d,i),symbol:void 0!==n&&n,title:c,extra:{attributes:p,styles:h,classes:m}})})}}),_a={noAuto:function(){Pt.autoRe
 placeSvg=!1,Pt.observeMutations=!1,xe()},config:Pt,dom:Ia,library:Ma,parse:{transform:function(e){return ma(e)}},findIconDefinition:Be,icon:Ea,text:function(e){var t=1<arguments.length&&arguments[1]!==void 0?arguments[1]:{},a=t.transform,i=void 0===a?d:a,n=t.title,r=void 0===n?null:n,o=t.classes,s=void 0===o?[]:o,c=t.attributes,f=void 0===c?{}:c,u=t.styles,p=void 0===u?{}:u;return Xe({type:'text',content:e},function(){return Ye(),ie({content:e,transform:l({},d,i),title:r,extra:{attributes:f,styles:p,classes:[''.concat(Pt.familyPrefix,'-layers-text')].concat(m(s))}})})},counter:function(e){var t=1<arguments.length&&arguments[1]!==void 0?arguments[1]:{},a=t.title,i=void 0===a?null:a,n=t.classes,r=void 0===n?[]:n,o=t.attributes,s=void 0===o?{}:o,c=t.styles,l=void 0===c?{}:c;return Xe({type:'counter',content:e},function(){return Ye(),ne({content:e.toString(),title:i,extra:{attributes:s,styles:l,classes:[''.concat(Pt.familyPrefix,'-layers-counter')].concat(m(r))}})})},layer:function(e){v
 ar t=1<arguments.length&&arguments[1]!==void 0?arguments[1]:{},a=t.classes,i=void 0===a?[]:a;return Xe({type:'layer'},function(){Ye();var t=[];return e(function(e){Array.isArray(e)?e.map(function(e){t=t.concat(e.abstract)}):t=t.concat(e.abstract)}),[{tag:'span',attributes:{class:[''.concat(Pt.familyPrefix,'-layers')].concat(m(i)).join(' ')},children:t}]})},toHtml:me},za=function(){var e=0<arguments.length&&arguments[0]!==void 0?arguments[0]:{},t=e.autoReplaceSvgRoot,a=void 0===t?et:t;(0<Object.keys(w.styles).length||Pt.autoFetchSvg)&&nt&&Pt.autoReplaceSvg&&_a.dom.i2svg({node:a})}}).call(this,a(0),a(2).setImmediate)},function(e,t,a){(function(e){function i(e,t){this._id=e,this._clearFn=t}var n='undefined'!=typeof e&&e||'undefined'!=typeof self&&self||window,r=Function.prototype.apply;t.setTimeout=function(){return new i(r.call(setTimeout,n,arguments),clearTimeout)},t.setInterval=function(){return new i(r.call(setInterval,n,arguments),clearInterval)},t.clearTimeout=t.clearInterval=fun
 ction(e){e&&e.close()},i.prototype.unref=i.prototype.ref=function(){},i.prototype.close=function(){this._clearFn.call(n,this._id)},t.enroll=function(e,t){clearTimeout(e._idleTimeoutId),e._idleTimeout=t},t.unenroll=function(e){clearTimeout(e._idleTimeoutId),e._idleTimeout=-1},t._unrefActive=t.active=function(e){clearTimeout(e._idleTimeoutId);var t=e._idleTimeout;0<=t&&(e._idleTimeoutId=setTimeout(function(){e._onTimeout&&e._onTimeout()},t))},a(3),t.setImmediate='undefined'!=typeof self&&self.setImmediate||'undefined'!=typeof e&&e.setImmediate||this&&this.setImmediate,t.clearImmediate='undefined'!=typeof self&&self.clearImmediate||'undefined'!=typeof e&&e.clearImmediate||this&&this.clearImmediate}).call(this,a(0))},function(e,t,a){(function(e,t){(function(e){'use strict';function a(e){'function'!=typeof e&&(e=new Function(''+e));for(var t=Array(arguments.length-1),a=0;a<t.length;a++)t[a]=arguments[a+1];var i={callback:e,args:t};return u[m]=i,b(m),m++}function i(e){delete u[e]}function
  n(e){var t=e.callback,a=e.args;switch(a.length){case 0:t();break;case 1:t(a[0]);break;case 2:t(a[0],a[1]);break;case 3:t(a[0],a[1],a[2]);break;default:t.apply(void 0,a);}}function r(e){if(p)setTimeout(r,0,e);else{var t=u[e];if(t){p=!0;try{n(t)}finally{i(e),p=!1}}}}function o(){b=function(e){t.nextTick(function(){r(e)})}}function s(){if(e.postMessage&&!e.importScripts){var t=!0,a=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage('','*'),e.onmessage=a,t}}function c(){var t='setImmediate$'+Math.random()+'$',a=function(a){a.source===e&&'string'==typeof a.data&&0===a.data.indexOf(t)&&r(+a.data.slice(t.length))};e.addEventListener?e.addEventListener('message',a,!1):e.attachEvent('onmessage',a),b=function(a){e.postMessage(t+a,'*')}}function l(){var e=new MessageChannel;e.port1.onmessage=function(e){var t=e.data;r(t)},b=function(t){e.port2.postMessage(t)}}function f(){var e=g.documentElement;b=function(t){var a=g.createElement('script');a.onreadystatechange=function(){r(t),a.on
 readystatechange=null,e.removeChild(a),a=null},e.appendChild(a)}}function d(){b=function(e){setTimeout(r,0,e)}}if(!e.setImmediate){var m=1,u={},p=!1,g=e.document,h=Object.getPrototypeOf&&Object.getPrototypeOf(e),b;h=h&&h.setTimeout?h:e,'[object process]'==={}.toString.call(e.process)?o():s()?c():e.MessageChannel?l():g&&'onreadystatechange'in g.createElement('script')?f():d(),h.setImmediate=a,h.clearImmediate=i}})('undefined'==typeof self?'undefined'==typeof e?this:e:self)}).call(this,a(0),a(4))},function(e){function t(){throw new Error('setTimeout has not been defined')}function a(){throw new Error('clearTimeout has not been defined')}function n(e){if(f===setTimeout)return setTimeout(e,0);if((f===t||!f)&&setTimeout)return f=setTimeout,setTimeout(e,0);try{return f(e,0)}catch(t){try{return f.call(null,e,0)}catch(t){return f.call(this,e,0)}}}function i(e){if(d===clearTimeout)return clearTimeout(e);if((d===a||!d)&&clearTimeout)return d=clearTimeout,clearTimeout(e);try{return d(e)}catch(
 t){try{return d.call(null,e)}catch(t){return d.call(this,e)}}}function r(){u&&g&&(u=!1,g.length?m=g.concat(m):p=-1,m.length&&o())}function o(){if(!u){var e=n(r);u=!0;for(var t=m.length;t;){for(g=m,m=[];++p<t;)g&&g[p].run();p=-1,t=m.length}g=null,u=!1,i(e)}}function s(e,t){this.fun=e,this.array=t}function c(){}var l=e.exports={},f,d;(function(){try{f='function'==typeof setTimeout?setTimeout:t}catch(a){f=t}try{d='function'==typeof clearTimeout?clearTimeout:a}catch(t){d=a}})();var m=[],u=!1,p=-1,g;l.nextTick=function(e){var t=Array(arguments.length-1);if(1<arguments.length)for(var a=1;a<arguments.length;a++)t[a-1]=arguments[a];m.push(new s(e,t)),1!==m.length||u||n(o)},s.prototype.run=function(){this.fun.apply(null,this.array)},l.title='browser',l.browser=!0,l.env={},l.argv=[],l.version='',l.versions={},l.on=c,l.addListener=c,l.once=c,l.off=c,l.removeListener=c,l.removeAllListeners=c,l.emit=c,l.prependListener=c,l.prependOnceListener=c,l.listeners=function(){return[]},l.binding=function
 (){throw new Error('process.binding is not supported')},l.cwd=function(){return'/'},l.chdir=function(){throw new Error('process.chdir is not supported')},l.umask=function(){return 0}},function(e,t,a){'use strict';a.r(t);var i=a(1),n={prefix:'fas',iconName:'bookmark',icon:[384,512,[],'f02e','M0 512V48C0 21.49 21.49 0 48 0h288c26.51 0 48 21.49 48 48v464L192 400 0 512z']},r={prefix:'fas',iconName:'cog',icon:[512,512,[],'f013','M487.4 315.7l-42.6-24.6c4.3-23.2 4.3-47 0-70.2l42.6-24.6c4.9-2.8 7.1-8.6 5.5-14-11.1-35.6-30-67.8-54.7-94.6-3.8-4.1-10-5.1-14.8-2.3L380.8 110c-17.9-15.4-38.5-27.3-60.8-35.1V25.8c0-5.6-3.9-10.5-9.4-11.7-36.7-8.2-74.3-7.8-109.2 0-5.5 1.2-9.4 6.1-9.4 11.7V75c-22.2 7.9-42.8 19.8-60.8 35.1L88.7 85.5c-4.9-2.8-11-1.9-14.8 2.3-24.7 26.7-43.6 58.9-54.7 94.6-1.7 5.4.6 11.2 5.5 14L67.3 221c-4.3 23.2-4.3 47 0 70.2l-42.6 24.6c-4.9 2.8-7.1 8.6-5.5 14 11.1 35.6 30 67.8 54.7 94.6 3.8 4.1 10 5.1 14.8 2.3l42.6-24.6c17.9 15.4 38.5 27.3 60.8 35.1v49.2c0 5.6 3.9 10.5 9.4 11.7 36.7 8.
 2 74.3 7.8 109.2 0 5.5-1.2 9.4-6.1 9.4-11.7v-49.2c22.2-7.9 42.8-19.8 60.8-35.1l42.6 24.6c4.9 2.8 11 1.9 14.8-2.3 24.7-26.7 43.6-58.9 54.7-94.6 1.5-5.5-.7-11.3-5.6-14.1zM256 336c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80z']},o={prefix:'fas',iconName:'edit',icon:[576,512,[],'f044','M402.6 83.2l90.2 90.2c3.8 3.8 3.8 10 0 13.8L274.4 405.6l-92.8 10.3c-12.4 1.4-22.9-9.1-21.5-21.5l10.3-92.8L388.8 83.2c3.8-3.8 10-3.8 13.8 0zm162-22.9l-48.8-48.8c-15.2-15.2-39.9-15.2-55.2 0l-35.4 35.4c-3.8 3.8-3.8 10 0 13.8l90.2 90.2c3.8 3.8 10 3.8 13.8 0l35.4-35.4c15.2-15.3 15.2-40 0-55.2zM384 346.2V448H64V128h229.8c3.2 0 6.2-1.3 8.5-3.5l40-40c7.6-7.6 2.2-20.5-8.5-20.5H48C21.5 64 0 85.5 0 112v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V306.2c0-10.7-12.9-16-20.5-8.5l-40 40c-2.2 2.3-3.5 5.3-3.5 8.5z']},s={prefix:'far',iconName:'bookmark',icon:[384,512,[],'f02e','M336 0H48C21.49 0 0 21.49 0 48v464l192-112 192 112V48c0-26.51-21.49-48-48-48zm0 428.43l-144-84-144 84V54a6 6 0 0 1 6-6h276c
 3.314 0 6 2.683 6 5.996V428.43z']},c={prefix:'far',iconName:'calendar-alt',icon:[448,512,[],'f073','M148 288h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12zm108-12v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm96 0v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm-96 96v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm-96 0v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm192 0v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm96-260v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V112c0-26.5 21.5-48 48-48h48V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h128V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h48c26.5 0 48 21.5 48 48zm-48 346V160H48v298c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z']},l={prefix:'far',iconName:'clock',icon:
 [512,512,[],'f017','M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 448c-110.5 0-200-89.5-200-200S145.5 56 256 56s200 89.5 200 200-89.5 200-200 200zm61.8-104.4l-84.9-61.7c-3.1-2.3-4.9-5.9-4.9-9.7V116c0-6.6 5.4-12 12-12h32c6.6 0 12 5.4 12 12v141.7l66.8 48.6c5.4 3.9 6.5 11.4 2.6 16.8L334.6 349c-3.9 5.3-11.4 6.5-16.8 2.6z']},f={prefix:'far',iconName:'edit',icon:[576,512,[],'f044','M402.3 344.9l32-32c5-5 13.7-1.5 13.7 5.7V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V112c0-26.5 21.5-48 48-48h273.5c7.1 0 10.7 8.6 5.7 13.7l-32 32c-1.5 1.5-3.5 2.3-5.7 2.3H48v352h352V350.5c0-2.1.8-4.1 2.3-5.6zm156.6-201.8L296.3 405.7l-90.4 10c-26.2 2.9-48.5-19.2-45.6-45.6l10-90.4L432.9 17.1c22.9-22.9 59.9-22.9 82.7 0l43.2 43.2c22.9 22.9 22.9 60 .1 82.8zM460.1 174L402 115.9 216.2 301.8l-7.3 65.3 65.3-7.3L460.1 174zm64.8-79.7l-43.2-43.2c-4.1-4.1-10.8-4.1-14.8 0L436 82l58.1 58.1 30.9-30.9c4-4.2 4-10.8-.1-14.9z']};i.b.add(r,o,n,f,s,l,c),i.a.watch()}]);
\ No newline at end of file

-----------------------------------------------------------------------


More information about the rt-commit mailing list