From e7e9fa78e02db244e1990d0c3be5f402ab18dab1 Mon Sep 17 00:00:00 2001 From: Josh-Cena Date: Fri, 18 Jun 2021 21:23:07 +0800 Subject: [PATCH] Prefer non-null assertions Signed-off-by: Josh-Cena --- .eslintrc.js | 1 + packages/docusaurus-plugin-content-blog/src/blogUtils.ts | 2 +- .../src/client/docsClientUtils.ts | 2 +- packages/docusaurus-plugin-content-docs/src/index.ts | 4 +--- .../src/sidebarItemsGenerator.ts | 2 +- packages/docusaurus-theme-classic/src/translations.ts | 6 +++--- packages/docusaurus/src/server/index.ts | 2 +- 7 files changed, 9 insertions(+), 10 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index 0220596f34..d8b5a7e683 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -92,6 +92,7 @@ module.exports = { 'no-unused-vars': OFF, 'no-nested-ternary': WARNING, '@typescript-eslint/no-empty-function': OFF, + '@typescript-eslint/no-non-null-assertion': OFF, // Have to use type assertion anyways '@typescript-eslint/no-unused-vars': [ERROR, {argsIgnorePattern: '^_'}], '@typescript-eslint/ban-ts-comment': [ ERROR, diff --git a/packages/docusaurus-plugin-content-blog/src/blogUtils.ts b/packages/docusaurus-plugin-content-blog/src/blogUtils.ts index 9a0ab75d5f..b675a9684a 100644 --- a/packages/docusaurus-plugin-content-blog/src/blogUtils.ts +++ b/packages/docusaurus-plugin-content-blog/src/blogUtils.ts @@ -32,7 +32,7 @@ import {LoadContext} from '@docusaurus/types'; import {validateBlogPostFrontMatter} from './blogFrontMatter'; export function truncate(fileString: string, truncateMarker: RegExp): string { - return fileString.split(truncateMarker, 1).shift() as string; + return fileString.split(truncateMarker, 1).shift()!; } export function getSourceToPermalink( diff --git a/packages/docusaurus-plugin-content-docs/src/client/docsClientUtils.ts b/packages/docusaurus-plugin-content-docs/src/client/docsClientUtils.ts index ec8f92d401..8e2e7d6645 100644 --- a/packages/docusaurus-plugin-content-docs/src/client/docsClientUtils.ts +++ b/packages/docusaurus-plugin-content-docs/src/client/docsClientUtils.ts @@ -75,7 +75,7 @@ export type ActiveDocContext = { }; export const getLatestVersion = (data: GlobalPluginData): Version => { - return data.versions.find((version) => version.isLast) as GlobalVersion; + return data.versions.find((version) => version.isLast)!; }; // Note: return undefined on doc-unrelated pages, diff --git a/packages/docusaurus-plugin-content-docs/src/index.ts b/packages/docusaurus-plugin-content-docs/src/index.ts index 2e9e75cd3c..e836ca3026 100644 --- a/packages/docusaurus-plugin-content-docs/src/index.ts +++ b/packages/docusaurus-plugin-content-docs/src/index.ts @@ -253,9 +253,7 @@ export default function pluginContentDocs( if (versionHomeDoc) { return versionHomeDoc; } else if (firstDocIdOfFirstSidebar) { - return docs.find( - (doc) => doc.id === firstDocIdOfFirstSidebar, - ) as DocMetadata; + return docs.find((doc) => doc.id === firstDocIdOfFirstSidebar)!; } else { return docs[0]; } diff --git a/packages/docusaurus-plugin-content-docs/src/sidebarItemsGenerator.ts b/packages/docusaurus-plugin-content-docs/src/sidebarItemsGenerator.ts index 2a2b13faf0..da80765cde 100644 --- a/packages/docusaurus-plugin-content-docs/src/sidebarItemsGenerator.ts +++ b/packages/docusaurus-plugin-content-docs/src/sidebarItemsGenerator.ts @@ -97,7 +97,7 @@ function parseBreadcrumb( ): {parents: string[]; tail: string} { return { parents: take(breadcrumb, breadcrumb.length - 1), - tail: last(breadcrumb) as string, + tail: last(breadcrumb)!, }; } diff --git a/packages/docusaurus-theme-classic/src/translations.ts b/packages/docusaurus-theme-classic/src/translations.ts index c15b4f5e4f..191c3a4297 100644 --- a/packages/docusaurus-theme-classic/src/translations.ts +++ b/packages/docusaurus-theme-classic/src/translations.ts @@ -35,7 +35,7 @@ function getNavbarTranslationFile(navbar: Navbar): TranslationFileContent { ) .keyBy((navbarItem) => `item.label.${navbarItem.label}`) .mapValues((navbarItem) => ({ - message: navbarItem.label as string, + message: navbarItem.label!, description: `Navbar item with label ${navbarItem.label}`, })) .value(); @@ -78,7 +78,7 @@ function getFooterTranslationFile(footer: Footer): TranslationFileContent { ) .keyBy((link) => `link.title.${link.title}`) .mapValues((link) => ({ - message: link.title as string, + message: link.title!, description: `The title of the footer links column with title=${link.title} in the footer`, })) .value(); @@ -90,7 +90,7 @@ function getFooterTranslationFile(footer: Footer): TranslationFileContent { ) .keyBy((linkItem) => `link.item.label.${linkItem.label}`) .mapValues((linkItem) => ({ - message: linkItem.label as string, + message: linkItem.label!, description: `The label of footer link with label=${ linkItem.label } linking to ${linkItem.to ?? linkItem.href}`, diff --git a/packages/docusaurus/src/server/index.ts b/packages/docusaurus/src/server/index.ts index 85374da4e5..2b94bdf6d7 100644 --- a/packages/docusaurus/src/server/index.ts +++ b/packages/docusaurus/src/server/index.ts @@ -309,7 +309,7 @@ ${Object.keys(registry) const siteMetadata: DocusaurusSiteMetadata = { docusaurusVersion: getPackageJsonVersion( join(__dirname, '../../package.json'), - ) as string, + )!, siteVersion: getPackageJsonVersion(join(siteDir, 'package.json')), pluginVersions: {}, };