{"version":3,"file":"static/chunks/pages/interactive-36f2cd83a2904895.js","mappings":"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","sources":["webpack://_N_E/./src/pages/interactive.tsx","webpack://_N_E/?64dc"],"sourcesContent":["\n// @ts-ignore\n import __i18nConfig from '@next-translate-root/i18n'\n// @ts-ignore\n import __loadNamespaces from 'next-translate/loadNamespaces'\n// @ts-ignore\n \nimport React, { useMemo } from 'react';\nimport { addApolloState, initializeApollo } from '@lib/apollo';\nimport { GetServerSideProps } from 'next';\nimport { useRouter } from 'next/router';\nimport { css } from '@emotion/react';\nimport theme from '@styles/theme';\nimport 'slick-carousel/slick/slick.css';\nimport 'slick-carousel/slick/slick-theme.css';\nimport PlayTypeProvider from '@/provider/PlayTypeProvider';\nimport { HOME_TAB_TYPE } from '@customTypes/home';\nimport { Story_Play_Type, Story_Sorting } from '@/baseType';\n\nimport HomeBannerWrapper from '@/components/main/common/banner/HomeBannerWrapper';\nimport HomeContainer from '@/components/main/home/HomeContainer';\nimport WeekDayContainer from '@/components/main/home/weekday/WeekDayContainer';\nimport AdultContainer from '@/components/main/home/adultTab';\nimport GenreContainer from '@/components/main/home/genreTab';\nimport { useInteractiveStoryGenresQuery } from '@/operations/queries/home/__generated__/useInteractiveStoryGenreList.generated';\nimport { useGetUserQuery } from '@/operations/queries/user/__generated__/getUser.generated';\nimport { ADULT_TAB, TABS_WITHOUT_ADULT } from '@/common/values';\nimport {\n STORY_PLAY_TAB_TYPES,\n StoryPlayTabType,\n} from '@/lib/common-react/types/storyGame';\nimport { SPHeader } from '@/lib/common-react/components/header/SPHeader';\nimport useTranslation from 'next-translate/useTranslation';\nimport { touchSearchTab } from '@/lib/googleAnalytics';\nimport { getCurrentWeekType } from '@/common/utils';\nimport { useGetTopHeaderTabs } from '@/hooks/useGetTopHeaderTabs';\n\nconst InteractivePage = () => {\n const { t } = useTranslation();\n const router = useRouter();\n const { tab = HOME_TAB_TYPE.Home, genre } = router.query;\n const { data: userData } = useGetUserQuery({});\n const { data: genreData } = useInteractiveStoryGenresQuery();\n const { topHeaderTabs } = useGetTopHeaderTabs();\n\n const categoryList = useMemo(() => {\n const tabsWithOutAdult = TABS_WITHOUT_ADULT.map((i) => {\n return { type: i.type, title: t(i.text.key) || i.text.ko_KR };\n });\n const adultTab = {\n type: ADULT_TAB.type,\n title: t(ADULT_TAB.text.key) || ADULT_TAB.text.ko_KR,\n };\n const genreTabs = genreData?.interactiveStoryGenresV3?.map((i) => {\n return { type: i.type, title: t(i.text.key) || i.text.ko_KR };\n });\n if (\n userData?.getUser?.certificatedAt &&\n !userData.getUser.isExpiredCertification\n ) {\n return [...tabsWithOutAdult, adultTab, ...(genreTabs || [])];\n } else {\n return [...tabsWithOutAdult, ...(genreTabs || []), adultTab];\n }\n }, [genreData, t, userData]);\n\n const handleTabClick = ({ type }: { type: StoryPlayTabType }) => {\n switch (type) {\n case STORY_PLAY_TAB_TYPES.interactive:\n router.push('/interactive');\n break;\n case STORY_PLAY_TAB_TYPES.storyGame:\n router.push('/home/storygame');\n break;\n case STORY_PLAY_TAB_TYPES.webNovel:\n router.push('/webnovel');\n break;\n case STORY_PLAY_TAB_TYPES.challenge:\n router.push(\n '/challenge?genre=TOTAL&sorting=RECOMMENDED&showFilter=true',\n );\n break;\n default:\n break;\n }\n };\n\n const handleCategoryClick = ({\n type,\n }: {\n type: string; // Genre | Recommended | HOME | WEEK_DAY | ADULT\n genre?: string | null;\n }) => {\n router.push({\n pathname: router.pathname,\n query: {\n tab: type,\n ...(type === 'WEEK_DAY' && {\n week: getCurrentWeekType(),\n sorting: Story_Sorting.DailyRankAsc,\n genre: 'TOTAL',\n }),\n },\n });\n };\n\n const handleMainLogoIconClick = () => {\n router.push('/interactive');\n };\n\n const handleStoreIconClick = () => {\n router.push('/store');\n };\n\n const handleProfileIconClick = () => {\n router.push('/more');\n };\n\n const handleSearchIconClick = () => {\n router.push('/search');\n touchSearchTab();\n };\n\n const handleNotificationIconClick = () => {\n router.push('/notification');\n };\n\n return (\n \n
\n \n
\n {tab === HOME_TAB_TYPE.Home && (\n <>\n \n \n \n )}\n {tab === HOME_TAB_TYPE.WeekDay && (\n
\n \n
\n )}\n {tab === HOME_TAB_TYPE.Adult && (\n
\n \n
\n )}\n {/* 장르 탭 */}\n {tab !== HOME_TAB_TYPE.Home &&\n tab !== HOME_TAB_TYPE.WeekDay &&\n tab !== HOME_TAB_TYPE.Adult && (\n
\n item.type === (tab as string),\n )?.text.ko_KR as string\n }\n />\n
\n )}\n
\n
\n
\n );\n};\n\nconst container = css`\n width: 100%;\n max-width: ${theme.maxWidth};\n display: flex;\n flex-direction: column;\n align-items: center;\n\n .main-container {\n width: 100%;\n max-width: ${theme.maxWidth};\n min-height: 80rem;\n background: ${theme.colors.white};\n }\n`;\n\n const _getServerSideProps: GetServerSideProps = async (context) => {\n const client = initializeApollo();\n\n try {\n // await client.query({\n // query: MONTHLY_STORY_LIST,\n // context: getContextByLocale(context.locale),\n // variables: {\n // playType: Story_Play_Type.Interactive,\n // },\n // });\n // await client.query({\n // query: NEW_STORY_LIST,\n // context: getContextByLocale(context.locale),\n // });\n\n return addApolloState(client, {\n props: {},\n });\n } catch (e) {\n return {\n notFound: true,\n };\n }\n};\n\nexport default InteractivePage;\n\n\n// @ts-ignore\n export async function getServerSideProps(ctx) {\n// @ts-ignore\n let res = _getServerSideProps(ctx)\n// @ts-ignore\n if(typeof res.then === 'function') res = await res\n// @ts-ignore\n return {\n// @ts-ignore\n \n// @ts-ignore\n ...res,\n// @ts-ignore\n props: {\n// @ts-ignore\n ...(res.props || {}),\n// @ts-ignore\n ...(await __loadNamespaces({\n// @ts-ignore\n ...ctx,\n// @ts-ignore\n pathname: '/interactive',\n// @ts-ignore\n loaderName: 'getServerSideProps',\n// @ts-ignore\n ...__i18nConfig,\n// @ts-ignore\n loadLocaleFrom: (l, n) => import(`@next-translate-root/locales/${l}/${n}`).then(m => m.default),\n// @ts-ignore\n }))\n// @ts-ignore\n }\n// @ts-ignore\n }\n// @ts-ignore\n }\n// @ts-ignore\n ","\n (window.__NEXT_P = window.__NEXT_P || []).push([\n \"/interactive\",\n function () {\n return require(\"private-next-pages/interactive.tsx\");\n }\n ]);\n if(module.hot) {\n module.hot.dispose(function () {\n window.__NEXT_P.push([\"/interactive\"])\n });\n }\n "],"names":["container","css","theme","t","useTranslation","router","useRouter","query","tab","HOME_TAB_TYPE","genre","userData","useGetUserQuery","data","genreData","useInteractiveStoryGenresQuery","topHeaderTabs","useGetTopHeaderTabs","categoryList","useMemo","tabsWithOutAdult","TABS_WITHOUT_ADULT","i","type","title","text","key","ko_KR","adultTab","ADULT_TAB","genreTabs","interactiveStoryGenresV3","map","getUser","certificatedAt","isExpiredCertification","playType","Story_Play_Type","tabList","currentTabType","STORY_PLAY_TAB_TYPES","currentCategoryType","currentCategoryGenre","actions","onLogoClick","push","onTabClick","onCategoryClick","pathname","week","getCurrentWeekType","sorting","Story_Sorting","onStoreIconClick","onSearchIconClick","touchSearchTab","onProfileIconClick","onNotificationIconClick","isDarkTheme","maxWidth","className","genreType","genreName","find","item","window","__NEXT_P"],"sourceRoot":""}