Commit graph

101 commits

Author SHA1 Message Date
Sébastien Lorber
d02b96f7f5
refactor(core): improve dev perf, fine-grained site reloads - part1 (#9903) 2024-03-08 12:59:11 +01:00
Sébastien Lorber
affca7a9a2
feat: siteConfig.markdown.parseFrontMatter hook (#9624) 2023-12-16 02:50:26 +01:00
Tatsunori Uchino
16a366b5ec
fix(init): change initial site URL to one that is safe for the future (#9133)
RFC 2606 reserves the `.example` domain for illustrative purposes.
2023-07-13 21:59:23 +08:00
Sébastien Lorber
9866af7f44
feat(pages): add support for missing SEO front matter + improve SEO docs (#9071)
Co-authored-by: Thad Guidry <thadguidry@gmail.com>
2023-06-15 16:07:00 +02:00
Sébastien Lorber
d746f689ae
fix: remove useless js-loader in front of mdx-loader (#8972) 2023-05-12 16:31:39 +02:00
Dongjoon Lee
e553ce7e59
fix(docusaurus-utils-validation): baseUrl + routeBasePath: allow empty string, normalized as "/" (#8258)
Co-authored-by: sebastienlorber <lorber.sebastien@gmail.com>
fix https://github.com/facebook/docusaurus/issues/8254
2022-12-08 16:54:32 +01:00
Jody Heavener
683ba3d2a0
feat(docs,blog,pages): add support for "unlisted" front matter - hide md content in production (#8004)
Co-authored-by: sebastienlorber <lorber.sebastien@gmail.com>
2022-11-03 14:31:41 +01:00
Sam Wall
9c92a79d23
feat: support mermaid code blocks in Markdown (#7490)
Co-authored-by: Joshua Chen <sidachen2003@gmail.com>
Co-authored-by: sebastienlorber <lorber.sebastien@gmail.com>
2022-10-14 18:07:20 +02:00
Joshua Chen
e12a2efaeb
docs: normalize capitalization (#7619) 2022-06-15 13:04:33 +08:00
Alexey Pyltsyn
5746c58f41
refactor: handle all admonitions via JSX component (#7152)
Co-authored-by: Joshua Chen <sidachen2003@gmail.com>
Co-authored-by: sebastienlorber <lorber.sebastien@gmail.com>
2022-06-03 14:26:33 +02:00
Joshua Chen
abe5450526
feat(core): allow customizing the i18n directory path (#7386)
Co-authored-by: sebastienlorber <lorber.sebastien@gmail.com>
2022-06-02 17:37:14 +02:00
Joshua Chen
bf1513a3e3
refactor: fix a lot of errors in type-aware linting (#7477) 2022-05-24 15:40:26 +08:00
Joshua Chen
0838884f67
chore: enable import/order rule (#7418) 2022-05-14 23:39:50 +08:00
Joshua Chen
a2c993bf9a
fix(*): make TypeScript realize that each plugin package has a default export (#7294) 2022-05-03 18:23:34 +08:00
Joshua Chen
7a61eed3dd
refactor: unify how MDX content types are represented (#7145)
* refactor: unify how MDX content types are represented

* fix

* fix again
2022-04-10 19:19:44 +08:00
Joshua Chen
9145ae88cc
chore: disable string escaping in snapshots (#7131) 2022-04-08 11:23:19 +08:00
Joshua Chen
5fb09a2946
refactor(core): reorganize files (#7042)
* refactor(core): reorganize files

* fix types
2022-03-28 21:49:37 +08:00
Joshua Chen
2bcac29cd4
refactor(content-docs): deduplicate types, JSDoc for some APIs (#7027)
* refactor(content-docs): deduplicate types, JSDoc for some APIs

* little refactor
2022-03-27 12:57:15 +08:00
Joshua Chen
87592bca03
refactor: ensure all types are using index signature instead of Record (#6995)
* refactor: ensure all types are using index signature instead of Record

* kick CI
2022-03-25 18:06:30 +08:00
Joshua Chen
6e2eb44964
refactor: unify how validateOptions is handled (#6961)
* refactor: unify how validateOptions is handled

* fix types

* fix again
2022-03-22 19:40:56 +08:00
Joshua Chen
cc0bceab9c
chore: tighten ESLint config (#6931)
* chore: tighten ESLint config

* more refactor

* refactor push

* fix
2022-03-17 17:59:41 +08:00
Joshua Chen
8c1e518ba2
chore: do not print prototype in jest snapshot (#6908) 2022-03-13 19:34:50 +08:00
Joshua Chen
aa5a2d4c04
test: enable a few jest eslint rules (#6900)
* test: enable a few jest eslint rules

* more
2022-03-12 08:43:09 +08:00
Joshua Chen
8e934450d8
refactor: remove unnecessary default values normalized during validation (#6864)
* refactor: remove unnecessary default values normalized during validation

* more
2022-03-07 19:23:30 +08:00
Joshua Chen
0d14470d54
refactor: unify export directive style (#6751) 2022-02-24 17:25:17 +08:00
Joshua Chen
d2574b287f
fix: remove more peer dependency warnings (#6615)
* fix: remove more peer dependency warnings

* fixes

* fixes

* fix

* remove more
2022-02-05 17:46:01 +08:00
Joshua Chen
1cefb643dd
refactor: enforce named capture groups; clean up regexes (#6524)
* refactor: enforce named capture groups; clean up regexes

* fixes

* fix
2022-02-01 17:43:15 +08:00
Joshua Chen
aa446b7a9c
chore: clean up ESLint config, enable a few rules (#6514)
* chore: clean up ESLint config, enable a few rules

* enable max-len for comments

* fix build
2022-01-31 10:31:24 +08:00
Joshua Chen
19fb337618
fix(content-pages): declare hide_table_of_contents as boolean (#6413) 2022-01-20 10:58:36 +08:00
Joshua Chen
fdf59f30f0
feat(content-pages): front matter validation, include front matter in metadata (#6400) 2022-01-19 13:44:58 +01:00
Joshua Chen
52db7320a6
chore: enable eslint-plugin-jest (#6375) 2022-01-16 15:53:23 +08:00
Nick Schonning
02a233a221
chore: minor typo cleanup (#6324)
* chore: minor typo cleanup

* fix tests

Co-authored-by: Joshua Chen <sidachen2003@gmail.com>
2022-01-13 14:36:53 +08:00
Joshua Chen
cf265c051e
refactor: move exported type definitions to declaration file (#6300)
* refactor: move exported type definitions to declaration file

* fix

* fix
2022-01-09 22:02:31 +08:00
Joshua Chen
cb1aa30286
refactor: enforce type import specifiers (#6230)
* refactor: enforce type import specifiers

* fix

* Upgrade esbuild

* Fix (haha)
2021-12-31 21:17:09 +08:00
Sébastien Lorber
b393700a61
feat: async plugin creator functions (#6166) 2021-12-22 19:10:49 +01:00
Joshua Chen
fd966b5395
refactor: add blank lines below all copyright headers (#6071) 2021-12-09 11:53:46 +08:00
Joshua Chen
e07ebadf6c
fix: make Docusaurus PnP strict mode compatible (#6047)
Co-authored-by: Kristoffer K. <merceyz@users.noreply.github.com>
2021-12-08 14:26:24 +01:00
Oliver Ullman
1366c31201
feat(core): allow sourcing from multiple static directories (#4095)
* [WIP] Implementaion of multiple directory static sourcing

* Move default to validation

* Update test

* Refactor

* Port to MDX loader

* Fix

* Move dogfooding assets

* Doc writeup

* Restore assets

* Support absolute paths

* Dogfood absolute path

* Fix

* More tests

* Fix snapshots

Co-authored-by: Joshua Chen <sidachen2003@gmail.com>
2021-11-18 22:26:26 +08:00
Joshua Chen
0374426ce3
chore: upgrade TypeScript & other ESLint related deps (#5963)
* chore: upgrade ESLint related deps

* Upgrade TS

* Fix lock

* Bump Babel

* Update config
2021-11-18 21:15:37 +08:00
Joshua Chen
c5feac6ba2
refactor: move deps declarations into src (#5946) 2021-11-14 13:35:15 +08:00
Swalah Amani
c541e2d83c
misc: replace all "Metadatas" with "Metadata" (#5871)
Co-authored-by: Josh-Cena <sidachen2003@gmail.com>
2021-11-09 19:46:10 +01:00
Joshua Chen
7a6607cfa1
refactor: remove a few Lodash usages & ESLint enforcement (#5807)
* refactor: remove some lodash usage

Signed-off-by: Josh-Cena <sidachen2003@gmail.com>

* Enforce ESLint

Signed-off-by: Josh-Cena <sidachen2003@gmail.com>

* More forbids

* Fixup

* Fix

* Fix website
2021-10-28 12:48:58 +08:00
Joshua Chen
68c970175a
refactor: migrate lqip-loader to TS, fix typing for Webpack Loaders (#5779) 2021-10-27 16:38:11 +02:00
Joshua Chen
7f7b858cd4
refactor: make all Props defined as interface + readonly (#5636)
* Initial work

* Fix
2021-10-05 19:04:24 +02:00
Bharat Middha
09550b0535
feat: properly type-check the Docusaurus config of new sites (#5589)
* fix: makes types DocusaurusConfig optional to match docs

* add UserDocusaurusConfig with required keys for user config

* convert UserDocusaurusConfig to use util type

* Docusaurus website config should be type-checked by CI + fix all existing issues

* add doc for config typechecking

* Update template configs for TS autocompletion

* fix last config typechecking bugs

* reapply prettier

* reapply prettier-docs

* Fix TS doc: add missing ()

* fix some docu plugin types

* add "const config" for simpler jsdoc annotation

Co-authored-by: slorber <lorber.sebastien@gmail.com>
2021-09-30 17:49:44 +02:00
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
Joshua Chen
2ef70cb806
refactor(preset-classic): migrate preset-classic to TypeScript (#5579) 2021-09-22 11:09:52 +02:00
Sébastien Lorber
553f914639
feat: TypeScript presets/plugins should expose Options typing (#5456)
* each TS plugin should export option types + preset export option / themeConfig types + remove TS typechecking for the bootstrap theme

* each TS plugin should export option types + preset export option / themeConfig types + remove TS typechecking for the bootstrap theme

* fix remaining TS errors

* fix remaining TS errors

* TS fix

* Add JSDoc type annotations to init templates and TS docs

* missing title char
2021-09-01 12:14:40 +02:00
Sébastien Lorber
083037d7a5
refactor: redesign admonitions/callouts/quotes (#5193)
* prepare admonitions redesign

* Docusaurus admonition cleanup

* cover more edge cases in Docusaurus admonitions page: interleaving code blocks and links

* cover more edge cases in Docusaurus admonitions page: interleaving code blocks and links

* update Infima with new alerts
2021-07-23 17:10:38 +02:00
Sébastien Lorber
4d06f26c1f
fix(v2): Fix MDX docs being considered as partials when siteDir match the _ prefix convention (#5199)
* Add _ to dogfood docs folder to cover against edge case

* Fix edge case with MDX partials when site / content dir contains a _ prefix

* add globUtils tests

* proper dogfooding folder re-organization, all content plugins being used

* refactor dogfooding folder + expose /tests page index

* fix page plugin ignoring options.routeBasePath
2021-07-21 14:13:51 +02:00