diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 7f0adc7..f8327b1 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -1370,7 +1370,7 @@ EXTERNAL SOURCES: :path: "../node_modules/react-native/ReactCommon/yoga" SPEC CHECKSUMS: - boost: 26fad476bfa736552bbfa698a06cc530475c1505 + boost: d3f49c53809116a5d38da093a8aa78bf551aed09 CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99 DoubleConversion: fea03f2699887d960129cc54bba7e52542b6f953 FBLazyVector: fbc4957d9aa695250b55d879c1d86f79d7e69ab4 @@ -1384,7 +1384,7 @@ SPEC CHECKSUMS: Flipper-PeerTalk: 116d8f857dc6ef55c7a5a75ea3ceaafe878aadc9 FlipperKit: 37525a5d056ef9b93d1578e04bc3ea1de940094f fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9 - glog: 035f1e36e53b355cf70f6434d161b36e7d21fecd + glog: c5d68082e772fa1c511173d6b30a9de2c05a69a2 hermes-engine: b361c9ef5ef3cda53f66e195599b47e1f84ffa35 libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913 OpenSSL-Universal: ebc357f1e6bc71fa463ccb2fe676756aff50e88c @@ -1440,7 +1440,7 @@ SPEC CHECKSUMS: RNScreens: b582cb834dc4133307562e930e8fa914b8c04ef2 RNSVG: ba3e7232f45e34b7b47e74472386cf4e1a676d0a SocketRocket: f32cd54efbe0f095c4d7594881e52619cfe80b17 - Yoga: 13c8ef87792450193e117976337b8527b49e8c03 + Yoga: e64aa65de36c0832d04e8c7bd614396c77a80047 PODFILE CHECKSUM: eb490ed861c0caf2f2649ac9503532c4cce2d3d8 diff --git a/ios/upcy.xcodeproj/project.pbxproj b/ios/upcy.xcodeproj/project.pbxproj index 54f03a5..cda84ee 100644 --- a/ios/upcy.xcodeproj/project.pbxproj +++ b/ios/upcy.xcodeproj/project.pbxproj @@ -690,7 +690,11 @@ "-DFOLLY_USE_LIBCPP=1", "-DFOLLY_CFG_NO_COROUTINES=1", ); - OTHER_LDFLAGS = "$(inherited)"; + OTHER_LDFLAGS = ( + "$(inherited)", + "-Wl", + "-ld_classic", + ); REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native"; SDKROOT = iphoneos; USE_HERMES = true; @@ -759,7 +763,11 @@ "-DFOLLY_USE_LIBCPP=1", "-DFOLLY_CFG_NO_COROUTINES=1", ); - OTHER_LDFLAGS = "$(inherited)"; + OTHER_LDFLAGS = ( + "$(inherited)", + "-Wl", + "-ld_classic", + ); REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native"; SDKROOT = iphoneos; USE_HERMES = true; diff --git a/src/assets/common/Review.svg b/src/assets/common/Review.svg new file mode 100644 index 0000000..9901034 --- /dev/null +++ b/src/assets/common/Review.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/components/Home/Market/GoodsDetailPage.tsx b/src/components/Home/Market/GoodsDetailPage.tsx index 8ecb7b3..5367ee8 100644 --- a/src/components/Home/Market/GoodsDetailPage.tsx +++ b/src/components/Home/Market/GoodsDetailPage.tsx @@ -3,6 +3,8 @@ import { StackScreenProps, createStackNavigator } from '@react-navigation/stack' import { HomeStackParams } from '../../../pages/Home'; import Arrow from '../../../assets/common/Arrow.svg'; import Search from '../../../assets/common/Search.svg'; +import Community from '../../../assets/common/community.svg'; +import Review from "../../../assets/common/Review.svg"; import UnFilledLike from '../../../assets/common/UnFilledLike.svg'; import { useRef, useState } from 'react'; import DetailBox from './DetailBox'; @@ -12,6 +14,9 @@ import Footer from '../../../common/Footer'; import { MaterialTabBar, Tabs } from 'react-native-collapsible-tab-view'; import { BLACK } from '../../../styles/GlobalColor'; import ReviewPage from './ReviewPage'; +import styled from 'styled-components'; + + const { width, height } = Dimensions.get("window"); @@ -35,70 +40,95 @@ const GoodsDetailPageScreen = ({ navigation, route }: StackScreenProps { const [data, setData] = useState([]); return ( - - - - - - { - navigation.goBack(); - }}> - - - + + + + + { + navigation.goBack(); + }}> + + + + + 서비스 명 어쩌구 + + + { + navigation.goBack(); + }}> + + + + + ( + + // + )} + /> + {/* 컴포넌트로 변경 예정 */} + + + + + + + + #키워드 #키워드 #키워드 #키워드 + 상품 이름 + 20,000 원 + + + { navigation.goBack(); }}> - + + 후기(3) - ( - - // - )} - /> - {/* 컴포넌트로 변경 예정 */} - - - - - #키워드 #키워드 #키워드 #키워드 - 상품 이름 - 기본: 20000원 - 최대: 20000원 - - {/* 컴포넌트로 변경 예정 */} - - - - - 마켓명 > - 리폼러닉네임 + + {/* 컴포넌트로 변경 예정 */} + + + + + + 마켓명 + + + 리폼러닉네임 - + ) } @@ -163,11 +193,12 @@ const TextStyles = StyleSheet.create({ }, Sub: { width: "70%", - fontWeight: "400", + fontWeight: "700", paddingLeft: 10, paddingTop: 10, paddingRight: 10, fontSize: 14, + lineHeight: 24, color: "#612EFE", }, PriceInfo: { @@ -185,7 +216,7 @@ const TextStyles = StyleSheet.create({ paddingLeft: 10, paddingTop: 5, paddingRight: 10, - paddingBottom: 5, + paddingBottom: 15, color: '#222222', }, recommend: { @@ -199,6 +230,7 @@ const TextStyles = StyleSheet.create({ marginTop: 5, }, borderBottom1: { + flexDirection: 'row', borderBottomWidth: 1, borderBlockColor: "#dcdcdc" }, diff --git a/src/components/Home/Market/ServiceDetailPage.tsx b/src/components/Home/Market/ServiceDetailPage.tsx index 911c9cf..182274c 100644 --- a/src/components/Home/Market/ServiceDetailPage.tsx +++ b/src/components/Home/Market/ServiceDetailPage.tsx @@ -27,16 +27,16 @@ const ServiceDetailPageScreen = ({ navigation, route }: StackScreenProps ({ headerShown: false, })}> - + ); }; -const ProfileSection = ({ navigation }: {navigation:any}) => { +const ProfileSection = ({ navigation }: { navigation: any }) => { const [data, setData] = useState([]); return ( - + { navigation.goBack(); }}> @@ -45,7 +45,7 @@ const ProfileSection = ({ navigation }: {navigation:any}) => { { navigation.goBack(); }}> - + { pageWidth={width} dot={true} renderItem={({ item }: any) => ( - + // { // /> )} /> - {/* 컴포넌트로 변경 예정 */} - - #키워드 #키워드 #키워드 #키워드 #키워드 - 서비스 이름 - 기본: 20000원 - 최대: 20000원 - - {/* 컴포넌트로 변경 예정 */} - - - - - 마켓명 > - 리폼러닉네임 - + {/* 컴포넌트로 변경 예정 */} + + 서비스 이름 + 기본: 20,000 원 + 최대: 20,000 원 + + {/* 컴포넌트로 변경 예정 */} + + + + + 마켓명 > + 리폼러닉네임 - + + ) } @@ -88,14 +87,14 @@ const ServiceDetailPageMainScreen = ({ navigation }: StackScreenProps(0); const [routes] = useState([ - { key: 'detail', title: '상세설명'}, + { key: 'detail', title: '상세설명' }, { key: 'option', title: '필독사항' }, - { key: 'review', title: '리뷰'} + { key: 'review', title: '리뷰' } ]); - + return ( - - + } headerContainerStyle={{ shadowOpacity: 0, @@ -121,14 +120,14 @@ const ServiceDetailPageMainScreen = ({ navigation }: StackScreenProps {routes.map(route => - ( - {route.key === 'detail' && } - {route.key === 'option' && } - {route.key === 'review' && } - ) + ( + {route.key === 'detail' && } + {route.key === 'option' && } + {route.key === 'review' && } + ) )} -