88859.js 87 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429
  1. exports.id = 88859;
  2. exports.ids = [88859];
  3. exports.modules = {
  4. /***/ 96669:
  5. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  6. "use strict";
  7. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  8. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  9. /* harmony export */ });
  10. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
  11. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
  12. var _path;
  13. function _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); }
  14. var SvgUnbookmarked = function SvgUnbookmarked(props) {
  15. return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", _extends({
  16. xmlns: "http://www.w3.org/2000/svg",
  17. width: 24,
  18. height: 24,
  19. viewBox: "0 0 24 24",
  20. fill: "none",
  21. stroke: "currentColor",
  22. strokeWidth: 2,
  23. strokeLinecap: "round",
  24. strokeLinejoin: "round",
  25. className: "feather feather-bookmark"
  26. }, props), _path || (_path = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
  27. d: "m19 21-7-5-7 5V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z"
  28. })));
  29. };
  30. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SvgUnbookmarked);
  31. /***/ }),
  32. /***/ 51589:
  33. /***/ ((module) => {
  34. // Exports
  35. module.exports = {
  36. "header": "CollectionList_header__Ghz8p",
  37. "itemContainer": "CollectionList_itemContainer__DrF_x",
  38. "itemTitle": "CollectionList_itemTitle__cql2u",
  39. "itemInfo": "CollectionList_itemInfo__KwBtt",
  40. "itemIcon": "CollectionList_itemIcon__qPZ6z",
  41. "itemCount": "CollectionList_itemCount___fntD",
  42. "collectionListContainer": "CollectionList_collectionListContainer__xkayj",
  43. "collectionListEmpty": "CollectionList_collectionListEmpty__VBIZ_"
  44. };
  45. /***/ }),
  46. /***/ 12959:
  47. /***/ ((module) => {
  48. // Exports
  49. module.exports = {
  50. "header": "RenameCollectionModal_header__vBNuv"
  51. };
  52. /***/ }),
  53. /***/ 78118:
  54. /***/ ((module) => {
  55. // Exports
  56. module.exports = {
  57. "bookmarkItem": "BookmarkPill_bookmarkItem__hpZIB",
  58. "linkButtonContainer": "BookmarkPill_linkButtonContainer__RfHXj",
  59. "closeIconContainer": "BookmarkPill_closeIconContainer__5UX1S"
  60. };
  61. /***/ }),
  62. /***/ 66575:
  63. /***/ ((module) => {
  64. // Exports
  65. module.exports = {
  66. "bookmarksHeader": "BookmarkedVersesList_bookmarksHeader__TU3ez",
  67. "verseLinksContainer": "BookmarkedVersesList_verseLinksContainer__meD2a",
  68. "viewAllBookmarksContainer": "BookmarkedVersesList_viewAllBookmarksContainer__LineH",
  69. "container": "BookmarkedVersesList_container__8v8bC"
  70. };
  71. /***/ }),
  72. /***/ 13198:
  73. /***/ ((module) => {
  74. // Exports
  75. module.exports = {
  76. "skeletonContainer": "BookmarkedVersesListSkeleton_skeletonContainer__vreim",
  77. "skeletonItem": "BookmarkedVersesListSkeleton_skeletonItem__YF8QK"
  78. };
  79. /***/ }),
  80. /***/ 54411:
  81. /***/ ((module) => {
  82. // Exports
  83. module.exports = {
  84. "tabsContainer": "BookmarksAndQuickLinks_tabsContainer__pQ8pR",
  85. "contentContainer": "BookmarksAndQuickLinks_contentContainer__qG9mM"
  86. };
  87. /***/ }),
  88. /***/ 28198:
  89. /***/ ((module) => {
  90. // Exports
  91. module.exports = {
  92. "readingSessionItem": "ReadingSessionPill_readingSessionItem__aqaCi",
  93. "linkButtonContainer": "ReadingSessionPill_linkButtonContainer__XikFO"
  94. };
  95. /***/ }),
  96. /***/ 4389:
  97. /***/ ((module) => {
  98. // Exports
  99. module.exports = {
  100. "bookmarksHeader": "RecentReadingSessionsList_bookmarksHeader__PWLmS",
  101. "verseLinksContainer": "RecentReadingSessionsList_verseLinksContainer__4h3Zn",
  102. "viewAllBookmarksContainer": "RecentReadingSessionsList_viewAllBookmarksContainer__pqiBX",
  103. "container": "RecentReadingSessionsList_container__3cQg7"
  104. };
  105. /***/ }),
  106. /***/ 25599:
  107. /***/ ((module) => {
  108. // Exports
  109. module.exports = {
  110. "skeletonContainer": "RecentReadingSessionsListSkeleton_skeletonContainer__zT_uq",
  111. "skeletonItem": "RecentReadingSessionsListSkeleton_skeletonItem__Dj1NI"
  112. };
  113. /***/ }),
  114. /***/ 96318:
  115. /***/ ((module) => {
  116. // Exports
  117. module.exports = {
  118. "baseSize": "Skeleton_baseSize__RsOkc",
  119. "skeleton": "Skeleton_skeleton__u2Uso",
  120. "active": "Skeleton_active__5df2K",
  121. "loading": "Skeleton_loading__iZh50",
  122. "rounded": "Skeleton_rounded__ftYYr",
  123. "content": "Skeleton_content__knKtV"
  124. };
  125. /***/ }),
  126. /***/ 9874:
  127. /***/ ((module) => {
  128. // Exports
  129. module.exports = {
  130. "container": "SurahPreviewRow_container__3ZfRV",
  131. "surahNumber": "SurahPreviewRow_surahNumber__BICjx",
  132. "translatedSurahName": "SurahPreviewRow_translatedSurahName__SHzIe",
  133. "description": "SurahPreviewRow_description__78w9M",
  134. "surahNameContainer": "SurahPreviewRow_surahNameContainer__b78tP",
  135. "surahName": "SurahPreviewRow_surahName__jrca5",
  136. "left": "SurahPreviewRow_left__jd1pg",
  137. "right": "SurahPreviewRow_right__6w3Ku",
  138. "largeText": "SurahPreviewRow_largeText__5M7WS"
  139. };
  140. /***/ }),
  141. /***/ 34349:
  142. /***/ ((module) => {
  143. // Exports
  144. module.exports = {
  145. "container": "Tabs_container__l5DHu",
  146. "tabItem": "Tabs_tabItem__b_JVR",
  147. "tabItemSelected": "Tabs_tabItemSelected__Nt0wr"
  148. };
  149. /***/ }),
  150. /***/ 33369:
  151. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  152. "use strict";
  153. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  154. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  155. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  156. /* harmony export */ });
  157. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  158. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  159. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
  160. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  161. /* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(79165);
  162. /* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(next_link__WEBPACK_IMPORTED_MODULE_2__);
  163. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(60866);
  164. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_3__);
  165. /* harmony import */ var swr__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(15941);
  166. /* harmony import */ var _CollectionSorter_CollectionSorter__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(56321);
  167. /* harmony import */ var _RenameCollectionModal_RenameCollectionModal__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(83620);
  168. /* harmony import */ var _CollectionList_module_scss__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(51589);
  169. /* harmony import */ var _CollectionList_module_scss__WEBPACK_IMPORTED_MODULE_20___default = /*#__PURE__*/__webpack_require__.n(_CollectionList_module_scss__WEBPACK_IMPORTED_MODULE_20__);
  170. /* harmony import */ var _DeleteCollectionAction__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(27957);
  171. /* harmony import */ var _RenameCollectionAction__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(65124);
  172. /* harmony import */ var _dls_ConfirmationModal_ConfirmationModal__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(11817);
  173. /* harmony import */ var _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(79717);
  174. /* harmony import */ var _icons_menu_more_horiz_svg__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(80275);
  175. /* harmony import */ var _icons_unbookmarked_svg__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(96669);
  176. /* harmony import */ var _utils_eventLogger__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(55943);
  177. /* harmony import */ var _utils_locale__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(24709);
  178. /* harmony import */ var src_components_dls_Button_Button__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(50497);
  179. /* harmony import */ var src_components_dls_PopoverMenu_PopoverMenu__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(99163);
  180. /* harmony import */ var src_utils_auth_api__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(37883);
  181. /* harmony import */ var src_utils_auth_apiPaths__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(13830);
  182. /* harmony import */ var types_CollectionSortOptions__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(6059);
  183. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([swr__WEBPACK_IMPORTED_MODULE_4__, _CollectionSorter_CollectionSorter__WEBPACK_IMPORTED_MODULE_5__, _RenameCollectionModal_RenameCollectionModal__WEBPACK_IMPORTED_MODULE_6__, _DeleteCollectionAction__WEBPACK_IMPORTED_MODULE_7__, _RenameCollectionAction__WEBPACK_IMPORTED_MODULE_8__, _dls_ConfirmationModal_ConfirmationModal__WEBPACK_IMPORTED_MODULE_9__, _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_10__, _utils_eventLogger__WEBPACK_IMPORTED_MODULE_13__, src_components_dls_Button_Button__WEBPACK_IMPORTED_MODULE_15__, src_components_dls_PopoverMenu_PopoverMenu__WEBPACK_IMPORTED_MODULE_16__]);
  184. ([swr__WEBPACK_IMPORTED_MODULE_4__, _CollectionSorter_CollectionSorter__WEBPACK_IMPORTED_MODULE_5__, _RenameCollectionModal_RenameCollectionModal__WEBPACK_IMPORTED_MODULE_6__, _DeleteCollectionAction__WEBPACK_IMPORTED_MODULE_7__, _RenameCollectionAction__WEBPACK_IMPORTED_MODULE_8__, _dls_ConfirmationModal_ConfirmationModal__WEBPACK_IMPORTED_MODULE_9__, _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_10__, _utils_eventLogger__WEBPACK_IMPORTED_MODULE_13__, src_components_dls_Button_Button__WEBPACK_IMPORTED_MODULE_15__, src_components_dls_PopoverMenu_PopoverMenu__WEBPACK_IMPORTED_MODULE_16__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  185. /* eslint-disable max-lines */
  186. const DEFAULT_SORT_OPTION = types_CollectionSortOptions__WEBPACK_IMPORTED_MODULE_19__/* .CollectionListSortOption.RecentlyUpdated */ .r.RecentlyUpdated;
  187. const CollectionList = ()=>{
  188. const { 0: collectionToRename , 1: setCollectionToRename } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);
  189. const { t , lang } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_3___default()();
  190. const toast = (0,_dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_10__/* .useToast */ .pm)();
  191. const { 0: sortBy , 1: setSortBy } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(DEFAULT_SORT_OPTION);
  192. const apiParams = {
  193. sortBy
  194. };
  195. const { data , mutate } = (0,swr__WEBPACK_IMPORTED_MODULE_4__["default"])((0,src_utils_auth_apiPaths__WEBPACK_IMPORTED_MODULE_18__/* .makeCollectionsUrl */ .Tb)(apiParams), ()=>(0,src_utils_auth_api__WEBPACK_IMPORTED_MODULE_17__/* .getCollectionsList */ .fG)(apiParams));
  196. const sortOptions = [
  197. {
  198. id: types_CollectionSortOptions__WEBPACK_IMPORTED_MODULE_19__/* .CollectionListSortOption.RecentlyUpdated */ .r.RecentlyUpdated,
  199. label: t("collection:recently-updated")
  200. },
  201. {
  202. id: types_CollectionSortOptions__WEBPACK_IMPORTED_MODULE_19__/* .CollectionListSortOption.Alphabetical */ .r.Alphabetical,
  203. label: t("collection:alphabetical")
  204. },
  205. ];
  206. if (!data) return null;
  207. const collections = data?.data || [];
  208. const onSortOptionChanged = (nextSortBy)=>{
  209. (0,_utils_eventLogger__WEBPACK_IMPORTED_MODULE_13__/* .logValueChange */ .Q8)("collection_list", sortBy, nextSortBy);
  210. setSortBy(nextSortBy);
  211. };
  212. const onCollectionUpdated = ()=>{
  213. mutate();
  214. };
  215. const isRenameModalOpen = !!collectionToRename;
  216. const closeModal = ()=>{
  217. (0,_utils_eventLogger__WEBPACK_IMPORTED_MODULE_13__/* .logButtonClick */ .MY)("rename_collection_action_close", {
  218. collectionId: collectionToRename.id
  219. });
  220. setCollectionToRename(null);
  221. };
  222. const onSubmit = (renameFormData)=>{
  223. (0,_utils_eventLogger__WEBPACK_IMPORTED_MODULE_13__/* .logButtonClick */ .MY)("rename_collection_action_submit", {
  224. collectionId: collectionToRename.id
  225. });
  226. (0,src_utils_auth_api__WEBPACK_IMPORTED_MODULE_17__/* .updateCollection */ .Rm)(collectionToRename.id, {
  227. name: renameFormData.name
  228. }).then(()=>{
  229. onCollectionUpdated();
  230. setCollectionToRename(null);
  231. }).catch(()=>{
  232. toast(t("common:error.general"), {
  233. status: _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_10__/* .ToastStatus.Error */ .YZ.Error
  234. });
  235. });
  236. };
  237. const onCollectionMenuOpenChange = (isMenuOpen, collectionId)=>{
  238. const eventData = {
  239. collectionId
  240. };
  241. if (isMenuOpen) {
  242. (0,_utils_eventLogger__WEBPACK_IMPORTED_MODULE_13__/* .logEvent */ .Kz)("collection_popover_menu_opened", eventData);
  243. } else {
  244. (0,_utils_eventLogger__WEBPACK_IMPORTED_MODULE_13__/* .logEvent */ .Kz)("collection_popover_menu_closed", eventData);
  245. }
  246. };
  247. return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
  248. children: [
  249. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_RenameCollectionModal_RenameCollectionModal__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
  250. onClose: closeModal,
  251. isOpen: isRenameModalOpen,
  252. defaultValue: collectionToRename?.name,
  253. onSubmit: onSubmit
  254. }),
  255. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_dls_ConfirmationModal_ConfirmationModal__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z, {}),
  256. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  257. children: [
  258. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  259. className: (_CollectionList_module_scss__WEBPACK_IMPORTED_MODULE_20___default().header),
  260. children: [
  261. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  262. children: t("collection:collections")
  263. }),
  264. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_CollectionSorter_CollectionSorter__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
  265. options: sortOptions,
  266. selectedOptionId: sortBy,
  267. onChange: onSortOptionChanged,
  268. isSingleCollection: false
  269. })
  270. ]
  271. }),
  272. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  273. className: (_CollectionList_module_scss__WEBPACK_IMPORTED_MODULE_20___default().collectionListContainer),
  274. children: [
  275. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  276. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  277. className: (_CollectionList_module_scss__WEBPACK_IMPORTED_MODULE_20___default().itemContainer),
  278. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx((next_link__WEBPACK_IMPORTED_MODULE_2___default()), {
  279. href: "/collections/all",
  280. children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  281. children: [
  282. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  283. className: (_CollectionList_module_scss__WEBPACK_IMPORTED_MODULE_20___default().itemTitle),
  284. children: t("collection:all-saved-verses")
  285. }),
  286. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  287. className: (_CollectionList_module_scss__WEBPACK_IMPORTED_MODULE_20___default().itemInfo),
  288. children: [
  289. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  290. className: (_CollectionList_module_scss__WEBPACK_IMPORTED_MODULE_20___default().itemIcon),
  291. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_unbookmarked_svg__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .Z, {})
  292. }),
  293. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  294. className: (_CollectionList_module_scss__WEBPACK_IMPORTED_MODULE_20___default().itemCount),
  295. children: [
  296. data?.collectionsItemsCount && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
  297. children: (0,_utils_locale__WEBPACK_IMPORTED_MODULE_14__/* .toLocalizedNumber */ .rQ)(data?.collectionsItemsCount, lang)
  298. }),
  299. " ",
  300. t("common:verses")
  301. ]
  302. })
  303. ]
  304. })
  305. ]
  306. })
  307. })
  308. })
  309. }),
  310. collections.map((collection)=>{
  311. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  312. children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  313. className: (_CollectionList_module_scss__WEBPACK_IMPORTED_MODULE_20___default().itemContainer),
  314. children: [
  315. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx((next_link__WEBPACK_IMPORTED_MODULE_2___default()), {
  316. href: `/collections/${collection.url}`,
  317. children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  318. children: [
  319. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  320. className: (_CollectionList_module_scss__WEBPACK_IMPORTED_MODULE_20___default().itemTitle),
  321. children: collection.name
  322. }),
  323. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  324. className: (_CollectionList_module_scss__WEBPACK_IMPORTED_MODULE_20___default().itemInfo),
  325. children: [
  326. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  327. className: (_CollectionList_module_scss__WEBPACK_IMPORTED_MODULE_20___default().itemIcon),
  328. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_unbookmarked_svg__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .Z, {})
  329. }),
  330. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  331. className: (_CollectionList_module_scss__WEBPACK_IMPORTED_MODULE_20___default().itemCount),
  332. children: [
  333. (0,_utils_locale__WEBPACK_IMPORTED_MODULE_14__/* .toLocalizedNumber */ .rQ)(collection.count, lang),
  334. " ",
  335. t("common:verses")
  336. ]
  337. })
  338. ]
  339. })
  340. ]
  341. })
  342. }),
  343. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(src_components_dls_PopoverMenu_PopoverMenu__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z, {
  344. trigger: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(src_components_dls_Button_Button__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .ZP, {
  345. size: src_components_dls_Button_Button__WEBPACK_IMPORTED_MODULE_15__/* .ButtonSize.Small */ .qE.Small,
  346. tooltip: t("common:more"),
  347. variant: src_components_dls_Button_Button__WEBPACK_IMPORTED_MODULE_15__/* .ButtonVariant.Ghost */ .Wu.Ghost,
  348. shape: src_components_dls_Button_Button__WEBPACK_IMPORTED_MODULE_15__/* .ButtonShape.Circle */ .jL.Circle,
  349. ariaLabel: t("common:more"),
  350. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("span", {
  351. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_menu_more_horiz_svg__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .Z, {})
  352. })
  353. }),
  354. onOpenChange: (isMenuOpen)=>onCollectionMenuOpenChange(isMenuOpen, collection.id),
  355. isModal: true,
  356. isPortalled: true,
  357. children: [
  358. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_RenameCollectionAction__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, {
  359. onClick: ()=>setCollectionToRename(collection)
  360. }),
  361. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_DeleteCollectionAction__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
  362. collectionName: collection.name,
  363. collectionId: collection.id,
  364. onDone: onCollectionUpdated
  365. })
  366. ]
  367. })
  368. ]
  369. })
  370. }, collection.id);
  371. })
  372. ]
  373. })
  374. ]
  375. })
  376. ]
  377. });
  378. };
  379. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (CollectionList);
  380. __webpack_async_result__();
  381. } catch(e) { __webpack_async_result__(e); } });
  382. /***/ }),
  383. /***/ 27957:
  384. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  385. "use strict";
  386. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  387. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  388. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  389. /* harmony export */ });
  390. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  391. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  392. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(60866);
  393. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1__);
  394. /* harmony import */ var _dls_ConfirmationModal_hooks__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(77843);
  395. /* harmony import */ var _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(79717);
  396. /* harmony import */ var _utils_eventLogger__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(55943);
  397. /* harmony import */ var src_components_dls_PopoverMenu_PopoverMenu__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(99163);
  398. /* harmony import */ var src_utils_auth_api__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(37883);
  399. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__, _utils_eventLogger__WEBPACK_IMPORTED_MODULE_4__, src_components_dls_PopoverMenu_PopoverMenu__WEBPACK_IMPORTED_MODULE_5__]);
  400. ([_dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__, _utils_eventLogger__WEBPACK_IMPORTED_MODULE_4__, src_components_dls_PopoverMenu_PopoverMenu__WEBPACK_IMPORTED_MODULE_5__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  401. const DeleteCollectionAction = ({ collectionId , onDone , collectionName })=>{
  402. const { t } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1___default()();
  403. const toast = (0,_dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__/* .useToast */ .pm)();
  404. const confirm = (0,_dls_ConfirmationModal_hooks__WEBPACK_IMPORTED_MODULE_2__/* .useConfirm */ .N)();
  405. const onMenuItemClicked = async ()=>{
  406. (0,_utils_eventLogger__WEBPACK_IMPORTED_MODULE_4__/* .logButtonClick */ .MY)("delete_collection_action_open", {
  407. collectionId
  408. });
  409. const isConfirmed = await confirm({
  410. confirmText: t("common:delete"),
  411. cancelText: t("common:cancel"),
  412. title: t("collection:delete-collection.title"),
  413. subtitle: t("collection:delete-collection.subtitle", {
  414. collectionName
  415. })
  416. });
  417. if (isConfirmed) {
  418. (0,_utils_eventLogger__WEBPACK_IMPORTED_MODULE_4__/* .logButtonClick */ .MY)("collection_delete_confirm", {
  419. collectionId
  420. });
  421. (0,src_utils_auth_api__WEBPACK_IMPORTED_MODULE_6__/* .deleteCollection */ .P4)(collectionId).then(()=>{
  422. onDone();
  423. }).catch(()=>{
  424. toast(t("common:error.general"), {
  425. status: _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__/* .ToastStatus.Error */ .YZ.Error
  426. });
  427. });
  428. } else {
  429. (0,_utils_eventLogger__WEBPACK_IMPORTED_MODULE_4__/* .logButtonClick */ .MY)("collection_delete_confirm_cancel", {
  430. collectionId
  431. });
  432. }
  433. };
  434. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(src_components_dls_PopoverMenu_PopoverMenu__WEBPACK_IMPORTED_MODULE_5__/* ["default"].Item */ .Z.Item, {
  435. onClick: onMenuItemClicked,
  436. children: t("common:delete")
  437. });
  438. };
  439. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (DeleteCollectionAction);
  440. __webpack_async_result__();
  441. } catch(e) { __webpack_async_result__(e); } });
  442. /***/ }),
  443. /***/ 65124:
  444. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  445. "use strict";
  446. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  447. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  448. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  449. /* harmony export */ });
  450. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  451. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  452. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(60866);
  453. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1__);
  454. /* harmony import */ var _utils_eventLogger__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(55943);
  455. /* harmony import */ var src_components_dls_PopoverMenu_PopoverMenu__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(99163);
  456. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_utils_eventLogger__WEBPACK_IMPORTED_MODULE_2__, src_components_dls_PopoverMenu_PopoverMenu__WEBPACK_IMPORTED_MODULE_3__]);
  457. ([_utils_eventLogger__WEBPACK_IMPORTED_MODULE_2__, src_components_dls_PopoverMenu_PopoverMenu__WEBPACK_IMPORTED_MODULE_3__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  458. const RenameCollectionAction = ({ onClick })=>{
  459. const { t } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1___default()();
  460. const onMenuItemClicked = ()=>{
  461. (0,_utils_eventLogger__WEBPACK_IMPORTED_MODULE_2__/* .logButtonClick */ .MY)("rename_collection_action_open");
  462. onClick();
  463. };
  464. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
  465. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(src_components_dls_PopoverMenu_PopoverMenu__WEBPACK_IMPORTED_MODULE_3__/* ["default"].Item */ .Z.Item, {
  466. shouldStopPropagation: true,
  467. shouldCloseMenuAfterClick: true,
  468. onClick: onMenuItemClicked,
  469. children: t("common:rename")
  470. })
  471. });
  472. };
  473. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (RenameCollectionAction);
  474. __webpack_async_result__();
  475. } catch(e) { __webpack_async_result__(e); } });
  476. /***/ }),
  477. /***/ 83620:
  478. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  479. "use strict";
  480. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  481. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  482. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  483. /* harmony export */ });
  484. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  485. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  486. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(60866);
  487. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1__);
  488. /* harmony import */ var _RenameCollectionModal_module_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(12959);
  489. /* harmony import */ var _RenameCollectionModal_module_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_RenameCollectionModal_module_scss__WEBPACK_IMPORTED_MODULE_6__);
  490. /* harmony import */ var _components_FormBuilder_FormBuilder__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(37013);
  491. /* harmony import */ var _dls_Modal_Modal__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(21948);
  492. /* harmony import */ var types_FieldRule__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(98213);
  493. /* harmony import */ var types_FormField__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(3840);
  494. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_components_FormBuilder_FormBuilder__WEBPACK_IMPORTED_MODULE_2__, _dls_Modal_Modal__WEBPACK_IMPORTED_MODULE_3__]);
  495. ([_components_FormBuilder_FormBuilder__WEBPACK_IMPORTED_MODULE_2__, _dls_Modal_Modal__WEBPACK_IMPORTED_MODULE_3__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  496. /* eslint-disable i18next/no-literal-string */
  497. const RenameCollectionModal = ({ isOpen , onSubmit , defaultValue , onClose })=>{
  498. const { t } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1___default()("profile");
  499. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_dls_Modal_Modal__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {
  500. isOpen: isOpen,
  501. onClickOutside: onClose,
  502. isBottomSheetOnMobile: false,
  503. children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_dls_Modal_Modal__WEBPACK_IMPORTED_MODULE_3__/* ["default"].Body */ .Z.Body, {
  504. children: [
  505. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  506. className: (_RenameCollectionModal_module_scss__WEBPACK_IMPORTED_MODULE_6___default().header),
  507. children: t("common:rename")
  508. }),
  509. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  510. className: (_RenameCollectionModal_module_scss__WEBPACK_IMPORTED_MODULE_6___default().newCollectionFormContainer),
  511. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components_FormBuilder_FormBuilder__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
  512. formFields: [
  513. {
  514. field: "name",
  515. placeholder: t("quran-reader:new-collection-name"),
  516. defaultValue,
  517. rules: [
  518. {
  519. type: types_FieldRule__WEBPACK_IMPORTED_MODULE_4__/* .RuleType.Required */ .S.Required,
  520. value: true,
  521. errorMessage: "Required"
  522. }
  523. ],
  524. type: types_FormField__WEBPACK_IMPORTED_MODULE_5__/* .FormFieldType.Text */ .E.Text
  525. },
  526. ],
  527. actionText: t("common:submit"),
  528. onSubmit: onSubmit
  529. })
  530. })
  531. ]
  532. })
  533. });
  534. };
  535. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (RenameCollectionModal);
  536. __webpack_async_result__();
  537. } catch(e) { __webpack_async_result__(e); } });
  538. /***/ }),
  539. /***/ 40489:
  540. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  541. "use strict";
  542. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  543. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  544. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  545. /* harmony export */ });
  546. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  547. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  548. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
  549. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  550. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(60866);
  551. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2__);
  552. /* harmony import */ var _BookmarkPill_module_scss__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(78118);
  553. /* harmony import */ var _BookmarkPill_module_scss__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(_BookmarkPill_module_scss__WEBPACK_IMPORTED_MODULE_11__);
  554. /* harmony import */ var _contexts_DataContext__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(70813);
  555. /* harmony import */ var _dls_Button_Button__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(50497);
  556. /* harmony import */ var _icons_close_svg__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(51053);
  557. /* harmony import */ var _utils_chapter__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(95892);
  558. /* harmony import */ var _utils_eventLogger__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(55943);
  559. /* harmony import */ var _utils_locale__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(24709);
  560. /* harmony import */ var _utils_navigation__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(57933);
  561. /* harmony import */ var _utils_verse__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(44519);
  562. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_dls_Button_Button__WEBPACK_IMPORTED_MODULE_4__, _utils_eventLogger__WEBPACK_IMPORTED_MODULE_7__, _utils_navigation__WEBPACK_IMPORTED_MODULE_9__]);
  563. ([_dls_Button_Button__WEBPACK_IMPORTED_MODULE_4__, _utils_eventLogger__WEBPACK_IMPORTED_MODULE_7__, _utils_navigation__WEBPACK_IMPORTED_MODULE_9__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  564. /* eslint-disable jsx-a11y/control-has-associated-label */
  565. const BookmarkPill = ({ verseKey , onDeleted })=>{
  566. const { lang } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2___default()();
  567. const chaptersData = (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(_contexts_DataContext__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z);
  568. const chapterNumber = (0,_utils_verse__WEBPACK_IMPORTED_MODULE_10__/* .getChapterNumberFromKey */ .Tc)(verseKey);
  569. const chapterData = (0,_utils_chapter__WEBPACK_IMPORTED_MODULE_6__/* .getChapterData */ .dy)(chaptersData, chapterNumber.toString());
  570. const bookmarkText = `${chapterData.transliteratedName} ${(0,_utils_locale__WEBPACK_IMPORTED_MODULE_8__/* .toLocalizedVerseKey */ .Tj)(verseKey, lang)}`;
  571. const onLinkClicked = ()=>{
  572. (0,_utils_eventLogger__WEBPACK_IMPORTED_MODULE_7__/* .logButtonClick */ .MY)("bookmarked_verses_list_link");
  573. };
  574. return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  575. className: (_BookmarkPill_module_scss__WEBPACK_IMPORTED_MODULE_11___default().bookmarkItem),
  576. children: [
  577. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_dls_Button_Button__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .ZP, {
  578. onClick: onLinkClicked,
  579. href: (0,_utils_navigation__WEBPACK_IMPORTED_MODULE_9__/* .getVerseNavigationUrlByVerseKey */ .qs)(verseKey),
  580. type: _dls_Button_Button__WEBPACK_IMPORTED_MODULE_4__/* .ButtonType.Primary */ .L$.Primary,
  581. variant: _dls_Button_Button__WEBPACK_IMPORTED_MODULE_4__/* .ButtonVariant.Compact */ .Wu.Compact,
  582. className: (_BookmarkPill_module_scss__WEBPACK_IMPORTED_MODULE_11___default().linkButtonContainer),
  583. size: _dls_Button_Button__WEBPACK_IMPORTED_MODULE_4__/* .ButtonSize.Small */ .qE.Small,
  584. children: bookmarkText
  585. }),
  586. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("button", {
  587. onClick: ()=>onDeleted(verseKey),
  588. type: "button",
  589. className: (_BookmarkPill_module_scss__WEBPACK_IMPORTED_MODULE_11___default().closeIconContainer),
  590. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("span", {
  591. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_close_svg__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {})
  592. })
  593. })
  594. ]
  595. });
  596. };
  597. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (BookmarkPill);
  598. __webpack_async_result__();
  599. } catch(e) { __webpack_async_result__(e); } });
  600. /***/ }),
  601. /***/ 72087:
  602. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  603. "use strict";
  604. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  605. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  606. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  607. /* harmony export */ });
  608. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  609. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  610. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
  611. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  612. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(60866);
  613. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2__);
  614. /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6022);
  615. /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_3__);
  616. /* harmony import */ var swr__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(15941);
  617. /* harmony import */ var _BookmarkedVersesList_module_scss__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(66575);
  618. /* harmony import */ var _BookmarkedVersesList_module_scss__WEBPACK_IMPORTED_MODULE_17___default = /*#__PURE__*/__webpack_require__.n(_BookmarkedVersesList_module_scss__WEBPACK_IMPORTED_MODULE_17__);
  619. /* harmony import */ var _BookmarkedVesesListSkeleton__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(14055);
  620. /* harmony import */ var _BookmarkPill__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(40489);
  621. /* harmony import */ var _dls_Link_Link__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(61239);
  622. /* harmony import */ var _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(79717);
  623. /* harmony import */ var _redux_slices_QuranReader_bookmarks__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(24213);
  624. /* harmony import */ var _redux_slices_QuranReader_styles__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(62093);
  625. /* harmony import */ var _utils_api__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(4917);
  626. /* harmony import */ var _utils_auth_api__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(37883);
  627. /* harmony import */ var _utils_auth_apiPaths__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(13830);
  628. /* harmony import */ var _utils_auth_login__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(22197);
  629. /* harmony import */ var _utils_eventLogger__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(55943);
  630. /* harmony import */ var _utils_verse__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(44519);
  631. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([swr__WEBPACK_IMPORTED_MODULE_4__, _BookmarkedVesesListSkeleton__WEBPACK_IMPORTED_MODULE_5__, _BookmarkPill__WEBPACK_IMPORTED_MODULE_6__, _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_8__, _utils_auth_login__WEBPACK_IMPORTED_MODULE_14__, _utils_eventLogger__WEBPACK_IMPORTED_MODULE_15__]);
  632. ([swr__WEBPACK_IMPORTED_MODULE_4__, _BookmarkedVesesListSkeleton__WEBPACK_IMPORTED_MODULE_5__, _BookmarkPill__WEBPACK_IMPORTED_MODULE_6__, _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_8__, _utils_auth_login__WEBPACK_IMPORTED_MODULE_14__, _utils_eventLogger__WEBPACK_IMPORTED_MODULE_15__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  633. /* eslint-disable max-lines */ /* eslint-disable jsx-a11y/no-static-element-interactions */ /* eslint-disable jsx-a11y/click-events-have-key-events */ /* eslint-disable jsx-a11y/anchor-is-valid */
  634. const BOOKMARKS_API_LIMIT = 10; // The number of bookmarks to fetch from the api
  635. const BookmarkedVersesList = ()=>{
  636. const { t } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2___default()("home");
  637. const quranReaderStyles = (0,react_redux__WEBPACK_IMPORTED_MODULE_3__.useSelector)(_redux_slices_QuranReader_styles__WEBPACK_IMPORTED_MODULE_10__/* .selectQuranReaderStyles */ .Pt, react_redux__WEBPACK_IMPORTED_MODULE_3__.shallowEqual);
  638. const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_3__.useDispatch)();
  639. const toast = (0,_dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_8__/* .useToast */ .pm)();
  640. const bookmarkedVerses = (0,react_redux__WEBPACK_IMPORTED_MODULE_3__.useSelector)(_redux_slices_QuranReader_bookmarks__WEBPACK_IMPORTED_MODULE_9__/* .selectBookmarks */ .it, react_redux__WEBPACK_IMPORTED_MODULE_3__.shallowEqual);
  641. const { data , isValidating , mutate } = (0,swr__WEBPACK_IMPORTED_MODULE_4__["default"])((0,_utils_auth_login__WEBPACK_IMPORTED_MODULE_14__/* .isLoggedIn */ .jl)() // only fetch the data when user is loggedIn
  642. ? (0,_utils_auth_apiPaths__WEBPACK_IMPORTED_MODULE_13__/* .makeBookmarksUrl */ .Ev)((0,_utils_api__WEBPACK_IMPORTED_MODULE_11__/* .getMushafId */ .$P)(quranReaderStyles.quranFont, quranReaderStyles.mushafLines).mushaf, BOOKMARKS_API_LIMIT) : null, _utils_auth_api__WEBPACK_IMPORTED_MODULE_12__/* .privateFetcher */ .UK);
  643. const bookmarkedVersesKeys = (0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)(()=>{
  644. if (isValidating) return [];
  645. const isUserLoggedIn = (0,_utils_auth_login__WEBPACK_IMPORTED_MODULE_14__/* .isLoggedIn */ .jl)();
  646. if (isUserLoggedIn && data) {
  647. return data.map((bookmark)=>(0,_utils_verse__WEBPACK_IMPORTED_MODULE_16__/* .makeVerseKey */ .u)(bookmark.key, bookmark.verseNumber));
  648. }
  649. if (!isUserLoggedIn) {
  650. return Object.keys(bookmarkedVerses);
  651. }
  652. return [];
  653. }, [
  654. bookmarkedVerses,
  655. data,
  656. isValidating
  657. ]);
  658. // Flag when a user is using the API and has more bookmarks than the api limit
  659. const hasReachedBookmarksLimit = (0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)(()=>{
  660. const isUserLoggedIn = (0,_utils_auth_login__WEBPACK_IMPORTED_MODULE_14__/* .isLoggedIn */ .jl)();
  661. if (isUserLoggedIn && data && data.length >= BOOKMARKS_API_LIMIT) {
  662. return true;
  663. }
  664. return false;
  665. }, [
  666. data
  667. ]);
  668. const onBookmarkDeleted = (verseKey)=>{
  669. (0,_utils_eventLogger__WEBPACK_IMPORTED_MODULE_15__/* .logButtonClick */ .MY)("bookmarked_verses_list_delete");
  670. if ((0,_utils_auth_login__WEBPACK_IMPORTED_MODULE_14__/* .isLoggedIn */ .jl)()) {
  671. const selectedBookmark = data.find((bookmark)=>{
  672. const [chapter, verseNumber] = (0,_utils_verse__WEBPACK_IMPORTED_MODULE_16__/* .getVerseAndChapterNumbersFromKey */ .bV)(verseKey);
  673. return Number(chapter) === Number(bookmark.key) && Number(verseNumber) === Number(bookmark.verseNumber);
  674. });
  675. (0,_utils_auth_api__WEBPACK_IMPORTED_MODULE_12__/* .deleteBookmarkById */ .ez)(selectedBookmark.id).then(()=>{
  676. mutate();
  677. }).catch(()=>{
  678. toast(t("common:error.general"), {
  679. status: _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_8__/* .ToastStatus.Error */ .YZ.Error
  680. });
  681. });
  682. } else {
  683. dispatch((0,_redux_slices_QuranReader_bookmarks__WEBPACK_IMPORTED_MODULE_9__/* .toggleVerseBookmark */ .b2)(verseKey));
  684. }
  685. };
  686. const onViewAllBookmarksClicked = ()=>{
  687. (0,_utils_eventLogger__WEBPACK_IMPORTED_MODULE_15__/* .logButtonClick */ .MY)("view_all_bookmarks");
  688. };
  689. if (isValidating) {
  690. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  691. className: (_BookmarkedVersesList_module_scss__WEBPACK_IMPORTED_MODULE_17___default().container),
  692. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  693. className: (_BookmarkedVersesList_module_scss__WEBPACK_IMPORTED_MODULE_17___default().bookmarksContainer),
  694. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  695. className: (_BookmarkedVersesList_module_scss__WEBPACK_IMPORTED_MODULE_17___default().verseLinksContainer),
  696. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_BookmarkedVesesListSkeleton__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {})
  697. })
  698. })
  699. });
  700. }
  701. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  702. className: (_BookmarkedVersesList_module_scss__WEBPACK_IMPORTED_MODULE_17___default().container),
  703. children: bookmarkedVersesKeys.length > 0 ? /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  704. className: (_BookmarkedVersesList_module_scss__WEBPACK_IMPORTED_MODULE_17___default().verseLinksContainer),
  705. children: [
  706. bookmarkedVersesKeys?.map((verseKey)=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_BookmarkPill__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
  707. verseKey: verseKey,
  708. onDeleted: onBookmarkDeleted
  709. }, verseKey)),
  710. hasReachedBookmarksLimit && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_dls_Link_Link__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
  711. href: "/collections/all",
  712. className: (_BookmarkedVersesList_module_scss__WEBPACK_IMPORTED_MODULE_17___default().viewAllBookmarksContainer),
  713. onClick: onViewAllBookmarksClicked,
  714. children: t("view-all-bookmarks")
  715. })
  716. ]
  717. }) : /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  718. children: t("no-bookmarks")
  719. })
  720. });
  721. };
  722. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (BookmarkedVersesList);
  723. __webpack_async_result__();
  724. } catch(e) { __webpack_async_result__(e); } });
  725. /***/ }),
  726. /***/ 14055:
  727. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  728. "use strict";
  729. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  730. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  731. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  732. /* harmony export */ });
  733. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  734. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  735. /* harmony import */ var _BookmarkedVersesListSkeleton_module_scss__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(13198);
  736. /* harmony import */ var _BookmarkedVersesListSkeleton_module_scss__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_BookmarkedVersesListSkeleton_module_scss__WEBPACK_IMPORTED_MODULE_3__);
  737. /* harmony import */ var _BookmarkPill__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(40489);
  738. /* harmony import */ var _dls_Skeleton_Skeleton__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(77048);
  739. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_BookmarkPill__WEBPACK_IMPORTED_MODULE_1__]);
  740. _BookmarkPill__WEBPACK_IMPORTED_MODULE_1__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
  741. const BOOKMARKS_COUNT = 10;
  742. const bookmarksArr = Array(BOOKMARKS_COUNT).fill(null);
  743. const BookmarkedVersesListSkeleton = ()=>{
  744. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("span", {
  745. className: (_BookmarkedVersesListSkeleton_module_scss__WEBPACK_IMPORTED_MODULE_3___default().skeletonContainer),
  746. children: bookmarksArr.map((k, i)=>// eslint-disable-next-line react/no-array-index-key
  747. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_dls_Skeleton_Skeleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
  748. isActive: true,
  749. className: (_BookmarkedVersesListSkeleton_module_scss__WEBPACK_IMPORTED_MODULE_3___default().skeletonItem),
  750. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_BookmarkPill__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, {
  751. verseKey: "1:1",
  752. onDeleted: ()=>null
  753. })
  754. }, `skeleton_${i}`))
  755. });
  756. };
  757. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (BookmarkedVersesListSkeleton);
  758. __webpack_async_result__();
  759. } catch(e) { __webpack_async_result__(e); } });
  760. /***/ }),
  761. /***/ 14183:
  762. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  763. "use strict";
  764. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  765. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  766. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  767. /* harmony export */ });
  768. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  769. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  770. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
  771. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  772. /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(59003);
  773. /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_2__);
  774. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(60866);
  775. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_3__);
  776. /* harmony import */ var _Collection_CollectionList_CollectionList__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(33369);
  777. /* harmony import */ var _BookmarkedVersesList__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(72087);
  778. /* harmony import */ var _BookmarksAndQuickLinks_module_scss__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(54411);
  779. /* harmony import */ var _BookmarksAndQuickLinks_module_scss__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(_BookmarksAndQuickLinks_module_scss__WEBPACK_IMPORTED_MODULE_10__);
  780. /* harmony import */ var _RecentReadingSessionsList__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(28633);
  781. /* harmony import */ var _dls_Tabs_Tabs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(65961);
  782. /* harmony import */ var _utils_auth_login__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(22197);
  783. /* harmony import */ var _utils_eventLogger__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(55943);
  784. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_Collection_CollectionList_CollectionList__WEBPACK_IMPORTED_MODULE_4__, _BookmarkedVersesList__WEBPACK_IMPORTED_MODULE_5__, _RecentReadingSessionsList__WEBPACK_IMPORTED_MODULE_6__, _utils_auth_login__WEBPACK_IMPORTED_MODULE_8__, _utils_eventLogger__WEBPACK_IMPORTED_MODULE_9__]);
  785. ([_Collection_CollectionList_CollectionList__WEBPACK_IMPORTED_MODULE_4__, _BookmarkedVersesList__WEBPACK_IMPORTED_MODULE_5__, _RecentReadingSessionsList__WEBPACK_IMPORTED_MODULE_6__, _utils_auth_login__WEBPACK_IMPORTED_MODULE_8__, _utils_eventLogger__WEBPACK_IMPORTED_MODULE_9__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  786. var View;
  787. (function(View) {
  788. View["ReadingSessions"] = "reading_sessions";
  789. View["Bookmarks"] = "bookmarks";
  790. View["Collections"] = "collections";
  791. })(View || (View = {}));
  792. const BookmarksAndCollectionsSection = ({ isHomepage =false })=>{
  793. const { t } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_3___default()("home");
  794. const { 0: selectedTab , 1: setSelectedTab } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(isHomepage ? View.ReadingSessions : View.Bookmarks);
  795. const tabs = [];
  796. if (isHomepage) {
  797. tabs.push({
  798. title: t("recently-read"),
  799. value: View.ReadingSessions
  800. });
  801. }
  802. tabs.push({
  803. title: t("tab.bookmarks"),
  804. value: View.Bookmarks
  805. });
  806. if ((0,_utils_auth_login__WEBPACK_IMPORTED_MODULE_8__/* .isLoggedIn */ .jl)()) {
  807. tabs.push({
  808. title: t("collection:collections"),
  809. value: View.Collections
  810. });
  811. }
  812. const onTabSelected = (newTab)=>{
  813. (0,_utils_eventLogger__WEBPACK_IMPORTED_MODULE_9__/* .logValueChange */ .Q8)("bookmark_section_and_collection", selectedTab, newTab);
  814. setSelectedTab(newTab);
  815. };
  816. return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  817. children: [
  818. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  819. className: (_BookmarksAndQuickLinks_module_scss__WEBPACK_IMPORTED_MODULE_10___default().tabsContainer),
  820. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_dls_Tabs_Tabs__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
  821. tabs: tabs,
  822. selected: selectedTab,
  823. onSelect: onTabSelected
  824. })
  825. }),
  826. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  827. className: classnames__WEBPACK_IMPORTED_MODULE_2___default()((_BookmarksAndQuickLinks_module_scss__WEBPACK_IMPORTED_MODULE_10___default().contentContainer), (_BookmarksAndQuickLinks_module_scss__WEBPACK_IMPORTED_MODULE_10___default().tabsContainer)),
  828. children: [
  829. selectedTab === View.ReadingSessions && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_RecentReadingSessionsList__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {}),
  830. selectedTab === View.Bookmarks && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_BookmarkedVersesList__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {}),
  831. selectedTab === View.Collections && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Collection_CollectionList_CollectionList__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {})
  832. ]
  833. })
  834. ]
  835. });
  836. };
  837. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (BookmarksAndCollectionsSection);
  838. __webpack_async_result__();
  839. } catch(e) { __webpack_async_result__(e); } });
  840. /***/ }),
  841. /***/ 53342:
  842. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  843. "use strict";
  844. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  845. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  846. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  847. /* harmony export */ });
  848. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  849. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  850. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
  851. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  852. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(60866);
  853. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2__);
  854. /* harmony import */ var _ReadingSessionPill_module_scss__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(28198);
  855. /* harmony import */ var _ReadingSessionPill_module_scss__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(_ReadingSessionPill_module_scss__WEBPACK_IMPORTED_MODULE_10__);
  856. /* harmony import */ var _contexts_DataContext__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(70813);
  857. /* harmony import */ var _dls_Button_Button__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(50497);
  858. /* harmony import */ var _utils_chapter__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(95892);
  859. /* harmony import */ var _utils_eventLogger__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(55943);
  860. /* harmony import */ var _utils_locale__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(24709);
  861. /* harmony import */ var _utils_navigation__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(57933);
  862. /* harmony import */ var _utils_verse__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(44519);
  863. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_dls_Button_Button__WEBPACK_IMPORTED_MODULE_4__, _utils_eventLogger__WEBPACK_IMPORTED_MODULE_6__, _utils_navigation__WEBPACK_IMPORTED_MODULE_8__]);
  864. ([_dls_Button_Button__WEBPACK_IMPORTED_MODULE_4__, _utils_eventLogger__WEBPACK_IMPORTED_MODULE_6__, _utils_navigation__WEBPACK_IMPORTED_MODULE_8__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  865. const ReadingSessionPill = ({ verseKey })=>{
  866. const { lang } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2___default()();
  867. const chaptersData = (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(_contexts_DataContext__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z);
  868. const chapterNumber = (0,_utils_verse__WEBPACK_IMPORTED_MODULE_9__/* .getChapterNumberFromKey */ .Tc)(verseKey);
  869. const chapterData = (0,_utils_chapter__WEBPACK_IMPORTED_MODULE_5__/* .getChapterData */ .dy)(chaptersData, chapterNumber.toString());
  870. const onLinkClicked = ()=>{
  871. (0,_utils_eventLogger__WEBPACK_IMPORTED_MODULE_6__/* .logButtonClick */ .MY)("recent_sessions_list_item_link");
  872. };
  873. const readingSessionText = `${chapterData.transliteratedName} ${(0,_utils_locale__WEBPACK_IMPORTED_MODULE_7__/* .toLocalizedVerseKey */ .Tj)(verseKey, lang)}`;
  874. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  875. className: (_ReadingSessionPill_module_scss__WEBPACK_IMPORTED_MODULE_10___default().readingSessionItem),
  876. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_dls_Button_Button__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .ZP, {
  877. onClick: onLinkClicked,
  878. href: (0,_utils_navigation__WEBPACK_IMPORTED_MODULE_8__/* .getChapterWithStartingVerseUrl */ .P6)(verseKey),
  879. type: _dls_Button_Button__WEBPACK_IMPORTED_MODULE_4__/* .ButtonType.Primary */ .L$.Primary,
  880. variant: _dls_Button_Button__WEBPACK_IMPORTED_MODULE_4__/* .ButtonVariant.Compact */ .Wu.Compact,
  881. className: (_ReadingSessionPill_module_scss__WEBPACK_IMPORTED_MODULE_10___default().linkButtonContainer),
  882. size: _dls_Button_Button__WEBPACK_IMPORTED_MODULE_4__/* .ButtonSize.Small */ .qE.Small,
  883. children: readingSessionText
  884. })
  885. });
  886. };
  887. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ReadingSessionPill);
  888. __webpack_async_result__();
  889. } catch(e) { __webpack_async_result__(e); } });
  890. /***/ }),
  891. /***/ 11882:
  892. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  893. "use strict";
  894. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  895. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  896. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  897. /* harmony export */ });
  898. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  899. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  900. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
  901. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  902. /* harmony import */ var _ReadingSessionPill__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(53342);
  903. /* harmony import */ var _RecentReadingSessionsListSkeleton_module_scss__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(25599);
  904. /* harmony import */ var _RecentReadingSessionsListSkeleton_module_scss__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_RecentReadingSessionsListSkeleton_module_scss__WEBPACK_IMPORTED_MODULE_4__);
  905. /* harmony import */ var _dls_Skeleton_Skeleton__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(77048);
  906. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_ReadingSessionPill__WEBPACK_IMPORTED_MODULE_2__]);
  907. _ReadingSessionPill__WEBPACK_IMPORTED_MODULE_2__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
  908. const SESSIONS_COUNT = 10;
  909. const sessionsArr = Array(SESSIONS_COUNT).fill(null);
  910. const RecentReadingSessionsListSkeleton = ()=>{
  911. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("span", {
  912. className: (_RecentReadingSessionsListSkeleton_module_scss__WEBPACK_IMPORTED_MODULE_4___default().skeletonContainer),
  913. children: sessionsArr.map((k, i)=>// eslint-disable-next-line react/no-array-index-key
  914. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_dls_Skeleton_Skeleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {
  915. isActive: true,
  916. className: (_RecentReadingSessionsListSkeleton_module_scss__WEBPACK_IMPORTED_MODULE_4___default().skeletonItem),
  917. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_ReadingSessionPill__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
  918. verseKey: "1:1"
  919. })
  920. }, `skeleton_${i}`))
  921. });
  922. };
  923. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (RecentReadingSessionsListSkeleton);
  924. __webpack_async_result__();
  925. } catch(e) { __webpack_async_result__(e); } });
  926. /***/ }),
  927. /***/ 28633:
  928. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  929. "use strict";
  930. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  931. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  932. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  933. /* harmony export */ });
  934. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  935. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  936. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
  937. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  938. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(60866);
  939. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2__);
  940. /* harmony import */ var _ReadingSessionPill__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(53342);
  941. /* harmony import */ var _RecentReadingSessionsList_module_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(4389);
  942. /* harmony import */ var _RecentReadingSessionsList_module_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_RecentReadingSessionsList_module_scss__WEBPACK_IMPORTED_MODULE_6__);
  943. /* harmony import */ var _Skeleton__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(11882);
  944. /* harmony import */ var _hooks_auth_useGetRecentlyReadVerseKeys__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(37865);
  945. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_ReadingSessionPill__WEBPACK_IMPORTED_MODULE_3__, _Skeleton__WEBPACK_IMPORTED_MODULE_4__, _hooks_auth_useGetRecentlyReadVerseKeys__WEBPACK_IMPORTED_MODULE_5__]);
  946. ([_ReadingSessionPill__WEBPACK_IMPORTED_MODULE_3__, _Skeleton__WEBPACK_IMPORTED_MODULE_4__, _hooks_auth_useGetRecentlyReadVerseKeys__WEBPACK_IMPORTED_MODULE_5__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  947. const RecentReadingSessionsList = ()=>{
  948. const { t } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2___default()("home");
  949. const { recentlyReadVerseKeys , isLoading } = (0,_hooks_auth_useGetRecentlyReadVerseKeys__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z)();
  950. if (isLoading) {
  951. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  952. className: (_RecentReadingSessionsList_module_scss__WEBPACK_IMPORTED_MODULE_6___default().container),
  953. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  954. className: (_RecentReadingSessionsList_module_scss__WEBPACK_IMPORTED_MODULE_6___default().bookmarksContainer),
  955. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  956. className: (_RecentReadingSessionsList_module_scss__WEBPACK_IMPORTED_MODULE_6___default().verseLinksContainer),
  957. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Skeleton__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {})
  958. })
  959. })
  960. });
  961. }
  962. if (recentlyReadVerseKeys.length === 0) {
  963. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
  964. children: t("no-recently-read")
  965. });
  966. }
  967. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  968. className: (_RecentReadingSessionsList_module_scss__WEBPACK_IMPORTED_MODULE_6___default().container),
  969. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  970. className: (_RecentReadingSessionsList_module_scss__WEBPACK_IMPORTED_MODULE_6___default().verseLinksContainer),
  971. children: recentlyReadVerseKeys?.map((verseKey)=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_ReadingSessionPill__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {
  972. verseKey: verseKey
  973. }, verseKey))
  974. })
  975. });
  976. };
  977. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (RecentReadingSessionsList);
  978. __webpack_async_result__();
  979. } catch(e) { __webpack_async_result__(e); } });
  980. /***/ }),
  981. /***/ 77048:
  982. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  983. "use strict";
  984. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  985. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  986. /* harmony export */ });
  987. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  988. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  989. /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
  990. /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
  991. /* harmony import */ var _Skeleton_module_scss__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(96318);
  992. /* harmony import */ var _Skeleton_module_scss__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_Skeleton_module_scss__WEBPACK_IMPORTED_MODULE_2__);
  993. const Skeleton = ({ children , isRounded , isSquared , isActive =true , className })=>{
  994. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("span", {
  995. className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Skeleton_module_scss__WEBPACK_IMPORTED_MODULE_2___default().skeleton), {
  996. [(_Skeleton_module_scss__WEBPACK_IMPORTED_MODULE_2___default().baseSize)]: !children && !className,
  997. [(_Skeleton_module_scss__WEBPACK_IMPORTED_MODULE_2___default().active)]: isActive,
  998. [(_Skeleton_module_scss__WEBPACK_IMPORTED_MODULE_2___default().rounded)]: isRounded,
  999. [(_Skeleton_module_scss__WEBPACK_IMPORTED_MODULE_2___default().squared)]: isSquared,
  1000. [className]: className
  1001. }),
  1002. children: children && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("span", {
  1003. className: (_Skeleton_module_scss__WEBPACK_IMPORTED_MODULE_2___default().content),
  1004. children: children
  1005. })
  1006. });
  1007. };
  1008. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Skeleton);
  1009. /***/ }),
  1010. /***/ 53198:
  1011. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  1012. "use strict";
  1013. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1014. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  1015. /* harmony export */ });
  1016. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  1017. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  1018. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
  1019. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  1020. /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(59003);
  1021. /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_2__);
  1022. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(60866);
  1023. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_3__);
  1024. /* harmony import */ var _SurahPreviewRow_module_scss__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(9874);
  1025. /* harmony import */ var _SurahPreviewRow_module_scss__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_SurahPreviewRow_module_scss__WEBPACK_IMPORTED_MODULE_7__);
  1026. /* harmony import */ var _components_chapters_ChapterIcon_ChapterIconContainer__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(92799);
  1027. /* harmony import */ var _dls_Spinner_Spinner__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(7190);
  1028. /* harmony import */ var _utils_locale__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(24709);
  1029. const SurahPreviewRow = ({ surahName , surahNumber , translatedSurahName , description , chapterId , isMinimalLayout =false , isLoading =false })=>{
  1030. const { lang } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_3___default()("home");
  1031. const localizedSurahNumber = (0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)(()=>(0,_utils_locale__WEBPACK_IMPORTED_MODULE_6__/* .toLocalizedNumber */ .rQ)(surahNumber, lang), [
  1032. surahNumber,
  1033. lang
  1034. ]);
  1035. if (isMinimalLayout) {
  1036. return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  1037. className: (_SurahPreviewRow_module_scss__WEBPACK_IMPORTED_MODULE_7___default().container),
  1038. children: [
  1039. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  1040. className: (_SurahPreviewRow_module_scss__WEBPACK_IMPORTED_MODULE_7___default().left),
  1041. children: [
  1042. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  1043. className: (_SurahPreviewRow_module_scss__WEBPACK_IMPORTED_MODULE_7___default().surahNumber),
  1044. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("span", {
  1045. children: localizedSurahNumber
  1046. })
  1047. }),
  1048. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components_chapters_ChapterIcon_ChapterIconContainer__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
  1049. chapterId: chapterId.toString(),
  1050. hasSurahPrefix: false,
  1051. size: _components_chapters_ChapterIcon_ChapterIconContainer__WEBPACK_IMPORTED_MODULE_4__/* .ChapterIconsSize.Large */ ._.Large
  1052. })
  1053. ]
  1054. }),
  1055. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  1056. className: (_SurahPreviewRow_module_scss__WEBPACK_IMPORTED_MODULE_7___default().right),
  1057. children: description && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  1058. className: classnames__WEBPACK_IMPORTED_MODULE_2___default()((_SurahPreviewRow_module_scss__WEBPACK_IMPORTED_MODULE_7___default().description), (_SurahPreviewRow_module_scss__WEBPACK_IMPORTED_MODULE_7___default().largeText)),
  1059. children: description
  1060. })
  1061. })
  1062. ]
  1063. });
  1064. }
  1065. return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  1066. className: (_SurahPreviewRow_module_scss__WEBPACK_IMPORTED_MODULE_7___default().container),
  1067. children: [
  1068. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  1069. className: (_SurahPreviewRow_module_scss__WEBPACK_IMPORTED_MODULE_7___default().left),
  1070. children: [
  1071. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  1072. className: (_SurahPreviewRow_module_scss__WEBPACK_IMPORTED_MODULE_7___default().surahNumber),
  1073. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("span", {
  1074. children: localizedSurahNumber
  1075. })
  1076. }),
  1077. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  1078. className: (_SurahPreviewRow_module_scss__WEBPACK_IMPORTED_MODULE_7___default().surahNameContainer),
  1079. children: [
  1080. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  1081. className: (_SurahPreviewRow_module_scss__WEBPACK_IMPORTED_MODULE_7___default().surahName),
  1082. children: surahName
  1083. }),
  1084. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  1085. className: (_SurahPreviewRow_module_scss__WEBPACK_IMPORTED_MODULE_7___default().translatedSurahName),
  1086. children: translatedSurahName
  1087. })
  1088. ]
  1089. })
  1090. ]
  1091. }),
  1092. isLoading && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_dls_Spinner_Spinner__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {}),
  1093. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  1094. className: (_SurahPreviewRow_module_scss__WEBPACK_IMPORTED_MODULE_7___default().right),
  1095. children: [
  1096. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  1097. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components_chapters_ChapterIcon_ChapterIconContainer__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
  1098. chapterId: chapterId.toString(),
  1099. hasSurahPrefix: false
  1100. })
  1101. }),
  1102. description && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  1103. className: (_SurahPreviewRow_module_scss__WEBPACK_IMPORTED_MODULE_7___default().description),
  1104. children: description
  1105. })
  1106. ]
  1107. })
  1108. ]
  1109. });
  1110. };
  1111. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SurahPreviewRow);
  1112. /***/ }),
  1113. /***/ 65961:
  1114. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  1115. "use strict";
  1116. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1117. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  1118. /* harmony export */ });
  1119. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  1120. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  1121. /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
  1122. /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
  1123. /* harmony import */ var _Tabs_module_scss__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(34349);
  1124. /* harmony import */ var _Tabs_module_scss__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_Tabs_module_scss__WEBPACK_IMPORTED_MODULE_2__);
  1125. // TODO: move this to Radix UI Tabs component
  1126. const Tabs = ({ tabs , onSelect , selected })=>{
  1127. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  1128. className: (_Tabs_module_scss__WEBPACK_IMPORTED_MODULE_2___default().container),
  1129. role: "tablist",
  1130. children: tabs.map((tab)=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  1131. className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Tabs_module_scss__WEBPACK_IMPORTED_MODULE_2___default().tabItem), selected === tab.value && (_Tabs_module_scss__WEBPACK_IMPORTED_MODULE_2___default().tabItemSelected)),
  1132. role: "tab",
  1133. tabIndex: 0,
  1134. id: tab.id,
  1135. ...onSelect && {
  1136. onKeyDown: ()=>onSelect(tab.value),
  1137. onClick: ()=>onSelect(tab.value)
  1138. },
  1139. children: tab.title
  1140. }, tab.value))
  1141. });
  1142. };
  1143. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Tabs);
  1144. /***/ }),
  1145. /***/ 37865:
  1146. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  1147. "use strict";
  1148. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  1149. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1150. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  1151. /* harmony export */ });
  1152. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
  1153. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
  1154. /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6022);
  1155. /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);
  1156. /* harmony import */ var swr_immutable__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(79847);
  1157. /* harmony import */ var _redux_slices_QuranReader_readingTracker__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(16143);
  1158. /* harmony import */ var _utils_auth_api__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(37883);
  1159. /* harmony import */ var _utils_auth_apiPaths__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(13830);
  1160. /* harmony import */ var _utils_auth_login__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(22197);
  1161. /* harmony import */ var _utils_verse__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(44519);
  1162. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([swr_immutable__WEBPACK_IMPORTED_MODULE_2__, _utils_auth_login__WEBPACK_IMPORTED_MODULE_6__]);
  1163. ([swr_immutable__WEBPACK_IMPORTED_MODULE_2__, _utils_auth_login__WEBPACK_IMPORTED_MODULE_6__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  1164. const useGetRecentlyReadVerseKeys = ()=>{
  1165. const recentReadingSessions = (0,react_redux__WEBPACK_IMPORTED_MODULE_1__.useSelector)(_redux_slices_QuranReader_readingTracker__WEBPACK_IMPORTED_MODULE_3__/* .selectRecentReadingSessions */ .GF, react_redux__WEBPACK_IMPORTED_MODULE_1__.shallowEqual);
  1166. const { data , isValidating } = (0,swr_immutable__WEBPACK_IMPORTED_MODULE_2__["default"])((0,_utils_auth_login__WEBPACK_IMPORTED_MODULE_6__/* .isLoggedIn */ .jl)() ? (0,_utils_auth_apiPaths__WEBPACK_IMPORTED_MODULE_5__/* .makeReadingSessionsUrl */ .Tj)() : null, _utils_auth_api__WEBPACK_IMPORTED_MODULE_4__/* .privateFetcher */ .UK);
  1167. const recentlyReadVerseKeys = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>{
  1168. if (!(0,_utils_auth_login__WEBPACK_IMPORTED_MODULE_6__/* .isLoggedIn */ .jl)()) {
  1169. return Object.keys(recentReadingSessions);
  1170. }
  1171. if ((0,_utils_auth_login__WEBPACK_IMPORTED_MODULE_6__/* .isLoggedIn */ .jl)() && data?.length > 0) {
  1172. return data.map((item)=>(0,_utils_verse__WEBPACK_IMPORTED_MODULE_7__/* .makeVerseKey */ .u)(item.chapterNumber, item.verseNumber));
  1173. }
  1174. return [];
  1175. }, [
  1176. data,
  1177. recentReadingSessions
  1178. ]);
  1179. // we don't need to pass the error because it'll fallback to an empty array
  1180. return {
  1181. recentlyReadVerseKeys,
  1182. isLoading: isValidating && !data
  1183. };
  1184. };
  1185. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (useGetRecentlyReadVerseKeys);
  1186. __webpack_async_result__();
  1187. } catch(e) { __webpack_async_result__(e); } });
  1188. /***/ })
  1189. };
  1190. ;
  1191. //# sourceMappingURL=88859.js.map