reciters.js 45 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169
  1. (() => {
  2. var exports = {};
  3. exports.id = 31057;
  4. exports.ids = [31057,64820];
  5. exports.modules = {
  6. /***/ 19397:
  7. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  8. "use strict";
  9. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  10. __webpack_require__.r(__webpack_exports__);
  11. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  12. /* harmony export */ "default": () => (/* binding */ pageWrapperTemplate),
  13. /* harmony export */ "getServerSideProps": () => (/* binding */ getServerSideProps),
  14. /* harmony export */ "getStaticProps": () => (/* binding */ getStaticProps)
  15. /* harmony export */ });
  16. /* harmony import */ var _sentry_server_config_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(96270);
  17. /* harmony import */ var _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(58097);
  18. /* harmony import */ var _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__);
  19. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(20997);
  20. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__);
  21. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(16689);
  22. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);
  23. /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(59003);
  24. /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_4__);
  25. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(60866);
  26. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_5__);
  27. /* harmony import */ var _error__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(36049);
  28. /* harmony import */ var _index_module_scss__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(23848);
  29. /* harmony import */ var _index_module_scss__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(_index_module_scss__WEBPACK_IMPORTED_MODULE_15__);
  30. /* harmony import */ var _reciterPage_module_scss__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(88227);
  31. /* harmony import */ var _reciterPage_module_scss__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(_reciterPage_module_scss__WEBPACK_IMPORTED_MODULE_16__);
  32. /* harmony import */ var _api__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(92684);
  33. /* harmony import */ var _components_Navbar_SettingsDrawer_ReciterSelectionBody__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(92251);
  34. /* harmony import */ var _components_NextSeoWrapper__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(25869);
  35. /* harmony import */ var _components_Reciter_QuranReciterListHero__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(15911);
  36. /* harmony import */ var _components_Reciter_RecitersList__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(51201);
  37. /* harmony import */ var _utils_chapter__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(95892);
  38. /* harmony import */ var _utils_locale__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(24709);
  39. /* harmony import */ var _utils_navigation__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(57933);
  40. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_error__WEBPACK_IMPORTED_MODULE_6__, _components_Navbar_SettingsDrawer_ReciterSelectionBody__WEBPACK_IMPORTED_MODULE_8__, _components_Reciter_QuranReciterListHero__WEBPACK_IMPORTED_MODULE_10__, _components_Reciter_RecitersList__WEBPACK_IMPORTED_MODULE_11__, _utils_navigation__WEBPACK_IMPORTED_MODULE_14__]);
  41. ([_error__WEBPACK_IMPORTED_MODULE_6__, _components_Navbar_SettingsDrawer_ReciterSelectionBody__WEBPACK_IMPORTED_MODULE_8__, _components_Reciter_QuranReciterListHero__WEBPACK_IMPORTED_MODULE_10__, _components_Reciter_RecitersList__WEBPACK_IMPORTED_MODULE_11__, _utils_navigation__WEBPACK_IMPORTED_MODULE_14__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  42. const NAVIGATION_URL = "/reciters";
  43. const RecitersListPage = ({ reciters , hasError })=>{
  44. const { t , lang } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_5___default()("reciter");
  45. const { 0: searchQuery , 1: setSearchQuery } = (0,react__WEBPACK_IMPORTED_MODULE_3__.useState)("");
  46. const filteredReciters = (0,react__WEBPACK_IMPORTED_MODULE_3__.useMemo)(()=>searchQuery ? (0,_components_Navbar_SettingsDrawer_ReciterSelectionBody__WEBPACK_IMPORTED_MODULE_8__/* .filterReciters */ .X)(reciters, searchQuery) : reciters, [
  47. searchQuery,
  48. reciters
  49. ]);
  50. if (hasError) return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)(_error__WEBPACK_IMPORTED_MODULE_6__["default"], {
  51. statusCode: 500
  52. });
  53. return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.Fragment, {
  54. children: [
  55. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)(_components_NextSeoWrapper__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z, {
  56. title: t("quran-reciters"),
  57. description: t("reciters-desc"),
  58. canonical: (0,_utils_navigation__WEBPACK_IMPORTED_MODULE_14__/* .getCanonicalUrl */ .Z2)(lang, NAVIGATION_URL),
  59. languageAlternates: (0,_utils_locale__WEBPACK_IMPORTED_MODULE_13__/* .getLanguageAlternates */ .qc)(NAVIGATION_URL)
  60. }),
  61. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsxs)("div", {
  62. className: (_index_module_scss__WEBPACK_IMPORTED_MODULE_15___default().flow),
  63. children: [
  64. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)(_components_Reciter_QuranReciterListHero__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .Z, {
  65. searchQuery: searchQuery,
  66. onSearchQueryChange: setSearchQuery
  67. }),
  68. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("div", {
  69. className: classnames__WEBPACK_IMPORTED_MODULE_4___default()((_index_module_scss__WEBPACK_IMPORTED_MODULE_15___default().flowItem), (_reciterPage_module_scss__WEBPACK_IMPORTED_MODULE_16___default().recitersListContainer)),
  70. children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)(_components_Reciter_RecitersList__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .Z, {
  71. reciters: filteredReciters
  72. })
  73. })
  74. ]
  75. })
  76. ]
  77. });
  78. };
  79. const getStaticProps$1 = async ({ locale })=>{
  80. try {
  81. const { reciters } = await (0,_api__WEBPACK_IMPORTED_MODULE_7__/* .getAvailableReciters */ .tS)(locale, [
  82. "profile_picture",
  83. "cover_image",
  84. "bio",
  85. ]);
  86. const chaptersData = await (0,_utils_chapter__WEBPACK_IMPORTED_MODULE_12__/* .getAllChaptersData */ .T4)(locale);
  87. return {
  88. props: {
  89. chaptersData,
  90. reciters: reciters || []
  91. }
  92. };
  93. } catch (e) {
  94. return {
  95. props: {
  96. hasError: true
  97. }
  98. };
  99. }
  100. };
  101. var serverComponentModule = /*#__PURE__*/Object.freeze({
  102. __proto__: null,
  103. getStaticProps: getStaticProps$1,
  104. 'default': RecitersListPage
  105. });
  106. /*
  107. * This file is a template for the code which will be substituted when our webpack loader handles non-API files in the
  108. * `pages/` directory.
  109. *
  110. * We use `__SENTRY_WRAPPING_TARGET_FILE__.cjs` as a placeholder for the path to the file being wrapped. Because it's not a real package,
  111. * this causes both TS and ESLint to complain, hence the pragma comments below.
  112. */
  113. const userPageModule = serverComponentModule ;
  114. const pageComponent = userPageModule ? userPageModule.default : undefined;
  115. const origGetInitialProps = pageComponent ? pageComponent.getInitialProps : undefined;
  116. const origGetStaticProps = userPageModule ? userPageModule.getStaticProps : undefined;
  117. const origGetServerSideProps = userPageModule ? userPageModule.getServerSideProps : undefined;
  118. // eslint-disable-next-line @typescript-eslint/no-explicit-any
  119. const getInitialPropsWrappers = {
  120. '/_app': _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapAppGetInitialPropsWithSentry,
  121. '/_document': _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapDocumentGetInitialPropsWithSentry,
  122. '/_error': _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapErrorGetInitialPropsWithSentry,
  123. };
  124. const getInitialPropsWrapper = getInitialPropsWrappers['/reciters'] || _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapGetInitialPropsWithSentry;
  125. if (pageComponent && typeof origGetInitialProps === 'function') {
  126. pageComponent.getInitialProps = getInitialPropsWrapper(origGetInitialProps) ;
  127. }
  128. const getStaticProps =
  129. typeof origGetStaticProps === 'function'
  130. ? _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapGetStaticPropsWithSentry(origGetStaticProps, '/reciters')
  131. : undefined;
  132. const getServerSideProps =
  133. typeof origGetServerSideProps === 'function'
  134. ? _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapGetServerSidePropsWithSentry(origGetServerSideProps, '/reciters')
  135. : undefined;
  136. const pageWrapperTemplate = pageComponent ? _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapPageComponentWithSentry(pageComponent ) : pageComponent;
  137. __webpack_async_result__();
  138. } catch(e) { __webpack_async_result__(e); } });
  139. /***/ }),
  140. /***/ 63442:
  141. /***/ ((module) => {
  142. // Exports
  143. module.exports = {
  144. "container": "QuranReciterListHero_container__CgmC_",
  145. "title": "QuranReciterListHero_title__JS4V4",
  146. "backgroundImage": "QuranReciterListHero_backgroundImage__48PjJ",
  147. "searchInputContainer": "QuranReciterListHero_searchInputContainer__lbp3I",
  148. "searchInput": "QuranReciterListHero_searchInput__piLNr"
  149. };
  150. /***/ }),
  151. /***/ 58532:
  152. /***/ ((module) => {
  153. // Exports
  154. module.exports = {
  155. "container": "RecitersList_container__4Z7cE"
  156. };
  157. /***/ }),
  158. /***/ 35902:
  159. /***/ ((module) => {
  160. // Exports
  161. module.exports = {
  162. "internalContainer": "SpinnerContainer_internalContainer__kt2ni",
  163. "spinner": "SpinnerContainer_spinner__kzDgO"
  164. };
  165. /***/ }),
  166. /***/ 92251:
  167. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  168. "use strict";
  169. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  170. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  171. /* harmony export */ "X": () => (/* binding */ filterReciters)
  172. /* harmony export */ });
  173. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  174. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  175. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
  176. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  177. /* harmony import */ var _xstate_react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(59456);
  178. /* harmony import */ var _xstate_react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_xstate_react__WEBPACK_IMPORTED_MODULE_2__);
  179. /* harmony import */ var fuse_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(62733);
  180. /* harmony import */ var fuse_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(fuse_js__WEBPACK_IMPORTED_MODULE_3__);
  181. /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(71853);
  182. /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(next_router__WEBPACK_IMPORTED_MODULE_4__);
  183. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(60866);
  184. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_5__);
  185. /* harmony import */ var _components_DataFetcher__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(12951);
  186. /* harmony import */ var _dls_Forms_Input__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(91308);
  187. /* harmony import */ var _dls_Forms_RadioGroup_RadioGroup__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(64306);
  188. /* harmony import */ var _dls_Spinner_SpinnerContainer__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(18470);
  189. /* harmony import */ var _hooks_auth_usePersistPreferenceGroup__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(19583);
  190. /* harmony import */ var _icons_search_svg__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(29033);
  191. /* harmony import */ var _types_SearchQuerySource__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(3050);
  192. /* harmony import */ var _utils_apiPaths__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(46127);
  193. /* harmony import */ var _utils_eventLogger__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(55943);
  194. /* harmony import */ var src_xstate_AudioPlayerMachineContext__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(64564);
  195. /* harmony import */ var types_auth_PreferenceGroup__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(13591);
  196. /* harmony import */ var types_QueryParam__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(11721);
  197. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_components_DataFetcher__WEBPACK_IMPORTED_MODULE_6__, _dls_Forms_Input__WEBPACK_IMPORTED_MODULE_7__, _dls_Forms_RadioGroup_RadioGroup__WEBPACK_IMPORTED_MODULE_8__, _hooks_auth_usePersistPreferenceGroup__WEBPACK_IMPORTED_MODULE_10__, _utils_eventLogger__WEBPACK_IMPORTED_MODULE_14__, src_xstate_AudioPlayerMachineContext__WEBPACK_IMPORTED_MODULE_15__]);
  198. ([_components_DataFetcher__WEBPACK_IMPORTED_MODULE_6__, _dls_Forms_Input__WEBPACK_IMPORTED_MODULE_7__, _dls_Forms_RadioGroup_RadioGroup__WEBPACK_IMPORTED_MODULE_8__, _hooks_auth_usePersistPreferenceGroup__WEBPACK_IMPORTED_MODULE_10__, _utils_eventLogger__WEBPACK_IMPORTED_MODULE_14__, src_xstate_AudioPlayerMachineContext__WEBPACK_IMPORTED_MODULE_15__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  199. const filterReciters = (reciters, searchQuery)=>{
  200. const fuse = new (fuse_js__WEBPACK_IMPORTED_MODULE_3___default())(reciters, {
  201. keys: [
  202. "name",
  203. "languageName",
  204. "translatedName.name",
  205. "qirat.name",
  206. "style.name"
  207. ],
  208. threshold: 0.3
  209. });
  210. const filteredReciter = fuse.search(searchQuery).map(({ item })=>item);
  211. if (!filteredReciter.length) {
  212. (0,_utils_eventLogger__WEBPACK_IMPORTED_MODULE_14__/* .logEmptySearchResults */ .Dy)({
  213. query: searchQuery,
  214. source: _types_SearchQuerySource__WEBPACK_IMPORTED_MODULE_12__/* ["default"].TranslationSettingsDrawer */ .Z.TranslationSettingsDrawer
  215. });
  216. }
  217. return filteredReciter;
  218. };
  219. const DEFAULT_RECITATION_STYLE = "Murattal";
  220. const SettingsReciter = ()=>{
  221. const { lang , t } = useTranslation("common");
  222. const { isLoading , actions: { onXstateSettingsChange } , } = usePersistPreferenceGroup();
  223. const router = useRouter();
  224. const { 0: searchQuery , 1: setSearchQuery } = useState("");
  225. const audioService = useContext(AudioPlayerMachineContext);
  226. const selectedReciterId = useSelector(audioService, (state)=>state.context.reciterId);
  227. // given the reciterId, get the full reciter object.
  228. const onSelectedReciterChange = (reciterId, reciters)=>{
  229. if (!reciterId) return;
  230. const reciter = reciters.find((r)=>r.id === Number(reciterId));
  231. logItemSelectionChange("selected_reciter", reciter.id);
  232. router.query[QueryParam.Reciter] = String(reciter.id);
  233. router.push(router, undefined, {
  234. shallow: true
  235. });
  236. const previousReciterId = selectedReciterId;
  237. onXstateSettingsChange("reciter", reciter.id, ()=>audioService.send({
  238. type: "CHANGE_RECITER",
  239. reciterId: Number(reciterId)
  240. }), ()=>audioService.send({
  241. type: "CHANGE_RECITER",
  242. reciterId: previousReciterId
  243. }), PreferenceGroup.AUDIO);
  244. };
  245. return /*#__PURE__*/ _jsxs("div", {
  246. children: [
  247. /*#__PURE__*/ _jsx("div", {
  248. className: styles.searchInputContainer,
  249. children: /*#__PURE__*/ _jsx(SpinnerContainer, {
  250. isLoading: isLoading,
  251. children: /*#__PURE__*/ _jsx(Input, {
  252. prefix: /*#__PURE__*/ _jsx(IconSearch, {}),
  253. id: "translations-search",
  254. value: searchQuery,
  255. onChange: setSearchQuery,
  256. placeholder: t("settings.search-reciter"),
  257. fixedWidth: false,
  258. containerClassName: styles.input
  259. })
  260. })
  261. }),
  262. /*#__PURE__*/ _jsx(DataFetcher, {
  263. queryKey: makeAvailableRecitersUrl(lang),
  264. render: (data)=>{
  265. const filteredReciters = searchQuery ? filterReciters(data.reciters, searchQuery) : data.reciters;
  266. return /*#__PURE__*/ _jsx(RadioGroup.Root, {
  267. label: "reciter",
  268. orientation: RadioGroupOrientation.Vertical,
  269. value: selectedReciterId.toString(),
  270. onChange: (newId)=>onSelectedReciterChange(newId, data.reciters),
  271. children: filteredReciters.sort((a, b)=>a.name + a.id > b.name + b.id ? 1 : -1).map((reciter)=>{
  272. const reciterId = reciter.id.toString();
  273. return /*#__PURE__*/ _jsxs("div", {
  274. className: styles.reciter,
  275. children: [
  276. /*#__PURE__*/ _jsx(RadioGroup.Item, {
  277. value: reciterId,
  278. id: reciterId
  279. }),
  280. /*#__PURE__*/ _jsxs("label", {
  281. htmlFor: reciterId,
  282. className: styles.reciterLabel,
  283. children: [
  284. reciter.translatedName.name,
  285. reciter.style.name !== DEFAULT_RECITATION_STYLE && /*#__PURE__*/ _jsx("span", {
  286. className: styles.recitationStyle,
  287. children: reciter.style.name
  288. })
  289. ]
  290. })
  291. ]
  292. }, reciterId);
  293. })
  294. });
  295. }
  296. })
  297. ]
  298. });
  299. };
  300. /* unused harmony default export */ var __WEBPACK_DEFAULT_EXPORT__ = ((/* unused pure expression or super */ null && (SettingsReciter)));
  301. __webpack_async_result__();
  302. } catch(e) { __webpack_async_result__(e); } });
  303. /***/ }),
  304. /***/ 15911:
  305. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  306. "use strict";
  307. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  308. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  309. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  310. /* harmony export */ });
  311. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  312. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  313. /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
  314. /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
  315. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(60866);
  316. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2__);
  317. /* harmony import */ var _dls_Forms_Input__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(91308);
  318. /* harmony import */ var _QuranReciterListHero_module_scss__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(63442);
  319. /* harmony import */ var _QuranReciterListHero_module_scss__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_QuranReciterListHero_module_scss__WEBPACK_IMPORTED_MODULE_5__);
  320. /* harmony import */ var _icons_search_svg__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(29033);
  321. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_dls_Forms_Input__WEBPACK_IMPORTED_MODULE_3__]);
  322. _dls_Forms_Input__WEBPACK_IMPORTED_MODULE_3__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
  323. const QuranReciterListHero = ({ onSearchQueryChange , searchQuery })=>{
  324. const { t } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2___default()();
  325. return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  326. className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_QuranReciterListHero_module_scss__WEBPACK_IMPORTED_MODULE_5___default().container)),
  327. children: [
  328. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  329. className: (_QuranReciterListHero_module_scss__WEBPACK_IMPORTED_MODULE_5___default().backgroundImage)
  330. }),
  331. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  332. className: (_QuranReciterListHero_module_scss__WEBPACK_IMPORTED_MODULE_5___default().title),
  333. children: t("reciter:quran-reciters")
  334. }),
  335. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  336. className: (_QuranReciterListHero_module_scss__WEBPACK_IMPORTED_MODULE_5___default().searchInputContainer),
  337. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_dls_Forms_Input__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .ZP, {
  338. containerClassName: (_QuranReciterListHero_module_scss__WEBPACK_IMPORTED_MODULE_5___default().searchInput),
  339. prefix: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_search_svg__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {}),
  340. id: "translations-search",
  341. value: searchQuery,
  342. onChange: onSearchQueryChange,
  343. placeholder: t("common:settings.search-reciter"),
  344. fixedWidth: false
  345. })
  346. })
  347. ]
  348. });
  349. };
  350. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (QuranReciterListHero);
  351. __webpack_async_result__();
  352. } catch(e) { __webpack_async_result__(e); } });
  353. /***/ }),
  354. /***/ 51201:
  355. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  356. "use strict";
  357. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  358. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  359. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  360. /* harmony export */ });
  361. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  362. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  363. /* harmony import */ var _dls_Card_Card__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(81035);
  364. /* harmony import */ var _RecitersList_module_scss__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(58532);
  365. /* harmony import */ var _RecitersList_module_scss__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_RecitersList_module_scss__WEBPACK_IMPORTED_MODULE_4__);
  366. /* harmony import */ var _dls_Link_Link__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(61239);
  367. /* harmony import */ var _utils_cdn__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(17339);
  368. /* harmony import */ var _utils_navigation__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(57933);
  369. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_dls_Card_Card__WEBPACK_IMPORTED_MODULE_1__, _utils_navigation__WEBPACK_IMPORTED_MODULE_3__]);
  370. ([_dls_Card_Card__WEBPACK_IMPORTED_MODULE_1__, _utils_navigation__WEBPACK_IMPORTED_MODULE_3__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  371. const RecitersList = ({ reciters })=>{
  372. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  373. className: (_RecitersList_module_scss__WEBPACK_IMPORTED_MODULE_4___default().container),
  374. children: reciters.map((reciter)=>{
  375. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_dls_Link_Link__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
  376. href: (0,_utils_navigation__WEBPACK_IMPORTED_MODULE_3__/* .getReciterNavigationUrl */ .aT)(reciter.id.toString()),
  377. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_dls_Card_Card__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, {
  378. imgSrc: (0,_utils_cdn__WEBPACK_IMPORTED_MODULE_5__/* .makeCDNUrl */ .Kr)(reciter.profilePicture),
  379. title: reciter.translatedName.name,
  380. imgAlt: reciter.translatedName.name,
  381. description: reciter.style.name,
  382. size: _dls_Card_Card__WEBPACK_IMPORTED_MODULE_1__/* .CardSize.Medium */ .I.Medium
  383. }, reciter.id)
  384. }, reciter.id);
  385. })
  386. });
  387. };
  388. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (RecitersList);
  389. __webpack_async_result__();
  390. } catch(e) { __webpack_async_result__(e); } });
  391. /***/ }),
  392. /***/ 18470:
  393. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  394. "use strict";
  395. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  396. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  397. /* harmony export */ });
  398. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  399. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  400. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
  401. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  402. /* harmony import */ var _SpinnerContainer_module_scss__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(35902);
  403. /* harmony import */ var _SpinnerContainer_module_scss__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_SpinnerContainer_module_scss__WEBPACK_IMPORTED_MODULE_3__);
  404. /* harmony import */ var _dls_Spinner_Spinner__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7190);
  405. const SpinnerContainer = ({ children , isLoading })=>{
  406. return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  407. className: (_SpinnerContainer_module_scss__WEBPACK_IMPORTED_MODULE_3___default().internalContainer),
  408. children: [
  409. children,
  410. isLoading && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_dls_Spinner_Spinner__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
  411. className: (_SpinnerContainer_module_scss__WEBPACK_IMPORTED_MODULE_3___default().spinner)
  412. })
  413. ]
  414. });
  415. };
  416. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SpinnerContainer);
  417. /***/ }),
  418. /***/ 19583:
  419. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  420. "use strict";
  421. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  422. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  423. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  424. /* harmony export */ });
  425. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
  426. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
  427. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(60866);
  428. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1__);
  429. /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6022);
  430. /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_2__);
  431. /* harmony import */ var _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(79717);
  432. /* harmony import */ var _redux_slices_QuranReader_styles__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(62093);
  433. /* harmony import */ var _utils_api__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(4917);
  434. /* harmony import */ var _utils_auth_api__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(37883);
  435. /* harmony import */ var _utils_auth_login__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(22197);
  436. /* harmony import */ var types_auth_PreferenceGroup__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(13591);
  437. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__, _utils_auth_login__WEBPACK_IMPORTED_MODULE_7__]);
  438. ([_dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__, _utils_auth_login__WEBPACK_IMPORTED_MODULE_7__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  439. /* eslint-disable max-lines */ /* eslint-disable react-func/max-lines-per-function */
  440. /**
  441. * A hook that will be used to:
  442. * 1. If the user is logged in, we persist settings
  443. * to the DB then dispatch the redux action that
  444. * would apply the changes locally (and might also persist
  445. * it locally in the localStorage depending on the slice)
  446. * 2. If not, just dispatch the action.
  447. *
  448. * @returns {PersistPreferences}
  449. */ const usePersistPreferenceGroup = ()=>{
  450. const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_2__.useDispatch)();
  451. const toast = (0,_dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__/* .useToast */ .pm)();
  452. const { t } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1___default()("common");
  453. const { 0: isLoading , 1: setIsLoading } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);
  454. const quranFont = (0,react_redux__WEBPACK_IMPORTED_MODULE_2__.useSelector)(_redux_slices_QuranReader_styles__WEBPACK_IMPORTED_MODULE_4__/* .selectQuranFont */ .Ho, react_redux__WEBPACK_IMPORTED_MODULE_2__.shallowEqual);
  455. const mushafLines = (0,react_redux__WEBPACK_IMPORTED_MODULE_2__.useSelector)(_redux_slices_QuranReader_styles__WEBPACK_IMPORTED_MODULE_4__/* .selectQuranMushafLines */ .z$, react_redux__WEBPACK_IMPORTED_MODULE_2__.shallowEqual);
  456. // this function is used to get the updated mushafId and pass it to addOrUpdateUserPreference
  457. // if the preferenceGroup is not QURAN_READER_STYLES, it will return undefined
  458. const getUpdatedMushafId = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((preferenceGroup, key, value)=>{
  459. if (preferenceGroup !== types_auth_PreferenceGroup__WEBPACK_IMPORTED_MODULE_8__/* ["default"].QURAN_READER_STYLES */ .Z.QURAN_READER_STYLES) return undefined;
  460. const font = key === "quranFont" ? value : quranFont;
  461. const lines = key === "mushafLines" ? value : mushafLines;
  462. return (0,_utils_api__WEBPACK_IMPORTED_MODULE_5__/* .getMushafId */ .$P)(font, lines).mushaf;
  463. }, [
  464. quranFont,
  465. mushafLines
  466. ]);
  467. const actions = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>({
  468. onSettingsChangeWithoutDispatch: (key, value, preferenceGroup, callback)=>{
  469. if ((0,_utils_auth_login__WEBPACK_IMPORTED_MODULE_7__/* .isLoggedIn */ .jl)()) {
  470. setIsLoading(true);
  471. (0,_utils_auth_api__WEBPACK_IMPORTED_MODULE_6__/* .addOrUpdateUserPreference */ .b9)(key, value, preferenceGroup, getUpdatedMushafId(preferenceGroup, key, value)).then(()=>{
  472. callback();
  473. }).finally(()=>{
  474. setIsLoading(false);
  475. });
  476. } else {
  477. callback();
  478. }
  479. },
  480. onXstateSettingsChange: (key, value, action, undoAction, preferenceGroup, successCallback)=>{
  481. if ((0,_utils_auth_login__WEBPACK_IMPORTED_MODULE_7__/* .isLoggedIn */ .jl)()) {
  482. action();
  483. setIsLoading(true);
  484. (0,_utils_auth_api__WEBPACK_IMPORTED_MODULE_6__/* .addOrUpdateUserPreference */ .b9)(key, value, preferenceGroup, getUpdatedMushafId(preferenceGroup, key, value)).then(()=>{
  485. if (successCallback) {
  486. successCallback();
  487. }
  488. }).catch(()=>{
  489. toast(t("error.pref-persist-fail"), {
  490. status: _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__/* .ToastStatus.Warning */ .YZ.Warning,
  491. actions: [
  492. {
  493. text: t("undo"),
  494. primary: true,
  495. onClick: ()=>{
  496. undoAction();
  497. }
  498. },
  499. {
  500. text: t("continue"),
  501. primary: false,
  502. onClick: ()=>{
  503. if (successCallback) {
  504. successCallback();
  505. }
  506. }
  507. },
  508. ]
  509. });
  510. }).finally(()=>{
  511. setIsLoading(false);
  512. });
  513. } else {
  514. action();
  515. }
  516. },
  517. onSettingsChange: (key, value, action, undoAction, preferenceGroup, successCallback)=>{
  518. if ((0,_utils_auth_login__WEBPACK_IMPORTED_MODULE_7__/* .isLoggedIn */ .jl)()) {
  519. // 1. dispatch the action first
  520. dispatch(action);
  521. setIsLoading(true);
  522. (0,_utils_auth_api__WEBPACK_IMPORTED_MODULE_6__/* .addOrUpdateUserPreference */ .b9)(key, value, preferenceGroup, getUpdatedMushafId(preferenceGroup, key, value)).then(()=>{
  523. if (successCallback) {
  524. successCallback();
  525. }
  526. }).catch(()=>{
  527. toast(t("error.pref-persist-fail"), {
  528. status: _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__/* .ToastStatus.Warning */ .YZ.Warning,
  529. actions: [
  530. {
  531. text: t("undo"),
  532. primary: true,
  533. onClick: ()=>{
  534. dispatch(undoAction);
  535. }
  536. },
  537. {
  538. text: t("continue"),
  539. primary: false,
  540. onClick: ()=>{
  541. if (successCallback) {
  542. successCallback();
  543. }
  544. }
  545. },
  546. ]
  547. });
  548. }).finally(()=>{
  549. setIsLoading(false);
  550. });
  551. } else {
  552. dispatch(action);
  553. }
  554. }
  555. }), [
  556. dispatch,
  557. t,
  558. toast,
  559. getUpdatedMushafId
  560. ]);
  561. return {
  562. actions,
  563. isLoading
  564. };
  565. };
  566. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (usePersistPreferenceGroup);
  567. __webpack_async_result__();
  568. } catch(e) { __webpack_async_result__(e); } });
  569. /***/ }),
  570. /***/ 17339:
  571. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  572. "use strict";
  573. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  574. /* harmony export */ "Kr": () => (/* binding */ makeCDNUrl)
  575. /* harmony export */ });
  576. /* unused harmony exports CDN_HOST, CDN_ASSETS_VERSION */
  577. const CDN_HOST = "https://static.qurancdn.com";
  578. const CDN_ASSETS_VERSION = "1";
  579. /**
  580. * Generate versioned URL of static asset
  581. *
  582. * @param {string} path the path of static asset
  583. * @returns {string}
  584. */ const makeCDNUrl = (path)=>{
  585. return `${CDN_HOST}/${path}?v=${CDN_ASSETS_VERSION}`;
  586. };
  587. /***/ }),
  588. /***/ 75184:
  589. /***/ ((module) => {
  590. "use strict";
  591. module.exports = require("@reduxjs/toolkit");
  592. /***/ }),
  593. /***/ 58097:
  594. /***/ ((module) => {
  595. "use strict";
  596. module.exports = require("@sentry/nextjs");
  597. /***/ }),
  598. /***/ 59456:
  599. /***/ ((module) => {
  600. "use strict";
  601. module.exports = require("@xstate/react");
  602. /***/ }),
  603. /***/ 59003:
  604. /***/ ((module) => {
  605. "use strict";
  606. module.exports = require("classnames");
  607. /***/ }),
  608. /***/ 62733:
  609. /***/ ((module) => {
  610. "use strict";
  611. module.exports = require("fuse.js");
  612. /***/ }),
  613. /***/ 59606:
  614. /***/ ((module) => {
  615. "use strict";
  616. module.exports = require("humps");
  617. /***/ }),
  618. /***/ 12372:
  619. /***/ ((module) => {
  620. "use strict";
  621. module.exports = require("lodash/findKey");
  622. /***/ }),
  623. /***/ 98492:
  624. /***/ ((module) => {
  625. "use strict";
  626. module.exports = require("lodash/groupBy");
  627. /***/ }),
  628. /***/ 35526:
  629. /***/ ((module) => {
  630. "use strict";
  631. module.exports = require("lodash/random");
  632. /***/ }),
  633. /***/ 64042:
  634. /***/ ((module) => {
  635. "use strict";
  636. module.exports = require("lodash/range");
  637. /***/ }),
  638. /***/ 47657:
  639. /***/ ((module) => {
  640. "use strict";
  641. module.exports = require("lodash/sample");
  642. /***/ }),
  643. /***/ 16641:
  644. /***/ ((module) => {
  645. "use strict";
  646. module.exports = require("next-seo");
  647. /***/ }),
  648. /***/ 60866:
  649. /***/ ((module) => {
  650. "use strict";
  651. module.exports = require("next-translate/useTranslation");
  652. /***/ }),
  653. /***/ 3280:
  654. /***/ ((module) => {
  655. "use strict";
  656. module.exports = require("next/dist/shared/lib/app-router-context.js");
  657. /***/ }),
  658. /***/ 92796:
  659. /***/ ((module) => {
  660. "use strict";
  661. module.exports = require("next/dist/shared/lib/head-manager-context.js");
  662. /***/ }),
  663. /***/ 94957:
  664. /***/ ((module) => {
  665. "use strict";
  666. module.exports = require("next/dist/shared/lib/head.js");
  667. /***/ }),
  668. /***/ 3539:
  669. /***/ ((module) => {
  670. "use strict";
  671. module.exports = require("next/dist/shared/lib/i18n/detect-domain-locale.js");
  672. /***/ }),
  673. /***/ 34014:
  674. /***/ ((module) => {
  675. "use strict";
  676. module.exports = require("next/dist/shared/lib/i18n/normalize-locale-path.js");
  677. /***/ }),
  678. /***/ 50744:
  679. /***/ ((module) => {
  680. "use strict";
  681. module.exports = require("next/dist/shared/lib/image-config-context.js");
  682. /***/ }),
  683. /***/ 35843:
  684. /***/ ((module) => {
  685. "use strict";
  686. module.exports = require("next/dist/shared/lib/image-config.js");
  687. /***/ }),
  688. /***/ 78524:
  689. /***/ ((module) => {
  690. "use strict";
  691. module.exports = require("next/dist/shared/lib/is-plain-object.js");
  692. /***/ }),
  693. /***/ 78020:
  694. /***/ ((module) => {
  695. "use strict";
  696. module.exports = require("next/dist/shared/lib/mitt.js");
  697. /***/ }),
  698. /***/ 64406:
  699. /***/ ((module) => {
  700. "use strict";
  701. module.exports = require("next/dist/shared/lib/page-path/denormalize-page-path.js");
  702. /***/ }),
  703. /***/ 24964:
  704. /***/ ((module) => {
  705. "use strict";
  706. module.exports = require("next/dist/shared/lib/router-context.js");
  707. /***/ }),
  708. /***/ 93431:
  709. /***/ ((module) => {
  710. "use strict";
  711. module.exports = require("next/dist/shared/lib/router/utils/add-locale.js");
  712. /***/ }),
  713. /***/ 11751:
  714. /***/ ((module) => {
  715. "use strict";
  716. module.exports = require("next/dist/shared/lib/router/utils/add-path-prefix.js");
  717. /***/ }),
  718. /***/ 46220:
  719. /***/ ((module) => {
  720. "use strict";
  721. module.exports = require("next/dist/shared/lib/router/utils/compare-states.js");
  722. /***/ }),
  723. /***/ 10299:
  724. /***/ ((module) => {
  725. "use strict";
  726. module.exports = require("next/dist/shared/lib/router/utils/format-next-pathname-info.js");
  727. /***/ }),
  728. /***/ 23938:
  729. /***/ ((module) => {
  730. "use strict";
  731. module.exports = require("next/dist/shared/lib/router/utils/format-url.js");
  732. /***/ }),
  733. /***/ 29565:
  734. /***/ ((module) => {
  735. "use strict";
  736. module.exports = require("next/dist/shared/lib/router/utils/get-asset-path-from-route.js");
  737. /***/ }),
  738. /***/ 35789:
  739. /***/ ((module) => {
  740. "use strict";
  741. module.exports = require("next/dist/shared/lib/router/utils/get-next-pathname-info.js");
  742. /***/ }),
  743. /***/ 1897:
  744. /***/ ((module) => {
  745. "use strict";
  746. module.exports = require("next/dist/shared/lib/router/utils/is-bot.js");
  747. /***/ }),
  748. /***/ 1428:
  749. /***/ ((module) => {
  750. "use strict";
  751. module.exports = require("next/dist/shared/lib/router/utils/is-dynamic.js");
  752. /***/ }),
  753. /***/ 28854:
  754. /***/ ((module) => {
  755. "use strict";
  756. module.exports = require("next/dist/shared/lib/router/utils/parse-path.js");
  757. /***/ }),
  758. /***/ 91292:
  759. /***/ ((module) => {
  760. "use strict";
  761. module.exports = require("next/dist/shared/lib/router/utils/parse-relative-url.js");
  762. /***/ }),
  763. /***/ 34567:
  764. /***/ ((module) => {
  765. "use strict";
  766. module.exports = require("next/dist/shared/lib/router/utils/path-has-prefix.js");
  767. /***/ }),
  768. /***/ 80979:
  769. /***/ ((module) => {
  770. "use strict";
  771. module.exports = require("next/dist/shared/lib/router/utils/querystring.js");
  772. /***/ }),
  773. /***/ 93297:
  774. /***/ ((module) => {
  775. "use strict";
  776. module.exports = require("next/dist/shared/lib/router/utils/remove-trailing-slash.js");
  777. /***/ }),
  778. /***/ 36052:
  779. /***/ ((module) => {
  780. "use strict";
  781. module.exports = require("next/dist/shared/lib/router/utils/resolve-rewrites.js");
  782. /***/ }),
  783. /***/ 84226:
  784. /***/ ((module) => {
  785. "use strict";
  786. module.exports = require("next/dist/shared/lib/router/utils/route-matcher.js");
  787. /***/ }),
  788. /***/ 95052:
  789. /***/ ((module) => {
  790. "use strict";
  791. module.exports = require("next/dist/shared/lib/router/utils/route-regex.js");
  792. /***/ }),
  793. /***/ 59232:
  794. /***/ ((module) => {
  795. "use strict";
  796. module.exports = require("next/dist/shared/lib/utils.js");
  797. /***/ }),
  798. /***/ 71853:
  799. /***/ ((module) => {
  800. "use strict";
  801. module.exports = require("next/router");
  802. /***/ }),
  803. /***/ 16689:
  804. /***/ ((module) => {
  805. "use strict";
  806. module.exports = require("react");
  807. /***/ }),
  808. /***/ 6022:
  809. /***/ ((module) => {
  810. "use strict";
  811. module.exports = require("react-redux");
  812. /***/ }),
  813. /***/ 20997:
  814. /***/ ((module) => {
  815. "use strict";
  816. module.exports = require("react/jsx-runtime");
  817. /***/ }),
  818. /***/ 52648:
  819. /***/ ((module) => {
  820. "use strict";
  821. module.exports = require("refresh-fetch");
  822. /***/ }),
  823. /***/ 82522:
  824. /***/ ((module) => {
  825. "use strict";
  826. module.exports = require("xstate");
  827. /***/ }),
  828. /***/ 44549:
  829. /***/ ((module) => {
  830. "use strict";
  831. module.exports = require("xstate/lib/actions");
  832. /***/ }),
  833. /***/ 4086:
  834. /***/ ((module) => {
  835. "use strict";
  836. module.exports = import("@radix-ui/react-radio-group");;
  837. /***/ }),
  838. /***/ 66704:
  839. /***/ ((module) => {
  840. "use strict";
  841. module.exports = import("@radix-ui/react-tooltip");;
  842. /***/ }),
  843. /***/ 88813:
  844. /***/ ((module) => {
  845. "use strict";
  846. module.exports = import("firebase/compat/analytics");;
  847. /***/ }),
  848. /***/ 33773:
  849. /***/ ((module) => {
  850. "use strict";
  851. module.exports = import("firebase/compat/app");;
  852. /***/ }),
  853. /***/ 69915:
  854. /***/ ((module) => {
  855. "use strict";
  856. module.exports = import("js-cookie");;
  857. /***/ }),
  858. /***/ 3590:
  859. /***/ ((module) => {
  860. "use strict";
  861. module.exports = import("react-toastify");;
  862. /***/ }),
  863. /***/ 79847:
  864. /***/ ((module) => {
  865. "use strict";
  866. module.exports = import("swr/immutable");;
  867. /***/ }),
  868. /***/ 63477:
  869. /***/ ((module) => {
  870. "use strict";
  871. module.exports = require("querystring");
  872. /***/ })
  873. };
  874. ;
  875. // load runtime
  876. var __webpack_require__ = require("../webpack-runtime.js");
  877. __webpack_require__.C(exports);
  878. var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
  879. var __webpack_exports__ = __webpack_require__.X(0, [11497,79165,7477,96270,24709,57933,61239,25869,50497,76410,79717,13830,37883,22197,12951,36049,85949,62093,91308,64564,21550,64306,78936], () => (__webpack_exec__(19397)));
  880. module.exports = __webpack_exports__;
  881. })();
  882. //# sourceMappingURL=reciters.js.map