From 535ea72f9cca5c25c179b6bd984d53d8af722b77 Mon Sep 17 00:00:00 2001 From: Elias Gutierrez Date: Thu, 26 Sep 2024 10:28:00 -0700 Subject: [PATCH] refactor(work): remove anything work related --- web/app/api/coreSplitApi.ts | 2 +- web/common/components/ItemLink/itemData.ts | 10 +- web/pages/index.tsx | 38 ---- web/pages/server-sitemap.xml/index.tsx | 62 +++--- web/pages/work/[slug].tsx | 225 --------------------- web/pages/work/index.tsx | 135 ------------- 6 files changed, 37 insertions(+), 435 deletions(-) delete mode 100644 web/pages/work/[slug].tsx delete mode 100644 web/pages/work/index.tsx diff --git a/web/app/api/coreSplitApi.ts b/web/app/api/coreSplitApi.ts index f8b3f5f4..a050a2fa 100644 --- a/web/app/api/coreSplitApi.ts +++ b/web/app/api/coreSplitApi.ts @@ -17,7 +17,7 @@ export default createApi({ refetchOnMountOrArgChange: true, refetchOnReconnect: true, - tagTypes: ['Article', 'Category', 'Tag', 'Work'], + tagTypes: ['Article', 'Category', 'Tag'], endpoints: () => ({}), }); diff --git a/web/common/components/ItemLink/itemData.ts b/web/common/components/ItemLink/itemData.ts index c99cf7c7..54437d14 100644 --- a/web/common/components/ItemLink/itemData.ts +++ b/web/common/components/ItemLink/itemData.ts @@ -5,11 +5,11 @@ type TItemData = { }; const itemData: TItemData[] = [ - { - id: 'b1b19382-6b92-4515-93c7-5446bfa717d5', - title: 'Work', - path: '/work', - }, + // { + // id: 'b1b19382-6b92-4515-93c7-5446bfa717d5', + // title: 'Work', + // path: '/work', + // }, { id: 'b9c2b576-5164-449a-ab4b-ad0ebeb39c27', title: 'Articles', diff --git a/web/pages/index.tsx b/web/pages/index.tsx index e336925f..582dc54c 100644 --- a/web/pages/index.tsx +++ b/web/pages/index.tsx @@ -2,16 +2,6 @@ import { useEffect, useState } from 'react'; import type { NextPage } from 'next'; import Head from 'next/head'; -import { nextReduxWrapper } from 'app'; -import { - getArticles, - getRunningOperationPromises as getArticlesRunningOperationPromises, -} from 'app/api/articleExtendedApi'; -import { - getWorksByCategory, - getRunningOperationPromises as getWorksRunningOperationPromises, -} from 'app/api/workExtendedApi'; - import LineSeparator from 'common/components/LineSeparator'; import LoadingIcon from 'common/components/LoadingIcon'; import PageContainer from 'common/components/PageContainer'; @@ -33,34 +23,6 @@ import environment from 'environment'; interface IHome { isFirstMount: boolean; } - -export const getStaticProps = nextReduxWrapper.getStaticProps( - (store) => async () => { - store.dispatch( - getArticles.initiate({ - category: 0, - limit: 3, - tags: [], - }) - ); - - await Promise.all(getArticlesRunningOperationPromises()); - - store.dispatch( - getWorksByCategory.initiate({ - category: 'Work', - limit: 5, - }) - ); - - await Promise.all(getWorksRunningOperationPromises()); - - return { - props: {}, - }; - } -); - const Home: NextPage = ({ isFirstMount }) => { const [finishIsFirstMount, setFinishIsFirstMount] = useState(isFirstMount); diff --git a/web/pages/server-sitemap.xml/index.tsx b/web/pages/server-sitemap.xml/index.tsx index 732b7c4a..ffab9bd3 100644 --- a/web/pages/server-sitemap.xml/index.tsx +++ b/web/pages/server-sitemap.xml/index.tsx @@ -3,7 +3,7 @@ import { getServerSideSitemap, ISitemapField } from 'next-sitemap'; import { createAppStore } from 'app'; import { getArticles } from 'app/api/articleExtendedApi'; -import { getWorksByCategory } from 'app/api/workExtendedApi'; +// import { getWorksByCategory } from 'app/api/workExtendedApi'; import environment from 'environment'; @@ -27,44 +27,44 @@ export const getServerSideProps: GetServerSideProps = async (ctx) => { priority: 0.9, })); - const { data: works } = await store.dispatch( - getWorksByCategory.initiate({ - category: 'Work', - limit: 4, - }) - ); + // const { data: works } = await store.dispatch( + // getWorksByCategory.initiate({ + // category: 'Work', + // limit: 4, + // }) + // ); - let worksFields: ISitemapField[] = []; + // let worksFields: ISitemapField[] = []; - if (works) - worksFields = works.items.map((work) => ({ - changefreq: 'monthly', - loc: `${environment.webRoute}/work/${work.meta.slug}`, - lastmod: new Date().toISOString(), - priority: 0.7, - })); + // if (works) + // worksFields = works.items.map((work) => ({ + // changefreq: 'monthly', + // loc: `${environment.webRoute}/work/${work.meta.slug}`, + // lastmod: new Date().toISOString(), + // priority: 0.7, + // })); - const { data: personals } = await store.dispatch( - getWorksByCategory.initiate({ - category: 'Personal', - limit: 4, - }) - ); + // const { data: personals } = await store.dispatch( + // getWorksByCategory.initiate({ + // category: 'Personal', + // limit: 4, + // }) + // ); - let personalsFields: ISitemapField[] = []; + // let personalsFields: ISitemapField[] = []; - if (personals) - personalsFields = personals.items.map((personal) => ({ - changefreq: 'monthly', - loc: `${environment.webRoute}/work/${personal.meta.slug}`, - lastmod: new Date().toISOString(), - priority: 0.7, - })); + // if (personals) + // personalsFields = personals.items.map((personal) => ({ + // changefreq: 'monthly', + // loc: `${environment.webRoute}/work/${personal.meta.slug}`, + // lastmod: new Date().toISOString(), + // priority: 0.7, + // })); return getServerSideSitemap(ctx, [ ...articlesFields, - ...worksFields, - ...personalsFields, + // ...worksFields, + // ...personalsFields, ]); }; diff --git a/web/pages/work/[slug].tsx b/web/pages/work/[slug].tsx deleted file mode 100644 index 96c0dc30..00000000 --- a/web/pages/work/[slug].tsx +++ /dev/null @@ -1,225 +0,0 @@ -import type { NextPage } from 'next'; -import Head from 'next/head'; -import { useRouter } from 'next/router'; -import { skipToken } from '@reduxjs/toolkit/dist/query'; - -import { createAppStore, nextReduxWrapper } from 'app'; -import { - getRunningOperationPromises, - getSlugsFromWorks, - getWorkBySlug, - useGetWorkBySlugQuery, -} from 'app/api/workExtendedApi'; - -import LoadingIcon from 'common/components/LoadingIcon'; -import NotFound from 'common/components/NotFound'; -import PageContainer from 'common/components/PageContainer'; -import WithLoadingOverlay from 'common/components/WithLoadingOverlay'; - -import { WorkDetail } from 'components/work'; - -import environment from 'environment'; - -import { isLoadingOverall } from 'utils'; - -export const getStaticPaths = async () => { - const store = createAppStore(); - - const slugsFromWorks = await store.dispatch(getSlugsFromWorks.initiate()); - - const paths = slugsFromWorks.data?.items.map((slugFromWork) => ({ - params: { - slug: slugFromWork.meta.slug, - }, - })); - - return { - paths, - fallback: false, - }; -}; - -export const getStaticProps = nextReduxWrapper.getStaticProps( - (store) => async (context) => { - const slug = context.params?.slug; - - if (typeof slug === 'string') store.dispatch(getWorkBySlug.initiate(slug)); - - await Promise.all(getRunningOperationPromises()); - - return { - props: {}, - }; - } -); - -const Work: NextPage = () => { - const router = useRouter(); - - const slug = router.query.slug; - - const { - data: workData, - isError: workError, - isFetching: workFetching, - } = useGetWorkBySlugQuery(typeof slug === 'string' ? slug : skipToken, { - skip: router.isFallback, - }); - - return ( - <> - - - {workData - ? `${ - workData.meta.seo_title.length > 0 - ? workData.meta.seo_title - : workData.title - } - Work | Elias Gutierrez, Software Engineer` - : ''} - - - 0 - ? workData.meta.search_description - : workData.description - : '' - } - /> - - - - 0 - ? workData.meta.seo_title - : workData.title - : '' - } - /> - - 0 - ? workData.meta.search_description - : workData.description - : '' - } - /> - - - - - - - - 0 - ? workData.meta.seo_title - : workData.title - }` - : '' - } - /> - - 0 - ? workData.meta.search_description - : workData.description - : '' - } - /> - - - - - - - - - - - - - - - - - ) : ( - <>{workData && } - ) - } - isLoading={isLoadingOverall(workFetching)} - loaderComponent={} - loaderDuration={1500} - /> - - - ); -}; - -export default Work; diff --git a/web/pages/work/index.tsx b/web/pages/work/index.tsx deleted file mode 100644 index d51d83d6..00000000 --- a/web/pages/work/index.tsx +++ /dev/null @@ -1,135 +0,0 @@ -import type { NextPage } from 'next'; -import Head from 'next/head'; - -import { nextReduxWrapper } from 'app'; -import { - getWorksByCategory, - getRunningOperationPromises, - useGetWorksByCategoryQuery, -} from 'app/api/workExtendedApi'; - -import LoadingIcon from 'common/components/LoadingIcon'; -import PageContainer from 'common/components/PageContainer'; -import WithLoadingOverlay from 'common/components/WithLoadingOverlay'; - -import { PersonalList, WorkList } from 'components/work'; - -import environment from 'environment'; - -import { isLoadingOverall } from 'utils'; - -export const getStaticProps = nextReduxWrapper.getStaticProps( - (store) => async () => { - store.dispatch( - getWorksByCategory.initiate({ - category: 'Work', - limit: 4, - }) - ); - - await Promise.all(getRunningOperationPromises()); - - store.dispatch( - getWorksByCategory.initiate({ - category: 'Personal', - limit: 4, - }) - ); - - await Promise.all(getRunningOperationPromises()); - - return { - props: {}, - }; - } -); - -const Work: NextPage = () => { - const { data: worksData, isFetching: worksFetching } = - useGetWorksByCategoryQuery({ - category: 'Work', - limit: 4, - }); - const { data: personalsData, isFetching: personalsFetching } = - useGetWorksByCategoryQuery({ - category: 'Personal', - limit: 4, - }); - - return ( - <> - - Work | Elias Gutierrez, Software Engineer - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - } - isLoading={isLoadingOverall(worksFetching, personalsFetching)} - loaderComponent={} - loaderDuration={1000} - /> - - - ); -}; - -export default Work;