docusaurus/packages/docusaurus-theme-classic
Erick Zhao c86dfbda61
feat(v2): allow specifying TOC max depth (themeConfig + frontMatter) (#5578)
* feat: add all TOC levels to MDX loader

* feat: add theme-level config for heading depth

* test: add remark MDX loader test

* fix: limit maxDepth validation to H2 - H6

* refactor: set default `maxDepth` using `joi`

* refactor: `maxDepth` -> `maxHeadingLevel

* refactor: invert underlying TOC depth API

* refactor: make TOC algorithm level-aware

* feat: add support for per-doc TOC heading levels

* feat: support document-level heading levels for blog

* fix: correct validation for toc level frontmatter

* fix: ensure TOC doesn't generate redundant DOM

* perf: simpler TOC heading search alg

* docs: document heading level props for `TOCInline`

* Update website/docs/guides/markdown-features/markdown-features-inline-toc.mdx

Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>

* docs: fix docs (again)

* create dedicated  test file for heading searching logic: exhaustive tests will be simpler to write

* toc search: add real-world test

* fix test

* add dogfooding tests for toc min/max

* add test for min/max toc frontmatter

* reverse min/max order

* add theme minHeadingLevel + tests

* simpler TOC rendering logic

* simplify TOC implementation (temp, WIP)

* reverse unnatural order for minHeadingLevel/maxHeadingLevel

* add TOC dogfooding tests to all content plugins

* expose toc min/max heading level frontmatter to all 3 content plugins

* refactor blogLayout: accept toc ReactElement directly

* move toc utils to theme-common

* add tests for filterTOC

* create new generic TOCItems component

* useless css file copied

* fix toc highlighting className conflicts

* update doc

* fix types

Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>
Co-authored-by: slorber <lorber.sebastien@gmail.com>
2021-09-29 11:19:11 +02:00
..
codeTranslations refactor: adjust styling of back top top button (#5469) 2021-09-11 16:09:58 +03:00
src feat(v2): allow specifying TOC max depth (themeConfig + frontMatter) (#5578) 2021-09-29 11:19:11 +02:00
babel.config.js feat(v2): core v2 i18n support + Docusaurus site Crowdin integration (#3325) 2020-11-26 12:16:46 +01:00
package.json chore: upgrade dependencies (#5608) 2021-09-24 16:36:41 +02:00
README.md refactor: rename Git master branch to main (#5345) 2021-08-17 18:41:53 +02:00
tsconfig.json refactor(theme-classic): completely migrate package to TypeScript (#5459) 2021-09-01 14:34:26 +02:00
update-code-translations.js feat: doc tags (same as blog tags) (#3646) 2021-08-19 10:31:15 +02:00
update-code-translations.test.js feat: doc tags (same as blog tags) (#3646) 2021-08-19 10:31:15 +02:00

Docusaurus Theme Classic

The classic theme for Docusaurus.

Installation

Add docusaurus/theme-classic to your package:

npm i @docusaurus/theme-classic
# or
yarn add @docusaurus/theme-classic

Modify your docusaurus.config.js:

module.exports = {
  ...
+ themes: ['@docusaurus/theme-classic'],
  ...
}

Swizzling components

$ npm swizzle @docusaurus/theme-classic [component name]

All components used by this theme can be found here