{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/views/Home.vue?91c5","webpack:///./src/i18n/node.js","webpack:///./src/components/modal/Share.vue?ba3d","webpack:///./src/components/aside/Navbar.vue?0cb0","webpack:///./src/components/aside/NavbarBtn.vue?8dcc","webpack:///./src/components/modal/Player.vue?bb01","webpack:///./src/components/main/BannerBtn.vue?b961","webpack:///./src/App.vue?f3a6","webpack:///./src/components/modal/Error.vue?63ff","webpack:///./src/components/base/CloseBtn.vue?1029","webpack:///./src/components/main/VideosItem.vue?873c","webpack:///./src/components/main/Videos.vue?3fda","webpack:///./src/components/base/Swiper.vue?d366","webpack:///./src/components/modal/OpeningVideo.vue?4f4b","webpack:///./src/i18n/index.js","webpack:///./src/utils.ts","webpack:///./src/services/api.ts","webpack:///./src/services/index.ts","webpack:///./src/store/error.ts","webpack:///./src/store/home.ts","webpack:///./src/store/opening.ts","webpack:///./src/store/share.ts","webpack:///./src/store/tab.ts","webpack:///./src/store/media.ts","webpack:///./src/components/base/CloseBtn.vue","webpack:///./src/components/base/CloseBtn.vue?c0a2","webpack:///./src/components/modal/OpeningVideo.vue","webpack:///./src/components/modal/OpeningVideo.vue?dfc7","webpack:///./src/types/enums.ts","webpack:///./src/components/aside/NavbarBtn.vue","webpack:///./src/components/aside/NavbarBtn.vue?7799","webpack:///./src/components/aside/Navbar.vue","webpack:///./src/components/aside/Navbar.vue?717f","webpack:///./src/components/base/Swiper.vue","webpack:///./src/components/base/Swiper.vue?5b5c","webpack:///./src/components/main/BannerBtn.vue","webpack:///./src/components/main/BannerBtn.vue?fabd","webpack:///./src/components/main/Banner.vue","webpack:///./src/components/main/Banner.vue?d6e8","webpack:///./src/components/main/BottomCarousel.vue","webpack:///./src/components/main/BottomCarousel.vue?68a7","webpack:///./src/components/main/VideosItem.vue","webpack:///./src/components/main/VideosItem.vue?cfa6","webpack:///./src/components/main/Videos.vue","webpack:///./src/components/main/Videos.vue?0584","webpack:///./src/components/modal/Share.vue","webpack:///./src/components/modal/Share.vue?eddf","webpack:///./src/views/Home.vue","webpack:///./src/views/Home.vue?7720","webpack:///./src/components/modal/Error.vue","webpack:///./src/components/modal/Error.vue?7969","webpack:///./src/components/modal/Player.vue","webpack:///./src/components/modal/Player.vue?9fa4","webpack:///./src/components/modal/Media.vue","webpack:///./src/components/modal/Media.vue?67bb","webpack:///./src/App.vue","webpack:///./src/App.vue?ae2f","webpack:///./src/layout.ts","webpack:///./src/main.ts","webpack:///./src/components/main/BottomCarousel.vue?5c79","webpack:///./src/components/main/Banner.vue?8a7b","webpack:///./src/components/modal/Media.vue?ba50","webpack:///./src/preloader.ts"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","langMap","JSON","parse","process","regionPostfix","loadedLocales","fetchMessage","async","res","fetch","locale","status","json","Error","e","console","warn","messages","i18n","setLocaleMessage","useI18n","setLocale","newLocale","loadLocale","message","createI18n","legacy","fallbackLocale","globalInjection","getParam","paramName","url","location","href","replace","regex","RegExp","results","exec","decodeURIComponent","camelizeStr","str","_","x","toUpperCase","snakifyStr","toLowerCase","convertCase","convertFunc","converter","thing","Array","isArray","map","newObj","keys","forEach","k","delay","ms","Promise","resolve","setTimeout","camelizeKeys","snakifyKeys","API","instance","axios","baseURL","headers","xsrfCookieName","xsrfHeaderName","withCredentials","interceptors","response","use","utils","error","reject","method","requestType","normalizedParams","params","put","delete","post","getHome","api","getTab","state","useError","defineStore","actions","updateError","this","entryVidId","videoPauseImg","videoEndImg","topCarouselInfo","bottomCarouselInfo","tabs","isInit","useHome","services","$patch","updateIsInit","err","player","isPlaying","useOpening","updatePlayer","updateIsPlaying","isShareVisible","isCopied","useShare","updateIsShareVisible","open","updateIsCopied","media","currentTab","useTab","id","updateMedia","reload","list","updateCurrentTab","isEnlarged","thumbnail","youtube","youtubeCover","playerState","useMedia","updateIsEnlarged","updateThumbnail","img","updateYoutube","updateYoutubeCover","updatePlayerState","closeMedia","destroy","class","_createElementBlock","script","__exports__","render","_withScopeId","_pushScopeId","_popScopeId","_hoisted_1","_createElementVNode","_defineComponent","__name","props","setup","__props","storeToRefs","checkIsFirstPlay","localStorage","getItem","onPlayerReady","event","target","mute","playVideo","onPlayerStateChange","document","body","style","overflow","YT","PlayerState","ENDED","setItem","onYouTubeIframeAPIReady","Player","height","width","videoId","playerVars","fs","controls","enablejsapi","origin","iv_load_policy","modestbranding","playsinline","autoplay","rel","events","onReady","onStateChange","closeOpening","onMounted","nextTick","onYouTubePlayerAPIReady","_ctx","_cache","_openBlock","_normalizeClass","ended","_unref","_createVNode","CloseBtn","onClick","Tab","MediaType","type","_hoisted_2","_hoisted_3","topic","subtopic","Home","_Fragment","src","alt","_createTextVNode","_toDisplayString","_createCommentVNode","switchTab","gtag","tab_name","NavbarBtn","$event","_renderList","tab","index","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","slidesPerView","spaceBetween","pagination","grabCursor","Boolean","loop","emits","Autoplay","Pagination","checkIsUrl","test","checkUrlisYoutube","includes","getVideoId","arr","split","rotate90Swiper","swiper","optIsRotate90","isRoate90","___touches","currentX","touches","set","v","currentY","isRotate90","setRotate90","checkOrientation","matchMedia","matches","onSwiper","addEventListener","Swiper","default","_withCtx","item","_createBlock","SwiperSlide","onMouseover","$emit","onTouchstart","_renderSlot","$slots","disableOnInteraction","el","clickable","play","BannerBtn","onUpdateYoutube","onPlayVideo","enlargeImg","img_name","isPinned","Video","info","title","draggable","Image","mm","month","dd","day","author","VideosItem","_hoisted_8","_hoisted_9","lang","documentElement","apps","tw","th","vn","link","encodeURI","share","navigator","preventDefault","copyUrl","clipboard","ClipboardJS","on","ref","onUpdated","querySelector","hasTopbar","_Transition","Navbar","Banner","BottomCarousel","Share","Videos","watch","newValue","_Teleport","to","changeStateAndCover","stopVideo","PAUSED","ready","_withDirectives","_vShow","tag","createElement","firstScriptTag","getElementsByTagName","parentNode","insertBefore","OpeningVideo","Media","setRootFontSize","designSafeWidth","designSafeHeight","vmax","Math","max","innerHeight","innerWidth","vmin","min","vmaxToFontSize","vminToFontSize","fontSize","elem","resetTimer","resetRootFontSize","clearTimeout","setupLayout","pinia","createPinia","app","createApp","App","mount","Sentry","dsn","integrations","Integrations","attachProps","images","image"],"mappings":"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","file":"assets/js/app.5ea51700.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Home.vue?vue&type=style&index=0&id=47313042&lang=scss&scoped=true\"","exports['vn'] = {\"REMAIN_VOTE_HINT\":\"Chào {name}, bạn còn {num} phiếu bình chọn\",\"ERROR__INVALID_PAGE\":\"Trang bạn yêu cầu đã hết hạn hoặc không tồn tại\",\"ERROR__BAD_REQUEST\":\"Yêu cầu không hợp lệ\",\"CONSENT__DISAGREE\":\"\",\"ERROR__MODAL_TITLE\":\"Thông báo\",\"ITEM_DATE\":\"{mm}- {dd}\",\"ERROR__SERVER_BUSY\":\"Server hiện đang quá tải, bạn vui lòng chờ một lát nhé!\",\"ERROR__INVALID_PARAMS\":\"Lỗi thông số\",\"ERROR__FORBIDDEN\":\"Bạn không có quyền thực hiện thao tác\",\"SHARE_WHATSAPP\":\"Chia sẻ trên Whatsapp\",\"SHARE_TWITTER\":\"Chia sẻ trên Twitter\",\"SHARE_TITLE\":\"Chia sẻ tiêu đề\",\"SHARE_LINE\":\"Chia sẻ trên Line\",\"ERROR__NOT_EVENT_PERIOD\":\"Không có trong thời gian diễn ra sự kiện tại\",\"ERROR__UNDER_MAINTENANCE\":\"server hiện đang bảo trì\",\"SHARE_COPIED\":\"Đã sao chép liên kết\",\"ERROR__GOP_LOGIN_FAILED\":\"sự kiện đã hết hạn\",\"NOTIFY_LOGIN_MESSAGE\":\"Vui lòng đăng nhập tài khoản game để bình chọn\",\"RULE_TITLE\":\"Thể lệ\",\"LOGIN_HINT\":\"Vui lòng đăng nhập tài khoản game để bình chọn\",\"ERROR__NO_CHARACTERS\":\"Tài khoản không tồn tại\",\"VOTE_DESC\":\"Được {num} người thích\",\"CONSENT__EVENT_NAME\":\"\",\"SHARE_FB\":\"Chia sẻ trên Facebook\",\"ERROR__SERVER_ERROR\":\"lỗi Server!\",\"ERROR__NOT_ENOUGH_BALLOT\":\"Không đủ phiếu bình chọn\",\"CONSENT__GAME_NAME\":\"\",\"CONSENT__AGREE\":\"\",\"ERROR__VOTE_END\":\"Đã đóng\",\"CONSENT__CONTENT\":\"\",\"CONSENT__TITLE\":\"\"}","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Share.vue?vue&type=style&index=0&id=6bcf1124&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Navbar.vue?vue&type=style&index=0&id=5c2bf724&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--1-1!./NavbarBtn.vue?vue&type=style&index=0&id=04e6892e&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Player.vue?vue&type=style&index=0&id=0ab24015&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--1-1!./BannerBtn.vue?vue&type=style&index=0&id=0d84573b&lang=scss&scoped=true\"","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--1-1!./App.vue?vue&type=style&index=0&id=0b675882&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Error.vue?vue&type=style&index=0&id=8ccffa6e&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--1-1!./CloseBtn.vue?vue&type=style&index=0&id=16044082&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--1-1!./VideosItem.vue?vue&type=style&index=0&id=3d420976&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Videos.vue?vue&type=style&index=0&id=37f6005c&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Swiper.vue?vue&type=style&index=0&id=0afce04b&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--1-1!./OpeningVideo.vue?vue&type=style&index=0&id=31ceac30&lang=scss&scoped=true\"","import { createI18n, useI18n } from 'vue-i18n';\nimport messages from './node';\n\nconst langMap = JSON.parse(process.env.LANG_MAP || '');\nconst regionPostfix =\n process.env.REGION === 'sg' ? '' : `-${process.env.REGION}`;\n\nconst loadedLocales = {};\n\nconst fetchMessage = async (locale) => {\n try {\n const res = await fetch(\n `https://rosetta${regionPostfix}.garenanow.com/transify/${process.env.TRANSIFY_ID}?lang=${langMap[locale]}`,\n );\n if (res.status === 200) {\n return res.json();\n }\n throw Error(`Fetch Rosetta failed with status ${res.status}`);\n } catch (e) {\n // eslint-disable-next-line no-console\n console.warn('Referring to local translation due to', e);\n return messages[locale];\n }\n};\n\nexport const i18n = () => {\n const { locale, setLocaleMessage } = useI18n();\n\n const setLocale = (newLocale) => {\n locale.value = newLocale;\n };\n\n const loadLocale = async (newLocale) => {\n if (newLocale in loadedLocales) {\n return setLocale(newLocale);\n }\n const message = await fetchMessage(newLocale);\n setLocaleMessage(newLocale, message);\n return setLocale(newLocale);\n };\n\n return { ...useI18n(), loadLocale };\n};\n\nexport default createI18n({\n legacy: false,\n locale: process.env.LOCALE,\n fallbackLocale: process.env.LOCALE,\n globalInjection: true,\n messages,\n});\n","function getParam(paramName: string, url: string = window.location.href) {\n const name = paramName.replace(/[[]]/g, '\\\\$&');\n const regex = new RegExp(`[?&]${name}(=([^&#]*)|&|#|$)`);\n const results = regex.exec(url);\n if (!results) return null;\n if (!results[2]) return '';\n return decodeURIComponent(results[2].replace(/\\+/g, ' '));\n}\n\nfunction camelizeStr(str: string): string {\n return str.replace(/[_.-](\\w|$)/g, (_, x) => x.toUpperCase());\n}\n\nfunction snakifyStr(str: string): string {\n return str.replace(/(?:^|\\.?)([A-Z])/g, (_, x) => `_${x.toLowerCase()}`);\n}\n\ntype ConvertFunc = (k: string) => string;\nexport type AnyJson =\n | boolean\n | number\n | string\n | null\n | undefined\n | JsonArray\n | JsonMap;\ninterface JsonMap {\n [key: string]: AnyJson;\n}\ntype JsonArray = Array;\n\nfunction convertCase(convertFunc: ConvertFunc) {\n function converter(thing: AnyJson): AnyJson {\n if (Array.isArray(thing)) {\n return thing.map((i) => converter(i));\n }\n if (thing && typeof thing === 'object') {\n const newObj: JsonMap = {};\n Object.keys(thing).forEach((k: string) => {\n newObj[convertFunc(k)] = converter(thing[k]);\n });\n return newObj;\n }\n return thing;\n }\n return converter;\n}\n\nfunction delay(ms: number) {\n return new Promise((resolve) => setTimeout(resolve, ms));\n}\n\nexport default {\n getParam,\n camelizeStr,\n snakifyStr,\n delay,\n camelizeKeys: convertCase(camelizeStr),\n snakifyKeys: convertCase(snakifyStr),\n};\n","import axios, { AxiosResponse } from 'axios';\nimport utils, { AnyJson } from '@/utils';\n\nconst API = '/api';\n\nexport const instance = axios.create({\n baseURL: API,\n headers: {\n 'Content-Type': 'application/json',\n 'Utm-Source': 'plt',\n },\n xsrfCookieName: 'csrftoken',\n xsrfHeaderName: 'X-CSRFToken',\n withCredentials: true,\n});\n\n// Add a response interceptor\n/* eslint-disable @typescript-eslint/no-explicit-any */\ninstance.interceptors.response.use(\n (response: any) => {\n // Any status code that lie within the range of 2xx cause this function to trigger\n // Do something with response data\n return utils.camelizeKeys(response.data) as unknown as AxiosResponse;\n },\n (error: Error) => {\n // Any status codes that falls outside the range of 2xx cause this function to trigger\n // Do something with response error\n return Promise.reject(error);\n },\n);\n\nexport default function (method: string, url: string, data: AnyJson = null) {\n const requestType = method.toLowerCase();\n const normalizedParams = utils.snakifyKeys(data);\n\n switch (requestType) {\n case 'get':\n return instance.get(url, { params: normalizedParams }) as Promise;\n case 'put':\n return instance.put(url, normalizedParams) as Promise;\n case 'delete':\n return instance.delete(url, { params: normalizedParams }) as Promise;\n case 'post':\n return instance.post(url, normalizedParams) as Promise;\n default:\n throw new Error(\n `Unknown request method of ${method}! You might have a typo.`,\n );\n }\n}\n","import api from './api';\nimport { MediaType } from '@/types/enums';\n\nif (process.env.NODE_ENV === 'development') {\n // eslint-disable-next-line global-require\n const mock = require('./mock').default;\n mock();\n}\n\ninterface HomeResponse {\n entryVidId: string;\n videoPauseImg: string;\n videoEndImg: string;\n topCarouselInfo: {\n img: string;\n }[];\n bottomCarouselInfo: {\n img: string;\n url: string;\n }[];\n tabs: {\n id: number;\n topic: string;\n subtopic: string;\n img: string;\n }[];\n error?: string;\n}\ninterface TabResponse {\n [id: number]: {\n media: {\n title: string;\n author: string;\n date: string;\n thumbnail: string | null;\n info: string;\n isPinned: boolean;\n type: MediaType;\n }[];\n };\n error?: string;\n}\nexport default {\n getHome: () => api('get', '/home'),\n getTab: (params: { id: number }) => api('get', '/tab', params),\n};\n","import { defineStore } from 'pinia';\ninterface State {\n error: string;\n}\n\nconst state = (): State => ({\n error: '',\n});\n\nconst useError = defineStore('error', {\n state,\n actions: {\n updateError(error: string) {\n this.error = error;\n },\n },\n});\n\nexport default useError;\n","import { defineStore } from 'pinia';\nimport services from '@/services';\nimport useError from './error';\n\ninterface State {\n entryVidId: string;\n videoPauseImg: string;\n videoEndImg: string;\n topCarouselInfo: {\n img: string;\n }[];\n bottomCarouselInfo: {\n img: string;\n url: string;\n }[];\n tabs: {\n id: number;\n topic: string;\n subtopic: string;\n img: string;\n }[];\n isInit: boolean;\n}\n\nconst state = (): State => ({\n entryVidId: '',\n videoPauseImg: '',\n videoEndImg: '',\n topCarouselInfo: [],\n bottomCarouselInfo: [],\n tabs: [],\n isInit: false,\n});\n\nconst useHome = defineStore('home', {\n state,\n actions: {\n async getHome() {\n try {\n const res = await services.getHome();\n if (res.error) {\n const { updateError } = useError();\n updateError(res.error);\n return;\n }\n if (res) {\n this.$patch({ ...res });\n this.updateIsInit(true);\n }\n } catch (err) {\n const { updateError } = useError();\n updateError('ERROR__SERVER_ERROR');\n }\n },\n updateIsInit(state: boolean) {\n this.isInit = state;\n },\n },\n});\n\nexport default useHome;\n","import { defineStore } from 'pinia';\ninterface State {\n player: null | any;\n isPlaying: boolean;\n}\n\nconst state = (): State => ({\n player: null,\n isPlaying: false,\n});\n\nconst useOpening = defineStore('play', {\n state,\n actions: {\n updatePlayer(player: any) {\n this.player = player;\n },\n updateIsPlaying(state: boolean) {\n this.isPlaying = state;\n },\n },\n});\n\nexport default useOpening;\n","import { defineStore } from 'pinia';\ninterface State {\n isShareVisible: boolean;\n isCopied: boolean;\n}\n\nconst state = (): State => ({\n isShareVisible: false,\n isCopied: false,\n});\n\nconst useShare = defineStore('share', {\n state,\n actions: {\n updateIsShareVisible(open: boolean): void {\n this.isShareVisible = open;\n },\n updateIsCopied(open: boolean): void {\n this.isCopied = open;\n },\n },\n});\n\nexport default useShare;\n","import { defineStore } from 'pinia';\nimport services from '@/services';\nimport { MediaType } from '@/types/enums';\nimport useError from './error';\n\ninterface State {\n media: {\n title: string;\n author: string;\n month: string;\n day: string;\n thumbnail: string | null;\n info: string;\n isPinned: boolean;\n type: MediaType;\n }[];\n currentTab: number;\n error: string;\n}\n\nconst state = (): State => ({\n media: [],\n currentTab: 0,\n error: '',\n});\n\nconst useTab = defineStore('tab', {\n state,\n actions: {\n async getTab(id: number) {\n try {\n this.updateMedia([]);\n const res = await services.getTab({ id });\n if (res.error) {\n const { updateError } = useError();\n updateError(res.error);\n setTimeout(() => {\n location.reload();\n }, 1000);\n return;\n }\n if (res) {\n this.$patch({ ...res });\n }\n } catch (err) {\n const { updateError } = useError();\n updateError('ERROR__SERVER_ERROR');\n }\n },\n updateMedia(list: State['media']) {\n this.media = list;\n },\n updateCurrentTab(id: number) {\n this.currentTab = id;\n },\n },\n});\n\nexport default useTab;\n","import { defineStore } from 'pinia';\n\ninterface State {\n isEnlarged: boolean;\n thumbnail: string;\n youtube: string;\n youtubeCover: string;\n player: null | any;\n playerState: string;\n}\n\nconst state = (): State => ({\n isEnlarged: false,\n thumbnail: '',\n youtube: '',\n youtubeCover: '',\n player: null,\n playerState: '',\n});\n\nconst useMedia = defineStore('media', {\n state,\n actions: {\n updateIsEnlarged(state: boolean) {\n this.isEnlarged = state;\n },\n updateThumbnail(img: string) {\n this.thumbnail = img;\n },\n updateYoutube(id: string) {\n this.youtube = id;\n },\n updateYoutubeCover(img: string) {\n this.youtubeCover = img;\n },\n updatePlayer(player: any) {\n this.player = player;\n },\n updatePlayerState(state: string) {\n this.playerState = state;\n },\n closeMedia() {\n this.updateIsEnlarged(false);\n if (this.thumbnail) {\n this.updateThumbnail('');\n }\n if (this.youtube) {\n this.updateYoutube('');\n this.updateYoutubeCover('');\n this.player.destroy();\n this.updatePlayer(null);\n }\n },\n },\n});\n\nexport default useMedia;\n","\n\n","import { render } from \"./CloseBtn.vue?vue&type=template&id=16044082&scoped=true\"\nconst script = {}\n\nimport \"./CloseBtn.vue?vue&type=style&index=0&id=16044082&lang=scss&scoped=true\"\n\nimport exportComponent from \"/builds/webtw/creatorlab.moba.garena.all/frontend/node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-16044082\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, createVNode as _createVNode, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-31ceac30\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"opening\" }, null, -1))\n\nimport { onMounted, nextTick } from 'vue';\nimport { useOpening } from '@/store';\nimport { storeToRefs } from 'pinia';\nimport CloseBtn from '../base/CloseBtn.vue';\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'OpeningVideo',\n props: {\n youtube: null\n },\n setup(__props: any) {\n\nconst props = __props as {\n youtube: string;\n}\n\nconst { player, isPlaying } = storeToRefs(useOpening());\nconst { updateIsPlaying } = useOpening();\n\nconst checkIsFirstPlay = !window.localStorage.getItem('isFirstPlay');\nfunction onPlayerReady(event) {\n if (checkIsFirstPlay) {\n event.target.mute();\n }\n event.target.playVideo();\n}\nfunction onPlayerStateChange(event) {\n if (isPlaying.value) {\n document.body.style.overflow = 'hidden';\n }\n if (event.data == window.YT.PlayerState.ENDED) {\n if (!window.localStorage.getItem('isFirstPlay')) {\n window.localStorage.setItem('isFirstPlay', 'false');\n }\n updateIsPlaying(false);\n document.body.style.overflow = '';\n }\n}\nfunction onYouTubeIframeAPIReady() {\n player.value = new window.YT.Player('opening', {\n height: '100%',\n width: '100%',\n videoId: props.youtube,\n playerVars: {\n fs: 0,\n controls: 0,\n enablejsapi: 1,\n origin: window.location.origin,\n // eslint-disable-next-line @typescript-eslint/camelcase\n iv_load_policy: 3,\n modestbranding: 1,\n playsinline: 1,\n autoplay: 1,\n rel: 0,\n },\n events: {\n onReady: onPlayerReady,\n onStateChange: onPlayerStateChange,\n },\n });\n}\nfunction closeOpening() {\n updateIsPlaying(false);\n window.localStorage.setItem('isFirstPlay', 'false');\n}\nonMounted(async () => {\n await nextTick();\n if (window.YT) onYouTubeIframeAPIReady();\n window.onYouTubePlayerAPIReady = onYouTubeIframeAPIReady;\n});\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass(['youtube', { ended: !_unref(isPlaying) }])\n }, [\n _hoisted_1,\n _createVNode(CloseBtn, { onClick: closeOpening })\n ], 2))\n}\n}\n\n})","import script from \"./OpeningVideo.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./OpeningVideo.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./OpeningVideo.vue?vue&type=style&index=0&id=31ceac30&lang=scss&scoped=true\"\n\nimport exportComponent from \"/builds/webtw/creatorlab.moba.garena.all/frontend/node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-31ceac30\"]])\n\nexport default __exports__","enum Tab {\n Home = 0,\n}\nenum MediaType {\n Video = 0,\n Image = 1,\n}\nexport { Tab, MediaType };\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-04e6892e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n class: \"button\",\n type: \"button\"\n}\nconst _hoisted_2 = [\"src\"]\nconst _hoisted_3 = { class: \"subtopic\" }\n\nimport { Tab } from '@/types/enums';\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'NavbarBtn',\n props: {\n id: null,\n topic: null,\n subtopic: null,\n img: null\n },\n setup(__props: any) {\n\n\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"button\", _hoisted_1, [\n (__props.id !== _unref(Tab).Home)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _createElementVNode(\"img\", {\n class: \"icon\",\n src: __props.img,\n alt: \"\"\n }, null, 8, _hoisted_2),\n _createTextVNode(\" \" + _toDisplayString(__props.topic) + \" \", 1),\n _createElementVNode(\"span\", _hoisted_3, _toDisplayString(__props.subtopic), 1)\n ], 64))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./NavbarBtn.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./NavbarBtn.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./NavbarBtn.vue?vue&type=style&index=0&id=04e6892e&lang=scss&scoped=true\"\n\nimport exportComponent from \"/builds/webtw/creatorlab.moba.garena.all/frontend/node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-04e6892e\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-5c2bf724\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"aside\" }\nconst _hoisted_2 = { class: \"menu\" }\nconst _hoisted_3 = [\"onClick\"]\n\nimport { storeToRefs } from 'pinia';\nimport { useHome, useTab, useMedia } from '@/store';\nimport { Tab } from '@/types/enums';\nimport NavbarBtn from './NavbarBtn.vue';\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Navbar',\n setup(__props) {\n\nconst { tabs } = storeToRefs(useHome());\nconst { currentTab, error } = storeToRefs(useTab());\nconst { getTab, updateCurrentTab } = useTab();\nconst { closeMedia } = useMedia();\nconst switchTab = async (id: number, name: string) => {\n if (id === currentTab.value) return;\n /* eslint-disable @typescript-eslint/camelcase */\n closeMedia();\n if (id === Tab.Home) {\n updateCurrentTab(id);\n window.gtag('event', 'click_tab', {\n tab_name: name,\n });\n } else {\n await getTab(id);\n if (!error.value) {\n updateCurrentTab(id);\n window.gtag('event', 'click_tab', {\n tab_name: name,\n });\n }\n }\n};\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"aside\", _hoisted_1, [\n _createVNode(NavbarBtn, {\n class: \"home\",\n id: 0,\n topic: '',\n subtopic: '',\n img: '',\n onClick: _cache[0] || (_cache[0] = ($event: any) => (switchTab(_unref(Tab).Home, 'home')))\n }),\n _createElementVNode(\"ul\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(tabs), (tab, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: index,\n class: _normalizeClass(['item', { 'item--active': tab.id === _unref(currentTab) }]),\n onClick: ($event: any) => (switchTab(tab.id, tab.topic))\n }, [\n _createVNode(NavbarBtn, {\n id: tab.id,\n topic: tab.topic,\n subtopic: tab.subtopic,\n img: tab.img\n }, null, 8, [\"id\", \"topic\", \"subtopic\", \"img\"])\n ], 10, _hoisted_3))\n }), 128))\n ])\n ]))\n}\n}\n\n})","import script from \"./Navbar.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./Navbar.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./Navbar.vue?vue&type=style&index=0&id=5c2bf724&lang=scss&scoped=true\"\n\nimport exportComponent from \"/builds/webtw/creatorlab.moba.garena.all/frontend/node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-5c2bf724\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, createCommentVNode as _createCommentVNode, renderSlot as _renderSlot, unref as _unref, withCtx as _withCtx, createBlock as _createBlock, createVNode as _createVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-0afce04b\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = [\"onMouseover\", \"onTouchstart\", \"onClick\"]\nconst _hoisted_2 = [\"src\"]\nconst _hoisted_3 = [\"href\"]\nconst _hoisted_4 = [\"src\"]\nconst _hoisted_5 = [\"src\"]\nconst _hoisted_6 = [\"src\"]\nconst _hoisted_7 = {\n key: 0,\n class: \"swiper-pagination\"\n}\n\nimport { Swiper, SwiperSlide } from 'swiper/vue/swiper-vue.js';\nimport { Autoplay, Pagination } from 'swiper';\nimport { AutoplayOptions } from 'swiper/types/modules/autoplay';\nimport 'swiper/swiper-bundle.css';\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Swiper',\n props: {\n list: null,\n type: null,\n slidesPerView: null,\n spaceBetween: null,\n autoplay: null,\n pagination: null,\n grabCursor: { type: Boolean },\n loop: { type: Boolean }\n },\n emits: ['updateYoutube', 'playVideo'],\n setup(__props: any) {\n\n\n\nconst modules = [Autoplay, Pagination];\nconst checkIsUrl = (url: any) => {\n if (/^https?:\\/\\//.test(url)) {\n return true;\n }\n return false;\n};\nconst checkUrlisYoutube = (url: any) => {\n if (url.includes('youtu')) {\n return true;\n }\n return false;\n};\nconst getVideoId = (url: any) => {\n let arr;\n if (/^https:\\/\\/youtu.be\\//.test(url)) {\n arr = url.split('/');\n } else {\n arr = url.split('=');\n }\n const id = arr[arr.length - 1];\n return id;\n};\nconst rotate90Swiper = function (swiper: any, optIsRotate90: boolean) {\n let isRoate90 = !!optIsRotate90;\n swiper.___touches = {};\n swiper.___touches.currentX = swiper.touches.currentX;\n Object.defineProperty(swiper.touches, 'currentX', {\n set: function (v) {\n if (!isRoate90) {\n swiper.___touches.currentX = v;\n } else {\n swiper.___touches.currentY = v;\n }\n },\n get: function () {\n return swiper.___touches.currentX;\n },\n });\n swiper.___touches.currentY = swiper.touches.currentY;\n Object.defineProperty(swiper.touches, 'currentY', {\n set: function (v) {\n if (!isRoate90) {\n swiper.___touches.currentY = v;\n } else {\n swiper.___touches.currentX = v;\n }\n },\n get: function () {\n return swiper.___touches.currentY;\n },\n });\n return function (isRotate90: boolean) {\n isRoate90 = isRotate90;\n };\n};\nlet setRotate90: (isRotate90: boolean) => void;\nconst checkOrientation = () => {\n if (window.matchMedia('(orientation: portrait)').matches) {\n setRotate90(true);\n } else {\n setRotate90(false);\n }\n};\nfunction onSwiper(swiper: any) {\n setRotate90 = rotate90Swiper(swiper, false);\n checkOrientation();\n window.addEventListener('resize', checkOrientation);\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createVNode(_unref(Swiper), {\n slidesPerView: __props.slidesPerView,\n spaceBetween: __props.spaceBetween,\n autoplay: __props.autoplay,\n pagination: __props.pagination,\n grabCursor: __props.grabCursor,\n loop: __props.loop,\n modules: modules,\n onSwiper: onSwiper\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(__props.list, (item, index) => {\n return (_openBlock(), _createBlock(_unref(SwiperSlide), { key: index }, {\n default: _withCtx(() => [\n (item.url)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n (checkUrlisYoutube(item.url))\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n type: \"button\",\n onMouseover: ($event: any) => (_ctx.$emit('updateYoutube', getVideoId(item.url))),\n onTouchstart: ($event: any) => (_ctx.$emit('updateYoutube', getVideoId(item.url))),\n onClick: ($event: any) => (_ctx.$emit('playVideo', getVideoId(item.url)))\n }, [\n _createElementVNode(\"img\", {\n class: _normalizeClass(__props.type),\n src: item.img,\n alt: \"\"\n }, null, 10, _hoisted_2)\n ], 40, _hoisted_1))\n : (checkIsUrl(item.url))\n ? (_openBlock(), _createElementBlock(\"a\", {\n key: 1,\n href: item.url,\n target: \"_blank\",\n rel: \"noopener noreferrer\"\n }, [\n _createElementVNode(\"img\", {\n class: _normalizeClass(__props.type),\n src: item.img,\n alt: \"\"\n }, null, 10, _hoisted_4)\n ], 8, _hoisted_3))\n : (_openBlock(), _createElementBlock(\"img\", {\n key: 2,\n class: _normalizeClass(__props.type),\n src: item.img,\n alt: \"\"\n }, null, 10, _hoisted_5))\n ], 64))\n : (_openBlock(), _createElementBlock(\"img\", {\n key: 1,\n class: _normalizeClass(__props.type),\n src: item.img,\n alt: \"\"\n }, null, 10, _hoisted_6)),\n (__props.type === 'banner' && index === 0)\n ? _renderSlot(_ctx.$slots, \"play\", { key: 2 })\n : _createCommentVNode(\"\", true)\n ]),\n _: 2\n }, 1024))\n }), 128))\n ]),\n _: 3\n }, 8, [\"slidesPerView\", \"spaceBetween\", \"autoplay\", \"pagination\", \"grabCursor\", \"loop\"]),\n (__props.pagination)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_7))\n : _createCommentVNode(\"\", true)\n ], 64))\n}\n}\n\n})","import script from \"./Swiper.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./Swiper.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./Swiper.vue?vue&type=style&index=0&id=0afce04b&lang=scss&scoped=true\"\n\nimport exportComponent from \"/builds/webtw/creatorlab.moba.garena.all/frontend/node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-0afce04b\"]])\n\nexport default __exports__","\n\n","import { render } from \"./BannerBtn.vue?vue&type=template&id=0d84573b&scoped=true\"\nconst script = {}\n\nimport \"./BannerBtn.vue?vue&type=style&index=0&id=0d84573b&lang=scss&scoped=true\"\n\nimport exportComponent from \"/builds/webtw/creatorlab.moba.garena.all/frontend/node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-0d84573b\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-65b34080\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"banner\" }\n\nimport { storeToRefs } from 'pinia';\nimport { useHome, useShare } from '@/store';\nimport Swiper from '@/components/base/Swiper.vue';\nimport BannerBtn from './BannerBtn.vue';\nimport { useMedia } from '@/store';\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Banner',\n setup(__props) {\n\nconst { topCarouselInfo, entryVidId } = storeToRefs(useHome());\n\nconst { updateIsShareVisible } = useShare();\n\nconst { player } = storeToRefs(useMedia());\nconst {\n updateIsEnlarged,\n updateYoutube,\n updateYoutubeCover,\n updatePlayerState,\n} = useMedia();\nconst playVideo = () => {\n updateIsEnlarged(true);\n updateYoutubeCover(\n `https://img.youtube.com/vi/${entryVidId.value}/maxresdefault.jpg`,\n );\n try {\n player.value.playVideo();\n } catch (err) {\n updatePlayerState('cued');\n }\n};\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(Swiper, {\n list: _unref(topCarouselInfo),\n type: 'banner',\n grabCursor: true,\n autoplay: {\n disableOnInteraction: false,\n delay: 5000,\n },\n pagination: {\n el: '.swiper-pagination',\n clickable: true,\n },\n loop: true\n }, {\n play: _withCtx(() => [\n _createVNode(BannerBtn, {\n class: \"play\",\n onMouseover: _cache[0] || (_cache[0] = ($event: any) => (_unref(updateYoutube)(_unref(entryVidId)))),\n onTouchstart: _cache[1] || (_cache[1] = ($event: any) => (_unref(updateYoutube)(_unref(entryVidId)))),\n onClick: playVideo\n })\n ]),\n _: 1\n }, 8, [\"list\", \"pagination\"]),\n _createVNode(BannerBtn, {\n class: \"share\",\n onClick: _cache[2] || (_cache[2] = ($event: any) => (_unref(updateIsShareVisible)(true)))\n })\n ]))\n}\n}\n\n})","import script from \"./Banner.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./Banner.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./Banner.vue?vue&type=style&index=0&id=65b34080&lang=scss&scoped=true\"\n\nimport exportComponent from \"/builds/webtw/creatorlab.moba.garena.all/frontend/node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-65b34080\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-3da4e430\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"bottom-carousel\" }\n\nimport { storeToRefs } from 'pinia';\nimport { useHome, useMedia } from '@/store';\nimport Swiper from '@/components/base/Swiper.vue';\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BottomCarousel',\n setup(__props) {\n\nconst { bottomCarouselInfo } = storeToRefs(useHome());\nconst { player } = storeToRefs(useMedia());\nconst {\n updateIsEnlarged,\n updateYoutube,\n updateYoutubeCover,\n updatePlayerState,\n} = useMedia();\nconst playVideo = (videoId: string) => {\n updateIsEnlarged(true);\n updateYoutubeCover(`https://img.youtube.com/vi/${videoId}/maxresdefault.jpg`);\n try {\n player.value.playVideo();\n } catch (err) {\n updatePlayerState('cued');\n }\n};\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(Swiper, {\n list: _unref(bottomCarouselInfo),\n type: 'images',\n slidesPerView: 'auto',\n spaceBetween: 20,\n grabCursor: true,\n onUpdateYoutube: _unref(updateYoutube),\n onPlayVideo: playVideo\n }, null, 8, [\"list\", \"onUpdateYoutube\"])\n ]))\n}\n}\n\n})","import script from \"./BottomCarousel.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./BottomCarousel.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./BottomCarousel.vue?vue&type=style&index=0&id=3da4e430&lang=scss&scoped=true\"\n\nimport exportComponent from \"/builds/webtw/creatorlab.moba.garena.all/frontend/node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-3da4e430\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-3d420976\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = [\"src\", \"alt\", \"onMouseover\", \"onTouchstart\"]\nconst _hoisted_2 = [\"src\", \"alt\", \"onClick\"]\nconst _hoisted_3 = { class: \"info\" }\nconst _hoisted_4 = { class: \"title\" }\nconst _hoisted_5 = { class: \"date\" }\nconst _hoisted_6 = { class: \"author\" }\n\nimport { storeToRefs } from 'pinia';\nimport { useTab, useMedia } from '@/store';\nimport { MediaType } from '@/types/enums';\nimport { useI18n } from 'vue-i18n';\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'VideosItem',\n setup(__props) {\n\nconst { media } = storeToRefs(useTab());\nconst { player } = storeToRefs(useMedia());\nconst {\n updateIsEnlarged,\n updateThumbnail,\n updateYoutube,\n updateYoutubeCover,\n updatePlayerState,\n closeMedia,\n} = useMedia();\nconst enlargeImg = (img: string, name: string) => {\n // ensure clear youtube video data\n closeMedia();\n updateIsEnlarged(true);\n updateThumbnail(img);\n /* eslint-disable @typescript-eslint/camelcase */\n window.gtag('event', 'click_img', {\n img_name: name,\n });\n};\nconst playVideo = (event: Event) => {\n updateIsEnlarged(true);\n updateYoutubeCover(event.target?.src);\n try {\n player.value.playVideo();\n } catch (err) {\n updatePlayerState('cued');\n }\n};\nconst { t } = useI18n();\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(media), (item, index) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n key: index,\n class: _normalizeClass(['video', { 'video--pinned': item.isPinned }])\n }, [\n (item.type === _unref(MediaType).Video)\n ? (_openBlock(), _createElementBlock(\"img\", {\n key: 0,\n class: \"thumbnail\",\n src: \n item.thumbnail ||\n `https://img.youtube.com/vi/${item.info}/sddefault.jpg`\n ,\n alt: item.title,\n draggable: \"false\",\n onMouseover: ($event: any) => (_unref(updateYoutube)(item.info)),\n onTouchstart: ($event: any) => (_unref(updateYoutube)(item.info)),\n onClick: playVideo\n }, null, 40, _hoisted_1))\n : _createCommentVNode(\"\", true),\n (item.type === _unref(MediaType).Image)\n ? (_openBlock(), _createElementBlock(\"img\", {\n key: 1,\n class: \"thumbnail\",\n src: item.thumbnail || item.info,\n alt: item.title,\n draggable: \"false\",\n onClick: ($event: any) => (enlargeImg(item.info || item.thumbnail || '', item.title))\n }, null, 8, _hoisted_2))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, _toDisplayString(item.title), 1),\n _createElementVNode(\"time\", _hoisted_5, _toDisplayString(_unref(t)('ITEM_DATE', { mm: item.month, dd: item.day })), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_6, _toDisplayString(item.author), 1)\n ], 2))\n }), 128))\n}\n}\n\n})","import script from \"./VideosItem.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./VideosItem.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./VideosItem.vue?vue&type=style&index=0&id=3d420976&lang=scss&scoped=true\"\n\nimport exportComponent from \"/builds/webtw/creatorlab.moba.garena.all/frontend/node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-3d420976\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nimport { storeToRefs } from 'pinia';\nimport { useMedia } from '@/store';\nimport VideosItem from './VideosItem.vue';\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Videos',\n setup(__props) {\n\nconst { isEnlarged } = storeToRefs(useMedia());\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"section\", {\n class: _normalizeClass(['videos', { 'not-scroll': _unref(isEnlarged) }])\n }, [\n _createVNode(VideosItem)\n ], 2))\n}\n}\n\n})","import script from \"./Videos.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./Videos.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./Videos.vue?vue&type=style&index=0&id=37f6005c&lang=scss&scoped=true\"\n\nimport exportComponent from \"/builds/webtw/creatorlab.moba.garena.all/frontend/node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-37f6005c\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, Transition as _Transition, withCtx as _withCtx, createVNode as _createVNode, normalizeClass as _normalizeClass, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-6bcf1124\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n key: 0,\n class: \"modal\"\n}\nconst _hoisted_2 = { class: \"title\" }\nconst _hoisted_3 = { class: \"list\" }\nconst _hoisted_4 = [\"href\"]\nconst _hoisted_5 = [\"href\"]\nconst _hoisted_6 = [\"href\"]\nconst _hoisted_7 = [\"href\"]\nconst _hoisted_8 = [\"data-clipboard-text\"]\nconst _hoisted_9 = {\n key: 0,\n class: \"note\"\n}\n\nimport { ref, onUpdated } from 'vue';\nimport { storeToRefs } from 'pinia';\nimport { useShare } from '@/store';\nimport { useI18n } from 'vue-i18n';\nimport ClipboardJS from 'clipboard';\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Share',\n setup(__props) {\n\nconst { isShareVisible, isCopied } = storeToRefs(useShare());\nconst { updateIsShareVisible, updateIsCopied } = useShare();\nconst lang: string = document.documentElement.lang;\nconst apps: { [key: string]: string[] } = {\n tw: ['fb', 'line', 'twitter'],\n id: ['fb', 'whatsapp'],\n th: ['fb', 'line', 'twitter'],\n vn: ['fb'],\n};\nconst link = encodeURI(window.location.origin);\nconst share = async (method: string, event: Event) => {\n if (navigator && navigator.share) {\n event.preventDefault();\n await navigator.share({\n url: link,\n });\n window.gtag('event', 'share', {\n method: 'mobile',\n });\n } else {\n window.gtag('event', 'share', {\n method,\n });\n }\n};\nconst copyUrl = () => {\n const clipboard = new ClipboardJS('.copy');\n clipboard.on('success', () => {\n updateIsCopied(true);\n setTimeout(() => {\n updateIsCopied(false);\n }, 3000);\n window.gtag('event', 'share', {\n method: 'copy',\n });\n });\n};\nconst { t } = useI18n();\nconst el = ref(null);\nonUpdated(() => {\n el.value = document.querySelector('#J-sitebar');\n});\n\nreturn (_ctx: any,_cache: any) => {\n return (_unref(isShareVisible))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n class: _normalizeClass(['content', { hasTopbar: el.value }])\n }, [\n _createElementVNode(\"p\", _hoisted_2, _toDisplayString(_unref(t)('SHARE_TITLE')), 1),\n _createElementVNode(\"div\", _hoisted_3, [\n (apps[_unref(lang)].includes('fb'))\n ? (_openBlock(), _createElementBlock(\"a\", {\n key: 0,\n class: \"share share--fb\",\n href: `https://www.facebook.com/sharer/sharer.php?u=${_unref(link)}`,\n target: \"_blank\",\n rel: \"noopener noreferrer\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (share('Facebook', $event)))\n }, _toDisplayString(_unref(t)('SHARE_FB')), 9, _hoisted_4))\n : _createCommentVNode(\"\", true),\n (apps[_unref(lang)].includes('whatsapp'))\n ? (_openBlock(), _createElementBlock(\"a\", {\n key: 1,\n class: \"share share--whatsapp\",\n href: `https://wa.me/?text=${_unref(link)}`,\n \"data-action\": \"share/whatsapp/share\",\n target: \"_blank\",\n onClick: _cache[1] || (_cache[1] = ($event: any) => (share('Whatsapp', $event)))\n }, _toDisplayString(_unref(t)('SHARE_WHATSAPP')), 9, _hoisted_5))\n : _createCommentVNode(\"\", true),\n (apps[_unref(lang)].includes('line'))\n ? (_openBlock(), _createElementBlock(\"a\", {\n key: 2,\n class: \"share share--line\",\n href: `https://line.me/R/msg/text/?${_unref(link)}`,\n target: \"_blank\",\n rel: \"noopener noreferrer\",\n onClick: _cache[2] || (_cache[2] = ($event: any) => (share('Line', $event)))\n }, _toDisplayString(_unref(t)('SHARE_LINE')), 9, _hoisted_6))\n : _createCommentVNode(\"\", true),\n (apps[_unref(lang)].includes('twitter'))\n ? (_openBlock(), _createElementBlock(\"a\", {\n key: 3,\n class: \"share share--twitter\",\n href: `https://twitter.com/intent/tweet?url=${_unref(link)}`,\n target: \"_blank\",\n rel: \"noopener noreferrer\",\n onClick: _cache[3] || (_cache[3] = ($event: any) => (share('Twitter', $event)))\n }, _toDisplayString(_unref(t)('SHARE_TWITTER')), 9, _hoisted_7))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"button\", {\n class: \"close\",\n type: \"button\",\n onClick: _cache[4] || (_cache[4] = ($event: any) => (_unref(updateIsShareVisible)(false)))\n }),\n _createElementVNode(\"button\", {\n class: \"copy\",\n type: \"button\",\n \"data-clipboard-text\": _unref(link),\n onClick: copyUrl\n }, null, 8, _hoisted_8),\n _createVNode(_Transition, { name: \"fade\" }, {\n default: _withCtx(() => [\n (_unref(isCopied))\n ? (_openBlock(), _createElementBlock(\"p\", _hoisted_9, _toDisplayString(_unref(t)('SHARE_COPIED')), 1))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n })\n ], 2)\n ]))\n : _createCommentVNode(\"\", true)\n}\n}\n\n})","import script from \"./Share.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./Share.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./Share.vue?vue&type=style&index=0&id=6bcf1124&lang=scss&scoped=true\"\n\nimport exportComponent from \"/builds/webtw/creatorlab.moba.garena.all/frontend/node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-6bcf1124\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, unref as _unref, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createBlock as _createBlock, createElementVNode as _createElementVNode } from \"vue\"\n\nimport Navbar from '@/components/aside/Navbar.vue';\nimport Banner from '@/components/main/Banner.vue';\nimport BottomCarousel from '@/components/main/BottomCarousel.vue';\nimport Videos from '@/components/main/Videos.vue';\nimport Share from '@/components/modal/Share.vue';\nimport { storeToRefs } from 'pinia';\nimport { useTab } from '@/store';\nimport { Tab } from '@/types/enums';\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Home',\n setup(__props) {\n\nconst { currentTab } = storeToRefs(useTab());\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createVNode(Navbar),\n _createElementVNode(\"main\", null, [\n (_unref(currentTab) === _unref(Tab).Home)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _createVNode(Banner),\n _createVNode(BottomCarousel),\n _createVNode(Share)\n ], 64))\n : (_openBlock(), _createBlock(Videos, { key: 1 }))\n ])\n ], 64))\n}\n}\n\n})","import script from \"./Home.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Home.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Home.vue?vue&type=style&index=0&id=47313042&lang=scss&scoped=true\"\n\nimport exportComponent from \"/builds/webtw/creatorlab.moba.garena.all/frontend/node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-47313042\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, Teleport as _Teleport, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-8ccffa6e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n key: 0,\n class: \"modal\"\n}\nconst _hoisted_2 = { class: \"content\" }\nconst _hoisted_3 = { class: \"title\" }\nconst _hoisted_4 = { class: \"desc\" }\n\nimport { watch } from 'vue';\nimport { storeToRefs } from 'pinia';\nimport { useError } from '@/store';\nimport { useI18n } from 'vue-i18n';\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Error',\n setup(__props) {\n\nconst { error } = storeToRefs(useError());\nconst { t } = useI18n();\nwatch(\n () => error.value,\n (newValue) => {\n if (newValue) {\n document.body.style.overflow = 'hidden';\n }\n },\n);\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createBlock(_Teleport, { to: \"body\" }, [\n (_unref(error))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, _toDisplayString(_unref(t)('ERROR__MODAL_TITLE')), 1),\n _createElementVNode(\"p\", _hoisted_4, _toDisplayString(_unref(t)(_unref(error))), 1)\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./Error.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./Error.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./Error.vue?vue&type=style&index=0&id=8ccffa6e&lang=scss&scoped=true\"\n\nimport exportComponent from \"/builds/webtw/creatorlab.moba.garena.all/frontend/node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-8ccffa6e\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, unref as _unref, vShow as _vShow, withDirectives as _withDirectives, normalizeClass as _normalizeClass, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-0ab24015\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"youtube\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"player\" }, null, -1))\nconst _hoisted_3 = [\"src\"]\nconst _hoisted_4 = { class: \"mask\" }\n\nimport { nextTick, onMounted } from 'vue';\nimport { storeToRefs } from 'pinia';\nimport { useHome, useMedia } from '@/store';\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Player',\n setup(__props) {\n\nconst { videoPauseImg, videoEndImg } = storeToRefs(useHome());\nconst { youtube, youtubeCover, player, playerState } = storeToRefs(useMedia());\nconst { updatePlayer, updatePlayerState, updateYoutubeCover } = useMedia();\n\nconst changeStateAndCover = (state: string, img: string) => {\n updatePlayerState(state);\n updateYoutubeCover(img);\n};\nconst play = () => {\n player.value.playVideo();\n};\n\nfunction onPlayerReady(event) {\n event.target.stopVideo();\n}\nfunction onPlayerStateChange(event: { [key: string]: any }) {\n if (event.data === -1) {\n changeStateAndCover('unstarted', youtubeCover.value);\n } else if (event.data === 5) {\n changeStateAndCover('cued', youtubeCover.value);\n } else if (event.data === window.YT.PlayerState.PAUSED) {\n changeStateAndCover('paused', videoPauseImg.value);\n } else if (event.data === window.YT.PlayerState.ENDED) {\n changeStateAndCover('ended', videoEndImg.value);\n } else {\n changeStateAndCover('', '');\n }\n}\nfunction onYouTubeIframeAPIReady() {\n window.YT.ready(function () {\n updatePlayer(\n new window.YT.Player('player', {\n height: '100%',\n width: '100%',\n videoId: youtube.value,\n playerVars: {\n fs: 1,\n controls: 1,\n enablejsapi: 1,\n origin: window.location.origin,\n // eslint-disable-next-line @typescript-eslint/camelcase\n iv_load_policy: 3,\n modestbranding: 1,\n playsinline: 1,\n autoplay: 1,\n rel: 0,\n },\n events: {\n onReady: onPlayerReady,\n onStateChange: onPlayerStateChange,\n },\n }),\n );\n });\n}\nonMounted(async () => {\n await nextTick();\n if (window.YT) onYouTubeIframeAPIReady();\n window.onYouTubePlayerAPIReady = onYouTubeIframeAPIReady;\n});\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _hoisted_2,\n (\n _unref(playerState) === 'unstarted' ||\n _unref(playerState) === 'cued' ||\n _unref(playerState) === 'paused' ||\n _unref(playerState) === 'ended'\n )\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _createElementVNode(\"img\", {\n class: \"cover\",\n src: _unref(youtubeCover),\n alt: \"\",\n draggable: \"false\"\n }, null, 8, _hoisted_3),\n _withDirectives(_createElementVNode(\"div\", _hoisted_4, null, 512), [\n [_vShow, _unref(playerState) === 'paused' || _unref(playerState) === 'ended']\n ]),\n _createElementVNode(\"button\", {\n class: _normalizeClass(['play', _unref(playerState)]),\n type: \"button\",\n onClick: play\n }, null, 2)\n ], 64))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./Player.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Player.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./Player.vue?vue&type=style&index=0&id=0ab24015&lang=scss&scoped=true\"\n\nimport exportComponent from \"/builds/webtw/creatorlab.moba.garena.all/frontend/node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-0ab24015\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createBlock as _createBlock, vShow as _vShow, withDirectives as _withDirectives, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-8f8d1e6e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"media\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"img\"\n}\nconst _hoisted_3 = [\"src\"]\n\nimport { storeToRefs } from 'pinia';\nimport { useMedia } from '@/store';\nimport Player from '../modal/Player.vue';\nimport CloseBtn from '../base/CloseBtn.vue';\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Media',\n setup(__props) {\n\nconst { isEnlarged, thumbnail, youtube } = storeToRefs(useMedia());\nconst { closeMedia } = useMedia();\n\nreturn (_ctx: any,_cache: any) => {\n return _withDirectives((_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(CloseBtn, { onClick: _unref(closeMedia) }, null, 8, [\"onClick\"]),\n (_unref(thumbnail))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _createElementVNode(\"img\", {\n src: _unref(thumbnail),\n alt: \"\",\n draggable: \"false\"\n }, null, 8, _hoisted_3)\n ]))\n : _createCommentVNode(\"\", true),\n (_unref(youtube))\n ? (_openBlock(), _createBlock(Player, { key: 1 }))\n : _createCommentVNode(\"\", true)\n ], 512)), [\n [_vShow, _unref(isEnlarged) && (_unref(thumbnail) || _unref(youtube))]\n ])\n}\n}\n\n})","import script from \"./Media.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./Media.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./Media.vue?vue&type=style&index=0&id=8f8d1e6e&lang=scss&scoped=true\"\n\nimport exportComponent from \"/builds/webtw/creatorlab.moba.garena.all/frontend/node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-8f8d1e6e\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, Transition as _Transition, withCtx as _withCtx, createVNode as _createVNode, createElementBlock as _createElementBlock, Fragment as _Fragment } from \"vue\"\n\nconst _hoisted_1 = {\n key: 0,\n class: \"main\"\n}\n\nimport { onMounted } from 'vue';\nimport { i18n } from '@/i18n';\nimport { storeToRefs } from 'pinia';\nimport OpeningVideo from '@/components/modal/OpeningVideo.vue';\nimport Home from '@/views/Home.vue';\nimport Error from '@/components/modal/Error.vue';\nimport Media from '@/components/modal/Media.vue';\nimport utils from '@/utils';\nimport { useHome, useOpening, useError } from '@/store';\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'App',\n setup(__props) {\n\nconst { loadLocale } = i18n();\nloadLocale(process.env.LOCALE || '');\n\nconst { error } = storeToRefs(useError());\nconst { isInit, entryVidId } = storeToRefs(useHome());\nconst { getHome } = useHome();\nconst { isPlaying } = storeToRefs(useOpening());\nconst { updateIsPlaying } = useOpening();\nconst checkIsFirstPlay = !window.localStorage.getItem('isFirstPlay');\nonMounted(async () => {\n await getHome();\n if (!error.value) {\n const tag = document.createElement('script');\n tag.src = 'https://www.youtube.com/iframe_api';\n const firstScriptTag = document.getElementsByTagName('script')[0];\n if (firstScriptTag && firstScriptTag.parentNode) {\n firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);\n }\n if (process.env.REGION === 'tw') {\n window.sitebar.create();\n }\n const accessToken =\n utils.getParam('gop_access_token') ||\n utils.getParam('access_token') ||\n localStorage.getItem('access_token');\n const isIngame =\n utils.getParam('partition') || localStorage.getItem('partition');\n if (\n !(accessToken && isIngame) &&\n (process.env.REGION === 'tw' || process.env.REGION === 'th')\n ) {\n try {\n window.sitefooter.create({\n game: 'aov',\n region: process.env.REGION,\n });\n } catch (err) {\n console.error(err);\n }\n }\n updateIsPlaying(checkIsFirstPlay);\n }\n});\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n (_unref(isInit))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_Transition, { name: \"fade\" }, {\n default: _withCtx(() => [\n (_unref(isPlaying))\n ? (_openBlock(), _createBlock(OpeningVideo, {\n key: 0,\n youtube: _unref(entryVidId)\n }, null, 8, [\"youtube\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }),\n _createVNode(Home),\n _createVNode(Media)\n ]))\n : _createCommentVNode(\"\", true),\n _createVNode(Error)\n ], 64))\n}\n}\n\n})","import script from \"./App.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./App.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./App.vue?vue&type=style&index=0&id=0b675882&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","export default () => {\n // force single page application\n function setRootFontSize() {\n // designSafeArea = 1334px * 660px (landscape NOT include browser nav 90px)\n const designSafeWidth = 1334;\n const designSafeHeight = 660;\n\n const vmax = Math.max(window.innerHeight, window.innerWidth);\n const vmin = Math.min(window.innerHeight, window.innerWidth);\n const vmaxToFontSize = (vmax / designSafeWidth) * 100;\n const vminToFontSize = (vmin / designSafeHeight) * 100;\n const fontSize = Math.min(vmaxToFontSize, vminToFontSize);\n\n // set root font size and html viewport\n const elem = document.documentElement;\n elem.style.fontSize = `${fontSize}px`;\n elem.style.height = `${vmin}px`;\n elem.style.width = `${vmax}px`;\n }\n\n let resetTimer: null | NodeJS.Timeout;\n function resetRootFontSize() {\n if (resetTimer) {\n clearTimeout(resetTimer);\n }\n resetTimer = setTimeout(() => {\n setRootFontSize();\n }, 200);\n }\n\n setRootFontSize();\n window.addEventListener('resize', resetRootFontSize);\n};\n","import { createApp } from 'vue';\nimport * as Sentry from '@sentry/browser';\nimport * as Integrations from '@sentry/integrations';\nimport App from '@/App.vue';\nimport i18n from '@/i18n';\nimport '@/preloader';\nimport '@/styles/global.scss';\nimport setupLayout from '@/layout';\nimport { createPinia } from 'pinia';\n\nsetupLayout();\nconst pinia = createPinia();\nconst app = createApp(App).use(i18n).use(pinia).mount('#app');\n\nif (process.env.NODE_ENV === 'production') {\n Sentry.init({\n dsn: 'https://7d5d8b87aa65457597e1013866821bee@sentry.twrevenue.garenanow.com/207',\n // eslint-disable-next-line @typescript-eslint/ban-ts-ignore\n // @ts-ignore\n integrations: [new Integrations.Vue({ app, attachProps: true })],\n });\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--1-1!./BottomCarousel.vue?vue&type=style&index=0&id=3da4e430&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Banner.vue?vue&type=style&index=0&id=65b34080&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Media.vue?vue&type=style&index=0&id=8f8d1e6e&lang=scss&scoped=true\"","/*\n * image preloader\n */\n\n/* eslint-disable global-require */\nconst images: string[] = [\n // `${process.env.CDN}/background.jpg`,\n];\n\nimages.forEach((image) => {\n new Image().src = image;\n});\n"],"sourceRoot":""}