{"version":3,"file":"index-53bef067.js","sources":["../../../FE_DEV/src/containers/BookmarkModal/index.tsx"],"sourcesContent":["import { IBookmark } from '@/models/IBookmark'\nimport {\n\tfaBookmark,\n\tfaChevronLeft,\n\tfaFileText,\n\tfaLink,\n} from '@fortawesome/free-solid-svg-icons'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { ReactNode, useEffect, useState } from 'react'\nimport { Tooltip } from 'react-tooltip'\nimport { createPortal } from 'react-dom'\nimport './index.scss'\nimport { Button } from '@/components/Button'\nimport { LocalStorageHelper } from '@/utils/local-storage-helper'\nimport { bookmarksApiService } from '@/services/bookmarks-api.services'\nimport { IHeader } from '@/models/IHeader'\n\ninterface ModalProps {\n\tisOpen: boolean\n\tonClose: () => void\n\tchildren: ReactNode\n}\n\nconst Modal: React.FC = ({ isOpen, onClose, children }) => {\n\tif (!isOpen) return null\n\n\treturn createPortal(\n\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t\t{children}\n\t\t\t
\n\t\t
,\n\t\tdocument.getElementById('modal-root') as HTMLDivElement,\n\t)\n}\n\ninterface BookmarkProps {\n\tisMobile: boolean,\n\tbackToMenu: () => void\n}\n\nexport default function BookmarksModal({ isMobile, backToMenu }: BookmarkProps) {\n\tconst [modalVisibility, setmodalVisibility] = useState(false)\n\tconst [bookmarks, setBookmarks] = useState([])\n\tconst [loading, setLoading] = useState(false)\n\tconst parentPages = [\n\t\t'Resources',\n\t\t'Articles',\n\t\t'Members',\n\t\t'Volunteers',\n\t\t'Events',\n\t]\n\n\tconst closeModal = () => {\n\t\tsetmodalVisibility(false)\n\t}\n\n\tconst backToMenuHandler = () => {\n\t\tbackToMenu();\n\t\tsetmodalVisibility(false)\n\t}\n\n\tconst onBookmarksOpen = async () => {\n\t\tsetmodalVisibility(true)\n\t\tconst header = LocalStorageHelper.getItem('header-info')\n\t\tif (header?.memberId) {\n\t\t\tconst bookmarks = LocalStorageHelper.getItem(`bookmarks-${header.memberId}`)\n\t\t\tif(bookmarks === undefined || bookmarks === null) {\n\t\t\t\tsetLoading(true)\n\t\t\t\tsetBookmarks(\n\t\t\t\t\tawait bookmarksApiService.getAndStoreBookmarks(header.memberId),\n\t\t\t\t)\n\t\t\t\tsetLoading(false)\n\t\t\t}\n\t\t\telse {\n\t\t\t\tsetBookmarks(bookmarks ?? []);\n\t\t\t}\n\t\t}\n\t}\n\n\tconst unBookmark = async (pageId: number) => {\n\t\tconst header = LocalStorageHelper.getItem('header-info')\n\t\tif (header?.memberId) {\n\t\t\tawait bookmarksApiService.deleteBookmark(\n\t\t\t\theader.memberId,\n\t\t\t\tpageId,\n\t\t\t)\n\t\t\tconst bookmarks = LocalStorageHelper.getItem(`bookmarks-${header.memberId}`)\n\t\t\tsetBookmarks(bookmarks ?? []);\n\t\t}\n\t}\n\n\tuseEffect(() => {\n\t\tif (modalVisibility) {\n\t\t\tdocument.body.classList.add('overflow-hidden')\n\t\t} else {\n\t\t\tdocument.body.classList.remove('overflow-hidden')\n\t\t}\n\t}, [modalVisibility])\n\n\treturn (\n\t\t
\n\t\t\t{isMobile ? (\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\tBookmarks\n\t\t\t\t\n\t\t\t) : (\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t)}\n\t\t\t\n\t\t\t\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t

Bookmarks

\n\t\t\t\t\t\t
\n\t\t\t\t\t\t{loading && (\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\tLoading...\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{!loading &&\n\t\t\t\t\t\t\tbookmarks &&\n\t\t\t\t\t\t\tbookmarks?.map((bookmark) => (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t{parentPages.includes(\n\t\t\t\t\t\t\t\t\t\t\tbookmark.pageType,\n\t\t\t\t\t\t\t\t\t\t) ? (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{bookmark.name}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\tunBookmark(bookmark.id)\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\t\t\t\t\tloading\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? 'p-[10px] hover:bg-sky-700 rounded-[60px] stroke-sky-800 border text-action-secondary-20 justify-center items-center flex'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: 'p-[10px] bg-sky-800 rounded-[60px] border stroke-white text-action-secondary-20 justify-center items-center flex hover:bg-sky-700'\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t{!loading && bookmarks?.length == 0 && (\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\tNo bookmarks\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t)}\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t\n\t\t\n\t)\n}\n"],"names":["Modal","isOpen","onClose","children","createPortal","jsxs","jsx","BookmarksModal","isMobile","backToMenu","modalVisibility","setmodalVisibility","useState","bookmarks","setBookmarks","loading","setLoading","parentPages","closeModal","backToMenuHandler","onBookmarksOpen","header","LocalStorageHelper","bookmarksApiService","unBookmark","pageId","useEffect","FontAwesomeIcon","faBookmark","Tooltip","faChevronLeft","bookmark","faFileText","faLink"],"mappings":"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"}