diff --git a/declarations.d.ts b/declarations.d.ts index 09581c9..61b0445 100644 --- a/declarations.d.ts +++ b/declarations.d.ts @@ -3,3 +3,7 @@ declare module '*.svg' { const content: React.FC; export default content; } +declare module '*.png' { + const value: string; + export default value; +} diff --git a/src/assets/termsofuse/term1.png b/src/assets/termsofuse/term1.png new file mode 100644 index 0000000..a71d148 Binary files /dev/null and b/src/assets/termsofuse/term1.png differ diff --git a/src/assets/termsofuse/term2.png b/src/assets/termsofuse/term2.png new file mode 100644 index 0000000..bc3087a Binary files /dev/null and b/src/assets/termsofuse/term2.png differ diff --git a/src/assets/termsofuse/term3.png b/src/assets/termsofuse/term3.png new file mode 100644 index 0000000..4a037d4 Binary files /dev/null and b/src/assets/termsofuse/term3.png differ diff --git a/src/assets/termsofuse/term4.png b/src/assets/termsofuse/term4.png new file mode 100644 index 0000000..84e9e90 Binary files /dev/null and b/src/assets/termsofuse/term4.png differ diff --git a/src/assets/termsofuse/term5.png b/src/assets/termsofuse/term5.png new file mode 100644 index 0000000..2611ada Binary files /dev/null and b/src/assets/termsofuse/term5.png differ diff --git a/src/assets/termsofuse/term6.png b/src/assets/termsofuse/term6.png new file mode 100644 index 0000000..aaf3405 Binary files /dev/null and b/src/assets/termsofuse/term6.png differ diff --git a/src/navigation/MyPageNavigator.tsx b/src/navigation/MyPageNavigator.tsx index 9065367..d7d849f 100644 --- a/src/navigation/MyPageNavigator.tsx +++ b/src/navigation/MyPageNavigator.tsx @@ -7,6 +7,7 @@ import { BlockScreen } from '~screens/MyPage/Block'; import { EditDogProfile } from '~screens/MyPage/EditDogProfile'; import { ProfileEditScreen } from '~screens/MyPage/ProfileEdit'; import { SettingScreen } from '~screens/MyPage/Setting'; +import { TermsOfUseScreen } from '~screens/MyPage/TermsOfUse'; export type MyPageStackProps = { Main: undefined; @@ -14,6 +15,7 @@ export type MyPageStackProps = { Block: undefined; ProfileEdit: undefined; DogProfileEdit: { dogId: number }; + TermsOfUse: undefined; }; const Stack = createNativeStackNavigator(); @@ -55,6 +57,15 @@ export const MyPageNavigator = () => { contentStyle: { backgroundColor: theme.colors.gc_4 }, }} /> +
} />, + contentStyle: { backgroundColor: theme.colors.gc_4 }, + }} + /> ); }; diff --git a/src/screens/MyPage/Setting/index.tsx b/src/screens/MyPage/Setting/index.tsx index a265528..743359c 100644 --- a/src/screens/MyPage/Setting/index.tsx +++ b/src/screens/MyPage/Setting/index.tsx @@ -47,11 +47,11 @@ export const SettingScreen = ({ navigation }: Props) => { return ( - + {/* - + */} - + {/* { enabled={familyNotificationAllowed === 'TRUE' ? true : false} /> - + */} @@ -94,6 +94,9 @@ export const SettingScreen = ({ navigation }: Props) => { 탈퇴하기 + navigation.navigate('TermsOfUse')}> + 이용약관 + ); diff --git a/src/screens/MyPage/Setting/styles.ts b/src/screens/MyPage/Setting/styles.ts index 4307ca6..51abdc5 100644 --- a/src/screens/MyPage/Setting/styles.ts +++ b/src/screens/MyPage/Setting/styles.ts @@ -13,11 +13,18 @@ export const SettingScreen = styled.View` export const DeleteAccountButton = styled(Pressable)``; +export const TermsOfUseButton = styled(Pressable)``; + export const DeleteAccountTypo = styled(TextBold)` text-align: center; color: #dcccc2; `; +export const TermsOfUseTypo = styled(TextBold)` + text-align: center; + color: #dcccc2; +`; + export const ButtonContainer = styled.View` width: 100%; position: absolute; diff --git a/src/screens/MyPage/TermsOfUse/index.tsx b/src/screens/MyPage/TermsOfUse/index.tsx new file mode 100644 index 0000000..d9e11b1 --- /dev/null +++ b/src/screens/MyPage/TermsOfUse/index.tsx @@ -0,0 +1,33 @@ +import React from 'react'; +// import { NativeStackScreenProps } from '@react-navigation/native-stack'; +// import { MyPageStackProps } from '~navigation/MyPageNavigator'; +import { ImageSourcePropType } from 'react-native'; +import Term1 from '~assets/termsofuse/term1.png'; +import Term2 from '~assets/termsofuse/term2.png'; +import Term3 from '~assets/termsofuse/term3.png'; +import Term4 from '~assets/termsofuse/term4.png'; +import Term5 from '~assets/termsofuse/term5.png'; +import Term6 from '~assets/termsofuse/term6.png'; +import * as S from './styles'; + +// type Props = NativeStackScreenProps; + +export const TermsOfUseScreen = () => { + // const handleBackPress = () => { + // navigation.goBack(); + // }; + + return ( + + + {/* 각 이미지 렌더링 */} + + + + + + + + + ); +}; diff --git a/src/screens/MyPage/TermsOfUse/styles.ts b/src/screens/MyPage/TermsOfUse/styles.ts new file mode 100644 index 0000000..e988335 --- /dev/null +++ b/src/screens/MyPage/TermsOfUse/styles.ts @@ -0,0 +1,18 @@ +import styled from '@emotion/native'; + +export const Container = styled.View` + flex: 1; + background-color: #ffffff; + width: 100vw; +`; + +export const ScrollContainer = styled.ScrollView` + width: 100%; + display: flex; +`; + +export const Image = styled.Image` + height: auto; + width: 100%; + aspect-ratio: .6; +`;