import { smartPopupApi } from '../utils/api'; import useSWR from 'swr'; import { PopupInterface } from '../type'; export interface UseSmartPopupParams { smartPopupId: number; websiteId: number; smartActivationClientAppId: string; } export const useSmartPopup = ({ smartPopupId, smartActivationClientAppId, }: UseSmartPopupParams) => { const canBeAccessSmartPopup = !!smartActivationClientAppId; const { data, error, mutate } = useSWR( canBeAccessSmartPopup && smartPopupId ? `/smart-activation/popups/${smartPopupId}` : null, async () => { if (smartPopupId) return await smartPopupApi.getSmartPopups({ ids: smartPopupId, clientAppId: smartActivationClientAppId, }); }, { revalidateOnFocus: false, }, ); const popup: PopupInterface = data?.data?.popups?.[0]; const loadingGetPopup = !data && !error; return { popupDetail: popup, mutatePopup: mutate, loadingGetPopup, }; };