This is an automated email from the ASF dual-hosted git repository.

juzhiyuan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/apisix-website.git


The following commit(s) were added to refs/heads/master by this push:
     new 5547136e403 fix: add page titles (#1208)
5547136e403 is described below

commit 5547136e403b7ec1a00367a97bf99fc088512fc3
Author: Young <[email protected]>
AuthorDate: Tue Jul 12 15:28:32 2022 +0800

    fix: add page titles (#1208)
---
 scripts/generate-repos-info.js       |  8 ++++----
 website/src/pages/docs.tsx           |  6 +++---
 website/src/pages/downloads.tsx      |  4 ++--
 website/src/pages/help.tsx           |  4 ++--
 website/src/pages/plugins.tsx        | 31 ++++++++++++-------------------
 website/src/pages/showcase/index.tsx | 11 ++++++-----
 website/src/pages/team.tsx           | 10 ++++++----
 7 files changed, 35 insertions(+), 39 deletions(-)

diff --git a/scripts/generate-repos-info.js b/scripts/generate-repos-info.js
index 54121b29d62..ff555192f44 100644
--- a/scripts/generate-repos-info.js
+++ b/scripts/generate-repos-info.js
@@ -8,6 +8,9 @@ const axiosConfig = {
   headers: {
     'content-type': 'application/json',
     Accept: 'application/vnd.github.v3+json',
+    ...(process.env.GITHUB_TOKEN
+      ? { Authorization: `token ${process.env.GITHUB_TOKEN}` }
+      : {}),
   },
 };
 
@@ -59,10 +62,7 @@ const tasks = new Listr([
   },
   {
     title: `Save repos' info and good first issues to json file`,
-    task: () => fs.writeFile(
-      '../website/config/repos-info.json',
-      JSON.stringify(res),
-    ),
+    task: () => fs.writeFile('../website/config/repos-info.json', 
JSON.stringify(res)),
   },
 ]);
 
diff --git a/website/src/pages/docs.tsx b/website/src/pages/docs.tsx
index 50a73689703..ea89ccca950 100644
--- a/website/src/pages/docs.tsx
+++ b/website/src/pages/docs.tsx
@@ -4,7 +4,7 @@ import styled from 'styled-components';
 import Layout from '@theme/Layout';
 import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
 
-import Translate from '@docusaurus/Translate';
+import Translate, { translate } from '@docusaurus/Translate';
 
 import IconTriangle from '../assets/icons/triangle.svg';
 import IconSquare from '../assets/icons/square.svg';
@@ -168,7 +168,7 @@ const ProjectCard: FC<ProjectCardProps> = (props) => {
 
 const Docs: FC = () => {
   const { siteConfig } = useDocusaurusContext();
-  const docs = siteConfig.customFields.docs as DocInfo[] | null;
+  const { docs } = siteConfig.customFields as { docs: DocInfo[] };
 
   if (!docs?.length) {
     return null;
@@ -176,7 +176,7 @@ const Docs: FC = () => {
   const projects = docs.map((project) => <ProjectCard key={project.name} 
{...project} />);
 
   return (
-    <Layout>
+    <Layout title={translate({ message: 'Documentation' })}>
       <Page>
         <PageTitle>
           <Translate id="docs.webpage.title.Document">Documentation</Translate>
diff --git a/website/src/pages/downloads.tsx b/website/src/pages/downloads.tsx
index 99fe5b4d6cf..bd673e4e808 100644
--- a/website/src/pages/downloads.tsx
+++ b/website/src/pages/downloads.tsx
@@ -6,7 +6,7 @@ import CodeBlock from '@theme/CodeBlock';
 
 import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
 
-import Translate from '@docusaurus/Translate';
+import Translate, { translate } from '@docusaurus/Translate';
 import type { DownloadInfo } from '../components/ProjectCard';
 import ProjectCard from '../components/ProjectCard';
 
@@ -56,7 +56,7 @@ const DownloadCards: FC = () => {
 };
 
 const Downloads: FC = () => (
-  <Layout>
+  <Layout title={translate({ message: 'Downloads' })}>
     <DownloadsPage>
       <PageTitle><Translate 
id="download.website.title">Downloads</Translate></PageTitle>
       <PageSubtitle><Translate id="download.website.subtitle">We love open 
source.</Translate></PageSubtitle>
diff --git a/website/src/pages/help.tsx b/website/src/pages/help.tsx
index f773eb8a3f5..6eb84007c48 100644
--- a/website/src/pages/help.tsx
+++ b/website/src/pages/help.tsx
@@ -3,7 +3,7 @@ import React from 'react';
 import styled from 'styled-components';
 import Layout from '@theme/Layout';
 
-import Translate from '@docusaurus/Translate';
+import Translate, { translate } from '@docusaurus/Translate';
 
 import { LazyLoadImage } from 'react-lazy-load-image-component';
 import ChevronRight from '../assets/icons/chevron-right.svg';
@@ -26,7 +26,7 @@ const Page = styled.div`
 `;
 
 const Help: FC = () => (
-  <Layout>
+  <Layout title={translate({ message: 'Help' })}>
     <Page className="help-page">
       <PageTitle><Translate id="help.website.title">NEED 
HELP?</Translate></PageTitle>
       <PageSubtitle>
diff --git a/website/src/pages/plugins.tsx b/website/src/pages/plugins.tsx
index 20466fe2ab9..c3df85c49c9 100644
--- a/website/src/pages/plugins.tsx
+++ b/website/src/pages/plugins.tsx
@@ -15,14 +15,15 @@
  * limitations under the License.
  */
 import type { FC } from 'react';
-import React, { useEffect } from 'react';
+import React from 'react';
 import styled from 'styled-components';
 
 import Layout from '@theme/Layout';
-import Translate from '@docusaurus/Translate';
+import Translate, { translate } from '@docusaurus/Translate';
 
 import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
 
+import Head from '@docusaurus/Head';
 import Affix from '../components/UI/Affix';
 
 const PageTitle = styled.h1`
@@ -190,26 +191,15 @@ const SBeta = styled.div`
 `;
 
 const Plugins: FC = () => {
-  useEffect(() => {
-    const script = document.createElement('script');
-    script.type = 'text/javascript';
-    script.async = true;
-    script.src = '/js/plugin-icon.js';
-    document.head.appendChild(script);
-  }, []);
   const { siteConfig } = useDocusaurusContext();
-  const sidebar = siteConfig.customFields.plugins.map((section) => (
+  const { plugins = [] } = siteConfig.customFields as { plugins: any[] };
+  const sidebar = plugins.map((section) => (
     <SidebarItem key={section.groupName}><a className="sidebar-link" 
href={`#${section.groupName}`}>{section.groupName}</a></SidebarItem>
   ));
 
-  const plugins = siteConfig.customFields.plugins.map((section) => {
+  const pluginList = plugins.map((section) => {
     const pluginCards = section.plugins.map((plugin) => {
-      let pluginUrl;
-      if (plugin.name.indexOf('serverless') !== -1) {
-        pluginUrl = 'serverless';
-      } else {
-        pluginUrl = plugin.name;
-      }
+      const pluginUrl = plugin.name.indexOf('serverless') !== -1 ? 
'serverless' : plugin.name;
       return (
         <div key={plugin.name}>
           <PluginCard href={plugin.beta ? 
`/docs/apisix/next/plugins/${pluginUrl}` : `/docs/apisix/plugins/${pluginUrl}`} 
target="_blank">
@@ -243,7 +233,10 @@ const Plugins: FC = () => {
   });
 
   return (
-    <Layout>
+    <Layout title={translate({ message: 'Plugin Hub' })}>
+      <Head>
+        <script src="/js/plugin-icon.js" defer />
+      </Head>
       <Page>
         <PageTitle>
           <Translate id="plugins.website.title">Apache APISIX®️ Plugin 
Hub</Translate>
@@ -257,7 +250,7 @@ const Plugins: FC = () => {
         >
           <SidebarContainer>{sidebar}</SidebarContainer>
         </Affix>
-        {plugins}
+        {pluginList}
       </Page>
     </Layout>
   );
diff --git a/website/src/pages/showcase/index.tsx 
b/website/src/pages/showcase/index.tsx
index 13eb8428260..47910dbda41 100644
--- a/website/src/pages/showcase/index.tsx
+++ b/website/src/pages/showcase/index.tsx
@@ -1,7 +1,7 @@
 import type { FC } from 'react';
 import React from 'react';
 import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
-import Translate from '@docusaurus/Translate';
+import Translate, { translate } from '@docusaurus/Translate';
 
 import Layout from '@theme/Layout';
 import './styles.scss';
@@ -57,10 +57,11 @@ const UserCard: FC<UserCardProps> = (props) => {
 
 const Content: FC = () => {
   const { siteConfig } = useDocusaurusContext();
-  if (!(siteConfig.customFields.showcases || []).length) {
+  const { showcases = [] } = siteConfig.customFields as { showcases: 
UserCardProps[] };
+  if (!showcases.length) {
     return null;
   }
-  const showcases = siteConfig.customFields.showcases.map((user) => (
+  const showcaseList = showcases.map((user) => (
     <div className="col col--2 item" key={user.infoLink}>
       <UserCard
         image={`https://static.apiseven.com/202202/${user.image}`}
@@ -72,13 +73,13 @@ const Content: FC = () => {
 
   return (
     <div className="row content">
-      {showcases}
+      {showcaseList}
     </div>
   );
 };
 
 const Showcase: FC = () => (
-  <Layout>
+  <Layout title={translate({ message: 'ShowCase' })}>
     <Container>
       <Header />
       <Content />
diff --git a/website/src/pages/team.tsx b/website/src/pages/team.tsx
index 2fed0804c6e..25692fd194b 100644
--- a/website/src/pages/team.tsx
+++ b/website/src/pages/team.tsx
@@ -4,7 +4,7 @@ import styled from 'styled-components';
 import Layout from '@theme/Layout';
 import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
 
-import Translate from '@docusaurus/Translate';
+import Translate, { translate } from '@docusaurus/Translate';
 
 import GitHubLogo from '../assets/icons/github-logo.svg';
 import IconCode from '../assets/icons/code.svg';
@@ -246,7 +246,9 @@ const ContributeCardRightSide = styled.div`
 
 const Team: FC = () => {
   const { siteConfig } = useDocusaurusContext();
-  const memberSections = (siteConfig.customFields.team as any).map((section) 
=> {
+  const { team, allRepos } = siteConfig.customFields as { team: any[]; 
allRepos: any[] };
+
+  const memberSections = team.map((section) => {
     const memberCards = section.members.map((member) => (
       <div key={member.username}>
         <MemberCard
@@ -271,7 +273,7 @@ const Team: FC = () => {
       </div>
     );
   });
-  const repoComponents = (siteConfig.customFields.allRepos as any).map((repo) 
=> (
+  const repoComponents = allRepos.map((repo) => (
     <RepoCard
       className="team-repocard"
       href={`https://github.com/${repo}/graphs/contributors`}
@@ -284,7 +286,7 @@ const Team: FC = () => {
     </RepoCard>
   ));
   return (
-    <Layout>
+    <Layout title={translate({ message: 'Team' })}>
       <Page>
         <PageTitle><Translate 
id="team.webpage.title.Team">Team</Translate></PageTitle>
         <PageSubtitle><Translate id="team.webpage.title.DocumentSubtitle">We 
love open source.</Translate></PageSubtitle>

Reply via email to