diff --git a/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate1.jsx b/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate1.jsx index 2c870fd5..bd007a40 100644 --- a/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate1.jsx +++ b/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate1.jsx @@ -19,9 +19,9 @@ import Spottable from '@enact/spotlight/Spottable'; import { getHomeMainContents } from '../../../actions/homeActions'; import CustomImage from '../../../components/CustomImage/CustomImage'; +import css from './HomeBannerTemplate1.module.less'; import Random from './RandomUnit'; import Rolling from './RollingUnit'; -import css from './Template.module.less'; const SpottableComponent = Spottable("div"); @@ -59,94 +59,121 @@ export default function HomeBannerTemplate1() { setVctpImage2(vctpImage2); setWdthImage1(wdthImage1); setWdthImage2(wdthImage2); + dispatch(getHomeMainContents); } - }, [homeTopDisplayInfos]); + }, [homeTopDisplayInfos, dispatch]); useEffect(() => { if (homeMainContentsBannerInfos) { const banerInfo = homeMainContentsBannerInfos[0].bannerInfos; setBannerInfos(banerInfo); + dispatch(getHomeMainContents); } - }, [homeMainContentsBannerInfos]); - - useEffect(() => { - // console.log(homeMainContentsBannerInfos, "메인 컨텐츠"); - // console.log(homeTopDisplayInfos, "탑디스"); - dispatch(getHomeMainContents); - }, [dispatch]); + }, [homeMainContentsBannerInfos, dispatch]); const onClickBanner = useCallback(() => {}, []); return ( - - -
- {/* 배너1 */} - {bannerInfos && - bannerInfos.map((item, index) => { - return item.banrLctnNo === "1" && - item.shptmDspyTpNm == "Rolling" ? ( - + +
+
+ {/* 배너1 */} + {bannerInfos && + bannerInfos.map((item, index) => { + return item.banrLctnNo === "1" && + item.shptmDspyTpNm == "Rolling" ? ( + + ) : item.banrLctnNo === "1" && + item.shptmDspyTpNm == "Random" ? ( + /* - ) : item.banrLctnNo === "1" && item.shptmDspyTpNm == "Random" ? ( - */ + + ) : ( + + ); + })} + {/* 배너2 */} + {bannerInfos && + bannerInfos.map((item, index) => { + return item.banrLctnNo === "2" && + item.shptmDspyTpNm == "Rolling" ? ( + /* - ) : ( - - ); - })} - {/* 배너2 */} - {bannerInfos && - bannerInfos.map((item, index) => { - return item.banrLctnNo === "2" && - item.shptmDspyTpNm == "Rolling" ? ( - */ + + ) : item.banrLctnNo === "2" && + item.shptmDspyTpNm == "Random" ? ( + /* - ) : item.banrLctnNo === "2" && item.shptmDspyTpNm == "Random" ? ( - - ) : ( - - ); - })} -
+ /> */ + + ) : ( + + ); + })} +
-
{/* 배너3 */} {bannerInfos && bannerInfos.map((item, index) => { @@ -154,28 +181,34 @@ export default function HomeBannerTemplate1() { item.shptmDspyTpNm == "Rolling" ? ( ) : item.banrLctnNo === "3" && item.shptmDspyTpNm == "Random" ? ( ) : ( - */ + ); })} @@ -188,27 +221,33 @@ export default function HomeBannerTemplate1() { ) : item.banrLctnNo === "4" && item.shptmDspyTpNm == "Random" ? ( ) : ( - */ + ); })} diff --git a/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate1.module.less b/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate1.module.less new file mode 100644 index 00000000..f5a35f39 --- /dev/null +++ b/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate1.module.less @@ -0,0 +1,143 @@ +@import "../../../style/CommonStyle.module.less"; + +.container { + background-color: #f8f8f8; + + .homeTemplateBox { + margin: 24px 24px 0px; + .mainBox { + display: flex; + + .longBanner { + width: 486px; + height: 858px; + border: 4px solid transparent; + box-sizing: border-box; + img, + video { + width: 100%; + height: 100%; + object-fit: cover; + border-radius: 12px; + } + &:focus, + &:active, + &:hover, + &:focus-within { + border: 4px solid @PRIMARY_COLOR_RED; + box-sizing: border-box; + .focusDropShadow(); + border-radius: 12px; + } + &.rollingBox { + position: relative; + .rightBtn { + position: absolute; + right: 18px; + top: 408px; + z-index: 1; + width: 42px; + height: 42px; + background-image: url("../../../../assets/button/42x42/btn-prev-thumb-nor.svg"); + background-size: 42px 42px; + background-repeat: no-repeat; + &:focus, + &:active, + &:hover, + &:focus-within { + background-image: url("../../../../assets/button/42x42/btn-prev-thumb-foc.svg"); + } + } + .leftBtn { + position: absolute; + left: 18px; + top: 408px; + z-index: 1; + width: 42px; + height: 42px; + background-image: url("../../../../assets/button/42x42/btn-next-thumb-nor.svg"); + background-size: 42px 42px; + background-repeat: no-repeat; + &:focus, + &:active, + &:hover, + &:focus-within { + background-image: url("../../../../assets/button/42x42/btn-next-thumb-foc.svg"); + } + } + } + } + .dualBox { + .smallBox { + width: 744px; + height: 420px; + border: 4px solid transparent; + border-radius: 12px; + img, + video { + width: 100%; + height: 100%; + object-fit: cover; + border-radius: 12px; + } + &:focus, + &:active, + &:hover, + &:focus-within { + border: 4px solid @PRIMARY_COLOR_RED; + box-sizing: border-box; + .focusDropShadow(); + border-radius: 12px; + } + &:nth-child(1) { + margin-bottom: 18px; + } + &.rollingBox { + position: relative; + .rightBtn { + position: absolute; + right: 18px; + top: 190px; + z-index: 1; + width: 42px; + height: 42px; + background-image: url("../../../../assets/button/42x42/btn-prev-thumb-nor.svg"); + background-size: 42px 42px; + background-repeat: no-repeat; + &:focus-within { + background-image: url("../../../../assets/button/42x42/btn-prev-thumb-foc.svg"); + } + } + .leftBtn { + position: absolute; + left: 18px; + top: 190px; + z-index: 1; + width: 42px; + height: 42px; + background-image: url("../../../../assets/button/42x42/btn-next-thumb-nor.svg"); + background-size: 42px 42px; + background-repeat: no-repeat; + &:focus-within { + background-image: url("../../../../assets/button/42x42/btn-next-thumb-foc.svg"); + } + } + } + } + } + } + } + /* margin전용 */ + .mt18 { + margin-top: 18px; + } + .ml18 { + margin-left: 18px; + } + .mr18 { + margin-right: 18px; + } + .mb18 { + margin-bottom: 18px; + } +} diff --git a/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate2.jsx b/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate2.jsx index 16e6d207..664b2f02 100644 --- a/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate2.jsx +++ b/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate2.jsx @@ -10,7 +10,6 @@ import { useSelector, } from 'react-redux'; -import Marquee from '@enact/sandstone/Marquee'; import Spotlight from '@enact/spotlight'; import { SpotlightContainerDecorator, @@ -19,9 +18,9 @@ import Spottable from '@enact/spotlight/Spottable'; import { getHomeMainContents } from '../../../actions/homeActions'; import CustomImage from '../../../components/CustomImage/CustomImage'; +import css from './HomeBannerTemplate2.module.less'; import Random from './RandomUnit'; import Rolling from './RollingUnit'; -import css from './Template.module.less'; const SpottableComponent = Spottable("div"); @@ -59,82 +58,155 @@ export default function HomeBannerTemplate2() { setVctpImage2(vctpImage2); setWdthImage1(wdthImage1); setWdthImage2(wdthImage2); + dispatch(getHomeMainContents); } - }, [homeTopDisplayInfos]); + }, [homeTopDisplayInfos, dispatch]); useEffect(() => { if (homeMainContentsBannerInfos) { const banerInfo = homeMainContentsBannerInfos[0].bannerInfos; setBannerInfos(banerInfo); + dispatch(getHomeMainContents); } - }, [homeMainContentsBannerInfos]); - - useEffect(() => { - console.log(homeMainContentsBannerInfos, "메인 컨텐츠"); - console.log(homeTopDisplayInfos, "탑디스"); - dispatch(getHomeMainContents); - }, [dispatch]); + }, [homeMainContentsBannerInfos, dispatch]); const onClickBanner = useCallback(() => {}, []); return ( - - - {bannerInfos && - bannerInfos.map((item, index) => { - return item.banrLctnNo === "1" && - item.shptmDspyTpNm == "Rolling" ? ( - - ) : item.banrLctnNo === "1" && item.shptmDspyTpNm == "Random" ? ( - - ) : ( - - ); - })} - - - -
+ + +
{bannerInfos && bannerInfos.map((item, index) => { - return item.banrLctnNo === "2" && + return item.banrLctnNo === "1" && item.shptmDspyTpNm == "Rolling" ? ( - ) : item.banrLctnNo === "2" && item.shptmDspyTpNm == "Random" ? ( + ) : item.banrLctnNo === "1" && item.shptmDspyTpNm == "Random" ? ( ) : ( + ); + })} + +
+ {bannerInfos && + bannerInfos.map((item, index) => { + return item.banrLctnNo === "2" && + item.shptmDspyTpNm == "Rolling" ? ( + /* */ + + ) : item.banrLctnNo === "2" && + item.shptmDspyTpNm == "Random" ? ( + + ) : ( + + ); + })} + + {bannerInfos && + bannerInfos.map((item, index) => { + return item.banrLctnNo === "3" && + item.shptmDspyTpNm == "Rolling" ? ( + + ) : item.banrLctnNo === "3" && + item.shptmDspyTpNm == "Random" ? ( + + ) : ( + + ); + })} +
+ + {bannerInfos && + bannerInfos.map((item, index) => { + return item.banrLctnNo === "4" && + item.shptmDspyTpNm == "Rolling" ? ( + + ) : item.banrLctnNo === "4" && item.shptmDspyTpNm == "Random" ? ( + + ) : ( + -
- {bannerInfos && - bannerInfos.map((item, index) => { - return item.banrLctnNo === "3" && - item.shptmDspyTpNm == "Rolling" ? ( - - ) : item.banrLctnNo === "3" && item.shptmDspyTpNm == "Random" ? ( - - ) : ( - - ); - })} -
- - - - {bannerInfos && - bannerInfos.map((item, index) => { - return item.banrLctnNo === "4" && - item.shptmDspyTpNm == "Rolling" ? ( - - ) : item.banrLctnNo === "4" && item.shptmDspyTpNm == "Random" ? ( - - ) : ( - - ); - })} ); diff --git a/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate2.module.less b/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate2.module.less new file mode 100644 index 00000000..67d83e8c --- /dev/null +++ b/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate2.module.less @@ -0,0 +1,136 @@ +@import "../../../style/CommonStyle.module.less"; + +.container { + background-color: #f8f8f8; + + .homeTemplateBox { + margin: 24px 24px 0px; + .mainBox { + display: flex; + img, + video { + width: 100%; + height: 100%; + object-fit: cover; + border-radius: 12px; + } + .longBanner { + width: 486px; + height: 858px; + border: 4px solid transparent; + box-sizing: border-box; + &:focus, + &:active, + &:hover, + &:focus-within { + border: 4px solid @PRIMARY_COLOR_RED; + box-sizing: border-box; + .focusDropShadow(); + border-radius: 12px; + } + &.rollingBox { + position: relative; + .rightBtn { + position: absolute; + right: 18px; + top: 408px; + z-index: 1; + width: 42px; + height: 42px; + background-image: url("../../../../assets/button/42x42/btn-prev-thumb-nor.svg"); + background-size: 42px 42px; + background-repeat: no-repeat; + &:focus, + &:active, + &:hover, + &:focus-within { + background-image: url("../../../../assets/button/42x42/btn-prev-thumb-foc.svg"); + } + } + .leftBtn { + position: absolute; + left: 18px; + top: 408px; + z-index: 1; + width: 42px; + height: 42px; + background-image: url("../../../../assets/button/42x42/btn-next-thumb-nor.svg"); + background-size: 42px 42px; + background-repeat: no-repeat; + &:focus, + &:active, + &:hover, + &:focus-within { + background-image: url("../../../../assets/button/42x42/btn-next-thumb-foc.svg"); + } + } + } + } + .dualBox { + .smallBox { + width: 744px; + height: 420px; + border: 4px solid transparent; + border-radius: 12px; + + &:focus, + &:active, + &:hover, + &:focus-within { + border: 4px solid @PRIMARY_COLOR_RED; + box-sizing: border-box; + .focusDropShadow(); + border-radius: 12px; + } + &:nth-child(1) { + margin-bottom: 18px; + } + &.rollingBox { + position: relative; + .rightBtn { + position: absolute; + right: 18px; + top: 190px; + z-index: 1; + width: 42px; + height: 42px; + background-image: url("../../../../assets/button/42x42/btn-prev-thumb-nor.svg"); + background-size: 42px 42px; + background-repeat: no-repeat; + &:focus-within { + background-image: url("../../../../assets/button/42x42/btn-prev-thumb-foc.svg"); + } + } + .leftBtn { + position: absolute; + left: 18px; + top: 190px; + z-index: 1; + width: 42px; + height: 42px; + background-image: url("../../../../assets/button/42x42/btn-next-thumb-nor.svg"); + background-size: 42px 42px; + background-repeat: no-repeat; + &:focus-within { + background-image: url("../../../../assets/button/42x42/btn-next-thumb-foc.svg"); + } + } + } + } + } + } + } + /* margin전용 */ + .mt18 { + margin-top: 18px; + } + .ml18 { + margin-left: 18px; + } + .mr18 { + margin-right: 18px; + } + .mb18 { + margin-bottom: 18px; + } +} diff --git a/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate3.jsx b/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate3.jsx index 9a9aa7d6..f6e011b6 100644 --- a/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate3.jsx +++ b/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate3.jsx @@ -10,7 +10,6 @@ import { useSelector, } from 'react-redux'; -import Marquee from '@enact/sandstone/Marquee'; import Spotlight from '@enact/spotlight'; import { SpotlightContainerDecorator, @@ -19,27 +18,22 @@ import Spottable from '@enact/spotlight/Spottable'; import { getHomeMainContents } from '../../../actions/homeActions'; import CustomImage from '../../../components/CustomImage/CustomImage'; +import css from './HomeBannerTemplate3.module.less'; import Random from './RandomUnit'; import Rolling from './RollingUnit'; -import css from './Template.module.less'; const SpottableComponent = Spottable("div"); const Container = SpotlightContainerDecorator( - { - enterTo: "default-element", - }, + { leaveFor: { left: "", right: "" }, enterTo: "last-focused" }, "div" ); export default function HomeBannerTemplate3() { const dispatch = useDispatch(); - const [bannerImageLoaded, setBannerImageLoaded] = useState(false); const [bannerInfos, setBannerInfos] = useState([]); - const [vctpImage1, setVctpImage1] = useState(null); - const [vctpImage2, setVctpImage2] = useState(null); - const [wdthImage1, setWdthImage1] = useState(null); - const [wdthImage2, setWdthImage2] = useState(null); + const [vctpImage, setVctpImage] = useState(null); + const [wdthImage, setWdthImage] = useState(null); const homeMainContentsBannerInfos = useSelector( (state) => state.home.mainContentsData.homeMainContentsBannerInfos @@ -55,25 +49,32 @@ export default function HomeBannerTemplate3() { const vctpImage2 = homeTopDisplayInfos[0].vtctpImgPath2; const wdthImage1 = homeTopDisplayInfos[0].wdthtpImgPath1; const wdthImage2 = homeTopDisplayInfos[0].wdthtpImgPath2; - setVctpImage1(vctpImage1); - setVctpImage2(vctpImage2); - setWdthImage1(wdthImage1); - setWdthImage2(wdthImage2); + + if (vctpImage1 === "" || vctpImage1 == null) { + setVctpImage(vctpImage2); + } else { + setVctpImage(vctpImage1); + } + + if (wdthImage1 === "" || wdthImage1 === null) { + setWdthImage(wdthImage2); + } else { + setWdthImage(wdthImage1); + } + + dispatch(getHomeMainContents); } - }, [homeTopDisplayInfos]); + }, [homeTopDisplayInfos, dispatch]); useEffect(() => { if (homeMainContentsBannerInfos) { const banerInfo = homeMainContentsBannerInfos[0].bannerInfos; setBannerInfos(banerInfo); + dispatch(getHomeMainContents); + console.log(homeMainContentsBannerInfos, "메인 컨텐츠"); + console.log(homeTopDisplayInfos, "탑디스"); } - }, [homeMainContentsBannerInfos]); - - useEffect(() => { - console.log(homeMainContentsBannerInfos, "메인 컨텐츠"); - console.log(homeTopDisplayInfos, "탑디스"); - dispatch(getHomeMainContents); - }, [dispatch]); + }, [homeMainContentsBannerInfos, dispatch]); const onClickBanner = useCallback(() => {}, []); @@ -86,48 +87,50 @@ export default function HomeBannerTemplate3() { bannerInfos.map((item, index) => { return item.banrLctnNo === "1" && item.shptmDspyTpNm == "Rolling" ? ( - + ) : item.banrLctnNo === "1" && item.shptmDspyTpNm == "Random" ? ( - + ) : ( ); })} + {/* 배너2 */} {bannerInfos && bannerInfos.map((item, index) => { return item.banrLctnNo === "2" && item.shptmDspyTpNm == "Rolling" ? ( - + ) : item.banrLctnNo === "2" && item.shptmDspyTpNm == "Random" ? ( - + ) : ( ); })} + {/* 배너3 */}
@@ -135,25 +138,21 @@ export default function HomeBannerTemplate3() { bannerInfos.map((item, index) => { return item.banrLctnNo === "3" && item.shptmDspyTpNm == "Rolling" ? ( - + ) : item.banrLctnNo === "3" && item.shptmDspyTpNm == "Random" ? ( - + ) : ( ); })} + {/* 배너4 */} { return item.banrLctnNo === "4" && item.shptmDspyTpNm == "Rolling" ? ( - + ) : item.banrLctnNo === "4" && item.shptmDspyTpNm == "Random" ? ( - + ) : ( ); })} diff --git a/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate3.module.less b/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate3.module.less new file mode 100644 index 00000000..a3597996 --- /dev/null +++ b/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBannerTemplate3.module.less @@ -0,0 +1,191 @@ +@import "../../../style/CommonStyle.module.less"; + +.container { + background-color: #f8f8f8; + display: flex; +} + +.homeTemplateBox { + margin: 24px 24px 50px; + display: flex; + img, + video { + width: 100%; + height: 100%; + object-fit: cover; + border-radius: 12px; + } +} +.leftBannerBox { + width: 744px; + height: 858px; + margin-right: 18px; + &.dualBox { + .topBox { + width: 744px; + height: 420px; + + margin-bottom: 18px; + border: 4px solid transparent; + border-radius: 12px; + &:focus, + &:hover, + &:focus-within, + &:active { + border: 4px solid @PRIMARY_COLOR_RED; + box-sizing: border-box; + .focusDropShadow(); + border-radius: 12px; + } + } + .underBox { + width: 744px; + height: 420px; + + border: 4px solid transparent; + border-radius: 12px; + &:focus, + &:hover, + &:focus-within, + &:active { + border: 4px solid @PRIMARY_COLOR_RED; + box-sizing: border-box; + .focusDropShadow(); + border-radius: 12px; + } + } + } +} +.videoBox { + width: 744px; + height: 420px; + margin: 0 18px 18px 0; + border: 4px solid transparent; + &:focus, + &:hover, + &:focus-within, + &:active { + border: 4px solid @PRIMARY_COLOR_RED; + box-sizing: border-box; + .focusDropShadow(); + border-radius: 12px; + } + .videoPlayer { + width: 744px; + height: 420px; + outline: "teal dashed 1px"; + transform: "scale(1)"; + border-radius: 12px; + } +} + +.banner02 { + width: 744px; + height: 420px; + border-radius: 12px; + border: 4px solid transparent; + box-sizing: border-box; + &:focus, + &:hover, + &:focus-within, + &:active { + border: 4px solid @PRIMARY_COLOR_RED; + box-sizing: border-box; + .focusDropShadow(); + border-radius: 12px; + } +} + +.banner03 { + width: 486px; + height: 858px; + border: 4px solid transparent; + border-radius: 12px; + box-sizing: border-box; + margin-right: 18px; + &:focus, + &:hover, + &:focus-within, + &:active { + border: 4px solid @PRIMARY_COLOR_RED; + box-sizing: border-box; + .focusDropShadow(); + } +} + +.banner04 { + width: 486px; + height: 858px; + border: 4px solid transparent; + box-sizing: border-box; + &:focus, + &:hover, + &:focus-within, + &:active { + border: 4px solid @PRIMARY_COLOR_RED; + box-sizing: border-box; + .focusDropShadow(); + border-radius: 12px; + } +} + +.bannerFlexCol { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-pack: start; + -ms-flex-pack: start; + justify-content: flex-start; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.bannerFlexRow { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: start; + -ms-flex-pack: start; + justify-content: flex-start; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.mainBox { + display: flex; +} + +.mainBox { + display: flex; + + .imgBox { + width: 486px; + height: 858px; + background: beige; + margin-right: 18px; + border: 4px solid transparent; + border-radius: 12px; + &:focus, + &:hover, + &:focus-within, + &:active { + border: 4px solid @PRIMARY_COLOR_RED; + box-sizing: border-box; + .focusDropShadow(); + } + img { + width: 100%; + object-fit: contain; + } + } +} diff --git a/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/RandomUnit.jsx b/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/RandomUnit.jsx index 217403bb..fed8fdd7 100644 --- a/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/RandomUnit.jsx +++ b/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/RandomUnit.jsx @@ -11,7 +11,7 @@ export default function RandomUnit({ bannerData, imageType }) { useEffect(() => { if (bannerData) { - const leng = bannerData.bannerDetailInfos.length; + const leng = bannerDetailInfos.length; const num = Math.floor(Math.random() * leng); setRandomData(bannerDetailInfos[num]); } diff --git a/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/RollingUnit.jsx b/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/RollingUnit.jsx index ca0b3413..5a7ce31c 100644 --- a/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/RollingUnit.jsx +++ b/com.twin.app.shoptime/src/views/HomePanel/HomeBanner/RollingUnit.jsx @@ -1,74 +1,45 @@ import React, { useCallback, useEffect, + useState, } from 'react'; import VideoPlay from '@enact/sandstone/VideoPlayer'; -import { VirtualGridList } from '@enact/sandstone/VirtualList'; -import ri from '@enact/ui/resolution'; import CustomImage from '../../../components/CustomImage/CustomImage'; import HomeTodayDeal from '../HomeTodayDeal/HomeTodayDeal'; -import css from './Template.module.less'; -const LIST_ITEM_CONF = { - ITEM_WIDTH: 561 * 2, - ITEM_HEIGHT: 150 * 2, - SPACING: 30 * 2, -}; +export default function RollingUnit({ bannerData, index, imageType }) { + const bannerDetailInfos = bannerData.bannerDetailInfos[index]; + const [rollingData, setRollingData] = useState(); + const [shptmBanrTpNm, setShptmBanrTpNm] = useState(); -export default function RollingUnit({ bannerData, imageType }) { useEffect(() => { - console.log("롤링"); - }, []); - - const renderItem = useCallback( - ({ index, ...rest }) => { - // const itemData = itemDatas[index]; - const shptmBanrTpNm = bannerData.bannerDetailInfos[index].shptmBanrTpNm; - - if (shptmBanrTpNm === "Image Banner") { - return ; - } - if (shptmBanrTpNm === "LIVE" || shptmBanrTpNm === "VOD") { - return ; - } - if (shptmBanrTpNm === "Today's Deals") { - return ( - - ); - } - }, - [bannerData] - ); + if (bannerData) { + setRollingData(bannerDetailInfos); + setShptmBanrTpNm(bannerDetailInfos.shptmBanrTpNm); + } + }, [bannerData, index]); return ( <> - {bannerData && ( - - )} + {shptmBanrTpNm && + (shptmBanrTpNm === "Image Banner" ? ( + + ) : shptmBanrTpNm === "LIVE" || shptmBanrTpNm === "VOD" ? ( + + ) : shptmBanrTpNm === "Today's Deals" ? ( + + ) : null)} ); } diff --git a/com.twin.app.shoptime/src/views/HomePanel/HomePanel.jsx b/com.twin.app.shoptime/src/views/HomePanel/HomePanel.jsx index 0ed4ba13..24923a18 100644 --- a/com.twin.app.shoptime/src/views/HomePanel/HomePanel.jsx +++ b/com.twin.app.shoptime/src/views/HomePanel/HomePanel.jsx @@ -8,10 +8,7 @@ import { useSelector, } from 'react-redux'; -import { - SpotlightContainerDecorator, -} from '@enact/spotlight/SpotlightContainerDecorator'; - +import TBody from '../../components/TBody/TBody'; import TPanel from '../../components/TPanel/TPanel'; import BestSeller from '../HomePanel/BestSeller/BestSeller'; import HomeBannerTemplate1 from '../HomePanel/HomeBanner/HomeBannerTemplate1'; @@ -22,15 +19,6 @@ import css from '../HomePanel/HomePanel.module.less'; import PopularShow from '../HomePanel/PopularShow/PopularShow'; import SubCategory from '../HomePanel/SubCategory/SubCategory'; -// const SpottableComponent = Spottable("div"); - -const Container = SpotlightContainerDecorator( - { - enterTo: "default-element", - }, - "div" -); - export default function HomePanel() { const dispatch = useDispatch(); const homeLayoutInfo = useSelector((state) => state.home.layoutData); @@ -39,6 +27,7 @@ export default function HomePanel() { ); const [select, setSelect] = useState(null); const [homeLayoutInfoDetail, setHomeLayoutInfoDetail] = useState([]); + // 추후 변경 const selectSwitch = (index) => { switch ("DSP00203") { @@ -64,8 +53,8 @@ export default function HomePanel() { }, [homeTopDisplayInfos, homeLayoutInfo]); return ( - - + + {homeLayoutInfoDetail && homeLayoutInfoDetail.map((item, index) => { return item.shptmApphmDspyOptCd == "DSP00101" ? ( @@ -80,7 +69,7 @@ export default function HomePanel() { ) : null; })} - + ); } diff --git a/com.twin.app.shoptime/src/views/HomePanel/HomePanel.module.less b/com.twin.app.shoptime/src/views/HomePanel/HomePanel.module.less index 83785f48..d6098fed 100644 --- a/com.twin.app.shoptime/src/views/HomePanel/HomePanel.module.less +++ b/com.twin.app.shoptime/src/views/HomePanel/HomePanel.module.less @@ -1,4 +1,11 @@ -.panelDesign { +@import "../../style/CommonStyle.module.less"; +@import "../../style/utils.module.less"; + +.panel { overflow-y: auto; background-color: #f8f8f8; } + +.tBody { + height: 100%; +} diff --git a/com.twin.app.shoptime/src/views/HomePanel/HomeTodayDeal/HomeTodayDeal.jsx b/com.twin.app.shoptime/src/views/HomePanel/HomeTodayDeal/HomeTodayDeal.jsx index 81edd3a0..a7ae56c6 100644 --- a/com.twin.app.shoptime/src/views/HomePanel/HomeTodayDeal/HomeTodayDeal.jsx +++ b/com.twin.app.shoptime/src/views/HomePanel/HomeTodayDeal/HomeTodayDeal.jsx @@ -55,7 +55,7 @@ export default function HomeTodayDeal({ parsePriceInfo(priceInfo); return ( - handleClick(productId)} > @@ -82,6 +82,6 @@ export default function HomeTodayDeal({ ) : ( <> )} */} - +
); }