From 809b36dd96c00f4b26c0721df29872841beead0c Mon Sep 17 00:00:00 2001 From: giancarlo Date: Wed, 1 May 2024 16:47:25 +0700 Subject: [PATCH] Refactor code and add loading components in marketing apps This commit alters the source of the cache module import used in [...slug]/page.tsx from 'next/cache' to 'react'. Import statements in blog/page.tsx and docs/layout.tsx have been restructured for clarity, keeping local imports separate. Added new loading.tsx files in both blog and docs directories that exports the GlobalLoader from '@kit/ui/global-loader'. --- apps/web/app/(marketing)/blog/loading.tsx | 3 +++ apps/web/app/(marketing)/blog/page.tsx | 3 ++- apps/web/app/(marketing)/docs/[...slug]/page.tsx | 3 ++- apps/web/app/(marketing)/docs/layout.tsx | 6 ++++-- apps/web/app/(marketing)/docs/loading.tsx | 3 +++ 5 files changed, 14 insertions(+), 4 deletions(-) create mode 100644 apps/web/app/(marketing)/blog/loading.tsx create mode 100644 apps/web/app/(marketing)/docs/loading.tsx diff --git a/apps/web/app/(marketing)/blog/loading.tsx b/apps/web/app/(marketing)/blog/loading.tsx new file mode 100644 index 000000000..4ea53181d --- /dev/null +++ b/apps/web/app/(marketing)/blog/loading.tsx @@ -0,0 +1,3 @@ +import { GlobalLoader } from '@kit/ui/global-loader'; + +export default GlobalLoader; diff --git a/apps/web/app/(marketing)/blog/page.tsx b/apps/web/app/(marketing)/blog/page.tsx index f8fff5238..ef3988c88 100644 --- a/apps/web/app/(marketing)/blog/page.tsx +++ b/apps/web/app/(marketing)/blog/page.tsx @@ -4,10 +4,11 @@ import { createCmsClient } from '@kit/cms'; import { If } from '@kit/ui/if'; import { Trans } from '@kit/ui/trans'; -import { SitePageHeader } from '~/(marketing)/_components/site-page-header'; import { createI18nServerInstance } from '~/lib/i18n/i18n.server'; import { withI18n } from '~/lib/i18n/with-i18n'; +// local imports +import { SitePageHeader } from '../_components/site-page-header'; import { BlogPagination } from './_components/blog-pagination'; import { PostPreview } from './_components/post-preview'; diff --git a/apps/web/app/(marketing)/docs/[...slug]/page.tsx b/apps/web/app/(marketing)/docs/[...slug]/page.tsx index b9b5600eb..7b183c74e 100644 --- a/apps/web/app/(marketing)/docs/[...slug]/page.tsx +++ b/apps/web/app/(marketing)/docs/[...slug]/page.tsx @@ -1,4 +1,5 @@ -import { unstable_cache as cache } from 'next/cache'; +import { cache } from 'react'; + import { notFound } from 'next/navigation'; import { ContentRenderer, createCmsClient } from '@kit/cms'; diff --git a/apps/web/app/(marketing)/docs/layout.tsx b/apps/web/app/(marketing)/docs/layout.tsx index 111d57424..0bd26ec0e 100644 --- a/apps/web/app/(marketing)/docs/layout.tsx +++ b/apps/web/app/(marketing)/docs/layout.tsx @@ -1,9 +1,11 @@ import { Cms } from '@kit/cms'; -import { DocsNavigation } from '~/(marketing)/docs/_components/docs-navigation'; -import { getDocs } from '~/(marketing)/docs/_lib/server/docs.loader'; import { createI18nServerInstance } from '~/lib/i18n/i18n.server'; +// local imports +import { DocsNavigation } from './_components/docs-navigation'; +import { getDocs } from './_lib/server/docs.loader'; + async function DocsLayout({ children }: React.PropsWithChildren) { const { resolvedLanguage } = await createI18nServerInstance(); const pages = await getDocs(resolvedLanguage); diff --git a/apps/web/app/(marketing)/docs/loading.tsx b/apps/web/app/(marketing)/docs/loading.tsx new file mode 100644 index 000000000..4ea53181d --- /dev/null +++ b/apps/web/app/(marketing)/docs/loading.tsx @@ -0,0 +1,3 @@ +import { GlobalLoader } from '@kit/ui/global-loader'; + +export default GlobalLoader;