feat: 미리보기 팝업 header 컴포넌트에 적용

This commit is contained in:
2025-05-24 00:47:27 +09:00
parent a27e9f1cdd
commit 6a7218b8ce
12 changed files with 204 additions and 18 deletions
@@ -1,4 +1,5 @@
export * from "./client";
export * from "./menu";
export * from "./popup";
export * from "./site";
export * from "./user";
@@ -0,0 +1,69 @@
import { getApiClient } from "./client";
import { ENDPOINT } from "../config";
export interface PopupInfo {
popupSn: number;
popupTypeCd: string;
popupTypeNm: string;
contsTypeCd: string;
contsTypeNm: string;
popupTtl: string;
popupCn: string;
popupWdth: number;
popupHgt: number;
popupVtclPstn: number;
popupHrzntltyPstn: number;
popupEndUseYn: string;
popupLnkgUrl: string;
atflCd: string;
useYn: string;
regDt: string;
mdfcnDt: string;
rgTrNm: string;
mdfrNm: string;
}
interface SortConfig {
empty: boolean;
sorted: boolean;
unsorted: boolean;
}
interface PageableConfig {
sort: SortConfig;
offset: number;
pageNumber: number;
pageSize: number;
paged: boolean;
unpaged: boolean;
}
interface PageableList<T> {
content: T[];
pageable: PageableConfig;
sort: SortConfig;
totalPages: number;
totalElements: number;
number: number;
numberOfElements: number;
size: number;
first: boolean;
last: boolean;
empty: boolean;
}
const client = getApiClient();
export const getPopupList = async () => {
const response = await client.get<PageableList<PopupInfo>>(
`${ENDPOINT.CMS_SERVICE.POPUPS}`,
);
return response.data;
};
export const getPopupInfo = async (popupSn: number) => {
const response = await client.get<PopupInfo>(
`${ENDPOINT.CMS_SERVICE.POPUPS}/${popupSn}`,
);
return response.data;
};