From c2e7f7b40d1f032b46d120ad1c0e7203763e8969 Mon Sep 17 00:00:00 2001
From: lydiacho <81505421+lydiacho@users.noreply.github.com>
Date: Wed, 27 Mar 2024 01:39:35 +0900
Subject: [PATCH] =?UTF-8?q?[SP0]=20=EB=A9=94=EC=9D=B4=EC=BB=A4=EC=8A=A4=20?=
=?UTF-8?q?=EC=B1=84=EB=84=90=201:1=20=EC=B1=84=ED=8C=85=20=EC=97=B0?=
=?UTF-8?q?=EA=B2=B0=20=20(#385)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/components/Footer/MakersNForm/index.tsx | 10 ++++++++--
src/components/Footer/MakersNForm/style.ts | 13 +++++++++++++
src/components/kakao/Script.tsx | 16 ++++++++++++++++
src/pages/_app.tsx | 16 ++++++++++++++++
src/views/ErrorPage/ErrorPage.tsx | 14 ++++++++------
src/views/ErrorPage/styles.ts | 3 +--
6 files changed, 62 insertions(+), 10 deletions(-)
create mode 100644 src/components/kakao/Script.tsx
diff --git a/src/components/Footer/MakersNForm/index.tsx b/src/components/Footer/MakersNForm/index.tsx
index 16c768b7..9efcc069 100644
--- a/src/components/Footer/MakersNForm/index.tsx
+++ b/src/components/Footer/MakersNForm/index.tsx
@@ -5,6 +5,12 @@ import St from './style';
const MakersNForm: FC = () => {
const { isScrollingDown, isScrollTop } = useScrollPosition();
+ const handleClickKakao = () => {
+ window.Kakao.Channel.chat({
+ channelPublicId: '_sxaIWG',
+ });
+ };
+
return (
{
>
만든 사람들
-
+
의견 제안하기
-
+
);
};
diff --git a/src/components/Footer/MakersNForm/style.ts b/src/components/Footer/MakersNForm/style.ts
index df800d3f..7929661c 100644
--- a/src/components/Footer/MakersNForm/style.ts
+++ b/src/components/Footer/MakersNForm/style.ts
@@ -34,6 +34,18 @@ const FooterLink = styled(Link)`
padding: 17px 10px;
color: #c0c5c9;
+ line-height: normal;
+
+ &:hover {
+ cursor: pointer;
+ color: #ffffff;
+ }
+`;
+const FooterButton = styled.button`
+ padding: 17px 10px;
+
+ color: #c0c5c9;
+ font-size: 100%;
&:hover {
cursor: pointer;
@@ -44,6 +56,7 @@ const FooterLink = styled(Link)`
const St = {
FooterForm,
FooterLink,
+ FooterButton,
};
export default St;
diff --git a/src/components/kakao/Script.tsx b/src/components/kakao/Script.tsx
new file mode 100644
index 00000000..4f2a6228
--- /dev/null
+++ b/src/components/kakao/Script.tsx
@@ -0,0 +1,16 @@
+import Script from 'next/script';
+
+export default function KakaoScript() {
+ const handleOnLoad = () => {
+ window.Kakao.init(process.env.NEXT_PUBLIC_KAKAO_KEY);
+ };
+
+ return (
+
+ );
+}
diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx
index d852813a..48ca8892 100644
--- a/src/pages/_app.tsx
+++ b/src/pages/_app.tsx
@@ -12,10 +12,25 @@ import SEO from '@src/components/common/SEO';
import GoogleTagManagerNoscript from '@src/components/googleTagManager/Noscript';
import GoogleTagManagerScript from '@src/components/googleTagManager/Script';
import * as gtm from '@src/components/googleTagManager/gtm';
+import KakaoScript from '@src/components/kakao/Script';
import { AMPLITUDE_API_KEY } from '@src/lib/constants/client';
import { global } from '@src/lib/styles/global';
import { pageViewTrackingEnrichment } from '@src/lib/utils/pageViewTrackingEnrichment';
+declare global {
+ interface Window {
+ Kakao: Kakao;
+ }
+
+ interface Kakao {
+ init: (appKey?: string) => void;
+ initialized: () => boolean;
+ Channel: {
+ chat: (setting: { channelPublicId: string }) => void;
+ };
+ }
+}
+
export const queryClient = new QueryClient({
defaultOptions: {
queries: {
@@ -91,6 +106,7 @@ function MyApp({ Component, pageProps }: AppProps) {
+
diff --git a/src/views/ErrorPage/ErrorPage.tsx b/src/views/ErrorPage/ErrorPage.tsx
index 14725438..bff5a0de 100644
--- a/src/views/ErrorPage/ErrorPage.tsx
+++ b/src/views/ErrorPage/ErrorPage.tsx
@@ -18,6 +18,12 @@ function ErrorPage({ code }: ErrorPageProps) {
code === 404 ? router.push('/') : router.back();
};
+ const handleClickKakao = () => {
+ window.Kakao.Channel.chat({
+ channelPublicId: '_sxaIWG',
+ });
+ };
+
return (
<>
@@ -28,13 +34,9 @@ function ErrorPage({ code }: ErrorPageProps) {
{ERROR_BUTTON[CODE_KEY]}
{code === 500 && (
-
+
문의하기
-
+
)}
>
diff --git a/src/views/ErrorPage/styles.ts b/src/views/ErrorPage/styles.ts
index 4a05c500..74790cff 100644
--- a/src/views/ErrorPage/styles.ts
+++ b/src/views/ErrorPage/styles.ts
@@ -1,5 +1,4 @@
import styled from '@emotion/styled';
-import Link from 'next/link';
export const Root = styled.main`
display: flex;
@@ -36,7 +35,7 @@ export const ErrorText = styled.p`
font-size: 24px;
}
`;
-export const ContactLink = styled(Link)`
+export const ContactButton = styled.button`
position: absolute;
bottom: 17dvh;