{"version":3,"file":"static/chunks/699-e83d1786de1c471a.js","mappings":"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","sources":["webpack://_N_E/./src/components/Form/ToggleDarkMode.tsx","webpack://_N_E/./src/components/Icon/IconLock.tsx","webpack://_N_E/./src/components/Icon/IconSignOutAlt.tsx","webpack://_N_E/./src/components/Icon/IconStatus.tsx","webpack://_N_E/./src/components/Icon/IconUser.tsx","webpack://_N_E/./src/components/Icon/IconApperance.tsx","webpack://_N_E/./src/components/Dropdown/Dropdown.tsx","webpack://_N_E/./src/components/Icon/IconBell.tsx","webpack://_N_E/./src/modules/Notification/index.tsx","webpack://_N_E/./src/components/Icon/IconLogoTextWhite.tsx","webpack://_N_E/./src/modules/Home/HomeHeader.tsx","webpack://_N_E/./src/components/Modal/modalStore.ts","webpack://_N_E/./src/components/Chip/JpChip.tsx","webpack://_N_E/./src/components/PageHeader/PageHeaderDesktop.tsx","webpack://_N_E/./src/components/Tabs/tabsStore.ts","webpack://_N_E/./src/modules/Home/HomeLogo.tsx","webpack://_N_E/./src/modules/Home/homeApi.ts","webpack://_N_E/./src/modules/Notification/NotificationContent.tsx","webpack://_N_E/./src/modules/Notification/notifStore.ts","webpack://_N_E/./src/modules/Tenant/learningHourStore.ts"],"sourcesContent":["import { useSystemStore } from \"components/PageHeader/systemStore\";\nimport { trackEvent, trackEventGA, trackEventGTM } from \"lib/amplitude\";\nimport Images from \"next/image\";\nimport { useEffect } from \"react\";\n\nexport type Props = {\n id?: string;\n onChange?: (a: any) => void;\n className?: string;\n checked?: boolean;\n selected?: string;\n isSwitch?: boolean;\n onUpdateTheme?: (a: any) => void;\n};\n\nconst ToggleDarkMode: React.FC = ({\n className,\n onChange,\n id,\n checked,\n selected,\n isSwitch = false,\n onUpdateTheme,\n}) => {\n const [theme, allThemes, setTheme, setAllTheme] = useSystemStore((state) => [\n state.theme,\n state.allThemes,\n state.setTheme,\n state.setAllTheme,\n ]);\n\n console.log(\"🚀 theme\", theme);\n\n useEffect(() => {\n if (theme === \"dark\") {\n trackEventGTM({\n event: \"dark_mode_s\",\n property: {\n dark_mode: true,\n },\n });\n trackEventGA({\n event: \"dark_mode_s\",\n property: {\n dark_mode: true,\n },\n });\n }\n }, [theme]);\n\n if (isSwitch) {\n return (\n <>\n
\n
\n\n \n \n */}\n\n {theme == \"dark\" ? : }\n \n \n \n \n );\n } else {\n return (\n onChange(allThemes.find((a) => a.active)?.id)}\n >\n {\n {\n light: (\n \n ),\n dark: (\n \n ),\n system: (\n \n ),\n }[allThemes.find((a) => a.active)?.id]\n }\n \n );\n }\n};\n\nexport default ToggleDarkMode;\n\nexport const IconSun = ({ color }) => {\n return (\n \n \n \n );\n};\n\nexport const IconMoon = ({ color }) => {\n return (\n \n \n \n );\n};\n","type Props = {\n size?: number;\n className?: string;\n};\n\nexport const IconLock: React.FC = ({\n size = 24,\n className = \"fill-neutral-40\",\n}) => {\n return (\n \n \n \n );\n};\n","import React from \"react\";\n\ntype Props = {\n size?: number;\n className?: string;\n};\n\nconst IconSignOutAlt: React.FC = ({\n size = 24,\n className = \"fill-neutral-80\",\n}) => {\n return (\n \n \n \n );\n};\n\nexport default IconSignOutAlt;\n","import React from \"react\";\n\ntype Props = {\n size?: number;\n color?: string;\n className?: string;\n};\n\nexport const IconStatus: React.FC = ({\n size = 24,\n // color = \"#19093A\",\n className = \"fill-neutral-80\",\n}) => {\n return (\n \n \n \n );\n};\n","import React from \"react\";\n\ntype Props = {\n size?: number;\n className?: string;\n};\n\nconst IconUser: React.FC = ({\n size = 24,\n className = \"fill-neutral-80\",\n}) => {\n return (\n \n \n \n );\n};\n\nexport default IconUser;\n","import React from \"react\";\n\ntype Props = {\n size?: number;\n className?: string;\n};\n\nconst IconApperance: React.FC = ({\n size = 24,\n className = \"fill-neutral-80\",\n}) => {\n return (\n \n \n \n );\n};\n\nexport default IconApperance;\n","import { useEffect, useState, ReactNode } from \"react\";\nimport DropdownJSON from \"data/locales/id/dropdown.json\";\n\n///ICON\nimport { IconLock } from \"components/Icon/IconLock\";\nimport { IconStatus } from \"components/Icon/IconStatus\";\nimport IconUser from \"components/Icon/IconUser\";\nimport IconSignOutAlt from \"components/Icon/IconSignOutAlt\";\nimport { useAuthLogoutApi } from \"modules/Auth/authApi\";\nimport { useRouter } from \"next/router\";\nimport { useAuthStore } from \"modules/Auth/authStore\";\nimport IconApperance from \"components/Icon/IconApperance\";\nimport ToggleDarkMode from \"components/Form/ToggleDarkMode\";\nimport Link from \"next/link\";\n///ICON\n\nexport const Dropdown: React.FC<{\n id?: string;\n theme?: string;\n children?: ReactNode;\n className?: string;\n included?: boolean;\n}> = ({ id = \"\", theme = \"\", children, className, included }) => {\n const [dataDropdown, setDataDropdown] = useState([]);\n\n useEffect(() => {\n if (id) {\n setDataDropdown(DropdownJSON[id]);\n }\n }, [id]);\n\n const renderIcon = (icon: string) => {\n switch (icon) {\n case \"user\":\n return ;\n case \"status\":\n return ;\n\n case \"lock\":\n return ;\n\n case \"sign-out\":\n return ;\n\n case \"apperance\":\n return ;\n default:\n return ;\n }\n };\n\n const authLogoutApi = useAuthLogoutApi();\n const router = useRouter();\n const authStore = useAuthStore();\n\n return (\n \n {/* {id && (\n
\n {dataDropdown &&\n dataDropdown.length > 0 &&\n dataDropdown.map((a, index) => (\n \n \n \n {a.icon &&
{renderIcon(a.icon)}
}\n {a.label}\n \n \n\n {a.id == 4 && }\n
\n ))}\n \n )} */}\n\n {children &&
{children}
}\n \n );\n};\n","import { useSystemStore } from \"components/PageHeader/systemStore\";\nimport Image from \"next/image\";\nimport React from \"react\";\n\ntype Props = {\n size?: number;\n color?: string;\n className?: string;\n};\n\nexport const IconBell: React.FC = ({\n size = 14,\n color = \"#FFFFFF\",\n className = \"fill-purple80_to_white\",\n}) => {\n const theme = useSystemStore((state) => state.theme);\n\n return (\n \"notif\"\n\n );\n};\n","import { Dropdown } from \"components/Dropdown/Dropdown\";\nimport { IconBell } from \"components/Icon/IconBell\";\nimport { trackEvent } from \"lib/amplitude\";\nimport { useIsSubdomain, useIsTenant } from \"lib/host\";\nimport { useAuthStore } from \"modules/Auth/authStore\";\nimport { useGetNotificationApi } from \"modules/Home/homeApi\";\nimport NotificationContent from \"modules/Notification/NotificationContent\";\nimport { useNotifStore } from \"modules/Notification/notifStore\";\nimport Link from \"next/link\";\nimport { useRouter } from \"next/router\";\nimport React, { useEffect, useRef, useState } from \"react\";\n\ntype Props = {\n isShowPopupNotif?: boolean;\n setIsShowPopupNotif?: (item: boolean) => void;\n className?: string;\n isIconTransparent?: boolean;\n};\n\nexport const NotificationComponent: React.FC = ({\n isShowPopupNotif,\n setIsShowPopupNotif,\n className = \"\",\n isIconTransparent = false,\n}) => {\n const isDesktop = typeof window !== \"undefined\" && window.innerWidth > 720;\n const isTenantURL = useIsTenant();\n const isSubdomainTenant = useIsSubdomain();\n const router = useRouter();\n const { loginState } = useAuthStore((state) => ({\n loginState: state.loginState,\n }));\n\n const notifications = useGetNotificationApi();\n // const isMounted = useRef(false);\n const { allNotification, setAllNotif } = useNotifStore((state) => ({\n allNotification: state.allNotification,\n setAllNotif: state.setAllNotif,\n }));\n\n useEffect(() => {\n if (loginState == \"LOGIN\") {\n notifications.doFetch(\n {},\n {\n onSuccess(res) {\n setAllNotif(res as any);\n },\n onError(err) {},\n }\n );\n }\n }, []);\n\n const trackEventClick = () => {\n const eventProperty = {\n page: router.pathname,\n is_opened: !isShowPopupNotif,\n total_unread_message: allNotification?.totalUnread,\n };\n\n trackEvent({\n event: \"notification_open_a\",\n property: eventProperty,\n });\n };\n\n const onClickNotification = () => {\n setIsShowPopupNotif(!isShowPopupNotif);\n trackEventClick();\n };\n\n const [timeoutNotif, setTimeoutNotif] = useState(null);\n\n const events = {\n event: \"notification_hover_a\",\n property: {\n page: router?.pathname,\n },\n };\n\n const mouseLeaveHandler = () => {\n if (!isDesktop) return;\n \n if (timeoutNotif) {\n clearTimeout(timeoutNotif);\n }\n \n const timeout = setTimeout(() => {\n setIsShowPopupNotif(false);\n }, 200);\n \n setTimeoutNotif(timeout);\n };\n \n const mouseEnterHandler = () => {\n if (!isDesktop) return;\n \n if (timeoutNotif) {\n clearTimeout(timeoutNotif);\n }\n \n setIsShowPopupNotif(true);\n \n const timeout = setTimeout(() => {\n trackEvent({ ...(events as any) });\n }, 1000);\n \n setTimeoutNotif(timeout);\n }; \n\n const colorIcon = isIconTransparent ? \"#551FC1\" : \"#FFFFFF\";\n return (\n \n
\n \n \n\n {allNotification?.totalUnread !== \"0\" && (\n
\n {allNotification?.totalUnread}\n
\n )}\n\n \n \n \n
\n \n \n );\n};\n","import React from \"react\";\n\ntype Props = {\n size?: number;\n};\n\nconst IconLogoTextWhite: React.FC = ({ size = 48 }) => {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default IconLogoTextWhite;\n","import { useEffect, useState } from \"react\";\nimport Button from \"components/Button\";\nimport { IconBell } from \"components/Icon/IconBell\";\nimport IconLogoTextWhite from \"components/Icon/IconLogoTextWhite\";\nimport { SkeletonCircle, SkeletonWrapper } from \"components/Skeleton/Skeleton\";\nimport { trackEvent } from \"lib/amplitude\";\nimport { useAuthStore } from \"modules/Auth/authStore\";\nimport { IconSearch } from \"components/Icon/IconSearch\";\nimport Link from \"next/link\";\nimport { useGetNotificationApi } from \"./homeApi\";\nimport { getCookie, isCustomDomain } from \"lib/helper\";\nimport {\n getSubDomain,\n isJambiURL,\n isMalukuURL,\n isMuaroJambiURL,\n isPesawaranURL,\n isTrenggalekURL,\n useIsBusiness,\n useIsSubdomain,\n useIsTenant,\n} from \"lib/host\";\nimport { GoKampusLogo } from \"components/PageHeader/PageHeaderDesktop\";\nimport { useRouter } from \"next/router\";\nimport { isBrowser } from \"lib/ssr\";\nimport InputSwitch from \"components/Form/InputSwitch\";\nimport { Dropdown } from \"components/Dropdown/Dropdown\";\nimport { ModalSearchBox } from \"components/InstantSearchBox/ModalSearchBox\";\nimport FieldSearch from \"components/Form/FieldSearch\";\nimport { IconLogo } from \"components/Icon/IconLogo\";\nimport { HomeLogo } from \"./HomeLogo\";\nimport useTranslation from \"next-translate/useTranslation\";\nimport { NotificationComponent } from \"modules/Notification\";\nimport Images from \"next/image\";\nimport { BackButton } from \"components/PageHeader/BackButton\";\nimport { useRedirectPreviousPath } from \"modules/Auth/authHooks\";\nimport { useSystemStore } from \"components/PageHeader/systemStore\";\nimport ToggleDarkMode from \"components/Form/ToggleDarkMode\";\n\nexport const HomeHeader = ({ isTransparent }) => {\n const { loginState, currentUser } = useAuthStore((state) => ({\n loginState: state.loginState,\n currentUser: state.currentUser,\n }));\n const [show, setShow] = useState(false);\n const [isShowPopupNotif, setIsShowPopupNotif] = useState(false);\n const isTenant = useIsTenant();\n const notifications = useGetNotificationApi();\n const isSubdomainTenant = useIsSubdomain();\n const isTenantURL = useIsTenant();\n const isBusinessURL = useIsBusiness();\n const router = useRouter();\n const isLMS = router.pathname.includes(\"/course/[courseSlug]\");\n const { t } = useTranslation(\"common\");\n\n const subDomain = isBrowser() ? getSubDomain(window.location.hostname) : null;\n // Condition for wavemaker\n const isShowLanguageToggle = subDomain == \"wavemaker\" ? true : false;\n\n useEffect(() => {\n // not fetch api notif exclude main website\n //\n // Arthur: Disabled this because double call\n // if (\n // loginState == \"LOGIN\" &&\n // !isSubdomainTenant &&\n // !isTenantURL &&\n // !isBusinessURL\n // ) {\n // notifications.doFetch({});\n // }\n }, [loginState]);\n\n const { locale, locales, asPath, push } = router;\n //@ts-ignore\n const otherLocale = locales?.find((cur) => cur !== locale);\n\n const changeLanguage = () => {\n trackEvent({\n event: \"language_a\",\n property: {\n changed_to: otherLocale,\n },\n });\n //@ts-ignore\n push(asPath, undefined, { locale: otherLocale });\n };\n // only query on preview LMS on moodle to bottom tabs contents\n const usePreview = router?.query?.usePreview == \"true\";\n\n const renderUser = () => {\n switch (loginState) {\n case \"IDLE\":\n case \"LOADING\":\n return (\n \n \n \n );\n\n case \"NOT_LOGIN\":\n return (\n {\n trackEvent({\n event: \"homepage_signup_a\",\n });\n }}\n >\n \n Daftar\n \n \n );\n case \"LOGIN\":\n const initialName = currentUser?.name\n ? currentUser?.name[0].toUpperCase() ?? \"U\"\n : currentUser?.email\n ? currentUser?.email[0].toUpperCase() ?? \"U\"\n : \"U\";\n const ButtonProfile = (\n
\n
\n {/* {((isTenantURL && !isSubdomainTenant) ||\n isShowLanguageToggle) && (\n \n )} */}\n {(!isTenantURL || isSubdomainTenant) && (\n
\n {initialName}\n
\n )}\n
\n\n {(!isTenantURL || isSubdomainTenant) && (\n
\n );\n\n return ButtonProfile;\n\n default:\n null;\n }\n };\n\n const totalUnreadMessage = notifications?.data?.totalUnread;\n\n const renderNotifications = () => {\n if (loginState == \"LOGIN\") {\n // Arthur: Disabled this because double call\n // return (\n // \n // );\n }\n };\n\n const isB2B = useIsTenant() || useIsSubdomain();\n const renderSearch = () => {\n return (\n {\n trackEvent({\n event: \"homepage_search_a\",\n });\n }}\n // @ts-ignore\n href={isB2B ? \"/search\" : \"/explore\"}\n >\n \n \n );\n };\n\n const trackNavbar = (type: string) => {\n trackEvent({\n event: \"nav_a\",\n property: {\n button_type: type,\n page: router.pathname,\n },\n });\n };\n\n const referralCode =\n getCookie(\"ref_code_gk\") && getCookie(\"ref_code_gk\") !== \"null\"\n ? getCookie(\"ref_code_gk\")\n : typeof window !== \"undefined\"\n ? new URLSearchParams(window.location.search).get(\"referral\")\n : \"\";\n\n // only for maluku tenant\n const isMalukuTenant =\n typeof window !== \"undefined\" && isMalukuURL(window.location.hostname);\n const isPesawaranTenant =\n typeof window !== \"undefined\" && isPesawaranURL(window.location.hostname);\n const isTrenggalekTenant =\n typeof window !== \"undefined\" && isTrenggalekURL(window.location.hostname);\n const isMuaroJambiTenant =\n typeof window !== \"undefined\" && isMuaroJambiURL(window.location.hostname);\n const isJambiKotaTenant =\n typeof window !== \"undefined\" && isJambiURL(window.location.hostname);\n\n const [theme] = useSystemStore((state) => [state.theme]);\n\n return (\n
\n {isLMS ? (\n
\n router.push(\"/\") : undefined}\n />\n {/* {isMalukuTenant ? (\n router.push(\"/\")} />\n ) : (\n trackNavbar(\"goKampus Logo\") : undefined\n }\n >\n \n \n )} */}\n\n
\n setShow(true)}\n placeholder={\n useIsTenant() ? t(\"searchCoursesTruncate\") : t(\"searchCourses\")\n }\n isShow={show}\n setModal={(a) => setShow(a)}\n classWidth=\"w-full\"\n />\n
\n\n setShow(false)} />\n
\n ) : (\n
\n trackNavbar(\"goKampus Logo\") : undefined\n }\n >\n {!isTransparent ? (\n // NOTE: Anies check again, this is only to fixed venteny issue\n <>\n {isMalukuTenant ? (\n <>\n {theme == \"light\" && (\n \n )}\n\n {theme == \"dark\" && (\n \n )}\n \n ) : isPesawaranTenant ? (\n \n ) : isTrenggalekTenant ? (\n // || referralCode == \"trenggalekkab\"\n \n ) : isMuaroJambiTenant ? (\n \n ) : isJambiKotaTenant ? (\n \n ) : (\n \n )}\n \n ) : (\n \n )}\n \n
\n {/* TEMPORARY HIDE */}\n {/* {isTenantURL || isSubdomainTenant ? (\n \n ) : null} */}\n \n {!usePreview && renderNotifications()}\n {renderSearch()}\n
\n
\n )}\n
\n );\n};\n","import createStore from \"zustand\";\n\nexport type ModalStore = {\n // state\n isShow: boolean | false;\n isShowModal: boolean;\n\n // actions\n showModalReferral: (item: boolean) => void;\n closeModalReferral: () => void;\n openModal: (value: boolean) => void;\n};\n\nexport const useModalStore = createStore((set) => ({\n // state\n isShow: false,\n isShowModal: false,\n\n // actions\n showModalReferral(item) {\n set({ isShow: item });\n },\n closeModalReferral() {\n set({ isShow: false });\n },\n openModal(value) {\n set({ isShowModal: value });\n },\n}));\n","import { useSystemStore } from \"components/PageHeader/systemStore\";\nimport { useTabsStore } from \"components/Tabs/tabsStore\";\nimport { useIsDesktop } from \"lib/device\";\nimport { useJPTrackers } from \"modules/Tenant/homeTenantApi\";\nimport { useLearningHourStore } from \"modules/Tenant/learningHourStore\";\nimport Image from \"next/image\";\nimport { useRouter } from \"next/router\";\nimport { useEffect, useState } from \"react\";\n\nexport default function JpChip() {\n const userLearningHour = useJPTrackers();\n const { learningHour, setLearningHour } = useLearningHourStore();\n const [jpInfo, setJpInfo] = useState(false);\n const { setSelectedTab } = useTabsStore();\n const [theme] = useSystemStore((state) => [state.theme]);\n const isDesktop = useIsDesktop();\n const router = useRouter();\n\n useEffect(() => {\n userLearningHour.doFetch(\n {},\n {\n onSuccess(data: any) {\n setLearningHour(data?.data?.learning_hours);\n },\n onError(err) {\n const error: any = err.getActualType();\n console.log(error);\n },\n }\n );\n }, []);\n\n return (\n
\n setJpInfo(true) : () => {}\n }\n onMouseLeave={\n isDesktop ? () => setJpInfo(false) : () => {}\n }\n className=\"cursor-pointer px-[14px] py-[8px] rounded-100 flex gap-8 items-center justify-center text-b1 text-purple60_to_dark10 bg-purple05_to_dark80\"\n onClick={() => {\n setSelectedTab({\n id: \"kursus-selesai\",\n label: \"Kursus Selesai\",\n title: \"Kursus yang Kamu Ambil\",\n value: \"finished\",\n });\n\n router.replace({\n pathname: \"/my-class\",\n query: {\n tabId: \"kursus-selesai\",\n },\n });\n }}\n >\n {theme === \"dark\" ? (\n \n ) : (\n \n )}\n \n {learningHour} JP\n \n
\n\n {jpInfo && (\n \n Progress Belajar : {learningHour} JP\n \n )}\n \n )\n}","import { ContainerDesktop } from \"components/Container\";\nimport Link from \"next/link\";\nimport React, { ReactNode, useState, useEffect, useRef } from \"react\";\nimport Button from \"components/Button\";\nimport { useAuthStore } from \"modules/Auth/authStore\";\nimport {\n SkeletonCircle,\n SkeletonRect,\n SkeletonWrapper,\n} from \"components/Skeleton/Skeleton\";\nimport { trackEvent, trackEventGA, trackEventGTM } from \"lib/amplitude\";\nimport { useRouter } from \"next/router\";\nimport { useIsDesktop } from \"lib/device\";\nimport {\n getSubDomain,\n isBlueBirdURL,\n isBankingURL,\n isGokAresURL,\n isJambiURL,\n isMalukuURL,\n isMenkesURL,\n isMenpanURL,\n isMuaroJambiURL,\n isPesawaranURL,\n isPpdsmAparaturURL,\n isTrenggalekURL,\n isWonderfulLearningURL,\n useIsSubdomain,\n useIsTenant,\n isSubdomainBluebird,\n} from \"lib/host\";\nimport InstantSearchBox from \"components/InstantSearchBox/InstantSearchBox\";\nimport useTranslation from \"next-translate/useTranslation\";\nimport Images from \"next/image\";\nimport { HomeLogo } from \"modules/Home/HomeLogo\";\nimport { NotificationComponent } from \"modules/Notification\";\nimport { isBrowser } from \"lib/ssr\";\nimport { generateIndexName } from \"lib/algolia\";\nimport { HomeHeader } from \"modules/Home/HomeHeader\";\nimport { IconSearch } from \"components/Icon/IconSearch\";\nimport { CONST } from \"lib/const\";\nimport ToggleDarkMode from \"components/Form/ToggleDarkMode\";\nimport { useSystemStore } from \"./systemStore\";\nimport { useModalStore } from \"components/Modal/modalStore\";\nimport { useSearchStore } from \"components/InstantSearchBox/searchStore\";\nimport { useJPTrackers } from \"modules/Tenant/homeTenantApi\";\nimport { useLearningHourStore } from \"modules/Tenant/learningHourStore\";\nimport { useTabsStore } from \"components/Tabs/tabsStore\";\nimport { getCookie } from \"lib/helper\";\n// import PoinChip from \"components/Chip/PoinChip\";\nimport Image from \"next/image\";\nimport IconUser from \"components/Icon/IconUser\";\nimport { IconStatus } from \"components/Icon/IconStatus\";\nimport { IconLock } from \"components/Icon/IconLock\";\nimport IconSignOutAlt from \"components/Icon/IconSignOutAlt\";\nimport IconApperance from \"components/Icon/IconApperance\";\nimport JpChip from \"components/Chip/JpChip\";\n\nconst menus = [\n // {\n // href: {\n // pathname: \"/\",\n // },\n // text: \"Home\",\n // },\n {\n href: {\n //@ts-ignore\n pathname: \"/explore\",\n },\n text: \"Eksplor\",\n },\n {\n href: {\n pathname: \"/my-class\",\n },\n text: \"Kelas Saya\",\n },\n // {\n // href: {\n // pathname: \"#courses\",\n // },\n // text: \"Kursus\",\n // },\n // {\n // href: {\n // pathname: \"/downloads\",\n // },\n // text: \"Downloads\",\n // },\n {\n //@ts-ignore\n href: \"https://business.gokampus.com?utm_source=gokampus&utm_medium=textlink-header\",\n text: \"goKampus Business\",\n },\n];\n\nconst newMenus = [\n // {\n // href: {\n // pathname: \"/\",\n // },\n // text: \"Home\",\n // },\n {\n href: {\n //@ts-ignore\n pathname: \"/explore\",\n },\n text: \"Eksplor\",\n },\n {\n href: {\n pathname: \"/my-class\",\n },\n text: \"Kelas Saya\",\n },\n // {\n // href: {\n // pathname: \"#courses\",\n // },\n // text: \"Kursus\",\n // },\n {\n href: {\n pathname: \"/dashboard\",\n },\n text: \"Dashboard\",\n },\n // {\n // href: {\n // pathname: \"/downloads\",\n // },\n // text: \"Downloads\",\n // },\n {\n //@ts-ignore\n href: \"https://business.gokampus.com?utm_source=gokampus&utm_medium=textlink-header\",\n text: \"goKampus Business\",\n },\n];\n\nconst useOutsideClick = (callback: () => void) => {\n const ref = React.useRef();\n\n React.useEffect(() => {\n const handleClick = (event: any) => {\n if (ref.current && !(ref.current as any)?.contains(event.target)) {\n callback();\n }\n };\n\n document.addEventListener(\"click\", handleClick, true);\n\n return () => {\n document.removeEventListener(\"click\", handleClick, true);\n };\n }, [ref]);\n\n return ref;\n};\n\nexport const PageHeaderDesktop: React.FC<{\n headerRef?: any;\n children?: ReactNode;\n isTransparent?: boolean;\n hideSearchbar?: boolean;\n onChangeSearch?: () => void;\n}> = ({\n headerRef,\n children,\n isTransparent,\n onChangeSearch,\n hideSearchbar = false,\n}) => {\n const { loginState, currentUser } = useAuthStore((state) => ({\n loginState: state.loginState,\n currentUser: state.currentUser,\n }));\n const [theme] = useSystemStore((state) => [state.theme]);\n const isSubdomainTenant = useIsSubdomain();\n const isB2B = useIsSubdomain() || useIsTenant();\n const isDesktop = useIsDesktop();\n const router = useRouter();\n const isLMS = router.pathname.includes(\"/course/[courseSlug]\");\n const [LINKS, setLinks] = useState([]);\n const { indexName, setIndexName } = useSearchStore();\n const [showLeaderboard, setShowLeaderboard] = useState(false);\n\n const isGokAresTenant =\n typeof window !== \"undefined\" && isGokAresURL(window.location.hostname);\n\n const tenantJpTracker =\n (currentUser?.tenant !== undefined &&\n [\n \"ppsdmaparatur\",\n // \"menpan\",\n // \"wonderfullearning\",\n \"kemkes\",\n // \"tapinkab\",\n // \"bssn\",\n // \"bkpsdm-bekasikota\",\n // \"maluku-gate\",\n // \"trenggalekkab\",\n // \"bpsdm-sumbar\",\n // \"bpsdm-sulsel\",\n // \"bpsdm-jambi\",\n // \"bpsdmdki\",\n // \"jambikota\",\n // \"muarojambikab\",\n // \"pesawarankab\",\n // \"batam\",\n // \"pusdiklat-komdigi\",\n // \"pusdiklat-kemenkeu\",\n \"kemenperin\",\n ].includes((currentUser?.tenant as any)?.slug)) ||\n [\n \"ppsdmaparatur\",\n // \"menpan\",\n // \"wonderfullearning\",\n \"kemkes\",\n // \"tapinkab\",\n // \"bssn\",\n // \"bkpsdm-bekasikota\",\n // \"maluku-gate\",\n // \"trenggalekkab\",\n // \"bpsdm-sumbar\",\n // \"bpsdm-sulsel\",\n // \"bpsdm-jambi\",\n // \"bpsdmdki\",\n // \"jambikota\",\n // \"muarojambikab\",\n // \"pesawarankab\",\n // \"batam\",\n // \"pusdiklat-komdigi\",\n // \"pusdiklat-kemenkeu\",\n \"kemenperin\",\n ].includes(currentUser?.referral);\n\n // Allowing list of client to show leaderboard\n const clientLeaderboards = [\n \"kemenperin\",\n \"demoplus\",\n \"umkm\",\n \"desa\",\n \"wonderfullearning\",\n \"kapalapi\",\n \"ppsdmaparatur\",\n \"kemkes\",\n // \"bluebird\",\n ];\n\n const subDomain = isBrowser() ? getSubDomain(window.location.hostname) : null;\n const isTenantURL = useIsTenant();\n const { isShowModal } = useModalStore();\n\n // Condition for wavemaker\n const isShowLanguageToggle = subDomain == \"wavemaker\" ? true : false;\n\n useEffect(() => {\n let isAdmin = currentUser && currentUser?.role === \"Tenant Admin\";\n\n if (currentUser && isB2B && isAdmin) {\n setLinks(newMenus);\n } else {\n setLinks(menus);\n }\n }, [isSubdomainTenant, currentUser, isTenantURL]);\n\n const referralCode =\n getCookie(\"ref_code_gk\") && getCookie(\"ref_code_gk\") !== \"null\"\n ? getCookie(\"ref_code_gk\")\n : typeof window !== \"undefined\"\n ? new URLSearchParams(window.location.search).get(\"referral\")\n : \"\";\n\n useEffect(() => {\n let nameOfIndex;\n\n if (loginState === \"LOGIN\" && currentUser) {\n if (\n currentUser?.referral.includes(\"gaji-c\") &&\n currentUser?.referral != \"gaji-c0000117\"\n ) {\n nameOfIndex = generateIndexName(\"gaji\");\n } else if (\n currentUser?.referral.includes(\"gaji-c\") &&\n currentUser?.referral == \"gaji-c0000117\"\n ) {\n nameOfIndex = generateIndexName(currentUser?.referral);\n } else {\n nameOfIndex = generateIndexName(\n window.location.hostname === \"e-learning.bluebirdgroup.com\"\n ? \"bluebird\"\n : currentUser?.referral == \"bssn\"\n ? \"tapinkab\"\n : currentUser?.referral\n );\n }\n setIndexName(nameOfIndex);\n /// Show Leaderboard for freetrial & clientLeaderboards & dev only\n if (\n currentUser?.tenant?.status === \"Trial\" ||\n clientLeaderboards.includes(currentUser?.referral) ||\n CONST.IS_DEV ||\n (isB2B && currentUser?.referral !== \"bluebird\")\n ) {\n setShowLeaderboard(true);\n }\n } else {\n const nameOfIndex = generateIndexName(\n window.location.hostname === \"e-learning.bluebirdgroup.com\"\n ? \"bluebird\"\n : subDomain == \"bssn\"\n ? \"tapinkab\"\n : subDomain\n );\n setIndexName(nameOfIndex);\n }\n }, [currentUser, loginState, referralCode]);\n\n const labels = (a: any) => {\n let labelColor = {\n default: isTransparent ? \"text-white\" : \"text-neutral80_to_dark10\",\n selected: isTransparent ? \"text-white\" : \"text-purple-50\",\n };\n\n return router.pathname == a ? labelColor.selected : labelColor.default;\n };\n\n const ref = useOutsideClick(() => {\n setIsShowPopupNotif(false);\n });\n\n const [dataDropdown, setDataDropdown] = useState([\n {\n id: 1,\n label: \"Profil\",\n icon: \"user\",\n href: \"/account?id=profile\",\n },\n {\n id: 2,\n label: \"Status\",\n icon: \"status\",\n href: \"/account?id=status\",\n },\n {\n id: 3,\n label: \"Ganti Kata Sandi\",\n icon: \"lock\",\n href: \"/account?id=change-password\",\n },\n {\n id: 54,\n label: \"Keluar\",\n icon: \"sign-out\",\n href: \"/logout\",\n },\n ]);\n\n const renderIcon = (icon: string) => {\n switch (icon) {\n case \"user\":\n return ;\n case \"status\":\n return ;\n\n case \"lock\":\n return ;\n\n case \"sign-out\":\n return ;\n\n case \"apperance\":\n return ;\n default:\n return ;\n }\n };\n\n const timeoutRef = useRef(null);\n const [isShowed, setIsShowed] = useState(false);\n\n const handleMouseEnter = () => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n }\n setIsShowed(true);\n };\n\n const handleMouseLeave = () => {\n timeoutRef.current = setTimeout(() => {\n setIsShowed(false);\n }, 200);\n };\n\n const renderUser = () => {\n switch (loginState) {\n case \"IDLE\":\n case \"LOADING\":\n return (\n \n \n \n );\n\n case \"NOT_LOGIN\":\n return (\n {\n trackEvent({\n event: \"homepage_signup_a\",\n });\n\n trackEventGTM({\n event: \"homepage_signup_a\",\n });\n\n trackEventGA({\n event: \"homepage_signup_a\",\n });\n }}\n >\n \n {isB2B ? t(\"login\") : t(\"register\")}\n \n \n );\n case \"LOGIN\":\n const ButtonProfile = (\n
\n
\n {(!isTenantURL || isSubdomainTenant) && (\n \n \n
\n )}\n
\n\n {(!isTenantURL || isSubdomainTenant) && isShowed && (\n \n {dataDropdown &&\n dataDropdown.length > 0 &&\n dataDropdown.map((a, index) => (\n \n \n \n {a.icon &&
{renderIcon(a.icon)}
}\n {a.label}\n \n \n\n {a.id == 4 && }\n \n ))}\n \n )}\n \n );\n return ButtonProfile;\n\n default:\n return <>;\n }\n };\n\n useEffect(() => {\n if (isShowLanguageToggle) {\n const { asPath, push } = router;\n // Change to English\n setTimeout(() => {\n // @ts-ignore\n push(asPath, undefined, { locale: \"en\" });\n }, 200);\n }\n }, [isShowLanguageToggle]);\n\n const [isShowPopupNotif, setIsShowPopupNotif] = useState(false);\n\n // only query on preview LMS on moodle to bottom tabs contents\n const usePreview = router?.query?.usePreview == \"true\";\n\n const trackNavbar = (type: string) => {\n trackEvent({\n event: \"nav_a\",\n property: {\n button_type: type,\n page: router.pathname,\n },\n });\n\n trackEventGTM({\n event: \"nav_a\",\n property: {\n button_type: type,\n page: router.pathname,\n },\n });\n\n trackEventGA({\n event: \"nav_a\",\n property: {\n button_type: type,\n page: router.pathname,\n },\n });\n };\n const { t } = useTranslation(\"common\");\n\n let placeHolder = \"Ingin belajar apa hari ini?\";\n if (isLMS)\n placeHolder = useIsTenant()\n ? t(\"searchCoursesTruncate\")\n : t(\"searchCourses\");\n\n // Desa configuration\n const isMalukuTenant =\n typeof window !== \"undefined\" && isMalukuURL(window.location.hostname);\n const isPesawaranTenant =\n typeof window !== \"undefined\" && isPesawaranURL(window.location.hostname);\n const isTrenggalekTenant =\n typeof window !== \"undefined\" && isTrenggalekURL(window.location.hostname);\n const isMuaroJambiTenant =\n typeof window !== \"undefined\" && isMuaroJambiURL(window.location.hostname);\n const isJambiKotaTenant =\n typeof window !== \"undefined\" && isJambiURL(window.location.hostname);\n\n const isBlueBirdTenant =\n typeof window !== \"undefined\" &&\n (isBlueBirdURL(window.location.hostname) ||\n isSubdomainBluebird(window.location.hostname));\n\n const isBankingTenant =\n typeof window !== \"undefined\" && isBankingURL(window.location.hostname);\n\n const { setSelectedTab } = useTabsStore();\n\n const combineRefs = (element) => {\n if (headerRef) {\n headerRef.current = element;\n }\n ref.current = element;\n };\n\n return (\n <>\n {isDesktop ? (\n \n {/* Dekstop Layout */}\n \n \n trackNavbar(\"goKampus Logo\") : undefined\n }\n >\n
\n {isMalukuTenant ? (\n <>\n {theme == \"light\" && (\n \n )}\n {theme == \"dark\" && (\n \n )}\n \n ) : isPesawaranTenant ? (\n \n ) : isTrenggalekTenant ? (\n \n ) : isMuaroJambiTenant ? (\n \n ) : isJambiKotaTenant ? (\n \n ) : isBlueBirdTenant ? (\n \n ) : isBankingTenant ? (\n \n ) : (\n <>\n {theme == \"dark\" ? (\n \n ) : (\n \n )}\n \n )}\n
\n \n {!usePreview && (\n \n {LINKS && LINKS.length\n ? LINKS.filter((a) =>\n isTenantURL || isSubdomainTenant\n ? ![\"Eksplor\", \"goKampus Business\"].includes(a.text)\n : a\n ).map((l, i) => {\n if (l.text.includes(\"Business\")) {\n return (\n trackNavbar(l.text)}\n rel=\"noopener noreferrer\"\n >\n \n

{l.text}

\n
\n

NEW

\n
\n \n \n );\n } else if (l.text == \"Kelas Saya\") {\n return (\n {\n if (loginState !== \"LOGIN\" && !isTenantURL) {\n router.push(\"/login\");\n } else {\n setSelectedTab({\n id: \"di-pelajari\",\n label: \"Dipelajari\",\n title: \"Lanjutkan Kursusmu\",\n value: \"on_progress\",\n });\n\n router.replace({\n pathname: \"/my-class\",\n query: {\n tabId: \"di-pelajari\",\n },\n });\n }\n }}\n className={\n \"whitespace-nowrap p-12 cursor-pointer \" +\n labels(l.href.pathname)\n }\n >\n {t(l.text)}\n \n );\n } else if (l.text === \"Kursus\") {\n const scrollTo = (id: string) => {\n const element = document.getElementById(id);\n if (element) {\n const elementPosition =\n element.getBoundingClientRect().top +\n window.scrollY;\n const offset = 70;\n\n window.scrollTo({\n top: elementPosition - offset,\n behavior: \"smooth\",\n });\n }\n };\n\n const handleScroll = () => {\n const { pathname } = router;\n\n if (pathname !== \"/\") {\n router.push(\"/\").then(() => {\n scrollTo(\"courses\");\n setTimeout(() => {\n scrollTo(\"corses\");\n }, 300);\n });\n } else {\n scrollTo(\"courses\");\n setTimeout(() => {\n scrollTo(\"courses\");\n }, 300);\n }\n };\n\n return (\n
\n \n {t(l.text)}\n
\n \n );\n } else {\n return (\n trackNavbar(l.text)}\n >\n \n {t(l.text)}\n \n \n );\n }\n })\n : null}\n \n )}\n \n \n {children ? (\n children\n ) : isTenantURL || isSubdomainTenant ? (\n loginState == \"LOGIN\" ? (\n
\n {indexName && (\n \n )}\n\n {(tenantJpTracker || isGokAresTenant) && }\n\n {/* {currentUser?.referral !== \"bluebird\" && (\n \n )} */}\n\n {/* {showLeaderboard ? renderLeaderboard() : null} */}\n {/* */}\n\n {/* {currentUser?.referral !== \"bluebird\" && (\n \n )} */}\n\n
\n\n \n\n \n\n {renderUser()}\n
\n ) : (\n
\n {indexName && (\n \n )}\n {renderUser()}\n
\n )\n ) : (\n
\n \n\n {/* add load condition based on login state when rendering */}\n {\n {\n LOGIN: (\n <>\n \n {renderUser()}\n \n ),\n LOADING: (\n \n {[1, 2].map((el) => (\n \n ))}\n \n ),\n NOT_LOGIN: (\n <>\n \n \n {t(\"login\")}\n \n \n \n \n Daftar\n \n \n \n ),\n }[loginState]\n }\n
\n )}\n \n \n \n ) : (\n <>\n {!isLMS && (\n \n {/* Mobile Layout */}\n
\n
\n \n
\n
\n \n )}\n \n )}\n \n );\n};\n\nexport const GoKampusLogo: React.FC<{ useWhite?: boolean }> = ({\n useWhite = false,\n}) => {\n if (useWhite) {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n } else {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n }\n};\n","import createStore from \"zustand\";\n\n// Custom data tabs by \"id\" props\nexport const tabsData = {\n MyClass: [\n {\n id: \"di-pelajari\",\n label: \"Dipelajari\",\n title: \"Lanjutkan Kursusmu\",\n value: \"on_progress\",\n },\n {\n id: \"kursus-selesai\",\n label: \"Kursus Selesai\",\n title: \"Kursus yang Kamu Ambil\",\n value: \"finished\",\n },\n // { id: \"riwayat-transaksi\", label: \"Riwayat Transaksi\", title: \"\", value: null },\n ],\n MyClassPlus: [\n {\n id: \"di-pelajari\",\n label: \"Dipelajari\",\n title: \"Lanjutkan Kursusmu\",\n value: \"on_progress\",\n },\n {\n id: \"kursus-selesai\",\n label: \"Kursus Selesai\",\n title: \"Kursus yang Kamu Ambil\",\n value: \"finished\",\n },\n ],\n};\n\nexport type TabItem = {\n id?: string;\n label?: string;\n title?: string;\n value?: string;\n};\n\nexport type TabsStore = {\n // state\n selectedTab: TabItem;\n currentData: TabItem[];\n\n // actions\n setSelectedTab: (tab: TabItem) => void;\n setCurrentData: (id: string) => void;\n};\n\nexport const useTabsStore = createStore((set) => ({\n // initial state\n currentData: [],\n selectedTab: {},\n\n // actions\n setSelectedTab(tab) {\n set({\n selectedTab: tab ? tab : tabsData[0],\n });\n },\n setCurrentData(id) {\n set({\n currentData: tabsData[id],\n });\n },\n}));\n","import React, { ReactNode, useEffect, useState } from \"react\";\nimport { useAuthStore } from \"modules/Auth/authStore\";\nimport { getSubDomain, isBlueBirdURL, isSubdomainBluebird } from \"lib/host\";\nimport { useGetSubdomainData } from \"modules/Tenant/homeTenantApi\";\nimport { isBrowser } from \"lib/ssr\";\nimport { Image } from \"components/Image/Image\";\nimport { Logo } from \"components/Logo\";\nimport { useSystemStore } from \"components/PageHeader/systemStore\";\nimport Images from \"next/image\";\nimport { getCookie } from \"lib/helper\";\n\nexport const HomeLogo: React.FC<{\n children?: ReactNode;\n}> = ({ children }) => {\n const theme = useSystemStore((state) => state.theme);\n const { loginState, currentUser, tenantData, setTenantData } = useAuthStore(\n (state) => ({\n loginState: state.loginState,\n currentUser: state.currentUser,\n tenantData: state.tenantData,\n setTenantData: state.setTenantData,\n })\n );\n // @ts-ignore\n const getSubdomainAPI = useGetSubdomainData();\n\n /* Hit API Referral upon this referral user */\n const listReferralToShowLogo = [\"venteny\", \"demo-hris\", \"zicare\"];\n const subDomain = isBrowser() ? getSubDomain(window.location.hostname) : null;\n const isBlueBirdTenant =\n typeof window !== \"undefined\" &&\n (isBlueBirdURL(window.location.hostname) ||\n isSubdomainBluebird(window.location.hostname));\n\n const referralCode =\n getCookie(\"ref_code_gk\") && getCookie(\"ref_code_gk\") !== \"null\"\n ? getCookie(\"ref_code_gk\")\n : typeof window !== \"undefined\"\n ? new URLSearchParams(window.location.search).get(\"referral\")\n : \"\";\n\n useEffect(() => {\n if (\n listReferralToShowLogo.includes(\n currentUser?.referral ?? (subDomain || referralCode)\n )\n ) {\n getSubdomainAPI.doFetch(\n {\n slug:\n window.location.hostname === \"e-learning.bluebirdgroup.com\"\n ? \"bluebird\"\n : // : referralCode == \"trenggalekkab\"\n // ? referralCode\n currentUser?.referral ?? subDomain,\n },\n {\n onSuccess(data) {\n /// Save to zustand\n setTenantData(data[\"data\"]);\n // @ts-ignore\n // setImageUrl(\n // \"https://s.gokampus.com/cdn-cgi/image/,quality=75/business/logo-summarecon-agung.png\"\n // );\n },\n }\n );\n }\n }, [referralCode]);\n\n // Variable to make sure the window\n // that used in subDomain variable is ready\n const [isClient, setIsClient] = useState(false);\n useEffect(() => {\n setIsClient(true);\n }, []);\n\n return isClient &&\n (subDomain == \"geekhunter\" || currentUser?.referral == \"geekhunter\") ? (\n
\n \n
\n

in partnership with

\n \n
\n
\n ) : tenantData?.image_url != null &&\n tenantData?.image_url != \"\" &&\n listReferralToShowLogo.includes(currentUser?.referral ?? subDomain) &&\n !isBlueBirdTenant ? (\n
\n \n
\n

Powered by

\n \n
\n
\n ) : isBlueBirdTenant ? (\n \n ) : (subDomain == \"alfamart\" || currentUser?.referral == \"alfamart\") ? (\n
\n \n
\n

Powered by

\n \n
\n
\n ) : (\n \n );\n};\n","import { useApi } from \"lib/apiFetcher\";\n\nexport const useHomeFeaturedInstitution = () =>\n useApi(\"get\", \"/featured-institution\");\nexport const useHomeTopInstitutions = () => useApi(\"get\", \"/top-institutions\");\nexport const useHomeFeaturedCategories = () =>\n useApi(\"get\", \"/featured-categories\");\nexport const useHomeYourInfo = () => useApi(\"get\", \"/static-pages\");\nexport const useHomeRecommendation = () => useApi(\"get\", \"/recomended-courses\");\nexport const useMyClass = () => useApi(\"get\", \"/profile/my-class\");\n\n//@ts-ignore\nexport const useHomepageCourse = () => useApi(\"get\", \"/homepage-course\");\nexport const useHomepageDetailCourse = (additionalKey: string) =>\n useApi(\"get\", \"/homepage-course/{slug}\", additionalKey);\n\n// ======== Notification API ======== //\nexport const useGetNotificationApi = () => useApi(\"get\", \"/notification\");\n","import { useTrackScreen } from \"lib/amplitude\";\nimport Container, { ContainerDesktop } from \"components/Container\";\nimport { PageHeader } from \"components/PageHeader/PageHeader\";\nimport FieldWithBorder from \"components/Form/FieldWithBorder\";\nimport { CardNotFound } from \"components/Card/CardNotFound\";\nimport Link from \"next/link\";\nimport { trackEvent } from \"lib/amplitude\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { useGetNotificationApi } from \"modules/Home/homeApi\";\nimport Button from \"components/Button\";\nimport { useIsDesktop } from \"lib/device\";\nimport { PageHeaderDesktop } from \"components/PageHeader/PageHeaderDesktop\";\nimport { useRouter } from \"next/router\";\nimport { MoonLoader } from \"react-spinners\";\nimport { useNotifStore } from \"./notifStore\";\nimport { paths } from \"lib/__generatedApiSpec\";\nimport { OpReturnType } from \"openapi-typescript-fetch\";\nimport { generateParams } from \"lib/helper\";\nimport { useSystemStore } from \"components/PageHeader/systemStore\";\n\ntype NotifData = OpReturnType;\n\nexport const NOTIF_PER_PAGE = 7;\n\nconst NotificationContent: React.FC<{\n theme?: string;\n isDropdown?: boolean;\n}> = ({ theme = \"\", isDropdown = false }) => {\n const themeMode = useSystemStore((state) => state.theme);\n const notifApi = useGetNotificationApi();\n const [currData, setCurrData] = useState(null);\n const [allNotif, setAllNotif] = useState(null);\n const [page, setPage] = useState(1);\n const [isLoader, setIsLoader] = useState(true);\n\n const { allNotification, setAllNotifStore } = useNotifStore((state) => ({\n allNotification: state.allNotification,\n setAllNotifStore: state.setAllNotif,\n }));\n\n const isMounted = useRef(false);\n const notFoundProps = {\n title: \"Tidak Ada Notifikasi\",\n message: \"Setiap notifikasi baru akan muncul di halaman ini\",\n };\n\n //@ts-ignore\n const refactorNotifData = (arr: NotifData[\"data\"]) => {\n setCurrData(arr);\n const allRefactorNotif =\n arr && arr.length > 0\n ? arr.map((el) => {\n return {\n id: el.id,\n title: el.updated_at,\n description: el.notification.title,\n slug: el.notification?.slug || el.notification?.id || \"\",\n tag: {\n code: el.notification_type.code,\n type: el.notification_type.name,\n isActive: !el.is_read,\n },\n };\n })\n : [];\n\n setAllNotif(isDropdown ? allRefactorNotif.slice(0, 4) : allRefactorNotif);\n setIsLoader(false);\n };\n\n useEffect(() => {\n if (isMounted.current) {\n setTimeout(() => {\n if (allNotification) {\n // console.log(\"allNotification:\", allNotification);\n refactorNotifData(allNotification.data);\n }\n }, 2000);\n } else {\n isMounted.current = true;\n }\n }, [allNotification]);\n\n const isDesktop = useIsDesktop();\n const router = useRouter();\n\n const isUsingButtonViewAll =\n isDesktop && isDropdown && allNotif && allNotif.length > 0;\n\n const onClickLoadMore = () => {\n trackEvent({\n event: \"notification_more_a\",\n });\n\n notifApi.doFetch(\n {\n limit: NOTIF_PER_PAGE,\n page: page + 1,\n },\n {\n onSuccess(data) {\n setPage((p) => p + 1);\n const all = [...currData, ...data?.data];\n setCurrData(all);\n refactorNotifData(all);\n },\n }\n );\n };\n\n return (\n \n {isLoader ? (\n
\n \n
\n ) : (\n <>\n {isDropdown && isDesktop && (\n
\n Notifikasi\n
\n )}\n\n {allNotif && allNotif.length > 0 ? (\n allNotif.map((elm) => {\n let utmQueries = {\n utm_source: \"in-app\",\n utm_medium: \"notification-page\",\n utm_campaign: elm.description,\n };\n let queries = {};\n\n switch (elm.tag.code) {\n case \"transaction\":\n queries = {\n pathname: \"/transactions/[id]\",\n query: {\n ...utmQueries,\n id: elm.slug,\n notificationId: elm.id,\n url: \"notification\",\n },\n };\n break;\n\n case \"special-course\":\n queries = {\n pathname: \"/course/[courseSlug]\",\n query: {\n ...utmQueries,\n courseSlug: elm.slug,\n notificationId: elm.id,\n },\n };\n break;\n\n case \"course\":\n (utmQueries as any).courseSlug = elm.slug;\n (utmQueries as any).notificationId = elm.id;\n const param = generateParams(utmQueries);\n queries = {\n pathname: \"/r/[page]\",\n query: {\n ...utmQueries,\n page: `/course/${elm.slug}?${param}`,\n },\n };\n break;\n\n default:\n queries = {\n pathname: \"/notification/[notificationSlug]\",\n query: {\n ...utmQueries,\n notificationSlug: elm.slug,\n notificationId: elm.id,\n url: \"notification\",\n },\n };\n break;\n }\n return (\n {\n trackEvent({\n event: \"notification_message_a\",\n property: {\n type: elm.tag.type,\n slug: elm.slug,\n },\n });\n }}\n href={queries}\n >\n {/* @ts-ignore */}\n \n \n );\n })\n ) : (\n
\n \n
\n )}\n\n {(allNotification as any)?.meta?.last_page > page && !isDropdown ? (\n
\n \n Muat Lebih Banyak\n \n
\n ) : (\n <>\n )}\n\n {isUsingButtonViewAll && (\n {\n router.push({\n pathname: \"/notification\",\n });\n }}\n size={isDesktop ? \"large\" : \"small\"}\n >\n Lihat Semua Notifikasi\n \n )}\n \n )}\n \n );\n};\n\nexport default NotificationContent;\n","import createStore from \"zustand\";\nimport { paths } from \"lib/__generatedApiSpec\";\nimport { OpReturnType } from \"openapi-typescript-fetch\";\n\ntype NotifData = OpReturnType;\n\nexport type NotifStore = {\n // state\n allNotification: NotifData;\n\n // actions\n setAllNotif: (data: any) => void;\n};\n\nexport const useNotifStore = createStore((set) => ({\n // state\n allNotification: [],\n\n // actions\n setAllNotif(data) {\n set({ allNotification: data });\n },\n}));\n","import createStore from \"zustand\";\n\nexport type LearningHourStore = {\n // state\n learningHour: string;\n courseLearningHour: string;\n\n // actions\n setLearningHour: (item: string) => void;\n setCourseLearningHour: (item: string) => void;\n};\n\nexport const useLearningHourStore = createStore((set) => ({\n // state\n learningHour: \"\",\n courseLearningHour: \"\",\n\n // actions\n setLearningHour(item) {\n set({ learningHour: item });\n },\n setCourseLearningHour(item) {\n set({ courseLearningHour: item });\n },\n}));\n"],"names":["className","onChange","id","checked","selected","isSwitch","onUpdateTheme","theme","allThemes","setTheme","setAllTheme","useSystemStore","state","useEffect","trackEventGTM","event","property","dark_mode","trackEventGA","div","label","htmlFor","onClick","oppositeTheme","localStorage","setItem","IconSun","color","IconMoon","find","a","active","light","img","src","alt","width","height","dark","system","svg","viewBox","fill","xmlns","path","d","stroke","stroke-linecap","stroke-linejoin","IconLock","size","IconStatus","fill-rule","clip-rule","Dropdown","children","included","dataDropdown","setDataDropdown","useState","DropdownJSON","useAuthLogoutApi","useRouter","useAuthStore","role","aria-orientation","aria-labelledby","tabIndex","IconBell","Image","NotificationComponent","isShowPopupNotif","setIsShowPopupNotif","isIconTransparent","isDesktop","window","innerWidth","isTenantURL","useIsTenant","isSubdomainTenant","useIsSubdomain","router","loginState","notifications","useGetNotificationApi","allNotification","setAllNotif","useNotifStore","doFetch","onSuccess","res","onError","err","trackEventClick","eventProperty","page","pathname","is_opened","total_unread_message","totalUnread","trackEvent","timeoutNotif","setTimeoutNotif","events","Link","href","onMouseEnter","clearTimeout","timeout","setTimeout","onMouseLeave","NotificationContent","isDropdown","HomeHeader","isTransparent","currentUser","show","setShow","useIsBusiness","isLMS","includes","t","useTranslation","isBrowser","getSubDomain","location","hostname","locale","locales","asPath","push","usePreview","cur","query","isB2B","data","isMalukuTenant","getCookie","URLSearchParams","search","get","isMalukuURL","isPesawaranTenant","isPesawaranURL","isTrenggalekTenant","isTrenggalekURL","isMuaroJambiTenant","isMuaroJambiURL","isJambiKotaTenant","isJambiURL","header","BackButton","backTo","undefined","FieldSearch","handleClick","placeholder","isShow","setModal","classWidth","ModalSearchBox","onClose","trackNavbar","type","button_type","IconLogoTextWhite","Images","HomeLogo","ToggleDarkMode","renderNotifications","IconSearch","useModalStore","createStore","set","isShowModal","showModalReferral","item","closeModalReferral","openModal","value","JpChip","userLearningHour","useJPTrackers","learningHour","setLearningHour","useLearningHourStore","jpInfo","setJpInfo","setSelectedTab","useTabsStore","useIsDesktop","learning_hours","getActualType","title","replace","tabId","span","menus","text","newMenus","PageHeaderDesktop","headerRef","onChangeSearch","hideSearchbar","LINKS","setLinks","indexName","setIndexName","useSearchStore","showLeaderboard","setShowLeaderboard","isGokAresTenant","isGokAresURL","tenantJpTracker","tenant","slug","referral","clientLeaderboards","subDomain","isShowLanguageToggle","isAdmin","referralCode","nameOfIndex","generateIndexName","status","CONST","labels","labelColor","default","ref","callback","React","current","contains","target","document","addEventListener","removeEventListener","useOutsideClick","icon","renderIcon","IconUser","IconSignOutAlt","IconApperance","timeoutRef","useRef","isShowed","setIsShowed","handleMouseEnter","handleMouseLeave","renderUser","SkeletonWrapper","SkeletonCircle","Button","variant","length","map","index","legacyBehavior","passHref","placeHolder","isBlueBirdTenant","isBlueBirdURL","isSubdomainBluebird","isBankingTenant","isBankingURL","combineRefs","element","style","zIndex","ContainerDesktop","GoKampusLogo","useWhite","filter","l","i","rel","p","scrollTo","getElementById","elementPosition","getBoundingClientRect","top","scrollY","offset","behavior","handleScroll","then","InstantSearchBox","position","LOGIN","LOADING","el","SkeletonRect","NOT_LOGIN","isFull","tabsData","MyClass","MyClassPlus","currentData","selectedTab","tab","setCurrentData","tenantData","setTenantData","getSubdomainAPI","useGetSubdomainData","listReferralToShowLogo","isClient","setIsClient","image_url","name","Logo","scale","useApi","NOTIF_PER_PAGE","themeMode","notifApi","currData","setCurrData","allNotif","setPage","isLoader","setIsLoader","setAllNotifStore","isMounted","refactorNotifData","arr","allRefactorNotif","updated_at","description","notification","tag","code","notification_type","isActive","is_read","slice","isUsingButtonViewAll","MoonLoader","loading","elm","utmQueries","utm_source","utm_medium","utm_campaign","queries","notificationId","url","courseSlug","param","generateParams","notificationSlug","FieldWithBorder","withTag","CardNotFound","message","meta","last_page","isLoading","limit","all","courseLearningHour","setCourseLearningHour"],"sourceRoot":""}