commit
4361e943ae
|
@ -1,4 +1,2 @@
|
|||
assets/js/index.js
|
||||
assets/js/katex.js
|
||||
assets/js/vendor
|
||||
node_modules
|
|
@ -0,0 +1,47 @@
|
|||
# Doks Project Funding
|
||||
|
||||
_Last Updated: 06-16-2023_
|
||||
|
||||
## Raising Funds
|
||||
|
||||
Doks is an MIT licensed open source project and completely free to use. However, the amount of effort needed to maintain and develop new features for Doks is not sustainable without proper financial backing. We need your help to achieve this.
|
||||
|
||||
Learn more about sponsorship on our [Open Collective](https://opencollective.com/doks).
|
||||
|
||||
### Why Open Collective?
|
||||
|
||||
- **Full Transparency.** Everyone gets to see where money is coming from and where it's going.
|
||||
- **Individual and Corporate Sponsors.** Open Collective makes it easy for both individuals and companies to sponsor open source projects.
|
||||
- **Potential Tax Benefits.** Because funds are paid to the Open Source Collective, a 501(c)(6) organization in the U.S., there may be tax benefits for some donors (please check with your accountant).
|
||||
- **Automatic Invoicing.** For corporate sponsors, Open Collective automatically generates and sends invoices for tracking purposes.
|
||||
- **Open Participation.** Anyone can request reimbursement for funds spent helping the Doks project and Doks can pay out to anyone.
|
||||
|
||||
_List borrowed from [ESLint: "Funding ESLint's Future."](https://eslint.org/blog/2019/02/funding-eslint-future)_
|
||||
|
||||
## Distributing Funds
|
||||
|
||||
100% of money raised is invested back into the community. Every dollar spent **must** support and/or improve Doks in some way. For example:
|
||||
|
||||
- **Swag!** Creating stickers, t-shirts, etc. for sponsors and community members.
|
||||
- **Improve documentation.**
|
||||
- **Improve translations.**
|
||||
- **Improve website.**
|
||||
- **User research.**
|
||||
- **Supporting contributors.**
|
||||
- **Sponsoring conferences.**
|
||||
- **Sponsoring community members to represent Doks at meetups, conferences, etc.**
|
||||
- **Dedicated support for GitHub, GitHub Discussions, etc.**
|
||||
|
||||
See all past expenses on our [Open Collective](https://opencollective.com/doks).
|
||||
|
||||
### Eligibility
|
||||
|
||||
**Employees, contractors, and consultants of Doks are not eligible to receive funds from Open Collective.** These funds exist solely to serve the larger Doks open-source community.
|
||||
|
||||
### Core Maintainer Stipend
|
||||
|
||||
A monthly stipend of up to $1000 per calendar month is available to [eligible](#eligibility) core maintainers. Any time spent improving or supporting the project in some way counts towards this stipend: writing code, writing documentation, triaging issues, offering support in Doks Discussions, attending meetings (and meetups) on behalf of Doks, contributing to our upstream dependencies, and so on.
|
||||
|
||||
Right now, the stipend is calculated per hour at $50 per hour contributed, with a maximum of $1000 each month. These numbers may shift as our funding and team size change over time.
|
||||
|
||||
To claim, file an expense on our [Open Collective.](https://opencollective.com/doks) with the title: `Core Maintainer Stipend - $MONTH $YEAR`. Include an invoice summarizing the hours worked during the month, and a detailed breakdown of how those hours were spent. You can record and track these hours yourself as you go, but a time-tracker that can auto-generate the required breakdown for you is recommended.
|
|
@ -1,25 +0,0 @@
|
|||
---
|
||||
name: "Bug report \U0001F41E"
|
||||
about: Create a report to help us improve
|
||||
|
||||
---
|
||||
|
||||
## Description
|
||||
|
||||
Describe the issue that you're seeing.
|
||||
|
||||
### Steps to reproduce
|
||||
|
||||
Clear steps describing how to reproduce the issue. Please please please link to a demo project if possible, this makes your issue _much_ easier to diagnose (seriously).
|
||||
|
||||
### Expected result
|
||||
|
||||
What should happen?
|
||||
|
||||
### Actual result
|
||||
|
||||
What happened.
|
||||
|
||||
### Environment
|
||||
|
||||
Paste the information here as shown by `npm run check`
|
|
@ -1,4 +1,7 @@
|
|||
contact_links:
|
||||
- name: Question 🙋
|
||||
url: https://github.com/h-enk/doks/discussions/categories/q-a
|
||||
about: Ask your question in Doks Discussions
|
||||
- name: 📘 Documentation
|
||||
url: https://github.com/gethyas/getdoks.org
|
||||
about: File an issue or make an improvement to the docs website.
|
||||
- name: 💁 Support
|
||||
url: https://github.com/gethyas/doks/discussions
|
||||
about: 'Get help on Hyas Discussions'
|
||||
|
|
|
@ -1,17 +0,0 @@
|
|||
---
|
||||
name: "Feature request \U0001F680"
|
||||
about: Suggest an idea for Doks
|
||||
|
||||
---
|
||||
|
||||
## Summary
|
||||
|
||||
Brief explanation of the feature.
|
||||
|
||||
### Basic example
|
||||
|
||||
Include a basic example or links here.
|
||||
|
||||
### Motivation
|
||||
|
||||
Why are we doing this? What use cases does it support? What is the expected outcome?
|
Binary file not shown.
After Width: | Height: | Size: 709 KiB |
|
@ -1,11 +0,0 @@
|
|||
# To get started with Dependabot version updates, you'll need to specify which
|
||||
# package ecosystems to update and where the package manifests are located.
|
||||
# Please see the documentation for all configuration options:
|
||||
# https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
|
||||
|
||||
version: 2
|
||||
updates:
|
||||
- package-ecosystem: "npm" # See documentation for possible values
|
||||
directory: "/" # Location of package manifests
|
||||
schedule:
|
||||
interval: "daily"
|
|
@ -1,18 +0,0 @@
|
|||
## Summary
|
||||
|
||||
Brief explanation of the proposed changes.
|
||||
|
||||
## Basic example
|
||||
|
||||
Include a basic example, screenshots, or links.
|
||||
|
||||
## Motivation
|
||||
|
||||
Why are we doing this? What use cases does it support? What is the expected outcome?
|
||||
|
||||
## Checks
|
||||
|
||||
- [ ] Read [Create a Pull Request](https://getdoks.org/docs/contributing/how-to-contribute/#create-a-pull-request)
|
||||
- [ ] Supports all screen sizes (if relevant)
|
||||
- [ ] Supports both light and dark mode (if relevant)
|
||||
- [ ] Passes `npm run test`
|
|
@ -1,62 +0,0 @@
|
|||
# For most projects, this workflow file will not need changing; you simply need
|
||||
# to commit it to your repository.
|
||||
#
|
||||
# You may wish to alter this file to override the set of languages analyzed,
|
||||
# or to provide custom queries or build logic.
|
||||
name: "CodeQL"
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [master]
|
||||
pull_request:
|
||||
# The branches below must be a subset of the branches above
|
||||
branches: [master]
|
||||
schedule:
|
||||
- cron: '0 11 * * 5'
|
||||
|
||||
jobs:
|
||||
analyze:
|
||||
name: Analyze
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
# Override automatic language detection by changing the below list
|
||||
# Supported options are ['csharp', 'cpp', 'go', 'java', 'javascript', 'python']
|
||||
language: ['javascript']
|
||||
# Learn more...
|
||||
# https://docs.github.com/en/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#overriding-automatic-language-detection
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v2
|
||||
|
||||
# Initializes the CodeQL tools for scanning.
|
||||
- name: Initialize CodeQL
|
||||
uses: github/codeql-action/init@v1
|
||||
with:
|
||||
languages: ${{ matrix.language }}
|
||||
# If you wish to specify custom queries, you can do so here or in a config file.
|
||||
# By default, queries listed here will override any specified in a config file.
|
||||
# Prefix the list here with "+" to use these queries and those in the config file.
|
||||
# queries: ./path/to/local/query, your-org/your-repo/queries@main
|
||||
|
||||
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
||||
# If this step fails, then you should remove it and run the build manually (see below)
|
||||
- name: Autobuild
|
||||
uses: github/codeql-action/autobuild@v1
|
||||
|
||||
# ℹ️ Command-line programs to run using the OS shell.
|
||||
# 📚 https://git.io/JvXDl
|
||||
|
||||
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
|
||||
# and modify them (or add more) to build your code if your project
|
||||
# uses a compiled language
|
||||
|
||||
#- run: |
|
||||
# make bootstrap
|
||||
# make release
|
||||
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@v1
|
|
@ -0,0 +1,38 @@
|
|||
name: Hyas CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: main
|
||||
pull_request:
|
||||
branches: main
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: "Build: ${{ matrix.os }}"
|
||||
runs-on: ${{ matrix.os }}
|
||||
timeout-minutes: 3
|
||||
strategy:
|
||||
matrix:
|
||||
os: [ubuntu-latest, windows-latest, macos-latest]
|
||||
node-version: [18.x, 20.x]
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Setup node@${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
|
||||
- name: Run linters
|
||||
run: npm run lint --if-present
|
||||
|
||||
- name: Build site
|
||||
run: npm run build
|
||||
|
||||
# - name: Run tests
|
||||
# run: npm test --if-present
|
|
@ -1,34 +0,0 @@
|
|||
name: Hyas CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: master
|
||||
pull_request:
|
||||
branches: master
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
os: [ubuntu-latest, windows-latest, macos-latest]
|
||||
node: [16.x, 18.x]
|
||||
|
||||
steps:
|
||||
- name: Check out Hyas project
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Set up Node.js ${{ matrix.node }}
|
||||
uses: actions/setup-node@v2
|
||||
with:
|
||||
node-version: ${{ matrix.node }}
|
||||
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
|
||||
- name: Run Hyas test script
|
||||
run: npm test
|
||||
|
||||
- name: Build production website
|
||||
run: npm run build
|
|
@ -1,19 +0,0 @@
|
|||
name: 'Close stale issues and PRs'
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 0 * * *'
|
||||
|
||||
jobs:
|
||||
stale:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/stale@v4
|
||||
with:
|
||||
stale-issue-message: 'This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.'
|
||||
stale-pr-message: 'This PR is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.'
|
||||
close-issue-message: 'This issue was closed because it has been stalled for 5 days with no activity.'
|
||||
close-pr-message: 'This PR was closed because it has been stalled for 5 days with no activity.'
|
||||
days-before-stale: 30
|
||||
days-before-close: 5
|
||||
days-before-pr-close: 5
|
||||
exempt-issue-labels: 'keep'
|
|
@ -1,5 +1,8 @@
|
|||
.eslintcache
|
||||
.stylelintcache
|
||||
.netlify
|
||||
.hugo_build.lock
|
||||
yarn-error.log
|
||||
node_modules
|
||||
public
|
||||
resources
|
||||
.netlify
|
||||
.hugo_build.lock
|
|
@ -0,0 +1,12 @@
|
|||
# Source:
|
||||
# - https://github.com/gitpod-io/template-hugo
|
||||
# - https://www.gitpod.io/docs/configure/workspaces/tasks#one-line-tasks
|
||||
|
||||
tasks:
|
||||
- name: Run development server
|
||||
init: pnpm install
|
||||
command: pnpm dev
|
||||
|
||||
ports:
|
||||
- port: 1313
|
||||
onOpen: open-preview
|
|
@ -2,10 +2,13 @@
|
|||
"config": {
|
||||
"default": true,
|
||||
"MD013": false,
|
||||
"MD022": false,
|
||||
"MD024": false,
|
||||
"MD025": false,
|
||||
"MD026": false,
|
||||
"MD033": false,
|
||||
"MD034": false
|
||||
"MD034": false,
|
||||
"MD036": false
|
||||
},
|
||||
"ignores": ["node_modules", "CHANGELOG.md", "README.md"]
|
||||
}
|
|
@ -0,0 +1,6 @@
|
|||
node_modules
|
||||
public
|
||||
resources
|
||||
.netlify
|
||||
.hugo_build.lock
|
||||
yarn-error.log
|
|
@ -0,0 +1,4 @@
|
|||
enable-pre-post-scripts = true
|
||||
auto-install-peers = true
|
||||
node-linker = hoisted
|
||||
prefer-symlinked-executables = false
|
|
@ -1,3 +1,2 @@
|
|||
assets/scss/components/_syntax.scss
|
||||
assets/scss/vendor
|
||||
node_modules
|
|
@ -6,17 +6,6 @@
|
|||
"scss/comment-no-empty": null,
|
||||
"max-line-length": null,
|
||||
"scss/at-extend-no-missing-placeholder": null,
|
||||
"scss/dollar-variable-colon-space-after": null,
|
||||
"scss/dollar-variable-empty-line-before": null,
|
||||
"color-function-notation": null,
|
||||
"alpha-value-notation": null,
|
||||
"selector-id-pattern": null,
|
||||
"selector-class-pattern": null,
|
||||
"scss/no-global-function-names": null,
|
||||
"number-max-precision": null,
|
||||
"hue-degree-notation": null,
|
||||
"value-no-vendor-prefix": null,
|
||||
"property-no-vendor-prefix": null,
|
||||
"at-rule-no-unknown": [
|
||||
true,
|
||||
{
|
||||
|
|
50
CHANGELOG.md
50
CHANGELOG.md
|
@ -4,8 +4,58 @@ All notable changes to this project will be documented in this file. Dates are d
|
|||
|
||||
Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog).
|
||||
|
||||
#### [v1.0.0-rc.2](https://github.com/h-enk/doks/compare/v1.0.0-rc.1...v1.0.0-rc.2)
|
||||
|
||||
- meta: Update for Hyas community health files [`a8ced3e`](https://github.com/h-enk/doks/commit/a8ced3e124050d666b0b61e52ea8d98e4b9da9c2)
|
||||
|
||||
#### [v1.0.0-rc.1](https://github.com/h-enk/doks/compare/v1.0.0-beta.2...v1.0.0-rc.1)
|
||||
|
||||
> 17 June 2023
|
||||
|
||||
- switch to permissions-policy [`#1067`](https://github.com/h-enk/doks/pull/1067)
|
||||
- feat: update for Doks v1.0.0-rc.1 [`6e27b31`](https://github.com/h-enk/doks/commit/6e27b31ea7338a021952d89a7acea5cf1b42f626)
|
||||
- ops: add resources directory for faster workflow build [`2fdbeb5`](https://github.com/h-enk/doks/commit/2fdbeb549331d7131f145968278b5d8e48a2dd0d)
|
||||
- meta: update CHANGELOG.md [`f421b61`](https://github.com/h-enk/doks/commit/f421b614f09e26092af30a4dd2076b6f549c4973)
|
||||
|
||||
#### [v1.0.0-beta.2](https://github.com/h-enk/doks/compare/v1.0.0-beta.1...v1.0.0-beta.2)
|
||||
|
||||
> 9 June 2023
|
||||
|
||||
- feat: update for Doks v1.0.0-beta.2 [`9a3994f`](https://github.com/h-enk/doks/commit/9a3994f6950bd8406ea38668b7033ee056da0891)
|
||||
- meta: remove node.js-ci.yml workflow [`d14c659`](https://github.com/h-enk/doks/commit/d14c6596317c416e802b5ef706e9134791515c11)
|
||||
- meta: update CHANGELOG.md [`8397db9`](https://github.com/h-enk/doks/commit/8397db9f091a122a753dcf65a23cb5d1ffdc4c1f)
|
||||
|
||||
#### [v1.0.0-beta.1](https://github.com/h-enk/doks/compare/v1.0.0-alpha.2...v1.0.0-beta.1)
|
||||
|
||||
> 26 May 2023
|
||||
|
||||
- feat: update for doks 1.0.0-beta.1 [`f5135ba`](https://github.com/h-enk/doks/commit/f5135ba54ee22a08b75ff8a578d8600f3c6e25d9)
|
||||
- meta: update CHANGELOG.md [`f49f8f2`](https://github.com/h-enk/doks/commit/f49f8f2a23524633d444a58ad92e05cc309d3208)
|
||||
- meta: update CHANGELOG.md [`a45549e`](https://github.com/h-enk/doks/commit/a45549e3d980952da7b0e7ee0bdb60a1d2263c07)
|
||||
|
||||
#### [v1.0.0-alpha.2](https://github.com/h-enk/doks/compare/v1.0.0-alpha.1...v1.0.0-alpha.2)
|
||||
|
||||
> 23 May 2023
|
||||
|
||||
- ux: update dark mode+ [`834afc3`](https://github.com/h-enk/doks/commit/834afc3eec170d7e9a383f202742c62637b4cbb3)
|
||||
- config: update content security policy [`af107f0`](https://github.com/h-enk/doks/commit/af107f070b3815b463ac071cfad256dfc2d4c975)
|
||||
|
||||
#### [v1.0.0-alpha.1](https://github.com/h-enk/doks/compare/v0.5.0...v1.0.0-alpha.1)
|
||||
|
||||
> 18 April 2023
|
||||
|
||||
- fix: navbar-brand href now links to the BaseURL instead of `/` [`#894`](https://github.com/h-enk/doks/pull/894)
|
||||
- Update hugo to 0.107.0 and hugo-install to >=4.0.1 [`#951`](https://github.com/h-enk/doks/pull/951)
|
||||
- fix: build fails when figure has link [`#823`](https://github.com/h-enk/doks/pull/823)
|
||||
- fix: build fails when figure has link [`#820`](https://github.com/h-enk/doks/issues/820)
|
||||
- feat: update for doks v1.0.0-alpha.1 [`3d4c2db`](https://github.com/h-enk/doks/commit/3d4c2dbdffc9be1b6ea1a1e56e323f3deef2b9b7)
|
||||
- Update package-lock.json for hugo/hugo-install update [`afaba44`](https://github.com/h-enk/doks/commit/afaba443bf1509ce5ed53e48a06b2f97ec422902)
|
||||
- ops: update GitHub Actions [`e93a307`](https://github.com/h-enk/doks/commit/e93a3075bc2cff60b3680e40fe06d6ea28c05a9b)
|
||||
|
||||
#### [v0.5.0](https://github.com/h-enk/doks/compare/v0.4.3...v0.5.0)
|
||||
|
||||
> 9 July 2022
|
||||
|
||||
- Better multilingual support [`#818`](https://github.com/h-enk/doks/pull/818)
|
||||
- 🧪 Add scrollspy to toc pages as an option (experimental) [`#797`](https://github.com/h-enk/doks/pull/797)
|
||||
- Better blog pages [`#798`](https://github.com/h-enk/doks/pull/798)
|
||||
|
|
|
@ -1,76 +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, sex characteristics, gender identity and expression,
|
||||
level of experience, education, socio-economic status, 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@getdoks.org. 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://www.contributor-covenant.org/version/1/4/code-of-conduct.html
|
||||
|
||||
[homepage]: https://www.contributor-covenant.org
|
||||
|
||||
For answers to common questions about this code of conduct, see
|
||||
https://www.contributor-covenant.org/faq
|
3
LICENSE
3
LICENSE
|
@ -1,7 +1,6 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2018-present, Gridsome
|
||||
Copyright (c) 2020-present, Henk Verlinde
|
||||
Copyright (c) 2023 Hyas
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
|
159
README.md
159
README.md
|
@ -1,159 +1,42 @@
|
|||
<p align="center">
|
||||
<a href="https://getdoks.org/">
|
||||
<img alt="Doks" src="https://doks.netlify.app/doks.svg" width="60">
|
||||
</a>
|
||||
</p>
|
||||
# Doks
|
||||
|
||||
<h1 align="center">
|
||||
Doks
|
||||
</h1>
|
||||
|
||||
<h3 align="center">
|
||||
Modern Documentation Theme
|
||||
</h3>
|
||||
|
||||
<p align="center">
|
||||
Doks is a Hugo theme for building secure, fast, and SEO-ready documentation websites, which you can easily update and customize.
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://github.com/h-enk/doks/blob/master/LICENSE">
|
||||
<img src="https://img.shields.io/github/license/h-enk/doks?style=flat-square" alt="GitHub">
|
||||
</a>
|
||||
<a href="https://github.com/h-enk/doks/releases">
|
||||
<img src="https://img.shields.io/github/v/release/h-enk/doks?include_prereleases&style=flat-square"alt="GitHub release (latest SemVer including pre-releases)">
|
||||
</a>
|
||||
<a href="https://www.npmjs.com/package/@hyas/doks">
|
||||
<img src="https://img.shields.io/npm/v/@hyas/doks?style=flat-square" alt="npm (scoped)">
|
||||
</a>
|
||||
<a href="https://github.com/h-enk/doks/actions?query=workflow%3A%22Hyas+CI%22">
|
||||
<img src="https://img.shields.io/github/workflow/status/h-enk/doks/Hyas%20CI/master?style=flat-square" alt="GitHub Workflow Status (branch)">
|
||||
</a>
|
||||
<a href="https://app.netlify.com/sites/doks/deploys">
|
||||
<img src="https://img.shields.io/netlify/8a1009d5-88ac-413e-96ef-3f928674a083?style=flat-square" alt="Netlify">
|
||||
</a>
|
||||
</p>
|
||||
|
||||
![Doks — Modern Documentation Theme](https://raw.githubusercontent.com/h-enk/doks/master/images/doks.png)
|
||||
Doks is a documentation theme for [Hyas](https://gethyas.com/).
|
||||
|
||||
## Demo
|
||||
|
||||
- [doks.netlify.app](https://doks.netlify.app/)
|
||||
|
||||
## Why Doks?
|
||||
|
||||
Nine main reasons why you should use Doks:
|
||||
|
||||
1. __Security aware__. Get A+ scores on [Mozilla Observatory](https://observatory.mozilla.org/analyze/doks.netlify.app) out of the box. Easily change the default Security Headers to suit your needs.
|
||||
## Install
|
||||
|
||||
2. __Fast by default__. Get 100 scores on [Google Lighthouse](https://googlechrome.github.io/lighthouse/viewer/?gist=59aafe464a68f8bc30b8e9a636d5b053) by default. Doks removes unused css, prefetches links, and lazy loads images.
|
||||
|
||||
3. __SEO-ready__. Use sensible defaults for structured data, open graph, and Twitter cards. Or easily change the SEO settings to your liking.
|
||||
|
||||
4. __Development tools__. Code with confidence. Check styles, scripts, and markdown for errors and fix automatically or manually.
|
||||
|
||||
5. __Bootstrap framework__. Build robust, flexible, and intuitive websites with Bootstrap 5. Easily customize your Doks site with the source Sass files.
|
||||
|
||||
6. __Netlify-ready__. Deploy to Netlify with sensible defaults. Easily use Netlify Functions, Netlify Redirects, and Netlify Headers.
|
||||
|
||||
7. __Full text search__. Search your Doks site with FlexSearch. Easily customize index settings and search options to your liking.
|
||||
|
||||
8. __Page layouts__. Build pages with a landing page, blog, or documentation layout. Add custom sections and components to suit your needs.
|
||||
|
||||
9. __Dark mode__. Switch to a low-light UI with the click of a button. Change colors with variables to match your branding.
|
||||
|
||||
### Other features
|
||||
|
||||
- __Multilingual and i18n__ support
|
||||
- __Versioning__ documentation support
|
||||
- __KaTeX__ math typesetting
|
||||
- __Mermaid__ diagrams and visualization
|
||||
- __highlight.js__ syntax highlighting
|
||||
|
||||
## Requirements
|
||||
|
||||
- [Git](https://git-scm.com/) — latest source release
|
||||
- [Node.js](https://nodejs.org/) — latest LTS version or newer
|
||||
|
||||
<details>
|
||||
<summary>Why Node.js?</summary>
|
||||
|
||||
Doks uses npm (included with Node.js) to centralize dependency management, making it [easy to update](https://getdoks.org/docs/help/how-to-update/) resources, build tooling, plugins, and build scripts.
|
||||
|
||||
</details>
|
||||
|
||||
## Get started
|
||||
|
||||
Start a new Doks project in three steps:
|
||||
|
||||
### 1. Create a new site
|
||||
|
||||
Doks is available as a child theme and a starter theme.
|
||||
|
||||
#### Child theme
|
||||
|
||||
- Intended for novice to intermediate users
|
||||
- Intended for minor customizations
|
||||
- [Easily update npm packages](https://getdoks.org/docs/help/how-to-update/) — __including__ [Doks](https://www.npmjs.com/package/@hyas/doks)
|
||||
The recommended way to install the latest version of Doks is by running the command below:
|
||||
|
||||
```bash
|
||||
git clone https://github.com/h-enk/doks-child-theme.git my-doks-site && cd my-doks-site
|
||||
npm create hyas@latest -- --template doks
|
||||
```
|
||||
|
||||
#### Starter theme
|
||||
|
||||
- Intended for intermediate to advanced users
|
||||
- Intended for major customizations
|
||||
- [Easily update npm packages](https://getdoks.org/docs/help/how-to-update/)
|
||||
|
||||
```bash
|
||||
git clone https://github.com/h-enk/doks.git my-doks-site && cd my-doks-site
|
||||
```
|
||||
|
||||
<details>
|
||||
<summary>Help me choose</summary>
|
||||
|
||||
Not sure which one is for you? Pick the child theme.
|
||||
|
||||
</details>
|
||||
|
||||
### 2. Install dependencies
|
||||
|
||||
```bash
|
||||
npm install
|
||||
```
|
||||
|
||||
### 3. Start development server
|
||||
|
||||
```bash
|
||||
npm run start
|
||||
```
|
||||
|
||||
## Other commands
|
||||
|
||||
Doks comes with [commands](https://getdoks.org/docs/prologue/commands/) for common tasks.
|
||||
Looking for help? Start with our [Getting Started](https://getdoks.org/docs/start-here/getting-started/) guide.
|
||||
|
||||
## Documentation
|
||||
|
||||
- [Netlify](https://docs.netlify.com/)
|
||||
- [Hugo](https://gohugo.io/documentation/)
|
||||
- [Doks](https://getdoks.org/)
|
||||
Visit our [official documentation](https://getdoks.org/).
|
||||
|
||||
## Communities
|
||||
## Support
|
||||
|
||||
- [Netlify Community](https://community.netlify.com/)
|
||||
- [Hugo Forums](https://discourse.gohugo.io/)
|
||||
- [Doks Discussions](https://github.com/h-enk/doks/discussions)
|
||||
Having trouble? Get help in the official [Doks Discussions](https://github.com/h-enk/doks/discussions).
|
||||
|
||||
## Contributing
|
||||
|
||||
New contributors welcome! Check out our [Contributor Guides](https://getdoks.org/contribute/) for help getting started.
|
||||
|
||||
## Links
|
||||
|
||||
- [License (MIT)](LICENSE)
|
||||
- [Code of Conduct](https://github.com/gethyas/.github/blob/main/CODE_OF_CONDUCT.md)
|
||||
- [Project Funding](.github/FUNDING.md)
|
||||
- [Website](https://getdoks.org/)
|
||||
|
||||
## Sponsors
|
||||
|
||||
Support this project by becoming a sponsor. Your logo will show up here with a link to your website.
|
||||
|
||||
[![OC sponsor 0](https://opencollective.com/doks/tiers/sponsor/0/avatar.svg)](https://opencollective.com/doks/tiers/sponsor/0/website)
|
||||
[![OC sponsor 1](https://opencollective.com/doks/tiers/sponsor/1/avatar.svg)](https://opencollective.com/doks/tiers/sponsor/1/website)
|
||||
|
||||
## Backers
|
||||
|
||||
Support this project by becoming a backer. Your avatar will show up here.
|
||||
|
||||
[![Backers](https://opencollective.com/doks/tiers/backer.svg?49741992)](https://opencollective.com/doks)
|
||||
Doks is supported by Netlify, Algolia, and several other amazing organizations and inidviduals. [Sponsor Doks!](.github/FUNDING.md) ❤️
|
||||
|
|
|
@ -1,7 +0,0 @@
|
|||
# Reporting Security Issues
|
||||
|
||||
The Doks team and community take security issues in Doks seriously. We appreciate your efforts to responsibly disclose your findings, and will make every effort to acknowledge your contributions.
|
||||
|
||||
To report a security issue, email [security@getdoks.org](mailto:security@getdoks.org) and include the word "SECURITY" in the subject line.
|
||||
|
||||
We'll endeavor to respond quickly, and will keep you updated throughout the process.
|
|
@ -1,8 +0,0 @@
|
|||
---
|
||||
title: "{{ replace .Name "-" " " | title }}"
|
||||
description: ""
|
||||
date: {{ .Date }}
|
||||
lastmod: {{ .Date }}
|
||||
draft: true
|
||||
images: []
|
||||
---
|
|
@ -1,15 +0,0 @@
|
|||
---
|
||||
title: "{{ replace .Name "-" " " | title }}"
|
||||
description: ""
|
||||
lead: ""
|
||||
date: {{ .Date }}
|
||||
lastmod: {{ .Date }}
|
||||
draft: true
|
||||
images: []
|
||||
menu:
|
||||
docs:
|
||||
parent: ""
|
||||
identifier: "{{ .Name }}-{{ delimit (shuffle (split (md5 .Name) "" )) "" }}"
|
||||
weight: 999
|
||||
toc: true
|
||||
---
|
|
@ -1,10 +0,0 @@
|
|||
---
|
||||
title: "Docs"
|
||||
description: ""
|
||||
lead: ""
|
||||
date: 2022-01-25T14:40:56+01:00
|
||||
lastmod: 2022-01-25T14:40:56+01:00
|
||||
draft: false
|
||||
images: []
|
||||
type: docs
|
||||
---
|
|
@ -1,10 +0,0 @@
|
|||
---
|
||||
title: "Lorem"
|
||||
description: ""
|
||||
lead: ""
|
||||
date: 2022-01-25T14:41:21+01:00
|
||||
lastmod: 2022-01-25T14:41:21+01:00
|
||||
draft: false
|
||||
images: []
|
||||
type: docs
|
||||
---
|
|
@ -1,16 +0,0 @@
|
|||
---
|
||||
title: "Ipsum"
|
||||
description: ""
|
||||
lead: ""
|
||||
date: 2022-01-25T14:41:39+01:00
|
||||
lastmod: 2022-01-25T14:41:39+01:00
|
||||
draft: false
|
||||
images: []
|
||||
type: docs
|
||||
menu:
|
||||
{{ .Section }}:
|
||||
parent: "lorem"
|
||||
identifier: "{{ .Name }}-{{ delimit (shuffle (split (md5 .Name) "" )) "" }}"
|
||||
weight: 100
|
||||
toc: true
|
||||
---
|
Binary file not shown.
Before Width: | Height: | Size: 4.6 KiB |
|
@ -1,5 +0,0 @@
|
|||
Object.keys(localStorage).forEach(function(key) {
|
||||
if (/^global-alert-/.test(key)) {
|
||||
document.documentElement.setAttribute('data-global-alert', 'closed');
|
||||
}
|
||||
});
|
|
@ -1,20 +0,0 @@
|
|||
var announcement = document.getElementById('announcement');
|
||||
|
||||
if (announcement !== null) {
|
||||
|
||||
var id = announcement.dataset.id;
|
||||
|
||||
Object.keys(localStorage).forEach(function(key) {
|
||||
if (/^global-alert-/.test(key)) {
|
||||
if (key !== id ) {
|
||||
localStorage.removeItem(key);
|
||||
document.documentElement.removeAttribute('data-global-alert');
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
announcement.addEventListener('closed.bs.alert', () => {
|
||||
localStorage.setItem(id, 'closed');
|
||||
});
|
||||
|
||||
}
|
|
@ -1,2 +0,0 @@
|
|||
import 'bootstrap/dist/js/bootstrap.bundle.min.js'
|
||||
// import 'bootstrap/dist/js/bootstrap.min.js'
|
|
@ -1,37 +0,0 @@
|
|||
import Clipboard from 'clipboard';
|
||||
|
||||
var pre = document.getElementsByTagName('pre');
|
||||
|
||||
for (var i = 0; i < pre.length; ++ i)
|
||||
{
|
||||
var element = pre[i];
|
||||
var mermaid = element.getElementsByClassName('language-mermaid')[0];
|
||||
|
||||
if (mermaid == null) {
|
||||
element.insertAdjacentHTML('afterbegin', '<button class="btn btn-copy"></button>');
|
||||
}
|
||||
}
|
||||
|
||||
var clipboard = new Clipboard('.btn-copy', {
|
||||
|
||||
target: function(trigger) {
|
||||
return trigger.nextElementSibling;
|
||||
},
|
||||
|
||||
});
|
||||
|
||||
clipboard.on('success', function(e) {
|
||||
|
||||
/*
|
||||
console.info('Action:', e.action);
|
||||
console.info('Text:', e.text);
|
||||
console.info('Trigger:', e.trigger);
|
||||
*/
|
||||
|
||||
e.clearSelection();
|
||||
});
|
||||
|
||||
clipboard.on('error', function(e) {
|
||||
console.error('Action:', e.action);
|
||||
console.error('Trigger:', e.trigger);
|
||||
});
|
|
@ -1,21 +0,0 @@
|
|||
const globalDark = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
const localMode = localStorage.getItem('theme');
|
||||
|
||||
if (globalDark && (localMode === null)) {
|
||||
|
||||
localStorage.setItem('theme', 'dark');
|
||||
document.documentElement.setAttribute('data-dark-mode', '');
|
||||
|
||||
}
|
||||
|
||||
if (globalDark && (localMode === 'dark')) {
|
||||
|
||||
document.documentElement.setAttribute('data-dark-mode', '');
|
||||
|
||||
}
|
||||
|
||||
if (localMode === 'dark') {
|
||||
|
||||
document.documentElement.setAttribute('data-dark-mode', '');
|
||||
|
||||
}
|
|
@ -1,38 +0,0 @@
|
|||
const mode = document.getElementById('mode');
|
||||
|
||||
if (mode !== null) {
|
||||
|
||||
window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', event => {
|
||||
|
||||
if (event.matches) {
|
||||
|
||||
localStorage.setItem('theme', 'dark');
|
||||
document.documentElement.setAttribute('data-dark-mode', '');
|
||||
|
||||
} else {
|
||||
|
||||
localStorage.setItem('theme', 'light');
|
||||
document.documentElement.removeAttribute('data-dark-mode');
|
||||
|
||||
}
|
||||
|
||||
})
|
||||
|
||||
mode.addEventListener('click', () => {
|
||||
|
||||
document.documentElement.toggleAttribute('data-dark-mode');
|
||||
localStorage.setItem('theme', document.documentElement.hasAttribute('data-dark-mode') ? 'dark' : 'light');
|
||||
|
||||
});
|
||||
|
||||
if (localStorage.getItem('theme') === 'dark') {
|
||||
|
||||
document.documentElement.setAttribute('data-dark-mode', '');
|
||||
|
||||
} else {
|
||||
|
||||
document.documentElement.removeAttribute('data-dark-mode');
|
||||
|
||||
}
|
||||
|
||||
}
|
|
@ -1,26 +0,0 @@
|
|||
import hljs from 'highlight.js/lib/core';
|
||||
|
||||
import javascript from 'highlight.js/lib/languages/javascript';
|
||||
import json from 'highlight.js/lib/languages/json';
|
||||
import bash from 'highlight.js/lib/languages/bash';
|
||||
import xml from 'highlight.js/lib/languages/xml';
|
||||
import ini from 'highlight.js/lib/languages/ini';
|
||||
import yaml from 'highlight.js/lib/languages/yaml';
|
||||
import markdown from 'highlight.js/lib/languages/markdown';
|
||||
import python from 'highlight.js/lib/languages/python';
|
||||
|
||||
hljs.registerLanguage('javascript', javascript);
|
||||
hljs.registerLanguage('json', json);
|
||||
hljs.registerLanguage('bash', bash);
|
||||
hljs.registerLanguage('html', xml);
|
||||
hljs.registerLanguage('ini', ini);
|
||||
hljs.registerLanguage('toml', ini);
|
||||
hljs.registerLanguage('yaml', yaml);
|
||||
hljs.registerLanguage('md', markdown);
|
||||
hljs.registerLanguage('python', python);
|
||||
|
||||
document.addEventListener('DOMContentLoaded', () => {
|
||||
document.querySelectorAll('pre code:not(.language-mermaid)').forEach((block) => {
|
||||
hljs.highlightElement(block);
|
||||
});
|
||||
});
|
|
@ -1,179 +0,0 @@
|
|||
var suggestions = document.getElementById('suggestions');
|
||||
var search = document.getElementById('search');
|
||||
|
||||
if (search !== null) {
|
||||
document.addEventListener('keydown', inputFocus);
|
||||
}
|
||||
|
||||
function inputFocus(e) {
|
||||
if (e.ctrlKey && e.key === '/' ) {
|
||||
e.preventDefault();
|
||||
search.focus();
|
||||
}
|
||||
if (e.key === 'Escape' ) {
|
||||
search.blur();
|
||||
suggestions.classList.add('d-none');
|
||||
}
|
||||
}
|
||||
|
||||
document.addEventListener('click', function(event) {
|
||||
|
||||
var isClickInsideElement = suggestions.contains(event.target);
|
||||
|
||||
if (!isClickInsideElement) {
|
||||
suggestions.classList.add('d-none');
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
/*
|
||||
Source:
|
||||
- https://dev.to/shubhamprakash/trap-focus-using-javascript-6a3
|
||||
*/
|
||||
|
||||
document.addEventListener('keydown',suggestionFocus);
|
||||
|
||||
function suggestionFocus(e) {
|
||||
const suggestionsHidden = suggestions.classList.contains('d-none');
|
||||
if (suggestionsHidden) return;
|
||||
|
||||
const focusableSuggestions= [...suggestions.querySelectorAll('a')];
|
||||
if (focusableSuggestions.length === 0) return;
|
||||
|
||||
const index = focusableSuggestions.indexOf(document.activeElement);
|
||||
|
||||
if (e.key === "ArrowUp") {
|
||||
e.preventDefault();
|
||||
const nextIndex = index > 0 ? index - 1 : 0;
|
||||
focusableSuggestions[nextIndex].focus();
|
||||
}
|
||||
else if (e.key === "ArrowDown") {
|
||||
e.preventDefault();
|
||||
const nextIndex= index + 1 < focusableSuggestions.length ? index + 1 : index;
|
||||
focusableSuggestions[nextIndex].focus();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
Source:
|
||||
- https://github.com/nextapps-de/flexsearch#index-documents-field-search
|
||||
- https://raw.githack.com/nextapps-de/flexsearch/master/demo/autocomplete.html
|
||||
*/
|
||||
|
||||
(function(){
|
||||
|
||||
var index = new FlexSearch.Document({
|
||||
tokenize: "forward",
|
||||
cache: 100,
|
||||
document: {
|
||||
id: 'id',
|
||||
store: [
|
||||
"href", "title", "description"
|
||||
],
|
||||
index: ["title", "description", "content"]
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
// Not yet supported: https://github.com/nextapps-de/flexsearch#complex-documents
|
||||
|
||||
/*
|
||||
var docs = [
|
||||
{{ range $index, $page := (where .Site.Pages "Section" "docs") -}}
|
||||
{
|
||||
id: {{ $index }},
|
||||
href: "{{ .Permalink }}",
|
||||
title: {{ .Title | jsonify }},
|
||||
description: {{ .Params.description | jsonify }},
|
||||
content: {{ .Content | jsonify }}
|
||||
},
|
||||
{{ end -}}
|
||||
];
|
||||
*/
|
||||
|
||||
// https://discourse.gohugo.io/t/range-length-or-last-element/3803/2
|
||||
|
||||
{{ $list := slice }}
|
||||
{{- if and (isset .Site.Params.options "searchsectionsindex") (not (eq (len .Site.Params.options.searchSectionsIndex) 0)) }}
|
||||
{{- if eq .Site.Params.options.searchSectionsIndex "ALL" }}
|
||||
{{- $list = .Site.Pages }}
|
||||
{{- else }}
|
||||
{{- $list = (where .Site.Pages "Type" "in" .Site.Params.options.searchSectionsIndex) }}
|
||||
{{- if (in .Site.Params.options.searchSectionsIndex "HomePage") }}
|
||||
{{ $list = $list | append .Site.Home }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- else }}
|
||||
{{- $list = (where .Site.Pages "Section" "docs") }}
|
||||
{{- end }}
|
||||
|
||||
{{ $len := (len $list) -}}
|
||||
|
||||
{{ range $index, $element := $list -}}
|
||||
index.add(
|
||||
{
|
||||
id: {{ $index }},
|
||||
href: "{{ .RelPermalink }}",
|
||||
title: {{ .Title | jsonify }},
|
||||
{{ with .Description -}}
|
||||
description: {{ . | jsonify }},
|
||||
{{ else -}}
|
||||
description: {{ .Summary | plainify | jsonify }},
|
||||
{{ end -}}
|
||||
content: {{ .Plain | jsonify }}
|
||||
}
|
||||
);
|
||||
{{ end -}}
|
||||
|
||||
search.addEventListener('input', show_results, true);
|
||||
|
||||
function show_results(){
|
||||
const maxResult = 5;
|
||||
var searchQuery = this.value;
|
||||
var results = index.search(searchQuery, {limit: maxResult, enrich: true});
|
||||
|
||||
// flatten results since index.search() returns results for each indexed field
|
||||
const flatResults = new Map(); // keyed by href to dedupe results
|
||||
for (const result of results.flatMap(r => r.result)) {
|
||||
if (flatResults.has(result.doc.href)) continue;
|
||||
flatResults.set(result.doc.href, result.doc);
|
||||
}
|
||||
|
||||
suggestions.innerHTML = "";
|
||||
suggestions.classList.remove('d-none');
|
||||
|
||||
// inform user that no results were found
|
||||
if (flatResults.size === 0 && searchQuery) {
|
||||
const noResultsMessage = document.createElement('div')
|
||||
noResultsMessage.innerHTML = `No results for "<strong>${searchQuery}</strong>"`
|
||||
noResultsMessage.classList.add("suggestion__no-results");
|
||||
suggestions.appendChild(noResultsMessage);
|
||||
return;
|
||||
}
|
||||
|
||||
// construct a list of suggestions
|
||||
for(const [href, doc] of flatResults) {
|
||||
const entry = document.createElement('div');
|
||||
suggestions.appendChild(entry);
|
||||
|
||||
const a = document.createElement('a');
|
||||
a.href = href;
|
||||
entry.appendChild(a);
|
||||
|
||||
const title = document.createElement('span');
|
||||
title.textContent = doc.title;
|
||||
title.classList.add("suggestion__title");
|
||||
a.appendChild(title);
|
||||
|
||||
const description = document.createElement('span');
|
||||
description.textContent = doc.description;
|
||||
description.classList.add("suggestion__description");
|
||||
a.appendChild(description);
|
||||
|
||||
suggestions.appendChild(entry);
|
||||
|
||||
if(suggestions.childElementCount == maxResult) break;
|
||||
}
|
||||
}
|
||||
}());
|
|
@ -1 +0,0 @@
|
|||
import 'instant.page';
|
|
@ -1,10 +0,0 @@
|
|||
document.addEventListener('DOMContentLoaded', function() {
|
||||
renderMathInElement(document.body, {
|
||||
delimiters: [
|
||||
{left: '$$', right: '$$', display: true},
|
||||
{left: '$', right: '$', display: false},
|
||||
{left: '\\(', right: '\\)', display: false},
|
||||
{left: '\\[', right: '\\]', display: true},
|
||||
],
|
||||
});
|
||||
});
|
|
@ -1 +0,0 @@
|
|||
import 'lazysizes';
|
|
@ -1,11 +0,0 @@
|
|||
import mermaid from 'mermaid';
|
||||
|
||||
var config = {
|
||||
theme: 'default',
|
||||
fontFamily: '"Jost", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, "Helvetica Neue", arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";',
|
||||
};
|
||||
|
||||
document.addEventListener('DOMContentLoaded', () => {
|
||||
mermaid.initialize(config);
|
||||
mermaid.init(undefined, '.language-mermaid');
|
||||
});
|
|
@ -1,14 +0,0 @@
|
|||
// Adds scroll position lock for default docs sidebar
|
||||
|
||||
if (document.querySelector('#sidebar-default') !== null) {
|
||||
let sidebar = document.getElementById('sidebar-default');
|
||||
|
||||
let pos = sessionStorage.getItem('sidebar-scroll');
|
||||
if (pos !== null) {
|
||||
sidebar.scrollTop = parseInt(pos, 10);
|
||||
}
|
||||
|
||||
window.addEventListener('beforeunload', () => {
|
||||
sessionStorage.setItem('sidebar-scroll', sidebar.scrollTop);
|
||||
});
|
||||
}
|
|
@ -1,20 +0,0 @@
|
|||
var topbutton = document.getElementById('toTop');
|
||||
|
||||
if (topbutton !== null) {
|
||||
|
||||
topbutton.style.display = 'none';
|
||||
window.onscroll = function() {
|
||||
scrollFunction()
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
function scrollFunction() {
|
||||
|
||||
if (document.body.scrollTop > 40 || document.documentElement.scrollTop > 40) {
|
||||
topbutton.style.display = 'block';
|
||||
} else {
|
||||
topbutton.style.display = 'none';
|
||||
}
|
||||
|
||||
}
|
|
@ -1,35 +0,0 @@
|
|||
/** Import Bootstrap functions */
|
||||
@import "bootstrap/scss/functions";
|
||||
|
||||
/** Import theme variables */
|
||||
@import "common/variables";
|
||||
|
||||
/** Import Bootstrap */
|
||||
@import "bootstrap/scss/bootstrap";
|
||||
|
||||
/** Import highlight.js */
|
||||
// @import "highlight.js/scss/github-dark-dimmed";
|
||||
|
||||
/** Import KaTeX */
|
||||
@import "katex/dist/katex";
|
||||
|
||||
/** Import theme styles */
|
||||
@import "common/fonts";
|
||||
@import "common/global";
|
||||
@import "common/dark";
|
||||
@import "components/alerts";
|
||||
@import "components/buttons";
|
||||
@import "components/code";
|
||||
@import "components/details";
|
||||
@import "components/syntax";
|
||||
@import "components/comments";
|
||||
@import "components/forms";
|
||||
@import "components/images";
|
||||
@import "components/mermaid";
|
||||
@import "components/search";
|
||||
@import "components/tables";
|
||||
@import "layouts/footer";
|
||||
@import "layouts/header";
|
||||
@import "layouts/pages";
|
||||
@import "layouts/posts";
|
||||
@import "layouts/sidebar";
|
|
@ -1,582 +0,0 @@
|
|||
/** Theme variables */
|
||||
|
||||
// Source: https://material.io/design/color/dark-theme.html
|
||||
|
||||
$body-bg-dark: $gray-900;
|
||||
$body-overlay-dark: darken($body-bg-dark, 2.5%);
|
||||
|
||||
/*
|
||||
$border-dark: darken($body-bg-dark, 2.5%);
|
||||
*/
|
||||
$border-dark: $gray-800;
|
||||
$body-color-dark: $gray-300;
|
||||
$dots-dark: darken($body-color-dark, 50%);
|
||||
|
||||
$link-color-dark: $blue-300;
|
||||
$button-color-dark: $link-color-dark;
|
||||
$focus-color-dark: lighten($link-color-dark, 2.5%);
|
||||
|
||||
$navbar-dark-color: $body-color-dark;
|
||||
$navbar-dark-hover-color: $link-color-dark;
|
||||
$navbar-dark-active-color: $link-color-dark;
|
||||
|
||||
/** Theme styles */
|
||||
|
||||
[data-dark-mode] body {
|
||||
background: $body-bg-dark;
|
||||
color: $body-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body a {
|
||||
color: $link-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body a.text-body {
|
||||
color: $body-color-dark !important;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .btn-primary {
|
||||
@include button-variant($button-color-dark, $button-color-dark);
|
||||
|
||||
color: $body-bg-dark !important;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .btn-outline-primary {
|
||||
@include button-outline-variant($button-color-dark, $button-color-dark);
|
||||
|
||||
color: $link-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .btn-outline-primary:hover {
|
||||
color: $body-bg-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .btn-doks-light {
|
||||
color: $navbar-dark-color;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .show > .btn-doks-light,
|
||||
[data-dark-mode] body .btn-doks-light:hover,
|
||||
[data-dark-mode] body .btn-doks-light:active {
|
||||
color: $link-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .btn-menu svg {
|
||||
color: $body-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .doks-sidebar-toggle {
|
||||
color: $navbar-dark-color;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .btn-menu:hover,
|
||||
[data-dark-mode] body .btn-doks-light:hover,
|
||||
[data-dark-mode] body .doks-sidebar-toggle:hover {
|
||||
background: $body-overlay-dark;
|
||||
}
|
||||
|
||||
/*
|
||||
[data-dark-mode] body .dropdown-menu {
|
||||
@extend .dropdown-menu-dark;
|
||||
}
|
||||
*/
|
||||
|
||||
[data-dark-mode] body .navbar,
|
||||
[data-dark-mode] body .doks-subnavbar {
|
||||
background-color: rgba(33, 37, 41, 0.95);
|
||||
border-bottom: 1px solid $border-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body.home .navbar {
|
||||
border-bottom: 0;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .offcanvas-header {
|
||||
border-bottom: 1px solid $gray-800;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .offcanvas .nav-link {
|
||||
color: $body-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .offcanvas .nav-link:hover,
|
||||
[data-dark-mode] body .offcanvas .nav-link:focus {
|
||||
color: $link-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .offcanvas .nav-link.active {
|
||||
color: $link-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .navbar-light .navbar-brand {
|
||||
color: $navbar-dark-color !important;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .navbar-light .navbar-nav .nav-link {
|
||||
color: $navbar-dark-color;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .navbar-light .navbar-nav .nav-link:hover,
|
||||
[data-dark-mode] body .navbar-light .navbar-nav .nav-link:focus {
|
||||
color: $navbar-dark-hover-color;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .navbar-light .navbar-nav .nav-link.disabled {
|
||||
color: $navbar-dark-disabled-color;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .navbar-light .navbar-nav .show > .nav-link,
|
||||
[data-dark-mode] body .navbar-light .navbar-nav .active > .nav-link,
|
||||
[data-dark-mode] body .navbar-light .navbar-nav .nav-link.show,
|
||||
[data-dark-mode] body .navbar-light .navbar-nav .nav-link.active {
|
||||
color: $navbar-dark-active-color;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .navbar-light .navbar-text {
|
||||
color: $navbar-dark-color;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .alert-primary a {
|
||||
color: $body-bg-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .alert-doks {
|
||||
background: $body-overlay-dark;
|
||||
color: $body-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .alert-doks a {
|
||||
color: $link-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .page-links a {
|
||||
color: $body-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .btn-toggle-nav a {
|
||||
color: $body-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .showcase-meta a {
|
||||
color: $body-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .showcase-meta a:hover,
|
||||
[data-dark-mode] body .showcase-meta a:focus {
|
||||
color: $link-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .docs-link:hover,
|
||||
[data-dark-mode] body .docs-link.active,
|
||||
[data-dark-mode] body .page-links a:hover {
|
||||
text-decoration: none;
|
||||
color: $link-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .btn-toggle {
|
||||
color: $body-color-dark;
|
||||
background-color: transparent;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .btn-toggle:hover,
|
||||
[data-dark-mode] body .btn-toggle:focus {
|
||||
color: $body-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .btn-toggle::before {
|
||||
width: 1.25em;
|
||||
line-height: 0;
|
||||
content: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='rgba%28222, 226, 230, 0.75%29' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M5 14l6-6-6-6'/%3e%3c/svg%3e");
|
||||
transition: transform 0.35s ease;
|
||||
transform-origin: 0.5em 50%;
|
||||
margin-bottom: 0.125rem;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .btn-toggle[aria-expanded="true"] {
|
||||
color: $body-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .btn-toggle[aria-expanded="true"]::before {
|
||||
transform: rotate(90deg);
|
||||
}
|
||||
|
||||
[data-dark-mode] body .btn-toggle-nav a:hover,
|
||||
[data-dark-mode] body .btn-toggle-nav a:focus {
|
||||
color: $link-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .btn-toggle-nav a.active {
|
||||
color: $link-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .navbar-light .navbar-text a {
|
||||
color: $navbar-dark-active-color;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .docs-links h3.sidebar-link a,
|
||||
[data-dark-mode] body .page-links h3.sidebar-link a {
|
||||
color: $body-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .navbar-light .navbar-text a:hover,
|
||||
[data-dark-mode] body .navbar-light .navbar-text a:focus {
|
||||
color: $navbar-dark-active-color;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .navbar .btn-link {
|
||||
color: $navbar-dark-color;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .content .btn-link {
|
||||
color: $link-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .content .btn-link:hover {
|
||||
color: $link-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .content img[src^="https://latex.codecogs.com/svg.latex"] {
|
||||
filter: invert(1);
|
||||
}
|
||||
|
||||
[data-dark-mode] body .navbar .btn-link:hover {
|
||||
color: $navbar-dark-hover-color;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .navbar .btn-link:active {
|
||||
color: $navbar-dark-active-color;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .form-control.is-search {
|
||||
background: $body-overlay-dark;
|
||||
border: 1px solid transparent;
|
||||
color: $gray-300;
|
||||
|
||||
/*
|
||||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%236c757d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-search'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E");
|
||||
background-repeat: no-repeat;
|
||||
background-position: right calc(0.375em + 0.1875rem) center;
|
||||
background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
|
||||
*/
|
||||
}
|
||||
|
||||
[data-dark-mode] body .form-control.is-search:focus {
|
||||
border: 1px solid $link-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .doks-search::after {
|
||||
color: $gray-300;
|
||||
border: 1px solid $gray-700;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .text-dark {
|
||||
color: $body-color-dark !important;
|
||||
}
|
||||
|
||||
/*
|
||||
[data-dark-mode] body .navbar-form::after {
|
||||
color: $gray-600;
|
||||
border: 1px solid $gray-800;
|
||||
}
|
||||
*/
|
||||
|
||||
[data-dark-mode] body .form-control {
|
||||
color: $gray-300;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .form-control::placeholder {
|
||||
color: $gray-400;
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .border-top {
|
||||
border-top: 1px solid $border-dark !important;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(lg) {
|
||||
[data-dark-mode] body .docs-sidebar {
|
||||
order: 0;
|
||||
border-right: 1px solid $border-dark;
|
||||
}
|
||||
}
|
||||
|
||||
[data-dark-mode] body .docs-navigation {
|
||||
border-top: 1px solid $border-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body pre code::-webkit-scrollbar-thumb {
|
||||
background: $gray-400;
|
||||
}
|
||||
|
||||
[data-dark-mode] body code:not(.hljs) {
|
||||
background: $body-overlay-dark;
|
||||
color: $body-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body pre code:hover {
|
||||
scrollbar-width: thin;
|
||||
scrollbar-color: $border-dark transparent;
|
||||
}
|
||||
|
||||
[data-dark-mode] body pre code::-webkit-scrollbar-thumb:hover {
|
||||
background: $gray-500;
|
||||
}
|
||||
|
||||
[data-dark-mode] body blockquote {
|
||||
border-left: 3px solid $border-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .footer {
|
||||
border-top: 1px solid $border-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .docs-links,
|
||||
[data-dark-mode] body .docs-toc {
|
||||
scrollbar-width: thin;
|
||||
scrollbar-color: $body-bg-dark $body-bg-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .docs-links::-webkit-scrollbar,
|
||||
[data-dark-mode] body .docs-toc::-webkit-scrollbar {
|
||||
width: 5px;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .docs-links::-webkit-scrollbar-track,
|
||||
[data-dark-mode] body .docs-toc::-webkit-scrollbar-track {
|
||||
background: $body-bg-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .docs-links::-webkit-scrollbar-thumb,
|
||||
[data-dark-mode] body .docs-toc::-webkit-scrollbar-thumb {
|
||||
background: $body-bg-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .docs-links:hover,
|
||||
[data-dark-mode] body .docs-toc:hover {
|
||||
scrollbar-width: thin;
|
||||
scrollbar-color: $border-dark $body-bg-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .docs-links:hover::-webkit-scrollbar-thumb,
|
||||
[data-dark-mode] body .docs-toc:hover::-webkit-scrollbar-thumb {
|
||||
background: $border-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .docs-links::-webkit-scrollbar-thumb:hover,
|
||||
[data-dark-mode] body .docs-toc::-webkit-scrollbar-thumb:hover {
|
||||
background: $border-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .docs-links h3:not(:first-child) {
|
||||
border-top: 1px solid $border-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body a.docs-link {
|
||||
color: $body-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .page-links li:not(:first-child) {
|
||||
border-top: 1px dashed $border-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .card {
|
||||
background: $body-bg-dark;
|
||||
border: 1px solid $border-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .card.bg-light {
|
||||
background: $body-overlay-dark !important;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .navbar .menu-icon .navicon {
|
||||
background: $navbar-dark-color;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .navbar .menu-icon .navicon::before,
|
||||
[data-dark-mode] body .navbar .menu-icon .navicon::after {
|
||||
background: $navbar-dark-color;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .logo-light {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .logo-dark {
|
||||
display: inline-block !important;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .bg-light {
|
||||
background: darken($body-bg-dark, 1.5%) !important;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .bg-dots {
|
||||
background-image: radial-gradient($dots-dark 15%, transparent 15%);
|
||||
}
|
||||
|
||||
[data-dark-mode] body .text-muted {
|
||||
color: darken($body-color-dark, 7.5%) !important;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .alert-primary {
|
||||
background: $link-color-dark;
|
||||
color: $body-bg-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .figure-caption {
|
||||
color: $body-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body table {
|
||||
@extend .table-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .copy-status::after {
|
||||
content: "Copy";
|
||||
display: block;
|
||||
color: $body-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .copy-status:hover::after {
|
||||
content: "Copy";
|
||||
display: block;
|
||||
color: $link-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .copy-status:focus::after,
|
||||
[data-dark-mode] body .copy-status:active::after {
|
||||
content: "Copied";
|
||||
display: block;
|
||||
color: $link-color-dark;
|
||||
}
|
||||
|
||||
/*
|
||||
[data-dark-mode] body .dropdown-toggle:focus,
|
||||
[data-dark-mode] body .doks-sidebar-toggle:focus {
|
||||
box-shadow: 0 0 0 0.2rem $focus-color-dark;
|
||||
}
|
||||
*/
|
||||
|
||||
[data-dark-mode] body .offcanvas {
|
||||
background-color: $body-bg-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .btn-close {
|
||||
background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiNkZWUyZTYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0iZmVhdGhlciBmZWF0aGVyLXgiPjxsaW5lIHgxPSIxOCIgeTE9IjYiIHgyPSI2IiB5Mj0iMTgiPjwvbGluZT48bGluZSB4MT0iNiIgeTE9IjYiIHgyPSIxOCIgeTI9IjE4Ij48L2xpbmU+PC9zdmc+");
|
||||
background-size: 1.5rem;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
[data-dark-mode] body .alert-dismissible .btn-close {
|
||||
background-size: 1.25rem;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
[data-dark-mode] body .btn-close:focus {
|
||||
box-shadow: 0 0 0 0.2rem $focus-color-dark;
|
||||
}
|
||||
*/
|
||||
|
||||
[data-dark-mode] .dropdown-item {
|
||||
color: $body-bg-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body hr.text-black-50 {
|
||||
color: $gray-600 !important;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .email-form .form-control {
|
||||
background: $body-overlay-dark;
|
||||
border: 1px solid transparent;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .email-form .form-control:focus {
|
||||
border: 1px solid $link-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] .page-link {
|
||||
color: $link-color-dark;
|
||||
background-color: transparent;
|
||||
border: $pagination-border-width solid $border-dark;
|
||||
|
||||
&:hover {
|
||||
color: $body-bg-dark;
|
||||
background-color: $body-color-dark;
|
||||
border-color: $body-color-dark;
|
||||
}
|
||||
|
||||
&:focus {
|
||||
color: $body-bg-dark;
|
||||
background-color: $body-color-dark;
|
||||
}
|
||||
}
|
||||
|
||||
[data-dark-mode] .page-item {
|
||||
&.active .page-link {
|
||||
color: $body-bg-dark;
|
||||
|
||||
@include gradient-bg($link-color-dark);
|
||||
|
||||
border-color: $link-color-dark;
|
||||
}
|
||||
|
||||
&.disabled .page-link {
|
||||
color: $pagination-disabled-color;
|
||||
background-color: $body-overlay-dark;
|
||||
border-color: $border-dark;
|
||||
}
|
||||
}
|
||||
|
||||
[data-dark-mode] .dropdown-menu {
|
||||
background: $body-overlay-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] .dropdown-menu .dropdown-item {
|
||||
color: $body-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] .dropdown-menu .dropdown-item:hover {
|
||||
color: $link-color-dark;
|
||||
background: $body-bg-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] .dropdown-menu .dropdown-item.active,
|
||||
[data-dark-mode] .dropdown-menu .dropdown-item:focus {
|
||||
color: $link-color-dark;
|
||||
background: $body-bg-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] .doks-navbar .dropdown-item.current,
|
||||
[data-dark-mode] .doks-subnavbar .dropdown-item.current {
|
||||
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23dee2e6' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
|
||||
background-repeat: no-repeat;
|
||||
background-position: right 1rem top 0.6rem;
|
||||
background-size: 0.75rem 0.75rem;
|
||||
}
|
||||
|
||||
[data-dark-mode] details {
|
||||
border: 1px solid $border-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] summary:hover {
|
||||
background: $body-overlay-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] details[open] > summary {
|
||||
border-bottom: 1px solid $border-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] details summary::before {
|
||||
content: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='rgba%28222, 226, 230, 0.75%29' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M5 14l6-6-6-6'/%3e%3c/svg%3e");
|
||||
}
|
||||
|
||||
[data-dark-mode] #toc a.active {
|
||||
color: $link-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] .btn-light {
|
||||
color: $link-color-dark;
|
||||
background: $body-overlay-dark;
|
||||
border: 1px solid $body-overlay-dark;
|
||||
}
|
|
@ -1,101 +0,0 @@
|
|||
/* jost-regular - latin */
|
||||
@font-face {
|
||||
font-family: Jost;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-display: swap;
|
||||
src:
|
||||
// Google Fonts Jost
|
||||
local("Jost Regular Regular"), // Full Name
|
||||
local("Jost-Regular"), // PostScript name
|
||||
// indestructible Jost*
|
||||
local("Jost* Book"),
|
||||
local("Jost-Book"),
|
||||
url("fonts/vendor/jost/jost-v4-latin-regular.woff2") format("woff2"),
|
||||
url("fonts/vendor/jost/jost-v4-latin-regular.woff") format("woff"); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
|
||||
}
|
||||
|
||||
/* jost-500 - latin */
|
||||
@font-face {
|
||||
font-family: Jost;
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
font-display: swap;
|
||||
src:
|
||||
// Google Fonts Jost
|
||||
local("Jost Regular Medium"),
|
||||
local("JostRoman-Medium"),
|
||||
// indestructible Jost*
|
||||
local("Jost* Medium"),
|
||||
local("Jost-Medium"),
|
||||
url("fonts/vendor/jost/jost-v4-latin-500.woff2") format("woff2"),
|
||||
url("fonts/vendor/jost/jost-v4-latin-500.woff") format("woff"); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
|
||||
}
|
||||
|
||||
/* jost-700 - latin */
|
||||
@font-face {
|
||||
font-family: Jost;
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
font-display: swap;
|
||||
src:
|
||||
// Google Fonts Jost
|
||||
local("Jost Regular Bold"),
|
||||
local("JostRoman-Bold"),
|
||||
// indestructible Jost*
|
||||
local("Jost* Bold"),
|
||||
local("Jost-Bold"),
|
||||
url("fonts/vendor/jost/jost-v4-latin-700.woff2") format("woff2"),
|
||||
url("fonts/vendor/jost/jost-v4-latin-700.woff") format("woff"); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
|
||||
}
|
||||
|
||||
/* jost-italic - latin */
|
||||
@font-face {
|
||||
font-family: Jost;
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
font-display: swap;
|
||||
src:
|
||||
// Google Fonts Jost
|
||||
local("Jost Italic Italic"),
|
||||
local("Jost-Italic"),
|
||||
// indestructible Jost*
|
||||
local("Jost* BookItalic"),
|
||||
local("Jost-BookItalic"),
|
||||
url("fonts/vendor/jost/jost-v4-latin-italic.woff2") format("woff2"),
|
||||
url("fonts/vendor/jost/jost-v4-latin-italic.woff") format("woff"); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
|
||||
}
|
||||
|
||||
/* jost-500italic - latin */
|
||||
@font-face {
|
||||
font-family: Jost;
|
||||
font-style: italic;
|
||||
font-weight: 500;
|
||||
font-display: swap;
|
||||
src:
|
||||
// Google Fonts Jost
|
||||
local("Jost Italic Medium Italic"),
|
||||
local("JostItalic-Medium"),
|
||||
// indestructible Jost*
|
||||
local("Jost* Medium Italic"),
|
||||
local("Jost-MediumItalic"),
|
||||
url("fonts/vendor/jost/jost-v4-latin-500italic.woff2") format("woff2"),
|
||||
url("fonts/vendor/jost/jost-v4-latin-500italic.woff") format("woff"); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
|
||||
}
|
||||
|
||||
/* jost-700italic - latin */
|
||||
@font-face {
|
||||
font-family: Jost;
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
font-display: swap;
|
||||
src:
|
||||
// Google Fonts Jost
|
||||
local("Jost Italic Bold Italic"),
|
||||
local("JostItalic-Bold"),
|
||||
// indestructible Jost*
|
||||
local("Jost* Bold Italic"),
|
||||
local("Jost-BoldItalic"),
|
||||
url("fonts/vendor/jost/jost-v4-latin-700italic.woff2") format("woff2"),
|
||||
url("fonts/vendor/jost/jost-v4-latin-700italic.woff") format("woff"); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
|
||||
}
|
|
@ -1,288 +0,0 @@
|
|||
.contributors .content,
|
||||
.blog .content,
|
||||
.page .content,
|
||||
.error404 .content,
|
||||
.docs.list .content,
|
||||
.tutorial.list .content,
|
||||
.showcase.list .content,
|
||||
.categories.list .content,
|
||||
.tags.list .content {
|
||||
padding-top: 1rem;
|
||||
padding-bottom: 3rem;
|
||||
}
|
||||
|
||||
.content img {
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6,
|
||||
.h1,
|
||||
.h2,
|
||||
.h3,
|
||||
.h4,
|
||||
.h5,
|
||||
.h6 {
|
||||
margin: 2rem 0 1rem;
|
||||
}
|
||||
|
||||
.offcanvas-header {
|
||||
border-bottom: 1px solid $gray-300;
|
||||
padding-top: 1.0625rem;
|
||||
padding-bottom: 0.8125rem;
|
||||
}
|
||||
|
||||
h5.offcanvas-title {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
body.docs {
|
||||
padding-top: 0 !important;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
body {
|
||||
font-size: $font-size-md;
|
||||
|
||||
/*
|
||||
padding-top: 4rem !important;
|
||||
*/
|
||||
}
|
||||
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6,
|
||||
.h1,
|
||||
.h2,
|
||||
.h3,
|
||||
.h4,
|
||||
.h5,
|
||||
.h6 {
|
||||
margin-bottom: 1.125rem;
|
||||
}
|
||||
}
|
||||
|
||||
.home h1 {
|
||||
/* font-size: calc(1.375rem + 1.5vw); */
|
||||
font-size: calc(1.875rem + 1.5vw);
|
||||
}
|
||||
|
||||
a:hover,
|
||||
a:focus {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
a.btn:hover,
|
||||
a.btn:focus {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.section {
|
||||
padding-top: 5rem;
|
||||
padding-bottom: 5rem;
|
||||
}
|
||||
|
||||
.section-md {
|
||||
padding-top: 3rem;
|
||||
padding-bottom: 3rem;
|
||||
}
|
||||
|
||||
.section-sm {
|
||||
padding-top: 1rem;
|
||||
padding-bottom: 1rem;
|
||||
}
|
||||
|
||||
/*
|
||||
.section svg {
|
||||
display: inline-block;
|
||||
width: 2rem;
|
||||
height: 2rem;
|
||||
vertical-align: text-top;
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
body {
|
||||
padding-top: 3.5625rem;
|
||||
}
|
||||
*/
|
||||
|
||||
.docs-sidebar {
|
||||
order: 2;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(lg) {
|
||||
.docs-sidebar {
|
||||
order: 0;
|
||||
border-right: 1px solid $gray-200;
|
||||
}
|
||||
|
||||
@supports ((position:-webkit-sticky) or (position:sticky)) {
|
||||
.docs-sidebar {
|
||||
position: -webkit-sticky;
|
||||
position: sticky;
|
||||
top: 4rem;
|
||||
z-index: 1000;
|
||||
height: calc(100vh - 4rem);
|
||||
}
|
||||
|
||||
.docs-sidebar-top {
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(xl) {
|
||||
.docs-sidebar {
|
||||
flex: 0 1 320px;
|
||||
}
|
||||
}
|
||||
|
||||
.docs-links {
|
||||
padding-bottom: 5rem;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(lg) {
|
||||
@supports ((position: -webkit-sticky) or (position: sticky)) {
|
||||
.docs-links {
|
||||
max-height: calc(100vh - 4rem);
|
||||
overflow-y: scroll;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(lg) {
|
||||
.docs-links {
|
||||
display: block;
|
||||
width: auto;
|
||||
margin-right: -1.5rem;
|
||||
padding-bottom: 4rem;
|
||||
}
|
||||
}
|
||||
|
||||
.docs-toc {
|
||||
order: 2;
|
||||
}
|
||||
|
||||
@supports ((position:-webkit-sticky) or (position:sticky)) {
|
||||
.docs-toc {
|
||||
position: -webkit-sticky;
|
||||
position: sticky;
|
||||
top: 4rem;
|
||||
height: calc(100vh - 4rem);
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
.docs-toc-top {
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.docs-content {
|
||||
padding-bottom: 3rem;
|
||||
order: 1;
|
||||
}
|
||||
|
||||
.docs-navigation {
|
||||
border-top: 1px solid $gray-200;
|
||||
margin-top: 2rem;
|
||||
margin-bottom: 0;
|
||||
padding-top: 2rem;
|
||||
}
|
||||
|
||||
.docs-navigation a {
|
||||
font-size: $font-size-base * 0.9;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(lg) {
|
||||
.docs-navigation {
|
||||
margin-bottom: -1rem;
|
||||
}
|
||||
|
||||
.docs-navigation a {
|
||||
font-size: $font-size-base;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar a:hover,
|
||||
.navbar a:focus {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#TableOfContents ul,
|
||||
#toc ul {
|
||||
padding-left: 0;
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
#toc a.active {
|
||||
color: $primary;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
::selection {
|
||||
background: rgba(212, 53, 159, 0.2);
|
||||
}
|
||||
|
||||
.bg-dots {
|
||||
background-image: radial-gradient($gray-300 15%, transparent 15%);
|
||||
background-position: 0 0;
|
||||
background-size: 1rem 1rem;
|
||||
-webkit-mask: linear-gradient(to top, #fff, transparent);
|
||||
mask: linear-gradient(to top, #fff, transparent);
|
||||
width: 100%;
|
||||
height: 9rem;
|
||||
margin-top: -10rem;
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
.bg-dots-md {
|
||||
margin-top: -11rem;
|
||||
}
|
||||
|
||||
.bg-dots-lg {
|
||||
margin-top: -12rem;
|
||||
}
|
||||
|
||||
// https://fossheim.io/writing/posts/css-text-gradient/
|
||||
.gradient-text {
|
||||
background-color: $primary;
|
||||
background-image: linear-gradient(90deg, $primary, $blue-300 50%, $pink-500);
|
||||
background-size: 100%;
|
||||
background-repeat: repeat;
|
||||
-webkit-background-clip: text;
|
||||
-moz-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
-moz-text-fill-color: transparent;
|
||||
}
|
||||
|
||||
.katex {
|
||||
font-size: $font-size-md;
|
||||
}
|
||||
|
||||
.card-bar {
|
||||
border-top: 4px solid;
|
||||
border-image-source: linear-gradient(90deg, $primary, #8ed6fb 50%, #d32e9d);
|
||||
border-image-slice: 1;
|
||||
}
|
||||
|
||||
.modal-backdrop {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.modal-backdrop.show {
|
||||
opacity: 0.7;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
.modal-backdrop.show {
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
|
@ -1,190 +0,0 @@
|
|||
// Color system
|
||||
|
||||
$white: #fff;
|
||||
$gray-100: #f8f9fa;
|
||||
$gray-200: #e9ecef;
|
||||
$gray-300: #dee2e6;
|
||||
$gray-400: #ced4da;
|
||||
$gray-500: #adb5bd;
|
||||
$gray-600: #6c757d;
|
||||
$gray-700: #495057;
|
||||
$gray-800: #343a40;
|
||||
$gray-900: #212529;
|
||||
$black: #000;
|
||||
|
||||
$yellow: #ffe000;
|
||||
$black: #1d2d35;
|
||||
$beige: #fbf7f0;
|
||||
|
||||
// $red: #e55235;
|
||||
$purple: #5d2f86;
|
||||
$brown: #aa9c84;
|
||||
|
||||
$blue-300: #8ed6fb;
|
||||
$pink-100: #fcfaff;
|
||||
$pink-500: #d32e9d;
|
||||
|
||||
$primary: $purple;
|
||||
|
||||
$color-btn-bg: $pink-500;
|
||||
$color-btn-border: darken($pink-500, 5%);
|
||||
$color-btn-text: $white;
|
||||
|
||||
// Options
|
||||
//
|
||||
// Quickly modify global styling by enabling or disabling optional features.
|
||||
|
||||
$enable-caret: true;
|
||||
$enable-rounded: true;
|
||||
$enable-shadows: false;
|
||||
$enable-gradients: false;
|
||||
$enable-transitions: true;
|
||||
$enable-reduced-motion: true;
|
||||
$enable-smooth-scroll: true;
|
||||
$enable-grid-classes: true;
|
||||
$enable-button-pointers: true;
|
||||
$enable-rfs: true;
|
||||
$enable-validation-icons: true;
|
||||
$enable-negative-margins: true;
|
||||
$enable-deprecation-messages: true;
|
||||
$enable-important-utilities: true;
|
||||
|
||||
/** Bootstrap navbar fix (https://git.io/fADqW) */
|
||||
$navbar-dark-toggler-icon-bg: none;
|
||||
$navbar-light-toggler-icon-bg: none;
|
||||
|
||||
// Options
|
||||
//
|
||||
// Quickly modify global styling by enabling or disabling optional features.
|
||||
|
||||
// $enable-responsive-font-sizes: true;
|
||||
|
||||
// Body
|
||||
//
|
||||
// Settings for the `<body>` element.
|
||||
|
||||
$body-bg: $white;
|
||||
$body-color: $black;
|
||||
|
||||
// Links
|
||||
//
|
||||
// Style anchor elements.
|
||||
|
||||
$link-color: $primary;
|
||||
$link-decoration: none;
|
||||
|
||||
// Grid containers
|
||||
//
|
||||
// Define the maximum width of `.container` for different screen sizes.
|
||||
|
||||
$container-max-widths: (
|
||||
sm: 540px,
|
||||
md: 720px,
|
||||
lg: 960px,
|
||||
xl: 1240px,
|
||||
xxl: 1320px
|
||||
);
|
||||
|
||||
@include _assert-ascending($container-max-widths, "$container-max-widths");
|
||||
|
||||
// Grid columns
|
||||
//
|
||||
// Set the number of columns and specify the width of the gutters.
|
||||
|
||||
$grid-columns: 16;
|
||||
$grid-gutter-width: 48px;
|
||||
$grid-row-columns: 6;
|
||||
|
||||
// Components
|
||||
//
|
||||
// Define common padding and border radius sizes and more.
|
||||
|
||||
$border-color: $gray-200;
|
||||
|
||||
// Typography
|
||||
//
|
||||
// Font, line-height, and color for body text, headings, and more.
|
||||
|
||||
// stylelint-disable value-keyword-case
|
||||
$font-family-sans-serif: "Jost", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, "Helvetica Neue", arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
|
||||
$font-family-monospace: sfmono-regular, menlo, monaco, consolas, "Liberation Mono", "Courier New", monospace;
|
||||
$font-family-base: $font-family-sans-serif;
|
||||
// stylelint-enable value-keyword-case
|
||||
|
||||
$font-size-base: 1rem; // Assumes the browser default, typically `16px`
|
||||
$font-size-xl: $font-size-base * 1.375;
|
||||
$font-size-lg: $font-size-base * 1.25;
|
||||
$font-size-md: $font-size-base * 1.125;
|
||||
$font-size-sm: $font-size-base * 0.875;
|
||||
|
||||
// $line-height-base: 1.5;
|
||||
|
||||
$headings-font-family: null;
|
||||
$headings-font-weight: 700;
|
||||
|
||||
$lead-font-weight: 400;
|
||||
|
||||
// Spacing
|
||||
//
|
||||
// Control the default styling of most Bootstrap elements by modifying these
|
||||
// variables. Mostly focused on spacing.
|
||||
// You can add more entries to the $spacers map, should you need more variation.
|
||||
|
||||
$spacer: 1rem;
|
||||
|
||||
// Navbar
|
||||
|
||||
$navbar-padding-y: $spacer / 2;
|
||||
$navbar-padding-x: null;
|
||||
|
||||
$navbar-nav-link-padding-x: 0.5rem;
|
||||
|
||||
$navbar-light-color: $black;
|
||||
$navbar-light-hover-color: $primary;
|
||||
$navbar-light-active-color: $primary;
|
||||
|
||||
// Cards
|
||||
|
||||
$card-border-color: $gray-200;
|
||||
|
||||
// Alerts
|
||||
//
|
||||
// Define alert colors, border radius, and padding.
|
||||
|
||||
$alert-padding-y: $spacer;
|
||||
$alert-padding-x: $spacer * 1.5;
|
||||
$alert-margin-bottom: 0;
|
||||
$alert-border-radius: 0;
|
||||
$alert-link-font-weight: $headings-font-weight;
|
||||
$alert-border-width: 0;
|
||||
|
||||
$alert-bg-scale: 0;
|
||||
$alert-border-scale: 0;
|
||||
$alert-color-scale: 0;
|
||||
|
||||
// docsearch
|
||||
$dropdown-config: (
|
||||
main-color: $purple,
|
||||
layout-type: normal,
|
||||
layout-width: normal,
|
||||
layout-alignment: align,
|
||||
background-color: $white,
|
||||
border-radius: 4,
|
||||
border-width: 1,
|
||||
border-color: $gray-200,
|
||||
box-shadow: none,
|
||||
branding-position: bottom,
|
||||
spacing: normal,
|
||||
include-desc: yes,
|
||||
background-category-header: $white,
|
||||
font-size: normal,
|
||||
header-color: $black,
|
||||
title-color: $black,
|
||||
subtitle-color: $black,
|
||||
text-color: $black,
|
||||
highlight-color: $purple,
|
||||
highlight-opacity: 0.1,
|
||||
highlight-type: underline
|
||||
);
|
||||
|
||||
$input-btn-focus-width: 0;
|
|
@ -1,164 +0,0 @@
|
|||
.alert {
|
||||
font-family: $font-family-monospace;
|
||||
font-size: $font-size-sm;
|
||||
}
|
||||
|
||||
.alert-icon {
|
||||
margin-right: 0.75rem;
|
||||
}
|
||||
|
||||
.docs main .alert {
|
||||
margin: 2rem -1.5rem;
|
||||
}
|
||||
|
||||
.alert .alert-link {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.alert-doks {
|
||||
background: $beige;
|
||||
color: $black;
|
||||
}
|
||||
|
||||
/*
|
||||
.alert-light {
|
||||
color: #215888;
|
||||
background: linear-gradient(-45deg, rgb(212, 245, 255), rgb(234, 250, 255), rgb(234, 250, 255), #d3f6ef);
|
||||
}
|
||||
|
||||
.alert-light .alert-link {
|
||||
color: #215888;
|
||||
}
|
||||
*/
|
||||
|
||||
.alert-white {
|
||||
background-color: rgba(255, 255, 255, 0.95);
|
||||
}
|
||||
|
||||
.alert-primary {
|
||||
color: $white;
|
||||
background-color: $primary;
|
||||
}
|
||||
|
||||
.alert a {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.alert-primary .alert-link {
|
||||
color: $white;
|
||||
}
|
||||
|
||||
/*
|
||||
.alert-primary {
|
||||
color: #084298;
|
||||
background-color: #cfe2ff;
|
||||
border-color: #b6d4fe;
|
||||
}
|
||||
|
||||
.alert-primary .alert-link {
|
||||
color: #06357a;
|
||||
}
|
||||
*/
|
||||
|
||||
.alert-secondary {
|
||||
color: #41464b;
|
||||
background-color: #e2e3e5;
|
||||
border-color: #d3d6d8;
|
||||
}
|
||||
|
||||
.alert-secondary .alert-link {
|
||||
color: #34383c;
|
||||
}
|
||||
|
||||
.alert-success {
|
||||
color: #0f5132;
|
||||
background-color: #d1e7dd;
|
||||
border-color: #badbcc;
|
||||
}
|
||||
|
||||
.alert-success .alert-link {
|
||||
color: #0c4128;
|
||||
}
|
||||
|
||||
.alert-info {
|
||||
color: #055160;
|
||||
background-color: #cff4fc;
|
||||
border-color: #b6effb;
|
||||
}
|
||||
|
||||
.alert-info .alert-link {
|
||||
color: #04414d;
|
||||
}
|
||||
|
||||
.alert-warning {
|
||||
color: #664d03;
|
||||
background-color: #fff3cd;
|
||||
border-color: #ffecb5;
|
||||
}
|
||||
|
||||
.alert-warning .alert-link {
|
||||
color: #523e02;
|
||||
}
|
||||
|
||||
.alert-danger {
|
||||
color: #842029;
|
||||
background-color: #f8d7da;
|
||||
border-color: #f5c2c7;
|
||||
}
|
||||
|
||||
.alert-danger .alert-link {
|
||||
color: #6a1a21;
|
||||
}
|
||||
|
||||
.alert-light {
|
||||
color: #636464;
|
||||
background-color: #fefefe;
|
||||
border-color: #fdfdfe;
|
||||
}
|
||||
|
||||
.alert-light .alert-link {
|
||||
color: #4f5050;
|
||||
}
|
||||
|
||||
.alert-dark {
|
||||
color: #141619;
|
||||
background-color: #d3d3d4;
|
||||
border-color: #bcbebf;
|
||||
}
|
||||
|
||||
.alert-dark .alert-link {
|
||||
color: #101214;
|
||||
}
|
||||
|
||||
.alert .alert-link:hover,
|
||||
.alert .alert-link:focus {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.alert-dismissible .btn-close {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
transform: translateY(-50%);
|
||||
right: 1rem;
|
||||
z-index: 2;
|
||||
padding: 0.5rem;
|
||||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-x'%3E%3Cline x1='18' y1='6' x2='6' y2='18'%3E%3C/line%3E%3Cline x1='6' y1='6' x2='18' y2='18'%3E%3C/line%3E%3C/svg%3E");
|
||||
background-size: 1.5rem;
|
||||
filter: invert(1) grayscale(100%) brightness(200%);
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
.alert-dismissible .btn-close {
|
||||
background-size: 1.25rem;
|
||||
}
|
||||
}
|
||||
|
||||
[data-global-alert="closed"] #announcement {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.alert code {
|
||||
background: darken($beige, 5%);
|
||||
color: $black;
|
||||
padding: 0.25rem 0.5rem;
|
||||
}
|
|
@ -1,255 +0,0 @@
|
|||
.navbar .btn-link {
|
||||
color: $navbar-light-color;
|
||||
padding: 0.4375rem 0;
|
||||
}
|
||||
|
||||
#mode {
|
||||
padding: 0.5rem;
|
||||
}
|
||||
|
||||
.btn-link:focus {
|
||||
outline: 0;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
#navigation {
|
||||
margin-left: 1.25rem;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(lg) {
|
||||
#mode {
|
||||
margin-left: 0.5rem;
|
||||
margin-right: 0.25rem;
|
||||
}
|
||||
|
||||
.navbar .btn-link {
|
||||
padding: 0.5625em 0.25rem 0.5rem 0.125rem;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar .btn-link:hover {
|
||||
color: $navbar-light-hover-color;
|
||||
}
|
||||
|
||||
.navbar .btn-link:active {
|
||||
color: $navbar-light-active-color;
|
||||
}
|
||||
|
||||
body .toggle-dark {
|
||||
display: block;
|
||||
}
|
||||
|
||||
body .toggle-light {
|
||||
display: none;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .toggle-light {
|
||||
display: block;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .toggle-dark {
|
||||
display: none;
|
||||
}
|
||||
|
||||
pre {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
@include media-breakpoint-down(md) {
|
||||
.btn-copy {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.btn-copy {
|
||||
transition: opacity 0.3s ease-in-out;
|
||||
visibility: hidden !important;
|
||||
position: absolute;
|
||||
right: 0.25rem;
|
||||
top: 0.25rem;
|
||||
z-index: 10;
|
||||
font-family: $font-family-sans-serif;
|
||||
font-size: $font-size-sm;
|
||||
padding: 0.25rem 0.5rem;
|
||||
color: $color-btn-text;
|
||||
background-color: $color-btn-bg;
|
||||
border-color: $color-btn-border;
|
||||
}
|
||||
|
||||
.btn-copy:hover {
|
||||
color: $color-btn-text;
|
||||
background-color: lighten($color-btn-bg, 5%);
|
||||
border-color: lighten($color-btn-border, 15%);
|
||||
}
|
||||
|
||||
.btn-copy:focus {
|
||||
color: $color-btn-text;
|
||||
background-color: $color-btn-bg;
|
||||
border-color: lighten($color-btn-border, 15%);
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
.btn-copy:active,
|
||||
.btn-copy.active {
|
||||
color: $color-btn-text;
|
||||
background-color: $color-btn-bg;
|
||||
border-color: lighten($color-btn-border, 15%);
|
||||
}
|
||||
|
||||
.btn-copy:active:focus,
|
||||
.btn-copy.active:focus {
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
pre:hover .btn-copy {
|
||||
visibility: visible !important;
|
||||
}
|
||||
}
|
||||
|
||||
.btn-copy::after {
|
||||
content: "Copy";
|
||||
display: block;
|
||||
color: $color-btn-text;
|
||||
}
|
||||
|
||||
.btn-copy:hover::after {
|
||||
content: "Copy";
|
||||
display: block;
|
||||
color: $color-btn-text;
|
||||
}
|
||||
|
||||
.btn-copy:focus::after,
|
||||
.btn-copy:active::after {
|
||||
content: "Copied";
|
||||
display: block;
|
||||
color: $color-btn-text;
|
||||
}
|
||||
|
||||
.collapsible-sidebar {
|
||||
margin: 2.125rem 0;
|
||||
}
|
||||
|
||||
.btn-toggle {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
padding: 0.25rem 0.5rem 0.25rem 0;
|
||||
font-weight: $headings-font-weight;
|
||||
font-size: $font-size-base;
|
||||
text-transform: uppercase;
|
||||
color: $body-color;
|
||||
background-color: transparent;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
.btn-toggle:hover,
|
||||
.btn-toggle:focus {
|
||||
color: $body-color;
|
||||
background-color: transparent;
|
||||
outline: 0;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
.btn-toggle::before {
|
||||
width: 1.25em;
|
||||
line-height: 0;
|
||||
content: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='rgba%2829, 45, 53, 0.75%29' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M5 14l6-6-6-6'/%3e%3c/svg%3e");
|
||||
transition: transform 0.35s ease;
|
||||
transform-origin: 0.5em 50%;
|
||||
margin-bottom: 0.125rem;
|
||||
}
|
||||
|
||||
.btn-toggle[aria-expanded="true"] {
|
||||
color: $body-color;
|
||||
}
|
||||
|
||||
.btn-toggle[aria-expanded="true"]::before {
|
||||
transform: rotate(90deg);
|
||||
}
|
||||
|
||||
.btn-toggle-nav a {
|
||||
display: inline-flex;
|
||||
padding: 0.1875rem 0.5rem;
|
||||
margin-top: 0.125rem;
|
||||
margin-left: 1.25rem;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.btn-toggle-nav a:hover,
|
||||
.btn-toggle-nav a:focus {
|
||||
background-color: transparent;
|
||||
color: $link-color;
|
||||
}
|
||||
|
||||
.btn-toggle-nav a.active {
|
||||
color: $link-color;
|
||||
}
|
||||
|
||||
.dropdown-menu {
|
||||
/*
|
||||
width: 100%;
|
||||
*/
|
||||
|
||||
width: auto;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(lg) {
|
||||
.dropdown-menu {
|
||||
width: auto;
|
||||
}
|
||||
}
|
||||
|
||||
.doks-navbar .dropdown-menu,
|
||||
.doks-subnavbar .dropdown-menu {
|
||||
font-size: 0.875rem;
|
||||
}
|
||||
|
||||
.doks-navbar .dropdown-item.current,
|
||||
.doks-subnavbar .dropdown-item.current {
|
||||
font-weight: 600;
|
||||
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23292b2c' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
|
||||
background-repeat: no-repeat;
|
||||
background-position: right 1rem top 0.6rem;
|
||||
background-size: 0.75rem 0.75rem;
|
||||
}
|
||||
|
||||
.btn-close {
|
||||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-x'%3E%3Cline x1='18' y1='6' x2='6' y2='18'%3E%3C/line%3E%3Cline x1='6' y1='6' x2='18' y2='18'%3E%3C/line%3E%3C/svg%3E");
|
||||
background-size: 1.5rem;
|
||||
}
|
||||
|
||||
.offcanvas-header .btn-close {
|
||||
margin-right: 0 !important;
|
||||
}
|
||||
|
||||
.dropdown-toggle::after {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.dropdown-caret {
|
||||
margin-left: -0.1875rem;
|
||||
margin-right: -0.3125rem;
|
||||
}
|
||||
|
||||
.dropdown-menu-main .dropdown-item {
|
||||
color: inherit;
|
||||
font-size: $font-size-base;
|
||||
font-weight: 400;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.dropdown-menu-main .dropdown-item:hover {
|
||||
background-color: transparent;
|
||||
color: $primary;
|
||||
}
|
||||
|
||||
.dropdown-menu-main .dropdown-item.active {
|
||||
color: $primary;
|
||||
font-weight: 400;
|
||||
text-decoration: none;
|
||||
background-color: inherit;
|
||||
}
|
||||
|
||||
.dropdown-menu-main .dropdown-item.active:hover {
|
||||
background-color: transparent;
|
||||
}
|
|
@ -1,66 +0,0 @@
|
|||
pre,
|
||||
code,
|
||||
kbd,
|
||||
samp {
|
||||
font-family: $font-family-monospace;
|
||||
font-size: $font-size-sm;
|
||||
border-radius: $border-radius;
|
||||
}
|
||||
|
||||
code {
|
||||
background: $beige;
|
||||
color: $black;
|
||||
padding: 0.25rem 0.5rem;
|
||||
}
|
||||
|
||||
pre {
|
||||
margin: 2rem 0;
|
||||
}
|
||||
|
||||
pre code {
|
||||
display: block;
|
||||
overflow-x: auto;
|
||||
line-height: $line-height-base;
|
||||
padding: 1.25rem 1.5rem;
|
||||
tab-size: 4;
|
||||
scrollbar-width: thin;
|
||||
scrollbar-color: transparent transparent;
|
||||
}
|
||||
|
||||
.hljs {
|
||||
padding: 1.5rem !important;
|
||||
}
|
||||
|
||||
@include media-breakpoint-down(sm) {
|
||||
pre,
|
||||
code,
|
||||
kbd,
|
||||
samp {
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
pre {
|
||||
margin: 2rem -1.5rem;
|
||||
}
|
||||
}
|
||||
|
||||
pre code::-webkit-scrollbar {
|
||||
height: 5px;
|
||||
}
|
||||
|
||||
pre code::-webkit-scrollbar-thumb {
|
||||
background: $gray-400;
|
||||
}
|
||||
|
||||
pre code:hover {
|
||||
scrollbar-width: thin;
|
||||
scrollbar-color: $gray-500 transparent;
|
||||
}
|
||||
|
||||
pre code::-webkit-scrollbar-thumb:hover {
|
||||
background: $gray-500;
|
||||
}
|
||||
|
||||
code.language-mermaid {
|
||||
background: none;
|
||||
}
|
|
@ -1,30 +0,0 @@
|
|||
.comment-list {
|
||||
@extend .list-unstyled;
|
||||
}
|
||||
|
||||
.comment-list ol {
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
.comment-form p {
|
||||
@extend .form-group !optional;
|
||||
}
|
||||
|
||||
.comment-form input[type="text"],
|
||||
.comment-form input[type="email"],
|
||||
.comment-form input[type="url"],
|
||||
.comment-form textarea {
|
||||
@extend .form-control;
|
||||
}
|
||||
|
||||
.comment-form input[type="submit"] {
|
||||
@extend .btn;
|
||||
@extend .btn-secondary;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
margin-bottom: 1rem;
|
||||
font-size: 1.25rem;
|
||||
border-left: 3px solid $gray-300;
|
||||
padding-left: 1rem;
|
||||
}
|
|
@ -1,77 +0,0 @@
|
|||
details {
|
||||
display: block;
|
||||
border: 1px solid $gray-200;
|
||||
border-radius: 0.25rem;
|
||||
padding: 0.5rem 1rem 0;
|
||||
margin: 0.5rem 0;
|
||||
}
|
||||
|
||||
/*
|
||||
details summary {
|
||||
&::marker {
|
||||
content: "";
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
summary {
|
||||
list-style: none;
|
||||
display: inline-block;
|
||||
width: calc(100% + 2rem);
|
||||
margin: -0.5rem -1rem 0;
|
||||
padding: 0.5rem 0.75rem;
|
||||
}
|
||||
|
||||
summary::-webkit-details-marker {
|
||||
display: none;
|
||||
}
|
||||
|
||||
summary:hover {
|
||||
background: $gray-100;
|
||||
}
|
||||
|
||||
details summary::before {
|
||||
display: inline-block;
|
||||
content: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='rgba%2829, 45, 53, 0.75%29' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M5 14l6-6-6-6'/%3e%3c/svg%3e");
|
||||
transition: transform 0.35s ease;
|
||||
transform-origin: center center;
|
||||
margin-right: 0.375rem;
|
||||
}
|
||||
|
||||
details[open] > summary::before {
|
||||
transform: rotate(90deg);
|
||||
}
|
||||
|
||||
/*
|
||||
details summary > * {
|
||||
display: inline-block;
|
||||
}
|
||||
*/
|
||||
|
||||
details[open] {
|
||||
padding: 0.5rem 1rem;
|
||||
}
|
||||
|
||||
details[open] > summary {
|
||||
border-bottom: 1px solid $gray-300;
|
||||
margin-bottom: 0.5rem;
|
||||
}
|
||||
|
||||
details h2,
|
||||
details h3,
|
||||
details h4 {
|
||||
margin: 1rem 0 0.5rem;
|
||||
}
|
||||
|
||||
details p:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
details ul,
|
||||
details ol {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
details pre {
|
||||
margin: 0 0 1rem;
|
||||
}
|
|
@ -1,19 +0,0 @@
|
|||
/** Search form */
|
||||
.search-form {
|
||||
@extend .form-inline !optional;
|
||||
}
|
||||
|
||||
.search-form label {
|
||||
@extend .form-group;
|
||||
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.search-form .search-field {
|
||||
@extend .form-control;
|
||||
}
|
||||
|
||||
.search-form .search-submit {
|
||||
@extend .btn;
|
||||
@extend .btn-secondary;
|
||||
}
|
|
@ -1,62 +0,0 @@
|
|||
figure {
|
||||
margin: 0 0 1rem;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
figure img {
|
||||
margin-bottom: 0.5rem;
|
||||
line-height: 1;
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
figure figcaption {
|
||||
margin: 0.25rem 0 0.75rem;
|
||||
font-size: 0.875em;
|
||||
color: #6c757d;
|
||||
}
|
||||
|
||||
.figure-caption {
|
||||
margin: 0.25rem 0 0.75rem;
|
||||
}
|
||||
|
||||
figure.wide {
|
||||
margin: 2rem -1.5rem;
|
||||
}
|
||||
|
||||
figure.wide .figure-caption {
|
||||
margin: 0.25rem 1.5rem 0.75rem;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
figure.wide {
|
||||
margin: 2rem -2.5rem;
|
||||
}
|
||||
|
||||
figure.wide .figure-caption {
|
||||
margin: 0.25rem 2.5rem 0.75rem;
|
||||
}
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(lg) {
|
||||
figure.wide {
|
||||
margin: 2rem -5rem;
|
||||
}
|
||||
|
||||
figure.wide .figure-caption {
|
||||
margin: 0.25rem 5rem 0.75rem;
|
||||
}
|
||||
}
|
||||
|
||||
.blur-up {
|
||||
filter: blur(5px);
|
||||
}
|
||||
|
||||
.blur-up.lazyloaded {
|
||||
filter: unset;
|
||||
}
|
||||
|
||||
.img-simple {
|
||||
margin-top: 0.375rem;
|
||||
margin-bottom: 1.25rem;
|
||||
}
|
|
@ -1,8 +0,0 @@
|
|||
.mermaid {
|
||||
margin: 1.5rem 0;
|
||||
padding: 1.5rem;
|
||||
}
|
||||
|
||||
.mermaid svg {
|
||||
height: auto;
|
||||
}
|
|
@ -1,91 +0,0 @@
|
|||
.navbar-form {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
#suggestions {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
margin-top: 0.5rem;
|
||||
width: calc(100vw - 3rem);
|
||||
max-width: calc(400px - 3rem);
|
||||
z-index: $zindex-dropdown;
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
right: -2rem;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(lg) {
|
||||
right: 0;
|
||||
}
|
||||
}
|
||||
|
||||
#suggestions a,
|
||||
.suggestion__no-results {
|
||||
padding: 0.75rem;
|
||||
margin: 0 0.5rem;
|
||||
}
|
||||
|
||||
#suggestions a {
|
||||
display: block;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#suggestions a:focus {
|
||||
background: $gray-100;
|
||||
outline: 0;
|
||||
}
|
||||
|
||||
#suggestions div:not(:first-child) {
|
||||
border-top: 1px dashed $gray-200;
|
||||
}
|
||||
|
||||
#suggestions div:first-child {
|
||||
margin-top: 0.5rem;
|
||||
}
|
||||
|
||||
#suggestions div:last-child {
|
||||
margin-bottom: 0.5rem;
|
||||
}
|
||||
|
||||
#suggestions a:hover {
|
||||
background: $gray-100;
|
||||
}
|
||||
|
||||
#suggestions span {
|
||||
display: flex;
|
||||
font-size: $font-size-base;
|
||||
}
|
||||
|
||||
.suggestion__title {
|
||||
font-weight: $headings-font-weight;
|
||||
color: $black;
|
||||
}
|
||||
|
||||
.suggestion__description,
|
||||
.suggestion__no-results {
|
||||
color: $gray-700;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(lg) {
|
||||
#suggestions {
|
||||
width: 31.125rem;
|
||||
max-width: 31.125rem;
|
||||
}
|
||||
|
||||
#suggestions a {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.suggestion__title {
|
||||
width: 9rem;
|
||||
padding-right: 1rem;
|
||||
border-right: 1px solid $gray-200;
|
||||
display: inline-block;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.suggestion__description {
|
||||
width: 19rem;
|
||||
padding-left: 1rem;
|
||||
}
|
||||
}
|
|
@ -1,62 +0,0 @@
|
|||
/*
|
||||
|
||||
Based on Ascetic by (c) Ivan Sagalaev <Maniac@SoftwareManiacs.Org>
|
||||
|
||||
*/
|
||||
|
||||
.hljs {
|
||||
display: block;
|
||||
overflow-x: auto;
|
||||
padding: 1.25rem 1.5rem;
|
||||
background: $beige;
|
||||
color: $body-color;
|
||||
}
|
||||
|
||||
.hljs-string,
|
||||
.hljs-variable,
|
||||
.hljs-template-variable,
|
||||
.hljs-symbol,
|
||||
.hljs-bullet,
|
||||
.hljs-section,
|
||||
.hljs-addition,
|
||||
.hljs-attribute,
|
||||
.hljs-link {
|
||||
color: $pink-500;
|
||||
}
|
||||
|
||||
.hljs-comment,
|
||||
.hljs-quote,
|
||||
.hljs-meta,
|
||||
.hljs-deletion {
|
||||
color: #888;
|
||||
}
|
||||
|
||||
.hljs-keyword,
|
||||
.hljs-selector-tag,
|
||||
.hljs-section,
|
||||
.hljs-name,
|
||||
.hljs-type,
|
||||
.hljs-strong {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.hljs-emphasis {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .hljs {
|
||||
background: $body-overlay-dark;
|
||||
color: $body-color-dark;
|
||||
}
|
||||
|
||||
[data-dark-mode] body .hljs-string,
|
||||
[data-dark-mode] body .hljs-variable,
|
||||
[data-dark-mode] body .hljs-template-variable,
|
||||
[data-dark-mode] body .hljs-symbol,
|
||||
[data-dark-mode] body .hljs-bullet,
|
||||
[data-dark-mode] body .hljs-section,
|
||||
[data-dark-mode] body .hljs-addition,
|
||||
[data-dark-mode] body .hljs-attribute,
|
||||
[data-dark-mode] body .hljs-link {
|
||||
color: $blue-300;
|
||||
}
|
|
@ -1,5 +0,0 @@
|
|||
table {
|
||||
@extend .table;
|
||||
|
||||
margin: 3rem 0;
|
||||
}
|
|
@ -1,20 +0,0 @@
|
|||
.footer {
|
||||
border-top: 1px solid $gray-200;
|
||||
padding-top: 1.125rem;
|
||||
padding-bottom: 1.125rem;
|
||||
}
|
||||
|
||||
.footer ul {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.footer li {
|
||||
font-size: $font-size-sm;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
.footer li {
|
||||
font-size: $font-size-base;
|
||||
}
|
||||
}
|
|
@ -1,493 +0,0 @@
|
|||
.banner .nav li {
|
||||
@extend .nav-item;
|
||||
}
|
||||
|
||||
.banner .nav a {
|
||||
@extend .nav-link;
|
||||
}
|
||||
|
||||
.navbar-text {
|
||||
margin-left: 1rem;
|
||||
}
|
||||
|
||||
.navbar-brand {
|
||||
font-weight: $headings-font-weight;
|
||||
}
|
||||
|
||||
/*
|
||||
.navbar-light .navbar-brand,
|
||||
.navbar-light .navbar-brand:hover,
|
||||
.navbar-light .navbar-brand:active {
|
||||
color: $body-color;
|
||||
}
|
||||
|
||||
.navbar-light .navbar-nav .active .nav-link {
|
||||
color: $primary;
|
||||
}
|
||||
*/
|
||||
|
||||
.navbar {
|
||||
z-index: 1000;
|
||||
background-color: rgba(255, 255, 255, 0.95);
|
||||
border-bottom: 1px solid $gray-200;
|
||||
|
||||
/*
|
||||
margin-top: 4px;
|
||||
*/
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(lg) {
|
||||
.navbar {
|
||||
z-index: 1025;
|
||||
padding-top: 0.25rem;
|
||||
padding-bottom: 0.25rem;
|
||||
}
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
.navbar-brand {
|
||||
font-size: $font-size-xl;
|
||||
}
|
||||
|
||||
.navbar-text {
|
||||
margin-left: 1.25rem;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-nav {
|
||||
flex-direction: row;
|
||||
}
|
||||
|
||||
.nav-item {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
.nav-item {
|
||||
margin-left: 0.5rem;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
@include media-breakpoint-down(sm) {
|
||||
.nav-item:first-child {
|
||||
margin-left: 0;
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
@include media-breakpoint-down(md) {
|
||||
.navbar .container {
|
||||
padding-left: 1.5rem;
|
||||
padding-right: 1.5rem;
|
||||
}
|
||||
}
|
||||
|
||||
.break {
|
||||
flex-basis: 100%;
|
||||
height: 0;
|
||||
}
|
||||
|
||||
button#doks-languages {
|
||||
margin: 0.25rem 0 0;
|
||||
|
||||
@include media-breakpoint-up(lg) {
|
||||
margin: 0.25rem 0.5rem 0 0.25rem;
|
||||
}
|
||||
}
|
||||
|
||||
button#doks-versions {
|
||||
margin: 0.25rem 0 0;
|
||||
|
||||
@include media-breakpoint-up(lg) {
|
||||
margin: 0.25rem 0.5rem 0 0.25rem;
|
||||
}
|
||||
}
|
||||
|
||||
.offcanvas .nav-link {
|
||||
color: $body-color;
|
||||
}
|
||||
|
||||
.doks-subnavbar {
|
||||
background-color: rgba(255, 255, 255, 0.95);
|
||||
border-bottom: 1px solid $gray-200;
|
||||
}
|
||||
|
||||
.doks-subnavbar .nav-link {
|
||||
padding: 0.5rem 1.5rem 0.5rem 0;
|
||||
}
|
||||
|
||||
.doks-subnavbar .nav-link:first-child {
|
||||
padding: 0.5rem 1.5rem 0.5rem 0;
|
||||
}
|
||||
|
||||
.offcanvas .nav-link:hover,
|
||||
.offcanvas .nav-link:focus {
|
||||
color: $link-color;
|
||||
}
|
||||
|
||||
.offcanvas .nav-link.active {
|
||||
color: $link-color;
|
||||
}
|
||||
|
||||
/*
|
||||
.navbar {
|
||||
background-color: rgba(255, 255, 255, 0.95);
|
||||
border-bottom: 1px solid $gray-200;
|
||||
margin-top: 4px;
|
||||
}
|
||||
*/
|
||||
|
||||
.header-bar {
|
||||
border-top: 4px solid;
|
||||
border-image-source: linear-gradient(90deg, $primary, #8ed6fb 50%, #d32e9d);
|
||||
border-image-slice: 1;
|
||||
}
|
||||
|
||||
.offcanvas .header-bar {
|
||||
margin-bottom: -4px;
|
||||
}
|
||||
|
||||
.home .navbar {
|
||||
border-bottom: 0;
|
||||
}
|
||||
|
||||
/*
|
||||
.navbar-form {
|
||||
position: relative;
|
||||
margin-top: 0.25rem;
|
||||
}
|
||||
*/
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
.navbar-brand {
|
||||
margin-right: 0.75rem !important;
|
||||
}
|
||||
|
||||
.main-nav .nav-item:first-child .nav-link,
|
||||
.social-nav .nav-item:first-child .nav-link {
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
.main-nav .nav-item:last-child .nav-link,
|
||||
.social-nav .nav-item:last-child .nav-link {
|
||||
padding-right: 0;
|
||||
}
|
||||
|
||||
.doks-search {
|
||||
max-width: 20rem;
|
||||
margin-top: 0.125rem;
|
||||
margin-bottom: 0.125rem;
|
||||
}
|
||||
|
||||
/*
|
||||
.navbar-form {
|
||||
margin-top: 0;
|
||||
margin-left: 6rem;
|
||||
margin-right: 1.5rem;
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
.form-control.is-search {
|
||||
padding-right: 4rem;
|
||||
border: 1px solid transparent;
|
||||
background: $gray-100;
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
width: calc(100% + 2rem);
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(lg) {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
.form-control.is-search:focus {
|
||||
border: 1px solid $primary;
|
||||
}
|
||||
|
||||
.doks-search::after {
|
||||
position: absolute;
|
||||
top: 0.4625rem;
|
||||
right: 0.5375rem;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
height: 1.5rem;
|
||||
padding-right: 0.3125rem;
|
||||
padding-left: 0.3125rem;
|
||||
font-size: $font-size-base * 0.75;
|
||||
color: $gray-700;
|
||||
content: "Ctrl + /";
|
||||
border: 1px solid $gray-300;
|
||||
border-radius: 0.25rem;
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
right: -1.4625rem;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(lg) {
|
||||
right: 0.3125rem;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
@include media-breakpoint-up(lg) {
|
||||
.navbar-form {
|
||||
margin-left: 15rem;
|
||||
}
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(xl) {
|
||||
.navbar-form {
|
||||
margin-left: 30rem;
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
.form-control.is-search {
|
||||
*/
|
||||
|
||||
/*
|
||||
padding-right: calc(1.5em + 0.75rem);
|
||||
*/
|
||||
|
||||
/*
|
||||
padding-right: 2.5rem;
|
||||
background: $gray-100;
|
||||
border: 0;
|
||||
*/
|
||||
|
||||
/*
|
||||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%236c757d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-search'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E");
|
||||
background-repeat: no-repeat;
|
||||
background-position: right calc(0.375em + 0.1875rem) center;
|
||||
background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
|
||||
*/
|
||||
|
||||
/*
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
.navbar-form::after {
|
||||
position: absolute;
|
||||
top: 0.4625rem;
|
||||
right: 0.5375rem;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
height: 1.5rem;
|
||||
padding-right: 0.4375rem;
|
||||
padding-left: 0.4375rem;
|
||||
font-size: $font-size-base * 0.75;
|
||||
color: $gray-700;
|
||||
content: "/";
|
||||
border: 1px solid $gray-300;
|
||||
border-radius: 0.25rem;
|
||||
}
|
||||
*/
|
||||
|
||||
/*! purgecss start ignore */
|
||||
.algolia-autocomplete {
|
||||
display: flex !important;
|
||||
}
|
||||
|
||||
.algolia-autocomplete .ds-dropdown-menu {
|
||||
box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
|
||||
}
|
||||
|
||||
@include media-breakpoint-down(sm) {
|
||||
.algolia-autocomplete .ds-dropdown-menu {
|
||||
max-width: 512px !important;
|
||||
min-width: 312px !important;
|
||||
width: auto !important;
|
||||
}
|
||||
|
||||
.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column::after {
|
||||
content: "/";
|
||||
margin-right: 0.25rem;
|
||||
}
|
||||
}
|
||||
|
||||
.algolia-autocomplete .algolia-docsearch-suggestion--category-header {
|
||||
color: $black;
|
||||
}
|
||||
|
||||
.algolia-autocomplete .algolia-docsearch-suggestion--title {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.algolia-autocomplete .algolia-docsearch-suggestion--highlight {
|
||||
padding: 0 0.05em;
|
||||
}
|
||||
|
||||
.algolia-autocomplete .algolia-docsearch-footer {
|
||||
margin-top: 1rem;
|
||||
margin-right: 0.5rem;
|
||||
margin-bottom: 0.5rem;
|
||||
}
|
||||
|
||||
/*! purgecss end ignore */
|
||||
|
||||
/*
|
||||
* Source: https://medium.com/creative-technology-concepts-code/responsive-mobile-dropdown-navigation-using-css-only-7218e4498a99
|
||||
*/
|
||||
|
||||
/* Style the menu icon for the dropdown */
|
||||
|
||||
.navbar .menu-icon {
|
||||
cursor: pointer;
|
||||
|
||||
/* display: inline-block; */
|
||||
|
||||
/* float: right; */
|
||||
padding: 1.125rem 0.625rem;
|
||||
margin: 0 0 0 -0.625rem;
|
||||
|
||||
/* position: relative; */
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
.navbar .menu-icon .navicon {
|
||||
background: $navbar-light-color;
|
||||
display: block;
|
||||
height: 2px;
|
||||
position: relative;
|
||||
transition: background 0.2s ease-out;
|
||||
width: 18px;
|
||||
}
|
||||
|
||||
.navbar .menu-icon .navicon::before,
|
||||
.navbar .menu-icon .navicon::after {
|
||||
background: $navbar-light-color;
|
||||
content: "";
|
||||
display: block;
|
||||
height: 100%;
|
||||
position: absolute;
|
||||
transition: all 0.2s ease-out;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.navbar .menu-icon .navicon::before {
|
||||
top: 5px;
|
||||
}
|
||||
|
||||
.navbar .menu-icon .navicon::after {
|
||||
top: -5px;
|
||||
}
|
||||
|
||||
/* Add the icon and menu animations when the checkbox is clicked */
|
||||
|
||||
.navbar .menu-btn {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.navbar .menu-btn:checked ~ .navbar-collapse {
|
||||
display: block;
|
||||
max-height: 100vh;
|
||||
}
|
||||
|
||||
.navbar .menu-btn:checked ~ .menu-icon .navicon {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.navbar .menu-btn:checked ~ .menu-icon .navicon::before {
|
||||
transform: rotate(-45deg);
|
||||
}
|
||||
|
||||
.navbar .menu-btn:checked ~ .menu-icon .navicon::after {
|
||||
transform: rotate(45deg);
|
||||
}
|
||||
|
||||
.navbar .menu-btn:checked ~ .menu-icon:not(.steps) .navicon::before,
|
||||
.navbar .menu-btn:checked ~ .menu-icon:not(.steps) .navicon::after {
|
||||
top: 0;
|
||||
}
|
||||
|
||||
.btn-menu {
|
||||
margin-left: 1rem;
|
||||
border: transparent;
|
||||
}
|
||||
|
||||
.btn-doks-light {
|
||||
border: transparent;
|
||||
}
|
||||
|
||||
.btn-menu,
|
||||
.doks-sidebar-toggle {
|
||||
padding-right: 0.25rem;
|
||||
padding-left: 0.25rem;
|
||||
margin-right: -0.5rem;
|
||||
}
|
||||
|
||||
.btn-menu:hover,
|
||||
.btn-doks-light:hover,
|
||||
.doks-sidebar-toggle:hover {
|
||||
background: $pink-100;
|
||||
border: transparent;
|
||||
}
|
||||
|
||||
.btn-menu:focus,
|
||||
.btn-doks-light:focus,
|
||||
.doks-sidebar-toggle:focus,
|
||||
.doks-mode-toggle:focus {
|
||||
outline: 0;
|
||||
border: transparent;
|
||||
}
|
||||
|
||||
.doks-sidebar-toggle .doks-collapse,
|
||||
.doks-toc-toggle .doks-collapse {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.doks-sidebar-toggle:not(.collapsed) .doks-expand,
|
||||
.doks-toc-toggle:not(.collapsed) .doks-expand {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.doks-sidebar-toggle:not(.collapsed) .doks-collapse,
|
||||
.doks-toc-toggle:not(.collapsed) .doks-collapse {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.navbar-light .navbar-brand,
|
||||
.navbar-light .navbar-brand:hover,
|
||||
.navbar-light .navbar-brand:active {
|
||||
color: $body-color;
|
||||
}
|
||||
|
||||
.navbar-light .navbar-nav .active .nav-link {
|
||||
color: $primary;
|
||||
}
|
||||
|
||||
.dropdown-divider {
|
||||
border-top: 1px dashed $gray-200;
|
||||
}
|
||||
|
||||
.dropdown-item:hover {
|
||||
background: $gray-100;
|
||||
}
|
||||
|
||||
.dropdown-item:active {
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
.social-link {
|
||||
padding-left: 0.5rem;
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(lg) {
|
||||
padding-right: 0.5rem;
|
||||
padding-left: 0.5rem;
|
||||
}
|
||||
}
|
|
@ -1,64 +0,0 @@
|
|||
.docs-content > h2[id]::before,
|
||||
.docs-content > h3[id]::before,
|
||||
.docs-content > h4[id]::before {
|
||||
display: block;
|
||||
height: 6rem;
|
||||
margin-top: -6rem;
|
||||
content: "";
|
||||
}
|
||||
|
||||
.anchor {
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
h1:hover a,
|
||||
h2:hover a,
|
||||
h3:hover a,
|
||||
h4:hover a {
|
||||
visibility: visible;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.card-list {
|
||||
margin-top: 2.25rem;
|
||||
}
|
||||
|
||||
.page-footer-meta {
|
||||
margin-top: 3rem;
|
||||
}
|
||||
|
||||
.edit-page,
|
||||
.last-modified {
|
||||
font-size: $font-size-sm;
|
||||
margin-top: 0.25rem;
|
||||
margin-bottom: 0.25rem;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(md) {
|
||||
.edit-page,
|
||||
.last-modified {
|
||||
font-size: $font-size-base;
|
||||
margin-top: 0.75rem;
|
||||
margin-bottom: 0.25rem;
|
||||
}
|
||||
}
|
||||
|
||||
.edit-page svg,
|
||||
.last-modified svg {
|
||||
margin-right: 0.25rem;
|
||||
margin-bottom: 0.25rem;
|
||||
}
|
||||
|
||||
p.meta {
|
||||
margin-top: 0.5rem;
|
||||
font-size: $font-size-base;
|
||||
}
|
||||
|
||||
.breadcrumb {
|
||||
margin-top: 2.25rem;
|
||||
font-size: $font-size-base;
|
||||
}
|
||||
|
||||
.page-link:hover {
|
||||
text-decoration: none;
|
||||
}
|
|
@ -1,57 +0,0 @@
|
|||
.home .card,
|
||||
.contributors.list .card,
|
||||
.blog.list .card,
|
||||
.blog.single .card,
|
||||
.categories.list .card,
|
||||
.tags.list .card {
|
||||
margin-top: 2rem;
|
||||
margin-bottom: 2rem;
|
||||
transition: transform 0.3s;
|
||||
}
|
||||
|
||||
.home .card:hover,
|
||||
.contributors.list .card:hover,
|
||||
.blog.list .card:hover,
|
||||
.blog.single .card:hover,
|
||||
.categories.list .card:hover,
|
||||
.tags.list .card:hover {
|
||||
transform: scale(1.025);
|
||||
}
|
||||
|
||||
.contributors.list .card.card-terms:hover,
|
||||
.categories.list .card.card-terms:hover,
|
||||
.tags.list .card.card-terms:hover {
|
||||
transform: none;
|
||||
}
|
||||
|
||||
.home .card-body,
|
||||
.contributors.list .card-body,
|
||||
.blog.list .card-body,
|
||||
.blog.single .card-body,
|
||||
.categories.list .card-body,
|
||||
.tags.list .card-body {
|
||||
padding: 0 2rem 1rem;
|
||||
}
|
||||
|
||||
.contributors.list .card-terms .card-body,
|
||||
.categories.list .card-terms .card-body,
|
||||
.tags.list .card-terms .card-body {
|
||||
padding: 1rem;
|
||||
}
|
||||
|
||||
.blog-header {
|
||||
text-align: center;
|
||||
margin-bottom: 2rem;
|
||||
}
|
||||
|
||||
.blog-footer {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.related-posts {
|
||||
margin-top: 4rem;
|
||||
}
|
||||
|
||||
h2.section-title {
|
||||
margin-bottom: 1.25rem;
|
||||
}
|
|
@ -1,116 +0,0 @@
|
|||
.docs-links,
|
||||
.docs-toc {
|
||||
scrollbar-width: thin;
|
||||
scrollbar-color: $white $white;
|
||||
}
|
||||
|
||||
.docs-links::-webkit-scrollbar,
|
||||
.docs-toc::-webkit-scrollbar {
|
||||
width: 5px;
|
||||
}
|
||||
|
||||
.docs-links::-webkit-scrollbar-track,
|
||||
.docs-toc::-webkit-scrollbar-track {
|
||||
background: $white;
|
||||
}
|
||||
|
||||
.docs-links::-webkit-scrollbar-thumb,
|
||||
.docs-toc::-webkit-scrollbar-thumb {
|
||||
background: $white;
|
||||
}
|
||||
|
||||
.docs-links:hover,
|
||||
.docs-toc:hover {
|
||||
scrollbar-width: thin;
|
||||
scrollbar-color: $gray-200 $white;
|
||||
}
|
||||
|
||||
.docs-links:hover::-webkit-scrollbar-thumb,
|
||||
.docs-toc:hover::-webkit-scrollbar-thumb {
|
||||
background: $gray-200;
|
||||
}
|
||||
|
||||
.docs-links::-webkit-scrollbar-thumb:hover,
|
||||
.docs-toc::-webkit-scrollbar-thumb:hover {
|
||||
background: $gray-200;
|
||||
}
|
||||
|
||||
.docs-links h3,
|
||||
.page-links h3 {
|
||||
text-transform: uppercase;
|
||||
font-size: $font-size-base;
|
||||
margin: 1.25rem 0 0.5rem;
|
||||
padding: 1.5rem 0 0;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(lg) {
|
||||
.docs-links h3,
|
||||
.page-links h3 {
|
||||
margin: 1.125rem 1.5rem 0.75rem 0;
|
||||
padding: 1.375rem 0 0;
|
||||
}
|
||||
}
|
||||
|
||||
.docs-links h3:not(:first-child) {
|
||||
border-top: 1px solid $gray-200;
|
||||
}
|
||||
|
||||
a.docs-link {
|
||||
color: $body-color;
|
||||
display: block;
|
||||
padding: 0.125rem 0;
|
||||
font-size: $font-size-base;
|
||||
}
|
||||
|
||||
.page-links li {
|
||||
margin-top: 0.375rem;
|
||||
padding-top: 0.375rem;
|
||||
}
|
||||
|
||||
.page-links li ul li {
|
||||
border-top: none;
|
||||
padding-left: 1rem;
|
||||
margin-top: 0.125rem;
|
||||
padding-top: 0.125rem;
|
||||
}
|
||||
|
||||
.page-links li:not(:first-child) {
|
||||
border-top: 1px dashed $gray-200;
|
||||
}
|
||||
|
||||
.page-links a {
|
||||
color: $body-color;
|
||||
display: block;
|
||||
padding: 0.125rem 0;
|
||||
font-size: $font-size-base * 0.9375;
|
||||
}
|
||||
|
||||
.docs-link:hover,
|
||||
.docs-link.active,
|
||||
.page-links a:hover {
|
||||
text-decoration: none;
|
||||
color: $link-color;
|
||||
}
|
||||
|
||||
.nav-link.active,
|
||||
.dropdown-menu-main .dropdown-item.active,
|
||||
.docs-link.active {
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
.docs-links h3.sidebar-link,
|
||||
.page-links h3.sidebar-link {
|
||||
text-transform: none;
|
||||
font-size: $font-size-md;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.docs-links h3.sidebar-link a,
|
||||
.page-links h3.sidebar-link a {
|
||||
color: $body-color;
|
||||
}
|
||||
|
||||
.docs-links h3.sidebar-link a:hover,
|
||||
.page-links h3.sidebar-link a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
|
@ -1,110 +0,0 @@
|
|||
baseurl = "https://doks.netlify.app/"
|
||||
canonifyURLs = false
|
||||
disableAliases = true
|
||||
disableHugoGeneratorInject = true
|
||||
enableEmoji = true
|
||||
enableGitInfo = false
|
||||
enableRobotsTXT = true
|
||||
paginate = 7
|
||||
rssLimit = 10
|
||||
|
||||
# Multilingual
|
||||
defaultContentLanguage = "en"
|
||||
disableLanguages = ["de", "nl"]
|
||||
# defaultContentLanguageInSubdir = true
|
||||
|
||||
# add redirects/headers
|
||||
[outputs]
|
||||
home = ["HTML", "RSS", "REDIRECTS", "HEADERS"]
|
||||
section = ["HTML", "RSS", "SITEMAP"]
|
||||
|
||||
# remove .{ext} from text/netlify
|
||||
[mediaTypes."text/netlify"]
|
||||
suffixes = [""]
|
||||
delimiter = ""
|
||||
|
||||
# add output format for netlify _redirects
|
||||
[outputFormats.REDIRECTS]
|
||||
mediaType = "text/netlify"
|
||||
baseName = "_redirects"
|
||||
isPlainText = true
|
||||
notAlternative = true
|
||||
|
||||
# add output format for netlify _headers
|
||||
[outputFormats.HEADERS]
|
||||
mediaType = "text/netlify"
|
||||
baseName = "_headers"
|
||||
isPlainText = true
|
||||
notAlternative = true
|
||||
|
||||
# add output format for section sitemap.xml
|
||||
[outputFormats.SITEMAP]
|
||||
mediaType = "application/xml"
|
||||
baseName = "sitemap"
|
||||
isHTML = false
|
||||
isPlainText = true
|
||||
noUgly = true
|
||||
rel = "sitemap"
|
||||
|
||||
[caches]
|
||||
[caches.getjson]
|
||||
dir = ":cacheDir/:project"
|
||||
maxAge = "10s"
|
||||
|
||||
[sitemap]
|
||||
changefreq = "weekly"
|
||||
filename = "sitemap.xml"
|
||||
priority = 0.5
|
||||
|
||||
[taxonomies]
|
||||
contributor = "contributors"
|
||||
category = "categories"
|
||||
tag = "tags"
|
||||
|
||||
[permalinks]
|
||||
blog = "/blog/:title/"
|
||||
# docs = "/docs/1.0/:sections[1:]/:title/"
|
||||
|
||||
[minify.tdewolff.html]
|
||||
keepWhitespace = false
|
||||
|
||||
[related]
|
||||
threshold = 80
|
||||
includeNewer = true
|
||||
toLower = false
|
||||
[[related.indices]]
|
||||
name = "categories"
|
||||
weight = 100
|
||||
[[related.indices]]
|
||||
name = "tags"
|
||||
weight = 80
|
||||
[[related.indices]]
|
||||
name = "date"
|
||||
weight = 10
|
||||
|
||||
[module]
|
||||
[module.hugoVersion]
|
||||
extended = true
|
||||
min = "0.80.0"
|
||||
max = ""
|
||||
[[module.mounts]]
|
||||
source = "assets"
|
||||
target = "assets"
|
||||
[[module.mounts]]
|
||||
source = "static"
|
||||
target = "static"
|
||||
[[module.mounts]]
|
||||
source = "layouts"
|
||||
target = "layouts"
|
||||
[[module.mounts]]
|
||||
source = "node_modules/flexsearch"
|
||||
target = "assets/js/vendor/flexsearch"
|
||||
[[module.mounts]]
|
||||
source = "node_modules/katex"
|
||||
target = "assets/js/vendor/katex"
|
||||
[[module.mounts]]
|
||||
source = "node_modules/mermaid"
|
||||
target = "assets/js/vendor/mermaid"
|
||||
[[module.mounts]]
|
||||
source = "node_modules/@hyas/images/layouts"
|
||||
target = "layouts"
|
|
@ -0,0 +1,86 @@
|
|||
title = "My Docs"
|
||||
baseurl = "/"
|
||||
canonifyURLs = false
|
||||
disableAliases = true
|
||||
disableHugoGeneratorInject = true
|
||||
# disableKinds = ["taxonomy", "term"]
|
||||
enableEmoji = true
|
||||
enableGitInfo = true
|
||||
enableRobotsTXT = true
|
||||
languageCode = "en-US"
|
||||
paginate = 10
|
||||
rssLimit = 10
|
||||
summarylength = 20 # 70 (default)
|
||||
|
||||
# Multilingual
|
||||
defaultContentLanguage = "en"
|
||||
disableLanguages = ["de", "nl"]
|
||||
defaultContentLanguageInSubdir = false
|
||||
|
||||
copyRight = "Copyright (c) 2020-2023 Henk Verlinde"
|
||||
|
||||
[social]
|
||||
twitter = "getdoks"
|
||||
|
||||
[outputs]
|
||||
home = ["HTML", "RSS", "searchIndex"]
|
||||
section = ["HTML", "RSS", "SITEMAP"]
|
||||
|
||||
[outputFormats.searchIndex]
|
||||
mediaType = "application/json"
|
||||
baseName = "search-index"
|
||||
isPlainText = true
|
||||
notAlternative = true
|
||||
|
||||
# Add output format for section sitemap.xml
|
||||
[outputFormats.SITEMAP]
|
||||
mediaType = "application/xml"
|
||||
baseName = "sitemap"
|
||||
isHTML = false
|
||||
isPlainText = true
|
||||
noUgly = true
|
||||
rel = "sitemap"
|
||||
|
||||
[sitemap]
|
||||
changefreq = "monthly"
|
||||
filename = "sitemap.xml"
|
||||
priority = 0.5
|
||||
|
||||
[caches]
|
||||
[caches.getjson]
|
||||
dir = ":cacheDir/:project"
|
||||
maxAge = "30m"
|
||||
|
||||
[taxonomies]
|
||||
contributor = "contributors"
|
||||
category = "categories"
|
||||
tag = "tags"
|
||||
|
||||
[permalinks]
|
||||
blog = "/blog/:slug/"
|
||||
docs = "/docs/:sections[1:]/:slug/"
|
||||
# docs = "/docs/1.0/:sections[1:]/:slug/"
|
||||
|
||||
[minify.tdewolff.html]
|
||||
keepWhitespace = false
|
||||
|
||||
[related]
|
||||
threshold = 80
|
||||
includeNewer = true
|
||||
toLower = false
|
||||
[[related.indices]]
|
||||
name = "categories"
|
||||
weight = 100
|
||||
[[related.indices]]
|
||||
name = "tags"
|
||||
weight = 80
|
||||
[[related.indices]]
|
||||
name = "date"
|
||||
weight = 10
|
||||
|
||||
[imaging]
|
||||
anchor = "Smart"
|
||||
bgColor = "#ffffff"
|
||||
hint = "photo"
|
||||
quality = 75
|
||||
resampleFilter = "Box"
|
|
@ -0,0 +1,88 @@
|
|||
# Color mode
|
||||
colorMode = "auto" # auto (default), light or dark
|
||||
colorModeToggler = true # true (default) or false (this setting is only relevant when colorMode = auto)
|
||||
|
||||
# Navbar
|
||||
navbarSticky = true # true (default) or false
|
||||
containerBreakpoint = "lg" # "", "sm", "md", "lg" (default), "xl", "xxl", or "fluid"
|
||||
|
||||
## Button
|
||||
navBarButton = false # false (default) or true
|
||||
navBarButtonUrl = "/docs/prologue/introduction/"
|
||||
navBarButtonText = "Get started"
|
||||
|
||||
# FlexSearch
|
||||
flexSearch = true # true (default) or false
|
||||
searchExclKinds = [] # list of page kinds to exclude from search indexing (e.g. ["home", "taxonomy", "term"] )
|
||||
searchExclTypes = [] # list of content types to exclude from search indexing (e.g. ["blog", "docs", "legal", "contributors", "categories"])
|
||||
showSearch = [] # [] (all pages, default) or homepage (optionally) and list of sections (e.g. ["homepage", "blog", "guides"])
|
||||
|
||||
## Search results
|
||||
showDate = false # false (default) or true
|
||||
showSummary = true # true (default) or false
|
||||
searchLimit = 5 # 0 (no limit, default) or natural number
|
||||
|
||||
# Global alert
|
||||
alert = false # false (default) or true
|
||||
alertDismissable = true # true (default) or false
|
||||
alertText = '<a class="alert-link stretched-link fw-normal" href="/blog/example-post/">Doks version 1.0 just shipped!</a>'
|
||||
|
||||
# Bootstrap
|
||||
bootstrapJavascript = false # false (default) or true
|
||||
|
||||
# Nav
|
||||
sectionNav = ["docs"] # ["docs"] (default) or list of sections (e.g. ["docs", "guides"])
|
||||
toTopButton = false # false (default) or true
|
||||
breadcrumbTrail = false # false (default) or true
|
||||
headlineHash = true # true (default) or false
|
||||
scrollSpy = true # true (default) or false
|
||||
|
||||
# Multilingual
|
||||
multilingualMode = false # false (default) or true
|
||||
showMissingLanguages = true # whether or not to show untranslated languages in the language menu; true (default) or false
|
||||
|
||||
# Versioning
|
||||
docsVersioning = false # false (default) or true
|
||||
docsVersion = "1.0"
|
||||
|
||||
# UX
|
||||
headerBar = false # false (default) or true
|
||||
backgroundDots = true # true (default) or false
|
||||
|
||||
# Homepage
|
||||
sectionFooter = false # false (default) or true
|
||||
|
||||
# Blog
|
||||
relatedPosts = false # false (default) or true
|
||||
|
||||
# Footer
|
||||
footer = "Brought to you by <a class=\"text-muted\" href=\"https://gethyas.com/\">Hyas</a>"
|
||||
|
||||
# KaTex
|
||||
katex = false
|
||||
|
||||
# Repository
|
||||
editPage = false # false (default) or true
|
||||
lastMod = false # false (default) or true
|
||||
repoHost = "GitHub" # GitHub (default), Gitea, GitLab, Bitbucket, or BitbucketServer
|
||||
docsRepo = "https://github.com/h-enk/doks"
|
||||
docsRepoBranch = "main" # main (default), master, or <branch name>
|
||||
docsRepoSubPath = "" # "" (none, default) or <sub path>
|
||||
|
||||
[menu]
|
||||
[menu.section]
|
||||
auto = true # true (default) or false
|
||||
collapsibleSidebar = true # true (default) or false
|
||||
|
||||
# SCSS
|
||||
# backGround = "yellowgreen"
|
||||
|
||||
# Colors
|
||||
|
||||
## Dark theme
|
||||
# textDark = "#dee2e6" # "#dee2e6" (default), "#dee2e6" (orignal), or custom color
|
||||
# accentDark = "#5d2f86" # "#5d2f86" (default), "#5d2f86" (original), or custom color
|
||||
|
||||
## Light theme
|
||||
# textLight = "#1d2d35" # "#1d2d35" (default), "#1d2d35" (orignal), or custom color
|
||||
# accentLight = "#8ed6fb" # "#8ed6fb" (default), "#8ed6fb" (orignal), or custom color
|
|
@ -0,0 +1 @@
|
|||
# See .config/_default/params.toml
|
|
@ -0,0 +1 @@
|
|||
# See .config/_default/params.toml
|
|
@ -0,0 +1 @@
|
|||
# See .config/_default/params.toml
|
|
@ -13,14 +13,18 @@ defaultMarkdownHandler = "goldmark"
|
|||
unsafe = true
|
||||
|
||||
[highlight]
|
||||
codeFences = false
|
||||
anchorLineNos = false
|
||||
codeFences = true
|
||||
guessSyntax = false
|
||||
hl_Lines = ""
|
||||
hl_Lines = ''
|
||||
hl_inline = false
|
||||
lineAnchors = ''
|
||||
lineNoStart = 1
|
||||
lineNos = false
|
||||
lineNumbersInTable = true
|
||||
lineNumbersInTable = false
|
||||
noClasses = false
|
||||
style = "dracula"
|
||||
noHl = false
|
||||
style = 'github-dark'
|
||||
tabWidth = 4
|
||||
|
||||
[tableOfContents]
|
||||
|
|
|
@ -0,0 +1,14 @@
|
|||
[[main]]
|
||||
name = "GitHub"
|
||||
url = "https://github.com/h-enk/hyas"
|
||||
weight = 10
|
||||
|
||||
[[social]]
|
||||
name = "LinkedIn"
|
||||
url = "https://www.linkedin.com/in/henkverlinde/"
|
||||
weight = 20
|
||||
|
||||
[[social]]
|
||||
name = "Twitter"
|
||||
url = "https://twitter.com/henkverlinde"
|
||||
weight = 30
|
|
@ -1,14 +1,14 @@
|
|||
[[docs]]
|
||||
name = "Prologue"
|
||||
weight = 10
|
||||
identifier = "prologue"
|
||||
url = "/docs/prologue/"
|
||||
# [[docs]]
|
||||
# name = "Prologue"
|
||||
# weight = 10
|
||||
# identifier = "prologue"
|
||||
# url = "/docs/prologue/"
|
||||
|
||||
[[docs]]
|
||||
name = "Help"
|
||||
weight = 60
|
||||
identifier = "help"
|
||||
url = "/docs/help/"
|
||||
# [[docs]]
|
||||
# name = "Help"
|
||||
# weight = 60
|
||||
# identifier = "help"
|
||||
# url = "/docs/help/"
|
||||
|
||||
# [[docs]]
|
||||
# name = "Lorem"
|
||||
|
@ -30,54 +30,40 @@
|
|||
|
||||
[[main]]
|
||||
name = "Docs"
|
||||
url = "/docs/prologue/introduction/"
|
||||
url = "/docs/guides/example-guide/"
|
||||
# url = "/docs/1.0/prologue/introduction/"
|
||||
weight = 10
|
||||
|
||||
# [[main]]
|
||||
# name = "Tutorial"
|
||||
# url = "/tutorial/lorem/ipsum/"
|
||||
# weight = 15
|
||||
|
||||
[[main]]
|
||||
name = "Blog"
|
||||
url = "/blog/"
|
||||
weight = 20
|
||||
|
||||
[[main]]
|
||||
name = "Get Started"
|
||||
weight = 30
|
||||
identifier = "get-started"
|
||||
url = "/docs/prologue/introduction/"
|
||||
|
||||
[[main]]
|
||||
name = "Quick Start"
|
||||
weight = 40
|
||||
identifier = "quick-start"
|
||||
url = "/docs/prologue/quick-start/"
|
||||
parent = "get-started"
|
||||
|
||||
[[main]]
|
||||
name = "Tutorial"
|
||||
weight = 50
|
||||
identifier = "tutorial"
|
||||
url = "https://getdoks.org/tutorial/introduction/"
|
||||
parent = "get-started"
|
||||
# [[social]]
|
||||
# name = "Twitter"
|
||||
# pre = '<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-brand-x" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M4 4l11.733 16h4.267l-11.733 -16z"></path><path d="M4 20l6.768 -6.768m2.46 -2.46l6.772 -6.772"></path></svg>'
|
||||
# url = "https://twitter.com/getdoks"
|
||||
# weight = 10
|
||||
#
|
||||
# [[social]]
|
||||
# name = "Discord"
|
||||
# pre = '<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-brand-discord" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M8 12a1 1 0 1 0 2 0a1 1 0 0 0 -2 0"></path><path d="M14 12a1 1 0 1 0 2 0a1 1 0 0 0 -2 0"></path><path d="M8.5 17c0 1 -1.356 3 -1.832 3c-1.429 0 -2.698 -1.667 -3.333 -3c-.635 -1.667 -.476 -5.833 1.428 -11.5c1.388 -1.015 2.782 -1.34 4.237 -1.5l.975 1.923a11.913 11.913 0 0 1 4.053 0l.972 -1.923c1.5 .16 3.043 .485 4.5 1.5c2 5.667 2.167 9.833 1.5 11.5c-.667 1.333 -2 3 -3.5 3c-.5 0 -2 -2 -2 -3"></path><path d="M7 16.5c3.5 1 6.5 1 10 0"></path></svg>'
|
||||
# url = "https://getdoks.org/chat"
|
||||
# weight = 20
|
||||
|
||||
[[social]]
|
||||
name = "GitHub"
|
||||
pre = "<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"feather feather-github\"><path d=\"M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22\"></path></svg>"
|
||||
url = "https://github.com/h-enk/doks"
|
||||
pre = '<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-brand-github" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M9 19c-4.3 1.4 -4.3 -2.5 -6 -3m12 5v-3.5c0 -1 .1 -1.4 -.5 -2c2.8 -.3 5.5 -1.4 5.5 -6a4.6 4.6 0 0 0 -1.3 -3.2a4.2 4.2 0 0 0 -.1 -3.2s-1.1 -.3 -3.5 1.3a12.3 12.3 0 0 0 -6.2 0c-2.4 -1.6 -3.5 -1.3 -3.5 -1.3a4.2 4.2 0 0 0 -.1 3.2a4.6 4.6 0 0 0 -1.3 3.2c0 4.6 2.7 5.7 5.5 6c-.6 .6 -.6 1.2 -.5 2v3.5"></path></svg>'
|
||||
url = "https://github.com/gethyas/doks"
|
||||
post = "v0.1.0"
|
||||
weight = 30
|
||||
|
||||
[[footer]]
|
||||
name = "Privacy Policy"
|
||||
url = "/privacy/"
|
||||
weight = 10
|
||||
|
||||
[[social]]
|
||||
name = "Twitter"
|
||||
pre = "<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"feather feather-twitter\"><path d=\"M23 3a10.9 10.9 0 0 1-3.14 1.53 4.48 4.48 0 0 0-7.86 3v1A10.66 10.66 0 0 1 3 4s-4 9 5 13a11.64 11.64 0 0 1-7 2c9 5 20 0 20-11.5a4.5 4.5 0 0 0-.08-.83A7.72 7.72 0 0 0 23 3z\"></path></svg>"
|
||||
url = "https://twitter.com/getdoks"
|
||||
weight = 20
|
||||
|
||||
# [[footer]]
|
||||
# name = "Privacy"
|
||||
# url = "/privacy-policy/"
|
||||
# weight = 10
|
||||
# name = "Terms of Service"
|
||||
# url = "/terms/"
|
||||
# weight = 20
|
||||
|
|
|
@ -0,0 +1,104 @@
|
|||
[[mounts]]
|
||||
source = "config/_default/hyas"
|
||||
target = "data"
|
||||
|
||||
[[mounts]]
|
||||
source = "node_modules/@hyas/core/assets"
|
||||
target = "assets"
|
||||
|
||||
[[mounts]]
|
||||
source = "node_modules/@hyas/core/layouts"
|
||||
target = "layouts"
|
||||
|
||||
[[mounts]]
|
||||
source = "node_modules/@hyas/seo/layouts"
|
||||
target = "layouts"
|
||||
|
||||
[[mounts]]
|
||||
source = "node_modules/@hyas/images/assets"
|
||||
target = "assets"
|
||||
excludeFiles = "/scss/**.scss"
|
||||
|
||||
[[mounts]]
|
||||
source = "node_modules/@hyas/images/layouts"
|
||||
target = "layouts"
|
||||
|
||||
[[mounts]]
|
||||
source = "node_modules/@hyas/doks-core/archetypes"
|
||||
target = "archetypes"
|
||||
|
||||
[[mounts]]
|
||||
source = "node_modules/@hyas/doks-core/assets"
|
||||
target = "assets"
|
||||
|
||||
[[mounts]]
|
||||
source = "node_modules/@hyas/doks-core/data"
|
||||
target = "data"
|
||||
|
||||
[[mounts]]
|
||||
source = "node_modules/@hyas/doks-core/i18n"
|
||||
target = "i18n"
|
||||
|
||||
[[mounts]]
|
||||
source = "node_modules/@hyas/doks-core/layouts"
|
||||
target = "layouts"
|
||||
|
||||
[[mounts]]
|
||||
source = "node_modules/@hyas/doks-core/static"
|
||||
target = "static"
|
||||
|
||||
[[mounts]]
|
||||
source = "node_modules/flexsearch"
|
||||
target = "assets/js/vendor/flexsearch"
|
||||
|
||||
[[mounts]]
|
||||
source = "node_modules/katex"
|
||||
target = "assets/js/vendor/katex"
|
||||
|
||||
[[mounts]]
|
||||
source = "node_modules/mermaid"
|
||||
target = "assets/js/vendor/mermaid"
|
||||
|
||||
[[mounts]]
|
||||
source = "node_modules/@tabler/icons/icons"
|
||||
target = "assets/svgs/tabler-icons"
|
||||
|
||||
[[mounts]]
|
||||
source = "assets/svgs"
|
||||
target = "assets/svgs"
|
||||
|
||||
[[mounts]]
|
||||
source = "node_modules/@hyas/inline-svg/layouts"
|
||||
target = "layouts"
|
||||
|
||||
[[mounts]]
|
||||
source = "themes/doks/layouts"
|
||||
target = "layouts"
|
||||
|
||||
[[mounts]]
|
||||
source = "archetypes"
|
||||
target = "archetypes"
|
||||
|
||||
[[mounts]]
|
||||
source = "assets"
|
||||
target = "assets"
|
||||
|
||||
[[mounts]]
|
||||
source = "content"
|
||||
target = "content"
|
||||
|
||||
[[mounts]]
|
||||
source = "data"
|
||||
target = "data"
|
||||
|
||||
[[mounts]]
|
||||
source = "i18n"
|
||||
target = "i18n"
|
||||
|
||||
[[mounts]]
|
||||
source = "layouts"
|
||||
target = "layouts"
|
||||
|
||||
[[mounts]]
|
||||
source = "static"
|
||||
target = "static"
|
|
@ -1,114 +0,0 @@
|
|||
# Meta Data for SEO
|
||||
|
||||
## Homepage
|
||||
title = "Doks"
|
||||
titleSeparator = "-"
|
||||
titleAddition = "Modern Documentation Theme"
|
||||
description = "Doks is a Hugo theme for building secure, fast, and SEO-ready documentation websites, which you can easily update and customize."
|
||||
|
||||
## Documentation
|
||||
# docsVersion = "0.3"
|
||||
|
||||
## Open Graph
|
||||
images = ["doks.png"]
|
||||
ogLocale = "en_US"
|
||||
domainTLD = "doks.netlify.app"
|
||||
titleHome = "Doks Theme"
|
||||
|
||||
## Twitter Cards
|
||||
twitterSite = "@getdoks"
|
||||
twitterCreator = "@henkverlinde"
|
||||
|
||||
## JSON-LD
|
||||
# schemaType = "Person"
|
||||
schemaType = "Organization"
|
||||
schemaName = "Doks"
|
||||
schemaAuthor = "Henk Verlinde"
|
||||
schemaAuthorTwitter = "https://twitter.com/henkverlinde"
|
||||
schemaAuthorLinkedIn = "https://www.linkedin.com/in/henkverlinde/"
|
||||
schemaAuthorGitHub = "https://github.com/h-enk"
|
||||
schemaLocale = "en-US"
|
||||
schemaLogo = "logo-doks.png"
|
||||
schemaLogoWidth = 512
|
||||
schemaLogoHeight = 512
|
||||
schemaImage = "doks.png"
|
||||
schemaImageWidth = 1280
|
||||
schemaImageHeight = 640
|
||||
schemaTwitter = "https://twitter.com/getdoks"
|
||||
schemaLinkedIn = ""
|
||||
schemaGitHub = "https://github.com/h-enk/doks"
|
||||
schemaSection = "blog"
|
||||
|
||||
## Sitelinks Search Box
|
||||
siteLinksSearchBox = false
|
||||
|
||||
## Chrome Browser
|
||||
themeColor = "#fff"
|
||||
|
||||
# Images
|
||||
quality = 85
|
||||
bgColor = "#fff"
|
||||
landscapePhotoWidths = [900, 800, 700, 600, 500]
|
||||
portraitPhotoWidths = [800, 700, 600, 500]
|
||||
lqipWidth = "20x"
|
||||
smallLimit = "300"
|
||||
|
||||
# Images
|
||||
imageResponsive = true
|
||||
imageConvertTo = "webp"
|
||||
imageImageSizes = ["480","720","1080","1280","1600","2048"]
|
||||
singleSize = false
|
||||
imageAddClass = "img-fluid lazyload blur-up"
|
||||
|
||||
### Image template
|
||||
defaultImage = "default-image.png" # put in `./assets/images/`
|
||||
fillImage = "1270x740 Center" # normalize image size
|
||||
|
||||
# Footer
|
||||
footer = "Powered by <a class=\"text-muted\" href=\"https://www.netlify.com/\">Netlify</a>, <a class=\"text-muted\" href=\"https://gohugo.io/\">Hugo</a>, and <a class=\"text-muted\" href=\"https://getdoks.org/\">Doks</a>"
|
||||
|
||||
# Feed
|
||||
copyRight = "Copyright (c) 2020-2021 Henk Verlinde"
|
||||
|
||||
# Alert
|
||||
alert = false
|
||||
alertDismissable = true
|
||||
# alertText = "Introducing the Doks child theme, several DX + UX updates, and more! <a class=\"alert-link stretched-link\" href=\"https://getdoks.org/blog/doks-v0.2/\" target=\"_blank\" rel=\"noopener\">Check out Doks v0.2</a>"
|
||||
alertText = "Introducing the Doks child theme, several DX + UX updates, and more! <a class=\"alert-link stretched-link\" href=\"https://getdoks.org/blog/doks-v0.2/\">Check out Doks v0.2</a>"
|
||||
|
||||
# Edit Page
|
||||
# repoHost [Github | Gitea | GitLab | Bitbucket | BitbucketServer ] is used for building the edit link based on git hoster
|
||||
repoHost = "GitHub"
|
||||
#repoHost = "Gitea"
|
||||
docsRepo = "https://github.com/h-enk/doks"
|
||||
docsRepoBranch = "master"
|
||||
docsRepoSubPath = ""
|
||||
editPage = false
|
||||
lastMod = false
|
||||
|
||||
[sections]
|
||||
sectionNav = ["docs", "guides"]
|
||||
|
||||
[options]
|
||||
lazySizes = true
|
||||
clipBoard = true
|
||||
instantPage = true
|
||||
flexSearch = true
|
||||
searchSectionsShow = []
|
||||
searchSectionsIndex = []
|
||||
darkMode = true
|
||||
bootStrapJs = true
|
||||
breadCrumb = false
|
||||
highLight = true
|
||||
kaTex = false
|
||||
multilingualMode = false
|
||||
docsVersioning = false
|
||||
fullWidth = false
|
||||
navbarSticky = true
|
||||
toTopButton = false
|
||||
scrollSpy = false # experimental; needs Bootstrap >= 5.2.0-beta1
|
||||
|
||||
[menu]
|
||||
[menu.section]
|
||||
auto = true
|
||||
collapsibleSidebar = true
|
|
@ -0,0 +1,64 @@
|
|||
# Images (@hyas/images)
|
||||
image:
|
||||
## General
|
||||
type: page # page (default) or global
|
||||
widths: [600, 900, 1300] # [600, 900, 1300] (default)
|
||||
densities: [1,2] # [1,2] (default)
|
||||
formats: [original, webp] # [original, webp] (default)
|
||||
provider: null # null (default) or netlify
|
||||
loading: lazysizes # auto (default), lazy, or lazysizes
|
||||
class: "img-fluid blur-up" # img-fluid (default)
|
||||
output: picture # picture (default), figure, or img
|
||||
noscript: false # false (default) or true
|
||||
|
||||
## Placeholder
|
||||
placeholder: lqip # null (default), lqip, dominant, or [black, [gray-100..gray-900], white]
|
||||
lqip_div_factor: 5 # 5 (default)
|
||||
lqip_blur_amount: 5 # 5 (default)
|
||||
gif_div_factor: 10 # 10 (default)
|
||||
|
||||
## Figure
|
||||
target: "_blank" # _blank (default)
|
||||
rel: "noopener, noreferrer" # noopener, noreferrer (default)
|
||||
figure_class: "figure" # figure (default)
|
||||
figure_image_class: "figure-img img-fluid blur-up" # "figure-img img-fluid" (default)
|
||||
figcaption_class: figure-caption # figure-caption (default)
|
||||
figcaption_title_h: 4 # 4 (default)
|
||||
attr_link_target: "_blank" # _blank (default)
|
||||
attr_link_rel: "noopener, noreferrer" # noopener, noreferrer (default)
|
||||
|
||||
## Render hook
|
||||
render_hook: true # false (default) or true
|
||||
render_hook_wrapper_class: img-wrapper # img-wrapper (default)
|
||||
|
||||
## Shortcode
|
||||
shortcode_wrapper_class: img-wrapper # img-wrapper (default)
|
||||
|
||||
## Debugging
|
||||
suppress_width_warning: false # false (default) or true
|
||||
debug: false # false (default) or true
|
||||
|
||||
# SEO (@hyas/seo)
|
||||
seo:
|
||||
description: ""
|
||||
generate:
|
||||
title: true
|
||||
meta: true
|
||||
twitter: true
|
||||
og: true
|
||||
jsonld:
|
||||
article: true
|
||||
breadcrumbs: true
|
||||
title_tag:
|
||||
separator: "|"
|
||||
home_text: ""
|
||||
og_article_types: [post, posts, blog, news, article, articles, event, events, course, courses]
|
||||
jsonld_article_types: [article, articles]
|
||||
jsonld_news_article_types: [news, updates]
|
||||
jsonld_blog_posting_types: [post, posts, blog]
|
||||
image: "/images/hyas-schema-image.png"
|
||||
private: false
|
||||
|
||||
# Inline SVG (@hyas/inline-svg)
|
||||
inline_svg:
|
||||
icon_set_dir: "tabler-icons" # tabler-icons (default)
|
|
@ -8,10 +8,10 @@ module.exports = {
|
|||
// Best practice: https://github.com/babel/babel/issues/7789
|
||||
'>=1%',
|
||||
'not ie 11',
|
||||
'not op_mini all'
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
]
|
||||
'not op_mini all',
|
||||
],
|
||||
},
|
||||
},
|
||||
],
|
||||
],
|
||||
};
|
|
@ -1 +0,0 @@
|
|||
canonifyURLs = false
|
|
@ -0,0 +1 @@
|
|||
# Overrides for next environment
|
|
@ -7,7 +7,10 @@ module.exports = {
|
|||
autoprefixer(),
|
||||
purgecss({
|
||||
content: [
|
||||
'./node_modules/@hyas/*/layouts/**/*.html',
|
||||
'./themes/*/layouts/**/*.html',
|
||||
'./layouts/**/*.html',
|
||||
'./content/**/*.html',
|
||||
'./content/**/*.md',
|
||||
],
|
||||
safelist: [
|
||||
|
@ -18,25 +21,37 @@ module.exports = {
|
|||
'tr',
|
||||
'th',
|
||||
'td',
|
||||
'h1',
|
||||
'h2',
|
||||
'h3',
|
||||
'h4',
|
||||
'h5',
|
||||
'alert-link',
|
||||
'container-xxl',
|
||||
'container-lg',
|
||||
'container-fluid',
|
||||
'offcanvas-backdrop',
|
||||
'img-fluid',
|
||||
'lazyload',
|
||||
'blur-up',
|
||||
'figcaption',
|
||||
'dt',
|
||||
'dd',
|
||||
'showing',
|
||||
'hiding',
|
||||
...whitelister([
|
||||
'./assets/scss/components/_alerts.scss',
|
||||
'./assets/scss/components/_buttons.scss',
|
||||
'./assets/scss/components/_code.scss',
|
||||
'./assets/scss/components/_diagrams.scss',
|
||||
'./assets/scss/components/_syntax.scss',
|
||||
'./assets/scss/components/_search.scss',
|
||||
'./assets/scss/common/_dark.scss',
|
||||
'./node_modules/@hyas/core/assets/scss/app.scss',
|
||||
'./node_modules/@hyas/doks-core/assets/scss/common/_global.scss',
|
||||
'./node_modules/@hyas/doks-core/assets/scss/components/_alerts.scss',
|
||||
'./node_modules/@hyas/doks-core/assets/scss/components/_buttons.scss',
|
||||
'./node_modules/@hyas/doks-core/assets/scss/components/_callouts.scss',
|
||||
'./node_modules/@hyas/doks-core/assets/scss/components/_code.scss',
|
||||
// './node_modules/@hyas/doks-core/assets/scss/components/_diagrams.scss',
|
||||
'./node_modules/@hyas/doks-core/assets/scss/components/_modals.scss',
|
||||
'./node_modules/@hyas/doks-core/assets/scss/components/_syntax.scss',
|
||||
'./node_modules/@hyas/doks-core/assets/scss/components/_search.scss',
|
||||
'./node_modules/@hyas/doks-core/assets/scss/common/_dark.scss',
|
||||
'./node_modules/bootstrap/scss/_dropdown.scss',
|
||||
'./node_modules/katex/dist/katex.css',
|
||||
// './node_modules/katex/dist/katex.css',
|
||||
]),
|
||||
],
|
||||
}),
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
canonifyURLs = false
|
|
@ -0,0 +1 @@
|
|||
# Overrides for production environment
|
|
@ -0,0 +1,9 @@
|
|||
---
|
||||
title : "Welcome to Doks"
|
||||
description: ""
|
||||
lead: "Congrats on setting up a new Doks project!"
|
||||
date: 2023-09-07T16:33:54+02:00
|
||||
lastmod: 2023-09-07T16:33:54+02:00
|
||||
draft: false
|
||||
images: []
|
||||
---
|
|
@ -1,10 +1,10 @@
|
|||
---
|
||||
title: "{{ replace .Name "-" " " | title }}"
|
||||
title: "Blog"
|
||||
description: ""
|
||||
excerpt: ""
|
||||
date: {{ .Date }}
|
||||
lastmod: {{ .Date }}
|
||||
draft: true
|
||||
summary: ""
|
||||
date: 2023-09-07T16:21:44+02:00
|
||||
lastmod: 2023-09-07T16:21:44+02:00
|
||||
draft: false
|
||||
weight: 50
|
||||
images: []
|
||||
categories: []
|
|
@ -0,0 +1,15 @@
|
|||
---
|
||||
title: "Example Post"
|
||||
description: ""
|
||||
summary: ""
|
||||
date: 2023-09-07T16:27:22+02:00
|
||||
lastmod: 2023-09-07T16:27:22+02:00
|
||||
draft: false
|
||||
weight: 50
|
||||
images: []
|
||||
categories: []
|
||||
tags: []
|
||||
contributors: []
|
||||
pinned: false
|
||||
homepage: false
|
||||
---
|
|
@ -0,0 +1,15 @@
|
|||
---
|
||||
title: "Docs"
|
||||
description: ""
|
||||
summary: ""
|
||||
date: 2023-09-07T16:12:03+02:00
|
||||
lastmod: 2023-09-07T16:12:03+02:00
|
||||
draft: false
|
||||
images: []
|
||||
menu:
|
||||
docs:
|
||||
parent: ""
|
||||
identifier: "docs-9602b15bad02600f3883f55e2ade6b81"
|
||||
weight: 999
|
||||
toc: true
|
||||
---
|
|
@ -0,0 +1,15 @@
|
|||
---
|
||||
title: "Guides"
|
||||
description: ""
|
||||
summary: ""
|
||||
date: 2023-09-07T16:06:50+02:00
|
||||
lastmod: 2023-09-07T16:06:50+02:00
|
||||
draft: false
|
||||
images: []
|
||||
menu:
|
||||
docs:
|
||||
parent: ""
|
||||
identifier: "guides-4e0d0e0f89f7decc11eaad4ae9193018"
|
||||
weight: 800
|
||||
toc: true
|
||||
---
|
|
@ -0,0 +1,21 @@
|
|||
---
|
||||
title: "Example Guide"
|
||||
description: ""
|
||||
summary: ""
|
||||
date: 2023-09-07T16:04:48+02:00
|
||||
lastmod: 2023-09-07T16:04:48+02:00
|
||||
draft: false
|
||||
images: []
|
||||
menu:
|
||||
docs:
|
||||
parent: ""
|
||||
identifier: "example-6a1a6be4373e933280d78ea53de6158e"
|
||||
weight: 810
|
||||
toc: true
|
||||
---
|
||||
|
||||
Guides lead a user through a specific task they want to accomplish, often with a sequence of steps. Writing a good guide requires thinking about what your users are trying to do.
|
||||
|
||||
## Further reading
|
||||
|
||||
- Read [about how-to guides](https://diataxis.fr/how-to-guides/) in the Diátaxis framework
|
|
@ -0,0 +1,15 @@
|
|||
---
|
||||
title: "Reference"
|
||||
description: ""
|
||||
summary: ""
|
||||
date: 2023-09-07T16:12:37+02:00
|
||||
lastmod: 2023-09-07T16:12:37+02:00
|
||||
draft: false
|
||||
images: []
|
||||
menu:
|
||||
docs:
|
||||
parent: ""
|
||||
identifier: "reference-22e9ba8aefa7ef9891199cf8db3a08cd"
|
||||
weight: 900
|
||||
toc: true
|
||||
---
|
|
@ -0,0 +1,21 @@
|
|||
---
|
||||
title: "Example Reference"
|
||||
description: ""
|
||||
summary: ""
|
||||
date: 2023-09-07T16:13:18+02:00
|
||||
lastmod: 2023-09-07T16:13:18+02:00
|
||||
draft: false
|
||||
images: []
|
||||
menu:
|
||||
docs:
|
||||
parent: ""
|
||||
identifier: "example-ee51430687e728ba6e68dea3359133ad"
|
||||
weight: 910
|
||||
toc: true
|
||||
---
|
||||
|
||||
Reference pages are ideal for outlining how things work in terse and clear terms. Less concerned with telling a story or addressing a specific use case, they should give a comprehensive outline of what your documenting.
|
||||
|
||||
## Further reading
|
||||
|
||||
- Read [about reference](https://diataxis.fr/reference/) in the Diátaxis framework
|
|
@ -1,9 +0,0 @@
|
|||
---
|
||||
title : "Modern Documentation Theme"
|
||||
description: "Doks is a Hugo theme for building secure, fast, and SEO-ready documentation websites, which you can easily update and customize."
|
||||
lead: "Doks is a Hugo theme for building secure, fast, and SEO-ready documentation websites, which you can easily update and customize."
|
||||
date: 2020-10-06T08:47:36+00:00
|
||||
lastmod: 2020-10-06T08:47:36+00:00
|
||||
draft: false
|
||||
images: []
|
||||
---
|
|
@ -1,8 +0,0 @@
|
|||
---
|
||||
title: "Blog"
|
||||
description: "The Doks Blog."
|
||||
date: 2020-10-06T08:49:55+00:00
|
||||
lastmod: 2020-10-06T08:49:55+00:00
|
||||
draft: false
|
||||
images: []
|
||||
---
|
|
@ -1,17 +0,0 @@
|
|||
---
|
||||
title: "Say hello to Doks 👋"
|
||||
description: "Introducing Doks, a Hugo theme helping you build modern documentation websites that are secure, fast, and SEO-ready — by default."
|
||||
excerpt: "Introducing Doks, a Hugo theme helping you build modern documentation websites that are secure, fast, and SEO-ready — by default."
|
||||
date: 2020-11-04T09:19:42+01:00
|
||||
lastmod: 2020-11-04T09:19:42+01:00
|
||||
draft: false
|
||||
weight: 50
|
||||
images: []
|
||||
categories: ["News"]
|
||||
tags: ["security", "performance", "SEO"]
|
||||
contributors: ["Henk Verlinde"]
|
||||
pinned: false
|
||||
homepage: false
|
||||
---
|
||||
|
||||
Introducing Doks, a Hugo theme helping you build modern documentation websites that are secure, fast, and SEO-ready — by default.
|
|
@ -1,10 +0,0 @@
|
|||
---
|
||||
title: "Contact"
|
||||
description: "Drop us an email."
|
||||
date: 2020-08-27T19:25:12+02:00
|
||||
lastmod: 2020-08-27T19:25:12+02:00
|
||||
draft: true
|
||||
images: []
|
||||
---
|
||||
|
||||
{{< email user="hello" domain="getdoks.org" >}}
|
|
@ -1,10 +0,0 @@
|
|||
---
|
||||
title: "Contributors"
|
||||
description: "The Doks contributors."
|
||||
date: 2020-10-06T08:50:29+00:00
|
||||
lastmod: 2020-10-06T08:50:29+00:00
|
||||
draft: false
|
||||
images: []
|
||||
---
|
||||
|
||||
The Doks contributors.
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue