Upgrade to FontAwesome 5 (take two) (#6673)

* Add missing icons to set

* Revert FA5 revert

 This reverts commit 42572ff

* use new SVG syntax in locales

* Noscript page changes (remove login button, center "powered by" footer text)

* Cast wider net for SVG icons in settings

- include any _icon setting for SVG registry (offers better support for plugin settings)

- let themes store multiple pipe-delimited icons in a setting

- also replaces broken onebox image icon with SVG reference in cooked post processor

* interpolate icons in locales

* Fix composer whisper icon alignment

* Add support for stacked icons

* SECURITY: enforce hostname to match discourse hostname

This ensures that the hostname rails uses for various helpers always matches
the Discourse hostname

* load SVG sprite with pre-initializers

* FIX: enable caching on SVG sprites

* PERF: use JSONP for SVG sprites so they are served from CDN

This avoids needing to deal with CORS for loading of the SVG

Note, added the svg- prefix to the filename so we can quickly tell in
dev tools what the file is

* Add missing SVG sprite JSONP script to CSP

* Upgrade to FA 5.5.0

* Add support for all FA4.7 icons

- adds complete frontend and backend for renamed FA4.7 icons

- improves performance of SvgSprite.bundle and SvgSprite.all_icons

* Fix group avatar flair preview

- adds an endpoint at /svg-sprites/search/:keyword

- adds frontend ajax call that pulls icon in avatar flair preview even when it is not in subset

* Remove FA 4.7 font files
This commit is contained in:
Penar Musaraj 2018-11-26 16:49:57 -05:00 committed by GitHub
parent 818761c3a4
commit 03deda2147
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
163 changed files with 8226 additions and 5290 deletions

Binary file not shown.

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 434 KiB

View File

@ -30,7 +30,7 @@
{{/if}}
</td>
<td>
{{#if l.bounced}}{{d-icon "repeat" title="admin.email.bounced"}}{{/if}}
{{#if l.bounced}}{{d-icon "redo" title="admin.email.bounced"}}{{/if}}
<a href='mailto:{{unbound l.to_address}}'>{{l.to_address}}</a>
</td>
<td>{{l.email_type}}</td>

View File

@ -2,9 +2,9 @@
{{#link-to 'adminWebHooks' tagName='button' classNames='btn'}}
{{d-icon 'list'}} {{i18n 'admin.web_hooks.events.go_list'}}
{{/link-to}}
{{d-button icon="send" label="admin.web_hooks.events.ping" action="ping" disabled=pingDisabled}}
{{d-button icon="paper-plane" label="admin.web_hooks.events.ping" action="ping" disabled=pingDisabled}}
{{#link-to 'adminWebHooks.show' model.extras.web_hook_id tagName='button' classNames='btn'}}
{{d-icon 'edit'}} {{i18n 'admin.web_hooks.events.go_details'}}
{{d-icon 'far-edit'}} {{i18n 'admin.web_hooks.events.go_details'}}
{{/link-to}}
</div>

View File

@ -24,7 +24,7 @@
<td class='payload-url'>{{#link-to 'adminWebHooks.show' webHook}}{{webHook.payload_url}}{{/link-to}}</td>
<td class='description'>{{webHook.description}}</td>
<td class='controls'>
{{#link-to 'adminWebHooks.show' webHook tagName='button' classNames='btn btn-default no-text'}}{{d-icon 'edit'}}{{/link-to}}
{{#link-to 'adminWebHooks.show' webHook tagName='button' classNames='btn btn-default no-text'}}{{d-icon 'far-edit'}}{{/link-to}}
{{d-button class="destroy btn-danger" action='destroy' actionParam=webHook icon="remove"}}
</td>
</tr>

View File

@ -0,0 +1,42 @@
// FROM: https://github.com/Matt-Esch/virtual-dom
// License: MIT
function AttributeHook(namespace, value) {
if (!(this instanceof AttributeHook)) {
return new AttributeHook(namespace, value);
}
this.namespace = namespace;
this.value = value;
}
AttributeHook.prototype.hook = function(node, prop, prev) {
if (
prev &&
prev.type === "AttributeHook" &&
prev.value === this.value &&
prev.namespace === this.namespace
) {
return;
}
node.setAttributeNS(this.namespace, prop, this.value);
};
AttributeHook.prototype.unhook = function(node, prop, next) {
if (
next &&
next.type === "AttributeHook" &&
next.namespace === this.namespace
) {
return;
}
var colonPosition = prop.indexOf(":");
var localName = colonPosition > -1 ? prop.substr(colonPosition + 1) : prop;
node.removeAttributeNS(this.namespace, localName);
};
AttributeHook.prototype.type = "AttributeHook";
export default AttributeHook;

View File

@ -1,37 +1,505 @@
import { h } from "virtual-dom";
import attributeHook from "discourse-common/lib/attribute-hook";
import deprecated from "discourse-common/lib/deprecated";
const SVG_NAMESPACE = "http://www.w3.org/2000/svg";
let _renderers = [];
const REPLACEMENTS = {
"d-tracking": "circle",
"d-muted": "times-circle",
"d-regular": "circle-o",
"d-regular": "far-circle",
"d-watching": "exclamation-circle",
"d-watching-first": "dot-circle-o",
"d-watching-first": "far-dot-circle",
"d-drop-expanded": "caret-down",
"d-drop-collapsed": "caret-right",
"d-unliked": "heart-o",
"d-unliked": "far-heart",
"d-liked": "heart",
"notification.mentioned": "at",
"notification.group_mentioned": "at",
"notification.quoted": "quote-right",
"notification.replied": "reply",
"notification.posted": "reply",
"notification.edited": "pencil",
"notification.edited": "pencil-alt",
"notification.liked": "heart",
"notification.liked_2": "heart",
"notification.liked_many": "heart",
"notification.private_message": "envelope-o",
"notification.invited_to_private_message": "envelope-o",
"notification.invited_to_topic": "hand-o-right",
"notification.private_message": "far-envelope",
"notification.invited_to_private_message": "far-envelope",
"notification.invited_to_topic": "hand-point-right",
"notification.invitee_accepted": "user",
"notification.moved_post": "sign-out",
"notification.linked": "link",
"notification.granted_badge": "certificate",
"notification.topic_reminder": "hand-o-right",
"notification.watching_first_post": "dot-circle-o",
"notification.topic_reminder": "hand-point-right",
"notification.watching_first_post": "far-dot-circle",
"notification.group_message_summary": "group"
};
// TODO: use lib/svg_sprite/fa4-renames.json here
const fa4Replacements = {
"500px": "fab-500px",
"address-book-o": "far-address-book",
"address-card-o": "far-address-card",
adn: "fab-adn",
amazon: "fab-amazon",
android: "fab-android",
angellist: "fab-angellist",
apple: "fab-apple",
"area-chart": "chart-area",
"arrow-circle-o-down": "far-arrow-alt-circle-down",
"arrow-circle-o-left": "far-arrow-alt-circle-left",
"arrow-circle-o-right": "far-arrow-alt-circle-right",
"arrow-circle-o-up": "far-arrow-alt-circle-up",
arrows: "arrows-alt",
"arrows-alt": "expand-arrows-alt",
"arrows-h": "arrows-alt-h",
"arrows-v": "arrows-alt-v",
"asl-interpreting": "american-sign-language-interpreting",
automobile: "car",
bandcamp: "fab-bandcamp",
bank: "university",
"bar-chart": "far-chart-bar",
"bar-chart-o": "far-chart-bar",
bathtub: "bath",
battery: "battery-full",
"battery-0": "battery-empty",
"battery-1": "battery-quarter",
"battery-2": "battery-half",
"battery-3": "battery-three-quarters",
"battery-4": "battery-full",
behance: "fab-behance",
"behance-square": "fab-behance-square",
"bell-o": "far-bell",
"bell-slash-o": "far-bell-slash",
bitbucket: "fab-bitbucket",
"bitbucket-square": "fab-bitbucket",
bitcoin: "fab-btc",
"black-tie": "fab-black-tie",
bluetooth: "fab-bluetooth",
"bluetooth-b": "fab-bluetooth-b",
"bookmark-o": "far-bookmark",
btc: "fab-btc",
"building-o": "far-building",
buysellads: "fab-buysellads",
cab: "taxi",
calendar: "calendar-alt",
"calendar-check-o": "far-calendar-check",
"calendar-minus-o": "far-calendar-minus",
"calendar-o": "far-calendar",
"calendar-plus-o": "far-calendar-plus",
"calendar-times-o": "far-calendar-times",
"caret-square-o-down": "far-caret-square-down",
"caret-square-o-left": "far-caret-square-left",
"caret-square-o-right": "far-caret-square-right",
"caret-square-o-up": "far-caret-square-up",
cc: "far-closed-captioning",
"cc-amex": "fab-cc-amex",
"cc-diners-club": "fab-cc-diners-club",
"cc-discover": "fab-cc-discover",
"cc-jcb": "fab-cc-jcb",
"cc-mastercard": "fab-cc-mastercard",
"cc-paypal": "fab-cc-paypal",
"cc-stripe": "fab-cc-stripe",
"cc-visa": "fab-cc-visa",
chain: "link",
"chain-broken": "unlink",
"check-circle-o": "far-check-circle",
"check-square-o": "far-check-square",
chrome: "fab-chrome",
"circle-o": "far-circle",
"circle-o-notch": "circle-notch",
"circle-thin": "far-circle",
clipboard: "far-clipboard",
"clock-o": "far-clock",
clone: "far-clone",
close: "times",
"cloud-download": "cloud-download-alt",
"cloud-upload": "cloud-upload-alt",
cny: "yen-sign",
"code-fork": "code-branch",
codepen: "fab-codepen",
codiepie: "fab-codiepie",
"comment-o": "far-comment",
commenting: "far-comment-dots",
"commenting-o": "far-comment-dots",
"comments-o": "far-comments",
compass: "far-compass",
connectdevelop: "fab-connectdevelop",
contao: "fab-contao",
copyright: "far-copyright",
"creative-commons": "fab-creative-commons",
"credit-card": "far-credit-card",
"credit-card-alt": "credit-card",
css3: "fab-css3",
cutlery: "utensils",
dashboard: "tachometer-alt",
dashcube: "fab-dashcube",
deafness: "deaf",
dedent: "outdent",
delicious: "fab-delicious",
deviantart: "fab-deviantart",
diamond: "far-gem",
digg: "fab-digg",
dollar: "dollar-sign",
"dot-circle-o": "far-dot-circle",
dribbble: "fab-dribbble",
"drivers-license": "id-card",
"drivers-license-o": "far-id-card",
dropbox: "fab-dropbox",
drupal: "fab-drupal",
edge: "fab-edge",
eercast: "fab-sellcast",
empire: "fab-empire",
"envelope-o": "far-envelope",
"envelope-open-o": "far-envelope-open",
envira: "fab-envira",
etsy: "fab-etsy",
eur: "euro-sign",
euro: "euro-sign",
exchange: "exchange-alt",
expeditedssl: "fab-expeditedssl",
"external-link": "external-link-alt",
"external-link-square": "external-link-square-alt",
eye: "far-eye",
"eye-slash": "far-eye-slash",
eyedropper: "eye-dropper",
fa: "fab-font-awesome",
facebook: "fab-facebook-f",
"facebook-f": "fab-facebook-f",
"facebook-official": "fab-facebook",
"facebook-square": "fab-facebook-square",
feed: "rss",
"file-archive-o": "far-file-archive",
"file-audio-o": "far-file-audio",
"file-code-o": "far-file-code",
"file-excel-o": "far-file-excel",
"file-image-o": "far-file-image",
"file-movie-o": "far-file-video",
"file-o": "far-file",
"file-pdf-o": "far-file-pdf",
"file-photo-o": "far-file-image",
"file-picture-o": "far-file-image",
"file-powerpoint-o": "far-file-powerpoint",
"file-sound-o": "far-file-audio",
"file-text": "file-alt",
"file-text-o": "far-file-alt",
"file-video-o": "far-file-video",
"file-word-o": "far-file-word",
"file-zip-o": "far-file-archive",
"files-o": "far-copy",
firefox: "fab-firefox",
"first-order": "fab-first-order",
"flag-o": "far-flag",
flash: "bolt",
flickr: "fab-flickr",
"floppy-o": "far-save",
"folder-o": "far-folder",
"folder-open-o": "far-folder-open",
"font-awesome": "fab-font-awesome",
fonticons: "fab-fonticons",
"fort-awesome": "fab-fort-awesome",
forumbee: "fab-forumbee",
foursquare: "fab-foursquare",
"free-code-camp": "fab-free-code-camp",
"frown-o": "far-frown",
"futbol-o": "far-futbol",
gbp: "pound-sign",
ge: "fab-empire",
gear: "cog",
gears: "cogs",
"get-pocket": "fab-get-pocket",
gg: "fab-gg",
"gg-circle": "fab-gg-circle",
git: "fab-git",
"git-square": "fab-git-square",
github: "fab-github",
"github-alt": "fab-github-alt",
"github-square": "fab-github-square",
gitlab: "fab-gitlab",
gittip: "fab-gratipay",
glass: "glass-martini",
glide: "fab-glide",
"glide-g": "fab-glide-g",
google: "fab-google",
"google-plus": "fab-google-plus-g",
"google-plus-circle": "fab-google-plus",
"google-plus-official": "fab-google-plus",
"google-plus-square": "fab-google-plus-square",
"google-wallet": "fab-google-wallet",
gratipay: "fab-gratipay",
grav: "fab-grav",
group: "users",
"hacker-news": "fab-hacker-news",
"hand-grab-o": "far-hand-rock",
"hand-lizard-o": "far-hand-lizard",
"hand-o-down": "far-hand-point-down",
"hand-o-left": "far-hand-point-left",
"hand-o-right": "far-hand-point-right",
"hand-o-up": "far-hand-point-up",
"hand-paper-o": "far-hand-paper",
"hand-peace-o": "far-hand-peace",
"hand-pointer-o": "far-hand-pointer",
"hand-rock-o": "far-hand-rock",
"hand-scissors-o": "far-hand-scissors",
"hand-spock-o": "far-hand-spock",
"hand-stop-o": "far-hand-paper",
"handshake-o": "far-handshake",
"hard-of-hearing": "deaf",
"hdd-o": "far-hdd",
header: "heading",
"heart-o": "far-heart",
"hospital-o": "far-hospital",
hotel: "bed",
"hourglass-1": "hourglass-start",
"hourglass-2": "hourglass-half",
"hourglass-3": "hourglass-end",
"hourglass-o": "far-hourglass",
houzz: "fab-houzz",
html5: "fab-html5",
"id-card-o": "far-id-card",
ils: "shekel-sign",
image: "far-image",
imdb: "fab-imdb",
inr: "rupee-sign",
instagram: "fab-instagram",
institution: "university",
"internet-explorer": "fab-internet-explorer",
intersex: "transgender",
ioxhost: "fab-ioxhost",
joomla: "fab-joomla",
jpy: "yen-sign",
jsfiddle: "fab-jsfiddle",
"keyboard-o": "far-keyboard",
krw: "won-sign",
lastfm: "fab-lastfm",
"lastfm-square": "fab-lastfm-square",
leanpub: "fab-leanpub",
legal: "gavel",
"lemon-o": "far-lemon",
"level-down": "level-down-alt",
"level-up": "level-up-alt",
"life-bouy": "far-life-ring",
"life-buoy": "far-life-ring",
"life-ring": "far-life-ring",
"life-saver": "far-life-ring",
"lightbulb-o": "far-lightbulb",
"line-chart": "chart-line",
linkedin: "fab-linkedin-in",
"linkedin-square": "fab-linkedin",
linode: "fab-linode",
linux: "fab-linux",
"list-alt": "far-list-alt",
"long-arrow-down": "long-arrow-alt-down",
"long-arrow-left": "long-arrow-alt-left",
"long-arrow-right": "long-arrow-alt-right",
"long-arrow-up": "long-arrow-alt-up",
"mail-forward": "share",
"mail-reply": "reply",
"mail-reply-all": "reply-all",
"map-marker": "map-marker-alt",
"map-o": "far-map",
maxcdn: "fab-maxcdn",
meanpath: "fab-font-awesome",
medium: "fab-medium",
meetup: "fab-meetup",
"meh-o": "far-meh",
"minus-square-o": "far-minus-square",
mixcloud: "fab-mixcloud",
mobile: "mobile-alt",
"mobile-phone": "mobile-alt",
modx: "fab-modx",
money: "far-money-bill-alt",
"moon-o": "far-moon",
"mortar-board": "graduation-cap",
navicon: "bars",
"newspaper-o": "far-newspaper",
"object-group": "far-object-group",
"object-ungroup": "far-object-ungroup",
odnoklassniki: "fab-odnoklassniki",
"odnoklassniki-square": "fab-odnoklassniki-square",
opencart: "fab-opencart",
openid: "fab-openid",
opera: "fab-opera",
"optin-monster": "fab-optin-monster",
pagelines: "fab-pagelines",
"paper-plane-o": "far-paper-plane",
paste: "far-clipboard",
"pause-circle-o": "far-pause-circle",
paypal: "fab-paypal",
pencil: "pencil-alt",
"pencil-square": "pen-square",
"pencil-square-o": "far-edit",
photo: "far-image",
"picture-o": "far-image",
"pie-chart": "chart-pie",
"pied-piper": "fab-pied-piper",
"pied-piper-alt": "fab-pied-piper-alt",
"pied-piper-pp": "fab-pied-piper-pp",
pinterest: "fab-pinterest",
"pinterest-p": "fab-pinterest-p",
"pinterest-square": "fab-pinterest-square",
"play-circle-o": "far-play-circle",
"plus-square-o": "far-plus-square",
"product-hunt": "fab-product-hunt",
qq: "fab-qq",
"question-circle-o": "far-question-circle",
quora: "fab-quora",
ra: "fab-rebel",
ravelry: "fab-ravelry",
rebel: "fab-rebel",
reddit: "fab-reddit",
"reddit-alien": "fab-reddit-alien",
"reddit-square": "fab-reddit-square",
refresh: "sync",
registered: "far-registered",
remove: "times",
renren: "fab-renren",
reorder: "bars",
repeat: "redo",
resistance: "fab-rebel",
rmb: "yen-sign",
"rotate-left": "undo",
"rotate-right": "redo",
rouble: "ruble-sign",
rub: "ruble-sign",
ruble: "ruble-sign",
rupee: "rupee-sign",
s15: "bath",
safari: "fab-safari",
scissors: "cut",
scribd: "fab-scribd",
sellsy: "fab-sellsy",
send: "paper-plane",
"send-o": "far-paper-plane",
"share-square-o": "far-share-square",
shekel: "shekel-sign",
sheqel: "shekel-sign",
shield: "shield-alt",
shirtsinbulk: "fab-shirtsinbulk",
"sign-in": "sign-in-alt",
"sign-out": "sign-out-alt",
signing: "sign-language",
simplybuilt: "fab-simplybuilt",
skyatlas: "fab-skyatlas",
skype: "fab-skype",
slack: "fab-slack",
sliders: "sliders-h",
slideshare: "fab-slideshare",
"smile-o": "far-smile",
snapchat: "fab-snapchat",
"snapchat-ghost": "fab-snapchat-ghost",
"snapchat-square": "fab-snapchat-square",
"snowflake-o": "far-snowflake",
"soccer-ball-o": "far-futbol",
"sort-alpha-asc": "sort-alpha-down",
"sort-alpha-desc": "sort-alpha-up",
"sort-amount-asc": "sort-amount-down",
"sort-amount-desc": "sort-amount-up",
"sort-asc": "sort-up",
"sort-desc": "sort-down",
"sort-numeric-asc": "sort-numeric-down",
"sort-numeric-desc": "sort-numeric-up",
soundcloud: "fab-soundcloud",
spoon: "utensil-spoon",
spotify: "fab-spotify",
"square-o": "far-square",
"stack-exchange": "fab-stack-exchange",
"stack-overflow": "fab-stack-overflow",
"star-half-empty": "far-star-half",
"star-half-full": "far-star-half",
"star-half-o": "far-star-half",
"star-o": "far-star",
steam: "fab-steam",
"steam-square": "fab-steam-square",
"sticky-note-o": "far-sticky-note",
"stop-circle-o": "far-stop-circle",
stumbleupon: "fab-stumbleupon",
"stumbleupon-circle": "fab-stumbleupon-circle",
"sun-o": "far-sun",
superpowers: "fab-superpowers",
support: "far-life-ring",
tablet: "tablet-alt",
tachometer: "tachometer-alt",
telegram: "fab-telegram",
television: "tv",
"tencent-weibo": "fab-tencent-weibo",
themeisle: "fab-themeisle",
thermometer: "thermometer-full",
"thermometer-0": "thermometer-empty",
"thermometer-1": "thermometer-quarter",
"thermometer-2": "thermometer-half",
"thermometer-3": "thermometer-three-quarters",
"thermometer-4": "thermometer-full",
"thumb-tack": "thumbtack",
"thumbs-o-down": "far-thumbs-down",
"thumbs-o-up": "far-thumbs-up",
ticket: "ticket-alt",
"times-circle-o": "far-times-circle",
"times-rectangle": "window-close",
"times-rectangle-o": "far-window-close",
"toggle-down": "far-caret-square-down",
"toggle-left": "far-caret-square-left",
"toggle-right": "far-caret-square-right",
"toggle-up": "far-caret-square-up",
trash: "trash-alt",
"trash-o": "far-trash-alt",
trello: "fab-trello",
tripadvisor: "fab-tripadvisor",
try: "lira-sign",
tumblr: "fab-tumblr",
"tumblr-square": "fab-tumblr-square",
"turkish-lira": "lira-sign",
twitch: "fab-twitch",
twitter: "fab-twitter",
"twitter-square": "fab-twitter-square",
unsorted: "sort",
usb: "fab-usb",
usd: "dollar-sign",
"user-circle-o": "far-user-circle",
"user-o": "far-user",
vcard: "address-card",
"vcard-o": "far-address-card",
viacoin: "fab-viacoin",
viadeo: "fab-viadeo",
"viadeo-square": "fab-viadeo-square",
"video-camera": "video",
vimeo: "fab-vimeo-v",
"vimeo-square": "fab-vimeo-square",
vine: "fab-vine",
vk: "fab-vk",
"volume-control-phone": "phone-volume",
warning: "exclamation-triangle",
wechat: "fab-weixin",
weibo: "fab-weibo",
weixin: "fab-weixin",
whatsapp: "fab-whatsapp",
"wheelchair-alt": "fab-accessible-icon",
"wikipedia-w": "fab-wikipedia-w",
"window-close-o": "far-window-close",
"window-maximize": "far-window-maximize",
"window-restore": "far-window-restore",
windows: "fab-windows",
won: "won-sign",
wordpress: "fab-wordpress",
wpbeginner: "fab-wpbeginner",
wpexplorer: "fab-wpexplorer",
wpforms: "fab-wpforms",
xing: "fab-xing",
"xing-square": "fab-xing-square",
"y-combinator": "fab-y-combinator",
"y-combinator-square": "fab-hacker-news",
yahoo: "fab-yahoo",
yc: "fab-y-combinator",
"yc-square": "fab-hacker-news",
yelp: "fab-yelp",
yen: "yen-sign",
yoast: "fab-yoast",
youtube: "fab-youtube",
"youtube-play": "fab-youtube",
"youtube-square": "fab-youtube-square"
};
export function replaceIcon(source, destination) {
REPLACEMENTS[source] = destination;
}
@ -59,6 +527,15 @@ export function iconNode(id, params) {
return renderIcon("node", id, params);
}
export function convertIconClass(icon) {
return icon
.replace("far fa-", "far-")
.replace("fab fa-", "fab-")
.replace("fas fa-", "")
.replace("fa-", "")
.trim();
}
// TODO: Improve how helpers are registered for vdom compliation
if (typeof Discourse !== "undefined") {
Discourse.__widget_helpers.iconNode = iconNode;
@ -68,58 +545,110 @@ export function registerIconRenderer(renderer) {
_renderers.unshift(renderer);
}
// Support for font awesome icons
function faClasses(icon, params) {
let classNames = `fa fa-${icon.replacementId || icon.id} d-icon d-icon-${
icon.id
}`;
function iconClasses(icon, params) {
// "notification." is invalid syntax for classes, use replacement instead
const dClass =
icon.replacementId && icon.id.indexOf("notification.") > -1
? icon.replacementId
: icon.id;
if (params) {
if (params.modifier) {
classNames += " fa-" + params.modifier;
}
if (params["class"]) {
classNames += " " + params["class"];
}
let classNames = `fa d-icon d-icon-${dClass} svg-icon`;
if (params && params["class"]) {
classNames += " " + params["class"];
}
return classNames;
}
function warnIfMissing(id) {
if (
typeof Discourse !== "undefined" &&
Discourse.Environment === "development" &&
Discourse.SvgIconList &&
Discourse.SvgIconList.indexOf(id) === -1
) {
console.warn(`The icon "${id}" is missing from the SVG subset.`); // eslint-disable-line no-console
}
}
function warnIfDeprecated(oldId, newId) {
if (
typeof Discourse !== "undefined" &&
Discourse.Environment === "development" &&
!Ember.testing
) {
deprecated(`Icon "${oldId}" is now "${newId}".`);
}
}
function handleIconId(icon) {
let id = icon.replacementId || icon.id || "";
if (fa4Replacements.hasOwnProperty(id)) {
warnIfDeprecated(id, fa4Replacements[id]);
id = fa4Replacements[id];
}
// TODO: clean up "thumbtack unpinned" at source instead of here
id = id.replace(" unpinned", "");
warnIfMissing(id);
return id;
}
// default resolver is font awesome
registerIconRenderer({
name: "font-awesome",
string(icon, params) {
let tagName = params.tagName || "i";
let html = `<${tagName} class='${faClasses(icon, params)}'`;
if (params.title) {
html += ` title='${I18n.t(params.title).replace(/'/g, "&#39;")}'`;
}
const id = handleIconId(icon);
let html = `<svg class='${iconClasses(icon, params)} svg-string'`;
if (params.label) {
html += " aria-hidden='true'";
}
html += `></${tagName}>`;
html += ` xmlns="${SVG_NAMESPACE}"><use xlink:href="#${id}" /></svg>`;
if (params.label) {
html += `<span class='sr-only'>${params.label}</span>`;
}
if (params.title) {
html = `<span class="svg-icon-title" title='${I18n.t(
params.title
).replace(/'/g, "&#39;")}'>${html}</span>`;
}
return html;
},
node(icon, params) {
let tagName = params.tagName || "i";
const id = handleIconId(icon);
const classes = iconClasses(icon, params) + " svg-node";
const properties = {
className: faClasses(icon, params),
attributes: { "aria-hidden": true }
};
const svg = h(
"svg",
{
attributes: { class: classes, "aria-hidden": true },
namespace: SVG_NAMESPACE
},
[
h("use", {
"xlink:href": attributeHook("http://www.w3.org/1999/xlink", `#${id}`),
namespace: SVG_NAMESPACE
})
]
);
if (params.title) {
properties.attributes.title = params.title;
}
if (params.label) {
return h(tagName, properties, h("span.sr-only", I18n.t(params.label)));
return h(
"span",
{
title: params.title,
attributes: { class: "svg-icon-title" }
},
[svg]
);
} else {
return h(tagName, properties);
return svg;
}
}
});

View File

@ -2,19 +2,15 @@ import computed from "ember-addons/ember-computed-decorators";
export default Ember.Component.extend({
tagName: "li",
classNameBindings: ["topicStatusIcon"],
@computed("topic.pinned", "topic.closed", "topic.archived")
topicStatusIcon(pinned, closed, archived) {
if (pinned) {
return "topic-pinned";
return "thumbtack";
}
if (closed) {
return "topic-closed";
if (closed || archived) {
return "lock";
}
if (archived) {
return "topic-archived";
}
return "topic-open";
return "far-file-alt";
}
});

View File

@ -22,6 +22,7 @@ import { applyInlineOneboxes } from "pretty-text/inline-oneboxer";
import { ajax } from "discourse/lib/ajax";
import InputValidation from "discourse/models/input-validation";
import { findRawTemplate } from "discourse/lib/raw-templates";
import { iconHTML } from "discourse-common/lib/icon-library";
import {
tinyAvatar,
displayErrorForUpload,
@ -212,7 +213,9 @@ export default Ember.Component.extend({
reason = I18n.t("composer.error.post_length", { min: minimumPostLength });
const tl = Discourse.User.currentProp("trust_level");
if (tl === 0 || tl === 1) {
reason += "<br/>" + I18n.t("composer.error.try_like");
reason +=
"<br/>" +
I18n.t("composer.error.try_like", { heart: iconHTML("heart") });
}
}

View File

@ -1,5 +1,8 @@
import computed from "ember-addons/ember-computed-decorators";
import { observes } from "ember-addons/ember-computed-decorators";
import { escapeExpression } from "discourse/lib/utilities";
import { convertIconClass } from "discourse-common/lib/icon-library";
import { ajax } from "discourse/lib/ajax";
export default Ember.Component.extend({
classNames: ["group-flair-inputs"],
@ -11,7 +14,36 @@ export default Ember.Component.extend({
@computed("model.flair_url")
flairPreviewIcon(flairURL) {
return flairURL && flairURL.substr(0, 3) === "fa-";
return flairURL && /fa(r|b?)-/.test(flairURL);
},
@computed("model.flair_url", "flairPreviewIcon")
flairPreviewIconUrl(flairURL, flairPreviewIcon) {
return flairPreviewIcon ? convertIconClass(flairURL) : "";
},
@observes("model.flair_url")
_loadSVGIcon() {
Ember.run.debounce(this, this._loadIcon, 1000);
},
_loadIcon() {
const icon = convertIconClass(this.get("model.flair_url")),
c = "#svg-sprites",
h = "ajax-icon-holder",
singleIconEl = `${c} .${h}`;
if (!icon) return;
if (!$(`${c} symbol#${icon}`).length) {
ajax(`/svg-sprite/search/${icon}`).then(function(data) {
if ($(singleIconEl).length === 0) $(c).append(`<div class="${h}">`);
$(singleIconEl).html(
`<svg xmlns='http://www.w3.org/2000/svg' style='display: none;'>${data}</svg>`
);
});
}
},
@computed("model.flair_url", "flairPreviewIcon")

View File

@ -17,7 +17,7 @@ export default Ember.Component.extend(
click(e) {
// only pin unpin for now
if (this.get("canAct") && $(e.target).hasClass("d-icon-thumb-tack")) {
if (this.get("canAct") && $(e.target).hasClass("d-icon-thumbtack")) {
const topic = this.get("topic");
topic.get("pinned") ? topic.clearPin() : topic.rePin();
}
@ -58,10 +58,10 @@ export default Ember.Component.extend(
renderIconIf("topic.archived", "lock", "archived");
}
renderIconIf("topic.pinned", "thumb-tack", "pinned", this.get("canAct"));
renderIconIf("topic.pinned", "thumbtack", "pinned", this.get("canAct"));
renderIconIf(
"topic.unpinned",
"thumb-tack",
"thumbtack",
"unpinned",
this.get("canAct")
);

View File

@ -186,15 +186,6 @@ export default Ember.Controller.extend({
);
},
@computed("model.whisper", "model.unlistTopic")
whisperOrUnlistTopicText(whisper, unlistTopic) {
if (whisper) {
return I18n.t("composer.whisper");
} else if (unlistTopic) {
return I18n.t("composer.unlist");
}
},
@computed
isStaffUser() {
const currentUser = this.currentUser;

View File

@ -196,7 +196,7 @@ export default Ember.Controller.extend({
@computed("expanded")
searchAdvancedIcon(expanded) {
return iconHTML(expanded ? "caret-down fa-fw" : "caret-right fa-fw");
return iconHTML(expanded ? "caret-down" : "caret-right");
},
@computed("page")

View File

@ -4,6 +4,7 @@ import computed from "ember-addons/ember-computed-decorators";
import { propertyGreaterThan, propertyLessThan } from "discourse/lib/computed";
import { on, observes } from "ember-addons/ember-computed-decorators";
import { sanitizeAsync } from "discourse/lib/text";
import { iconHTML } from "discourse-common/lib/icon-library";
function customTagArray(fieldName) {
return function() {
@ -44,6 +45,7 @@ export default Ember.Controller.extend(ModalFunctionality, {
"post.revisions.controls.comparing_previous_to_current_out_of_total",
{
previous,
icon: iconHTML("arrows-alt-h"),
current,
total
}

View File

@ -206,7 +206,7 @@ export default Ember.Controller.extend(ModalFunctionality, {
this.set("inviteIcon", "envelope");
return I18n.t("topic.invite_reply.to_topic_email");
} else {
this.set("inviteIcon", "hand-o-right");
this.set("inviteIcon", "hand-point-right");
return I18n.t("topic.invite_reply.to_topic_username");
}
}

View File

@ -1,14 +1,15 @@
import { htmlHelper } from "discourse-common/lib/helpers";
import { iconHTML } from "discourse-common/lib/icon-library";
import { iconHTML, convertIconClass } from "discourse-common/lib/icon-library";
export default htmlHelper(function({ icon, image }) {
if (!Ember.isEmpty(image)) {
return `<img src='${image}'>`;
}
if (Ember.isEmpty(icon) || icon.indexOf("fa-") !== 0) {
if (Ember.isEmpty(icon) || icon.indexOf("fa-") < 0) {
return "";
}
return iconHTML(icon.replace("fa-", ""));
icon = convertIconClass(icon);
return iconHTML(icon);
});

View File

@ -6,7 +6,7 @@ export default {
initialize: function() {
Sharing.addSource({
id: "twitter",
icon: "twitter-square",
icon: "fab-twitter-square",
generateUrl: function(link, title) {
return (
"http://twitter.com/intent/tweet?url=" +
@ -22,7 +22,7 @@ export default {
Sharing.addSource({
id: "facebook",
icon: "facebook-square",
icon: "fab-facebook-square",
title: I18n.t("share.facebook"),
generateUrl: function(link, title) {
return (
@ -37,7 +37,7 @@ export default {
Sharing.addSource({
id: "google+",
icon: "google-plus-square",
icon: "fab-google-plus-square",
title: I18n.t("share.google+"),
generateUrl: function(link) {
return "https://plus.google.com/share?url=" + encodeURIComponent(link);

View File

@ -1,5 +1,6 @@
import loadScript from "discourse/lib/load-script";
import { escapeExpression } from "discourse/lib/utilities";
import { renderIcon } from "discourse-common/lib/icon-library";
export default function($elem) {
if (!$elem) {
@ -57,6 +58,7 @@ export default function($elem) {
'<a class="image-source-link" href="' +
href +
'">' +
renderIcon("string", "download") +
I18n.t("lightbox.download") +
"</a>"
);

View File

@ -1,4 +1,5 @@
import { h } from "virtual-dom";
import { renderIcon } from "discourse-common/lib/icon-library";
const _decorators = [];
@ -35,12 +36,13 @@ export default function renderTopicFeaturedLink(topic) {
if (meta) {
return `<a class="topic-featured-link" rel="${meta.rel}" target="${
meta.target
}" href="${meta.href}">${meta.domain}</a>`;
}" href="${meta.href}">${renderIcon("string", "external-link-alt")} ${
meta.domain
}</a>`;
} else {
return "";
}
}
export function topicFeaturedLinkNode(topic) {
const meta = extractLinkMeta(topic);
if (meta) {
@ -49,7 +51,7 @@ export function topicFeaturedLinkNode(topic) {
{
attributes: { href: meta.href, rel: meta.rel, target: meta.target }
},
meta.domain
[renderIcon("node", "external-link-alt"), meta.domain]
);
}
}

View File

@ -0,0 +1,21 @@
import loadScript from "discourse/lib/load-script";
export default {
name: "svg-sprite-loader",
load(spritePath, spriteName) {
const c = "svg-sprites";
const $cEl = `#${c}`;
const $spriteEl = `${$cEl} .${spriteName}`;
if ($($cEl).length === 0) $("body").append(`<div id="${c}">`);
if ($($spriteEl).length === 0)
$($cEl).append(`<div class="${spriteName}">`);
loadScript(spritePath).then(() => {
$($spriteEl).html(window.__svg_sprite);
// we got to clean up here... this is one giant string
delete window.__svg_sprite;
});
}
};

View File

@ -1,5 +1,6 @@
import computed from "ember-addons/ember-computed-decorators";
import UserBadge from "discourse/models/user-badge";
import { convertIconClass } from "discourse-common/lib/icon-library";
export default Ember.Mixin.create({
@computed("allBadges.[]", "userBadges.[]")
@ -17,6 +18,12 @@ export default Ember.Mixin.create({
(!granted[badge.get("id")] || badge.get("multiple_grant"))
);
})
.map(badge => {
if (badge.icon) {
badge.icon = convertIconClass(badge.icon);
}
return badge;
})
.sort((a, b) => a.get("name").localeCompare(b.get("name")));
},

View File

@ -382,8 +382,11 @@ const Composer = RestModel.extend({
return this.get("titleLength") <= this.siteSettings.max_topic_title_length;
}.property("minimumTitleLength", "titleLength", "post.static_doc"),
@computed("action")
saveIcon(action) {
@computed("action", "whisper")
saveIcon(action, whisper) {
if (whisper) {
return "eye-slash";
}
return SAVE_ICONS[action];
},

View File

@ -93,6 +93,11 @@ export function findAll(siteSettings, capabilities, isMobileDevice) {
methods.forEach(m => m.set("full_screen_login", true));
}
// exclude FA icon for Google, uses custom SVG
methods.forEach(m =>
m.set("hasRegularIcon", m.get("name") === "google_oauth2" ? false : true)
);
return methods;
}

View File

@ -0,0 +1,11 @@
import svgSpriteLoader from "discourse/lib/svg-sprite-loader";
export default {
name: "svg-sprite-fontawesome",
initialize() {
if (Discourse && Discourse.SvgSpritePath) {
svgSpriteLoader.load(Discourse.SvgSpritePath, "fontawesome");
}
}
};

View File

@ -45,15 +45,15 @@ export default Ember.Object.extend({
}
if (topic.get("pinned")) {
results.push({ icon: "thumb-tack", key: "pinned" });
results.push({ icon: "thumbtack", key: "pinned" });
}
if (topic.get("unpinned")) {
results.push({ icon: "thumb-tack unpinned", key: "unpinned" });
results.push({ icon: "thumbtack", key: "unpinned" });
}
if (topic.get("invisible")) {
results.push({ icon: "eye-slash", key: "invisible" });
results.push({ icon: "eye-slash" });
}
results.forEach(result => {
@ -74,7 +74,6 @@ export default Ember.Object.extend({
if (results.length === 0 && defaultIcon) {
this.set("showDefault", defaultIcon);
}
return results;
}
});

View File

@ -1,3 +1,5 @@
{{d-icon topicStatusIcon}}
<a class='title' href="{{unbound topic.lastUnreadUrl}}">
{{text-overflow class="overflow" text=topic.fancyTitle}}
</a>

View File

@ -1 +1,5 @@
{{#each colors as |c|}}{{color-picker-choice color=c usedColors=usedColors selectColor="selectColor"}}{{/each}}
{{#each colors as |c|}}
{{#color-picker-choice color=c usedColors=usedColors selectColor="selectColor"}}
{{d-icon 'check'}}
{{/color-picker-choice}}
{{/each}}

View File

@ -1,5 +1,5 @@
{{d-icon icon modifier="stack-2x"}}
{{d-icon icon class="fa-stack-1x"}}
{{#if disabled}}
{{d-icon "ban" modifier="stack-2x"}}
{{d-icon "ban" class="fa-stack-2x"}}
{{/if}}

View File

@ -5,6 +5,9 @@
class="input-xxlarge"
value=model.flair_url
placeholderKey="groups.flair_url_placeholder"}}
<div class="control-instructions">
{{i18n 'groups.flair_url_description'}}
</div>
</div>
<div class='control-group'>
@ -39,7 +42,7 @@
<div class="avatar-flair demo {{flairPreviewClasses}}" style={{flairPreviewStyle}}></div>
{{else}}
<div class="avatar-flair demo {{flairPreviewClasses}}" style={{flairPreviewStyle}}>
<i class="fa {{model.flair_url}}"></i>
{{d-icon flairPreviewIconUrl}}
</div>
{{/if}}
</div>

View File

@ -1,5 +1,12 @@
{{#each buttons as |b|}}
<button class="btn btn-social {{b.name}}" {{action "externalLogin" b}}>{{b.title}}</button>
<button class="btn btn-social {{b.name}}" {{action "externalLogin" b}}>
{{#if b.hasRegularIcon}}
{{d-icon b.name}}
{{else}}
<svg class="fa d-icon d-icon-custom-google-oauth2 svg-icon" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 48 48"><defs><path id="a" d="M44.5 20H24v8.5h11.8C34.7 33.9 30.1 37 24 37c-7.2 0-13-5.8-13-13s5.8-13 13-13c3.1 0 5.9 1.1 8.1 2.9l6.4-6.4C34.6 4.1 29.6 2 24 2 11.8 2 2 11.8 2 24s9.8 22 22 22c11 0 21-8 21-22 0-1.3-.2-2.7-.5-4z"/></defs><clipPath id="b"><use xlink:href="#a" overflow="visible"/></clipPath><path clip-path="url(#b)" fill="#FBBC05" d="M0 37V11l17 13z"/><path clip-path="url(#b)" fill="#EA4335" d="M0 11l17 13 7-6.1L48 14V0H0z"/><path clip-path="url(#b)" fill="#34A853" d="M0 37l30-23 7.9 1L48 0v48H0z"/><path clip-path="url(#b)" fill="#4285F4" d="M48 48L17 24l-4-3 35-10z"/></svg>
{{/if}}
{{b.title}}
</button>
{{/each}}
{{#if showLoginWithEmailLink}}
@ -7,6 +14,6 @@
action="emailLogin"
label="email_login.button_label"
disabled=processingEmailLink
icon="envelope-o"
icon="far-envelope"
class="login-with-email-button"}}
{{/if}}

View File

@ -1,7 +1,9 @@
{{#if showNotificationPromptBanner}}
<div class="row">
<div class="consent_banner alert alert-info">
<div class="close" {{action "dismiss"}}><i class="fa fa-times d-icon d-icon-times"></i></div>
<div class="close" {{action "dismiss"}}>
{{d-icon 'times'}}
</div>
{{i18n 'user.desktop_notifications.consent_prompt'}} <a {{action "turnon"}}>{{i18n 'user.desktop_notifications.enable'}}</a>.
</div>
</div>

View File

@ -19,8 +19,11 @@
{{composer-action-title model=model canWhisper=canWhisper tabindex=8}}
{{#unless site.mobileView}}
{{#if whisperOrUnlistTopicText}}
<span class='whisper'>({{whisperOrUnlistTopicText}})</span>
{{#if model.whisper}}
<span class='whisper'>{{d-icon 'eye-slash'}}</span>
{{/if}}
{{#if model.unlistTopic}}
<span class='whisper'>({{i18n 'composer.unlist'}})</span>
{{/if}}
{{#if model.noBump}}
<span class="no-bump">{{d-icon "anchor"}}</span>

View File

@ -5,7 +5,7 @@
{{~#if status.href ~}}
<a href='{{status.href}}' title='{{status.title}}' class='topic-status {{status.extraClasses}}'>{{d-icon status.icon}}</a>
{{~else ~}}
<{{status.openTag}} title='{{status.title}}' class='topic-status'>{{d-icon status.icon}}</{{status.closeTag}}>
<{{status.openTag}} title='{{status.title}}' class='topic-status'>{{d-icon status.icon class=status.key}}</{{status.closeTag}}>
{{~/if ~}}
{{~/each}}
{{~#if view.showDefault~}}{{d-icon view.showDefault}}{{~/if ~}}

View File

@ -14,7 +14,7 @@
{{#each options.emails as |email|}}
<li>
<a href title="{{email.username}}">
<i class='fa fa-envelope'></i>
{{d-icon 'envelope'}}
<span class='username'>{{format-username email.username}}</span>
</a>
</li>

View File

@ -26,7 +26,7 @@
{{#if group.has_messages}}
<li>
{{#link-to 'userPrivateMessages.group' group.name}}
{{d-icon "group" class="glyph"}}
{{d-icon "users"}}
{{capitalize-string group.name}}
{{/link-to}}
</li>

View File

@ -1,5 +1,5 @@
import { createWidget } from "discourse/widgets/widget";
import { h } from "virtual-dom";
import { iconNode, convertIconClass } from "discourse-common/lib/icon-library";
createWidget("avatar-flair", {
tagName: "div.avatar-flair",
@ -7,7 +7,7 @@ createWidget("avatar-flair", {
isIcon(attrs) {
return (
attrs.primary_group_flair_url &&
attrs.primary_group_flair_url.substr(0, 3) === "fa-"
attrs.primary_group_flair_url.includes("fa-")
);
},
@ -52,20 +52,8 @@ createWidget("avatar-flair", {
html(attrs) {
if (this.isIcon(attrs)) {
return [
h("i", {
className: "fa " + attrs.primary_group_flair_url,
attributes: {
style: attrs.primary_group_flair_color
? "color: #" +
Handlebars.Utils.escapeExpression(
attrs.primary_group_flair_color
) +
"; "
: ""
}
})
];
const icon = convertIconClass(attrs.primary_group_flair_url);
return [iconNode(icon)];
} else {
return [];
}

View File

@ -37,15 +37,15 @@ const icons = {
"autoclosed.disabled": "unlock-alt",
"archived.enabled": "folder",
"archived.disabled": "folder-open",
"pinned.enabled": "thumb-tack",
"pinned.disabled": "thumb-tack unpinned",
"pinned_globally.enabled": "thumb-tack",
"pinned_globally.disabled": "thumb-tack unpinned",
"banner.enabled": "thumb-tack",
"banner.disabled": "thumb-tack unpinned",
"visible.enabled": "eye",
"visible.disabled": "eye-slash",
split_topic: "sign-out",
"pinned.enabled": "thumbtack",
"pinned.disabled": "thumbtack unpinned",
"pinned_globally.enabled": "thumbtack",
"pinned_globally.disabled": "thumbtack unpinned",
"banner.enabled": "thumbtack",
"banner.disabled": "thumbtack unpinned",
"visible.enabled": "far-eye",
"visible.disabled": "far-eye-slash",
split_topic: "sign-out-alt",
invited_user: "plus-circle",
invited_group: "plus-circle",
user_left: "minus-circle",
@ -53,7 +53,7 @@ const icons = {
removed_group: "minus-circle",
public_topic: "comment",
private_topic: "envelope",
autobumped: "hand-o-right"
autobumped: "hand-point-right"
};
export function addPostSmallActionIcon(key, icon) {

View File

@ -1,6 +1,5 @@
import { createWidget } from "discourse/widgets/widget";
import { h } from "virtual-dom";
import { iconNode } from "discourse-common/lib/icon-library";
function description(attrs) {
const daysSince = attrs.daysSince;
@ -21,7 +20,7 @@ export default createWidget("time-gap", {
html(attrs) {
return [
h("div.topic-avatar", iconNode("fw")),
h("div.topic-avatar", ""),
h("div.small-action-desc.timegap", description(attrs))
];
}

View File

@ -196,7 +196,7 @@ export default createWidget("topic-admin-menu", {
className: "topic-admin-pin",
buttonClass: "btn-default",
action: "showFeatureTopic",
icon: "thumb-tack",
icon: "thumbtack",
label: featured ? "actions.unpin" : "actions.pin"
});
}

View File

@ -37,8 +37,8 @@ export default createWidget("topic-status", {
renderIconIf("archived", "lock", "archived");
}
renderIconIf("pinned", "thumb-tack", "pinned");
renderIconIf("unpinned", "thumb-tack", "unpinned");
renderIconIf("pinned", "thumbtack", "pinned");
renderIconIf("unpinned", "thumbtack", "unpinned");
renderIconIf("invisible", "eye-slash", "invisible");
return result;

View File

@ -34,6 +34,11 @@
}
Discourse.HighlightJSPath = setupData.highlightJsPath;
Discourse.SvgSpritePath = setupData.svgSpritePath;
if (Discourse.Environment === "development") {
Discourse.SvgIconList = setupData.svgIconList;
}
if (setupData.s3BaseUrl) {
Discourse.S3CDN = setupData.s3Cdn;

View File

@ -3,6 +3,7 @@ import TagsMixin from "select-kit/mixins/tags";
import { default as computed } from "ember-addons/ember-computed-decorators";
import renderTag from "discourse/lib/render-tag";
import { escapeExpression } from "discourse/lib/utilities";
import { iconHTML } from "discourse-common/lib/icon-library";
const { get, isEmpty, run, makeArray } = Ember;
export default ComboBox.extend(TagsMixin, {
@ -52,7 +53,7 @@ export default ComboBox.extend(TagsMixin, {
"mousedown touchstart",
".selected-tag",
event => {
const $button = $(event.target);
const $button = $(event.target).closest(".selected-tag");
this._destroyEvent(event);
this.destroyTags(this.computeContentItem($button.attr("data-value")));
}
@ -67,7 +68,7 @@ export default ComboBox.extend(TagsMixin, {
@computed("hasReachedMaximum")
caretIcon(hasReachedMaximum) {
return hasReachedMaximum ? null : "plus fa-fw";
return hasReachedMaximum ? null : "plus";
},
@computed("tags")
@ -125,7 +126,7 @@ export default ComboBox.extend(TagsMixin, {
<button aria-label="${tag}" title="${tag}" class="selected-tag ${
isHighlighted ? "is-highlighted" : ""
}" data-value="${tag}">
${tag}
${tag} ${iconHTML("times")}
</button>
`;
});

View File

@ -20,7 +20,7 @@ export default DropdownSelectBoxComponent.extend({
content.label = `${title}${iconHTML("caret-down")}`.htmlSafe();
content.title = title;
content.name = state;
content.icon = `thumb-tack${state === "unpinned" ? " unpinned" : ""}`;
content.icon = `thumbtack${state === "unpinned" ? " unpinned" : ""}`;
return content;
},
@ -33,12 +33,12 @@ export default DropdownSelectBoxComponent.extend({
id: "pinned",
name: I18n.t("topic_statuses.pinned" + globally + ".title"),
description: I18n.t("topic_statuses.pinned" + globally + ".help"),
icon: "thumb-tack"
icon: "thumbtack"
},
{
id: "unpinned",
name: I18n.t("topic_statuses.unpinned.title"),
icon: "thumb-tack unpinned",
icon: "thumbtack unpinned",
description: I18n.t("topic_statuses.unpinned.help")
}
]);

View File

@ -2,4 +2,4 @@
{{{label}}}
</span>
{{d-icon caretIcon class="caret-icon fa-fw"}}
{{d-icon caretIcon class="caret-icon"}}

View File

@ -14,4 +14,4 @@
</button>
{{/if}}
{{d-icon caretIcon class="caret-icon fa-fw"}}
{{d-icon caretIcon class="caret-icon"}}

View File

@ -24,4 +24,4 @@
</button>
{{/if}}
{{d-icon caretIcon class="caret-icon fa-fw"}}
{{d-icon caretIcon class="caret-icon"}}

View File

@ -1,3 +1,4 @@
<div class="body">
{{badge}}
{{d-icon 'times'}}
</div>

View File

@ -8,6 +8,7 @@
{{{label}}}
{{/if}}
</span>
{{d-icon 'times'}}
</div>
{{#if footerContent}}<div class="footer">{{footerContent}}</div>{{/if}}

View File

@ -6,4 +6,4 @@
{{/if}}
</span>
{{d-icon caretIcon class="caret-icon fa-fw"}}
{{d-icon caretIcon class="caret-icon"}}

View File

@ -1,5 +1,4 @@
@import "vendor/normalize";
@import "vendor/font_awesome/font-awesome";
@import "vendor/pikaday";
@import "common/foundation/helpers";
@import "common/foundation/base";

View File

@ -61,7 +61,7 @@
&.no-change {
color: $primary-medium;
i {
.d-icon {
display: none;
}
}
@ -96,9 +96,9 @@
.d-icon {
color: currentColor;
margin-bottom: 0.25em;
font-size: $font-up-5;
display: block;
margin: 0.25em auto;
}
&.no-data,

View File

@ -47,7 +47,7 @@
text-align: center;
}
i {
.d-icon {
margin: 0;
}
}
@ -65,13 +65,13 @@
&.high-trending-up,
&.trending-up {
i {
.d-icon {
color: $success;
}
}
&.high-trending-down,
&.trending-down {
i {
.d-icon {
color: $danger;
}
}

View File

@ -154,37 +154,37 @@
td.value {
font-weight: bold;
text-align: center;
i {
.d-icon {
display: none;
}
&.high-trending-up,
&.trending-up {
i.up {
.up {
color: $success;
display: inline;
}
}
&.high-trending-down,
&.trending-down {
i.down {
.down {
color: $danger;
display: inline;
}
}
&.no-change {
i.down {
.down {
display: inline;
visibility: hidden;
}
}
}
tr.reverse-colors {
td.value.high-trending-down i.down,
td.value.trending-down i.down {
td.value.high-trending-down .down,
td.value.trending-down .down {
color: $success;
}
td.value.high-trending-up i.up,
td.value.trending-up i.up {
td.value.high-trending-up .up,
td.value.trending-up .up {
color: $danger;
}
}

View File

@ -201,7 +201,7 @@
.label {
font-weight: bold;
}
i {
.d-icon {
margin-left: 6px;
}
}

View File

@ -251,8 +251,8 @@ ol.category-breadcrumb {
}
}
.d-icon-thumb-tack.unpinned {
@include fa-icon-rotate(180deg, 1);
.d-icon-thumbtack.unpinned {
@include fa-rotate(180deg, 1);
color: $primary;
/* because it is rotated, right becomes left! */
padding-left: 3px;

View File

@ -175,26 +175,18 @@
margin: 0;
}
li {
padding: 0;
margin-left: 1.5em;
padding: 4px 0;
display: flex;
.overflow {
max-height: 3em;
overflow: hidden;
text-overflow: ellipsis;
}
}
li:before {
content: "\f0f6";
font-family: "FontAwesome";
float: left;
margin-left: -1.5em;
}
li.topic-pinned:before {
content: "\f08d";
}
li.topic-closed:before,
li.topic-archived:before {
content: "\f023";
.d-icon {
margin-right: 6px;
margin-top: 2px;
}
}
}
}

View File

@ -33,18 +33,14 @@
height: 1.2em;
padding: 0;
flex: 0 0 auto;
&.used-color:before {
position: absolute;
top: 0;
left: 0;
display: flex;
align-items: center;
justify-content: center;
font-family: fontawesome;
content: "\f00c";
height: 100%;
width: calc(1.25em - 2px);
color: rgba($secondary, 0.75);
color: white;
svg {
display: none;
}
&.used-color svg {
display: inline-flex;
opacity: 0.8;
max-width: 70%;
}
}
}

View File

@ -36,7 +36,7 @@
border-color: $secondary;
border-right-color: transparent;
}
i {
.d-icon {
color: $secondary;
}
}
@ -97,13 +97,19 @@
margin: 5px 0 10px 0;
display: flex;
align-items: center;
i {
.d-icon {
color: $primary-high;
}
.reply-details {
max-width: calc(100% - 175px);
flex: 1 1 auto;
display: flex;
align-items: center;
white-space: nowrap;
.d-icon {
opacity: 0.8;
}
}
.composer-action-title {
display: inline-flex;

View File

@ -143,18 +143,18 @@ img.emoji {
background: #7c533e;
}
.emoji-picker .diversity-picker .diversity-scale.selected i {
.emoji-picker .diversity-picker .diversity-scale.selected .d-icon {
display: block;
}
.emoji-picker .diversity-picker i {
.emoji-picker .diversity-picker .d-icon {
display: none;
}
.emoji-picker .diversity-picker .d-icon {
color: #fff;
font-size: $font-0;
text-shadow: 0.5px 1.5px 0 rgba(0, 0, 0, 0.3);
filter: drop-shadow(0.5px 1.5px 0 rgba(0, 0, 0, 0.3));
}
.emoji-picker button.emoji {
@ -182,10 +182,6 @@ img.emoji {
background-color: lighten($tertiary, 40%);
}
.wmd-emoji-button:before {
content: "\f118";
}
.emoji-picker-modal.fadeIn {
z-index: z("modal", "overlay");
position: fixed;

View File

@ -57,7 +57,7 @@
background-size: $size;
height: $size;
i {
.d-icon {
font-size: $size !important;
}
}
@ -86,7 +86,7 @@ table.group-manage-logs {
.group-manage-logs-expand-details {
cursor: pointer;
i {
.d-icon {
color: blend-primary-secondary(50%);
}
}
@ -117,7 +117,7 @@ table.group-members {
}
th.sortable {
i {
.d-icon {
margin-left: 5px;
}

View File

@ -50,7 +50,7 @@
}
td.group-user-status {
i {
.d-icon {
color: $primary;
}
}
@ -214,7 +214,7 @@
background-size: $size;
height: $size;
i {
.d-icon {
font-size: $size !important;
}
}

View File

@ -36,9 +36,14 @@
white-space: nowrap;
text-overflow: ellipsis;
&:before {
font-family: "FontAwesome";
content: "\F03E";
// ideally, the SVG used here should be in HTML and reference the SVG sprite
content: svg-uri(
'<svg xmlns="http://www.w3.org/2000/svg" width="14px" height="16px" viewBox="0 0 512 512" fill="#{$secondary}"><path d="M464 64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm-6 336H54a6 6 0 0 1-6-6V118a6 6 0 0 1 6-6h404a6 6 0 0 1 6 6v276a6 6 0 0 1-6 6zM128 152c-22.091 0-40 17.909-40 40s17.909 40 40 40 40-17.909 40-40-17.909-40-40-40zM96 352h320v-80l-87.515-87.515c-4.686-4.686-12.284-4.686-16.971 0L192 304l-39.515-39.515c-4.686-4.686-12.284-4.686-16.971 0L96 304v48z"/></svg>'
);
margin-right: 5px;
display: inline-block;
vertical-align: middle;
opacity: 0.8;
}
}
@ -51,11 +56,14 @@
.expand {
position: absolute;
bottom: 4px;
bottom: 2px;
right: 7px;
&:before {
font-family: "FontAwesome";
content: "\F065";
// ideally, the SVG used here should be in HTML and reference the SVG sprite
content: svg-uri(
'<svg xmlns="http://www.w3.org/2000/svg" width="14px" height="16px" viewBox="0 0 512 512" fill="#{$secondary}"> <path d="M0 180V56c0-13.3 10.7-24 24-24h124c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H64v84c0 6.6-5.4 12-12 12H12c-6.6 0-12-5.4-12-12zM288 44v40c0 6.6 5.4 12 12 12h84v84c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12V56c0-13.3-10.7-24-24-24H300c-6.6 0-12 5.4-12 12zm148 276h-40c-6.6 0-12 5.4-12 12v84h-84c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h124c13.3 0 24-10.7 24-24V332c0-6.6-5.4-12-12-12zM160 468v-40c0-6.6-5.4-12-12-12H64v-84c0-6.6-5.4-12-12-12H12c-6.6 0-12 5.4-12 12v124c0 13.3 10.7 24 24 24h124c6.6 0 12-5.4 12-12z"/></svg>'
);
opacity: 0.8;
}
}
}

View File

@ -499,9 +499,7 @@ button {
padding-right: 36px; // leave some space for counter at right side
// add the download icon
a.image-source-link:before {
content: "\f019";
font-family: FontAwesome;
a.image-source-link .d-icon {
padding-right: 5px;
}
}

View File

@ -153,7 +153,7 @@
// This is until other languages remove the HTML from within
// notifications. It can then be removed
div i.fa {
div .fa {
display: none;
}
@ -181,17 +181,14 @@
}
li:not(.show-all) {
padding: 0.25em 0.5em;
i {
.d-icon {
float: left;
margin-right: 5px;
padding-top: 2px;
}
}
.is-warning {
.d-icon-envelope-o {
&:before {
content: "\f0e0";
}
.d-icon-far-envelope {
color: $danger;
}
}

View File

@ -251,14 +251,15 @@ aside.onebox {
.instagram-video-icon {
&:before {
font-family: FontAwesome;
font-size: $font-up-5;
content: "\f144";
opacity: 0.8;
// ideally, the SVG used here should be in HTML and reference the SVG sprite
content: svg-uri(
'<svg xmlns="http://www.w3.org/2000/svg" width="32px" height="32px" viewBox="0 0 512 512" fill="white"><path d="M424.4 214.7L72.4 6.6C43.8-10.3 0 6.1 0 47.9V464c0 37.5 40.7 60.1 72.4 41.3l352-208c31.4-18.5 31.5-64.1 0-82.6z"></path></svg>'
);
}
bottom: 10px;
right: 10px;
position: absolute;
color: white;
}
.instagram-image {

View File

@ -114,7 +114,7 @@ $tag-color: $primary-medium;
display: inline-block;
font-size: $font-down-1;
}
.topic-featured-link {
.discourse-tags + .topic-featured-link {
margin-left: 8px;
}
}
@ -156,12 +156,14 @@ $tag-color: $primary-medium;
.discourse-tag.bullet {
margin-right: 0.25em;
&:before {
content: "\f04d";
font-family: FontAwesome;
color: $primary-low-mid;
background: $primary-low-mid;
margin-right: 5px;
font-size: $font-down-2;
position: relative;
width: 8px;
height: 8px;
display: inline-block;
vertical-align: middle;
content: "";
}
}

View File

@ -28,9 +28,6 @@
button {
width: 100%;
margin-bottom: 5px;
i {
width: 14px;
}
}
}

View File

@ -28,15 +28,20 @@
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
vertical-align: middle;
a {
vertical-align: middle;
color: dark-light-choose($primary-high, $secondary-low);
}
}
.fa {
font-size: $font-down-1;
margin-left: 3px;
color: dark-light-choose($primary-medium, $secondary-medium);
}
.svg-icon-title {
margin-left: 3px;
margin-right: 0px;
}
.new_user a,
.user-title,
.user-title a {
@ -630,7 +635,7 @@ blockquote > *:last-child {
padding: 0.7em 0;
border-top: none;
margin-right: 11px;
i {
.d-icon {
font-size: 2em;
width: 45px;
text-align: center;
@ -740,9 +745,10 @@ a.mention-group {
> * {
overflow: hidden;
vertical-align: middle;
}
> i.fa {
> .d-icon {
color: dark-light-choose($primary-medium, $secondary-medium);
margin-right: 6px;
font-size: $font-0;
@ -835,11 +841,6 @@ a.mention-group {
display: none;
}
}
.names {
span {
display: block;
}
}
.user-title {
float: left;
clear: left;

View File

@ -95,7 +95,7 @@ a.badge-category {
a.badge-category {
margin-top: 5px;
}
a.edit-topic i {
a.edit-topic .d-icon {
font-size: 0.8em;
}
.edit-topic-title {
@ -232,21 +232,21 @@ a.badge-category {
margin-left: 0.5em;
flex: 0 0 auto;
}
i {
.d-icon {
font-size: $font-down-2;
margin: 0 0.5em 0 0;
}
}
}
a.reply-new {
i {
.d-icon {
background: $secondary;
border-radius: 20px;
transition: all linear 0.15s;
}
&:hover {
color: $tertiary;
i {
.d-icon {
background: $tertiary-low;
}
}
@ -258,11 +258,7 @@ a.topic-featured-link {
text-transform: lowercase;
color: dark-light-choose($primary-medium, $secondary-medium);
font-size: 0.875rem;
&::before {
position: relative;
top: 0.1em;
padding-right: 3px;
font-family: FontAwesome;
content: "\f08e";
.d-icon {
margin-right: 3px;
}
}

View File

@ -19,10 +19,6 @@
}
.user-main {
.d-icon-heart {
color: $love !important;
}
.about {
overflow: hidden;
width: 100%;
@ -84,7 +80,7 @@
h1 {
font-size: $font-up-5;
font-weight: normal;
i {
.d-icon {
font-size: 0.8em;
}
}
@ -698,3 +694,7 @@
}
}
}
.user-summary-page .d-icon-heart {
color: $love;
}

View File

@ -159,7 +159,6 @@
}
&:before {
margin-right: 9px;
font-family: FontAwesome;
font-size: $font-0;
}
&.google,
@ -167,62 +166,28 @@
background: $google;
color: #333;
border: 1px solid $primary-low;
display: flex;
align-items: center;
justify-content: center;
&:before {
content: "";
display: inline-block;
width: 15px;
height: 15px;
// Background image url needs to be encoded for IE11
background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cdefs%3E%3Cpath%20id%3D%22a%22%20d%3D%22M44.5%2020H24v8.5h11.8C34.7%2033.9%2030.1%2037%2024%2037c-7.2%200-13-5.8-13-13s5.8-13%2013-13c3.1%200%205.9%201.1%208.1%202.9l6.4-6.4C34.6%204.1%2029.6%202%2024%202%2011.8%202%202%2011.8%202%2024s9.8%2022%2022%2022c11%200%2021-8%2021-22%200-1.3-.2-2.7-.5-4z%22%2F%3E%3C%2Fdefs%3E%3CclipPath%20id%3D%22b%22%3E%3Cuse%20xlink%3Ahref%3D%22%23a%22%20overflow%3D%22visible%22%2F%3E%3C%2FclipPath%3E%3Cpath%20clip-path%3D%22url(%23b)%22%20fill%3D%22%23FBBC05%22%20d%3D%22M0%2037V11l17%2013z%22%2F%3E%3Cpath%20clip-path%3D%22url(%23b)%22%20fill%3D%22%23EA4335%22%20d%3D%22M0%2011l17%2013%207-6.1L48%2014V0H0z%22%2F%3E%3Cpath%20clip-path%3D%22url(%23b)%22%20fill%3D%22%2334A853%22%20d%3D%22M0%2037l30-23%207.9%201L48%200v48H0z%22%2F%3E%3Cpath%20clip-path%3D%22url(%23b)%22%20fill%3D%22%234285F4%22%20d%3D%22M48%2048L17%2024l-4-3%2035-10z%22%2F%3E%3C%2Fsvg%3E");
background-repeat: no-repeat;
background-size: cover;
}
}
.mobile-view & {
// Special case because we're using SVG here
&.google,
&.google_oauth2 {
&:before {
width: 17px;
height: 17px;
}
// non-FA SVG icon for Google in login-buttons.hbs
.d-icon {
opacity: 0.9;
}
}
&.instagram {
background: $instagram;
&:before {
content: $fa-var-instagram;
}
}
&.facebook {
background: $facebook;
&:before {
content: $fa-var-facebook;
}
}
&.cas {
background: $cas;
}
&.twitter {
background: $twitter;
&:before {
content: $fa-var-twitter;
}
}
&.yahoo {
background: $yahoo;
&:before {
content: $fa-var-yahoo;
}
}
&.github {
background: $github;
&:before {
content: $fa-var-github;
}
}
}

View File

@ -0,0 +1,46 @@
.svg-icon,
.svg-icon-title {
height: 1em;
width: 1em;
line-height: 1;
display: inline-flex;
position: relative;
vertical-align: -0.125em;
fill: currentColor;
flex-shrink: 0; // Prevent the icon from shrinking if it's in a flexbox
overflow: visible;
&.d-icon-lock {
height: 0.9em;
width: 0.9em;
}
}
// Stacked Icons
// Usage:
// <span class="fa-stack">
// <svg class="... d-icon-icon1 fa-stack-1x ..." xmlns="http://www.w3.org/2000/svg"><use xlink:href="#icon1"></use></svg>
// <svg class="... d-icon-icon2 fa-stack-2x ..." xmlns="http://www.w3.org/2000/svg"><use xlink:href="#icon2"></use></svg>
// </span>
// -------------------------
.fa-stack {
position: relative;
width: 1em;
height: 1em;
display: inline-block;
.fa-stack-1x,
.fa-stack-2x {
left: 0px;
top: 0px;
position: absolute;
}
.fa-stack-2x {
height: 1.5em;
width: 1.5em;
margin-top: -0.25em;
margin-left: -0.25em;
}
}

View File

@ -48,7 +48,7 @@
clear: right;
}
.delete-info i {
.delete-info .d-icon {
font-size: $font-0;
}
@ -151,5 +151,8 @@
width: 15px;
display: inline-block;
color: $primary;
&.d-icon-heart {
color: $love;
}
}
}

View File

@ -86,3 +86,60 @@ $breakpoints: (
-moz-appearance: none;
appearance: none;
}
@mixin fa-rotate($degrees, $rotation) {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation})";
-webkit-transform: rotate($degrees);
-ms-transform: rotate($degrees);
transform: rotate($degrees);
}
/// Helper function to easily use an SVG inline in CSS
/// without encoding it to base64, saving bytes.
/// It also helps with browser support, especially for IE11.
///
/// @author Jakob Eriksen
/// @link http://codepen.io/jakob-e/pen/doMoML
/// @param {String} $svg - SVG image to encode
/// @return {String} - Encoded SVG data uri
@function svg-uri($svg) {
$encoded: "";
$slice: 2000;
$index: 0;
$loops: ceil(str-length($svg) / $slice);
@for $i from 1 through $loops {
$chunk: str-slice($svg, $index, $index + $slice - 1);
$chunk: str-replace($chunk, '"', "'");
$chunk: str-replace($chunk, "<", "%3C");
$chunk: str-replace($chunk, ">", "%3E");
$chunk: str-replace($chunk, "&", "%26");
$chunk: str-replace($chunk, "#", "%23");
$encoded: #{$encoded}#{$chunk};
$index: $index + $slice;
}
@return url("data:image/svg+xml;charset=utf8,#{$encoded}");
}
/// Replace `$search` with `$replace` in `$string`
/// @author Hugo Giraudel
/// @link http://sassmeister.com/gist/1b4f2da5527830088e4d
/// @param {String} $string - Initial string
/// @param {String} $search - Substring to replace
/// @param {String} $replace ('') - New value
/// @return {String} - Updated string
@function str-replace($string, $search, $replace: "") {
$index: str-index($string, $search);
@if $index {
@return str-slice($string, 1, $index - 1) + $replace +
str-replace(
str-slice($string, $index + str-length($search)),
$search,
$replace
);
}
@return $string;
}

View File

@ -78,9 +78,6 @@
.gap {
width: auto;
}
.gutter {
padding: 0;
}
/* restyle div#topic-title */
#topic-title {
margin: 0;

View File

@ -79,16 +79,13 @@
box-shadow: 0 0 2px $danger, 0 1px 0 rgba(0, 0, 0, 0.05);
}
&:after {
content: "\f00d";
.d-icon {
color: $primary-low-mid;
font-family: "FontAwesome";
vertical-align: middle;
}
&:hover {
&:after {
color: $danger;
}
&:hover .d-icon {
color: $danger;
}
}
}

View File

@ -125,25 +125,20 @@
}
.selected-category {
.body {
display: flex;
align-items: center;
}
.badge-wrapper {
&.bullet {
margin-right: 2.5px;
}
margin: auto 2.5px;
padding: 2px 4px;
line-height: $line-height-medium;
display: flex;
flex: 1;
align-items: center;
&:after {
content: "\f00d";
color: $primary-low-mid;
font-family: "FontAwesome";
font-size: $font-down-2;
margin-left: 5px;
}
}
}
@ -158,19 +153,12 @@
padding: 4px;
}
.name {
&:after {
content: "\f00d";
color: $primary-low-mid;
font-family: "FontAwesome";
font-size: $font-down-2;
}
&:hover {
&:after {
color: $danger;
}
}
.d-icon {
color: $primary-low-mid;
vertical-align: middle;
}
&:hover .d-icon {
color: $danger;
}
&.is-highlighted {

View File

@ -13,10 +13,9 @@
width: 100%;
margin-bottom: 5px;
i {
.d-icon {
display: block;
margin-top: 2px;
margin-bottom: 2px;
margin: 2px auto;
transform: rotate(90deg);
}
}

View File

@ -119,7 +119,7 @@
.timeline-last-read {
right: 0;
margin-left: 0;
i.progress {
.progress {
display: none;
}
}
@ -194,6 +194,7 @@
.timeline-footer-controls {
margin-top: 1.5em;
transition: opacity 0.2s ease-in;
display: flex;
button {
margin-right: 0.5em;
@ -262,8 +263,7 @@
.timeline-last-read {
position: absolute;
margin-left: -0.35em;
i.progress {
.progress {
font-size: 0.8em;
color: $tertiary;
margin-right: 1em;
@ -281,9 +281,6 @@
display: inline-block;
color: dark-light-choose($primary-medium, $secondary-medium);
margin-top: 0.5em;
i {
margin-left: 0.15em;
}
}
}
}

View File

@ -22,7 +22,7 @@ body.widget-dragging {
margin: 0;
line-height: $line-height-small;
i {
.d-icon {
font-size: $font-down-1;
}
}
@ -117,7 +117,8 @@ input {
}
.input {
&-xxlarge {
&-xxlarge,
&-xxlarge + .control-instructions {
width: 530px;
}
}

View File

@ -33,10 +33,10 @@
// --------------------------------------------------
.topic-list-icons {
.d-icon-thumb-tack {
.d-icon-thumbtack {
color: dark-light-choose($primary-medium, $secondary-medium);
}
.d-icon-thumb-tack.unpinned {
.d-icon-thumbtack.unpinned {
color: dark-light-choose($primary-medium, $secondary-medium);
}
a.title {
@ -243,7 +243,7 @@ button.dismiss-read {
span {
display: none;
}
i {
.d-icon {
margin-right: 0;
}
}

View File

@ -6,7 +6,7 @@
margin-left: 0;
}
h1 .topic-statuses .topic-status i {
h1 .topic-statuses .topic-status .d-icon {
font-size: 0.857em;
vertical-align: middle;
}
@ -80,7 +80,7 @@ nav.post-controls {
.like-count {
font-size: $font-up-1;
margin-left: 0;
i.d-icon {
.d-icon {
padding-left: 10px;
color: dark-light-choose($primary-low-mid, $secondary-high);
}
@ -137,7 +137,7 @@ nav.post-controls {
color: $primary;
}
}
i {
.d-icon {
margin-left: 5px;
font-size: $font-down-1;
}
@ -147,7 +147,7 @@ nav.post-controls {
color: dark-light-choose($primary-high, $secondary-low);
margin-left: 10px;
}
.create i {
.create .d-icon {
margin-right: 5px;
}
button {
@ -361,7 +361,7 @@ nav.post-controls {
line-height: $line-height-large;
}
.number,
i {
.d-icon {
color: dark-light-choose($primary-high, $secondary-low);
font-size: $font-up-2;
line-height: $line-height-medium;
@ -453,7 +453,7 @@ nav.post-controls {
.suggested-topics .topic-statuses .topic-status {
padding: 0;
i {
.d-icon {
font-size: 1em;
}
}
@ -498,6 +498,64 @@ video {
}
}
.extra-info-wrapper {
overflow: hidden;
.badge-wrapper,
i,
.topic-link {
-webkit-animation: fadein 0.7s;
animation: fadein 0.7s;
}
.topic-statuses {
.d-icon {
color: $header_primary;
}
.d-icon-envelope {
color: $danger;
}
.d-icon-lock {
padding-top: 0.15em;
}
.unpinned {
color: $header_primary;
}
}
.topic-link {
color: $header_primary;
display: block;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.topic-header-extra {
margin: 0 0 0 5px;
}
}
/* default docked header CSS for all topics, including those without categories */
.extra-info {
h1 {
margin: 5px 0 0 0;
font-size: $font-up-3;
line-height: $line-height-large;
width: 100%;
}
.topic-statuses {
margin-top: -2px;
}
}
/* override docked header CSS for topics with categories */
.extra-info.two-rows {
h1 {
line-height: $line-height-medium;
margin: 0;
width: 100%;
}
}
.open > .dropdown-menu {
display: block;
}
@ -740,7 +798,7 @@ $topic-avatar-width: 45px;
font-size: $font-up-4;
color: $primary;
margin-bottom: 5px;
i {
.d-icon {
margin-right: 7px;
}
}
@ -749,24 +807,11 @@ $topic-avatar-width: 45px;
a.attachment:before {
display: inline-block;
margin-right: 4px;
font-family: "FontAwesome";
content: "\f019";
}
.private_message .gutter,
.deleted-topic .gutter,
.read_restricted .gutter {
position: relative;
}
.deleted-topic .gutter:before {
display: block;
position: absolute;
left: 767px;
color: rgba($primary-low, 0.8);
font: 6.429em/1 FontAwesome;
content: "\f014";
z-index: z("base");
// ideally, the SVG used here should be in HTML and reference the SVG sprite
content: svg-uri(
'<svg xmlns="http://www.w3.org/2000/svg" width="14px" height="16px" viewBox="0 0 512 512" fill="#{$tertiary}"><path d="M216 0h80c13.3 0 24 10.7 24 24v168h87.7c17.8 0 26.7 21.5 14.1 34.1L269.7 378.3c-7.5 7.5-19.8 7.5-27.3 0L90.1 226.1c-12.6-12.6-3.7-34.1 14.1-34.1H192V24c0-13.3 10.7-24 24-24zm296 376v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h146.7l49 49c20.1 20.1 52.5 20.1 72.6 0l49-49H488c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z"></path></svg>'
);
vertical-align: middle;
}
.topic-meta-data {
@ -833,9 +878,6 @@ span.highlighted {
/* Tablet (portrait) ----------- */
@media all and (max-width: 775px) {
.gutter {
display: none;
}
.topic-avatar {
width: 45px;
}

View File

@ -102,7 +102,7 @@
button.full {
width: 100%;
margin-bottom: 5px;
i {
.d-icon {
display: block;
margin-top: 2px;
margin-bottom: 2px;

View File

@ -81,7 +81,7 @@ $user_card_background: $secondary;
a {
color: $user_card_primary;
}
i {
.d-icon {
font-size: $font-down-1;
color: $user_card_primary;
}
@ -185,7 +185,7 @@ $user_card_background: $secondary;
max-width: 90%;
overflow: hidden;
align-items: baseline;
i {
.d-icon {
margin-right: 0.25em;
}
}
@ -224,7 +224,7 @@ $user_card_background: $secondary;
background-position: center;
background-size: $size;
color: $primary;
i {
.d-icon {
margin: auto;
font-size: $size / 1.5 !important;
}

View File

@ -175,4 +175,8 @@
.add-warning {
margin: 0 0 5px 5px;
}
.whisper {
margin-right: 5px;
}
}

View File

@ -48,7 +48,7 @@ blockquote {
display: inline-block;
.topic-status {
i {
.d-icon {
color: $secondary-high;
}
}

View File

@ -70,6 +70,6 @@
display: none;
}
.search-link .topic-statuses .topic-status i {
.search-link .topic-statuses .topic-status .d-icon {
font-size: $font-0;
}

View File

@ -67,7 +67,7 @@
flex-wrap: wrap;
width: 100%;
.edit-category {
i {
.d-icon {
margin: 0;
}
@media screen and (max-width: 374px) {
@ -162,7 +162,7 @@
font-size: $font-0;
line-height: $line-height-small;
padding: 0.15em 0.4em 0.2em 0.4em;
i {
.d-icon {
color: $secondary;
}
@ -276,7 +276,7 @@ tr.category-topic-link {
display: inline-block;
font-size: $font-up-2;
margin: 0 0 0 10px;
i {
.d-icon {
margin-right: 5px;
}
a[href] {

View File

@ -47,11 +47,10 @@ span.badge-posts {
}
&.my-likes {
display: flex;
align-items: baseline;
max-width: unset;
margin-right: 0;
padding: 8px 9px 8px 8px;
i {
.d-icon {
padding-left: 8px;
}
}
@ -188,7 +187,7 @@ a.reply-to-tab {
line-height: $line-height-medium;
}
.number,
i {
.d-icon {
color: dark-light-choose($primary-high, $secondary-low);
font-size: $font-up-1;
}
@ -397,10 +396,6 @@ blockquote {
padding: 0.25em 0;
}
.gutter {
display: none;
}
.posts-wrapper {
position: relative;
}

View File

@ -78,7 +78,7 @@
button.full {
width: 100%;
margin-bottom: 5px;
i {
.d-icon {
display: block;
margin-top: 2px;
margin-bottom: 2px;

View File

@ -1,34 +0,0 @@
// Spinning Icons
// --------------------------
.#{$fa-css-prefix}-spin {
-webkit-animation: fa-spin 2s infinite linear;
animation: fa-spin 2s infinite linear;
}
.#{$fa-css-prefix}-pulse {
-webkit-animation: fa-spin 1s infinite steps(8);
animation: fa-spin 1s infinite steps(8);
}
@-webkit-keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
transform: rotate(359deg);
}
}
@keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
transform: rotate(359deg);
}
}

View File

@ -1,25 +0,0 @@
// Bordered & Pulled
// -------------------------
.#{$fa-css-prefix}-border {
padding: .2em .25em .15em;
border: solid .08em $fa-border-color;
border-radius: .1em;
}
.#{$fa-css-prefix}-pull-left { float: left; }
.#{$fa-css-prefix}-pull-right { float: right; }
.#{$fa-css-prefix} {
&.#{$fa-css-prefix}-pull-left { margin-right: .3em; }
&.#{$fa-css-prefix}-pull-right { margin-left: .3em; }
}
/* Deprecated as of 4.4.0 */
.pull-right { float: right; }
.pull-left { float: left; }
.#{$fa-css-prefix} {
&.pull-left { margin-right: .3em; }
&.pull-right { margin-left: .3em; }
}

View File

@ -1,12 +0,0 @@
// Base Class Definition
// -------------------------
.#{$fa-css-prefix} {
display: inline-block;
font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration
font-size: inherit; // can't have font-size inherit on line above, so need to override
text-rendering: auto; // optimizelegibility throws things off #1094
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}

View File

@ -1,6 +0,0 @@
// Fixed Width Icons
// -------------------------
.#{$fa-css-prefix}-fw {
width: (18em / 14);
text-align: center;
}

View File

@ -1,789 +0,0 @@
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
readers do not read off random characters that represent icons */
.#{$fa-css-prefix}-glass:before { content: $fa-var-glass; }
.#{$fa-css-prefix}-music:before { content: $fa-var-music; }
.#{$fa-css-prefix}-search:before { content: $fa-var-search; }
.#{$fa-css-prefix}-envelope-o:before { content: $fa-var-envelope-o; }
.#{$fa-css-prefix}-heart:before { content: $fa-var-heart; }
.#{$fa-css-prefix}-star:before { content: $fa-var-star; }
.#{$fa-css-prefix}-star-o:before { content: $fa-var-star-o; }
.#{$fa-css-prefix}-user:before { content: $fa-var-user; }
.#{$fa-css-prefix}-film:before { content: $fa-var-film; }
.#{$fa-css-prefix}-th-large:before { content: $fa-var-th-large; }
.#{$fa-css-prefix}-th:before { content: $fa-var-th; }
.#{$fa-css-prefix}-th-list:before { content: $fa-var-th-list; }
.#{$fa-css-prefix}-check:before { content: $fa-var-check; }
.#{$fa-css-prefix}-remove:before,
.#{$fa-css-prefix}-close:before,
.#{$fa-css-prefix}-times:before { content: $fa-var-times; }
.#{$fa-css-prefix}-search-plus:before { content: $fa-var-search-plus; }
.#{$fa-css-prefix}-search-minus:before { content: $fa-var-search-minus; }
.#{$fa-css-prefix}-power-off:before { content: $fa-var-power-off; }
.#{$fa-css-prefix}-signal:before { content: $fa-var-signal; }
.#{$fa-css-prefix}-gear:before,
.#{$fa-css-prefix}-cog:before { content: $fa-var-cog; }
.#{$fa-css-prefix}-trash-o:before { content: $fa-var-trash-o; }
.#{$fa-css-prefix}-home:before { content: $fa-var-home; }
.#{$fa-css-prefix}-file-o:before { content: $fa-var-file-o; }
.#{$fa-css-prefix}-clock-o:before { content: $fa-var-clock-o; }
.#{$fa-css-prefix}-road:before { content: $fa-var-road; }
.#{$fa-css-prefix}-download:before { content: $fa-var-download; }
.#{$fa-css-prefix}-arrow-circle-o-down:before { content: $fa-var-arrow-circle-o-down; }
.#{$fa-css-prefix}-arrow-circle-o-up:before { content: $fa-var-arrow-circle-o-up; }
.#{$fa-css-prefix}-inbox:before { content: $fa-var-inbox; }
.#{$fa-css-prefix}-play-circle-o:before { content: $fa-var-play-circle-o; }
.#{$fa-css-prefix}-rotate-right:before,
.#{$fa-css-prefix}-repeat:before { content: $fa-var-repeat; }
.#{$fa-css-prefix}-refresh:before { content: $fa-var-refresh; }
.#{$fa-css-prefix}-list-alt:before { content: $fa-var-list-alt; }
.#{$fa-css-prefix}-lock:before { content: $fa-var-lock; }
.#{$fa-css-prefix}-flag:before { content: $fa-var-flag; }
.#{$fa-css-prefix}-headphones:before { content: $fa-var-headphones; }
.#{$fa-css-prefix}-volume-off:before { content: $fa-var-volume-off; }
.#{$fa-css-prefix}-volume-down:before { content: $fa-var-volume-down; }
.#{$fa-css-prefix}-volume-up:before { content: $fa-var-volume-up; }
.#{$fa-css-prefix}-qrcode:before { content: $fa-var-qrcode; }
.#{$fa-css-prefix}-barcode:before { content: $fa-var-barcode; }
.#{$fa-css-prefix}-tag:before { content: $fa-var-tag; }
.#{$fa-css-prefix}-tags:before { content: $fa-var-tags; }
.#{$fa-css-prefix}-book:before { content: $fa-var-book; }
.#{$fa-css-prefix}-bookmark:before { content: $fa-var-bookmark; }
.#{$fa-css-prefix}-print:before { content: $fa-var-print; }
.#{$fa-css-prefix}-camera:before { content: $fa-var-camera; }
.#{$fa-css-prefix}-font:before { content: $fa-var-font; }
.#{$fa-css-prefix}-bold:before { content: $fa-var-bold; }
.#{$fa-css-prefix}-italic:before { content: $fa-var-italic; }
.#{$fa-css-prefix}-text-height:before { content: $fa-var-text-height; }
.#{$fa-css-prefix}-text-width:before { content: $fa-var-text-width; }
.#{$fa-css-prefix}-align-left:before { content: $fa-var-align-left; }
.#{$fa-css-prefix}-align-center:before { content: $fa-var-align-center; }
.#{$fa-css-prefix}-align-right:before { content: $fa-var-align-right; }
.#{$fa-css-prefix}-align-justify:before { content: $fa-var-align-justify; }
.#{$fa-css-prefix}-list:before { content: $fa-var-list; }
.#{$fa-css-prefix}-dedent:before,
.#{$fa-css-prefix}-outdent:before { content: $fa-var-outdent; }
.#{$fa-css-prefix}-indent:before { content: $fa-var-indent; }
.#{$fa-css-prefix}-video-camera:before { content: $fa-var-video-camera; }
.#{$fa-css-prefix}-photo:before,
.#{$fa-css-prefix}-image:before,
.#{$fa-css-prefix}-picture-o:before { content: $fa-var-picture-o; }
.#{$fa-css-prefix}-pencil:before { content: $fa-var-pencil; }
.#{$fa-css-prefix}-map-marker:before { content: $fa-var-map-marker; }
.#{$fa-css-prefix}-adjust:before { content: $fa-var-adjust; }
.#{$fa-css-prefix}-tint:before { content: $fa-var-tint; }
.#{$fa-css-prefix}-edit:before,
.#{$fa-css-prefix}-pencil-square-o:before { content: $fa-var-pencil-square-o; }
.#{$fa-css-prefix}-share-square-o:before { content: $fa-var-share-square-o; }
.#{$fa-css-prefix}-check-square-o:before { content: $fa-var-check-square-o; }
.#{$fa-css-prefix}-arrows:before { content: $fa-var-arrows; }
.#{$fa-css-prefix}-step-backward:before { content: $fa-var-step-backward; }
.#{$fa-css-prefix}-fast-backward:before { content: $fa-var-fast-backward; }
.#{$fa-css-prefix}-backward:before { content: $fa-var-backward; }
.#{$fa-css-prefix}-play:before { content: $fa-var-play; }
.#{$fa-css-prefix}-pause:before { content: $fa-var-pause; }
.#{$fa-css-prefix}-stop:before { content: $fa-var-stop; }
.#{$fa-css-prefix}-forward:before { content: $fa-var-forward; }
.#{$fa-css-prefix}-fast-forward:before { content: $fa-var-fast-forward; }
.#{$fa-css-prefix}-step-forward:before { content: $fa-var-step-forward; }
.#{$fa-css-prefix}-eject:before { content: $fa-var-eject; }
.#{$fa-css-prefix}-chevron-left:before { content: $fa-var-chevron-left; }
.#{$fa-css-prefix}-chevron-right:before { content: $fa-var-chevron-right; }
.#{$fa-css-prefix}-plus-circle:before { content: $fa-var-plus-circle; }
.#{$fa-css-prefix}-minus-circle:before { content: $fa-var-minus-circle; }
.#{$fa-css-prefix}-times-circle:before { content: $fa-var-times-circle; }
.#{$fa-css-prefix}-check-circle:before { content: $fa-var-check-circle; }
.#{$fa-css-prefix}-question-circle:before { content: $fa-var-question-circle; }
.#{$fa-css-prefix}-info-circle:before { content: $fa-var-info-circle; }
.#{$fa-css-prefix}-crosshairs:before { content: $fa-var-crosshairs; }
.#{$fa-css-prefix}-times-circle-o:before { content: $fa-var-times-circle-o; }
.#{$fa-css-prefix}-check-circle-o:before { content: $fa-var-check-circle-o; }
.#{$fa-css-prefix}-ban:before { content: $fa-var-ban; }
.#{$fa-css-prefix}-arrow-left:before { content: $fa-var-arrow-left; }
.#{$fa-css-prefix}-arrow-right:before { content: $fa-var-arrow-right; }
.#{$fa-css-prefix}-arrow-up:before { content: $fa-var-arrow-up; }
.#{$fa-css-prefix}-arrow-down:before { content: $fa-var-arrow-down; }
.#{$fa-css-prefix}-mail-forward:before,
.#{$fa-css-prefix}-share:before { content: $fa-var-share; }
.#{$fa-css-prefix}-expand:before { content: $fa-var-expand; }
.#{$fa-css-prefix}-compress:before { content: $fa-var-compress; }
.#{$fa-css-prefix}-plus:before { content: $fa-var-plus; }
.#{$fa-css-prefix}-minus:before { content: $fa-var-minus; }
.#{$fa-css-prefix}-asterisk:before { content: $fa-var-asterisk; }
.#{$fa-css-prefix}-exclamation-circle:before { content: $fa-var-exclamation-circle; }
.#{$fa-css-prefix}-gift:before { content: $fa-var-gift; }
.#{$fa-css-prefix}-leaf:before { content: $fa-var-leaf; }
.#{$fa-css-prefix}-fire:before { content: $fa-var-fire; }
.#{$fa-css-prefix}-eye:before { content: $fa-var-eye; }
.#{$fa-css-prefix}-eye-slash:before { content: $fa-var-eye-slash; }
.#{$fa-css-prefix}-warning:before,
.#{$fa-css-prefix}-exclamation-triangle:before { content: $fa-var-exclamation-triangle; }
.#{$fa-css-prefix}-plane:before { content: $fa-var-plane; }
.#{$fa-css-prefix}-calendar:before { content: $fa-var-calendar; }
.#{$fa-css-prefix}-random:before { content: $fa-var-random; }
.#{$fa-css-prefix}-comment:before { content: $fa-var-comment; }
.#{$fa-css-prefix}-magnet:before { content: $fa-var-magnet; }
.#{$fa-css-prefix}-chevron-up:before { content: $fa-var-chevron-up; }
.#{$fa-css-prefix}-chevron-down:before { content: $fa-var-chevron-down; }
.#{$fa-css-prefix}-retweet:before { content: $fa-var-retweet; }
.#{$fa-css-prefix}-shopping-cart:before { content: $fa-var-shopping-cart; }
.#{$fa-css-prefix}-folder:before { content: $fa-var-folder; }
.#{$fa-css-prefix}-folder-open:before { content: $fa-var-folder-open; }
.#{$fa-css-prefix}-arrows-v:before { content: $fa-var-arrows-v; }
.#{$fa-css-prefix}-arrows-h:before { content: $fa-var-arrows-h; }
.#{$fa-css-prefix}-bar-chart-o:before,
.#{$fa-css-prefix}-bar-chart:before { content: $fa-var-bar-chart; }
.#{$fa-css-prefix}-twitter-square:before { content: $fa-var-twitter-square; }
.#{$fa-css-prefix}-facebook-square:before { content: $fa-var-facebook-square; }
.#{$fa-css-prefix}-camera-retro:before { content: $fa-var-camera-retro; }
.#{$fa-css-prefix}-key:before { content: $fa-var-key; }
.#{$fa-css-prefix}-gears:before,
.#{$fa-css-prefix}-cogs:before { content: $fa-var-cogs; }
.#{$fa-css-prefix}-comments:before { content: $fa-var-comments; }
.#{$fa-css-prefix}-thumbs-o-up:before { content: $fa-var-thumbs-o-up; }
.#{$fa-css-prefix}-thumbs-o-down:before { content: $fa-var-thumbs-o-down; }
.#{$fa-css-prefix}-star-half:before { content: $fa-var-star-half; }
.#{$fa-css-prefix}-heart-o:before { content: $fa-var-heart-o; }
.#{$fa-css-prefix}-sign-out:before { content: $fa-var-sign-out; }
.#{$fa-css-prefix}-linkedin-square:before { content: $fa-var-linkedin-square; }
.#{$fa-css-prefix}-thumb-tack:before { content: $fa-var-thumb-tack; }
.#{$fa-css-prefix}-external-link:before { content: $fa-var-external-link; }
.#{$fa-css-prefix}-sign-in:before { content: $fa-var-sign-in; }
.#{$fa-css-prefix}-trophy:before { content: $fa-var-trophy; }
.#{$fa-css-prefix}-github-square:before { content: $fa-var-github-square; }
.#{$fa-css-prefix}-upload:before { content: $fa-var-upload; }
.#{$fa-css-prefix}-lemon-o:before { content: $fa-var-lemon-o; }
.#{$fa-css-prefix}-phone:before { content: $fa-var-phone; }
.#{$fa-css-prefix}-square-o:before { content: $fa-var-square-o; }
.#{$fa-css-prefix}-bookmark-o:before { content: $fa-var-bookmark-o; }
.#{$fa-css-prefix}-phone-square:before { content: $fa-var-phone-square; }
.#{$fa-css-prefix}-twitter:before { content: $fa-var-twitter; }
.#{$fa-css-prefix}-facebook-f:before,
.#{$fa-css-prefix}-facebook:before { content: $fa-var-facebook; }
.#{$fa-css-prefix}-github:before { content: $fa-var-github; }
.#{$fa-css-prefix}-unlock:before { content: $fa-var-unlock; }
.#{$fa-css-prefix}-credit-card:before { content: $fa-var-credit-card; }
.#{$fa-css-prefix}-feed:before,
.#{$fa-css-prefix}-rss:before { content: $fa-var-rss; }
.#{$fa-css-prefix}-hdd-o:before { content: $fa-var-hdd-o; }
.#{$fa-css-prefix}-bullhorn:before { content: $fa-var-bullhorn; }
.#{$fa-css-prefix}-bell:before { content: $fa-var-bell; }
.#{$fa-css-prefix}-certificate:before { content: $fa-var-certificate; }
.#{$fa-css-prefix}-hand-o-right:before { content: $fa-var-hand-o-right; }
.#{$fa-css-prefix}-hand-o-left:before { content: $fa-var-hand-o-left; }
.#{$fa-css-prefix}-hand-o-up:before { content: $fa-var-hand-o-up; }
.#{$fa-css-prefix}-hand-o-down:before { content: $fa-var-hand-o-down; }
.#{$fa-css-prefix}-arrow-circle-left:before { content: $fa-var-arrow-circle-left; }
.#{$fa-css-prefix}-arrow-circle-right:before { content: $fa-var-arrow-circle-right; }
.#{$fa-css-prefix}-arrow-circle-up:before { content: $fa-var-arrow-circle-up; }
.#{$fa-css-prefix}-arrow-circle-down:before { content: $fa-var-arrow-circle-down; }
.#{$fa-css-prefix}-globe:before { content: $fa-var-globe; }
.#{$fa-css-prefix}-wrench:before { content: $fa-var-wrench; }
.#{$fa-css-prefix}-tasks:before { content: $fa-var-tasks; }
.#{$fa-css-prefix}-filter:before { content: $fa-var-filter; }
.#{$fa-css-prefix}-briefcase:before { content: $fa-var-briefcase; }
.#{$fa-css-prefix}-arrows-alt:before { content: $fa-var-arrows-alt; }
.#{$fa-css-prefix}-group:before,
.#{$fa-css-prefix}-users:before { content: $fa-var-users; }
.#{$fa-css-prefix}-chain:before,
.#{$fa-css-prefix}-link:before { content: $fa-var-link; }
.#{$fa-css-prefix}-cloud:before { content: $fa-var-cloud; }
.#{$fa-css-prefix}-flask:before { content: $fa-var-flask; }
.#{$fa-css-prefix}-cut:before,
.#{$fa-css-prefix}-scissors:before { content: $fa-var-scissors; }
.#{$fa-css-prefix}-copy:before,
.#{$fa-css-prefix}-files-o:before { content: $fa-var-files-o; }
.#{$fa-css-prefix}-paperclip:before { content: $fa-var-paperclip; }
.#{$fa-css-prefix}-save:before,
.#{$fa-css-prefix}-floppy-o:before { content: $fa-var-floppy-o; }
.#{$fa-css-prefix}-square:before { content: $fa-var-square; }
.#{$fa-css-prefix}-navicon:before,
.#{$fa-css-prefix}-reorder:before,
.#{$fa-css-prefix}-bars:before { content: $fa-var-bars; }
.#{$fa-css-prefix}-list-ul:before { content: $fa-var-list-ul; }
.#{$fa-css-prefix}-list-ol:before { content: $fa-var-list-ol; }
.#{$fa-css-prefix}-strikethrough:before { content: $fa-var-strikethrough; }
.#{$fa-css-prefix}-underline:before { content: $fa-var-underline; }
.#{$fa-css-prefix}-table:before { content: $fa-var-table; }
.#{$fa-css-prefix}-magic:before { content: $fa-var-magic; }
.#{$fa-css-prefix}-truck:before { content: $fa-var-truck; }
.#{$fa-css-prefix}-pinterest:before { content: $fa-var-pinterest; }
.#{$fa-css-prefix}-pinterest-square:before { content: $fa-var-pinterest-square; }
.#{$fa-css-prefix}-google-plus-square:before { content: $fa-var-google-plus-square; }
.#{$fa-css-prefix}-google-plus:before { content: $fa-var-google-plus; }
.#{$fa-css-prefix}-money:before { content: $fa-var-money; }
.#{$fa-css-prefix}-caret-down:before { content: $fa-var-caret-down; }
.#{$fa-css-prefix}-caret-up:before { content: $fa-var-caret-up; }
.#{$fa-css-prefix}-caret-left:before { content: $fa-var-caret-left; }
.#{$fa-css-prefix}-caret-right:before { content: $fa-var-caret-right; }
.#{$fa-css-prefix}-columns:before { content: $fa-var-columns; }
.#{$fa-css-prefix}-unsorted:before,
.#{$fa-css-prefix}-sort:before { content: $fa-var-sort; }
.#{$fa-css-prefix}-sort-down:before,
.#{$fa-css-prefix}-sort-desc:before { content: $fa-var-sort-desc; }
.#{$fa-css-prefix}-sort-up:before,
.#{$fa-css-prefix}-sort-asc:before { content: $fa-var-sort-asc; }
.#{$fa-css-prefix}-envelope:before { content: $fa-var-envelope; }
.#{$fa-css-prefix}-linkedin:before { content: $fa-var-linkedin; }
.#{$fa-css-prefix}-rotate-left:before,
.#{$fa-css-prefix}-undo:before { content: $fa-var-undo; }
.#{$fa-css-prefix}-legal:before,
.#{$fa-css-prefix}-gavel:before { content: $fa-var-gavel; }
.#{$fa-css-prefix}-dashboard:before,
.#{$fa-css-prefix}-tachometer:before { content: $fa-var-tachometer; }
.#{$fa-css-prefix}-comment-o:before { content: $fa-var-comment-o; }
.#{$fa-css-prefix}-comments-o:before { content: $fa-var-comments-o; }
.#{$fa-css-prefix}-flash:before,
.#{$fa-css-prefix}-bolt:before { content: $fa-var-bolt; }
.#{$fa-css-prefix}-sitemap:before { content: $fa-var-sitemap; }
.#{$fa-css-prefix}-umbrella:before { content: $fa-var-umbrella; }
.#{$fa-css-prefix}-paste:before,
.#{$fa-css-prefix}-clipboard:before { content: $fa-var-clipboard; }
.#{$fa-css-prefix}-lightbulb-o:before { content: $fa-var-lightbulb-o; }
.#{$fa-css-prefix}-exchange:before { content: $fa-var-exchange; }
.#{$fa-css-prefix}-cloud-download:before { content: $fa-var-cloud-download; }
.#{$fa-css-prefix}-cloud-upload:before { content: $fa-var-cloud-upload; }
.#{$fa-css-prefix}-user-md:before { content: $fa-var-user-md; }
.#{$fa-css-prefix}-stethoscope:before { content: $fa-var-stethoscope; }
.#{$fa-css-prefix}-suitcase:before { content: $fa-var-suitcase; }
.#{$fa-css-prefix}-bell-o:before { content: $fa-var-bell-o; }
.#{$fa-css-prefix}-coffee:before { content: $fa-var-coffee; }
.#{$fa-css-prefix}-cutlery:before { content: $fa-var-cutlery; }
.#{$fa-css-prefix}-file-text-o:before { content: $fa-var-file-text-o; }
.#{$fa-css-prefix}-building-o:before { content: $fa-var-building-o; }
.#{$fa-css-prefix}-hospital-o:before { content: $fa-var-hospital-o; }
.#{$fa-css-prefix}-ambulance:before { content: $fa-var-ambulance; }
.#{$fa-css-prefix}-medkit:before { content: $fa-var-medkit; }
.#{$fa-css-prefix}-fighter-jet:before { content: $fa-var-fighter-jet; }
.#{$fa-css-prefix}-beer:before { content: $fa-var-beer; }
.#{$fa-css-prefix}-h-square:before { content: $fa-var-h-square; }
.#{$fa-css-prefix}-plus-square:before { content: $fa-var-plus-square; }
.#{$fa-css-prefix}-angle-double-left:before { content: $fa-var-angle-double-left; }
.#{$fa-css-prefix}-angle-double-right:before { content: $fa-var-angle-double-right; }
.#{$fa-css-prefix}-angle-double-up:before { content: $fa-var-angle-double-up; }
.#{$fa-css-prefix}-angle-double-down:before { content: $fa-var-angle-double-down; }
.#{$fa-css-prefix}-angle-left:before { content: $fa-var-angle-left; }
.#{$fa-css-prefix}-angle-right:before { content: $fa-var-angle-right; }
.#{$fa-css-prefix}-angle-up:before { content: $fa-var-angle-up; }
.#{$fa-css-prefix}-angle-down:before { content: $fa-var-angle-down; }
.#{$fa-css-prefix}-desktop:before { content: $fa-var-desktop; }
.#{$fa-css-prefix}-laptop:before { content: $fa-var-laptop; }
.#{$fa-css-prefix}-tablet:before { content: $fa-var-tablet; }
.#{$fa-css-prefix}-mobile-phone:before,
.#{$fa-css-prefix}-mobile:before { content: $fa-var-mobile; }
.#{$fa-css-prefix}-circle-o:before { content: $fa-var-circle-o; }
.#{$fa-css-prefix}-quote-left:before { content: $fa-var-quote-left; }
.#{$fa-css-prefix}-quote-right:before { content: $fa-var-quote-right; }
.#{$fa-css-prefix}-spinner:before { content: $fa-var-spinner; }
.#{$fa-css-prefix}-circle:before { content: $fa-var-circle; }
.#{$fa-css-prefix}-mail-reply:before,
.#{$fa-css-prefix}-reply:before { content: $fa-var-reply; }
.#{$fa-css-prefix}-github-alt:before { content: $fa-var-github-alt; }
.#{$fa-css-prefix}-folder-o:before { content: $fa-var-folder-o; }
.#{$fa-css-prefix}-folder-open-o:before { content: $fa-var-folder-open-o; }
.#{$fa-css-prefix}-smile-o:before { content: $fa-var-smile-o; }
.#{$fa-css-prefix}-frown-o:before { content: $fa-var-frown-o; }
.#{$fa-css-prefix}-meh-o:before { content: $fa-var-meh-o; }
.#{$fa-css-prefix}-gamepad:before { content: $fa-var-gamepad; }
.#{$fa-css-prefix}-keyboard-o:before { content: $fa-var-keyboard-o; }
.#{$fa-css-prefix}-flag-o:before { content: $fa-var-flag-o; }
.#{$fa-css-prefix}-flag-checkered:before { content: $fa-var-flag-checkered; }
.#{$fa-css-prefix}-terminal:before { content: $fa-var-terminal; }
.#{$fa-css-prefix}-code:before { content: $fa-var-code; }
.#{$fa-css-prefix}-mail-reply-all:before,
.#{$fa-css-prefix}-reply-all:before { content: $fa-var-reply-all; }
.#{$fa-css-prefix}-star-half-empty:before,
.#{$fa-css-prefix}-star-half-full:before,
.#{$fa-css-prefix}-star-half-o:before { content: $fa-var-star-half-o; }
.#{$fa-css-prefix}-location-arrow:before { content: $fa-var-location-arrow; }
.#{$fa-css-prefix}-crop:before { content: $fa-var-crop; }
.#{$fa-css-prefix}-code-fork:before { content: $fa-var-code-fork; }
.#{$fa-css-prefix}-unlink:before,
.#{$fa-css-prefix}-chain-broken:before { content: $fa-var-chain-broken; }
.#{$fa-css-prefix}-question:before { content: $fa-var-question; }
.#{$fa-css-prefix}-info:before { content: $fa-var-info; }
.#{$fa-css-prefix}-exclamation:before { content: $fa-var-exclamation; }
.#{$fa-css-prefix}-superscript:before { content: $fa-var-superscript; }
.#{$fa-css-prefix}-subscript:before { content: $fa-var-subscript; }
.#{$fa-css-prefix}-eraser:before { content: $fa-var-eraser; }
.#{$fa-css-prefix}-puzzle-piece:before { content: $fa-var-puzzle-piece; }
.#{$fa-css-prefix}-microphone:before { content: $fa-var-microphone; }
.#{$fa-css-prefix}-microphone-slash:before { content: $fa-var-microphone-slash; }
.#{$fa-css-prefix}-shield:before { content: $fa-var-shield; }
.#{$fa-css-prefix}-calendar-o:before { content: $fa-var-calendar-o; }
.#{$fa-css-prefix}-fire-extinguisher:before { content: $fa-var-fire-extinguisher; }
.#{$fa-css-prefix}-rocket:before { content: $fa-var-rocket; }
.#{$fa-css-prefix}-maxcdn:before { content: $fa-var-maxcdn; }
.#{$fa-css-prefix}-chevron-circle-left:before { content: $fa-var-chevron-circle-left; }
.#{$fa-css-prefix}-chevron-circle-right:before { content: $fa-var-chevron-circle-right; }
.#{$fa-css-prefix}-chevron-circle-up:before { content: $fa-var-chevron-circle-up; }
.#{$fa-css-prefix}-chevron-circle-down:before { content: $fa-var-chevron-circle-down; }
.#{$fa-css-prefix}-html5:before { content: $fa-var-html5; }
.#{$fa-css-prefix}-css3:before { content: $fa-var-css3; }
.#{$fa-css-prefix}-anchor:before { content: $fa-var-anchor; }
.#{$fa-css-prefix}-unlock-alt:before { content: $fa-var-unlock-alt; }
.#{$fa-css-prefix}-bullseye:before { content: $fa-var-bullseye; }
.#{$fa-css-prefix}-ellipsis-h:before { content: $fa-var-ellipsis-h; }
.#{$fa-css-prefix}-ellipsis-v:before { content: $fa-var-ellipsis-v; }
.#{$fa-css-prefix}-rss-square:before { content: $fa-var-rss-square; }
.#{$fa-css-prefix}-play-circle:before { content: $fa-var-play-circle; }
.#{$fa-css-prefix}-ticket:before { content: $fa-var-ticket; }
.#{$fa-css-prefix}-minus-square:before { content: $fa-var-minus-square; }
.#{$fa-css-prefix}-minus-square-o:before { content: $fa-var-minus-square-o; }
.#{$fa-css-prefix}-level-up:before { content: $fa-var-level-up; }
.#{$fa-css-prefix}-level-down:before { content: $fa-var-level-down; }
.#{$fa-css-prefix}-check-square:before { content: $fa-var-check-square; }
.#{$fa-css-prefix}-pencil-square:before { content: $fa-var-pencil-square; }
.#{$fa-css-prefix}-external-link-square:before { content: $fa-var-external-link-square; }
.#{$fa-css-prefix}-share-square:before { content: $fa-var-share-square; }
.#{$fa-css-prefix}-compass:before { content: $fa-var-compass; }
.#{$fa-css-prefix}-toggle-down:before,
.#{$fa-css-prefix}-caret-square-o-down:before { content: $fa-var-caret-square-o-down; }
.#{$fa-css-prefix}-toggle-up:before,
.#{$fa-css-prefix}-caret-square-o-up:before { content: $fa-var-caret-square-o-up; }
.#{$fa-css-prefix}-toggle-right:before,
.#{$fa-css-prefix}-caret-square-o-right:before { content: $fa-var-caret-square-o-right; }
.#{$fa-css-prefix}-euro:before,
.#{$fa-css-prefix}-eur:before { content: $fa-var-eur; }
.#{$fa-css-prefix}-gbp:before { content: $fa-var-gbp; }
.#{$fa-css-prefix}-dollar:before,
.#{$fa-css-prefix}-usd:before { content: $fa-var-usd; }
.#{$fa-css-prefix}-rupee:before,
.#{$fa-css-prefix}-inr:before { content: $fa-var-inr; }
.#{$fa-css-prefix}-cny:before,
.#{$fa-css-prefix}-rmb:before,
.#{$fa-css-prefix}-yen:before,
.#{$fa-css-prefix}-jpy:before { content: $fa-var-jpy; }
.#{$fa-css-prefix}-ruble:before,
.#{$fa-css-prefix}-rouble:before,
.#{$fa-css-prefix}-rub:before { content: $fa-var-rub; }
.#{$fa-css-prefix}-won:before,
.#{$fa-css-prefix}-krw:before { content: $fa-var-krw; }
.#{$fa-css-prefix}-bitcoin:before,
.#{$fa-css-prefix}-btc:before { content: $fa-var-btc; }
.#{$fa-css-prefix}-file:before { content: $fa-var-file; }
.#{$fa-css-prefix}-file-text:before { content: $fa-var-file-text; }
.#{$fa-css-prefix}-sort-alpha-asc:before { content: $fa-var-sort-alpha-asc; }
.#{$fa-css-prefix}-sort-alpha-desc:before { content: $fa-var-sort-alpha-desc; }
.#{$fa-css-prefix}-sort-amount-asc:before { content: $fa-var-sort-amount-asc; }
.#{$fa-css-prefix}-sort-amount-desc:before { content: $fa-var-sort-amount-desc; }
.#{$fa-css-prefix}-sort-numeric-asc:before { content: $fa-var-sort-numeric-asc; }
.#{$fa-css-prefix}-sort-numeric-desc:before { content: $fa-var-sort-numeric-desc; }
.#{$fa-css-prefix}-thumbs-up:before { content: $fa-var-thumbs-up; }
.#{$fa-css-prefix}-thumbs-down:before { content: $fa-var-thumbs-down; }
.#{$fa-css-prefix}-youtube-square:before { content: $fa-var-youtube-square; }
.#{$fa-css-prefix}-youtube:before { content: $fa-var-youtube; }
.#{$fa-css-prefix}-xing:before { content: $fa-var-xing; }
.#{$fa-css-prefix}-xing-square:before { content: $fa-var-xing-square; }
.#{$fa-css-prefix}-youtube-play:before { content: $fa-var-youtube-play; }
.#{$fa-css-prefix}-dropbox:before { content: $fa-var-dropbox; }
.#{$fa-css-prefix}-stack-overflow:before { content: $fa-var-stack-overflow; }
.#{$fa-css-prefix}-instagram:before { content: $fa-var-instagram; }
.#{$fa-css-prefix}-flickr:before { content: $fa-var-flickr; }
.#{$fa-css-prefix}-adn:before { content: $fa-var-adn; }
.#{$fa-css-prefix}-bitbucket:before { content: $fa-var-bitbucket; }
.#{$fa-css-prefix}-bitbucket-square:before { content: $fa-var-bitbucket-square; }
.#{$fa-css-prefix}-tumblr:before { content: $fa-var-tumblr; }
.#{$fa-css-prefix}-tumblr-square:before { content: $fa-var-tumblr-square; }
.#{$fa-css-prefix}-long-arrow-down:before { content: $fa-var-long-arrow-down; }
.#{$fa-css-prefix}-long-arrow-up:before { content: $fa-var-long-arrow-up; }
.#{$fa-css-prefix}-long-arrow-left:before { content: $fa-var-long-arrow-left; }
.#{$fa-css-prefix}-long-arrow-right:before { content: $fa-var-long-arrow-right; }
.#{$fa-css-prefix}-apple:before { content: $fa-var-apple; }
.#{$fa-css-prefix}-windows:before { content: $fa-var-windows; }
.#{$fa-css-prefix}-android:before { content: $fa-var-android; }
.#{$fa-css-prefix}-linux:before { content: $fa-var-linux; }
.#{$fa-css-prefix}-dribbble:before { content: $fa-var-dribbble; }
.#{$fa-css-prefix}-skype:before { content: $fa-var-skype; }
.#{$fa-css-prefix}-foursquare:before { content: $fa-var-foursquare; }
.#{$fa-css-prefix}-trello:before { content: $fa-var-trello; }
.#{$fa-css-prefix}-female:before { content: $fa-var-female; }
.#{$fa-css-prefix}-male:before { content: $fa-var-male; }
.#{$fa-css-prefix}-gittip:before,
.#{$fa-css-prefix}-gratipay:before { content: $fa-var-gratipay; }
.#{$fa-css-prefix}-sun-o:before { content: $fa-var-sun-o; }
.#{$fa-css-prefix}-moon-o:before { content: $fa-var-moon-o; }
.#{$fa-css-prefix}-archive:before { content: $fa-var-archive; }
.#{$fa-css-prefix}-bug:before { content: $fa-var-bug; }
.#{$fa-css-prefix}-vk:before { content: $fa-var-vk; }
.#{$fa-css-prefix}-weibo:before { content: $fa-var-weibo; }
.#{$fa-css-prefix}-renren:before { content: $fa-var-renren; }
.#{$fa-css-prefix}-pagelines:before { content: $fa-var-pagelines; }
.#{$fa-css-prefix}-stack-exchange:before { content: $fa-var-stack-exchange; }
.#{$fa-css-prefix}-arrow-circle-o-right:before { content: $fa-var-arrow-circle-o-right; }
.#{$fa-css-prefix}-arrow-circle-o-left:before { content: $fa-var-arrow-circle-o-left; }
.#{$fa-css-prefix}-toggle-left:before,
.#{$fa-css-prefix}-caret-square-o-left:before { content: $fa-var-caret-square-o-left; }
.#{$fa-css-prefix}-dot-circle-o:before { content: $fa-var-dot-circle-o; }
.#{$fa-css-prefix}-wheelchair:before { content: $fa-var-wheelchair; }
.#{$fa-css-prefix}-vimeo-square:before { content: $fa-var-vimeo-square; }
.#{$fa-css-prefix}-turkish-lira:before,
.#{$fa-css-prefix}-try:before { content: $fa-var-try; }
.#{$fa-css-prefix}-plus-square-o:before { content: $fa-var-plus-square-o; }
.#{$fa-css-prefix}-space-shuttle:before { content: $fa-var-space-shuttle; }
.#{$fa-css-prefix}-slack:before { content: $fa-var-slack; }
.#{$fa-css-prefix}-envelope-square:before { content: $fa-var-envelope-square; }
.#{$fa-css-prefix}-wordpress:before { content: $fa-var-wordpress; }
.#{$fa-css-prefix}-openid:before { content: $fa-var-openid; }
.#{$fa-css-prefix}-institution:before,
.#{$fa-css-prefix}-bank:before,
.#{$fa-css-prefix}-university:before { content: $fa-var-university; }
.#{$fa-css-prefix}-mortar-board:before,
.#{$fa-css-prefix}-graduation-cap:before { content: $fa-var-graduation-cap; }
.#{$fa-css-prefix}-yahoo:before { content: $fa-var-yahoo; }
.#{$fa-css-prefix}-google:before { content: $fa-var-google; }
.#{$fa-css-prefix}-reddit:before { content: $fa-var-reddit; }
.#{$fa-css-prefix}-reddit-square:before { content: $fa-var-reddit-square; }
.#{$fa-css-prefix}-stumbleupon-circle:before { content: $fa-var-stumbleupon-circle; }
.#{$fa-css-prefix}-stumbleupon:before { content: $fa-var-stumbleupon; }
.#{$fa-css-prefix}-delicious:before { content: $fa-var-delicious; }
.#{$fa-css-prefix}-digg:before { content: $fa-var-digg; }
.#{$fa-css-prefix}-pied-piper-pp:before { content: $fa-var-pied-piper-pp; }
.#{$fa-css-prefix}-pied-piper-alt:before { content: $fa-var-pied-piper-alt; }
.#{$fa-css-prefix}-drupal:before { content: $fa-var-drupal; }
.#{$fa-css-prefix}-joomla:before { content: $fa-var-joomla; }
.#{$fa-css-prefix}-language:before { content: $fa-var-language; }
.#{$fa-css-prefix}-fax:before { content: $fa-var-fax; }
.#{$fa-css-prefix}-building:before { content: $fa-var-building; }
.#{$fa-css-prefix}-child:before { content: $fa-var-child; }
.#{$fa-css-prefix}-paw:before { content: $fa-var-paw; }
.#{$fa-css-prefix}-spoon:before { content: $fa-var-spoon; }
.#{$fa-css-prefix}-cube:before { content: $fa-var-cube; }
.#{$fa-css-prefix}-cubes:before { content: $fa-var-cubes; }
.#{$fa-css-prefix}-behance:before { content: $fa-var-behance; }
.#{$fa-css-prefix}-behance-square:before { content: $fa-var-behance-square; }
.#{$fa-css-prefix}-steam:before { content: $fa-var-steam; }
.#{$fa-css-prefix}-steam-square:before { content: $fa-var-steam-square; }
.#{$fa-css-prefix}-recycle:before { content: $fa-var-recycle; }
.#{$fa-css-prefix}-automobile:before,
.#{$fa-css-prefix}-car:before { content: $fa-var-car; }
.#{$fa-css-prefix}-cab:before,
.#{$fa-css-prefix}-taxi:before { content: $fa-var-taxi; }
.#{$fa-css-prefix}-tree:before { content: $fa-var-tree; }
.#{$fa-css-prefix}-spotify:before { content: $fa-var-spotify; }
.#{$fa-css-prefix}-deviantart:before { content: $fa-var-deviantart; }
.#{$fa-css-prefix}-soundcloud:before { content: $fa-var-soundcloud; }
.#{$fa-css-prefix}-database:before { content: $fa-var-database; }
.#{$fa-css-prefix}-file-pdf-o:before { content: $fa-var-file-pdf-o; }
.#{$fa-css-prefix}-file-word-o:before { content: $fa-var-file-word-o; }
.#{$fa-css-prefix}-file-excel-o:before { content: $fa-var-file-excel-o; }
.#{$fa-css-prefix}-file-powerpoint-o:before { content: $fa-var-file-powerpoint-o; }
.#{$fa-css-prefix}-file-photo-o:before,
.#{$fa-css-prefix}-file-picture-o:before,
.#{$fa-css-prefix}-file-image-o:before { content: $fa-var-file-image-o; }
.#{$fa-css-prefix}-file-zip-o:before,
.#{$fa-css-prefix}-file-archive-o:before { content: $fa-var-file-archive-o; }
.#{$fa-css-prefix}-file-sound-o:before,
.#{$fa-css-prefix}-file-audio-o:before { content: $fa-var-file-audio-o; }
.#{$fa-css-prefix}-file-movie-o:before,
.#{$fa-css-prefix}-file-video-o:before { content: $fa-var-file-video-o; }
.#{$fa-css-prefix}-file-code-o:before { content: $fa-var-file-code-o; }
.#{$fa-css-prefix}-vine:before { content: $fa-var-vine; }
.#{$fa-css-prefix}-codepen:before { content: $fa-var-codepen; }
.#{$fa-css-prefix}-jsfiddle:before { content: $fa-var-jsfiddle; }
.#{$fa-css-prefix}-life-bouy:before,
.#{$fa-css-prefix}-life-buoy:before,
.#{$fa-css-prefix}-life-saver:before,
.#{$fa-css-prefix}-support:before,
.#{$fa-css-prefix}-life-ring:before { content: $fa-var-life-ring; }
.#{$fa-css-prefix}-circle-o-notch:before { content: $fa-var-circle-o-notch; }
.#{$fa-css-prefix}-ra:before,
.#{$fa-css-prefix}-resistance:before,
.#{$fa-css-prefix}-rebel:before { content: $fa-var-rebel; }
.#{$fa-css-prefix}-ge:before,
.#{$fa-css-prefix}-empire:before { content: $fa-var-empire; }
.#{$fa-css-prefix}-git-square:before { content: $fa-var-git-square; }
.#{$fa-css-prefix}-git:before { content: $fa-var-git; }
.#{$fa-css-prefix}-y-combinator-square:before,
.#{$fa-css-prefix}-yc-square:before,
.#{$fa-css-prefix}-hacker-news:before { content: $fa-var-hacker-news; }
.#{$fa-css-prefix}-tencent-weibo:before { content: $fa-var-tencent-weibo; }
.#{$fa-css-prefix}-qq:before { content: $fa-var-qq; }
.#{$fa-css-prefix}-wechat:before,
.#{$fa-css-prefix}-weixin:before { content: $fa-var-weixin; }
.#{$fa-css-prefix}-send:before,
.#{$fa-css-prefix}-paper-plane:before { content: $fa-var-paper-plane; }
.#{$fa-css-prefix}-send-o:before,
.#{$fa-css-prefix}-paper-plane-o:before { content: $fa-var-paper-plane-o; }
.#{$fa-css-prefix}-history:before { content: $fa-var-history; }
.#{$fa-css-prefix}-circle-thin:before { content: $fa-var-circle-thin; }
.#{$fa-css-prefix}-header:before { content: $fa-var-header; }
.#{$fa-css-prefix}-paragraph:before { content: $fa-var-paragraph; }
.#{$fa-css-prefix}-sliders:before { content: $fa-var-sliders; }
.#{$fa-css-prefix}-share-alt:before { content: $fa-var-share-alt; }
.#{$fa-css-prefix}-share-alt-square:before { content: $fa-var-share-alt-square; }
.#{$fa-css-prefix}-bomb:before { content: $fa-var-bomb; }
.#{$fa-css-prefix}-soccer-ball-o:before,
.#{$fa-css-prefix}-futbol-o:before { content: $fa-var-futbol-o; }
.#{$fa-css-prefix}-tty:before { content: $fa-var-tty; }
.#{$fa-css-prefix}-binoculars:before { content: $fa-var-binoculars; }
.#{$fa-css-prefix}-plug:before { content: $fa-var-plug; }
.#{$fa-css-prefix}-slideshare:before { content: $fa-var-slideshare; }
.#{$fa-css-prefix}-twitch:before { content: $fa-var-twitch; }
.#{$fa-css-prefix}-yelp:before { content: $fa-var-yelp; }
.#{$fa-css-prefix}-newspaper-o:before { content: $fa-var-newspaper-o; }
.#{$fa-css-prefix}-wifi:before { content: $fa-var-wifi; }
.#{$fa-css-prefix}-calculator:before { content: $fa-var-calculator; }
.#{$fa-css-prefix}-paypal:before { content: $fa-var-paypal; }
.#{$fa-css-prefix}-google-wallet:before { content: $fa-var-google-wallet; }
.#{$fa-css-prefix}-cc-visa:before { content: $fa-var-cc-visa; }
.#{$fa-css-prefix}-cc-mastercard:before { content: $fa-var-cc-mastercard; }
.#{$fa-css-prefix}-cc-discover:before { content: $fa-var-cc-discover; }
.#{$fa-css-prefix}-cc-amex:before { content: $fa-var-cc-amex; }
.#{$fa-css-prefix}-cc-paypal:before { content: $fa-var-cc-paypal; }
.#{$fa-css-prefix}-cc-stripe:before { content: $fa-var-cc-stripe; }
.#{$fa-css-prefix}-bell-slash:before { content: $fa-var-bell-slash; }
.#{$fa-css-prefix}-bell-slash-o:before { content: $fa-var-bell-slash-o; }
.#{$fa-css-prefix}-trash:before { content: $fa-var-trash; }
.#{$fa-css-prefix}-copyright:before { content: $fa-var-copyright; }
.#{$fa-css-prefix}-at:before { content: $fa-var-at; }
.#{$fa-css-prefix}-eyedropper:before { content: $fa-var-eyedropper; }
.#{$fa-css-prefix}-paint-brush:before { content: $fa-var-paint-brush; }
.#{$fa-css-prefix}-birthday-cake:before { content: $fa-var-birthday-cake; }
.#{$fa-css-prefix}-area-chart:before { content: $fa-var-area-chart; }
.#{$fa-css-prefix}-pie-chart:before { content: $fa-var-pie-chart; }
.#{$fa-css-prefix}-line-chart:before { content: $fa-var-line-chart; }
.#{$fa-css-prefix}-lastfm:before { content: $fa-var-lastfm; }
.#{$fa-css-prefix}-lastfm-square:before { content: $fa-var-lastfm-square; }
.#{$fa-css-prefix}-toggle-off:before { content: $fa-var-toggle-off; }
.#{$fa-css-prefix}-toggle-on:before { content: $fa-var-toggle-on; }
.#{$fa-css-prefix}-bicycle:before { content: $fa-var-bicycle; }
.#{$fa-css-prefix}-bus:before { content: $fa-var-bus; }
.#{$fa-css-prefix}-ioxhost:before { content: $fa-var-ioxhost; }
.#{$fa-css-prefix}-angellist:before { content: $fa-var-angellist; }
.#{$fa-css-prefix}-cc:before { content: $fa-var-cc; }
.#{$fa-css-prefix}-shekel:before,
.#{$fa-css-prefix}-sheqel:before,
.#{$fa-css-prefix}-ils:before { content: $fa-var-ils; }
.#{$fa-css-prefix}-meanpath:before { content: $fa-var-meanpath; }
.#{$fa-css-prefix}-buysellads:before { content: $fa-var-buysellads; }
.#{$fa-css-prefix}-connectdevelop:before { content: $fa-var-connectdevelop; }
.#{$fa-css-prefix}-dashcube:before { content: $fa-var-dashcube; }
.#{$fa-css-prefix}-forumbee:before { content: $fa-var-forumbee; }
.#{$fa-css-prefix}-leanpub:before { content: $fa-var-leanpub; }
.#{$fa-css-prefix}-sellsy:before { content: $fa-var-sellsy; }
.#{$fa-css-prefix}-shirtsinbulk:before { content: $fa-var-shirtsinbulk; }
.#{$fa-css-prefix}-simplybuilt:before { content: $fa-var-simplybuilt; }
.#{$fa-css-prefix}-skyatlas:before { content: $fa-var-skyatlas; }
.#{$fa-css-prefix}-cart-plus:before { content: $fa-var-cart-plus; }
.#{$fa-css-prefix}-cart-arrow-down:before { content: $fa-var-cart-arrow-down; }
.#{$fa-css-prefix}-diamond:before { content: $fa-var-diamond; }
.#{$fa-css-prefix}-ship:before { content: $fa-var-ship; }
.#{$fa-css-prefix}-user-secret:before { content: $fa-var-user-secret; }
.#{$fa-css-prefix}-motorcycle:before { content: $fa-var-motorcycle; }
.#{$fa-css-prefix}-street-view:before { content: $fa-var-street-view; }
.#{$fa-css-prefix}-heartbeat:before { content: $fa-var-heartbeat; }
.#{$fa-css-prefix}-venus:before { content: $fa-var-venus; }
.#{$fa-css-prefix}-mars:before { content: $fa-var-mars; }
.#{$fa-css-prefix}-mercury:before { content: $fa-var-mercury; }
.#{$fa-css-prefix}-intersex:before,
.#{$fa-css-prefix}-transgender:before { content: $fa-var-transgender; }
.#{$fa-css-prefix}-transgender-alt:before { content: $fa-var-transgender-alt; }
.#{$fa-css-prefix}-venus-double:before { content: $fa-var-venus-double; }
.#{$fa-css-prefix}-mars-double:before { content: $fa-var-mars-double; }
.#{$fa-css-prefix}-venus-mars:before { content: $fa-var-venus-mars; }
.#{$fa-css-prefix}-mars-stroke:before { content: $fa-var-mars-stroke; }
.#{$fa-css-prefix}-mars-stroke-v:before { content: $fa-var-mars-stroke-v; }
.#{$fa-css-prefix}-mars-stroke-h:before { content: $fa-var-mars-stroke-h; }
.#{$fa-css-prefix}-neuter:before { content: $fa-var-neuter; }
.#{$fa-css-prefix}-genderless:before { content: $fa-var-genderless; }
.#{$fa-css-prefix}-facebook-official:before { content: $fa-var-facebook-official; }
.#{$fa-css-prefix}-pinterest-p:before { content: $fa-var-pinterest-p; }
.#{$fa-css-prefix}-whatsapp:before { content: $fa-var-whatsapp; }
.#{$fa-css-prefix}-server:before { content: $fa-var-server; }
.#{$fa-css-prefix}-user-plus:before { content: $fa-var-user-plus; }
.#{$fa-css-prefix}-user-times:before { content: $fa-var-user-times; }
.#{$fa-css-prefix}-hotel:before,
.#{$fa-css-prefix}-bed:before { content: $fa-var-bed; }
.#{$fa-css-prefix}-viacoin:before { content: $fa-var-viacoin; }
.#{$fa-css-prefix}-train:before { content: $fa-var-train; }
.#{$fa-css-prefix}-subway:before { content: $fa-var-subway; }
.#{$fa-css-prefix}-medium:before { content: $fa-var-medium; }
.#{$fa-css-prefix}-yc:before,
.#{$fa-css-prefix}-y-combinator:before { content: $fa-var-y-combinator; }
.#{$fa-css-prefix}-optin-monster:before { content: $fa-var-optin-monster; }
.#{$fa-css-prefix}-opencart:before { content: $fa-var-opencart; }
.#{$fa-css-prefix}-expeditedssl:before { content: $fa-var-expeditedssl; }
.#{$fa-css-prefix}-battery-4:before,
.#{$fa-css-prefix}-battery:before,
.#{$fa-css-prefix}-battery-full:before { content: $fa-var-battery-full; }
.#{$fa-css-prefix}-battery-3:before,
.#{$fa-css-prefix}-battery-three-quarters:before { content: $fa-var-battery-three-quarters; }
.#{$fa-css-prefix}-battery-2:before,
.#{$fa-css-prefix}-battery-half:before { content: $fa-var-battery-half; }
.#{$fa-css-prefix}-battery-1:before,
.#{$fa-css-prefix}-battery-quarter:before { content: $fa-var-battery-quarter; }
.#{$fa-css-prefix}-battery-0:before,
.#{$fa-css-prefix}-battery-empty:before { content: $fa-var-battery-empty; }
.#{$fa-css-prefix}-mouse-pointer:before { content: $fa-var-mouse-pointer; }
.#{$fa-css-prefix}-i-cursor:before { content: $fa-var-i-cursor; }
.#{$fa-css-prefix}-object-group:before { content: $fa-var-object-group; }
.#{$fa-css-prefix}-object-ungroup:before { content: $fa-var-object-ungroup; }
.#{$fa-css-prefix}-sticky-note:before { content: $fa-var-sticky-note; }
.#{$fa-css-prefix}-sticky-note-o:before { content: $fa-var-sticky-note-o; }
.#{$fa-css-prefix}-cc-jcb:before { content: $fa-var-cc-jcb; }
.#{$fa-css-prefix}-cc-diners-club:before { content: $fa-var-cc-diners-club; }
.#{$fa-css-prefix}-clone:before { content: $fa-var-clone; }
.#{$fa-css-prefix}-balance-scale:before { content: $fa-var-balance-scale; }
.#{$fa-css-prefix}-hourglass-o:before { content: $fa-var-hourglass-o; }
.#{$fa-css-prefix}-hourglass-1:before,
.#{$fa-css-prefix}-hourglass-start:before { content: $fa-var-hourglass-start; }
.#{$fa-css-prefix}-hourglass-2:before,
.#{$fa-css-prefix}-hourglass-half:before { content: $fa-var-hourglass-half; }
.#{$fa-css-prefix}-hourglass-3:before,
.#{$fa-css-prefix}-hourglass-end:before { content: $fa-var-hourglass-end; }
.#{$fa-css-prefix}-hourglass:before { content: $fa-var-hourglass; }
.#{$fa-css-prefix}-hand-grab-o:before,
.#{$fa-css-prefix}-hand-rock-o:before { content: $fa-var-hand-rock-o; }
.#{$fa-css-prefix}-hand-stop-o:before,
.#{$fa-css-prefix}-hand-paper-o:before { content: $fa-var-hand-paper-o; }
.#{$fa-css-prefix}-hand-scissors-o:before { content: $fa-var-hand-scissors-o; }
.#{$fa-css-prefix}-hand-lizard-o:before { content: $fa-var-hand-lizard-o; }
.#{$fa-css-prefix}-hand-spock-o:before { content: $fa-var-hand-spock-o; }
.#{$fa-css-prefix}-hand-pointer-o:before { content: $fa-var-hand-pointer-o; }
.#{$fa-css-prefix}-hand-peace-o:before { content: $fa-var-hand-peace-o; }
.#{$fa-css-prefix}-trademark:before { content: $fa-var-trademark; }
.#{$fa-css-prefix}-registered:before { content: $fa-var-registered; }
.#{$fa-css-prefix}-creative-commons:before { content: $fa-var-creative-commons; }
.#{$fa-css-prefix}-gg:before { content: $fa-var-gg; }
.#{$fa-css-prefix}-gg-circle:before { content: $fa-var-gg-circle; }
.#{$fa-css-prefix}-tripadvisor:before { content: $fa-var-tripadvisor; }
.#{$fa-css-prefix}-odnoklassniki:before { content: $fa-var-odnoklassniki; }
.#{$fa-css-prefix}-odnoklassniki-square:before { content: $fa-var-odnoklassniki-square; }
.#{$fa-css-prefix}-get-pocket:before { content: $fa-var-get-pocket; }
.#{$fa-css-prefix}-wikipedia-w:before { content: $fa-var-wikipedia-w; }
.#{$fa-css-prefix}-safari:before { content: $fa-var-safari; }
.#{$fa-css-prefix}-chrome:before { content: $fa-var-chrome; }
.#{$fa-css-prefix}-firefox:before { content: $fa-var-firefox; }
.#{$fa-css-prefix}-opera:before { content: $fa-var-opera; }
.#{$fa-css-prefix}-internet-explorer:before { content: $fa-var-internet-explorer; }
.#{$fa-css-prefix}-tv:before,
.#{$fa-css-prefix}-television:before { content: $fa-var-television; }
.#{$fa-css-prefix}-contao:before { content: $fa-var-contao; }
.#{$fa-css-prefix}-500px:before { content: $fa-var-500px; }
.#{$fa-css-prefix}-amazon:before { content: $fa-var-amazon; }
.#{$fa-css-prefix}-calendar-plus-o:before { content: $fa-var-calendar-plus-o; }
.#{$fa-css-prefix}-calendar-minus-o:before { content: $fa-var-calendar-minus-o; }
.#{$fa-css-prefix}-calendar-times-o:before { content: $fa-var-calendar-times-o; }
.#{$fa-css-prefix}-calendar-check-o:before { content: $fa-var-calendar-check-o; }
.#{$fa-css-prefix}-industry:before { content: $fa-var-industry; }
.#{$fa-css-prefix}-map-pin:before { content: $fa-var-map-pin; }
.#{$fa-css-prefix}-map-signs:before { content: $fa-var-map-signs; }
.#{$fa-css-prefix}-map-o:before { content: $fa-var-map-o; }
.#{$fa-css-prefix}-map:before { content: $fa-var-map; }
.#{$fa-css-prefix}-commenting:before { content: $fa-var-commenting; }
.#{$fa-css-prefix}-commenting-o:before { content: $fa-var-commenting-o; }
.#{$fa-css-prefix}-houzz:before { content: $fa-var-houzz; }
.#{$fa-css-prefix}-vimeo:before { content: $fa-var-vimeo; }
.#{$fa-css-prefix}-black-tie:before { content: $fa-var-black-tie; }
.#{$fa-css-prefix}-fonticons:before { content: $fa-var-fonticons; }
.#{$fa-css-prefix}-reddit-alien:before { content: $fa-var-reddit-alien; }
.#{$fa-css-prefix}-edge:before { content: $fa-var-edge; }
.#{$fa-css-prefix}-credit-card-alt:before { content: $fa-var-credit-card-alt; }
.#{$fa-css-prefix}-codiepie:before { content: $fa-var-codiepie; }
.#{$fa-css-prefix}-modx:before { content: $fa-var-modx; }
.#{$fa-css-prefix}-fort-awesome:before { content: $fa-var-fort-awesome; }
.#{$fa-css-prefix}-usb:before { content: $fa-var-usb; }
.#{$fa-css-prefix}-product-hunt:before { content: $fa-var-product-hunt; }
.#{$fa-css-prefix}-mixcloud:before { content: $fa-var-mixcloud; }
.#{$fa-css-prefix}-scribd:before { content: $fa-var-scribd; }
.#{$fa-css-prefix}-pause-circle:before { content: $fa-var-pause-circle; }
.#{$fa-css-prefix}-pause-circle-o:before { content: $fa-var-pause-circle-o; }
.#{$fa-css-prefix}-stop-circle:before { content: $fa-var-stop-circle; }
.#{$fa-css-prefix}-stop-circle-o:before { content: $fa-var-stop-circle-o; }
.#{$fa-css-prefix}-shopping-bag:before { content: $fa-var-shopping-bag; }
.#{$fa-css-prefix}-shopping-basket:before { content: $fa-var-shopping-basket; }
.#{$fa-css-prefix}-hashtag:before { content: $fa-var-hashtag; }
.#{$fa-css-prefix}-bluetooth:before { content: $fa-var-bluetooth; }
.#{$fa-css-prefix}-bluetooth-b:before { content: $fa-var-bluetooth-b; }
.#{$fa-css-prefix}-percent:before { content: $fa-var-percent; }
.#{$fa-css-prefix}-gitlab:before { content: $fa-var-gitlab; }
.#{$fa-css-prefix}-wpbeginner:before { content: $fa-var-wpbeginner; }
.#{$fa-css-prefix}-wpforms:before { content: $fa-var-wpforms; }
.#{$fa-css-prefix}-envira:before { content: $fa-var-envira; }
.#{$fa-css-prefix}-universal-access:before { content: $fa-var-universal-access; }
.#{$fa-css-prefix}-wheelchair-alt:before { content: $fa-var-wheelchair-alt; }
.#{$fa-css-prefix}-question-circle-o:before { content: $fa-var-question-circle-o; }
.#{$fa-css-prefix}-blind:before { content: $fa-var-blind; }
.#{$fa-css-prefix}-audio-description:before { content: $fa-var-audio-description; }
.#{$fa-css-prefix}-volume-control-phone:before { content: $fa-var-volume-control-phone; }
.#{$fa-css-prefix}-braille:before { content: $fa-var-braille; }
.#{$fa-css-prefix}-assistive-listening-systems:before { content: $fa-var-assistive-listening-systems; }
.#{$fa-css-prefix}-asl-interpreting:before,
.#{$fa-css-prefix}-american-sign-language-interpreting:before { content: $fa-var-american-sign-language-interpreting; }
.#{$fa-css-prefix}-deafness:before,
.#{$fa-css-prefix}-hard-of-hearing:before,
.#{$fa-css-prefix}-deaf:before { content: $fa-var-deaf; }
.#{$fa-css-prefix}-glide:before { content: $fa-var-glide; }
.#{$fa-css-prefix}-glide-g:before { content: $fa-var-glide-g; }
.#{$fa-css-prefix}-signing:before,
.#{$fa-css-prefix}-sign-language:before { content: $fa-var-sign-language; }
.#{$fa-css-prefix}-low-vision:before { content: $fa-var-low-vision; }
.#{$fa-css-prefix}-viadeo:before { content: $fa-var-viadeo; }
.#{$fa-css-prefix}-viadeo-square:before { content: $fa-var-viadeo-square; }
.#{$fa-css-prefix}-snapchat:before { content: $fa-var-snapchat; }
.#{$fa-css-prefix}-snapchat-ghost:before { content: $fa-var-snapchat-ghost; }
.#{$fa-css-prefix}-snapchat-square:before { content: $fa-var-snapchat-square; }
.#{$fa-css-prefix}-pied-piper:before { content: $fa-var-pied-piper; }
.#{$fa-css-prefix}-first-order:before { content: $fa-var-first-order; }
.#{$fa-css-prefix}-yoast:before { content: $fa-var-yoast; }
.#{$fa-css-prefix}-themeisle:before { content: $fa-var-themeisle; }
.#{$fa-css-prefix}-google-plus-circle:before,
.#{$fa-css-prefix}-google-plus-official:before { content: $fa-var-google-plus-official; }
.#{$fa-css-prefix}-fa:before,
.#{$fa-css-prefix}-font-awesome:before { content: $fa-var-font-awesome; }
.#{$fa-css-prefix}-handshake-o:before { content: $fa-var-handshake-o; }
.#{$fa-css-prefix}-envelope-open:before { content: $fa-var-envelope-open; }
.#{$fa-css-prefix}-envelope-open-o:before { content: $fa-var-envelope-open-o; }
.#{$fa-css-prefix}-linode:before { content: $fa-var-linode; }
.#{$fa-css-prefix}-address-book:before { content: $fa-var-address-book; }
.#{$fa-css-prefix}-address-book-o:before { content: $fa-var-address-book-o; }
.#{$fa-css-prefix}-vcard:before,
.#{$fa-css-prefix}-address-card:before { content: $fa-var-address-card; }
.#{$fa-css-prefix}-vcard-o:before,
.#{$fa-css-prefix}-address-card-o:before { content: $fa-var-address-card-o; }
.#{$fa-css-prefix}-user-circle:before { content: $fa-var-user-circle; }
.#{$fa-css-prefix}-user-circle-o:before { content: $fa-var-user-circle-o; }
.#{$fa-css-prefix}-user-o:before { content: $fa-var-user-o; }
.#{$fa-css-prefix}-id-badge:before { content: $fa-var-id-badge; }
.#{$fa-css-prefix}-drivers-license:before,
.#{$fa-css-prefix}-id-card:before { content: $fa-var-id-card; }
.#{$fa-css-prefix}-drivers-license-o:before,
.#{$fa-css-prefix}-id-card-o:before { content: $fa-var-id-card-o; }
.#{$fa-css-prefix}-quora:before { content: $fa-var-quora; }
.#{$fa-css-prefix}-free-code-camp:before { content: $fa-var-free-code-camp; }
.#{$fa-css-prefix}-telegram:before { content: $fa-var-telegram; }
.#{$fa-css-prefix}-thermometer-4:before,
.#{$fa-css-prefix}-thermometer:before,
.#{$fa-css-prefix}-thermometer-full:before { content: $fa-var-thermometer-full; }
.#{$fa-css-prefix}-thermometer-3:before,
.#{$fa-css-prefix}-thermometer-three-quarters:before { content: $fa-var-thermometer-three-quarters; }
.#{$fa-css-prefix}-thermometer-2:before,
.#{$fa-css-prefix}-thermometer-half:before { content: $fa-var-thermometer-half; }
.#{$fa-css-prefix}-thermometer-1:before,
.#{$fa-css-prefix}-thermometer-quarter:before { content: $fa-var-thermometer-quarter; }
.#{$fa-css-prefix}-thermometer-0:before,
.#{$fa-css-prefix}-thermometer-empty:before { content: $fa-var-thermometer-empty; }
.#{$fa-css-prefix}-shower:before { content: $fa-var-shower; }
.#{$fa-css-prefix}-bathtub:before,
.#{$fa-css-prefix}-s15:before,
.#{$fa-css-prefix}-bath:before { content: $fa-var-bath; }
.#{$fa-css-prefix}-podcast:before { content: $fa-var-podcast; }
.#{$fa-css-prefix}-window-maximize:before { content: $fa-var-window-maximize; }
.#{$fa-css-prefix}-window-minimize:before { content: $fa-var-window-minimize; }
.#{$fa-css-prefix}-window-restore:before { content: $fa-var-window-restore; }
.#{$fa-css-prefix}-times-rectangle:before,
.#{$fa-css-prefix}-window-close:before { content: $fa-var-window-close; }
.#{$fa-css-prefix}-times-rectangle-o:before,
.#{$fa-css-prefix}-window-close-o:before { content: $fa-var-window-close-o; }
.#{$fa-css-prefix}-bandcamp:before { content: $fa-var-bandcamp; }
.#{$fa-css-prefix}-grav:before { content: $fa-var-grav; }
.#{$fa-css-prefix}-etsy:before { content: $fa-var-etsy; }
.#{$fa-css-prefix}-imdb:before { content: $fa-var-imdb; }
.#{$fa-css-prefix}-ravelry:before { content: $fa-var-ravelry; }
.#{$fa-css-prefix}-eercast:before { content: $fa-var-eercast; }
.#{$fa-css-prefix}-microchip:before { content: $fa-var-microchip; }
.#{$fa-css-prefix}-snowflake-o:before { content: $fa-var-snowflake-o; }
.#{$fa-css-prefix}-superpowers:before { content: $fa-var-superpowers; }
.#{$fa-css-prefix}-wpexplorer:before { content: $fa-var-wpexplorer; }
.#{$fa-css-prefix}-meetup:before { content: $fa-var-meetup; }

View File

@ -1,13 +0,0 @@
// Icon Sizes
// -------------------------
/* makes the font 33% larger relative to the icon container */
.#{$fa-css-prefix}-lg {
font-size: (4em / 3);
line-height: (3em / 4);
vertical-align: -15%;
}
.#{$fa-css-prefix}-2x { font-size: 2em; }
.#{$fa-css-prefix}-3x { font-size: 3em; }
.#{$fa-css-prefix}-4x { font-size: 4em; }
.#{$fa-css-prefix}-5x { font-size: 5em; }

Some files were not shown because too many files have changed in this diff Show More