Commit graph

2682 commits

Author SHA1 Message Date
Joel M
869e118e4f
feat(v2): better error message for invalid plugin config (#3979)
* test(v2): improve tests on validating plugins

* fix(v2): make schema for plugins stricter

* fix(v2): emit error if valid type of plugin is not found (#3934)
2020-12-31 15:33:24 +01:00
Sébastien Lorber
1e1860681b
fix(v2): fix multi-instance mdx loaders not sandboxed correctly (#3970)
* another attempt to fix the multi-instance conflicts

* try to fix windows build

* cleanup + improve comment
2020-12-30 11:18:51 +01:00
Sébastien Lorber
9fdac1a0dc
fix(v2): fix blog only contextual search (#3968) 2020-12-29 15:59:56 +01:00
Apurva Ojas
5944226eb4
fix(v2): fix svg loader for CSS files (#3965)
* bug(v2): fix svg loader for styles re #3964

* ensure we only use SVGR loader in source code that can use React (ie not in CSS files)

* fix test

Co-authored-by: slorber <lorber.sebastien@gmail.com>
2020-12-29 14:47:57 +01:00
Sébastien Lorber
141d062c3b
chore(v2): fix windows Jest tests (#3959)
* test(v2): Fix docusaurus-utils tests for windows

* test(v2): Fix plugin-client-redirects test

- add the posixPath in writeRedirectsFiles.ts

* test(v2): Fix plugin-content-pages test

add posixPath in test and index

* test(v2): add window test configuration

 - add the window test configuration in nodejs-windows.yml

* test(v2): revert plugin-content-pages test fix

* test(v2): Fix mdx-loader/transformImage test

* test(v2): add cleanPath in transformImage test

* fix version path tests for windows

* make versionMetadata test work on Windows

* try to fix posix/win32 path issues

* attempt to fix windows test

* try to make source alias less win32 sensitive

* try to make source alias less win32 sensitive

* try to make source alias less win32 sensitive

* try to make source alias less win32 sensitive

* try to make source alias less win32 sensitive

* try to make source alias less win32 sensitive

* specific jest config for windows

* attempt to fix windows testing issue

* attempt to fix windows testing issue

* attempt to fix windows testing issue

* attempt to fix windows testing issue

* attempt to fix windows testing issue

* attempt to fix windows testing issue

* attempt to fix windows testing issue

* remove bad cleanPath fn

* try to fix windows tests

* try to fix windows tests

* blog: try to fix windows tests by using same logic as on docs plugin

* try to fix windows tests

* try to fix windows tests

* try to fix windows tests

* try to fix windows tests

* improve the Github CI setup for windows: make jobs run in parallel

* revert GH action change

Co-authored-by: Sachin Kumar Rajput <skr571999@gmail.com>
2020-12-28 19:50:12 +01:00
saydo17
88a6f56654
fix(v2): fix redirect toUrl (windows + trailing slash) (#3903)
* replace \ with / when creating client redirect on windows

* fix(vs): replace \ with / when creating client redirect on windows

* redirects plugin: add createToUrl fn + tests

* redirects plugin: add createToUrl fn + tests
do not  add trailing  slash + try to fix windows path issues

Co-authored-by: slorber <lorber.sebastien@gmail.com>
2020-12-28 11:55:15 +01:00
Bartosz Kaszubowski
601c8fe688
docs(v2): update FB OSS logo (#3881)
* docs(v2): update FB OSS logo

* chore(v2): update FB OSS logo in init
2020-12-28 11:38:07 +01:00
Joel M
41ac4468de
fix(v2): allow async/await in live code editor (#3954)
* transforming async functions is not implemented by buble, so just bypassing it would relieve the pain for now
2020-12-28 10:47:55 +01:00
Reece Dunham
6ce1230c1e
refactor(v2): fix debug plugin name (#3953) 2020-12-28 10:36:17 +01:00
Sébastien Lorber
b5c46bd1d9
feat(v2): new docs edit options: editCurrentVersion + editLocalizedDocs (#3949)
* editCurrentVersion initial poc

* ensure edit url allows to edit localized docs

* Add editLocalizedDocs option

* keep editing current version in dev (more convenient)
2020-12-28 10:25:47 +01:00
Alexey Pyltsyn
853e29dbd8
fix(v2): minor a11y tweaks (#3946) 2020-12-22 16:28:37 +01:00
Alexey Pyltsyn
83a5240f57
fix(v2): disables all inlining in CleanCSS (#3943) 2020-12-21 14:58:20 +01:00
Alexey Pyltsyn
2fb766ba7c
fix(v2): ignore style imports in excerpt (#3944) 2020-12-21 14:47:19 +01:00
Sébastien Lorber
b133e2def6
fix(v2): fix i18n build logging. (#3941)
* better i18n build logging

* better i18n build logging

* better i18n build logging
2020-12-18 19:49:31 +01:00
Sébastien Lorber
ef49c2be72
fix(v2): i18n should not crash theme without footer (#3940)
* Fix theme translations when no footer

* fix TS issues
2020-12-18 18:02:23 +01:00
Sébastien Lorber
3fc29f4b14
chore(v2): prepare v2.0.0.alpha-70 release (#3933)
* add alpha 70 changes

* v2.0.0-alpha.70
2020-12-17 20:08:20 +01:00
Sébastien Lorber
df47c1770c
feat(v2): Add <Root> theme element (#3932)
* Add <Root> component

* add some <Root> doc
2020-12-17 19:38:20 +01:00
Sébastien Lorber
6703f8420e
fix(v2): fix navbar items issue on Windows? (#3922)
* attempt to fix navbar items issue on Windows?

* attempt to fix alias ordering issue on Windows
2020-12-14 20:52:20 +01:00
Sébastien Lorber
b79568fff9
fix(v2): remove useless console log (#3921) 2020-12-14 19:53:44 +01:00
Sébastien Lorber
1db0277d36
fix(v2): i18n translation extractor should handle JSX formatting edge cases better (#3920)
* translation extractor should work despite weirdly formatted JSX  or empty text nodes around the content to translate

* fix TS
2020-12-14 19:41:28 +01:00
Sébastien Lorber
aff656182c
feat(v2): Add localeDropdown navbar item type + i18n localeConfigs field (#3916)
* Add localeDropdown navbar item type

* fix type + add localeConfigs test
2020-12-14 18:28:39 +01:00
Bogdan Doroschenko
3570aa06c8
fix(v2): don't remove viewBox from svg 2020-12-14 16:17:03 +01:00
Sébastien Lorber
41ef333e47
feat(v2): inline table-of-contents + refactor TOC (#3904)
* Add TOCInline theme component

* Add TOCInline theme component doc + migration guide

* remove useless getPathsToWatch on classic theme

* rename rightToc to toc

* add temp theme-bootstrap TOCInline comp to fix build issue
2020-12-11 16:30:53 +01:00
Oliver Ullman
b11c24b752
feat(v2): add custom props for consumption by swizzled sidebar (#3888) 2020-12-10 19:49:21 +01:00
Cindy Gu
0b05806593
feat(v2): enable feeds by default in blog plugin (#3842)
* feat: enables feeds by default in blog

* feat(v2): enable feeds by default

committing a failed attempt for review

* feat(v2): enable feeds by default in blog plugin

- allow validation to work with arrays syntax
- using DEFAULT_OPTIONS.feedOptions.type instead

* feat(v2): enable feeds by default in blog plugin

- added documentation for feedOptions

* feat(v2): enable feeds by default in blog plugin

- modified implementation to allow feeds to be disable without error
- added unit test to ensure type: null leads to type: null after
  validation
- added documentation to explain how to disable feed generation
2020-12-10 18:35:19 +01:00
Méril
656c04e1d5
fix(v2): correct typo in metas generated for Twitter cards (#3900)
The Open Graph protocol format is the following:

```
<meta property="og:image" content="https://example.com/image.png />
```

Twitter metas, however, are structured in a different format:

```
<meta name="twitter:image" content="https://example.com/image.png />
```

They are similar but not identical, I think this led to confusion and
the typo we have in the codebase.
2020-12-10 17:09:20 +01:00
Alexey Pyltsyn
b14b9c88f3
fix(v2): do not treat at-rules during CSS minification (#3896) 2020-12-08 18:53:35 +03:00
Alexey Pyltsyn
3e12e951b9
fix(v2): use proper element for pagination nav label (#3895) 2020-12-08 18:34:39 +03:00
Bartosz Kaszubowski
e00e54a693
fix(v2): improve Footer structure, add class names, use Infima transition (#3882) 2020-12-07 16:35:00 +01:00
Sébastien Lorber
ec297cead0
polish(v2): improve docusaurus deploy logs (#3880)
* improve deploy logs

* improve deploy logs
2020-12-04 16:50:46 +01:00
Hadrien Milano
c4aeb1982c
fix(v2): dynamic dark mode detection without toggle widget (#3877)
* fix(v2): dynamic dark mode detection without toggle widget

* Update packages/docusaurus-theme-classic/src/theme/hooks/useTheme.ts

Co-authored-by: Sébastien Lorber <slorber@users.noreply.github.com>
2020-12-04 13:27:34 +01:00
hackerman
415a7973f1
fix(v2): load plugin commands async to fix broken plugin CLI commands docs:version (#3869)
* fix(v2): load plugin commands asynchronously

https://github.com/facebook/docusaurus/blame/master/packages/docusaurus/src/commands/external.ts#L12 changed the exported method to an async function, but the CLI loader was not updated to also run async, breaking things such as `npm run docusaurus docs:version <version>`.

* chore(v2): resolve lint issue
2020-12-03 18:23:26 +01:00
Bartosz Kaszubowski
f37987f32f
chore(v2): fix ignore paths and Prettier commands in themes (#3865)
* chore(v2): fix Prettier ignore paths and commands in themes

* chore(ci): do not ignore v1 lib, remove old .gitignore

* chore(ci): apply tweaks also to eslint ignore
2020-12-03 11:50:03 +01:00
Sébastien Lorber
e90749c6f8
fix(v2): to fix the canary release GH workflow (#3852)
* attempt to fix the canary release  GH workflow

* attempt to fix canary-releases.yml

* attempt to fix canary-releases.yml

* attempt to fix canary-releases.yml

* attempt to fix canary-releases.yml

* attempt to fix canary-releases.yml

* attempt to fix canary-releases.yml

* attempt to fix canary-releases.yml

* attempt to fix canary-releases.yml

* attempt to fix canary-releases.yml

* attempt to fix canary-releases.yml

* attempt to fix canary-releases.yml

* attempt to fix canary-releases.yml

* attempt to fix canary-releases.yml

* attempt to fix canary-releases.yml

* attempt to make the canary workflow work again

* try to fix canary again

* try to fix canary again

* try to fix canary again
2020-12-02 20:15:12 +01:00
Bartosz Kaszubowski
397fde0b2f
fix(v2): refactor icons in theme-classic, fix swizzle issue (#3854)
* fix(v2): refactor icons in theme-classic, fix swizzle issue

* apply review suggestion

* fix IconMenu className
2020-12-01 17:56:11 +01:00
François Chalifour
915f949c25
fix(v2): fix DocSearch keyboard navigator (#3853)
* fix(v2): fix DocSearch keyboard navigator

* Update index.js

* Update index.js

* Update index.js

* Update index.js

Co-authored-by: Sébastien Lorber <slorber@users.noreply.github.com>
2020-12-01 17:49:14 +01:00
Kaartic Sivaraam
cf5644d67a
fix(v2): remove unnecessary backtick in output (#3839)
* fix(v2): remove unnecessary backtick in output

The escaped backtick seems to be present for no clear reason.
As a matter of fact, it seems to be cluttering the output.

So, remove the unnecessary backtick in the output.

* update snapshot

Co-authored-by: slorber <lorber.sebastien@gmail.com>
2020-11-30 17:07:59 +01:00
Bartosz Kaszubowski
ad31facb32
chore(v2): fix several lint warnings, add missing types, cleanup (#3844)
* fix several lint warnings, add missing types, cleanup

* fix EnumChangefreq issue

* better utilization of EnumChangefreq type

* update test snapshot
2020-11-30 16:42:58 +01:00
Bartosz Kaszubowski
21572ccd37
feat(v2): extract site title formatter to theme-common util (#3838) 2020-11-30 15:41:09 +01:00
Bartosz Kaszubowski
f43781ff41
fix(v2): improve search page styling, fix appearance in dark mode (#3837)
* fix(v2): update SearchPage styling, fix appearance dark mode

* fix inputs outline

* prettier don't like spaces, lets use margin instead

* fix font family, update mobile layout

* attempt to address review concerns
2020-11-29 14:52:07 +03:00
Bartosz Kaszubowski
bb387e089f
feat(v2): add custom wrapper class to search page and fix title (#3834)
* feat(V2): add custom wrapper class to SearchPage

* review change

* fix(V2): fix SearchPage title and Head warning
2020-11-28 00:50:28 +03:00
Sébastien Lorber
22c06c2775
fix(v2): fix search (#3829)
* fix little search facet typo

* revert Alexey change, as we  are sure a site always has a locale
2020-11-27 10:24:43 +01:00
Alexey Pyltsyn
0f13780045
fix(v2): restore Algolia search (#3828) 2020-11-27 12:06:47 +03:00
hackerman
fc4b756ec3
fix(v2): support rendering of singular tabs (#3823)
* fix(v2): support rendering of singular tabs

Closes #3822

* Update index.tsx

* fix type

Co-authored-by: slorber <lorber.sebastien@gmail.com>
2020-11-26 17:12:51 +01:00
Sébastien Lorber
3166fab307
feat(v2): core v2 i18n support + Docusaurus site Crowdin integration (#3325)
* docs i18n initial poc

* docs i18n initial poc

* docs i18n initial poc

* docs i18n initial poc

* crowdin-v2 attempt

* fix source

* use crowdin env variable

* try to install crowdin on netlify

* try to install crowdin on netlify

* try to use crowdin jar directly

* try to curl the crowdin jar

* add java version cmd

* try to run crowdin jar in netlify

* fix translatedDocsDirPath

* fix loadContext issue due to site baseUrl not being modified in generted config file

* real validateLocalesFile

* add locale option to deploy command

* better LocalizationFile type

* create util getPluginI18nPath

* better core localization context loading code

* More explicit VersionMetadata type for localized docs folders

* Ability to translate blog posts with Crowdin!

* blog: refactor markdown loader + report broken links + try to get linkify working better

* upgrade crowdin config to upload all docs folder files except source code related files

* try to support translated pages

* make markdown pages translation work

* add write-translations cli command template

* fix site not  reloaded with correct options

* refactor a bit the read/write of @generated/i18n.json file

* Add <Translate> + translate() API + use it on the docusaurus homepage

* watch locale translation dir

* early POC of adding babel parsing for translation extraction

* fs.stat => pathExists

* add install:fast script

* TSC: noUnusedLocals false as it's already checked  by eslint

* POC of extracting translations from source code

* minor typo

* fix extracted key to code

* initial docs extracted translations

* stable plugin translations POC

* add crowdin commands

* quickfix for i18n deployment

* POC  of themeConfig translation

* add ability to have localized site without path prefix

* sidebar typo

* refactor translation system to output multiple translation files

* translate properly  the docs plugin

* improve theme classic translation

* rework translation extractor to handle new Chrome I18n JSON format (include id/description)

* writeTranslations: allow to pass locales cli arg

* fix ThemeConfig TS issues

* fix localizePath errors

* temporary add write-translations to netlify deploy preview

* complete example of french translated folder

* update fr folder

* remove all translations from repo

* minor translation  refactors

* fix all docs-related tests

* fix blog feed tests

* fix last blog tests

* refactor i18n context a bit, extract codeTranslations in an extra generated file

* improve @generated/i18n type

* fix some i18n todos

* minor refactor

* fix logo typing issue after merge

* move i18n.json to siteConfig instead

* try to fix windows CI build

* fix config test

* attempt to fix windows non-posix path

* increase v1 minify css jest timeout due to flaky test

* proper support for localizePath on windows

* remove non-functional install:fast

* docs, fix docsDirPathLocalized

* fix Docs i18n / md linkify issues

* ensure theme-classic swizzling will use "nextjs" sources (transpiled less aggressively, to make them human readable)

* fix some snapshots

* improve themeConfig translation code

* refactor a bit getPluginI18nPath

* readTranslationFileContent => ensure files are valid, fail fast

* fix versions tests

* add extractSourceCodeAstTranslations comments/resource links

* ignore eslint: packages/docusaurus-theme-classic/lib-next/

* fix windows CI with cross-env

* crowdin ignore .DS_Store

* improve writeTranslations + add exhaustive tests for translations.ts

* remove typo

* Wire currentLocale to algolia search

* improve i18n locale error

* Add tests for translationsExtractor.ts

* better code translation extraction regarding statically evaluable code

* fix typo

* fix typo

* improve theme-classic transpilation

* refactor  +  add i18n tests

* typo

* test new utils

* add missing snapshots

* fix snapshot

* blog onBrokenMarkdownLink

* add sidebars tests

* theme-classic index should now use ES modules

* tests for theme-classic translations

* useless comment

* add more translation tests

* simplify/cleanup writeTranslations

* try to fix Netlify fr deployment

* blog: test translated md is used during feed generation

* blog: better i18n tests regarding editUrl + md translation application

* more i18n tests for docs plugin

* more i18n tests for docs plugin

* Add tests for pages i18n

* polish docusaurus build i18n logs
2020-11-26 12:16:46 +01:00
Sébastien Lorber
85fe96d112
fix(v2): bad update notifier dist tag (#3824) 2020-11-26 12:06:52 +01:00
François Chalifour
aa2daf10fc
chore(v2): update DocSearch to alpha.31 (#3819)
* feat(search): update DocSearch to alpha.30

* chore: update to alpha.31
2020-11-26 00:22:12 +03:00
Aarón García Hervás
1fafdb0d33
fix(v2): Allow footer logo at attribute to be empty (#3817) 2020-11-25 13:12:45 +01:00
Alexey Pyltsyn
d25a54f61d
chore(v2): prepare v2.0.0.alpha-69 release (#3808)
* chore(v2): prepare v2.0.0.alpha-69 release

* v2.0.0-alpha.69
2020-11-24 13:51:15 +03:00
Alexey Pyltsyn
a9e27da09f
chore(v2): upgrade Infima to v0.2.0-alpha.18 (#3807) 2020-11-24 13:00:30 +03:00