mirror of https://github.com/kubeflow/website.git
use submodule for docsy & improve website styling (#3078)
* remove docsy code * add docsy submodule link * remove unneeded files from repo * update hugo & improve website styling * remove invalid netlify "image" config * remove need for `_nav.scss` override * remove search from navbar * remove `sidebar-tree.html` override * add guide for updating docsy * update repo readme
This commit is contained in:
parent
0c9e5e1401
commit
dc68b1d687
305
README.md
305
README.md
|
@ -1,151 +1,112 @@
|
|||
# Creating and updating the Kubeflow docs
|
||||
# Kubeflow Website
|
||||
|
||||
Welcome to the GitHub repository for Kubeflow's public website. The docs are
|
||||
hosted at https://www.kubeflow.org.
|
||||
Welcome to the GitHub repository for Kubeflow's public website!
|
||||
|
||||
We use [Hugo](https://gohugo.io/) to format and generate our website, the
|
||||
[Docsy](https://github.com/google/docsy) theme for styling and site structure,
|
||||
and [Netlify](https://www.netlify.com/) to manage the deployment of the site.
|
||||
Hugo is an open-source static site generator that provides us with templates,
|
||||
content organization in a standard directory structure, and a website generation
|
||||
engine. You write the pages in Markdown, and Hugo wraps them up into a website.
|
||||
The docs website is hosted at https://www.kubeflow.org.
|
||||
|
||||
We use [Hugo](https://gohugo.io/) with the [google/docsy](https://github.com/google/docsy)
|
||||
theme for styling and site structure, and [Netlify](https://www.netlify.com/) to manage the deployment of the site.
|
||||
|
||||
## Quickstart
|
||||
|
||||
Here's a quick guide to updating the docs. It assumes you're familiar with the
|
||||
GitHub workflow and you're happy to use the automated preview of your doc
|
||||
updates:
|
||||
Here's a quick guide to updating the docs:
|
||||
|
||||
1. Fork the [kubeflow/website
|
||||
repository](https://github.com/kubeflow/website) on GitHub.
|
||||
1. Make your changes and send a pull request (PR).
|
||||
1. If you're not yet ready for a review, add "WIP" to the PR name to indicate
|
||||
it's a work in progress. Alternatively, you can also add `/hold` in a comment
|
||||
to mark the PR as not ready for merge. (**Don't** add the Hugo property
|
||||
"draft = true" to the page front matter, because that prevents the
|
||||
auto-deployment of the content preview described in the next point.) See the
|
||||
[Prow guide](https://prow.k8s.io/command-help) for help with the commands that
|
||||
you can use in a PR comment.
|
||||
1. Wait for the automated PR workflow to do some checks. When it's ready,
|
||||
you should see a comment like this: **deploy/netlify — Deploy preview ready!**
|
||||
1. Click **Details** to the right of "Deploy preview ready" to see a preview
|
||||
of your updates.
|
||||
1. Continue updating your doc and pushing your changes until you're happy with
|
||||
the content.
|
||||
1. When you're ready for a review, add a comment to the PR, remove any holds or
|
||||
"WIP" markers, and assign a reviewer/approver. See the
|
||||
[Kubeflow contributor guide](https://www.kubeflow.org/docs/about/contributing/).
|
||||
1. Fork the [kubeflow/website repository](https://github.com/kubeflow/website) on GitHub.
|
||||
|
||||
If you need more help with the GitHub workflow, follow this
|
||||
[guide to a standard GitHub
|
||||
workflow](https://github.com/kubeflow/website/blob/master/quick-github-guide.md).
|
||||
2. Make your changes and send a pull request (PR).
|
||||
|
||||
## Previewing your changes on a local website server
|
||||
3. If you're not yet ready for a review, add "WIP" to the PR name to indicate it's a work in progress.
|
||||
Alternatively, you use the `/hold` [prow command](https://prow.k8s.io/command-help) in a comment to mark the PR as not ready for merge.
|
||||
|
||||
If you'd like to preview your doc updates as you work, you can install Hugo
|
||||
and run a local server to host your website. This section shows you how.
|
||||
4. Wait for the automated PR workflow to do some checks.
|
||||
When it's ready, you should see a comment like this: `deploy/netlify — Deploy preview ready!`
|
||||
|
||||
### Install Hugo and other dependencies
|
||||
5. Click **Details** to the right of "Deploy preview ready" to see a preview of your updates.
|
||||
|
||||
You need Hugo version 0.80 or later, and it must be the **extended** version of
|
||||
Hugo. Hugo version 0.80 and later support the Goldmark renderer for Markdown.
|
||||
Goldmark offers improved rendering of some text formatting such as lists.
|
||||
6. Continue updating your doc and pushing your changes until you're happy with the content.
|
||||
|
||||
**Note:** From April 2020 onwards, Kubeflow recommends that you use
|
||||
**Hugo version 0.89.2** or later. The Kubeflow website now uses Hugo 0.89.2 via
|
||||
Netlify.
|
||||
7. When you're ready for a review, add a comment to the PR, remove any holds or "WIP" markers, and assign a reviewer/approver.
|
||||
See the [Kubeflow contributor guide](https://www.kubeflow.org/docs/about/contributing/).
|
||||
|
||||
To get the latest extended version of Hugo:
|
||||
If you need more help with the GitHub workflow, follow
|
||||
this [guide to a standard GitHub workflow](https://github.com/kubeflow/website/blob/master/quick-github-guide.md).
|
||||
|
||||
1. Go to the [Hugo releases](https://github.com/gohugoio/hugo/releases) page.
|
||||
1. In the most recent release, scroll down until you find a list of
|
||||
**extended** versions.
|
||||
1. Download the relevant file for your operating system.
|
||||
1. Unzip the downloaded file into a location of your choice.
|
||||
## Local development
|
||||
|
||||
For example, to install Hugo on Linux:
|
||||
This section will show you how to develop the website locally, by running a local Hugo server.
|
||||
|
||||
1. Download `hugo_extended_0.89.2_Linux-64bit.tar.gz`
|
||||
(or the latest version) from the
|
||||
[Hugo releases](https://github.com/gohugoio/hugo/releases/tag/v0.89.2) page.
|
||||
### Install Hugo
|
||||
|
||||
1. Create a new directory:
|
||||
To install Hugo, follow the [instructions for your system type](https://gohugo.io/getting-started/installing/).
|
||||
|
||||
mkdir $HOME/hugo
|
||||
**NOTE:** we recommend that you use Hugo version `0.89.4`, as this is currently the version we deploy to Netlify.
|
||||
|
||||
1. Extract the file you downloaded to `$HOME/hugo`.
|
||||
For example, using homebrew to install hugo on macOS or linux:
|
||||
|
||||
tar -zxvf hugo_extended_0.89.2_Linux-64bit.tar.gz
|
||||
```bash
|
||||
# WARNING: this may install a newer version than `0.89.4`
|
||||
brew install hugo
|
||||
```
|
||||
|
||||
For more details about installing Hugo, See the
|
||||
[Hugo installation guide](https://gohugo.io/getting-started/installing/).
|
||||
### Install Node Packages
|
||||
|
||||
If you plan to make changes to the site styling, you need to install some
|
||||
**CSS libraries** as well. Follow the instructions in the
|
||||
[Docsy theme's setup
|
||||
guide](https://www.docsy.dev/docs/getting-started/#install-postcss).
|
||||
If you plan to make changes to the site styling, you need to install some **node libraries** as well.
|
||||
(See the [Docsy setup guide](https://www.docsy.dev/docs/getting-started/#install-postcss) for more information)
|
||||
|
||||
### Fork and clone the website repository and run a local website server
|
||||
You can install the same versions we use in Netlify (defined in `package.json`) with the following command:
|
||||
|
||||
Follow the usual GitHub workflow to fork the repository on GitHub and clone it
|
||||
to your local machine, then use your local repository as input to your Hugo web
|
||||
server:
|
||||
```bash
|
||||
npm install -D
|
||||
```
|
||||
|
||||
1. **Fork** the [kubeflow/website
|
||||
repository](https://github.com/kubeflow/website) in the GitHub UI.
|
||||
1. Clone your fork locally. This example uses SSH cloning:
|
||||
### Run local hugo server
|
||||
|
||||
```
|
||||
mkdir kubeflow
|
||||
cd kubeflow/
|
||||
Follow the usual GitHub workflow of forking the repository on GitHub and then cloning your fork to your local machine.
|
||||
|
||||
1. **Fork** the [kubeflow/website repository](https://github.com/kubeflow/website) in the GitHub UI.
|
||||
|
||||
2. Clone your fork locally:
|
||||
|
||||
```bash
|
||||
git clone git@github.com:<your-github-username>/website.git
|
||||
cd website/
|
||||
```
|
||||
|
||||
1. Start your website server. Make sure you run this command from the
|
||||
`/website/` directory, so that Hugo can find the config files it needs:
|
||||
3. Recursively download the submodules (for docsy):
|
||||
|
||||
```bash
|
||||
git submodule update --init --recursive
|
||||
```
|
||||
|
||||
4. Start your local Hugo server:
|
||||
|
||||
```bash
|
||||
hugo server -D
|
||||
```
|
||||
|
||||
1. You can access your website at
|
||||
[http://localhost:1313/](http://localhost:1313/) (bind address 127.0.0.1)
|
||||
5. You can access your website at [http://localhost:1313/](http://localhost:1313/)
|
||||
|
||||
1. Continue with the usual GitHub workflow to edit files, commit them, push the
|
||||
changes up to your fork, and create a pull request. (There's some help with
|
||||
the GitHub workflow near the bottom of this page.)
|
||||
### Useful docs
|
||||
|
||||
1. While making the changes, you can preview them on your local version of the
|
||||
website at [http://localhost:1313/](http://localhost:1313/). Note that if you
|
||||
have more than one local Git branch, when you switch between Git branches the
|
||||
local website reflects the files in the current branch.
|
||||
|
||||
Useful docs:
|
||||
- [User guide for the Docsy theme](https://www.docsy.dev/docs/getting-started/)
|
||||
- [Hugo installation guide](https://gohugo.io/getting-started/installing/)
|
||||
- [Hugo basic usage](https://gohugo.io/getting-started/usage/)
|
||||
- [Hugo site directory structure](https://gohugo.io/getting-started/directory-structure/)
|
||||
- [hugo server reference](https://gohugo.io/commands/hugo_server/)
|
||||
* [User guide for the Docsy theme](https://www.docsy.dev/docs/getting-started/)
|
||||
* [Hugo installation guide](https://gohugo.io/getting-started/installing/)
|
||||
* [Hugo basic usage](https://gohugo.io/getting-started/usage/)
|
||||
* [Hugo site directory structure](https://gohugo.io/getting-started/directory-structure/)
|
||||
* [hugo server reference](https://gohugo.io/commands/hugo_server/)
|
||||
|
||||
## Menu structure
|
||||
|
||||
The site theme has one Hugo menu (`main`), which defines the top navigation bar.
|
||||
You can find and adjust the definition of the menu in the [site configuration
|
||||
file](https://github.com/kubeflow/website/blob/master/config.toml).
|
||||
The site theme has one Hugo menu (`main`), which defines the top navigation bar. You can find and adjust the definition
|
||||
of the menu in the [site configuration file](https://github.com/kubeflow/website/blob/master/config.toml).
|
||||
|
||||
The left-hand navigation panel is defined by the directory structure under
|
||||
the
|
||||
[`docs` directory](https://github.com/kubeflow/website/tree/master/content/en/docs).
|
||||
The left-hand navigation panel is defined by the directory structure under the [`docs` directory](https://github.com/kubeflow/website/tree/master/content/en/docs).
|
||||
|
||||
A `weight` property in the _front matter_ of each page determines the position
|
||||
of the page relative to the others in the same directory. The lower the weight,
|
||||
the earlier the page appears in the section. A weight of 1 appears before a
|
||||
a weight of 2, and so on. For example, see the front matter of the
|
||||
[Getting Started with Kubeflow](https://raw.githubusercontent.com/kubeflow/website/master/content/en/docs/started/getting-started.md)
|
||||
page. The page front matter looks like this:
|
||||
A `weight` property in the _front matter_ of each page determines the position of the page relative to the others in the same directory.
|
||||
The lower the weight, the earlier the page appears in the section.
|
||||
|
||||
```
|
||||
Here is an example `_index.md` file:
|
||||
|
||||
```md
|
||||
+++
|
||||
title = "Getting Started with Kubeflow"
|
||||
description = "Overview"
|
||||
|
@ -153,93 +114,83 @@ weight = 1
|
|||
+++
|
||||
```
|
||||
|
||||
## Working with the theme
|
||||
## Docsy Theme
|
||||
|
||||
The theme files are in the
|
||||
[`themes/docsy` directory](https://github.com/kubeflow/website/tree/master/themes/docsy).
|
||||
**Do not change these files**, because they are overwritten each time we update
|
||||
the website to a later version of the theme, and your changes will be lost.
|
||||
We use the [Docsy](https://www.docsy.dev/) theme for the website.
|
||||
The theme files are managed with a [git submodule](https://git-scm.com/book/en/v2/Git-Tools-Submodules) in the `themes/docsy` directory.
|
||||
|
||||
**Do not change these files**, they are not actually inside this repo, but are part of the [google/docsy](https://github.com/google/docsy) repo.
|
||||
|
||||
To update referenced docsy commit, run the following command at the root of the repo:
|
||||
|
||||
```bash
|
||||
git submodule update --remote
|
||||
```
|
||||
|
||||
## Documentation style guide
|
||||
|
||||
For guidance on writing effective documentation, see the [style guide for the
|
||||
Kubeflow docs](https://kubeflow.org/docs/about/style-guide/).
|
||||
For guidance on writing effective documentation, see
|
||||
the [style guide for the Kubeflow docs](https://kubeflow.org/docs/about/style-guide/).
|
||||
|
||||
## Styling your content
|
||||
|
||||
The theme holds its styles in the
|
||||
[`assets/scss` directory](https://github.com/kubeflow/website/tree/master/themes/docsy/assets/scss).
|
||||
**Do not change these files**, because they are overwritten each time we update
|
||||
the website to a later version of the theme, and your changes will be lost.
|
||||
The theme holds its styles in the [`assets/scss` directory](https://github.com/kubeflow/website/tree/master/themes/docsy/assets/scss).
|
||||
|
||||
**Do not change these files**, they are not actually inside this repo, but are part of the [google/docsy](https://github.com/google/docsy) repo.
|
||||
|
||||
You can override the default styles and add new ones:
|
||||
|
||||
* In general, put your files in the project directory structure under `website`
|
||||
rather than in the theme directory. Use the same file name as the theme does,
|
||||
and put the file in the same relative position. Hugo looks first at the file
|
||||
in the main project directories, if present, then at the files under the theme
|
||||
directory. For example, the Kubeflow website's
|
||||
[`layouts/partials/navbar.html`](https://github.com/kubeflow/website/blob/master/layouts/partials/navbar.html)
|
||||
overrides the theme's
|
||||
[`layouts/partials/navbar.html`](https://github.com/kubeflow/website/blob/master/themes/docsy/layouts/partials/navbar.html).
|
||||
* You can update the Kubeflow website's project variables in the
|
||||
[`_variables_project.scss` file](https://github.com/kubeflow/website/blob/master/assets/scss/_variables_project.scss).
|
||||
Values in that file override the
|
||||
[Docsy variables](https://github.com/kubeflow/website/blob/master/themes/docsy/assets/scss/_variables.scss).
|
||||
You can also use `_variables_project.scss` to specify your own values for any
|
||||
of the default
|
||||
[Bootstrap 4 variables](https://getbootstrap.com/docs/4.0/getting-started/theming/).
|
||||
* Custom styles [`_styles_project` file](https://github.com/kubeflow/website/blob/master/assets/scss/_styles_project.scss) and regenerate resources
|
||||
```
|
||||
hugo
|
||||
```
|
||||
* In general, put your files in the project directory structure under `website` rather than in the theme directory.
|
||||
Use the same file name as the theme does, and put the file in the same relative position.
|
||||
Hugo looks first at the file in the main project directories, if present, then at the files under the theme directory.
|
||||
For example, the Kubeflow website's [`layouts/partials/navbar.html`](https://github.com/kubeflow/website/blob/master/layouts/partials/navbar.html)
|
||||
overrides the theme's [`layouts/partials/navbar.html`](https://github.com/kubeflow/website/blob/master/themes/docsy/layouts/partials/navbar.html)
|
||||
|
||||
* You can update the Kubeflow website's project variables in the [`_variables_project.scss` file](https://github.com/kubeflow/website/blob/master/assets/scss/_variables_project.scss).
|
||||
Values in that file override the [Docsy variables](https://github.com/kubeflow/website/blob/master/themes/docsy/assets/scss/_variables.scss).
|
||||
You can also use `_variables_project.scss` to specify your own values for any of the default [Bootstrap 4 variables](https://getbootstrap.com/docs/4.0/getting-started/theming/).
|
||||
|
||||
* Custom styles [`_styles_project` file](https://github.com/kubeflow/website/blob/master/assets/scss/_styles_project.scss)
|
||||
|
||||
Styling of images:
|
||||
|
||||
* To see some examples of styled images, take a look at the
|
||||
[OAuth setup page](https://www.kubeflow.org/docs/gke/deploy/oauth-setup/)
|
||||
in the Kubeflow docs. Search for `.png` in the
|
||||
[page source](https://raw.githubusercontent.com/kubeflow/website/master/content/en/docs/gke/deploy/oauth-setup.md).
|
||||
* To see some examples of styled images, take a look at the [OAuth setup page](https://www.kubeflow.org/docs/gke/deploy/oauth-setup/) in the Kubeflow docs.
|
||||
Search for `.png` in the [page source](https://raw.githubusercontent.com/kubeflow/website/master/content/en/docs/gke/deploy/oauth-setup.md).
|
||||
|
||||
* For more help, see the guide to
|
||||
[Bootstrap image styling](https://getbootstrap.com/docs/4.0/content/images/).
|
||||
* Also see the Bootstrap utilities, such as
|
||||
|
||||
* Also see the Bootstrap utilities, such as
|
||||
[borders](https://getbootstrap.com/docs/4.0/utilities/borders/).
|
||||
|
||||
The site's [front page](https://www.kubeflow.org/):
|
||||
|
||||
* See the [page source](https://github.com/kubeflow/website/blob/master/content/en/_index.html).
|
||||
* The CSS styles are in the
|
||||
[project variables file](https://github.com/kubeflow/website/blob/master/assets/scss/_variables_project.scss).
|
||||
* The page uses the
|
||||
[cover block](https://www.docsy.dev/docs/adding-content/shortcodes/#blocks-cover)
|
||||
defined by the theme.
|
||||
* The page also uses the
|
||||
[linkdown block](https://www.docsy.dev/docs/adding-content/shortcodes/#blocks-link-down).
|
||||
|
||||
* The CSS styles are in the [project variables file](https://github.com/kubeflow/website/blob/master/assets/scss/_variables_project.scss).
|
||||
|
||||
* The page uses the [cover block](https://www.docsy.dev/docs/adding-content/shortcodes/#blocks-cover) defined by the theme.
|
||||
|
||||
* The page also uses the [linkdown block](https://www.docsy.dev/docs/adding-content/shortcodes/#blocks-link-down).
|
||||
|
||||
## Using Hugo shortcodes
|
||||
|
||||
Sometimes it's useful to define a snippet of information in one place and reuse
|
||||
it wherever we need it. For example, we want to be able to refer to the minimum
|
||||
version of various frameworks/libraries throughout the docs, without
|
||||
causing a maintenance nightmare.
|
||||
Sometimes it's useful to define a snippet of information in one place and reuse it wherever we need it.
|
||||
For example, we want to be able to refer to the minimum version of various frameworks/libraries throughout the docs,
|
||||
without causing a maintenance nightmare.
|
||||
|
||||
For this purpose, we use Hugo's "shortcodes". Shortcodes are similar to Django
|
||||
variables. You define a shortcode in a file, then use a specific markup to
|
||||
invoke the shortcode in the docs. That markup is replaced by the content of the
|
||||
shortcode file when the page is built.
|
||||
For this purpose, we use Hugo's "shortcodes".
|
||||
Shortcodes are similar to Django variables. You define a shortcode in a file, then use a specific markup
|
||||
to invoke the shortcode in the docs. That markup is replaced by the content of the shortcode file when the page is built.
|
||||
|
||||
To create a shortcode:
|
||||
|
||||
1. Add an HTML file in the `/website/layouts/shortcodes/` directory.
|
||||
The file name must be short and meaningful, as it determines the shortcode
|
||||
you and others use in the docs.
|
||||
1. Add an HTML file in the `/website/layouts/shortcodes/` directory.
|
||||
The file name must be short and meaningful, as it determines the shortcode you and others use in the docs.
|
||||
|
||||
1. For the file content, add the text and HTML markup that should replace the
|
||||
shortcode markup when the web page is built.
|
||||
2. For the file content, add the text and HTML markup that should replace the shortcode markup when the web page is built.
|
||||
|
||||
To use a shortcode in a document, wrap the name of the shortcode in braces and
|
||||
percent signs like this:
|
||||
To use a shortcode in a document, wrap the name of the shortcode in braces and percent signs like this:
|
||||
|
||||
```
|
||||
{{% shortcode-name %}}
|
||||
|
@ -247,50 +198,50 @@ percent signs like this:
|
|||
|
||||
The shortcode name is the file name minus the `.html` file extension.
|
||||
|
||||
**Example:** The following shortcode defines the minimum required version of
|
||||
Kubernetes:
|
||||
**Example:** The following shortcode defines the minimum required version of Kubernetes:
|
||||
|
||||
- File name of the shortcode:
|
||||
* File name of the shortcode:
|
||||
|
||||
```
|
||||
kubernetes-min-version.html
|
||||
```
|
||||
|
||||
- Content of the shortcode:
|
||||
* Content of the shortcode:
|
||||
|
||||
```
|
||||
1.8
|
||||
```
|
||||
- Usage in a document:
|
||||
|
||||
* Usage in a document:
|
||||
|
||||
```
|
||||
You need Kubernetes version {{% kubernetes-min-version %}} or later.
|
||||
```
|
||||
|
||||
Useful Hugo docs:
|
||||
- [Shortcode templates](https://gohugo.io/templates/shortcode-templates/)
|
||||
- [Shortcodes](https://gohugo.io/content-management/shortcodes/)
|
||||
|
||||
* [Shortcode templates](https://gohugo.io/templates/shortcode-templates/)
|
||||
* [Shortcodes](https://gohugo.io/content-management/shortcodes/)
|
||||
|
||||
## Versioning of the docs
|
||||
|
||||
For each stable release, we create a new branch for the relevant documentation. For
|
||||
example, the documentation for the v0.2 stable release is maintained in the
|
||||
[v0.2-branch](https://github.com/kubeflow/website/tree/v0.2-branch).
|
||||
For each stable release, we create a new branch for the relevant documentation.
|
||||
For example, the documentation for the v0.2 stable release is maintained in the [v0.2-branch](https://github.com/kubeflow/website/tree/v0.2-branch).
|
||||
Each branch has a corresponding Netlify website that automatically syncs each merged PR.
|
||||
|
||||
The versioned sites follow this convention:
|
||||
|
||||
* `www.kubeflow.org` always points to the current *master branch*
|
||||
* `master.kubeflow.org` always points to GitHub head
|
||||
* `vXXX-YYY.kubeflow.org` points to the release at vXXX.YYY-branch
|
||||
|
||||
We also hook up each version to the dropdown on the website menu bar. For
|
||||
information on how to update the website to a new version, see the [Kubeflow
|
||||
release guide](https://github.com/kubeflow/kubeflow/blob/master/docs_dev/releasing.md#releasing-a-new-version-of-the-website).
|
||||
We also hook up each version to the dropdown on the website menu bar.
|
||||
For information on how to update the website to a new version, see the [Kubeflow release guide](https://github.com/kubeflow/kubeflow/blob/master/docs_dev/releasing.md#releasing-a-new-version-of-the-website).
|
||||
|
||||
Whenever any documents reference any source code, you should use the version
|
||||
shortcode in the links, like so:
|
||||
Whenever any documents reference any source code, you should use the version shortcode in the links, like so:
|
||||
|
||||
```
|
||||
https://github.com/kubeflow/kubeflow/blob/{{< params "githubbranch" >}}/scripts/gke/deploy.sh
|
||||
```
|
||||
|
||||
This ensures that all the links in a versioned webpage point to the correct branch.
|
||||
|
|
|
@ -1,7 +0,0 @@
|
|||
+++
|
||||
title = ""
|
||||
description = ""
|
||||
weight = 20
|
||||
publishDate = {{ .Date }}
|
||||
draft = false
|
||||
+++
|
|
@ -1,7 +0,0 @@
|
|||
+++
|
||||
title = ""
|
||||
description = ""
|
||||
date = {{ .Date }}
|
||||
weight = 20
|
||||
draft = false
|
||||
+++
|
|
@ -1,122 +0,0 @@
|
|||
//
|
||||
// Top navbar - copied from Docsy theme and additional styling included.
|
||||
//
|
||||
|
||||
.td-navbar-cover {
|
||||
background: $primary;
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
background: transparent !important;
|
||||
|
||||
.nav-link {
|
||||
text-shadow: 1px 1px 2px $dark;
|
||||
}
|
||||
|
||||
.brand-name {
|
||||
display: none;}
|
||||
|
||||
}
|
||||
|
||||
&.navbar-bg-onscroll .nav-link {
|
||||
text-shadow: none;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-bg-onscroll {
|
||||
background: $primary !important;
|
||||
opacity: inherit;
|
||||
}
|
||||
|
||||
.td-navbar {
|
||||
background: $primary;
|
||||
min-height: 4rem;
|
||||
margin: 0;
|
||||
z-index: 32;
|
||||
|
||||
.brand-name {
|
||||
display: none;}
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.navbar-brand {
|
||||
text-transform: none;
|
||||
text-align: middle;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
|
||||
.nav-link {
|
||||
display: inline-block;
|
||||
margin-right: -30px;
|
||||
}
|
||||
|
||||
.navbar-logo {
|
||||
svg {
|
||||
display: inline-block;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 26px;
|
||||
z-index: 33;
|
||||
padding: 10px;
|
||||
height: 95px;
|
||||
background: white;
|
||||
border: 2px solid #4279f4;
|
||||
border-top: none;
|
||||
|
||||
@include media-breakpoint-down(md) {
|
||||
left: 16px;
|
||||
width: 80px;
|
||||
height: auto;
|
||||
padding: 6px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.nav-link {
|
||||
text-transform: none;
|
||||
font-weight: $font-weight-bold;
|
||||
}
|
||||
|
||||
.td-search-input {
|
||||
border: none;
|
||||
|
||||
@include placeholder {
|
||||
color: $navbar-dark-color;
|
||||
}
|
||||
}
|
||||
|
||||
.dropdown {
|
||||
min-width: 100px;
|
||||
}
|
||||
|
||||
@include media-breakpoint-down(md) {
|
||||
padding-right: .5rem;
|
||||
padding-left: .75rem;
|
||||
align-items: flex-end;
|
||||
|
||||
.td-navbar-nav-scroll {
|
||||
max-width: calc(100% + .75rem - 96px - 1.5rem);
|
||||
height: 2.5rem;
|
||||
margin-top: .25rem;
|
||||
overflow: hidden;
|
||||
font-size: .875rem;
|
||||
|
||||
.nav-link {
|
||||
padding-right: .25rem;
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
.navbar-nav {
|
||||
margin-top: 0 !important;
|
||||
padding-bottom: 2rem;
|
||||
overflow-x: auto;
|
||||
white-space: nowrap;
|
||||
-webkit-overflow-scrolling: touch;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,32 +1,81 @@
|
|||
// --------------------------------------------------
|
||||
// remove whitespace after footer
|
||||
// --------------------------------------------------
|
||||
footer {
|
||||
min-height: auto;
|
||||
|
||||
@media (max-width: 991.98px) {
|
||||
min-height: auto;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 768px) {
|
||||
.td-sidebar-nav__section > ul {
|
||||
padding-left: .5rem !important;
|
||||
}
|
||||
// --------------------------------------------------
|
||||
// prevent overflow of long names in sidebar
|
||||
// --------------------------------------------------
|
||||
.td-sidebar-nav__section > ul {
|
||||
overflow-wrap: break-word;
|
||||
}
|
||||
|
||||
// --------------------------------------------------
|
||||
// custom navbar with larger logo, dropdown on mobile
|
||||
// --------------------------------------------------
|
||||
.td-navbar {
|
||||
min-height: auto;
|
||||
}
|
||||
|
||||
.navbar-nav {
|
||||
@media (max-width: 992px) {
|
||||
font-size: .875rem;
|
||||
.dropdown {
|
||||
min-width: inherit;
|
||||
.navbar-brand {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
|
||||
.text-uppercase {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.navbar-logo {
|
||||
svg {
|
||||
display: inline-block;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
z-index: 33;
|
||||
padding: 10px;
|
||||
height: 95px;
|
||||
background: white;
|
||||
border: 2px solid #4279f4;
|
||||
border-top: none;
|
||||
|
||||
@include media-breakpoint-down(md) {
|
||||
width: 80px;
|
||||
height: auto;
|
||||
padding: 6px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-nav {
|
||||
@include media-breakpoint-down(md) {
|
||||
font-size: .875rem;
|
||||
.dropdown {
|
||||
min-width: inherit;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.td-sidebar {
|
||||
padding-bottom: 0.5rem;
|
||||
|
||||
.td-sidebar__inner {
|
||||
padding-top: 30px;
|
||||
|
||||
@include media-breakpoint-down(md) {
|
||||
padding-top: 10px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// --------------------------------------------------
|
||||
// 404 page
|
||||
// --------------------------------------------------
|
||||
.error-page {
|
||||
margin-top: 120px;
|
||||
|
||||
ul {
|
||||
margin-bottom: 50px;
|
||||
list-style-type: none;
|
||||
|
@ -47,11 +96,39 @@ footer {
|
|||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
@media (min-width: 768px) and (max-width: 991px){
|
||||
@media (min-width: 768px) and (max-width: 991px) {
|
||||
margin-top: 100px;
|
||||
}
|
||||
|
||||
|
||||
@media (max-width: 767px) {
|
||||
margin-top: 50px;
|
||||
}
|
||||
}
|
||||
|
||||
// --------------------------------------------------
|
||||
// for tabbed code blocks
|
||||
// https://github.com/kubeflow/website/pull/2779
|
||||
// --------------------------------------------------
|
||||
.nav-tabs {
|
||||
border-bottom: none !important;
|
||||
}
|
||||
|
||||
.td-content > ul li,
|
||||
.td-content > ol li.nav-item {
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
.td-content .tab-content .highlight {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.tab-pane {
|
||||
border-radius: 0.25rem;
|
||||
padding: 0 16px 16px;
|
||||
|
||||
border: 1px solid #dee2e6;
|
||||
|
||||
&:first-of-type.active {
|
||||
border-top-left-radius: 0;
|
||||
}
|
||||
}
|
|
@ -1,23 +0,0 @@
|
|||
// nav-tabs and tab-content
|
||||
.nav-tabs {
|
||||
border-bottom: none !important;
|
||||
}
|
||||
|
||||
.td-content > ul li,
|
||||
.td-content > ol li.nav-item {
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
.td-content .tab-content .highlight {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.tab-pane {
|
||||
border-radius: 0.25rem;
|
||||
padding: 0 16px 16px;
|
||||
|
||||
border: 1px solid #dee2e6;
|
||||
&:first-of-type.active {
|
||||
border-top-left-radius: 0;
|
||||
}
|
||||
}
|
|
@ -1,7 +1,5 @@
|
|||
/*
|
||||
|
||||
Add styles or override the theme's variables here.
|
||||
|
||||
*/
|
||||
|
||||
html.smooth-scroll {
|
||||
|
@ -9,7 +7,6 @@ html.smooth-scroll {
|
|||
}
|
||||
|
||||
// Theme colors
|
||||
|
||||
$primary: #4279f4;
|
||||
$secondary: #fff;
|
||||
$dark: #213d7a;
|
||||
|
@ -17,18 +14,15 @@ $info: #adb5bd;
|
|||
$light: #dee2e6;
|
||||
|
||||
// Nav bar colors
|
||||
|
||||
$white: #fff;
|
||||
$navbar-dark-color: rgba($white, 1);
|
||||
$navbar-dark-hover-color: rgba($white, 0.75);
|
||||
$navbar-dark-active-color: $navbar-dark-color;
|
||||
|
||||
// Fonts
|
||||
|
||||
$google_font_family: "Open+Sans:300,300i,400,400i,600,600i,700,700i&display=swap" !default;
|
||||
|
||||
// Front page styling
|
||||
|
||||
.card-img-top {
|
||||
object-fit: scale-down;
|
||||
}
|
||||
|
|
|
@ -1,61 +0,0 @@
|
|||
@import "support/functions";
|
||||
@import "variables_project";
|
||||
@import "variables";
|
||||
@import "support/mixins";
|
||||
|
||||
@import "../vendor/bootstrap/scss/bootstrap";
|
||||
|
||||
@import "../vendor/Font-Awesome/scss/fontawesome.scss";
|
||||
@import "../vendor/Font-Awesome/scss/solid.scss";
|
||||
@import "../vendor/Font-Awesome/scss/brands.scss";
|
||||
|
||||
@import "support/utilities";
|
||||
@import "colors";
|
||||
@import "boxes";
|
||||
@import "blog";
|
||||
@import "code";
|
||||
@import "nav";
|
||||
@import "sidebar-tree";
|
||||
@import "sidebar-toc";
|
||||
@import "buttons";
|
||||
@import "breadcrumb";
|
||||
@import "alerts";
|
||||
@import "content";
|
||||
@import "search";
|
||||
@import "main-container";
|
||||
@import "blocks/blocks";
|
||||
@import "section-index";
|
||||
@import "pageinfo";
|
||||
|
||||
@if $td-enable-google-fonts {
|
||||
@import url('#{$web-font-path}');
|
||||
}
|
||||
|
||||
footer {
|
||||
min-height: 150px;
|
||||
|
||||
@include media-breakpoint-down(md) {
|
||||
min-height: 200px;
|
||||
}
|
||||
}
|
||||
|
||||
// Adjust anchors vs the fixed menu.
|
||||
@include media-breakpoint-up(md) {
|
||||
.td-offset-anchor:target {
|
||||
display: block;
|
||||
position: relative;
|
||||
top: -4rem;
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
h2[id]:before, h3[id]:before, h4[id]:before, h5[id]:before {
|
||||
display: block;
|
||||
content: " ";
|
||||
margin-top: -5rem;
|
||||
height: 5rem;
|
||||
visibility: hidden;
|
||||
}
|
||||
}
|
||||
|
||||
@import "styles_project";
|
||||
@import "tabs";
|
366
config.toml
366
config.toml
|
@ -1,246 +1,216 @@
|
|||
baseURL = "/"
|
||||
languageCode = "en-us"
|
||||
title = "Kubeflow"
|
||||
theme = ["docsy"]
|
||||
description = "Kubeflow makes deployment of ML Workflows on Kubernetes straightforward and automated"
|
||||
Paginate = 20
|
||||
|
||||
# SEO
|
||||
enableRobotsTXT = true
|
||||
|
||||
# Docsy: Gives values to .Lastmod etc.
|
||||
theme = ["docsy"]
|
||||
|
||||
###############################################################################
|
||||
# Docsy
|
||||
###############################################################################
|
||||
enableGitInfo = true
|
||||
|
||||
# Docsy: Language settings
|
||||
# language settings
|
||||
contentDir = "content/en"
|
||||
defaultContentLanguage = "en"
|
||||
# Tell Hugo not to include the /en/ element in the URL path for English docs:
|
||||
# tell Hugo not to include the /en/ element in the URL path for English docs
|
||||
defaultContentLanguageInSubdir = false
|
||||
# Docsy: Useful when translating.
|
||||
# useful when translating
|
||||
enableMissingTranslationPlaceholders = true
|
||||
|
||||
# disable taxonomies
|
||||
disableKinds = ["taxonomy", "taxonomyTerm"]
|
||||
|
||||
# Docsy: Highlighting config
|
||||
pygmentsCodeFences = true
|
||||
pygmentsUseClasses = false
|
||||
# Use the new Chroma Go highlighter in Hugo.
|
||||
pygmentsUseClassic = false
|
||||
#pygmentsOptions = "linenos=table"
|
||||
# See https://help.farbox.com/pygments.html
|
||||
pygmentsStyle = "tango"
|
||||
|
||||
# Docsy: First one is picked as the Twitter card image if not set on page.
|
||||
#images = ["images/project-illustration.png"]
|
||||
|
||||
# Top-level navigation (horizontal)
|
||||
|
||||
[[menu.main]]
|
||||
###############################################################################
|
||||
# Hugo - Top-level navigation (horizontal)
|
||||
###############################################################################
|
||||
[menu]
|
||||
[[menu.main]]
|
||||
name = "Documentation"
|
||||
weight = -101
|
||||
pre = "<i class='fas fa-book pr-2'></i>"
|
||||
url = "/docs/"
|
||||
[[menu.main]]
|
||||
[[menu.main]]
|
||||
name = "Blog"
|
||||
weight = -100
|
||||
pre = "<i class='fas fa-rss pr-2'></i>"
|
||||
url = "https://blog.kubeflow.org/"
|
||||
[[menu.main]]
|
||||
[[menu.main]]
|
||||
name = "GitHub"
|
||||
weight = -99
|
||||
pre = "<i class='fab fa-github pr-2'></i>"
|
||||
url = "https://github.com/kubeflow/"
|
||||
|
||||
# Docsy: Configure the format of URLs per section.
|
||||
#[permalinks]
|
||||
#blog = "/:section/:year/:month/:day/:slug/"
|
||||
|
||||
# Docsy: Configuration for Goldmark markdown parser, which is default from
|
||||
# Hugo 0.60 onwards. https://github.com/yuin/goldmark/
|
||||
###############################################################################
|
||||
# Docsy - Goldmark markdown parser
|
||||
###############################################################################
|
||||
[markup]
|
||||
[markup.goldmark]
|
||||
[markup.goldmark.renderer]
|
||||
# Allow Goldmark to render raw HTML:
|
||||
[markup.goldmark]
|
||||
[markup.goldmark.renderer]
|
||||
unsafe = true
|
||||
[markup.highlight]
|
||||
# See a complete list of available styles at https://xyproto.github.io/splash/docs/all.html
|
||||
style = "tango"
|
||||
guessSyntax = "true"
|
||||
|
||||
# Docsy: Image processing configuration.
|
||||
###############################################################################
|
||||
# Docsy - Image processing configuration
|
||||
###############################################################################
|
||||
[imaging]
|
||||
resampleFilter = "CatmullRom"
|
||||
quality = 75
|
||||
anchor = "smart"
|
||||
resampleFilter = "CatmullRom"
|
||||
quality = 75
|
||||
anchor = "smart"
|
||||
|
||||
###############################################################################
|
||||
# Docsy - Services configuration
|
||||
###############################################################################
|
||||
[services]
|
||||
[services.googleAnalytics]
|
||||
id = "UA-135379910-1"
|
||||
|
||||
# Docsy: Language configuration
|
||||
[services.googleAnalytics]
|
||||
id = "UA-135379910-1"
|
||||
|
||||
###############################################################################
|
||||
# Docsy - Language configuration
|
||||
###############################################################################
|
||||
[languages]
|
||||
[languages.en]
|
||||
title = "Kubeflow"
|
||||
description = "Kubeflow makes deployment of ML Workflows on Kubernetes straightforward and automated"
|
||||
languageName ="English"
|
||||
# Weight used for sorting in the language menu:
|
||||
weight = 1
|
||||
|
||||
# Below is an example of another language (Norwegian):
|
||||
#[languages.no]
|
||||
#title = "Docsy"
|
||||
#description = "Docsy er operativsystem for skyen"
|
||||
#languageName ="Norsk"
|
||||
#contentDir = "content/no"
|
||||
time_format_default = "02.01.2006"
|
||||
time_format_blog = "02.01.2006"
|
||||
|
||||
# Site params
|
||||
[languages.en]
|
||||
title = "Kubeflow"
|
||||
description = "Kubeflow makes deployment of ML Workflows on Kubernetes straightforward and automated"
|
||||
languageName ="English"
|
||||
# weight used for sorting in the language menu
|
||||
weight = 1
|
||||
|
||||
###############################################################################
|
||||
# Docsy - Site Parameters
|
||||
###############################################################################
|
||||
[params]
|
||||
github_repo = "https://github.com/kubeflow/website"
|
||||
github_project_repo = "https://github.com/kubeflow/kubeflow"
|
||||
|
||||
# GitHub repository for in-page links to editing a page and opening and issues.
|
||||
github_repo = "https://github.com/kubeflow/website"
|
||||
# An optional link to a related project repo. For example, the sibling repository where your product code lives.
|
||||
github_project_repo = "https://github.com/kubeflow/kubeflow"
|
||||
RSSLink = "/index.xml"
|
||||
author = "kubeflow.org" # add your company name
|
||||
github = "kubeflow" # add your github profile name
|
||||
twitter = "kubeflow" # add your twitter profile
|
||||
|
||||
RSSLink = "/index.xml"
|
||||
author = "kubeflow.org" # add your company name
|
||||
github = "kubeflow" # add your github profile name
|
||||
twitter = "kubeflow" # add your twitter profile
|
||||
#email = "myemail@myaddress.xxx"
|
||||
copyright = "The Kubeflow Authors."
|
||||
privacy_policy = "https://policies.google.com/privacy"
|
||||
|
||||
copyright = "The Kubeflow Authors."
|
||||
privacy_policy = "https://policies.google.com/privacy"
|
||||
# Google Custom Search Engine ID.
|
||||
gcs_engine_id = "007239566369470735695:624rglujm-w"
|
||||
|
||||
# Docsy: Google Custom Search Engine ID. Remove or comment out to disable search.
|
||||
gcs_engine_id = "007239566369470735695:624rglujm-w"
|
||||
# Text label for the version menu in the top bar of the website.
|
||||
version_menu = "Kubeflow Version"
|
||||
|
||||
# Text label for the version menu in the top bar of the website.
|
||||
version_menu = "Kubeflow Version"
|
||||
|
||||
# The major.minor version tag for the version of the docs represented in this
|
||||
# branch of the repository. Used in the "version-banner" partial to display a
|
||||
# version number for this doc set.
|
||||
version = "master"
|
||||
|
||||
# Flag used in the "version-banner" partial to decide whether to display a
|
||||
# banner on every page indicating that this is an archived version of the docs.
|
||||
archived_version = false
|
||||
|
||||
# A link to latest version of the docs. Used in the "version-banner" partial to
|
||||
# point people to the main doc site.
|
||||
url_latest_version = "https://kubeflow.org/docs/"
|
||||
|
||||
# A variable used in various docs to determine URLs for config files etc.
|
||||
# To find occurrences, search the repo for 'params "githubbranch"'.
|
||||
githubbranch = "master"
|
||||
|
||||
# Add new release versions here. These entries appear in the drop-down menu
|
||||
# at the top of the website.
|
||||
[[params.versions]]
|
||||
# The major.minor version tag for the version of the docs represented in this
|
||||
# branch of the repository. Used in the "version-banner" partial to display a
|
||||
# version number for this doc set.
|
||||
version = "master"
|
||||
|
||||
# Flag used in the "version-banner" partial to decide whether to display a
|
||||
# banner on every page indicating that this is an archived version of the docs.
|
||||
archived_version = false
|
||||
|
||||
# A link to latest version of the docs. Used in the "version-banner" partial to
|
||||
# point people to the main doc site.
|
||||
url_latest_version = "https://kubeflow.org/docs/"
|
||||
|
||||
# A variable used in various docs to determine URLs for config files etc.
|
||||
# To find occurrences, search the repo for 'params "githubbranch"'.
|
||||
githubbranch = "master"
|
||||
url = "https://master.kubeflow.org"
|
||||
|
||||
[[params.versions]]
|
||||
version = "v1.4"
|
||||
githubbranch = "v1.4-branch"
|
||||
url = "https://v1-4-branch.kubeflow.org"
|
||||
# These entries appear in the drop-down menu at the top of the website.
|
||||
[[params.versions]]
|
||||
version = "master"
|
||||
githubbranch = "master"
|
||||
url = "https://master.kubeflow.org"
|
||||
[[params.versions]]
|
||||
version = "v1.4"
|
||||
githubbranch = "v1.4-branch"
|
||||
url = "https://v1-4-branch.kubeflow.org"
|
||||
[[params.versions]]
|
||||
version = "v1.3"
|
||||
githubbranch = "v1.3-branch"
|
||||
url = "https://v1-3-branch.kubeflow.org"
|
||||
[[params.versions]]
|
||||
version = "v1.2"
|
||||
githubbranch = "v1.2-branch"
|
||||
url = "https://v1-2-branch.kubeflow.org"
|
||||
[[params.versions]]
|
||||
version = "v1.1"
|
||||
githubbranch = "v1.1-branch"
|
||||
url = "https://v1-1-branch.kubeflow.org"
|
||||
[[params.versions]]
|
||||
version = "v1.0"
|
||||
githubbranch = "v1.0-branch"
|
||||
url = "https://v1-0-branch.kubeflow.org"
|
||||
[[params.versions]]
|
||||
version = "v0.7"
|
||||
githubbranch = "v0.7-branch"
|
||||
url = "https://v0-7.kubeflow.org"
|
||||
[[params.versions]]
|
||||
version = "v0.6"
|
||||
githubbranch = "v0.6-branch"
|
||||
url = "https://v0-6.kubeflow.org"
|
||||
[[params.versions]]
|
||||
version = "v0.5"
|
||||
githubbranch = "v0.5-branch"
|
||||
url = "https://v0-5.kubeflow.org"
|
||||
[[params.versions]]
|
||||
version = "v0.4"
|
||||
githubbranch = "v0.4-branch"
|
||||
url = "https://v0-4.kubeflow.org"
|
||||
[[params.versions]]
|
||||
version = "v0.3"
|
||||
githubbranch = "v0.3-branch"
|
||||
url = "https://v0-3.kubeflow.org"
|
||||
[[params.versions]]
|
||||
version = "v0.2"
|
||||
githubbranch = "v0.2-branch"
|
||||
url = "https://v0-2.kubeflow.org"
|
||||
|
||||
[[params.versions]]
|
||||
version = "v1.3"
|
||||
githubbranch = "v1.3-branch"
|
||||
url = "https://v1-3-branch.kubeflow.org"
|
||||
# User interface configuration
|
||||
[params.ui]
|
||||
# Enable the logo
|
||||
navbar_logo = true
|
||||
# Enable to show the side bar menu in its compact state.
|
||||
sidebar_menu_compact = true
|
||||
# Enable the search box in the side bar.
|
||||
sidebar_search_disable = false
|
||||
# Set to true to disable breadcrumb navigation.
|
||||
breadcrumb_disable = false
|
||||
# Show expand/collapse icon for sidebar sections
|
||||
sidebar_menu_foldable = true
|
||||
# Disable about button in footer
|
||||
footer_about_disable = true
|
||||
|
||||
[[params.versions]]
|
||||
version = "v1.2"
|
||||
githubbranch = "v1.2-branch"
|
||||
url = "https://v1-2-branch.kubeflow.org"
|
||||
# Adds a H2 section titled "Feedback" to the bottom of each doc. The responses are sent to Google Analytics as events.
|
||||
# This feature depends on [services.googleAnalytics] and will be disabled if "services.googleAnalytics.id" is not set.
|
||||
# If you want this feature, but occasionally need to remove the "Feedback" section from a single page,
|
||||
# add "hide_feedback: true" to the page's front matter.
|
||||
[params.ui.feedback]
|
||||
enable = true
|
||||
# The responses that the user sees after clicking "yes" (the page was helpful) or "no" (the page was not helpful).
|
||||
yes = 'Glad to hear it! Please <a href="https://github.com/kubeflow/website/issues/new">tell us how we can improve</a>.'
|
||||
no = 'Sorry to hear that. Please <a href="https://github.com/kubeflow/website/issues/new">tell us how we can improve</a>.'
|
||||
|
||||
[[params.versions]]
|
||||
version = "v1.1"
|
||||
githubbranch = "v1.1-branch"
|
||||
url = "https://v1-1-branch.kubeflow.org"
|
||||
|
||||
[[params.versions]]
|
||||
version = "v1.0"
|
||||
githubbranch = "v1.0-branch"
|
||||
url = "https://v1-0-branch.kubeflow.org"
|
||||
|
||||
[[params.versions]]
|
||||
version = "v0.7"
|
||||
githubbranch = "v0.7-branch"
|
||||
url = "https://v0-7.kubeflow.org"
|
||||
|
||||
[[params.versions]]
|
||||
version = "v0.6"
|
||||
githubbranch = "v0.6-branch"
|
||||
url = "https://v0-6.kubeflow.org"
|
||||
|
||||
[[params.versions]]
|
||||
version = "v0.5"
|
||||
githubbranch = "v0.5-branch"
|
||||
url = "https://v0-5.kubeflow.org"
|
||||
|
||||
[[params.versions]]
|
||||
version = "v0.4"
|
||||
githubbranch = "v0.4-branch"
|
||||
url = "https://v0-4.kubeflow.org"
|
||||
|
||||
[[params.versions]]
|
||||
version = "v0.3"
|
||||
githubbranch = "v0.3-branch"
|
||||
url = "https://v0-3.kubeflow.org"
|
||||
|
||||
[[params.versions]]
|
||||
version = "v0.2"
|
||||
githubbranch = "v0.2-branch"
|
||||
url = "https://v0-2.kubeflow.org"
|
||||
|
||||
# Docsy: User interface configuration
|
||||
[params.ui]
|
||||
# Docsy: Enable to show the side bar menu in its compact state.
|
||||
sidebar_menu_compact = true
|
||||
# Docsy: Disable the search box in the side bar.
|
||||
sidebar_search_disable = true
|
||||
# Docsy: Set to true to disable breadcrumb navigation.
|
||||
breadcrumb_disable = false
|
||||
|
||||
# Adds a H2 section titled "Feedback" to the bottom of each doc. The responses are sent to Google Analytics as events.
|
||||
# This feature depends on [services.googleAnalytics] and will be disabled if "services.googleAnalytics.id" is not set.
|
||||
# If you want this feature, but occasionally need to remove the "Feedback" section from a single page,
|
||||
# add "hide_feedback: true" to the page's front matter.
|
||||
[params.ui.feedback]
|
||||
enable = true
|
||||
# The responses that the user sees after clicking "yes" (the page was helpful) or "no" (the page was not helpful).
|
||||
yes = 'Glad to hear it! Please <a href="https://github.com/kubeflow/website/issues/new">tell us how we can improve</a>.'
|
||||
no = 'Sorry to hear that. Please <a href="https://github.com/kubeflow/website/issues/new">tell us how we can improve</a>.'
|
||||
|
||||
|
||||
[params.links]
|
||||
# Docsy: "User" links will show on left side of footer and in the community page if you have one.
|
||||
[[params.links.user]]
|
||||
name = "Twitter"
|
||||
url = "https://twitter.com/kubeflow/"
|
||||
icon = "fab fa-twitter"
|
||||
desc = "Follow us on Twitter to get the latest news!"
|
||||
[[params.links.user]]
|
||||
name = "Slack"
|
||||
url = "/docs/about/community/#slack"
|
||||
icon = "fab fa-slack"
|
||||
desc = "Join the Kubeflow Slack Workspace!"
|
||||
[[params.links.user]]
|
||||
name = "Mailing list"
|
||||
url = "/docs/about/community/#mailing-list"
|
||||
icon = "fa fa-envelope"
|
||||
desc = "Join the Kubeflow Mailing List!"
|
||||
[[params.links.user]]
|
||||
name = "Weekly Community Call"
|
||||
url = "/docs/about/community/#weekly-community-call"
|
||||
icon = "fa fa-calendar"
|
||||
desc = "Join the weekly Kubeflow Community Call!"
|
||||
|
||||
# Docsy: "Developer" links will show on right side of footer and in the community page if you have one.
|
||||
#[[params.links.developer]]
|
||||
# name = "A name"
|
||||
# url = "http://example.com"
|
||||
# icon = "fab fa-envelope"
|
||||
# desc = "A description"
|
||||
# Links in footer
|
||||
[params.links]
|
||||
[[params.links.user]]
|
||||
name = "Twitter"
|
||||
url = "https://twitter.com/kubeflow/"
|
||||
icon = "fab fa-twitter"
|
||||
desc = "Follow us on Twitter to get the latest news!"
|
||||
[[params.links.user]]
|
||||
name = "Slack"
|
||||
url = "/docs/about/community/#slack"
|
||||
icon = "fab fa-slack"
|
||||
desc = "Join the Kubeflow Slack Workspace!"
|
||||
[[params.links.user]]
|
||||
name = "Mailing list"
|
||||
url = "/docs/about/community/#mailing-list"
|
||||
icon = "fa fa-envelope"
|
||||
desc = "Join the Kubeflow Mailing List!"
|
||||
[[params.links.user]]
|
||||
name = "Weekly Community Call"
|
||||
url = "/docs/about/community/#weekly-community-call"
|
||||
icon = "fa fa-calendar"
|
||||
desc = "Join the weekly Kubeflow Community Call!"
|
||||
|
|
|
@ -1,18 +0,0 @@
|
|||
<!doctype html>
|
||||
<html lang="{{ .Site.Language.Lang }}" class="no-js {{ if .IsHome }}smooth-scroll{{ end }}">
|
||||
<head>
|
||||
{{ partial "head.html" . }}
|
||||
</head>
|
||||
<body class="td-{{ .Kind }}">
|
||||
<header>
|
||||
{{ partial "navbar.html" . }}
|
||||
</header>
|
||||
<div class="container-fluid td-default td-outer">
|
||||
<main role="main" class="td-main">
|
||||
{{ block "main" . }}{{ end }}
|
||||
</main>
|
||||
{{ partial "footer.html" . }}
|
||||
</div>
|
||||
{{ partialCached "scripts.html" . }}
|
||||
</body>
|
||||
</html>
|
|
@ -13,17 +13,19 @@
|
|||
display: block;
|
||||
}
|
||||
</style>
|
||||
<div class="d-print-none">
|
||||
<h2 class="feedback--title">Feedback</h2>
|
||||
<p class="feedback--question">Was this page helpful?</p>
|
||||
<button class="btn btn-primary mb-4 feedback--answer feedback--answer-yes">Yes</button>
|
||||
<button class="btn btn-primary mb-4 feedback--answer feedback--answer-no">No</button>
|
||||
<p class="feedback--response feedback--response-yes">
|
||||
{{ .yes | safeHTML }}
|
||||
</p>
|
||||
<p class="feedback--response feedback--response-no">
|
||||
{{ .no | safeHTML }}
|
||||
</p>
|
||||
<div class="card mt-4 col-12 col-sm-6">
|
||||
<div class="card-body">
|
||||
<h3 class="card-title">Feedback</h3>
|
||||
<p class="card-text">Was this page helpful?</p>
|
||||
<button class="btn btn-primary feedback--answer feedback--answer-yes" style="width: 5rem;">Yes</button>
|
||||
<button class="btn btn-primary feedback--answer feedback--answer-no" style="width: 5rem;">No</button>
|
||||
<p class="feedback--response feedback--response-yes">
|
||||
{{ .yes | safeHTML }}
|
||||
</p>
|
||||
<p class="feedback--response feedback--response-no">
|
||||
{{ .no | safeHTML }}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
const yesButton = document.querySelector('.feedback--answer-yes');
|
|
@ -1,5 +1,5 @@
|
|||
{{ $links := .Site.Params.links }}
|
||||
<footer class="bg-dark pt-4 row d-print-none">
|
||||
<footer class="bg-dark pt-3 row d-print-none">
|
||||
<div class="container-fluid mx-sm-5">
|
||||
<div class="row">
|
||||
<div class="col-6 col-sm-4 text-xs-center order-sm-2">
|
||||
|
@ -16,12 +16,12 @@
|
|||
{{ end }}
|
||||
{{ end }}
|
||||
</div>
|
||||
<div class="col-12 col-sm-4 text-center py-2 order-sm-2">
|
||||
{{ with .Site.Params.copyright }}<small class="text-white">Copyright © 2018-{{ now.Year }} {{ .}} <br>{{ "Documentation Distributed under CC BY 4.0" }}</small>{{ end }}
|
||||
{{ with .Site.Params.privacy_policy }}<small class="ml-1"><a href="{{ . }}" target="_blank">{{ T "footer_privacy_policy" }}</a></small>{{ end }}
|
||||
{{ if not .Site.Params.ui.footer_about_disable }}
|
||||
{{ with .Site.GetPage "about" }}<p class="mt-2"><a href="{{ .RelPermalink }}">{{ .Title }}</a></p>{{ end }}
|
||||
{{ end }}
|
||||
<div class="col-12 col-sm-5 text-center py-2 order-sm-2">
|
||||
{{ with .Site.Params.copyright }}<small class="text-white">© {{ now.Year}} {{ .}} {{ "| Documentation Distributed under CC BY 4.0" }}</small>{{ end }}
|
||||
{{ with .Site.Params.privacy_policy }}<p><small class="ml-1"><a href="{{ . }}" target="_blank" rel="noopener">{{ T "footer_privacy_policy" }}</a></small></p>{{ end }}
|
||||
{{ if not .Site.Params.ui.footer_about_disable }}
|
||||
{{ with .Site.GetPage "about" }}<p class="mt-2"><a href="{{ .RelPermalink }}">{{ .Title }}</a></p>{{ end }}
|
||||
{{ end }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -30,7 +30,7 @@
|
|||
<ul class="list-inline mb-0">
|
||||
{{ range . }}
|
||||
<li class="list-inline-item mx-2 h3" data-toggle="tooltip" data-placement="top" title="{{ .name }}" aria-label="{{ .name }}">
|
||||
<a class="text-white" target="_blank" href="{{ .url }}">
|
||||
<a class="text-white" target="_blank" rel="noopener" href="{{ .url }}" aria-label="{{ .name }}">
|
||||
<i class="{{ .icon }}"></i>
|
||||
</a>
|
||||
</li>
|
||||
|
|
|
@ -1,46 +1,57 @@
|
|||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
{{ hugo.Generator }}
|
||||
{{- $outputFormat := partial "outputformat.html" . -}}
|
||||
|
||||
{{ range .AlternativeOutputFormats -}}
|
||||
<link rel="{{ .Rel }}" type="{{ .MediaType.Type }}" href="{{ .Permalink | safeURL }}">
|
||||
{{ end -}}
|
||||
|
||||
{{ if and (eq (getenv "HUGO_ENV") "production") (ne $outputFormat "print") -}}
|
||||
<META NAME="ROBOTS" CONTENT="INDEX, FOLLOW">
|
||||
{{ $outputFormat := partial "outputformat.html" . -}}
|
||||
{{ if and hugo.IsProduction (ne $outputFormat "print") -}}
|
||||
<meta name="robots" content="index, follow">
|
||||
{{ else -}}
|
||||
<META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">
|
||||
<meta name="robots" content="noindex, nofollow">
|
||||
{{ end -}}
|
||||
|
||||
<!-- include our custom Kubeflow "seo_schema" partial -->
|
||||
{{ partial "seo_schema" . }}
|
||||
|
||||
{{ partialCached "favicons.html" . }}
|
||||
<title>{{ if .IsHome }}{{ .Site.Title }}{{ else }}{{ with .Title }}{{ . }} | {{ end }}{{ .Site.Title }}{{ end }}</title>
|
||||
<meta name="description" content="{{ .Site.Params.Description }}">
|
||||
{{- template "_internal/opengraph.html" . -}}
|
||||
{{- template "_internal/google_news.html" . -}}
|
||||
{{- template "_internal/schema.html" . -}}
|
||||
{{- template "_internal/twitter_cards.html" . -}}
|
||||
|
||||
{{ partialCached "head-css.html" . "asdf" }}
|
||||
<title>
|
||||
{{- if .IsHome -}}
|
||||
{{ .Site.Title -}}
|
||||
{{ else -}}
|
||||
{{ with .Title }}{{ . }} | {{ end -}}
|
||||
{{ .Site.Title -}}
|
||||
{{ end -}}
|
||||
</title>
|
||||
{{ $desc := .Page.Description | default (.Page.Content | safeHTML | truncate 150) -}}
|
||||
<meta name="description" content="{{ $desc }}">
|
||||
{{ template "_internal/opengraph.html" . -}}
|
||||
{{ template "_internal/schema.html" . -}}
|
||||
{{ template "_internal/twitter_cards.html" . -}}
|
||||
{{ partialCached "head-css.html" . "asdf" -}}
|
||||
<script
|
||||
src="https://code.jquery.com/jquery-3.5.1.min.js"
|
||||
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
|
||||
crossorigin="anonymous"></script>
|
||||
{{ if .Site.Params.offlineSearch }}
|
||||
{{ if .Site.Params.offlineSearch -}}
|
||||
<script
|
||||
src="https://unpkg.com/lunr@2.3.8/lunr.min.js"
|
||||
integrity="sha384-vRQ9bDyE0Wnu+lMfm57BlYLO0/XauFuKpVsZPs7KEDwYKktWi5+Kz3MP8++DFlRY"
|
||||
crossorigin="anonymous"></script>
|
||||
{{end}}
|
||||
{{ if .Site.Params.prism_syntax_highlighting }}
|
||||
<!-- stylesheet for Prism -->
|
||||
{{ end -}}
|
||||
|
||||
{{ if .Site.Params.prism_syntax_highlighting -}}
|
||||
<link rel="stylesheet" href="{{ "/css/prism.css" | relURL }}"/>
|
||||
{{ end }}
|
||||
{{ partial "hooks/head-end.html" . }}
|
||||
<!--To comply with GDPR, cookie consent scripts places in head-end must execute before Google Analytics is enabled -->
|
||||
{{ if eq (getenv "HUGO_ENV") "production" }}
|
||||
{{ template "_internal/google_analytics_async.html" . }}
|
||||
{{ end }}
|
||||
{{ end -}}
|
||||
|
||||
{{ partial "hooks/head-end.html" . -}}
|
||||
|
||||
{{/* To comply with GDPR, cookie consent scripts places in head-end must execute before Google Analytics is enabled */ -}}
|
||||
{{ if hugo.IsProduction -}}
|
||||
{{ if hasPrefix .Site.GoogleAnalytics "G-" -}}
|
||||
{{ template "_internal/google_analytics.html" . -}}
|
||||
{{ else -}}
|
||||
{{ template "_internal/google_analytics_async.html" . -}}
|
||||
{{ end -}}
|
||||
{{ end -}}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{{ $cover := .HasShortcode "blocks/cover" }}
|
||||
<nav class="js-navbar-scroll navbar navbar-expand-md navbar-dark {{ if $cover}} td-navbar-cover {{ end }} td-navbar py-2">
|
||||
<a class="navbar-brand" href="{{ .Site.Home.RelPermalink }}">
|
||||
<span class="navbar-logo">{{ with resources.Get "icons/logo.svg" }}{{ ( . | minify).Content | safeHTML }} {{ end }}</span><span class="brand-name text-uppercase font-weight-bold">{{ .Site.Title }}</span>
|
||||
{{ $cover := and (.HasShortcode "blocks/cover") (not .Site.Params.ui.navbar_translucent_over_cover_disable) }}
|
||||
<nav class="js-navbar-scroll navbar navbar-expand-md navbar-dark {{ if $cover}} td-navbar-cover {{ end }} td-navbar">
|
||||
<a class="navbar-brand" href="{{ .Site.Home.RelPermalink }}">
|
||||
<span class="navbar-logo">{{ if .Site.Params.ui.navbar_logo }}{{ with resources.Get "icons/logo.svg" }}{{ ( . | minify).Content | safeHTML }}{{ end }}{{ end }}</span><span class="text-uppercase font-weight-bold">{{ .Site.Title }}</span>
|
||||
</a>
|
||||
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#main_navbar" aria-controls="main_navbar" aria-expanded="false" aria-label="Toggle navigation">
|
||||
<span class="navbar-toggler-icon"></span>
|
||||
|
@ -23,8 +23,8 @@
|
|||
</li>
|
||||
{{ end }}
|
||||
{{ if .Site.Params.versions }}
|
||||
<li class="nav-item dropdown mt-1 mt-lg-0 mr-2">
|
||||
{{ partial "navbar-version-selector.html" . }}
|
||||
<li class="nav-item dropdown mt-1 mt-lg-0 mr-2">
|
||||
{{ partial "navbar-version-selector.html" . }}
|
||||
</li>
|
||||
{{ end }}
|
||||
{{ if (gt (len .Site.Home.Translations) 0) }}
|
||||
|
@ -34,5 +34,4 @@
|
|||
{{ end }}
|
||||
</ul>
|
||||
</div>
|
||||
<div class="navbar-nav d-none d-lg-block">{{ partial "search-input.html" . }}</div>
|
||||
</nav>
|
||||
|
|
|
@ -1,28 +0,0 @@
|
|||
{{ if .Path }}
|
||||
{{ $pathFormatted := replace .Path "\\" "/" }}
|
||||
{{ $gh_repo := ($.Param "github_repo") }}
|
||||
{{ $gh_subdir := ($.Param "github_subdir") }}
|
||||
{{ $gh_project_repo := ($.Param "github_project_repo") }}
|
||||
{{ $gh_branch := (default "master" ($.Param "github_branch")) }}
|
||||
{{ if $gh_repo }}
|
||||
<div class="td-page-meta ml-2 pb-1 pt-2 mb-0">
|
||||
{{ $editURL := printf "%s/edit/%s/content/%s" $gh_repo $gh_branch $pathFormatted }}
|
||||
{{ if and ($gh_subdir) (.Site.Language.Lang) }}
|
||||
{{ $editURL = printf "%s/edit/%s/%s/content/%s/%s" $gh_repo $gh_branch $gh_subdir ($.Site.Language.Lang) $pathFormatted }}
|
||||
{{ else if .Site.Language.Lang }}
|
||||
{{ $editURL = printf "%s/edit/%s/content/%s/%s" $gh_repo $gh_branch ($.Site.Language.Lang) $pathFormatted }}
|
||||
{{ else if $gh_subdir }}
|
||||
{{ $editURL = printf "%s/edit/%s/%s/content/%s" $gh_repo $gh_branch $gh_subdir $pathFormatted }}
|
||||
{{ end }}
|
||||
{{/* Kubeflow customization to add the page URL to the issue body. */}}
|
||||
{{$doc_url := printf "https://www.kubeflow.org%s" .URL }}
|
||||
{{ $issuesURL := printf "%s/issues/new?title=%s&body=%s" $gh_repo (htmlEscape $.Title) (htmlEscape $doc_url) }}
|
||||
<a href="{{ $editURL }}" target="_blank"><i class="fa fa-edit fa-fw"></i> {{ T "post_edit_this" }}</a>
|
||||
<a href="{{ $issuesURL }}" target="_blank"><i class="fab fa-github fa-fw"></i> {{ T "post_create_issue" }}</a>
|
||||
{{ if $gh_project_repo }}
|
||||
{{ $project_issueURL := printf "%s/issues/new/choose" $gh_project_repo }}
|
||||
<a href="{{ $project_issueURL }}" target="_blank"><i class="fas fa-tasks fa-fw"></i> {{ T "post_create_project_issue" }}</a>
|
||||
{{ end }}
|
||||
</div>
|
||||
{{ end }}
|
||||
{{ end }}
|
|
@ -1,66 +0,0 @@
|
|||
{{/* We cache this partial for bigger sites and set the active class client side. */}}
|
||||
{{ $sidebarCacheLimit := cond (isset .Site.Params.ui "sidebar_cache_limit") .Site.Params.ui.sidebar_cache_limit 2000 }}
|
||||
{{ $shouldDelayActive := ge (len .Site.Pages) $sidebarCacheLimit }}
|
||||
<div id="td-sidebar-menu" class="td-sidebar__inner{{ if $shouldDelayActive }} d-none{{ end }}">
|
||||
{{ if not .Site.Params.ui.sidebar_search_disable }}
|
||||
<form class="td-sidebar__search d-flex align-items-center">
|
||||
{{ partial "search-input.html" . }}
|
||||
<button class="btn btn-link td-sidebar__toggle d-md-none p-0 ml-3 fas fa-bars" type="button" data-toggle="collapse" data-target="#td-section-nav" aria-controls="td-docs-nav" aria-expanded="false" aria-label="Toggle section navigation">
|
||||
</button>
|
||||
</form>
|
||||
{{ else }}
|
||||
<div id="content-mobile">
|
||||
<form class="td-sidebar__search d-flex align-items-center pt-4 pt-lg-">
|
||||
{{ partial "search-input.html" . }}
|
||||
<button class="btn btn-link td-sidebar__toggle d-md-none p-0 ml-3 fas fa-bars" type="button" data-toggle="collapse" data-target="#td-section-nav" aria-controls="td-docs-nav" aria-expanded="false" aria-label="Toggle section navigation">
|
||||
</button>
|
||||
</form>
|
||||
</div>
|
||||
<div id="content-desktop"></div>
|
||||
{{ end }}
|
||||
<nav class="collapse td-sidebar-nav" id="td-section-nav">
|
||||
{{ if (gt (len .Site.Home.Translations) 0) }}
|
||||
<div class="nav-item dropdown d-block d-lg-none">
|
||||
{{ partial "navbar-lang-selector.html" . }}
|
||||
</div>
|
||||
{{ end }}
|
||||
{{ $navRoot := cond (and (ne .Params.toc_root true) (eq .Site.Home.Type "docs")) .Site.Home .FirstSection }}
|
||||
{{ $ulNr := 0 }}
|
||||
{{ $ulShow := cond (isset .Site.Params.ui "ul_show") .Site.Params.ui.ul_show 1 }}
|
||||
{{ $sidebarMenuTruncate := cond (isset .Site.Params.ui "sidebar_menu_truncate") .Site.Params.ui.sidebar_menu_truncate 50 }}
|
||||
<ul class="td-sidebar-nav__section pr-md-3 pt-lg-5 ul-{{ $ulNr }}">
|
||||
{{ template "section-tree-nav-section" (dict "page" . "section" $navRoot "shouldDelayActive" $shouldDelayActive "sidebarMenuTruncate" $sidebarMenuTruncate "ulNr" $ulNr "ulShow" (add $ulShow 1)) }}
|
||||
</ul>
|
||||
</nav>
|
||||
</div>
|
||||
{{ define "section-tree-nav-section" }}
|
||||
{{ $s := .section }}
|
||||
{{ $p := .page }}
|
||||
{{ $shouldDelayActive := .shouldDelayActive }}
|
||||
{{ $sidebarMenuTruncate := .sidebarMenuTruncate }}
|
||||
{{ $treeRoot := cond (eq .ulNr 0) true false }}
|
||||
{{ $ulNr := .ulNr }}
|
||||
{{ $ulShow := .ulShow }}
|
||||
{{ $active := and (not $shouldDelayActive) (eq $s $p) }}
|
||||
{{ $activePath := and (not $shouldDelayActive) ($p.IsDescendant $s) }}
|
||||
{{ $show := cond (or (lt $ulNr $ulShow) $activePath (and (not $shouldDelayActive) (eq $s.Parent $p.Parent)) (and (not $shouldDelayActive) (eq $s.Parent $p)) (not $p.Site.Params.ui.sidebar_menu_compact)) true false }}
|
||||
{{ $mid := printf "m-%s" ($s.RelPermalink | anchorize) }}
|
||||
{{ $pages_tmp := where (union $s.Pages $s.Sections).ByWeight ".Params.toc_hide" "!=" true }}
|
||||
{{ $pages := $pages_tmp | first $sidebarMenuTruncate }}
|
||||
{{ $withChild := gt (len $pages) 0 }}
|
||||
{{ $manualLink := cond (isset $s.Params "manuallink") $s.Params.manualLink ( cond (isset $s.Params "manuallinkrelref") (relref $s $s.Params.manualLinkRelref) $s.RelPermalink) }}
|
||||
{{ $manualLinkTitle := cond (isset $s.Params "manuallinktitle") $s.Params.manualLinkTitle $s.Title }}
|
||||
<li class="td-sidebar-nav__section-title td-sidebar-nav__section{{ if $withChild }} with-child{{ else }} without-child{{ end }}{{ if $activePath }} active-path{{ end }}{{ if not $show }} collapse{{ end }}" id="{{ $mid }}-li">
|
||||
<a href="{{ $manualLink }}"{{ if ne $s.LinkTitle $manualLinkTitle }} title="{{ $manualLinkTitle }}"{{ end }}{{ with $s.Params.manualLinkTarget }} target="{{ . }}"{{ if eq . "_blank" }} rel="noopener"{{ end }}{{ end }} class="align-left pl-0 pr-2{{ if $active}} active{{ end }} td-sidebar-link{{ if $s.IsPage }} td-sidebar-link__page{{ else }} td-sidebar-link__section{{ end }}{{ if $treeRoot }} tree-root{{ end }}" id="{{ $mid }}">{{ with $s.Params.Icon}}<i class="{{ . }}"></i>{{ end }}<span class="{{ if $active }}td-sidebar-nav-active-item{{ end }}">{{ $s.LinkTitle }}</span></a>
|
||||
{{if $withChild }}
|
||||
{{ $ulNr := add $ulNr 1 }}
|
||||
<ul class="pr-md-3 ul-{{ $ulNr }}">
|
||||
{{ range $pages }}
|
||||
{{ if (not (and (eq $s $p.Site.Home) (eq .Params.toc_root true))) }}
|
||||
{{ template "section-tree-nav-section" (dict "page" $p "section" . "shouldDelayActive" $shouldDelayActive "sidebarMenuTruncate" $sidebarMenuTruncate "ulNr" $ulNr "ulShow" $ulShow) }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</ul>
|
||||
{{ end }}
|
||||
</li>
|
||||
{{ end }}
|
11
netlify.toml
11
netlify.toml
|
@ -1,13 +1,16 @@
|
|||
[build]
|
||||
publish = "public"
|
||||
command = "hugo"
|
||||
command = "git submodule update --init --recursive && hugo --gc --minify"
|
||||
|
||||
[context.deploy-preview.environment]
|
||||
HUGO_VERSION = "0.89.2"
|
||||
HUGO_VERSION = "0.89.4"
|
||||
NODE_VERSION = "16"
|
||||
|
||||
[context.production.environment]
|
||||
HUGO_VERSION = "0.89.2"
|
||||
HUGO_VERSION = "0.89.4"
|
||||
HUGO_ENV = "production"
|
||||
NODE_VERSION = "16"
|
||||
|
||||
[context.branch-deploy.environment]
|
||||
HUGO_VERSION = "0.89.2"
|
||||
HUGO_VERSION = "0.89.4"
|
||||
NODE_VERSION = "16"
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,8 @@
|
|||
{
|
||||
"name": "website",
|
||||
"devDependencies": {
|
||||
"autoprefixer": "^10.4.0",
|
||||
"postcss": "^8.4.1",
|
||||
"postcss-cli": "^9.0.2"
|
||||
}
|
||||
}
|
File diff suppressed because one or more lines are too long
|
@ -1 +0,0 @@
|
|||
{"Target":"scss/main.min.797772673f37ce78a15938bdbdda7696d357de982f66b9cc958277c685d6da4d.css","MediaType":"text/css","Data":{"Integrity":"sha256-eXdyZz83znihWTi9vdp2ltNX3pgvZrnMlYJ3xoXW2k0="}}
|
Binary file not shown.
Before Width: | Height: | Size: 136 KiB |
Binary file not shown.
Before Width: | Height: | Size: 49 KiB |
|
@ -0,0 +1 @@
|
|||
Subproject commit 3ae94a0573a8c14f61c832b6e7fdcc46af62187c
|
|
@ -1,10 +0,0 @@
|
|||
# Editor configuration, see https://editorconfig.org
|
||||
|
||||
root = true
|
||||
|
||||
# All files
|
||||
[*]
|
||||
charset = utf-8
|
||||
end_of_line = lf
|
||||
insert_final_newline = true
|
||||
trim_trailing_whitespace = true
|
|
@ -1,9 +0,0 @@
|
|||
|
||||
public/
|
||||
resources/
|
||||
node_modules/
|
||||
tech-doc-hugo
|
||||
|
||||
# vim temporary files
|
||||
*~
|
||||
*.sw?
|
|
@ -1,6 +0,0 @@
|
|||
[submodule "assets/vendor/bootstrap"]
|
||||
path = assets/vendor/bootstrap
|
||||
url = https://github.com/twbs/bootstrap.git
|
||||
[submodule "assets/vendor/Font-Awesome"]
|
||||
path = assets/vendor/Font-Awesome
|
||||
url = https://github.com/FortAwesome/Font-Awesome.git
|
|
@ -1,5 +0,0 @@
|
|||
{
|
||||
"semi": true,
|
||||
"singleQuote": true,
|
||||
"tabWidth": 4
|
||||
}
|
|
@ -1,14 +0,0 @@
|
|||
routes:
|
||||
- route: "^.+\\.(js|css|svg|ttf)$"
|
||||
# cache static assets for 20 years
|
||||
headers:
|
||||
Cache-Control: "max-age=630720000, no-transform, public"
|
||||
gzip: true
|
||||
- route: "^.+\\.(png|jpg)$"
|
||||
headers:
|
||||
Cache-Control: "max-age=630720000, no-transform, public"
|
||||
gzip: true
|
||||
- route: "^.+\\.(html|xml|json)$"
|
||||
gzip: true
|
||||
|
||||
|
|
@ -1,34 +0,0 @@
|
|||
# How to Contribute
|
||||
|
||||
We'd love to accept your patches and contributions to this project. There are
|
||||
just a few small guidelines you need to follow.
|
||||
|
||||
## Contributor License Agreement
|
||||
|
||||
Contributions to this project must be accompanied by a Contributor License
|
||||
Agreement. You (or your employer) retain the copyright to your contribution;
|
||||
this simply gives us permission to use and redistribute your contributions as
|
||||
part of the project. Head over to <https://cla.developers.google.com/> to see
|
||||
your current agreements on file or to sign a new one.
|
||||
|
||||
You generally only need to submit a CLA once, so if you've already submitted one
|
||||
(even if it was for a different project), you probably don't need to do it
|
||||
again.
|
||||
|
||||
## Code reviews
|
||||
|
||||
All submissions, including submissions by project members, require review. We
|
||||
use GitHub pull requests for this purpose. Consult
|
||||
[GitHub Help](https://help.github.com/articles/about-pull-requests/) for more
|
||||
information on using pull requests.
|
||||
|
||||
## Community Guidelines
|
||||
|
||||
This project follows
|
||||
[Google's Open Source Community Guidelines](https://opensource.google.com/conduct/).
|
||||
|
||||
## How to contribute
|
||||
|
||||
See the [contribution
|
||||
guidelines](https://www.docsy.dev/docs/contribution-guidelines/)
|
||||
in the Docsy user guide.
|
|
@ -1,201 +0,0 @@
|
|||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright [yyyy] [name of copyright owner]
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
|
@ -1,59 +0,0 @@
|
|||
# Docsy
|
||||
|
||||
Docsy is a [Hugo](https://gohugo.io/) theme for technical documentation sets, providing simple navigation, site structure, and more.
|
||||
|
||||
This is not an officially supported Google product. This project is actively being maintained.
|
||||
|
||||
## Prerequisites
|
||||
|
||||
The following are basic prerequisites for using Docsy in your site:
|
||||
|
||||
- Install a recent release of the Hugo "extended" version (we recommend version 0.53 or later). If you install from the
|
||||
[release page](https://github.com/gohugoio/hugo/releases), make sure you download the `_extended` version
|
||||
which supports SCSS.
|
||||
|
||||
- Install `PostCSS` so that the site build can create the final CSS assets. You can install it locally by running
|
||||
the following commands from the root directory of your project:
|
||||
|
||||
```
|
||||
sudo npm install -D --save autoprefixer
|
||||
sudo npm install -D --save postcss-cli
|
||||
```
|
||||
|
||||
## Example and usage
|
||||
|
||||
You can find an example project that uses Docsy in the [Docsy Example Project repo](https://github.com/google/docsy-example).The Docsy Example Project is hosted at [https://example.docsy.dev/](https://example.docsy.dev/). For real-life examples of sites that use Docsy (and their source repos), see our [Examples](https://www.docsy.dev/docs/examples/) page.
|
||||
|
||||
To use the Docsy theme for your own site:
|
||||
|
||||
- (Recommended) Use the [example project](https://github.com/google/docsy-example),
|
||||
which includes the Docsy theme as a submodule, as a template to create your project.
|
||||
You can customize this pre-configured basic site into your own Docsy themed site.
|
||||
[Learn more...](https://github.com/google/docsy-example)
|
||||
|
||||
- Add Docsy to your existing Hugo site repo's `themes` directory. You can either add Docsy as a Git submodule, or
|
||||
clone the Docsy theme into your project.
|
||||
|
||||
See the [Docsy Getting Started Guide](https://docsy.dev/docs/getting-started/) for
|
||||
details about the various usage options.
|
||||
|
||||
## Documentation
|
||||
|
||||
Docsy has its own user guide (using Docsy, of course!) with lots more information about using the theme, which you can find at [https://docsy.dev/](https://docsy.dev/). Alternatively you can use Hugo to generate and serve a local copy of the guide (also useful for testing local theme changes), making sure you have installed all the prerequisites listed above:
|
||||
|
||||
```
|
||||
git clone --recurse-submodules --depth 1 https://github.com/google/docsy.git
|
||||
cd docsy/userguide/
|
||||
hugo server --themesDir ../..
|
||||
```
|
||||
|
||||
Note: you need the `themesDir` flag when running Hugo because the site files are inside the theme repo.
|
||||
|
||||
## Contributing 
|
||||
|
||||
Please read [CONTRIBUTING.md](https://github.com/google/docsy/blob/master/CONTRIBUTING.md) for details on our code of conduct, and the process for submitting pull requests to us.
|
||||
See also the list of [contributors](https://github.com/google/docsy/graphs/contributors) who participated in this project.
|
||||
|
||||
## License 
|
||||
|
||||
This project is licensed under the Apache License 2.0 - see the [LICENSE.md](https://github.com/google/docsy/blob/master/LICENSE) file for details
|
Binary file not shown.
Before Width: | Height: | Size: 52 KiB |
|
@ -1,237 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 23.0.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 500 500" style="enable-background:new 0 0 500 500;" xml:space="preserve">
|
||||
<g>
|
||||
<path style="fill:#FFFFFF;" d="M116.8525,421.9722c-5.7041,0-10.3442-4.3127-10.3442-9.6129V88.183
|
||||
c0-5.3002,4.6401-9.6117,10.3442-9.6117H320.858c3.0347,0,9.3959,0.5498,11.7506,2.6302l0.3545,0.3442l58.905,63.2912
|
||||
c2.3101,2.491,2.9202,8.4928,2.9202,11.3184v256.2039c0,5.3002-4.6407,9.6129-10.3436,9.6129H116.8525z"/>
|
||||
<g>
|
||||
<g>
|
||||
<g>
|
||||
<path style="fill:#767676;" d="M384.4445,423.2066H116.852c-6.3839,0-11.5786-4.8658-11.5786-10.8474V88.1831
|
||||
c0-5.9804,5.1947-10.8461,11.5786-10.8461h204.0062c0.377,0,9.2786,0.0329,12.568,2.9389l0.3947,0.3833l58.9508,63.337
|
||||
c3.2135,3.4652,3.2514,11.7924,3.2514,12.1593v256.2036C396.0231,418.3408,390.8284,423.2066,384.4445,423.2066z
|
||||
M116.5079,411.9189c0.0848,0.0278,0.1999,0.0531,0.3441,0.0531h267.5925c0.1442,0,0.2581-0.0253,0.3441-0.0531V156.1556
|
||||
c-0.0076-0.9033-0.3593-3.7347-0.7034-5.0037l-57.6527-61.9416c-1.4651-0.3176-4.4533-0.6389-5.5742-0.6389H116.852
|
||||
c-0.143,0-0.2594,0.024-0.3441,0.0531V411.9189z M383.9612,150.7699L383.9612,150.7699L383.9612,150.7699z M327.0321,89.371
|
||||
v0.0013V89.371z"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<g>
|
||||
<path style="fill:#5B7FC0;" d="M189.0874,210.1754l0.0012-0.0012c7.7751,0.0012,15.0295,4.1862,18.932,10.9234
|
||||
c1.9177,3.3159,2.9305,7.1011,2.9293,10.9378c0,5.8394-2.2733,11.3304-6.4032,15.4604
|
||||
c-4.1288,4.1288-9.6186,6.4032-15.458,6.4032c-5.8394,0-11.328-2.2733-15.458-6.4032s-6.4032-9.6186-6.4056-15.4628
|
||||
c0.0012-6.025,2.454-11.4897,6.4116-15.4473C177.5953,212.627,183.0601,210.1742,189.0874,210.1754z M197.0804,232.033
|
||||
c0.0012-1.4042-0.3687-2.7868-1.063-3.9887c-1.4293-2.4684-4.0833-3.9995-6.9299-4.0019c-4.4077,0.0024-7.993,3.5877-7.993,7.993
|
||||
c0,2.1356,0.832,4.1431,2.3427,5.6539c1.5083,1.5083,3.5159,2.3403,5.6503,2.3415c2.1356,0,4.1443-0.8308,5.6539-2.3403
|
||||
S197.0816,234.1722,197.0804,232.033z"/>
|
||||
<path style="opacity:0.3;fill:#FFFFFF;" d="M189.0898,210.176c7.7763,0,15.0283,4.1826,18.926,10.9151
|
||||
c1.9201,3.3136,2.9377,7.0988,2.9353,10.9462c0.0024,12.0643-9.8065,21.8636-21.8613,21.8613
|
||||
c-12.0547,0.0024-21.8636-9.8066-21.8612-21.8613c0-6.0285,2.4516-11.4921,6.4116-15.452
|
||||
C177.5977,212.6276,183.0612,210.176,189.0898,210.176z M197.0839,232.0372c0-1.4078-0.3711-2.7892-1.0702-3.9959
|
||||
c-1.4269-2.466-4.0797-3.9983-6.924-3.9983c-4.4005-0.0048-7.9918,3.5817-7.9942,7.9942
|
||||
c0.0024,4.4077,3.5865,7.9918,7.9942,7.9942c2.2027,0,4.2018-0.8978,5.6479-2.3439
|
||||
C196.1861,236.239,197.0839,234.2399,197.0839,232.0372z"/>
|
||||
<g>
|
||||
<defs>
|
||||
<path id="SVGID_1_" d="M194.7376,237.6875c-1.4461,1.4461-3.4452,2.3439-5.6479,2.3439
|
||||
c-4.4077-0.0024-7.9918-3.5865-7.9942-7.9942c0.0024-4.4125,3.5937-7.999,7.9942-7.9942c2.8443,0,5.497,1.5323,6.924,3.9983
|
||||
c0.6991,1.2067,1.0702,2.5881,1.0702,3.9959C197.0839,234.2399,196.1861,236.239,194.7376,237.6875z"/>
|
||||
</defs>
|
||||
<clipPath id="SVGID_2_">
|
||||
<use xlink:href="#SVGID_1_" style="overflow:visible;"/>
|
||||
</clipPath>
|
||||
<path style="clip-path:url(#SVGID_2_);fill:#FFFFFF;" d="M190.0704,225.0237c-4.4005-0.0048-7.9918,3.5817-7.9942,7.9942
|
||||
c0.0011,1.9546,0.7088,3.7452,1.8782,5.1354c-1.7447-1.4674-2.8575-3.663-2.8588-6.116
|
||||
c0.0024-4.4125,3.5936-7.999,7.9942-7.9942c2.3802-0.0001,4.616,1.0833,6.1218,2.8788
|
||||
C193.7885,225.7247,191.9774,225.0237,190.0704,225.0237z"/>
|
||||
<path style="opacity:0.13;clip-path:url(#SVGID_2_);fill:#020202;" d="M190.0704,225.0237
|
||||
c-4.4005-0.0048-7.9918,3.5817-7.9942,7.9942c0.0011,1.9546,0.7088,3.7452,1.8782,5.1354
|
||||
c-1.7447-1.4674-2.8575-3.663-2.8588-6.116c0.0024-4.4125,3.5936-7.999,7.9942-7.9942c2.3802-0.0001,4.616,1.0833,6.1218,2.8788
|
||||
C193.7885,225.7247,191.9774,225.0237,190.0704,225.0237z"/>
|
||||
</g>
|
||||
<g>
|
||||
<defs>
|
||||
<path id="SVGID_3_" d="M189.0898,210.176c7.7763,0,15.0283,4.1826,18.926,10.9151c1.9201,3.3136,2.9377,7.0988,2.9353,10.9462
|
||||
c0.0024,12.0643-9.8065,21.8636-21.8613,21.8613c-12.0547,0.0024-21.8636-9.8066-21.8612-21.8613
|
||||
c0-6.0285,2.4516-11.4921,6.4116-15.452C177.5977,212.6276,183.0612,210.176,189.0898,210.176z M197.0839,232.0372
|
||||
c0-1.4078-0.3711-2.7892-1.0702-3.9959c-1.4269-2.466-4.0797-3.9983-6.924-3.9983c-4.4005-0.0048-7.9918,3.5817-7.9942,7.9942
|
||||
c0.0024,4.4077,3.5865,7.9918,7.9942,7.9942c2.2027,0,4.2018-0.8978,5.6479-2.3439
|
||||
C196.1861,236.239,197.0839,234.2399,197.0839,232.0372z"/>
|
||||
</defs>
|
||||
<clipPath id="SVGID_4_">
|
||||
<use xlink:href="#SVGID_3_" style="overflow:visible;"/>
|
||||
</clipPath>
|
||||
<path style="clip-path:url(#SVGID_4_);fill:#5B7FC0;" d="M172.6595,215.6045c-3.96,3.96-6.4116,9.4235-6.4116,15.452
|
||||
c-0.0024,12.0547,9.8066,21.8636,21.8613,21.8612c12.0547,0.0024,21.8636-9.797,21.8613-21.8612
|
||||
c0.0024-3.8475-1.0151-7.6326-2.9353-10.9462c-3.8977-6.7324-11.1497-10.9151-18.926-10.9151
|
||||
C182.0806,209.1953,176.6171,211.647,172.6595,215.6045z"/>
|
||||
</g>
|
||||
</g>
|
||||
<rect x="198.8952" y="225.1043" style="fill:#5B7FC0;" width="122.6266" height="13.8671"/>
|
||||
</g>
|
||||
<g>
|
||||
<path style="fill:#D95140;" d="M189.0874,155.7611l0.0012-0.0012c7.7751,0.0012,15.0295,4.1862,18.932,10.9234
|
||||
c1.9177,3.3159,2.9305,7.1011,2.9293,10.9378c0,5.8394-2.2733,11.3304-6.4032,15.4604c-4.1288,4.1288-9.6186,6.4032-15.458,6.4032
|
||||
c-5.8394,0-11.328-2.2733-15.458-6.4032s-6.4032-9.6186-6.4056-15.4628c0.0012-6.0249,2.454-11.4897,6.4116-15.4473
|
||||
C177.5953,158.2128,183.0601,155.7599,189.0874,155.7611z M197.0804,177.6188c0.0012-1.4042-0.3687-2.7868-1.063-3.9887
|
||||
c-1.4293-2.4684-4.0833-3.9995-6.9299-4.0019c-4.4077,0.0024-7.993,3.5877-7.993,7.993c0,2.1356,0.832,4.1431,2.3427,5.6539
|
||||
c1.5083,1.5083,3.5159,2.3403,5.6503,2.3415c2.1356,0,4.1443-0.8308,5.6539-2.3403
|
||||
C196.2508,181.7667,197.0816,179.758,197.0804,177.6188z"/>
|
||||
<path style="opacity:0.3;fill:#FFFFFF;" d="M189.0898,155.7617c7.7763,0,15.0283,4.1826,18.926,10.9151
|
||||
c1.9201,3.3135,2.9377,7.0987,2.9353,10.9462c0.0024,12.0643-9.8065,21.8636-21.8613,21.8613
|
||||
c-12.0547,0.0024-21.8636-9.8066-21.8612-21.8613c0-6.0285,2.4516-11.4921,6.4116-15.452
|
||||
C177.5977,158.2134,183.0612,155.7617,189.0898,155.7617z M197.0839,177.623c0-1.4078-0.3711-2.7892-1.0702-3.9959
|
||||
c-1.4269-2.466-4.0797-3.9983-6.924-3.9983c-4.4005-0.0048-7.9918,3.5817-7.9942,7.9942
|
||||
c0.0024,4.4077,3.5865,7.9918,7.9942,7.9942c2.2027,0,4.2018-0.8978,5.6479-2.3439
|
||||
C196.1861,181.8248,197.0839,179.8256,197.0839,177.623z"/>
|
||||
<g>
|
||||
<defs>
|
||||
<path id="SVGID_5_" d="M194.7376,183.2733c-1.4461,1.4461-3.4452,2.3439-5.6479,2.3439
|
||||
c-4.4077-0.0024-7.9918-3.5865-7.9942-7.9942c0.0024-4.4125,3.5937-7.9989,7.9942-7.9942c2.8443,0,5.497,1.5323,6.924,3.9983
|
||||
c0.6991,1.2067,1.0702,2.5881,1.0702,3.9959C197.0839,179.8256,196.1861,181.8248,194.7376,183.2733z"/>
|
||||
</defs>
|
||||
<clipPath id="SVGID_6_">
|
||||
<use xlink:href="#SVGID_5_" style="overflow:visible;"/>
|
||||
</clipPath>
|
||||
<path style="clip-path:url(#SVGID_6_);fill:#FFFFFF;" d="M190.0704,170.6095c-4.4005-0.0048-7.9918,3.5817-7.9942,7.9942
|
||||
c0.0011,1.9546,0.7088,3.7452,1.8782,5.1354c-1.7447-1.4674-2.8575-3.663-2.8588-6.116c0.0024-4.4125,3.5936-7.999,7.9942-7.9942
|
||||
c2.3802-0.0001,4.616,1.0833,6.1218,2.8788C193.7885,171.3104,191.9774,170.6095,190.0704,170.6095z"/>
|
||||
<path style="opacity:0.13;clip-path:url(#SVGID_6_);fill:#020202;" d="M190.0704,170.6095
|
||||
c-4.4005-0.0048-7.9918,3.5817-7.9942,7.9942c0.0011,1.9546,0.7088,3.7452,1.8782,5.1354
|
||||
c-1.7447-1.4674-2.8575-3.663-2.8588-6.116c0.0024-4.4125,3.5936-7.999,7.9942-7.9942c2.3802-0.0001,4.616,1.0833,6.1218,2.8788
|
||||
C193.7885,171.3104,191.9774,170.6095,190.0704,170.6095z"/>
|
||||
</g>
|
||||
<g>
|
||||
<defs>
|
||||
<path id="SVGID_7_" d="M189.0898,155.7617c7.7763,0,15.0283,4.1826,18.926,10.9151c1.9201,3.3135,2.9377,7.0987,2.9353,10.9462
|
||||
c0.0024,12.0643-9.8065,21.8636-21.8613,21.8613c-12.0547,0.0024-21.8636-9.8066-21.8612-21.8613
|
||||
c0-6.0285,2.4516-11.4921,6.4116-15.452C177.5977,158.2134,183.0612,155.7617,189.0898,155.7617z M197.0839,177.623
|
||||
c0-1.4078-0.3711-2.7892-1.0702-3.9959c-1.4269-2.466-4.0797-3.9983-6.924-3.9983c-4.4005-0.0048-7.9918,3.5817-7.9942,7.9942
|
||||
c0.0024,4.4077,3.5865,7.9918,7.9942,7.9942c2.2027,0,4.2018-0.8978,5.6479-2.3439
|
||||
C196.1861,181.8248,197.0839,179.8256,197.0839,177.623z"/>
|
||||
</defs>
|
||||
<clipPath id="SVGID_8_">
|
||||
<use xlink:href="#SVGID_7_" style="overflow:visible;"/>
|
||||
</clipPath>
|
||||
<path style="clip-path:url(#SVGID_8_);fill:#D95140;" d="M172.6595,161.1903c-3.96,3.96-6.4116,9.4235-6.4116,15.452
|
||||
c-0.0024,12.0547,9.8066,21.8636,21.8613,21.8613c12.0547,0.0024,21.8636-9.797,21.8613-21.8613
|
||||
c0.0024-3.8474-1.0151-7.6326-2.9353-10.9462c-3.8977-6.7324-11.1497-10.9151-18.926-10.9151
|
||||
C182.0806,154.7811,176.6171,157.2327,172.6595,161.1903z"/>
|
||||
</g>
|
||||
<rect x="198.8952" y="170.69" style="fill:#D95140;" width="122.6266" height="13.8671"/>
|
||||
</g>
|
||||
<g>
|
||||
<g>
|
||||
<path style="fill:#56A55C;" d="M189.5379,264.6147l0.0012-0.0012c7.7751,0.0012,15.0294,4.1862,18.932,10.9235
|
||||
c1.9177,3.3159,2.9305,7.1011,2.9293,10.9378c0,5.8394-2.2733,11.3304-6.4032,15.4604
|
||||
c-4.1288,4.1288-9.6186,6.4032-15.458,6.4032c-5.8394,0-11.3281-2.2733-15.458-6.4032c-4.13-4.13-6.4032-9.6186-6.4056-15.4628
|
||||
c0.0012-6.0249,2.454-11.4897,6.4116-15.4472C178.0458,267.0663,183.5105,264.6135,189.5379,264.6147z M197.5309,286.4723
|
||||
c0.0012-1.4042-0.3687-2.7868-1.063-3.9887c-1.4293-2.4684-4.0833-3.9995-6.9299-4.0019c-4.4077,0.0024-7.993,3.5877-7.993,7.993
|
||||
c0,2.1356,0.832,4.1431,2.3427,5.6538c1.5083,1.5083,3.5159,2.3403,5.6503,2.3415c2.1356,0,4.1443-0.8308,5.6539-2.3403
|
||||
C196.7013,290.6202,197.5321,288.6115,197.5309,286.4723z"/>
|
||||
<path style="opacity:0.3;fill:#FFFFFF;" d="M189.5403,264.6153c7.7763,0,15.0283,4.1826,18.926,10.9151
|
||||
c1.9201,3.3135,2.9377,7.0987,2.9353,10.9462c0.0024,12.0643-9.8065,21.8636-21.8613,21.8613
|
||||
c-12.0547,0.0024-21.8636-9.8065-21.8612-21.8613c0-6.0285,2.4516-11.492,6.4116-15.452
|
||||
C178.0482,267.0669,183.5117,264.6153,189.5403,264.6153z M197.5344,286.4765c0-1.4078-0.3711-2.7892-1.0702-3.9959
|
||||
c-1.4269-2.466-4.0797-3.9983-6.924-3.9983c-4.4005-0.0048-7.9918,3.5817-7.9942,7.9941
|
||||
c0.0024,4.4077,3.5865,7.9918,7.9942,7.9942c2.2027,0,4.2018-0.8978,5.6479-2.3439
|
||||
C196.6366,290.6783,197.5344,288.6792,197.5344,286.4765z"/>
|
||||
<g>
|
||||
<defs>
|
||||
<path id="SVGID_9_" d="M195.1881,292.1268c-1.4461,1.4461-3.4452,2.3439-5.6479,2.3439
|
||||
c-4.4077-0.0024-7.9918-3.5865-7.9942-7.9942c0.0024-4.4125,3.5937-7.9989,7.9942-7.9941c2.8443,0,5.497,1.5323,6.924,3.9983
|
||||
c0.6991,1.2067,1.0702,2.5881,1.0702,3.9959C197.5344,288.6792,196.6366,290.6783,195.1881,292.1268z"/>
|
||||
</defs>
|
||||
<clipPath id="SVGID_10_">
|
||||
<use xlink:href="#SVGID_9_" style="overflow:visible;"/>
|
||||
</clipPath>
|
||||
<path style="clip-path:url(#SVGID_10_);fill:#FFFFFF;" d="M190.5209,279.463c-4.4005-0.0048-7.9918,3.5817-7.9942,7.9941
|
||||
c0.0011,1.9547,0.7088,3.7452,1.8782,5.1354c-1.7446-1.4674-2.8575-3.6631-2.8588-6.1161
|
||||
c0.0024-4.4125,3.5936-7.999,7.9942-7.9941c2.3802-0.0001,4.616,1.0833,6.1218,2.8788
|
||||
C194.239,280.164,192.4279,279.463,190.5209,279.463z"/>
|
||||
<path style="opacity:0.13;clip-path:url(#SVGID_10_);fill:#020202;" d="M190.5209,279.463
|
||||
c-4.4005-0.0048-7.9918,3.5817-7.9942,7.9941c0.0011,1.9547,0.7088,3.7452,1.8782,5.1354
|
||||
c-1.7446-1.4674-2.8575-3.6631-2.8588-6.1161c0.0024-4.4125,3.5936-7.999,7.9942-7.9941
|
||||
c2.3802-0.0001,4.616,1.0833,6.1218,2.8788C194.239,280.164,192.4279,279.463,190.5209,279.463z"/>
|
||||
</g>
|
||||
<g>
|
||||
<defs>
|
||||
<path id="SVGID_11_" d="M189.5403,264.6153c7.7763,0,15.0283,4.1826,18.926,10.9151
|
||||
c1.9201,3.3135,2.9377,7.0987,2.9353,10.9462c0.0024,12.0643-9.8065,21.8636-21.8613,21.8613
|
||||
c-12.0547,0.0024-21.8636-9.8065-21.8612-21.8613c0-6.0285,2.4516-11.492,6.4116-15.452
|
||||
C178.0482,267.0669,183.5117,264.6153,189.5403,264.6153z M197.5344,286.4765c0-1.4078-0.3711-2.7892-1.0702-3.9959
|
||||
c-1.4269-2.466-4.0797-3.9983-6.924-3.9983c-4.4005-0.0048-7.9918,3.5817-7.9942,7.9941
|
||||
c0.0024,4.4077,3.5865,7.9918,7.9942,7.9942c2.2027,0,4.2018-0.8978,5.6479-2.3439
|
||||
C196.6366,290.6783,197.5344,288.6792,197.5344,286.4765z"/>
|
||||
</defs>
|
||||
<clipPath id="SVGID_12_">
|
||||
<use xlink:href="#SVGID_11_" style="overflow:visible;"/>
|
||||
</clipPath>
|
||||
<path style="clip-path:url(#SVGID_12_);fill:#56A55C;" d="M173.11,270.0439c-3.96,3.96-6.4116,9.4235-6.4116,15.452
|
||||
c-0.0024,12.0547,9.8066,21.8636,21.8613,21.8613c12.0547,0.0024,21.8636-9.797,21.8613-21.8613
|
||||
c0.0024-3.8474-1.0151-7.6326-2.9353-10.9462c-3.8977-6.7325-11.1497-10.9151-18.926-10.9151
|
||||
C182.5311,263.6346,177.0676,266.0863,173.11,270.0439z"/>
|
||||
</g>
|
||||
</g>
|
||||
<rect x="199.3456" y="279.5436" style="fill:#56A55C;" width="122.6266" height="13.8671"/>
|
||||
</g>
|
||||
<g>
|
||||
<g>
|
||||
<path style="fill:#F1BC42;" d="M189.0874,318.7208l0.0012-0.0012c7.7751,0.0012,15.0295,4.1862,18.932,10.9234
|
||||
c1.9177,3.3159,2.9305,7.1011,2.9293,10.9378c0,5.8394-2.2733,11.3305-6.4032,15.4604
|
||||
c-4.1288,4.1288-9.6186,6.4032-15.458,6.4032c-5.8394,0-11.328-2.2733-15.458-6.4032c-4.13-4.1299-6.4032-9.6186-6.4056-15.4628
|
||||
c0.0012-6.025,2.454-11.4897,6.4116-15.4472C177.5953,321.1724,183.0601,318.7196,189.0874,318.7208z M197.0804,340.5784
|
||||
c0.0012-1.4042-0.3687-2.7868-1.063-3.9887c-1.4293-2.4684-4.0833-3.9995-6.9299-4.0019c-4.4077,0.0024-7.993,3.5877-7.993,7.993
|
||||
c0,2.1356,0.832,4.1431,2.3427,5.6539c1.5083,1.5083,3.5159,2.3403,5.6503,2.3415c2.1356,0,4.1443-0.8308,5.6539-2.3403
|
||||
S197.0816,342.7176,197.0804,340.5784z"/>
|
||||
<path style="opacity:0.3;fill:#FFFFFF;" d="M189.0898,318.7214c7.7763,0,15.0283,4.1826,18.926,10.915
|
||||
c1.9201,3.3136,2.9377,7.0988,2.9353,10.9462c0.0024,12.0643-9.8065,21.8636-21.8613,21.8612
|
||||
c-12.0547,0.0024-21.8636-9.8065-21.8612-21.8612c0-6.0285,2.4516-11.4921,6.4116-15.452
|
||||
C177.5977,321.173,183.0612,318.7214,189.0898,318.7214z M197.0839,340.5826c0-1.4078-0.3711-2.7892-1.0702-3.9959
|
||||
c-1.4269-2.466-4.0797-3.9983-6.924-3.9983c-4.4005-0.0048-7.9918,3.5817-7.9942,7.9942
|
||||
c0.0024,4.4077,3.5865,7.9918,7.9942,7.9942c2.2027,0,4.2018-0.8978,5.6479-2.3439
|
||||
C196.1861,344.7844,197.0839,342.7853,197.0839,340.5826z"/>
|
||||
<g>
|
||||
<defs>
|
||||
<path id="SVGID_13_" d="M194.7376,346.2329c-1.4461,1.4461-3.4452,2.3439-5.6479,2.3439
|
||||
c-4.4077-0.0024-7.9918-3.5865-7.9942-7.9942c0.0024-4.4125,3.5937-7.999,7.9942-7.9942c2.8443,0,5.497,1.5323,6.924,3.9983
|
||||
c0.6991,1.2067,1.0702,2.5881,1.0702,3.9959C197.0839,342.7853,196.1861,344.7844,194.7376,346.2329z"/>
|
||||
</defs>
|
||||
<clipPath id="SVGID_14_">
|
||||
<use xlink:href="#SVGID_13_" style="overflow:visible;"/>
|
||||
</clipPath>
|
||||
<path style="clip-path:url(#SVGID_14_);fill:#FFFFFF;" d="M190.0704,333.5691c-4.4005-0.0048-7.9918,3.5817-7.9942,7.9942
|
||||
c0.0011,1.9547,0.7088,3.7452,1.8782,5.1354c-1.7447-1.4674-2.8575-3.6631-2.8588-6.1161
|
||||
c0.0024-4.4125,3.5936-7.999,7.9942-7.9942c2.3802-0.0001,4.616,1.0834,6.1218,2.8788
|
||||
C193.7885,334.2701,191.9774,333.5691,190.0704,333.5691z"/>
|
||||
<path style="opacity:0.13;clip-path:url(#SVGID_14_);fill:#020202;" d="M190.0704,333.5691
|
||||
c-4.4005-0.0048-7.9918,3.5817-7.9942,7.9942c0.0011,1.9547,0.7088,3.7452,1.8782,5.1354
|
||||
c-1.7447-1.4674-2.8575-3.6631-2.8588-6.1161c0.0024-4.4125,3.5936-7.999,7.9942-7.9942
|
||||
c2.3802-0.0001,4.616,1.0834,6.1218,2.8788C193.7885,334.2701,191.9774,333.5691,190.0704,333.5691z"/>
|
||||
</g>
|
||||
<g>
|
||||
<defs>
|
||||
<path id="SVGID_15_" d="M189.0898,318.7214c7.7763,0,15.0283,4.1826,18.926,10.915c1.9201,3.3136,2.9377,7.0988,2.9353,10.9462
|
||||
c0.0024,12.0643-9.8065,21.8636-21.8613,21.8612c-12.0547,0.0024-21.8636-9.8065-21.8612-21.8612
|
||||
c0-6.0285,2.4516-11.4921,6.4116-15.452C177.5977,321.173,183.0612,318.7214,189.0898,318.7214z M197.0839,340.5826
|
||||
c0-1.4078-0.3711-2.7892-1.0702-3.9959c-1.4269-2.466-4.0797-3.9983-6.924-3.9983c-4.4005-0.0048-7.9918,3.5817-7.9942,7.9942
|
||||
c0.0024,4.4077,3.5865,7.9918,7.9942,7.9942c2.2027,0,4.2018-0.8978,5.6479-2.3439
|
||||
C196.1861,344.7844,197.0839,342.7853,197.0839,340.5826z"/>
|
||||
</defs>
|
||||
<clipPath id="SVGID_16_">
|
||||
<use xlink:href="#SVGID_15_" style="overflow:visible;"/>
|
||||
</clipPath>
|
||||
<path style="clip-path:url(#SVGID_16_);fill:#F1BC42;" d="M172.6595,324.15c-3.96,3.96-6.4116,9.4235-6.4116,15.452
|
||||
c-0.0024,12.0547,9.8066,21.8636,21.8613,21.8612c12.0547,0.0024,21.8636-9.797,21.8613-21.8612
|
||||
c0.0024-3.8474-1.0151-7.6327-2.9353-10.9462c-3.8977-6.7324-11.1497-10.9151-18.926-10.9151
|
||||
C182.0806,317.7407,176.6171,320.1924,172.6595,324.15z"/>
|
||||
</g>
|
||||
</g>
|
||||
<rect x="198.8952" y="333.6497" style="fill:#F1BC42;" width="122.6266" height="13.8671"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 16 KiB |
|
@ -1,49 +0,0 @@
|
|||
/*
|
||||
* Copyright 2018 Google LLC
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
https://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
*/
|
||||
|
||||
(function ($) {
|
||||
'use strict';
|
||||
|
||||
// Headers' anchor link that shows on hover
|
||||
$(function () {
|
||||
// append anchor links to headings in markdown.
|
||||
var article = document.getElementsByTagName('main')[0];
|
||||
if (!article) {
|
||||
return;
|
||||
}
|
||||
var headings = article.querySelectorAll('h1, h2, h3, h4, h5, h6');
|
||||
headings.forEach(function (heading) {
|
||||
if (heading.id) {
|
||||
var a = document.createElement('a');
|
||||
// set visibility: hidden, not display: none to avoid layout change
|
||||
a.style.visibility = 'hidden';
|
||||
// [a11y] hide this from screen readers, etc..
|
||||
a.setAttribute('aria-hidden', 'true');
|
||||
// material insert_link icon in svg format
|
||||
a.innerHTML = ' <svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" width="24" height="24" viewBox="0 0 24 24"><path d="M0 0h24v24H0z" fill="none"/><path d="M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"/></svg>';
|
||||
a.href = '#' + heading.id;
|
||||
heading.insertAdjacentElement('beforeend', a);
|
||||
heading.addEventListener('mouseenter', function () {
|
||||
a.style.visibility = 'initial';
|
||||
});
|
||||
heading.addEventListener('mouseleave', function () {
|
||||
a.style.visibility = 'hidden';
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
}(jQuery));
|
|
@ -1,65 +0,0 @@
|
|||
/*
|
||||
* Copyright 2018 Google LLC
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
https://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
*/
|
||||
|
||||
(function($) {
|
||||
|
||||
'use strict';
|
||||
|
||||
$(function() {
|
||||
$('[data-toggle="tooltip"]').tooltip();
|
||||
$('[data-toggle="popover"]').popover();
|
||||
|
||||
$('.popover-dismiss').popover({
|
||||
trigger: 'focus'
|
||||
})
|
||||
});
|
||||
|
||||
|
||||
function bottomPos(element) {
|
||||
return element.offset().top + element.outerHeight();
|
||||
}
|
||||
|
||||
// Bootstrap Fixed Header
|
||||
$(function() {
|
||||
var promo = $(".js-td-cover");
|
||||
if (!promo.length) {
|
||||
return
|
||||
}
|
||||
|
||||
var promoOffset = bottomPos(promo);
|
||||
var navbarOffset = $('.js-navbar-scroll').offset().top;
|
||||
|
||||
var threshold = Math.ceil($('.js-navbar-scroll').outerHeight());
|
||||
if ((promoOffset - navbarOffset) < threshold) {
|
||||
$('.js-navbar-scroll').addClass('navbar-bg-onscroll');
|
||||
}
|
||||
|
||||
|
||||
$(window).on('scroll', function() {
|
||||
var navtop = $('.js-navbar-scroll').offset().top - $(window).scrollTop();
|
||||
var promoOffset = bottomPos($('.js-td-cover'));
|
||||
var navbarOffset = $('.js-navbar-scroll').offset().top;
|
||||
if ((promoOffset - navbarOffset) < threshold) {
|
||||
$('.js-navbar-scroll').addClass('navbar-bg-onscroll');
|
||||
} else {
|
||||
$('.js-navbar-scroll').removeClass('navbar-bg-onscroll');
|
||||
$('.js-navbar-scroll').addClass('navbar-bg-onscroll--fade');
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
}(jQuery));
|
|
@ -1,38 +0,0 @@
|
|||
{{ with .Site.Params.mermaid }}
|
||||
{{ if .enable }}
|
||||
(function($) {
|
||||
var needMermaid = false;
|
||||
$('.language-mermaid').parent().replaceWith(function() {
|
||||
needMermaid = true;
|
||||
return $('<pre class="mermaid">').text($(this).text());
|
||||
});
|
||||
|
||||
if (!needMermaid) {
|
||||
mermaid.initialize({startOnLoad: false});
|
||||
return;
|
||||
}
|
||||
|
||||
var params = {{ . | jsonify | safeJS }};
|
||||
|
||||
// site params are stored with lowercase keys; lookup correct casing
|
||||
// from Mermaid default config.
|
||||
var norm = function(defaultConfig, params) {
|
||||
var result = {};
|
||||
for (const key in defaultConfig) {
|
||||
const keyLower = key.toLowerCase();
|
||||
if (defaultConfig.hasOwnProperty(key) && params.hasOwnProperty(keyLower)) {
|
||||
if (typeof defaultConfig[key] === "object") {
|
||||
result[key] = norm(defaultConfig[key], params[keyLower]);
|
||||
} else {
|
||||
result[key] = params[keyLower];
|
||||
}
|
||||
}
|
||||
}
|
||||
return result;
|
||||
};
|
||||
var settings = norm(mermaid.mermaidAPI.defaultConfig, params);
|
||||
settings.startOnLoad = true;
|
||||
mermaid.initialize(settings);
|
||||
})(jQuery);
|
||||
{{ end }}
|
||||
{{ end }}
|
|
@ -1,201 +0,0 @@
|
|||
// Adapted from code by Matt Walters https://www.mattwalters.net/posts/hugo-and-lunr/
|
||||
|
||||
(function ($) {
|
||||
'use strict';
|
||||
|
||||
$(document).ready(function () {
|
||||
const $searchInput = $('.td-search-input');
|
||||
|
||||
//
|
||||
// Options for popover
|
||||
//
|
||||
|
||||
$searchInput.data('html', true);
|
||||
$searchInput.data('placement', 'bottom');
|
||||
$searchInput.data(
|
||||
'template',
|
||||
'<div class="popover offline-search-result" role="tooltip"><div class="arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>'
|
||||
);
|
||||
|
||||
//
|
||||
// Register handler
|
||||
//
|
||||
|
||||
$searchInput.on('change', (event) => {
|
||||
render($(event.target));
|
||||
|
||||
// Hide keyboard on mobile browser
|
||||
$searchInput.blur();
|
||||
});
|
||||
|
||||
// Prevent reloading page by enter key on sidebar search.
|
||||
$searchInput.closest('form').on('submit', () => {
|
||||
return false;
|
||||
});
|
||||
|
||||
//
|
||||
// Lunr
|
||||
//
|
||||
|
||||
let idx = null; // Lunr index
|
||||
const resultDetails = new Map(); // Will hold the data for the search results (titles and summaries)
|
||||
|
||||
// Set up for an Ajax call to request the JSON data file that is created by Hugo's build process
|
||||
$.ajax($searchInput.data('offline-search-index-json-src')).then(
|
||||
(data) => {
|
||||
idx = lunr(function () {
|
||||
this.ref('ref');
|
||||
|
||||
// If you added more searchable fields to the search index, list them here.
|
||||
// Here you can specify searchable fields to the search index - e.g. individual toxonomies for you project
|
||||
// With "boost" you can add weighting for specific (default weighting without boost: 1)
|
||||
this.field('title', { boost: 5 });
|
||||
this.field('categories', { boost: 3 });
|
||||
this.field('tags', { boost: 3 });
|
||||
// this.field('projects', { boost: 3 }); // example for an individual toxonomy called projects
|
||||
this.field('description', { boost: 2 });
|
||||
this.field('body');
|
||||
|
||||
data.forEach((doc) => {
|
||||
this.add(doc);
|
||||
|
||||
resultDetails.set(doc.ref, {
|
||||
title: doc.title,
|
||||
excerpt: doc.excerpt,
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
$searchInput.trigger('change');
|
||||
}
|
||||
);
|
||||
|
||||
const render = ($targetSearchInput) => {
|
||||
// Dispose the previous result
|
||||
$targetSearchInput.popover('dispose');
|
||||
|
||||
//
|
||||
// Search
|
||||
//
|
||||
|
||||
if (idx === null) {
|
||||
return;
|
||||
}
|
||||
|
||||
const searchQuery = $targetSearchInput.val();
|
||||
if (searchQuery === '') {
|
||||
return;
|
||||
}
|
||||
|
||||
const results = idx
|
||||
.query((q) => {
|
||||
const tokens = lunr.tokenizer(searchQuery.toLowerCase());
|
||||
tokens.forEach((token) => {
|
||||
const queryString = token.toString();
|
||||
q.term(queryString, {
|
||||
boost: 100,
|
||||
});
|
||||
q.term(queryString, {
|
||||
wildcard:
|
||||
lunr.Query.wildcard.LEADING |
|
||||
lunr.Query.wildcard.TRAILING,
|
||||
boost: 10,
|
||||
});
|
||||
q.term(queryString, {
|
||||
editDistance: 2,
|
||||
});
|
||||
});
|
||||
})
|
||||
.slice(
|
||||
0,
|
||||
$targetSearchInput.data('offline-search-max-results')
|
||||
);
|
||||
|
||||
//
|
||||
// Make result html
|
||||
//
|
||||
|
||||
const $html = $('<div>');
|
||||
|
||||
$html.append(
|
||||
$('<div>')
|
||||
.css({
|
||||
display: 'flex',
|
||||
justifyContent: 'space-between',
|
||||
marginBottom: '1em',
|
||||
})
|
||||
.append(
|
||||
$('<span>')
|
||||
.text('Search results')
|
||||
.css({ fontWeight: 'bold' })
|
||||
)
|
||||
.append(
|
||||
$('<i>')
|
||||
.addClass('fas fa-times search-result-close-button')
|
||||
.css({
|
||||
cursor: 'pointer',
|
||||
})
|
||||
)
|
||||
);
|
||||
|
||||
const $searchResultBody = $('<div>').css({
|
||||
maxHeight: `calc(100vh - ${
|
||||
$targetSearchInput.offset().top -
|
||||
$(window).scrollTop() +
|
||||
180
|
||||
}px)`,
|
||||
overflowY: 'auto',
|
||||
});
|
||||
$html.append($searchResultBody);
|
||||
|
||||
if (results.length === 0) {
|
||||
$searchResultBody.append(
|
||||
$('<p>').text(`No results found for query "${searchQuery}"`)
|
||||
);
|
||||
} else {
|
||||
results.forEach((r) => {
|
||||
const doc = resultDetails.get(r.ref);
|
||||
const href =
|
||||
$searchInput.data('offline-search-base-href') +
|
||||
r.ref.replace(/^\//, '');
|
||||
|
||||
const $entry = $('<div>').addClass('mt-4');
|
||||
|
||||
$entry.append(
|
||||
$('<small>').addClass('d-block text-muted').text(r.ref)
|
||||
);
|
||||
|
||||
$entry.append(
|
||||
$('<a>')
|
||||
.addClass('d-block')
|
||||
.css({
|
||||
fontSize: '1.2rem',
|
||||
})
|
||||
.attr('href', href)
|
||||
.text(doc.title)
|
||||
);
|
||||
|
||||
$entry.append($('<p>').text(doc.excerpt));
|
||||
|
||||
$searchResultBody.append($entry);
|
||||
});
|
||||
}
|
||||
|
||||
$targetSearchInput.on('shown.bs.popover', () => {
|
||||
$('.search-result-close-button').on('click', () => {
|
||||
$targetSearchInput.val('');
|
||||
$targetSearchInput.trigger('change');
|
||||
});
|
||||
});
|
||||
|
||||
// Enable inline styles in popover.
|
||||
const whiteList = $.fn.tooltip.Constructor.Default.whiteList;
|
||||
whiteList['*'].push('style');
|
||||
|
||||
$targetSearchInput
|
||||
.data('content', $html[0].outerHTML)
|
||||
.popover({ whiteList: whiteList })
|
||||
.popover('show');
|
||||
};
|
||||
});
|
||||
})(jQuery);
|
|
@ -1,62 +0,0 @@
|
|||
{{ with .Site.Params.plantuml }}
|
||||
{{ if .enable }}
|
||||
(function($) {
|
||||
|
||||
function encode64(data) {
|
||||
r = "";
|
||||
for (i = 0; i < data.length; i += 3) {
|
||||
if (i + 2 == data.length) {
|
||||
r += append3bytes(data.charCodeAt(i), data.charCodeAt(i + 1), 0);
|
||||
} else if (i + 1 == data.length) {
|
||||
r += append3bytes(data.charCodeAt(i), 0, 0);
|
||||
} else {
|
||||
r += append3bytes(data.charCodeAt(i), data.charCodeAt(i + 1),
|
||||
data.charCodeAt(i + 2));
|
||||
}
|
||||
}
|
||||
return r;
|
||||
}
|
||||
|
||||
function append3bytes(b1, b2, b3) {
|
||||
c1 = b1 >> 2;
|
||||
c2 = ((b1 & 0x3) << 4) | (b2 >> 4);
|
||||
c3 = ((b2 & 0xF) << 2) | (b3 >> 6);
|
||||
c4 = b3 & 0x3F;
|
||||
r = "";
|
||||
r += encode6bit(c1 & 0x3F);
|
||||
r += encode6bit(c2 & 0x3F);
|
||||
r += encode6bit(c3 & 0x3F);
|
||||
r += encode6bit(c4 & 0x3F);
|
||||
return r;
|
||||
}
|
||||
|
||||
function encode6bit(b) {
|
||||
if (b < 10) {
|
||||
return String.fromCharCode(48 + b);
|
||||
}
|
||||
b -= 10;
|
||||
if (b < 26) {
|
||||
return String.fromCharCode(65 + b);
|
||||
}
|
||||
b -= 26;
|
||||
if (b < 26) {
|
||||
return String.fromCharCode(97 + b);
|
||||
}
|
||||
b -= 26;
|
||||
if (b == 0) {
|
||||
return '-';
|
||||
}
|
||||
if (b == 1) {
|
||||
return '_';
|
||||
}
|
||||
return '?';
|
||||
}
|
||||
|
||||
var needPlantuml = false;
|
||||
$('.language-plantuml').parent().replaceWith(function() {
|
||||
let s = unescape(encodeURIComponent($(this).text()));
|
||||
return $('<img src="{{.svg_image_url | default "http://www.plantuml.com/plantuml/svg/"}}' + encode64(deflate(s, 9)) + '">')
|
||||
});
|
||||
})(jQuery);
|
||||
{{ end }}
|
||||
{{ end }}
|
|
@ -1,43 +0,0 @@
|
|||
/*
|
||||
Copyright 2018 Google LLC
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
https://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
*/
|
||||
|
||||
(function($) {
|
||||
|
||||
'use strict';
|
||||
|
||||
var Search = {
|
||||
init: function() {
|
||||
$(document).ready(function() {
|
||||
$(document).on('keypress', '.td-search-input', function(e) {
|
||||
if (e.keyCode !== 13) {
|
||||
return
|
||||
}
|
||||
|
||||
var query = $(this).val();
|
||||
var searchPage = "{{ "search/" | absURL }}?q=" + query;
|
||||
document.location = searchPage;
|
||||
|
||||
return false;
|
||||
});
|
||||
|
||||
});
|
||||
},
|
||||
};
|
||||
|
||||
Search.init();
|
||||
|
||||
|
||||
}(jQuery));
|
|
@ -1,7 +0,0 @@
|
|||
{{- $.Scratch.Add "offline-search-index" slice -}}
|
||||
{{- range where .Site.AllPages ".Params.exclude_search" "!=" true -}}
|
||||
{{/* We have to apply `htmlUnescape` again after `truncate` because `truncate` applies `html.EscapeString` if the argument is not HTML. */}}
|
||||
{{/* Indvidual taxonomies can be added in the next line by add '"taxonomy-name" (.Params.taxonomy-name | default "")' to the dict (as seen for categories and tags). */}}
|
||||
{{- $.Scratch.Add "offline-search-index" (dict "ref" .RelPermalink "title" .Title "categories" (.Params.categories | default "") "tags" (.Params.tags | default "") "description" (.Description | default "") "body" (.Plain | htmlUnescape) "excerpt" ((.Description | default .Plain) | htmlUnescape | truncate (.Site.Params.offlineSearchSummaryLength | default 70) | htmlUnescape)) -}}
|
||||
{{- end -}}
|
||||
{{- $.Scratch.Get "offline-search-index" | jsonify -}}
|
|
@ -1,20 +0,0 @@
|
|||
// Style alert boxes.
|
||||
|
||||
.alert {
|
||||
font-weight: $font-weight-medium;
|
||||
background: $white;
|
||||
color: inherit;
|
||||
border-radius: 0;
|
||||
|
||||
@each $color, $value in $theme-colors {
|
||||
&-#{$color} {
|
||||
& .alert-heading {
|
||||
color: $value;
|
||||
}
|
||||
|
||||
border-style: solid;
|
||||
border-color: $value;
|
||||
border-width: 0 0 0 4px;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
// Blog related styles.
|
||||
|
||||
.td-blog {
|
||||
.td-rss-button {
|
||||
position: absolute;
|
||||
top: 5.5rem;
|
||||
right: 1rem;
|
||||
z-index: 22;
|
||||
}
|
||||
}
|
|
@ -1,127 +0,0 @@
|
|||
// Boxes on the home page and similar.
|
||||
.td-box {}
|
||||
|
||||
// box-variant creates the main style for a colored section used on the site.
|
||||
@mixin box-variant($parent, $color-name, $color-value) {
|
||||
$text-color: color-yiq($color-value);
|
||||
$link-color: mix($blue, $text-color, lightness($color-value));
|
||||
$link-hover-color: rgba($link-color, 0.5) !default;
|
||||
|
||||
#{$parent} {
|
||||
&--#{$color-name} {
|
||||
color: $text-color;
|
||||
background-color: #{$color-value};
|
||||
|
||||
.td-arrow-down {
|
||||
&::before {
|
||||
left: 50%;
|
||||
margin-left: -30px;
|
||||
bottom: -25px;
|
||||
border: {
|
||||
style: solid;
|
||||
width: 25px 30px 0 30px;
|
||||
color: #{$color-value} transparent transparent transparent;
|
||||
};
|
||||
z-index: 3;
|
||||
position: absolute;
|
||||
content: "";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Improve contrast for the links in paragraphs.
|
||||
@include link-variant("#{$parent}--#{$color-name} p > a", $link-color, $link-hover-color, false);
|
||||
|
||||
@if $enable-gradients {
|
||||
@include bg-gradient-variant("#{$parent}--1#{$color-name}#{$parent}--gradient", $color-value,true);
|
||||
}
|
||||
}
|
||||
|
||||
// Common min-height modifiers used for boxes.
|
||||
@mixin td-box-height-modifiers($parent) {
|
||||
#{$parent} {
|
||||
&--height-auto {}
|
||||
|
||||
&--height-min {
|
||||
min-height: 300px;
|
||||
}
|
||||
|
||||
&--height-med {
|
||||
min-height: 400px;
|
||||
}
|
||||
|
||||
&--height-max {
|
||||
min-height: 500px;
|
||||
}
|
||||
|
||||
&--height-full {
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
&--height-min {
|
||||
min-height: 450px;
|
||||
}
|
||||
|
||||
&--height-med {
|
||||
min-height: 500px;
|
||||
}
|
||||
|
||||
&--height-max {
|
||||
min-height: 650px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@include td-box-height-modifiers(".td-box");
|
||||
|
||||
// Styling for section boxes
|
||||
.td-box {
|
||||
.row.section {
|
||||
padding-left: 5vw;
|
||||
padding-right: 5vw;
|
||||
flex-direction: column;
|
||||
|
||||
> table {
|
||||
@extend .table-striped;
|
||||
|
||||
@extend .table-responsive;
|
||||
|
||||
@extend .table;
|
||||
}
|
||||
}
|
||||
|
||||
.row {
|
||||
padding-left: 5vw;
|
||||
padding-right: 5vw;
|
||||
flex-direction: row;
|
||||
}
|
||||
}
|
||||
// Styling for community page link boxes
|
||||
|
||||
.td-box.linkbox {
|
||||
padding: 5vh 5vw;
|
||||
}
|
||||
|
||||
// This allows "painting by numbers"
|
||||
@for $i from 1 through length($td-box-colors) {
|
||||
$c: nth($td-box-colors, $i);
|
||||
$name: $i - 1;
|
||||
|
||||
@include box-variant(".td-box", $name, $c);
|
||||
}
|
||||
|
||||
// Same as above with all the theme color names.
|
||||
@each $color, $value in $colors {
|
||||
@include box-variant(".td-box", $color, $value);
|
||||
}
|
||||
|
||||
@each $color, $value in $theme-colors {
|
||||
@include box-variant(".td-box", $color, $value);
|
||||
}
|
||||
|
||||
@each $color, $value in $grays {
|
||||
@include box-variant(".td-box", $color, $value);
|
||||
}
|
|
@ -1,7 +0,0 @@
|
|||
// Breadcrumb
|
||||
|
||||
.breadcrumb {
|
||||
background: none;
|
||||
padding-left: 0;
|
||||
padding-top: 0;
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
// Buttons
|
||||
|
||||
@if $enable-rounded {
|
||||
.btn {
|
||||
border-radius: 1rem;
|
||||
|
||||
&-lg {
|
||||
border-radius: 2rem;
|
||||
}
|
||||
|
||||
&-sm {
|
||||
border-radius: 1rem;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,55 +0,0 @@
|
|||
// Code formatting.
|
||||
|
||||
.td-content {
|
||||
// Highlighted code.
|
||||
.highlight {
|
||||
@extend .card;
|
||||
|
||||
margin: 2rem 0;
|
||||
padding: 0;
|
||||
|
||||
pre {
|
||||
margin: 0;
|
||||
padding: 1rem;
|
||||
}
|
||||
}
|
||||
|
||||
// Inline code
|
||||
p code, li > code, table code {
|
||||
color: inherit;
|
||||
padding: 0.2em 0.4em;
|
||||
margin: 0;
|
||||
font-size: 85%;
|
||||
word-break: normal;
|
||||
background-color: rgba($black, 0.05);
|
||||
border-radius: $border-radius;
|
||||
|
||||
br {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Code blocks
|
||||
pre {
|
||||
word-wrap: normal;
|
||||
background-color: $gray-100;
|
||||
padding: $spacer;
|
||||
|
||||
|
||||
> code {
|
||||
background-color: inherit !important;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
font-size: 100%;
|
||||
word-break: normal;
|
||||
white-space: pre;
|
||||
border: 0;
|
||||
}
|
||||
}
|
||||
|
||||
pre.mermaid {
|
||||
background-color: inherit;
|
||||
font-size: 0;
|
||||
}
|
||||
}
|
|
@ -1,41 +0,0 @@
|
|||
// Add some local palette classes so you can do -bg-warning -text-warning etc. Even -bg-1 if you want to paint by numbers.
|
||||
@mixin palette-variant($color-name, $color-value) {
|
||||
$text-color: color-yiq($color-value);
|
||||
$link-color: mix($blue, $text-color, lightness($color-value));
|
||||
|
||||
$link-hover-color: rgba($link-color, .5) !default;
|
||||
|
||||
.-bg-#{$color-name} {
|
||||
color: $text-color;
|
||||
background-color: $color-value;
|
||||
}
|
||||
|
||||
// Make links in paragraphs stand out more.
|
||||
@include link-variant(".-bg-#{$color-name} p > a", $link-color, $link-hover-color, false);
|
||||
|
||||
|
||||
.-text-#{$color-name} {
|
||||
color: $color-value;
|
||||
}
|
||||
}
|
||||
|
||||
@each $color, $value in $colors {
|
||||
@include palette-variant($color, $value);
|
||||
}
|
||||
|
||||
@each $color, $value in $theme-colors {
|
||||
@include palette-variant($color, $value);
|
||||
}
|
||||
|
||||
@each $color, $value in $grays {
|
||||
@include palette-variant($color, $value);
|
||||
}
|
||||
|
||||
// This allows "painting by numbers", i.e. picking colors by a shortcode Ordianal.
|
||||
@for $i from 1 through length($td-box-colors) {
|
||||
$value: nth($td-box-colors, $i);
|
||||
$name: $i - 1;
|
||||
$text-color: color-yiq($value);
|
||||
|
||||
@include palette-variant($name, $value);
|
||||
}
|
|
@ -1,82 +0,0 @@
|
|||
//
|
||||
// Style Markdown content
|
||||
//
|
||||
|
||||
.td-content {
|
||||
order: 1;
|
||||
|
||||
p, li, td {
|
||||
font-weight: $font-weight-body-text;
|
||||
}
|
||||
|
||||
> h1 {
|
||||
font-weight: $font-weight-bold;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
> h2 {
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
> h2:not(:first-child) {
|
||||
margin-top: 3rem;
|
||||
}
|
||||
|
||||
> h2 + h3 {
|
||||
margin-top: 1rem;
|
||||
}
|
||||
|
||||
> h3, > h4, > h5, > h6 {
|
||||
margin-bottom: 1rem;
|
||||
margin-top: 2rem;
|
||||
}
|
||||
|
||||
img {
|
||||
@extend .img-fluid;
|
||||
}
|
||||
|
||||
> table {
|
||||
@extend .table-striped;
|
||||
|
||||
@extend .table-responsive;
|
||||
|
||||
@extend .table;
|
||||
}
|
||||
|
||||
> blockquote {
|
||||
padding: 0 0 0 1rem;
|
||||
margin-bottom: $spacer;
|
||||
color: $gray-600;
|
||||
border-left: 6px solid $secondary;
|
||||
}
|
||||
|
||||
> ul li, > ol li {
|
||||
margin-bottom: .25rem;
|
||||
}
|
||||
|
||||
strong {
|
||||
font-weight: $font-weight-bold;
|
||||
}
|
||||
|
||||
> pre, > .highlight, > .lead, > h1, > h2, > ul, > ol, > p, > blockquote, > dl dd, .footnotes, > .alert {
|
||||
@extend .td-max-width-on-larger-screens;
|
||||
}
|
||||
|
||||
.alert:not(:first-child) {
|
||||
margin-top: 2 * $spacer;
|
||||
margin-bottom: 2 * $spacer;
|
||||
}
|
||||
|
||||
.lead {
|
||||
margin-bottom: 1.5rem;
|
||||
}
|
||||
}
|
||||
|
||||
.td-title {
|
||||
margin-top: 1rem;
|
||||
margin-bottom: .5rem;
|
||||
|
||||
@include media-breakpoint-up(sm) {
|
||||
font-size: 3rem;
|
||||
}
|
||||
}
|
|
@ -1,34 +0,0 @@
|
|||
// The outer page container i.e. common styles for any page.
|
||||
.td-outer {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
height: 100vh;
|
||||
}
|
||||
|
||||
// The outer page container for the default base template.
|
||||
.td-default {
|
||||
main {
|
||||
> section:first-of-type {
|
||||
@include media-breakpoint-up(md) {
|
||||
padding-top: 8rem;
|
||||
}
|
||||
}
|
||||
|
||||
section {
|
||||
@extend .td-block-padding;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.td-main {
|
||||
flex-grow: 1;
|
||||
|
||||
main {
|
||||
@include media-breakpoint-up(md) {
|
||||
padding-top: 5.5rem;
|
||||
}
|
||||
|
||||
|
||||
padding-bottom: 2rem;
|
||||
}
|
||||
}
|
|
@ -1,131 +0,0 @@
|
|||
//
|
||||
// Main navbar
|
||||
//
|
||||
|
||||
.td-navbar-cover {
|
||||
background: $primary;
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
background: transparent !important;
|
||||
|
||||
.nav-link {
|
||||
text-shadow: 1px 1px 2px $dark;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
&.navbar-bg-onscroll .nav-link {
|
||||
text-shadow: none;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-bg-onscroll {
|
||||
background: $primary !important;
|
||||
opacity: inherit;
|
||||
}
|
||||
|
||||
.td-navbar {
|
||||
background: $primary;
|
||||
min-height: 4rem;
|
||||
margin: 0;
|
||||
z-index: 32;
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
|
||||
.navbar-brand {
|
||||
text-transform: none;
|
||||
text-align: middle;
|
||||
|
||||
.nav-link {
|
||||
display: inline-block;
|
||||
margin-right: -30px;
|
||||
}
|
||||
|
||||
svg {
|
||||
display: inline-block;
|
||||
margin: 0 10px;
|
||||
height: 30px;
|
||||
}
|
||||
}
|
||||
|
||||
.nav-link {
|
||||
text-transform: none;
|
||||
font-weight: $font-weight-bold;
|
||||
}
|
||||
|
||||
.td-search-input {
|
||||
border: none;
|
||||
|
||||
@include placeholder {
|
||||
color: $navbar-dark-color;
|
||||
}
|
||||
}
|
||||
|
||||
.dropdown {
|
||||
min-width: 100px;
|
||||
}
|
||||
|
||||
@include media-breakpoint-down(md) {
|
||||
padding-right: .5rem;
|
||||
padding-left: .75rem;
|
||||
|
||||
.td-navbar-nav-scroll {
|
||||
max-width: 100%;
|
||||
height: 2.5rem;
|
||||
margin-top: .25rem;
|
||||
overflow: hidden;
|
||||
font-size: .875rem;
|
||||
|
||||
.nav-link {
|
||||
padding-right: .25rem;
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
.navbar-nav {
|
||||
padding-bottom: 2rem;
|
||||
overflow-x: auto;
|
||||
white-space: nowrap;
|
||||
-webkit-overflow-scrolling: touch;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Icons
|
||||
#main_navbar {
|
||||
li i {
|
||||
padding-right: 0.5em;
|
||||
|
||||
&:before {
|
||||
display: inline-block;
|
||||
text-align: center;
|
||||
min-width: 1em;
|
||||
}
|
||||
}
|
||||
.alert {
|
||||
background-color: inherit;
|
||||
padding:0;
|
||||
color: $secondary;
|
||||
border: 0;
|
||||
font-weight: inherit;
|
||||
|
||||
&:before {
|
||||
display: inline-block;
|
||||
font-style: normal;
|
||||
font-variant: normal;
|
||||
text-rendering: auto;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
font-family: "Font Awesome 5 Free";
|
||||
font-weight: 900;
|
||||
content: "\f0d9";
|
||||
padding-left: 0.5em;
|
||||
padding-right: 0.5em;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
.pageinfo {
|
||||
font-weight: $font-weight-medium;
|
||||
background: $gray-100;
|
||||
color: inherit;
|
||||
border-radius: 0;
|
||||
margin: 2rem;
|
||||
padding: 1.5rem;
|
||||
padding-bottom: 0.5rem;
|
||||
|
||||
@each $color, $value in $theme-colors {
|
||||
&-#{$color} {
|
||||
|
||||
border-style: solid;
|
||||
border-color: $value;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
|
@ -1,30 +0,0 @@
|
|||
// Search
|
||||
|
||||
.td-search-input {
|
||||
background: transparent;
|
||||
max-width: 90%;
|
||||
|
||||
&.form-control:focus {
|
||||
border-color: lighten($primary, 60%);
|
||||
box-shadow: 0 0 0 2px lighten($primary, 30%);
|
||||
}
|
||||
|
||||
@if $enable-rounded {
|
||||
border-radius: 1rem;
|
||||
}
|
||||
|
||||
font-family: "Font Awesome 5 Free", $font-family-base;
|
||||
}
|
||||
|
||||
.popover.offline-search-result {
|
||||
// Override bootstrap default style (max-width: $popover-max-width;)
|
||||
max-width: 90%;
|
||||
|
||||
.card {
|
||||
margin-bottom: $spacer * .5;
|
||||
|
||||
.card-header {
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,57 +0,0 @@
|
|||
//
|
||||
// Right side toc
|
||||
//
|
||||
.td-toc {
|
||||
border-left: 1px solid $border-color;
|
||||
|
||||
@supports (position: sticky) {
|
||||
position: sticky;
|
||||
top: 4rem;
|
||||
height: calc(100vh - 10rem);
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
order: 2;
|
||||
padding-top: 0.75rem;
|
||||
padding-bottom: 1.5rem;
|
||||
vertical-align: top;
|
||||
|
||||
a {
|
||||
display: block;
|
||||
font-weight: $font-weight-light;
|
||||
padding-bottom: .25rem;
|
||||
}
|
||||
|
||||
li {
|
||||
list-style: none;
|
||||
display: block;
|
||||
}
|
||||
|
||||
li li {
|
||||
margin-left: 0.5rem;
|
||||
}
|
||||
|
||||
.td-page-meta {
|
||||
a {
|
||||
font-weight: $font-weight-medium;
|
||||
}
|
||||
}
|
||||
|
||||
#TableOfContents {
|
||||
// Hugo's ToC is a mouthful, this can be used to style the top level h2 entries.
|
||||
> ul > li > ul > li > a {}
|
||||
|
||||
a {
|
||||
color: $gray-600;
|
||||
|
||||
&:hover {
|
||||
color: $blue;
|
||||
text-decoration: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ul {
|
||||
padding-left: 0;
|
||||
}
|
||||
}
|
|
@ -1,162 +0,0 @@
|
|||
//
|
||||
// Left side navigation
|
||||
//
|
||||
.td-sidebar-nav {
|
||||
padding-right: 0.5rem;
|
||||
margin-right: -15px;
|
||||
margin-left: -15px;
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
@supports (position: sticky) {
|
||||
max-height: calc(100vh - 10rem);
|
||||
overflow-y: auto;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
display: block !important;
|
||||
}
|
||||
|
||||
|
||||
&__section {
|
||||
li {
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
ul {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
& .ul-1 ul {
|
||||
padding-left: 1.5em;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
&__section-title {
|
||||
display: block;
|
||||
font-weight: $font-weight-medium;
|
||||
|
||||
.active {
|
||||
font-weight: $font-weight-bold;
|
||||
}
|
||||
|
||||
a {
|
||||
color: $gray-900;
|
||||
}
|
||||
}
|
||||
|
||||
.td-sidebar-link {
|
||||
display: block;
|
||||
padding-bottom: 0.375rem;
|
||||
|
||||
&__page {
|
||||
color: $gray-700;
|
||||
font-weight: $font-weight-light;
|
||||
}
|
||||
}
|
||||
|
||||
a {
|
||||
&:hover {
|
||||
color: $blue;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
&.active {
|
||||
font-weight: $font-weight-bold;
|
||||
}
|
||||
}
|
||||
|
||||
.dropdown {
|
||||
a {
|
||||
color: $gray-700;
|
||||
}
|
||||
|
||||
.nav-link {
|
||||
padding: 0 0 1rem;
|
||||
}
|
||||
}
|
||||
|
||||
& > .td-sidebar-nav__section {
|
||||
padding-top: .5rem;
|
||||
padding-left: 1.5rem;
|
||||
}
|
||||
|
||||
li i { // Layout of icons
|
||||
padding-right: 0.5em;
|
||||
&:before{
|
||||
display: inline-block;
|
||||
text-align: center;
|
||||
min-width: 1em;
|
||||
}
|
||||
}
|
||||
|
||||
.td-sidebar-link.tree-root{
|
||||
font-weight: $font-weight-bold;
|
||||
color: $primary;
|
||||
border-bottom: 1px $primary solid;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
}
|
||||
|
||||
.td-sidebar {
|
||||
@include media-breakpoint-up(md) {
|
||||
padding-top: 4rem;
|
||||
background-color: $td-sidebar-bg-color;
|
||||
padding-right: 1rem;
|
||||
border-right: 1px solid $td-sidebar-border-color;
|
||||
}
|
||||
|
||||
|
||||
padding-bottom: 1rem;
|
||||
|
||||
&__toggle {
|
||||
line-height: 1;
|
||||
color: $gray-900;
|
||||
margin: 1rem;
|
||||
}
|
||||
|
||||
&__search {
|
||||
padding: 1rem 15px;
|
||||
margin-right: -15px;
|
||||
margin-left: -15px;
|
||||
}
|
||||
|
||||
&__inner {
|
||||
order: 0;
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
@supports (position: sticky) {
|
||||
position: sticky;
|
||||
top: 4rem;
|
||||
z-index: 10;
|
||||
height: calc(100vh - 6rem);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@include media-breakpoint-up(xl) {
|
||||
flex: 0 1 320px;
|
||||
}
|
||||
|
||||
|
||||
.td-search-box {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
#content-desktop {display: block;}
|
||||
#content-mobile {display: none;}
|
||||
|
||||
@include media-breakpoint-down(md) {
|
||||
|
||||
#content-desktop {display: none;}
|
||||
#content-mobile {display: block;}
|
||||
}
|
||||
}
|
|
@ -1,7 +0,0 @@
|
|||
/*
|
||||
|
||||
Nothing defined here. The Hugo project that uses this theme can override Bootstrap by adding a file to:
|
||||
|
||||
assets/scss/_styles_project.scss
|
||||
|
||||
*/
|
|
@ -1,131 +0,0 @@
|
|||
/*
|
||||
|
||||
Bootstrap variables overrides for theme.
|
||||
See https://github.com/twbs/bootstrap/pull/23260
|
||||
*/
|
||||
|
||||
@fa-font-path : "../webfonts";
|
||||
|
||||
// Bootstrap flags. For more, see https://getbootstrap.com/docs/4.0/getting-started/theming/
|
||||
$enable-gradients: true !default;
|
||||
$enable-rounded: true !default;
|
||||
$enable-shadows: true !default;
|
||||
|
||||
// Theme flags.
|
||||
|
||||
$td-enable-google-fonts: true !default;
|
||||
|
||||
// Theme colors
|
||||
|
||||
$primary: #30638E !default;
|
||||
$primary-light: lighten($primary, 75%) !default;
|
||||
$secondary: #FFA630 !default;
|
||||
$success: #3772FF !default;
|
||||
$info: #C0E0DE !default;
|
||||
$warning: #ED6A5A !default;
|
||||
$danger: #ED6A5A !default;
|
||||
$white: #fff !default;
|
||||
$light: #D3F3EE !default;
|
||||
|
||||
$dark: #403F4C !default;
|
||||
$blue: #72A1E5 !default;
|
||||
$orange: #BA5A31 !default;
|
||||
$gray-100: #f8f9fa !default;
|
||||
$gray-200: #eee !default;
|
||||
$gray-300: #dee2e6 !default;
|
||||
$gray-400: #ccc !default;
|
||||
$gray-500: #adb5bd !default;
|
||||
$gray-600: #797676 !default;
|
||||
$gray-700: #495057 !default;
|
||||
$gray-800: #333 !default;
|
||||
$gray-900: #222 !default;
|
||||
$black: #000 !default;
|
||||
|
||||
$code-color: darken($secondary, 20%) !default;
|
||||
|
||||
// UI element colors
|
||||
|
||||
$border-color: $gray-300 !default;
|
||||
$td-sidebar-bg-color: rgba($primary, 0.03) !default;
|
||||
$td-sidebar-border-color: $border-color !default;
|
||||
|
||||
// Background colors for the sections on home page etc. It is a paint by number system, starting at 0, where the number is taken from the shortcode's ordinal
|
||||
// if not provided by the user.
|
||||
// These colors are all part of the theme palette, but the mix is fairly random to create variation. This can be overridden by the project if needed.
|
||||
$td-box-colors: $dark, $primary, $secondary, $info, $primary-light, $gray-600, $success, $warning, $dark, $danger, $primary, $secondary, $primary-light, $info !default;
|
||||
|
||||
$link-color: darken($blue, 15%) !default;
|
||||
$link-decoration: none !default;
|
||||
$link-hover-color: darken($link-color, 15%) !default;
|
||||
$link-hover-decoration: none !default;
|
||||
|
||||
// Fonts
|
||||
|
||||
$google_font_name: "Open Sans" !default;
|
||||
$google_font_family: "Open+Sans:300,300i,400,400i,700,700i" !default;
|
||||
$web-font-path: "https://fonts.googleapis.com/css?family=#{$google_font_family}&display=swap";
|
||||
|
||||
$td-fonts-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
|
||||
|
||||
@if $td-enable-google-fonts {
|
||||
$td-fonts-serif: prepend($td-fonts-serif, "#{$google_font_name}");
|
||||
}
|
||||
|
||||
$font-family-sans-serif: $td-fonts-serif !default;
|
||||
|
||||
$font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !default;
|
||||
$font-family-base: $font-family-sans-serif !default;
|
||||
$font-size-base: 1rem !default;
|
||||
|
||||
// Font weights
|
||||
|
||||
$font-weight-light: 300 !default;
|
||||
$font-weight-normal: 400 !default;
|
||||
$font-weight-medium: 500 !default;
|
||||
$font-weight-bold: 700 !default;
|
||||
|
||||
$font-weight-body-text: $font-weight-normal !default;
|
||||
$headings-font-weight: $font-weight-medium !default;
|
||||
|
||||
// Heading sizes
|
||||
|
||||
$h1-font-size: $font-size-base * 2.25 !default;
|
||||
$h2-font-size: $font-size-base * 2 !default;
|
||||
$h3-font-size: $font-size-base * 1.5 !default;
|
||||
$h4-font-size: $font-size-base * 1.35 !default;
|
||||
$h5-font-size: $font-size-base * 1.15 !default;
|
||||
$h6-font-size: $font-size-base !default;
|
||||
|
||||
// Display styles
|
||||
|
||||
$display1-weight: $font-weight-bold !default;
|
||||
$display2-weight: $font-weight-bold !default;
|
||||
$display3-weight: $font-weight-bold !default;
|
||||
$display4-weight: $font-weight-bold !default;
|
||||
$display1-size: 3rem !default;
|
||||
$display2-size: 2.5rem !default;
|
||||
$display3-size: 2rem !default;
|
||||
$display4-size: 1.75rem !default;
|
||||
|
||||
// Space
|
||||
|
||||
$spacer: 1rem;
|
||||
$td-block-space-top-base: 4 * $spacer !default;
|
||||
$td-block-space-bottom-base: 4 * $spacer !default;
|
||||
|
||||
// Pagination
|
||||
|
||||
$pagination-color: $gray-600 !default;
|
||||
$pagination-border-color: rgba($black, 0.1) !default;
|
||||
$pagination-active-border-color: darken($primary, 5%) !default;
|
||||
$pagination-disabled-color: $gray-300 !default;
|
||||
|
||||
// Navbar
|
||||
|
||||
$navbar-dark-color: rgba($white, 0.75) !default;
|
||||
$navbar-dark-hover-color: rgba($white, 0.5) !default;
|
||||
$navbar-dark-active-color: $white !default;
|
||||
$navbar-dark-disabled-color: rgba($white, 0.25) !default;
|
||||
|
||||
// The yiq lightness value that determines when the lightness of color changes from "dark" to "light".
|
||||
$yiq-contrasted-threshold: 200 !default;
|
|
@ -1,7 +0,0 @@
|
|||
/*
|
||||
|
||||
Nothing defined here. The Hugo project that uses this theme can override theme variables by adding a file to:
|
||||
|
||||
assets/scss/_variables_project.scss
|
||||
|
||||
*/
|
|
@ -1,7 +0,0 @@
|
|||
@import "cover";
|
||||
|
||||
.td-bg-arrow {
|
||||
&-wrapper {
|
||||
position: relative;
|
||||
}
|
||||
}
|
|
@ -1,24 +0,0 @@
|
|||
// A cover block is a full size cover with a fixed background for smaller screens.
|
||||
|
||||
@include td-box-height-modifiers(".td-cover-block");
|
||||
|
||||
.td-cover-logo {
|
||||
margin-right: 0.5em;
|
||||
}
|
||||
|
||||
.td-cover-block {
|
||||
position: relative;
|
||||
padding-top: 5rem;
|
||||
padding-bottom: 5rem;
|
||||
background: {
|
||||
repeat: no-repeat;
|
||||
position: 50% 0;
|
||||
size: cover;
|
||||
};
|
||||
|
||||
& > .byline {
|
||||
position: absolute;
|
||||
bottom: 2px;
|
||||
right: 4px;
|
||||
}
|
||||
}
|
|
@ -1,64 +0,0 @@
|
|||
@import "support/functions";
|
||||
@import "variables_project";
|
||||
@import "variables";
|
||||
@import "support/mixins";
|
||||
|
||||
@import "../vendor/bootstrap/scss/bootstrap";
|
||||
|
||||
@import "../vendor/Font-Awesome/scss/fontawesome.scss";
|
||||
@import "../vendor/Font-Awesome/scss/solid.scss";
|
||||
@import "../vendor/Font-Awesome/scss/brands.scss";
|
||||
|
||||
@import "support/utilities";
|
||||
@import "colors";
|
||||
@import "boxes";
|
||||
@import "blog";
|
||||
@import "code";
|
||||
@import "nav";
|
||||
@import "sidebar-tree";
|
||||
@import "sidebar-toc";
|
||||
@import "buttons";
|
||||
@import "breadcrumb";
|
||||
@import "alerts";
|
||||
@import "content";
|
||||
@import "search";
|
||||
@import "main-container";
|
||||
@import "blocks/blocks";
|
||||
@import "section-index";
|
||||
@import "pageinfo";
|
||||
|
||||
@if $td-enable-google-fonts {
|
||||
@import url($web-font-path);
|
||||
}
|
||||
|
||||
footer {
|
||||
min-height: 150px;
|
||||
|
||||
@include media-breakpoint-down(md) {
|
||||
min-height: 200px;
|
||||
}
|
||||
}
|
||||
|
||||
// Adjust anchors vs the fixed menu.
|
||||
@include media-breakpoint-up(md) {
|
||||
.td-offset-anchor:target {
|
||||
display: block;
|
||||
position: relative;
|
||||
top: -4rem;
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
h2[id]:before,
|
||||
h3[id]:before,
|
||||
h4[id]:before,
|
||||
h5[id]:before {
|
||||
display: block;
|
||||
content: " ";
|
||||
margin-top: -5rem;
|
||||
height: 5rem;
|
||||
visibility: hidden;
|
||||
}
|
||||
}
|
||||
|
||||
@import "rtl/main";
|
||||
@import "styles_project";
|
|
@ -1,46 +0,0 @@
|
|||
body:lang(fa),
|
||||
body:lang(ar),
|
||||
body:lang(az),
|
||||
body:lang(dv),
|
||||
body:lang(he),
|
||||
body:lang(ku),
|
||||
body:lang(ur) {
|
||||
|
||||
@import 'spacing';
|
||||
|
||||
direction: rtl;
|
||||
text-align: right;
|
||||
|
||||
.dropdown-menu {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.text-right {
|
||||
text-align: left !important;
|
||||
}
|
||||
|
||||
pre {
|
||||
text-align: left;
|
||||
direction: ltr;
|
||||
}
|
||||
|
||||
.td-rss-button {
|
||||
left: 1rem !important;
|
||||
right: auto !important;
|
||||
}
|
||||
}
|
||||
|
||||
body:lang(fa) {
|
||||
@import url('https://cdn.jsdelivr.net/gh/rastikerdar/vazir-font@v27.0.1/dist/font-face.css');
|
||||
font-family: 'Vazir', "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
|
||||
}
|
||||
|
||||
body:lang(he) {
|
||||
@import url('https://fonts.googleapis.com/css2?family=Rubik:wght@300;400;500;600;700&display=swap');
|
||||
font-family: 'Rubik', "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
|
||||
}
|
||||
|
||||
body:lang(ar) {
|
||||
@import url('https://fonts.googleapis.com/css2?family=Tajawal:wght@300;400;500;700&display=swap');
|
||||
font-family: 'Tajawal', "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
|
||||
}
|
|
@ -1,91 +0,0 @@
|
|||
@each $breakpoint in map-keys($grid-breakpoints) {
|
||||
@include media-breakpoint-up($breakpoint) {
|
||||
$infix: breakpoint-infix($breakpoint, $grid-breakpoints);
|
||||
|
||||
@each $prop,
|
||||
$abbrev in (margin: m, padding: p) {
|
||||
|
||||
@each $size,
|
||||
$length in $spacers {
|
||||
.#{$abbrev}#{$infix}-#{$size} {
|
||||
#{$prop}: $length !important;
|
||||
}
|
||||
|
||||
.#{$abbrev}t#{$infix}-#{$size},
|
||||
.#{$abbrev}y#{$infix}-#{$size} {
|
||||
#{$prop}-top: $length !important;
|
||||
}
|
||||
|
||||
.#{$abbrev}r#{$infix}-#{$size},
|
||||
.#{$abbrev}x#{$infix}-#{$size} {
|
||||
#{$prop}-inline-end: $length !important;
|
||||
}
|
||||
|
||||
.#{$abbrev}b#{$infix}-#{$size},
|
||||
.#{$abbrev}y#{$infix}-#{$size} {
|
||||
#{$prop}-bottom: $length !important;
|
||||
}
|
||||
|
||||
.#{$abbrev}l#{$infix}-#{$size},
|
||||
.#{$abbrev}x#{$infix}-#{$size} {
|
||||
#{$prop}-inline-start: $length !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Negative margins (e.g., where `.mb-n1` is negative version of `.mb-1`)
|
||||
@each $size,
|
||||
$length in $spacers {
|
||||
@if $size !=0 {
|
||||
.m#{$infix}-n#{$size} {
|
||||
margin: -$length !important;
|
||||
}
|
||||
|
||||
.mt#{$infix}-n#{$size},
|
||||
.my#{$infix}-n#{$size} {
|
||||
margin-top: -$length !important;
|
||||
}
|
||||
|
||||
.mr#{$infix}-n#{$size},
|
||||
.mx#{$infix}-n#{$size} {
|
||||
margin-right: -$length !important;
|
||||
}
|
||||
|
||||
.mb#{$infix}-n#{$size},
|
||||
.my#{$infix}-n#{$size} {
|
||||
margin-bottom: -$length !important;
|
||||
}
|
||||
|
||||
.ml#{$infix}-n#{$size},
|
||||
.mx#{$infix}-n#{$size} {
|
||||
margin-left: -$length !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Some special margin utils
|
||||
.m#{$infix}-auto {
|
||||
margin: auto !important;
|
||||
}
|
||||
|
||||
.mt#{$infix}-auto,
|
||||
.my#{$infix}-auto {
|
||||
margin-top: auto !important;
|
||||
}
|
||||
|
||||
.mr#{$infix}-auto,
|
||||
.mx#{$infix}-auto {
|
||||
margin-right: auto !important;
|
||||
}
|
||||
|
||||
.mb#{$infix}-auto,
|
||||
.my#{$infix}-auto {
|
||||
margin-bottom: auto !important;
|
||||
}
|
||||
|
||||
.ml#{$infix}-auto,
|
||||
.mx#{$infix}-auto {
|
||||
margin-left: auto !important;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
.section-index {
|
||||
|
||||
.entry {
|
||||
padding: .75rem;
|
||||
}
|
||||
|
||||
h5 {
|
||||
margin-bottom: 0;
|
||||
|
||||
a {
|
||||
font-weight: 700;
|
||||
}
|
||||
}
|
||||
|
||||
p {
|
||||
margin-top: 0;
|
||||
}
|
||||
}
|
|
@ -1,21 +0,0 @@
|
|||
// Common functions.
|
||||
|
||||
@function prepend($list, $value) {
|
||||
@return join($value, $list);
|
||||
}
|
||||
|
||||
|
||||
|
||||
// See https://www.sitepoint.com/using-sass-build-color-palettes/
|
||||
@function color-diff($a, $b) {
|
||||
$sat: saturation($a) - saturation($b);
|
||||
$lig: lightness($a) - lightness($b);
|
||||
$fn-sat: if($sat > 0, 'desaturate', 'saturate');
|
||||
$fn-lig: if($lig > 0, 'darken', 'lighten');
|
||||
|
||||
@return (
|
||||
adjust-hue: -(hue($a) - hue($b)),
|
||||
#{$fn-sat}: abs($sat),
|
||||
#{$fn-lig}: abs($lig)
|
||||
);
|
||||
}
|
|
@ -1,49 +0,0 @@
|
|||
// Some simple mixins.
|
||||
|
||||
@mixin bg-gradient-variant($parent, $color,$ignore-warning: false) {
|
||||
#{$parent} {
|
||||
background: $color linear-gradient(180deg, mix($body-bg, $color, 15%), $color) repeat-x !important;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin link-variant($parent, $color, $hover-color, $underline: false) {
|
||||
#{$parent} {
|
||||
color: $color;
|
||||
|
||||
&:hover {
|
||||
color: $hover-color;
|
||||
}
|
||||
|
||||
@if $underline {
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@mixin optional-at-root($sel) {
|
||||
@at-root #{if(not &, $sel, selector-append(&, $sel))} {
|
||||
@content;
|
||||
}
|
||||
}
|
||||
|
||||
// placeholder allows styling of the placeholder used in search input etc.
|
||||
@mixin placeholder {
|
||||
@include optional-at-root("::-webkit-input-placeholder") {
|
||||
@content;
|
||||
}
|
||||
|
||||
|
||||
@include optional-at-root(":-moz-placeholder") {
|
||||
@content;
|
||||
}
|
||||
|
||||
|
||||
@include optional-at-root("::-moz-placeholder") {
|
||||
@content;
|
||||
}
|
||||
|
||||
|
||||
@include optional-at-root(":-ms-input-placeholder") {
|
||||
@content;
|
||||
}
|
||||
}
|
|
@ -1,82 +0,0 @@
|
|||
// Mixins
|
||||
|
||||
@mixin optional-at-root($sel) {
|
||||
@at-root #{if(not &, $sel, selector-append(&, $sel))} {
|
||||
@content;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin placeholder {
|
||||
@include optional-at-root("::-webkit-input-placeholder") {
|
||||
@content;
|
||||
}
|
||||
|
||||
|
||||
@include optional-at-root(":-moz-placeholder") {
|
||||
@content;
|
||||
}
|
||||
|
||||
|
||||
@include optional-at-root("::-moz-placeholder") {
|
||||
@content;
|
||||
}
|
||||
|
||||
|
||||
@include optional-at-root(":-ms-input-placeholder") {
|
||||
@content;
|
||||
}
|
||||
}
|
||||
|
||||
// Common util classes.
|
||||
|
||||
.td-border-top {
|
||||
border: none;
|
||||
border-top: 1px solid #eee;
|
||||
}
|
||||
|
||||
.td-border-none {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.td-block-padding {
|
||||
padding-top: $td-block-space-top-base ;
|
||||
padding-bottom: $td-block-space-bottom-base;
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
padding-top: $td-block-space-top-base * 1.25;
|
||||
padding-bottom: $td-block-space-bottom-base * 1.25;
|
||||
}
|
||||
}
|
||||
|
||||
.td-overlay {
|
||||
position: relative;
|
||||
|
||||
&::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
&--dark::after {
|
||||
background-color: rgba($dark, 0.3);
|
||||
}
|
||||
|
||||
&--light::after {
|
||||
background-color: rgba($light, 0.3);
|
||||
}
|
||||
|
||||
&__inner {
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
}
|
||||
}
|
||||
|
||||
.td-max-width-on-larger-screens {
|
||||
@include media-breakpoint-up(lg) {
|
||||
max-width: 80%;
|
||||
}
|
||||
|
||||
}
|
|
@ -1,16 +0,0 @@
|
|||
---
|
||||
title: "Long Page Title"
|
||||
linkTitle: "Short Nav Title"
|
||||
weight: 100
|
||||
description: >-
|
||||
Page description for heading and indexes.
|
||||
---
|
||||
|
||||
## Heading
|
||||
|
||||
Edit this template to create your new page.
|
||||
|
||||
* Give it a good name, ending in `.md` - e.g. `getting-started.md`
|
||||
* Edit the "front matter" section at the top of the page (weight controls how its ordered amongst other pages in the same directory; lowest number first).
|
||||
* Add a good commit message at the bottom of the page (<80 characters; use the extended description field for more detail).
|
||||
* Create a new branch so you can preview your new file and request a review via Pull Request.
|
|
@ -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
|
25
themes/docsy/assets/vendor/Font-Awesome/.github/ISSUE_TEMPLATE/feature_request.md
generated
vendored
25
themes/docsy/assets/vendor/Font-Awesome/.github/ISSUE_TEMPLATE/feature_request.md
generated
vendored
|
@ -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
|
21
themes/docsy/assets/vendor/Font-Awesome/.github/ISSUE_TEMPLATE/icon-request.md
generated
vendored
21
themes/docsy/assets/vendor/Font-Awesome/.github/ISSUE_TEMPLATE/icon-request.md
generated
vendored
|
@ -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. ☺)
|
|
@ -1,6 +0,0 @@
|
|||
<!--- WARNING Pull Requests made to this repository cannot be merged -->
|
||||
|
||||
I understand that:
|
||||
|
||||
- [ ] I'm submitting this PR for reference only. It shows an example of what I'd like to see changed but
|
||||
I understand that it will not be merged and I will not be listed as a contributor on this project.
|
File diff suppressed because it is too large
Load Diff
|
@ -1,74 +0,0 @@
|
|||
# Contributor Covenant Code of Conduct
|
||||
|
||||
## Our Pledge
|
||||
|
||||
In the interest of fostering an open and welcoming environment, we as
|
||||
contributors and maintainers pledge to making participation in our project and
|
||||
our community a harassment-free experience for everyone, regardless of age, body
|
||||
size, disability, ethnicity, gender identity and expression, level of experience,
|
||||
nationality, personal appearance, race, religion, or sexual identity and
|
||||
orientation.
|
||||
|
||||
## Our Standards
|
||||
|
||||
Examples of behavior that contributes to creating a positive environment
|
||||
include:
|
||||
|
||||
* Using welcoming and inclusive language
|
||||
* Being respectful of differing viewpoints and experiences
|
||||
* Gracefully accepting constructive criticism
|
||||
* Focusing on what is best for the community
|
||||
* Showing empathy towards other community members
|
||||
|
||||
Examples of unacceptable behavior by participants include:
|
||||
|
||||
* The use of sexualized language or imagery and unwelcome sexual attention or
|
||||
advances
|
||||
* Trolling, insulting/derogatory comments, and personal or political attacks
|
||||
* Public or private harassment
|
||||
* Publishing others' private information, such as a physical or electronic
|
||||
address, without explicit permission
|
||||
* Other conduct which could reasonably be considered inappropriate in a
|
||||
professional setting
|
||||
|
||||
## Our Responsibilities
|
||||
|
||||
Project maintainers are responsible for clarifying the standards of acceptable
|
||||
behavior and are expected to take appropriate and fair corrective action in
|
||||
response to any instances of unacceptable behavior.
|
||||
|
||||
Project maintainers have the right and responsibility to remove, edit, or
|
||||
reject comments, commits, code, wiki edits, issues, and other contributions
|
||||
that are not aligned to this Code of Conduct, or to ban temporarily or
|
||||
permanently any contributor for other behaviors that they deem inappropriate,
|
||||
threatening, offensive, or harmful.
|
||||
|
||||
## Scope
|
||||
|
||||
This Code of Conduct applies both within project spaces and in public spaces
|
||||
when an individual is representing the project or its community. Examples of
|
||||
representing a project or community include using an official project e-mail
|
||||
address, posting via an official social media account, or acting as an appointed
|
||||
representative at an online or offline event. Representation of a project may be
|
||||
further defined and clarified by project maintainers.
|
||||
|
||||
## Enforcement
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||
reported by contacting the project team at <hello@fontawesome.com>. All
|
||||
complaints will be reviewed and investigated and will result in a response that
|
||||
is deemed necessary and appropriate to the circumstances. The project team is
|
||||
obligated to maintain confidentiality with regard to the reporter of an incident.
|
||||
Further details of specific enforcement policies may be posted separately.
|
||||
|
||||
Project maintainers who do not follow or enforce the Code of Conduct in good
|
||||
faith may face temporary or permanent repercussions as determined by other
|
||||
members of the project's leadership.
|
||||
|
||||
## Attribution
|
||||
|
||||
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
|
||||
available at [https://contributor-covenant.org/version/1/4][version]
|
||||
|
||||
[homepage]: https://contributor-covenant.org
|
||||
[version]: https://contributor-covenant.org/version/1/4/
|
|
@ -1,25 +0,0 @@
|
|||
# Contributing to Font Awesome
|
||||
|
||||
Looking to contribute something to Font Awesome? **Here's how you can help.**
|
||||
|
||||
## Quick start
|
||||
|
||||
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
|
||||
|
||||
## Pull requests
|
||||
|
||||
- At the moment we are not accepting pull requests containing icons
|
||||
- Pull requests that do not solve an existing issue are essentially un-prioritized–don'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
|
||||
- Try not to pollute your pull request with unintended changes–keep them simple and small
|
||||
- Try to share which browsers your code has been tested in before submitting a pull request
|
|
@ -1,34 +0,0 @@
|
|||
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.
|
||||
|
||||
# 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.
|
||||
|
||||
# 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.
|
||||
|
||||
# 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
|
||||
files normally.
|
||||
|
||||
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
|
||||
to represent the company, product, or service to which they refer.**
|
|
@ -1,138 +0,0 @@
|
|||
<h1><img src="https://img.fortawesome.com/349cfdf6/logo-fa-free.svg" alt="Font Awesome 5 Free" width="50%"></h1>
|
||||
|
||||
> Version 5 – the iconic SVG, font, and CSS framework
|
||||
|
||||
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).
|
||||
|
||||
## Documentation
|
||||
|
||||
Learn how to get started with Font Awesome and then dive deeper into other and advanced topics:
|
||||
|
||||
### Using Font Awesome on the Web
|
||||
|
||||
* [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)
|
||||
|
||||
#### Advanced Options & Techniques
|
||||
|
||||
* [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.
|
||||
|
||||
## Change log
|
||||
|
||||
We'll keep track of each release in the [CHANGELOG.md](./CHANGELOG.md)
|
||||
|
||||
Looking for older versions of Font Awesome? Check the [releases](https://github.com/FortAwesome/Font-Awesome/releases).
|
||||
|
||||
## Upgrading
|
||||
|
||||
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.
|
||||
|
||||
## Code of conduct
|
||||
|
||||
We will behave ourselves if you behave yourselves. For more details see our
|
||||
[CODE_OF_CONDUCT.md](./CODE_OF_CONDUCT.md).
|
||||
|
||||
## Contributing
|
||||
|
||||
Please read through our [contributing guidelines](./CONTRIBUTING.md). Included
|
||||
are directions for opening issues.
|
||||
|
||||
## Versioning
|
||||
|
||||
Font Awesome will be maintained under the Semantic Versioning guidelines as much as possible. Releases will be numbered
|
||||
with the following format:
|
||||
|
||||
`<major>.<minor>.<patch>`
|
||||
|
||||
For more information on SemVer, please visit http://semver.org.
|
||||
|
||||
**The major version "5" 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
|
||||
icon
|
||||
* We will never intentionally release a `patch` version update that breaks
|
||||
backward compatibility
|
||||
* A `minor` release **may include backward-incompatible changes** but we will
|
||||
write clear upgrading instructions in UPGRADING.md
|
||||
* A `minor` or `patch` release will never remove icons
|
||||
* Bug fixes will be addressed as `patch` releases unless they include backward
|
||||
incompatibility then they will be `minor` releases
|
||||
|
||||
## 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.
|
||||
|
||||
- Icons — CC BY 4.0 License
|
||||
- In the Font Awesome Free download, the CC BY 4.0 license applies to all icons packaged as .svg and .js files types.
|
||||
- Fonts — SIL OFL 1.1 License
|
||||
- In the Font Awesome Free download, the SIL OLF license applies to all icons packaged as web and desktop font files.
|
||||
- Code — MIT License
|
||||
- In the Font Awesome Free download, the MIT license applies to all non-font and non-icon files.
|
||||
|
||||
Attribution is required by MIT, SIL OLF, 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
|
||||
files normally.
|
||||
|
||||
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.
|
||||
|
||||
## 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)
|
|
@ -1,613 +0,0 @@
|
|||
# Upgrading Guide
|
||||
|
||||
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.
|
||||
|
||||
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.1 to 5.15.2
|
||||
|
||||
There are no breaking changes in this version upgrade.
|
||||
|
||||
---
|
||||
|
||||
## 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.
|
|
@ -1,47 +0,0 @@
|
|||
{
|
||||
"name": "fortawesome/font-awesome",
|
||||
"description": "The iconic font, CSS, and SVG framework",
|
||||
"keywords": ["font", "awesome", "fontawesome", "icon", "svg", "font", "bootstrap"],
|
||||
"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"
|
||||
}
|
||||
],
|
||||
"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"
|
||||
},
|
||||
"license": [
|
||||
"CC-BY-4.0",
|
||||
"OFL-1.1",
|
||||
"MIT"
|
||||
]
|
||||
}
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
|
@ -1,15 +0,0 @@
|
|||
/*!
|
||||
* Font Awesome Free 5.15.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)
|
||||
*/
|
||||
@font-face {
|
||||
font-family: 'Font Awesome 5 Brands';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-display: block;
|
||||
src: url("../webfonts/fa-brands-400.eot");
|
||||
src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.woff") format("woff"), url("../webfonts/fa-brands-400.ttf") format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg"); }
|
||||
|
||||
.fab {
|
||||
font-family: 'Font Awesome 5 Brands';
|
||||
font-weight: 400; }
|
|
@ -1,5 +0,0 @@
|
|||
/*!
|
||||
* Font Awesome Free 5.15.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)
|
||||
*/
|
||||
@font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-brands-400.eot);src:url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff"),url(../webfonts/fa-brands-400.ttf) format("truetype"),url(../webfonts/fa-brands-400.svg#fontawesome) format("svg")}.fab{font-family:"Font Awesome 5 Brands";font-weight:400}
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
|
@ -1,15 +0,0 @@
|
|||
/*!
|
||||
* Font Awesome Free 5.15.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)
|
||||
*/
|
||||
@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; }
|
|
@ -1,5 +0,0 @@
|
|||
/*!
|
||||
* Font Awesome Free 5.15.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)
|
||||
*/
|
||||
@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}
|
|
@ -1,16 +0,0 @@
|
|||
/*!
|
||||
* Font Awesome Free 5.15.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)
|
||||
*/
|
||||
@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; }
|
|
@ -1,5 +0,0 @@
|
|||
/*!
|
||||
* Font Awesome Free 5.15.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)
|
||||
*/
|
||||
@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}
|
|
@ -1,371 +0,0 @@
|
|||
/*!
|
||||
* Font Awesome Free 5.15.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)
|
||||
*/
|
||||
svg:not(:root).svg-inline--fa {
|
||||
overflow: visible; }
|
||||
|
||||
.svg-inline--fa {
|
||||
display: inline-block;
|
||||
font-size: inherit;
|
||||
height: 1em;
|
||||
overflow: visible;
|
||||
vertical-align: -.125em; }
|
||||
.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; }
|
||||
.svg-inline--fa.fa-pull-left {
|
||||
margin-right: .3em;
|
||||
width: auto; }
|
||||
.svg-inline--fa.fa-pull-right {
|
||||
margin-left: .3em;
|
||||
width: auto; }
|
||||
.svg-inline--fa.fa-border {
|
||||
height: 1.5em; }
|
||||
.svg-inline--fa.fa-li {
|
||||
width: 2em; }
|
||||
.svg-inline--fa.fa-fw {
|
||||
width: 1.25em; }
|
||||
|
||||
.fa-layers svg.svg-inline--fa {
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
margin: auto;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0; }
|
||||
|
||||
.fa-layers {
|
||||
display: inline-block;
|
||||
height: 1em;
|
||||
position: relative;
|
||||
text-align: center;
|
||||
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; }
|
||||
|
||||
.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; }
|
||||
|
||||
.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;
|
||||
overflow: hidden;
|
||||
padding: .25em;
|
||||
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; }
|
||||
|
||||
.fa-layers-bottom-right {
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
top: auto;
|
||||
-webkit-transform: scale(0.25);
|
||||
transform: scale(0.25);
|
||||
-webkit-transform-origin: bottom right;
|
||||
transform-origin: bottom right; }
|
||||
|
||||
.fa-layers-bottom-left {
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
right: auto;
|
||||
top: auto;
|
||||
-webkit-transform: scale(0.25);
|
||||
transform: scale(0.25);
|
||||
-webkit-transform-origin: bottom left;
|
||||
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; }
|
||||
|
||||
.fa-layers-top-left {
|
||||
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; }
|
||||
|
||||
.fa-1x {
|
||||
font-size: 1em; }
|
||||
|
||||
.fa-2x {
|
||||
font-size: 2em; }
|
||||
|
||||
.fa-3x {
|
||||
font-size: 3em; }
|
||||
|
||||
.fa-4x {
|
||||
font-size: 4em; }
|
||||
|
||||
.fa-5x {
|
||||
font-size: 5em; }
|
||||
|
||||
.fa-6x {
|
||||
font-size: 6em; }
|
||||
|
||||
.fa-7x {
|
||||
font-size: 7em; }
|
||||
|
||||
.fa-8x {
|
||||
font-size: 8em; }
|
||||
|
||||
.fa-9x {
|
||||
font-size: 9em; }
|
||||
|
||||
.fa-10x {
|
||||
font-size: 10em; }
|
||||
|
||||
.fa-fw {
|
||||
text-align: center;
|
||||
width: 1.25em; }
|
||||
|
||||
.fa-ul {
|
||||
list-style-type: none;
|
||||
margin-left: 2.5em;
|
||||
padding-left: 0; }
|
||||
.fa-ul > li {
|
||||
position: relative; }
|
||||
|
||||
.fa-li {
|
||||
left: -2em;
|
||||
position: absolute;
|
||||
text-align: center;
|
||||
width: 2em;
|
||||
line-height: inherit; }
|
||||
|
||||
.fa-border {
|
||||
border: solid 0.08em #eee;
|
||||
border-radius: .1em;
|
||||
padding: .2em .25em .15em; }
|
||||
|
||||
.fa-pull-left {
|
||||
float: left; }
|
||||
|
||||
.fa-pull-right {
|
||||
float: right; }
|
||||
|
||||
.fa.fa-pull-left,
|
||||
.fas.fa-pull-left,
|
||||
.far.fa-pull-left,
|
||||
.fal.fa-pull-left,
|
||||
.fab.fa-pull-left {
|
||||
margin-right: .3em; }
|
||||
|
||||
.fa.fa-pull-right,
|
||||
.fas.fa-pull-right,
|
||||
.far.fa-pull-right,
|
||||
.fal.fa-pull-right,
|
||||
.fab.fa-pull-right {
|
||||
margin-left: .3em; }
|
||||
|
||||
.fa-spin {
|
||||
-webkit-animation: fa-spin 2s infinite linear;
|
||||
animation: fa-spin 2s infinite linear; }
|
||||
|
||||
.fa-pulse {
|
||||
-webkit-animation: fa-spin 1s infinite steps(8);
|
||||
animation: fa-spin 1s infinite steps(8); }
|
||||
|
||||
@-webkit-keyframes fa-spin {
|
||||
0% {
|
||||
-webkit-transform: rotate(0deg);
|
||||
transform: rotate(0deg); }
|
||||
100% {
|
||||
-webkit-transform: rotate(360deg);
|
||||
transform: rotate(360deg); } }
|
||||
|
||||
@keyframes fa-spin {
|
||||
0% {
|
||||
-webkit-transform: rotate(0deg);
|
||||
transform: rotate(0deg); }
|
||||
100% {
|
||||
-webkit-transform: rotate(360deg);
|
||||
transform: rotate(360deg); } }
|
||||
|
||||
.fa-rotate-90 {
|
||||
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
|
||||
-webkit-transform: rotate(90deg);
|
||||
transform: rotate(90deg); }
|
||||
|
||||
.fa-rotate-180 {
|
||||
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
|
||||
-webkit-transform: rotate(180deg);
|
||||
transform: rotate(180deg); }
|
||||
|
||||
.fa-rotate-270 {
|
||||
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
|
||||
-webkit-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); }
|
||||
|
||||
.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 {
|
||||
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
|
||||
-webkit-transform: scale(-1, -1);
|
||||
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-stack {
|
||||
display: inline-block;
|
||||
height: 2em;
|
||||
position: relative;
|
||||
width: 2.5em; }
|
||||
|
||||
.fa-stack-1x,
|
||||
.fa-stack-2x {
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
margin: auto;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0; }
|
||||
|
||||
.svg-inline--fa.fa-stack-1x {
|
||||
height: 1em;
|
||||
width: 1.25em; }
|
||||
|
||||
.svg-inline--fa.fa-stack-2x {
|
||||
height: 2em;
|
||||
width: 2.5em; }
|
||||
|
||||
.fa-inverse {
|
||||
color: #fff; }
|
||||
|
||||
.sr-only {
|
||||
border: 0;
|
||||
clip: rect(0, 0, 0, 0);
|
||||
height: 1px;
|
||||
margin: -1px;
|
||||
overflow: hidden;
|
||||
padding: 0;
|
||||
position: absolute;
|
||||
width: 1px; }
|
||||
|
||||
.sr-only-focusable:active, .sr-only-focusable:focus {
|
||||
clip: auto;
|
||||
height: auto;
|
||||
margin: 0;
|
||||
overflow: visible;
|
||||
position: static;
|
||||
width: auto; }
|
||||
|
||||
.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
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
|
@ -1,34 +0,0 @@
|
|||
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.
|
||||
|
||||
# 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.
|
||||
|
||||
# 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.
|
||||
|
||||
# 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
|
||||
files normally.
|
||||
|
||||
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
|
||||
to represent the company, product, or service to which they refer.**
|
|
@ -1,27 +0,0 @@
|
|||
# @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"
|
||||
|
||||
[](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.
|
||||
|
||||
## Here be dragons
|
||||
|
||||
If you are trying to import types from this package we *highly* recommend you do the following instead as *all types in this package are re-exported to the main fontawesome package*.
|
||||
|
||||
your.ts
|
||||
|
||||
```
|
||||
import {
|
||||
IconName
|
||||
} from `@fortawesome/fontawesome-svg-core`
|
||||
|
||||
const myIcon: IconName = "..."
|
||||
```
|
||||
|
||||
## Issues and support
|
||||
|
||||
Start with [GitHub issues](https://github.com/FortAwesome/Font-Awesome/issues) and ping us on [Twitter](https://twitter.com/fontawesome) if you need to.
|
|
@ -1,3 +0,0 @@
|
|||
console.log(`Font Awesome Free 0.2.34 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
|
@ -1,57 +0,0 @@
|
|||
{
|
||||
"description": "The iconic font, CSS, and SVG framework",
|
||||
"keywords": [
|
||||
"font",
|
||||
"awesome",
|
||||
"fontawesome",
|
||||
"icon",
|
||||
"svg",
|
||||
"bootstrap"
|
||||
],
|
||||
"homepage": "https://fontawesome.com",
|
||||
"bugs": {
|
||||
"url": "http://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"
|
||||
}
|
||||
],
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/FortAwesome/Font-Awesome"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
},
|
||||
"dependencies": {},
|
||||
"version": "0.2.34",
|
||||
"name": "@fortawesome/fontawesome-common-types",
|
||||
"license": "MIT",
|
||||
"types": "./index.d.ts",
|
||||
"scripts": {
|
||||
"postinstall": "node attribution.js"
|
||||
}
|
||||
}
|
|
@ -1,34 +0,0 @@
|
|||
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.
|
||||
|
||||
# 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.
|
||||
|
||||
# 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.
|
||||
|
||||
# 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
|
||||
files normally.
|
||||
|
||||
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
|
||||
to represent the company, product, or service to which they refer.**
|
|
@ -1,38 +0,0 @@
|
|||
# @fortawesome/fontawesome-free - The Official Font Awesome 5 NPM package
|
||||
|
||||
> "I came here to chew bubblegum and install Font Awesome 5 - and I'm all out of bubblegum"
|
||||
|
||||
[](https://www.npmjs.com/package/@fortawesome/fontawesome-free)
|
||||
|
||||
## Installation
|
||||
|
||||
```
|
||||
$ npm i --save @fortawesome/fontawesome-free
|
||||
```
|
||||
|
||||
Or
|
||||
|
||||
```
|
||||
$ yarn add @fortawesome/fontawesome-free
|
||||
```
|
||||
|
||||
## What's included?
|
||||
|
||||
**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
|
||||
* /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
|
||||
* /webfonts - Accompanying files for Web Fonts with CSS
|
||||
* /svg - Individual icon files in SVG format
|
||||
|
||||
## Documentation
|
||||
|
||||
Get started [here](https://fontawesome.com/get-started). Continue your journey [here](https://fontawesome.com/how-to-use).
|
||||
|
||||
Or go straight to the [API documentation](https://fontawesome.com/how-to-use/with-the-api).
|
||||
|
||||
## Issues and support
|
||||
|
||||
Start with [GitHub issues](https://github.com/FortAwesome/Font-Awesome/issues) and ping us on [Twitter](https://twitter.com/fontawesome) if you need to.
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue