{"version":3,"sources":["MainMenu/index.jsx","MainMenu/components/MainComponent.jsx","MBTI/components/ExamineTree.jsx","MBTI/components/QnA.jsx","MBTI/components/Examine.jsx","Utils/atoms.js","MBTI/components/Introduction.jsx","Module/marketing.js","MBTI/routes/Main.jsx","MBTI/components/ResultComponent.jsx","Shares/CommonUtil.js","MBTI/components/Result.jsx","MBTI/routes/Result.jsx","MBTI/components/ResultList.jsx","MBTI/routes/Test.jsx","MBTI/index.jsx","PetHome/routes/PetWorldPromotionChristmas.jsx","Tutorial/index.jsx","Utils/api.js","Utils/Api/GameKingApi.js","Utils/unityUtil.js","GameKing/routes/GameKingPrizeWinner.jsx","GameKing/routes/GameKingRanking.jsx","GameKing/routes/GameKingPromotion.jsx","GameKing/routes/GameKingEventEnd.jsx","GameKing/index.jsx","Survey/index.jsx","PetHome/routes/PetHomePromotion.jsx","PetHome/routes/PetHomePromotionDecember.jsx","PetHome/routes/PetHomePromotionJanuary.jsx","PetHome/routes/PetHomePromotionFebruary.jsx","PetHome/routes/PetHomePromotionMarch.jsx","PetHome/index.jsx","Utils/Api/InteriorItemAPI.js","InteriorItem/routes/InteriorItemDetail.jsx","InteriorItem/routes/InteriorItemPromotion.jsx","InteriorItem/index.jsx","Utils/Api/RouletteApi.js","Roulette/routes/PopUp/PrizePopUp.jsx","Roulette/routes/PopUp/GifticonPopUp.jsx","Utils/Api/EventApi.js","Roulette/routes/RouletteMain.jsx","Roulette/index.jsx","Utils/Api/DrawLotsApi.js","DrawLots/routes/PopUp/PrizePopUp.jsx","DrawLots/routes/DrawLotsMain.jsx","DrawLots/index.jsx","Bingo/routes/PopUp/PrizePopUp.jsx","Utils/Api/BingoApi.js","Bingo/routes/BingoMain.jsx","Bingo/index.jsx","Utils/Api/SettingApi.js","Shares/Pagination.jsx","PlayReview/routes/EventMain.jsx","PlayReview/routes/Promotion.jsx","PlayReview/index.jsx","App.jsx","registerServiceWorker.js","index.jsx"],"names":["MainComponent","now","Date","month","getMonth","dateString","getFullYear","getDate","yyyyMM","padStart","className","to","choice8_7","value","left","undefined","right","choice8_6","choice8_5","choice8_4","choice8_3","choice8_2","choice7_6","choice7_5","choice7_4","choice7_3","choice7_2","choice6_5","choice6_4","choice6_3","choice6_2","choice5_4","choice5_3","choice5_2","choice4_3","choice4_2","choice3_2","root","QuizComponent","quiz_no","tree","answer1","answer2","handleChoice","GetAnswer","answer_no","GetAnswerString","GetQuestionString","onClick","ExamineComponent","alert","useAlert","useState","SetTree","selected","SetSelected","SetAnswer1","SetAnswer2","quiz","SetQuiz","init","style","width","click","choice","error","handleNext","cdnUrlConfig","atom","key","default","serverMode","IntroComponent","imgAnimal","SetImgAnimal","cdnUrl","useRecoilValue","IMG_URL","useEffect","setTimeout","src","alt","eventTracking","window","gtag","console","log","kakaoPixel","pageView","viewContent","tag","MbtiMain","SetGoogleAnalytics","SetKakaoPixel","ResultComponent","result","resultValue","getDownloadLink","userAgent","navigator","toLowerCase","iPhone","indexOf","iMac","iPad","splitQuery","query","splitedQuery","replace","split","forEach","element","pair","getDateString","date","year","length","Number","substring","isNaN","week","firstDay","firstDayLabel","getDay","firstDayString","lastDay","lastDayLabel","lastDayString","resultDateString","resultDate","resultDayLabel","Result","popText","setPopText","popModal","setPopModal","Kakao","isInitialized","Link","sendDefault","objectType","content","title","description","imageUrl","link","webUrl","location","href","buttons","mobileWebUrl","err","handleKakaoShare","temp","document","createElement","body","appendChild","select","execCommand","removeChild","CopyToClipboard","target","rel","id","MbtiResult","match","answer","params","ResultList","MbtiTest","MBTIAPP","path","component","exact","Main","Component","PetWorldChristmas","isApp","pathname","includes","bullet","Tutorial","Swiper","use","Pagination","slidesPerView","spaceBetween","autoHeight","slideToClickedSlide","on","slideNextTransitionStart","scX","querySelector","sBullet","i","children","this","realIndex","scrollLeft","offsetWidth","slidePrevTransitionStart","j","activeIndexChange","scrollY","scrollTo","pagination","el","clickable","renderBullet","idx","SwiperSlideBox","name","num","images","Array","map","_","image","index","api","axios","create","headers","GameKingApi","size","member_se","get","initUnity","webkit","messageHandlers","unityControl","Unity","call","msg","postMessage","GetUserSE","GetEventSE","BackToEvent","GoToFactory","GoToFortune","MixPanelClickEventButton","event_nm","event_category","MixPanelCompleteEvent","reward_nm","GoToGameLand","GoToTicket","setUnityMember","callback","delay","count","interval","setInterval","GetMemberSE","clearInterval","GameKingPrizeWinner","GameKing2023Ranking","setDatas","querys","useLocation","search","then","response","status","datas","data","GameKing2023Promotion","onError","event","onGameKingTitleImageError","GameKingEventEnd","GameKingIndex","GameKingRanking","GameKingPromotion","Survey","PetHomePromotion","PetHomePromotionJanuary","PetHomePromotionFebruary","PetHomePromotionMarch","PetHomeIndexComponent","PetHomePromotionNovember","PetHomePromotionDecember","PetHomePromotionJanuray","InteriorItemAPI","EWeekConditionCD","InteriorItemDetail","event_se","setMemberSe","weeklyData","setweeklyData","week_condition_cd","mission_complete_yn","total_cnt","InteriorItemPromotion","InteriorItemIndex","RouletteApi","patch","post","PrizePopUp","props","rewardName","setRewardName","price","setPrice","rewardResult","rank_no","close","GifticonPopUp","phoneNo","setPhoneNo","gifticons","setGifticons","eventSe","memberSe","getGifticonRewardCount","event_gifticon_reward_cn","phoneNumber","type","placeholder","onChange","e","test","phone_no","info","EventApi","page","RouletteMain","_rewardResult","setRewardResult","_rewardLog","setRewardLog","attendance","setAttendance","walking","setWalking","advertise","setAdvertise","rouletteCount","setRouletteCount","degree","setDegree","isRotate","setIsRotate","prizePopUp","setPrizePopUp","gifticonPopUp","setGifticonPopUp","eventName","setEventName","eventCategoryType","setEventCategoryType","message","timeout","category_cd","getEventCategoryName","event_category_cd","catch","roulette_count","styleRotate","transform","transition","rewardLog","prev","event_reward_info_nm","RouletteIndex","DrawLotsApi","eventCategory","rewardImageUrl","setRewardImageUrl","reward_thumbnail_lk","reward_cn","DrawLotsMain","lever","setLever","moveBalls","setMoveBalls","moveBalls2","setMoveBalls2","exitBall","setExitBall","turnBall","setTurnBall","randomColorBall","setRandomColorBall","prizePopup","setPrizePopup","interiorTicket","setInteriorTicket","coinCount","setCoinCount","isLoading","setisLoading","fallBallMove","leverRotate","ballMove","ballMove2","ballFall","ballTurn","showPopup","colorBall","no","miniGame","rewardCount","BingoApi","BingoMain","countData","setCountData","rewardData","setRewardData","lineData","setLineData","lineCount","setLineCount","boardData","setBoardData","boardCount","setBoardCount","bingoState","receivedRewards","finishedLines","bingoBoardRewards","completedBoardCount","handleButtonClick","totalCount","items","push","Object","values","renderItems","petStargram","String","row","state","state_cd","standard_cnt","rewardInfo","handleBoardReward","BingoIndex","settingApi","currentPage","pageSize","hideFirstLastPages","activePage","itemsCountPerPage","totalItemsCount","prevPageText","nextPageText","itemClassFirst","itemClassLast","itemClassPrev","itemClassNext","activeClass","activeLinkClass","EventMain","replyRef","useRef","setPage","setTotalCount","replyList","setReplyList","textInput","setTextInput","loading","setLoading","fetchData","finally","scrollToReplyWriteArea","current","scrollIntoView","behavior","maxLength","ref","isValid","validCheck","participate_event_ct","reply","event_member_se","member_profile","pet_profile","nick_nm","reg_date","line","Math","floor","Fragment","wordBreak","Promotion","PlayReview","App","useRecoilState","setCdnUrl","mode","setMode","res","CDN","MODE","currentTimeStamp","savedRefreshTime","localStorage","getItem","setItem","reload","MainMenu","PetHomeIndex","MbtiIndex","DrawLotsIndex","Boolean","hostname","serviceWorker","ready","registration","unregister","rootElement","getElementById","alertOptions","offset","position","positions","MIDDLE","transitions","SCALE","ReactDOM","render","template","AlertTemplate"],"mappings":"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","file":"static/js/main.6088fef2.chunk.js","sourcesContent":["import MainComponent from \"./components/MainComponent\";\r\n\r\nexport default MainComponent;","import React from 'react';\r\nimport { Link } from 'react-router-dom';\r\n\r\nconst MainComponent = () => {\r\n\tconst now = new Date();\r\n\tconst month = now.getMonth() + 1 + ''; // '1'\r\n\tconst dateString = `${now.getFullYear()}년 ${month}월 ${now.getDate()}일`; // '2023년 1월 1일'\r\n\tconst yyyyMM = `${now.getFullYear()}${month.padStart(2, '0')}`; // '202301'\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t비글즈 이벤트 메인\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{dateString}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tMBTI 테스트\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t튜토리얼\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t게임의왕좌 랭킹\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t게임의왕좌 프로모션\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t게임의왕좌 당첨자\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t룰렛 메인\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t뽑기 메인\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t빙고 메인\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default MainComponent;\r\n","// export interface TreeNode {\r\n// value: number;\r\n// left?: TreeNode;\r\n// right?: TreeNode;\r\n// }\r\n\r\nconst result16 = { value: 51, left: undefined, right: undefined }; //INFP 러시안 블루\r\nconst result15 = { value: 50, left: undefined, right: undefined }; //INTJ 먼치킨\r\nconst result14 = { value: 49, left: undefined, right: undefined }; //ISFJ 페르시안\r\nconst result13 = { value: 48, left: undefined, right: undefined }; //INFJ 스핑크스\r\nconst result12 = { value: 47, left: undefined, right: undefined }; //ISTP 퍼그\r\nconst result11 = { value: 46, left: undefined, right: undefined }; //INTP 스코티시 폴드\r\nconst result10 = { value: 45, left: undefined, right: undefined }; //ISFP 노르웨이숲\r\nconst result09 = { value: 44, left: undefined, right: undefined }; //ISTJ 터키쉬 앙고라\r\nconst result08 = { value: 43, left: undefined, right: undefined }; //ENTJ 도베르만\r\nconst result07 = { value: 42, left: undefined, right: undefined }; //ENFP 비글\r\nconst result06 = { value: 41, left: undefined, right: undefined }; //ESFJ 골든 리트리버\r\nconst result05 = { value: 40, left: undefined, right: undefined }; //ENFJ 푸들\r\nconst result04 = { value: 39, left: undefined, right: undefined }; //ESTP 보더콜리\r\nconst result03 = { value: 38, left: undefined, right: undefined }; //ENTP 슈나우저\r\nconst result02 = { value: 37, left: undefined, right: undefined }; //ESFP 닥스훈트\r\nconst result01 = { value: 36, left: undefined, right: undefined }; //ESTJ 포메라니안\r\n\r\nconst choice8_8 = { value: 35, left: result15, right: result16 };\r\nconst choice8_7 = { value: 34, left: result13, right: result14 };\r\nconst choice8_6 = { value: 33, left: result11, right: result12 };\r\nconst choice8_5 = { value: 32, left: result09, right: result10 };\r\nconst choice8_4 = { value: 31, left: result07, right: result08 };\r\nconst choice8_3 = { value: 30, left: result05, right: result06 };\r\nconst choice8_2 = { value: 29, left: result03, right: result04 };\r\nconst choice8_1 = { value: 28, left: result01, right: result02 };\r\n\r\nconst choice7_7 = { value: 27, left: choice8_7, right: choice8_8 };\r\nconst choice7_6 = { value: 26, left: choice8_6, right: choice8_7 };\r\nconst choice7_5 = { value: 25, left: choice8_5, right: choice8_6 };\r\nconst choice7_4 = { value: 24, left: choice8_4, right: choice8_5 };\r\nconst choice7_3 = { value: 23, left: choice8_3, right: choice8_4 };\r\nconst choice7_2 = { value: 22, left: choice8_2, right: choice8_3 };\r\nconst choice7_1 = { value: 21, left: choice8_1, right: choice8_2 };\r\n\r\nconst choice6_6 = { value: 20, left: choice7_6, right: choice7_7 };\r\nconst choice6_5 = { value: 19, left: choice7_5, right: choice7_6 };\r\nconst choice6_4 = { value: 18, left: choice7_4, right: choice7_5 };\r\nconst choice6_3 = { value: 17, left: choice7_3, right: choice7_4 };\r\nconst choice6_2 = { value: 16, left: choice7_2, right: choice7_3 };\r\nconst choice6_1 = { value: 15, left: choice7_1, right: choice7_2 };\r\n\r\nconst choice5_5 = { value: 14, left: choice6_5, right: choice6_6 };\r\nconst choice5_4 = { value: 13, left: choice6_4, right: choice6_5 };\r\nconst choice5_3 = { value: 12, left: choice6_3, right: choice6_4 };\r\nconst choice5_2 = { value: 11, left: choice6_2, right: choice6_3 };\r\nconst choice5_1 = { value: 10, left: choice6_1, right: choice6_2 };\r\n\r\nconst choice4_4 = { value: 9, left: choice5_4, right: choice5_5 };\r\nconst choice4_3 = { value: 8, left: choice5_3, right: choice5_4 };\r\nconst choice4_2 = { value: 7, left: choice5_2, right: choice5_3 };\r\nconst choice4_1 = { value: 6, left: choice5_1, right: choice5_2 };\r\n\r\nconst choice3_3 = { value: 5, left: choice4_3, right: choice4_4 };\r\nconst choice3_2 = { value: 4, left: choice4_2, right: choice4_3 };\r\nconst choice3_1 = { value: 3, left: choice4_1, right: choice4_2 };\r\n\r\nconst choice2_2 = { value: 2, left: choice3_2, right: choice3_3 };\r\nconst choice2_1 = { value: 1, left: choice3_1, right: choice3_2 };\r\n\r\nexport const root = { value: 0, left: choice2_1, right: choice2_2 };","import React from 'react';\r\n\r\n// type QuizProps = {\r\n// quiz_no: number\r\n// tree: TreeNode\r\n// answer1: boolean\r\n// answer2: boolean\r\n// handleChoice: Function\r\n// }\r\n\r\nconst QuizComponent = ({ quiz_no, tree, answer1, answer2, handleChoice }) => {\r\n\r\n //문제지 출력\r\n const GetQuestionString = (quiz_no) => {\r\n if (quiz_no === 1) return '일정 없는 주말, 내 귀염둥이랑 오랜만에 외출! 어디로 가지!?'\r\n else if (quiz_no === 2) return '매일매일 다이어리를 쓰는 나! 나만의 다이어리는 어떤 모습?'\r\n else if (quiz_no === 3) return '두근두근 반려동물과의 첫만남. 어떻게 해야 집사 노릇을 잘할까?'\r\n else if (quiz_no === 4) return '내 방을 예쁘게 꾸며보자! 어떤 가구를 선택해볼까?'\r\n else if (quiz_no === 5) return '집안일 하는 도중 반려동물의 깜짝 애교! 나의 반응은?'\r\n else if (quiz_no === 6) return '반려동물이 갑자기 기운도 없고 축 처져 있다. 어떡하지?'\r\n else if (quiz_no === 7) return '오늘은 친구랑 밤샘 게임하는 날! 어떻게 게임을 즐길까?'\r\n else if (quiz_no === 8) return '오랜만에 친구들이랑 캠핑 가는 날! 가서 뭐하고 놀까?'\r\n }\r\n\r\n //답변 출력 비구조화 return\r\n const GetAnswerString = (quiz_no) => {\r\n let answer1 = ''\r\n let answer2 = ''\r\n\r\n if (quiz_no === 1) {\r\n answer1 = '각 잡고 나가볼까! 거리 상관 없이 핫플레이스 검색!'\r\n answer2 = '멀리 가는 건 귀찮아~ 동네 한바퀴 마실 돌기!'\r\n }\r\n else if (quiz_no === 2) {\r\n answer1 = '스티커와 사진이 빼곡하고 이쁘게 꾸며진 다이어리'\r\n answer2 = '일정과 시간이 표 형태로 작성된 스케쥴러'\r\n }\r\n else if (quiz_no === 3) {\r\n answer1 = '나는 프로 검색러! 주변에 물어보거나 인터넷에 검색하다.'\r\n answer2 = '펫을 키우는 사람들이 최고지! 펫 관련 모임에 가입한다.'\r\n }\r\n else if (quiz_no === 4) {\r\n answer1 = '실용적인게 최고야! 내 방에 맞고 기능에 충실한 가구들'\r\n answer2 = '무조건 귀엽고 이쁜거! 디자인 예쁜 가구들'\r\n }\r\n else if (quiz_no === 5) {\r\n answer1 = '오구오구 이쁜 내새끼. 애교를 받아주고 집안일은 잠시 미룬다.'\r\n answer2 = '하던 일은 마저 끝내야지! 애교를 적당히 받아주고 집안일을 한다'\r\n }\r\n else if (quiz_no === 6) {\r\n answer1 = '혹시 무슨 병이 걸린건 아니지? 증상을 세심하게 살펴본다'\r\n answer2 = '산책갈까? 기운이 날만한 걸 시도한다'\r\n }\r\n else if (quiz_no === 7) {\r\n answer1 = '같이 게임하는 건 즐거워! 같이 재밌는 게임을 하는 것만으로 재밌다.'\r\n answer2 = '게임을 하면 이겨야지! 친구를 이기기 위해 기를 쓴다.'\r\n }\r\n else if (quiz_no === 8) {\r\n answer1 = '캠핑하면 모닥불이지! 모닥불 앞에서 불멍~'\r\n answer2 = '밖에 나왔으면 돌아다녀야지! 캠핑장 주변 산책하기~ '\r\n }\r\n\r\n return { answer1, answer2 }\r\n }\r\n\r\n //답변 출력\r\n const GetAnswer = (quiz_no, answer_no) => {\r\n const { answer1, answer2 } = GetAnswerString(quiz_no)\r\n if (answer_no === 1) return answer1\r\n else if (answer_no === 2) return answer2\r\n }\r\n\r\n return (\r\n < div className={`quiz q${quiz_no}`} >\r\n

\r\n {`Q.${quiz_no}`}\r\n {GetQuestionString(quiz_no)}\r\n

\r\n handleChoice(tree.left.value)}\r\n >\r\n {GetAnswer(quiz_no, 1)}\r\n \r\n handleChoice(tree.right.value)}\r\n >\r\n {GetAnswer(quiz_no, 2)}\r\n \r\n \r\n )\r\n}\r\n\r\nexport default QuizComponent","import React, { useState } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport { root } from './ExamineTree'\r\nimport QuizComponent from './QnA';\r\nimport { useAlert } from 'react-alert';\r\n\r\nconst ExamineComponent = () => {\r\n const QUIZ_COUNT = 8;\r\n const alert = useAlert();\r\n const [tree, SetTree] = useState(root) //MBTI 트리노드 구조 \r\n const [selected, SetSelected] = useState(0) //선택한 value\r\n const [answer1, SetAnswer1] = useState(false) //답변1 클래스\r\n const [answer2, SetAnswer2] = useState(false) //답변2 클래스\r\n const [quiz, SetQuiz] = useState(1) //퀴즈번호\r\n\r\n //답변 클래스 초기화\r\n const init = () => {\r\n if (answer1) SetAnswer1(false)\r\n if (answer2) SetAnswer2(false)\r\n }\r\n\r\n //답변1,2 버튼 클릭 이벤트\r\n const handleChoice = (click) => {\r\n init()\r\n if (tree.left && tree.left?.value === click) {\r\n SetAnswer1(true)\r\n SetSelected(click)\r\n }\r\n\r\n if (tree.right && tree.right?.value === click) {\r\n SetAnswer2(true)\r\n SetSelected(click)\r\n }\r\n }\r\n\r\n //다음 버튼 클릭 이벤트\r\n const handleNext = (choice) => {\r\n if (choice > 0) {\r\n if (tree.left?.value === choice) {\r\n SetTree(tree.left)\r\n }\r\n else if (tree.right?.value === choice) {\r\n SetTree(tree.right)\r\n }\r\n SetQuiz(quiz + 1)\r\n SetSelected(0)\r\n init()\r\n }\r\n else { alert.error('선택되지 않았습니다!') }\r\n }\r\n\r\n return (\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n {\r\n quiz < QUIZ_COUNT ?\r\n handleNext(selected)}\r\n className={`${selected > 0 ? 'on' : ''}`}\r\n >다음\r\n :\r\n 35 ? 'on' : ''}`}\r\n >완료\r\n }\r\n
\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default ExamineComponent;","import { atom } from \"recoil\";\r\n//댕냥룸 콘테스트 전역 state\r\n\r\n// cdn주소\r\nexport const cdnUrlConfig = atom({\r\n key: \"cdn_config\",\r\n default: \"\",\r\n});\r\n\r\n// 서버 환경\r\nexport const serverMode = atom({\r\n key: \"server_mode\",\r\n default: \"\",\r\n});\r\n\r\n//멤버번호\r\nexport const memberState = atom({\r\n key: \"member_se\",\r\n default: 0,\r\n});\r\n\r\n//본인 업로드 여부\r\nexport const myPostState = atom({\r\n key: \"isMyPostExist\",\r\n default: false,\r\n})\r\n\r\n//최신순 / 좋아요순\r\nexport const petHomeEventOrderFilter = atom({\r\n key: \"orderFilter\",\r\n default: \"LATEST\",\r\n})\r\n\r\n//메인 스크롤값 저장\r\nexport const scrollMemory = atom({\r\n key: \"savedScroll\",\r\n default: 0,\r\n})\r\n\r\n//댕냥룸 구경하기(더보기 페이지) 스크롤값 저장\r\nexport const morePageScroll = atom({\r\n key: \"morePageScroll\",\r\n default: 0,\r\n})\r\n\r\n//보기 방식 - 피드, 그리드\r\nexport const viewWayState = atom({\r\n key: \"viewWay\",\r\n default: \"\",\r\n})\r\n\r\n//댕냥룸 더보기 데이터 저장\r\nexport const moreListState = atom({\r\n key: \"moreList\",\r\n default: [],\r\n})\r\n\r\nexport const moreListPage = atom({\r\n key: \"moreListPage\",\r\n default: 1,\r\n})","import React, { useEffect, useState } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { cdnUrlConfig } from '../../Utils/atoms';\r\n\r\nconst IntroComponent = () => {\r\n //imgAnimal 이미지 클래스 스크립트\r\n const [imgAnimal, SetImgAnimal] = useState(false);\r\n const cdnUrl = useRecoilValue(cdnUrlConfig);\r\n const IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\r\n useEffect(() => {\r\n setTimeout(() => { SetImgAnimal(true) }, 1000)\r\n }, [])\r\n\r\n return (\r\n
\r\n
\r\n
\r\n

\r\n 나랑 제일 찰떡인 반려짝꿍은?\r\n \r\n \"반려짝꿍\r\n \r\n

\r\n
너는 내 DESTINY! 나의 운명의 반려짝꿍을 알아보자!
\r\n
\r\n
\r\n
\r\n
반려동물
\r\n \"반려동물\r\n
\r\n
\r\n
\r\n 테스트 시작!\r\n {/* 결과전체보기(개발테스트용) */}\r\n
\r\n
\r\n {/*
\r\n

\r\n \"반려짝꿍\r\n 테스트 결과를 #비글즈#반려짝꿍이벤트\r\n 태그를 걸어 인스타에 공유 해주세요.\r\n 푸짐한 선물이 추첨을 통해 쏟아져요!\r\n

\r\n
\r\n
이벤트 일정
\r\n
\r\n 이벤트 기간 2022년 5월 12일(목) ~ 6월 30일(목)\r\n 당첨자 발표 2022년 7월 1일(금)\r\n
\r\n
\r\n
\r\n
이벤트 보상
\r\n
\r\n
\r\n
\r\n
1명
\r\n
\r\n 네스프레소 에센자 미니\r\n
\r\n
\r\n
\r\n
네스프레소 에센자 미니
\r\n \"네스프레소\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
2명
\r\n
\r\n 탬버린즈 퍼퓸 핸드크림\r\n
\r\n
\r\n
\r\n
탬버린즈 퍼퓸 핸드크림
\r\n \"탬버린즈\r\n
\r\n
\r\n
\r\n
\r\n
5명
\r\n
\r\n 스타벅스 기프트카드 1만원권\r\n
\r\n
\r\n
\r\n
스타벅스 기프트카드 1만원권
\r\n \"스타벅스\r\n
\r\n
\r\n
\r\n
\r\n
20명
\r\n
\r\n 비글즈 한정 아이템\r\n
\r\n
\r\n
\r\n
비글즈 한정 아이템
\r\n \"비글즈\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
확인해주세요!
\r\n
#비글즈 #반려짝꿍이벤트 태그를 꼭 달아주셔야 추첨이 가능합니다.
\r\n
공유 글에 본 이벤트와 관계없는 내용을 기재 시 추첨 내역에서 제외 될 수 있습니다.
\r\n
당첨자는 당첨 발표일까지 비글즈 계정 팔로잉을 유지하는 고객을 대상으로 선정됩니다.
\r\n
당첨 경품 수령 관련 상세 내용은 당첨 발표 시 안내될 예정이며, 안내에 따른 추가 정보 회신(메일)이 필요합니다.
\r\n
\r\n
*/}\r\n
\r\n )\r\n}\r\n\r\nexport default IntroComponent","export class eventTracking {\r\n static SetGoogleAnalytics() {\r\n if (typeof window.gtag !== \"undefined\") {\r\n window.gtag('js', new Date());\r\n window.gtag('config', 'AW-10869827411');\r\n }\r\n else {\r\n console.log(\"Google Analytics is not initialized.\")\r\n }\r\n }\r\n\r\n static SetKakaoPixel() {\r\n if (typeof window.kakaoPixel !== \"undefined\") {\r\n window.kakaoPixel('1559475486282629527').pageView();\r\n window.kakaoPixel('1559475486282629527').viewContent({\r\n tag: 'event_mbti'\r\n });\r\n }\r\n else {\r\n console.log(\"Kakao pixel is not initialized.\")\r\n }\r\n }\r\n}\r\n","import React, { useEffect } from 'react';\r\nimport IntroComponent from '../components/Introduction';\r\nimport { eventTracking } from '../../Module/marketing';\r\n\r\nconst MbtiMain = () => {\r\n\r\n useEffect(() => {\r\n eventTracking.SetGoogleAnalytics();\r\n eventTracking.SetKakaoPixel();\r\n }, [])\r\n\r\n return (\r\n
\r\n \r\n
\r\n )\r\n}\r\n\r\nexport default MbtiMain;","import React from 'react';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { cdnUrlConfig } from '../../Utils/atoms';\r\n\r\n// type Props = {\r\n// resultValue: number\r\n// }\r\n\r\nconst ResultComponent = ({ resultValue }) => { //트리노드 결과 값 별 페이지 출력\r\n const cdnUrl = useRecoilValue(cdnUrlConfig);\r\n const IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\r\n function getView(result) {\r\n if (result === 36) { //ESTJ 포메라니안\r\n return (\r\n <>\r\n

\r\n 누구보다 당당하게!\r\n \r\n \"위풍당당\r\n \r\n

\r\n
\r\n
\r\n
포메라니안
\r\n \"mbti_260x260_01.png\"\r\n
\r\n
\r\n
\r\n 태양보다 당당하고 자신감 넘치는 당신에게는 포메라니안이 어울려요. 포메라니안은 비록 작은 덩치를 가지고 있지만 어떤 상황에서도 자신감을 잃지 않고 당당하게 행동하는 강아지랍니다.\r\n
\r\n
\r\n

추천가구

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    gg컬렉션
    \r\n \"mbti_item_208x208_01.png\"\r\n
    \r\n
    \r\n
    gg컬렉션모던룸 쇼파
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    gg컬렉션
    \r\n \"mbti_item_208x208_02.png\"\r\n
    \r\n
    \r\n
    gg컬렉션모던룸 러그
    \r\n
  • \r\n
\r\n
\r\n
\r\n

환상의 짝꿍

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    러시안블루
    \r\n \"mbti_260x260_16.png\"\r\n
    \r\n
    \r\n
    온화한 러시안블루
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    노르웨이숲
    \r\n \"mbti_260x260_10.png\"\r\n
    \r\n
    \r\n
    따뜻한 감성의 노르웨이숲
    \r\n
  • \r\n
\r\n
\r\n \r\n )\r\n }\r\n else if (result === 37) { //ESFP 닥스훈트\r\n return (\r\n <>\r\n

\r\n 아무도 날 막지 못해!\r\n \r\n \"mbti_tit_dachshund.png\"\r\n \r\n

\r\n
\r\n
\r\n
닥스훈트
\r\n \"mbti_260x260_02.png\"\r\n
\r\n
\r\n
\r\n 누구보다 자유로운 영혼으로 속박이 없는 당신은 닥스훈트와 어울려요. 닥스훈트는 주인에 대한 애정과 충성심은 물론 활발한 활동력을 가진 그야말로 분위기 메이커인 강아지랍니다.\r\n
\r\n
\r\n

추천가구

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    인디언룸 텐트
    \r\n \"mbti_item_208x208_03.png\"\r\n
    \r\n
    \r\n
    gg컬렉션인디언룸 텐트
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    커튼이 쳐져있는 창문
    \r\n \"mbti_item_208x208_04.png\"\r\n
    \r\n
    \r\n
    gg컬렉션커튼이 쳐져있는 창문
    \r\n
  • \r\n
\r\n
\r\n
\r\n

환상의 짝꿍

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    먼치킨
    \r\n \"mbti_260x260_15.png\"\r\n
    \r\n
    \r\n
    차분한먼치킨
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    스핑크스
    \r\n \"mbti_260x260_13.png\"\r\n
    \r\n
    \r\n
    너그러운스핑크스
    \r\n
  • \r\n
\r\n
\r\n \r\n )\r\n }\r\n else if (result === 38) { //ENTP 슈나우저\r\n return (\r\n <>\r\n

\r\n 하고 싶은게 너무 많아!\r\n \r\n \"mbti_tit_schnauzer.png\"\r\n \r\n

\r\n
\r\n
\r\n
슈나우저
\r\n \"mbti_260x260_03.png\"\r\n
\r\n
\r\n
\r\n 아는 것이 많고 다방면에 뛰어난 당신은 슈나우저와 어울려요. 수렵견 출신의 멋진 수염을 가진 슈나우저는 왕성한 에너지와 높은 지능으로 여러 사물에 호기심을 가지는 강아지랍니다.\r\n
\r\n
\r\n

추천가구

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    gg컬렉션
    \r\n \"mbti_item_208x208_05.png\"\r\n
    \r\n
    \r\n
    gg컬렉션다비르의 탄생
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    gg컬렉션
    \r\n \"mbti_item_208x208_06.png\"\r\n
    \r\n
    \r\n
    gg컬렉션체리향 향초
    \r\n
  • \r\n
\r\n
\r\n
\r\n

환상의 짝꿍

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    페르시안
    \r\n \"mbti_260x260_14.png\"\r\n
    \r\n
    \r\n
    섬세한 페르시안
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    터키쉬 앙고라
    \r\n \"mbti_260x260_09.png\"\r\n
    \r\n
    \r\n
    영리한 터키쉬 앙고라
    \r\n
  • \r\n
\r\n
\r\n \r\n )\r\n }\r\n else if (result === 39) { //ESTP 보더콜리\r\n return (\r\n <>\r\n

\r\n 뭐든지 다 잘하는 신동!\r\n \r\n \"mbti_tit_bordercollie.png\"\r\n \r\n

\r\n
\r\n
\r\n
보더콜리
\r\n \"mbti_260x260_04.png\"\r\n
\r\n
\r\n
\r\n 활발한 성격과 뛰어난 머리로 문제 해결을 하는 당신은 보더콜리와 어울려요. 보더콜리는 세계에서 머리가 좋은 견종으로 활발한 성격에 마르지 않은 체력을 가진 강아지랍니다.\r\n
\r\n
\r\n

추천가구

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    \r\n \"mbti_item_208x208_07.png\"\r\n
    \r\n
    \r\n
    오이스터 책더미
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    \r\n \"mbti_item_208x208_08.png\"\r\n
    \r\n
    \r\n
    오이스터 법랑 머그
    \r\n
  • \r\n
\r\n
\r\n
\r\n

환상의 짝꿍

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    스핑크스
    \r\n \"mbti_260x260_13.png\"\r\n
    \r\n
    \r\n
    너그러운 스핑크스
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    먼치킨
    \r\n \"mbti_260x260_15.png\"\r\n
    \r\n
    \r\n
    호기심 많은 먼치킨
    \r\n
  • \r\n
\r\n
\r\n \r\n )\r\n }\r\n else if (result === 40) { //ENFJ 푸들\r\n return (\r\n <>\r\n

\r\n 정이 너무 많아!\r\n \r\n \"mbti_tit_poodle.png\"\r\n \r\n

\r\n
\r\n
\r\n
푸들
\r\n \"mbti_260x260_05.png\"\r\n
\r\n
\r\n
\r\n 온화하고 동정심이 많으며, 공감 능력이 뛰어난 당신은 푸들과 어울려요. 푸들은 오랫동안 사람과 지내 뛰어난 상호작용으로 따뜻한 위로를 건넬 줄 아는 푸근한 성격의 강아지랍니다.\r\n
\r\n
\r\n

추천가구

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    gg컬렉션
    \r\n \"mbti_item_208x208_09.png\"\r\n
    \r\n
    \r\n
    gg컬렉션노란꽃 호리병
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    gg컬렉션
    \r\n \"mbti_item_208x208_10.png\"\r\n
    \r\n
    \r\n
    gg컬렉션엔틱한 가구
    \r\n
  • \r\n
\r\n
\r\n
\r\n

환상의 짝꿍

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    퍼그
    \r\n \"mbti_260x260_12.png\"\r\n
    \r\n
    \r\n
    맘대로 퍼그
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    스코티시 폴드
    \r\n \"mbti_260x260_11.png\"\r\n
    \r\n
    \r\n
    멍 때리는 스코티시 폴드
    \r\n
  • \r\n
\r\n
\r\n \r\n )\r\n }\r\n else if (result === 41) { //ESFJ 골든 리트리버\r\n return (\r\n <>\r\n

\r\n 내가 바로 친목왕!\r\n \r\n \"mbti_tit_goldenretriever.png\"\r\n \r\n

\r\n
\r\n
\r\n
골든 리트리버
\r\n \"mbti_260x260_06.png\"\r\n
\r\n
\r\n
\r\n 어디서나 잘 어울리는 놀라운 친화력과 다른 사람에게 많은 관심을 가진 당신은 골든 리트리버와 어울려요. 큰 덩치를 가진 골든 리트리버는 누구에게나 상냥하고 친절한 강아지랍니다.\r\n
\r\n
\r\n

추천가구

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    도몽찌
    \r\n \"mbti_item_208x208_11.png\"\r\n
    \r\n
    \r\n
    도몽찌베이비 인형 세트
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    도몽찌
    \r\n \"mbti_item_208x208_12.png\"\r\n
    \r\n
    \r\n
    도몽찌장난감 블록 세트
    \r\n
  • \r\n
\r\n
\r\n
\r\n

환상의 짝꿍

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    스코티시 폴드
    \r\n \"mbti_260x260_11.png\"\r\n
    \r\n
    \r\n
    멍 때리는 스코티시 폴드
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    퍼그
    \r\n \"mbti_260x260_12.png\"\r\n
    \r\n
    \r\n
    맘대로 퍼그
    \r\n
  • \r\n
\r\n
\r\n \r\n )\r\n }\r\n else if (result === 42) { //ENFP 비글\r\n return (\r\n <>\r\n

\r\n 한시라도 가만있지 못해!\r\n \r\n \"mbti_tit_beagle.png\"\r\n \r\n

\r\n
\r\n
\r\n
비글
\r\n \"mbti_260x260_07.png\"\r\n
\r\n
\r\n
\r\n 지치지 않는 정렬과 활기를 가진 비글미 넘치는 당신은 비글이 어울려요. 에너지의 대명사인 비글은 누구보다 활발한 활동량으로 비글미라는 신조어를 만들어 낼 정도로 발랄한 강아지랍니다\r\n
\r\n
\r\n

추천가구

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    미야오닷컴
    \r\n \"mbti_item_208x208_13.png\"\r\n
    \r\n
    \r\n
    미야오닷컴 우산 쓴 코코넛
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    미야오타운
    \r\n \"mbti_item_208x208_14.png\"\r\n
    \r\n
    \r\n
    미야오닷컴 빨간 꽃
    \r\n
  • \r\n
\r\n
\r\n
\r\n

환상의 짝꿍

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    터키쉬 앙고라
    \r\n \"mbti_260x260_09.png\"\r\n
    \r\n
    \r\n
    영리한 터키쉬 앙고라
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    페르시안
    \r\n \"mbti_260x260_14.png\"\r\n
    \r\n
    \r\n
    섬세한 페르시안
    \r\n
  • \r\n
\r\n
\r\n \r\n )\r\n }\r\n else if (result === 43) { //ENTJ 도베르만\r\n return (\r\n <>\r\n

\r\n 타고난 카리스마!\r\n \r\n \"mbti_tit_doberman.png\"\r\n \r\n

\r\n
\r\n
\r\n
도베르만
\r\n \"mbti_260x260_08.png\"\r\n
\r\n
\r\n
\r\n 강렬한 카리스마와 타고난 리더쉽으로 누구보다 앞장서는 당신은 도베르만이 어울려요. 탄탄한 근육질의 외모가 돋보이는 도베르만은 굳은 의지와 행동력을 지니고 있는 강아지랍니다.\r\n
\r\n
\r\n

추천가구

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n \"mbti_item_208x208_15.png\"\r\n
    \r\n
    \r\n
    킴밍스튜디오 조명
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    킴밍스튜디오
    \r\n \"mbti_item_208x208_16.png\"\r\n
    \r\n
    \r\n
    킴밍스튜디오 포스터 액자
    \r\n
  • \r\n
\r\n
\r\n
\r\n

환상의 짝꿍

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    노르웨이숲
    \r\n \"mbti_260x260_10.png\"\r\n
    \r\n
    \r\n
    따뜻한 감성의 노르웨이숲
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    러시안 블루
    \r\n \"mbti_260x260_16.png\"\r\n
    \r\n
    \r\n
    온화한 러시안 블루
    \r\n
  • \r\n
\r\n
\r\n \r\n )\r\n }\r\n else if (result === 44) { //ISTJ 터키쉬 앙고라\r\n return (\r\n <>\r\n

\r\n 내 속에 생각 너무 많아!\r\n \r\n \"mbti_tit_turkishangora.png\"\r\n \r\n

\r\n
\r\n
\r\n
터키쉬 앙고라
\r\n \"mbti_260x260_09.png\"\r\n
\r\n
\r\n
\r\n 체계적이고 집중력이 강하고 신중한 당신은 터키쉬 앙고라와 어울려요. 터키쉬 앙고라는 우아하고, 스킨쉽을 싫어하는 까칠한 면도 있지만 사물에 관심이 많고 영리한 고양이랍니다.\r\n
\r\n
\r\n

추천가구

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    MMUMIQ
    \r\n \"mbti_item_208x208_17.png\"\r\n
    \r\n
    \r\n
    MMUMIQ 편안한 쇼파
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    MMUMIQ
    \r\n \"mbti_item_208x208_18.png\"\r\n
    \r\n
    \r\n
    MMUMIQ 키치한 어항
    \r\n
  • \r\n
\r\n
\r\n
\r\n

환상의 짝꿍

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    비글
    \r\n \"mbti_260x260_07.png\"\r\n
    \r\n
    \r\n
    재기발랄비글
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    슈나우저
    \r\n \"mbti_260x260_03.png\"\r\n
    \r\n
    \r\n
    팔방미인슈나우저
    \r\n
  • \r\n
\r\n
\r\n \r\n )\r\n }\r\n else if (result === 45) { //ISFP 노르웨이숲\r\n return (\r\n <>\r\n

\r\n 과묵하지만 다정한!\r\n \r\n \"mbti_tit_norwegianforest.png\"\r\n \r\n

\r\n
\r\n
\r\n
노르웨이숲
\r\n \"mbti_260x260_10.png\"\r\n
\r\n
\r\n
\r\n 말없이 다정하고 온화하지만 내면의 모습을 잘 보이지 않는 당신은 노르웨이 숲과 어울려요. 노르웨이 숲은 평소에 조용하고 우아한 성격이지만, 사람을 매우 좋아해 애교가 많은 고양이랍니다.\r\n
\r\n
\r\n

추천가구

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    gg콜렉션
    \r\n \"mbti_item_208x208_19.png\"\r\n
    \r\n
    \r\n
    gg콜렉션 털실
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    gg콜렉션
    \r\n \"mbti_item_208x208_20.png\"\r\n
    \r\n
    \r\n
    gg콜렉션장식 벽난로
    \r\n
  • \r\n
\r\n
\r\n
\r\n

환상의 짝꿍

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    도베르만
    \r\n \"mbti_260x260_08.png\"\r\n
    \r\n
    \r\n
    무리의 지도자도베르만
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    포메라니안
    \r\n \"mbti_260x260_01.png\"\r\n
    \r\n
    \r\n
    위풍당당포메라니안
    \r\n
  • \r\n
\r\n
\r\n \r\n )\r\n }\r\n else if (result === 46) { //INTP 스코티시 폴드\r\n return (\r\n <>\r\n

\r\n 머릿속에 펼쳐진 우주!\r\n \r\n \"mbti_tit_scottishfold.png\"\r\n \r\n

\r\n
\r\n
\r\n
스코티시 폴드
\r\n \"mbti_260x260_11.png\"\r\n
\r\n
\r\n
\r\n 조용하고 논리적이나 몽상가인 당신은 스코티시 폴드와 어울려요. 스코티시 폴드는 성격이 전체적으로 차분하고 울음소리도 작은 조용한 성격이지만, 주인에게는 애교가 폭발하는 귀여운 고양이랍니다.\r\n
\r\n
\r\n

추천가구

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    yooziny
    \r\n \"mbti_item_208x208_21.png\"\r\n
    \r\n
    \r\n
    yooziny 순대의 우주선
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    yooziny
    \r\n \"mbti_item_208x208_22.png\"\r\n
    \r\n
    \r\n
    yooziny 순대의 우주 창문
    \r\n
  • \r\n
\r\n
\r\n
\r\n

환상의 짝꿍

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    골든 리트리버
    \r\n \"mbti_260x260_06.png\"\r\n
    \r\n
    \r\n
    핵인싸골든 리트리버
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    푸들
    \r\n \"mbti_260x260_05.png\"\r\n
    \r\n
    \r\n
    다정다감푸들
    \r\n
  • \r\n
\r\n
\r\n \r\n )\r\n }\r\n else if (result === 47) { //ISTP 퍼그\r\n return (\r\n <>\r\n

\r\n 느긋하지만 고집쟁이\r\n \r\n \"mbti_tit_pug.png\"\r\n \r\n

\r\n
\r\n
\r\n
퍼그
\r\n \"mbti_260x260_12.png\"\r\n
\r\n
\r\n
\r\n 주변에 좌지우지되지 않고 자신의 일을 진행하는 당신은 퍼그와 어울려요. 퍼그는 느긋하고 순한 반면 자신만의 고집이 있어서 주관대로 행동하려는 경향이 강한 강아지랍니다.\r\n
\r\n
\r\n

추천가구

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    미야오타운
    \r\n \"mbti_item_208x208_23.png\"\r\n
    \r\n
    \r\n
    미야오타운 다락방 카펫
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    미야오타운
    \r\n \"mbti_item_208x208_24.png\"\r\n
    \r\n
    \r\n
    미야오타운 블루 소파
    \r\n
  • \r\n
\r\n
\r\n
\r\n

환상의 짝꿍

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    푸들
    \r\n \"mbti_260x260_05.png\"\r\n
    \r\n
    \r\n
    다정다감푸들
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    골든 리트리버
    \r\n \"mbti_260x260_06.png\"\r\n
    \r\n
    \r\n
    핵인싸골든 리트리버
    \r\n
  • \r\n
\r\n
\r\n \r\n )\r\n }\r\n else if (result === 48) { //INFJ 스핑크스\r\n return (\r\n <>\r\n

\r\n 난 관대하다!\r\n \r\n \"mbti_tit_sphinx.png\"\r\n \r\n

\r\n
\r\n
\r\n
스핑크스
\r\n \"mbti_260x260_13.png\"\r\n
\r\n
\r\n
\r\n 화합을 추구하고, 성숙한 정신과 인내심을 지닌 당신은 스핑크스와 어울려요. 차분하고 점잖은 스핑크스는 의외로 높은 친화력을 지니고 있어 많은 사람들의 사랑을 받는 고양이랍니다.\r\n
\r\n
\r\n

추천가구

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    Oiguclub
    \r\n \"mbti_item_208x208_25.png\"\r\n
    \r\n
    \r\n
    Oiguclub 미니 치즈 소파
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    Oiguclub
    \r\n \"mbti_item_208x208_26.png\"\r\n
    \r\n
    \r\n
    Oiguclub 버터 러그
    \r\n
  • \r\n
\r\n
\r\n
\r\n

환상의 짝꿍

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    보더콜리
    \r\n \"mbti_260x260_04.png\"\r\n
    \r\n
    \r\n
    다재다능보더콜리
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    닥스훈트
    \r\n \"mbti_260x260_02.png\"\r\n
    \r\n
    \r\n
    자유로운닥스훈트
    \r\n
  • \r\n
\r\n
\r\n \r\n )\r\n }\r\n else if (result === 49) { //ISFJ 페르시안\r\n return (\r\n <>\r\n

\r\n 부드럽게 다루어주세용!\r\n \r\n \"mbti_tit_persian.png\"\r\n \r\n

\r\n
\r\n
\r\n
페르시안
\r\n \"mbti_260x260_14.png\"\r\n
\r\n
\r\n
\r\n 섬세한 배려로 주변을 따뜻하게 돌보는 당신은 페르시안과 어울려요. 페르시안은 독립적인 성격으로 혼자 보내는 시간도 좋아하지만 주인과 함께 있는 시간은 더 좋아하는 차분하고 따뜻한 고양이랍니다.\r\n
\r\n
\r\n

추천가구

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    르미보리
    \r\n \"mbti_item_208x208_27.png\"\r\n
    \r\n
    \r\n
    르미보리 보리의 백드롭
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    르미보리
    \r\n \"mbti_item_208x208_28.png\"\r\n
    \r\n
    \r\n
    르미보리 보리의 거울
    \r\n
  • \r\n
\r\n
\r\n
\r\n

환상의 짝꿍

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    슈나우저
    \r\n \"mbti_260x260_03.png\"\r\n
    \r\n
    \r\n
    팔방미인슈나우저
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    비글
    \r\n \"mbti_260x260_07.png\"\r\n
    \r\n
    \r\n
    재기발랄비글
    \r\n
  • \r\n
\r\n
\r\n \r\n )\r\n }\r\n else if (result === 50) { //INTJ 먼치킨\r\n return (\r\n <>\r\n

\r\n 재밌는게 잔뜩 있어!\r\n \r\n \"mbti_tit_munchkin.png\"\r\n \r\n

\r\n
\r\n
\r\n
먼치킨
\r\n \"mbti_260x260_15.png\"\r\n
\r\n
\r\n
\r\n 타고난 사고력으로 하고자 하는 바를 이뤄내는 당신은 먼치킨과 어울려요. 활발하고 사교적인 성격으로도 유명한 먼치킨은 처음 보는 사물에 끝없는 관심을 주는 왕성한 호기심을 가진 고양이랍니다.\r\n
\r\n
\r\n

추천가구

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    gg컬렉션
    \r\n \"mbti_item_208x208_29.png\"\r\n
    \r\n
    \r\n
    gg컬렉션검은고양이 러그
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    gg컬렉션
    \r\n \"mbti_item_208x208_30.png\"\r\n
    \r\n
    \r\n
    gg컬렉션 장난감 쥐
    \r\n
  • \r\n
\r\n
\r\n
\r\n

환상의 짝꿍

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    닥스훈트
    \r\n \"mbti_260x260_02.png\"\r\n
    \r\n
    \r\n
    자유로운닥스훈트
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    보더콜리
    \r\n \"mbti_260x260_04.png\"\r\n
    \r\n
    \r\n
    다재다능보더콜리
    \r\n
  • \r\n
\r\n
\r\n \r\n )\r\n }\r\n else if (result === 51) { //INFP 러시안 블루\r\n return (\r\n <>\r\n

\r\n 훈훈 그 자체!\r\n \r\n \"mbti_tit_russianblue.png\"\r\n \r\n

\r\n
\r\n
\r\n
러시안 블루
\r\n \"mbti_260x260_16.png\"\r\n
\r\n
\r\n
\r\n 차분하지만 낭만적인 성향인 당신은 러시안 블루와 어울려요. 러시안 블루는 온순하고 조용한 성격이지만 내 가족에게는 깊은 애정을 가지고 있는 따뜻한 고양이랍니다.\r\n
\r\n
\r\n

추천가구

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    뽀야랜드
    \r\n \"mbti_item_208x208_31.png\"\r\n
    \r\n
    \r\n
    뽀야랜드뽀야캐쳐
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    뽀야랜드
    \r\n \"mbti_item_208x208_32.png\"\r\n
    \r\n
    \r\n
    뽀야랜드뽀드등
    \r\n
  • \r\n
\r\n
\r\n
\r\n

환상의 짝꿍

\r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    포메라니안
    \r\n \"mbti_260x260_01.png\"\r\n
    \r\n
    \r\n
    위풍당당포메라니안
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n
    먼치킨
    \r\n \"mbti_260x260_15.png\"\r\n
    \r\n
    \r\n
    호기심 많은먼치킨
    \r\n
  • \r\n
\r\n
\r\n \r\n )\r\n }\r\n else {\r\n return (\r\n <>\r\n

\r\n 잘못된 접근입니다\r\n Not Found 404\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n )\r\n }\r\n }\r\n\r\n return (\r\n <>{getView(resultValue)}\r\n )\r\n}\r\n\r\nexport default ResultComponent","const iOSDownloadLink = \"https://apps.apple.com/kr/app/%EB%B9%84%EA%B8%80%EC%A6%88-%EA%B0%80%EC%83%81-%ED%8E%AB-%ED%9E%90%EB%A7%81-%EC%95%B1-%EB%B0%98%EB%A0%A4%EB%8F%99%EB%AC%BC-%EC%BA%90%EB%A6%AD%ED%84%B0-%EB%A9%94%ED%83%80%EB%B2%84%EC%8A%A4/id1585622161\";\r\nconst AndroidDownloadLink = \"https://play.google.com/store/apps/details?id=com.bigglz.BigglzApp\";\r\n\r\n/**\r\n * 브라우저 userAgent에서 iOS 여부를 검사하여\r\n * iOS라면 앱스토어 링크, 아니라면 구글 플레이스토어 링크를 반환한다.\r\n * @returns 비글즈 앱 다운로드 링크\r\n */\r\nexport function getDownloadLink() {\r\n const userAgent = navigator.userAgent.toLowerCase();\r\n const iPhone = userAgent.indexOf('iphone') > -1;\r\n const iMac = userAgent.indexOf('mac') > -1;\r\n const iPad = userAgent.indexOf('pad') > -1;\r\n\r\n if (iMac || iPhone || iPad) {\r\n return iOSDownloadLink;\r\n } else {\r\n return AndroidDownloadLink;\r\n }\r\n}\r\n\r\n/**\r\n * URL에서 받아온 파라미터를 오브젝트 형식으로 반환한다.\r\n * ex) www.url.com?member=52&date=202212\r\n * @param query URL Parameter\r\n * @returns 쿼리 오브젝트 { member: 52, date: 202212 }\r\n */\r\nexport function splitQuery(query) {\r\n let splitedQuery = query.replace('?', '').split('&');\r\n let result = {};\r\n splitedQuery.forEach(element => {\r\n let pair = element.split('=');\r\n result[pair[0]] = pair[1];\r\n });\r\n\r\n return result;\r\n}\r\n\r\n/**\r\n * 입력받은 yyyyMM의 시작일, 마지막일, 결과발표일을 오브젝트로 반환한다.\r\n * @param {*} date \"yyyyMM\"의 숫자로 이루어진 6자리 문자열\r\n * @returns month, firstDayString, lastDayString, resultDateString\r\n */\r\nexport function getDateString(date = \"\") {\r\n let year = 0;\r\n let month = 0;\r\n\r\n if (typeof date === \"string\" && date.length === 6) {\r\n year = Number(date.substring(0, 4));\r\n month = Number((date.substring(4, 6)).replace(\"0\", \"\")) - 1;\r\n\r\n if (isNaN(year) || isNaN(month)) {\r\n date = new Date();\r\n year = date.getFullYear();\r\n month = date.getMonth();\r\n }\r\n }\r\n else {\r\n date = new Date();\r\n year = date.getFullYear();\r\n month = date.getMonth();\r\n }\r\n\r\n const week = ['일', '월', '화', '수', '목', '금', '토'];\r\n \r\n const firstDay = new Date(year, month, 1);\r\n const firstDayLabel = week[firstDay.getDay()];\r\n const firstDayString = `${year}년 ${month + 1}월 1일 (${firstDayLabel})`;\r\n\r\n const lastDay = new Date(year, month + 1, 0);\r\n const lastDayLabel = week[lastDay.getDay()];\r\n const lastDayString = `${month + 1}월 ${lastDay.getDate()}일 (${lastDayLabel})`;\r\n\r\n let resultDateString = \"\";\r\n if (month === 11) {// 12월이라면 내년으로 예외처리 \r\n const resultDate = new Date(year + 1, 0, 7);\r\n const resultDayLabel = week[resultDate.getDay()]\r\n resultDateString = `${resultDate.getFullYear()}년 ${resultDate.getMonth() + 1}월 7일 (${resultDayLabel})`;\r\n }\r\n else {\r\n const resultDate = new Date(year, month + 1, 7);\r\n const resultDayLabel = week[resultDate.getDay()]\r\n resultDateString = `${resultDate.getFullYear()}년 ${month + 2}월 7일 (${resultDayLabel})`;\r\n }\r\n\r\n return {\r\n month: Number(month) + 1,\r\n firstDayString,\r\n lastDayString,\r\n resultDateString\r\n }\r\n}","import React, { useEffect, useState } from 'react';\r\nimport ResultComponent from './ResultComponent';\r\nimport { Link } from 'react-router-dom';\r\nimport { getDownloadLink } from '../../Shares/CommonUtil';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { cdnUrlConfig } from '../../Utils/atoms';\r\n\r\n//Bigglz App\r\nconst KAKAO_API = \"9c23f66cf88be2d5566c85739e99f808\"; \r\n\r\nconst Result = ({ resultValue }) => {\r\n const [popText, setPopText] = useState(\"\");\r\n const [popModal, setPopModal] = useState(false)\r\n const cdnUrl = useRecoilValue(cdnUrlConfig);\r\n const IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\r\n useEffect(() => { //카카오 공유하기 Init\r\n if (window.Kakao === undefined) {\r\n console.log(\"카카오 서비스를 불러올 수 없습니다. 브라우저의 스크립트 차단 기능을 확인해주세요.\")\r\n }\r\n else if (!window.Kakao.isInitialized()) {\r\n window.Kakao.init(KAKAO_API);\r\n }\r\n }, [])\r\n\r\n useEffect(() => { //팝업창 종료시 메시지 초기화\r\n if (!popModal) {\r\n setPopText(\"\");\r\n }\r\n }, [popModal])\r\n\r\n const handleKakaoShare = () => { //카카오 공유하기 버튼\r\n try {\r\n window.Kakao.Link.sendDefault({\r\n objectType: 'feed',\r\n content: {\r\n title: '비글즈 MBTI 반려짝궁 테스트에 초대합니다.',\r\n description: '너는 내 DESTINY! 나의 운명의 반려짝꿍을 알아보자!',\r\n imageUrl: 'http://d3u9cao110kbec.cloudfront.net/Community/Board/2022/10/2022-10-MBTI.png',\r\n link: {\r\n webUrl: window.location.href,\r\n }\r\n },\r\n buttons: [{\r\n title: '함께 해보기',\r\n link: {\r\n mobileWebUrl: window.location.href,\r\n webUrl: window.location.href\r\n }\r\n }],\r\n })\r\n }\r\n catch (err) {\r\n console.log(\"ERR : \", err)\r\n setPopModal(true);\r\n setPopText(\"ERR : \", err)\r\n }\r\n }\r\n\r\n const CopyToClipboard = () => { //URL 복사하기 버튼\r\n let temp = document.createElement(\"textarea\");\r\n document.body.appendChild(temp);\r\n temp.value = window.location.href;\r\n temp.select();\r\n document.execCommand(\"copy\");\r\n document.body.removeChild(temp);\r\n setPopModal(true);\r\n setPopText(\"결과 공유 링크를 복사했습니다.\");\r\n }\r\n\r\n return (\r\n
\r\n
\r\n \r\n
\r\n

친구에게 반려짝꿍 공유하기

\r\n
    \r\n
  • \r\n handleKakaoShare()}>\r\n \"mbti_ic_kakao.png\"\r\n \r\n
  • \r\n
  • \r\n CopyToClipboard()}>\r\n \"mbti_ic_share_url.png\"\r\n \r\n
  • \r\n
\r\n
\r\n
\r\n 테스트 다시하기\r\n 앱 다운로드\r\n
\r\n
\r\n {/*
\r\n
\r\n
확인해주세요!
\r\n
공유 글에 본 이벤트와 관계없는 내용을 기재 시 추첨 내역에서 제외 될 수 있습니다.
\r\n
당첨자는 당첨 발표일까지 비글즈 계정 팔로잉을 유지하는 고객을 대상으로 선정됩니다.
\r\n
당첨 경품 수령 관련 상세 내용은 당첨 발표 시 안내될 예정이며, 안내에 따른 추가 정보 회신(메일)이 필요합니다.
\r\n
\r\n
*/}\r\n {\r\n popModal &&\r\n <>\r\n
\r\n
\r\n
{popText}
\r\n
\r\n setPopModal(false)} className=\"on\">확인\r\n
\r\n
\r\n \r\n }\r\n
\r\n )\r\n}\r\n\r\nexport default Result;","import React, { useEffect } from 'react';\r\nimport ResultComponent from '../components/Result';\r\nimport { eventTracking } from '../../Module/marketing';\r\n\r\n// interface MatchParams {\r\n// value: string;\r\n// }\r\n\r\nconst MbtiResult = ({ match }) => {\r\n const answer = Number(match.params.value) //결과값 설정\r\n\r\n useEffect(() => {\r\n eventTracking.SetGoogleAnalytics();\r\n eventTracking.SetKakaoPixel();\r\n }, [])\r\n\r\n return (\r\n
\r\n

MBTI

\r\n \r\n
\r\n )\r\n}\r\n\r\nexport default MbtiResult;","import React from 'react';\r\nimport { Link } from 'react-router-dom';\r\n\r\n//개발 테스트 전용 결과 표시 버튼 리스트\r\nconst ResultList = () => {\r\n return (\r\n <>\r\n
\r\n
\r\n
\r\n ESTJ 포메라니안\r\n ESFP 닥스훈트\r\n ENTP 슈나우저\r\n ESTP 보더콜리\r\n ENFJ 푸들\r\n ESFJ 골든 리트리버\r\n ENFP 비글\r\n ENTJ 도베르만\r\n 뒤로가기 \r\n
\r\n
\r\n
\r\n
\r\n ISTJ 터키쉬 앙고라\r\n ISFP 노르웨이숲\r\n INTP 스코티시 폴드\r\n ISTP 퍼그\r\n INFJ 스핑크스\r\n ISFJ 페르시안\r\n INTJ 먼치킨\r\n INFP 러시안 블루\r\n
\r\n
\r\n
\r\n \r\n )\r\n}\r\n\r\nexport default ResultList;","import React from 'react';\r\nimport ResultList from '../components/ResultList';\r\n\r\nconst MbtiTest = () => {\r\n return (\r\n
\r\n

MBTI

\r\n \r\n
\r\n )\r\n}\r\n\r\nexport default MbtiTest;","import React, { Component } from 'react';\r\nimport { Route, Switch } from 'react-router-dom';\r\nimport ExamineComponent from './components/Examine';\r\nimport Main from './routes/Main';\r\nimport MbtiResult from './routes/Result';\r\nimport MbtiTest from './routes/Test';\r\n\r\n\r\nexport default class MBTIAPP extends Component {\r\n render() {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n\r\n","import React from 'react';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { getDownloadLink } from '../../Shares/CommonUtil';\r\nimport { cdnUrlConfig } from '../../Utils/atoms';\r\n/**\r\n * 2022년겨울 펫월드 인증샷 프로모션 페이지 (크리스마스)\r\n */\r\nconst PetWorldChristmas = () => {\r\n const isApp = window.location.pathname.includes(\"app\") //URL에 \"app\"이 포함되면 true\r\n const cdnUrl = useRecoilValue(cdnUrlConfig);\r\n const IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\r\n return (\r\n
\r\n
\r\n
\r\n {/* 상단 비주얼 */}\r\n
\r\n

\r\n \"/images/room/christmas/tit.png\"\r\n

\r\n

펫스타그램에 겨울 펫월드 방문 인증하고
#크리스마스 해시태그 달고 젤리20개와 경품받자!

\r\n
\r\n {/* // 상단 비주얼 */}\r\n\r\n {/* 이벤트 안내 */}\r\n
\r\n
\r\n

\r\n 이벤트 상세 안내\r\n

\r\n
\r\n
    \r\n
  • \r\n
    참여기간
    \r\n
    2022년 12월 1일 ~ 12월 31일
    \r\n
  • \r\n
  • \r\n
    발표일
    \r\n
    2023년 1월 7일
    \r\n
  • \r\n
  • \r\n
    지급대상
    \r\n
    펫스타그램에 #크리스마스 해시태그와 겨울 펫월드 인증샷 게시물을 함께 올린 사용자 중 좋아요 숫자를 가장 많이 받은 1등, 2등, 3등과 이벤트 참가자 전원
    \r\n
  • \r\n
\r\n
\r\n {/* // 이벤트 안내 */}\r\n\r\n {/* 경품안내 */}\r\n
\r\n
\r\n

경품안내

\r\n
\r\n
\r\n
    \r\n
  1. \r\n
    \r\n
    1등
    \r\n
    \r\n \"/images/room/christmas/img_product1.png\"\r\n
    문화상품권 5만원권
    \r\n
    \r\n
    \r\n
    문화상품권 5만원권 (1명) 컬쳐랜드 문화상품권
    \r\n
  2. \r\n
  3. \r\n
    \r\n
    2등
    \r\n
    \r\n \"/images/room/christmas/img_product2.png\"\r\n
    문화상품권 3만원권
    \r\n
    \r\n
    \r\n
    문화상품권 3만원권 (1명) 컬쳐랜드 문화상품권
    \r\n
  4. \r\n
  5. \r\n
    \r\n
    3등
    \r\n
    \r\n \"/images/room/christmas/img_product3.png\"\r\n
    문화상품권 1만원권
    \r\n
    \r\n
    \r\n
    문화상품권 1만원권 (1명) 컬쳐랜드 문화상품권
    \r\n
  6. \r\n
\r\n
\r\n
참가자 전원
\r\n
\r\n 젤리 20개 지급!\r\n
\r\n
\r\n
\r\n
\r\n {/* // 경품안내 */}\r\n\r\n {/* 참여방법 */}\r\n
\r\n
\r\n

참여 안내

\r\n
\r\n
    \r\n
  1. \r\n
    1
    \r\n
    겨울 펫월드인 ‘gg페스타’, ‘캠핑장’, ‘무도회장’ 증
    하나를 방문해서 나의 캐릭터 모습 캡처하기
    \r\n
    \r\n
    \r\n \"/images/room/christmas/img_guide1.png\"\r\n
    \r\n
    비글즈 앱 겨웃 펫월드 캡처
    \r\n
    \r\n
  2. \r\n
  3. \r\n
    2
    \r\n
    우측 상단의 + 버튼 클릭 후 펫월드 사진 올리기
    \r\n
    \r\n
    \r\n \"/images/room/christmas/img_guide2.png\"\r\n
    \r\n
    하단 콘테스트 참여하기
    \r\n
    \r\n
  4. \r\n
  5. \r\n
    3
    \r\n
    겨울 펫월드 인증샷과 #크리스마스 해시태그를 달아
    게시물 업로드
    \r\n
    \r\n
    \r\n \"/images/room/christmas/img_guide3.png\"\r\n
    \r\n
    게시물 업로드
    \r\n
    \r\n
  6. \r\n
\r\n
\r\n {/* // 참여방법 */}\r\n\r\n {/* 안내 */}\r\n
\r\n
\r\n
확인해주세요!
\r\n
이벤트에 당첨되신 분들은 꼭 담청자 발표 7일 이내로 마이페이지 > 설정 > 고객센터 1:1 문의 접수 혹은 운영자 이메일 개별 연락을 통해 휴대전화 번호를 보내주셔야 합니다.
\r\n
펫월드 인증샷과 #해시태그를 함께 올리시지 않으신 분은 참여 무효 처리 됩니다.
\r\n
해당 이벤트는 사용자 1명이 여러 게시물을 올리실 수 있으시나, 중복 당첨은 불가합니다.
\r\n
기간 내 이벤트 수령을 원하시는 휴대전화번호를 보내주시지 않을 경우 당첨이 취소될 수 있습니다.
\r\n
이벤트 기간 동안 닉네임 변경 시 당첨 정보 확인이 불가하여 당첨이 취소될 수 있습니다.
\r\n
이벤트 상품은 교환 및 환불이 불가합니다.
\r\n
잘못된 정보로 인해 상품을 받지 못할 경우에는 재전송이 불가합니다.
\r\n
\r\n
\r\n {/* // 안내 */}\r\n {\r\n isApp ?\r\n <>\r\n {/* copyright - 인앱 */}\r\n
\r\n \"/images/gameking/logo.png\"\r\n
\r\n \r\n :\r\n <>\r\n {/* 다운로드 버튼 - bigglz 홈페이지(프로모션) */}\r\n \r\n 앱 다운로드 하러가기\r\n \r\n \r\n }\r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default PetWorldChristmas;","/* eslint-disable react-hooks/exhaustive-deps */\r\nimport React, { useEffect } from 'react';\r\nimport { useRecoilValue } from 'recoil';\r\nimport Swiper, { Pagination } from 'swiper';\r\nimport { cdnUrlConfig } from '../Utils/atoms';\r\n\r\nconst bullet = [\r\n\t'펫룸홈',\r\n\t'펫룸콘텐츠',\r\n\t'충전소',\r\n\t'댕냥별',\r\n\t'테마월드',\r\n\t'게임랜드',\r\n\t'인테리어샵',\r\n\t'펫스타그램',\r\n\t'펫라이프',\r\n\t'펫다이어리',\r\n\t'펫팔',\r\n\t'펫시설찾기',\r\n\t'마이페이지',\r\n];\r\n\r\nconst Tutorial = () => {\r\n\tconst cdnUrl = useRecoilValue(cdnUrlConfig);\r\n\tconst IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\r\n\tuseEffect(() => {\r\n\t\tSwiper.use([Pagination]);\r\n\t\tnew Swiper('.main', {\r\n\t\t\tslidesPerView: 1,\r\n\t\t\tspaceBetween: 30,\r\n\t\t\tautoHeight: 'auto',\r\n\t\t\tslideToClickedSlide: true,\r\n\t\t\ton: {\r\n\t\t\t\tslideNextTransitionStart: function () {\r\n\t\t\t\t\tconst scX = document.querySelector('.swiper-pagination');\r\n\t\t\t\t\tconst sBullet = document.querySelector(\r\n\t\t\t\t\t\t'.swiper-pagination-bullet-active'\r\n\t\t\t\t\t);\r\n\t\t\t\t\tfor (let i = 4; i <= scX.children.length; i++) {\r\n\t\t\t\t\t\tif (this.realIndex === i)\r\n\t\t\t\t\t\t\tscX.scrollLeft += sBullet.offsetWidth * 1.8;\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tslidePrevTransitionStart: function () {\r\n\t\t\t\t\tconst scX = document.querySelector('.swiper-pagination');\r\n\t\t\t\t\tconst sBullet = document.querySelector(\r\n\t\t\t\t\t\t'.swiper-pagination-bullet-active'\r\n\t\t\t\t\t);\r\n\t\t\t\t\tfor (let j = 9; j >= 0; j--) {\r\n\t\t\t\t\t\tif (this.realIndex === j)\r\n\t\t\t\t\t\t\tscX.scrollLeft -= sBullet.offsetWidth * 1.5;\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tactiveIndexChange: function () {\r\n\t\t\t\t\tif (0 <= window.scrollY) window.scrollTo(0, 0);\r\n\t\t\t\t},\r\n\t\t\t},\r\n\t\t\tpagination: {\r\n\t\t\t\tel: '.swiper-pagination',\r\n\t\t\t\tclickable: true,\r\n\t\t\t\trenderBullet: function (idx, className) {\r\n\t\t\t\t\treturn '
' + bullet[idx] + '
';\r\n\t\t\t\t},\r\n\t\t\t},\r\n\t\t});\r\n\t}, []);\r\n\r\n\t// 이미지 슬라이드 생성\r\n\tconst SwiperSlideBox = ({ name, num }) => {\r\n\t\tconst images = [...Array(num)].map(\r\n\t\t\t(_, i) => `${IMG_URL}/images/tutorial/guide_${name}${i + 1}.png`\r\n\t\t);\r\n\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t{images.map((image, index) => (\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{`가이드\r\n\t\t\t\t\t
\r\n\t\t\t\t))}\r\n\t\t\t
\r\n\t\t);\r\n\t};\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {/** 펫룸홈 */}\r\n {/** 펫룸콘텐츠 */}\r\n {/** 충전소 */}\r\n {/** 댕냥별 */}\r\n {/** 테마월드 */}\r\n {/** 게임랜드 */}\r\n {/** 인테리어샵 */}\r\n {/** 펫스타그램 */}\r\n {/** 펫라이프 */}\r\n {/** 펫다이어리 */}\r\n {/** 펫팔 */}\r\n {/** 펫시설찾기 */}\r\n {/** 마이페이지 */}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default Tutorial;\r\n","import axios from \"axios\";\r\n\r\nexport const api = axios.create({\r\n headers: { 'Content-Type': `application/json` },\r\n});","import { api } from \"../api\";\r\n\r\nexport const GameKingApi = {\r\n getGameKingList: (size, date, member_se) =>\r\n api.get(`api/event/game-king/list?size=${size}&date=${date}&my_member_se=${member_se}`),\r\n};","/**\r\n * Unity Event 선언\r\n * call\r\n * GetUserSE : 유니티 앱에서 member_se를 가져온다.\r\n * GetEventSE : 유니티 앱에서 event_se를 가져온다.\r\n * BackToEvent : 유니티 앱 웹뷰의 종료버튼 함수이다.\r\n */\r\nexport function initUnity() {\r\n\tif (\r\n\t\twindow &&\r\n\t\twindow.webkit &&\r\n\t\twindow.webkit.messageHandlers &&\r\n\t\twindow.webkit.messageHandlers.unityControl\r\n\t) {\r\n\t\t// iOS\r\n\t\twindow.Unity = {\r\n\t\t\tcall: function (msg) {\r\n\t\t\t\twindow.webkit.messageHandlers.unityControl.postMessage(msg);\r\n\t\t\t},\r\n\t\t\tGetUserSE: function () {\r\n\t\t\t\twindow.webkit.messageHandlers.unityControl.postMessage('getuserse');\r\n\t\t\t},\r\n\t\t\tGetEventSE: function () {\r\n\t\t\t\twindow.webkit.messageHandlers.unityControl.postMessage('geteventse');\r\n\t\t\t},\r\n\t\t\tBackToEvent: function () {\r\n\t\t\t\twindow.webkit.messageHandlers.unityControl.postMessage('backtoevent');\r\n\t\t\t},\r\n\t\t\tGoToFactory: function () {\r\n\t\t\t\twindow.webkit.messageHandlers.unityControl.postMessage('gotofactory');\r\n\t\t\t},\r\n\t\t\tGoToFortune: function () {\r\n\t\t\t\twindow.webkit.messageHandlers.unityControl.postMessage('gotofortune');\r\n\t\t\t},\r\n\t\t\tMixPanelClickEventButton: function (event_nm, event_category) {\r\n\t\t\t\twindow.webkit.messageHandlers.unityControl.postMessage(\r\n\t\t\t\t\t`MixPanel=click_event_button?event_name:${event_nm}/source:${event_category}`\r\n\t\t\t\t);\r\n\t\t\t},\r\n\t\t\tMixPanelCompleteEvent: function (event_nm, event_category, reward_nm) {\r\n\t\t\t\twindow.webkit.messageHandlers.unityControl.postMessage(\r\n\t\t\t\t\t`MixPanel=complete_event?event_product:${reward_nm}/event_name:${event_nm}/source:${event_category}`\r\n\t\t\t\t);\r\n\t\t\t},\r\n\t\t\tGoToGameLand: function () {\r\n\t\t\t\twindow.webkit.messageHandlers.unityControl.postMessage('gotogameland');\r\n\t\t\t},\r\n\t\t\tGoToTicket: function () {\r\n\t\t\t\twindow.webkit.messageHandlers.unityControl.postMessage('gototicket');\r\n\t\t\t},\r\n\t\t};\r\n\t} else {\r\n\t\t// AOS\r\n\t\twindow.Unity = {\r\n\t\t\tcall: function (msg) {\r\n\t\t\t\twindow.location = 'unity:' + msg;\r\n\t\t\t},\r\n\t\t\tGetUserSE: function () {\r\n\t\t\t\twindow.location = 'unity:getuserse';\r\n\t\t\t},\r\n\t\t\tGetEventSE: function () {\r\n\t\t\t\twindow.location = 'unity:geteventse';\r\n\t\t\t},\r\n\t\t\tBackToEvent: function () {\r\n\t\t\t\twindow.location = 'unity:backtoevent';\r\n\t\t\t},\r\n\t\t\tGoToFactory: function () {\r\n\t\t\t\twindow.location = 'unity:gotofactory';\r\n\t\t\t},\r\n\t\t\tGoToFortune: function () {\r\n\t\t\t\twindow.location = 'unity:gotofortune';\r\n\t\t\t},\r\n\t\t\tMixPanelClickEventButton: function (event_nm, event_category) {\r\n\t\t\t\twindow.location = `unity:MixPanel=click_event_button?event_name:${event_nm}/source:${event_category}`;\r\n\t\t\t},\r\n\t\t\tMixPanelCompleteEvent: function (event_nm, event_category, reward_nm) {\r\n\t\t\t\twindow.location = `unity:MixPanel=complete_event?event_product:${reward_nm}/event_name:${event_nm}/source:${event_category}`;\r\n\t\t\t},\r\n\t\t\tGoToGameLand: function () {\r\n\t\t\t\twindow.location = 'unity:gotogameland';\r\n\t\t\t},\r\n\t\t\tGoToTicket: function () {\r\n\t\t\t\twindow.location = 'unity:gototicket';\r\n\t\t\t},\r\n\t\t};\r\n\t}\r\n}\r\n\r\n/**\r\n * 유니티 웹뷰 실행 시 callback 함수에 member_se를 전달해준다.\r\n * @param {*} callback setMember 콜백함수\r\n * @param {*} error 에러메시지 alert 창 콜백함수\r\n * @param {*} delay interval delay 시간\r\n */\r\nexport function setUnityMember(callback, error, delay = 1000) {\r\n\tlet count = 0;\r\n\r\n\tconst interval = setInterval(() => {\r\n\t\tcount += 1;\r\n\t\tconst member_se = Number(window.GetMemberSE());\r\n\t\tif (member_se > 0 || count >= 5) {\r\n\t\t\tcallback(member_se);\r\n\t\t\tclearInterval(interval);\r\n\r\n\t\t\tif (member_se === 0) {\r\n\t\t\t\tconst message =\r\n\t\t\t\t\t'유저 정보를 불러오지 못했습니다. 이벤트 재접속을 부탁드립니다.';\r\n\t\t\t\terror(message);\r\n\t\t\t}\r\n\t\t}\r\n\t}, delay);\r\n}\r\n","import React from 'react';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { cdnUrlConfig } from '../../Utils/atoms';\r\n\r\nconst GameKingPrizeWinner = () => {\r\n\tconst cdnUrl = useRecoilValue(cdnUrlConfig);\r\n\tconst IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t{/*
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t

이벤트 당첨자 발표

\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t경품 지급은 당첨자 발표 후 7일 이내
\r\n\t\t\t\t\t\t\t고객센터 1:1 문의 혹은{' '}\r\n\t\t\t\t\t\t\t운영자 이메일 개별 연락을 통해\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t휴대전화번호를 보내주세요\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
  1. \r\n\t\t\t\t\t\t\t\t
    1등
    \r\n\t\t\t\t\t\t\t\t
    달숭이
    \r\n\t\t\t\t\t\t\t\t
    187,820점
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t도미노 피자 뉴욕 오리진 M (오리지널) +콜라 1.25L, BBQ 황금\r\n\t\t\t\t\t\t\t\t\t올리브 치킨 + 콜라 1.25L\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
  2. \r\n\t\t\t\t\t\t\t
  3. \r\n\t\t\t\t\t\t\t\t
    2등
    \r\n\t\t\t\t\t\t\t\t
    라밍
    \r\n\t\t\t\t\t\t\t\t
    176,910점
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    교촌치킨 반반콤보 웨지 감자 세트
    \r\n\t\t\t\t\t\t\t
  4. \r\n\t\t\t\t\t\t\t
  5. \r\n\t\t\t\t\t\t\t\t
    3등
    \r\n\t\t\t\t\t\t\t\t
    오리오링
    \r\n\t\t\t\t\t\t\t\t
    176,900점
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    베스킨라빈스 파인트
    \r\n\t\t\t\t\t\t\t
  6. \r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
확인해주세요!
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t이벤트에 당첨되신 분들은 꼭 당첨자 발표 7일 이내로\r\n\t\t\t\t\t\t\t\t마이페이지>설정>고객센터 1:1 문의 접수 혹은 운영자 이메일\r\n\t\t\t\t\t\t\t\t개별 연락을 통해 휴대 전화 번호를 보내주세요.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
기프티콘은 당첨자 발표 후 7일 이내에 보내드립니다.
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t기간 내 이벤트 수령을 원하시는 휴대전화 번호를 보내주시지 않을\r\n\t\t\t\t\t\t\t\t경우 당첨이 취소될 수 있습니다.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t이벤트 기간 동안 닉네임 변경 시 당첨자 정보 확인이 불가하여\r\n\t\t\t\t\t\t\t\t당첨이 취소될 수 있습니다.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
이벤트 상품은 교환 및 환불이 불가합니다.
\r\n\t\t\t\t\t\t\t
이벤트 경품은 9월 11일 이후 일괄 발송될 예정입니다.
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t잘못된 정보로 인해 상품을 받지 못할 경우에는 경품 재전달이\r\n\t\t\t\t\t\t\t\t불가합니다.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
받으신 기프티콘은 유효기간 내에 꼭 사용해주시기 바랍니다.
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
*/}\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default GameKingPrizeWinner;\r\n","/* eslint-disable react-hooks/exhaustive-deps */\r\nimport React, { useEffect, useState } from 'react';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { cdnUrlConfig } from '../../Utils/atoms';\r\nimport { GameKingApi } from '../../Utils/Api/GameKingApi';\r\nimport { useLocation } from 'react-router-dom';\r\nimport { getDateString, splitQuery } from '../../Shares/CommonUtil';\r\nimport { initUnity } from '../../Utils/unityUtil';\r\nimport GameKingPrizeWinner from './GameKingPrizeWinner';\r\n\r\nconst pageSize = 10;\r\n\r\n/**\r\n * 게임의왕좌 2023년 랭킹 리스트 페이지\r\n */\r\nconst GameKing2023Ranking = () => {\r\n\tconst cdnUrl = useRecoilValue(cdnUrlConfig);\r\n\tconst IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\tconst [datas, setDatas] = useState([]);\r\n\tconst [popUpTip, setPopUpTip] = useState(false);\r\n\tconst { search } = useLocation();\r\n\tconst querys = splitQuery(search);\r\n\r\n\tconst date = querys['date'] ? querys['date'] : ''; // yyyyMM\r\n\tconst member_se = querys['member_se'] ? querys['member_se'] : 0;\r\n\tconst { month, firstDayString, lastDayString, resultDateString } =\r\n\t\tgetDateString(date);\r\n\tconst currentDate = new Date();\r\n\tconst eventEndDate = new Date('2023-08-01 00:00:00'); // 게임의 왕좌 이벤트 종료 날짜\r\n\r\n\tuseEffect(() => {\r\n\t\tinitUnity();\r\n\r\n\t\tGameKingApi.getGameKingList(pageSize, date, member_se) // 게임의왕좌 월간 점수총합 랭킹 리스트 GET\r\n\t\t\t.then((response) => {\r\n\t\t\t\tconst {\r\n\t\t\t\t\tstatus,\r\n\t\t\t\t\tdata: { datas },\r\n\t\t\t\t} = response;\r\n\t\t\t\tif (status === 200) {\r\n\t\t\t\t\tsetDatas(datas);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t}, []);\r\n\r\n\tfunction onGameKingTitleImageError(event) {\r\n\t\tevent.target.src = `${IMG_URL}/images/gameking/tit_game_default.png`;\r\n\t}\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t지금까지 게임의 왕좌에\r\n\t\t\t\t\t\t\t\t
많은 관심을 보내주셔서 감사해요.\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t아쉽지만, 게임의 왕좌 이벤트는
{' '}\r\n\t\t\t\t\t\t\t\t잠시 종료되었음을 알려드려요.\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t비글즈는 더 다양하고 재밌는\r\n\t\t\t\t\t\t\t\t
이벤트들과 함께 돌아오도록 할게요.\r\n\t\t\t\t\t\t\t\t
조금만 기다려주세요!\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default GameKing2023Ranking;\r\n","import React, { useEffect, useState } from 'react';\r\nimport { useLocation } from 'react-router-dom';\r\nimport { useRecoilValue } from 'recoil';\r\nimport {\r\n\tgetDateString,\r\n\tgetDownloadLink,\r\n\tsplitQuery,\r\n} from '../../Shares/CommonUtil';\r\nimport { cdnUrlConfig } from '../../Utils/atoms';\r\n\r\n/**\r\n * 게임의왕좌 2023년 프로모션 페이지\r\n */\r\nconst GameKing2023Promotion = () => {\r\n\tconst cdnUrl = useRecoilValue(cdnUrlConfig);\r\n\tconst IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\r\n\tconst isApp = window.location.pathname.includes('app'); //URL에 \"app\"이 포함되면 true\r\n\tconst { search } = useLocation();\r\n\tconst querys = splitQuery(search);\r\n\r\n\tconst date = querys['date'] ? querys['date'] : ''; // yyyyMM\r\n\tconst { month, firstDayString, lastDayString, resultDateString } =\r\n\t\tgetDateString(date);\r\n\r\n\tfunction onGameKingTitleImageError(event) {\r\n\t\tevent.target.src = `${IMG_URL}/images/gameking/tit_game_default.png`;\r\n\t}\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t onGameKingTitleImageError(event)}\r\n\t\t\t\t\t\t\t\talt='게임의 왕좌 타이틀'\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t

미니게임 {month}월 이벤트

\r\n\t\t\t\t\t\t{/* 경품안내 */}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t경품안내\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t미니게임에서 최고의 자리에 도전해보세요.\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t왕좌를 차지하신 분들께는 소정의 상품을\r\n\t\t\t\t\t\t\t\t제공합니다.\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  1. \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t도미노피자 뉴욕 오리진 M (오리지널) + 콜라 1.25L + BBQ황금\r\n\t\t\t\t\t\t\t\t\t\t\t올리브 치킨 + 콜라 1.25L\r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    1등
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t도미노피자 뉴욕 오리진 M (오리지널) + 콜라 1.25L\r\n\t\t\t\t\t\t\t\t\t\t\t
    + BBQ황금 올리브 치킨 + 콜라 1.25L\r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  2. \r\n\t\t\t\t\t\t\t\t
  3. \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    교촌치킨 반반콤보 웨지 감자 세트
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    2등
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t교촌치킨 반반콤보 웨지 감자 세트\r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  4. \r\n\t\t\t\t\t\t\t\t
  5. \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    베스킨라빈스 파인트
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    3등
    \r\n\t\t\t\t\t\t\t\t\t\t
    베스킨라빈스 파인트
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  6. \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t{/* 이벤트 상세 안내 */}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

이벤트 상세 안내

\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t참여기간\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t{firstDayString} ~ {lastDayString}\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t발표일\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    {resultDateString}
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t지급대상\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t미니게임 9종의 점수 총 합이 가장 높은 3인\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t{/* 함께 즐겨요 */}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

친구와 함께 게임을 즐겨요~!

\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  1. \r\n\t\t\t\t\t\t\t\t\t
    1
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t탄이\r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    230,000
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  2. \r\n\t\t\t\t\t\t\t\t
  3. \r\n\t\t\t\t\t\t\t\t\t
    2
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t레오\r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    183,000
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  4. \r\n\t\t\t\t\t\t\t\t
  5. \r\n\t\t\t\t\t\t\t\t\t
    3
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t망고\r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    158,000
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  6. \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t{/* 참여방법 */}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t참여방법\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  1. \r\n\t\t\t\t\t\t\t\t\t
    1
    \r\n\t\t\t\t\t\t\t\t\t
    비글즈 앱을 다운로드 받으세요
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    비글즈 앱
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  2. \r\n\t\t\t\t\t\t\t\t
  3. \r\n\t\t\t\t\t\t\t\t\t
    2
    \r\n\t\t\t\t\t\t\t\t\t
    9가지 미니게임 플레이 하기
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    야생동물이 나타났다
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    모닥불 앞에서 춤을
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    꽃들이 모여모여
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    명화를 감상하자
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    무도회장 밤의 열기
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    샴페인 대소동
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    선물을 향해 쏴라
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    락 앤 롤 아웃
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    몸도 마음도 락스타
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  4. \r\n\t\t\t\t\t\t\t\t
  5. \r\n\t\t\t\t\t\t\t\t\t
    3
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t9가지 미니게임의 총 점이 가장 높은사람이 우승!\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t1800+15832\r\n\t\t\t\t\t\t\t\t\t\t\t+10342+\r\n\t\t\t\t\t\t\t\t\t\t\t10009\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t...+2100\r\n\t\t\t\t\t\t\t\t\t\t\t\t+1230\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t=103942\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  6. \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t{/* 확인해주세요 */}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
확인해주세요!
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t왕좌는 오직 1명당 1개만 차지할 수 있습니다.\r\n\t\t\t\t\t\t\t\t\t(중복당첨불가)\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t당첨자 발표 후 7일 이내로 문의 접수를 해주시지 않을 경우\r\n\t\t\t\t\t\t\t\t\t당첨자에서 제외될 수 있습니다.\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t이벤트는 기프티콘 형태로 지급이 되기 때문에 정확한 전화번호를\r\n\t\t\t\t\t\t\t\t\t입력해 주셔야 경품 발송이 가능합니다.\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
이벤트 상품은 교환 및 환불이 불가합니다.
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t잘못된 배송 정보로 인해 상품을 받지 못할 경우에는 재배송이\r\n\t\t\t\t\t\t\t\t\t불가합니다.\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t해당 경품은 만료 기간이 존재하는 상품으로 꼭 기간 내 사용을\r\n\t\t\t\t\t\t\t\t\t부탁 드립니다.\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
해당 이벤트는 앱스토어와 무관합니다.
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t{isApp ? (\r\n\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\t{/* 다운로드 버튼 */}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t앱 다운로드 하러가기\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default GameKing2023Promotion;\r\n","import React from 'react';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { cdnUrlConfig } from '../../Utils/atoms';\r\n\r\nconst GameKingEventEnd = () => {\r\n\tconst cdnUrl = useRecoilValue(cdnUrlConfig);\r\n\tconst IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t지금까지 게임의 왕좌에\r\n\t\t\t\t\t\t\t\t
많은 관심을 보내주셔서 감사해요.\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t아쉽지만, 게임의 왕좌 이벤트는
{' '}\r\n\t\t\t\t\t\t\t\t잠시 종료되었음을 알려드려요.\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t비글즈는 더 다양하고 재밌는\r\n\t\t\t\t\t\t\t\t
이벤트들과 함께 돌아오도록 할게요.\r\n\t\t\t\t\t\t\t\t
조금만 기다려주세요!\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default GameKingEventEnd;\r\n","import React, { Component } from 'react';\r\nimport { Route, Switch } from 'react-router-dom';\r\nimport GameKingRanking from './routes/GameKingRanking';\r\nimport GameKingPromotion from './routes/GameKingPromotion';\r\nimport GameKingEventEnd from './routes/GameKingEventEnd';\r\nimport GameKingPrizeWinner from './routes/GameKingPrizeWinner';\r\n\r\nexport default class GameKingIndex extends Component {\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n","import React from 'react';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { cdnUrlConfig } from '../Utils/atoms';\r\n\r\nconst Survey = () => {\r\n const cdnUrl = useRecoilValue(cdnUrlConfig);\r\n const IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n const outLinks = {\r\n survey: \"https://docs.google.com/forms/d/e/1FAIpQLSfxmOcQooudOi7LoSEnf0I8-uQp-TYstKf--11vlgDIurw3Gg/viewform\",\r\n }\r\n\r\n return (\r\n
\r\n
\r\n
\r\n {/* 상단 비주얼 */}\r\n
\r\n

\r\n \r\n \"images/survey/tit.png\"\r\n \r\n 설문조사\r\n 이벤트\r\n

\r\n
\r\n \"images/survey/img_visual.png\"\r\n
\r\n
\r\n {/* 이벤트 문구 */}\r\n
\r\n 비글즈 설문조사에 참여하시고,
푸짐한 상품을 받아가세요!\r\n
\r\n {/* 이벤트 안내 */}\r\n
\r\n

이벤트 안내

\r\n
    \r\n
  • \r\n
    기간
    \r\n
    2022년 11월 18일 ~ 12월 2일
    \r\n
  • \r\n
  • \r\n
    대상
    \r\n
    비글즈 설문조사에 참가하신 분
    \r\n
  • \r\n
  • \r\n
    발표
    \r\n
    2022년 12월 9일
    \r\n
  • \r\n
\r\n
\r\n {/* 상품안내 */}\r\n
\r\n

상품안내

\r\n
    \r\n
  1. \r\n
    1등
    \r\n
    \r\n
    \r\n \"images/survey/img_product1.png\"\r\n
    \r\n
    \r\n
    닌텐도 스위치(1명)
    \r\n
  2. \r\n
  3. \r\n
    2등
    \r\n
    \r\n
    \r\n \"images/survey/img_product2.png\"\r\n
    \r\n
    \r\n
    빕스 5만원 기프트 카드(3명)
    \r\n
  4. \r\n
  5. \r\n
    3등
    \r\n
    \r\n
    \r\n \"images/survey/img_product3.png\"\r\n
    \r\n
    \r\n
    스타벅스 아이스
    아메리카노 (50명)
    \r\n
  6. \r\n
\r\n
\r\n {/* 이벤트 참여방법 */}\r\n
\r\n

이벤트 참여방법

\r\n
    \r\n
  1. \r\n

    STEP1

    \r\n

    비글즈 앱 다운로드 받아 사용하기

    \r\n
    \r\n
    \r\n \"images/survey/img_step1.png\"\r\n
    \r\n
    \r\n
  2. \r\n
  3. \r\n

    STEP2

    \r\n

    비글즈 설문조사 참여하기

    \r\n
    \r\n
    \r\n \"images/survey/img_step2.png\"\r\n
    \r\n
    \r\n
  4. \r\n
\r\n
\r\n {/* 안내 */}\r\n
\r\n
\r\n
확인해주세요!
\r\n
개인정보 활용 동의 및 설문을 끝까지 완료해 주셔야 이벤트 참가가 완료됩니다.
\r\n
응답 해주시는 모든 내용은 통계 목적으로만 집계되며, 다른 용도로는 사용되지 않습니다.
\r\n
이벤트 기프티콘은 전화번호를 통해 전송되며, 닌텐도 스위치 경품은 유저님의 주소로 배송됩니다.
\r\n
이벤트 상품은 교환 및 환불이 불가합니다.
\r\n
기프티콘 상품은 만료 기간이 존재하는 상품으로 꼭 기간 내 사용을 부탁 드립니다.
\r\n
해당 이벤트는 앱스토어 또는 구글 플레이스토어 등과 무관합니다.
\r\n
\r\n
\r\n 비글즈 설문조사 참가하기\r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default Survey;","import React from 'react';\r\n\r\n/**\r\n * 댕냥룸 콘테스트 이벤트 2022-11월 프로모션 페이지\r\n */\r\nconst PetHomePromotion = () => {\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n
11월
\r\n

\r\n \"댕냥룸\r\n

\r\n

댕냥룸 자랑하고 신세계 상품권 받아가자!

\r\n
\r\n
\r\n
\r\n

\r\n 이벤트 상세 안내\r\n

\r\n
\r\n
    \r\n
  • \r\n
    기간
    \r\n
    2022년 11월 1일 ~ 2022년 11월 30일
    \r\n
  • \r\n
  • \r\n
    당첨안내
    \r\n
    좋아요 를 가장 많이 받은 참가자
    \r\n
  • \r\n
  • \r\n
    발표일
    \r\n
    2022년 12월 7일
    \r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n

경품안내

\r\n
\r\n
\r\n
\r\n
\r\n

월간보상

\r\n
\r\n
    \r\n
  1. \r\n
    \r\n
    \r\n \"신세계\r\n
    신세계 상품권 10만원권
    \r\n
    \r\n
    \r\n
    1등 신세계 상품권 10만원권
    \r\n
  2. \r\n
  3. \r\n
    \r\n
    \r\n \"신세계\r\n
    신세계 상품권 5만원권
    \r\n
    \r\n
    \r\n
    2등 신세계 상품권 5만원권
    \r\n
  4. \r\n
  5. \r\n
    \r\n
    \r\n \"CGV\r\n
    CGV 기프트카드 2만원권
    \r\n
    \r\n
    \r\n
    3등 CGV 기프트카드 2만원권
    \r\n
  6. \r\n
\r\n
\r\n
\r\n
\r\n

주간보상

\r\n
\r\n
    \r\n
  1. \r\n 1등\r\n \r\n 젤리 300\r\n
  2. \r\n
  3. \r\n 2등\r\n \r\n 젤리 100\r\n
  4. \r\n
  5. \r\n 3등\r\n \r\n 젤리 50\r\n
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

참여 방법

\r\n
\r\n
    \r\n
  1. \r\n
    1
    \r\n
    비글즈 홈 화면에서
    댕냥룸 콘테스트 배너 클릭
    \r\n
    \r\n
    \r\n \"비글즈\r\n
    \r\n
    비글즈 홈 화면에서 댕냥룸 콘테스트 배너 클릭
    \r\n
    \r\n
  2. \r\n
  3. \r\n
    2
    \r\n
    하단 콘테스트 참여하기
    \r\n
    \r\n
    \r\n \"비글즈\r\n
    \r\n
    하단 콘테스트 참여하기
    \r\n
    \r\n
  4. \r\n
  5. \r\n
    3
    \r\n
    마이룸에서 댕냥룸을
    캡처해서 업로드
    \r\n
    \r\n
    \r\n \"비글즈\r\n
    \r\n
    마이룸에서 댕냥룸을 캡처해서 업로드
    \r\n
    \r\n
  6. \r\n
\r\n
\r\n
\r\n
\r\n
확인해주세요!
\r\n
동일 좋아요 수가 존재할 경우 먼저 높은 좋아요를 달성한 사람이 더 높은 순위로 설정됩니다.
\r\n
참가자 미달 시 당첨자가 없을 수 있습니다.
\r\n
당첨자가 회원 탈퇴 등으로 인해 확인이 불가할 경우 당첨이 취소됩니다.
\r\n
주말 포함 7일 이내 연락이 없을 시 당첨이 취소됩니다.
\r\n
당첨 경품 수령 관련 상세 내용은 당첨 발표 시 안내될 예정이며, 안내에 따른 추가 정보 회신이 필요합니다.
\r\n
\r\n 이 이벤트는 앱스토어 또는 구글 플레이스토어 등과 무관합니다.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default PetHomePromotion;","import React from 'react';\r\n\r\n/**\r\n * 댕냥룸 콘테스트 이벤트 2022-12월 프로모션 페이지\r\n */\r\nconst PetHomePromotion = () => {\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n
11월
\r\n

\r\n \"댕냥룸\r\n

\r\n

댕냥룸 자랑하고 올리브영 기프트카드 받아가자!

\r\n
\r\n
\r\n
\r\n

\r\n 이벤트 상세 안내\r\n

\r\n
\r\n
    \r\n
  • \r\n
    기간
    \r\n
    2022년 12월 1일 ~ 2022년 12월 31일
    \r\n
  • \r\n
  • \r\n
    당첨안내
    \r\n
    \r\n 크리스마스 아이템으로 댕냥룸을 꾸미고,
    좋아요 를 가장 많이 받은 참가자\r\n
    \r\n
  • \r\n
  • \r\n
    발표일
    \r\n
    2023년 1월 7일
    \r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n

경품안내

\r\n
\r\n
\r\n
\r\n
\r\n

월간보상

\r\n
\r\n
    \r\n
  1. \r\n
    \r\n
    \r\n \"올리브영\r\n
    올리브영 기프트카드 15만원
    \r\n
    \r\n
    \r\n
    1등 올리브영 기프트카드 15만원
    \r\n
  2. \r\n
  3. \r\n
    \r\n
    \r\n \"올리브영\r\n
    올리브영 기프트카드 10만원
    \r\n
    \r\n
    \r\n
    2등 올리브영 기프트카드 10만원
    \r\n
  4. \r\n
  5. \r\n
    \r\n
    \r\n \"올리브영\r\n
    올리브영 기프트카드 5만원
    \r\n
    \r\n
    \r\n
    3등 올리브영 기프트카드 5만원
    \r\n
  6. \r\n
\r\n
\r\n
\r\n
\r\n

주간보상

\r\n
\r\n
    \r\n
  1. \r\n 1등\r\n \r\n 젤리 300\r\n
  2. \r\n
  3. \r\n 2등\r\n \r\n 젤리 100\r\n
  4. \r\n
  5. \r\n 3등\r\n \r\n 젤리 50\r\n
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

참여 방법

\r\n
\r\n
    \r\n
  1. \r\n
    1
    \r\n
    비글즈 홈 화면에서
    댕냥룸 콘테스트 배너 클릭
    \r\n
    \r\n
    \r\n \"비글즈\r\n
    \r\n
    비글즈 홈 화면에서 댕냥룸 콘테스트 배너 클릭
    \r\n
    \r\n
  2. \r\n
  3. \r\n
    2
    \r\n
    하단 콘테스트 참여하기
    \r\n
    \r\n
    \r\n \"비글즈\r\n
    \r\n
    하단 콘테스트 참여하기
    \r\n
    \r\n
  4. \r\n
  5. \r\n
    3
    \r\n
    마이룸에서 댕냥룸을
    캡처해서 업로드
    \r\n
    \r\n
    \r\n \"비글즈\r\n
    \r\n
    마이룸에서 댕냥룸을 캡처해서 업로드
    \r\n
    \r\n
  6. \r\n
\r\n
\r\n
\r\n
\r\n
확인해주세요!
\r\n
동일 좋아요 수가 존재할 경우 먼저 높은 좋아요를 달성한 사람이 더 높은 순위로 설정됩니다.
\r\n
참가자 미달 시 당첨자가 없을 수 있습니다.
\r\n
당첨자가 회원 탈퇴 등으로 인해 확인이 불가할 경우 당첨이 취소됩니다.
\r\n
주말 포함 7일 이내 연락이 없을 시 당첨이 취소됩니다.
\r\n
당첨 경품 수령 관련 상세 내용은 당첨 발표 시 안내될 예정이며, 안내에 따른 추가 정보 회신이 필요합니다.
\r\n
\r\n 이 이벤트는 앱스토어 또는 구글 플레이스토어 등과 무관합니다.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default PetHomePromotion;","import React from 'react';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { getDownloadLink } from '../../Shares/CommonUtil';\r\nimport { cdnUrlConfig } from '../../Utils/atoms';\r\n\r\n/**\r\n * 댕냥룸 콘테스트 이벤트 2023-01월 프로모션 페이지\r\n */\r\nconst PetHomePromotionJanuary = () => {\r\n const cdnUrl = useRecoilValue(cdnUrlConfig);\r\n const IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n
1월
\r\n

\r\n \"/images/room/january/tit_january.png\"\r\n

\r\n

댕냥룸 콘테스트에 나의 댕냥룸 자랑하고 올리브영 기프트카드 받아가자~!

\r\n
\r\n
\r\n
\r\n

\r\n 이벤트 상세 안내\r\n

\r\n
\r\n
    \r\n
  • \r\n
    기간
    \r\n
    2023년 01월 1일 ~ 2023년 01월 31일
    \r\n
  • \r\n
  • \r\n
    당첨대상
    \r\n
    \r\n 설날 아이템으로 댕냥룸을 꾸미고,
    좋아요 를 가장 많이 받은 참가자\r\n
    \r\n
  • \r\n
  • \r\n
    발표일
    \r\n
    2023년 2월 7일
    \r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n

경품
안내

\r\n
\r\n
\r\n
\r\n
\r\n

월간보상

\r\n
\r\n
    \r\n
  1. \r\n
    \r\n
    \r\n \"/images/room/img_rewards1.png\"\r\n
    올리브영 기프트카드 15만원
    \r\n
    \r\n
    \r\n
    1등 올리브영 기프트카드 15만원
    \r\n
  2. \r\n
  3. \r\n
    \r\n
    \r\n \"/images/room/img_rewards2.png\"\r\n
    올리브영 기프트카드 10만원
    \r\n
    \r\n
    \r\n
    2등 올리브영 기프트카드 10만원
    \r\n
  4. \r\n
  5. \r\n
    \r\n
    \r\n \"/images/room/img_rewards3.png\"\r\n
    올리브영 기프트카드 5만원
    \r\n
    \r\n
    \r\n
    3등 올리브영 기프트카드 5만원
    \r\n
  6. \r\n
\r\n
\r\n
\r\n
\r\n

주간보상

\r\n
\r\n
    \r\n
  1. \r\n 1등\r\n \r\n 젤리 300\r\n
  2. \r\n
  3. \r\n 2등\r\n \r\n 젤리 100\r\n
  4. \r\n
  5. \r\n 3등\r\n \r\n 젤리 50\r\n
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

참여
방법

\r\n
\r\n
    \r\n
  1. \r\n
    1
    \r\n
    펫홈 화면에서
    댕냥룸 콘테스트 아이콘 클릭
    \r\n
    \r\n
    \r\n \"/images/room/january/img_guide1.png\"\r\n
    \r\n
    펫홈 화면에서 댕냥룸 콘테스트 아이콘 클릭
    \r\n
    \r\n
  2. \r\n
  3. \r\n
    2
    \r\n
    하단 콘테스트 참여하기
    \r\n
    \r\n
    \r\n \"/images/room/january/img_guide2.png\"\r\n
    \r\n
    하단 콘테스트 참여하기
    \r\n
    \r\n
  4. \r\n
  5. \r\n
    3
    \r\n
    마이룸에서 댕냥룸을
    캡처해서 업로드
    \r\n
    \r\n
    \r\n \"/images/room/january/img_guide3.png\"\r\n
    \r\n
    마이룸에서 댕냥룸을 캡처해서 업로드
    \r\n
    \r\n
  6. \r\n
\r\n
\r\n
\r\n
\r\n
확인해주세요!
\r\n
동일 좋아요 수가 존재할 경우 먼저 높은 좋아요를 달성한 사람이 더 높은 순위로 설정됩니다.
\r\n
참가자 미달 시 당첨자가 없을 수 있습니다.
\r\n
당첨자가 회원 탈퇴 등으로 인해 확인이 불가할 경우 당첨이 취소됩니다.
\r\n
주말 포함 7일 이내 연락이 없을 시 당첨이 취소됩니다.
\r\n
1월 댕냥룸 콘테스트는 설날 아이템으로 댕냥룸을 꾸미고, 좋아요를 가장 많이 받은 참가자 중 1,2,3등이 경품을 받으실 수 있습니다.
\r\n
당첨 경품 수령 관련 상세 내용은 당첨 발표 시 안내될 예정이며, 안내에 따른 추가 정보 회신이 필요합니다.
\r\n
해당 이벤트는 앱스토어 또는 구글 플레이스토어 등과 무관합니다.
\r\n
\r\n
\r\n \r\n 앱 다운로드 하러가기\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default PetHomePromotionJanuary;","import React from 'react';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { getDownloadLink } from '../../Shares/CommonUtil';\r\nimport { cdnUrlConfig } from '../../Utils/atoms';\r\n\r\n/**\r\n * 댕냥룸 콘테스트 이벤트 2023-02월 프로모션 페이지\r\n */\r\nconst PetHomePromotionFebruary = () => {\r\n const cdnUrl = useRecoilValue(cdnUrlConfig); //비글즈 AWS S3 CDN URL\r\n const IMG_URL = `${cdnUrl}/BigglzEvent`; \r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"2월\"\r\n
\r\n

\r\n \"댕냥룸\r\n

\r\n

\r\n \"댕냥룸\r\n

\r\n
\r\n
\r\n
\r\n

\r\n 이벤트 상세 안내\r\n

\r\n
\r\n
    \r\n
  • \r\n
    기간
    \r\n
    2023년 02월 1일 ~ 2023년 02월 28일
    \r\n
  • \r\n
  • \r\n
    당첨대상
    \r\n
    \r\n 좋아요 를 가장 많이 받은 참가자 1,2,3등\r\n
    \r\n
  • \r\n
  • \r\n
    발표일
    \r\n
    2023년 3월 7일
    \r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n

경품안내

\r\n
\r\n
\r\n
\r\n
\r\n

월간보상

\r\n
\r\n
    \r\n
  1. \r\n
    \r\n
    \r\n \"올리브영\r\n
    올리브영 기프트카드 10만원
    \r\n
    \r\n
    \r\n
    1등 올리브영 기프트카드 10만원
    \r\n
  2. \r\n
  3. \r\n
    \r\n
    \r\n \"올리브영\r\n
    올리브영 기프트카드 5만원
    \r\n
    \r\n
    \r\n
    2등 올리브영 기프트카드 5만원
    \r\n
  4. \r\n
  5. \r\n
    \r\n
    \r\n \"올리브영\r\n
    올리브영 기프트카드 3만원
    \r\n
    \r\n
    \r\n
    3등 올리브영 기프트카드 3만원
    \r\n
  6. \r\n
\r\n
\r\n
\r\n
\r\n

주간보상

\r\n
\r\n
    \r\n
  1. \r\n 1등\r\n \r\n 젤리 300\r\n
  2. \r\n
  3. \r\n 2등\r\n \r\n 젤리 100\r\n
  4. \r\n
  5. \r\n 3등\r\n \r\n 젤리 50\r\n
  6. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

참여방법

\r\n
\r\n
    \r\n
  1. \r\n
    \r\n \"하나\"\r\n
    \r\n
    펫홈 화면에서
    댕냥룸 콘테스트 아이콘 클릭
    \r\n
    \r\n
    \r\n \"펫룸\r\n
    \r\n
    펫홈 화면에서 댕냥룸 콘테스트 아이콘 클릭
    \r\n
    \r\n
  2. \r\n
  3. \r\n
    \r\n \"둘\"\r\n
    \r\n
    하단 콘테스트 참여하기
    \r\n
    \r\n
    \r\n \"콘테스트\r\n
    \r\n
    하단 콘테스트 참여하기
    \r\n
    \r\n
  4. \r\n
  5. \r\n
    \r\n \"셋\"\r\n
    \r\n
    마이룸에서 댕냥룸을
    캡처해서 업로드
    \r\n
    \r\n
    \r\n \"마이룸\r\n
    \r\n
    마이룸에서 댕냥룸을 캡처해서 업로드
    \r\n
    \r\n
  6. \r\n
\r\n
\r\n
\r\n
\r\n
확인해주세요!
\r\n
동일 좋아요 수가 존재할 경우 먼저 높은 좋아요를 달성한 사람이 더 높은 순위로 설정됩니다.
\r\n
참가자 미달 시 당첨자가 없을 수 있습니다.
\r\n
당첨자가 회원 탈퇴 등으로 인해 확인이 불가할 경우 당첨이 취소됩니다.
\r\n
주말 포함 7일 이내 연락이 없을 시 당첨이 취소됩니다.
\r\n
당첨 경품 수령 관련 상세 내용은 당첨 발표 시 안내될 예정이며, 안내에 따른 추가 정보 회신이 필요합니다.
\r\n
해당 이벤트는 앱스토어 또는 구글 플레이스토어 등과 무관합니다.
\r\n
해당 댕냥룸 콘테스트 이미지는 비글즈의 마케팅 이미지로 사용되실 수 있습니다.
\r\n
\r\n
\r\n \r\n 앱 다운로드 하러가기\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default PetHomePromotionFebruary;","import React from 'react';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { getDownloadLink } from '../../Shares/CommonUtil';\r\nimport { cdnUrlConfig } from '../../Utils/atoms';\r\n\r\n/**\r\n * 댕냥룸 콘테스트 이벤트 2023-03월 프로모션 페이지\r\n */\r\nconst PetHomePromotionMarch = () => {\r\n\tconst cdnUrl = useRecoilValue(cdnUrlConfig); //비글즈 AWS S3 CDN URL\r\n\tconst IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t이벤트 상세 안내\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
    기간
    \r\n\t\t\t\t\t\t\t\t
    2023년 03월 1일 ~ 2023년 03월 31일
    \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
    당첨대상
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t좋아요 를 가장 많이 받은 참가자 1,2,3등\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
    발표일
    \r\n\t\t\t\t\t\t\t\t
    2023년 4월 7일
    \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

경품안내

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t

월간보상

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
  1. \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t
    올리브영 기프트카드 10만원
    \r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t1등 올리브영 기프트카드\r\n\t\t\t\t\t\t\t\t\t\t\t10만원\r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
  2. \r\n\t\t\t\t\t\t\t\t\t
  3. \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t
    올리브영 기프트카드 5만원
    \r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t2등 올리브영 기프트카드\r\n\t\t\t\t\t\t\t\t\t\t\t5만원\r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
  4. \r\n\t\t\t\t\t\t\t\t\t
  5. \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t
    올리브영 기프트카드 3만원
    \r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t3등 올리브영 기프트카드\r\n\t\t\t\t\t\t\t\t\t\t\t3만원\r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
  6. \r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t

주간보상

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
  1. \r\n\t\t\t\t\t\t\t\t\t\t1등\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t젤리 300\r\n\t\t\t\t\t\t\t\t\t
  2. \r\n\t\t\t\t\t\t\t\t\t
  3. \r\n\t\t\t\t\t\t\t\t\t\t2등\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t젤리 100\r\n\t\t\t\t\t\t\t\t\t
  4. \r\n\t\t\t\t\t\t\t\t\t
  5. \r\n\t\t\t\t\t\t\t\t\t\t3등\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t젤리 50\r\n\t\t\t\t\t\t\t\t\t
  6. \r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

참여방법

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
  1. \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t비글즈 펫룸 화면에서\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t댕냥룸 콘테스트 아이콘 클릭\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t펫홈 화면에서 펫룸 콘테스트 아이콘 클릭\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
  2. \r\n\t\t\t\t\t\t\t
  3. \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    하단 콘테스트 참여하기
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    하단 콘테스트 참여하기
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
  4. \r\n\t\t\t\t\t\t\t
  5. \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t마이룸에서 펫룸을\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t캡처해서 업로드\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    마이룸에서 펫룸을 캡처해서 업로드
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
  6. \r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
확인해주세요!
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t동일 좋아요 수가 존재할 경우 먼저 높은 좋아요를 달성한 사람이 더\r\n\t\t\t\t\t\t\t\t높은 순위로 설정됩니다.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
참가자 미달 시 당첨자가 없을 수 있습니다.
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t당첨자가 회원 탈퇴 등으로 인해 확인이 불가할 경우 당첨이\r\n\t\t\t\t\t\t\t\t취소됩니다.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
주말 포함 7일 이내 연락이 없을 시 당첨이 취소됩니다.
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t당첨 경품 수령 관련 상세 내용은 당첨 발표 시 안내될 예정이며,\r\n\t\t\t\t\t\t\t\t안내에 따른 추가 정보 회신이 필요합니다.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t해당 이벤트는 앱스토어 또는 구글 플레이스토어 등과 무관합니다.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t해당 펫룸 콘테스트 이미지는 비글즈의 마케팅 이미지로 사용되실 수\r\n\t\t\t\t\t\t\t\t있습니다.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t앱 다운로드 하러가기\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default PetHomePromotionMarch;\r\n","import React, { Component } from 'react';\r\nimport { Route, Switch } from 'react-router-dom';\r\nimport PetHomePromotionNovember from './routes/PetHomePromotion';\r\nimport PetHomePromotionDecember from './routes/PetHomePromotionDecember';\r\nimport PetHomePromotionJanuray from './routes/PetHomePromotionJanuary';\r\nimport PetHomePromotionFebruary from './routes/PetHomePromotionFebruary';\r\nimport PetHomePromotionMarch from './routes/PetHomePromotionMarch';\r\n\r\nexport default class PetHomeIndexComponent extends Component {\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n","import { api } from '../api';\r\n\r\nexport const InteriorItemAPI = {\r\n\tGetInteriorItemPurchaseStatus: (member_se) =>\r\n\t\tapi.get(`api/event/interior-item/week?member_se=${member_se}`),\r\n};\r\n","import React, { useState, useEffect } from 'react';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { useLocation } from 'react-router-dom';\r\nimport { splitQuery } from '../../Shares/CommonUtil';\r\nimport { initUnity, setUnityMember } from '../../Utils/unityUtil';\r\nimport { InteriorItemAPI } from '../../Utils/Api/InteriorItemAPI';\r\nimport { cdnUrlConfig } from '../../Utils/atoms';\r\n\r\nconst EWeekConditionCD = {\r\n\tPast: 1,\r\n\tPresent: 2,\r\n\tFuture: 3,\r\n};\r\n\r\n/**\r\n * [6월 이벤트] 비글즈 1주년 기념 인테리어 아이템 구매 이벤트\r\n * @returns\r\n */\r\nconst InteriorItemDetail = () => {\r\n\tconst cdnUrl = useRecoilValue(cdnUrlConfig);\r\n\tconst IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\r\n\t// 주소에서 event_se 가져오기\r\n\tconst { search } = useLocation();\r\n\tconst querys = splitQuery(search);\r\n\tconst event_se = querys['event_se'] ? querys['event_se'] : 0;\r\n\tconst [member_se, setMemberSe] = useState(0);\r\n\tconst [weeklyData, setweeklyData] = useState([]);\r\n\r\n\tuseEffect(() => {\r\n\t\t// Unity에서 member_se 호출\r\n\t\tif (event_se > 0) {\r\n\t\t\tinitUnity();\r\n\t\t\tsetUnityMember(\r\n\t\t\t\t(member_se) => setMemberSe(member_se),\r\n\t\t\t\t(msg) => alert.error(msg)\r\n\t\t\t);\r\n\t\t}\r\n\t}, []);\r\n\r\n\tuseEffect(() => {\r\n\t\t// GET 주차별 이벤트 참여 현황 API 호출\r\n\t\tif (member_se > 0) {\r\n\t\t\tInteriorItemAPI.GetInteriorItemPurchaseStatus(member_se).then(\r\n\t\t\t\t(response) => {\r\n\t\t\t\t\tconst { status, data } = response;\r\n\t\t\t\t\tif (status === 200) {\r\n\t\t\t\t\t\tsetweeklyData(data.datas);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t);\r\n\t\t}\r\n\t}, [member_se]);\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{/* 비주얼 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t{/* 경품소개 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t매주 인테리어 소품 5개 사고\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t최대{' '}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t 400\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t개까지\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t받아가세요!\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t{/* 참여현황 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t

참여현황

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

인테리어 소품을 구매하고 이벤트 현황판을 확인해 보세요.

\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t{weeklyData.length > 0 &&\r\n\t\t\t\t\t\t\t\t\tweeklyData.map((value, index) => (\r\n\t\t\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t\t\t
    {index + 1}주차
    \r\n\t\t\t\t\t\t\t\t\t\t\t{value.week_condition_cd === EWeekConditionCD.Past &&\r\n\t\t\t\t\t\t\t\t\t\t\t\tvalue.mission_complete_yn === true && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t미션 성공! 선물함을 확인하세요!\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t{value.week_condition_cd === EWeekConditionCD.Past &&\r\n\t\t\t\t\t\t\t\t\t\t\t\tvalue.mission_complete_yn === false && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t아쉽지만 기회가 지나갔어요.\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t{value.week_condition_cd === EWeekConditionCD.Present && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t
      \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    1. = 1 ? 'on' : ''}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1개\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    2. {' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    3. = 2 ? 'on' : ''}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t2개\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    4. \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    5. = 3 ? 'on' : ''}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3개\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    6. \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    7. = 4 ? 'on' : ''}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t4개\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    8. \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    9. = 5 ? 'on' : ''}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t5개\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    10. \r\n\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t{value.week_condition_cd === EWeekConditionCD.Future && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t
    아직 오픈하기 전이예요.
    \r\n\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t{/* 참여방법 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t

참여방법

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  1. \r\n\t\t\t\t\t\t\t\t\t매주 인테리어 아이템을 5개 이상 구매한다.\r\n\t\t\t\t\t\t\t\t
  2. \r\n\t\t\t\t\t\t\t\t
  3. \r\n\t\t\t\t\t\t\t\t\t미션 성공 후 ‘선물함’에서 하트 100개씩 획득!\r\n\t\t\t\t\t\t\t\t
  4. \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

상품은 주차마다 종료 후 그 다음날 일괄 지급됩니다.

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t{/* 이벤트기간 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t

이벤트 기간

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

2023년 06월 05일 (월) ~ 07월 02일 (일)

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t{/* 주의사항 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
확인해주세요
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t이벤트 참여 및 보상 오류는 고객센터 1:1 로 문의주세요.\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t*비글즈 어플 > 마이페이지 > 설정 > 고객센터 > 1:1\r\n\t\t\t\t\t\t\t\t문의\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t구매 외 다른 방법으로 얻은 인테리어 소품은 제외되어 계산됩니다.\r\n\t\t\t\t\t\t\t\t(ex. 선물상자)\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
상품은 주차마다 종료 후 그 다음날 일괄 지급됩니다.
\r\n\t\t\t\t\t\t\t
해당 이벤트는 앱스토어와 무관합니다.
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t당첨자는 펫룸 > 알림 > 선물함 > ‘받기'를 통해서 상품을\r\n\t\t\t\t\t\t\t\t받으실 수 있습니다\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
이벤트 기프티콘 상품은 교환/환불/연장이 불가합니다.
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t지급된 상품은 30일 내로 ‘받기'를 해주셔야 정상 수령됩니다.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default InteriorItemDetail;\r\n","import React from 'react';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { getDownloadLink } from '../../Shares/CommonUtil';\r\nimport { cdnUrlConfig } from '../../Utils/atoms';\r\n\r\nconst InteriorItemPromotion = () => {\r\n\tconst cdnUrl = useRecoilValue(cdnUrlConfig);\r\n\tconst IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{/* 비주얼 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t{/* 경품소개 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t매주 인테리어 소품 5개 사고\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t최대{' '}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t 400\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t개까지\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t받아가세요!\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t{/* 참여방법 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t

참여방법

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  1. \r\n\t\t\t\t\t\t\t\t\t매주 인테리어 아이템을 5개 이상 구매한다.\r\n\t\t\t\t\t\t\t\t
  2. \r\n\t\t\t\t\t\t\t\t
  3. \r\n\t\t\t\t\t\t\t\t\t미션 성공 후 ‘선물함’에서 하트 100개씩 획득!\r\n\t\t\t\t\t\t\t\t
  4. \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

상품은 주차마다 종료 후 그 다음날 일괄 지급됩니다.

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t{/* 이벤트기간 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t

참여방법

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

2023년 06월 05일 (월) ~ 07월 02일 (일)

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t{/* 주의사항 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
확인해주세요
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t이벤트 참여 및 보상 오류는 고객센터 1:1 로 문의주세요.\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t*비글즈 어플 > 마이페이지 > 설정 > 고객센터 > 1:1\r\n\t\t\t\t\t\t\t\t문의\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t구매 외 다른 방법으로 얻은 인테리어 소품은 제외되어 계산됩니다.\r\n\t\t\t\t\t\t\t\t(ex. 선물상자)\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
상품은 주차마다 종료 후 그 다음날 일괄 지급됩니다.
\r\n\t\t\t\t\t\t\t
해당 이벤트는 앱스토어와 무관합니다.
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t당첨자는 펫룸 > 알림 > 선물함 > ‘받기'를 통해서 상품을\r\n\t\t\t\t\t\t\t\t받으실 수 있습니다\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
이벤트 기프티콘 상품은 교환/환불/연장이 불가합니다.
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t지급된 상품은 30일 내로 ‘받기'를 해주셔야 정상 수령됩니다.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t{/* 비글즈앱 다운로드 */}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t앱 다운로드 하러가기\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default InteriorItemPromotion;\r\n","import React, { Component } from 'react';\r\nimport { Route, Switch } from 'react-router-dom';\r\nimport InteriorItemDetail from './routes/InteriorItemDetail';\r\nimport InteriorItemPromotion from './routes/InteriorItemPromotion';\r\n\r\nexport default class InteriorItemIndex extends Component {\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n","import { api } from '../api';\r\n/**\r\n * 룰렛 이벤트 API\r\n */\r\nexport const RouletteApi = {\r\n\tGetRouletteCount: (event_se, member_se) =>\r\n\t\tapi.get(`api/roulette/count?event_se=${event_se}&&member_se=${member_se}`),\r\n\tGetRouletteRank: (event_se, member_se) =>\r\n\t\tapi.get(\r\n\t\t\t`api/roulette/ranking?event_se=${event_se}&&member_se=${member_se}`\r\n\t\t),\r\n\tGetRouletteGifticons: (event_se, member_se) =>\r\n\t\tapi.get(\r\n\t\t\t`api/roulette/gifticons?event_se=${event_se}&&member_se=${member_se}`\r\n\t\t),\r\n\tGetRoulettePhoneNumber: (member_se) =>\r\n\t\tapi.get(`api/roulette/phone-number?member_se=${member_se}`),\r\n\tPatchSavePhoneNumber: (data) =>\r\n\t\tapi.patch(`api/roulette/phone-number`, data),\r\n\tPostRotateRoulette: (data) => api.post(`api/roulette/rotate-roulette`, data),\r\n};\r\n","import React, { useEffect, useState } from 'react';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { cdnUrlConfig } from '../../../Utils/atoms';\r\n\r\nconst PrizePopUp = (props) => {\r\n\tconst cdnUrl = useRecoilValue(cdnUrlConfig);\r\n\tconst IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\tconst [rewardName, setRewardName] = useState('[]');\r\n\tconst [price, setPrice] = useState('');\r\n\t// 확인버튼 클릭\r\n\tconst ClickSave = () => {\r\n\t\t// 닫기\r\n\t\tprops.close();\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\tswitch (props.rewardResult.rank_no) {\r\n\t\t\tcase 1:\r\n\t\t\t\tsetRewardName('올리브영 기프트카드');\r\n\t\t\t\tsetPrice('50,000원 권');\r\n\t\t\t\tbreak;\r\n\t\t\tcase 2:\r\n\t\t\t\tsetRewardName('CU 모바일 금액권');\r\n\t\t\t\tsetPrice('5,000원 권');\r\n\t\t\t\tbreak;\r\n\t\t\tcase 3:\r\n\t\t\t\tsetRewardName('다이소 모바일 금액권');\r\n\t\t\t\tsetPrice('3,000원 권');\r\n\t\t\t\tbreak;\r\n\t\t\tcase 4:\r\n\t\t\t\tsetRewardName('하트');\r\n\t\t\t\tsetPrice('15개');\r\n\t\t\t\tbreak;\r\n\t\t\tcase 5:\r\n\t\t\t\tsetRewardName('젤리');\r\n\t\t\t\tsetPrice('600개');\r\n\t\t\t\tbreak;\r\n\t\t\tcase 6:\r\n\t\t\t\tsetRewardName('젤리');\r\n\t\t\t\tsetPrice('300개');\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t{/* 당첨 됐을 경우 표출 되는 팝업(기프티콘 카드, 재화 모두 사용) */}\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t

\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t당첨을\r\n\t\t\t\t\t\t\t축하합니다!\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t

\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
{/** 기프티콘 카드와 재화 모두 사용 */}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
{rewardName}
\r\n\t\t\t\t\t\t\t
{price}
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default PrizePopUp;\r\n","import React, { useEffect, useState } from 'react';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { RouletteApi } from '../../../Utils/Api/RouletteApi';\r\nimport { cdnUrlConfig } from '../../../Utils/atoms';\r\nimport { useAlert } from 'react-alert';\r\n\r\nconst GifticonPopUp = (props) => {\r\n\tconst cdnUrl = useRecoilValue(cdnUrlConfig);\r\n\tconst IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\tconst [phoneNo, setPhoneNo] = useState('');\r\n\tconst [gifticons, setGifticons] = useState({}); // 기프티콘 내역\r\n\tconst alert = useAlert();\r\n\r\n\t// 전화번호 저장 클릭\r\n\tconst onClickSavePhoneNumber = () => {\r\n\t\tconst phoneNumberCheckRegex = /01[016789][^0][0-9]{2,3}[0-9]{3,4}/;\r\n\r\n\t\tif (phoneNo == '') {\r\n\t\t\tprops.close();\r\n\t\t} else if (!phoneNumberCheckRegex.test(phoneNo)) {\r\n\t\t\talert.info('올바르지 않은 번호입니다.');\r\n\t\t} else {\r\n\t\t\tconst data = {\r\n\t\t\t\tmember_se: props.memberSe,\r\n\t\t\t\tphone_no: phoneNo,\r\n\t\t\t};\r\n\t\t\tRouletteApi.PatchSavePhoneNumber(data).then((response) => {\r\n\t\t\t\tconst { status } = response;\r\n\t\t\t\tif (status === 201) {\r\n\t\t\t\t\talert.info('성공적으로 저장되었습니다.');\r\n\t\t\t\t\tprops.close();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t};\r\n\r\n\t// GET 기프티콘 당첨 내역\r\n\tuseEffect(() => {\r\n\t\tRouletteApi.GetRouletteGifticons(props.eventSe, props.memberSe).then(\r\n\t\t\t(response) => {\r\n\t\t\t\tconst { status, data } = response;\r\n\t\t\t\tif (status === 200) {\r\n\t\t\t\t\tsetGifticons(data.datas);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t);\r\n\t}, []);\r\n\r\n\t// 객체에서 각 기프티콘의 당첨된 개수 반환\r\n\tconst getGifticonRewardCount = (rank_no) => {\r\n\t\tfor (var i = 0; i < gifticons.length; i++) {\r\n\t\t\tif (gifticons[i].rank_no === rank_no) {\r\n\t\t\t\treturn gifticons[i].event_gifticon_reward_cn;\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\t// GET 휴대전화번호\r\n\tuseEffect(() => {\r\n\t\tRouletteApi.GetRoulettePhoneNumber(props.memberSe).then((response) => {\r\n\t\t\tconst { status, data } = response;\r\n\t\t\tif (status === 200) {\r\n\t\t\t\tsetPhoneNo(data.phoneNumber);\r\n\t\t\t}\r\n\t\t});\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t{/* 당첨리스트 팝업(당첨 리스트 보기) */}\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t

\r\n\t\t\t\t\t\t당첨 리스트 보기\r\n\t\t\t\t\t

\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
{getGifticonRewardCount(1)}개
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
올리브영 기프트카드
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
50,000원 권
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
{getGifticonRewardCount(2)}개
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
CU 모바일 금액권
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
5,000원 권
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
{getGifticonRewardCount(3)}개
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
다이소 모바일 금액권
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
3,000원 권
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t setPhoneNo(e.target.value)}\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t

전화번호를 입력하지 않으면 기프티콘 선물을 받을 수 없습니다.

\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t완료\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default GifticonPopUp;\r\n","import { api } from '../api';\r\n\r\nexport const EventApi = {\r\n\tGetEventStatus: (event_se) => api.get(`api/event/status?event_se=${event_se}`),\r\n\tGetEventDetail: (event_se) => api.get(`api/events?event_se=${event_se}`),\r\n\tgetContent: (event_se, page, size) =>\r\n\t\tapi.get(\r\n\t\t\t`api/event/content?event_se=${event_se}&page=${page}&size=${size}&`\r\n\t\t),\r\n\tpostContent: (data) => api.post(`api/event/content`, data),\r\n};\r\n","/* eslint-disable react-hooks/exhaustive-deps */\r\nimport React, { useEffect, useState } from 'react';\r\nimport { useAlert } from 'react-alert';\r\nimport { useLocation } from 'react-router-dom';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { splitQuery } from '../../Shares/CommonUtil';\r\nimport { RouletteApi } from '../../Utils/Api/RouletteApi';\r\nimport { cdnUrlConfig } from '../../Utils/atoms';\r\nimport { initUnity, setUnityMember } from '../../Utils/unityUtil';\r\nimport PrizePopUp from './PopUp/PrizePopUp';\r\nimport GifticonPopUp from './PopUp/GifticonPopUp';\r\nimport { EventApi } from '../../Utils/Api/EventApi';\r\n\r\nconst ROTATE_SECONDS = 1000 * 6; //회전시간\r\n\r\nconst RouletteMain = () => {\r\n\tconst cdnUrl = useRecoilValue(cdnUrlConfig);\r\n\tconst IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\tconst alert = useAlert();\r\n\tconst [_rewardResult, setRewardResult] = useState({}); //룰렛결과 오브젝트\r\n\tconst [_rewardLog, setRewardLog] = useState({}); //룰렛결과 로그\r\n\tconst [attendance, setAttendance] = useState(false);\r\n\tconst [walking, setWalking] = useState(false);\r\n\tconst [advertise, setAdvertise] = useState(false);\r\n\tconst [rouletteCount, setRouletteCount] = useState(0);\r\n\tconst [degree, setDegree] = useState(0);\r\n\tconst [member_se, setMemberSe] = useState(0);\r\n\tconst [isRotate, setIsRotate] = useState(false);\r\n\r\n\t// 팝업\r\n\tconst [prizePopUp, setPrizePopUp] = useState(0); // 젤리, 하트 팝업\r\n\tconst [gifticonPopUp, setGifticonPopUp] = useState(0); // 나의 당첨내역\r\n\r\n\t// 주소에서 event_se 가져오기\r\n\tconst { search } = useLocation();\r\n\tconst querys = splitQuery(search);\r\n\tconst event_se = querys['event_se'] ? querys['event_se'] : 0;\r\n\r\n\t// 믹스패널용 이벤트 정보\r\n\tconst [eventName, setEventName] = useState('');\r\n\tconst [eventCategoryType, setEventCategoryType] = useState('');\r\n\r\n\t// 카테고리 코드에 따른 카테고리 명을 반환한다\r\n\tconst getEventCategoryName = (category_cd) => {\r\n\t\tlet result = '';\r\n\t\tif (category_cd === 0) {\r\n\t\t\tresult = '기본';\r\n\t\t} else if (category_cd === 1) {\r\n\t\t\tresult = '룰렛';\r\n\t\t} else if (category_cd === 2) {\r\n\t\t\tresult = '캡슐';\r\n\t\t}\r\n\r\n\t\treturn result;\r\n\t};\r\n\r\n\t// member_se 호출에 실패했을 경우의 안내 팝업\r\n\tconst showErrorAlert = (message) => {\r\n\t\talert.error(message, {\r\n\t\t\ttimeout: 5000, // 5 seconds\r\n\t\t});\r\n\t};\r\n\r\n\t// Unity 함수 호출\r\n\tuseEffect(() => {\r\n\t\tif (event_se > 0) {\r\n\t\t\tinitUnity();\r\n\t\t\tsetUnityMember(\r\n\t\t\t\t(member_se) => setMemberSe(member_se),\r\n\t\t\t\t(msg) => showErrorAlert(msg)\r\n\t\t\t);\r\n\t\t}\r\n\t}, []);\r\n\r\n\t// GET 이벤트 상세 정보 API\r\n\tuseEffect(() => {\r\n\t\tEventApi.GetEventStatus(event_se).then((response) => {\r\n\t\t\tconst { status, data } = response;\r\n\t\t\tif (status === 200) {\r\n\t\t\t\tsetEventName(data.data.event_nm);\r\n\t\t\t\tsetEventCategoryType(\r\n\t\t\t\t\tgetEventCategoryName(data.data.event_category_cd)\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t})\r\n\t\t.catch(error => {\r\n\t\t\tconst { status, data } = error.response;\r\n\t\t\tif (status === 404) {\r\n\t\t\t\talert.error(data.msg, {\r\n\t\t\t\t\ttimeout: 10000, // 10 seconds\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t});\r\n\t}, [event_se]);\r\n\r\n\t// GET 룰렛 응모권\r\n\tuseEffect(() => {\r\n\t\tif (member_se > 0) {\r\n\t\t\tRouletteApi.GetRouletteCount(event_se, member_se).then((response) => {\r\n\t\t\t\tconst {\r\n\t\t\t\t\tstatus,\r\n\t\t\t\t\tdata: { attendance, walking, advertise, roulette_count },\r\n\t\t\t\t} = response;\r\n\t\t\t\tif (status === 200) {\r\n\t\t\t\t\tsetAttendance(attendance);\r\n\t\t\t\t\tsetWalking(walking);\r\n\t\t\t\t\tsetAdvertise(advertise);\r\n\t\t\t\t\tsetRouletteCount(roulette_count);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}, [member_se]);\r\n\r\n\t// 상품 종류에 따른 룰렛판 각도 style 설정\r\n\tconst styleRotate = {\r\n\t\ttransform: degree === 0 ? '' : `rotate(${7200 + degree}deg)`,\r\n\t\ttransition: `transform ${degree === 0 ? '0' : ROTATE_SECONDS}ms ease`, // smooth transition\r\n\t};\r\n\r\n\t// 룰렛을 돌려서 결과를 반환\r\n\tconst rotateRoulette = () => {\r\n\t\tif (isRotate) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tsetDegree(0);\r\n\t\tif (member_se > -1 && rouletteCount > 0) {\r\n\t\t\tsetIsRotate(true);\r\n\t\t\tconst data = { event_se: event_se, member_se: member_se };\r\n\t\t\tRouletteApi.PostRotateRoulette(data).then((response) => {\r\n\t\t\t\tconst {\r\n\t\t\t\t\tstatus,\r\n\t\t\t\t\tdata: { rewardResult, rewardLog, degree },\r\n\t\t\t\t} = response;\r\n\t\t\t\tif (status === 200) {\r\n\t\t\t\t\tsetRewardResult(rewardResult);\r\n\t\t\t\t\tsetRewardLog(rewardLog);\r\n\t\t\t\t\tsetRouletteCount((prev) => prev - 1);\r\n\t\t\t\t\tsetDegree(degree);\r\n\t\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\t\tsetPrizePopUp(1);\r\n\t\t\t\t\t\tsetIsRotate(false);\r\n\t\t\t\t\t}, ROTATE_SECONDS);\r\n\t\t\t\t}\r\n\t\t\t\twindow.MixPanelCompleteEvent(\r\n\t\t\t\t\teventName,\r\n\t\t\t\t\teventCategoryType,\r\n\t\t\t\t\trewardResult.event_reward_info_nm\r\n\t\t\t\t);\r\n\t\t\t});\r\n\t\t}\r\n\t};\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t11.20 - 12.07\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{member_se > 0 && (\r\n\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\twindow.MixPanelClickEventButton(\r\n\t\t\t\t\t\t\t\t\t\t\t\teventName,\r\n\t\t\t\t\t\t\t\t\t\t\t\teventCategoryType\r\n\t\t\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t\t\t\trotateRoulette();\r\n\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\tstart\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t나의 응모권{' '}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{rouletteCount < 0 ? 0 : rouletteCount}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t장\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t{gifticonPopUp !== 0 && (\r\n\t\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\t\t setGifticonPopUp(0)}\r\n\t\t\t\t\t\t\t\t\t\teventSe={event_se}\r\n\t\t\t\t\t\t\t\t\t\tmemberSe={member_se}\r\n\t\t\t\t\t\t\t\t\t\trewardLog={_rewardLog}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t{prizePopUp !== 0 && (\r\n\t\t\t\t\t\t\t\t setPrizePopUp(0)}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

무조건 당첨 경품 리스트!

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    3명
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    올리브영 기프트카드
    \r\n\t\t\t\t\t\t\t\t\t
    50,000원 권
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    10명
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    CU 모바일 금액권
    \r\n\t\t\t\t\t\t\t\t\t
    5,000원 권
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    30명
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    다이소 모바일 금액권
    \r\n\t\t\t\t\t\t\t\t\t
    3,000원 권
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
무제한
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
젤리
\r\n\t\t\t\t\t\t\t\t\t
600개
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
무제한
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
젤리
\r\n\t\t\t\t\t\t\t\t\t
300개
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
무제한
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
하트
\r\n\t\t\t\t\t\t\t\t\t
15개
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t{member_se !== 1 && (\r\n\t\t\t\t\t\t\t setGifticonPopUp(1)}\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t나의 당첨내역 보기 >\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

룰렛 응모권 얻는 방법!

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
  1. \r\n\t\t\t\t\t\t\t\t
    01
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    출석체크 완료하기 X1
    \r\n\t\t\t\t\t\t\t\t\t\t
    펫룸>출석부>출석 보상 받기
    \r\n\t\t\t\t\t\t\t\t\t
    \t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
  2. \r\n\t\t\t\t\t\t\t
  3. \r\n\t\t\t\t\t\t\t\t
    02
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    산책 완료하기 X2
    \r\n\t\t\t\t\t\t\t\t\t\t
    펫룸>펫 클릭>산책하기
    \r\n\t\t\t\t\t\t\t\t\t
    \t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
  4. \r\n\t\t\t\t\t\t\t
  5. \r\n\t\t\t\t\t\t\t\t
    03
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    충전소 광고 시청하기 X2
    \r\n\t\t\t\t\t\t\t\t\t\t
    충전소>광고보기
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
  6. \r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
확인해주세요!
\r\n\t\t\t\t\t\t\t
본 이벤트는 2023년 11월 20일부터 12월 07일까지 진행됩니다.
\r\n\t\t\t\t\t\t\t
기프티콘 경품에 당첨되신 당첨자께서는 반드시 휴대 전화번호를 입력해주서야 합니다.
\r\n\t\t\t\t\t\t\t
미 입력시 당첨 내역보기를 눌러서 전화번호 입력란에 입력해주셔야 됩니다.
\r\n\t\t\t\t\t\t\t
12월 07일까지 미 입력시 당첨이 무효 처리됩니다.
\r\n\t\t\t\t\t\t\t
이벤트 경품은 12월 07일 이후 일괄 발송될 예정입니다.
\r\n\t\t\t\t\t\t\t
기프티콘 상품은 교환/환불/연장이 불가합니다.
\r\n\t\t\t\t\t\t\t
해당 이벤트는 앱스토어 또는 구글 플레이스토어등과 무관합니다.
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default RouletteMain;\r\n","import React, { Component } from 'react';\r\nimport { Route, Switch } from 'react-router';\r\nimport RouletteMain from './routes/RouletteMain';\r\n\r\nexport default class RouletteIndex extends Component {\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n","import { api } from '../api';\r\n/**\r\n * 룰렛 이벤트 API\r\n */\r\nexport const DrawLotsApi = {\r\n\tGetDrawLotsCount: (member_se, event_se) => api.get(`/api/draw-lots/count?event_se=${event_se}&&member_se=${member_se}`),\r\n\tPostDrawLots: (data) => api.post(`api/draw-lots`, data),\r\n};","import React, { useEffect, useState } from 'react';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { cdnUrlConfig } from '../../../Utils/atoms';\r\n\r\nconst PrizePopUp = (props) => {\r\n\tconst cdnUrl = useRecoilValue(cdnUrlConfig);\r\n\tconst IMG_URL = `${cdnUrl}`;\r\n\tconst rewardResult = props.rewardResult;\r\n\tconst eventName = props.eventName;\r\n\tconst eventCategory = props.eventCategoryType;\r\n\tconst [rewardImageUrl, setRewardImageUrl] = useState();\r\n\r\n\tconst handleConfirmClick = () => {\r\n\t\tprops.close();\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\tif (rewardResult.rank_no < 5) {\r\n\t\t\tsetRewardImageUrl(rewardResult.reward_thumbnail_lk);\r\n\t\t}\r\n\t\tif (rewardResult.rank_no == 6 || rewardResult.rank_no == 8) {\r\n\t\t\tsetRewardImageUrl('/BigglzEvent/images/draw-lots/img_reward1.png');\r\n\t\t}\r\n\t\tif (rewardResult.rank_no == 5 || rewardResult.rank_no == 7) {\r\n\t\t\tsetRewardImageUrl('/BigglzEvent/images/draw-lots/img_reward2.png');\r\n\t\t}\r\n\t}, []);\r\n\r\n\tuseEffect(() => {\r\n\t\twindow.MixPanelCompleteEvent(\r\n\t\t\teventName,\r\n\t\t\teventCategory,\r\n\t\t\trewardResult.event_reward_info_nm\r\n\t\t);\r\n\t}, [rewardResult]);\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t

\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t

\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{rewardResult.event_reward_info_nm} {rewardResult.reward_cn}개\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default PrizePopUp;\r\n","import React, { useEffect, useState } from 'react';\r\nimport { DrawLotsApi } from '../../Utils/Api/DrawLotsApi';\r\nimport { useAlert } from 'react-alert';\r\nimport { useLocation } from 'react-router-dom';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { splitQuery } from '../../Shares/CommonUtil';\r\nimport { cdnUrlConfig } from '../../Utils/atoms';\r\nimport PrizePopUp from './PopUp/PrizePopUp';\r\nimport { initUnity, setUnityMember } from '../../Utils/unityUtil';\r\nimport { EventApi } from '../../Utils/Api/EventApi';\r\n\r\nconst DrawLotsMain = () => {\r\n\tconst cdnUrl = useRecoilValue(cdnUrlConfig);\r\n\tconst IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\tconst alert = useAlert();\r\n\tconst [_rewardResult, setRewardResult] = useState({}); //룰렛결과 오브젝트\r\n\tconst [_rewardLog, setRewardLog] = useState({}); //룰렛결과 로그\r\n\tconst [lever, setLever] = useState('');\r\n\tconst [moveBalls, setMoveBalls] = useState('');\r\n\tconst [moveBalls2, setMoveBalls2] = useState('');\r\n\tconst [exitBall, setExitBall] = useState('');\r\n\tconst [turnBall, setTurnBall] = useState('');\r\n\tconst [randomColorBall, setRandomColorBall] = useState('');\r\n\tconst [prizePopup, setPrizePopup] = useState(0);\r\n\tconst [attendance, setAttendance] = useState(false);\r\n\tconst [interiorTicket, setInteriorTicket] = useState(false);\r\n\tconst [coinCount, setCoinCount] = useState(0);\r\n\tconst [member_se, setMemberSe] = useState(0);\r\n\tconst [isLoading, setisLoading] = useState(false);\r\n\r\n\t// 주소에서 event_se 가져오기\r\n\tconst { search } = useLocation();\r\n\tconst querys = splitQuery(search);\r\n\tconst event_se = querys['event_se'] ? querys['event_se'] : 0;\r\n\r\n\t// 믹스패널용 이벤트 정보\r\n\tconst [eventName, setEventName] = useState('');\r\n\tconst [eventCategoryType, setEventCategoryType] = useState('');\r\n\r\n\t// member_se 호출에 실패했을 경우의 안내 팝업\r\n\tconst showErrorAlert = (message) => {\r\n\t\talert.error(message, {\r\n\t\t\ttimeout: 5000, // 5 seconds\r\n\t\t});\r\n\t};\r\n\r\n\t// 카테고리 코드에 따른 카테고리 명을 반환한다\r\n\tconst getEventCategoryName = (category_cd) => {\r\n\t\tlet result = '';\r\n\t\tif (category_cd === 0) {\r\n\t\t\tresult = '기본';\r\n\t\t} else if (category_cd === 1) {\r\n\t\t\tresult = '룰렛';\r\n\t\t} else if (category_cd === 2) {\r\n\t\t\tresult = '캡슐';\r\n\t\t}\r\n\r\n\t\treturn result;\r\n\t};\r\n\r\n\t// Unity 함수 호출\r\n\tuseEffect(() => {\r\n\t\tif (event_se > 0) {\r\n\t\t\tinitUnity();\r\n\t\t\tsetUnityMember(\r\n\t\t\t\t(member_se) => setMemberSe(member_se),\r\n\t\t\t\t(msg) => showErrorAlert(msg)\r\n\t\t\t);\r\n\t\t}\r\n\t}, []);\r\n\r\n\t// GET 이벤트 상세 정보 API\r\n\tuseEffect(() => {\r\n\t\tEventApi.GetEventStatus(event_se)\r\n\t\t\t.then((response) => {\r\n\t\t\t\tconst { status, data } = response;\r\n\t\t\t\tif (status === 200) {\r\n\t\t\t\t\tsetEventName(data.data.event_nm);\r\n\t\t\t\t\tsetEventCategoryType(\r\n\t\t\t\t\t\tgetEventCategoryName(data.data.event_category_cd)\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconst { status, data } = error.response;\r\n\t\t\t\tif (status === 404) {\r\n\t\t\t\t\talert.error(data.msg, {\r\n\t\t\t\t\t\ttimeout: 10000, // 10 seconds\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t}, [event_se]);\r\n\r\n\t// start 버튼 클릭\r\n\tconst handleStartClick = () => {\r\n\t\tif (isLoading) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (member_se > -1 && coinCount > 0) {\r\n\t\t\tsetisLoading(true);\r\n\t\t\tconst data = { event_se: event_se, member_se: member_se };\r\n\t\t\tDrawLotsApi.PostDrawLots(data).then((response) => {\r\n\t\t\t\tconst {\r\n\t\t\t\t\tstatus,\r\n\t\t\t\t\tdata: { rewardResult, rewardLog },\r\n\t\t\t\t} = response;\r\n\t\t\t\tif (status === 200) {\r\n\t\t\t\t\tsetRewardResult(rewardResult);\r\n\t\t\t\t\tsetRewardLog(rewardLog);\r\n\t\t\t\t\tsetCoinCount((prev) => prev - 1);\r\n\t\t\t\t\tcolorBall(rewardResult.rank_no);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\tfallBallMove();\r\n\t\t}\r\n\t};\r\n\r\n\t// start 버튼 클릭 시 애니메이션 동작 순서\r\n\tconst fallBallMove = () => {\r\n\t\tleverRotate(); // 레버 회전\r\n\t\tballMove(); // 캡슐 안 볼 애니메이션\r\n\t\tballMove2(); // 캡슐 안 볼 애니메이션2\r\n\t\tballFall(); // 뽑은 캡슐 out\r\n\t\tballTurn(); // 캡슐 낙하 후 이동 및 회전\r\n\t\tshowPopup(); // 팝업 on, 애니메이션 초기화\r\n\t};\r\n\r\n\tconst leverRotate = () =>\r\n\t\tsetTimeout(() => {\r\n\t\t\tsetLever('rotation');\r\n\t\t}, 300);\r\n\tconst ballMove = () =>\r\n\t\tsetTimeout(() => {\r\n\t\t\tsetMoveBalls('on');\r\n\t\t}, 800);\r\n\tconst ballMove2 = () =>\r\n\t\tsetTimeout(() => {\r\n\t\t\tsetMoveBalls2('last-turn');\r\n\t\t}, 1700);\r\n\tconst ballFall = () =>\r\n\t\tsetTimeout(() => {\r\n\t\t\tsetExitBall('down');\r\n\t\t}, 2200);\r\n\tconst ballTurn = () =>\r\n\t\tsetTimeout(() => {\r\n\t\t\tsetTurnBall('turn');\r\n\t\t}, 3300);\r\n\tconst showPopup = () =>\r\n\t\tsetTimeout(() => {\r\n\t\t\tsetPrizePopup(1);\r\n\t\t\tsetLever('');\r\n\t\t\tsetMoveBalls('');\r\n\t\t\tsetMoveBalls2('');\r\n\t\t\tsetExitBall('');\r\n\t\t\tsetTurnBall('');\r\n\t\t\tsetRandomColorBall('');\r\n\t\t\tsetisLoading(false);\r\n\t\t}, 4500);\r\n\r\n\t// 보상에 따른 뽑기 캡슐 색상 지정\r\n\tconst colorBall = (no) => {\r\n\t\tswitch (no) {\r\n\t\t\tcase 1:\r\n\t\t\tcase 2:\r\n\t\t\t\tsetRandomColorBall('blue');\r\n\t\t\t\tbreak;\r\n\t\t\tcase 3:\r\n\t\t\t\tsetRandomColorBall('green');\r\n\t\t\t\tbreak;\r\n\t\t\tcase 4:\r\n\t\t\t\tsetRandomColorBall('purple');\r\n\t\t\t\tbreak;\r\n\t\t\tcase 5:\r\n\t\t\tcase 7:\r\n\t\t\t\tsetRandomColorBall('yellow');\r\n\t\t\t\tbreak;\r\n\t\t\tcase 6:\r\n\t\t\tcase 8:\r\n\t\t\t\tsetRandomColorBall('red');\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\t// 팝업 표출 시 레버 초기화\r\n\t\tif (prizePopup === 1) setLever('');\r\n\t}, [prizePopup]);\r\n\r\n\t// GET 코인\r\n\tuseEffect(() => {\r\n\t\tif (member_se > 0) {\r\n\t\t\tDrawLotsApi.GetDrawLotsCount(member_se, event_se).then((response) => {\r\n\t\t\t\tconst {\r\n\t\t\t\t\tstatus,\r\n\t\t\t\t\tdata: { attendance, miniGame, interiorTicket, coinCount },\r\n\t\t\t\t} = response;\r\n\t\t\t\tif (status === 200) {\r\n\t\t\t\t\tsetAttendance(attendance);\r\n\t\t\t\t\tsetInteriorTicket(interiorTicket);\r\n\t\t\t\t\tsetCoinCount(coinCount);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}, [member_se]);\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t
10.19 - 11.05
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
lever
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{prizePopup !== 0 && (\r\n\t\t\t\t\t\t\t\t\t\t setPrizePopup(0)}\r\n\t\t\t\t\t\t\t\t\t\t\trewardResult={_rewardResult}\r\n\t\t\t\t\t\t\t\t\t\t\teventName={eventName}\r\n\t\t\t\t\t\t\t\t\t\t\teventCategoryType={eventCategoryType}\r\n\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{member_se > 0 && (\r\n\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\twindow.MixPanelClickEventButton(\r\n\t\t\t\t\t\t\t\t\t\t\t\teventName,\r\n\t\t\t\t\t\t\t\t\t\t\t\teventCategoryType\r\n\t\t\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t\t\t\thandleStartClick();\r\n\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\tstart\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t보유\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t동전 개수\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{coinCount}개\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t하루 3개 동전 얻는 방법\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t출석체크 완료\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    동전 1개
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t인테리어 교환권 획득하기\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    동전 2개
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t window.GoToTicket()}\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t교환권 얻으러 가기 >\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default DrawLotsMain;\r\n","import React, { Component } from 'react';\r\nimport { Route, Switch } from 'react-router';\r\nimport DrawLotsMain from './routes/DrawLotsMain';\r\n\r\nexport default class RouletteIndex extends Component {\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n","import React, { useEffect } from 'react';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { cdnUrlConfig } from '../../../Utils/atoms';\r\n\r\nconst PrizePopUp = (props) => {\r\n const cdnUrl = useRecoilValue(cdnUrlConfig);\r\n\tconst IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\r\n const handleConfirmClick = () => {\r\n props.close();\r\n }\r\n\r\n\treturn (\r\n\t\t<>\r\n
\r\n
\r\n
보상받기
\r\n
\r\n
\r\n \"아이템\"\r\n
\r\n
호감쿠키 {props.rewardCount}개
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default PrizePopUp;","import { api } from '../api';\r\n/**\r\n * 빙고 이벤트 API\r\n */\r\nexport const BingoApi = {\r\n\t// GET\r\n\tGetBingoCount: (event_se, member_se) => api.get(`/api/bingo/count?event_se=${event_se}&&member_se=${member_se}`),\r\n\tGetBingoCompleteState: (event_se, member_se) => api.get(`/api/bingo/state?event_se=${event_se}&&member_se=${member_se}`),\r\n\tGetBingoBoard: (event_se, member_se) => api.get(`/api/bingo/board?event_se=${event_se}&&member_se=${member_se}`),\r\n\r\n\t// POST\r\n\tPostBingoStart: (data) => api.post(`/api/bingo/start`, data),\r\n\tPostBingoBoardReward: (data) => api.post(`/api/bingo/reward`, data),\r\n\tPostNewBingoBoard: (data) => api.post(`/api/bingo/board`, data),\r\n};","import React, { useEffect, useState } from 'react';\r\nimport PrizePopUp from './PopUp/PrizePopUp';\r\nimport { BingoApi } from '../../Utils/Api/BingoApi';\r\nimport { useAlert } from 'react-alert';\r\nimport { useLocation } from 'react-router-dom';\r\nimport { splitQuery } from '../../Shares/CommonUtil';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { cdnUrlConfig } from '../../Utils/atoms';\r\nimport { initUnity, setUnityMember } from '../../Utils/unityUtil';\r\nimport { EventApi } from '../../Utils/Api/EventApi';\r\n\r\nconst BingoMain = () => {\r\n const cdnUrl = useRecoilValue(cdnUrlConfig);\r\n\tconst IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\tconst alert = useAlert();\r\n const [member_se, setMemberSe] = useState(0);\r\n const [rewardResult, setRewardResult] = useState({});\r\n const [prizePopup, setPrizePopup] = useState(0);\r\n\tconst [isLoading, setisLoading] = useState(false);\r\n const [countData, setCountData] = useState([]);\r\n const [rewardData, setRewardData] = useState([]);\r\n const [lineData, setLineData] = useState([]);\r\n const [lineCount, setLineCount] = useState([]);\r\n const [boardData, setBoardData] = useState([]);\r\n const [boardCount, setBoardCount] = useState(0);\r\n \r\n // 주소에서 event_se 가져오기\r\n\tconst { search } = useLocation();\r\n\tconst querys = splitQuery(search);\r\n\tconst event_se = querys['event_se'] ? querys['event_se'] : 0;\r\n\r\n // 믹스패널용 이벤트 정보\r\n\tconst [eventName, setEventName] = useState('');\r\n\tconst [eventCategoryType, setEventCategoryType] = useState('');\r\n\r\n\t// member_se 호출에 실패했을 경우의 안내 팝업\r\n\tconst showErrorAlert = (message) => {\r\n\t\talert.error(message, {\r\n\t\t\ttimeout: 5000, // 5 seconds\r\n\t\t});\r\n\t};\r\n\r\n // Unity 함수 호출MixPanelCompleteEvent \r\n\tuseEffect(() => {\r\n\t\tif (event_se > 0) {\r\n\t\t\tinitUnity();\r\n\t\t\tsetUnityMember(\r\n\t\t\t\t(member_se) => setMemberSe(member_se),\r\n\t\t\t\t(msg) => showErrorAlert(msg)\r\n\t\t\t);\r\n\t\t}\r\n\t}, []);\r\n\r\n // 카테고리 코드에 따른 카테고리 명을 반환한다\r\n\tconst getEventCategoryName = (category_cd) => {\r\n\t\tlet result = '';\r\n\t\tif (category_cd === 0) {\r\n\t\t\tresult = '기본';\r\n\t\t} else if (category_cd === 1) {\r\n\t\t\tresult = '룰렛';\r\n\t\t} else if (category_cd === 2) {\r\n\t\t\tresult = '뽑기';\r\n\t\t} else if (category_cd === 3) {\r\n\t\t\tresult = '빙고';\r\n\t\t}\r\n\r\n\t\treturn result;\r\n\t};\r\n\r\n // GET 이벤트 상세 정보 API\r\n\tuseEffect(() => {\r\n\t\tEventApi.GetEventStatus(event_se).then((response) => {\r\n\t\t\tconst { status, data } = response;\r\n\t\t\tif (status === 200) {\r\n\t\t\t\tsetEventName(data.data.event_nm);\r\n\t\t\t\tsetEventCategoryType(\r\n\t\t\t\t\tgetEventCategoryName(data.data.event_category_cd)\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t})\r\n\t\t.catch(error => {\r\n\t\t\tconst { status, data } = error.response;\r\n\t\t\tif (status === 404) {\r\n\t\t\t\talert.error(data.msg, {\r\n\t\t\t\t\ttimeout: 10000, // 10 seconds\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t});\r\n\t}, [event_se]);\r\n\r\n // GET API 호출\r\n\tuseEffect(() => {\r\n\t\tif (member_se > 0) {\r\n // GET 빙고 횟수\r\n\t\t\tBingoApi.GetBingoCount(event_se, member_se).then((response) => {\r\n\t\t\t\tconst { status, data } = response;\r\n\t\t\t\tif (status === 200) {\r\n\t\t\t\t\tsetCountData(data)\r\n\t\t\t\t}\r\n\t\t\t});\r\n // GET 빙고 칸/줄 데이터\r\n BingoApi.GetBingoCompleteState(event_se, member_se).then((response) => {\r\n\t\t\t\tconst { status, data : { bingoState } } = response;\r\n\t\t\t\tif (status === 200) {\r\n\t\t\t\t\tsetRewardData(bingoState.receivedRewards);\r\n setLineData(bingoState.finishedLines);\r\n setLineCount(bingoState.lineCount);\r\n\t\t\t\t}\r\n\t\t\t});\r\n // GET 빙고 판 보상 상태\r\n BingoApi.GetBingoBoard(event_se, member_se).then((response) => {\r\n\t\t\t\tconst { status, data : { bingoBoardRewards, completedBoardCount } } = response;\r\n\t\t\t\tif (status === 200) {\r\n\t\t\t\t\tsetBoardData(bingoBoardRewards);\r\n setBoardCount(completedBoardCount);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}, [member_se]);\r\n \r\n // 버튼 상태 설정\r\n const buttonClass = () => {\r\n {/** 버튼 기본 형태는 start이며 비활성화 시 disabled 클래스, 새 빙고판 교체 시 chagne 클래스 사용 */}\r\n if (lineCount >= 4) {\r\n return 'btn change';\r\n } else if (countData.totalCount <= 0) {\r\n return 'btn disabled';\r\n } else {\r\n return 'btn';\r\n }\r\n };\r\n\r\n // 판 보상 상태 설정\r\n const stageClass = (state) => {\r\n {/** 스테이지 완료 시 success 클래스 추가, 활성화 된 스테이지는 on, 스테이지 완료 시 success 클래스 추가 */}\r\n if (state === 1) {\r\n return 'stage';\r\n } else if (state === 2) {\r\n return 'stage on';\r\n } else if (state === 3) {\r\n return 'stage on success';\r\n }\r\n };\r\n\r\n // 아이템 리스트\r\n const renderItems = () => {\r\n const items = [];\r\n\r\n {/** 획득 시 on 클래스 추가 */}\r\n for (let i = 1; i < 10; i++) {\r\n items.push(
item
);\r\n }\r\n return items;\r\n };\r\n\r\n // 판 보상 받기\r\n const handleBoardReward = (row) => {\r\n if (row.state_cd === 2) {\r\n try {\r\n // POST 빙고 판 보상 받기\r\n const data = { event_se: event_se, member_se: member_se, standard_cnt: row.standard_cnt };\r\n BingoApi.PostBingoBoardReward(data).then((response) => {\r\n const { status, data } = response;\r\n if (status === 200) {\r\n //setRewardData(data.rewardInfo)\r\n setPrizePopup(data.rewardInfo.reward_cn);\r\n // GET 빙고 판 보상 상태 다시 불러오기\r\n BingoApi.GetBingoBoard(event_se, member_se).then((response) => {\r\n const { status, data : { bingoBoardRewards, completedBoardCount } } = response;\r\n if (status === 200) {\r\n setBoardData(bingoBoardRewards);\r\n setBoardCount(completedBoardCount);\r\n }\r\n });\r\n }\r\n });\r\n } catch (error) {\r\n console.error(\"API 호출 에러:\", error);\r\n }\r\n }\r\n };\r\n\r\n // 버튼 클릭\r\n const handleButtonClick = async () => {\r\n if (isLoading) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (member_se > -1) {\r\n\t\t\tsetisLoading(true);\r\n const data = { event_se: event_se, member_se: member_se };\r\n // 4줄 이상 완성했을때 빙고판 교체\r\n if (lineCount >= 4) {\r\n await BingoApi.PostNewBingoBoard(data).then((response) => {\r\n const { status, data } = response;\r\n if (status === 200) {\r\n // GET 빙고 판 보상 상태 다시 불러오기\r\n BingoApi.GetBingoBoard(event_se, member_se).then((response) => {\r\n const { status, data : { bingoBoardRewards, completedBoardCount } } = response;\r\n if (status === 200) {\r\n setBoardData(bingoBoardRewards);\r\n setBoardCount(completedBoardCount);\r\n }\r\n });\r\n // GET 빙고 칸/줄 데이터 다시 불러오기\r\n BingoApi.GetBingoCompleteState(event_se, member_se).then((response) => {\r\n const { status, data : { bingoState } } = response;\r\n if (status === 200) {\r\n setRewardData(bingoState.receivedRewards);\r\n setLineData(bingoState.finishedLines);\r\n setLineCount(bingoState.lineCount);\r\n }\r\n });\r\n }\r\n });\r\n }\r\n // 빙고 시작\r\n else if (countData.totalCount > 0) {\r\n await BingoApi.PostBingoStart(data).then((response) => {\r\n const { status, data } = response;\r\n if (status === 200) {\r\n setRewardResult(data);\r\n setCountData({\r\n ...countData,\r\n totalCount: countData.totalCount-1\r\n });\r\n window.MixPanelCompleteEvent(\r\n eventName,\r\n eventCategoryType,\r\n rewardResult.event_reward_info_nm\r\n );\r\n // GET 빙고 칸/줄 데이터 다시 불러오기\r\n BingoApi.GetBingoCompleteState(event_se, member_se).then((response) => {\r\n const { status, data : { bingoState } } = response;\r\n if (status === 200) {\r\n setRewardData(bingoState.receivedRewards);\r\n setLineData(bingoState.finishedLines);\r\n setLineCount(bingoState.lineCount);\r\n }\r\n });\r\n }\r\n });\r\n }\r\n setisLoading(false);\r\n\t\t}\r\n }\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n

\r\n 레오의 빙고놀이\r\n

\r\n
03.25 - 04.24
\r\n
\r\n
\r\n
빙고 도전 기회
\r\n
\r\n {countData.totalCount}/7회\r\n
\r\n
\r\n
\r\n {/* 아이템 리스트 */}\r\n {renderItems()}\r\n {/**\r\n * line 클래스를 갖는 요소들은 line diagonal, horizon, vertical는 기본 값이며 항상 존재해야 하는 클래스 입니다.\r\n * 해당 위치의 빙고가 활성화 될 경우 위치를 나타내는 top, middle, left, right, bottom의 클래스를 사용해주세요.\r\n */}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
완성한 줄
\r\n
\r\n {lineCount}/4줄\r\n
\r\n
\r\n {member_se > 0 && (\r\n {\r\n window.MixPanelClickEventButton(\r\n eventName,\r\n eventCategoryType\r\n );\r\n handleButtonClick();\r\n }}\r\n >\r\n btn\r\n \r\n )}\r\n {prizePopup !== 0 && (\r\n setPrizePopup(0)}\r\n rewardCount = {prizePopup}\r\n />\r\n )}\r\n
\r\n

4줄이 되면 빙고 한 판이 완성됩니다!

\r\n
\r\n
\r\n
\r\n

빙고 도전 가능 추가 횟수

\r\n
\r\n
    \r\n
  • {/** 완료 시 on 클래스 추가 */}\r\n
    \r\n 펫 먹이주기\r\n
    \r\n
    X 1
    \r\n
  • \r\n
  • \r\n
    \r\n 펫스타그램 좋아요 누르기\r\n
    \r\n
    X 3
    \r\n
  • \r\n
  • \r\n
    \r\n 운세 오픈권 얻기\r\n
    \r\n
    X 3
    \r\n
  • \r\n
\r\n window.GoToFortune()}\r\n >\r\n btn\r\n \r\n
\r\n
\r\n
\r\n

빙고판 진척도

\r\n
\r\n
\r\n
완성한 판
\r\n
\r\n {String(boardCount).padStart(2, '0')}
\r\n
\r\n
\r\n
\r\n {boardData && \r\n boardData.map((row, index) => (\r\n
handleBoardReward(row)}\r\n >\r\n
{row.reward_cn}
\r\n
빙고 {row.standard_cnt} 판
\r\n
\r\n ))}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default BingoMain;","import React, { Component } from 'react';\r\nimport { Route, Switch } from 'react-router';\r\nimport BingoMain from './routes/BingoMain';\r\n\r\nexport default class BingoIndex extends Component {\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n","import { api } from \"../api\";\r\n\r\nexport const settingApi = {\r\n getCdnUrl: () => api.get('api/setting/cdn'),\r\n getMode: () => api.get('api/setting/environment'),\r\n}","import React from 'react';\r\nimport ReactPagination from 'react-js-pagination';\r\n\r\nconst Pagination = ({\r\n\ttotalCount,\r\n\tcurrentPage,\r\n\tpageSize,\r\n\tonChange,\r\n\thideFirstLastPages,\r\n}) => {\r\n\treturn (\r\n\t\t<>\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default Pagination;\r\n","/* eslint-disable react-hooks/exhaustive-deps */\r\nimport React, { useState, useEffect, useRef } from 'react';\r\nimport { useAlert } from 'react-alert';\r\nimport { useLocation } from 'react-router-dom';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { splitQuery } from '../../Shares/CommonUtil';\r\nimport { EventApi } from '../../Utils/Api/EventApi';\r\nimport { cdnUrlConfig } from '../../Utils/atoms';\r\nimport { initUnity, setUnityMember } from '../../Utils/unityUtil';\r\nimport Pagination from '../../Shares/Pagination';\r\n\r\nconst PAGE_SIZE = 4; // 댓글 페이지 사이즈\r\n\r\n/**\r\n * [4월 이벤트] 플레이 소감 작성 이벤트: 댓글 작성 메인 페이지\r\n */\r\nconst EventMain = () => {\r\n\tconst replyRef = useRef(); // 댓글 작성 영역으로 이동시켜주는 ref\r\n\tconst alert = useAlert();\r\n\tconst cdnUrl = useRecoilValue(cdnUrlConfig);\r\n\tconst IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\r\n\t// 주소에서 event_se 가져오기\r\n\tconst { search } = useLocation();\r\n\tconst querys = splitQuery(search);\r\n\tconst event_se = querys['event_se'] ? querys['event_se'] : 0;\r\n\tconst [member_se, setMemberSe] = useState(0);\r\n\tconst [page, setPage] = useState(1);\r\n\tconst [totalCount, setTotalCount] = useState(0);\r\n\tconst [replyList, setReplyList] = useState([]);\r\n\tconst [textInput, setTextInput] = useState('');\r\n\tconst [loading, setLoading] = useState(false);\r\n\r\n\t// member_se 세팅\r\n\tuseEffect(() => {\r\n\t\tif (event_se > 0) {\r\n\t\t\tinitUnity();\r\n\t\t\tsetMemberSe(Number(window.GetMemberSE()));\r\n\t\t}\r\n\t});\r\n\r\n\tuseEffect(() => {\r\n\t\t//이벤트 참여 컨텐츠 Load\r\n\t\tif (event_se > 0) {\r\n\t\t\tfetchData(page);\r\n\t\t}\r\n\t}, [page]);\r\n\r\n\t//#region 이벤트함수\r\n\tfunction fetchData(page) {\r\n\t\t//이벤트 컨텐츠 리스트 가져오기\r\n\t\tEventApi.getContent(event_se, page, PAGE_SIZE)\r\n\t\t\t.then((response) => {\r\n\t\t\t\tconst { status, data } = response;\r\n\t\t\t\tif (status === 200) {\r\n\t\t\t\t\tsetReplyList(data.datas);\r\n\t\t\t\t\tsetTotalCount(data.count);\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.finally(() => {\r\n\t\t\t\tsetTextInput('');\r\n\t\t\t});\r\n\t}\r\n\r\n\tfunction handlePageChange(value) {\r\n\t\t//페이지 변경 이벤트\r\n\t\tsetPage(value);\r\n\t\tscrollToReplyWriteArea();\r\n\t}\r\n\r\n\tfunction scrollToReplyWriteArea() {\r\n\t\t// 댓글 작성 영역으로 스크롤 이동\r\n\t\treplyRef.current.scrollIntoView({ behavior: 'smooth' });\r\n\t}\r\n\r\n\tfunction handleChange(event) {\r\n\t\t//댓글 입력 이벤트\r\n\t\tconst { value } = event.target;\r\n\t\tsetTextInput(value);\r\n\t}\r\n\r\n\tfunction handleSubmit() {\r\n\t\t//댓글 게시 이벤트\r\n\t\tconst { isValid, msg } = validCheck();\r\n\r\n\t\tif (isValid) {\r\n\t\t\tif (!loading) {\r\n\t\t\t\tsetLoading(true);\r\n\t\t\t\tconst submitData = {\r\n\t\t\t\t\tevent_se: event_se,\r\n\t\t\t\t\tmember_se: member_se,\r\n\t\t\t\t\tparticipate_event_ct: textInput,\r\n\t\t\t\t};\r\n\r\n\t\t\t\tEventApi.postContent(submitData)\r\n\t\t\t\t\t.then((response) => {\r\n\t\t\t\t\t\tconst { status } = response;\r\n\t\t\t\t\t\tif (status === 200) {\r\n\t\t\t\t\t\t\tif (page > 1) {\r\n\t\t\t\t\t\t\t\tsetPage(1);\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tfetchData(1);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.catch((error) => {\r\n\t\t\t\t\t\tconst { data } = error.response;\r\n\t\t\t\t\t\talert.error(`${data.msg}`);\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.finally(() => {\r\n\t\t\t\t\t\tsetLoading(false);\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\talert.error(msg);\r\n\t\t}\r\n\t}\r\n\r\n\tfunction validCheck() {\r\n\t\t//댓글 입력값 유효성 검사\r\n\t\tlet isValid = true;\r\n\t\tlet error = '';\r\n\t\tconst minimumLength = 5;\r\n\r\n\t\tif (member_se === 0) {\r\n\t\t\tisValid = false;\r\n\t\t\terror = '회원정보를 알 수 없습니다.';\r\n\t\t} else if (textInput === '') {\r\n\t\t\tisValid = false;\r\n\t\t\terror = '입력된 내용이 없습니다.';\r\n\t\t} else if (textInput.length < minimumLength) {\r\n\t\t\tisValid = false;\r\n\t\t\terror = `${minimumLength}글자 이상 입력해주세요.`;\r\n\t\t}\r\n\r\n\t\treturn { isValid, msg: error };\r\n\t}\r\n\t//#endregion\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{/* 인트로 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t업데이트된 새 콘텐츠들을\r\n\t\t\t\t\t\t\t플레이한 후 소감을 댓글로 작성해주세요!\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{/* 참여방법 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t참여방법\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  1. \r\n\t\t\t\t\t\t\t\t\t
    STEP 1
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t4월 업데이트로 새로 추가된 콘텐츠 들을 플레이한다.\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  2. \r\n\t\t\t\t\t\t\t\t
  3. \r\n\t\t\t\t\t\t\t\t\t
    STEP 2
    \r\n\t\t\t\t\t\t\t\t\t
    플레이한 후 소감을 댓글로 등록한다.
    \r\n\t\t\t\t\t\t\t\t
  4. \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{/* 업데이트 콘텐츠 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

업데이트 콘텐츠

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    펫하우스
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    청소하기
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    미션 및 업적
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    샤워하기
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    채집하기
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    무료충전소
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    랜덤박스
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    펫팔파이브
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    마음의소리
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    핀고정
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{/* 이벤트 상세 기간 안내 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

이벤트 상세 안내

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    참여기간
    \r\n\t\t\t\t\t\t\t\t\t
    2023년 4월 1일 ~ 4월 30일
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    발표일
    \r\n\t\t\t\t\t\t\t\t\t
    2023년 5월 7일
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    심사기준
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t플레이 소감을 정성껏 작성해\r\n\t\t\t\t\t\t\t\t\t\t주신 분들 중 추첨합니다.\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{/* 경품안내 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t경품안내\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
  1. \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    GS25 모바일 상품권 10,000원 (20명)
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    추첨
    \r\n\t\t\t\t\t\t\t\t
    GS25 모바일 상품권 10,000원 (20명)
    \r\n\t\t\t\t\t\t\t
  2. \r\n\t\t\t\t\t\t\t
  3. \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    젤리 20개
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    2등
    \r\n\t\t\t\t\t\t\t\t
    젤리 20개
    \r\n\t\t\t\t\t\t\t
  4. \r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{/* 댓글 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{/* 입력칸 */}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t{/* 댓글리스트 */}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t{replyList.map((reply) => (\r\n\t\t\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{reply.member_profile ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    {reply.nick_nm}
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t
    {reply.reg_date}
    \r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t{reply.participate_event_ct\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t.split('\\n')\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t.map((content, index) => {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tconst maxTextLengthPerLine = 23; // 한 줄에 표출되는 최대 글자수\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tconst line = Math.floor(\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcontent.length / maxTextLengthPerLine\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tif (line > 0) {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfor (let i = 0; i < line; i++) {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{content}
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t} else\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{content}
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{totalCount > 0 && (\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{/* 주의사항 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
확인해주세요
\r\n\t\t\t\t\t\t\t
이벤트 중복 참여 시 1회만 이벤트 참여로 인정됩니다.
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t비글즈 플레이와 관련된 후기만 이벤트 대상이 되며, 관련 없는 글은\r\n\t\t\t\t\t\t\t\t추첨 대상에서 제외될 수 있습니다.{' '}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t이벤트에 당첨되신 분들은 꼭 당첨자 발표 7일 이내로 마이페이지\r\n\t\t\t\t\t\t\t\t> 설정 > 고객센터 1:1 문의 접수 혹은 운영자 이메일 개별\r\n\t\t\t\t\t\t\t\t연락을 통해 휴대전화 번호 혹은 주소를 보내주셔야 합니다.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t기간 내 문의를 접수해 주시지 않을 경우 당첨이 취소될 수\r\n\t\t\t\t\t\t\t\t있습니다.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t이벤트 기간 동안 닉네임 변경 시 당첨정보 확인이 불가하여 당첨이\r\n\t\t\t\t\t\t\t\t취소될 수 있습니다.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
이벤트 상품은 교환 및 환불이 불가합니다.
\r\n\t\t\t\t\t\t\t
기프티콘 선물은 유효 기간 내에 사용해 주셔야 합니다.
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t해당 이벤트는 앱스토어 또는 구글 플레이스토어 등과 무관합니다.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default EventMain;\r\n","import React from 'react';\r\nimport { useRecoilValue } from 'recoil';\r\nimport { cdnUrlConfig } from '../../Utils/atoms';\r\n\r\nfunction getDownloadLink() {\r\n\tconst userAgent = navigator.userAgent.toLowerCase();\r\n\r\n\tif (userAgent.indexOf('iphone') > -1) {\r\n\t\treturn 'https://apps.apple.com/kr/app/%EB%B9%84%EA%B8%80%EC%A6%88-%EA%B0%80%EC%83%81-%ED%8E%AB-%ED%9E%90%EB%A7%81-%EC%95%B1-%EB%B0%98%EB%A0%A4%EB%8F%99%EB%AC%BC-%EC%BA%90%EB%A6%AD%ED%84%B0-%EB%A9%94%ED%83%80%EB%B2%84%EC%8A%A4/id1585622161';\r\n\t} else {\r\n\t\treturn 'https://play.google.com/store/apps/details?id=com.bigglz.BigglzApp';\r\n\t}\r\n}\r\n\r\n/**\r\n * [4월 이벤트] 플레이 소감 작성 이벤트: 프로모션 페이지\r\n */\r\nconst Promotion = () => {\r\n\tconst isApp = window.location.pathname.includes('mobile'); //URL에 \"app\"이 포함되면 true\r\n\tconst cdnUrl = useRecoilValue(cdnUrlConfig);\r\n\tconst IMG_URL = `${cdnUrl}/BigglzEvent`;\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{/* 인트로 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t업데이트된 새 콘텐츠들을\r\n\t\t\t\t\t\t\t플레이한 후 소감을 댓글로 작성해주세요!\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{/* 참여방법 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t참여방법\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  1. \r\n\t\t\t\t\t\t\t\t\t
    STEP 1
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t4월 업데이트로 새로추가된 콘텐츠 들을 플레이한다.\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  2. \r\n\t\t\t\t\t\t\t\t
  3. \r\n\t\t\t\t\t\t\t\t\t
    STEP 2
    \r\n\t\t\t\t\t\t\t\t\t
    플레이한 후 소감을 댓글로 등록한다.
    \r\n\t\t\t\t\t\t\t\t
  4. \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{/* 업데이트 콘텐츠 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

업데이트 콘텐츠

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    펫하우스
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    청소하기
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    미션 및 업적
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    샤워하기
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    채집하기
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    무료충전소
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    랜덤박스
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    펫팔파이브
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    마음의소리
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    핀고정
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{/* 이벤트 상세 기간 안내 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

이벤트 상세 안내

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    참여기간
    \r\n\t\t\t\t\t\t\t\t\t
    2023년 4월 1일 ~ 4월 30일
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    발표일
    \r\n\t\t\t\t\t\t\t\t\t
    2023년 5월 7일
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t
    심사기준
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t플레이 소감을 정성껏 작성해\r\n\t\t\t\t\t\t\t\t\t\t주신 분들 중 추첨합니다.\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{/* 경품안내 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t경품안내\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
  1. \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    GS25 모바일 상품권 10,000원 (20명)
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    추첨
    \r\n\t\t\t\t\t\t\t\t
    GS25 모바일 상품권 10,000원 (20명)
    \r\n\t\t\t\t\t\t\t
  2. \r\n\t\t\t\t\t\t\t
  3. \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    젤리 20개
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    2등
    \r\n\t\t\t\t\t\t\t\t
    젤리 20개
    \r\n\t\t\t\t\t\t\t
  4. \r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{/* 주의사항 */}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
확인해주세요
\r\n\t\t\t\t\t\t\t
이벤트 중복 참여 시 1회만 이벤트 참여로 인정됩니다.
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t비글즈 플레이와 관련된 후기만 이벤트 대상이 되며, 관련 없는 글은\r\n\t\t\t\t\t\t\t\t추첨 대상에서 제외될 수 있습니다.{' '}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t이벤트에 당첨되신 분들은 꼭 당첨자 발표 7일 이내로 마이페이지\r\n\t\t\t\t\t\t\t\t> 설정 > 고객센터 1:1 문의 접수 혹은 운영자 이메일 개별\r\n\t\t\t\t\t\t\t\t연락을 통해 휴대전화 번호 혹은 주소를 보내주셔야 합니다.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t기간 내 문의를 접수해 주시지 않을 경우 당첨이 취소될 수\r\n\t\t\t\t\t\t\t\t있습니다.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t이벤트 기간 동안 닉네임 변경 시 당첨정보 확인이 불가하여 당첨이\r\n\t\t\t\t\t\t\t\t취소될 수 있습니다.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
이벤트 상품은 교환 및 환불이 불가합니다.
\r\n\t\t\t\t\t\t\t
기프티콘 선물은 유효 기간 내에 사용해 주셔야 합니다.
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t해당 이벤트는 앱스토어 또는 구글 플레이스토어 등과 무관합니다.\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{!isApp && (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t앱 다운로드 하러가기\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default Promotion;\r\n","import React, { Component } from 'react';\r\nimport { Route, Switch } from 'react-router';\r\nimport EventMain from './routes/EventMain';\r\nimport Promotion from './routes/Promotion';\r\n\r\n/**\r\n * [4월 이벤트] 플레이 소감 작성 이벤트\r\n */\r\nexport default class PlayReview extends Component {\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n","/* eslint-disable react-hooks/exhaustive-deps */\r\nimport React, { useEffect } from 'react';\r\nimport { Switch, Route } from 'react-router-dom';\r\nimport MainMenu from './MainMenu';\r\nimport MbtiIndex from './MBTI';\r\nimport PetWorldChristmas from './PetHome/routes/PetWorldPromotionChristmas';\r\nimport Tutorial from './Tutorial';\r\nimport GameKingIndex from './GameKing';\r\nimport Survey from './Survey';\r\nimport PetHomeIndex from './PetHome';\r\nimport InteriorItemIndex from './InteriorItem';\r\nimport RouletteIndex from './Roulette';\r\nimport DrawLotsIndex from './DrawLots';\r\nimport BingoIndex from './Bingo';\r\nimport { useRecoilState } from 'recoil';\r\nimport { cdnUrlConfig, serverMode } from './Utils/atoms';\r\nimport { settingApi } from './Utils/Api/SettingApi';\r\nimport PlayReview from './PlayReview';\r\n\r\nconst BIGGLZ_EVENT_REFRESH_KEY = 'BIGGLZ_EVENT_REFRESH_TIME';\r\nconst REFRESH_SECONDS = 300; //해당 초가 지나면 페이지 새로고침\r\n\r\nfunction App() {\r\n\tconst [cdnUrl, setCdnUrl] = useRecoilState(cdnUrlConfig);\r\n\tconst [mode, setMode] = useRecoilState(serverMode);\r\n\r\n\tuseEffect(() => {\r\n\t\tif (cdnUrl === '') {\r\n\t\t\tsettingApi.getCdnUrl().then((res) => {\r\n\t\t\t\tconst {\r\n\t\t\t\t\tstatus,\r\n\t\t\t\t\tdata: { CDN },\r\n\t\t\t\t} = res;\r\n\t\t\t\tif (status === 200) {\r\n\t\t\t\t\tsetCdnUrl(CDN);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\tif (mode === '') {\r\n\t\t\t// [\"TEST\" | \"REAL\"]\r\n\t\t\tsettingApi.getMode().then((res) => {\r\n\t\t\t\tconst {\r\n\t\t\t\t\tstatus,\r\n\t\t\t\t\tdata: { MODE },\r\n\t\t\t\t} = res;\r\n\t\t\t\tif (status === 200) {\r\n\t\t\t\t\tsetMode(MODE);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\t//브라우저 localStorage에 timestamp를 저장하여\r\n\t\t//일정 시간이 지난 후 페이지를 재방문할때 브라우저 새로고침을 실행한다.\r\n\t\tconst currentTimeStamp = Math.floor(+new Date() / 1000); // ex) 1672373053\r\n\t\tconst savedRefreshTime = localStorage.getItem(BIGGLZ_EVENT_REFRESH_KEY);\r\n\r\n\t\tif (savedRefreshTime === null) {\r\n\t\t\tlocalStorage.setItem(BIGGLZ_EVENT_REFRESH_KEY, currentTimeStamp);\r\n\t\t} else if (currentTimeStamp - savedRefreshTime > REFRESH_SECONDS) {\r\n\t\t\tlocalStorage.setItem(BIGGLZ_EVENT_REFRESH_KEY, currentTimeStamp);\r\n\t\t\twindow.location.reload();\r\n\t\t}\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport default App;\r\n","// In production, we register a service worker to serve assets from local cache.\r\n\r\n// This lets the app load faster on subsequent visits in production, and gives\r\n// it offline capabilities. However, it also means that developers (and users)\r\n// will only see deployed updates on the \"N+1\" visit to a page, since previously\r\n// cached resources are updated in the background.\r\n\r\n// To learn more about the benefits of this model, read https://goo.gl/KwvDNy.\r\n// This link also includes instructions on opting out of this behavior.\r\n\r\nconst isLocalhost = Boolean(\r\n window.location.hostname === 'localhost' ||\r\n // [::1] is the IPv6 localhost address.\r\n window.location.hostname === '[::1]' ||\r\n // 127.0.0.1/8 is considered localhost for IPv4.\r\n window.location.hostname.match(\r\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\r\n )\r\n);\r\n\r\nexport default function register() {\r\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\r\n // The URL constructor is available in all browsers that support SW.\r\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location);\r\n if (publicUrl.origin !== window.location.origin) {\r\n // Our service worker won't work if PUBLIC_URL is on a different origin\r\n // from what our page is served on. This might happen if a CDN is used to\r\n // serve assets; see https://github.com/facebookincubator/create-react-app/issues/2374\r\n return;\r\n }\r\n\r\n window.addEventListener('load', () => {\r\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\r\n\r\n if (isLocalhost) {\r\n // This is running on localhost. Lets check if a service worker still exists or not.\r\n checkValidServiceWorker(swUrl);\r\n } else {\r\n // Is not local host. Just register service worker\r\n registerValidSW(swUrl);\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction registerValidSW(swUrl) {\r\n navigator.serviceWorker\r\n .register(swUrl)\r\n .then(registration => {\r\n registration.onupdatefound = () => {\r\n const installingWorker = registration.installing;\r\n installingWorker.onstatechange = () => {\r\n if (installingWorker.state === 'installed') {\r\n if (navigator.serviceWorker.controller) {\r\n // At this point, the old content will have been purged and\r\n // the fresh content will have been added to the cache.\r\n // It's the perfect time to display a \"New content is\r\n // available; please refresh.\" message in your web app.\r\n console.log('New content is available; please refresh.');\r\n } else {\r\n // At this point, everything has been precached.\r\n // It's the perfect time to display a\r\n // \"Content is cached for offline use.\" message.\r\n console.log('Content is cached for offline use.');\r\n }\r\n }\r\n };\r\n };\r\n })\r\n .catch(error => {\r\n console.error('Error during service worker registration:', error);\r\n });\r\n}\r\n\r\nfunction checkValidServiceWorker(swUrl) {\r\n // Check if the service worker can be found. If it can't reload the page.\r\n fetch(swUrl)\r\n .then(response => {\r\n // Ensure service worker exists, and that we really are getting a JS file.\r\n if (\r\n response.status === 404 ||\r\n response.headers.get('content-type').indexOf('javascript') === -1\r\n ) {\r\n // No service worker found. Probably a different app. Reload the page.\r\n navigator.serviceWorker.ready.then(registration => {\r\n registration.unregister().then(() => {\r\n window.location.reload();\r\n });\r\n });\r\n } else {\r\n // Service worker found. Proceed as normal.\r\n registerValidSW(swUrl);\r\n }\r\n })\r\n .catch(() => {\r\n console.log(\r\n 'No internet connection found. App is running in offline mode.'\r\n );\r\n });\r\n}\r\n\r\nexport function unregister() {\r\n if ('serviceWorker' in navigator) {\r\n navigator.serviceWorker.ready.then(registration => {\r\n registration.unregister();\r\n });\r\n }\r\n}\r\n","import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport { BrowserRouter as Router } from 'react-router-dom';\r\nimport { transitions, positions, Provider as AlertProvider } from 'react-alert';\r\nimport { RecoilRoot } from 'recoil';\r\nimport AlertTemplate from 'react-alert-template-basic';\r\nimport App from './App';\r\nimport { unregister } from './registerServiceWorker';\r\n\r\n//Browser Cache Busting\r\nunregister();\r\n\r\nconst rootElement = document.getElementById('root');\r\n\r\nconst alertOptions = {\r\n\ttimeout: 3000,\r\n\toffset: '30px',\r\n\tposition: positions.MIDDLE,\r\n\ttransition: transitions.SCALE,\r\n};\r\n\r\nReactDOM.render(\r\n\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t,\r\n\trootElement\r\n);\r\n"],"sourceRoot":""}