Commit graph

148 commits

Author SHA1 Message Date
Joshua Chen
242f2e780e
chore: upgrade dependencies (#7232) 2022-04-23 11:55:01 +08:00
Joshua Chen
9145ae88cc
chore: disable string escaping in snapshots (#7131) 2022-04-08 11:23:19 +08:00
Joshua Chen
1156be3f20
refactor(content-{blog,docs}): unify handling of tags (#7117) 2022-04-07 15:58:21 +02:00
Joshua Chen
24c205a835
refactor: replace non-prop interface with type; allow plugin lifecycles to have sync type (#7080)
* refactor: replace non-prop interface with type; allow plugin lifecycles to have sync type

* fix
2022-03-31 19:16:07 +08:00
Sébastien Lorber
73deaa8bf6
chore: prepare v2.0.0-beta.18 release (#7001) 2022-03-25 16:16:38 +01:00
Joshua Chen
f1bcdbff63
fix(validation): improve error messages for a few schemas (#6997)
* fix(validation): improve error messages for a few schemas

* kick CI

* fix test
2022-03-25 21:50:37 +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
2eeb0e46a2
feat(utils): JSDoc for all APIs (#6980)
* feat(utils): JSDoc for all APIs

* fix tests
2022-03-24 21:34:31 +08:00
Alois Klink
4d2ab826b8
fix(validation): allow non-object params to remark/rehype plugins (#6977)
Remark and Rehype plugins allow having options as a non-object type,
such as a string.

For instance, the official MDX docs even have an example of this:
See https://mdxjs.com/docs/extending-mdx/#using-plugins

The official plugin `remarkjs/remark-frontmatter` allows passing
a string, e.g. `"toml"` as the options arg, instead of an object.
2022-03-24 09:19:06 +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
ad88f5cc87
test: improve test coverage; multiple internal refactors (#6912) 2022-03-14 21:53:57 +08:00
Joshua Chen
3a4b9b4c30
refactor: install eslint-plugin-regexp (#6906)
* refactor: install eslint-plugin-regexp

* simplify

* simplify

* fix
2022-03-13 18:32:17 +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
c9ee6e467c
refactor: import jest as global; unify import style of some modules (#6898)
* refactor: import jest as global

* fix react
2022-03-11 19:04:27 +08:00
Sébastien Lorber
8dbd656340
chore: prepare v2.0.0-beta.17 release (#6829) 2022-03-03 18:44:41 +01:00
Joshua Chen
a4dc03edee
chore: upgrade dependencies (#6789)
* chore: upgrade dependencies

* upgrade setup-node
2022-03-01 10:40:34 +08:00
Sébastien Lorber
124511f445
chore: prepare v2.0.0-beta.16 release (#6760) 2022-02-25 16:00:11 +01:00
Joshua Chen
9562a5d203
refactor: remove deprecated Webpack utils & validation escape hatch (#6740) 2022-02-23 11:40:58 +01:00
Joshua Chen
0c7e592d34
chore: upgrade dependencies (#6660)
* chore: upgrade dependencies

* fix types
2022-02-12 15:29:40 +08:00
Clement Demonchy
1cd4757828
feat: allow numbers in plugin ID (#6656)
* fix example for id that didn't respect regex

example for id don't work with version 2.0.0-beta.15:
ValidationError: "id" with value "docs1" fails to match the required pattern: /^[a-zA-Z_-]+$/
Error: Process completed with exit code 1.

* properly fix

Co-authored-by: Joshua Chen <sidachen2003@gmail.com>
2022-02-11 11:57:58 +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
45f6f8b869
chore: fix ESLint warnings, restrict export all syntax (#6605)
* chore: fix ESLint warnings, forbid export all syntax

* fix...

* reorder
2022-02-04 21:57:10 +08:00
Joshua Chen
661bc32402
chore(deps): bump all dependencies; regenerate lockfile (#6580) 2022-02-02 13:00:31 +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
Matthew Ailes
d45f96fc83
fix: updating peerDependency fields for yarn berry (#6498) 2022-01-29 10:29:03 +08:00
Sébastien Lorber
d6cff8c754
chore(v2): prepare v2.0.0-beta.15 release (#6473) 2022-01-26 19:28:16 +01:00
Nick Schonning
521eb119a7
chore: add cSpell for spell checking (#6456)
* chore: Add cSpell for spell checking

* chore: exclude map files and remove dups

* chore: exclude more binary files

* chore: remove MD headings

* Update .cspell.json

* fix a few spellings

* fix more

* fix

Signed-off-by: Joshua Chen <sidachen2003@gmail.com>

* fix a few

* oops

Co-authored-by: Joshua Chen <sidachen2003@gmail.com>
2022-01-25 09:40:02 +08:00
Sébastien Lorber
4004f5b68b
chore: regenerate yarn.lock (#6341)
Co-authored-by: Joshua Chen <sidachen2003@gmail.com>
2022-01-14 15:52:12 +01:00
Joshua Chen
a79c23bc45
test(utils, mdx-loader, core): improve coverage (#6303)
* test(utils, mdx-loader, core): improve coverage

* windows...

* fix
2022-01-10 15:00:51 +08:00
Joshua Chen
4fad1ce0cd
misc: convert all internal scripts to ESM (#6286)
* misc: convert all internal scripts to ESM

* fixes

* fix

* fixes

* fix!

* complete eslint

* more move

* fix!

* This looks better?

* Final ones
2022-01-08 12:59:28 +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
01b407011a
chore(v2): prepare v2.0.0-beta.14 release (#6147) 2021-12-21 17:15:04 +01:00
Joshua Chen
770418f8d2
refactor: unify log format with new logger utility (#5994)
Co-authored-by: sebastienlorber <lorber.sebastien@gmail.com>
2021-12-20 17:24:59 +01:00
Joshua Chen
77c93cbda6
misc: ignore some files during npm publish (#6092) 2021-12-17 11:38:26 +01:00
Kristoffer K
b48c6defae
fix: declare missing dependencies (#6097)
* fix(utils-validation): add missing peer dependencies `react` and `react-dom`

* fix(theme-classic): add missing peer dependency `@docusaurus/core`

* ci: disable PnP fallbacks

* ci: link to the docs

* Update package.json

Co-authored-by: Joshua Chen <sidachen2003@gmail.com>
2021-12-13 09:47:07 +08:00
Sébastien Lorber
ae9a12ff50
chore(v2): prepare v2.0.0-beta.13 release (#6084) 2021-12-10 16:56:00 +01:00
Sébastien Lorber
991c1b2832
chore(v2): prepare v2.0.0-beta.11 release (#6081) 2021-12-10 14:13:25 +01:00
Sébastien Lorber
43ac7d5da9
chore(v2): prepare v2.0.0-beta.10 release (#6076) 2021-12-09 13:32:23 +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
Alexey Pyltsyn
91ec2509b7
chore: prepare v2.0.0-beta.9 release (#5859)
* chore: prepare v2.0.0-beta.9 release

* v2.0.0-beta.9
2021-11-02 20:40:01 +03:00
Sébastien Lorber
1ce6253cc1
chore: require Node 14 (#5812) 2021-10-28 17:11:25 +02:00
Sébastien Lorber
68a116611f
chore: prepare v2.0.0-beta.8 release (#5762) 2021-10-21 18:52:17 +02:00
Alexey Pyltsyn
877373e108
chore: prepare v2.0.0-beta.7 release (#5713)
* chore: prepare v2.0.0-beta.7 release

* v2.0.0-beta.7
2021-10-15 16:31:01 +03: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
Alexey Pyltsyn
b62a12bfc6
chore: upgrade dependencies (#5608)
* chore: upgrade dependencies

* Revert github-slugger

* Fixes

* Update snapshots

* Update Babel deps
2021-09-24 16:36:41 +02:00
swyx
194f429c1f
fix: add docs tag validation to solve #5478 (#5479)
* fix: add docs tag validation to solve #5478

fix: add docs tag validation to solve #5478

* Update docFrontMatter.ts

* Update docs-create-doc.mdx

* improve tag validation error messages + tests

* improve tags doc

* fix test

Co-authored-by: slorber <lorber.sebastien@gmail.com>
2021-09-03 14:43:24 +02:00
Sébastien Lorber
2611bbb501
chore(v2): prepare v2.0.0-beta.6 release (#5473)
* add beta.6

* v2.0.0-beta.6
2021-09-02 18:31:42 +02:00
Sébastien Lorber
f600d5a6d7
chore: prepare v2.0.0-beta.5 release (#5427)
* beta.5

* v2.0.0-beta.5
2021-08-26 17:33:31 +02:00
Joshua Chen
493225a3c6
feat(plugin-blog): multi-authors support + authors.yml global configuration (#5396)
* Complete function

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

* A lot of blank lines

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

* More lenient validation

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

* Remove or

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

* Simpler logic

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

* Expand docs

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

* Better docs

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

* Dogfood

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

* More writeup

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

* Polish

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

* Polish

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

* Move mergeAuthorMap to authors.ts

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

* Unbreak relative assets

* Update docs

* Clarify in docs

* simplify feed authors

* rename authorMap -> authorsMap

* mergeAuthorsMap -> getBlogPostAuthors

* website => 5 blog posts per page

* improve authors map file

* Extract new theme authors components + display in row

* add comment for meta array syntaxes

* blog => getPathsToWatch should watch authorsMap file

* remove useless v1 blog FBID frontmatter

* keep older frontmatter syntax for now

* revert blog frontmatter

* Better console message

* better blog authors frontmatter impl

* add multi authors to beta blog post + fix some authors margins

* fix React key

* Refactor: mdx loader should support a more flexible assets system (poc, not documented yet)

* better display of blog post authors: adapt layout to authors count + add line clamp

* smaller local image

* fix blog feed tests

* fix blog frontmatter tests + improve validation schema

* add more frontmatter tests

* add tests for getAuthorsMapFilePath

* tests for validateAuthorsMapFile

* add tests for readAuthorsMapFile

* test getAuthorsMap

* exhaustive tests for getBlogPostAuthors

* fix remaining tests

* missing blog plugin author tests

* fix windows tests

* improve blog multi-author's doc

* Use new format in init template

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

* Improve error message

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

* update feed snapshot

* blog authors: limit to 2 cols + fix margins for no authors

* minor doc improvements

* better init template blog posts, demonstrating Blog features

* replace the legacy blog author frontmatter in remaining places

* Prefer using clsx

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

* cleanup getColClassName

* remove blog author name/title line-clamping

Co-authored-by: slorber <lorber.sebastien@gmail.com>
2021-08-26 12:21:58 +02:00