{"version":3,"file":"static/chunks/8939-be4ce3fccf3eef5b.js","mappings":"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","sources":["webpack://_N_E/./src/components/Breadcrumbs/Breadcrumbs.styled.js","webpack://_N_E/./src/components/Breadcrumbs/Breadcrumbs.js","webpack://_N_E/./src/components/Breadcrumbs/index.js","webpack://_N_E/./src/components/Pagination/hooks/index.js","webpack://_N_E/./src/components/Pagination/Pagination.styled.js","webpack://_N_E/./src/components/Pagination/subcomponents/NumberedButtons.js","webpack://_N_E/./src/components/Pagination/Pagination.js","webpack://_N_E/./src/components/Pagination/index.js","webpack://_N_E/./src/components/Pagination/utils/index.js","webpack://_N_E/./src/modules/CategoryBooks/constants/index.js","webpack://_N_E/./src/modules/CategoryBooks/CategoryBooks.js","webpack://_N_E/./src/modules/CategoryBooks/index.js"],"sourcesContent":["import { styled } from \"@linaria/react\";\nimport { sizes } from \"common/styles/config\";\nexport const BreadcrumbsNavigation = /*#__PURE__*/styled(\"div\")({\n name: \"BreadcrumbsNavigation\",\n class: \"BreadcrumbsNavigation_b1uf9eg4\"\n});\nexport const BreadcrumbLink = /*#__PURE__*/styled(\"a\")({\n name: \"BreadcrumbLink\",\n class: \"BreadcrumbLink_b17fz8e5\"\n});\nexport const BreadcrumbText = /*#__PURE__*/styled(\"span\")({\n name: \"BreadcrumbText\",\n class: \"BreadcrumbText_b1yqr7m6\"\n});\nexport const BreadcrumbItem = /*#__PURE__*/styled(\"div\")({\n name: \"BreadcrumbItem\",\n class: \"BreadcrumbItem_b1iuk1p3\"\n});\n\nrequire(\"./Breadcrumbs.styled.linaria.module.css!=!../../../node_modules/@linaria/webpack5-loader/lib/outputCssLoader.js!./Breadcrumbs.styled.js\");","import React from \"react\";\nimport Link from \"next/link\";\nimport PropTypes from \"prop-types\";\nimport * as S from \"./Breadcrumbs.styled\";\nconst Breadcrumbs = ({\n linksList,\n styles\n}) => \n {linksList.map((item, index) => {\n const showBreak = index !== linksList.length - 1;\n const shouldRenderLink = item.isActive || showBreak;\n return \n {shouldRenderLink ? \n {item.label}\n : {item.label}}\n {showBreak && <> / >}\n ;\n })}\n ;\nBreadcrumbs.propTypes = {\n linksList: PropTypes.array,\n styles: PropTypes.object\n};\nBreadcrumbs.defaultProps = {\n linksList: [],\n styles: {}\n};\nexport default Breadcrumbs;","import Breadcrumbs from \"./Breadcrumbs\";\n\nexport default Breadcrumbs;\n","import { useEffect, useState } from \"react\";\nimport { useRouter } from \"next/router\";\n\nimport { getPageSize, getPage } from \"../utils\";\nimport { DEFAULT_PAGE, DEFAULT_PAGE_SIZE } from \"../constants\";\n\nexport const usePagination = ({ pageSize } = {}) => {\n const router = useRouter();\n const pageFromUrl = getPage(router.query.page);\n const pageSizeFromUrl = getPageSize(router.query.pageSize || pageSize);\n\n const [pageValue, setPage] = useState(DEFAULT_PAGE);\n const [pageSizeValue, setPageSize] = useState(DEFAULT_PAGE_SIZE);\n\n useEffect(() => {\n setPage(pageFromUrl);\n setPageSize(pageSizeFromUrl);\n }, [router.query]);\n\n return {\n page: pageValue,\n pageSize: pageSizeValue,\n setPage,\n setPageSize\n };\n};\n","import { styled } from \"@linaria/react\";\nimport { breakpoints, sizes, weights } from \"common/styles/config\";\nimport { ButtonAccentText } from \"components/Button/Button.styled\";\nimport ArrowIcon from \"public/icons/new-arrow.svg\";\nexport const Pagination = /*#__PURE__*/styled(\"div\")({\n name: \"Pagination\",\n class: \"Pagination_p1t6kx77\"\n});\nexport const ButtonsWrapper = /*#__PURE__*/styled(\"div\")({\n name: \"ButtonsWrapper\",\n class: \"ButtonsWrapper_b1iz4jvd\"\n});\nexport const PageContainer = /*#__PURE__*/styled(\"div\")({\n name: \"PageContainer\",\n class: \"PageContainer_p1y7o2wk\"\n});\nexport const PreviousIcon = /*#__PURE__*/styled(\"div\")({\n name: \"PreviousIcon\",\n class: \"PreviousIcon_pbr8wep\"\n});\nexport const NextIcon = /*#__PURE__*/styled(PreviousIcon)({\n name: \"NextIcon\",\n class: \"NextIcon_n1pmvtkb\"\n});\nexport const CellButton = /*#__PURE__*/styled(\"button\")({\n name: \"CellButton\",\n class: \"CellButton_c1p6h1hm\",\n vars: {\n \"c1p6h1hm-0\": [({\n isCompact\n }) => isCompact ? \"none\" : \"flex\"],\n \"c1p6h1hm-1\": [({\n isActive\n }) => isActive ? \"#f7f7f8\" : \"#ffffff\"],\n \"c1p6h1hm-2\": [({\n isActive\n }) => isActive ? \"1px solid #c4c4c4\" : \"1px solid #3e5c6d\"],\n \"c1p6h1hm-5\": [({\n isActive\n }) => isActive ? \"#ED5121\" : \"#3e5c6d\"],\n \"c1p6h1hm-6\": [({\n isActive\n }) => isActive ? \"initial\" : \"pointer\"]\n }\n});\nexport const Ellipsis = /*#__PURE__*/styled(\"div\")({\n name: \"Ellipsis\",\n class: \"Ellipsis_e1b0c3an\"\n});\nexport const PaginationActions = /*#__PURE__*/styled(\"div\")({\n name: \"PaginationActions\",\n class: \"PaginationActions_p1hl9tgu\"\n});\nexport const PageSizeWrapper = /*#__PURE__*/styled(\"div\")({\n name: \"PageSizeWrapper\",\n class: \"PageSizeWrapper_p126sept\"\n});\nexport const PageViewingBottomWOPages = /*#__PURE__*/styled(\"p\")({\n name: \"PageViewingBottomWOPages\",\n class: \"PageViewingBottomWOPages_pwt7u3b\"\n});\nexport const ResultsText = /*#__PURE__*/styled(PageViewingBottomWOPages)({\n name: \"ResultsText\",\n class: \"ResultsText_ruw0wqw\"\n});\nexport const PaginationPageSizeActions = /*#__PURE__*/styled(PaginationActions)({\n name: \"PaginationPageSizeActions\",\n class: \"PaginationPageSizeActions_p1yy5xy4\"\n});\n\nrequire(\"./Pagination.styled.linaria.module.css!=!../../../node_modules/@linaria/webpack5-loader/lib/outputCssLoader.js!./Pagination.styled.js\");","import React, { memo } from \"react\";\nimport * as S from \"../Pagination.styled\";\nimport PropTypes from \"prop-types\";\nconst CURRENT_PAGES_ELLIPSIS_LIMIT = 4;\nconst NumberedButtons = ({\n meta,\n handleSetPage\n}) => {\n const isActive = meta.page === meta.pages;\n if (meta.pages === 1 || meta.pages === null) {\n return 1;\n }\n if (meta.pages <= 5) {\n const buttons = [...new Array(meta.pages)].map((el, index) => handleSetPage(index + 1)} isActive={meta.page === index + 1} key={index + 1}>\n {index + 1}\n );\n return buttons;\n } else {\n if (meta.page < CURRENT_PAGES_ELLIPSIS_LIMIT) {\n const buttons = [...new Array(CURRENT_PAGES_ELLIPSIS_LIMIT)].map((el, index) => handleSetPage(index + 1)} isActive={meta.page === index + 1} key={index + 1}>\n {index + 1}\n );\n return <>\n {buttons}\n \n handleSetPage(meta.pages)} isActive={isActive}>\n {meta.pages}\n \n >;\n }\n return <>\n handleSetPage(1)}>1\n \n {isActive && handleSetPage(meta.page - 2)}>\n {meta.page - 2}\n }\n handleSetPage(meta.page - 1)}>\n {meta.page - 1}\n \n handleSetPage(meta.page)} isActive={true}>\n {meta.page}\n \n {meta.page !== meta.pages && handleSetPage(meta.page + 1)}>\n {meta.page + 1}\n }\n {meta.page < meta.pages - 2 && }\n {meta.page < meta.pages - 1 && handleSetPage(meta.pages)} isActive={isActive}>\n {meta.pages}\n }\n >;\n }\n};\nNumberedButtons.propTypes = {\n meta: PropTypes.shape({\n page: PropTypes.number.isRequired,\n pages: PropTypes.number\n }),\n handleSetPage: PropTypes.func.isRequired\n};\nexport default memo(NumberedButtons);","import React, { memo, useCallback, useEffect } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { useRouter } from \"next/router\";\nimport { isPresentValue } from \"common/utils\";\nimport Button from \"components/Button\";\nimport { ACCENT_TEXT } from \"common/constants/buttonTypes\";\nimport { navigateToPage, getPageSize, getPaginationConfig, PAGINATION_OPTIONS } from \"./utils\";\nimport NumberedButtons from \"./subcomponents/NumberedButtons\";\nimport { DEFAULT_PAGE, PAGINATION_MODES } from \"./constants\";\nimport * as S from \"./Pagination.styled\";\nconst UI_PAGES_STEP = 99;\nconst Pagination = ({\n data,\n wrapper: WrapperComponent,\n basePath,\n defaultPage,\n mode,\n showPageSizeFilter,\n setPageSize,\n isLoading,\n onPrevPageClick,\n onNextPageClick,\n setPage,\n scrollTargetPosY,\n pageRouteProps,\n meta\n}) => {\n const router = useRouter();\n const {\n pageSize: parsedPageSize\n } = router.query;\n const pageSize = getPageSize(parsedPageSize);\n const {\n prevButtonProps,\n nextButtonProps\n } = getPaginationConfig(mode);\n const currentPageContainer = Page {meta.page};\n useEffect(() => {\n if (mode === PAGINATION_MODES.WITH_PAGE_BUTTONS && meta.pages && meta.page > meta.pages) {\n navigateToPage({\n setPage,\n page: meta.pages,\n pageSize,\n router,\n basePath,\n targetPosY: scrollTargetPosY,\n showPageSizeFilter,\n pageRouteProps,\n mode,\n before: meta.before\n });\n }\n }, [meta]);\n const handlePrevPageClick = useCallback(() => {\n if (isPresentValue(onPrevPageClick)) {\n onPrevPageClick();\n return;\n }\n navigateToPage({\n setPage,\n page: meta.page - 1,\n pageSize,\n router,\n basePath,\n targetPosY: scrollTargetPosY,\n showPageSizeFilter,\n pageRouteProps,\n mode,\n before: meta.before\n });\n }, [meta, scrollTargetPosY, pageSize, showPageSizeFilter]);\n const handleNextPageClick = useCallback(() => {\n if (isPresentValue(onNextPageClick)) {\n onNextPageClick();\n return;\n }\n navigateToPage({\n setPage,\n page: meta.page + 1,\n pageSize,\n router,\n basePath,\n targetPosY: scrollTargetPosY,\n showPageSizeFilter,\n pageRouteProps,\n mode,\n after: meta.after\n });\n }, [meta, scrollTargetPosY, pageSize, showPageSizeFilter]);\n const handleSetPage = useCallback(page => {\n navigateToPage({\n setPage,\n page,\n pageSize,\n router,\n basePath,\n targetPosY: scrollTargetPosY,\n showPageSizeFilter,\n pageRouteProps\n });\n }, [meta, scrollTargetPosY, pageSize, showPageSizeFilter]);\n const setPageSizeHandler = useCallback(value => {\n setPage(DEFAULT_PAGE);\n setPageSize(value);\n router.push(`${basePath}?page=${DEFAULT_PAGE}&pageSize=${value}`, undefined, {\n shallow: true\n });\n }, [basePath]);\n if (!data.length || !showPageSizeFilter && (meta.pages === 1 || !meta.pages && !meta.withNextPage && meta.page === 1) && mode !== PAGINATION_MODES.INFINITE || mode === PAGINATION_MODES.INFINITE && !meta.after && !meta.before) {\n return null;\n }\n return \n \n UI_PAGES_STEP} onClick={handlePrevPageClick}>\n \n \n {mode === PAGINATION_MODES.INFINITE ? null : mode === PAGINATION_MODES.DEFAULT ? currentPageContainer : }\n UI_PAGES_STEP} onClick={handleNextPageClick}>\n \n \n \n {showPageSizeFilter && \n Results per page:\n \n {PAGINATION_OPTIONS.map((pageTotal, key) => \n }\n ;\n};\nPagination.propTypes = {\n data: PropTypes.array.isRequired,\n showPageSizeFilter: PropTypes.bool,\n showPagesContent: PropTypes.bool,\n wrapper: PropTypes.elementType,\n basePath: PropTypes.string.isRequired,\n defaultPage: PropTypes.number,\n isLoading: PropTypes.bool,\n onPrevPageClick: PropTypes.func,\n onNextPageClick: PropTypes.func,\n setPage: PropTypes.func.isRequired,\n setPageSize: PropTypes.func,\n scrollTargetPosY: PropTypes.number,\n // next link props see: https://nextjs.org/docs/api-reference/next/link\n pageRouteProps: PropTypes.object,\n mode: PropTypes.string,\n meta: PropTypes.oneOfType([PropTypes.shape({\n count: PropTypes.number,\n itemsPerPage: PropTypes.number,\n page: PropTypes.number,\n pages: PropTypes.number,\n after: PropTypes.string,\n before: PropTypes.string\n }), PropTypes.shape({\n page: PropTypes.number,\n withNextPage: PropTypes.bool,\n withPreviousPage: PropTypes.bool,\n count: PropTypes.number\n })])\n};\nPagination.defaultProps = {\n wrapper: S.Pagination,\n isLoading: false,\n showPageSizeFilter: true,\n showPagesContent: true,\n defaultPage: DEFAULT_PAGE,\n setPageSize: () => {},\n onPrevPageClick: null,\n onNextPageClick: null,\n mode: PAGINATION_MODES.DEFAULT,\n meta: {},\n pageRouteProps: {\n shallow: true\n }\n};\nexport default memo(Pagination);","import Pagination from \"./Pagination\";\n\nexport default Pagination;\n","import React from \"react\";\n\nimport { isEmptyValue, isPresentValue, scrollTo } from \"common/utils\";\n\nimport { DEFAULT_PAGE, DEFAULT_PAGE_SIZE, PAGINATION_MODES } from \"../constants\";\n\nexport const getViewingPageInfo = ({ data, meta, defaultPage = DEFAULT_PAGE }) => {\n if (!data.length) {\n return null;\n }\n\n return (\n <>\n {`Viewing page ${meta.page} `}\n {isEmptyValue(meta.pages) || meta.pages < defaultPage ? \"\" : `of ${meta.pages}`}\n >\n );\n};\n\nexport const navigateToPage = ({\n setPage,\n page,\n router,\n basePath,\n targetPosY,\n pageSize,\n showPageSizeFilter,\n pageRouteProps,\n mode,\n after,\n before\n}) => {\n const hasQuery = basePath.match(/\\?/);\n setPage(page);\n\n if (isPresentValue(targetPosY) && targetPosY !== 0) {\n scrollTo(targetPosY);\n }\n\n if (mode === PAGINATION_MODES.INFINITE) {\n let navigateParam = `?after=${after}`;\n\n if (after) {\n navigateParam = `?after=${after}`;\n } else if (before) {\n navigateParam = `?before=${before}`;\n } else {\n return;\n }\n\n router.push(`${basePath}${navigateParam}`, undefined, pageRouteProps);\n return;\n }\n\n const defaultQueryParams = `${hasQuery ? \"&\" : \"?\"}page=${page}`;\n const queryParams = showPageSizeFilter\n ? `${defaultQueryParams}&pageSize=${pageSize}`\n : defaultQueryParams;\n\n router.push(`${basePath}${queryParams}`, undefined, pageRouteProps);\n};\n\nexport const PAGINATION_OPTIONS = [10, 20, 50, 100];\n\nexport const getPaginationConfig = (mode) => {\n switch (mode) {\n case PAGINATION_MODES.INFINITE:\n return {\n prevButtonProps: {\n getDisabled: ({ before }) => !before\n },\n nextButtonProps: {\n getDisabled: ({ after }) => !after\n }\n };\n case PAGINATION_MODES.WITH_PAGE_BUTTONS:\n return {\n prevButtonProps: {\n getDisabled: ({ isLoading, page, defaultPage }) =>\n page === defaultPage || isLoading\n },\n nextButtonProps: {\n getDisabled: ({ isLoading, page, totalPages }) =>\n page >= totalPages || isLoading\n }\n };\n default:\n return {\n prevButtonProps: {\n getDisabled: ({ withPreviousPage }) => !withPreviousPage\n },\n nextButtonProps: {\n getDisabled: ({ withNextPage }) => !withNextPage\n }\n };\n }\n};\n\nexport const getPage = (value) => {\n const parsedValue = parseInt(value, 10);\n\n return isPresentValue(parsedValue) && parsedValue > 0 ? parsedValue : DEFAULT_PAGE;\n};\n\nexport const getPageSize = (value) => {\n const parsedValue = parseInt(value, 10);\n\n return PAGINATION_OPTIONS.includes(parsedValue) ? parsedValue : DEFAULT_PAGE_SIZE;\n};\n","import { PAGINATION_MODES } from \"components/Pagination/constants\";\n\nexport const PAGINATION_TYPE_BY_PAGE_TYPE = {\n author: PAGINATION_MODES.WITH_PAGE_BUTTONS,\n category: PAGINATION_MODES.INFINITE,\n publisher: PAGINATION_MODES.WITH_PAGE_BUTTONS\n};\n","import React, { memo, useEffect, useMemo } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { useBreadcrumbsContext } from \"contexts/Breadcrumbs/utils\";\nimport { RESET_BREADCRUMB_LINKS, SET_BREADCRUMB_LINKS } from \"contexts/Breadcrumbs/reducers/constants\";\nimport Pagination from \"components/Pagination\";\nimport { usePagination } from \"components/Pagination/hooks\";\nimport Breadcrumbs from \"components/Breadcrumbs\";\nimport { renderSubTitle, renderCards, buildCategoryBreadcrumbs, getBreadcrumbsFromCategory, getCategoryTypeByRoute } from \"./utils\";\nimport * as S from \"./CategoryBooks.styled\";\nimport { PAGINATION_TYPE_BY_PAGE_TYPE } from \"./constants\";\nconst CategoryBooks = ({\n title,\n data,\n subTitle,\n route,\n category,\n meta\n}) => {\n const {\n setPage\n } = usePagination();\n const description = useMemo(() => renderSubTitle(subTitle), [subTitle]);\n const pageType = getCategoryTypeByRoute(route);\n const cards = useMemo(() => renderCards(data, pageType), [data]);\n const [{\n breadcrumbLinks\n }, breadcrumbsDispatch] = useBreadcrumbsContext();\n useEffect(() => {\n breadcrumbsDispatch({\n type: SET_BREADCRUMB_LINKS,\n payload: buildCategoryBreadcrumbs({\n route,\n categories: getBreadcrumbsFromCategory(category)\n })\n });\n return () => {\n breadcrumbsDispatch({\n type: RESET_BREADCRUMB_LINKS\n });\n };\n }, [route, category]);\n return \n \n \n {title}\n {description}\n \n \n \n {cards}\n \n \n \n ;\n};\nCategoryBooks.propTypes = {\n title: PropTypes.string.isRequired,\n subTitle: PropTypes.string,\n data: PropTypes.array.isRequired,\n meta: PropTypes.object.isRequired,\n route: PropTypes.string.isRequired,\n category: PropTypes.object.isRequired\n};\nexport default memo(CategoryBooks);","import CategoryBooks from \"./CategoryBooks\";\n\nexport default CategoryBooks;\n"],"names":["BreadcrumbsNavigation","styled","name","class","BreadcrumbLink","BreadcrumbText","BreadcrumbItem","require","Breadcrumbs","linksList","styles","style","map","item","index","showBreak","length","shouldRenderLink","isActive","key","href","path","passHref","label","defaultProps","usePagination","pageSize","router","useRouter","pageFromUrl","getPage","query","page","pageSizeFromUrl","getPageSize","useState","DEFAULT_PAGE","pageValue","setPage","DEFAULT_PAGE_SIZE","pageSizeValue","setPageSize","useEffect","Pagination","ButtonsWrapper","PageContainer","PreviousIcon","NextIcon","CellButton","vars","isCompact","Ellipsis","PaginationActions","PageSizeWrapper","PageViewingBottomWOPages","ResultsText","PaginationPageSizeActions","NumberedButtons","meta","handleSetPage","pages","Array","el","onClick","buttons","memo","data","WrapperComponent","wrapper","basePath","defaultPage","mode","showPageSizeFilter","isLoading","onPrevPageClick","onNextPageClick","scrollTargetPosY","pageRouteProps","parsedPageSize","getPaginationConfig","prevButtonProps","nextButtonProps","currentPageContainer","PAGINATION_MODES","navigateToPage","targetPosY","before","handlePrevPageClick","useCallback","isPresentValue","handleNextPageClick","after","setPageSizeHandler","value","push","undefined","shallow","withNextPage","disabled","getDisabled","withPreviousPage","totalPages","PAGINATION_OPTIONS","pageTotal","Button","variant","ACCENT_TEXT","S","showPagesContent","hasQuery","match","scrollTo","defaultQueryParams","queryParams","navigateParam","parsedValue","parseInt","includes","PAGINATION_TYPE_BY_PAGE_TYPE","author","category","publisher","CategoryBooks","title","subTitle","route","description","useMemo","renderSubTitle","pageType","getCategoryTypeByRoute","cards","renderCards","useBreadcrumbsContext","breadcrumbLinks","breadcrumbsDispatch","type","SET_BREADCRUMB_LINKS","payload","buildCategoryBreadcrumbs","categories","getBreadcrumbsFromCategory","RESET_BREADCRUMB_LINKS","categoryRoute"],"sourceRoot":""}