From ebfdd5c8fdb1efad3480f314e9a04d630c98f1d5 Mon Sep 17 00:00:00 2001 From: clkim Date: Fri, 17 Oct 2025 17:51:19 +0900 Subject: [PATCH] =?UTF-8?q?feat.=20GR=5FDETAIL=5F01=20=ED=85=9C=ED=94=8C?= =?UTF-8?q?=EB=A6=BF=20=EC=A0=9C=EC=9E=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/pages/[d1]/[d2]/index.vue | 1 - layers/components/blocks/slide/Fade.vue | 10 +- layers/components/blocks/slide/Thumbnail.vue | 2 +- layers/composables/useAnalytics.ts | 1 - layers/composables/useTemplateRegistry.ts | 3 +- layers/layouts/promotion.vue | 2 +- layers/middleware/init.route.global.ts | 2 - layers/middleware/pageData.global.ts | 2 +- layers/server/middleware/gameData.ts | 2 + layers/templates/GrDetail01/index.vue | 156 +++++++++++++++++++ layers/templates/GrGallery01/index.vue | 8 +- layers/templates/GrVisual03/index.vue | 11 +- layers/utils/dataUtil.ts | 28 ++-- 13 files changed, 198 insertions(+), 30 deletions(-) create mode 100644 layers/templates/GrDetail01/index.vue diff --git a/app/pages/[d1]/[d2]/index.vue b/app/pages/[d1]/[d2]/index.vue index 9013128..dceae28 100644 --- a/app/pages/[d1]/[d2]/index.vue +++ b/app/pages/[d1]/[d2]/index.vue @@ -4,7 +4,6 @@ import { getLayoutType } from '#layers/utils/dataUtil' const pageDataStore = usePageDataStore() const { pageData } = storeToRefs(pageDataStore) -console.log("πŸš€ d2 index ~ pageData:", pageData) const currentLayout = computed(() => getLayoutType(pageData.value)) diff --git a/layers/components/blocks/slide/Fade.vue b/layers/components/blocks/slide/Fade.vue index a1479d6..6100442 100644 --- a/layers/components/blocks/slide/Fade.vue +++ b/layers/components/blocks/slide/Fade.vue @@ -15,6 +15,8 @@ const props = withDefaults(defineProps(), { pagination: true, }) +const splideRef = ref() + const options = computed((): ResponsiveOptions => { return { type: 'fade', @@ -24,6 +26,8 @@ const options = computed((): ResponsiveOptions => { speed: 600, updateOnMove: true, autoplay: props.autoplay, + pauseOnHover: false, + pauseOnFocus: false, arrows: props.arrows, pagination: props.pagination, classes: { @@ -36,10 +40,14 @@ const options = computed((): ResponsiveOptions => { }, } }) + +defineExpose({ + splide: computed(() => splideRef.value?.splide), +}) diff --git a/layers/components/blocks/slide/Thumbnail.vue b/layers/components/blocks/slide/Thumbnail.vue index 7f1114c..316b888 100644 --- a/layers/components/blocks/slide/Thumbnail.vue +++ b/layers/components/blocks/slide/Thumbnail.vue @@ -179,7 +179,7 @@ onBeforeUnmount(() => { } .thumbnail-splide { - @apply overflow-hidden flex justify-center w-screen mt-[20px] mx-[-20px] sm:mx-[-40px] md:w-auto md:mx-0 md:px-[120px] md:mt-[28px]; + @apply overflow-hidden flex justify-center w-screen mt-[20px] mx-[-20px] sm:mx-[-40px] md:max-w-[100%] md:w-fit md:mx-auto md:px-[120px] md:mt-[28px]; } .thumbnail-splide:deep(.splide__track) { @apply !px-[20px] sm:!px-[40px] md:!px-[0]; diff --git a/layers/composables/useAnalytics.ts b/layers/composables/useAnalytics.ts index 95c0f0d..119ce76 100644 --- a/layers/composables/useAnalytics.ts +++ b/layers/composables/useAnalytics.ts @@ -81,7 +81,6 @@ const findValueFromOption = (target: string, { options = {} }: any) => { * @param {object} options */ const sendGA = (analytics: AnalyticsDetailType, { options = {} }: any) => { - console.log('πŸš€ ~ 1111 sendGA ~ analytics:', analytics) try { const { gtag } = useGtag() diff --git a/layers/composables/useTemplateRegistry.ts b/layers/composables/useTemplateRegistry.ts index a436101..a19f1fd 100644 --- a/layers/composables/useTemplateRegistry.ts +++ b/layers/composables/useTemplateRegistry.ts @@ -4,6 +4,7 @@ import GrVisual03 from '#layers/templates/GrVisual03/index.vue' import GrGallery01 from '#layers/templates/GrGallery01/index.vue' import GrGallery02 from '#layers/templates/GrGallery02/index.vue' import GrGallery03 from '#layers/templates/GrGallery03/index.vue' +import GrDetail01 from '#layers/templates/GrDetail01/index.vue' const templateRegistry = { GR_VISUAL_01: { component: GrVisual01 }, @@ -13,7 +14,7 @@ const templateRegistry = { GR_GALLERY_02: { component: GrGallery02 }, GR_GALLERY_03: { component: GrGallery03 }, // GR_BOARD_01: { component: GrBoard01 }, - // GR_DETAIL_01: { component: GrDetail01 }, + GR_DETAIL_01: { component: GrDetail01 }, // GR_DETAIL_02: { component: GrDetail02 }, // GR_DETAIL_03: { component: GrDetail03 }, // GR_CONTENTS_01: { component: GrContents01 }, diff --git a/layers/layouts/promotion.vue b/layers/layouts/promotion.vue index add72a8..712d3d7 100644 --- a/layers/layouts/promotion.vue +++ b/layers/layouts/promotion.vue @@ -1,5 +1,5 @@