diff --git a/packages/docusaurus-migrate/.npmignore b/packages/docusaurus-migrate/.npmignore deleted file mode 100644 index e4132af42172..000000000000 --- a/packages/docusaurus-migrate/.npmignore +++ /dev/null @@ -1,5 +0,0 @@ -.tsbuildinfo* -tsconfig* -__tests__ - -src diff --git a/packages/docusaurus-migrate/README.md b/packages/docusaurus-migrate/README.md deleted file mode 100644 index 19c7d47fbaac..000000000000 --- a/packages/docusaurus-migrate/README.md +++ /dev/null @@ -1,7 +0,0 @@ -# `@docusaurus/migrate` - -A CLI tool to migrate from older versions of Docusaurus. - -## Usage - -Please see [the migration documentation](https://docusaurus.io/docs/migration) for more information. diff --git a/packages/docusaurus-migrate/bin/index.mjs b/packages/docusaurus-migrate/bin/index.mjs deleted file mode 100755 index 8be0d9d3bc9d..000000000000 --- a/packages/docusaurus-migrate/bin/index.mjs +++ /dev/null @@ -1,61 +0,0 @@ -#!/usr/bin/env node -/** - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -// @ts-check - -import path from 'path'; -import {createRequire} from 'module'; -import logger from '@docusaurus/logger'; -import semver from 'semver'; -import cli from 'commander'; - -const moduleRequire = createRequire(import.meta.url); -const requiredVersion = /** @type {import("../package.json")} */ ( - moduleRequire('../package.json') -).engines.node; - -if (!semver.satisfies(process.version, requiredVersion)) { - logger.error('Minimum Node.js version not met :('); - logger.info`You are using Node.js number=${process.version}, Requirement: Node.js number=${requiredVersion}.`; - process.exit(1); -} - -// See https://github.com/facebook/docusaurus/pull/6860 -const {migrateDocusaurusProject, migrateMDToMDX} = - /** @type {import("../lib/index.js")} */ (moduleRequire('../lib/index.js')); - -cli - .command('migrate [siteDir] [newDir]') - .option('--mdx', 'try to migrate MD to MDX too') - .option('--page', 'try to migrate pages too') - .description('Migrate between versions of Docusaurus website.') - .action(async (siteDir = '.', newDir = '.', {mdx, page} = {}) => { - const sitePath = path.resolve(siteDir); - const newSitePath = path.resolve(newDir); - await migrateDocusaurusProject(sitePath, newSitePath, mdx, page); - }); - -cli - .command('mdx [siteDir] [newDir]') - .description('Migrate markdown files to MDX.') - .action(async (siteDir = '.', newDir = '.') => { - const sitePath = path.resolve(siteDir); - const newSitePath = path.resolve(newDir); - await migrateMDToMDX(sitePath, newSitePath); - }); - -cli.parse(process.argv); - -if (!process.argv.slice(2).length) { - cli.outputHelp(); -} - -process.on('unhandledRejection', (err) => { - logger.error(err); - process.exit(1); -}); diff --git a/packages/docusaurus-migrate/package.json b/packages/docusaurus-migrate/package.json deleted file mode 100644 index 449d3d444df5..000000000000 --- a/packages/docusaurus-migrate/package.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "name": "@docusaurus/migrate", - "version": "3.0.0-beta.0", - "description": "A CLI tool to migrate from older versions of Docusaurus.", - "license": "MIT", - "engines": { - "node": ">=18.0" - }, - "scripts": { - "build": "tsc --build", - "watch": "tsc --build --watch" - }, - "repository": { - "type": "git", - "url": "https://github.com/facebook/docusaurus.git", - "directory": "packages/docusaurus-migrate" - }, - "publishConfig": { - "access": "public" - }, - "bin": { - "docusaurus-migrate": "bin/index.mjs" - }, - "dependencies": { - "@babel/core": "^7.22.9", - "@babel/preset-env": "^7.22.9", - "@docusaurus/logger": "3.0.0-beta.0", - "@docusaurus/utils": "3.0.0-beta.0", - "@mapbox/hast-util-to-jsx": "^2.0.0", - "color": "^4.2.3", - "commander": "^5.1.0", - "fs-extra": "^11.1.1", - "hast-util-to-string": "^1.0.4", - "html-tags": "^3.3.1", - "jscodeshift": "^0.14.0", - "rehype-parse": "^7.0.1", - "remark-parse": "^8.0.3", - "remark-stringify": "^8.1.1", - "semver": "^7.5.4", - "tslib": "^2.6.0", - "unified": "^10.1.2", - "unist-util-visit": "^2.0.3" - }, - "devDependencies": { - "@types/color": "^3.0.3", - "@types/jscodeshift": "^0.11.6" - } -} diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/blog/2017-12-14-introducing-docusaurus.md b/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/blog/2017-12-14-introducing-docusaurus.md deleted file mode 100644 index 300767263031..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/blog/2017-12-14-introducing-docusaurus.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: Introducing Docusaurus -author: Joel Marcey -authorURL: http://twitter.com/JoelMarcey -authorImageURL: https://graph.facebook.com/611217057/picture/?height=200&width=200 -authorFBID: 611217057 -authorTwitter: JoelMarcey ---- - -# blog \ No newline at end of file diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/package.json b/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/package.json deleted file mode 100644 index cc02ce4ec418..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/package.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "name": "docusaurus-1-website", - "version": "2.0.0-alpha.58", - "private": true, - "scripts": { - "start": "docusaurus-start", - "build": "docusaurus-build", - "publish-gh-pages": "docusaurus-publish", - "examples": "docusaurus-examples", - "write-translations": "docusaurus-write-translations", - "docusaurus-version": "docusaurus-version", - "rename-version": "docusaurus-rename-version", - "crowdin-upload": "crowdin --config ../crowdin.yaml upload sources --auto-update -b master", - "crowdin-download": "crowdin --config ../crowdin.yaml download -b master" - }, - "dependencies": { - "docusaurus": "*" - } -} diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/pages/en/index.js b/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/pages/en/index.js deleted file mode 100644 index ae7d4f4eb781..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/pages/en/index.js +++ /dev/null @@ -1,17 +0,0 @@ -/** - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -const React = require('react'); - - - -function Index(props) { - - return <> -} - -module.exports = Index; diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/sidebars.json b/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/sidebars.json deleted file mode 100644 index 75298985fabc..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/sidebars.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "API": [ - "commands", - "doc-markdown", - ] -} diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/siteConfig.js b/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/siteConfig.js deleted file mode 100644 index 70aef0a78546..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/siteConfig.js +++ /dev/null @@ -1,82 +0,0 @@ -/** - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -/* List of projects/orgs using your project for the users page */ -const users = { - caption: 'DevSpace', - image: '/img/users/devspace.svg', - infoLink: 'https://devspace.cloud/docs/', - fbOpenSource: false, - pinned: false, -}; - -const siteConfig = { - title: 'Docusaurus', - tagline: 'Easy to Maintain Open Source Documentation Websites', - url: 'https://docusaurus.io', - baseUrl: '/', - organizationName: 'facebook', - projectName: 'docusaurus', - cname: 'docusaurus.io', - noIndex: false, - users, - editUrl: 'https://github.com/facebook/docusaurus/edit/main/docs/', - headerLinks: [ - {doc: 'installation', label: 'Docs'}, - {doc: 'tutorial-setup', label: 'Tutorial'}, - {page: 'users', label: 'Users'}, - {blog: true, label: 'Blog'}, - { - href: 'https://github.com/facebook/docusaurus', - label: 'GitHub', - external: true, - }, - ], - headerIcon: 'img/docusaurus.svg', - footerIcon: 'img/docusaurus_monochrome.svg', - favicon: 'img/docusaurus.ico', - algolia: { - apiKey: '3eb9507824b8be89e7a199ecaa1a9d2c', - indexName: 'docusaurus', - algoliaOptions: { - facetFilters: ['language:LANGUAGE', 'version:VERSION'], - }, - }, - colors: { - primaryColor: '#2E8555', - secondaryColor: '#205C3B', - }, - translationRecruitingLink: 'https://crowdin.com/project/docusaurus', - copyright: `Copyright © ${new Date().getFullYear()} Facebook Inc.`, - usePrism: ['jsx'], - highlight: { - theme: 'atom-one-dark', - }, - scripts: [ - 'https://buttons.github.io/buttons.js', - 'https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js', - '/js/code-blocks-buttons.js', - ], - gaTrackingId: 'UA-44373548-31', - facebookAppId: '199138890728411', - facebookComments: true, - twitter: 'true', - twitterUsername: 'docusaurus', - ogImage: 'img/docusaurus.png', - twitterImage: 'img/docusaurus.png', - onPageNav: 'separate', - cleanUrl: true, - scrollToTop: true, - scrollToTopOptions: { - zIndex: 100, - }, - enableUpdateTime: true, - enableUpdateBy: true, - docsSideNavCollapsible: true, -}; - -module.exports = siteConfig; diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/static/.gitkeep b/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/static/.gitkeep deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/versioned_docs/version-1.10.x/api-commands.md b/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/versioned_docs/version-1.10.x/api-commands.md deleted file mode 100644 index e5536a29cc8e..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/versioned_docs/version-1.10.x/api-commands.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -id: version-1.10.x-commands -title: CLI Commands -original_id: commands ---- - -# Doc \ No newline at end of file diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/versioned_docs/version-1.9.x/api-commands.md b/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/versioned_docs/version-1.9.x/api-commands.md deleted file mode 100644 index cafda1ffcc6c..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/versioned_docs/version-1.9.x/api-commands.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -id: version-1.9.x-commands -title: CLI Commands -original_id: commands ---- - -# Doc \ No newline at end of file diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/versioned_docs/version-1.9.x/api-doc-markdown.md b/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/versioned_docs/version-1.9.x/api-doc-markdown.md deleted file mode 100644 index cb6164018d51..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/versioned_docs/version-1.9.x/api-doc-markdown.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -id: version-1.9.x-doc-markdown -title: Markdown Features -original_id: doc-markdown ---- - -# Doc diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/versioned_sidebars/version-1.9.x-sidebars.json b/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/versioned_sidebars/version-1.9.x-sidebars.json deleted file mode 100644 index 1e17a846e26a..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/versioned_sidebars/version-1.9.x-sidebars.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "version-1.9.x-docs": { - "API": [ - "version-1.9.x-commands", - "version-1.9.x-doc-markdown" - ] - } -} diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/versions.json b/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/versions.json deleted file mode 100644 index 54e4081613f4..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/versions.json +++ /dev/null @@ -1 +0,0 @@ -[ "1.10.x", "1.9.x"] diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/expectedSiteConfig.js b/packages/docusaurus-migrate/src/__tests__/__fixtures__/expectedSiteConfig.js deleted file mode 100644 index b3680fa40ab6..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/expectedSiteConfig.js +++ /dev/null @@ -1,83 +0,0 @@ -/** - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -module.exports = { - title: 'Docusaurus', - tagline: 'Easy to Maintain Open Source Documentation Websites', - url: 'https://docusaurus.io', - baseUrl: '/', - organizationName: 'facebook', - projectName: 'docusaurus', - noIndex: true, - scripts: [ - 'https://buttons.github.io/buttons.js', - 'https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js', - '/js/code-blocks-buttons.js', - ], - favicon: 'img/docusaurus.ico', - customFields: { - users: { - caption: 'DevSpace', - image: '/img/users/devspace.svg', - infoLink: 'https://devspace.cloud/docs/', - fbOpenSource: false, - pinned: false, - }, - translationRecruitingLink: 'https://crowdin.com/project/docusaurus', - facebookAppId: '199138890728411', - }, - onBrokenLinks: 'log', - onBrokenMarkdownLinks: 'log', - presets: [ - [ - '@docusaurus/preset-classic', - { - docs: { - showLastUpdateAuthor: true, - showLastUpdateTime: true, - editUrl: 'https://github.com/facebook/docusaurus/edit/main/docs/', - }, - blog: {}, - theme: {}, - googleAnalytics: {trackingID: 'UA-44373548-31'}, - }, - ], - ], - plugins: [], - themeConfig: { - navbar: { - title: 'Docusaurus', - logo: {src: 'img/docusaurus.svg'}, - items: [ - {to: 'docs/installation', label: 'Docs', position: 'left'}, - {to: 'docs/tutorial-setup', label: 'Tutorial', position: 'left'}, - {to: '/users', label: 'Users', position: 'left'}, - { - href: 'https://github.com/facebook/docusaurus', - label: 'GitHub', - position: 'left', - }, - ], - }, - image: 'img/docusaurus.png', - footer: { - links: [ - { - title: 'Community', - items: [{label: 'Twitter', to: 'https://twitter.com/docusaurus'}], - }, - ], - copyright: `Copyright © ${new Date().getFullYear()} Facebook Inc.`, - logo: {src: 'img/docusaurus_monochrome.svg'}, - }, - algolia: { - apiKey: '3eb9507824b8be89e7a199ecaa1a9d2c', - indexName: 'docusaurus', - algoliaOptions: {facetFilters: ['language:LANGUAGE', 'version:VERSION']}, - }, - }, -}; diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/blog/2017-12-14-introducing-docusaurus.md b/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/blog/2017-12-14-introducing-docusaurus.md deleted file mode 100644 index 056a59b27150..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/blog/2017-12-14-introducing-docusaurus.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: Introducing Docusaurus -author: Joel Marcey -authorURL: http://twitter.com/JoelMarcey -authorImageURL: https://graph.facebook.com/611217057/picture/?height=200&width=200 -authorFBID: 611217057 -authorTwitter: JoelMarcey ---- - -# Blog \ No newline at end of file diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/package.json b/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/package.json deleted file mode 100644 index cc02ce4ec418..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/package.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "name": "docusaurus-1-website", - "version": "2.0.0-alpha.58", - "private": true, - "scripts": { - "start": "docusaurus-start", - "build": "docusaurus-build", - "publish-gh-pages": "docusaurus-publish", - "examples": "docusaurus-examples", - "write-translations": "docusaurus-write-translations", - "docusaurus-version": "docusaurus-version", - "rename-version": "docusaurus-rename-version", - "crowdin-upload": "crowdin --config ../crowdin.yaml upload sources --auto-update -b master", - "crowdin-download": "crowdin --config ../crowdin.yaml download -b master" - }, - "dependencies": { - "docusaurus": "*" - } -} diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/pages/en/index.js b/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/pages/en/index.js deleted file mode 100644 index ae7d4f4eb781..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/pages/en/index.js +++ /dev/null @@ -1,17 +0,0 @@ -/** - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -const React = require('react'); - - - -function Index(props) { - - return <> -} - -module.exports = Index; diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/sidebars.json b/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/sidebars.json deleted file mode 100644 index 75298985fabc..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/sidebars.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "API": [ - "commands", - "doc-markdown", - ] -} diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/siteConfig.js b/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/siteConfig.js deleted file mode 100644 index 70aef0a78546..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/siteConfig.js +++ /dev/null @@ -1,82 +0,0 @@ -/** - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -/* List of projects/orgs using your project for the users page */ -const users = { - caption: 'DevSpace', - image: '/img/users/devspace.svg', - infoLink: 'https://devspace.cloud/docs/', - fbOpenSource: false, - pinned: false, -}; - -const siteConfig = { - title: 'Docusaurus', - tagline: 'Easy to Maintain Open Source Documentation Websites', - url: 'https://docusaurus.io', - baseUrl: '/', - organizationName: 'facebook', - projectName: 'docusaurus', - cname: 'docusaurus.io', - noIndex: false, - users, - editUrl: 'https://github.com/facebook/docusaurus/edit/main/docs/', - headerLinks: [ - {doc: 'installation', label: 'Docs'}, - {doc: 'tutorial-setup', label: 'Tutorial'}, - {page: 'users', label: 'Users'}, - {blog: true, label: 'Blog'}, - { - href: 'https://github.com/facebook/docusaurus', - label: 'GitHub', - external: true, - }, - ], - headerIcon: 'img/docusaurus.svg', - footerIcon: 'img/docusaurus_monochrome.svg', - favicon: 'img/docusaurus.ico', - algolia: { - apiKey: '3eb9507824b8be89e7a199ecaa1a9d2c', - indexName: 'docusaurus', - algoliaOptions: { - facetFilters: ['language:LANGUAGE', 'version:VERSION'], - }, - }, - colors: { - primaryColor: '#2E8555', - secondaryColor: '#205C3B', - }, - translationRecruitingLink: 'https://crowdin.com/project/docusaurus', - copyright: `Copyright © ${new Date().getFullYear()} Facebook Inc.`, - usePrism: ['jsx'], - highlight: { - theme: 'atom-one-dark', - }, - scripts: [ - 'https://buttons.github.io/buttons.js', - 'https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js', - '/js/code-blocks-buttons.js', - ], - gaTrackingId: 'UA-44373548-31', - facebookAppId: '199138890728411', - facebookComments: true, - twitter: 'true', - twitterUsername: 'docusaurus', - ogImage: 'img/docusaurus.png', - twitterImage: 'img/docusaurus.png', - onPageNav: 'separate', - cleanUrl: true, - scrollToTop: true, - scrollToTopOptions: { - zIndex: 100, - }, - enableUpdateTime: true, - enableUpdateBy: true, - docsSideNavCollapsible: true, -}; - -module.exports = siteConfig; diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/static/.gitkeep b/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/static/.gitkeep deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/versioned_docs/version-1.10.x/api-commands.md b/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/versioned_docs/version-1.10.x/api-commands.md deleted file mode 100644 index e5536a29cc8e..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/versioned_docs/version-1.10.x/api-commands.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -id: version-1.10.x-commands -title: CLI Commands -original_id: commands ---- - -# Doc \ No newline at end of file diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/versioned_docs/version-1.9.x/api-commands.md b/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/versioned_docs/version-1.9.x/api-commands.md deleted file mode 100644 index cafda1ffcc6c..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/versioned_docs/version-1.9.x/api-commands.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -id: version-1.9.x-commands -title: CLI Commands -original_id: commands ---- - -# Doc \ No newline at end of file diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/versioned_docs/version-1.9.x/api-doc-markdown.md b/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/versioned_docs/version-1.9.x/api-doc-markdown.md deleted file mode 100644 index cb6164018d51..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/versioned_docs/version-1.9.x/api-doc-markdown.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -id: version-1.9.x-doc-markdown -title: Markdown Features -original_id: doc-markdown ---- - -# Doc diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/versioned_sidebars/version-1.9.x-sidebars.json b/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/versioned_sidebars/version-1.9.x-sidebars.json deleted file mode 100644 index 1e17a846e26a..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/versioned_sidebars/version-1.9.x-sidebars.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "version-1.9.x-docs": { - "API": [ - "version-1.9.x-commands", - "version-1.9.x-doc-markdown" - ] - } -} diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/versions.json b/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/versions.json deleted file mode 100644 index 605f34858cb7..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/versions.json +++ /dev/null @@ -1 +0,0 @@ -[ "1.10.x","1.9.10", "1.9.x"] diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/docs/api-commands.md b/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/docs/api-commands.md deleted file mode 100644 index 85c8613035f8..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/docs/api-commands.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -id: commands -title: CLI Commands ---- - -## Doc \ No newline at end of file diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/docs/api-doc-markdown.md b/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/docs/api-doc-markdown.md deleted file mode 100644 index 404de1717e49..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/docs/api-doc-markdown.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -id: doc-markdown -title: Markdown Features ---- - -## Doc \ No newline at end of file diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/website/package.json b/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/website/package.json deleted file mode 100644 index cc02ce4ec418..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/website/package.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "name": "docusaurus-1-website", - "version": "2.0.0-alpha.58", - "private": true, - "scripts": { - "start": "docusaurus-start", - "build": "docusaurus-build", - "publish-gh-pages": "docusaurus-publish", - "examples": "docusaurus-examples", - "write-translations": "docusaurus-write-translations", - "docusaurus-version": "docusaurus-version", - "rename-version": "docusaurus-rename-version", - "crowdin-upload": "crowdin --config ../crowdin.yaml upload sources --auto-update -b master", - "crowdin-download": "crowdin --config ../crowdin.yaml download -b master" - }, - "dependencies": { - "docusaurus": "*" - } -} diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/website/pages/en/index.js b/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/website/pages/en/index.js deleted file mode 100644 index ae7d4f4eb781..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/website/pages/en/index.js +++ /dev/null @@ -1,17 +0,0 @@ -/** - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -const React = require('react'); - - - -function Index(props) { - - return <> -} - -module.exports = Index; diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/website/sidebars.json b/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/website/sidebars.json deleted file mode 100644 index 75298985fabc..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/website/sidebars.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "API": [ - "commands", - "doc-markdown", - ] -} diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/website/siteConfig.js b/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/website/siteConfig.js deleted file mode 100644 index 70aef0a78546..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/website/siteConfig.js +++ /dev/null @@ -1,82 +0,0 @@ -/** - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -/* List of projects/orgs using your project for the users page */ -const users = { - caption: 'DevSpace', - image: '/img/users/devspace.svg', - infoLink: 'https://devspace.cloud/docs/', - fbOpenSource: false, - pinned: false, -}; - -const siteConfig = { - title: 'Docusaurus', - tagline: 'Easy to Maintain Open Source Documentation Websites', - url: 'https://docusaurus.io', - baseUrl: '/', - organizationName: 'facebook', - projectName: 'docusaurus', - cname: 'docusaurus.io', - noIndex: false, - users, - editUrl: 'https://github.com/facebook/docusaurus/edit/main/docs/', - headerLinks: [ - {doc: 'installation', label: 'Docs'}, - {doc: 'tutorial-setup', label: 'Tutorial'}, - {page: 'users', label: 'Users'}, - {blog: true, label: 'Blog'}, - { - href: 'https://github.com/facebook/docusaurus', - label: 'GitHub', - external: true, - }, - ], - headerIcon: 'img/docusaurus.svg', - footerIcon: 'img/docusaurus_monochrome.svg', - favicon: 'img/docusaurus.ico', - algolia: { - apiKey: '3eb9507824b8be89e7a199ecaa1a9d2c', - indexName: 'docusaurus', - algoliaOptions: { - facetFilters: ['language:LANGUAGE', 'version:VERSION'], - }, - }, - colors: { - primaryColor: '#2E8555', - secondaryColor: '#205C3B', - }, - translationRecruitingLink: 'https://crowdin.com/project/docusaurus', - copyright: `Copyright © ${new Date().getFullYear()} Facebook Inc.`, - usePrism: ['jsx'], - highlight: { - theme: 'atom-one-dark', - }, - scripts: [ - 'https://buttons.github.io/buttons.js', - 'https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js', - '/js/code-blocks-buttons.js', - ], - gaTrackingId: 'UA-44373548-31', - facebookAppId: '199138890728411', - facebookComments: true, - twitter: 'true', - twitterUsername: 'docusaurus', - ogImage: 'img/docusaurus.png', - twitterImage: 'img/docusaurus.png', - onPageNav: 'separate', - cleanUrl: true, - scrollToTop: true, - scrollToTopOptions: { - zIndex: 100, - }, - enableUpdateTime: true, - enableUpdateBy: true, - docsSideNavCollapsible: true, -}; - -module.exports = siteConfig; diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/website/static/.gitkeep b/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/website/static/.gitkeep deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/packages/docusaurus-migrate/src/__tests__/__fixtures__/sourceSiteConfig.js b/packages/docusaurus-migrate/src/__tests__/__fixtures__/sourceSiteConfig.js deleted file mode 100644 index 18de46fbf297..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__fixtures__/sourceSiteConfig.js +++ /dev/null @@ -1,81 +0,0 @@ -/** - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -const users = { - caption: 'DevSpace', - image: '/img/users/devspace.svg', - infoLink: 'https://devspace.cloud/docs/', - fbOpenSource: false, - pinned: false, -}; - -const siteConfig = { - title: 'Docusaurus', - tagline: 'Easy to Maintain Open Source Documentation Websites', - url: 'https://docusaurus.io', - baseUrl: '/', - organizationName: 'facebook', - projectName: 'docusaurus', - cname: 'docusaurus.io', - noIndex: true, - users, - editUrl: 'https://github.com/facebook/docusaurus/edit/main/docs/', - headerLinks: [ - {doc: 'installation', label: 'Docs'}, - {doc: 'tutorial-setup', label: 'Tutorial'}, - {page: 'users', label: 'Users'}, - {blog: true, label: 'Blog'}, - { - href: 'https://github.com/facebook/docusaurus', - label: 'GitHub', - external: true, - }, - ], - headerIcon: 'img/docusaurus.svg', - footerIcon: 'img/docusaurus_monochrome.svg', - favicon: 'img/docusaurus.ico', - algolia: { - apiKey: '3eb9507824b8be89e7a199ecaa1a9d2c', - indexName: 'docusaurus', - algoliaOptions: { - facetFilters: ['language:LANGUAGE', 'version:VERSION'], - }, - }, - colors: { - primaryColor: '#2E8555', - secondaryColor: '#205C3B', - }, - translationRecruitingLink: 'https://crowdin.com/project/docusaurus', - copyright: `Copyright © ${new Date().getFullYear()} Facebook Inc.`, - usePrism: ['jsx'], - highlight: { - theme: 'atom-one-dark', - }, - scripts: [ - 'https://buttons.github.io/buttons.js', - 'https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js', - '/js/code-blocks-buttons.js', - ], - gaTrackingId: 'UA-44373548-31', - facebookAppId: '199138890728411', - facebookComments: true, - twitter: 'true', - twitterUsername: 'docusaurus', - ogImage: 'img/docusaurus.png', - twitterImage: 'img/docusaurus.png', - onPageNav: 'separate', - cleanUrl: true, - scrollToTop: true, - scrollToTopOptions: { - zIndex: 100, - }, - enableUpdateTime: true, - enableUpdateBy: true, - docsSideNavCollapsible: true, -}; - -module.exports = siteConfig; diff --git a/packages/docusaurus-migrate/src/__tests__/__snapshots__/index.test.ts.snap b/packages/docusaurus-migrate/src/__tests__/__snapshots__/index.test.ts.snap deleted file mode 100644 index 96eea4159332..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/__snapshots__/index.test.ts.snap +++ /dev/null @@ -1,565 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`migration CLI migrates complex website: copy 1`] = ` -[ - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/blog", - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/migrated_complex_site/blog", - ], - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/pages/en", - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/migrated_complex_site/src/pages", - ], - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/complex_website/website/static", - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/migrated_complex_site/static", - ], -] -`; - -exports[`migration CLI migrates complex website: mkdirp 1`] = ` -[ - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/migrated_complex_site/src/pages", - ], -] -`; - -exports[`migration CLI migrates complex website: mkdirs 1`] = `[]`; - -exports[`migration CLI migrates complex website: write 1`] = ` -[ - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/migrated_complex_site/docusaurus.config.js", - "module.exports={ - "title": "Docusaurus", - "tagline": "Easy to Maintain Open Source Documentation Websites", - "url": "https://docusaurus.io", - "baseUrl": "/", - "organizationName": "facebook", - "projectName": "docusaurus", - "noIndex": false, - "scripts": [ - "https://buttons.github.io/buttons.js", - "https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js", - "/js/code-blocks-buttons.js" - ], - "favicon": "img/docusaurus.ico", - "customFields": { - "users": { - "caption": "DevSpace", - "image": "/img/users/devspace.svg", - "infoLink": "https://devspace.cloud/docs/", - "fbOpenSource": false, - "pinned": false - }, - "translationRecruitingLink": "https://crowdin.com/project/docusaurus", - "facebookAppId": "199138890728411" - }, - "onBrokenLinks": "log", - "onBrokenMarkdownLinks": "log", - "presets": [ - [ - "@docusaurus/preset-classic", - { - "docs": { - "showLastUpdateAuthor": true, - "showLastUpdateTime": true, - "editUrl": "https://github.com/facebook/docusaurus/edit/main/docs/" - }, - "blog": {}, - "theme": { - "customCss": "../complex_website/src/css/customTheme.css" - }, - "googleAnalytics": { - "trackingID": "UA-44373548-31" - } - } - ] - ], - "plugins": [], - "themeConfig": { - "navbar": { - "title": "Docusaurus", - "logo": { - "src": "img/docusaurus.svg" - }, - "items": [ - { - "to": "docs/installation", - "label": "Docs", - "position": "left" - }, - { - "to": "docs/tutorial-setup", - "label": "Tutorial", - "position": "left" - }, - { - "to": "/users", - "label": "Users", - "position": "left" - }, - { - "href": "https://github.com/facebook/docusaurus", - "label": "GitHub", - "position": "left" - } - ] - }, - "image": "img/docusaurus.png", - "footer": { - "links": [ - { - "title": "Community", - "items": [ - { - "label": "Twitter", - "to": "https://twitter.com/docusaurus" - } - ] - } - ], - "copyright": "Copyright © 2023 Facebook Inc.", - "logo": { - "src": "img/docusaurus_monochrome.svg" - } - }, - "algolia": { - "apiKey": "3eb9507824b8be89e7a199ecaa1a9d2c", - "indexName": "docusaurus", - "algoliaOptions": { - "facetFilters": [ - "language:LANGUAGE", - "version:VERSION" - ] - } - } - } -}", - ], - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/migrated_complex_site/package.json", - "{ - "name": "docusaurus-1-website", - "version": "2.0.0-alpha.58", - "private": true, - "scripts": { - "start": "docusaurus start", - "build": "docusaurus build", - "publish-gh-pages": "docusaurus-publish", - "examples": "docusaurus-examples", - "write-translations": "docusaurus-write-translations", - "docusaurus-version": "docusaurus-version", - "rename-version": "docusaurus-rename-version", - "crowdin-upload": "crowdin --config ../crowdin.yaml upload sources --auto-update -b master", - "crowdin-download": "crowdin --config ../crowdin.yaml download -b master", - "swizzle": "docusaurus swizzle", - "deploy": "docusaurus deploy", - "docusaurus": "docusaurus" - }, - "dependencies": { - "@docusaurus/core": "", - "@docusaurus/preset-classic": "", - "clsx": "^1.1.1", - "react": "^17.0.2", - "react-dom": "^17.0.2" - } -}", - ], - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/migrated_complex_site/src/css/customTheme.css", - ":root{ - --ifm-color-primary-lightest: #3CAD6E; - --ifm-color-primary-lighter: #359962; - --ifm-color-primary-light: #33925D; - --ifm-color-primary: #2E8555; - --ifm-color-primary-dark: #29784C; - --ifm-color-primary-darker: #277148; - --ifm-color-primary-darkest: #205D3B; -} -", - ], -] -`; - -exports[`migration CLI migrates missing versions: copy 1`] = ` -[ - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/blog", - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/migrated_missing_version_site/blog", - ], - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/pages/en", - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/migrated_missing_version_site/src/pages", - ], - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/missing_version_website/website/static", - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/migrated_missing_version_site/static", - ], -] -`; - -exports[`migration CLI migrates missing versions: mkdirp 1`] = ` -[ - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/migrated_missing_version_site/src/pages", - ], -] -`; - -exports[`migration CLI migrates missing versions: mkdirs 1`] = `[]`; - -exports[`migration CLI migrates missing versions: write 1`] = ` -[ - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/migrated_missing_version_site/docusaurus.config.js", - "module.exports={ - "title": "Docusaurus", - "tagline": "Easy to Maintain Open Source Documentation Websites", - "url": "https://docusaurus.io", - "baseUrl": "/", - "organizationName": "facebook", - "projectName": "docusaurus", - "noIndex": false, - "scripts": [ - "https://buttons.github.io/buttons.js", - "https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js", - "/js/code-blocks-buttons.js" - ], - "favicon": "img/docusaurus.ico", - "customFields": { - "users": { - "caption": "DevSpace", - "image": "/img/users/devspace.svg", - "infoLink": "https://devspace.cloud/docs/", - "fbOpenSource": false, - "pinned": false - }, - "translationRecruitingLink": "https://crowdin.com/project/docusaurus", - "facebookAppId": "199138890728411" - }, - "onBrokenLinks": "log", - "onBrokenMarkdownLinks": "log", - "presets": [ - [ - "@docusaurus/preset-classic", - { - "docs": { - "showLastUpdateAuthor": true, - "showLastUpdateTime": true, - "editUrl": "https://github.com/facebook/docusaurus/edit/main/docs/" - }, - "blog": {}, - "theme": { - "customCss": "../missing_version_website/src/css/customTheme.css" - }, - "googleAnalytics": { - "trackingID": "UA-44373548-31" - } - } - ] - ], - "plugins": [], - "themeConfig": { - "navbar": { - "title": "Docusaurus", - "logo": { - "src": "img/docusaurus.svg" - }, - "items": [ - { - "to": "docs/installation", - "label": "Docs", - "position": "left" - }, - { - "to": "docs/tutorial-setup", - "label": "Tutorial", - "position": "left" - }, - { - "to": "/users", - "label": "Users", - "position": "left" - }, - { - "href": "https://github.com/facebook/docusaurus", - "label": "GitHub", - "position": "left" - } - ] - }, - "image": "img/docusaurus.png", - "footer": { - "links": [ - { - "title": "Community", - "items": [ - { - "label": "Twitter", - "to": "https://twitter.com/docusaurus" - } - ] - } - ], - "copyright": "Copyright © 2023 Facebook Inc.", - "logo": { - "src": "img/docusaurus_monochrome.svg" - } - }, - "algolia": { - "apiKey": "3eb9507824b8be89e7a199ecaa1a9d2c", - "indexName": "docusaurus", - "algoliaOptions": { - "facetFilters": [ - "language:LANGUAGE", - "version:VERSION" - ] - } - } - } -}", - ], - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/migrated_missing_version_site/package.json", - "{ - "name": "docusaurus-1-website", - "version": "2.0.0-alpha.58", - "private": true, - "scripts": { - "start": "docusaurus start", - "build": "docusaurus build", - "publish-gh-pages": "docusaurus-publish", - "examples": "docusaurus-examples", - "write-translations": "docusaurus-write-translations", - "docusaurus-version": "docusaurus-version", - "rename-version": "docusaurus-rename-version", - "crowdin-upload": "crowdin --config ../crowdin.yaml upload sources --auto-update -b master", - "crowdin-download": "crowdin --config ../crowdin.yaml download -b master", - "swizzle": "docusaurus swizzle", - "deploy": "docusaurus deploy", - "docusaurus": "docusaurus" - }, - "dependencies": { - "@docusaurus/core": "", - "@docusaurus/preset-classic": "", - "clsx": "^1.1.1", - "react": "^17.0.2", - "react-dom": "^17.0.2" - } -}", - ], - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/migrated_missing_version_site/src/css/customTheme.css", - ":root{ - --ifm-color-primary-lightest: #3CAD6E; - --ifm-color-primary-lighter: #359962; - --ifm-color-primary-light: #33925D; - --ifm-color-primary: #2E8555; - --ifm-color-primary-dark: #29784C; - --ifm-color-primary-darker: #277148; - --ifm-color-primary-darkest: #205D3B; -} -", - ], -] -`; - -exports[`migration CLI migrates simple website: copy 1`] = ` -[ - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/website/pages/en", - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/migrated_simple_site/src/pages", - ], - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/website/static", - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/migrated_simple_site/static", - ], -] -`; - -exports[`migration CLI migrates simple website: mkdirp 1`] = ` -[ - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/migrated_simple_site/src/pages", - ], -] -`; - -exports[`migration CLI migrates simple website: mkdirs 1`] = `[]`; - -exports[`migration CLI migrates simple website: write 1`] = ` -[ - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/migrated_simple_site/docusaurus.config.js", - "module.exports={ - "title": "Docusaurus", - "tagline": "Easy to Maintain Open Source Documentation Websites", - "url": "https://docusaurus.io", - "baseUrl": "/", - "organizationName": "facebook", - "projectName": "docusaurus", - "noIndex": false, - "scripts": [ - "https://buttons.github.io/buttons.js", - "https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js", - "/js/code-blocks-buttons.js" - ], - "favicon": "img/docusaurus.ico", - "customFields": { - "users": { - "caption": "DevSpace", - "image": "/img/users/devspace.svg", - "infoLink": "https://devspace.cloud/docs/", - "fbOpenSource": false, - "pinned": false - }, - "translationRecruitingLink": "https://crowdin.com/project/docusaurus", - "facebookAppId": "199138890728411" - }, - "onBrokenLinks": "log", - "onBrokenMarkdownLinks": "log", - "presets": [ - [ - "@docusaurus/preset-classic", - { - "docs": { - "showLastUpdateAuthor": true, - "showLastUpdateTime": true, - "editUrl": "https://github.com/facebook/docusaurus/edit/main/docs/", - "path": "../simple_website/docs" - }, - "blog": {}, - "theme": { - "customCss": "../simple_website/src/css/customTheme.css" - }, - "googleAnalytics": { - "trackingID": "UA-44373548-31" - } - } - ] - ], - "plugins": [], - "themeConfig": { - "navbar": { - "title": "Docusaurus", - "logo": { - "src": "img/docusaurus.svg" - }, - "items": [ - { - "to": "docs/installation", - "label": "Docs", - "position": "left" - }, - { - "to": "docs/tutorial-setup", - "label": "Tutorial", - "position": "left" - }, - { - "to": "/users", - "label": "Users", - "position": "left" - }, - { - "href": "https://github.com/facebook/docusaurus", - "label": "GitHub", - "position": "left" - } - ] - }, - "image": "img/docusaurus.png", - "footer": { - "links": [ - { - "title": "Community", - "items": [ - { - "label": "Twitter", - "to": "https://twitter.com/docusaurus" - } - ] - } - ], - "copyright": "Copyright © 2023 Facebook Inc.", - "logo": { - "src": "img/docusaurus_monochrome.svg" - } - }, - "algolia": { - "apiKey": "3eb9507824b8be89e7a199ecaa1a9d2c", - "indexName": "docusaurus", - "algoliaOptions": { - "facetFilters": [ - "language:LANGUAGE", - "version:VERSION" - ] - } - } - } -}", - ], - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/migrated_simple_site/package.json", - "{ - "name": "docusaurus-1-website", - "version": "2.0.0-alpha.58", - "private": true, - "scripts": { - "start": "docusaurus start", - "build": "docusaurus build", - "publish-gh-pages": "docusaurus-publish", - "examples": "docusaurus-examples", - "write-translations": "docusaurus-write-translations", - "docusaurus-version": "docusaurus-version", - "rename-version": "docusaurus-rename-version", - "crowdin-upload": "crowdin --config ../crowdin.yaml upload sources --auto-update -b master", - "crowdin-download": "crowdin --config ../crowdin.yaml download -b master", - "swizzle": "docusaurus swizzle", - "deploy": "docusaurus deploy", - "docusaurus": "docusaurus" - }, - "dependencies": { - "@docusaurus/core": "", - "@docusaurus/preset-classic": "", - "clsx": "^1.1.1", - "react": "^17.0.2", - "react-dom": "^17.0.2" - } -}", - ], - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/migrated_simple_site/src/css/customTheme.css", - ":root{ - --ifm-color-primary-lightest: #3CAD6E; - --ifm-color-primary-lighter: #359962; - --ifm-color-primary-light: #33925D; - --ifm-color-primary: #2E8555; - --ifm-color-primary-dark: #29784C; - --ifm-color-primary-darker: #277148; - --ifm-color-primary-darkest: #205D3B; -} -", - ], - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/docs/api-commands.md", - "--- -id: commands -title: CLI Commands ---- -## Doc -", - ], - [ - "/packages/docusaurus-migrate/src/__tests__/__fixtures__/simple_website/docs/api-doc-markdown.md", - "--- -id: doc-markdown -title: Markdown Features ---- -## Doc -", - ], -] -`; diff --git a/packages/docusaurus-migrate/src/__tests__/frontMatter.test.ts b/packages/docusaurus-migrate/src/__tests__/frontMatter.test.ts deleted file mode 100644 index c75d885f34e5..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/frontMatter.test.ts +++ /dev/null @@ -1,28 +0,0 @@ -/** - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -import {shouldQuotifyFrontMatter} from '../frontMatter'; - -describe('shouldQuotifyFrontMatter', () => { - it('works', () => { - expect(shouldQuotifyFrontMatter(['id', 'value'])).toBe(false); - expect( - shouldQuotifyFrontMatter([ - 'title', - // cSpell:ignore sàáâãäåçèéêëìíîïðòóôõöùúûüýÿ - "Some title front matter with allowed special chars like sàáâãäåçèéêëìíîïðòóôõöùúûüýÿ!;,=+-_?'`&#()[]§%€$", - ]), - ).toBe(false); - - expect(shouldQuotifyFrontMatter(['title', 'Special char :'])).toBe(true); - - expect(shouldQuotifyFrontMatter(['title', 'value!'])).toBe(false); - expect(shouldQuotifyFrontMatter(['title', '!value'])).toBe(true); - - expect(shouldQuotifyFrontMatter(['tags', '[tag1, tag2]'])).toBe(false); - }); -}); diff --git a/packages/docusaurus-migrate/src/__tests__/index.test.ts b/packages/docusaurus-migrate/src/__tests__/index.test.ts deleted file mode 100644 index 306f7e394a12..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/index.test.ts +++ /dev/null @@ -1,65 +0,0 @@ -/** - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -import {jest} from '@jest/globals'; -import path from 'path'; -import fs from 'fs-extra'; -import {posixPath} from '@docusaurus/utils'; -import {migrateDocusaurusProject} from '../index'; - -async function testMigration(siteDir: string, newDir: string) { - const writeMock = jest.spyOn(fs, 'outputFile').mockImplementation(() => {}); - const mkdirpMock = jest.spyOn(fs, 'mkdirp').mockImplementation(() => {}); - const mkdirsMock = jest.spyOn(fs, 'mkdirs').mockImplementation(() => {}); - const copyMock = jest.spyOn(fs, 'copy').mockImplementation(() => {}); - await migrateDocusaurusProject(siteDir, newDir, true, true); - expect( - writeMock.mock.calls.sort((a, b) => - posixPath(a[0]).localeCompare(posixPath(b[0])), - ), - ).toMatchSnapshot('write'); - expect( - mkdirpMock.mock.calls.sort((a, b) => - posixPath(a[0]).localeCompare(posixPath(b[0])), - ), - ).toMatchSnapshot('mkdirp'); - expect( - mkdirsMock.mock.calls.sort((a, b) => - posixPath(a[0]).localeCompare(posixPath(b[0])), - ), - ).toMatchSnapshot('mkdirs'); - expect( - copyMock.mock.calls.sort((a, b) => - posixPath(a[0]).localeCompare(posixPath(b[0])), - ), - ).toMatchSnapshot('copy'); - writeMock.mockRestore(); - mkdirpMock.mockRestore(); - mkdirsMock.mockRestore(); - copyMock.mockRestore(); -} - -describe('migration CLI', () => { - const fixtureDir = path.join(__dirname, '__fixtures__'); - it('migrates simple website', async () => { - const siteDir = path.join(fixtureDir, 'simple_website', 'website'); - const newDir = path.join(fixtureDir, 'migrated_simple_site'); - await testMigration(siteDir, newDir); - }); - - it('migrates complex website', async () => { - const siteDir = path.join(fixtureDir, 'complex_website', 'website'); - const newDir = path.join(fixtureDir, 'migrated_complex_site'); - await testMigration(siteDir, newDir); - }); - - it('migrates missing versions', async () => { - const siteDir = path.join(fixtureDir, 'missing_version_website', 'website'); - const newDir = path.join(fixtureDir, 'migrated_missing_version_site'); - await testMigration(siteDir, newDir); - }); -}); diff --git a/packages/docusaurus-migrate/src/__tests__/migrationConfig.test.ts b/packages/docusaurus-migrate/src/__tests__/migrationConfig.test.ts deleted file mode 100644 index 6e77e277e042..000000000000 --- a/packages/docusaurus-migrate/src/__tests__/migrationConfig.test.ts +++ /dev/null @@ -1,27 +0,0 @@ -/** - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -import importFresh from 'import-fresh'; -import {createConfigFile} from '../index'; -import type {VersionOneConfig} from '../types'; - -describe('create config', () => { - it('simple test', () => { - const v1Config: VersionOneConfig = importFresh( - `${__dirname}/__fixtures__/sourceSiteConfig.js`, - ); - const siteDir = 'website'; - const newDir = 'websiteMigrated'; - - const result = createConfigFile({v1Config, siteDir, newDir}); - - const output = importFresh( - `${__dirname}/__fixtures__/expectedSiteConfig.js`, - ); - expect(result).toEqual(output); - }); -}); diff --git a/packages/docusaurus-migrate/src/deps.d.ts b/packages/docusaurus-migrate/src/deps.d.ts deleted file mode 100644 index cab75c696fa2..000000000000 --- a/packages/docusaurus-migrate/src/deps.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -/** - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -declare module '@mapbox/hast-util-to-jsx' { - import type {Node} from 'unist'; - - export default function toJsx(node: Node): string; -} - -declare module 'hast-util-to-string' { - import type {Node} from 'unist'; - - export default function toString(node: Node): string; -} diff --git a/packages/docusaurus-migrate/src/frontMatter.ts b/packages/docusaurus-migrate/src/frontMatter.ts deleted file mode 100644 index 6ec040296d74..000000000000 --- a/packages/docusaurus-migrate/src/frontMatter.ts +++ /dev/null @@ -1,70 +0,0 @@ -/** - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -import type {RawData, Data} from './types'; - -function splitHeader(content: string): RawData { - // New line characters need to handle all operating systems. - const lines = content.split(/\r?\n/); - if (lines[0] !== '---') { - return {}; - } - let i = 1; - for (; i < lines.length - 1; i = 1 + i) { - if (lines[i] === '---') { - break; - } - } - return { - header: lines.slice(1, i + 1).join('\n'), - content: lines.slice(i + 1).join('\n'), - }; -} - -export default function extractMetadata(content: string): Data { - const metadata: {[key: string]: string} = {}; - const both = splitHeader(content); - if (!both.content) { - if (!both.header) { - return {metadata, rawContent: content}; - } - return {metadata, rawContent: both.header}; - } - - // New line characters => to handle all operating systems. - const lines = (both.header ?? '').split(/\r?\n/); - lines.slice(0, -1).forEach((line) => { - const keyValue = line.split(':') as [string, ...string[]]; - const key = keyValue[0].trim(); - const value = keyValue.slice(1).join(':').trim(); - metadata[key] = value; - }); - return {metadata, rawContent: both.content}; -} - -// The new front matter parser need some special chars to -export function shouldQuotifyFrontMatter([key, value]: [ - string, - string, -]): boolean { - if (key === 'tags') { - return false; - } - if (String(value).match(/^(?["']).+\1$/)) { - return false; - } - // title: !something needs quotes because otherwise it's a YAML tag. - if (!String(value).trim().match(/^\w.*/)) { - return true; - } - // TODO this is not ideal to have to maintain such a list of allowed chars - // maybe we should quotify if gray-matter throws instead? - return !String(value).match( - // cSpell:ignore àáâãäåçèéêëìíîïðòóôõöùúûüýÿ - /^[\w .\-àáâãäåçèéêëìíîïðòóôõöùúûüýÿ!;,=+?'`&#()[\]§%€$]+$/, - ); -} diff --git a/packages/docusaurus-migrate/src/index.ts b/packages/docusaurus-migrate/src/index.ts deleted file mode 100644 index 2c162683e32e..000000000000 --- a/packages/docusaurus-migrate/src/index.ts +++ /dev/null @@ -1,763 +0,0 @@ -/** - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -import path from 'path'; -import fs from 'fs-extra'; -import logger from '@docusaurus/logger'; -import {Globby, DOCUSAURUS_VERSION} from '@docusaurus/utils'; -import Color from 'color'; - -import extractMetadata, {shouldQuotifyFrontMatter} from './frontMatter'; -import migratePage from './transform'; -import sanitizeMD from './sanitizeMD'; - -import type { - SidebarEntry, - SidebarEntries, - VersionOneConfig, - VersionTwoConfig, -} from './types'; - -async function walk(dir: string): Promise { - const results: string[] = []; - const list = await fs.readdir(dir); - for (const file of list) { - const fullPath = `${dir}/${file}`; - const stat = await fs.stat(fullPath); - if (stat.isDirectory()) { - results.push(...(await walk(fullPath))); - } else { - results.push(fullPath); - } - } - return results; -} - -async function sanitizedFileContent( - content: string, - migrateMDFiles: boolean, -): Promise { - const extractedData = extractMetadata(content); - const extractedMetaData = Object.entries(extractedData.metadata) - .map( - ([key, value]) => - `${key}: ${ - shouldQuotifyFrontMatter([key, value]) ? `"${value}"` : value - }`, - ) - .join('\n'); - const sanitizedData = `--- -${extractedMetaData} ---- -${ - migrateMDFiles - ? await sanitizeMD(extractedData.rawContent) - : extractedData.rawContent -}`; - return sanitizedData; -} - -type MigrationContext = { - siteDir: string; - newDir: string; - deps: {[key: string]: string}; - shouldMigrateMdFiles: boolean; - shouldMigratePages: boolean; - v1Config: VersionOneConfig; - v2Config: VersionTwoConfig; -}; - -export async function migrateDocusaurusProject( - siteDir: string, - newDir: string, - shouldMigrateMdFiles: boolean = false, - shouldMigratePages: boolean = false, -): Promise { - async function createMigrationContext(): Promise { - const v1Config = (await import(`${siteDir}/siteConfig.js`)) - .default as VersionOneConfig; - logger.info('Starting migration from v1 to v2...'); - const deps = { - '@docusaurus/core': DOCUSAURUS_VERSION, - '@docusaurus/preset-classic': DOCUSAURUS_VERSION, - clsx: '^1.1.1', - react: '^17.0.2', - 'react-dom': '^17.0.2', - }; - const partialMigrationContext = { - siteDir, - newDir, - deps, - shouldMigrateMdFiles, - shouldMigratePages, - v1Config, - }; - const v2Config = createConfigFile(partialMigrationContext); - return { - ...partialMigrationContext, - v2Config, - }; - } - - const migrationContext = await createMigrationContext(); - let errorCount = 0; - try { - createClientRedirects(migrationContext); - logger.success('Created client redirect for non clean URL'); - } catch (err) { - logger.error(`Failed to creating redirects: ${err}`); - errorCount += 1; - } - if (shouldMigratePages) { - try { - await createPages(migrationContext); - logger.success( - 'Created new doc pages (check migration page for more details)', - ); - } catch (err) { - logger.error(`Failed to create new doc pages: ${err}`); - errorCount += 1; - } - } else { - try { - await createDefaultLandingPage(migrationContext); - logger.success( - 'Created landing page (check migration page for more details)', - ); - } catch (err) { - logger.error(`Failed to create landing page: ${err}`); - errorCount += 1; - } - } - - try { - await migrateStaticFiles(migrationContext); - logger.success('Migrated static folder'); - } catch (err) { - logger.error(`Failed to copy static folder: ${err}`); - errorCount += 1; - } - try { - await migrateBlogFiles(migrationContext); - } catch (err) { - logger.error(`Failed to migrate blogs: ${err}`); - errorCount += 1; - } - try { - await handleVersioning(migrationContext); - } catch (err) { - logger.error(`Failed to migrate versioned docs: ${err}`); - errorCount += 1; - } - - try { - await migrateLatestDocs(migrationContext); - } catch (err) { - logger.error(`Failed to migrate docs: ${err}`); - errorCount += 1; - } - - try { - await migrateLatestSidebar(migrationContext); - } catch (err) { - logger.error(`Failed to migrate sidebar: ${err}`); - errorCount += 1; - } - - try { - await fs.outputFile( - path.join(newDir, 'docusaurus.config.js'), - `module.exports=${JSON.stringify(migrationContext.v2Config, null, 2)}`, - ); - logger.success( - `Created a new config file with new navbar and footer config`, - ); - } catch (err) { - logger.error(`Failed to create config file: ${err}`); - errorCount += 1; - } - try { - await migratePackageFile(migrationContext); - } catch (err) { - logger.error( - `Error occurred while creating package.json file for project: ${err}`, - ); - errorCount += 1; - } - if (errorCount) { - logger.warn`Migration from v1 to v2 failed with number=${errorCount} errors: please check the log above`; - } else { - logger.success('Completed migration from v1 to v2'); - } -} - -export function createConfigFile({ - v1Config, - siteDir, - newDir, -}: Pick< - MigrationContext, - 'v1Config' | 'siteDir' | 'newDir' ->): VersionTwoConfig { - const siteConfig = v1Config; - const customConfigFields: {[key: string]: unknown} = {}; - // Add fields that are unknown to v2 to customConfigFields - Object.keys(siteConfig).forEach((key) => { - const knownFields = [ - 'title', - 'tagline', - 'url', - 'baseUrl', - 'organizationName', - 'projectName', - 'scripts', - 'stylesheets', - 'favicon', - 'cname', - 'noIndex', - 'headerLinks', - 'headerIcon', - 'footerIcon', - 'algolia', - 'colors', - 'copyright', - 'editUrl', - 'customDocsPath', - 'facebookComments', - 'usePrism', - 'highlight', - 'twitterUsername', - 'scrollToTopOptions', - 'twitter', - 'twitterImage', - 'onPageNav', - 'cleanUrl', - 'ogImage', - 'scrollToTop', - 'enableUpdateTime', - 'enableUpdateBy', - 'docsSideNavCollapsible', - 'gaTrackingId', - 'gaGtag', - ]; - const value = siteConfig[key as keyof typeof siteConfig]; - if (value !== undefined && !knownFields.includes(key)) { - customConfigFields[key] = value; - } - }); - logger.info`Following Fields from path=${'siteConfig.js'} will be added to path=${'docusaurus.config.js'} in code=${'customFields'}: ${Object.keys( - customConfigFields, - )}`; - - let v2DocsPath: string | undefined; - if (siteConfig.customDocsPath) { - const absoluteDocsPath = path.resolve( - siteDir, - '..', - siteConfig.customDocsPath, - ); - v2DocsPath = path.relative(newDir, absoluteDocsPath); - } - - return { - title: siteConfig.title ?? '', - tagline: siteConfig.tagline, - url: siteConfig.url ?? '', - baseUrl: siteConfig.baseUrl ?? '', - organizationName: siteConfig.organizationName, - projectName: siteConfig.projectName, - noIndex: siteConfig.noIndex, - scripts: siteConfig.scripts, - stylesheets: siteConfig.stylesheets, - favicon: siteConfig.favicon ?? '', - customFields: customConfigFields, - onBrokenLinks: 'log', - onBrokenMarkdownLinks: 'log', - presets: [ - [ - '@docusaurus/preset-classic', - { - docs: { - ...(v2DocsPath && {path: v2DocsPath}), - showLastUpdateAuthor: true, - showLastUpdateTime: true, - editUrl: siteConfig.editUrl, - }, - blog: {}, - theme: {}, - ...(() => { - if (siteConfig.gaTrackingId) { - if (siteConfig.gaGtag) { - return {gtag: {trackingID: siteConfig.gaTrackingId}}; - } - return {googleAnalytics: {trackingID: siteConfig.gaTrackingId}}; - } - return undefined; - })(), - }, - ], - ], - plugins: [], - themeConfig: { - navbar: { - title: siteConfig.title, - logo: siteConfig.headerIcon - ? { - src: siteConfig.headerIcon, - } - : undefined, - items: (siteConfig.headerLinks ?? []) - .map((link) => { - const {doc, href, label, page} = link; - const position = 'left'; - if (doc) { - return { - to: `docs/${doc}`, - label, - position, - }; - } - if (page) { - return { - to: `/${page}`, - label, - position, - }; - } - if (href) { - return {href, label, position}; - } - return null; - }) - .filter(Boolean), - }, - image: siteConfig.ogImage ? siteConfig.ogImage : undefined, - footer: { - links: siteConfig.twitterUsername - ? [ - { - title: 'Community', - items: [ - { - label: 'Twitter', - to: `https://twitter.com/${siteConfig.twitterUsername}`, - }, - ], - }, - ] - : [], - copyright: siteConfig.copyright, - logo: { - src: siteConfig.footerIcon, - }, - }, - algolia: siteConfig.algolia ? siteConfig.algolia : undefined, - }, - }; -} - -function createClientRedirects(context: MigrationContext): void { - if (!context.v1Config.cleanUrl) { - context.deps['@docusaurus/plugin-client-redirects'] = DOCUSAURUS_VERSION; - context.v2Config.plugins.push([ - '@docusaurus/plugin-client-redirects', - {fromExtensions: ['html']}, - ]); - } -} - -async function createPages(context: MigrationContext) { - const {newDir, siteDir} = context; - await fs.mkdirp(path.join(newDir, 'src', 'pages')); - if (await fs.pathExists(path.join(siteDir, 'pages', 'en'))) { - try { - await fs.copy( - path.join(siteDir, 'pages', 'en'), - path.join(newDir, 'src', 'pages'), - ); - const files = await Globby('**/*.js', { - cwd: path.join(newDir, 'src', 'pages'), - }); - await Promise.all( - files.map(async (file) => { - const filePath = path.join(newDir, 'src', 'pages', file); - const content = await fs.readFile(filePath, 'utf-8'); - await fs.outputFile(filePath, migratePage(content)); - }), - ); - } catch (err) { - logger.error(`Unable to migrate Pages: ${err}`); - await createDefaultLandingPage(context); - } - } else { - logger.info('Ignoring Pages'); - } -} - -async function createDefaultLandingPage({newDir}: MigrationContext) { - const indexPage = `import Layout from "@theme/Layout"; - import React from "react"; - - export default () => { - return ; - }; - `; - await fs.outputFile(`${newDir}/src/pages/index.js`, indexPage); -} - -async function migrateStaticFiles({siteDir, newDir}: MigrationContext) { - if (await fs.pathExists(path.join(siteDir, 'static'))) { - await fs.copy(path.join(siteDir, 'static'), path.join(newDir, 'static')); - } else { - await fs.mkdir(path.join(newDir, 'static')); - } -} - -async function migrateBlogFiles(context: MigrationContext) { - const {siteDir, newDir, shouldMigrateMdFiles} = context; - if (await fs.pathExists(path.join(siteDir, 'blog'))) { - await fs.copy(path.join(siteDir, 'blog'), path.join(newDir, 'blog')); - const files = await walk(path.join(newDir, 'blog')); - await Promise.all( - files.map(async (file) => { - const content = await fs.readFile(file, 'utf-8'); - await fs.outputFile( - file, - await sanitizedFileContent(content, shouldMigrateMdFiles), - ); - }), - ); - context.v2Config.presets[0][1].blog.path = 'blog'; - logger.success('Migrated blogs to version 2 with change in front matter'); - } else { - logger.warn('Blog not found. Skipping migration for blog'); - } -} - -async function handleVersioning(context: MigrationContext) { - const {siteDir, newDir} = context; - if (await fs.pathExists(path.join(siteDir, 'versions.json'))) { - const loadedVersions = (await fs.readJSON( - path.join(siteDir, 'versions.json'), - )) as string[]; - await fs.copyFile( - path.join(siteDir, 'versions.json'), - path.join(newDir, 'versions.json'), - ); - const versions = loadedVersions.reverse(); - const versionRegex = new RegExp(`version-(${versions.join('|')})-`, 'gim'); - await migrateVersionedSidebar(context, versions, versionRegex); - await fs.mkdirp(path.join(newDir, 'versioned_docs')); - await migrateVersionedDocs(context, versions, versionRegex); - logger.success`Migrated version docs and sidebar. The following doc versions have been created:name=${loadedVersions}`; - } else { - logger.warn( - 'Versioned docs not found. Skipping migration for versioned docs', - ); - } -} - -async function migrateVersionedDocs( - context: MigrationContext, - versions: string[], - versionRegex: RegExp, -) { - const {siteDir, newDir, shouldMigrateMdFiles} = context; - await Promise.all( - versions.reverse().map(async (version, index) => { - if (index === 0) { - await fs.copy( - path.join(siteDir, '..', context.v1Config.customDocsPath ?? 'docs'), - path.join(newDir, 'versioned_docs', `version-${version}`), - ); - await fs.copy( - path.join(siteDir, 'versioned_docs', `version-${version}`), - path.join(newDir, 'versioned_docs', `version-${version}`), - ); - return; - } - try { - await fs.mkdirs( - path.join(newDir, 'versioned_docs', `version-${version}`), - ); - await fs.copy( - path.join( - newDir, - 'versioned_docs', - `version-${versions[index - 1]!}`, - ), - path.join(newDir, 'versioned_docs', `version-${version}`), - ); - await fs.copy( - path.join(siteDir, 'versioned_docs', `version-${version}`), - path.join(newDir, 'versioned_docs', `version-${version}`), - ); - } catch { - await fs.copy( - path.join( - newDir, - 'versioned_docs', - `version-${versions[index - 1]!}`, - ), - path.join(newDir, 'versioned_docs', `version-${version}`), - ); - } - }), - ); - const files = await walk(path.join(newDir, 'versioned_docs')); - await Promise.all( - files.map(async (pathToFile) => { - if (path.extname(pathToFile) === '.md') { - const content = await fs.readFile(pathToFile, 'utf-8'); - await fs.outputFile( - pathToFile, - await sanitizedFileContent( - content.replace(versionRegex, ''), - shouldMigrateMdFiles, - ), - ); - } - }), - ); -} - -async function migrateVersionedSidebar( - context: MigrationContext, - versions: string[], - versionRegex: RegExp, -) { - const {siteDir, newDir} = context; - if (await fs.pathExists(path.join(siteDir, 'versioned_sidebars'))) { - await fs.mkdirp(path.join(newDir, 'versioned_sidebars')); - const sidebars: { - entries: SidebarEntries; - version: string; - }[] = []; - // Order matters: if a sidebar file doesn't exist, we have to use the - // previous version's - for (let i = 0; i < versions.length; i += 1) { - const version = versions[i]!; - let sidebarEntries: SidebarEntries; - const sidebarPath = path.join( - siteDir, - 'versioned_sidebars', - `version-${version}-sidebars.json`, - ); - try { - sidebarEntries = (await fs.readJSON(sidebarPath)) as SidebarEntries; - } catch { - sidebars.push({version, entries: sidebars[i - 1]!.entries}); - return; - } - const newSidebar = Object.entries(sidebarEntries).reduce( - (topLevel: SidebarEntries, value) => { - const key = value[0].replace(versionRegex, ''); - topLevel[key] = Object.entries(value[1]).reduce<{ - [key: string]: (string | {[key: string]: unknown})[]; - }>((acc, val) => { - acc[val[0].replace(versionRegex, '')] = ( - val[1] as SidebarEntry[] - ).map((item) => { - if (typeof item === 'string') { - return item.replace(versionRegex, ''); - } - return { - type: 'category', - label: item.label, - ids: item.ids.map((id) => id.replace(versionRegex, '')), - }; - }); - return acc; - }, {}); - return topLevel; - }, - {}, - ); - sidebars.push({version, entries: newSidebar}); - } - await Promise.all( - sidebars.map(async (sidebar) => { - const newSidebar = Object.entries( - sidebar.entries, - ).reduce((acc, val) => { - const key = `version-${sidebar.version}/${val[0]}`; - acc[key] = Object.entries(val[1]).map((value) => ({ - type: 'category', - label: value[0], - items: (value[1] as SidebarEntry[]).map((sidebarItem) => { - if (typeof sidebarItem === 'string') { - return { - type: 'doc', - id: `version-${sidebar.version}/${sidebarItem}`, - }; - } - return { - type: 'category', - label: sidebarItem.label, - items: sidebarItem.ids.map((id) => ({ - type: 'doc', - id: `version-${sidebar.version}/${id}`, - })), - }; - }), - })); - return acc; - }, {}); - await fs.outputFile( - path.join( - newDir, - 'versioned_sidebars', - `version-${sidebar.version}-sidebars.json`, - ), - JSON.stringify(newSidebar, null, 2), - ); - }), - ); - context.v2Config.themeConfig.navbar.items.push({ - label: 'Version', - to: 'docs', - position: 'right', - items: [ - { - label: versions[versions.length - 1], - to: 'docs/', - activeBaseRegex: `docs/(?!${versions.join('|')}|next)`, - }, - ...versions - .reverse() - .slice(1) - .map((version) => ({ - label: version, - to: `docs/${version}/`, - })), - { - label: 'Main/Unreleased', - to: `docs/next/`, - activeBaseRegex: `docs/next/(?!support|team|resources)`, - }, - ], - }); - } -} - -async function migrateLatestSidebar(context: MigrationContext) { - const {siteDir, newDir} = context; - try { - await fs.copyFile( - path.join(siteDir, 'sidebars.json'), - path.join(newDir, 'sidebars.json'), - ); - context.v2Config.presets[0][1].docs.sidebarPath = path.join( - path.relative(newDir, siteDir), - 'sidebars.json', - ); - } catch { - logger.warn('Sidebar not found. Skipping migration for sidebar'); - } - if (context.v1Config.colors) { - const primaryColor = Color(context.v1Config.colors.primaryColor); - const css = `:root{ - --ifm-color-primary-lightest: ${primaryColor.darken(-0.3).hex()}; - --ifm-color-primary-lighter: ${primaryColor.darken(-0.15).hex()}; - --ifm-color-primary-light: ${primaryColor.darken(-0.1).hex()}; - --ifm-color-primary: ${primaryColor.hex()}; - --ifm-color-primary-dark: ${primaryColor.darken(0.1).hex()}; - --ifm-color-primary-darker: ${primaryColor.darken(0.15).hex()}; - --ifm-color-primary-darkest: ${primaryColor.darken(0.3).hex()}; -} -`; - await fs.outputFile( - path.join(newDir, 'src', 'css', 'customTheme.css'), - css, - ); - context.v2Config.presets[0][1].theme.customCss = path.join( - path.relative(newDir, path.join(siteDir, '..')), - 'src/css/customTheme.css', - ); - } -} - -async function migrateLatestDocs(context: MigrationContext) { - const {siteDir, newDir, shouldMigrateMdFiles} = context; - if (await fs.pathExists(path.join(siteDir, '..', 'docs'))) { - context.v2Config.presets[0][1].docs.path = path.join( - path.relative(newDir, path.join(siteDir, '..')), - 'docs', - ); - const files = await walk(path.join(siteDir, '..', 'docs')); - await Promise.all( - files.map(async (file) => { - if (path.extname(file) === '.md') { - const content = await fs.readFile(file, 'utf-8'); - await fs.outputFile( - file, - await sanitizedFileContent(content, shouldMigrateMdFiles), - ); - } - }), - ); - logger.success('Migrated docs to version 2'); - } else { - logger.warn('Docs folder not found. Skipping migration for docs'); - } -} - -async function migratePackageFile(context: MigrationContext): Promise { - const {deps, siteDir, newDir} = context; - // eslint-disable-next-line global-require, import/no-dynamic-require - const packageFile = (await require(`${siteDir}/package.json`)) as { - scripts?: {[key: string]: string}; - dependencies?: {[key: string]: string}; - devDependencies?: {[key: string]: string}; - [otherKey: string]: unknown; - }; - packageFile.scripts = { - ...packageFile.scripts, - start: 'docusaurus start', - build: 'docusaurus build', - swizzle: 'docusaurus swizzle', - deploy: 'docusaurus deploy', - docusaurus: 'docusaurus', - }; - if (packageFile.dependencies) { - delete packageFile.dependencies.docusaurus; - } - if (packageFile.devDependencies) { - delete packageFile.devDependencies.docusaurus; - } - - packageFile.dependencies = { - ...packageFile.dependencies, - ...deps, - }; - await fs.outputFile( - path.join(newDir, 'package.json'), - JSON.stringify(packageFile, null, 2), - ); - logger.success('Migrated package.json file'); -} - -export async function migrateMDToMDX( - siteDir: string, - newDir: string, -): Promise { - await fs.mkdirp(newDir); - await fs.copy(siteDir, newDir); - const files = await walk(newDir); - await Promise.all( - files.map(async (filePath) => { - if (path.extname(filePath) === '.md') { - const content = await fs.readFile(filePath, 'utf-8'); - await fs.outputFile( - filePath, - await sanitizedFileContent(content, true), - ); - } - }), - ); - logger.success`Successfully migrated path=${siteDir} to path=${newDir}`; -} diff --git a/packages/docusaurus-migrate/src/sanitizeMD.ts b/packages/docusaurus-migrate/src/sanitizeMD.ts deleted file mode 100644 index c04f1341e8f2..000000000000 --- a/packages/docusaurus-migrate/src/sanitizeMD.ts +++ /dev/null @@ -1,55 +0,0 @@ -/** - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -import markdown from 'remark-parse'; -import toJsx from '@mapbox/hast-util-to-jsx'; -import parse from 'rehype-parse'; -import visit from 'unist-util-visit'; -import remarkStringify from 'remark-stringify'; -import htmlTags from 'html-tags'; -import toText from 'hast-util-to-string'; -import type {Code, InlineCode} from 'mdast'; -import type {Element, Text} from 'hast'; - -const tags = htmlTags.reduce((acc: {[key: string]: boolean}, tag) => { - acc[tag] = true; - return acc; -}, {}); - -export default async function sanitizeMD(code: string): Promise { - const {unified} = await import('unified'); - - const markdownTree = unified().use(markdown).parse(code); - visit(markdownTree, 'code', (node: Code) => { - node.value = `\n\n`; - }); - visit(markdownTree, 'inlineCode', (node: InlineCode) => { - node.value = ``; - }); - - // @ts-expect-error: :/ - const markdownString: string = await unified() - .use(remarkStringify, {fence: '`', fences: true}) - .stringify(markdownTree); - - const htmlTree = unified().use(parse).parse(markdownString); - - visit(htmlTree, 'element', (node: Element) => { - if (!tags[node.tagName]) { - (node as Element | Text).type = 'text'; - (node as Element & Partial>).value = - node.tagName + toText(node); - delete (node as Partial).children; - delete (node as Partial).tagName; - } - }); - - return toJsx(htmlTree) - .replace(/\{\/\*|\*\/\}/g, '') - .replace(/\{\/\*|\*\/\}/g, '') - .replace(/|<\/body><\/html>/g, ''); -} diff --git a/packages/docusaurus-migrate/src/transform.ts b/packages/docusaurus-migrate/src/transform.ts deleted file mode 100644 index 24820cf7e9b5..000000000000 --- a/packages/docusaurus-migrate/src/transform.ts +++ /dev/null @@ -1,216 +0,0 @@ -/** - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -import jscodeshift, { - type ArrowFunctionExpression, - AssignmentExpression, - type ASTPath, - type Collection, - type TemplateElement, - VariableDeclarator, - type CallExpression, - type MemberExpression, - type Identifier, -} from 'jscodeshift'; - -const empty = () => - jscodeshift.arrowFunctionExpression( - [jscodeshift.identifier('props')], - jscodeshift.jsxElement( - jscodeshift.jsxOpeningElement(jscodeshift.jsxIdentifier('div'), [ - jscodeshift.jsxSpreadAttribute(jscodeshift.identifier('props')), - ]), - jscodeshift.jsxClosingElement(jscodeshift.jsxIdentifier('div')), - ), - ); - -const property = (key: string, value: ArrowFunctionExpression) => - jscodeshift.objectProperty(jscodeshift.identifier(key), value); - -const processCallExpression = (node: ASTPath) => { - const args = (node?.value?.init as CallExpression)?.arguments[0]; - if (!args) { - return; - } - if (args.type === 'Literal') { - if ( - typeof args.value === 'string' && - args.value.includes('../../core/CompLibrary') - ) { - const newDeclarator = jscodeshift.variableDeclarator( - node.value.id, - jscodeshift.objectExpression([ - property('Container', empty()), - property('GridBlock', empty()), - property('MarkdownBlock', empty()), - ]), - ); - jscodeshift(node).replaceWith(newDeclarator); - } - } - if (args.type === 'TemplateLiteral') { - if ( - args.quasis - .map((element: TemplateElement) => element.value.raw) - .join('') - .match(/\/core\//) - ) { - const newDeclarator = jscodeshift.variableDeclarator( - node.value.id, - empty(), - ); - jscodeshift(node).replaceWith(newDeclarator); - } - } -}; - -const processMemberExpression = (node: ASTPath) => { - const object = (node?.value?.init as MemberExpression)?.object; - if (!(object.type === 'CallExpression')) { - return; - } - const args = object.arguments[0]; - if (!args) { - return; - } - if (args.type === 'Literal') { - if (args.value === '../../core/CompLibrary.js') { - const newDeclarator = jscodeshift.variableDeclarator( - node.value.id, - jscodeshift.objectExpression([ - property('Container', empty()), - property('GridBlock', empty()), - property('MarkdownBlock', empty()), - ]), - ); - jscodeshift(node).replaceWith(newDeclarator); - } else if (typeof args.value === 'string' && args.value.match(/server/)) { - const newDeclarator = jscodeshift.variableDeclarator( - node.value.id, - empty(), - ); - jscodeshift(node).replaceWith(newDeclarator); - } - } - if (args.type === 'TemplateLiteral') { - if ( - args.quasis - .map((ele: TemplateElement) => ele.value.raw) - .join('') - .match(/\/core\//) - ) { - const newDeclarator = jscodeshift.variableDeclarator( - node.value.id, - empty(), - ); - jscodeshift(node).replaceWith(newDeclarator); - } - } -}; - -export default function transformer(file: string): string { - const root = jscodeshift(file); - const r = getImportDeclaratorPaths(root); - r.forEach((node) => { - if (node?.value?.init?.type === 'CallExpression') { - processCallExpression(node); - } else if (node?.value?.init?.type === 'MemberExpression') { - processMemberExpression(node); - } - }); - if (r[r.length - 1]) { - jscodeshift(r[r.length - 1]!.parent).insertAfter( - jscodeshift.importDeclaration( - [jscodeshift.importDefaultSpecifier(jscodeshift.identifier('Layout'))], - jscodeshift.literal('@theme/Layout'), - ), - ); - } - - root - .find(AssignmentExpression, { - operator: '=', - left: { - type: 'MemberExpression', - object: { - name: 'module', - }, - property: { - name: 'exports', - }, - }, - right: { - type: 'Identifier', - }, - }) - .filter((p) => p.parentPath.parentPath.name === 'body') - .forEach((p) => { - const exportDecl = jscodeshift.exportDeclaration( - true, - jscodeshift.arrowFunctionExpression( - [jscodeshift.identifier('props')], - jscodeshift.jsxElement( - jscodeshift.jsxOpeningElement( - jscodeshift.jsxIdentifier('Layout'), - [], - ), - jscodeshift.jsxClosingElement(jscodeshift.jsxIdentifier('Layout')), - [ - jscodeshift.jsxElement( - jscodeshift.jsxOpeningElement( - jscodeshift.jsxIdentifier((p.value.right as Identifier).name), - [ - jscodeshift.jsxSpreadAttribute( - jscodeshift.identifier('props'), - ), - ], - true, - ), - ), - ], - ), - ), - ); - exportDecl.comments = p.parentPath.value.comments; - jscodeshift(p.parentPath).replaceWith(exportDecl); - }); - return root.toSource(); -} - -function getDefaultImportDeclarations(rootAst: Collection) { - // var ... = require('y') - return rootAst - .find(VariableDeclarator, { - init: { - callee: { - name: 'require', - }, - }, - }) - .filter((variableDeclarator) => !!variableDeclarator.value); -} - -function getNamedImportDeclarations(rootAst: Collection) { - // var ... = require('y').x - return rootAst.find(VariableDeclarator, { - init: { - object: { - callee: { - name: 'require', - }, - }, - }, - }); -} - -function getImportDeclaratorPaths(variableDeclaration: Collection) { - const defaultImports = getDefaultImportDeclarations(variableDeclaration); - - const namedImports = getNamedImportDeclarations(variableDeclaration); - - return [...defaultImports.paths(), ...namedImports.paths()]; -} diff --git a/packages/docusaurus-migrate/src/types.ts b/packages/docusaurus-migrate/src/types.ts deleted file mode 100644 index 39b5fc2d53ae..000000000000 --- a/packages/docusaurus-migrate/src/types.ts +++ /dev/null @@ -1,134 +0,0 @@ -/** - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -export type RawData = { - header?: string; - content?: string; -}; - -export type Data = { - metadata: {[key: string]: string}; - rawContent: string; -}; - -export type ClassicPresetEntries = { - docs: {[key: string]: unknown}; - blog: {[key: string]: unknown}; - gtag?: {trackingID: string} | undefined; - googleAnalytics?: {trackingID: string} | undefined; - theme: {[key: string]: unknown}; -}; - -export type SidebarEntry = - | string - | { - type: string; - label: string; - ids: string[]; - }; - -export type SidebarEntries = { - [key: string]: - | {[key: string]: unknown} - | ({[key: string]: unknown} | string)[]; -}; - -export type VersionTwoConfig = { - baseUrl: string; - favicon: string; - tagline?: string; - title: string; - url: string; - organizationName?: string; - projectName?: string; - noIndex?: boolean; - githubHost?: string; - onBrokenLinks: string; - onBrokenMarkdownLinks: string; - plugins: [string, {[key: string]: unknown}][]; - themes?: []; - presets: [[string, ClassicPresetEntries]]; - themeConfig: { - navbar: { - title?: string; - logo?: { - src?: string; - }; - items: ({[key: string]: unknown} | null)[]; - }; - image?: string; - footer: { - links: { - title: string; - items: {label: string; to: string}[]; - }[]; - copyright?: string; - logo: { - src?: string; - }; - }; - algolia?: {[key: string]: unknown}; - }; - customFields: { - [key: string]: unknown; - }; - scripts?: ( - | string - | { - src: string; - [key: string]: unknown; - } - )[]; - stylesheets?: ( - | string - | { - href: string; - [key: string]: unknown; - } - )[]; -}; - -export type VersionOneConfig = { - title?: string; - tagline?: string; - url?: string; - baseUrl?: string; - defaultVersionShown?: string; - organizationName?: string; - projectName?: string; - noIndex?: boolean; - headerLinks?: {doc: string; href: string; label: string; page: string}[]; - headerIcon?: string; - favicon?: string; - colors?: {primaryColor: string}; - copyright?: string; - editUrl?: string; - customDocsPath?: string; - users?: {[key: string]: unknown}[]; - disableHeaderTitle?: string; - disableTitleTagline?: string; - separateCss?: {[key: string]: unknown}[]; - footerIcon?: string; - translationRecruitingLink?: string; - algolia?: {[key: string]: unknown}; - gaTrackingId?: string; - gaGtag?: boolean; - highlight?: {[key: string]: unknown}; - markdownPlugins?: (() => void)[]; - scripts?: ({src: string; [key: string]: unknown} | string)[]; - stylesheets?: ({href: string; [key: string]: unknown} | string)[]; - facebookAppId?: string; - facebookComments?: true; - facebookPixelId?: string; - twitter?: string; - twitterUsername?: string; - twitterImage?: string; - ogImage?: string; - cleanUrl?: boolean; - scrollToTop?: boolean; - scrollToTopOptions?: {[key: string]: unknown}; -}; diff --git a/packages/docusaurus-migrate/tsconfig.build.json b/packages/docusaurus-migrate/tsconfig.build.json deleted file mode 100644 index bc03b5edf231..000000000000 --- a/packages/docusaurus-migrate/tsconfig.build.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "noEmit": false, - "composite": true, - "incremental": true, - "tsBuildInfoFile": "./lib/.tsbuildinfo", - "rootDir": "src", - "outDir": "lib" - }, - "include": ["src"], - "exclude": ["**/__tests__/**"] -} diff --git a/packages/docusaurus-migrate/tsconfig.json b/packages/docusaurus-migrate/tsconfig.json deleted file mode 100644 index 13e35c5a957c..000000000000 --- a/packages/docusaurus-migrate/tsconfig.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "references": [{"path": "./tsconfig.build.json"}], - "compilerOptions": { - "noEmit": true, - "rootDir": "." - }, - "include": ["bin"], - "exclude": ["**/__tests__/**"] -} diff --git a/website/package.json b/website/package.json index 182485329997..155f11256182 100644 --- a/website/package.json +++ b/website/package.json @@ -85,6 +85,7 @@ "devDependencies": { "@docusaurus/eslint-plugin": "3.0.0-beta.0", "@docusaurus/tsconfig": "3.0.0-beta.0", + "@types/color": "^3.0.4", "@types/jest": "^29.5.3", "cross-env": "^7.0.3", "rimraf": "^3.0.2", diff --git a/yarn.lock b/yarn.lock index 000b0a8adfc0..94e463dd380d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -200,7 +200,7 @@ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.22.9.tgz#71cdb00a1ce3a329ce4cbec3a44f9fef35669730" integrity sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ== -"@babel/core@^7.11.1", "@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.13.16", "@babel/core@^7.19.6", "@babel/core@^7.22.9": +"@babel/core@^7.11.1", "@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.19.6", "@babel/core@^7.22.9": version "7.22.9" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.22.9.tgz#bd96492c68822198f33e8a256061da3cf391f58f" integrity sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w== @@ -256,7 +256,7 @@ lru-cache "^5.1.1" semver "^6.3.1" -"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.22.5", "@babel/helper-create-class-features-plugin@^7.22.9": +"@babel/helper-create-class-features-plugin@^7.22.5", "@babel/helper-create-class-features-plugin@^7.22.9": version "7.22.9" resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.9.tgz#c36ea240bb3348f942f08b0fbe28d6d979fab236" integrity sha512-Pwyi89uO4YrGKxL/eNJ8lfEH55DnRloGPOseaA8NFNL6jAUnn+KccaISiFazCj5IolPPDjGSdzQzXVzODVRqUQ== @@ -343,7 +343,7 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295" integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg== @@ -373,7 +373,7 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-skip-transparent-expression-wrappers@^7.20.0", "@babel/helper-skip-transparent-expression-wrappers@^7.22.5": +"@babel/helper-skip-transparent-expression-wrappers@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz#007f15240b5751c537c40e77abb4e89eeaaa8847" integrity sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q== @@ -429,7 +429,7 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.13.16", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.22.5", "@babel/parser@^7.22.7": +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.22.5", "@babel/parser@^7.22.7": version "7.22.7" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.7.tgz#df8cf085ce92ddbdbf668a7f186ce848c9036cae" integrity sha512-7NF8pOkHP5o2vpmGgNGcfAeCvOYhGLyA3Z4eBQkT1RJlWu47n63bCs93QfJ2hIAFCil7L5P2IWhs1oToVgrL0Q== @@ -450,31 +450,6 @@ "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" "@babel/plugin-transform-optional-chaining" "^7.22.5" -"@babel/plugin-proposal-class-properties@^7.13.0": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz#b110f59741895f7ec21a6fff696ec46265c446a3" - integrity sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-proposal-nullish-coalescing-operator@^7.13.8": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz#fdd940a99a740e577d6c753ab6fbb43fdb9467e1" - integrity sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" - -"@babel/plugin-proposal-optional-chaining@^7.13.12": - version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz#886f5c8978deb7d30f678b2e24346b287234d3ea" - integrity sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA== - dependencies: - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" - "@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2": version "7.21.0-placeholder-for-preset-env.2" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz#7844f9289546efa9febac2de4cfe358a050bd703" @@ -530,13 +505,6 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.3" -"@babel/plugin-syntax-flow@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.22.5.tgz#163b820b9e7696ce134df3ee716d9c0c98035859" - integrity sha512-9RdCl0i+q0QExayk2nOS7853w08yLucnnPML6EN9S8fgMPVtdLDCdx/cOQ/i44Lb9UeQX9A35yaqBBOMMZxPxQ== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-import-assertions@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.22.5.tgz#07d252e2aa0bc6125567f742cd58619cb14dce98" @@ -769,14 +737,6 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" -"@babel/plugin-transform-flow-strip-types@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.22.5.tgz#0bb17110c7bf5b35a60754b2f00c58302381dee2" - integrity sha512-tujNbZdxdG0/54g/oua8ISToaXTFBf8EnSb5PgQSciIXWOWKX3S4+JR7ZE9ol8FZwf9kxitzkGQ+QWeov/mCiA== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-flow" "^7.22.5" - "@babel/plugin-transform-for-of@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz#ab1b8a200a8f990137aff9a084f8de4099ab173f" @@ -831,7 +791,7 @@ "@babel/helper-module-transforms" "^7.22.5" "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-modules-commonjs@^7.13.8", "@babel/plugin-transform-modules-commonjs@^7.22.5": +"@babel/plugin-transform-modules-commonjs@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz#7d9875908d19b8c0536085af7b053fd5bd651bfa" integrity sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA== @@ -1187,15 +1147,6 @@ core-js-compat "^3.31.0" semver "^6.3.1" -"@babel/preset-flow@^7.13.13": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.22.5.tgz#876f24ab6b38bd79703a93f32020ca2162312784" - integrity sha512-ta2qZ+LSiGCrP5pgcGt8xMnnkXQrq8Sa4Ulhy06BOlF5QbLw9q5hIx7bn5MrsvyTGAfh6kTOo07Q+Pfld/8Y5Q== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-validator-option" "^7.22.5" - "@babel/plugin-transform-flow-strip-types" "^7.22.5" - "@babel/preset-modules@^0.1.5": version "0.1.5" resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.5.tgz#ef939d6e7f268827e1841638dc6ff95515e115d9" @@ -1219,7 +1170,7 @@ "@babel/plugin-transform-react-jsx-development" "^7.22.5" "@babel/plugin-transform-react-pure-annotations" "^7.22.5" -"@babel/preset-typescript@^7.13.0", "@babel/preset-typescript@^7.18.6", "@babel/preset-typescript@^7.22.5": +"@babel/preset-typescript@^7.18.6", "@babel/preset-typescript@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.22.5.tgz#16367d8b01d640e9a507577ed4ee54e0101e51c8" integrity sha512-YbPaal9LxztSGhmndR46FmAbkJ/1fAsw293tSU+I5E5h+cnJ3d4GTwyUgGYmOXJYdGA+uNePle4qbaRzj2NISQ== @@ -1230,17 +1181,6 @@ "@babel/plugin-transform-modules-commonjs" "^7.22.5" "@babel/plugin-transform-typescript" "^7.22.5" -"@babel/register@^7.13.16": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.22.5.tgz#e4d8d0f615ea3233a27b5c6ada6750ee59559939" - integrity sha512-vV6pm/4CijSQ8Y47RH5SopXzursN35RQINfGJkmOlcpAtGuf94miFvIPhCKGQN7WGIcsgG1BHEX2KVdTYwTwUQ== - dependencies: - clone-deep "^4.0.1" - find-cache-dir "^2.0.0" - make-dir "^2.1.0" - pirates "^4.0.5" - source-map-support "^0.5.16" - "@babel/regjsgen@^0.8.0": version "0.8.0" resolved "https://registry.yarnpkg.com/@babel/regjsgen/-/regjsgen-0.8.0.tgz#f0ba69b075e1f05fb2825b7fad991e7adbb18310" @@ -2146,19 +2086,6 @@ write-pkg "4.0.0" yargs "16.2.0" -"@mapbox/hast-util-to-jsx@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@mapbox/hast-util-to-jsx/-/hast-util-to-jsx-2.0.0.tgz#17b25cca42015d8d3f6f241de4f068f36975a6e7" - integrity sha512-o+2fGJo3xdqHOw3Y4hioS1qg/Bjh6NR80cJToTBRx682gLs1rttyyJTpYwi+AWFajPNaVxymGDnwYOmVqAAZSA== - dependencies: - kebab-case "^1.0.0" - postcss "^7.0.39" - postcss-js "^2.0.3" - property-information "^5.5.0" - react-attr-converter "^0.3.1" - stringify-entities "^3.0.1" - stringify-object "^3.3.0" - "@mdx-js/mdx@^2.1.5": version "2.3.0" resolved "https://registry.yarnpkg.com/@mdx-js/mdx/-/mdx-2.3.0.tgz#d65d8c3c28f3f46bb0e7cb3bf7613b39980671a9" @@ -3131,9 +3058,9 @@ source-map "^0.6.0" "@types/color-convert@*": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@types/color-convert/-/color-convert-2.0.0.tgz#8f5ee6b9e863dcbee5703f5a517ffb13d3ea4e22" - integrity sha512-m7GG7IKKGuJUXvkZ1qqG3ChccdIM/qBBo913z+Xft0nKCX4hAU/IxKwZBU4cpRZ7GS5kV4vOblUkILtSShCPXQ== + version "2.0.1" + resolved "https://registry.yarnpkg.com/@types/color-convert/-/color-convert-2.0.1.tgz#45216f0d8289c6ae32d139ed08c205a9c55bb5d0" + integrity sha512-GwXanrvq/tBHJtudbl1lSy9Ybt7KS9+rA+YY3bcuIIM+d6jSHUr+5yjO83gtiRpuaPiBccwFjSnAK2qSrIPA7w== dependencies: "@types/color-name" "*" @@ -3142,10 +3069,10 @@ resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ== -"@types/color@^3.0.3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/color/-/color-3.0.3.tgz#e6d8d72b7aaef4bb9fe80847c26c7c786191016d" - integrity sha512-X//qzJ3d3Zj82J9sC/C18ZY5f43utPbAJ6PhYt/M7uG6etcF6MRpKdN880KBy43B0BMzSfeT96MzrsNjFI3GbA== +"@types/color@^3.0.4": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@types/color/-/color-3.0.4.tgz#53ceca0946660c7779442948878172c6ace13777" + integrity sha512-OpisS4bqJJwbkkQRrMvURf3DOxBoAg9mysHYI7WgrWpSYHqHGKYBULHdz4ih77SILcLDo/zyHGFyfIl9yb8NZQ== dependencies: "@types/color-convert" "*" @@ -3384,14 +3311,6 @@ resolved "https://registry.yarnpkg.com/@types/js-yaml/-/js-yaml-4.0.5.tgz#738dd390a6ecc5442f35e7f03fa1431353f7e138" integrity sha512-FhpRzf927MNQdRZP0J5DLIdTXhjLYzeUTmLAu69mnVksLH9CJY3IuSeEgbKUki7GQZm0WqDkGzyxju2EZGD2wA== -"@types/jscodeshift@^0.11.6": - version "0.11.6" - resolved "https://registry.yarnpkg.com/@types/jscodeshift/-/jscodeshift-0.11.6.tgz#9ced613c8dd92559000fb671d151685ea8e420c7" - integrity sha512-3lJ4DajWkk4MZ1F7q+1C7jE0z0xOtbu0VU/Kg3wdPq2DUvJjySSlu3B5Q/bICrTxugLhONBO7inRUWsymOID/A== - dependencies: - ast-types "^0.14.1" - recast "^0.20.3" - "@types/jsdom@^20.0.0": version "20.0.1" resolved "https://registry.yarnpkg.com/@types/jsdom/-/jsdom-20.0.1.tgz#07c14bc19bd2f918c1929541cdaacae894744808" @@ -3519,11 +3438,6 @@ resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== -"@types/parse5@^5.0.0": - version "5.0.3" - resolved "https://registry.yarnpkg.com/@types/parse5/-/parse5-5.0.3.tgz#e7b5aebbac150f8b5fdd4a46e7f0bd8e65e19109" - integrity sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw== - "@types/parse5@^6.0.0": version "6.0.3" resolved "https://registry.yarnpkg.com/@types/parse5/-/parse5-6.0.3.tgz#705bb349e789efa06f43f128cef51240753424cb" @@ -4497,20 +4411,6 @@ ast-types-flow@^0.0.7: resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad" integrity sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag== -ast-types@0.14.2, ast-types@^0.14.1: - version "0.14.2" - resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.14.2.tgz#600b882df8583e3cd4f2df5fa20fa83759d4bdfd" - integrity sha512-O0yuUDnZeQDL+ncNGlJ78BiO4jnYI3bvMsD5prT0/nsgijG/LpNBIr63gTjVTNsiGkgQhiyCShTgxt8oXOrklA== - dependencies: - tslib "^2.0.1" - -ast-types@0.15.2: - version "0.15.2" - resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.15.2.tgz#39ae4809393c4b16df751ee563411423e85fb49d" - integrity sha512-c27loCv9QkZinsa5ProX751khO9DJl/AcB5c2KNtA6NRvHKS0PgLfcftz72KVq504vB0Gku5s2kUZzDBvQWvHg== - dependencies: - tslib "^2.0.1" - astral-regex@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" @@ -4596,11 +4496,6 @@ b4a@^1.6.4: resolved "https://registry.yarnpkg.com/b4a/-/b4a-1.6.4.tgz#ef1c1422cae5ce6535ec191baeed7567443f36c9" integrity sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw== -babel-core@^7.0.0-bridge.0: - version "7.0.0-bridge.0" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" - integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg== - babel-jest@^29.6.1: version "29.6.1" resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.6.1.tgz#a7141ad1ed5ec50238f3cd36127636823111233a" @@ -5064,11 +4959,6 @@ camel-case@^4.1.2: pascal-case "^3.1.2" tslib "^2.0.3" -camelcase-css@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5" - integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA== - camelcase-keys@^6.2.2: version "6.2.2" resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz#5e755d6ba51aa223ec7d3d52f25778210f9dc3c0" @@ -5591,11 +5481,6 @@ common-tags@^1.8.0: resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.8.2.tgz#94ebb3c076d26032745fd54face7f688ef5ac9c6" integrity sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA== -commondir@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" - integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg== - compare-func@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/compare-func/-/compare-func-2.0.0.tgz#fb65e75edbddfd2e568554e8b5b05fff7a51fcb3" @@ -7432,7 +7317,7 @@ espree@^9.6.0: acorn-jsx "^5.3.2" eslint-visitor-keys "^3.4.1" -esprima@^4.0.0, esprima@^4.0.1, esprima@~4.0.0: +esprima@^4.0.0, esprima@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== @@ -7879,15 +7764,6 @@ finalhandler@1.2.0: statuses "2.0.1" unpipe "~1.0.0" -find-cache-dir@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7" - integrity sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ== - dependencies: - commondir "^1.0.1" - make-dir "^2.0.0" - pkg-dir "^3.0.0" - find-cache-dir@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-4.0.0.tgz#a30ee0448f81a3990708f6453633c733e2f6eec2" @@ -7952,11 +7828,6 @@ flatted@^3.1.0: resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== -flow-parser@0.*: - version "0.212.0" - resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.212.0.tgz#2b15a32bf0cc15fc81818fe849752dd70cb87871" - integrity sha512-45eNySEs7n692jLN+eHQ6zvC9e1cqu9Dq1PpDHTcWRri2HFEs8is8Anmp1RcIhYxA5TZYD6RuESG2jdj6nkDJQ== - flux@~4.0.1: version "4.0.4" resolved "https://registry.yarnpkg.com/flux/-/flux-4.0.4.tgz#9661182ea81d161ee1a6a6af10d20485ef2ac572" @@ -8630,18 +8501,6 @@ hast-util-from-html@^1.0.0: vfile "^5.0.0" vfile-message "^3.0.0" -hast-util-from-parse5@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz#554e34abdeea25ac76f5bd950a1f0180e0b3bc2a" - integrity sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA== - dependencies: - "@types/parse5" "^5.0.0" - hastscript "^6.0.0" - property-information "^5.0.0" - vfile "^4.0.0" - vfile-location "^3.2.0" - web-namespaces "^1.0.0" - hast-util-from-parse5@^7.0.0: version "7.1.2" resolved "https://registry.yarnpkg.com/hast-util-from-parse5/-/hast-util-from-parse5-7.1.2.tgz#aecfef73e3ceafdfa4550716443e4eb7b02e22b0" @@ -8668,11 +8527,6 @@ hast-util-is-element@^2.0.0: "@types/hast" "^2.0.0" "@types/unist" "^2.0.0" -hast-util-parse-selector@^2.0.0: - version "2.2.5" - resolved "https://registry.yarnpkg.com/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz#d57c23f4da16ae3c63b3b6ca4616683313499c3a" - integrity sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ== - hast-util-parse-selector@^3.0.0: version "3.1.1" resolved "https://registry.yarnpkg.com/hast-util-parse-selector/-/hast-util-parse-selector-3.1.1.tgz#25ab00ae9e75cbc62cf7a901f68a247eade659e2" @@ -8746,11 +8600,6 @@ hast-util-to-parse5@^7.0.0: web-namespaces "^2.0.0" zwitch "^2.0.0" -hast-util-to-string@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/hast-util-to-string/-/hast-util-to-string-1.0.4.tgz#9b24c114866bdb9478927d7e9c36a485ac728378" - integrity sha512-eK0MxRX47AV2eZ+Lyr18DCpQgodvaS3fAQO2+b9Two9F5HEoRPhiUMNzoXArMJfZi2yieFzUBMRl3HNJ3Jus3w== - hast-util-to-text@^3.1.0: version "3.1.2" resolved "https://registry.yarnpkg.com/hast-util-to-text/-/hast-util-to-text-3.1.2.tgz#ecf30c47141f41e91a5d32d0b1e1859fd2ac04f2" @@ -8771,17 +8620,6 @@ hast-util-whitespace@^2.0.0: resolved "https://registry.yarnpkg.com/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz#0ec64e257e6fc216c7d14c8a1b74d27d650b4557" integrity sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng== -hastscript@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/hastscript/-/hastscript-6.0.0.tgz#e8768d7eac56c3fdeac8a92830d58e811e5bf640" - integrity sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w== - dependencies: - "@types/hast" "^2.0.0" - comma-separated-tokens "^1.0.0" - hast-util-parse-selector "^2.0.0" - property-information "^5.0.0" - space-separated-tokens "^1.0.0" - hastscript@^7.0.0, hastscript@^7.1.0: version "7.2.0" resolved "https://registry.yarnpkg.com/hastscript/-/hastscript-7.2.0.tgz#0eafb7afb153d047077fa2a833dc9b7ec604d10b" @@ -9332,11 +9170,6 @@ is-alphabetical@^2.0.0: resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-2.0.1.tgz#01072053ea7c1036df3c7d19a6daaec7f19e789b" integrity sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ== -is-alphanumeric@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-alphanumeric/-/is-alphanumeric-1.0.0.tgz#4a9cef71daf4c001c1d81d63d140cf53fd6889f4" - integrity sha512-ZmRL7++ZkcMOfDuWZuMJyIVLr2keE1o/DeNWh1EmgqGhUcV+9BIVsx0BcSBOHTZqzjs4+dISzr2KAeBEWGgXeA== - is-alphanumerical@^1.0.0: version "1.0.4" resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz#7eb9a2431f855f6b1ef1a78e326df515696c4dbf" @@ -10259,31 +10092,6 @@ js-yaml@^3.10.0, js-yaml@^3.13.1: argparse "^1.0.7" esprima "^4.0.0" -jscodeshift@^0.14.0: - version "0.14.0" - resolved "https://registry.yarnpkg.com/jscodeshift/-/jscodeshift-0.14.0.tgz#7542e6715d6d2e8bde0b4e883f0ccea358b46881" - integrity sha512-7eCC1knD7bLUPuSCwXsMZUH51O8jIcoVyKtI6P0XM0IVzlGjckPy3FIwQlorzbN0Sg79oK+RlohN32Mqf/lrYA== - dependencies: - "@babel/core" "^7.13.16" - "@babel/parser" "^7.13.16" - "@babel/plugin-proposal-class-properties" "^7.13.0" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.13.8" - "@babel/plugin-proposal-optional-chaining" "^7.13.12" - "@babel/plugin-transform-modules-commonjs" "^7.13.8" - "@babel/preset-flow" "^7.13.13" - "@babel/preset-typescript" "^7.13.0" - "@babel/register" "^7.13.16" - babel-core "^7.0.0-bridge.0" - chalk "^4.1.2" - flow-parser "0.*" - graceful-fs "^4.2.4" - micromatch "^4.0.4" - neo-async "^2.5.0" - node-dir "^0.1.17" - recast "^0.21.0" - temp "^0.8.4" - write-file-atomic "^2.3.0" - jsdoctypeparser@^9.0.0: version "9.0.0" resolved "https://registry.yarnpkg.com/jsdoctypeparser/-/jsdoctypeparser-9.0.0.tgz#8c97e2fb69315eb274b0f01377eaa5c940bd7b26" @@ -10444,11 +10252,6 @@ katex@^0.16.0: dependencies: commander "^8.3.0" -kebab-case@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/kebab-case/-/kebab-case-1.0.2.tgz#5eac97d5d220acf606d40e3c0ecfea21f1f9e1eb" - integrity sha512-7n6wXq4gNgBELfDCpzKc+mRrZFs7D+wgfF5WRFLNAr4DA/qtr9Js8uOAVAfHhuLMfAcQ0pRKqbpjx+TcJVdE1Q== - keyv@^4.5.2: version "4.5.2" resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.2.tgz#0e310ce73bf7851ec702f2eaf46ec4e3805cce56" @@ -10866,11 +10669,6 @@ log-update@^4.0.0: slice-ansi "^4.0.0" wrap-ansi "^6.2.0" -longest-streak@^2.0.1: - version "2.0.4" - resolved "https://registry.yarnpkg.com/longest-streak/-/longest-streak-2.0.4.tgz#b8599957da5b5dab64dee3fe316fa774597d90e4" - integrity sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg== - longest-streak@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/longest-streak/-/longest-streak-3.1.0.tgz#62fa67cd958742a1574af9f39866364102d90cd4" @@ -10933,7 +10731,7 @@ make-dir@3.1.0, make-dir@^3.0.0: dependencies: semver "^6.0.0" -make-dir@^2.0.0, make-dir@^2.1.0: +make-dir@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== @@ -11033,13 +10831,6 @@ markdown-extensions@^1.0.0: resolved "https://registry.yarnpkg.com/markdown-extensions/-/markdown-extensions-1.1.1.tgz#fea03b539faeaee9b4ef02a3769b455b189f7fc3" integrity sha512-WWC0ZuMzCyDHYCasEGs4IPvLyTGftYwh6wIEOULOF0HXcqZlhwRzrK0w2VUlxWA98xnvb/jszw4ZSkJ6ADpM6Q== -markdown-table@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-2.0.0.tgz#194a90ced26d31fe753d8b9434430214c011865b" - integrity sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A== - dependencies: - repeat-string "^1.0.0" - markdown-table@^3.0.0: version "3.0.3" resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-3.0.3.tgz#e6331d30e493127e031dd385488b5bd326e4a6bd" @@ -11050,13 +10841,6 @@ mathml-tag-names@^2.1.3: resolved "https://registry.yarnpkg.com/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz#4ddadd67308e780cf16a47685878ee27b736a0a3" integrity sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg== -mdast-util-compact@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/mdast-util-compact/-/mdast-util-compact-2.0.1.tgz#cabc69a2f43103628326f35b1acf735d55c99490" - integrity sha512-7GlnT24gEwDrdAwEHrU4Vv5lLWrEer4KOkAiKT9nYstsTad7Oc1TwqT2zIMKRdZF7cTuaf+GA1E4Kv7jJh8mPA== - dependencies: - unist-util-visit "^2.0.0" - mdast-util-definitions@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz#c5c1a84db799173b4dcf7643cda999e440c24db2" @@ -12134,7 +11918,7 @@ minimatch@3.0.5: dependencies: brace-expansion "^1.1.7" -minimatch@3.1.2, minimatch@^3.0.2, minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: +minimatch@3.1.2, minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== @@ -12411,7 +12195,7 @@ negotiator@0.6.3, negotiator@^0.6.2, negotiator@^0.6.3: resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== -neo-async@^2.5.0, neo-async@^2.6.0, neo-async@^2.6.2: +neo-async@^2.6.0, neo-async@^2.6.2: version "2.6.2" resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== @@ -12456,13 +12240,6 @@ node-addon-api@^6.1.0: resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-6.1.0.tgz#ac8470034e58e67d0c6f1204a18ae6995d9c0d76" integrity sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA== -node-dir@^0.1.17: - version "0.1.17" - resolved "https://registry.yarnpkg.com/node-dir/-/node-dir-0.1.17.tgz#5f5665d93351335caabef8f1c554516cf5f1e4e5" - integrity sha512-tmPX422rYgofd4epzrNoOXiE8XFZYOcCq1vD7MAXCDO+O+zndlA2ztdKKMa+EeuBG5tHETpr4ml4RGgpqDCCAg== - dependencies: - minimatch "^3.0.2" - node-emoji@^1.10.0: version "1.11.0" resolved "https://registry.yarnpkg.com/node-emoji/-/node-emoji-1.11.0.tgz#69a0150e6946e2f115e9d7ea4df7971e2628301c" @@ -13452,11 +13229,6 @@ periscopic@^3.0.0: estree-walker "^3.0.0" is-reference "^3.0.0" -picocolors@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-0.2.1.tgz#570670f793646851d1ba135996962abad587859f" - integrity sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA== - picocolors@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" @@ -13497,18 +13269,11 @@ pify@^4.0.1: resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== -pirates@^4.0.1, pirates@^4.0.4, pirates@^4.0.5: +pirates@^4.0.1, pirates@^4.0.4: version "4.0.6" resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9" integrity sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg== -pkg-dir@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" - integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== - dependencies: - find-up "^3.0.0" - pkg-dir@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" @@ -13588,14 +13353,6 @@ postcss-discard-unused@^5.1.0: dependencies: postcss-selector-parser "^6.0.5" -postcss-js@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/postcss-js/-/postcss-js-2.0.3.tgz#a96f0f23ff3d08cec7dc5b11bf11c5f8077cdab9" - integrity sha512-zS59pAk3deu6dVHyrGqmC3oDXBdNdajk4k1RyxeVXCrcEDBUBHoIhE4QTsmhxgzXxsaqFDAkUZfmMa5f/N/79w== - dependencies: - camelcase-css "^2.0.1" - postcss "^7.0.18" - postcss-loader@^7.3.3: version "7.3.3" resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-7.3.3.tgz#6da03e71a918ef49df1bb4be4c80401df8e249dd" @@ -13839,14 +13596,6 @@ postcss-zindex@^5.1.0: resolved "https://registry.yarnpkg.com/postcss-zindex/-/postcss-zindex-5.1.0.tgz#4a5c7e5ff1050bd4c01d95b1847dfdcc58a496ff" integrity sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A== -postcss@^7.0.18, postcss@^7.0.39: - version "7.0.39" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.39.tgz#9624375d965630e2e1f2c02a935c82a59cb48309" - integrity sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA== - dependencies: - picocolors "^0.2.1" - source-map "^0.6.1" - postcss@^8.2.x, postcss@^8.4.17, postcss@^8.4.19, postcss@^8.4.21, postcss@^8.4.26: version "8.4.31" resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.31.tgz#92b451050a9f914da6755af352bdc0192508656d" @@ -14012,7 +13761,7 @@ prop-types@^15.0.0, prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1: object-assign "^4.1.1" react-is "^16.13.1" -property-information@^5.0.0, property-information@^5.5.0: +property-information@^5.0.0: version "5.6.0" resolved "https://registry.yarnpkg.com/property-information/-/property-information-5.6.0.tgz#61675545fb23002f245c6540ec46077d4da3ed69" integrity sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA== @@ -14187,11 +13936,6 @@ rc@1.2.8, rc@^1.2.7: minimist "^1.2.0" strip-json-comments "~2.0.1" -react-attr-converter@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/react-attr-converter/-/react-attr-converter-0.3.1.tgz#4a2abf6d907b7ddae4d862dfec80e489ce41ad6e" - integrity sha512-dSxo2Mn6Zx4HajeCeQNLefwEO4kNtV/0E682R1+ZTyFRPqxDa5zYb5qM/ocqw9Bxr/kFQO0IUiqdV7wdHw+Cdg== - react-base16-styling@~0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/react-base16-styling/-/react-base16-styling-0.6.0.tgz#ef2156d66cf4139695c8a167886cb69ea660792c" @@ -14539,26 +14283,6 @@ reading-time@^1.5.0: resolved "https://registry.yarnpkg.com/reading-time/-/reading-time-1.5.0.tgz#d2a7f1b6057cb2e169beaf87113cc3411b5bc5bb" integrity sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg== -recast@^0.20.3: - version "0.20.5" - resolved "https://registry.yarnpkg.com/recast/-/recast-0.20.5.tgz#8e2c6c96827a1b339c634dd232957d230553ceae" - integrity sha512-E5qICoPoNL4yU0H0NoBDntNB0Q5oMSNh9usFctYniLBluTthi3RsQVBXIJNbApOlvSwW/RGxIuokPcAc59J5fQ== - dependencies: - ast-types "0.14.2" - esprima "~4.0.0" - source-map "~0.6.1" - tslib "^2.0.1" - -recast@^0.21.0: - version "0.21.5" - resolved "https://registry.yarnpkg.com/recast/-/recast-0.21.5.tgz#e8cd22bb51bcd6130e54f87955d33a2b2e57b495" - integrity sha512-hjMmLaUXAm1hIuTqOdeYObMslq/q+Xff6QE3Y2P+uoHAg2nmVlLBps2hzh1UJDdMtDTMXOFewK6ky51JQIeECg== - dependencies: - ast-types "0.15.2" - esprima "~4.0.0" - source-map "~0.6.1" - tslib "^2.0.1" - rechoir@^0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" @@ -14705,14 +14429,6 @@ rehype-katex@^6.0.3: katex "^0.16.0" unist-util-visit "^4.0.0" -rehype-parse@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/rehype-parse/-/rehype-parse-7.0.1.tgz#58900f6702b56767814afc2a9efa2d42b1c90c57" - integrity sha512-fOiR9a9xH+Le19i4fGzIEowAbwG7idy2Jzs4mOrFWBSJ0sNUgy0ev871dwWnbOo371SjgjG4pwzrbgSVrKxecw== - dependencies: - hast-util-from-parse5 "^6.0.0" - parse5 "^6.0.0" - rehype-raw@^6.1.1: version "6.1.1" resolved "https://registry.yarnpkg.com/rehype-raw/-/rehype-raw-6.1.1.tgz#81bbef3793bd7abacc6bf8335879d1b6c868c9d4" @@ -14848,26 +14564,6 @@ remark-stringify@^10.0.0: mdast-util-to-markdown "^1.0.0" unified "^10.0.0" -remark-stringify@^8.1.1: - version "8.1.1" - resolved "https://registry.yarnpkg.com/remark-stringify/-/remark-stringify-8.1.1.tgz#e2a9dc7a7bf44e46a155ec78996db896780d8ce5" - integrity sha512-q4EyPZT3PcA3Eq7vPpT6bIdokXzFGp9i85igjmhRyXWmPs0Y6/d2FYwUNotKAWyLch7g0ASZJn/KHHcHZQ163A== - dependencies: - ccount "^1.0.0" - is-alphanumeric "^1.0.0" - is-decimal "^1.0.0" - is-whitespace-character "^1.0.0" - longest-streak "^2.0.1" - markdown-escapes "^1.0.0" - markdown-table "^2.0.0" - mdast-util-compact "^2.0.0" - parse-entities "^2.0.0" - repeat-string "^1.5.4" - state-toggle "^1.0.0" - stringify-entities "^3.0.0" - unherit "^1.0.4" - xtend "^4.0.1" - remark@^14.0.3: version "14.0.3" resolved "https://registry.yarnpkg.com/remark/-/remark-14.0.3.tgz#e477886a7579df612908f387c7753dc93cdaa3fc" @@ -14889,7 +14585,7 @@ renderkid@^3.0.0: lodash "^4.17.21" strip-ansi "^6.0.1" -repeat-string@^1.0.0, repeat-string@^1.5.4, repeat-string@^1.6.1: +repeat-string@^1.5.4, repeat-string@^1.6.1: version "1.6.1" resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== @@ -15035,13 +14731,6 @@ rimraf@^4.4.1: dependencies: glob "^9.2.0" -rimraf@~2.6.2: - version "2.6.3" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" - integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== - dependencies: - glob "^7.1.3" - robust-predicates@^3.0.0: version "3.0.2" resolved "https://registry.yarnpkg.com/robust-predicates/-/robust-predicates-3.0.2.tgz#d5b28528c4824d20fc48df1928d41d9efa1ad771" @@ -15605,7 +15294,7 @@ source-map-support@0.5.13: buffer-from "^1.0.0" source-map "^0.6.0" -source-map-support@^0.5.16, source-map-support@~0.5.20: +source-map-support@~0.5.20: version "0.5.21" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== @@ -15881,7 +15570,7 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -stringify-entities@^3.0.0, stringify-entities@^3.0.1: +stringify-entities@^3.0.1: version "3.1.0" resolved "https://registry.yarnpkg.com/stringify-entities/-/stringify-entities-3.1.0.tgz#b8d3feac256d9ffcc9fa1fefdcf3ca70576ee903" integrity sha512-3FP+jGMmMV/ffZs86MoghGqAoqXAdxLrJP4GUdrDN1aIScYih5tuIO3eF4To5AJZ79KDZ8Fpdy7QJnK8SsL1Vg== @@ -16255,13 +15944,6 @@ temp-dir@^2.0.0: resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-2.0.0.tgz#bde92b05bdfeb1516e804c9c00ad45177f31321e" integrity sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg== -temp@^0.8.4: - version "0.8.4" - resolved "https://registry.yarnpkg.com/temp/-/temp-0.8.4.tgz#8c97a33a4770072e0a05f919396c7665a7dd59f2" - integrity sha512-s0ZZzd0BzYv5tLSptZooSjK8oj6C+c19p7Vqta9+6NPOf7r+fxq0cJe6/oN4LTC79sy5NY8ucOJNgwsKCSbfqg== - dependencies: - rimraf "~2.6.2" - tempy@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/tempy/-/tempy-1.0.0.tgz#4f192b3ee3328a2684d0e3fc5c491425395aab65" @@ -16535,7 +16217,7 @@ tslib@^1.8.1: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.0.1, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.3.0, tslib@^2.4.0, tslib@^2.6.0: +tslib@^2.0.3, tslib@^2.1.0, tslib@^2.3.0, tslib@^2.4.0, tslib@^2.6.0: version "2.6.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.0.tgz#b295854684dbda164e181d259a22cd779dcd7bc3" integrity sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA== @@ -17190,7 +16872,7 @@ vary@~1.1.2: resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== -vfile-location@^3.0.0, vfile-location@^3.2.0: +vfile-location@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-3.2.0.tgz#d8e41fbcbd406063669ebf6c33d56ae8721d0f3c" integrity sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA== @@ -17325,11 +17007,6 @@ wcwidth@^1.0.0, wcwidth@^1.0.1: dependencies: defaults "^1.0.3" -web-namespaces@^1.0.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-1.1.4.tgz#bc98a3de60dadd7faefc403d1076d529f5e030ec" - integrity sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw== - web-namespaces@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-2.0.1.tgz#1010ff7c650eccb2592cebeeaf9a1b253fd40692" @@ -17788,7 +17465,7 @@ write-file-atomic@4.0.1: imurmurhash "^0.1.4" signal-exit "^3.0.7" -write-file-atomic@^2.3.0, write-file-atomic@^2.4.2: +write-file-atomic@^2.4.2: version "2.4.3" resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481" integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==