1 |
- {"version":3,"file":"52271.js","mappings":"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","sources":["webpack://quran.com/./public/icons/west.svg","webpack://quran.com/./src/components/chapters/Info/Info.module.scss","webpack://quran.com/./src/components/chapters/Info/InfoPage.tsx","webpack://quran.com/./src/components/chapters/Info/index.tsx","webpack://quran.com/./src/lib/og.ts","webpack://quran.com/./src/utils/staticPageGeneration.ts"],"sourcesContent":["var _path;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nvar SvgWest = function SvgWest(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m9 19 1.41-1.41L5.83 13H22v-2H5.83l4.59-4.59L9 5l-7 7 7 7Z\",\n fill: \"currentColor\"\n })));\n};\nexport default SvgWest;","// Exports\nmodule.exports = {\n\t\"container\": \"Info_container__F5EE7\",\n\t\"infoBody\": \"Info_infoBody__5p7Nu\",\n\t\"backContainer\": \"Info_backContainer__6CVP7\",\n\t\"backIcon\": \"Info_backIcon__ywZyE\",\n\t\"imageContainer\": \"Info_imageContainer__48mv2\",\n\t\"textBody\": \"Info_textBody__Tx5BZ\",\n\t\"infoTextContainer\": \"Info_infoTextContainer__N2E46\",\n\t\"headerContainer\": \"Info_headerContainer__Gt5qK\",\n\t\"surahName\": \"Info_surahName__X8hE6\",\n\t\"detailsContainer\": \"Info_detailsContainer__YGVEI\",\n\t\"detailHeader\": \"Info_detailHeader__IXEu1\"\n};\n","import React from 'react';\n\nimport useTranslation from 'next-translate/useTranslation';\n\nimport Info from '.';\n\nimport NextSeoWrapper from '@/components/NextSeoWrapper';\nimport { getChapterOgImageUrl } from '@/lib/og';\nimport { getLanguageAlternates, toLocalizedNumber } from '@/utils/locale';\nimport { getCanonicalUrl, getSurahInfoNavigationUrl } from '@/utils/navigation';\nimport Error from 'src/pages/_error';\nimport { ChapterInfoResponse, ChapterResponse } from 'types/ApiResponses';\n\ninterface Props {\n chapterResponse?: ChapterResponse;\n chapterInfoResponse?: ChapterInfoResponse;\n hasError?: boolean;\n}\n\nconst InfoPage: React.FC<Props> = ({ hasError, chapterInfoResponse, chapterResponse }) => {\n const { t, lang } = useTranslation('common');\n if (hasError) {\n return <Error statusCode={500} />;\n }\n const navigationUrl = getSurahInfoNavigationUrl(chapterResponse.chapter.slug);\n\n return (\n <>\n <NextSeoWrapper\n title={`${t('surah')} ${chapterResponse.chapter.transliteratedName} - ${toLocalizedNumber(\n 1,\n lang,\n )}-${toLocalizedNumber(chapterResponse.chapter.versesCount, lang)}`}\n image={getChapterOgImageUrl({\n chapterId: chapterInfoResponse.chapterInfo.id,\n locale: lang,\n })}\n imageWidth={1200}\n imageHeight={630}\n canonical={getCanonicalUrl(lang, navigationUrl)}\n languageAlternates={getLanguageAlternates(navigationUrl)}\n description={chapterInfoResponse.chapterInfo.shortText}\n />\n <Info chapter={chapterResponse.chapter} chapterInfo={chapterInfoResponse.chapterInfo} />\n </>\n );\n};\n\nexport default InfoPage;\n","/* eslint-disable react/no-danger */\n\nimport React from 'react';\n\nimport Image from 'next/image';\nimport useTranslation from 'next-translate/useTranslation';\n\nimport styles from './Info.module.scss';\n\nimport Button, { ButtonSize, ButtonVariant } from '@/dls/Button/Button';\nimport BackIcon from '@/icons/west.svg';\nimport { logButtonClick } from '@/utils/eventLogger';\nimport { getBlurDataUrl } from '@/utils/image';\nimport { toLocalizedNumber } from '@/utils/locale';\nimport { getSurahNavigationUrl } from '@/utils/navigation';\nimport Chapter from 'types/Chapter';\nimport ChapterInfo from 'types/ChapterInfo';\n\ninterface Props {\n chapter?: Chapter;\n chapterInfo?: ChapterInfo;\n}\n\nconst Info: React.FC<Props> = ({ chapter, chapterInfo }) => {\n const { t, lang } = useTranslation();\n return (\n <div className={styles.container}>\n <div className={styles.infoBody}>\n <div>\n <div className={styles.backContainer}>\n <Button\n variant={ButtonVariant.Ghost}\n href={getSurahNavigationUrl(chapterInfo.chapterId)}\n className={styles.backIcon}\n prefix={<BackIcon />}\n size={ButtonSize.Small}\n onClick={() => {\n logButtonClick('chapter_info_go_back');\n }}\n >\n {t('surah-info:go-to-surah')}\n </Button>\n </div>\n <div className={styles.imageContainer}>\n <Image\n src={`/images/${chapter.revelationPlace}.jpg`}\n layout=\"fill\"\n placeholder=\"blur\"\n blurDataURL={getBlurDataUrl(200, 200)}\n alt={t(`surah-info:${chapter.revelationPlace}`)}\n />\n </div>\n </div>\n <div className={styles.infoTextContainer}>\n <div className={styles.headerContainer}>\n <div className={styles.surahName}>\n {t('common:surah')} {chapter.transliteratedName}\n </div>\n <div className={styles.detailsContainer}>\n <div>\n <p className={styles.detailHeader}>{t('common:ayahs')}</p>\n <p>{toLocalizedNumber(chapter.versesCount, lang)}</p>\n </div>\n <div>\n <p className={styles.detailHeader}>{t('surah-info:revelation-place')}</p>\n <p>{t(`surah-info:${chapter.revelationPlace}`)}</p>\n </div>\n </div>\n </div>\n <div dangerouslySetInnerHTML={{ __html: chapterInfo.text }} className={styles.textBody} />\n </div>\n </div>\n </div>\n );\n};\n\nexport default Info;\n","const BASE_OG_URL = 'https://og.qurancdn.com';\n\ninterface BaseOgOptions {\n locale: string;\n}\n\nexport const getDefaultOgImageUrl = ({ locale }: BaseOgOptions) =>\n `${BASE_OG_URL}/api/og?lang=${locale}`;\n\nexport const getAboutTheQuranImageUrl = ({ locale }: BaseOgOptions) =>\n `${BASE_OG_URL}/api/og/about-the-quran?lang=${locale}`;\n\nexport const getLearningPlansImageUrl = ({ locale }: BaseOgOptions) =>\n `${BASE_OG_URL}/api/og/learning-plans?lang=${locale}`;\n\nexport const getChapterOgImageUrl = ({\n chapterId,\n locale,\n verseNumber,\n}: BaseOgOptions & {\n chapterId: string | number;\n verseNumber?: string | number;\n}) => {\n const url = `${BASE_OG_URL}/api/og/chapter/${chapterId}?lang=${locale}`;\n\n if (!verseNumber) return url;\n return `${url}&verse=${verseNumber}`;\n};\n","export const REVALIDATION_PERIOD_ON_ERROR_SECONDS = 604800; // 7 days. TODO: @osama update the naming + value when we revert this back\nexport const ONE_DAY_REVALIDATION_PERIOD_SECONDS = 86400; // 1 day\nexport const ONE_WEEK_REVALIDATION_PERIOD_SECONDS = 604800; // 7 days\nexport const ONE_MONTH_REVALIDATION_PERIOD_SECONDS = 2592000; // 30 days\n"],"names":["React","useTranslation","Info","NextSeoWrapper","getChapterOgImageUrl","getLanguageAlternates","toLocalizedNumber","getCanonicalUrl","getSurahInfoNavigationUrl","Error","InfoPage","hasError","chapterInfoResponse","chapterResponse","t","lang","statusCode","navigationUrl","chapter","slug","title","transliteratedName","versesCount","image","chapterId","chapterInfo","id","locale","imageWidth","imageHeight","canonical","languageAlternates","description","shortText","Image","styles","Button","ButtonSize","ButtonVariant","BackIcon","logButtonClick","getBlurDataUrl","getSurahNavigationUrl","div","className","container","infoBody","backContainer","variant","Ghost","href","backIcon","prefix","size","Small","onClick","imageContainer","src","revelationPlace","layout","placeholder","blurDataURL","alt","infoTextContainer","headerContainer","surahName","detailsContainer","p","detailHeader","dangerouslySetInnerHTML","__html","text","textBody","BASE_OG_URL","getDefaultOgImageUrl","getAboutTheQuranImageUrl","getLearningPlansImageUrl","verseNumber","url","REVALIDATION_PERIOD_ON_ERROR_SECONDS","ONE_DAY_REVALIDATION_PERIOD_SECONDS","ONE_WEEK_REVALIDATION_PERIOD_SECONDS","ONE_MONTH_REVALIDATION_PERIOD_SECONDS"],"sourceRoot":""}
|