{"version":3,"file":"static/chunks/25-644bac789de96516.js","mappings":"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","sources":["webpack://_N_E/./src/layout/AppLayout/DrawerMenu/DrawerMenu.tsx","webpack://_N_E/./src/layout/AppLayout/FooterMenu/FooterMenu.tsx","webpack://_N_E/./src/layout/AppLayout/Header/Header.tsx","webpack://_N_E/./src/component/element/DeletionAccountAlert/DeletionAccountAlert.tsx","webpack://_N_E/./src/layout/AppLayout/PageMain/PageMain.tsx","webpack://_N_E/./src/layout/AppLayout/Sidebar/Sidebar.tsx","webpack://_N_E/./src/layout/SettingsLayout/SettingsLayout.tsx","webpack://_N_E/./src/layout/AppLayout/AppLayout.module.scss","webpack://_N_E/./src/layout/AppLayout/DrawerMenu/DrawerMenu.module.scss","webpack://_N_E/./src/layout/AppLayout/FooterMenu/FooterMenu.module.scss","webpack://_N_E/./src/layout/AppLayout/Header/Header.module.scss","webpack://_N_E/./src/layout/AppLayout/PageMain/PageMain.module.scss","webpack://_N_E/./src/layout/AppLayout/Sidebar/Sidebar.module.scss"],"sourcesContent":["import { Drawer, Flex, ScrollArea, Stack, UnstyledButton } from \"@mantine/core\";\nimport { useViewportSize } from \"@mantine/hooks\";\nimport type { User_role } from \"@prisma/client\";\nimport cx from \"classnames\";\nimport { signOut } from \"next-auth/react\";\nimport Image from \"next/image\";\nimport Link from \"next/link\";\nimport { useRouter } from \"next/router\";\nimport type { Dispatch, ReactNode, SetStateAction } from \"react\";\nimport { memo, useEffect, useState } from \"react\";\nimport { MdOutlineClose } from \"react-icons/md\";\nimport {\n ADMIN_AUTHORITY_PATH,\n COACH_AUTHORITY_PATH,\n DRAWER_MENU_PATH,\n FREE_USER_DRAWER_MENU_PATH,\n} from \"src/const/paths\";\nimport { font } from \"src/lib/nextfont/LocalFontProvider\";\nimport { useGetUserSettingsQuery } from \"src/service/UsersApi\";\n\nimport styles from \"./DrawerMenu.module.scss\";\n\nexport const DrawerMenu = ({\n drawerOpen,\n setDrawerOpen,\n toggleDrawer,\n}: {\n drawerOpen: boolean;\n setDrawerOpen: Dispatch>;\n toggleDrawer: () => void;\n}) => {\n const router = useRouter();\n const { height } = useViewportSize();\n const { data: user } = useGetUserSettingsQuery();\n const [navItemProps, serNavItemsProps] = useState<\n {\n href: string;\n icon: ReactNode;\n label: string;\n }[]\n >([]);\n\n // ページに遷移が開始したらドロワーが閉じように変更\n useEffect(() => {\n const closeDrawer = () => {\n setDrawerOpen(false);\n };\n router.events.on(\"routeChangeStart\", closeDrawer);\n return () => {\n router.events.off(\"routeChangeStart\", closeDrawer);\n };\n }, [router.events, setDrawerOpen]);\n\n // 権限でメニューの内容を変更\n useEffect(() => {\n if (user) {\n const role = user.role;\n const isAdmin =\n role === \"ADMIN\" ||\n (user.isUpgradedRole &&\n user.userRoles.some(({ role }) => role === \"ADMIN\"));\n const logoutItem = DRAWER_MENU_PATH.filter((item) => {\n return item.label === \"ログアウト\";\n })[0];\n const OmitLogoutItems = DRAWER_MENU_PATH.filter((item) => {\n return item.label !== \"ログアウト\";\n });\n\n if (isAdmin) {\n return serNavItemsProps([\n ...OmitLogoutItems,\n COACH_AUTHORITY_PATH,\n ADMIN_AUTHORITY_PATH,\n logoutItem,\n ]);\n } else if (role === \"COACH\") {\n return serNavItemsProps([\n ...OmitLogoutItems,\n COACH_AUTHORITY_PATH,\n logoutItem,\n ]);\n } else if (role === \"STUDENT\") {\n return serNavItemsProps([...DRAWER_MENU_PATH]);\n } else {\n return serNavItemsProps([...FREE_USER_DRAWER_MENU_PATH]);\n }\n } else {\n return serNavItemsProps([...FREE_USER_DRAWER_MENU_PATH]);\n }\n }, [user]);\n\n const NavItems = navItemProps.map((navItem) => {\n return ;\n });\n\n return (\n \n \n
\n
\n \n \n \n
\n
\n \n
\n \n {NavItems}\n \n
\n
\n \n );\n};\n\nexport const DrawerMenuMemo = memo(DrawerMenu);\n\nconst DrawerNav = ({\n href,\n icon,\n label,\n roles,\n openNewTab,\n}: {\n href: string;\n icon: ReactNode;\n label: string;\n roles?: User_role[];\n openNewTab?: boolean;\n}) => {\n const { data: user } = useGetUserSettingsQuery();\n\n if (roles?.length && user && !roles.includes(user?.role)) {\n return null;\n }\n\n return (\n
\n {label === \"ログアウト\" ? (\n {\n signOut();\n }}\n >\n \n {icon}\n {label}\n \n \n ) : label === \"ガイドライン\" ? (\n \n \n {icon}\n {label}\n \n \n ) : (\n \n \n {icon}\n {label}\n \n \n )}\n
\n );\n};\n","import { Container, Flex } from \"@mantine/core\";\nimport cx from \"classnames\";\nimport Link from \"next/link\";\nimport type { FC } from \"react\";\nimport { useEffect, useState } from \"react\";\nimport { FOOTER_MENU_PATH } from \"src/const\";\nimport { FREE_USER_FOOTER_MENU_PATH } from \"src/const/paths\";\nimport { useGetUserSettingsQuery } from \"src/service/UsersApi\";\n\nimport styles from \"./FooterMenu.module.scss\";\n\nexport const FooterMenu: FC = () => {\n const { data: user } = useGetUserSettingsQuery();\n const [active, setActive] = useState(0);\n const [navItemProps, serNavItemsProps] = useState<\n {\n href: string;\n icon: any;\n label: string;\n }[]\n >([]);\n\n // 権限でメニューの内容を変更\n useEffect(() => {\n if (user) {\n const role = user.role;\n if (role === \"FREE_USER\") {\n return serNavItemsProps([...FREE_USER_FOOTER_MENU_PATH]);\n } else {\n return serNavItemsProps([...FOOTER_MENU_PATH]);\n }\n } else {\n serNavItemsProps([...FREE_USER_FOOTER_MENU_PATH]);\n }\n }, [user]);\n\n const navItems = navItemProps.map((navItem, index) => {\n return (\n
\n {navItem.label === \"部室\" ? (\n {\n setActive(index);\n }}\n >\n
\n \n
\n {navItem.label}\n \n ) : (\n {\n setActive(index);\n }}\n >\n
\n \n
\n {navItem.label}\n \n )}\n
\n );\n });\n return (\n \n \n {navItems}\n \n \n );\n};\n","import {\n Box,\n Burger,\n Container,\n Flex,\n Group,\n Space,\n TextInput,\n UnstyledButton,\n} from \"@mantine/core\";\nimport { useFocusTrap } from \"@mantine/hooks\";\nimport Link from \"next/link\";\nimport type { FC } from \"react\";\nimport { useState } from \"react\";\nimport { MdCancel, MdSearch } from \"react-icons/md\";\nimport { AvatarIconMemo } from \"src/component/element\";\nimport { NotificationBadgeCount } from \"src/component/element/Notification/NotificationBadgeCount\";\nimport { usePageTitle } from \"src/hooks/usePageTitle\";\nimport { DrawerMenuMemo } from \"src/layout/AppLayout/DrawerMenu\";\nimport { useGetUserSettingsQuery } from \"src/service/UsersApi\";\n\nimport styles from \"./Header.module.scss\";\n\nexport const Header: FC = () => {\n const { data: userData } = useGetUserSettingsQuery();\n const [drawerOpen, setDrawerOpen] = useState(false);\n const [searchOpen, setSearchOpen] = useState(false);\n\n const pageTitle = usePageTitle();\n const focusTrapRef = useFocusTrap();\n\n const toggleSearch: () => void = () => {\n setSearchOpen((prevState) => {\n return !prevState;\n });\n };\n const toggleDrawer: () => void = () => {\n setDrawerOpen((prevState) => {\n return !prevState;\n });\n };\n\n return (\n <>\n \n \n \n \n \n \n \n \n \n {searchOpen ? (\n {\n return {\n input: {\n border: \"none\",\n fontSize: \"1.6rem\",\n height: \"20px\",\n minHeight: \"20px\",\n },\n root: { width: \"90%\" },\n };\n }}\n />\n ) : (\n

{pageTitle}

\n )}\n
\n \n \n \n \n {pageTitle === \"フムフム\" ? (\n \n {searchOpen ? : }\n \n ) : (\n \n )}\n \n
\n
\n
\n \n \n );\n};\n","import { Alert } from \"@mantine/core\";\nimport { IconInfoCircle } from \"@tabler/icons-react\";\nimport dayjs from \"dayjs\";\nimport { useRouter } from \"next/router\";\nimport { useEffect, useState } from \"react\";\nimport { useGetUserSettingsQuery } from \"src/service/UsersApi\";\n\nconst showDeletionAccountAlertFlag = \"isShowDeletionAccountAlert\";\nexport const DeletionAccountAlert = () => {\n const { data } = useGetUserSettingsQuery();\n const { pathname } = useRouter();\n const [open, setOpen] = useState(false);\n const [canShow, setCanShow] = useState(false);\n\n const key = showDeletionAccountAlertFlag + data?.id;\n\n useEffect(() => {\n if (!data?.scheduledDeletionAt) {\n return;\n }\n const currentDate = new Date();\n const deleteDate = new Date(data.scheduledDeletionAt);\n setCanShow(deleteDate.getTime() - currentDate.getTime() > 0);\n }, [data]);\n\n useEffect(() => {\n if (pathname === \"/mypage\") {\n return setOpen(canShow);\n }\n if (canShow) {\n setOpen(localStorage.getItem(key) !== \"1\");\n } else {\n setOpen(false);\n }\n }, [pathname, key, canShow]);\n\n if (data?.isDeleted || !data?.scheduledDeletionAt || !open) {\n return null;\n }\n\n const onClose = () => {\n setOpen(false);\n localStorage.setItem(key, \"1\");\n };\n\n return (\n }\n withCloseButton={pathname !== \"/mypage\"}\n onClose={onClose}\n >\n このアカウントは{\" \"}\n {dayjs(data.scheduledDeletionAt).format(\"YY/MM/DD HH:mm\")}{\" \"}\n まで利用可能で、その後は無効化されログインできなくなります。\n \n );\n};\n","import { Grid } from \"@mantine/core\";\nimport { useMediaQuery } from \"@mantine/hooks\";\nimport cx from \"classnames\";\nimport type { ReactElement } from \"react\";\nimport { DeletionAccountAlert } from \"src/component/element/DeletionAccountAlert/DeletionAccountAlert\";\nimport { Sidebar } from \"src/layout/AppLayout/Sidebar\";\n\nimport styles from \"./PageMain.module.scss\";\n\nexport const PageMain = ({ page }: { page: ReactElement }) => {\n const matche = useMediaQuery(\"(min-width: 768px)\");\n\n return (\n \n \n \n \n \n
\n \n {page}\n
\n
\n
\n );\n};\n","import { Box, Flex, ScrollArea, UnstyledButton } from \"@mantine/core\";\nimport type { User_role } from \"@prisma/client\";\nimport { signOut } from \"next-auth/react\";\nimport Image from \"next/image\";\nimport Link from \"next/link\";\nimport { type ReactNode, type FC, useEffect, useState } from \"react\";\nimport { CopyrightMemo } from \"src/component/element\";\nimport { NotificationBadgeCount } from \"src/component/element/Notification/NotificationBadgeCount\";\nimport { SIDEBAR_PATH } from \"src/const\";\nimport {\n ADMIN_AUTHORITY_PATH,\n COACH_AUTHORITY_PATH,\n FREE_USER_SIDEBAR_PATH,\n} from \"src/const/paths\";\nimport { useRecordUserEventMutation } from \"src/service/UserEventsApi/UserEventsApi\";\nimport { useGetUserSettingsQuery } from \"src/service/UsersApi\";\n\nimport styles from \"./Sidebar.module.scss\";\n\nexport const Sidebar: FC = () => {\n const { data: user } = useGetUserSettingsQuery();\n const [navItemProps, serNavItemsProps] = useState<\n {\n label: string;\n href: string;\n icon: ReactNode;\n }[]\n >([]);\n\n // 権限でメニューの内容を変更\n useEffect(() => {\n if (user) {\n const role = user.role;\n const isAdmin =\n role === \"ADMIN\" ||\n (user.isUpgradedRole &&\n user.userRoles.some(({ role }) => role === \"ADMIN\"));\n const logoutItem = SIDEBAR_PATH.filter((item) => {\n return item.label === \"ログアウト\";\n })[0];\n const OmitLogoutItems = SIDEBAR_PATH.filter((item) => {\n return item.label !== \"ログアウト\";\n });\n\n if (isAdmin) {\n return serNavItemsProps([\n ...OmitLogoutItems,\n COACH_AUTHORITY_PATH,\n ADMIN_AUTHORITY_PATH,\n logoutItem,\n ]);\n } else if (role === \"COACH\") {\n return serNavItemsProps([\n ...OmitLogoutItems,\n COACH_AUTHORITY_PATH,\n logoutItem,\n ]);\n } else if (role === \"STUDENT\") {\n return serNavItemsProps([...SIDEBAR_PATH]);\n } else {\n return serNavItemsProps([...FREE_USER_SIDEBAR_PATH]);\n }\n } else {\n serNavItemsProps([...FREE_USER_SIDEBAR_PATH]);\n }\n }, [user]);\n\n const navItems = navItemProps.map((navItem, index) => {\n return ;\n });\n return (\n \n \n
\n
\n \n
\n {navItems}\n
\n \n
\n
\n \n
\n
\n
\n
\n );\n};\n\nconst SidebarNav = ({\n href,\n icon,\n label,\n roles,\n openNewTab,\n}: {\n href: string;\n icon: ReactNode;\n label: string;\n openNewTab?: boolean;\n roles?: User_role[];\n}) => {\n const { data: user } = useGetUserSettingsQuery();\n const [record] = useRecordUserEventMutation();\n if (roles?.length && user && !roles.includes(user?.role)) {\n return null;\n }\n\n return (\n <>\n {label === \"ログアウト\" ? (\n {\n await record({\n action: \"CLICK\",\n eventType: \"LOGOUT\",\n category: \"ユーザーとの対話\",\n label: \"ログアウトボタン\",\n value: \"\",\n });\n await signOut();\n localStorage.clear();\n }}\n >\n \n {icon}\n {label}\n \n \n ) : label === \"ガイドライン\" || label === \"部室\" ? (\n \n \n {icon}\n {label}\n \n \n ) : (\n \n \n {icon}\n {label}\n \n \n )}\n \n );\n};\n","import { Container } from \"@mantine/core\";\nimport type { CustomLayout } from \"next\";\nimport { FooterMenu } from \"src/layout/AppLayout/FooterMenu\";\nimport { Header } from \"src/layout/AppLayout/Header\";\nimport { PageMain } from \"src/layout/AppLayout/PageMain\";\n\nimport styles from \"../AppLayout/AppLayout.module.scss\";\nimport { LayoutErrorBoundary } from \"../LayoutErrorBoundary\";\n\nexport const SettingsLayout: CustomLayout = (page) => {\n return (\n
\n
\n \n \n \n \n \n \n
\n );\n};\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"layout\":\"AppLayout_layout__GoU1Z\",\"mapLayout\":\"AppLayout_mapLayout__keuwV\",\"layoutWhite\":\"AppLayout_layoutWhite__AK8BS\",\"adminLayout\":\"AppLayout_adminLayout__vxo2s\",\"inner\":\"AppLayout_inner__U7Y_p\",\"nonPaddingInner\":\"AppLayout_nonPaddingInner__s9uIo\",\"adminSidebar\":\"AppLayout_adminSidebar__BhVhS\",\"adminMain\":\"AppLayout_adminMain__wJWpl\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"drawerInner\":\"DrawerMenu_drawerInner__Jrrb7\",\"closeButtonWrap\":\"DrawerMenu_closeButtonWrap__KHxHq\",\"closeButton\":\"DrawerMenu_closeButton__YFBDP\",\"logoWrap\":\"DrawerMenu_logoWrap__ttvMQ\",\"logo\":\"DrawerMenu_logo__pkeNJ\",\"link\":\"DrawerMenu_link__ZVAzj\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"footer\":\"FooterMenu_footer__gkjQI\",\"inner\":\"FooterMenu_inner__7NfRU\",\"linkWrap\":\"FooterMenu_linkWrap__TGxAk\",\"link\":\"FooterMenu_link__sVRIq\",\"linkActive\":\"FooterMenu_linkActive__GHQcv\",\"icon\":\"FooterMenu_icon__33HBD\",\"iconActive\":\"FooterMenu_iconActive__Bphuc\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"header\":\"Header_header__sjeLr\",\"headerLink\":\"Header_headerLink__JgGxN\",\"pageTitle\":\"Header_pageTitle__8nlI1\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"grid\":\"PageMain_grid__JKNN9\",\"col\":\"PageMain_col__n_w7h\",\"main\":\"PageMain_main__IjEBp\",\"sidebar\":\"PageMain_sidebar__jft_i\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"sidebar\":\"Sidebar_sidebar__K_wqu\",\"sidebarInner\":\"Sidebar_sidebarInner__iN_ik\",\"logoWrap\":\"Sidebar_logoWrap__7HmZq\",\"logo\":\"Sidebar_logo__hIFCG\",\"link\":\"Sidebar_link__L7zco\",\"copyrightWrap\":\"Sidebar_copyrightWrap__By8Hc\",\"notificationWrapper\":\"Sidebar_notificationWrapper__VvjqY\"};"],"names":["DrawerMenu","drawerOpen","setDrawerOpen","toggleDrawer","router","useRouter","height","useViewportSize","data","user","useGetUserSettingsQuery","navItemProps","serNavItemsProps","useState","useEffect","closeDrawer","events","on","off","role","isAdmin","isUpgradedRole","userRoles","some","logoutItem","DRAWER_MENU_PATH","filter","item","label","OmitLogoutItems","COACH_AUTHORITY_PATH","ADMIN_AUTHORITY_PATH","FREE_USER_DRAWER_MENU_PATH","NavItems","map","navItem","DrawerNav","Drawer","opened","onClose","position","withCloseButton","overlayOpacity","size","zIndex","ScrollArea","style","div","className","styles","button","onClick","aria-label","MdOutlineClose","Image","src","alt","width","Stack","mt","spacing","DrawerMenuMemo","memo","href","icon","roles","openNewTab","length","includes","UnstyledButton","cx","font","signOut","Flex","align","gap","Link","target","passHref","rel","undefined","FooterMenu","active","setActive","FREE_USER_FOOTER_MENU_PATH","FOOTER_MENU_PATH","navItems","index","Container","justify","maw","mx","Header","userData","searchOpen","setSearchOpen","pageTitle","usePageTitle","focusTrapRef","useFocusTrap","prevState","Box","component","px","py","Group","AvatarIconMemo","avatar","profileImage","background","profileBgImage","sx","TextInput","ref","input","border","fontSize","minHeight","root","h1","Space","w","NotificationBadgeCount","MdCancel","MdSearch","Burger","DeletionAccountAlert","pathname","open","setOpen","canShow","setCanShow","key","id","scheduledDeletionAt","currentDate","Date","deleteDate","getTime","localStorage","getItem","isDeleted","Alert","mb","variant","color","title","IconInfoCircle","setItem","dayjs","format","PageMain","page","matche","useMediaQuery","Grid","Col","span","Sidebar","main","SIDEBAR_PATH","FREE_USER_SIDEBAR_PATH","SidebarNav","type","priority","CopyrightMemo","record","useRecordUserEventMutation","async","action","eventType","category","value","clear","SettingsLayout","LayoutErrorBoundary","module","exports"],"sourceRoot":""}