Compare commits

...

No commits in common. "5.15.1" and "6.x" have entirely different histories.
5.15.1 ... 6.x

10810 changed files with 706160 additions and 178908 deletions

View File

@ -0,0 +1,60 @@
name: Icon request
description: Suggest an icon, modifier, or emoji to be included in Font Awesome
labels: ["new icon"]
projects: ["FortAwesome/20"]
title: "Icon Request: "
body:
- type: markdown
attributes:
value: "## Before You Request"
- type: markdown
attributes:
value: |
Thanks for requesting a new Font Awesome icon! But first, let's get some specifics out of the way. For example, lots of amazing custom icons can already be created using our [Icon Wizard](https://blog.fontawesome.com/icon-wizard/)! Please check through this list first to ensure your request is as useful and unique as possible:
- type: checkboxes
id: checklist
attributes:
label: Checklist
options:
- label: 'The title of this issue starts with "Icon Request: " and is followed by the new icon name *(ex. "Icon Request: Proton Torpedo")*'
required: true
- label: This icon does not represent a brand
required: true
- label: 'This request is for a single icon or a matched pair *(ex. `lock` and `unlock`)*'
required: true
- label: I've already [searched through existing issues](https://github.com/FortAwesome/Font-Awesome/issues), and to the best of my knowledge this request isn't a duplicate
required: true
- label: I understand [how new icon requests work](https://fontawesome.com/support#requesting-icons)
required: true
- type: markdown
attributes:
value: "## Your Request"
- type: dropdown
id: type
attributes:
label: Request type
description: What kind of icon or element do you have in mind?
options:
- ✨ New icon
- 😄 Emoji (please provide Unicode code point)
- 🧙 Wizard modifier
- 🔧 Icon improvement
## - 🧱 Element (save this for the future)
default: 0
validations:
required: true
- type: textarea
id: use-case
attributes:
label: Use case
description: How should this new icon be used?
placeholder: ex. a proton torpedo for our holographic space station attack plans
validations:
required: true
- type: textarea
id: example
attributes:
label: Visual example
description: Insert an example image or other visual reference to help us get the picture (literally).
validations:
required: true

View File

@ -0,0 +1,36 @@
name: Brand request
description: Suggest a brand to be included in Font Awesome
labels: ["brand icon"]
title: "Brand request: "
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to request a new brand!
- type: textarea
id: description
attributes:
label: Description
description: Please enter a brief description of this brand and why it is important to have it in the core of Font Awesome
- type: input
id: official-website
attributes:
label: Official website
description: Please provide the official website of this brand. The website must be in production and reachable from the public internet
validations:
required: true
- type: input
attributes:
label: Brand guidelines
description: "Link to brand guidelines, if available (e.g.: https://about.twitter.com/en/who-we-are/brand-toolkit)"
- type: checkboxes
id: icon-request-checklist
attributes:
label: Icon request checklist
options:
- label: 'The title starts with "Brand request: ", is followed by the requested brand name'
required: true
- label: 'I have [searched for existing issues](https://github.com/FortAwesome/Font-Awesome/issues) and to the best of my knowledge this is not a duplicate'
required: true
- label: 'I have [understood how requests work](https://fontawesome.com/community/leaderboard/brands#faqs)'
required: true

View File

@ -0,0 +1,81 @@
name: Bug report (Web - CSS - JS)
description: Report a bug which occurs in a web application
title: "Bug: "
labels: ["bug", "needs-triage"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill up this bug report!
There are a lot of different ways of using Font Awesome. In order to help us
debugging, please provide as much information as you can.
A reduced reproducible test case would definitely help the process.
- type: textarea
id: description
attributes:
label: Bug description
description: What happened? What are you seeing? How did you arrive here?
validations:
required: true
- type: input
id: reproducible-test-case
attributes:
label: Reproducible test case
description: Provide a URL to a reproducible use case. Use codepen.io, jsfiddle.net, jsbin.com, codesandbox.io, or whatever.
- type: textarea
id: screenshots
attributes:
label: Screenshots
description: Add screenshots to help explain your problem
- type: input
id: version
attributes:
label: Font Awesome version
description: Provide the version of Font Awesome affected by this bug
placeholder: v6.0.0
validations:
required: true
- type: dropdown
id: serving
attributes:
label: Serving
multiple: true
options:
- Kit
- Font Awesome CDN
- Self-hosted
- Other (as specified in the bug description)
validations:
required: true
- type: dropdown
id: implementation
attributes:
label: Implementation
multiple: true
options:
- CSS
- SVG+JS
- SVG Sprites
- Other (as specified in the bug description)
validations:
required: true
- type: textarea
id: browser-operating-system
attributes:
label: Browser and Operating System
description: Provide information about the browser and operating system affected by this bug. [List of supported browsers](https://fontawesome.com/v6/docs/web/dig-deeper/browser-support)
placeholder: |
- Chrome 94 on Windows 10
- Firefox 92 on macOS
validations:
required: true
- type: checkboxes
id: web-bug-report-checklist
attributes:
label: Web bug report checklist
options:
- label: 'I have included a test case because my odds go _way_ up that the team can fix this when I do'
- label: 'I have [searched for existing issues](https://github.com/FortAwesome/Font-Awesome/issues) and to the best of my knowledge this is not a duplicate'
required: true

View File

@ -0,0 +1,42 @@
name: Bug report (Desktop / Native / Other)
description: Report a bug which occurs outside of a web application
title: "Bug: "
labels: ["bug", "needs-triage"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill up this bug report!
- type: textarea
id: description
attributes:
label: Bug description
description: What happened? What are you seeing? How did you arrive here?
validations:
required: true
- type: input
id: version
attributes:
label: Font Awesome version
description: Provide the version of Font Awesome affected by this bug
placeholder: v6.0.0
validations:
required: true
- type: textarea
id: application-operating-system
attributes:
label: Application and Operating System
description: Provide information about the application and operating system affected by this bug
placeholder: |
- GIMP on Windows 10
- Adobe Photoshop on macOS
validations:
required: true
- type: checkboxes
id: web-bug-report-checklist
attributes:
label: Web bug report checklist
options:
- label: 'I have included a test case because my odds go _way_ up that the team can fix this when I do'
- label: 'I have [searched for existing issues](https://github.com/FortAwesome/Font-Awesome/issues) and to the best of my knowledge this is not a duplicate'
required: true

View File

@ -0,0 +1,42 @@
name: Feature request
description: Suggest an idea for Font Awesome
title: "Feature request: "
labels: ['feature']
body:
- type: markdown
attributes:
value: Thanks for taking the time to request a new feature!
- type: textarea
id: use-case
attributes:
label: Is your feature request related to a problem?
description: A clear and concise description of what the problem is
placeholder: I'm always frustrated when...
- type: textarea
id: feature
attributes:
label: Feature description
description: A clear and concise description of what you want to happen
validations:
required: true
- type: textarea
id: alternatives
attributes:
label: Alternatives
description: A clear and concise description of any alternative solutions or features you've considered.
- type: textarea
id: additional-context
attributes:
label: Additional context
description: Add any other context or screenshots about the feature request here
- type: checkboxes
id: feature-request-checklist
attributes:
label: Feature request checklist
options:
- label: 'The title starts with "Feature request: " and is followed by the requested feature description'
required: true
- label: 'This is a single feature'
required: true
- label: 'I have [searched for existing issues](https://github.com/FortAwesome/Font-Awesome/issues) and to the best of my knowledge this is not a duplicate'
required: true

View File

@ -1,36 +0,0 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''
---
**Describe the bug**
What happened? What are you seeing? How did you arrive here?
**To Reproduce**
Insert a URL to your test case - use codepen.io, jsfiddle.net, jsbin.com, codesandbox.io, or whatever.
Describe any details about the test case that we need to know like "whatever you do, don't click the red button."
**Expected behavior**
How would you like this to work instead?
**Screenshots**
If applicable, add screenshots to help explain your problem.
**Version and implementation**
Version: <!--- Give us the version number here -->
Browser and version: <!--- If applicable give us the browser specs -->
- [ ] SVG with JS
- [ ] Web Fonts with CSS
- [ ] SVG Sprites
- [ ] On the Desktop
**Bug report checklist**
- [ ] I have filled out as much of the above information as I can
- [ ] I have included a test case because my odds go _way_ up that the team can fix this when I do
- [ ] I have [searched for existing issues](https://github.com/FortAwesome/Font-Awesome/issues) and to the best of my knowledge this is not a duplicate

4
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@ -0,0 +1,4 @@
contact_links:
- name: Pro License Issue
url: https://fontawesome.com/#footer
about: Click on the "Support" link in the footer

View File

@ -1,25 +0,0 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''
---
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or screenshots about the feature request here.
**Feature request checklist**
- [ ] This is a single feature (i.e. not a re-write of all of Font Awesome)
- [ ] The title starts with "Feature request: " and is followed by a clear feature name (Ex: `Feature request: moar cowbell`)
- [ ] I have [searched for existing issues](https://github.com/FortAwesome/Font-Awesome-Pro/issues) and to the best of my knowledge this is not a duplicate

View File

@ -1,21 +0,0 @@
---
name: Icon request
about: Suggest an icon to be included in Font Awesome
title: ''
labels: ''
assignees: ''
---
**What can it be used for?**
Describe how this could be used / the use case for this icon.
**Example image (optional)**
Insert the example image here if necessary.
**Icon request checklist**
- [ ] This is a single icon or matched pair (Ex: `lock` / `unlock`)
- [ ] The title starts with "Icon request: " and is followed by the requested icon name (Ex: `Icon request: magical-unicorn`)
- [ ] I have [searched for existing issues](https://github.com/FortAwesome/Font-Awesome/issues) and to the best of my knowledge this is not a duplicate
- [ ] I have included at least one example image if it could be helpful (optional)
- [ ] The request is for a concrete object (it's harder to make an icon to represent happiness, it's easier to make a smiley face. ☺)

File diff suppressed because it is too large Load Diff

View File

@ -8,18 +8,16 @@ We only accept issues that are icon requests, bug reports, or feature requests.
Bugs must be isolated and reproducible problems that we can fix within the Font
Awesome core.
* [Request a new icon](https://github.com/FortAwesome/Font-Awesome/issues/new?title=Icon%20request:%20icon-name&template=icon-request.md)
* [Request a new feature](https://github.com/FortAwesome/Font-Awesome/issues/new??title=Feature%20request:feature-name&template=feature-request.md)
* [Submit a bug report](https://github.com/FortAwesome/Font-Awesome/issues/new?template=bug-report.md)
## Key branches
- `master` is the latest, deployed version
* [Request a new icon](https://github.com/FortAwesome/Font-Awesome/issues/new?assignees=&labels=new+icon&projects=&template=000_icon_request.yml&title=Icon+request%3A+)
* [Request a new brand icon](https://github.com/FortAwesome/Font-Awesome/issues/new?assignees=&labels=brand+icon&projects=&template=001_brand_request.yml&title=Brand+request%3A+)
* [Submit a bug report for Web (Kit, CSS, JS)](https://github.com/FortAwesome/Font-Awesome/issues/new?assignees=&labels=bug%2Cneeds-triage&projects=&template=100_web_bug_report.yml&title=Bug%3A+)
* [Submit a bug report for Desktop, Native, and other use cases](https://github.com/FortAwesome/Font-Awesome/issues/new?assignees=&labels=bug%2Cneeds-triage&projects=&template=101_other_bug_report.yml&title=Bug%3A+)
* [Request a new feature](https://github.com/FortAwesome/Font-Awesome/issues/new?assignees=&labels=feature&projects=&template=200_feature_request.yml&title=Feature+request%3A+)
## Pull requests
- At the moment we are not accepting pull requests containing icons
- **At the moment we are not accepting pull requests containing icons**
- Pull requests that do not solve an existing issue are essentially un-prioritizeddon't expect these to be addressed quickly
- The files in this repository are generated elsewhere and we do not merge PR's directly into master
- Most of the files in this repository are generated by a build system, so we may not be able to merge PRs directly
- Try not to pollute your pull request with unintended changeskeep them simple and small
- Try to share which browsers your code has been tested in before submitting a pull request

View File

@ -1,23 +1,151 @@
Fonticons, Inc. (https://fontawesome.com)
--------------------------------------------------------------------------------
Font Awesome Free License
-------------------------
Font Awesome Free is free, open source, and GPL friendly. You can use it for
commercial projects, open source projects, or really almost whatever you want.
Full Font Awesome Free license: https://fontawesome.com/license/free.
# Icons: CC BY 4.0 License (https://creativecommons.org/licenses/by/4.0/)
In the Font Awesome Free download, the CC BY 4.0 license applies to all icons
packaged as SVG and JS file types.
--------------------------------------------------------------------------------
# Icons: CC BY 4.0 License (https://creativecommons.org/licenses/by/4.0/)
The Font Awesome Free download is licensed under a Creative Commons
Attribution 4.0 International License and applies to all icons packaged
as SVG and JS file types.
--------------------------------------------------------------------------------
# Fonts: SIL OFL 1.1 License
# Fonts: SIL OFL 1.1 License (https://scripts.sil.org/OFL)
In the Font Awesome Free download, the SIL OFL license applies to all icons
packaged as web and desktop font files.
Copyright (c) 2024 Fonticons, Inc. (https://fontawesome.com)
with Reserved Font Name: "Font Awesome".
This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at:
http://scripts.sil.org/OFL
SIL OPEN FONT LICENSE
Version 1.1 - 26 February 2007
PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.
The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded,
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.
DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.
"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).
"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).
"Modified Version" refers to any derivative made by adding to, deleting,
or substituting — in part or in whole — any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.
"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.
PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:
1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.
2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.
3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.
5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.
TERMINATION
This license becomes null and void if any of the above conditions are
not met.
DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.
--------------------------------------------------------------------------------
# Code: MIT License (https://opensource.org/licenses/MIT)
In the Font Awesome Free download, the MIT license applies to all non-font and
non-icon files.
Copyright 2024 Fonticons, Inc.
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in the
Software without restriction, including without limitation the rights to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
and to permit persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
--------------------------------------------------------------------------------
# Attribution
Attribution is required by MIT, SIL OFL, and CC BY licenses. Downloaded Font
Awesome Free files already contain embedded comments with sufficient
attribution, so you shouldn't need to do anything additional when using these
@ -27,7 +155,10 @@ We've kept attribution comments terse, so we ask that you do not actively work
to remove them from files, especially code. They're a great way for folks to
learn about Font Awesome.
--------------------------------------------------------------------------------
# Brand Icons
All brand icons are trademarks of their respective owners. The use of these
trademarks does not indicate endorsement of the trademark holder by Font
Awesome, nor vice versa. **Please do not use brand logos for any purpose except

View File

@ -1,67 +1,29 @@
<h1><img src="https://img.fortawesome.com/349cfdf6/logo-fa-free.svg" alt="Font Awesome 5 Free" width="50%"></h1>
<h1><img src="https://img.fortawesome.com/349cfdf6/fa-free-logo.svg" alt="Font Awesome Free" width="50%"></h1>
> Version 5 the iconic SVG, font, and CSS framework
> Version 6
The internet's most popular icon toolkit has been redesigned and built from
scratch. On top of this, features like icon font ligatures, an SVG framework,
official NPM packages for popular frontend libraries like React, and access to
a new CDN.
Not familiar with Font Awesome 5? [Learn
more](https://www.kickstarter.com/projects/232193852/font-awesome-5) about our
successful Kickstarter and plan. You can also **[order Font Awesome
Pro](https://fontawesome.com/pro)** which includes tons more icons directly
from [fontawesome.com](https://fontawesome.com).
Font Awesome is the Internet's icon library and toolkit, used by millions of
designers, developers, and content creators.
## Documentation
Learn how to get started with Font Awesome and then dive deeper into other and advanced topics:
Learn how to get started with Font Awesome and then dive deeper into other advanced topics:
### Using Font Awesome on the Web
[Docs for version 6](https://fontawesome.com/docs)
* [With SVG with JavaScript](https://fontawesome.com/how-to-use/on-the-web/setup/getting-started?using=svg-with-js)
* [With web fonts with CSS](https://fontawesome.com/how-to-use/on-the-web/setup/getting-started?using=web-fonts-with-css)
* [Upgrading from version 4](https://fontawesome.com/how-to-use/on-the-web/setup/upgrading-from-version-4)
* [Installing Font Awesome with a package manager](https://fontawesome.com/how-to-use/on-the-web/setup/using-package-managers)
* [Downloading + hosting Font Awesome yourself](https://fontawesome.com/how-to-use/on-the-web/setup/hosting-font-awesome-yourself)
* [Performance and security](https://fontawesome.com/how-to-use/performance-and-security)
* [Accessibility](https://fontawesome.com/how-to-use/on-the-web/other-topics/accessibility)
* [Troubleshooting](https://fontawesome.com/how-to-use/on-the-web/other-topics/troubleshooting)
### Where did Font Awesome 5, 4 (or 3) go?
#### Advanced Options & Techniques
Now that Font Awesome 6 has been released we are marking version 5 as Long Term
Support (LTS). Version 5 will get critical bug fixes only. Version 3 and 4 are
now end-of-life and we don't plan on releasing any further versions of the 4.x
or 3.x.
* [Using CSS pseudo-elements](https://fontawesome.com/how-to-use/on-the-web/advanced/css-pseudo-elements)
* [SVG sprites](https://fontawesome.com/how-to-use/svg-sprites)
* [The Font Awesome API](https://fontawesome.com/how-to-use/font-awesome-api)
* [SVG symbols](https://fontawesome.com/how-to-use/on-the-web/advanced/svg-symbols)
* [SVG JavaScript Core](https://fontawesome.com/how-to-use/on-the-web/advanced/svg-javascript-core)
* [Server side rendering](https://fontawesome.com/how-to-use/server-side-rendering)
### Using Font Awesome on the Desktop
* [Getting started](https://fontawesome.com/how-to-use/on-the-desktop/setup/getting-started)
* [Upgrading from version 4](https://fontawesome.com/how-to-use/on-the-desktop/setup/upgrading-from-version-4)
* [Using ligatures](https://fontawesome.com/how-to-use/on-the-desktop/referencing-icons/using-ligatures)
* [Using glyphs](https://fontawesome.com/how-to-use/on-the-desktop/referencing-icons/using-glyphs)
* [Troubleshooting](https://fontawesome.com/how-to-use/on-the-desktop/other-topics/troubleshooting)
### Where did Font Awesome 4 (or 3) go?
Now that Font Awesome 5 has been released we are marking version 4 as
end-of-life. We don't plan on releasing any further versions of the 4.x or 3.x.
Documentation is still available but it's moved to
[https://fontawesome.com/v4.7.0](https://fontawesome.com/v4.7.0) and
[https://fontawesome.com/v3.2.1](https://fontawesome.com/v3.2.1).
The Git repository for
[v4.7.0](https://github.com/FortAwesome/Font-Awesome/releases/tag/v4.7.0) and
[v3.2.1](https://github.com/FortAwesome/Font-Awesome/releases/tag/v3.2.1) can
be found in our GitHub releases.
You can see a complete list of versions on [our Versions
page](https://fontawesome.com/versions).
## Change log
We'll keep track of each release in the [CHANGELOG.md](./CHANGELOG.md)
The change log for releases is now [available directly on our site](https://fontawesome.com/docs/changelog/).
Looking for older versions of Font Awesome? Check the [releases](https://github.com/FortAwesome/Font-Awesome/releases).
@ -69,7 +31,8 @@ Looking for older versions of Font Awesome? Check the [releases](https://github.
From time-to-time we'll have special upgrading instructions from one version to the next.
Check out the [UPGRADING.md](./UPGRADING.md) guide when you upgrade your dependencies.
- [Web upgrading guide](https://fontawesome.com/docs/web/setup/upgrade/)
- [Desktop upgrading guide](https://fontawesome.com/docs/desktop/setup/upgrade/)
## Code of conduct
@ -88,9 +51,9 @@ with the following format:
`<major>.<minor>.<patch>`
For more information on SemVer, please visit http://semver.org.
For more information on SemVer, please visit https://semver.org.
**The major version "5" is part of an umbrella release. It includes many different types of files and technologies. Therefore
**The major version "6" is part of an umbrella release. It includes many different types of files and technologies. Therefore
we deviate from normal SemVer in the following ways:**
* Any release may update the design, look-and-feel, or branding of an existing
@ -125,14 +88,5 @@ to remove them from files, especially code. They're a great way for folks to
learn about Font Awesome.
## Team
* [Dave Gandy](https://github.com/davegandy)
* [Travis Chase](https://github.com/supercodepoet)
* [Rob Madole](https://github.com/robmadole)
* [Brian Talbot](https://github.com/talbs)
* [Jory Raphael](https://github.com/sensibleworld)
* [Mike Wilkerson](https://github.com/mlwilkerson)
* [Trevor Chase](https://github.com/trevorchase)
* [Jason Lundien](https://github.com/jasonlundien)
* [Jason Otero](https://github.com/deathnfudge)
* [Edward Emanuel](https://github.com/ej2)
* [Geremia Taglialatela](https://github.com/tagliala)
https://github.com/orgs/FortAwesome/people

View File

@ -2,606 +2,9 @@
See the [CHANGELOG.md](./CHANGELOG.md) for detailed information about what has changed between versions.
This guide is useful to figure out what you need to do between breaking changes.
Our upgrading guide has moved for version 6 to:
- [Web](https://fontawesome.com/docs/web/setup/upgrade/)
- [Desktop](https://fontawesome.com/docs/desktop/setup/upgrade/)
As always, [submit issues](https://github.com/FortAwesome/Font-Awesome/issues/new) that you run into with this guide or with these upgrades to us.
---
## 5.15.0 to 5.15.1
There are no breaking changes in this version upgrade.
---
## 5.14.0 to 5.15.0
The adobe icon has been removed by legal request of Adobe.
Font Awesome is no longer able to provide any logos or marks for the Adobe
brand or their products.
---
## 5.12.x/5.13.x to 5.14.0
In version 5.12.0 and 5.13.0 some of the icons were assigned unicode values
that were outside the Private Unicode Area (PUA). This caused problems with
some desktop software and caused the icons to show up as Chinese, Japanese, or
Korean (CJK) ideographs.
The unicode values have been re-assigned to values within the PUA range.
If you were using any of the following icons with pseudo-elements you will need
to change the CSS `content` value to the new unicode value.
| Icon name | Old | New |
| ---------------------- | ---- | ---- |
| bacteria | f959 | e059 |
| bacterium | f95a | e05a |
| box-tissue | f95b | e05b |
| caravan-alt | f900 | e000 |
| cat-space | f901 | e001 |
| coffee-pot | f902 | e002 |
| coffin-cross | f951 | e051 |
| comet | f903 | e003 |
| dailymotion | f952 | e052 |
| deezer | f977 | e077 |
| edge-legacy | f978 | e078 |
| fan-table | f904 | e004 |
| faucet | f905 | e005 |
| faucet-drip | f906 | e006 |
| firefox-browser | f907 | e007 |
| folder-download | f953 | e053 |
| folder-upload | f954 | e054 |
| galaxy | f908 | e008 |
| garage | f909 | e009 |
| garage-car | f90a | e00a |
| garage-open | f90b | e00b |
| google-pay | f979 | e079 |
| hand-holding-medical | f95c | e05c |
| hand-sparkles | f95d | e05d |
| hands-wash | f95e | e05e |
| handshake-alt-slash | f95f | e05f |
| handshake-slash | f960 | e060 |
| head-side-cough | f961 | e061 |
| head-side-cough-slash | f962 | e062 |
| head-side-mask | f963 | e063 |
| head-side-virus | f964 | e064 |
| heat | f90c | e00c |
| house | f90d | e00d |
| house-day | f90e | e00e |
| house-leave | f90f | e00f |
| house-night | f910 | e010 |
| house-return | f911 | e011 |
| house-signal | f912 | e012 |
| house-user | f965 | e065 |
| ideal | f913 | e013 |
| instagram-square | f955 | e055 |
| lamp-desk | f914 | e014 |
| lamp-floor | f915 | e015 |
| laptop-house | f966 | e066 |
| light-ceiling | f916 | e016 |
| light-switch | f917 | e017 |
| light-switch-off | f918 | e018 |
| light-switch-on | f919 | e019 |
| lungs-virus | f967 | e067 |
| microblog | f91a | e01a |
| microwave | f91b | e01b |
| mixer | f956 | e056 |
| outlet | f91c | e01c |
| oven | f91d | e01d |
| people-arrows | f968 | e068 |
| pied-piper-square | f91e | e01e |
| plane-slash | f969 | e069 |
| planet-moon | f91f | e01f |
| planet-ringed | f920 | e020 |
| police-box | f921 | e021 |
| portal-enter | f922 | e022 |
| portal-exit | f923 | e023 |
| pump-medical | f96a | e06a |
| pump-soap | f96b | e06b |
| radar | f924 | e024 |
| raygun | f925 | e025 |
| refrigerator | f926 | e026 |
| rocket-launch | f927 | e027 |
| rust | f97a | e07a |
| sensor | f928 | e028 |
| sensor-alert | f929 | e029 |
| sensor-fire | f92a | e02a |
| sensor-on | f92b | e02b |
| sensor-smoke | f92c | e02c |
| shield-virus | f96c | e06c |
| shopify | f957 | e057 |
| sink | f96d | e06d |
| siren | f92d | e02d |
| siren-on | f92e | e02e |
| soap | f96e | e06e |
| solar-system | f92f | e02f |
| sort-circle | f930 | e030 |
| sort-circle-down | f931 | e031 |
| sort-circle-up | f932 | e032 |
| space-station-moon | f933 | e033 |
| space-station-moon-alt | f934 | e034 |
| sprinkler | f935 | e035 |
| star-shooting | f936 | e036 |
| starfighter | f937 | e037 |
| starfighter-alt | f938 | e038 |
| starship | f939 | e039 |
| starship-freighter | f93a | e03a |
| stopwatch-20 | f96f | e06f |
| store-alt-slash | f970 | e070 |
| store-slash | f971 | e071 |
| sword-laser | f93b | e03b |
| sword-laser-alt | f93c | e03c |
| swords-laser | f93d | e03d |
| telescope | f93e | e03e |
| temperature-down | f93f | e03f |
| temperature-up | f940 | e040 |
| tiktok | f97b | e07b |
| toilet-paper-slash | f972 | e072 |
| trailer | f941 | e041 |
| transporter | f942 | e042 |
| transporter-1 | f943 | e043 |
| transporter-2 | f944 | e044 |
| transporter-3 | f945 | e045 |
| transporter-empty | f946 | e046 |
| ufo | f947 | e047 |
| ufo-beam | f948 | e048 |
| unity | f949 | e049 |
| unsplash | f97c | e07c |
| user-alien | f94a | e04a |
| user-robot | f94b | e04b |
| user-unlock | f958 | e058 |
| user-visor | f94c | e04c |
| users-slash | f973 | e073 |
| vacuum | f94d | e04d |
| vacuum-robot | f94e | e04e |
| virus | f974 | e074 |
| virus-slash | f975 | e075 |
| viruses | f976 | e076 |
| window-frame | f94f | e04f |
| window-frame-open | f950 | e050 |
---
## 5.13.0 to 5.13.1
There are no breaking changes in this version upgrade.
---
## 5.12.1 to 5.13.0
There are no breaking changes in this version upgrade.
---
## 5.12.0 to 5.12.1
There are no breaking changes in this version upgrade.
---
## 5.11.2 to 5.12.0
The 9-pointed icon named "haykal" was renamed to "bahai" to better match the
symbol. If you were previously using the misnamed icon rename to "bahai" when
upgrading.
---
## 5.11.1 to 5.11.2
The scanner-image icon was previously using the same unicode value as the scanner icon.
This has now been fixed and the scanner-image icon has a unique unicode value.
The film-canister icon was misspelled as "film-cannister". This has been fixed.
---
## 5.11.0 to 5.11.1
There are no breaking changes in this version upgrade.
---
## 5.10.2 to 5.11.0
There are no breaking changes in this version upgrade.
---
## 5.10.1 to 5.10.2
There are no breaking changes in this version upgrade.
---
## 5.10.0 to 5.10.1
The Sass function `fa-content-secondary` which was part of the `duotone.scss`
file has been removed due to its inconsistent behavior in different versions of
Sass pre-processors. Specifically [`node-sass`](https://github.com/sass/node-sass) and
[`sass`](https://github.com/sass/dart-sass) didn't produce the same output.
---
## 5.9.0 to 5.10.0
The following icon shims have been changed to better match the original version 4 icon:
* sort-alpha-desc
* sort-amount-desc
* sort-numeric-desc
---
## 5.8.2 to 5.9.0
The nintendo-switch icon has been removed by legal request of Nintendo of America Inc.
Font Awesome is no longer able to provide icons related to Nintendo, their
gaming consoles, accessories, or games.
---
## 5.8.1 to 5.8.2
There are no breaking changes in this version upgrade.
---
## 5.8.0 to 5.8.1
There are no breaking changes in this version upgrade.
---
## 5.7.x to 5.8.0
### Removing title elements from SVG sprites
Since the initial release of version 5, all the way back to 5.0.0 actually,
we've included `<title>` elements in the SVG sprites.
In https://github.com/FortAwesome/Font-Awesome/issues/14595 a discussion
outlines that this practice actually prevents normal efforts to make these
sprites accessible according to web accessibility standards.
If you are using sprites please refer to [our documentation on accessibility with Font Awesome](https://fontawesome.com/how-to-use/on-the-web/other-topics/accessibility).
### Removing vertical-align from the .fa-icon Sass mixin
Font Awesome has supported Sass and Less CSS pre-processors for a long time.
The version 5 `.fa-icon` mixin which is present in `scss/_mixins.scss`
previously included `vertical-align` which was incorrectly shifting icons.
If you have used this mixin in your own Sass files you will need to check the
alignment of those icons after upgrading to 5.8.0.
---
## 5.7.1 to 5.7.2
There are no breaking changes in this version upgrade.
---
## 5.7.0 to 5.7.1
The cheeseburger icon incorrectly placed the cheese _under_ the patty. This is unacceptable and we've fixed it.
---
## 5.6.x to 5.7.0
### OTF and TTF files
The PostScript name has been changed from `FontAwesome5ProSolid` to `FontAwesome5Pro-Solid`. This was done to be more compatible with tooling such as XCode.
We've also update the `Version` specifier. Font files only support a MAJOR and MINOR version number so we have modifed our schema. For example, version 5.7.0 of Font Awesome is reflected as 329.472 in the individual font files.
### Icon changes
The calendar-alt icon has been reverted back to the previous design in versions <= 5.6.0.
---
## 5.6.x to 5.6.3
The fire icon has been reverted back to the previous design in versions <= 5.5.0.
We have moved the redesigned icon to fire-alt.
---
## 5.6.0 to 5.6.1
There are no breaking changes in this version upgrade.
---
## 5.5.0 to 5.6.0
In this release we've taken time to re-organize the directory structure to
prevent redundancy and improve findability.
### Directory structure changes
| Old path | New path |
|-----------------------------------|-------------|
| advanced-options/metadata | metadata |
| advanced-options/raw-svg | svgs |
| advanced-options/svg-sprites | sprites |
| advanced-options/use-with-node-js | js-packages |
| svg-with-js/js | js |
| svg-with-js/css | css |
| use-on-desktop | otfs |
| web-fonts-with-css/css | css |
| web-fonts-with-css/less | less |
| web-fonts-with-css/scss | scss |
| web-fonts-with-css/webfonts | webfonts |
---
## 5.4.x to 5.5.0
There are no breaking changes in this version upgrade.
---
## 5.4.0 to 5.4.1
Categories were renamed from:
* Holiday to Halloween
* Seasonal to Autumn
The "wand" icon in version 5.4.0 matched the "wand-magic" icon. The magical
sparkles have been removed for "wand". If you were relying on this decoration
in your design switch to "wand-magic" to bring the magic back.
---
## 5.3.x to 5.4.0
There are no breaking changes in this version upgrade.
---
## 5.3.0 to 5.3.1
The following Pro-only icons were removed from Font Awesome Free as of 5.3.1:
* abacus
* calculator-alt
* empty-set
* function
* integral
* intersection
* lambda
* omega
* pi
* sigma
* signal-alt
* signal-alt-slash
* signal-slash
* square-root
* tally
* theta
* tilde
* union
* value-absolute
* volume
* volume-down
* volume-slash
* wifi-slash
These icons were unintentionally included in 5.3.0.
---
## 5.x.x to 5.3.0
Sass mixin syntax has been updated to address a bug.
Use `@extend %fa-icon` to correctly maintain CSS order in output files.
~~Old way:~~
```
.twitter {
@include fa-icon; /* incorrect */
@extend .fab;
&:before {
content: fa-content($fa-var-twitter);
}
}
```
New way:
```
.twitter {
@extend %fa-icon; /* correct */
@extend .fab;
&:before {
content: fa-content($fa-var-twitter);
}
}
```
---
## 5.1.x to 5.2.x
There are no breaking changes in this version upgrade.
---
## 5.1.0 to 5.1.1
Less and Sass files incorrectly contained the "fa-" prefix for style files.
These files have been renamed to be consistent with other files in the
packages.
If you are using the Less or Sass file styles individually you will need to
correct the names in your builds.
| Old filename | New filename |
| --------------------------- | ------------------------ |
| less/fa-solid.less | less/solid.less |
| less/fa-regular.less | less/regular.less |
| less/fa-light.less | less/light.less |
| less/fa-brands.less | less/brands.less |
| scss/fa-solid.scss | scss/solid.scss |
| scss/fa-regular.scss | scss/regular.scss |
| scss/fa-light.scss | scss/light.scss |
| scss/fa-brands.scss | scss/brands.scss |
---
## 5.0.x to 5.1.0
### New packages available for browser-only integration
**If you were previously using @fortawesome/fontawesome you need to switch to one of the new packages.**
Our Free and Pro CDN provide access to JS, CSS, sprites, and separate SVG files.
We've now made these files conveniently available through NPM.
* [@fortawesome/fontawesome-free](https://www.npmjs.com/package/@fortawesome/fontawesome-free)
* @fortawesome/fontawesome-pro (private package, requires Pro subscription)
If you are familiar with the paths and options available with the CDN these
packages should be familiar.
Information about [Font Awesome Pro subscriptions](https://fontawesome.com/pro)
can be found in your [Font Awesome awesome
account](https://fontawesome.com/account/services).
### Renamed packages
The following packages have been renamed as part of 5.1.0 of Font Awesome.
_All packages are in the [@fortawesome NPM scope](https://www.npmjs.com/search?q=scope:fortawesome&ranking=optimal)_
| Old package(1) | New package |
|---------------------------|------------------------|
| fontawesome-free-webfonts | fontawesome-free |
| fontawesome-pro-webfonts | fontawesome-pro |
| fontawesome-free-solid   | free-solid-svg-icons |
| fontawesome-free-regular | free-regular-svg-icons |
| fontawesome-free-brands   | free-brands-svg-icons |
| fontawesome-pro-solid   | pro-solid-svg-icons |
| fontawesome-pro-regular   | pro-regular-svg-icons |
| fontawesome-pro-light   | pro-light-svg-icons |
(1) Old packages have now been deprecated. They are still available but will only receive high priority patch release fixes.
**You'll need to update your package.json file with the renamed packages and new versions.**
### No more default imports
Recently we spent a good deal of time supporting TypeScript to enable us to
create the Angular Font Awesome component. During that adventure we
[were](https://basarat.gitbooks.io/typescript/docs/tips/defaultIsBad.html)
[convinced](https://blog.neufund.org/why-we-have-banned-default-exports-and-you-should-do-the-same-d51fdc2cf2ad)
that we were going to remove default exports from all of our components,
libraries, and packages. This is complete with the umbrella release of `5.1.0` of Font Awesome.
What does that mean?
~~Old way:~~
```javascript
import fontawesome from '@fortawesome/fontawesome'
import solid from '@fortawesome/fontawesome-free-solid'
import faTwitter from '@fortawesome/fontawesome-free-brands/faTwitter'
import FontAwesomeIcon from '@fortawesome/vue-fontawesome'
library.add(solid, faTwitter)
```
New way:
```javascript
import { library, dom } from '@fortawesome/fontawesome-svg-core'
import { fas } from '@fortawesome/free-solid-svg-icons'
import { faTwitter } from '@fortawesome/free-brands-svg-icons'
import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome'
library.add(fas, faTwitter)
// Kicks off the process of finding <i> tags and replacing with <svg>
dom.watch()
```
This is also a valid way to import icons that works if your tool does not support tree shaking:
```javascript
import { faTwitter } from '@fortawesome/free-brands-svg-icons/faTwitter'
```
### Improved support for tree shaking
Tree shaking is now functional by default and no additional configuration is required to make it work.
The `shakable.es.js` module has been removed and is no longer needed.
If you've previously configured tree shaking by modifying your webpack or rollup you can safely remove these.
**We recommend that you check your bundle size after upgrading an ensure that file sizes are as you would expect.**
```javascript
module.exports = {
// ...
resolve: {
alias: {
'@fortawesome/fontawesome-free-solid$': '@fortawesome/fontawesome-free-solid/shakable.es.js'
}
}
}
```
```javascript
const alias = require('rollup-plugin-alias')
rollup({
// ...
plugins: [
alias({
'@fortawesome/fontawesome-free-solid': 'node_modules/@fortawesome/fontawesome-free-solid/shakable.es.js'
})
]
})
```
---
## 5.0.11 to 5.0.12
Due to a collision with the "r" glyph the R Project brand icon has been renamed to `r-project`.
---
## 5.0.x to 5.0.6
### SVG Attribute was changed from data-fa-processed to data-fa-i2svg
As part of a bug fix for the release of 5.0.6 we renamed an attribute that was found on `<svg>` elements from
`data-fa-processed` to `data-fa-i2svg`. We feel this more accurately reflects the intent and purpose.
This attribute is added to any icon that has been generated using `fontawesome.dom.i2svg()`.
Be aware that `data-fa-i2svg` (or `data-fa-processed`) will no longer be present on icons that are created using
`fontawesome.icon()`.
If you've written and DOM queries that rely on `data-fa-processed` you should get things working again by doing a
simple find and replace.

View File

@ -5,39 +5,15 @@
"homepage": "https://fontawesome.com",
"authors": [
{
"name": "Travis Chase",
"homepage": "http://twitter.com/supercodepoet"
},
{
"name": "Dave Gandy",
"homepage": "http://twitter.com/davegandy"
},
{
"name": "Rob Madole",
"homepage": "http://twitter.com/robmadole"
},
{
"name": "Jory Raphael",
"homepage": "http://twitter.com/sensibleworld"
},
{
"name": "Geremia Taglialatela",
"homepage": "http://twitter.com/gtagliala"
},
{
"name": "Brian Talbot",
"homepage": "http://twitter.com/talbs"
},
{
"name": "Mike Wilkerson",
"homepage": "http://twitter.com/mw77"
"name": "The Font Awesome Team",
"homepage": "https://github.com/orgs/FortAwesome/people"
}
],
"support": {
"email": "hello@fontawesome.com",
"issues": "https://github.com/FortAwesome/Font-Awesome/issues",
"source": "https://github.com/FortAwesome/Font-Awesome",
"docs": "http://fontawesome.com/how-to-use"
"docs": "http://fontawesome.com/docs"
},
"license": [
"CC-BY-4.0",

File diff suppressed because it is too large Load Diff

8
css/all.min.css vendored

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

5
css/brands.min.css vendored

File diff suppressed because one or more lines are too long

7678
css/fontawesome.css vendored

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -1,15 +1,19 @@
/*!
* Font Awesome Free 5.15.1 by @fontawesome - https://fontawesome.com
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
:root, :host {
--fa-style-family-classic: 'Font Awesome 6 Free';
--fa-font-regular: normal 400 1em/1 'Font Awesome 6 Free'; }
@font-face {
font-family: 'Font Awesome 5 Free';
font-family: 'Font Awesome 6 Free';
font-style: normal;
font-weight: 400;
font-display: block;
src: url("../webfonts/fa-regular-400.eot");
src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); }
src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype"); }
.far {
font-family: 'Font Awesome 5 Free';
.far,
.fa-regular {
font-weight: 400; }

5
css/regular.min.css vendored
View File

@ -1,5 +1,6 @@
/*!
* Font Awesome Free 5.15.1 by @fontawesome - https://fontawesome.com
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.far{font-family:"Font Awesome 5 Free";font-weight:400}
:host,:root{--fa-style-family-classic:"Font Awesome 6 Free";--fa-font-regular:normal 400 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype")}.fa-regular,.far{font-weight:400}

View File

@ -1,16 +1,19 @@
/*!
* Font Awesome Free 5.15.1 by @fontawesome - https://fontawesome.com
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
:root, :host {
--fa-style-family-classic: 'Font Awesome 6 Free';
--fa-font-solid: normal 900 1em/1 'Font Awesome 6 Free'; }
@font-face {
font-family: 'Font Awesome 5 Free';
font-family: 'Font Awesome 6 Free';
font-style: normal;
font-weight: 900;
font-display: block;
src: url("../webfonts/fa-solid-900.eot");
src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); }
src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); }
.fa,
.fas {
font-family: 'Font Awesome 5 Free';
.fas,
.fa-solid {
font-weight: 900; }

5
css/solid.min.css vendored
View File

@ -1,5 +1,6 @@
/*!
* Font Awesome Free 5.15.1 by @fontawesome - https://fontawesome.com
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;font-display:block;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.fas{font-family:"Font Awesome 5 Free";font-weight:900}
:host,:root{--fa-style-family-classic:"Font Awesome 6 Free";--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:900;font-display:block;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}.fa-solid,.fas{font-weight:900}

View File

@ -1,70 +1,59 @@
/*!
* Font Awesome Free 5.15.1 by @fontawesome - https://fontawesome.com
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
svg:not(:root).svg-inline--fa {
overflow: visible; }
:root, :host {
--fa-font-solid: normal 900 1em/1 'Font Awesome 6 Free';
--fa-font-regular: normal 400 1em/1 'Font Awesome 6 Free';
--fa-font-light: normal 300 1em/1 'Font Awesome 6 Pro';
--fa-font-thin: normal 100 1em/1 'Font Awesome 6 Pro';
--fa-font-duotone: normal 900 1em/1 'Font Awesome 6 Duotone';
--fa-font-duotone-regular: normal 400 1em/1 'Font Awesome 6 Duotone';
--fa-font-duotone-light: normal 300 1em/1 'Font Awesome 6 Duotone';
--fa-font-duotone-thin: normal 100 1em/1 'Font Awesome 6 Duotone';
--fa-font-brands: normal 400 1em/1 'Font Awesome 6 Brands';
--fa-font-sharp-solid: normal 900 1em/1 'Font Awesome 6 Sharp';
--fa-font-sharp-regular: normal 400 1em/1 'Font Awesome 6 Sharp';
--fa-font-sharp-light: normal 300 1em/1 'Font Awesome 6 Sharp';
--fa-font-sharp-thin: normal 100 1em/1 'Font Awesome 6 Sharp';
--fa-font-sharp-duotone-solid: normal 900 1em/1 'Font Awesome 6 Sharp Duotone';
--fa-font-sharp-duotone-regular: normal 400 1em/1 'Font Awesome 6 Sharp Duotone';
--fa-font-sharp-duotone-light: normal 300 1em/1 'Font Awesome 6 Sharp Duotone';
--fa-font-sharp-duotone-thin: normal 100 1em/1 'Font Awesome 6 Sharp Duotone'; }
svg.svg-inline--fa:not(:root), svg.svg-inline--fa:not(:host) {
overflow: visible;
box-sizing: content-box; }
.svg-inline--fa {
display: inline-block;
font-size: inherit;
display: var(--fa-display, inline-block);
height: 1em;
overflow: visible;
vertical-align: -.125em; }
.svg-inline--fa.fa-2xs {
vertical-align: 0.1em; }
.svg-inline--fa.fa-xs {
vertical-align: 0em; }
.svg-inline--fa.fa-sm {
vertical-align: -0.07143em; }
.svg-inline--fa.fa-lg {
vertical-align: -.225em; }
.svg-inline--fa.fa-w-1 {
width: 0.0625em; }
.svg-inline--fa.fa-w-2 {
width: 0.125em; }
.svg-inline--fa.fa-w-3 {
width: 0.1875em; }
.svg-inline--fa.fa-w-4 {
width: 0.25em; }
.svg-inline--fa.fa-w-5 {
width: 0.3125em; }
.svg-inline--fa.fa-w-6 {
width: 0.375em; }
.svg-inline--fa.fa-w-7 {
width: 0.4375em; }
.svg-inline--fa.fa-w-8 {
width: 0.5em; }
.svg-inline--fa.fa-w-9 {
width: 0.5625em; }
.svg-inline--fa.fa-w-10 {
width: 0.625em; }
.svg-inline--fa.fa-w-11 {
width: 0.6875em; }
.svg-inline--fa.fa-w-12 {
width: 0.75em; }
.svg-inline--fa.fa-w-13 {
width: 0.8125em; }
.svg-inline--fa.fa-w-14 {
width: 0.875em; }
.svg-inline--fa.fa-w-15 {
width: 0.9375em; }
.svg-inline--fa.fa-w-16 {
width: 1em; }
.svg-inline--fa.fa-w-17 {
width: 1.0625em; }
.svg-inline--fa.fa-w-18 {
width: 1.125em; }
.svg-inline--fa.fa-w-19 {
width: 1.1875em; }
.svg-inline--fa.fa-w-20 {
width: 1.25em; }
vertical-align: -0.2em; }
.svg-inline--fa.fa-xl {
vertical-align: -0.25em; }
.svg-inline--fa.fa-2xl {
vertical-align: -0.3125em; }
.svg-inline--fa.fa-pull-left {
margin-right: .3em;
margin-right: var(--fa-pull-margin, 0.3em);
width: auto; }
.svg-inline--fa.fa-pull-right {
margin-left: .3em;
margin-left: var(--fa-pull-margin, 0.3em);
width: auto; }
.svg-inline--fa.fa-border {
height: 1.5em; }
.svg-inline--fa.fa-li {
width: 2em; }
width: var(--fa-li-width, 2em);
top: 0.25em; }
.svg-inline--fa.fa-fw {
width: 1.25em; }
width: var(--fa-fw-width, 1.25em); }
.fa-layers svg.svg-inline--fa {
bottom: 0;
@ -74,6 +63,11 @@ svg:not(:root).svg-inline--fa {
right: 0;
top: 0; }
.fa-layers-counter, .fa-layers-text {
display: inline-block;
position: absolute;
text-align: center; }
.fa-layers {
display: inline-block;
height: 1em;
@ -82,88 +76,57 @@ svg:not(:root).svg-inline--fa {
vertical-align: -.125em;
width: 1em; }
.fa-layers svg.svg-inline--fa {
-webkit-transform-origin: center center;
transform-origin: center center; }
.fa-layers-text, .fa-layers-counter {
display: inline-block;
position: absolute;
text-align: center; }
transform-origin: center center; }
.fa-layers-text {
left: 50%;
top: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
-webkit-transform-origin: center center;
transform-origin: center center; }
transform: translate(-50%, -50%);
transform-origin: center center; }
.fa-layers-counter {
background-color: #ff253a;
border-radius: 1em;
-webkit-box-sizing: border-box;
box-sizing: border-box;
color: #fff;
height: 1.5em;
line-height: 1;
max-width: 5em;
min-width: 1.5em;
background-color: var(--fa-counter-background-color, #ff253a);
border-radius: var(--fa-counter-border-radius, 1em);
box-sizing: border-box;
color: var(--fa-inverse, #fff);
line-height: var(--fa-counter-line-height, 1);
max-width: var(--fa-counter-max-width, 5em);
min-width: var(--fa-counter-min-width, 1.5em);
overflow: hidden;
padding: .25em;
right: 0;
padding: var(--fa-counter-padding, 0.25em 0.5em);
right: var(--fa-right, 0);
text-overflow: ellipsis;
top: 0;
-webkit-transform: scale(0.25);
transform: scale(0.25);
-webkit-transform-origin: top right;
transform-origin: top right; }
top: var(--fa-top, 0);
transform: scale(var(--fa-counter-scale, 0.25));
transform-origin: top right; }
.fa-layers-bottom-right {
bottom: 0;
right: 0;
bottom: var(--fa-bottom, 0);
right: var(--fa-right, 0);
top: auto;
-webkit-transform: scale(0.25);
transform: scale(0.25);
-webkit-transform-origin: bottom right;
transform-origin: bottom right; }
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom right; }
.fa-layers-bottom-left {
bottom: 0;
left: 0;
bottom: var(--fa-bottom, 0);
left: var(--fa-left, 0);
right: auto;
top: auto;
-webkit-transform: scale(0.25);
transform: scale(0.25);
-webkit-transform-origin: bottom left;
transform-origin: bottom left; }
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom left; }
.fa-layers-top-right {
right: 0;
top: 0;
-webkit-transform: scale(0.25);
transform: scale(0.25);
-webkit-transform-origin: top right;
transform-origin: top right; }
top: var(--fa-top, 0);
right: var(--fa-right, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top right; }
.fa-layers-top-left {
left: 0;
left: var(--fa-left, 0);
right: auto;
top: 0;
-webkit-transform: scale(0.25);
transform: scale(0.25);
-webkit-transform-origin: top left;
transform-origin: top left; }
.fa-lg {
font-size: 1.33333em;
line-height: 0.75em;
vertical-align: -.0667em; }
.fa-xs {
font-size: .75em; }
.fa-sm {
font-size: .875em; }
top: var(--fa-top, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top left; }
.fa-1x {
font-size: 1em; }
@ -195,114 +158,241 @@ svg:not(:root).svg-inline--fa {
.fa-10x {
font-size: 10em; }
.fa-2xs {
font-size: 0.625em;
line-height: 0.1em;
vertical-align: 0.225em; }
.fa-xs {
font-size: 0.75em;
line-height: 0.08333em;
vertical-align: 0.125em; }
.fa-sm {
font-size: 0.875em;
line-height: 0.07143em;
vertical-align: 0.05357em; }
.fa-lg {
font-size: 1.25em;
line-height: 0.05em;
vertical-align: -0.075em; }
.fa-xl {
font-size: 1.5em;
line-height: 0.04167em;
vertical-align: -0.125em; }
.fa-2xl {
font-size: 2em;
line-height: 0.03125em;
vertical-align: -0.1875em; }
.fa-fw {
text-align: center;
width: 1.25em; }
.fa-ul {
list-style-type: none;
margin-left: 2.5em;
margin-left: var(--fa-li-margin, 2.5em);
padding-left: 0; }
.fa-ul > li {
position: relative; }
.fa-li {
left: -2em;
left: calc(-1 * var(--fa-li-width, 2em));
position: absolute;
text-align: center;
width: 2em;
width: var(--fa-li-width, 2em);
line-height: inherit; }
.fa-border {
border: solid 0.08em #eee;
border-radius: .1em;
padding: .2em .25em .15em; }
border-color: var(--fa-border-color, #eee);
border-radius: var(--fa-border-radius, 0.1em);
border-style: var(--fa-border-style, solid);
border-width: var(--fa-border-width, 0.08em);
padding: var(--fa-border-padding, 0.2em 0.25em 0.15em); }
.fa-pull-left {
float: left; }
float: left;
margin-right: var(--fa-pull-margin, 0.3em); }
.fa-pull-right {
float: right; }
float: right;
margin-left: var(--fa-pull-margin, 0.3em); }
.fa.fa-pull-left,
.fas.fa-pull-left,
.far.fa-pull-left,
.fal.fa-pull-left,
.fab.fa-pull-left {
margin-right: .3em; }
.fa-beat {
animation-name: fa-beat;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out); }
.fa.fa-pull-right,
.fas.fa-pull-right,
.far.fa-pull-right,
.fal.fa-pull-right,
.fab.fa-pull-right {
margin-left: .3em; }
.fa-bounce {
animation-name: fa-bounce;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1)); }
.fa-fade {
animation-name: fa-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); }
.fa-beat-fade {
animation-name: fa-beat-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); }
.fa-flip {
animation-name: fa-flip;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out); }
.fa-shake {
animation-name: fa-shake;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear); }
.fa-spin {
-webkit-animation: fa-spin 2s infinite linear;
animation: fa-spin 2s infinite linear; }
animation-name: fa-spin;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 2s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear); }
.fa-pulse {
-webkit-animation: fa-spin 1s infinite steps(8);
animation: fa-spin 1s infinite steps(8); }
.fa-spin-reverse {
--fa-animation-direction: reverse; }
@-webkit-keyframes fa-spin {
.fa-pulse,
.fa-spin-pulse {
animation-name: fa-spin;
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, steps(8)); }
@media (prefers-reduced-motion: reduce) {
.fa-beat,
.fa-bounce,
.fa-fade,
.fa-beat-fade,
.fa-flip,
.fa-pulse,
.fa-shake,
.fa-spin,
.fa-spin-pulse {
animation-delay: -1ms;
animation-duration: 1ms;
animation-iteration-count: 1;
transition-delay: 0s;
transition-duration: 0s; } }
@keyframes fa-beat {
0%, 90% {
transform: scale(1); }
45% {
transform: scale(var(--fa-beat-scale, 1.25)); } }
@keyframes fa-bounce {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg); }
transform: scale(1, 1) translateY(0); }
10% {
transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0); }
30% {
transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em)); }
50% {
transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0); }
57% {
transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em)); }
64% {
transform: scale(1, 1) translateY(0); }
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg); } }
transform: scale(1, 1) translateY(0); } }
@keyframes fa-fade {
50% {
opacity: var(--fa-fade-opacity, 0.4); } }
@keyframes fa-beat-fade {
0%, 100% {
opacity: var(--fa-beat-fade-opacity, 0.4);
transform: scale(1); }
50% {
opacity: 1;
transform: scale(var(--fa-beat-fade-scale, 1.125)); } }
@keyframes fa-flip {
50% {
transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg)); } }
@keyframes fa-shake {
0% {
transform: rotate(-15deg); }
4% {
transform: rotate(15deg); }
8%, 24% {
transform: rotate(-18deg); }
12%, 28% {
transform: rotate(18deg); }
16% {
transform: rotate(-22deg); }
20% {
transform: rotate(22deg); }
32% {
transform: rotate(-12deg); }
36% {
transform: rotate(12deg); }
40%, 100% {
transform: rotate(0deg); } }
@keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg); }
transform: rotate(0deg); }
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg); } }
transform: rotate(360deg); } }
.fa-rotate-90 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
-webkit-transform: rotate(90deg);
transform: rotate(90deg); }
transform: rotate(90deg); }
.fa-rotate-180 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
-webkit-transform: rotate(180deg);
transform: rotate(180deg); }
transform: rotate(180deg); }
.fa-rotate-270 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
-webkit-transform: rotate(270deg);
transform: rotate(270deg); }
transform: rotate(270deg); }
.fa-flip-horizontal {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
-webkit-transform: scale(-1, 1);
transform: scale(-1, 1); }
transform: scale(-1, 1); }
.fa-flip-vertical {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
-webkit-transform: scale(1, -1);
transform: scale(1, -1); }
transform: scale(1, -1); }
.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
-webkit-transform: scale(-1, -1);
transform: scale(-1, -1); }
.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
transform: scale(-1, -1); }
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical,
:root .fa-flip-both {
-webkit-filter: none;
filter: none; }
.fa-rotate-by {
transform: rotate(var(--fa-rotate-angle, 0)); }
.fa-stack {
display: inline-block;
vertical-align: middle;
height: 2em;
position: relative;
width: 2.5em; }
@ -314,7 +404,8 @@ svg:not(:root).svg-inline--fa {
margin: auto;
position: absolute;
right: 0;
top: 0; }
top: 0;
z-index: var(--fa-stack-z-index, auto); }
.svg-inline--fa.fa-stack-1x {
height: 1em;
@ -325,47 +416,46 @@ svg:not(:root).svg-inline--fa {
width: 2.5em; }
.fa-inverse {
color: #fff; }
color: var(--fa-inverse, #fff); }
.sr-only {
border: 0;
clip: rect(0, 0, 0, 0);
.sr-only,
.fa-sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px; }
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0; }
.sr-only-focusable:active, .sr-only-focusable:focus {
clip: auto;
height: auto;
margin: 0;
overflow: visible;
position: static;
width: auto; }
.sr-only-focusable:not(:focus),
.fa-sr-only-focusable:not(:focus) {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0; }
.svg-inline--fa .fa-primary {
fill: var(--fa-primary-color, currentColor);
opacity: 1;
opacity: var(--fa-primary-opacity, 1); }
.svg-inline--fa .fa-secondary {
fill: var(--fa-secondary-color, currentColor);
opacity: 0.4;
opacity: var(--fa-secondary-opacity, 0.4); }
.svg-inline--fa.fa-swap-opacity .fa-primary {
opacity: 0.4;
opacity: var(--fa-secondary-opacity, 0.4); }
.svg-inline--fa.fa-swap-opacity .fa-secondary {
opacity: 1;
opacity: var(--fa-primary-opacity, 1); }
.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
fill: black; }
.fad.fa-inverse {
color: #fff; }

File diff suppressed because one or more lines are too long

26
css/v4-font-face.css Normal file
View File

@ -0,0 +1,26 @@
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
@font-face {
font-family: 'FontAwesome';
font-display: block;
src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); }
@font-face {
font-family: 'FontAwesome';
font-display: block;
src: url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.ttf") format("truetype"); }
@font-face {
font-family: 'FontAwesome';
font-display: block;
src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype");
unicode-range: U+F003,U+F006,U+F014,U+F016-F017,U+F01A-F01B,U+F01D,U+F022,U+F03E,U+F044,U+F046,U+F05C-F05D,U+F06E,U+F070,U+F087-F088,U+F08A,U+F094,U+F096-F097,U+F09D,U+F0A0,U+F0A2,U+F0A4-F0A7,U+F0C5,U+F0C7,U+F0E5-F0E6,U+F0EB,U+F0F6-F0F8,U+F10C,U+F114-F115,U+F118-F11A,U+F11C-F11D,U+F133,U+F147,U+F14E,U+F150-F152,U+F185-F186,U+F18E,U+F190-F192,U+F196,U+F1C1-F1C9,U+F1D9,U+F1DB,U+F1E3,U+F1EA,U+F1F7,U+F1F9,U+F20A,U+F247-F248,U+F24A,U+F24D,U+F255-F25B,U+F25D,U+F271-F274,U+F278,U+F27B,U+F28C,U+F28E,U+F29C,U+F2B5,U+F2B7,U+F2BA,U+F2BC,U+F2BE,U+F2C0-F2C1,U+F2C3,U+F2D0,U+F2D2,U+F2D4,U+F2DC; }
@font-face {
font-family: 'FontAwesome';
font-display: block;
src: url("../webfonts/fa-v4compatibility.woff2") format("woff2"), url("../webfonts/fa-v4compatibility.ttf") format("truetype");
unicode-range: U+F041,U+F047,U+F065-F066,U+F07D-F07E,U+F080,U+F08B,U+F08E,U+F090,U+F09A,U+F0AC,U+F0AE,U+F0B2,U+F0D0,U+F0D6,U+F0E4,U+F0EC,U+F10A-F10B,U+F123,U+F13E,U+F148-F149,U+F14C,U+F156,U+F15E,U+F160-F161,U+F163,U+F175-F178,U+F195,U+F1F8,U+F219,U+F27A; }

6
css/v4-font-face.min.css vendored Normal file
View File

@ -0,0 +1,6 @@
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype");unicode-range:u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-v4compatibility.woff2) format("woff2"),url(../webfonts/fa-v4compatibility.ttf) format("truetype");unicode-range:u+f041,u+f047,u+f065-f066,u+f07d-f07e,u+f080,u+f08b,u+f08e,u+f090,u+f09a,u+f0ac,u+f0ae,u+f0b2,u+f0d0,u+f0d6,u+f0e4,u+f0ec,u+f10a-f10b,u+f123,u+f13e,u+f148-f149,u+f14c,u+f156,u+f15e,u+f160-f161,u+f163,u+f175-f178,u+f195,u+f1f8,u+f219,u+f27a}

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

22
css/v5-font-face.css Normal file
View File

@ -0,0 +1,22 @@
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
@font-face {
font-family: 'Font Awesome 5 Brands';
font-display: block;
font-weight: 400;
src: url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.ttf") format("truetype"); }
@font-face {
font-family: 'Font Awesome 5 Free';
font-display: block;
font-weight: 900;
src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); }
@font-face {
font-family: 'Font Awesome 5 Free';
font-display: block;
font-weight: 400;
src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype"); }

6
css/v5-font-face.min.css vendored Normal file
View File

@ -0,0 +1,6 @@
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src:url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype")}

View File

@ -1,23 +1,151 @@
Fonticons, Inc. (https://fontawesome.com)
--------------------------------------------------------------------------------
Font Awesome Free License
-------------------------
Font Awesome Free is free, open source, and GPL friendly. You can use it for
commercial projects, open source projects, or really almost whatever you want.
Full Font Awesome Free license: https://fontawesome.com/license/free.
# Icons: CC BY 4.0 License (https://creativecommons.org/licenses/by/4.0/)
In the Font Awesome Free download, the CC BY 4.0 license applies to all icons
packaged as SVG and JS file types.
--------------------------------------------------------------------------------
# Icons: CC BY 4.0 License (https://creativecommons.org/licenses/by/4.0/)
The Font Awesome Free download is licensed under a Creative Commons
Attribution 4.0 International License and applies to all icons packaged
as SVG and JS file types.
--------------------------------------------------------------------------------
# Fonts: SIL OFL 1.1 License
# Fonts: SIL OFL 1.1 License (https://scripts.sil.org/OFL)
In the Font Awesome Free download, the SIL OFL license applies to all icons
packaged as web and desktop font files.
Copyright (c) 2024 Fonticons, Inc. (https://fontawesome.com)
with Reserved Font Name: "Font Awesome".
This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at:
http://scripts.sil.org/OFL
SIL OPEN FONT LICENSE
Version 1.1 - 26 February 2007
PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.
The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded,
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.
DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.
"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).
"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).
"Modified Version" refers to any derivative made by adding to, deleting,
or substituting — in part or in whole — any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.
"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.
PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:
1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.
2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.
3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.
5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.
TERMINATION
This license becomes null and void if any of the above conditions are
not met.
DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.
--------------------------------------------------------------------------------
# Code: MIT License (https://opensource.org/licenses/MIT)
In the Font Awesome Free download, the MIT license applies to all non-font and
non-icon files.
Copyright 2024 Fonticons, Inc.
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in the
Software without restriction, including without limitation the rights to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
and to permit persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
--------------------------------------------------------------------------------
# Attribution
Attribution is required by MIT, SIL OFL, and CC BY licenses. Downloaded Font
Awesome Free files already contain embedded comments with sufficient
attribution, so you shouldn't need to do anything additional when using these
@ -27,7 +155,10 @@ We've kept attribution comments terse, so we ask that you do not actively work
to remove them from files, especially code. They're a great way for folks to
learn about Font Awesome.
--------------------------------------------------------------------------------
# Brand Icons
All brand icons are trademarks of their respective owners. The use of these
trademarks does not indicate endorsement of the trademark holder by Font
Awesome, nor vice versa. **Please do not use brand logos for any purpose except

View File

@ -1,12 +1,12 @@
# @fortawesome/fontawesome-common-types - SVG with JavaScript
> "I came here to chew bubblegum and install Font Awesome 5 - and I'm all out of bubblegum"
> "I came here to chew bubblegum and install Font Awesome 6 - and I'm all out of bubblegum"
[![npm](https://img.shields.io/npm/v/@fortawesome/fontawesome-common-types.svg?style=flat-square)](https://www.npmjs.com/package/@fortawesome/fontawesome-common-types)
## What is this package?
Font Awesome 5 JavaScript packages support TypeScript. This package abstracts out some of the common definitions that those packages use.
Font Awesome 6 JavaScript packages support TypeScript. This package abstracts out some of the common definitions that those packages use.
## Here be dragons

View File

@ -1,3 +0,0 @@
console.log(`Font Awesome Free 0.2.32 by @fontawesome - https://fontawesome.com
License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
`)

File diff suppressed because it is too large Load Diff

View File

@ -10,35 +10,9 @@
],
"homepage": "https://fontawesome.com",
"bugs": {
"url": "http://github.com/FortAwesome/Font-Awesome/issues"
"url": "https://github.com/FortAwesome/Font-Awesome/issues"
},
"author": {
"name": "Dave Gandy",
"email": "dave@fontawesome.com",
"web": "http://twitter.com/davegandy"
},
"contributors": [
{
"name": "Brian Talbot",
"web": "http://twitter.com/talbs"
},
{
"name": "Travis Chase",
"web": "http://twitter.com/supercodepoet"
},
{
"name": "Rob Madole",
"web": "http://twitter.com/robmadole"
},
{
"name": "Geremia Taglialatela",
"web": "http://twitter.com/gtagliala"
},
{
"name": "Mike Wilkerson",
"web": "http://twitter.com/mw77"
}
],
"author": "The Font Awesome Team (https://github.com/orgs/FortAwesome/people)",
"repository": {
"type": "git",
"url": "https://github.com/FortAwesome/Font-Awesome"
@ -47,11 +21,8 @@
"node": ">=6"
},
"dependencies": {},
"version": "0.2.32",
"version": "6.7.2",
"name": "@fortawesome/fontawesome-common-types",
"license": "MIT",
"types": "./index.d.ts",
"scripts": {
"postinstall": "node attribution.js"
}
"types": "./index.d.ts"
}

View File

@ -1,23 +1,151 @@
Fonticons, Inc. (https://fontawesome.com)
--------------------------------------------------------------------------------
Font Awesome Free License
-------------------------
Font Awesome Free is free, open source, and GPL friendly. You can use it for
commercial projects, open source projects, or really almost whatever you want.
Full Font Awesome Free license: https://fontawesome.com/license/free.
# Icons: CC BY 4.0 License (https://creativecommons.org/licenses/by/4.0/)
In the Font Awesome Free download, the CC BY 4.0 license applies to all icons
packaged as SVG and JS file types.
--------------------------------------------------------------------------------
# Icons: CC BY 4.0 License (https://creativecommons.org/licenses/by/4.0/)
The Font Awesome Free download is licensed under a Creative Commons
Attribution 4.0 International License and applies to all icons packaged
as SVG and JS file types.
--------------------------------------------------------------------------------
# Fonts: SIL OFL 1.1 License
# Fonts: SIL OFL 1.1 License (https://scripts.sil.org/OFL)
In the Font Awesome Free download, the SIL OFL license applies to all icons
packaged as web and desktop font files.
Copyright (c) 2024 Fonticons, Inc. (https://fontawesome.com)
with Reserved Font Name: "Font Awesome".
This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at:
http://scripts.sil.org/OFL
SIL OPEN FONT LICENSE
Version 1.1 - 26 February 2007
PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.
The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded,
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.
DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.
"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).
"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).
"Modified Version" refers to any derivative made by adding to, deleting,
or substituting — in part or in whole — any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.
"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.
PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:
1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.
2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.
3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.
5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.
TERMINATION
This license becomes null and void if any of the above conditions are
not met.
DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.
--------------------------------------------------------------------------------
# Code: MIT License (https://opensource.org/licenses/MIT)
In the Font Awesome Free download, the MIT license applies to all non-font and
non-icon files.
Copyright 2024 Fonticons, Inc.
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in the
Software without restriction, including without limitation the rights to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
and to permit persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
--------------------------------------------------------------------------------
# Attribution
Attribution is required by MIT, SIL OFL, and CC BY licenses. Downloaded Font
Awesome Free files already contain embedded comments with sufficient
attribution, so you shouldn't need to do anything additional when using these
@ -27,7 +155,10 @@ We've kept attribution comments terse, so we ask that you do not actively work
to remove them from files, especially code. They're a great way for folks to
learn about Font Awesome.
--------------------------------------------------------------------------------
# Brand Icons
All brand icons are trademarks of their respective owners. The use of these
trademarks does not indicate endorsement of the trademark holder by Font
Awesome, nor vice versa. **Please do not use brand logos for any purpose except

View File

@ -1,6 +1,6 @@
# @fortawesome/fontawesome-free - The Official Font Awesome 5 NPM package
# @fortawesome/fontawesome-free - The Official Font Awesome 6 NPM package
> "I came here to chew bubblegum and install Font Awesome 5 - and I'm all out of bubblegum"
> "I came here to chew bubblegum and install Font Awesome 6 - and I'm all out of bubblegum"
[![npm](https://img.shields.io/npm/v/@fortawesome/fontawesome-free.svg?style=flat-square)](https://www.npmjs.com/package/@fortawesome/fontawesome-free)
@ -20,7 +20,7 @@ $ yarn add @fortawesome/fontawesome-free
**This package includes all the same files available through our Free and Pro CDN.**
* /js - All JavaScript files associated with Font Awesome 5 SVG with JS
* /js - All JavaScript files associated with Font Awesome 6 SVG with JS
* /css - All CSS using the classic Web Fonts with CSS implementation
* /sprites - SVG icons packaged in a convenient sprite
* /scss, /less - CSS Pre-processor files for Web Fonts with CSS
@ -29,9 +29,9 @@ $ yarn add @fortawesome/fontawesome-free
## Documentation
Get started [here](https://fontawesome.com/get-started). Continue your journey [here](https://fontawesome.com/how-to-use).
Get started [here](https://docs.fontawesome.com/web/setup/get-started). Continue your journey [here](https://docs.fontawesome.com/web/setup/packages).
Or go straight to the [API documentation](https://fontawesome.com/how-to-use/with-the-api).
Or go straight to the [API documentation](https://docs.fontawesome.com/apis/javascript/get-started).
## Issues and support

View File

@ -1,3 +0,0 @@
console.log(`Font Awesome Free 5.15.1 by @fontawesome - https://fontawesome.com
License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
`)

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -1,15 +1,19 @@
/*!
* Font Awesome Free 5.15.1 by @fontawesome - https://fontawesome.com
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
:root, :host {
--fa-style-family-classic: 'Font Awesome 6 Free';
--fa-font-regular: normal 400 1em/1 'Font Awesome 6 Free'; }
@font-face {
font-family: 'Font Awesome 5 Free';
font-family: 'Font Awesome 6 Free';
font-style: normal;
font-weight: 400;
font-display: block;
src: url("../webfonts/fa-regular-400.eot");
src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); }
src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype"); }
.far {
font-family: 'Font Awesome 5 Free';
.far,
.fa-regular {
font-weight: 400; }

View File

@ -1,5 +1,6 @@
/*!
* Font Awesome Free 5.15.1 by @fontawesome - https://fontawesome.com
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.far{font-family:"Font Awesome 5 Free";font-weight:400}
:host,:root{--fa-style-family-classic:"Font Awesome 6 Free";--fa-font-regular:normal 400 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype")}.fa-regular,.far{font-weight:400}

View File

@ -1,16 +1,19 @@
/*!
* Font Awesome Free 5.15.1 by @fontawesome - https://fontawesome.com
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
:root, :host {
--fa-style-family-classic: 'Font Awesome 6 Free';
--fa-font-solid: normal 900 1em/1 'Font Awesome 6 Free'; }
@font-face {
font-family: 'Font Awesome 5 Free';
font-family: 'Font Awesome 6 Free';
font-style: normal;
font-weight: 900;
font-display: block;
src: url("../webfonts/fa-solid-900.eot");
src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); }
src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); }
.fa,
.fas {
font-family: 'Font Awesome 5 Free';
.fas,
.fa-solid {
font-weight: 900; }

View File

@ -1,5 +1,6 @@
/*!
* Font Awesome Free 5.15.1 by @fontawesome - https://fontawesome.com
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;font-display:block;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.fas{font-family:"Font Awesome 5 Free";font-weight:900}
:host,:root{--fa-style-family-classic:"Font Awesome 6 Free";--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:900;font-display:block;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}.fa-solid,.fas{font-weight:900}

View File

@ -1,70 +1,59 @@
/*!
* Font Awesome Free 5.15.1 by @fontawesome - https://fontawesome.com
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
svg:not(:root).svg-inline--fa {
overflow: visible; }
:root, :host {
--fa-font-solid: normal 900 1em/1 'Font Awesome 6 Free';
--fa-font-regular: normal 400 1em/1 'Font Awesome 6 Free';
--fa-font-light: normal 300 1em/1 'Font Awesome 6 Pro';
--fa-font-thin: normal 100 1em/1 'Font Awesome 6 Pro';
--fa-font-duotone: normal 900 1em/1 'Font Awesome 6 Duotone';
--fa-font-duotone-regular: normal 400 1em/1 'Font Awesome 6 Duotone';
--fa-font-duotone-light: normal 300 1em/1 'Font Awesome 6 Duotone';
--fa-font-duotone-thin: normal 100 1em/1 'Font Awesome 6 Duotone';
--fa-font-brands: normal 400 1em/1 'Font Awesome 6 Brands';
--fa-font-sharp-solid: normal 900 1em/1 'Font Awesome 6 Sharp';
--fa-font-sharp-regular: normal 400 1em/1 'Font Awesome 6 Sharp';
--fa-font-sharp-light: normal 300 1em/1 'Font Awesome 6 Sharp';
--fa-font-sharp-thin: normal 100 1em/1 'Font Awesome 6 Sharp';
--fa-font-sharp-duotone-solid: normal 900 1em/1 'Font Awesome 6 Sharp Duotone';
--fa-font-sharp-duotone-regular: normal 400 1em/1 'Font Awesome 6 Sharp Duotone';
--fa-font-sharp-duotone-light: normal 300 1em/1 'Font Awesome 6 Sharp Duotone';
--fa-font-sharp-duotone-thin: normal 100 1em/1 'Font Awesome 6 Sharp Duotone'; }
svg.svg-inline--fa:not(:root), svg.svg-inline--fa:not(:host) {
overflow: visible;
box-sizing: content-box; }
.svg-inline--fa {
display: inline-block;
font-size: inherit;
display: var(--fa-display, inline-block);
height: 1em;
overflow: visible;
vertical-align: -.125em; }
.svg-inline--fa.fa-2xs {
vertical-align: 0.1em; }
.svg-inline--fa.fa-xs {
vertical-align: 0em; }
.svg-inline--fa.fa-sm {
vertical-align: -0.07143em; }
.svg-inline--fa.fa-lg {
vertical-align: -.225em; }
.svg-inline--fa.fa-w-1 {
width: 0.0625em; }
.svg-inline--fa.fa-w-2 {
width: 0.125em; }
.svg-inline--fa.fa-w-3 {
width: 0.1875em; }
.svg-inline--fa.fa-w-4 {
width: 0.25em; }
.svg-inline--fa.fa-w-5 {
width: 0.3125em; }
.svg-inline--fa.fa-w-6 {
width: 0.375em; }
.svg-inline--fa.fa-w-7 {
width: 0.4375em; }
.svg-inline--fa.fa-w-8 {
width: 0.5em; }
.svg-inline--fa.fa-w-9 {
width: 0.5625em; }
.svg-inline--fa.fa-w-10 {
width: 0.625em; }
.svg-inline--fa.fa-w-11 {
width: 0.6875em; }
.svg-inline--fa.fa-w-12 {
width: 0.75em; }
.svg-inline--fa.fa-w-13 {
width: 0.8125em; }
.svg-inline--fa.fa-w-14 {
width: 0.875em; }
.svg-inline--fa.fa-w-15 {
width: 0.9375em; }
.svg-inline--fa.fa-w-16 {
width: 1em; }
.svg-inline--fa.fa-w-17 {
width: 1.0625em; }
.svg-inline--fa.fa-w-18 {
width: 1.125em; }
.svg-inline--fa.fa-w-19 {
width: 1.1875em; }
.svg-inline--fa.fa-w-20 {
width: 1.25em; }
vertical-align: -0.2em; }
.svg-inline--fa.fa-xl {
vertical-align: -0.25em; }
.svg-inline--fa.fa-2xl {
vertical-align: -0.3125em; }
.svg-inline--fa.fa-pull-left {
margin-right: .3em;
margin-right: var(--fa-pull-margin, 0.3em);
width: auto; }
.svg-inline--fa.fa-pull-right {
margin-left: .3em;
margin-left: var(--fa-pull-margin, 0.3em);
width: auto; }
.svg-inline--fa.fa-border {
height: 1.5em; }
.svg-inline--fa.fa-li {
width: 2em; }
width: var(--fa-li-width, 2em);
top: 0.25em; }
.svg-inline--fa.fa-fw {
width: 1.25em; }
width: var(--fa-fw-width, 1.25em); }
.fa-layers svg.svg-inline--fa {
bottom: 0;
@ -74,6 +63,11 @@ svg:not(:root).svg-inline--fa {
right: 0;
top: 0; }
.fa-layers-counter, .fa-layers-text {
display: inline-block;
position: absolute;
text-align: center; }
.fa-layers {
display: inline-block;
height: 1em;
@ -82,88 +76,57 @@ svg:not(:root).svg-inline--fa {
vertical-align: -.125em;
width: 1em; }
.fa-layers svg.svg-inline--fa {
-webkit-transform-origin: center center;
transform-origin: center center; }
.fa-layers-text, .fa-layers-counter {
display: inline-block;
position: absolute;
text-align: center; }
transform-origin: center center; }
.fa-layers-text {
left: 50%;
top: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
-webkit-transform-origin: center center;
transform-origin: center center; }
transform: translate(-50%, -50%);
transform-origin: center center; }
.fa-layers-counter {
background-color: #ff253a;
border-radius: 1em;
-webkit-box-sizing: border-box;
box-sizing: border-box;
color: #fff;
height: 1.5em;
line-height: 1;
max-width: 5em;
min-width: 1.5em;
background-color: var(--fa-counter-background-color, #ff253a);
border-radius: var(--fa-counter-border-radius, 1em);
box-sizing: border-box;
color: var(--fa-inverse, #fff);
line-height: var(--fa-counter-line-height, 1);
max-width: var(--fa-counter-max-width, 5em);
min-width: var(--fa-counter-min-width, 1.5em);
overflow: hidden;
padding: .25em;
right: 0;
padding: var(--fa-counter-padding, 0.25em 0.5em);
right: var(--fa-right, 0);
text-overflow: ellipsis;
top: 0;
-webkit-transform: scale(0.25);
transform: scale(0.25);
-webkit-transform-origin: top right;
transform-origin: top right; }
top: var(--fa-top, 0);
transform: scale(var(--fa-counter-scale, 0.25));
transform-origin: top right; }
.fa-layers-bottom-right {
bottom: 0;
right: 0;
bottom: var(--fa-bottom, 0);
right: var(--fa-right, 0);
top: auto;
-webkit-transform: scale(0.25);
transform: scale(0.25);
-webkit-transform-origin: bottom right;
transform-origin: bottom right; }
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom right; }
.fa-layers-bottom-left {
bottom: 0;
left: 0;
bottom: var(--fa-bottom, 0);
left: var(--fa-left, 0);
right: auto;
top: auto;
-webkit-transform: scale(0.25);
transform: scale(0.25);
-webkit-transform-origin: bottom left;
transform-origin: bottom left; }
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom left; }
.fa-layers-top-right {
right: 0;
top: 0;
-webkit-transform: scale(0.25);
transform: scale(0.25);
-webkit-transform-origin: top right;
transform-origin: top right; }
top: var(--fa-top, 0);
right: var(--fa-right, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top right; }
.fa-layers-top-left {
left: 0;
left: var(--fa-left, 0);
right: auto;
top: 0;
-webkit-transform: scale(0.25);
transform: scale(0.25);
-webkit-transform-origin: top left;
transform-origin: top left; }
.fa-lg {
font-size: 1.33333em;
line-height: 0.75em;
vertical-align: -.0667em; }
.fa-xs {
font-size: .75em; }
.fa-sm {
font-size: .875em; }
top: var(--fa-top, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top left; }
.fa-1x {
font-size: 1em; }
@ -195,114 +158,241 @@ svg:not(:root).svg-inline--fa {
.fa-10x {
font-size: 10em; }
.fa-2xs {
font-size: 0.625em;
line-height: 0.1em;
vertical-align: 0.225em; }
.fa-xs {
font-size: 0.75em;
line-height: 0.08333em;
vertical-align: 0.125em; }
.fa-sm {
font-size: 0.875em;
line-height: 0.07143em;
vertical-align: 0.05357em; }
.fa-lg {
font-size: 1.25em;
line-height: 0.05em;
vertical-align: -0.075em; }
.fa-xl {
font-size: 1.5em;
line-height: 0.04167em;
vertical-align: -0.125em; }
.fa-2xl {
font-size: 2em;
line-height: 0.03125em;
vertical-align: -0.1875em; }
.fa-fw {
text-align: center;
width: 1.25em; }
.fa-ul {
list-style-type: none;
margin-left: 2.5em;
margin-left: var(--fa-li-margin, 2.5em);
padding-left: 0; }
.fa-ul > li {
position: relative; }
.fa-li {
left: -2em;
left: calc(-1 * var(--fa-li-width, 2em));
position: absolute;
text-align: center;
width: 2em;
width: var(--fa-li-width, 2em);
line-height: inherit; }
.fa-border {
border: solid 0.08em #eee;
border-radius: .1em;
padding: .2em .25em .15em; }
border-color: var(--fa-border-color, #eee);
border-radius: var(--fa-border-radius, 0.1em);
border-style: var(--fa-border-style, solid);
border-width: var(--fa-border-width, 0.08em);
padding: var(--fa-border-padding, 0.2em 0.25em 0.15em); }
.fa-pull-left {
float: left; }
float: left;
margin-right: var(--fa-pull-margin, 0.3em); }
.fa-pull-right {
float: right; }
float: right;
margin-left: var(--fa-pull-margin, 0.3em); }
.fa.fa-pull-left,
.fas.fa-pull-left,
.far.fa-pull-left,
.fal.fa-pull-left,
.fab.fa-pull-left {
margin-right: .3em; }
.fa-beat {
animation-name: fa-beat;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out); }
.fa.fa-pull-right,
.fas.fa-pull-right,
.far.fa-pull-right,
.fal.fa-pull-right,
.fab.fa-pull-right {
margin-left: .3em; }
.fa-bounce {
animation-name: fa-bounce;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1)); }
.fa-fade {
animation-name: fa-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); }
.fa-beat-fade {
animation-name: fa-beat-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); }
.fa-flip {
animation-name: fa-flip;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out); }
.fa-shake {
animation-name: fa-shake;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear); }
.fa-spin {
-webkit-animation: fa-spin 2s infinite linear;
animation: fa-spin 2s infinite linear; }
animation-name: fa-spin;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 2s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear); }
.fa-pulse {
-webkit-animation: fa-spin 1s infinite steps(8);
animation: fa-spin 1s infinite steps(8); }
.fa-spin-reverse {
--fa-animation-direction: reverse; }
@-webkit-keyframes fa-spin {
.fa-pulse,
.fa-spin-pulse {
animation-name: fa-spin;
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, steps(8)); }
@media (prefers-reduced-motion: reduce) {
.fa-beat,
.fa-bounce,
.fa-fade,
.fa-beat-fade,
.fa-flip,
.fa-pulse,
.fa-shake,
.fa-spin,
.fa-spin-pulse {
animation-delay: -1ms;
animation-duration: 1ms;
animation-iteration-count: 1;
transition-delay: 0s;
transition-duration: 0s; } }
@keyframes fa-beat {
0%, 90% {
transform: scale(1); }
45% {
transform: scale(var(--fa-beat-scale, 1.25)); } }
@keyframes fa-bounce {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg); }
transform: scale(1, 1) translateY(0); }
10% {
transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0); }
30% {
transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em)); }
50% {
transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0); }
57% {
transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em)); }
64% {
transform: scale(1, 1) translateY(0); }
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg); } }
transform: scale(1, 1) translateY(0); } }
@keyframes fa-fade {
50% {
opacity: var(--fa-fade-opacity, 0.4); } }
@keyframes fa-beat-fade {
0%, 100% {
opacity: var(--fa-beat-fade-opacity, 0.4);
transform: scale(1); }
50% {
opacity: 1;
transform: scale(var(--fa-beat-fade-scale, 1.125)); } }
@keyframes fa-flip {
50% {
transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg)); } }
@keyframes fa-shake {
0% {
transform: rotate(-15deg); }
4% {
transform: rotate(15deg); }
8%, 24% {
transform: rotate(-18deg); }
12%, 28% {
transform: rotate(18deg); }
16% {
transform: rotate(-22deg); }
20% {
transform: rotate(22deg); }
32% {
transform: rotate(-12deg); }
36% {
transform: rotate(12deg); }
40%, 100% {
transform: rotate(0deg); } }
@keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg); }
transform: rotate(0deg); }
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg); } }
transform: rotate(360deg); } }
.fa-rotate-90 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
-webkit-transform: rotate(90deg);
transform: rotate(90deg); }
transform: rotate(90deg); }
.fa-rotate-180 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
-webkit-transform: rotate(180deg);
transform: rotate(180deg); }
transform: rotate(180deg); }
.fa-rotate-270 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
-webkit-transform: rotate(270deg);
transform: rotate(270deg); }
transform: rotate(270deg); }
.fa-flip-horizontal {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
-webkit-transform: scale(-1, 1);
transform: scale(-1, 1); }
transform: scale(-1, 1); }
.fa-flip-vertical {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
-webkit-transform: scale(1, -1);
transform: scale(1, -1); }
transform: scale(1, -1); }
.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
-webkit-transform: scale(-1, -1);
transform: scale(-1, -1); }
.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
transform: scale(-1, -1); }
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical,
:root .fa-flip-both {
-webkit-filter: none;
filter: none; }
.fa-rotate-by {
transform: rotate(var(--fa-rotate-angle, 0)); }
.fa-stack {
display: inline-block;
vertical-align: middle;
height: 2em;
position: relative;
width: 2.5em; }
@ -314,7 +404,8 @@ svg:not(:root).svg-inline--fa {
margin: auto;
position: absolute;
right: 0;
top: 0; }
top: 0;
z-index: var(--fa-stack-z-index, auto); }
.svg-inline--fa.fa-stack-1x {
height: 1em;
@ -325,47 +416,46 @@ svg:not(:root).svg-inline--fa {
width: 2.5em; }
.fa-inverse {
color: #fff; }
color: var(--fa-inverse, #fff); }
.sr-only {
border: 0;
clip: rect(0, 0, 0, 0);
.sr-only,
.fa-sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px; }
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0; }
.sr-only-focusable:active, .sr-only-focusable:focus {
clip: auto;
height: auto;
margin: 0;
overflow: visible;
position: static;
width: auto; }
.sr-only-focusable:not(:focus),
.fa-sr-only-focusable:not(:focus) {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0; }
.svg-inline--fa .fa-primary {
fill: var(--fa-primary-color, currentColor);
opacity: 1;
opacity: var(--fa-primary-opacity, 1); }
.svg-inline--fa .fa-secondary {
fill: var(--fa-secondary-color, currentColor);
opacity: 0.4;
opacity: var(--fa-secondary-opacity, 0.4); }
.svg-inline--fa.fa-swap-opacity .fa-primary {
opacity: 0.4;
opacity: var(--fa-secondary-opacity, 0.4); }
.svg-inline--fa.fa-swap-opacity .fa-secondary {
opacity: 1;
opacity: var(--fa-primary-opacity, 1); }
.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
fill: black; }
.fad.fa-inverse {
color: #fff; }

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,26 @@
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
@font-face {
font-family: 'FontAwesome';
font-display: block;
src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); }
@font-face {
font-family: 'FontAwesome';
font-display: block;
src: url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.ttf") format("truetype"); }
@font-face {
font-family: 'FontAwesome';
font-display: block;
src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype");
unicode-range: U+F003,U+F006,U+F014,U+F016-F017,U+F01A-F01B,U+F01D,U+F022,U+F03E,U+F044,U+F046,U+F05C-F05D,U+F06E,U+F070,U+F087-F088,U+F08A,U+F094,U+F096-F097,U+F09D,U+F0A0,U+F0A2,U+F0A4-F0A7,U+F0C5,U+F0C7,U+F0E5-F0E6,U+F0EB,U+F0F6-F0F8,U+F10C,U+F114-F115,U+F118-F11A,U+F11C-F11D,U+F133,U+F147,U+F14E,U+F150-F152,U+F185-F186,U+F18E,U+F190-F192,U+F196,U+F1C1-F1C9,U+F1D9,U+F1DB,U+F1E3,U+F1EA,U+F1F7,U+F1F9,U+F20A,U+F247-F248,U+F24A,U+F24D,U+F255-F25B,U+F25D,U+F271-F274,U+F278,U+F27B,U+F28C,U+F28E,U+F29C,U+F2B5,U+F2B7,U+F2BA,U+F2BC,U+F2BE,U+F2C0-F2C1,U+F2C3,U+F2D0,U+F2D2,U+F2D4,U+F2DC; }
@font-face {
font-family: 'FontAwesome';
font-display: block;
src: url("../webfonts/fa-v4compatibility.woff2") format("woff2"), url("../webfonts/fa-v4compatibility.ttf") format("truetype");
unicode-range: U+F041,U+F047,U+F065-F066,U+F07D-F07E,U+F080,U+F08B,U+F08E,U+F090,U+F09A,U+F0AC,U+F0AE,U+F0B2,U+F0D0,U+F0D6,U+F0E4,U+F0EC,U+F10A-F10B,U+F123,U+F13E,U+F148-F149,U+F14C,U+F156,U+F15E,U+F160-F161,U+F163,U+F175-F178,U+F195,U+F1F8,U+F219,U+F27A; }

View File

@ -0,0 +1,6 @@
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype");unicode-range:u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-v4compatibility.woff2) format("woff2"),url(../webfonts/fa-v4compatibility.ttf) format("truetype");unicode-range:u+f041,u+f047,u+f065-f066,u+f07d-f07e,u+f080,u+f08b,u+f08e,u+f090,u+f09a,u+f0ac,u+f0ae,u+f0b2,u+f0d0,u+f0d6,u+f0e4,u+f0ec,u+f10a-f10b,u+f123,u+f13e,u+f148-f149,u+f14c,u+f156,u+f15e,u+f160-f161,u+f163,u+f175-f178,u+f195,u+f1f8,u+f219,u+f27a}

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,22 @@
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
@font-face {
font-family: 'Font Awesome 5 Brands';
font-display: block;
font-weight: 400;
src: url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.ttf") format("truetype"); }
@font-face {
font-family: 'Font Awesome 5 Free';
font-display: block;
font-weight: 900;
src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); }
@font-face {
font-family: 'Font Awesome 5 Free';
font-display: block;
font-weight: 400;
src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype"); }

View File

@ -0,0 +1,6 @@
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src:url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype")}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,322 +1,353 @@
/*!
* Font Awesome Free 5.15.1 by @fontawesome - https://fontawesome.com
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
var e, t;
e = this, t = function(e) {
"use strict";
function t(e) {
return (t = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) {
return typeof e;
} : function(e) {
return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e;
})(e);
(t => {
("object" != typeof exports || "undefined" == typeof module) && "function" == typeof define && define.amd ? define(t) : t();
})(function() {
function o(t, e, n) {
var o;
(e = "symbol" == typeof (o = ((t, e) => {
if ("object" != typeof t || !t) return t;
var n = t[Symbol.toPrimitive];
if (void 0 === n) return ("string" === e ? String : Number)(t);
if ("object" != typeof (n = n.call(t, e || "default"))) return n;
throw new TypeError("@@toPrimitive must return a primitive value.");
})(e, "string")) ? o : o + "") in t ? Object.defineProperty(t, e, {
value: n,
enumerable: !0,
configurable: !0,
writable: !0
}) : t[e] = n;
}
function a(r) {
for (var e = 1; e < arguments.length; e++) {
var i = null != arguments[e] ? arguments[e] : {}, t = Object.keys(i);
"function" == typeof Object.getOwnPropertySymbols && (t = t.concat(Object.getOwnPropertySymbols(i).filter(function(e) {
return Object.getOwnPropertyDescriptor(i, e).enumerable;
}))), t.forEach(function(e) {
var t, n, o;
t = r, o = i[n = e], n in t ? Object.defineProperty(t, n, {
value: o,
enumerable: !0,
configurable: !0,
writable: !0
}) : t[n] = o;
function r(e, t) {
var n, o = Object.keys(e);
return Object.getOwnPropertySymbols && (n = Object.getOwnPropertySymbols(e),
t && (n = n.filter(function(t) {
return Object.getOwnPropertyDescriptor(e, t).enumerable;
})), o.push.apply(o, n)), o;
}
function s(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {};
t % 2 ? r(Object(n), !0).forEach(function(t) {
o(e, t, n[t]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : r(Object(n)).forEach(function(t) {
Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(n, t));
});
}
return r;
return e;
}
var n = {}, o = {};
let t = {}, e = {};
try {
"undefined" != typeof window && (n = window), "undefined" != typeof document && (o = document);
} catch (e) {}
var r = (n.navigator || {}).userAgent, i = void 0 === r ? "" : r, l = n, u = o, c = !!l.document, s = !!u.documentElement && !!u.head && "function" == typeof u.addEventListener && "function" == typeof u.createElement, f = (~i.indexOf("MSIE") || i.indexOf("Trident/"),
[]), d = !1;
function m(e) {
s && (d ? setTimeout(e, 0) : f.push(e));
"undefined" != typeof window && (t = window), "undefined" != typeof document && (e = document);
} catch (t) {}
var {
userAgent: n = ""
} = t.navigator || {};
let l = t, d = e, a = !!l.document, i = !!d.documentElement && !!d.head && "function" == typeof d.addEventListener && "function" == typeof d.createElement;
~n.indexOf("MSIE") || n.indexOf("Trident/");
function f() {
d.removeEventListener("DOMContentLoaded", f), u = 1, c.map(t => t());
}
s && ((d = (u.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(u.readyState)) || u.addEventListener("DOMContentLoaded", function e() {
u.removeEventListener("DOMContentLoaded", e), d = 1, f.map(function(e) {
return e();
});
}));
var g = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : {};
var h, p = (function(c) {
!function(e) {
function u(e, t) {
var n = (65535 & e) + (65535 & t);
return (e >> 16) + (t >> 16) + (n >> 16) << 16 | 65535 & n;
}
function a(e, t, n, o, r, i) {
return u((c = u(u(t, e), u(o, i))) << (a = r) | c >>> 32 - a, n);
var c, a;
}
function d(e, t, n, o, r, i, c) {
return a(t & n | ~t & o, e, t, r, i, c);
}
function m(e, t, n, o, r, i, c) {
return a(t & o | n & ~o, e, t, r, i, c);
}
function g(e, t, n, o, r, i, c) {
return a(t ^ n ^ o, e, t, r, i, c);
}
function h(e, t, n, o, r, i, c) {
return a(n ^ (t | ~o), e, t, r, i, c);
}
function s(e, t) {
var n, o, r, i, c;
e[t >> 5] |= 128 << t % 32, e[14 + (t + 64 >>> 9 << 4)] = t;
var a = 1732584193, s = -271733879, f = -1732584194, l = 271733878;
for (n = 0; n < e.length; n += 16) s = h(s = h(s = h(s = h(s = g(s = g(s = g(s = g(s = m(s = m(s = m(s = m(s = d(s = d(s = d(s = d(r = s, f = d(i = f, l = d(c = l, a = d(o = a, s, f, l, e[n], 7, -680876936), s, f, e[n + 1], 12, -389564586), a, s, e[n + 2], 17, 606105819), l, a, e[n + 3], 22, -1044525330), f = d(f, l = d(l, a = d(a, s, f, l, e[n + 4], 7, -176418897), s, f, e[n + 5], 12, 1200080426), a, s, e[n + 6], 17, -1473231341), l, a, e[n + 7], 22, -45705983), f = d(f, l = d(l, a = d(a, s, f, l, e[n + 8], 7, 1770035416), s, f, e[n + 9], 12, -1958414417), a, s, e[n + 10], 17, -42063), l, a, e[n + 11], 22, -1990404162), f = d(f, l = d(l, a = d(a, s, f, l, e[n + 12], 7, 1804603682), s, f, e[n + 13], 12, -40341101), a, s, e[n + 14], 17, -1502002290), l, a, e[n + 15], 22, 1236535329), f = m(f, l = m(l, a = m(a, s, f, l, e[n + 1], 5, -165796510), s, f, e[n + 6], 9, -1069501632), a, s, e[n + 11], 14, 643717713), l, a, e[n], 20, -373897302), f = m(f, l = m(l, a = m(a, s, f, l, e[n + 5], 5, -701558691), s, f, e[n + 10], 9, 38016083), a, s, e[n + 15], 14, -660478335), l, a, e[n + 4], 20, -405537848), f = m(f, l = m(l, a = m(a, s, f, l, e[n + 9], 5, 568446438), s, f, e[n + 14], 9, -1019803690), a, s, e[n + 3], 14, -187363961), l, a, e[n + 8], 20, 1163531501), f = m(f, l = m(l, a = m(a, s, f, l, e[n + 13], 5, -1444681467), s, f, e[n + 2], 9, -51403784), a, s, e[n + 7], 14, 1735328473), l, a, e[n + 12], 20, -1926607734), f = g(f, l = g(l, a = g(a, s, f, l, e[n + 5], 4, -378558), s, f, e[n + 8], 11, -2022574463), a, s, e[n + 11], 16, 1839030562), l, a, e[n + 14], 23, -35309556), f = g(f, l = g(l, a = g(a, s, f, l, e[n + 1], 4, -1530992060), s, f, e[n + 4], 11, 1272893353), a, s, e[n + 7], 16, -155497632), l, a, e[n + 10], 23, -1094730640), f = g(f, l = g(l, a = g(a, s, f, l, e[n + 13], 4, 681279174), s, f, e[n], 11, -358537222), a, s, e[n + 3], 16, -722521979), l, a, e[n + 6], 23, 76029189), f = g(f, l = g(l, a = g(a, s, f, l, e[n + 9], 4, -640364487), s, f, e[n + 12], 11, -421815835), a, s, e[n + 15], 16, 530742520), l, a, e[n + 2], 23, -995338651), f = h(f, l = h(l, a = h(a, s, f, l, e[n], 6, -198630844), s, f, e[n + 7], 10, 1126891415), a, s, e[n + 14], 15, -1416354905), l, a, e[n + 5], 21, -57434055), f = h(f, l = h(l, a = h(a, s, f, l, e[n + 12], 6, 1700485571), s, f, e[n + 3], 10, -1894986606), a, s, e[n + 10], 15, -1051523), l, a, e[n + 1], 21, -2054922799), f = h(f, l = h(l, a = h(a, s, f, l, e[n + 8], 6, 1873313359), s, f, e[n + 15], 10, -30611744), a, s, e[n + 6], 15, -1560198380), l, a, e[n + 13], 21, 1309151649), f = h(f, l = h(l, a = h(a, s, f, l, e[n + 4], 6, -145523070), s, f, e[n + 11], 10, -1120210379), a, s, e[n + 2], 15, 718787259), l, a, e[n + 9], 21, -343485551),
a = u(a, o), s = u(s, r), f = u(f, i), l = u(l, c);
return [ a, s, f, l ];
}
function f(e) {
var t, n = "", o = 32 * e.length;
for (t = 0; t < o; t += 8) n += String.fromCharCode(e[t >> 5] >>> t % 32 & 255);
return n;
}
function l(e) {
var t, n = [];
for (n[(e.length >> 2) - 1] = void 0, t = 0; t < n.length; t += 1) n[t] = 0;
var o = 8 * e.length;
for (t = 0; t < o; t += 8) n[t >> 5] |= (255 & e.charCodeAt(t / 8)) << t % 32;
return n;
}
function o(e) {
var t, n, o = "0123456789abcdef", r = "";
for (n = 0; n < e.length; n += 1) t = e.charCodeAt(n), r += o.charAt(t >>> 4 & 15) + o.charAt(15 & t);
return r;
}
function n(e) {
return unescape(encodeURIComponent(e));
}
function r(e) {
return f(s(l(t = n(e)), 8 * t.length));
var t;
}
function i(e, t) {
return function(e, t) {
var n, o, r = l(e), i = [], c = [];
for (i[15] = c[15] = void 0, 16 < r.length && (r = s(r, 8 * e.length)), n = 0; n < 16; n += 1) i[n] = 909522486 ^ r[n],
c[n] = 1549556828 ^ r[n];
return o = s(i.concat(l(t)), 512 + 8 * t.length), f(s(c.concat(o), 640));
}(n(e), n(t));
}
function t(e, t, n) {
return t ? n ? i(t, e) : o(i(t, e)) : n ? r(e) : o(r(e));
}
c.exports ? c.exports = t : e.md5 = t;
}(g);
}(h = {
let c = [], u = !1;
function h(t) {
i && (u ? setTimeout(t, 0) : c.push(t));
}
i && !(u = (d.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(d.readyState)) && d.addEventListener("DOMContentLoaded", f);
var b = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : {};
(function(t) {
function d(t, e) {
var n = (65535 & t) + (65535 & e);
return (t >> 16) + (e >> 16) + (n >> 16) << 16 | 65535 & n;
}
function s(t, e, n, o, r, a) {
return d((e = d(d(e, t), d(o, a))) << r | e >>> 32 - r, n);
}
function u(t, e, n, o, r, a, i) {
return s(e & n | ~e & o, t, e, r, a, i);
}
function h(t, e, n, o, r, a, i) {
return s(e & o | n & ~o, t, e, r, a, i);
}
function g(t, e, n, o, r, a, i) {
return s(e ^ n ^ o, t, e, r, a, i);
}
function m(t, e, n, o, r, a, i) {
return s(n ^ (e | ~o), t, e, r, a, i);
}
function f(t, e) {
t[e >> 5] |= 128 << e % 32, t[14 + (e + 64 >>> 9 << 4)] = e;
for (var n, o, r, a, i = 1732584193, s = -271733879, f = -1732584194, c = 271733878, l = 0; l < t.length; l += 16) i = u(n = i, o = s, r = f, a = c, t[l], 7, -680876936),
c = u(c, i, s, f, t[l + 1], 12, -389564586), f = u(f, c, i, s, t[l + 2], 17, 606105819),
s = u(s, f, c, i, t[l + 3], 22, -1044525330), i = u(i, s, f, c, t[l + 4], 7, -176418897),
c = u(c, i, s, f, t[l + 5], 12, 1200080426), f = u(f, c, i, s, t[l + 6], 17, -1473231341),
s = u(s, f, c, i, t[l + 7], 22, -45705983), i = u(i, s, f, c, t[l + 8], 7, 1770035416),
c = u(c, i, s, f, t[l + 9], 12, -1958414417), f = u(f, c, i, s, t[l + 10], 17, -42063),
s = u(s, f, c, i, t[l + 11], 22, -1990404162), i = u(i, s, f, c, t[l + 12], 7, 1804603682),
c = u(c, i, s, f, t[l + 13], 12, -40341101), f = u(f, c, i, s, t[l + 14], 17, -1502002290),
i = h(i, s = u(s, f, c, i, t[l + 15], 22, 1236535329), f, c, t[l + 1], 5, -165796510),
c = h(c, i, s, f, t[l + 6], 9, -1069501632), f = h(f, c, i, s, t[l + 11], 14, 643717713),
s = h(s, f, c, i, t[l], 20, -373897302), i = h(i, s, f, c, t[l + 5], 5, -701558691),
c = h(c, i, s, f, t[l + 10], 9, 38016083), f = h(f, c, i, s, t[l + 15], 14, -660478335),
s = h(s, f, c, i, t[l + 4], 20, -405537848), i = h(i, s, f, c, t[l + 9], 5, 568446438),
c = h(c, i, s, f, t[l + 14], 9, -1019803690), f = h(f, c, i, s, t[l + 3], 14, -187363961),
s = h(s, f, c, i, t[l + 8], 20, 1163531501), i = h(i, s, f, c, t[l + 13], 5, -1444681467),
c = h(c, i, s, f, t[l + 2], 9, -51403784), f = h(f, c, i, s, t[l + 7], 14, 1735328473),
i = g(i, s = h(s, f, c, i, t[l + 12], 20, -1926607734), f, c, t[l + 5], 4, -378558),
c = g(c, i, s, f, t[l + 8], 11, -2022574463), f = g(f, c, i, s, t[l + 11], 16, 1839030562),
s = g(s, f, c, i, t[l + 14], 23, -35309556), i = g(i, s, f, c, t[l + 1], 4, -1530992060),
c = g(c, i, s, f, t[l + 4], 11, 1272893353), f = g(f, c, i, s, t[l + 7], 16, -155497632),
s = g(s, f, c, i, t[l + 10], 23, -1094730640), i = g(i, s, f, c, t[l + 13], 4, 681279174),
c = g(c, i, s, f, t[l], 11, -358537222), f = g(f, c, i, s, t[l + 3], 16, -722521979),
s = g(s, f, c, i, t[l + 6], 23, 76029189), i = g(i, s, f, c, t[l + 9], 4, -640364487),
c = g(c, i, s, f, t[l + 12], 11, -421815835), f = g(f, c, i, s, t[l + 15], 16, 530742520),
i = m(i, s = g(s, f, c, i, t[l + 2], 23, -995338651), f, c, t[l], 6, -198630844),
c = m(c, i, s, f, t[l + 7], 10, 1126891415), f = m(f, c, i, s, t[l + 14], 15, -1416354905),
s = m(s, f, c, i, t[l + 5], 21, -57434055), i = m(i, s, f, c, t[l + 12], 6, 1700485571),
c = m(c, i, s, f, t[l + 3], 10, -1894986606), f = m(f, c, i, s, t[l + 10], 15, -1051523),
s = m(s, f, c, i, t[l + 1], 21, -2054922799), i = m(i, s, f, c, t[l + 8], 6, 1873313359),
c = m(c, i, s, f, t[l + 15], 10, -30611744), f = m(f, c, i, s, t[l + 6], 15, -1560198380),
s = m(s, f, c, i, t[l + 13], 21, 1309151649), i = m(i, s, f, c, t[l + 4], 6, -145523070),
c = m(c, i, s, f, t[l + 11], 10, -1120210379), f = m(f, c, i, s, t[l + 2], 15, 718787259),
s = m(s, f, c, i, t[l + 9], 21, -343485551), i = d(i, n), s = d(s, o),
f = d(f, r), c = d(c, a);
return [ i, s, f, c ];
}
function c(t) {
for (var e = "", n = 32 * t.length, o = 0; o < n; o += 8) e += String.fromCharCode(t[o >> 5] >>> o % 32 & 255);
return e;
}
function l(t) {
var e = [];
for (e[(t.length >> 2) - 1] = void 0, o = 0; o < e.length; o += 1) e[o] = 0;
for (var n = 8 * t.length, o = 0; o < n; o += 8) e[o >> 5] |= (255 & t.charCodeAt(o / 8)) << o % 32;
return e;
}
function o(t) {
for (var e, n = "0123456789abcdef", o = "", r = 0; r < t.length; r += 1) e = t.charCodeAt(r),
o += n.charAt(e >>> 4 & 15) + n.charAt(15 & e);
return o;
}
function p(t) {
return unescape(encodeURIComponent(t));
}
function r(t) {
return c(f(l(t = p(t)), 8 * t.length));
}
function a(t, e) {
var n, o, t = p(t), e = p(e), r = l(t), a = [], i = [];
for (a[15] = i[15] = void 0, 16 < r.length && (r = f(r, 8 * t.length)),
n = 0; n < 16; n += 1) a[n] = 909522486 ^ r[n], i[n] = 1549556828 ^ r[n];
return o = f(a.concat(l(e)), 512 + 8 * e.length), c(f(i.concat(o), 640));
}
function e(t, e, n) {
return e ? n ? a(e, t) : o(a(e, t)) : n ? r(t) : o(r(t));
}
var n;
n = b, t.exports ? t.exports = e : n.md5 = e;
})(g = {
exports: {}
}, h.exports), h.exports);
function v(e) {
if (null !== e && "object" === t(e)) return e.src ? p(e.src) : e.href ? p(e.href) : e.innerText && "" !== e.innerText ? p(e.innerText) : void 0;
});
var g, m = g.exports;
function p(t) {
if (null !== t && "object" == typeof t) return t.src ? m(t.src) : t.href ? m(t.href) : t.innerText && "" !== t.innerText ? m(t.innerText) : void 0;
}
var y = "fa-kits-diag", w = "fa-kits-node-under-test", b = "data-md5", x = "data-fa-detection-ignore", A = "data-fa-detection-timeout", T = "data-fa-detection-results-collection-max-wait", D = function(e) {
e.preventDefault(), e.stopPropagation();
let w = "fa-kits-diag", y = "fa-kits-node-under-test", v = "data-md5", A = "data-fa-detection-ignore", x = "data-fa-detection-timeout", T = "data-fa-detection-results-collection-max-wait", D = t => {
t.preventDefault(), t.stopPropagation();
};
function E(e) {
var t = e.fn, c = void 0 === t ? function() {
return !0;
} : t, n = e.initialDuration, o = void 0 === n ? 1 : n, r = e.maxDuration, a = void 0 === r ? l.FontAwesomeDetection.timeout : r, i = e.showProgress, s = void 0 !== i && i, f = e.progressIndicator;
return new Promise(function(r, i) {
!function n(e, o) {
function E(t) {
let {
fn: a = () => !0,
initialDuration: e = 1,
maxDuration: i = l.FontAwesomeDetection.timeout,
showProgress: s = !1,
progressIndicator: f
} = t;
return new Promise(function(o, r) {
!function e(t, n) {
setTimeout(function() {
var e = c();
if (s && console.info(f), e) r(e); else {
var t = 250 + o;
t <= a ? n(250, t) : i("timeout");
}
}, e);
}(o, 0);
var t = a();
s && console.info(f), t ? o(t) : (t = 250 + n) <= i ? e(250, t) : r("timeout");
}, t);
}(e, 0);
});
}
function C(e) {
var t = e.nodesTested, n = e.nodesFound;
l.FontAwesomeDetection = l.FontAwesomeDetection || {}, l.FontAwesomeDetection.nodesTested = t,
function O(t) {
var {
nodesTested: e,
nodesFound: n
} = t;
l.FontAwesomeDetection = l.FontAwesomeDetection || {}, l.FontAwesomeDetection.nodesTested = e,
l.FontAwesomeDetection.nodesFound = n, l.FontAwesomeDetection.detectionDone = !0;
}
function F() {
var t = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : function() {}, n = {
function C(t) {
let e = 0 < arguments.length && void 0 !== t ? t : () => {}, n = {
conflict: {},
noConflict: {}
};
l.onmessage = function(e) {
"file://" !== l.location.origin && e.origin !== l.location.origin || e && e.data && ("fontawesome-conflict" === e.data.type ? n.conflict[e.data.md5] = e.data : "no-conflict" === e.data.type && (n.noConflict[e.data.md5] = e.data));
l.onmessage = function(t) {
"file://" !== l.location.origin && t.origin !== l.location.origin || t && t.data && ("fontawesome-conflict" === t.data.type ? n.conflict[t.data.md5] = t.data : "no-conflict" === t.data.type && (n.noConflict[t.data.md5] = t.data));
};
var e = function(t) {
for (var c = Array.from(u.scripts).filter(function(e) {
return !e.hasAttribute(x) && e !== t;
}), a = {}, e = function(e) {
var t = u.createElement("iframe");
t.setAttribute("style", "display:none;");
var n = u.createElement("script");
var o = (e => {
var o = Array.from(d.scripts).filter(t => !t.hasAttribute(A) && t !== e), r = {};
for (let s = 0; s < o.length; s++) {
let t = d.createElement("iframe"), e = (t.setAttribute("style", "display:none;"),
d.createElement("script"));
e.setAttribute("id", y);
var a = p(o[s]);
e.setAttribute(v, a), r[a] = o[s], "" !== o[s].src && (e.src = o[s].src),
"" !== o[s].innerText && (e.innerText = o[s].innerText), e.async = !0;
let n = d.createElement("script");
n.setAttribute("id", w);
var o = v(c[e]);
n.setAttribute(b, o), a[o] = c[e], "" !== c[e].src && (n.src = c[e].src), "" !== c[e].innerText && (n.innerText = c[e].innerText),
n.async = !0;
var r = u.createElement("script");
r.setAttribute("id", y);
var i = "file://" === l.location.origin ? "*" : l.location.origin;
r.innerText = "(".concat(function(n, o, r) {
n.innerText = "(".concat(((n, o, r) => {
parent.FontAwesomeDetection.__pollUntil({
fn: function() {
return !!window.FontAwesomeConfig || !!window.FontAwesomeKitConfig;
}
fn: () => !!window.FontAwesomeConfig || !!window.FontAwesomeKitConfig
}).then(function() {
var e = document.getElementById(n);
var t = document.getElementById(n);
parent.postMessage({
type: "fontawesome-conflict",
technology: "js",
src: e.src,
innerText: e.innerText,
tagName: e.tagName,
md5: o
}, r);
}).catch(function(e) {
var t = document.getElementById(n);
"timeout" === e ? parent.postMessage({
type: "no-conflict",
src: t.src,
innerText: t.innerText,
tagName: t.tagName,
md5: o
}, r) : console.error(e);
});
}.toString(), ")('").concat(w, "', '").concat(o, "', '").concat(i, "');"), t.onload = function() {
t.contentWindow.addEventListener("error", D, !0), t.contentDocument.head.appendChild(r),
t.contentDocument.head.appendChild(n);
}, m(function() {
return u.body.appendChild(t);
});
}, n = 0; n < c.length; n++) e(n);
return a;
}(u.currentScript), o = function() {
var e = Array.from(u.getElementsByTagName("link")).filter(function(e) {
return !e.hasAttribute(x);
}), t = Array.from(u.getElementsByTagName("style")).filter(function(e) {
return !(e.hasAttribute(x) || l.FontAwesomeConfig && e.innerText.match(new RegExp("svg:not\\(:root\\)\\.".concat(l.FontAwesomeConfig.replacementClass))));
});
function n(e, t) {
var n = u.createElement("iframe");
n.setAttribute("style", "visibility: hidden; position: absolute; height: 0; width: 0;");
var o = "fa-test-icon-" + t, r = u.createElement("i");
r.setAttribute("class", "fa fa-coffee"), r.setAttribute("id", o);
var i = u.createElement("script");
i.setAttribute("id", y);
var c = "file://" === l.location.origin ? "*" : l.location.origin;
i.innerText = "(".concat(function(n, o, r, i) {
parent.FontAwesomeDetection.__pollUntil({
fn: function() {
var e = document.getElementById(o), t = window.getComputedStyle(e).getPropertyValue("font-family");
return !(!t.match(/FontAwesome/) && !t.match(/Font Awesome 5/));
}
}).then(function() {
}, r);
}).catch(function(t) {
var e = document.getElementById(n);
"timeout" === t ? parent.postMessage({
type: "no-conflict",
src: e.src,
innerText: e.innerText,
tagName: e.tagName,
md5: o
}, r) : console.error(t);
});
}).toString(), ")('").concat(y, "', '").concat(a, "', '").concat(i, "');"),
t.onload = function() {
t.contentWindow.addEventListener("error", D, !0), t.contentDocument.head.appendChild(n),
t.contentDocument.head.appendChild(e);
}, h(() => d.body.appendChild(t));
}
return r;
})(d.currentScript), r = (() => {
var t = Array.from(d.getElementsByTagName("link")).filter(t => !t.hasAttribute(A)), e = Array.from(d.getElementsByTagName("style")).filter(t => !(t.hasAttribute(A) || l.FontAwesomeConfig && t.innerText.match(new RegExp("svg:not\\(:root\\)\\.".concat(l.FontAwesomeConfig.replacementClass)))));
function n(t, e) {
let n = d.createElement("iframe");
n.setAttribute("style", "visibility: hidden; position: absolute; height: 0; width: 0;");
var o = "fa-test-icon-" + e;
let r = d.createElement("i"), a = (r.setAttribute("class", "fa fa-coffee"),
r.setAttribute("id", o), d.createElement("script"));
a.setAttribute("id", w);
var i = "file://" === l.location.origin ? "*" : l.location.origin;
a.innerText = "(".concat(((n, e, o, r) => {
parent.FontAwesomeDetection.__pollUntil({
fn: () => {
var t = document.getElementById(e), t = window.getComputedStyle(t).getPropertyValue("font-family");
return !(!t.match(/FontAwesome/) && !t.match(/Font Awesome [56]/));
}
}).then(() => {
var t = document.getElementById(n);
parent.postMessage({
type: "fontawesome-conflict",
technology: "webfont",
href: e.href,
innerText: e.innerText,
tagName: e.tagName,
md5: r
}, i);
}).catch(function(e) {
var t = document.getElementById(n);
"timeout" === e ? parent.postMessage({
type: "no-conflict",
technology: "webfont",
href: t.src,
href: t.href,
innerText: t.innerText,
tagName: t.tagName,
md5: r
}, i) : console.error(e);
md5: o
}, r);
}).catch(function(t) {
var e = document.getElementById(n);
"timeout" === t ? parent.postMessage({
type: "no-conflict",
technology: "webfont",
href: e.src,
innerText: e.innerText,
tagName: e.tagName,
md5: o
}, r) : console.error(t);
});
}.toString(), ")('").concat(w, "', '").concat(o || "foo", "', '").concat(t, "', '").concat(c, "');"),
}).toString(), ")('").concat(y, "', '").concat(o || "foo", "', '").concat(e, "', '").concat(i, "');"),
n.onload = function() {
n.contentWindow.addEventListener("error", D, !0), n.contentDocument.head.appendChild(i),
n.contentDocument.head.appendChild(e), n.contentDocument.body.appendChild(r);
}, m(function() {
return u.body.appendChild(n);
});
n.contentWindow.addEventListener("error", D, !0), n.contentDocument.head.appendChild(a),
n.contentDocument.head.appendChild(t), n.contentDocument.body.appendChild(r);
}, h(() => d.body.appendChild(n));
}
for (var o = {}, r = 0; r < e.length; r++) {
var i = u.createElement("link");
i.setAttribute("id", w), i.setAttribute("href", e[r].href), i.setAttribute("rel", e[r].rel);
var c = v(e[r]);
i.setAttribute(b, c), o[c] = e[r], n(i, c);
var o = {};
for (let f = 0; f < t.length; f++) {
var r = d.createElement("link"), a = (r.setAttribute("id", y), r.setAttribute("href", t[f].href),
r.setAttribute("rel", t[f].rel), p(t[f]));
r.setAttribute(v, a), o[a] = t[f], n(r, a);
}
for (var a = 0; a < t.length; a++) {
var s = u.createElement("style");
s.setAttribute("id", w);
var f = v(t[a]);
s.setAttribute(b, f), s.innerText = t[a].innerText, o[f] = t[a], n(s, f);
for (let c = 0; c < e.length; c++) {
var i = d.createElement("style"), s = (i.setAttribute("id", y),
p(e[c]));
i.setAttribute(v, s), i.innerText = e[c].innerText, o[s] = e[c],
n(i, s);
}
return o;
}(), r = a({}, e, o), i = Object.keys(e).length + Object.keys(o).length, c = l.FontAwesomeDetection.timeout + l.FontAwesomeDetection.resultsCollectionMaxWait;
})();
let a = s(s({}, o), r), i = Object.keys(o).length + Object.keys(r).length;
o = l.FontAwesomeDetection.timeout + l.FontAwesomeDetection.resultsCollectionMaxWait;
console.group("Font Awesome Detector"), 0 === i ? (console.info("%cAll Good!", "color: green; font-size: large"),
console.info("We didn't find anything that needs testing for conflicts. Ergo, no conflicts.")) : (console.info("Testing ".concat(i, " possible conflicts.")),
console.info("We'll wait about ".concat(Math.round(l.FontAwesomeDetection.timeout / 10) / 100, " seconds while testing these and\n") + "then up to another ".concat(Math.round(l.FontAwesomeDetection.resultsCollectionMaxWait / 10) / 100, " to allow the browser time\n") + "to accumulate the results. But we'll probably be outta here way before then.\n\n"),
console.info("You can adjust those durations by assigning values to these attributes on the <script> element that loads this detection:"),
console.info("\t%c".concat(A, "%c: milliseconds to wait for each test before deciding whether it's a conflict."), "font-weight: bold;", "font-size: normal;"),
console.info("\t%c".concat(x, "%c: milliseconds to wait for each test before deciding whether it's a conflict."), "font-weight: bold;", "font-size: normal;"),
console.info("\t%c".concat(T, "%c: milliseconds to wait for the browser to accumulate test results before giving up."), "font-weight: bold;", "font-size: normal;"),
E({
maxDuration: c,
maxDuration: o,
showProgress: !0,
progressIndicator: "waiting...",
fn: function() {
return Object.keys(n.conflict).length + Object.keys(n.noConflict).length >= i;
}
}).then(function() {
console.info("DONE!"), C({
fn: () => Object.keys(n.conflict).length + Object.keys(n.noConflict).length >= i
}).then(() => {
console.info("DONE!"), O({
nodesTested: n,
nodesFound: r
}), t({
nodesFound: a
}), e({
nodesTested: n,
nodesFound: r
nodesFound: a
}), console.groupEnd();
}).catch(function(e) {
"timeout" === e ? console.info("TIME OUT! We waited until we got tired. Here's what we found:") : (console.info("Whoops! We hit an error:", e),
console.info("Here's what we'd found up until that error:")), C({
}).catch(t => {
"timeout" === t ? console.info("TIME OUT! We waited until we got tired. Here's what we found:") : (console.info("Whoops! We hit an error:", t),
console.info("Here's what we'd found up until that error:")), O({
nodesTested: n,
nodesFound: r
}), t({
nodesFound: a
}), e({
nodesTested: n,
nodesFound: r
nodesFound: a
}), console.groupEnd();
}));
}
var O = l.FontAwesomeDetection || {}, N = a({}, {
report: function(e) {
var t = e.nodesTested, n = e.nodesFound, o = {};
for (var r in n) t.conflict[r] || t.noConflict[r] || (o[r] = n[r]);
var i = Object.keys(t.conflict).length;
if (0 < i) {
console.info("%cConflict".concat(1 < i ? "s" : "", " found:"), "color: darkred; font-size: large");
var c = {};
for (var a in t.conflict) {
var s = t.conflict[a];
c[a] = {
tagName: s.tagName,
"src/href": s.src || s.href || "n/a",
"innerText excerpt": s.innerText && "" !== s.innerText ? s.innerText.slice(0, 200) + "..." : "(empty)"
var n = l.FontAwesomeDetection || {}, n = s(s(s({}, {
report: function(t) {
var e, {
nodesTested: n,
nodesFound: o
} = t, r = {};
for (e in o) n.conflict[e] || n.noConflict[e] || (r[e] = o[e]);
var a = Object.keys(n.conflict).length;
if (0 < a) {
console.info("%cConflict".concat(1 < a ? "s" : "", " found:"), "color: darkred; font-size: large");
var i, s = {};
for (i in n.conflict) {
var f = n.conflict[i];
s[i] = {
tagName: f.tagName,
"src/href": f.src || f.href || "n/a",
"innerText excerpt": f.innerText && "" !== f.innerText ? f.innerText.slice(0, 200) + "..." : "(empty)"
};
}
console.table(c);
console.table(s);
}
var f = Object.keys(t.noConflict).length;
if (0 < f) {
console.info("%cNo conflict".concat(1 < f ? "s" : "", " found with ").concat(1 == f ? "this" : "these", ":"), "color: green; font-size: large");
var l = {};
for (var u in t.noConflict) {
var d = t.noConflict[u];
l[u] = {
if (0 < (a = Object.keys(n.noConflict).length)) {
console.info("%cNo conflict".concat(1 < a ? "s" : "", " found with ").concat(1 === a ? "this" : "these", ":"), "color: green; font-size: large");
var c, l = {};
for (c in n.noConflict) {
var d = n.noConflict[c];
l[c] = {
tagName: d.tagName,
"src/href": d.src || d.href || "n/a",
"innerText excerpt": d.innerText && "" !== d.innerText ? d.innerText.slice(0, 200) + "..." : "(empty)"
@ -324,47 +355,223 @@ e = this, t = function(e) {
}
console.table(l);
}
var m = Object.keys(o).length;
if (0 < m) {
console.info("%cLeftovers--we timed out before collecting test results for ".concat(1 == m ? "this" : "these", ":"), "color: blue; font-size: large");
var g = {};
for (var h in o) {
var p = o[h];
g[h] = {
tagName: p.tagName,
"src/href": p.src || p.href || "n/a",
"innerText excerpt": p.innerText && "" !== p.innerText ? p.innerText.slice(0, 200) + "..." : "(empty)"
if (0 < (a = Object.keys(r).length)) {
console.info("%cLeftovers--we timed out before collecting test results for ".concat(1 === a ? "this" : "these", ":"), "color: blue; font-size: large");
var u, h = {};
for (u in r) {
var g = r[u];
h[u] = {
tagName: g.tagName,
"src/href": g.src || g.href || "n/a",
"innerText excerpt": g.innerText && "" !== g.innerText ? g.innerText.slice(0, 200) + "..." : "(empty)"
};
}
console.table(g);
console.table(h);
}
},
timeout: +(u.currentScript.getAttribute(A) || "2000"),
resultsCollectionMaxWait: +(u.currentScript.getAttribute(T) || "5000")
}, O, {
timeout: +(d.currentScript.getAttribute(x) || "2000"),
resultsCollectionMaxWait: +(d.currentScript.getAttribute(T) || "5000")
}), n), {}, {
__pollUntil: E,
md5ForNode: v,
md5ForNode: p,
detectionDone: !1,
nodesTested: null,
nodesFound: null
});
l.FontAwesomeDetection = N;
var j = function() {
}), n = (l.FontAwesomeDetection = n, {
classic: {
fa: "solid",
fas: "solid",
"fa-solid": "solid",
far: "regular",
"fa-regular": "regular",
fal: "light",
"fa-light": "light",
fat: "thin",
"fa-thin": "thin",
fab: "brands",
"fa-brands": "brands"
},
duotone: {
fa: "solid",
fad: "solid",
"fa-solid": "solid",
"fa-duotone": "solid",
fadr: "regular",
"fa-regular": "regular",
fadl: "light",
"fa-light": "light",
fadt: "thin",
"fa-thin": "thin"
},
sharp: {
fa: "solid",
fass: "solid",
"fa-solid": "solid",
fasr: "regular",
"fa-regular": "regular",
fasl: "light",
"fa-light": "light",
fast: "thin",
"fa-thin": "thin"
},
"sharp-duotone": {
fa: "solid",
fasds: "solid",
"fa-solid": "solid",
fasdr: "regular",
"fa-regular": "regular",
fasdl: "light",
"fa-light": "light",
fasdt: "thin",
"fa-thin": "thin"
}
}), F = "classic", k = {
fak: "kit",
"fa-kit": "kit"
}, j = {
fakd: "kit-duotone",
"fa-kit-duotone": "kit-duotone"
}, N = {
kit: "fak"
}, P = {
"kit-duotone": "fakd"
};
let S = (() => {
try {
return "production" === process.env.NODE_ENV;
} catch (e) {
} catch (t) {
return !1;
}
}();
!function(e) {
try {
e();
} catch (e) {
if (!j) throw e;
})();
function M(t) {
return new Proxy(t, {
get(t, e) {
return e in t ? t[e] : t[F];
}
});
}
var I = s({}, n), n = (I[F] = s(s(s(s({}, {
"fa-duotone": "duotone"
}), n[F]), k), j), M(I), s({}, {
classic: {
solid: "fas",
regular: "far",
light: "fal",
thin: "fat",
brands: "fab"
},
duotone: {
solid: "fad",
regular: "fadr",
light: "fadl",
thin: "fadt"
},
sharp: {
solid: "fass",
regular: "fasr",
light: "fasl",
thin: "fast"
},
"sharp-duotone": {
solid: "fasds",
regular: "fasdr",
light: "fasdl",
thin: "fasdt"
}
}(function() {
c && s && F(window.FontAwesomeDetection.report);
}), e.conflictDetection = F, Object.defineProperty(e, "__esModule", {
value: !0
})), k = (n[F] = s(s(s(s({}, {
duotone: "fad"
}), n[F]), N), P), M(n), s({}, {
classic: {
fab: "fa-brands",
fad: "fa-duotone",
fal: "fa-light",
far: "fa-regular",
fas: "fa-solid",
fat: "fa-thin"
},
duotone: {
fadr: "fa-regular",
fadl: "fa-light",
fadt: "fa-thin"
},
sharp: {
fass: "fa-solid",
fasr: "fa-regular",
fasl: "fa-light",
fast: "fa-thin"
},
"sharp-duotone": {
fasds: "fa-solid",
fasdr: "fa-regular",
fasdl: "fa-light",
fasdt: "fa-thin"
}
})), j = (k[F] = s(s({}, k[F]), {
fak: "fa-kit"
}), M(k), s({}, {
classic: {
"fa-brands": "fab",
"fa-duotone": "fad",
"fa-light": "fal",
"fa-regular": "far",
"fa-solid": "fas",
"fa-thin": "fat"
},
duotone: {
"fa-regular": "fadr",
"fa-light": "fadl",
"fa-thin": "fadt"
},
sharp: {
"fa-solid": "fass",
"fa-regular": "fasr",
"fa-light": "fasl",
"fa-thin": "fast"
},
"sharp-duotone": {
"fa-solid": "fasds",
"fa-regular": "fasdr",
"fa-light": "fasdl",
"fa-thin": "fasdt"
}
}));
j[F] = s(s({}, j[F]), {
"fa-kit": "fak"
}), M(j), M(s({}, {
classic: {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
duotone: {
900: "fad",
400: "fadr",
300: "fadl",
100: "fadt"
},
sharp: {
900: "fass",
400: "fasr",
300: "fasl",
100: "fast"
},
"sharp-duotone": {
900: "fasds",
400: "fasdr",
300: "fasdl",
100: "fasdt"
}
}));
!function(t) {
try {
for (var e = arguments.length, n = new Array(1 < e ? e - 1 : 0), o = 1; o < e; o++) n[o - 1] = arguments[o];
t(...n);
} catch (t) {
if (!S) throw t;
}
}(() => {
a && i && C(window.FontAwesomeDetection.report);
});
}, "object" == typeof exports && "undefined" != typeof module ? t(exports) : "function" == typeof define && define.amd ? define([ "exports" ], t) : t(e["fontawesome-free-conflict-detection"] = {});
});

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,19 +1,152 @@
// Animated Icons
// animating icons
// --------------------------
.@{fa-css-prefix}-beat {
animation-name: ~'@{fa-css-prefix}-beat';
animation-delay: ~'var(--@{fa-css-prefix}-animation-delay, 0s)';
animation-direction: ~'var(--@{fa-css-prefix}-animation-direction, normal)';
animation-duration: ~'var(--@{fa-css-prefix}-animation-duration, 1s)';
animation-iteration-count: ~'var(--@{fa-css-prefix}-animation-iteration-count, infinite)';
animation-timing-function: ~'var(--@{fa-css-prefix}-animation-timing, ease-in-out)';
}
.@{fa-css-prefix}-bounce {
animation-name: ~'@{fa-css-prefix}-bounce';
animation-delay: ~'var(--@{fa-css-prefix}-animation-delay, 0s)';
animation-direction: ~'var(--@{fa-css-prefix}-animation-direction, normal)';
animation-duration: ~'var(--@{fa-css-prefix}-animation-duration, 1s)';
animation-iteration-count: ~'var(--@{fa-css-prefix}-animation-iteration-count, infinite)';
animation-timing-function: ~'var(--@{fa-css-prefix}-animation-timing, cubic-bezier(0.280, 0.840, 0.420, 1))';
}
.@{fa-css-prefix}-fade {
animation-name: ~'@{fa-css-prefix}-fade';
animation-delay: ~'var(--@{fa-css-prefix}-animation-delay, 0s)';
animation-direction: ~'var(--@{fa-css-prefix}-animation-direction, normal)';
animation-duration: ~'var(--@{fa-css-prefix}-animation-duration, 1s)';
animation-iteration-count: ~'var(--@{fa-css-prefix}-animation-iteration-count, infinite)';
animation-timing-function: ~'var(--@{fa-css-prefix}-animation-timing, cubic-bezier(.4,0,.6,1))';
}
.@{fa-css-prefix}-beat-fade {
animation-name: ~'@{fa-css-prefix}-beat-fade';
animation-delay: ~'var(--@{fa-css-prefix}-animation-delay, 0s)';
animation-direction: ~'var(--@{fa-css-prefix}-animation-direction, normal)';
animation-duration: ~'var(--@{fa-css-prefix}-animation-duration, 1s)';
animation-iteration-count: ~'var(--@{fa-css-prefix}-animation-iteration-count, infinite)';
animation-timing-function: ~'var(--@{fa-css-prefix}-animation-timing, cubic-bezier(.4,0,.6,1))';
}
.@{fa-css-prefix}-flip {
animation-name: ~'@{fa-css-prefix}-flip';
animation-delay: ~'var(--@{fa-css-prefix}-animation-delay, 0s)';
animation-direction: ~'var(--@{fa-css-prefix}-animation-direction, normal)';
animation-duration: ~'var(--@{fa-css-prefix}-animation-duration, 1s)';
animation-iteration-count: ~'var(--@{fa-css-prefix}-animation-iteration-count, infinite)';
animation-timing-function: ~'var(--@{fa-css-prefix}-animation-timing, ease-in-out)';
}
.@{fa-css-prefix}-shake {
animation-name: ~'@{fa-css-prefix}-shake';
animation-delay: ~'var(--@{fa-css-prefix}-animation-delay, 0s)';
animation-direction: ~'var(--@{fa-css-prefix}-animation-direction, normal)';
animation-duration: ~'var(--@{fa-css-prefix}-animation-duration, 1s)';
animation-iteration-count: ~'var(--@{fa-css-prefix}-animation-iteration-count, infinite)';
animation-timing-function: ~'var(--@{fa-css-prefix}-animation-timing, linear)';
}
.@{fa-css-prefix}-spin {
animation: fa-spin 2s infinite linear;
animation-name: ~'@{fa-css-prefix}-spin';
animation-delay: ~'var(--@{fa-css-prefix}-animation-delay, 0s)';
animation-direction: ~'var(--@{fa-css-prefix}-animation-direction, normal)';
animation-duration: ~'var(--@{fa-css-prefix}-animation-duration, 2s)';
animation-iteration-count: ~'var(--@{fa-css-prefix}-animation-iteration-count, infinite)';
animation-timing-function: ~'var(--@{fa-css-prefix}-animation-timing, linear)';
}
.@{fa-css-prefix}-pulse {
animation: fa-spin 1s infinite steps(8);
.@{fa-css-prefix}-spin-reverse {
--@{fa-css-prefix}-animation-direction: reverse;
}
@keyframes fa-spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
.@{fa-css-prefix}-pulse,
.@{fa-css-prefix}-spin-pulse {
animation-name: ~'@{fa-css-prefix}-spin';
animation-direction: ~'var(--@{fa-css-prefix}-animation-direction, normal)';
animation-duration: ~'var(--@{fa-css-prefix}-animation-duration, 1s)';
animation-iteration-count: ~'var(--@{fa-css-prefix}-animation-iteration-count, infinite)';
animation-timing-function: ~'var(--@{fa-css-prefix}-animation-timing, steps(8));';
}
// if agent or operating system prefers reduced motion, disable animations
// see: https://www.smashingmagazine.com/2020/09/design-reduced-motion-sensitivities/
// see: https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-reduced-motion
@media (prefers-reduced-motion: reduce) {
.@{fa-css-prefix}-beat,
.@{fa-css-prefix}-bounce,
.@{fa-css-prefix}-fade,
.@{fa-css-prefix}-beat-fade,
.@{fa-css-prefix}-flip,
.@{fa-css-prefix}-pulse,
.@{fa-css-prefix}-shake,
.@{fa-css-prefix}-spin,
.@{fa-css-prefix}-spin-pulse {
animation-delay: -1ms;
animation-duration: 1ms;
animation-iteration-count: 1;
transition-delay: 0s;
transition-duration: 0s;
}
}
@keyframes ~'@{fa-css-prefix}-beat' {
0%, 90% { transform: scale(1); }
45% { transform: ~'scale(var(--@{fa-css-prefix}-beat-scale, 1.25))'; }
}
@keyframes ~'@{fa-css-prefix}-bounce' {
0% { transform: scale(1,1) translateY(0); }
10% { transform: ~'scale(var(--@{fa-css-prefix}-bounce-start-scale-x, 1.1),var(--@{fa-css-prefix}-bounce-start-scale-y, 0.9))' translateY(0); }
30% { transform: ~'scale(var(--@{fa-css-prefix}-bounce-jump-scale-x, 0.9),var(--@{fa-css-prefix}-bounce-jump-scale-y, 1.1))' ~'translateY(var(--@{fa-css-prefix}-bounce-height, -0.5em))'; }
50% { transform: ~'scale(var(--@{fa-css-prefix}-bounce-land-scale-x, 1.05),var(--@{fa-css-prefix}-bounce-land-scale-y, 0.95))' translateY(0); }
57% { transform: ~'scale(1,1) translateY(var(--@{fa-css-prefix}-bounce-rebound, -0.125em))'; }
64% { transform: scale(1,1) translateY(0); }
100% { transform: scale(1,1) translateY(0); }
}
@keyframes ~'@{fa-css-prefix}-fade' {
50% { opacity: ~'var(--@{fa-css-prefix}-fade-opacity, 0.4)'; }
}
@keyframes ~'@{fa-css-prefix}-beat-fade' {
0%, 100% {
opacity: ~'var(--@{fa-css-prefix}-beat-fade-opacity, 0.4)';
transform: scale(1);
}
50% {
opacity: 1;
transform: ~'scale(var(--@{fa-css-prefix}-beat-fade-scale, 1.125))';
}
}
@keyframes ~'@{fa-css-prefix}-flip' {
50% {
transform: ~'rotate3d(var(--@{fa-css-prefix}-flip-x, 0), var(--@{fa-css-prefix}-flip-y, 1), var(--@{fa-css-prefix}-flip-z, 0), var(--@{fa-css-prefix}-flip-angle, -180deg))';
}
}
@keyframes ~'@{fa-css-prefix}-shake' {
0% { transform: rotate(-15deg); }
4% { transform: rotate(15deg); }
8%, 24% { transform: rotate(-18deg); }
12%, 28% { transform: rotate(18deg); }
16% { transform: rotate(-22deg); }
20% { transform: rotate(22deg); }
32% { transform: rotate(-12deg); }
36% { transform: rotate(12deg); }
40%, 100% { transform: rotate(0deg); }
}
@keyframes ~'@{fa-css-prefix}-spin' {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}

View File

@ -1,16 +1,20 @@
// Bordered & Pulled
// bordered + pulled icons
// -------------------------
.@{fa-css-prefix}-border {
border-radius: .1em;
border: solid .08em @fa-border-color;
padding: .2em .25em .15em;
border-color: ~'var(--@{fa-css-prefix}-border-color, @{fa-border-color})';
border-radius: ~'var(--@{fa-css-prefix}-border-radius, @{fa-border-radius})';
border-style: ~'var(--@{fa-css-prefix}-border-style, @{fa-border-style})';
border-width: ~'var(--@{fa-css-prefix}-border-width, @{fa-border-width})';
padding: ~'var(--@{fa-css-prefix}-border-padding, @{fa-border-padding})';
}
.@{fa-css-prefix}-pull-left { float: left; }
.@{fa-css-prefix}-pull-right { float: right; }
.@{fa-css-prefix}, .fas, .far, .fal, .fab {
&.@{fa-css-prefix}-pull-left { margin-right: .3em; }
&.@{fa-css-prefix}-pull-right { margin-left: .3em; }
.@{fa-css-prefix}-pull-left {
float: left;
margin-right: ~'var(--@{fa-css-prefix}-pull-margin, @{fa-pull-margin})';
}
.@{fa-css-prefix}-pull-right {
float: right;
margin-left: ~'var(--@{fa-css-prefix}-pull-margin, @{fa-pull-margin})';
}

View File

@ -1,12 +1,48 @@
// Base Class Definition
// base icon class definition
// -------------------------
.@{fa-css-prefix}, .fas, .far, .fal, .fad, .fab {
.@{fa-css-prefix} {
font-family: ~"var(--@{fa-css-prefix}-style-family, '@{fa-style-family}')";
font-weight: ~'var(--@{fa-css-prefix}-style, @{fa-style})';
}
.fas,
.far,
.fab,
.@{fa-css-prefix}-solid,
.@{fa-css-prefix}-regular,
.@{fa-css-prefix}-brands,
.@{fa-css-prefix}-sharp-solid,
.@{fa-css-prefix}-classic,
.@{fa-css-prefix} {
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
display: inline-block;
display: ~'var(--@{fa-css-prefix}-display, @{fa-display})';
font-style: normal;
font-variant: normal;
text-rendering: auto;
line-height: 1;
text-rendering: auto;
}
.fas::before,
.far::before,
.fab::before,
.@{fa-css-prefix}-solid::before,
.@{fa-css-prefix}-regular::before,
.@{fa-css-prefix}-brands::before,
.@{fa-css-prefix}::before {
content: ~'var(@{fa-icon-property})';
}
.@{fa-css-prefix}-classic,
.fas,
.@{fa-css-prefix}-solid,
.far,
.@{fa-css-prefix}-regular {
font-family: 'Font Awesome 6 Free';
}
.@{fa-css-prefix}-brands,
.fab {
font-family: 'Font Awesome 6 Brands';
}

View File

@ -1,6 +1,7 @@
// Fixed Width Icons
// fixed-width icons
// -------------------------
.@{fa-css-prefix}-fw {
text-align: center;
width: (20em / 16);
width: @fa-fw-width;
}

File diff suppressed because it is too large Load Diff

View File

@ -1,27 +0,0 @@
// Icon Sizes
// -------------------------
.larger(@factor) when (@factor > 0) {
.larger((@factor - 1));
.@{fa-css-prefix}-@{factor}x {
font-size: (@factor * 1em);
}
}
/* makes the font 33% larger relative to the icon container */
.@{fa-css-prefix}-lg {
font-size: (4em / 3);
line-height: (3em / 4);
vertical-align: -.0667em;
}
.@{fa-css-prefix}-xs {
font-size: .75em;
}
.@{fa-css-prefix}-sm {
font-size: .875em;
}
.larger(10);

View File

@ -1,18 +1,18 @@
// List Icons
// icons in a list
// -------------------------
.@{fa-css-prefix}-ul {
list-style-type: none;
margin-left: (@fa-li-width * 5/4);
margin-left: ~'var(--@{fa-css-prefix}-li-margin, @{fa-li-margin})';
padding-left: 0;
> li { position: relative; }
}
.@{fa-css-prefix}-li {
left: -@fa-li-width;
left: calc(~'var(--@{fa-css-prefix}-li-width, @{fa-li-width})' * -1);
position: absolute;
text-align: center;
width: @fa-li-width;
width: ~'var(--@{fa-css-prefix}-li-width, @{fa-li-width})';
line-height: inherit;
}

View File

@ -1,6 +1,7 @@
// Mixins
// mixins
// --------------------------
// base rendering for an icon
.fa-icon() {
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
@ -11,46 +12,57 @@
line-height: 1;
}
.fa-icon-rotate(@degrees, @rotation) {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=@{rotation})";
transform: rotate(@degrees);
// sets relative font-sizing and alignment (in _sizing)
.fa-size(@font-size) {
font-size: (@font-size / @fa-size-scale-base) * 1em; // converts step in sizing scale into an em-based value that's relative to the scale's base
line-height: (1 / @font-size) * 1em; // sets the line-height of the icon back to that of it's parent
vertical-align: ((6 / @font-size) - (3 / 8)) * 1em; // vertically centers the icon taking into account the surrounding text's descender
}
.fa-icon-flip(@horiz, @vert, @rotation) {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=@{rotation}, mirror=1)";
transform: scale(@horiz, @vert);
}
// Only display content to screen readers. A la Bootstrap 4.
//
// See: http://a11yproject.com/posts/how-to-hide-content/
.sr-only() {
border: 0;
clip: rect(0,0,0,0);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
// only display content to screen readers
// see: https://www.a11yproject.com/posts/2013-01-11-how-to-hide-content/
// see: https://hugogiraudel.com/2016/10/13/css-hide-and-seek/
.fa-sr-only() {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
// Use in conjunction with .sr-only to only display content when it's focused.
//
// Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1
//
// Credit: HTML5 Boilerplate
.sr-only-focusable() {
&:active,
&:focus {
clip: auto;
height: auto;
margin: 0;
overflow: visible;
position: static;
width: auto;
// use in conjunction with .sr-only to only display content when it's focused
.fa-sr-only-focusable() {
&:not(:focus) {
.fa-sr-only();
}
}
// sets a specific icon family to use alongside style + icon mixins
.fa-family-classic() {
&:extend(.fa-classic all);
}
// convenience mixins for declaring pseudo-elements by CSS variable,
// including all style-specific font properties
.fa-icon-solid(@fa-var) {
&:extend(.fa-solid all);
& { @{fa-icon-property}: @fa-var; @{fa-duotone-icon-property}: %("%s%s", @fa-var, @fa-var); }
}
.fa-icon-regular(@fa-var) {
&:extend(.fa-regular all);
& { @{fa-icon-property}: @fa-var; @{fa-duotone-icon-property}: %("%s%s", @fa-var, @fa-var); }
}
.fa-icon-brands(@fa-var) {
&:extend(.fa-brands all);
& { @{fa-icon-property}: @fa-var; @{fa-duotone-icon-property}: %("%s%s", @fa-var, @fa-var); }
}

View File

@ -1,24 +1,31 @@
// Rotated & Flipped Icons
// rotating + flipping icons
// -------------------------
.@{fa-css-prefix}-rotate-90 { .fa-icon-rotate(90deg, 1); }
.@{fa-css-prefix}-rotate-180 { .fa-icon-rotate(180deg, 2); }
.@{fa-css-prefix}-rotate-270 { .fa-icon-rotate(270deg, 3); }
.@{fa-css-prefix}-flip-horizontal { .fa-icon-flip(-1, 1, 0); }
.@{fa-css-prefix}-flip-vertical { .fa-icon-flip(1, -1, 2); }
.@{fa-css-prefix}-flip-both, .@{fa-css-prefix}-flip-horizontal.@{fa-css-prefix}-flip-vertical { .fa-icon-flip(-1, -1, 2); }
// Hook for IE8-9
// -------------------------
:root {
.@{fa-css-prefix}-rotate-90,
.@{fa-css-prefix}-rotate-180,
.@{fa-css-prefix}-rotate-270,
.@{fa-css-prefix}-flip-horizontal,
.@{fa-css-prefix}-flip-vertical,
.@{fa-css-prefix}-flip-both {
filter: none;
}
.@{fa-css-prefix}-rotate-90 {
transform: rotate(90deg);
}
.@{fa-css-prefix}-rotate-180 {
transform: rotate(180deg);
}
.@{fa-css-prefix}-rotate-270 {
transform: rotate(270deg);
}
.@{fa-css-prefix}-flip-horizontal {
transform: scale(-1, 1);
}
.@{fa-css-prefix}-flip-vertical {
transform: scale(1, -1);
}
.@{fa-css-prefix}-flip-both,
.@{fa-css-prefix}-flip-horizontal.@{fa-css-prefix}-flip-vertical {
transform: scale(-1, -1);
}
.@{fa-css-prefix}-rotate-by {
transform: rotate(~'var(--@{fa-css-prefix}-rotate-angle, 0)');
}

View File

@ -1,5 +1,14 @@
// Screen Readers
// screen-reader utilities
// -------------------------
.sr-only { .sr-only(); }
.sr-only-focusable { .sr-only-focusable(); }
// only display content to screen readers
.sr-only,
.@{fa-css-prefix}-sr-only {
.fa-sr-only();
}
// use in conjunction with .sr-only to only display content when it's focused
.sr-only-focusable,
.@{fa-css-prefix}-sr-only-focusable {
.fa-sr-only-focusable();
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,19 @@
// sizing icons
// -------------------------
// literal magnification scale
.sizes-literal(@factor) when (@factor > 0) {
.sizes-literal((@factor - 1));
.@{fa-css-prefix}-@{factor}x {
font-size: (@factor * 1em);
}
}
.sizes-literal(10);
// step-based scale (with alignment)
each(.fa-sizes(), {
.@{fa-css-prefix}-@{key} {
.fa-size(@value);
}
});

View File

@ -1,4 +1,4 @@
// Stacked Icons
// stacking icons
// -------------------------
.@{fa-css-prefix}-stack {
@ -6,8 +6,8 @@
height: 2em;
line-height: 2em;
position: relative;
vertical-align: middle;
width: 2em;
vertical-align: @fa-stack-vertical-align;
width: @fa-stack-width;
}
.@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x {
@ -15,8 +15,17 @@
position: absolute;
text-align: center;
width: 100%;
z-index: ~'var(--@{fa-css-prefix}-stack-z-index, @{fa-stack-z-index})';
}
.@{fa-css-prefix}-stack-1x { line-height: inherit; }
.@{fa-css-prefix}-stack-2x { font-size: 2em; }
.@{fa-css-prefix}-inverse { color: @fa-inverse; }
.@{fa-css-prefix}-stack-1x {
line-height: inherit;
}
.@{fa-css-prefix}-stack-2x {
font-size: 2em;
}
.@{fa-css-prefix}-inverse {
color: ~'var(--@{fa-css-prefix}-inverse, @{fa-inverse})';
}

File diff suppressed because it is too large Load Diff

View File

@ -1,23 +1,29 @@
/*!
* Font Awesome Free 5.15.1 by @fontawesome - https://fontawesome.com
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
@import "_variables.less";
:root, :host {
--@{fa-css-prefix}-style-family-brands: 'Font Awesome 6 Brands';
--@{fa-css-prefix}-font-brands: normal 400 1em/1 'Font Awesome 6 Brands';
}
@font-face {
font-family: 'Font Awesome 5 Brands';
font-family: 'Font Awesome 6 Brands';
font-style: normal;
font-weight: 400;
font-display: @fa-font-display;
src: url('@{fa-font-path}/fa-brands-400.eot');
src: url('@{fa-font-path}/fa-brands-400.eot?#iefix') format('embedded-opentype'),
url('@{fa-font-path}/fa-brands-400.woff2') format('woff2'),
url('@{fa-font-path}/fa-brands-400.woff') format('woff'),
url('@{fa-font-path}/fa-brands-400.ttf') format('truetype'),
url('@{fa-font-path}/fa-brands-400.svg#fontawesome') format('svg');
src: url('@{fa-font-path}/fa-brands-400.woff2') format('woff2'),
url('@{fa-font-path}/fa-brands-400.ttf') format('truetype');
}
.fab {
font-family: 'Font Awesome 5 Brands';
.fab,
.@{fa-css-prefix}-brands {
font-weight: 400;
}
each(.fa-brand-icons(), {
.@{fa-css-prefix}-@{key} { @{fa-icon-property}: @value; }
});

View File

@ -1,11 +1,15 @@
/*!
* Font Awesome Free 5.15.1 by @fontawesome - https://fontawesome.com
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
// Font Awesome core compile (Web Fonts-based)
// -------------------------
@import "_variables.less";
@import "_mixins.less";
@import "_core.less";
@import "_larger.less";
@import "_sizing.less";
@import "_fixed-width.less";
@import "_list.less";
@import "_bordered-pulled.less";

View File

@ -1,23 +1,25 @@
/*!
* Font Awesome Free 5.15.1 by @fontawesome - https://fontawesome.com
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
@import "_variables.less";
:root, :host {
--@{fa-css-prefix}-style-family-classic: '@{fa-style-family}';
--@{fa-css-prefix}-font-regular: normal 400 1em/1 '@{fa-style-family}';
}
@font-face {
font-family: 'Font Awesome 5 Free';
font-family: 'Font Awesome 6 Free';
font-style: normal;
font-weight: 400;
font-display: @fa-font-display;
src: url('@{fa-font-path}/fa-regular-400.eot');
src: url('@{fa-font-path}/fa-regular-400.eot?#iefix') format('embedded-opentype'),
url('@{fa-font-path}/fa-regular-400.woff2') format('woff2'),
url('@{fa-font-path}/fa-regular-400.woff') format('woff'),
url('@{fa-font-path}/fa-regular-400.ttf') format('truetype'),
url('@{fa-font-path}/fa-regular-400.svg#fontawesome') format('svg');
src: url('@{fa-font-path}/fa-regular-400.woff2') format('woff2'),
url('@{fa-font-path}/fa-regular-400.ttf') format('truetype');
}
.far {
font-family: 'Font Awesome 5 Free';
.far,
.@{fa-css-prefix}-regular {
font-weight: 400;
}

View File

@ -1,24 +1,25 @@
/*!
* Font Awesome Free 5.15.1 by @fontawesome - https://fontawesome.com
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
@import "_variables.less";
:root, :host {
--@{fa-css-prefix}-style-family-classic: '@{fa-style-family}';
--@{fa-css-prefix}-font-solid: normal 900 1em/1 '@{fa-style-family}';
}
@font-face {
font-family: 'Font Awesome 5 Free';
font-family: 'Font Awesome 6 Free';
font-style: normal;
font-weight: 900;
font-display: @fa-font-display;
src: url('@{fa-font-path}/fa-solid-900.eot');
src: url('@{fa-font-path}/fa-solid-900.eot?#iefix') format('embedded-opentype'),
url('@{fa-font-path}/fa-solid-900.woff2') format('woff2'),
url('@{fa-font-path}/fa-solid-900.woff') format('woff'),
url('@{fa-font-path}/fa-solid-900.ttf') format('truetype'),
url('@{fa-font-path}/fa-solid-900.svg#fontawesome') format('svg');
src: url('@{fa-font-path}/fa-solid-900.woff2') format('woff2'),
url('@{fa-font-path}/fa-solid-900.ttf') format('truetype');
}
.fa,
.fas {
font-family: 'Font Awesome 5 Free';
.fas,
.@{fa-css-prefix}-solid {
font-weight: 900;
}

View File

@ -1,6 +1,10 @@
/*!
* Font Awesome Free 5.15.1 by @fontawesome - https://fontawesome.com
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
// V4 shims compile (Web Fonts-based)
// -------------------------
@import '_variables.less';
@import '_shims.less';

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,298 +1,646 @@
area-chart:
name: chart-area
arrow-circle-o-down:
name: arrow-alt-circle-down
prefix: far
name: circle-down
arrow-circle-o-left:
name: arrow-alt-circle-left
prefix: far
name: circle-left
arrow-circle-o-right:
name: arrow-alt-circle-right
prefix: far
name: circle-right
arrow-circle-o-up:
name: arrow-alt-circle-up
prefix: far
name: circle-up
arrows:
name: arrows-alt
name: up-down-left-right
arrows-alt:
name: expand-arrows-alt
name: maximize
arrows-h:
name: arrows-alt-h
name: left-right
arrows-v:
name: arrows-alt-v
name: up-down
asl-interpreting:
name: hands-asl-interpreting
automobile:
name: car
bank:
name: building-columns
bar-chart:
name: chart-bar
prefix: far
bitbucket-square:
name: bitbucket
name: chart-column
bar-chart-o:
name: chart-column
bathtub:
name: bath
battery:
name: battery-full
battery-0:
name: battery-empty
battery-1:
name: battery-quarter
battery-2:
name: battery-half
battery-3:
name: battery-three-quarters
battery-4:
name: battery-full
behance-square:
prefix: fab
name: square-behance
bitbucket-square:
prefix: fab
name: bitbucket
bitcoin:
prefix: fab
name: btc
cab:
name: taxi
calendar:
name: calendar-alt
calendar-o:
name: calendar
name: calendar-days
calendar-times-o:
prefix: far
name: calendar-xmark
caret-square-o-down:
name: caret-square-down
prefix: far
name: square-caret-down
caret-square-o-left:
name: caret-square-left
prefix: far
name: square-caret-left
caret-square-o-right:
name: caret-square-right
prefix: far
name: square-caret-right
caret-square-o-up:
name: caret-square-up
prefix: far
name: square-caret-up
cc:
name: closed-captioning
prefix: far
name: closed-captioning
chain:
name: link
chain-broken:
name: unlink
name: link-slash
check-circle-o:
prefix: far
name: circle-check
check-square-o:
prefix: far
name: square-check
circle-o-notch:
name: circle-notch
circle-thin:
prefix: far
name: circle
prefix: far
clipboard:
prefix: far
name: paste
clone:
prefix: far
close:
name: xmark
cloud-download:
name: cloud-download-alt
name: cloud-arrow-down
cloud-upload:
name: cloud-upload-alt
name: cloud-arrow-up
cny:
name: yen-sign
code-fork:
name: code-branch
comment-alt:
name: comment-dots
prefix: far
commenting:
name: comment-dots
commenting-o:
prefix: far
name: comment-dots
compass:
prefix: far
compress:
name: compress-alt
name: down-left-and-up-right-to-center
copyright:
prefix: far
creative-commons:
prefix: fab
credit-card:
prefix: far
credit-card-alt:
name: credit-card
cut:
name: scissors
cutlery:
name: utensils
dashboard:
name: gauge-high
deafness:
name: ear-deaf
dedent:
name: outdent
diamond:
name: gem
prefix: far
name: gem
dollar:
name: dollar-sign
dot-circle-o:
prefix: far
name: circle-dot
drivers-license:
name: id-card
drivers-license-o:
prefix: far
name: id-card
edit:
prefix: far
name: pen-to-square
eercast:
name: sellcast
prefix: fab
name: sellcast
eur:
name: euro-sign
euro:
name: euro-sign
exchange:
name: exchange-alt
name: right-left
expand:
name: expand-alt
name: up-right-and-down-left-from-center
external-link:
name: external-link-alt
name: up-right-from-square
external-link-square:
name: external-link-square-alt
name: square-up-right
eye:
prefix: far
eye-dropper:
name: eye-dropper
prefix: far
eye-slash:
prefix: far
eyedropper:
name: eye-dropper
fa:
prefix: fab
name: font-awesome
facebook:
prefix: fab
name: facebook-f
facebook-f:
prefix: fab
name: facebook-f
facebook-official:
prefix: fab
name: facebook
facebook-square:
prefix: fab
name: square-facebook
feed:
name: rss
file-archive-o:
prefix: far
name: file-zipper
file-movie-o:
prefix: far
name: file-video
file-photo-o:
prefix: far
name: file-image
file-picture-o:
prefix: far
name: file-image
file-sound-o:
prefix: far
name: file-audio
file-text:
name: file-alt
name: file-lines
file-text-o:
prefix: far
name: file-lines
file-zip-o:
prefix: far
name: file-zipper
files-o:
prefix: far
name: copy
prefix: far
flash:
name: bolt
floppy-o:
name: save
prefix: far
name: floppy-disk
frown-o:
prefix: far
name: face-frown
gbp:
name: pound-sign
name: sterling-sign
ge:
prefix: fab
name: empire
gear:
name: gear
gears:
name: gears
git-square:
prefix: fab
name: square-git
github-square:
prefix: fab
name: square-github
gittip:
prefix: fab
name: gratipay
glass:
name: glass-martini
name: martini-glass-empty
globe:
name: earth-americas
google-plus:
prefix: fab
name: google-plus-g
prefix: fab
google-plus-circle:
name: google-plus
prefix: fab
name: google-plus
google-plus-official:
name: google-plus
prefix: fab
name: google-plus
google-plus-square:
prefix: fab
name: square-google-plus
group:
name: users
hand-grab-o:
prefix: far
name: hand-back-fist
hand-o-down:
prefix: far
name: hand-point-down
prefix: far
hand-o-left:
prefix: far
name: hand-point-left
prefix: far
hand-o-right:
prefix: far
name: hand-point-right
prefix: far
hand-o-up:
name: hand-point-up
prefix: far
name: hand-point-up
hand-paper-o:
prefix: far
name: hand
hand-rock-o:
prefix: far
name: hand-back-fist
hand-stop-o:
prefix: far
name: hand
hard-of-hearing:
name: ear-deaf
hdd-o:
prefix: far
name: hard-drive
header:
name: heading
home:
name: house
hotel:
name: bed
hourglass-1:
name: hourglass-start
hourglass-2:
name: hourglass-half
hourglass-3:
name: hourglass-end
hourglass-o:
name: hourglass
id-badge:
prefix: far
ils:
name: shekel-sign
image:
prefix: far
name: image
inr:
name: rupee-sign
name: indian-rupee-sign
institution:
name: building-columns
intersex:
name: transgender
name: mars-and-venus
jpy:
name: yen-sign
krw:
name: won-sign
lastfm-square:
prefix: fab
name: square-lastfm
legal:
name: gavel
level-down:
name: level-down-alt
name: turn-down
level-up:
name: level-up-alt
life-ring:
prefix: far
name: turn-up
life-bouy:
name: life-ring
life-buoy:
name: life-ring
life-saver:
name: life-ring
line-chart:
name: chart-line
linkedin:
prefix: fab
name: linkedin-in
prefix: fab
linkedin-square:
name: linkedin
prefix: fab
name: linkedin
list-alt:
prefix: far
name: rectangle-list
long-arrow-down:
name: long-arrow-alt-down
name: down-long
long-arrow-left:
name: long-arrow-alt-left
name: left-long
long-arrow-right:
name: long-arrow-alt-right
name: right-long
long-arrow-up:
name: long-arrow-alt-up
name: up-long
magic:
name: wand-magic-sparkles
mail-forward:
name: share
mail-reply:
name: reply
mail-reply-all:
name: reply-all
map-marker:
name: map-marker-alt
meanpath:
name: font-awesome
prefix: fab
mobile:
name: mobile-alt
money:
name: money-bill-alt
name: location-dot
meh-o:
prefix: far
name: face-meh
minus-square-o:
prefix: far
name: square-minus
mobile:
name: mobile-screen-button
mobile-phone:
name: mobile-screen-button
money:
name: money-bill-1
mortar-board:
name: graduation-cap
navicon:
name: bars
object-group:
prefix: far
object-ungroup:
prefix: far
paste:
odnoklassniki-square:
prefix: fab
name: square-odnoklassniki
pause-circle-o:
prefix: far
pencil:
name: pencil-alt
name: circle-pause
pencil-square:
name: pen-square
name: square-pen
pencil-square-o:
name: edit
prefix: far
picture:
name: pen-to-square
photo:
prefix: far
name: image
picture-o:
prefix: far
name: image
pie-chart:
name: chart-pie
pinterest-square:
prefix: fab
name: square-pinterest
play-circle-o:
prefix: far
name: circle-play
plus-square-o:
prefix: far
name: square-plus
question-circle-o:
prefix: far
name: circle-question
ra:
prefix: fab
name: rebel
reddit-square:
prefix: fab
name: square-reddit
refresh:
name: sync
name: arrows-rotate
registered:
prefix: far
remove:
name: xmark
reorder:
name: bars
repeat:
name: redo
name: arrow-rotate-right
resistance:
prefix: fab
name: rebel
rmb:
name: yen-sign
rotate-left:
name: arrow-rotate-left
rotate-right:
name: arrow-rotate-right
rouble:
name: ruble-sign
rub:
name: ruble-sign
scissors:
name: cut
shield:
name: shield-alt
ruble:
name: ruble-sign
rupee:
name: indian-rupee-sign
s15:
name: bath
save:
prefix: far
name: floppy-disk
send:
name: paper-plane
send-o:
prefix: far
name: paper-plane
share-square-o:
name: share-from-square
shekel:
name: shekel-sign
sheqel:
name: shekel-sign
sign-in:
name: sign-in-alt
name: right-to-bracket
sign-out:
name: sign-out-alt
sliders:
name: sliders-h
name: right-from-bracket
signing:
name: hands
smile-o:
prefix: far
name: face-smile
snapchat-ghost:
prefix: fab
name: snapchat
snapchat-square:
prefix: fab
name: square-snapchat
soccer-ball-o:
prefix: far
name: futbol
sort-alpha-asc:
name: sort-alpha-down
name: arrow-down-a-z
sort-alpha-desc:
name: sort-alpha-down-alt
name: arrow-down-z-a
sort-amount-asc:
name: sort-amount-down
name: arrow-down-short-wide
sort-amount-desc:
name: sort-amount-down-alt
name: arrow-down-wide-short
sort-asc:
name: sort-up
sort-desc:
name: sort-down
sort-numeric-asc:
name: sort-numeric-down
name: arrow-down-1-9
sort-numeric-desc:
name: sort-numeric-down-alt
spoon:
name: utensil-spoon
name: arrow-down-9-1
star-half-empty:
name: star-half
prefix: far
name: star-half-stroke
star-half-full:
name: star-half
prefix: far
name: star-half-stroke
star-half-o:
prefix: far
name: star-half-stroke
steam-square:
prefix: fab
name: square-steam
sticky-note-o:
prefix: far
name: note-sticky
stop-circle-o:
prefix: far
name: circle-stop
support:
name: life-ring
prefix: far
tablet:
name: tablet-alt
name: tablet-screen-button
tachometer:
name: tachometer-alt
name: gauge-high
tasks:
name: bars-progress
television:
name: tv
thermometer:
name: temperature-full
thermometer-0:
name: temperature-empty
thermometer-1:
name: temperature-quarter
thermometer-2:
name: temperature-half
thermometer-3:
name: temperature-three-quarters
thermometer-4:
name: temperature-full
thumb-tack:
name: thumbtack
thumbs-o-down:
prefix: far
name: thumbs-down
prefix: far
thumbs-o-up:
prefix: far
name: thumbs-up
times-circle-o:
prefix: far
ticket:
name: ticket-alt
name: circle-xmark
times-rectangle:
name: rectangle-xmark
times-rectangle-o:
prefix: far
name: rectangle-xmark
toggle-down:
prefix: far
name: square-caret-down
toggle-left:
prefix: far
name: square-caret-left
toggle-right:
prefix: far
name: square-caret-right
toggle-up:
prefix: far
name: square-caret-up
transgender:
name: mars-and-venus
transgender-alt:
name: transgender
trash:
name: trash-alt
name: trash-can
trash-o:
name: trash-alt
prefix: far
name: trash-can
try:
name: lira-sign
name: turkish-lira-sign
tumblr-square:
prefix: fab
name: square-tumblr
turkish-lira:
name: turkish-lira-sign
twitter-square:
prefix: fab
name: square-twitter
unlink:
name: link-slash
unlock-alt:
name: unlock
unsorted:
name: sort
usd:
name: dollar-sign
user-circle-o:
prefix: far
name: circle-user
vcard:
name: address-card
vcard-o:
prefix: far
name: address-card
viadeo-square:
prefix: fab
name: square-viadeo
video-camera:
name: video
vimeo:
name: vimeo-v
prefix: fab
name: vimeo-v
vimeo-square:
prefix: fab
name: square-vimeo
volume-control-phone:
name: phone-volume
wheelchair-alt:
name: accessible-icon
warning:
name: triangle-exclamation
wechat:
prefix: fab
name: weixin
wheelchair-alt:
prefix: fab
name: accessible-icon
window-close-o:
prefix: far
name: rectangle-xmark
window-maximize:
prefix: far
window-restore:
prefix: far
youtube-play:
name: youtube
won:
name: won-sign
xing-square:
prefix: fab
name: square-xing
y-combinator-square:
prefix: fab
name: hacker-news
yc:
prefix: fab
name: y-combinator
yc-square:
prefix: fab
name: hacker-news
yen:
name: yen-sign
youtube-play:
prefix: fab
name: youtube
youtube-square:
prefix: fab
name: square-youtube

View File

@ -10,35 +10,9 @@
],
"homepage": "https://fontawesome.com",
"bugs": {
"url": "http://github.com/FortAwesome/Font-Awesome/issues"
"url": "https://github.com/FortAwesome/Font-Awesome/issues"
},
"author": {
"name": "Dave Gandy",
"email": "dave@fontawesome.com",
"web": "http://twitter.com/davegandy"
},
"contributors": [
{
"name": "Brian Talbot",
"web": "http://twitter.com/talbs"
},
{
"name": "Travis Chase",
"web": "http://twitter.com/supercodepoet"
},
{
"name": "Rob Madole",
"web": "http://twitter.com/robmadole"
},
{
"name": "Geremia Taglialatela",
"web": "http://twitter.com/gtagliala"
},
{
"name": "Mike Wilkerson",
"web": "http://twitter.com/mw77"
}
],
"author": "The Font Awesome Team (https://github.com/orgs/FortAwesome/people)",
"repository": {
"type": "git",
"url": "https://github.com/FortAwesome/Font-Awesome"
@ -47,12 +21,9 @@
"node": ">=6"
},
"dependencies": {},
"version": "5.15.1",
"version": "6.7.2",
"name": "@fortawesome/fontawesome-free",
"main": "js/fontawesome.js",
"style": "css/fontawesome.css",
"license": "(CC-BY-4.0 AND OFL-1.1 AND MIT)",
"scripts": {
"postinstall": "node attribution.js"
}
"license": "(CC-BY-4.0 AND OFL-1.1 AND MIT)"
}

View File

@ -1,20 +1,152 @@
// Animated Icons
// animating icons
// --------------------------
.#{$fa-css-prefix}-beat {
animation-name: #{$fa-css-prefix}-beat;
animation-delay: var(--#{$fa-css-prefix}-animation-delay, 0s);
animation-direction: var(--#{$fa-css-prefix}-animation-direction, normal);
animation-duration: var(--#{$fa-css-prefix}-animation-duration, 1s);
animation-iteration-count: var(--#{$fa-css-prefix}-animation-iteration-count, infinite);
animation-timing-function: var(--#{$fa-css-prefix}-animation-timing, ease-in-out);
}
.#{$fa-css-prefix}-bounce {
animation-name: #{$fa-css-prefix}-bounce;
animation-delay: var(--#{$fa-css-prefix}-animation-delay, 0s);
animation-direction: var(--#{$fa-css-prefix}-animation-direction, normal);
animation-duration: var(--#{$fa-css-prefix}-animation-duration, 1s);
animation-iteration-count: var(--#{$fa-css-prefix}-animation-iteration-count, infinite);
animation-timing-function: var(--#{$fa-css-prefix}-animation-timing, cubic-bezier(0.280, 0.840, 0.420, 1));
}
.#{$fa-css-prefix}-fade {
animation-name: #{$fa-css-prefix}-fade;
animation-delay: var(--#{$fa-css-prefix}-animation-delay, 0s);
animation-direction: var(--#{$fa-css-prefix}-animation-direction, normal);
animation-duration: var(--#{$fa-css-prefix}-animation-duration, 1s);
animation-iteration-count: var(--#{$fa-css-prefix}-animation-iteration-count, infinite);
animation-timing-function: var(--#{$fa-css-prefix}-animation-timing, cubic-bezier(.4,0,.6,1));
}
.#{$fa-css-prefix}-beat-fade {
animation-name: #{$fa-css-prefix}-beat-fade;
animation-delay: var(--#{$fa-css-prefix}-animation-delay, 0s);
animation-direction: var(--#{$fa-css-prefix}-animation-direction, normal);
animation-duration: var(--#{$fa-css-prefix}-animation-duration, 1s);
animation-iteration-count: var(--#{$fa-css-prefix}-animation-iteration-count, infinite);
animation-timing-function: var(--#{$fa-css-prefix}-animation-timing, cubic-bezier(.4,0,.6,1));
}
.#{$fa-css-prefix}-flip {
animation-name: #{$fa-css-prefix}-flip;
animation-delay: var(--#{$fa-css-prefix}-animation-delay, 0s);
animation-direction: var(--#{$fa-css-prefix}-animation-direction, normal);
animation-duration: var(--#{$fa-css-prefix}-animation-duration, 1s);
animation-iteration-count: var(--#{$fa-css-prefix}-animation-iteration-count, infinite);
animation-timing-function: var(--#{$fa-css-prefix}-animation-timing, ease-in-out);
}
.#{$fa-css-prefix}-shake {
animation-name: #{$fa-css-prefix}-shake;
animation-delay: var(--#{$fa-css-prefix}-animation-delay, 0s);
animation-direction: var(--#{$fa-css-prefix}-animation-direction, normal);
animation-duration: var(--#{$fa-css-prefix}-animation-duration, 1s);
animation-iteration-count: var(--#{$fa-css-prefix}-animation-iteration-count, infinite);
animation-timing-function: var(--#{$fa-css-prefix}-animation-timing, linear);
}
.#{$fa-css-prefix}-spin {
animation: fa-spin 2s infinite linear;
animation-name: #{$fa-css-prefix}-spin;
animation-delay: var(--#{$fa-css-prefix}-animation-delay, 0s);
animation-direction: var(--#{$fa-css-prefix}-animation-direction, normal);
animation-duration: var(--#{$fa-css-prefix}-animation-duration, 2s);
animation-iteration-count: var(--#{$fa-css-prefix}-animation-iteration-count, infinite);
animation-timing-function: var(--#{$fa-css-prefix}-animation-timing, linear);
}
.#{$fa-css-prefix}-pulse {
animation: fa-spin 1s infinite steps(8);
.#{$fa-css-prefix}-spin-reverse {
--#{$fa-css-prefix}-animation-direction: reverse;
}
@keyframes fa-spin {
0% {
transform: rotate(0deg);
}
.#{$fa-css-prefix}-pulse,
.#{$fa-css-prefix}-spin-pulse {
animation-name: #{$fa-css-prefix}-spin;
animation-direction: var(--#{$fa-css-prefix}-animation-direction, normal);
animation-duration: var(--#{$fa-css-prefix}-animation-duration, 1s);
animation-iteration-count: var(--#{$fa-css-prefix}-animation-iteration-count, infinite);
animation-timing-function: var(--#{$fa-css-prefix}-animation-timing, steps(8));
}
100% {
transform: rotate(360deg);
// if agent or operating system prefers reduced motion, disable animations
// see: https://www.smashingmagazine.com/2020/09/design-reduced-motion-sensitivities/
// see: https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-reduced-motion
@media (prefers-reduced-motion: reduce) {
.#{$fa-css-prefix}-beat,
.#{$fa-css-prefix}-bounce,
.#{$fa-css-prefix}-fade,
.#{$fa-css-prefix}-beat-fade,
.#{$fa-css-prefix}-flip,
.#{$fa-css-prefix}-pulse,
.#{$fa-css-prefix}-shake,
.#{$fa-css-prefix}-spin,
.#{$fa-css-prefix}-spin-pulse {
animation-delay: -1ms;
animation-duration: 1ms;
animation-iteration-count: 1;
transition-delay: 0s;
transition-duration: 0s;
}
}
@keyframes #{$fa-css-prefix}-beat {
0%, 90% { transform: scale(1); }
45% { transform: scale(var(--#{$fa-css-prefix}-beat-scale, 1.25)); }
}
@keyframes #{$fa-css-prefix}-bounce {
0% { transform: scale(1,1) translateY(0); }
10% { transform: scale(var(--#{$fa-css-prefix}-bounce-start-scale-x, 1.1),var(--#{$fa-css-prefix}-bounce-start-scale-y, 0.9)) translateY(0); }
30% { transform: scale(var(--#{$fa-css-prefix}-bounce-jump-scale-x, 0.9),var(--#{$fa-css-prefix}-bounce-jump-scale-y, 1.1)) translateY(var(--#{$fa-css-prefix}-bounce-height, -0.5em)); }
50% { transform: scale(var(--#{$fa-css-prefix}-bounce-land-scale-x, 1.05),var(--#{$fa-css-prefix}-bounce-land-scale-y, 0.95)) translateY(0); }
57% { transform: scale(1,1) translateY(var(--#{$fa-css-prefix}-bounce-rebound, -0.125em)); }
64% { transform: scale(1,1) translateY(0); }
100% { transform: scale(1,1) translateY(0); }
}
@keyframes #{$fa-css-prefix}-fade {
50% { opacity: var(--#{$fa-css-prefix}-fade-opacity, 0.4); }
}
@keyframes #{$fa-css-prefix}-beat-fade {
0%, 100% {
opacity: var(--#{$fa-css-prefix}-beat-fade-opacity, 0.4);
transform: scale(1);
}
50% {
opacity: 1;
transform: scale(var(--#{$fa-css-prefix}-beat-fade-scale, 1.125));
}
}
@keyframes #{$fa-css-prefix}-flip {
50% {
transform: rotate3d(var(--#{$fa-css-prefix}-flip-x, 0), var(--#{$fa-css-prefix}-flip-y, 1), var(--#{$fa-css-prefix}-flip-z, 0), var(--#{$fa-css-prefix}-flip-angle, -180deg));
}
}
@keyframes #{$fa-css-prefix}-shake {
0% { transform: rotate(-15deg); }
4% { transform: rotate(15deg); }
8%, 24% { transform: rotate(-18deg); }
12%, 28% { transform: rotate(18deg); }
16% { transform: rotate(-22deg); }
20% { transform: rotate(22deg); }
32% { transform: rotate(-12deg); }
36% { transform: rotate(12deg); }
40%, 100% { transform: rotate(0deg); }
}
@keyframes #{$fa-css-prefix}-spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}

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