* chore(v2): allow React v17 as peer dependency
* minor React 17 changes
* Revert examples
* Possible fix
* Use @docusaurus/react-loadable fork
* add back react-loadable to please eslint/ts/linters, even if it's unused in practice
* missing dependency bump
* move enzyme dependencies to docusaurus v1
Co-authored-by: slorber <lorber.sebastien@gmail.com>
* chore(ci): run V1 Build and Migration CLI test conditionally on CI
* chore(ci): extend lighthouse timeout to 5 minutes
* chore(ci): attempt to speed up build size check
* chore(ci): use different build command in build size check
* chore(ci): use only one locale in build size report workflow
* chore(ci): fix quotes, move build-script param down
* 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
* 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
* Fix codesandbox generated examples to use published init script instead of local one
* Fix codesandbox generated examples to use published init script instead of local one
* deprecated nextVersionLabel option
* useActivePlugin failfast option
* remove deprecated option nextVersionLabel
* routeBasePath: '' should be forbidden
* routeBasePath: '' should be forbidden
* Docs: do not show version badge if there is only 1 version: https://github.com/facebook/docusaurus/issues/3362
* allow sidebars file to not exist: fallback to empty sidebars
https://githu.com/facebook/docusaurus/issues/3366
* Ability to use classic theme/preset while not using docs/pages without trouble.
https://github.com/facebook/docusaurus/issues/3360
* fix netlify redirects
* do not throw if useDocs do not load?
* netlify deploy typo
* try to fix useDocs
* docs(v2): update Deploy to Vercel guide (#3344)
* filter annoying useDocs conditional require warning
* netlify deploy preview homepage
* typo
* try to trigger again CLA bot
Co-authored-by: Sam Ko <sam@vercel.com>
* ability to test the migration cli easily
* add node scripts to help test migration cli (locally + CI)
* add test for frontmatter quotify
* more tests for shouldQuotifyFrontMatter
* typo
* updated yarn lock
* try to fix the baseUrl related issues
* fix some newly detected broken links
* fix baseurl and broken link issues
* try to configure netlify to use baseUrl deployment
* add proper netlify settings?
* add proper netlify settings?
* add proper netlify settings?
* test commit
* try to fix the redirects
* cleanup working conf
* minor redirect fix
* doc components initial simplification
* doc components initial simplification
* add docContext test
* Add poc of global data system + use it in the theme
* Revert "doc components initial simplification"
This reverts commit f657b4c4
* revert useless changes
* avoid loosing context on docs switch
* fix docs tests
* fix @generated/globalData ts declaration / es import
* typo
* revert bad commit
* refactor navbar in multiple parts + add navbar item types validation + try to fix remaining merge bugs
* add missing watch mode for plugin debug
* fix docs global data integration, move related hooks to docs plugin + convert to TS
* change versions link label
* fix activeClassName react warning
* improve docs global data system + contextual navbar dropdown
* fix bug preventing the deployment
* refactor the global data system to namespace automatically by plugin name + plugin id
* proper NavbarItem comp
* fix tests
* fix snapshot
* extract theme config schema in separate file + rename navbar links to navbar items
* minor typos
* polish docs components/api
* polish useDocs api surface
* fix the docs version suggestions comp + data
* refactors + add docsClientUtils unit tests
* Add documentation
* typo
* Add check for duplicate plugin ids detection
* multi-instance: createData plugin data should be namespaced by plugin instance id
* remove attempt for multi-instance support
* feat(v2): Support swizzling TypeScript components
* Add tsc --noEmit to tsc script in theme-classic
Now everything can pass the type checker! (although still a lot of any)
* Add tsconfig and types.d.ts to website
Improve developer experience.
As an example, I converted NotFound to tsx
* Apply type annotation suggestions
* Do not fallback to `getThemePath` if getTypeScriptThemePath is undefined
* Fix tsc
* Add module declaration for @theme-original/*
* Move babel cli to root package.json
* feat(v2): allow non sidebar category to be first item of sidebar
* better error messages
* edit the react component
* Update website/docs/sidebar.md
* nits
* add @babel/plugin-transform-runtime
* refactor(v2): simplify last updated logic for faster dev
* Update packages/docusaurus-plugin-content-docs/src/__tests__/lastUpdate.test.ts
* Update packages/docusaurus-plugin-content-docs/src/__tests__/lastUpdate.test.ts
* refactor(v2): add typing for docusaurus/core
* wip: last working
* refactor(v2): add typing for @docusaurus/core
* prettier
* dont run in parallel otherwise some are uncompiled
* nits
* more typing
* more typing
* nits
* type commands
* nits
* chore: move to monorepo
* lint all js file
* simplify circleCI
* fix failing tests
* fix tests due to folder rename
* fix test since v1 website is renamed
* Move start reload server into separate module
* Find an unused port when starting the live reload server
* Move findUnusedPort into module
* Add tests for findUnusedPort module
* Refactor findUnusedPort
* Move starting of servers into separate module and add tests
* Remove unused constants.js
* Zap extra line breaks
* Add tests for liveReloadServer
* Rename serverController to start
* Move start into lib/server
* Add portfinder package
* Replace findUnusedPort with portfinder
* nits
* Adding last updated time for docs
* Making file path general and other suggested changes
* Checking if time returned is null due to absence of git or some other issue
* Adding option to enable/disable update time feature and test-doc
* Adding simple unit tests for getGitUpdateTime()
* nits & rewrote failing test
* consistent test naming
* Adding optional updateEnableTime in documentation
* package-lock & yarn.lock
* Fix conflicting strings issue in translations
* Preserve structure of `customTranslations`
* Use `deepmerge` to merge whole of `localized-strings`
* Simplify and make deep property access on an object safe
* Fix deep property accessor and rename it to idx
* Noticed caption was "Sonar" but redirecting to https://fbflipper.com.
* Fixed caption and renamed files for consistency.
* Moved project after FastText to keep alphabetical ordering.
* Ran prettier and included changes.
Test plan:
npm run test && npm run prettier && npm run lint
cd website && npm run start
Noticed projects are rendered properly and caption is now "Flipper".
* Refactor doc in server.js & generate.js
* Refactor finding metadata with find() & avoid param reassign
* Refactor replacing markdown link to html + add test
* Minify func to getFile & add test
* use ./ for md link as well
* nits & better test
* better mdToHtmlify
* babel-register on versions & write-translations to transpile ES6 in server/env.js
* better docs test & move out metadata to fixtures
* Update .babelrc
* Enable user to use prism.js as syntax highlighter
* add package-lock
* if 'usePrism' is true, use prismjs on all languages
* don't get lang by hljs if use prism
* Update api-site-config.md
* Update api-doc-markdown.md
* only load prism css when usePrism is true
* WIP does not work
* rm -rf website/
Run docusaurus-init
Even by deleting text here, it still shows up? Confused.
* Shift in tree printing logic
* Shift printing logic to the current location
* migrating to react 16
* Add WarriorJS to Docusaurus users (#656)
* Separate users data from code
* Add WarriorJS to Docusaurus users
* [Feature] Introducing image compression using imagemin (#654)
* Introduce imagemin for compressing images
* Replace original images with the optimized ones
* Add imagemin-svgo to dependencies
* Remove console statement, replace let with const
* Replace let with const
* Add --skip-image-compression
* Run Prettier
* Fix header
* Prettier
* Introduce imagemin for compressing images
* Replace original images with the optimized ones
* Add imagemin-svgo to dependencies
* Remove console statement, replace let with const
* Replace let with const
* Add --skip-image-compression
* Run Prettier
mkdirp is used throughout the project.
This works because npm and Yarn create flat node_modules.
Docusaurus fails though with pnpm, which creates a strict
node_modules.
* Add Prettier formatting to source files and example files, and check that Prettier formatting is maintained on PRs
* Remove trailing-comma as we are using Node 6 on Circle
* Use latest Node 6 LTS version in Circle
* Initial test suite
* Rename test to match original file
* restore test files
* Remove yarn.lock from pull request. Will run it again in a separate commit
* Add Prettier formatting to source files and example files, and check that Prettier formatting is maintained on PRs
* Remove trailing-comma as we are using Node 6 on Circle
* Use latest Node 6 LTS version in Circle
* Remove unused test
* Switch to Circle 2
* Use Yarn in CI
* Move things around
* Fix Remarkable case issue
* Run placeholder test
* Update deploy script
Use multiline commit messages to ensure commit beign deployed is documented in git history
Test:
Ran a separate server on port 3000
```
Checking if port 3000 is free...
Extracting translateable strings from files...
Loading translation files...
Generating Metadata for Docs....
Generating Metadata for Docs....
server.js triggered...
Generating Metadata for Docs....
Extracting translateable strings from files...
listening on port: 3000
Open http://localhost:3000/
Port 3000 is in use
```
Fixes#124
* added a note about needing more than one language to be enabled to allow for a drop down
* Removing debug statements
* Add 'Help Translate' to translatable strings, improves error messages around missing translated strings, calls write-translations on some routes
* Adds sitemap.xml to live server and build. Versioning not supported. -- Also did some file name and module cache cleanups.
* Add Reason support to Prism.js
* Add XML/ATOM feed. Generates for both localhost and build script. Adds meta links to feeds to all html files.
* Updated /core/Footer.js to pull from siteConfig