{"version":3,"file":"static/chunks/3852-e5641ce7c9be8019.js","mappings":"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","sources":["webpack://_N_E/./src/component/pageComponent/Notification/NotificationList/NotificationMessage.tsx","webpack://_N_E/./src/component/pageComponent/Notification/NotificationList/NotificationMessageModal.tsx","webpack://_N_E/./src/component/pageComponent/Notification/NotificationList/NotificationListModal.tsx","webpack://_N_E/./src/component/element/Notification/NotificationBadgeCount.tsx","webpack://_N_E/./src/layout/LayoutErrorBoundary.tsx","webpack://_N_E/./src/component/element/Notification/NotificationBadgeCount.module.scss","webpack://_N_E/./src/component/pageComponent/Notification/NotificationList/NotificationListModal.module.scss"],"sourcesContent":["import { Flex, Highlight, Text } from \"@mantine/core\";\nimport \"@mantine/hooks\";\nimport { NotificationUserType } from \"@prisma/client\";\nimport dayjs from \"dayjs\";\nimport * as linkify from \"linkifyjs\";\nimport { memo, useEffect, useMemo } from \"react\";\nimport type { NotificationUserItem } from \"src/service/NotificationUserApi/type\";\n\nexport const NotificationMessage = ({\n notification,\n showAll,\n}: {\n notification: NotificationUserItem;\n showAll?: boolean;\n}) => {\n const validText = notification.message ?? \"\";\n\n const { content, newHighlight } = useMemo(() => {\n let content = notification.message ?? \"\";\n const highlight = notification.highlight || \"\";\n let newHighlight = notification.highlight;\n if (highlight?.length) {\n switch (notification.type) {\n case NotificationUserType.FUMUFUMU_WAKARU:\n case NotificationUserType.NEW_COMMENT:\n case NotificationUserType.NEW_FOLLOWER:\n case NotificationUserType.NEW_LIKE_AVATAR:\n newHighlight = notification.user.nickname;\n content = content.replace(highlight, newHighlight);\n break;\n default:\n break;\n }\n }\n return {\n content: content,\n newHighlight,\n };\n }, [notification]);\n\n // Find links\n const linksDetected = linkify.find(validText);\n\n const highlight = linksDetected\n .filter((link) => link.isLink)\n .map((link) => link.value);\n\n if (newHighlight) {\n highlight.push(newHighlight);\n }\n\n useEffect(() => {\n if (!linksDetected.length) {\n return;\n }\n const elements = document.querySelectorAll(\"mark\");\n elements.forEach((element) => {\n const link = linksDetected.find(\n (link) => link.value === element.textContent,\n );\n if (link) {\n element.outerHTML = `\n リンク\n `;\n }\n });\n }, [linksDetected]);\n\n return (\n \n {\n return {\n WebkitBackgroundClip: \"text\",\n WebkitTextFillColor: \"transparent\",\n };\n }}\n highlight={highlight}\n >\n {content}\n \n\n \n {dayjs(notification.createdAt).format(\"MM/DD hh:mm\")}\n \n \n );\n};\n\nexport const NotificationMessageMemo = memo(NotificationMessage);\n","import {\n Button,\n Center,\n Flex,\n Modal,\n ScrollArea,\n Text,\n Divider,\n Space,\n} from \"@mantine/core\";\nimport type { FC } from \"react\";\nimport { NotificationMessage } from \"src/component/pageComponent/Notification/NotificationList/NotificationMessage\";\nimport type { NotificationUserItem } from \"src/service/NotificationUserApi/type\";\n\nimport styles from \"./NotificationListModal.module.scss\";\n\nexport const NotificationMessageModal: FC<{\n item?: NotificationUserItem | null;\n opened: boolean;\n onClose: () => void;\n}> = ({ item, opened, onClose }) => {\n return (\n \n お知らせ\n \n \n {item && (\n
\n \n
\n )}\n
\n \n \n \n \n \n \n );\n};\n","import {\n Button,\n Center,\n Flex,\n Loader,\n Modal,\n ScrollArea,\n Text,\n Divider,\n Space,\n} from \"@mantine/core\";\nimport { NotificationUserType } from \"@prisma/client\";\nimport Router from \"next/router\";\nimport type { FC } from \"react\";\nimport { memo, useCallback, useContext, useEffect, useState } from \"react\";\nimport { BiLike } from \"react-icons/bi\";\nimport { FaRegComment } from \"react-icons/fa\";\nimport {\n MdEventAvailable,\n MdLightbulbOutline,\n MdOutlineMilitaryTech,\n MdMessage,\n} from \"react-icons/md\";\nimport { RiUserFollowLine } from \"react-icons/ri\";\nimport useInfiniteScroll from \"react-infinite-scroll-hook\";\nimport { AvatarIconMemo } from \"src/component/element\";\nimport { NotificationMessage } from \"src/component/pageComponent/Notification/NotificationList/NotificationMessage\";\nimport { NotificationMessageModal } from \"src/component/pageComponent/Notification/NotificationList/NotificationMessageModal\";\nimport { NotificationUserContext } from \"src/component/pageComponent/Notification/Provider/NotificationUserProvider\";\nimport { useGetMyNotificationsQuery } from \"src/service/NotificationUserApi/NotificationUserApi\";\nimport type { NotificationUserItem } from \"src/service/NotificationUserApi/type\";\nimport { useGetUserSettingsQuery } from \"src/service/UsersApi\";\n\nimport styles from \"./NotificationListModal.module.scss\";\n\nconst NotificationListModal: FC<{\n opened: boolean;\n onClose: () => void;\n}> = ({ opened, onClose }) => {\n const [detailNotification, setDetailNotification] =\n useState();\n const [hasNextPage, setHasNextPage] = useState(false);\n const [cursorId, setCursorId] = useState(\"\");\n const { readNotification, onResetBadgeCount, badgeCount } = useContext(\n NotificationUserContext,\n );\n const { data: currentUser } = useGetUserSettingsQuery();\n const {\n data: notifications,\n isError,\n isLoading,\n refetch,\n } = useGetMyNotificationsQuery({\n cursor: cursorId,\n });\n\n useEffect(() => {\n setHasNextPage(notifications?.pagination.hasNextPage as boolean);\n }, [notifications?.pagination.hasNextPage]);\n\n const loadMore = useCallback(() => {\n setCursorId(notifications?.pagination.endCursor as string);\n setHasNextPage(notifications?.pagination.hasNextPage as boolean);\n }, [\n notifications?.pagination.endCursor,\n notifications?.pagination.hasNextPage,\n ]);\n\n const [sentryRef] = useInfiniteScroll({\n disabled: isError,\n hasNextPage: notifications?.pagination.hasNextPage as boolean,\n loading: isLoading,\n onLoadMore: loadMore,\n rootMargin: \"0px 0px 400px 0px\",\n });\n\n useEffect(() => {\n refetch();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const onRead = async (item: NotificationUserItem) => {\n if (item.type !== NotificationUserType.MESSAGE) {\n onClose();\n }\n\n await readNotification(item.id);\n\n switch (item.type) {\n case NotificationUserType.FUMUFUMU_WAKARU:\n case NotificationUserType.NEW_COMMENT:\n case NotificationUserType.NEW_EVENT:\n Router.push(`/fumufumu/detail/${item.fumufumuId}`);\n break;\n case NotificationUserType.NEW_FOLLOWER:\n case NotificationUserType.NEW_LIKE_AVATAR:\n Router.push(`/other/${item.userId}`);\n break;\n case NotificationUserType.NEW_BADGE:\n Router.push(`/badge`);\n break;\n default:\n setDetailNotification(item);\n refetch();\n break;\n }\n };\n\n const onResetBadge = async () => {\n await onResetBadgeCount();\n setHasNextPage(false);\n setCursorId(\"\");\n };\n\n return (\n <>\n \n \n お知らせ一覧\n {badgeCount > 0 &&\n currentUser?.role !== \"COACH\" &&\n currentUser?.role !== \"ADMIN\" && (\n \n )}\n \n \n \n {notifications?.data?.map((item) => (\n onRead(item)}\n />\n ))}\n {!isLoading && !notifications?.data?.length && (\n
現在は通知がありません
\n )}\n {(isLoading || hasNextPage) && (\n
\n \n
\n )}\n
\n \n \n \n \n \n \n setDetailNotification(null)}\n />\n \n );\n};\n\nexport const NotificationItem: FC<{\n item: NotificationUserItem;\n onClick: () => void;\n}> = ({ item, onClick }) => {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nconst NotificationIcon: FC<{ type: NotificationUserType }> = ({ type }) => {\n return (\n \n \n {type === NotificationUserType.NEW_LIKE_AVATAR && (\n \n )}\n {type === NotificationUserType.FUMUFUMU_WAKARU && (\n \n )}\n {type === NotificationUserType.NEW_BADGE && (\n \n )}\n {type === NotificationUserType.NEW_EVENT && (\n \n )}\n {type === NotificationUserType.NEW_FOLLOWER && (\n \n )}\n {type === NotificationUserType.NEW_COMMENT && (\n \n )}\n {type === NotificationUserType.MESSAGE && (\n \n )}\n \n \n );\n};\n\nexport const NotificationListModalMemo = memo(NotificationListModal);\n","import { Button, Flex, Popover, Text } from \"@mantine/core\";\nimport { useState } from \"react\";\nimport type { FC } from \"react\";\nimport { FaRegBell } from \"react-icons/fa\";\nimport { NotificationListModalMemo } from \"src/component/pageComponent/Notification/NotificationList/NotificationListModal\";\nimport { NotificationUserContext } from \"src/component/pageComponent/Notification/Provider/NotificationUserProvider\";\n\nimport styles from \"./NotificationBadgeCount.module.scss\";\n\nconst NotificationBadge: FC<{\n hasNew?: boolean;\n badgeSize?: number;\n badgeCount: number;\n}> = ({ hasNew, badgeSize = 25, badgeCount }) => {\n const [open, setOpen] = useState(false);\n\n const onOpen = () => {\n setOpen(true);\n };\n\n return (\n \n \n \n \n \n 0 ? \"red\" : \"transparent\",\n borderRadius: badgeSize * 0.35,\n }}\n align={\"center\"}\n >\n \n {badgeCount > 99 ? \"99+\" : badgeCount}\n \n \n \n \n {hasNew && !open && 新しい通知}\n \n {open && (\n setOpen(false)} />\n )}\n \n );\n};\n\nexport const NotificationBadgeCount: FC<{ badgeSize?: number }> = ({\n badgeSize = 25,\n}) => {\n return (\n \n {({ badgeCount, hasNew }) => (\n \n )}\n \n );\n};\n","import type { FC, ReactNode } from \"react\";\nimport type { FallbackProps } from \"react-error-boundary\";\nimport { ErrorBoundary } from \"react-error-boundary\";\n\nexport const LayoutErrorBoundary: FC<{ children: ReactNode }> = ({\n children,\n}) => {\n return (\n {children}\n );\n};\n\nconst ErrorFallback = ({ error }: FallbackProps) => {\n return (\n
\n

Something went wrong:

\n
{error.message}
\n
\n );\n};\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"badgeCount\":\"NotificationBadgeCount_badgeCount__YVrhW\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"modalHeader\":\"NotificationListModal_modalHeader___Qum3\",\"modalBackButton\":\"NotificationListModal_modalBackButton__FJZsG\",\"notificationItem\":\"NotificationListModal_notificationItem__ZNxhI\"};"],"names":["NotificationMessage","notification","showAll","validText","message","content","newHighlight","useMemo","highlight","length","type","NotificationUserType","FUMUFUMU_WAKARU","NEW_COMMENT","NEW_FOLLOWER","NEW_LIKE_AVATAR","user","nickname","replace","linksDetected","linkify","filter","link","isLink","map","value","push","useEffect","document","querySelectorAll","forEach","element","find","textContent","outerHTML","href","Flex","w","direction","align","Highlight","lineClamp","undefined","highlightColor","highlightStyles","WebkitBackgroundClip","WebkitTextFillColor","Text","size","opacity","dayjs","createdAt","format","NotificationMessageModal","item","opened","onClose","Modal","withCloseButton","padding","radius","overlayOpacity","className","styles","Divider","ScrollArea","style","maxHeight","Center","sx","minHeight","paddingBottom","paddingTop","Space","h","gap","justify","Button","onClick","NotificationListModal","notifications","currentUser","detailNotification","setDetailNotification","useState","hasNextPage","setHasNextPage","cursorId","setCursorId","readNotification","onResetBadgeCount","badgeCount","useContext","NotificationUserContext","data","useGetUserSettingsQuery","isError","isLoading","refetch","useGetMyNotificationsQuery","cursor","pagination","loadMore","useCallback","endCursor","sentryRef","useInfiniteScroll","disabled","loading","onLoadMore","rootMargin","role","async","NotificationItem","MESSAGE","id","NEW_EVENT","Router","fumufumuId","userId","NEW_BADGE","onRead","height","ref","py","Loader","position","width","marginBottom","paddingRight","AvatarIconMemo","avatar","profileImage","background","profileBgImage","NotificationIcon","top","right","borderRadius","read","zIndex","bottom","BiLike","color","MdLightbulbOutline","MdOutlineMilitaryTech","MdEventAvailable","RiUserFollowLine","FaRegComment","MdMessage","NotificationListModalMemo","memo","NotificationBadge","hasNew","badgeSize","open","setOpen","Popover","withArrow","Target","margin","FaRegBell","marginTop","marginRight","minWidth","fontSize","Dropdown","NotificationBadgeCount","Consumer","LayoutErrorBoundary","children","ErrorBoundary","FallbackComponent","ErrorFallback","error","div","p","pre","module","exports"],"sourceRoot":""}