{"version":3,"file":"static/js/408.d9202c6c.js","mappings":"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","sources":["webpack://learning-center/./src/components/group-card.vue?850d","webpack://learning-center/./src/components/group-card.vue","webpack://learning-center/./src/components/group-card.vue?0e71","webpack://learning-center/./src/components/video-card.vue?a1cc","webpack://learning-center/./src/components/video-card.vue","webpack://learning-center/./src/components/video-card.vue?02ce","webpack://learning-center/./src/components/list.vue?3945","webpack://learning-center/./src/components/list.vue","webpack://learning-center/./src/components/list.vue?682a","webpack://learning-center/./src/components/modules/view-mode.vue?be12","webpack://learning-center/./src/components/modules/view-mode.vue","webpack://learning-center/./src/components/modules/view-mode.vue?e642"],"sourcesContent":["import { toDisplayString as _toDisplayString, normalizeStyle as _normalizeStyle, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, normalizeClass as _normalizeClass, resolveDynamicComponent as _resolveDynamicComponent, resolveDirective as _resolveDirective, withCtx as _withCtx, createBlock as _createBlock, withDirectives as _withDirectives } from \"vue\";\nconst _hoisted_1 = {\n key: 1,\n class: \"label\"\n};\nconst _hoisted_2 = [\"src\"];\nconst _hoisted_3 = {\n class: \"rl-color-gray3\"\n};\nconst _hoisted_4 = {\n class: \"rl-text-body-1 rl-fontweight-medium\"\n};\nconst _hoisted_5 = {\n class: \"rl-text-body-4 rl-fontweight-lighter\"\n};\nconst _hoisted_6 = [\"xlink:href\"];\nconst _hoisted_7 = {\n class: \"title\"\n};\nconst _hoisted_8 = {\n key: 0,\n viewBox: \"0 0 34 34\"\n};\nconst _hoisted_9 = [\"xlink:href\"];\nexport function render(_ctx, _cache, $props, $setup, $data, $options) {\n const _directive_intersectionObserver = _resolveDirective(\"intersectionObserver\");\n return _withDirectives((_openBlock(), _createBlock(_resolveDynamicComponent($props.groupInfo.type === $setup.itemTypeEnum.LINK ? 'a' : 'router-link'), {\n href: $props.groupInfo.type === $setup.itemTypeEnum.LINK ? $props.groupInfo.link : undefined,\n to: $props.groupInfo.type === $setup.itemTypeEnum.GROUP ? ($props.langPath ? $props.langPath : '/') + $props.groupInfo.category.join('/').toLowerCase() + '/' + $props.groupInfo.urlName : null,\n style: _normalizeStyle({\n 'background-image': $props.groupInfo.thumbnail ? `url(${$props.groupInfo.thumbnail})` : 'none'\n }),\n class: _normalizeClass([{\n 'has-thumbnail': $props.groupInfo.thumbnail,\n 'has-externa-link': $setup.hasExternalLink\n }, \"group-card\"]),\n target: $setup.hasExternalLink ? '_blank' : '_self',\n rel: $setup.hasExternalLink ? 'noreferrer noopener' : null,\n onClick: _cache[0] || (_cache[0] = $event => $props.clickCardHandler($props.groupInfo, $props.position))\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", {\n class: _normalizeClass([\"content\", {\n 'instructor': $props.groupInfo.instructor\n }])\n }, [$props.groupInfo.label ? (_openBlock(), _createElementBlock(\"span\", {\n key: 0,\n class: \"label\",\n style: _normalizeStyle({\n backgroundColor: $props.groupInfo.label.color\n })\n }, _toDisplayString($props.groupInfo.label.name), 5)) : $props.groupInfo.isNew ? (_openBlock(), _createElementBlock(\"span\", _hoisted_1, _toDisplayString(_ctx.$t(\"COMMON.NEW\")), 1)) : _createCommentVNode(\"\", true), $props.groupInfo.instructor ? (_openBlock(), _createElementBlock(_Fragment, {\n key: 2\n }, [_createElementVNode(\"div\", null, [_createElementVNode(\"img\", {\n src: $setup.instructorsThumbnailUrl + $props.groupInfo.instructor.thumbnail\n }, null, 8, _hoisted_2)]), _createElementVNode(\"div\", _hoisted_3, [_createElementVNode(\"p\", _hoisted_4, _toDisplayString($props.groupInfo.instructor.name), 1), _createElementVNode(\"p\", _hoisted_5, _toDisplayString($props.groupInfo.instructor.title), 1), _createElementVNode(\"div\", null, [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList($props.groupInfo.instructor.software, software => {\n return _openBlock(), _createElementBlock(\"svg\", {\n key: software,\n viewBox: \"0 0 34 34\"\n }, [_createElementVNode(\"use\", {\n \"xlink:href\": $setup.iconIdTable[software]\n }, null, 8, _hoisted_6)]);\n }), 128))])])], 64)) : (_openBlock(), _createElementBlock(_Fragment, {\n key: 3\n }, [_createElementVNode(\"div\", _hoisted_7, _toDisplayString($props.groupInfo.title), 1), $setup.hasExternalLink ? (_openBlock(), _createElementBlock(\"svg\", _hoisted_8, [_createElementVNode(\"use\", {\n \"xlink:href\": $setup.isMagazine($props.groupInfo.link) ? '#Magazine' : '#link-out'\n }, null, 8, _hoisted_9)])) : _createCommentVNode(\"\", true)], 64))], 2)]),\n _: 1\n }, 8, [\"href\", \"to\", \"style\", \"class\", \"target\", \"rel\"])), [[_directive_intersectionObserver, () => $props.impressionHandler($props.groupInfo, $props.position)]]);\n}","import { itemTypeEnum } from \"@/enums/components/list\";\nimport { computed, toRefs } from '@vue/reactivity';\nexport default {\n name: \"groupCard\",\n props: {\n groupInfo: {\n type: Object,\n required: true\n },\n position: {\n type: Number,\n required: true\n },\n langPath: {\n type: String,\n required: true\n },\n impressionHandler: {\n type: Function,\n required: false,\n default() {\n return () => true;\n }\n },\n clickCardHandler: {\n type: Function,\n required: false,\n default() {\n return () => true;\n }\n }\n },\n setup(props) {\n const {\n groupInfo,\n langPath\n } = toRefs(props);\n const instructorsThumbnailUrl = process.env.VUE_APP_INSTRUCTORS_THUMBNAIL_URL;\n const iconIdTable = {\n \"iClone\": \"#ic7_none_border\",\n \"Character Creator\": \"#cc_none_border\",\n \"Cartoon Animator\": \"#cta_none_border\"\n };\n const hasExternalLink = computed(() => groupInfo.value.type === itemTypeEnum.LINK && groupInfo.value.link.includes('://') && !groupInfo.value.link.includes(window.location.hostname));\n const isMagazine = link => link.includes('magazine.reallusion.com');\n if (groupInfo.value.type === itemTypeEnum.LINK && !hasExternalLink.value) {\n groupInfo.value.link = (langPath.value + groupInfo.value.link).replace(/\\/{2,}/g, \"/\");\n }\n return {\n itemTypeEnum,\n instructorsThumbnailUrl,\n iconIdTable,\n hasExternalLink,\n isMagazine\n };\n }\n};","/* unplugin-vue-components disabled */import { render } from \"./group-card.vue?vue&type=template&id=e1a59c9c&scoped=true\"\nimport script from \"./group-card.vue?vue&type=script&lang=js\"\nexport * from \"./group-card.vue?vue&type=script&lang=js\"\n\nimport \"./group-card.vue?vue&type=style&index=0&id=e1a59c9c&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-e1a59c9c\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createCommentVNode as _createCommentVNode, normalizeStyle as _normalizeStyle, normalizeClass as _normalizeClass, withModifiers as _withModifiers, resolveComponent as _resolveComponent, withCtx as _withCtx, createBlock as _createBlock, createTextVNode as _createTextVNode, resolveDirective as _resolveDirective, withDirectives as _withDirectives, createVNode as _createVNode } from \"vue\";\nconst _hoisted_1 = {\n key: 0,\n class: \"tooltip\"\n};\nconst _hoisted_2 = {\n key: 0,\n class: \"outline-content\"\n};\nconst _hoisted_3 = {\n key: 1,\n class: \"outline-content\"\n};\nconst _hoisted_4 = [\"src\"];\nconst _hoisted_5 = {\n class: \"video-length\"\n};\nconst _hoisted_6 = {\n class: \"text-area\"\n};\nconst _hoisted_7 = {\n class: \"top-title-container hidden-720\"\n};\nconst _hoisted_8 = {\n class: \"feature-info rl-uppercase\"\n};\nconst _hoisted_9 = {\n style: {\n \"margin-right\": \"calc(0.1vw + 6px)\"\n }\n};\nconst _hoisted_10 = {\n style: {\n \"display\": \"inline-block\"\n }\n};\nconst _hoisted_11 = {\n key: 0,\n class: \"feature-info loading-animation\"\n};\nconst _hoisted_12 = {\n key: 0,\n \"xlink:href\": \"#bookmark_1_\"\n};\nconst _hoisted_13 = {\n key: 1,\n \"xlink:href\": \"#bookmark-active\"\n};\nconst _hoisted_14 = {\n class: \"delete\"\n};\nconst _hoisted_15 = {\n class: \"bottom-title-container\"\n};\nconst _hoisted_16 = {\n class: \"hidden-720 ellipsis\"\n};\nconst _hoisted_17 = {\n key: 0\n};\nconst _hoisted_18 = {\n key: 0,\n class: \"product-version no-version\",\n style: {\n \"visibility\": \"hidden\"\n }\n};\nconst _hoisted_19 = {\n style: {\n \"display\": \"flex\",\n \"justify-content\": \"space-between\"\n }\n};\nconst _hoisted_20 = {\n key: 1,\n class: \"label\"\n};\nconst _hoisted_21 = {\n class: \"visible-720\"\n};\nconst _hoisted_22 = {\n key: 0,\n \"xlink:href\": \"#bookmark_1_\"\n};\nconst _hoisted_23 = {\n key: 1,\n \"xlink:href\": \"#bookmark-active\"\n};\nconst _hoisted_24 = {\n class: \"delete\"\n};\nconst _hoisted_25 = {\n class: \"group-description body-2 rl-fontweight-medium\"\n};\nconst _hoisted_26 = [\"innerHTML\"];\nconst _hoisted_27 = {\n key: 1,\n class: \"product-version\",\n style: {\n \"font-weight\": \"400\"\n }\n};\nconst _hoisted_28 = {\n key: 2,\n class: \"hidden-720 speaker\"\n};\nconst _hoisted_29 = {\n class: \"author-container\"\n};\nconst _hoisted_30 = {\n key: 0\n};\nconst _hoisted_31 = [\"title\"];\nconst _hoisted_32 = {\n key: 3,\n class: \"rl-row-bottom-10\"\n};\nconst _hoisted_33 = {\n class: \"visible-720\"\n};\nconst _hoisted_34 = {\n class: \"ellipsis rl-row-bottom-10\"\n};\nconst _hoisted_35 = {\n key: 0\n};\nconst _hoisted_36 = {\n class: \"feature-info rl-uppercase\"\n};\nconst _hoisted_37 = {\n style: {\n \"margin-right\": \"calc(0.1vw + 6px)\"\n }\n};\nconst _hoisted_38 = {\n style: {\n \"display\": \"inline-block\"\n }\n};\nconst _hoisted_39 = {\n key: 0,\n class: \"feature-info loading-animation\"\n};\nconst _hoisted_40 = {\n key: 1\n};\nconst _hoisted_41 = {\n class: \"skeleton-img\"\n};\nconst _hoisted_42 = [\"src\"];\nconst _hoisted_43 = {\n style: {\n \"padding\": \"14px\"\n }\n};\nconst _hoisted_44 = {\n class: \"rl-row-10\"\n};\nconst _hoisted_45 = {\n class: \"rl-row-bottom-10\"\n};\nconst _hoisted_46 = {\n key: 2,\n class: \"details-mode\"\n};\nconst _hoisted_47 = {\n style: {\n \"display\": \"flex\"\n }\n};\nconst _hoisted_48 = {\n class: \"img-container skeleton-img\"\n};\nconst _hoisted_49 = [\"src\"];\nconst _hoisted_50 = {\n style: {\n \"padding\": \"0.625vw\",\n \"flex-grow\": \"1\"\n }\n};\nconst _hoisted_51 = {\n style: {\n \"padding\": \"calc(1vw + 0.4px) 0\"\n }\n};\nconst _hoisted_52 = {\n style: {\n \"padding-bottom\": \"calc(1vw + 0.4px)\"\n }\n};\nexport function render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_el_tooltip = _resolveComponent(\"el-tooltip\");\n const _component_router_link = _resolveComponent(\"router-link\");\n const _component_el_skeleton_item = _resolveComponent(\"el-skeleton-item\");\n const _component_el_skeleton = _resolveComponent(\"el-skeleton\");\n const _directive_intersectionObserver = _resolveDirective(\"intersectionObserver\");\n return _openBlock(), _createElementBlock(_Fragment, null, [!$props.groupInfo.isSkeleton ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [_createElementVNode(\"div\", {\n class: \"outline-list\",\n style: _normalizeStyle([{\n visibility: $setup.state.isShowOutline && $setup.state.timecode.length > 0 ? 'visible' : 'hidden'\n }]),\n ref: \"outlineList\"\n }, [_cache[9] || (_cache[9] = _createElementVNode(\"ul\", {\n class: \"outline-title\"\n }, [_createElementVNode(\"li\", null, \"OUTLINE\")], -1)), !$setup.state.isShowOutline ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_2, [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList($setup.state.timecode, (item, index) => {\n return _openBlock(), _createElementBlock(\"li\", {\n key: index\n }, _toDisplayString(item.text), 1);\n }), 128))])) : _createCommentVNode(\"\", true), $setup.state.isShowOutline ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_3, [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList($setup.state.displayTimecode, (item, index) => {\n return _openBlock(), _createElementBlock(\"li\", {\n key: index\n }, _toDisplayString(item.text), 1);\n }), 128))])) : _createCommentVNode(\"\", true)], 4), _createVNode(_component_router_link, {\n to: $setup.state.detailLink,\n class: \"no-underline\"\n }, {\n default: _withCtx(() => [_withDirectives((_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"video-card\", {\n 'details-mode': $props.viewMode === $setup.state.viewModeType.DETAILS\n }]),\n onClick: _cache[8] || (_cache[8] = $event => $props.clickCardHandler($props.groupInfo, $props.position))\n }, [_createElementVNode(\"div\", {\n class: \"img-container\",\n onMouseenter: _cache[0] || (_cache[0] = (...args) => $setup.showOutline && $setup.showOutline(...args)),\n onMouseleave: _cache[1] || (_cache[1] = (...args) => $setup.hideOutline && $setup.hideOutline(...args))\n }, [_createElementVNode(\"img\", {\n src: $props.groupInfo.thumbnail\n }, null, 8, _hoisted_4), _createElementVNode(\"div\", _hoisted_5, _toDisplayString($setup.formatSeconds($props.groupInfo.videoLength)), 1)], 32), _createElementVNode(\"div\", _hoisted_6, [_createElementVNode(\"div\", _hoisted_7, [_createElementVNode(\"div\", _hoisted_8, [_createElementVNode(\"span\", null, _toDisplayString($setup.state.category), 1), _cache[10] || (_cache[10] = _createElementVNode(\"span\", {\n style: {\n \"padding\": \"0 calc(0.6vw + 3px)\"\n }\n }, \"|\", -1)), _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_ctx.$t(\"COMMON.LEVEL\")), 1), _createElementVNode(\"span\", _hoisted_10, [_createElementVNode(\"span\", {\n class: _normalizeClass([\"level-indicator\", [$props.groupInfo.level >= 1 ? 'active' : '']])\n }, null, 2), _createElementVNode(\"span\", {\n class: _normalizeClass([\"level-indicator\", [$props.groupInfo.level >= 2 ? 'active' : '']])\n }, null, 2), _createElementVNode(\"span\", {\n class: _normalizeClass([\"level-indicator\", [$props.groupInfo.level === 3 ? 'active' : '']])\n }, null, 2)])]), $props.groupInfo.isSkeleton ? (_openBlock(), _createElementBlock(\"div\", _hoisted_11, _toDisplayString($setup.state.category), 1)) : _createCommentVNode(\"\", true), !$props.isShowDeleteHistoryButton ? (_openBlock(), _createElementBlock(\"svg\", {\n key: 1,\n viewBox: \"5 0 22 32\",\n class: _normalizeClass([\"bookmark\", {\n active: $setup.state.isBookmarked\n }]),\n onClick: _cache[2] || (_cache[2] = _withModifiers($event => $props.clickBookmarkHandler(!$setup.state.isBookmarked, $props.groupInfo), [\"prevent\"]))\n }, [!$setup.state.isBookmarked ? (_openBlock(), _createElementBlock(\"use\", _hoisted_12)) : _createCommentVNode(\"\", true), $setup.state.isBookmarked ? (_openBlock(), _createElementBlock(\"use\", _hoisted_13)) : _createCommentVNode(\"\", true)], 2)) : (_openBlock(), _createBlock(_component_el_tooltip, {\n key: 2,\n content: _ctx.$t('HISTORY.REMOVE_FROM_WATCH_HISTORY'),\n placement: \"bottom\",\n \"visible-arrow\": false,\n \"auto-close\": 2000\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_14, [(_openBlock(), _createElementBlock(\"svg\", {\n viewBox: \"0 0 34 34\",\n onClick: _cache[3] || (_cache[3] = _withModifiers($event => $props.deleteHistoryHandler($props.groupInfo), [\"prevent\"]))\n }, _cache[11] || (_cache[11] = [_createElementVNode(\"use\", {\n \"xlink:href\": \"#delete\"\n }, null, -1)])))])]),\n _: 1\n }, 8, [\"content\"]))]), _createElementVNode(\"div\", _hoisted_15, [_createElementVNode(\"div\", _hoisted_16, [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList($setup.UtilityService.groupVersion($props.groupInfo.productVersion), (item, index) => {\n return _openBlock(), _createElementBlock(\"span\", {\n class: \"product-version\",\n key: index\n }, [_createTextVNode(_toDisplayString(item.productFamily + \" \" + item.versions.join('/')) + \" \", 1), index != $setup.UtilityService.groupVersion($props.groupInfo.productVersion).length - 1 ? (_openBlock(), _createElementBlock(\"span\", _hoisted_17, \",\")) : _createCommentVNode(\"\", true)]);\n }), 128))]), $props.isShowVersionHeight && $props.groupInfo.productVersion && $props.groupInfo.productVersion.length == 0 ? (_openBlock(), _createElementBlock(\"div\", _hoisted_18, \" no version \")) : _createCommentVNode(\"\", true), _createElementVNode(\"div\", _hoisted_19, [_createElementVNode(\"div\", {\n class: \"group-title rl-fontweight-medium\",\n onMouseenter: _cache[4] || (_cache[4] = (...args) => $setup.showOutline && $setup.showOutline(...args)),\n onMouseleave: _cache[5] || (_cache[5] = (...args) => $setup.hideOutline && $setup.hideOutline(...args))\n }, [$props.groupInfo.label ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: \"label\",\n style: _normalizeStyle({\n backgroundColor: $props.groupInfo.label.color\n })\n }, _toDisplayString($props.groupInfo.label.name), 5)) : $props.groupInfo.isNew ? (_openBlock(), _createElementBlock(\"div\", _hoisted_20, _toDisplayString(_ctx.$t(\"COMMON.NEW\")), 1)) : _createCommentVNode(\"\", true), _createElementVNode(\"span\", null, _toDisplayString($props.groupInfo.title), 1)], 32), _createElementVNode(\"div\", _hoisted_21, [!$props.isShowDeleteHistoryButton ? (_openBlock(), _createElementBlock(\"svg\", {\n key: 0,\n viewBox: \"5 0 22 32\",\n class: _normalizeClass([\"bookmark\", {\n active: $setup.state.isBookmarked\n }]),\n style: {\n \"flex-shrink\": \"0\",\n \"align-self\": \"flex-start\",\n \"margin-left\": \"2px\"\n },\n onClick: _cache[6] || (_cache[6] = _withModifiers($event => $props.clickBookmarkHandler(!$setup.state.isBookmarked, $props.groupInfo), [\"prevent\"]))\n }, [!$setup.state.isBookmarked ? (_openBlock(), _createElementBlock(\"use\", _hoisted_22)) : _createCommentVNode(\"\", true), $setup.state.isBookmarked ? (_openBlock(), _createElementBlock(\"use\", _hoisted_23)) : _createCommentVNode(\"\", true)], 2)) : (_openBlock(), _createBlock(_component_el_tooltip, {\n key: 1,\n content: _ctx.$t('HISTORY.REMOVE_FROM_WATCH_HISTORY'),\n placement: \"bottom\",\n \"visible-arrow\": false,\n \"auto-close\": 2000\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_24, [(_openBlock(), _createElementBlock(\"svg\", {\n viewBox: \"0 0 34 34\",\n onClick: _cache[7] || (_cache[7] = _withModifiers($event => $props.deleteHistoryHandler($props.groupInfo), [\"prevent\"]))\n }, _cache[12] || (_cache[12] = [_createElementVNode(\"use\", {\n \"xlink:href\": \"#delete\"\n }, null, -1)])))])]),\n _: 1\n }, 8, [\"content\"]))])]), _createElementVNode(\"div\", _hoisted_25, [_createElementVNode(\"span\", {\n innerHTML: $setup.state.description\n }, null, 8, _hoisted_26)]), $props.groupInfo.medias && $props.groupInfo.medias.length > 0 ? (_openBlock(), _createElementBlock(\"div\", _hoisted_27, _toDisplayString($props.groupInfo.medias.length) + \" Videos\", 1)) : _createCommentVNode(\"\", true), $setup.state.speakerNames.length ? (_openBlock(), _createElementBlock(\"div\", _hoisted_28, [_createElementVNode(\"div\", _hoisted_29, [$setup.state.videoType == $setup.videoType.webinar.type && $props.groupInfo.date ? (_openBlock(), _createElementBlock(\"div\", _hoisted_30, _toDisplayString($props.groupInfo.date.replace(/\\//g, \"-\")), 1)) : _createCommentVNode(\"\", true), _createElementVNode(\"div\", {\n class: \"author-name\",\n title: $setup.state.speakerNames,\n style: {\n \"margin-left\": \"auto\"\n }\n }, _toDisplayString($setup.state.speakerNames), 9, _hoisted_31)])])) : _createCommentVNode(\"\", true), !$setup.state.speakerNames.length ? (_openBlock(), _createElementBlock(\"div\", _hoisted_32)) : _createCommentVNode(\"\", true), _createElementVNode(\"div\", _hoisted_33, [_createElementVNode(\"div\", _hoisted_34, [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList($setup.UtilityService.groupVersion($props.groupInfo.productVersion), (item, index) => {\n return _openBlock(), _createElementBlock(\"span\", {\n class: \"product-version\",\n key: index\n }, [_createTextVNode(_toDisplayString(item.productFamily + \" \" + item.versions.join('/')) + \" \", 1), index != $setup.UtilityService.groupVersion($props.groupInfo.productVersion).length - 1 ? (_openBlock(), _createElementBlock(\"span\", _hoisted_35, \",\")) : _createCommentVNode(\"\", true)]);\n }), 128))]), _createElementVNode(\"div\", _hoisted_36, [_createTextVNode(_toDisplayString($setup.state.category) + \" \", 1), _cache[13] || (_cache[13] = _createElementVNode(\"span\", {\n style: {\n \"padding\": \"0 calc(0.6vw + 3px)\"\n }\n }, \"|\", -1)), _createElementVNode(\"span\", _hoisted_37, _toDisplayString(_ctx.$t(\"COMMON.LEVEL\")), 1), _createElementVNode(\"span\", _hoisted_38, [_createElementVNode(\"span\", {\n class: _normalizeClass([\"level-indicator\", [$props.groupInfo.level >= 1 ? 'active' : '']])\n }, null, 2), _createElementVNode(\"span\", {\n class: _normalizeClass([\"level-indicator\", [$props.groupInfo.level >= 2 ? 'active' : '']])\n }, null, 2), _createElementVNode(\"span\", {\n class: _normalizeClass([\"level-indicator\", [$props.groupInfo.level === 3 ? 'active' : '']])\n }, null, 2)])]), $props.groupInfo.isSkeleton ? (_openBlock(), _createElementBlock(\"div\", _hoisted_39, _toDisplayString($setup.state.category), 1)) : _createCommentVNode(\"\", true)])])])], 2)), [[_directive_intersectionObserver, function () {\n return $props.impressionHandler($props.groupInfo, $props.position);\n }]])]),\n _: 1\n }, 8, [\"to\"])])) : _createCommentVNode(\"\", true), $props.groupInfo.isSkeleton && $props.viewMode === $setup.state.viewModeType.ICON ? (_openBlock(), _createElementBlock(\"div\", _hoisted_40, [_createVNode(_component_el_skeleton, {\n animated: \"\"\n }, {\n template: _withCtx(() => [_createElementVNode(\"div\", _hoisted_41, [_createElementVNode(\"img\", {\n src: require('@/assets/images/skeletonImg.png'),\n alt: \"\"\n }, null, 8, _hoisted_42), _createVNode(_component_el_skeleton_item, {\n variant: \"image\",\n class: \"el-skeleton-img-position\"\n })]), _createElementVNode(\"div\", _hoisted_43, [_createVNode(_component_el_skeleton_item, {\n variant: \"p\",\n style: {\n \"width\": \"100%\"\n }\n }), _createElementVNode(\"div\", _hoisted_44, [_createVNode(_component_el_skeleton_item, {\n variant: \"p\",\n style: {\n \"width\": \"30%\"\n }\n })]), _createElementVNode(\"div\", _hoisted_45, [_createVNode(_component_el_skeleton_item, {\n variant: \"p\",\n style: {\n \"width\": \"100%\"\n }\n })])])]),\n _: 1\n })])) : _createCommentVNode(\"\", true), $props.groupInfo.isSkeleton && $props.viewMode === $setup.state.viewModeType.DETAILS ? (_openBlock(), _createElementBlock(\"div\", _hoisted_46, [_createVNode(_component_el_skeleton, {\n animated: \"\"\n }, {\n template: _withCtx(() => [_createElementVNode(\"div\", _hoisted_47, [_createElementVNode(\"div\", _hoisted_48, [_createElementVNode(\"img\", {\n src: require('@/assets/images/skeletonImg.png'),\n alt: \"\"\n }, null, 8, _hoisted_49), _createVNode(_component_el_skeleton_item, {\n variant: \"image\",\n class: \"el-skeleton-img-position\"\n })]), _createElementVNode(\"div\", _hoisted_50, [_createVNode(_component_el_skeleton_item, {\n variant: \"p\",\n style: {\n \"width\": \"100%\"\n }\n }), _createElementVNode(\"div\", _hoisted_51, [_createVNode(_component_el_skeleton_item, {\n variant: \"p\",\n style: {\n \"width\": \"40%\"\n }\n })]), _createElementVNode(\"div\", _hoisted_52, [_createVNode(_component_el_skeleton_item, {\n variant: \"p\",\n style: {\n \"width\": \"100%\"\n }\n })])])])]),\n _: 1\n })])) : _createCommentVNode(\"\", true)], 64);\n}","import \"core-js/modules/esnext.iterator.constructor.js\";\nimport \"core-js/modules/esnext.iterator.find.js\";\nimport \"core-js/modules/esnext.iterator.map.js\";\nimport { reactive, computed, toRefs, ref } from \"vue\";\nimport { viewModeEnum, itemTypeEnum } from \"@/enums/components/list\";\nimport { UtilityService } from \"@/utils\";\nimport { useRoute } from \"vue-router\";\nimport { SpeakerTypeEnum } from \"@/enums/api/index\";\nexport default {\n name: \"videoCard\",\n setup(props) {\n const outlineList = ref(null);\n const {\n groupInfo,\n viewMode,\n langPath\n } = toRefs(props);\n const {\n videoType,\n getDescriptionAndTimecode,\n getVideoType,\n textToHtml,\n formatSeconds\n } = UtilityService;\n const state = reactive({\n viewModeType: viewModeEnum,\n timecode: computed(() => UtilityService.getDescriptionAndTimecode(groupInfo.value.description).timecode),\n displayTimecode: [],\n isBookmarked: computed(() => groupInfo.value.isBookmarked),\n detailLink: computed(() => {\n const route = useRoute();\n const isSkillPath = groupInfo.value.type === itemTypeEnum.SKILL_PATH;\n const url = isSkillPath ? groupInfo.value.category[0] + `/${groupInfo.value.urlName}` : groupInfo.value.category.join(\"/\");\n return {\n path: (langPath.value ? langPath.value : \"/\") + url,\n query: {\n ...route.query,\n ...(isSkillPath ? {} : {\n v: groupInfo.value.urlName\n })\n }\n };\n }),\n date: groupInfo.value.date,\n category: computed(() => {\n return getVideoType(groupInfo.value.category[0]).display;\n }),\n videoType: computed(() => {\n return getVideoType(groupInfo.value.category[0]).type;\n }),\n description: computed(() => {\n return textToHtml(getDescriptionAndTimecode(groupInfo.value.description).description, false);\n }),\n isWaitingLoading: computed(() => groupInfo.value.thumbnail ? false : true),\n isShowOutline: false,\n speakerNames: computed(() => (groupInfo.value.speakers || []).map(speaker => speaker.name).join(', '))\n });\n /* eslint-disable */\n let addOpenTimer = null;\n const showOutline = event => {\n addOpenTimer = setTimeout(function () {\n state.isShowOutline = true;\n }, 500);\n const outline = $(outlineList.value);\n const iconViewModeOutlinePosition = {\n right: {\n position: \"absolute\",\n top: \"50%\",\n bottom: \"auto\",\n left: \"calc(100% + 10px)\",\n right: \"auto\",\n transform: 'translateY(-50%)'\n },\n left: {\n position: \"absolute\",\n top: \"50%\",\n bottom: \"auto\",\n left: \"auto\",\n right: \"calc(100% + 10px)\",\n transform: 'translateY(-50%)'\n },\n bottom: {\n position: \"absolute\",\n top: \"calc(100% + 10px)\",\n bottom: \"auto\",\n left: \"50%\",\n bottom: \"auto\",\n transform: 'translateX(-50%)'\n },\n top: {\n position: \"absolute\",\n top: \"auto\",\n bottom: \"100%\",\n left: \"50%\",\n bottom: \"auto\",\n transform: 'translate(-50% ,-105%)'\n }\n };\n const detailViewModeOutlinePosition = {\n \"img-container\": {\n bottom: {\n position: \"absolute\",\n top: \"calc(100% + 10px)\",\n bottom: \"auto\",\n left: $(event.target).width() + 10,\n transform: 'translateX(-50%)'\n },\n top: {\n position: \"absolute\",\n top: \"auto\",\n bottom: \"calc(100% + 10px)\",\n left: $(event.target).width() + 10,\n transform: 'translateX(-50%)'\n }\n },\n \"group-title\": {\n right: {\n position: \"absolute\",\n top: \"50%\",\n bottom: \"auto\",\n left: $(event.target).width() + $('.img-container').width() + 30,\n right: \"auto\",\n transform: 'translateY(-50%)'\n },\n bottom: {\n position: \"absolute\",\n top: $(event.target).position().top + $(event.target).height() + 10,\n bottom: \"auto\",\n left: $(event.target).width() + $('.img-container').width() + 30,\n bottom: \"auto\",\n transform: 'translateX(-50%)'\n },\n top: {\n position: \"absolute\",\n top: -($(event.target).position().top + $(event.target).height() + 20),\n bottom: \"auto\",\n left: $(event.target).width() + $('.img-container').width() + 30,\n bottom: \"auto\",\n transform: 'translateX(-50%)'\n }\n }\n };\n const hoverOnElement = Object.keys(detailViewModeOutlinePosition).find(element => $(event.target).attr(\"class\").split(/\\s+/).indexOf(element) > -1);\n const setOutlinePosition = (position, type) => {\n outline.attr(\"class\", \"outline-list\");\n outline.addClass(position);\n if (viewMode.value === state.viewModeType.DETAILS) {\n outline.css(detailViewModeOutlinePosition[hoverOnElement][position]);\n } else {\n outline.css(iconViewModeOutlinePosition[position]);\n }\n };\n const getPositionforOutline = checkPosition => {\n if (checkPosition.indexOf(\"right\") > -1 && $(window).width() - outline.offset().left > outline.width()) {\n //element到window右邊空間容納的下outline的寬度,顯示在右側\n setOutlinePosition(\"right\");\n }\n if (checkPosition.indexOf(\"left\") > -1 && $(window).width() - outline.offset().left < outline.width()) {\n //element到window右邊空間容納不下outline的寬度,顯示在左側\n setOutlinePosition(\"left\");\n }\n if (checkPosition.indexOf(\"bottom\") > -1 && outline.offset().top - $(window).scrollTop() < 0 || $(window).width() - outline.offset().left < outline.width()) {\n //element到window上邊空間容納不下outline的高度,顯示在下方\n setOutlinePosition(\"bottom\");\n }\n if (checkPosition.indexOf(\"top\") > -1 && outline.offset().top - $(window).scrollTop() > $(window).height() - outline.height() //element到window下邊空間容納不下outline的高度,顯示在上方\n ) {\n setOutlinePosition(\"top\");\n }\n };\n if (viewMode.value === state.viewModeType.DETAILS) {\n if (hoverOnElement == \"img-container\") {\n setOutlinePosition(\"bottom\");\n }\n outline.css({\n width: $(\".\" + hoverOnElement).width()\n });\n getPositionforOutline(Object.keys(detailViewModeOutlinePosition[hoverOnElement]));\n } else {\n outline.css(\"position\", \"absolute\"), getPositionforOutline([\"right\", \"left\", \"top\", \"bottom\"]);\n }\n const leftSpaceForList = $(\".video-card\").innerHeight() - $(\".outline-title\").height() - 50;\n state.displayTimecode = [];\n let allListHeight = 0;\n let maxListLength = null;\n outline.find(\".outline-content li\").each(function (index) {\n if (leftSpaceForList <= allListHeight) {\n maxListLength = index;\n return false;\n } else {\n allListHeight = allListHeight + $(this).height() + 10;\n }\n });\n if (maxListLength) {\n state.displayTimecode = state.timecode.slice(0, maxListLength - 1);\n state.displayTimecode.push({\n text: \"......\"\n });\n } else {\n state.displayTimecode = UtilityService.getDescriptionAndTimecode(groupInfo.value.description).timecode;\n }\n state.timecode = UtilityService.getDescriptionAndTimecode(groupInfo.value.description).timecode;\n };\n const hideOutline = event => {\n clearTimeout(addOpenTimer);\n $(event.target).removeClass(\"open\");\n state.isShowOutline = false;\n };\n return {\n state,\n showOutline,\n hideOutline,\n formatSeconds,\n outlineList,\n videoType,\n UtilityService\n };\n },\n props: {\n viewMode: {\n type: Number,\n required: true\n },\n groupInfo: {\n type: Object,\n required: true\n },\n position: {\n type: Number,\n required: true\n },\n langPath: {\n type: String,\n required: true\n },\n isShowDeleteHistoryButton: {\n type: Boolean,\n default: false,\n required: false\n },\n deleteHistoryHandler: {\n type: Function,\n required: false,\n default() {\n return () => true;\n }\n },\n impressionHandler: {\n type: Function,\n required: false,\n default() {\n return () => true;\n }\n },\n clickCardHandler: {\n type: Function,\n required: false,\n default() {\n return () => true;\n }\n },\n clickBookmarkHandler: {\n type: Function,\n required: true,\n default() {\n return () => true;\n }\n },\n isShowVersionHeight: {\n type: Boolean,\n required: true,\n default: false\n }\n }\n};","/* unplugin-vue-components disabled */import { render } from \"./video-card.vue?vue&type=template&id=4c24564a&scoped=true\"\nimport script from \"./video-card.vue?vue&type=script&lang=js\"\nexport * from \"./video-card.vue?vue&type=script&lang=js\"\n\nimport \"./video-card.vue?vue&type=style&index=0&id=4c24564a&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4c24564a\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, createVNode as _createVNode, normalizeClass as _normalizeClass, createTextVNode as _createTextVNode } from \"vue\";\nconst _hoisted_1 = {\n class: \"rl-text-center\"\n};\nconst _hoisted_2 = [\"innerHTML\"];\nconst _hoisted_3 = {\n key: 1,\n class: \"list\"\n};\nconst _hoisted_4 = {\n key: 0,\n class: \"card-container rl-row-bottom-70\"\n};\nconst _hoisted_5 = {\n key: 1,\n class: \"rl-row-bottom-20\"\n};\nexport function render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_el_row = _resolveComponent(\"el-row\");\n const _component_group_card = _resolveComponent(\"group-card\");\n const _component_video_card = _resolveComponent(\"video-card\");\n return $props.errorMsg ? (_openBlock(), _createBlock(_component_el_row, {\n key: 0,\n justify: \"center\",\n align: \"middle\",\n style: {\n \"height\": \"calc(100vh - 300px)\"\n }\n }, {\n default: _withCtx(() => [_createElementVNode(\"div\", _hoisted_1, [_createElementVNode(\"p\", {\n class: \"rl-row-bottom-calc-30 rl-text-h3\",\n innerHTML: $props.errorMsg,\n style: {\n \"margin\": \"0\",\n \"color\": \"#909090\"\n }\n }, null, 8, _hoisted_2)])]),\n _: 1\n })) : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [$setup.state.groupCardInfo.length > 0 ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList($setup.state.groupCardInfo, (item, index) => {\n return _openBlock(), _createElementBlock(\"div\", {\n key: index\n }, [_createVNode(_component_group_card, {\n groupInfo: item,\n position: index,\n langPath: $props.langPath,\n impressionHandler: $props.impressionHandler,\n clickCardHandler: $props.clickCardHandler\n }, null, 8, [\"groupInfo\", \"position\", \"langPath\", \"impressionHandler\", \"clickCardHandler\"])]);\n }), 128))])) : _createCommentVNode(\"\", true), _createElementVNode(\"div\", {\n class: _normalizeClass([\"card-container\", {\n 'flex-column': $props.viewMode === $setup.state.viewModeType.DETAILS\n }])\n }, [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList($setup.state.displayVideoCards, (item, index) => {\n return _openBlock(), _createElementBlock(\"div\", {\n key: index\n }, [_createVNode(_component_video_card, {\n groupInfo: item,\n position: index,\n langPath: $props.langPath,\n viewMode: $props.viewMode,\n isShowVersionHeight: $setup.state.isShowVersionHeight,\n impressionHandler: $props.impressionHandler,\n clickCardHandler: $props.clickCardHandler,\n clickBookmarkHandler: $props.clickBookmarkHandler,\n isShowDeleteHistoryButton: $props.isShowDeleteHistoryButton,\n deleteHistoryHandler: $props.deleteHistoryHandler\n }, null, 8, [\"groupInfo\", \"position\", \"langPath\", \"viewMode\", \"isShowVersionHeight\", \"impressionHandler\", \"clickCardHandler\", \"clickBookmarkHandler\", \"isShowDeleteHistoryButton\", \"deleteHistoryHandler\"])]);\n }), 128))], 2), $setup.state.legacyVideoCards.length > 0 && $props.toExcludeLegacy ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [_createElementVNode(\"h2\", {\n class: \"legacy\",\n onClick: _cache[0] || (_cache[0] = $event => $setup.state.isShowLegacy = !$setup.state.isShowLegacy)\n }, [_createElementVNode(\"span\", null, [_cache[1] || (_cache[1] = _createTextVNode(\"Legacy   \")), _createElementVNode(\"i\", {\n class: _normalizeClass([\"fa fa-angle-right\", {\n 'open': $setup.state.isShowLegacy\n }])\n }, null, 2)])])])) : _createCommentVNode(\"\", true), $setup.state.isShowLegacy ? (_openBlock(), _createElementBlock(\"div\", {\n key: 2,\n class: _normalizeClass([\"card-container\", {\n 'flex-column': $props.viewMode === $setup.state.viewModeType.DETAILS\n }])\n }, [(_openBlock(true), _createElementBlock(_Fragment, null, _renderList($setup.state.legacyVideoCards, (item, index) => {\n return _openBlock(), _createElementBlock(\"div\", {\n key: index\n }, [_createVNode(_component_video_card, {\n groupInfo: item,\n position: index,\n viewMode: $props.viewMode,\n isShowVersionHeight: $setup.state.isShowVersionHeight,\n impressionHandler: $props.impressionHandler,\n clickCardHandler: $props.clickCardHandler,\n clickBookmarkHandler: $props.clickBookmarkHandler,\n isShowDeleteHistoryButton: $props.isShowDeleteHistoryButton,\n deleteHistoryHandler: $props.deleteHistoryHandler\n }, null, 8, [\"groupInfo\", \"position\", \"viewMode\", \"isShowVersionHeight\", \"impressionHandler\", \"clickCardHandler\", \"clickBookmarkHandler\", \"isShowDeleteHistoryButton\", \"deleteHistoryHandler\"])]);\n }), 128))], 2)) : _createCommentVNode(\"\", true)]));\n}","import \"core-js/modules/esnext.iterator.constructor.js\";\nimport \"core-js/modules/esnext.iterator.filter.js\";\nimport \"core-js/modules/esnext.iterator.find.js\";\nimport \"core-js/modules/esnext.iterator.map.js\";\nimport { reactive, computed, toRefs, nextTick, watch, onUnmounted } from \"vue\";\nimport { useRoute } from \"vue-router\";\nimport { viewModeEnum, itemTypeEnum } from \"@/enums/components/list\";\nimport groupCard from \"@/components/group-card\";\nimport videoCard from \"@/components/video-card\";\nimport { UtilityService } from \"@/utils\";\nexport default {\n name: \"list\",\n components: {\n groupCard,\n videoCard\n },\n setup(props) {\n const route = useRoute();\n const {\n groupData,\n toExcludeLegacy,\n scrollToBottomHandler,\n isLastPage,\n dataPreprocessHandler,\n viewMode,\n isFinishQuery\n } = toRefs(props);\n const {\n getVideoType\n } = UtilityService;\n const state = reactive({\n viewModeType: viewModeEnum,\n isShowLegacy: false,\n lastCardLength: 0,\n isReadyforQuery: true,\n skeletonVideoCardInfo: new Array(0),\n groupCardInfo: computed(() => groupData.value.filter(item => item.type === itemTypeEnum.GROUP || item.type === itemTypeEnum.LINK)),\n processedVideoCards: computed(() => {\n return groupData.value.map(item => dataPreprocessHandler.value(item)).filter(item => item.type === itemTypeEnum.VIDEO || item.type === itemTypeEnum.SKILL_PATH);\n }),\n legacyVideoCards: computed(() => {\n if (toExcludeLegacy.value) {\n const legacyVideoCards = state.processedVideoCards.filter(item => item.isLegacy);\n return !isLastPage.value && toExcludeLegacy.value && legacyVideoCards.length > 0 ? [...legacyVideoCards, ...state.skeletonVideoCardInfo] : legacyVideoCards;\n } else {\n return [];\n }\n }),\n displayVideoCards: computed(() => {\n const displayVideoCards = toExcludeLegacy.value ? state.processedVideoCards.filter(item => !item.isLegacy) : state.processedVideoCards;\n return !isLastPage.value ? [...displayVideoCards, ...state.skeletonVideoCardInfo] : displayVideoCards;\n }),\n isShowVersionHeight: computed(() => {\n return state.processedVideoCards ? Boolean(state.processedVideoCards.find(card => card.productVersion)) : false;\n })\n });\n const maxHeight = element => {\n let currentMaxHeight = 0;\n $(element).each(function () {\n if ($(this).outerHeight() > currentMaxHeight) {\n currentMaxHeight = $(this).outerHeight();\n }\n });\n return currentMaxHeight;\n };\n const generateSkeletonVideoCardInfo = () => {\n const dummyVideoCard = {\n isSkeleton: true\n };\n function totalItem(rowNumber) {\n if (state.processedVideoCards.length % rowNumber > 0) {\n return rowNumber - state.processedVideoCards.length % rowNumber + rowNumber;\n } else {\n return rowNumber * 2;\n }\n }\n if (viewMode.value === state.viewModeType.DETAILS) {\n state.skeletonVideoCardInfo = new Array(2).fill(dummyVideoCard);\n } else {\n if ($(window).width() > 1450) {\n state.skeletonVideoCardInfo = new Array(totalItem(4)).fill(dummyVideoCard);\n } else if ($(window).width() > 971) {\n state.skeletonVideoCardInfo = new Array(totalItem(3)).fill(dummyVideoCard);\n } else if ($(window).width() > 610) {\n state.skeletonVideoCardInfo = new Array(totalItem(2)).fill(dummyVideoCard);\n } else {\n state.skeletonVideoCardInfo = new Array(2).fill(dummyVideoCard);\n }\n }\n };\n generateSkeletonVideoCardInfo();\n watch(() => viewMode.value, () => {\n generateSkeletonVideoCardInfo();\n });\n watch(() => route.query, () => {\n state.isShowLegacy = false;\n });\n watch(() => isFinishQuery.value, () => {\n if (isFinishQuery.value) {\n nextTick(() => {\n const videoCards = groupData.value.filter(item => item.type === itemTypeEnum.VIDEO);\n if ($(\".video-card\").eq(state.lastCardLength).offset() && $(\".el-skeleton\").eq(0).offset() && Math.ceil($(window).scrollTop()) + Math.ceil($(window).height()) > $(\".el-skeleton\").eq(0).offset().top) {\n $('html, body').animate({\n scrollTop: $(\".video-card\").eq(state.lastCardLength).offset().top - $(\".video-card\").height()\n }, {\n complete: function () {\n state.isReadyforQuery = true;\n state.lastCardLength = videoCards.length;\n }\n });\n } else {\n state.isReadyforQuery = true;\n state.lastCardLength = videoCards.length;\n }\n });\n }\n });\n let resizeEvent;\n nextTick(() => {\n let scrollToBottomTimer = null;\n $(window).scroll(function () {\n var scrollTop = $(this).scrollTop();\n var windowHeight = $(this).height();\n if (groupData.value.length > 0 && $(\".el-skeleton\").eq(0).offset() && Math.ceil(scrollTop) + Math.ceil(windowHeight) >= $(\".el-skeleton\").eq(0).offset().top && state.isReadyforQuery && !isLastPage.value) {\n state.isReadyforQuery = false;\n clearTimeout(scrollToBottomTimer);\n scrollToBottomTimer = setTimeout(() => {\n scrollToBottomHandler.value();\n }, 250);\n }\n });\n let groupCardMaxHightTimer = null;\n resizeEvent = function () {\n clearTimeout(groupCardMaxHightTimer);\n groupCardMaxHightTimer = setTimeout(() => {\n generateSkeletonVideoCardInfo();\n $('.group-card').css('min-height', maxHeight('.group-card'));\n }, 250);\n };\n window.addEventListener(\"resize\", resizeEvent);\n setTimeout(() => {\n $('.group-card').css('min-height', maxHeight('.group-card'));\n }, 0);\n });\n onUnmounted(() => {\n window.removeEventListener(\"resize\", resizeEvent);\n });\n return {\n state,\n resizeEvent\n };\n },\n props: {\n viewMode: {\n type: Number,\n required: true\n },\n groupData: {\n type: Array,\n required: true\n },\n toExcludeLegacy: {\n type: Boolean,\n required: true\n },\n impressionHandler: {\n type: Function,\n required: true,\n default() {\n return () => true;\n }\n },\n clickCardHandler: {\n type: Function,\n required: true,\n default() {\n return () => true;\n }\n },\n scrollToBottomHandler: {\n type: Function,\n required: true,\n default() {\n return () => true;\n }\n },\n clickBookmarkHandler: {\n type: Function,\n required: true,\n default() {\n return () => true;\n }\n },\n dataPreprocessHandler: {\n type: Function,\n required: true,\n default: function (item) {\n return item;\n }\n },\n isLastPage: {\n type: Boolean,\n required: true\n },\n langPath: {\n type: String,\n required: true\n },\n errorMsg: {\n type: String,\n required: false,\n default: ''\n },\n isFinishQuery: {\n type: Boolean\n },\n isShowDeleteHistoryButton: {\n type: Boolean,\n default: false,\n required: false\n },\n deleteHistoryHandler: {\n type: Function,\n required: false,\n default() {\n return () => true;\n }\n }\n }\n};","/* unplugin-vue-components disabled */import { render } from \"./list.vue?vue&type=template&id=16d96871&scoped=true\"\nimport script from \"./list.vue?vue&type=script&lang=js\"\nexport * from \"./list.vue?vue&type=script&lang=js\"\n\nimport \"./list.vue?vue&type=style&index=0&id=16d96871&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-16d96871\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode } from \"vue\";\nexport function render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_el_tooltip = _resolveComponent(\"el-tooltip\");\n return _openBlock(), _createElementBlock(\"div\", null, [_createVNode(_component_el_tooltip, {\n content: _ctx.$t('VIEW_MODE.CARDS'),\n placement: \"bottom\",\n \"visible-arrow\": false,\n \"auto-close\": 2000\n }, {\n default: _withCtx(() => [_createElementVNode(\"span\", null, [(_openBlock(), _createElementBlock(\"svg\", {\n viewBox: \"0 0 34 34\",\n class: _normalizeClass({\n 'selected': $props.modelValue === $setup.viewModeEnum.ICON,\n 'disabled': $props.disabled\n }),\n onClick: _cache[0] || (_cache[0] = $event => $setup.setViewMode($setup.viewModeEnum.ICON))\n }, _cache[2] || (_cache[2] = [_createElementVNode(\"use\", {\n \"xlink:href\": \"#tile\"\n }, null, -1)]), 2))])]),\n _: 1\n }, 8, [\"content\"]), _createVNode(_component_el_tooltip, {\n content: _ctx.$t('VIEW_MODE.DETAILS'),\n placement: \"bottom\",\n \"visible-arrow\": false,\n \"auto-close\": 2000\n }, {\n default: _withCtx(() => [_createElementVNode(\"span\", null, [(_openBlock(), _createElementBlock(\"svg\", {\n viewBox: \"0 0 34 34\",\n class: _normalizeClass({\n 'selected': $props.modelValue === $setup.viewModeEnum.DETAILS,\n 'disabled': $props.disabled\n }),\n onClick: _cache[1] || (_cache[1] = $event => $setup.setViewMode($setup.viewModeEnum.DETAILS))\n }, _cache[3] || (_cache[3] = [_createElementVNode(\"use\", {\n \"xlink:href\": \"#list\"\n }, null, -1)]), 2))])]),\n _: 1\n }, 8, [\"content\"])]);\n}","import { viewModeEnum } from \"@/enums/components/list\";\nexport default {\n name: \"ViewMode\",\n emits: ['update:modelValue'],\n props: {\n modelValue: Number,\n disabled: {\n type: Boolean,\n required: false,\n default: false\n }\n },\n setup(_props, {\n emit\n }) {\n const setViewMode = type => {\n emit('update:modelValue', type);\n };\n return {\n setViewMode,\n viewModeEnum\n };\n }\n};","/* unplugin-vue-components disabled */import { render } from \"./view-mode.vue?vue&type=template&id=02865400&scoped=true\"\nimport script from \"./view-mode.vue?vue&type=script&lang=js\"\nexport * from \"./view-mode.vue?vue&type=script&lang=js\"\n\nimport \"./view-mode.vue?vue&type=style&index=0&id=02865400&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-02865400\"]])\n\nexport default __exports__"],"names":["_hoisted_1","key","class","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","viewBox","_hoisted_9","render","_ctx","_cache","$props","$setup","$data","$options","_directive_intersectionObserver","groupInfo","type","itemTypeEnum","LINK","href","link","undefined","to","GROUP","langPath","category","join","toLowerCase","urlName","style","thumbnail","hasExternalLink","target","rel","onClick","$event","clickCardHandler","position","default","instructor","label","backgroundColor","color","name","isNew","$t","src","instructorsThumbnailUrl","title","software","iconIdTable","isMagazine","_","impressionHandler","props","Object","required","Number","String","Function","setup","value","includes","window","location","hostname","replace","__exports__","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","_hoisted_31","_hoisted_32","_hoisted_33","_hoisted_34","_hoisted_35","_hoisted_36","_hoisted_37","_hoisted_38","_hoisted_39","_hoisted_40","_hoisted_41","_hoisted_42","_hoisted_43","_hoisted_44","_hoisted_45","_hoisted_46","_hoisted_47","_hoisted_48","_hoisted_49","_hoisted_50","_hoisted_51","_hoisted_52","_component_el_tooltip","_component_router_link","_component_el_skeleton_item","_component_el_skeleton","isSkeleton","visibility","state","isShowOutline","timecode","length","ref","item","index","text","displayTimecode","detailLink","viewMode","viewModeType","DETAILS","onMouseenter","args","showOutline","onMouseleave","hideOutline","formatSeconds","videoLength","level","isShowDeleteHistoryButton","content","placement","deleteHistoryHandler","active","isBookmarked","clickBookmarkHandler","UtilityService","groupVersion","productVersion","productFamily","versions","isShowVersionHeight","innerHTML","description","medias","speakerNames","videoType","webinar","date","ICON","animated","template","alt","variant","outlineList","getDescriptionAndTimecode","getVideoType","textToHtml","route","isSkillPath","SKILL_PATH","url","path","query","v","display","isWaitingLoading","speakers","map","speaker","addOpenTimer","event","setTimeout","outline","$","iconViewModeOutlinePosition","right","top","bottom","left","transform","detailViewModeOutlinePosition","width","height","hoverOnElement","keys","find","element","attr","split","indexOf","setOutlinePosition","addClass","css","getPositionforOutline","checkPosition","offset","scrollTop","leftSpaceForList","innerHeight","allListHeight","maxListLength","each","this","slice","push","clearTimeout","removeClass","Boolean","_component_el_row","_component_group_card","_component_video_card","errorMsg","justify","align","groupCardInfo","displayVideoCards","legacyVideoCards","toExcludeLegacy","isShowLegacy","components","groupCard","videoCard","groupData","scrollToBottomHandler","isLastPage","dataPreprocessHandler","isFinishQuery","lastCardLength","isReadyforQuery","skeletonVideoCardInfo","Array","filter","processedVideoCards","VIDEO","isLegacy","card","maxHeight","currentMaxHeight","outerHeight","generateSkeletonVideoCardInfo","dummyVideoCard","totalItem","rowNumber","fill","resizeEvent","videoCards","eq","Math","ceil","animate","complete","scrollToBottomTimer","scroll","windowHeight","groupCardMaxHightTimer","addEventListener","removeEventListener","modelValue","viewModeEnum","disabled","setViewMode","emits","_props","emit"],"sourceRoot":""}