diff --git a/com.twin.app.shoptime/src/App/App.js b/com.twin.app.shoptime/src/App/App.js index 81e97a9f..5d70482b 100644 --- a/com.twin.app.shoptime/src/App/App.js +++ b/com.twin.app.shoptime/src/App/App.js @@ -104,7 +104,7 @@ Spotlight.focus = function (elem, containerOption) { if (!floatLayerNode.contains(current)) { if (floatLayerNode.lastElementChild) { const spottableNode = floatLayerNode.lastElementChild.querySelector( - '[data-spotlight-container="true"]', + '[data-spotlight-container="true"]' ); if (spottableNode) { originFocus.apply(this, [spottableNode]); // this 바인딩을 유지하여 originFocus 호출 @@ -122,7 +122,7 @@ Spotlight.focus = function (elem, containerOption) { sendBroadCast({ type: "deActivateTab", moreInfo: { reason: "focus" }, - }), + }) ); } } @@ -135,15 +135,15 @@ function AppBase(props) { const httpHeader = useSelector((state) => state.common.httpHeader); const httpHeaderRef = useRef(httpHeader); const webOSVersion = useSelector( - (state) => state.common.appStatus.webOSVersion, + (state) => state.common.appStatus.webOSVersion ); const deviceId = useSelector((state) => state.common.appStatus.deviceId); const loginUserData = useSelector( - (state) => state.common.appStatus.loginUserData, + (state) => state.common.appStatus.loginUserData ); const loginUserDataRef = useRef(loginUserData); const cursorVisible = useSelector( - (state) => state.common.appStatus.cursorVisible, + (state) => state.common.appStatus.cursorVisible ); const introTermsAgree = useSelector((state) => state.common.introTermsAgree); // const optionalTermsAgree = useSelector((state) => state.common.optionalTermsAgree); @@ -161,7 +161,7 @@ function AppBase(props) { const introTermsAgreeRef = usePrevious(introTermsAgree); const logEnable = useSelector((state) => state.localSettings.logEnable); const oldDb8Deleted = useSelector( - (state) => state.localSettings.oldDb8Deleted, + (state) => state.localSettings.oldDb8Deleted ); // const macAddress = useSelector((state) => state.common.macAddress); @@ -191,7 +191,7 @@ function AppBase(props) { new Job((func) => { func(); console.log("hide cursor"); - }, 5000), + }, 5000) ); // 컴포넌트에서 모니터링 시작 - 한시적 모니터링 @@ -228,7 +228,7 @@ function AppBase(props) { dispatch( changeAppStatus({ cursorVisible: window.PalmSystem?.cursor?.visibility, - }), + }) ); } dispatch(getHomeMenu()); @@ -241,7 +241,7 @@ function AppBase(props) { console.log( "initService...{haveyInit, launchParams}", haveyInit, - JSON.stringify(launchParams), + JSON.stringify(launchParams) ); // pyh TODO: edit or delete later (line 196 ~ 198) @@ -256,7 +256,7 @@ function AppBase(props) { contextName: Config.LOG_CONTEXT_NAME.ENTRY, messageId: Config.LOG_MESSAGE_ID.ENTRY_INFO, entry_menu: "App", - }), + }) ); } @@ -266,12 +266,12 @@ function AppBase(props) { contextName: Config.LOG_CONTEXT_NAME.SHOPTIME, messageId: Config.LOG_MESSAGE_ID.VIEW_CHANGE, visible: true, - }), + }) ); clearLaunchParams(); } }, - [dispatch], + [dispatch] ); const handleRelaunchEvent = useCallback(() => { @@ -296,7 +296,7 @@ function AppBase(props) { foreGroundChangeTimer = setTimeout(() => { console.log( "visibility changed !!! ==> set to foreground cursorVisible", - JSON.stringify(window.PalmSystem?.cursor?.visibility), + JSON.stringify(window.PalmSystem?.cursor?.visibility) ); // eslint-disable-line no-console if (platform.platformName !== "webos") { //for debug @@ -304,14 +304,14 @@ function AppBase(props) { changeAppStatus({ isAppForeground: true, cursorVisible: !platform.touchscreen, - }), + }) ); } else if (typeof window === "object") { dispatch( changeAppStatus({ isAppForeground: true, cursorVisible: window.PalmSystem?.cursor?.visibility, - }), + }) ); } }, 1000); @@ -375,7 +375,7 @@ function AppBase(props) { dispatch( changeAppStatus({ showLoadingPanel: { show: true, type: "launching" }, - }), + }) ); } dispatch(checkFirstLaunch()); @@ -384,7 +384,7 @@ function AppBase(props) { getHomeTerms({ mbrNo: loginUserData.userNumber, trmsTpCdList: "MST00401, MST00402, MST00405", // 선택약관 추가 25.06 - }), + }) ); httpHeaderRef.current = httpHeader; @@ -424,7 +424,7 @@ function AppBase(props) { } else { // 필수 약관에 동의하지 않은 경우 dispatch( - pushPanel({ name: Config.panel_names.INTRO_PANEL, panelInfo: {} }), + pushPanel({ name: Config.panel_names.INTRO_PANEL, panelInfo: {} }) ); dispatch(changeAppStatus({ showLoadingPanel: { show: false } })); } @@ -444,7 +444,7 @@ function AppBase(props) { setDeepLink({ contentTarget: launchParmas.contentTarget, isDeepLink: true, - }), + }) ); } @@ -454,7 +454,7 @@ function AppBase(props) { deeplinkId: launchParmas.contentTarget ?? "", linkTpCd, logTpNo: Config.LOG_TP_NO.SECOND_LAYER, - }), + }) ); }, [dispatch, initService]); diff --git a/com.twin.app.shoptime/src/views/CheckOutPanel/components/PinCodeInput.jsx b/com.twin.app.shoptime/src/views/CheckOutPanel/components/PinCodeInput.jsx index cf469922..98afc997 100644 --- a/com.twin.app.shoptime/src/views/CheckOutPanel/components/PinCodeInput.jsx +++ b/com.twin.app.shoptime/src/views/CheckOutPanel/components/PinCodeInput.jsx @@ -170,24 +170,27 @@ export default function PinCodeInput({ const onClickForgetPinCode = useCallback(() => { setPin(["", "", "", ""]); - dispatch(sendLogTotalRecommend({ - buttonTitle:"ForgetPINcode", - contextName:Config.LOG_CONTEXT_NAME.PINCODE, - messageId: Config.LOG_MESSAGE_ID.PINCODE - })) + dispatch( + sendLogTotalRecommend({ + buttonTitle: "ForgetPINcode", + contextName: Config.LOG_CONTEXT_NAME.PINCODE, + messageId: Config.LOG_MESSAGE_ID.PINCODE, + }) + ); dispatch(setShowPopup(Config.ACTIVE_POPUP.qrPopup2)); }, [dispatch]); const onClickConfirm = useCallback(() => { + const params = { + buttonTitle: "OK", + contextName: Config.LOG_CONTEXT_NAME.PINCODE, + messageId: Config.LOG_MESSAGE_ID.PINCODE, + }; if (pin.includes("")) { setErrorMsg($L("Please enter a PIN CODE.")); + dispatch(sendLogTotalRecommend({ ...params, status: "false" })); return; } - dispatch(sendLogTotalRecommend({ - buttonTitle:"OK", - contextName:Config.LOG_CONTEXT_NAME.PINCODE, - messageId: Config.LOG_MESSAGE_ID.PINCODE - })) setOkClicked(true); const pinString = pin.join(""); @@ -232,6 +235,7 @@ export default function PinCodeInput({ if (!isMounted.current) return; if (response.data.retCode === 0) { + dispatch(sendLogTotalRecommend({ ...params, status: "true" })); setIsOrderSuccessful(true); setPlaceOrderPopup(false); dispatch( @@ -256,6 +260,7 @@ export default function PinCodeInput({ } else { if (!isMounted.current) return; setErrorMsg($L("Your entries did not match. Please try again.")); // 핀코드 검증 단계 후 에러처리 + dispatch(sendLogTotalRecommend({ ...params, status: "false" })); } }; diff --git a/com.twin.app.shoptime/src/views/PlayerPanel/PlayerOverlay/PlayerOverlayContents.jsx b/com.twin.app.shoptime/src/views/PlayerPanel/PlayerOverlay/PlayerOverlayContents.jsx index ced985d8..e81f155f 100644 --- a/com.twin.app.shoptime/src/views/PlayerPanel/PlayerOverlay/PlayerOverlayContents.jsx +++ b/com.twin.app.shoptime/src/views/PlayerPanel/PlayerOverlay/PlayerOverlayContents.jsx @@ -132,6 +132,10 @@ export default function PlayerOverlayContents({ }, [panelInfo, sideContentsVisible]); const noLiveContentsVisible = useMemo(() => { + if (!Array.isArray(playListInfo) || playListInfo.length === 0) { + return false; + } + const noShowIdCount = playListInfo.filter((item) => !item.showId).length; if (playListInfo.length - 1 === noShowIdCount) { return false;