diff --git a/layers/components/widgets/ButtonList.vue b/layers/components/widgets/ButtonList.vue index 098b5d6..6972df9 100644 --- a/layers/components/widgets/ButtonList.vue +++ b/layers/components/widgets/ButtonList.vue @@ -5,12 +5,6 @@ import type { } from '#layers/types/api/pageData' import type { ButtonType } from '#layers/types/components/button' -/** 어드민 버튼 유형 (시스템 버튼 / 이미지 버튼) */ -const BUTTON_CATEGORY = { - SYSTEM: 'SYSTEM', // 시스템 버튼 - IMAGE: 'IMAGE', // 이미지 버튼 -} as const - /** 어드민 버튼 타입 */ const BUTTON_ACTION_TYPE = { URL: 'URL', @@ -26,16 +20,6 @@ const OS_TYPE = { PC: 1, } as const -const MARKET_TYPE = { - PC: 'pc', - GOOGLE_PLAY: 'google_play', - APP_STORE: 'app_store', -} as const - -const LINK_TARGET = { - BLANK: '_blank', -} as const - interface Props { resourcesData: PageDataResourceGroup[] buttonSize?: string @@ -58,8 +42,7 @@ const buttonList = computed( /** 버튼 유형이 '시스템 버튼'인지 확인 */ const isSystemButton = (button: PageDataResourceGroup): boolean => { - // [TODO] 어디민 개발 후 수정 필요 - return button.btn_info?.btn_category === BUTTON_CATEGORY.SYSTEM + return button.btn_info?.btn_category === 'system' } /** 버튼 타입이 '게임 실행'인지 확인 */ @@ -81,7 +64,7 @@ const getButtonType = (btnInfo?: PageDataResourceGroupBtnInfo): ButtonType => { const target = btnInfo?.detail?.action?.link_target if (btnType === BUTTON_ACTION_TYPE.URL && target) { - return target === LINK_TARGET.BLANK ? 'external' : 'internal' + return target === '_blank' ? 'external' : 'internal' } if (btnType === BUTTON_ACTION_TYPE.DOWNLOAD) return 'download' @@ -95,11 +78,11 @@ const isRunButtonVisible = (btnInfo: PageDataResourceGroupBtnInfo): boolean => { const marketType = btnInfo?.detail?.market_type switch (marketType) { - case MARKET_TYPE.PC: + case 'pc': return false - case MARKET_TYPE.GOOGLE_PLAY: + case 'google_play': return device.isAndroid - case MARKET_TYPE.APP_STORE: + case 'app_store': return device.isApple default: return true @@ -209,20 +192,17 @@ const handleButtonClick = (button: PageDataResourceGroup) => { " type="duplication" :platform="button.btn_info?.detail?.market_type" - :background-color="getColorCodeFromData(button.btn_info, 'btn')" - :text-color="getColorCodeFromData(button.btn_info, 'txt')" @click="handleButtonClick(button)" > {{ button.btn_info?.txt_btn_name }} - diff --git a/layers/types/api/pageData.ts b/layers/types/api/pageData.ts index 5360dca..dea04dc 100644 --- a/layers/types/api/pageData.ts +++ b/layers/types/api/pageData.ts @@ -89,6 +89,7 @@ export interface PageDataResourceGroupBtnInfo extends ColorObject { btn_category: string txt_btn_name: string detail: Record + res_path?: string disabled?: boolean use_game_font: 0 | 1 // 0: 사용하지 않음, 1: 사용함 }