From f139e96dd136bb2004cdb2cf402a911b3c207ab4 Mon Sep 17 00:00:00 2001 From: Chaiwat Trisuwan Date: Tue, 2 Aug 2022 02:27:42 +0700 Subject: [PATCH 01/11] chore: add typescript and update deps --- examples/cms-wordpress/package.json | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/examples/cms-wordpress/package.json b/examples/cms-wordpress/package.json index 8715585cc30a..4ca98678fb7e 100644 --- a/examples/cms-wordpress/package.json +++ b/examples/cms-wordpress/package.json @@ -7,11 +7,15 @@ "lint": "next lint" }, "dependencies": { - "classnames": "2.3.1", - "date-fns": "2.28.0", + "@types/node": "^18.6.3", + "@types/react": "^18.0.15", + "@types/react-dom": "^18.0.6", + "classnames": "^2.3.1", + "date-fns": "^2.28.0", "next": "latest", - "react": "^18.1.0", - "react-dom": "^18.1.0" + "react": "^18.2.0", + "react-dom": "^18.2.0", + "typescript": "^4.7.4" }, "devDependencies": { "autoprefixer": "10.4.7", From 95628a783892586c4d83e8c8cc74c1707f27795c Mon Sep 17 00:00:00 2001 From: Chaiwat Trisuwan Date: Tue, 2 Aug 2022 16:51:17 +0700 Subject: [PATCH 02/11] style: add tsconfig --- examples/cms-wordpress/tsconfig.json | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 examples/cms-wordpress/tsconfig.json diff --git a/examples/cms-wordpress/tsconfig.json b/examples/cms-wordpress/tsconfig.json new file mode 100644 index 000000000000..b8d597880a1a --- /dev/null +++ b/examples/cms-wordpress/tsconfig.json @@ -0,0 +1,20 @@ +{ + "compilerOptions": { + "target": "es5", + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": false, + "forceConsistentCasingInFileNames": true, + "noEmit": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "node", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "preserve", + "incremental": true + }, + "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"], + "exclude": ["node_modules"] +} From 21b9e18c2f174b688dff6ab7c5af6b80da413f52 Mon Sep 17 00:00:00 2001 From: Chaiwat Trisuwan Date: Tue, 2 Aug 2022 16:52:00 +0700 Subject: [PATCH 03/11] chore: add g.avatar.com domain --- examples/cms-wordpress/next.config.js | 1 + 1 file changed, 1 insertion(+) diff --git a/examples/cms-wordpress/next.config.js b/examples/cms-wordpress/next.config.js index 25f663861686..2757a87929c7 100644 --- a/examples/cms-wordpress/next.config.js +++ b/examples/cms-wordpress/next.config.js @@ -9,6 +9,7 @@ module.exports = { images: { domains: [ process.env.WORDPRESS_API_URL.match(/(http(?:s)?:\/\/)(.*)/)[2], // Valid WP Image domain. + '1.gravatar.com', '2.gravatar.com', 'secure.gravatar.com', ], From 34b80e8025e4380147ebb5c03783c1e98b5e7329 Mon Sep 17 00:00:00 2001 From: Chaiwat Trisuwan Date: Tue, 2 Aug 2022 17:43:54 +0700 Subject: [PATCH 04/11] fix: images domain api url to match with hostname --- examples/cms-wordpress/next.config.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/cms-wordpress/next.config.js b/examples/cms-wordpress/next.config.js index 2757a87929c7..024d82d03d0c 100644 --- a/examples/cms-wordpress/next.config.js +++ b/examples/cms-wordpress/next.config.js @@ -8,7 +8,7 @@ if (!process.env.WORDPRESS_API_URL) { module.exports = { images: { domains: [ - process.env.WORDPRESS_API_URL.match(/(http(?:s)?:\/\/)(.*)/)[2], // Valid WP Image domain. + process.env.WORDPRESS_API_URL.match(/http(?:s)?:\/\/(.[^/]+)/)[1], // Valid WP Image domain. '1.gravatar.com', '2.gravatar.com', 'secure.gravatar.com', From 85c230a1ef5e3e33dd7174327792f52ca92e666b Mon Sep 17 00:00:00 2001 From: Chaiwat Trisuwan Date: Tue, 2 Aug 2022 18:24:44 +0700 Subject: [PATCH 05/11] style: convert files to typescript --- .../components/{alert.js => alert.tsx} | 0 examples/cms-wordpress/components/avatar.js | 23 ------------------- .../{categories.js => categories.tsx} | 0 .../{container.js => container.tsx} | 0 .../{cover-image.js => cover-image.tsx} | 0 .../components/{date.js => date.tsx} | 0 .../components/{footer.js => footer.tsx} | 0 .../components/{header.js => header.tsx} | 0 .../{hero-post.js => hero-post.tsx} | 6 ++--- .../components/{intro.js => intro.tsx} | 0 .../components/{layout.js => layout.tsx} | 6 ++--- .../components/{meta.js => meta.tsx} | 0 .../{more-stories.js => more-stories.tsx} | 2 +- .../{post-body.js => post-body.tsx} | 0 .../{post-header.js => post-header.tsx} | 10 ++++---- .../{post-preview.js => post-preview.tsx} | 4 ++-- .../{post-title.js => post-title.tsx} | 0 ...ion-separator.js => section-separator.tsx} | 0 .../components/{tags.js => tags.tsx} | 0 examples/cms-wordpress/lib/{api.js => api.ts} | 0 .../lib/{constants.js => constants.ts} | 0 .../cms-wordpress/pages/{_app.js => _app.tsx} | 3 ++- .../pages/{_document.js => _document.tsx} | 0 .../api/{exit-preview.js => exit-preview.ts} | 4 +++- .../pages/api/{preview.js => preview.ts} | 6 ++++- .../pages/{index.js => index.tsx} | 3 ++- .../pages/posts/{[slug].js => [slug].tsx} | 17 +++++++++----- 27 files changed, 37 insertions(+), 47 deletions(-) rename examples/cms-wordpress/components/{alert.js => alert.tsx} (100%) delete mode 100644 examples/cms-wordpress/components/avatar.js rename examples/cms-wordpress/components/{categories.js => categories.tsx} (100%) rename examples/cms-wordpress/components/{container.js => container.tsx} (100%) rename examples/cms-wordpress/components/{cover-image.js => cover-image.tsx} (100%) rename examples/cms-wordpress/components/{date.js => date.tsx} (100%) rename examples/cms-wordpress/components/{footer.js => footer.tsx} (100%) rename examples/cms-wordpress/components/{header.js => header.tsx} (100%) rename examples/cms-wordpress/components/{hero-post.js => hero-post.tsx} (88%) rename examples/cms-wordpress/components/{intro.js => intro.tsx} (100%) rename examples/cms-wordpress/components/{layout.js => layout.tsx} (66%) rename examples/cms-wordpress/components/{meta.js => meta.tsx} (100%) rename examples/cms-wordpress/components/{more-stories.js => more-stories.tsx} (92%) rename examples/cms-wordpress/components/{post-body.js => post-body.tsx} (100%) rename examples/cms-wordpress/components/{post-header.js => post-header.tsx} (74%) rename examples/cms-wordpress/components/{post-preview.js => post-preview.tsx} (91%) rename examples/cms-wordpress/components/{post-title.js => post-title.tsx} (100%) rename examples/cms-wordpress/components/{section-separator.js => section-separator.tsx} (100%) rename examples/cms-wordpress/components/{tags.js => tags.tsx} (100%) rename examples/cms-wordpress/lib/{api.js => api.ts} (100%) rename examples/cms-wordpress/lib/{constants.js => constants.ts} (100%) rename examples/cms-wordpress/pages/{_app.js => _app.tsx} (50%) rename examples/cms-wordpress/pages/{_document.js => _document.tsx} (100%) rename examples/cms-wordpress/pages/api/{exit-preview.js => exit-preview.ts} (66%) rename examples/cms-wordpress/pages/api/{preview.js => preview.ts} (88%) rename examples/cms-wordpress/pages/{index.js => index.tsx} (90%) rename examples/cms-wordpress/pages/posts/{[slug].js => [slug].tsx} (88%) diff --git a/examples/cms-wordpress/components/alert.js b/examples/cms-wordpress/components/alert.tsx similarity index 100% rename from examples/cms-wordpress/components/alert.js rename to examples/cms-wordpress/components/alert.tsx diff --git a/examples/cms-wordpress/components/avatar.js b/examples/cms-wordpress/components/avatar.js deleted file mode 100644 index ce849d82b517..000000000000 --- a/examples/cms-wordpress/components/avatar.js +++ /dev/null @@ -1,23 +0,0 @@ -import Image from 'next/image' - -export default function Avatar({ author }) { - const name = author - ? author.node.firstName && author.node.lastName - ? `${author.node.firstName} ${author.node.lastName}` - : author.node.name - : null - - return ( -
-
- {name} -
-
{name}
-
- ) -} diff --git a/examples/cms-wordpress/components/categories.js b/examples/cms-wordpress/components/categories.tsx similarity index 100% rename from examples/cms-wordpress/components/categories.js rename to examples/cms-wordpress/components/categories.tsx diff --git a/examples/cms-wordpress/components/container.js b/examples/cms-wordpress/components/container.tsx similarity index 100% rename from examples/cms-wordpress/components/container.js rename to examples/cms-wordpress/components/container.tsx diff --git a/examples/cms-wordpress/components/cover-image.js b/examples/cms-wordpress/components/cover-image.tsx similarity index 100% rename from examples/cms-wordpress/components/cover-image.js rename to examples/cms-wordpress/components/cover-image.tsx diff --git a/examples/cms-wordpress/components/date.js b/examples/cms-wordpress/components/date.tsx similarity index 100% rename from examples/cms-wordpress/components/date.js rename to examples/cms-wordpress/components/date.tsx diff --git a/examples/cms-wordpress/components/footer.js b/examples/cms-wordpress/components/footer.tsx similarity index 100% rename from examples/cms-wordpress/components/footer.js rename to examples/cms-wordpress/components/footer.tsx diff --git a/examples/cms-wordpress/components/header.js b/examples/cms-wordpress/components/header.tsx similarity index 100% rename from examples/cms-wordpress/components/header.js rename to examples/cms-wordpress/components/header.tsx diff --git a/examples/cms-wordpress/components/hero-post.js b/examples/cms-wordpress/components/hero-post.tsx similarity index 88% rename from examples/cms-wordpress/components/hero-post.js rename to examples/cms-wordpress/components/hero-post.tsx index 46d376e81ad6..2b13e48c6cd5 100644 --- a/examples/cms-wordpress/components/hero-post.js +++ b/examples/cms-wordpress/components/hero-post.tsx @@ -1,6 +1,6 @@ -import Avatar from '../components/avatar' -import Date from '../components/date' -import CoverImage from '../components/cover-image' +import Avatar from './avatar' +import Date from './date' +import CoverImage from './cover-image' import Link from 'next/link' export default function HeroPost({ diff --git a/examples/cms-wordpress/components/intro.js b/examples/cms-wordpress/components/intro.tsx similarity index 100% rename from examples/cms-wordpress/components/intro.js rename to examples/cms-wordpress/components/intro.tsx diff --git a/examples/cms-wordpress/components/layout.js b/examples/cms-wordpress/components/layout.tsx similarity index 66% rename from examples/cms-wordpress/components/layout.js rename to examples/cms-wordpress/components/layout.tsx index 99d95353131e..399802b095aa 100644 --- a/examples/cms-wordpress/components/layout.js +++ b/examples/cms-wordpress/components/layout.tsx @@ -1,6 +1,6 @@ -import Alert from '../components/alert' -import Footer from '../components/footer' -import Meta from '../components/meta' +import Alert from './alert' +import Footer from './footer' +import Meta from './meta' export default function Layout({ preview, children }) { return ( diff --git a/examples/cms-wordpress/components/meta.js b/examples/cms-wordpress/components/meta.tsx similarity index 100% rename from examples/cms-wordpress/components/meta.js rename to examples/cms-wordpress/components/meta.tsx diff --git a/examples/cms-wordpress/components/more-stories.js b/examples/cms-wordpress/components/more-stories.tsx similarity index 92% rename from examples/cms-wordpress/components/more-stories.js rename to examples/cms-wordpress/components/more-stories.tsx index 951fe76a1500..5304bfef424a 100644 --- a/examples/cms-wordpress/components/more-stories.js +++ b/examples/cms-wordpress/components/more-stories.tsx @@ -1,4 +1,4 @@ -import PostPreview from '../components/post-preview' +import PostPreview from './post-preview' export default function MoreStories({ posts }) { return ( diff --git a/examples/cms-wordpress/components/post-body.js b/examples/cms-wordpress/components/post-body.tsx similarity index 100% rename from examples/cms-wordpress/components/post-body.js rename to examples/cms-wordpress/components/post-body.tsx diff --git a/examples/cms-wordpress/components/post-header.js b/examples/cms-wordpress/components/post-header.tsx similarity index 74% rename from examples/cms-wordpress/components/post-header.js rename to examples/cms-wordpress/components/post-header.tsx index 3e8f08a93557..38eed04cda01 100644 --- a/examples/cms-wordpress/components/post-header.js +++ b/examples/cms-wordpress/components/post-header.tsx @@ -1,8 +1,8 @@ -import Avatar from '../components/avatar' -import Date from '../components/date' -import CoverImage from '../components/cover-image' -import PostTitle from '../components/post-title' -import Categories from '../components/categories' +import Avatar from './avatar' +import Date from './date' +import CoverImage from './cover-image' +import PostTitle from './post-title' +import Categories from './categories' export default function PostHeader({ title, diff --git a/examples/cms-wordpress/components/post-preview.js b/examples/cms-wordpress/components/post-preview.tsx similarity index 91% rename from examples/cms-wordpress/components/post-preview.js rename to examples/cms-wordpress/components/post-preview.tsx index ae313238e2e5..4f2d80be37a4 100644 --- a/examples/cms-wordpress/components/post-preview.js +++ b/examples/cms-wordpress/components/post-preview.tsx @@ -1,5 +1,5 @@ -import Avatar from '../components/avatar' -import Date from '../components/date' +import Avatar from './avatar' +import Date from './date' import CoverImage from './cover-image' import Link from 'next/link' diff --git a/examples/cms-wordpress/components/post-title.js b/examples/cms-wordpress/components/post-title.tsx similarity index 100% rename from examples/cms-wordpress/components/post-title.js rename to examples/cms-wordpress/components/post-title.tsx diff --git a/examples/cms-wordpress/components/section-separator.js b/examples/cms-wordpress/components/section-separator.tsx similarity index 100% rename from examples/cms-wordpress/components/section-separator.js rename to examples/cms-wordpress/components/section-separator.tsx diff --git a/examples/cms-wordpress/components/tags.js b/examples/cms-wordpress/components/tags.tsx similarity index 100% rename from examples/cms-wordpress/components/tags.js rename to examples/cms-wordpress/components/tags.tsx diff --git a/examples/cms-wordpress/lib/api.js b/examples/cms-wordpress/lib/api.ts similarity index 100% rename from examples/cms-wordpress/lib/api.js rename to examples/cms-wordpress/lib/api.ts diff --git a/examples/cms-wordpress/lib/constants.js b/examples/cms-wordpress/lib/constants.ts similarity index 100% rename from examples/cms-wordpress/lib/constants.js rename to examples/cms-wordpress/lib/constants.ts diff --git a/examples/cms-wordpress/pages/_app.js b/examples/cms-wordpress/pages/_app.tsx similarity index 50% rename from examples/cms-wordpress/pages/_app.js rename to examples/cms-wordpress/pages/_app.tsx index d56d9bf601a9..0c585d4bb479 100644 --- a/examples/cms-wordpress/pages/_app.js +++ b/examples/cms-wordpress/pages/_app.tsx @@ -1,6 +1,7 @@ +import { AppProps } from 'next/app' import '../styles/index.css' -function MyApp({ Component, pageProps }) { +function MyApp({ Component, pageProps }: AppProps) { return } diff --git a/examples/cms-wordpress/pages/_document.js b/examples/cms-wordpress/pages/_document.tsx similarity index 100% rename from examples/cms-wordpress/pages/_document.js rename to examples/cms-wordpress/pages/_document.tsx diff --git a/examples/cms-wordpress/pages/api/exit-preview.js b/examples/cms-wordpress/pages/api/exit-preview.ts similarity index 66% rename from examples/cms-wordpress/pages/api/exit-preview.js rename to examples/cms-wordpress/pages/api/exit-preview.ts index 6c63a0a6e8a4..567064d8aae1 100644 --- a/examples/cms-wordpress/pages/api/exit-preview.js +++ b/examples/cms-wordpress/pages/api/exit-preview.ts @@ -1,4 +1,6 @@ -export default async function exit(_, res) { +import { NextApiResponse } from 'next' + +export default async function exit(_, res: NextApiResponse) { // Exit the current user from "Preview Mode". This function accepts no args. res.clearPreviewData() diff --git a/examples/cms-wordpress/pages/api/preview.js b/examples/cms-wordpress/pages/api/preview.ts similarity index 88% rename from examples/cms-wordpress/pages/api/preview.js rename to examples/cms-wordpress/pages/api/preview.ts index c320af238b41..df5d6d9590b5 100644 --- a/examples/cms-wordpress/pages/api/preview.js +++ b/examples/cms-wordpress/pages/api/preview.ts @@ -1,6 +1,10 @@ +import type { NextApiRequest, NextApiResponse } from 'next' import { getPreviewPost } from '../../lib/api' -export default async function preview(req, res) { +export default async function preview( + req: NextApiRequest, + res: NextApiResponse +) { const { secret, id, slug } = req.query // Check the secret and next parameters diff --git a/examples/cms-wordpress/pages/index.js b/examples/cms-wordpress/pages/index.tsx similarity index 90% rename from examples/cms-wordpress/pages/index.js rename to examples/cms-wordpress/pages/index.tsx index de90321f3632..7d5f623210ab 100644 --- a/examples/cms-wordpress/pages/index.js +++ b/examples/cms-wordpress/pages/index.tsx @@ -1,4 +1,5 @@ import Head from 'next/head' +import { GetStaticProps } from 'next' import Container from '../components/container' import MoreStories from '../components/more-stories' import HeroPost from '../components/hero-post' @@ -34,7 +35,7 @@ export default function Index({ allPosts: { edges }, preview }) { ) } -export async function getStaticProps({ preview = false }) { +export const getStaticProps: GetStaticProps = async ({ preview = false }) => { const allPosts = await getAllPostsForHome(preview) return { diff --git a/examples/cms-wordpress/pages/posts/[slug].js b/examples/cms-wordpress/pages/posts/[slug].tsx similarity index 88% rename from examples/cms-wordpress/pages/posts/[slug].js rename to examples/cms-wordpress/pages/posts/[slug].tsx index ec8ca926f23a..93cd647e4ad5 100644 --- a/examples/cms-wordpress/pages/posts/[slug].js +++ b/examples/cms-wordpress/pages/posts/[slug].tsx @@ -1,5 +1,7 @@ import { useRouter } from 'next/router' import ErrorPage from 'next/error' +import Head from 'next/head' +import { GetStaticPaths, GetStaticProps } from 'next' import Container from '../../components/container' import PostBody from '../../components/post-body' import MoreStories from '../../components/more-stories' @@ -7,11 +9,10 @@ import Header from '../../components/header' import PostHeader from '../../components/post-header' import SectionSeparator from '../../components/section-separator' import Layout from '../../components/layout' -import { getAllPostsWithSlug, getPostAndMorePosts } from '../../lib/api' import PostTitle from '../../components/post-title' -import Head from 'next/head' -import { CMS_NAME } from '../../lib/constants' import Tags from '../../components/tags' +import { getAllPostsWithSlug, getPostAndMorePosts } from '../../lib/api' +import { CMS_NAME } from '../../lib/constants' export default function Post({ post, posts, preview }) { const router = useRouter() @@ -61,8 +62,12 @@ export default function Post({ post, posts, preview }) { ) } -export async function getStaticProps({ params, preview = false, previewData }) { - const data = await getPostAndMorePosts(params.slug, preview, previewData) +export const getStaticProps: GetStaticProps = async ({ + params, + preview = false, + previewData, +}) => { + const data = await getPostAndMorePosts(params?.slug, preview, previewData) return { props: { @@ -74,7 +79,7 @@ export async function getStaticProps({ params, preview = false, previewData }) { } } -export async function getStaticPaths() { +export const getStaticPaths: GetStaticPaths = async () => { const allPosts = await getAllPostsWithSlug() return { From 9ee7dd352e091c07674759e96abd7d510570b6c8 Mon Sep 17 00:00:00 2001 From: Chaiwat Trisuwan Date: Tue, 2 Aug 2022 18:31:59 +0700 Subject: [PATCH 06/11] refactor(Avatar): const name for readable purpose --- examples/cms-wordpress/components/avatar.tsx | 22 ++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 examples/cms-wordpress/components/avatar.tsx diff --git a/examples/cms-wordpress/components/avatar.tsx b/examples/cms-wordpress/components/avatar.tsx new file mode 100644 index 000000000000..501f2d157b5e --- /dev/null +++ b/examples/cms-wordpress/components/avatar.tsx @@ -0,0 +1,22 @@ +import Image from 'next/image' + +export default function Avatar({ author }) { + const isAuthorHaveFullName = author?.node?.firstName && author?.node?.lastName + const name = isAuthorHaveFullName + ? `${author.node.firstName} ${author.node.lastName}` + : author.node.name || null + + return ( +
+
+ {name} +
+
{name}
+
+ ) +} From 4eb971bb2ad51aa609d8873b9810d64e1f98bb8d Mon Sep 17 00:00:00 2001 From: Chaiwat Trisuwan Date: Thu, 4 Aug 2022 13:03:56 +0700 Subject: [PATCH 07/11] refactor: change regex to extract www from url --- examples/cms-wordpress/next.config.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/cms-wordpress/next.config.js b/examples/cms-wordpress/next.config.js index 024d82d03d0c..7f68ab542a8f 100644 --- a/examples/cms-wordpress/next.config.js +++ b/examples/cms-wordpress/next.config.js @@ -8,7 +8,7 @@ if (!process.env.WORDPRESS_API_URL) { module.exports = { images: { domains: [ - process.env.WORDPRESS_API_URL.match(/http(?:s)?:\/\/(.[^/]+)/)[1], // Valid WP Image domain. + process.env.WORDPRESS_API_URL.match(/(?!(w+)\.)\w*(?:\w+\.)+\w+/)[0], // Valid WP Image domain. '1.gravatar.com', '2.gravatar.com', 'secure.gravatar.com', From a3ba3773dcf8106c119c41481e7bef97e8472528 Mon Sep 17 00:00:00 2001 From: Anthony Shew Date: Thu, 4 Aug 2022 09:38:11 -0700 Subject: [PATCH 08/11] Update next-image domains. --- examples/cms-wordpress/next.config.js | 1 + 1 file changed, 1 insertion(+) diff --git a/examples/cms-wordpress/next.config.js b/examples/cms-wordpress/next.config.js index 7f68ab542a8f..1f189d615c02 100644 --- a/examples/cms-wordpress/next.config.js +++ b/examples/cms-wordpress/next.config.js @@ -9,6 +9,7 @@ module.exports = { images: { domains: [ process.env.WORDPRESS_API_URL.match(/(?!(w+)\.)\w*(?:\w+\.)+\w+/)[0], // Valid WP Image domain. + '0.gravatar.com', '1.gravatar.com', '2.gravatar.com', 'secure.gravatar.com', From 1b89da8d2fd8ee3d924fe2fbb10da6225cea8910 Mon Sep 17 00:00:00 2001 From: Anthony Shew Date: Thu, 4 Aug 2022 09:38:28 -0700 Subject: [PATCH 09/11] Update a few types. --- examples/cms-wordpress/components/cover-image.tsx | 12 +++++++++++- examples/cms-wordpress/lib/api.ts | 2 +- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/examples/cms-wordpress/components/cover-image.tsx b/examples/cms-wordpress/components/cover-image.tsx index 46b361365117..28407254870e 100644 --- a/examples/cms-wordpress/components/cover-image.tsx +++ b/examples/cms-wordpress/components/cover-image.tsx @@ -2,7 +2,17 @@ import cn from 'classnames' import Image from 'next/image' import Link from 'next/link' -export default function CoverImage({ title, coverImage, slug }) { +interface Props { + title: string + coverImage: { + node: { + sourceUrl: string + } + } + slug?: string +} + +export default function CoverImage({ title, coverImage, slug }: Props) { const image = ( = {}) { const headers = { 'Content-Type': 'application/json' } if (process.env.WORDPRESS_AUTH_REFRESH_TOKEN) { From 0a38422f66f48050ddedb8612203c7dec4815c3d Mon Sep 17 00:00:00 2001 From: Anthony Shew Date: Mon, 8 Aug 2022 10:05:45 -0700 Subject: [PATCH 10/11] Update readme. --- examples/cms-wordpress/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/cms-wordpress/README.md b/examples/cms-wordpress/README.md index b75bd5ed2329..456d30f9decc 100644 --- a/examples/cms-wordpress/README.md +++ b/examples/cms-wordpress/README.md @@ -1,6 +1,6 @@ -# A statically generated blog example using Next.js and WordPress +# A incrementally static regenerated blog example using Next.js and WordPress -This example showcases Next.js's [Static Generation](https://nextjs.org/docs/basic-features/pages) feature using [WordPress](https://wordpress.org) as the data source. +This example showcases Next.js's [Incremental Static Regeneration](https://nextjs.org/docs/basic-features/data-fetching/incremental-static-regeneration) feature using [WordPress](https://wordpress.org) as the data source. ## Demo From f137f07223835d4b437d31b7f65b2daf0305a726 Mon Sep 17 00:00:00 2001 From: JJ Kasper Date: Mon, 8 Aug 2022 14:10:41 -0500 Subject: [PATCH 11/11] typo --- examples/cms-wordpress/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/cms-wordpress/README.md b/examples/cms-wordpress/README.md index 456d30f9decc..632bcda74dca 100644 --- a/examples/cms-wordpress/README.md +++ b/examples/cms-wordpress/README.md @@ -1,4 +1,4 @@ -# A incrementally static regenerated blog example using Next.js and WordPress +# An Incremental Static Regeneration Blog Example Using Next.js and WordPress This example showcases Next.js's [Incremental Static Regeneration](https://nextjs.org/docs/basic-features/data-fetching/incremental-static-regeneration) feature using [WordPress](https://wordpress.org) as the data source.