notification-settings.js 84 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854
  1. (() => {
  2. var exports = {};
  3. exports.id = 33747;
  4. exports.ids = [33747,64820];
  5. exports.modules = {
  6. /***/ 49086:
  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 next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(60866);
  22. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_3__);
  23. /* harmony import */ var _components_Auth_withAuth__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(1223);
  24. /* harmony import */ var _components_NextSeoWrapper__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(25869);
  25. /* harmony import */ var _components_Notifications_InAppNotifications_NotificationContext__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(42534);
  26. /* harmony import */ var _components_Notifications_NotificationSettings_Tabs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(90569);
  27. /* harmony import */ var _pages_index_module_scss__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(23848);
  28. /* harmony import */ var _pages_index_module_scss__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(_pages_index_module_scss__WEBPACK_IMPORTED_MODULE_11__);
  29. /* harmony import */ var _utils_chapter__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(95892);
  30. /* harmony import */ var _utils_locale__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(24709);
  31. /* harmony import */ var _utils_navigation__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(57933);
  32. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_components_Auth_withAuth__WEBPACK_IMPORTED_MODULE_4__, _components_Notifications_InAppNotifications_NotificationContext__WEBPACK_IMPORTED_MODULE_6__, _components_Notifications_NotificationSettings_Tabs__WEBPACK_IMPORTED_MODULE_7__, _utils_navigation__WEBPACK_IMPORTED_MODULE_10__]);
  33. ([_components_Auth_withAuth__WEBPACK_IMPORTED_MODULE_4__, _components_Notifications_InAppNotifications_NotificationContext__WEBPACK_IMPORTED_MODULE_6__, _components_Notifications_NotificationSettings_Tabs__WEBPACK_IMPORTED_MODULE_7__, _utils_navigation__WEBPACK_IMPORTED_MODULE_10__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  34. const NotificationSettingsPage = ()=>{
  35. const { t , lang } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_3___default()("common");
  36. const navigationUrl = (0,_utils_navigation__WEBPACK_IMPORTED_MODULE_10__/* .getNotificationSettingsNavigationUrl */ .lj)();
  37. const isProduction = process.env.NEXT_PUBLIC_VERCEL_ENV === "production";
  38. return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.Fragment, {
  39. children: [
  40. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)(_components_NextSeoWrapper__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
  41. title: t("notification-settings"),
  42. canonical: (0,_utils_navigation__WEBPACK_IMPORTED_MODULE_10__/* .getCanonicalUrl */ .Z2)(lang, navigationUrl),
  43. languageAlternates: (0,_utils_locale__WEBPACK_IMPORTED_MODULE_9__/* .getLanguageAlternates */ .qc)(navigationUrl),
  44. nofollow: true,
  45. noindex: true
  46. }),
  47. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("div", {
  48. className: (_pages_index_module_scss__WEBPACK_IMPORTED_MODULE_11___default().pageContainer),
  49. children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("div", {
  50. className: (_pages_index_module_scss__WEBPACK_IMPORTED_MODULE_11___default().flow),
  51. children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("div", {
  52. className: (_pages_index_module_scss__WEBPACK_IMPORTED_MODULE_11___default().flowItem),
  53. children: isProduction ? /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)(_components_Notifications_InAppNotifications_NotificationContext__WEBPACK_IMPORTED_MODULE_6__/* .NotificationsProvider */ .N, {
  54. children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)(_components_Notifications_NotificationSettings_Tabs__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {})
  55. }) : // eslint-disable-next-line i18next/no-literal-string
  56. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("p", {
  57. children: t("notification-settings:notif-settings-not-enabled")
  58. })
  59. })
  60. })
  61. })
  62. ]
  63. });
  64. };
  65. const getStaticProps$1 = async ({ locale })=>{
  66. const allChaptersData = await (0,_utils_chapter__WEBPACK_IMPORTED_MODULE_8__/* .getAllChaptersData */ .T4)(locale);
  67. return {
  68. props: {
  69. chaptersData: allChaptersData
  70. }
  71. };
  72. };
  73. var __SENTRY_WRAPPING_TARGET_FILE__ = (0,_components_Auth_withAuth__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z)(NotificationSettingsPage);
  74. var serverComponentModule = /*#__PURE__*/Object.freeze({
  75. __proto__: null,
  76. getStaticProps: getStaticProps$1,
  77. 'default': __SENTRY_WRAPPING_TARGET_FILE__
  78. });
  79. /*
  80. * This file is a template for the code which will be substituted when our webpack loader handles non-API files in the
  81. * `pages/` directory.
  82. *
  83. * 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,
  84. * this causes both TS and ESLint to complain, hence the pragma comments below.
  85. */
  86. const userPageModule = serverComponentModule ;
  87. const pageComponent = userPageModule ? userPageModule.default : undefined;
  88. const origGetInitialProps = pageComponent ? pageComponent.getInitialProps : undefined;
  89. const origGetStaticProps = userPageModule ? userPageModule.getStaticProps : undefined;
  90. const origGetServerSideProps = userPageModule ? userPageModule.getServerSideProps : undefined;
  91. // eslint-disable-next-line @typescript-eslint/no-explicit-any
  92. const getInitialPropsWrappers = {
  93. '/_app': _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapAppGetInitialPropsWithSentry,
  94. '/_document': _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapDocumentGetInitialPropsWithSentry,
  95. '/_error': _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapErrorGetInitialPropsWithSentry,
  96. };
  97. const getInitialPropsWrapper = getInitialPropsWrappers['/notification-settings'] || _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapGetInitialPropsWithSentry;
  98. if (pageComponent && typeof origGetInitialProps === 'function') {
  99. pageComponent.getInitialProps = getInitialPropsWrapper(origGetInitialProps) ;
  100. }
  101. const getStaticProps =
  102. typeof origGetStaticProps === 'function'
  103. ? _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapGetStaticPropsWithSentry(origGetStaticProps, '/notification-settings')
  104. : undefined;
  105. const getServerSideProps =
  106. typeof origGetServerSideProps === 'function'
  107. ? _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapGetServerSidePropsWithSentry(origGetServerSideProps, '/notification-settings')
  108. : undefined;
  109. const pageWrapperTemplate = pageComponent ? _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapPageComponentWithSentry(pageComponent ) : pageComponent;
  110. __webpack_async_result__();
  111. } catch(e) { __webpack_async_result__(e); } });
  112. /***/ }),
  113. /***/ 24868:
  114. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  115. "use strict";
  116. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  117. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  118. /* harmony export */ });
  119. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
  120. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
  121. var _path;
  122. 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); }
  123. var SvgChevronDown = function SvgChevronDown(props) {
  124. return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", _extends({
  125. width: 15,
  126. height: 15,
  127. viewBox: "0 0 15 15",
  128. fill: "none",
  129. xmlns: "http://www.w3.org/2000/svg"
  130. }, props), _path || (_path = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
  131. d: "M3.135 6.158a.5.5 0 0 1 .707-.023L7.5 9.565l3.658-3.43a.5.5 0 0 1 .684.73l-4 3.75a.5.5 0 0 1-.684 0l-4-3.75a.5.5 0 0 1-.023-.707Z",
  132. fill: "currentColor",
  133. fillRule: "evenodd",
  134. clipRule: "evenodd"
  135. })));
  136. };
  137. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SvgChevronDown);
  138. /***/ }),
  139. /***/ 62396:
  140. /***/ ((module) => {
  141. // Exports
  142. module.exports = {
  143. "container": "CollapsibleWorkflowSettings_container__vrNoK",
  144. "workflowName": "CollapsibleWorkflowSettings_workflowName__0RkJz",
  145. "workflowChannels": "CollapsibleWorkflowSettings_workflowChannels__mIy5l"
  146. };
  147. /***/ }),
  148. /***/ 50021:
  149. /***/ ((module) => {
  150. // Exports
  151. module.exports = {
  152. "channelsContainer": "FieldsetContainer_channelsContainer___vj9c"
  153. };
  154. /***/ }),
  155. /***/ 57116:
  156. /***/ ((module) => {
  157. // Exports
  158. module.exports = {
  159. "row": "PreferenceSettingsToggles_row__ZKxQT"
  160. };
  161. /***/ }),
  162. /***/ 64576:
  163. /***/ ((module) => {
  164. // Exports
  165. module.exports = {
  166. "container": "Tabs_container__s7UYm",
  167. "header": "Tabs_header__ENuIE",
  168. "titleContainer": "Tabs_titleContainer__VlDsW",
  169. "loadingContainer": "Tabs_loadingContainer__Ewtc2"
  170. };
  171. /***/ }),
  172. /***/ 81670:
  173. /***/ ((module) => {
  174. // Exports
  175. module.exports = {
  176. "header": "Collapsible_header__CmhJq",
  177. "headerLeft": "Collapsible_headerLeft__Xh00n",
  178. "prefixContainer": "Collapsible_prefixContainer__AVHUT",
  179. "prefixRotated": "Collapsible_prefixRotated__bjKLn",
  180. "suffixContainer": "Collapsible_suffixContainer__uZ1IW"
  181. };
  182. /***/ }),
  183. /***/ 47989:
  184. /***/ ((module) => {
  185. // Exports
  186. module.exports = {
  187. "container": "Pill_container__FoIEg",
  188. "small": "Pill_small__zCILo"
  189. };
  190. /***/ }),
  191. /***/ 38429:
  192. /***/ ((module) => {
  193. // Exports
  194. module.exports = {
  195. "root": "Toggle_root__H_bcP",
  196. "thumb": "Toggle_thumb__6mKWE",
  197. "label": "Toggle_label__FQD4J",
  198. "container": "Toggle_container__Hmm6V"
  199. };
  200. /***/ }),
  201. /***/ 23848:
  202. /***/ ((module) => {
  203. // Exports
  204. module.exports = {
  205. "pageContainer": "index_pageContainer__Pxtn3",
  206. "loadingContainer": "index_loadingContainer__WEZFc",
  207. "flow": "index_flow__rCTR5",
  208. "flowItem": "index_flowItem__GnXWz",
  209. "additionalVerticalGap": "index_additionalVerticalGap__nzYz6",
  210. "fullWidth": "index_fullWidth__1n4ux"
  211. };
  212. /***/ }),
  213. /***/ 42534:
  214. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  215. "use strict";
  216. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  217. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  218. /* harmony export */ "N": () => (/* binding */ NotificationsProvider)
  219. /* harmony export */ });
  220. /* unused harmony export useNotifications */
  221. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  222. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  223. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
  224. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  225. /* harmony import */ var _components_Notifications_hooks_useFetchNotifications__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(89414);
  226. /* harmony import */ var _components_Notifications_hooks_useHeadlessService__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(68158);
  227. /* harmony import */ var _components_Notifications_hooks_useInitializeUnseenCount__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(40098);
  228. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_components_Notifications_hooks_useFetchNotifications__WEBPACK_IMPORTED_MODULE_2__, _components_Notifications_hooks_useHeadlessService__WEBPACK_IMPORTED_MODULE_3__, _components_Notifications_hooks_useInitializeUnseenCount__WEBPACK_IMPORTED_MODULE_4__]);
  229. ([_components_Notifications_hooks_useFetchNotifications__WEBPACK_IMPORTED_MODULE_2__, _components_Notifications_hooks_useHeadlessService__WEBPACK_IMPORTED_MODULE_3__, _components_Notifications_hooks_useInitializeUnseenCount__WEBPACK_IMPORTED_MODULE_4__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  230. /* eslint-disable max-lines */
  231. const NotificationContext = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createContext)({});
  232. const NotificationsProviderInner = ({ children })=>{
  233. // fetch initial unseen count and listen to its changes
  234. (0,_components_Notifications_hooks_useInitializeUnseenCount__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z)();
  235. const fetchNotifications = (0,_components_Notifications_hooks_useFetchNotifications__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z)();
  236. const value = (0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)(()=>({
  237. fetchNotifications
  238. }), [
  239. fetchNotifications
  240. ]);
  241. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(NotificationContext.Provider, {
  242. value: value,
  243. children: children
  244. });
  245. };
  246. // eslint-disable-next-line react/no-multi-comp
  247. const NotificationsProvider = ({ children })=>{
  248. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components_Notifications_hooks_useHeadlessService__WEBPACK_IMPORTED_MODULE_3__/* .HeadlessServiceProvider */ .j, {
  249. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(NotificationsProviderInner, {
  250. children: children
  251. })
  252. });
  253. };
  254. const useNotifications = ()=>useContext(NotificationContext);
  255. __webpack_async_result__();
  256. } catch(e) { __webpack_async_result__(e); } });
  257. /***/ }),
  258. /***/ 66122:
  259. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  260. "use strict";
  261. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  262. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  263. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  264. /* harmony export */ });
  265. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  266. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  267. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
  268. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  269. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(60866);
  270. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2__);
  271. /* harmony import */ var _CollapsibleWorkflowSettings_module_scss__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(62396);
  272. /* harmony import */ var _CollapsibleWorkflowSettings_module_scss__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_CollapsibleWorkflowSettings_module_scss__WEBPACK_IMPORTED_MODULE_8__);
  273. /* harmony import */ var _components_Notifications_hooks_useUpdateUserPreferences__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(92671);
  274. /* harmony import */ var _components_Notifications_NotificationSettings_Tabs_PreferenceSettingsToggles__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(93853);
  275. /* harmony import */ var _dls_Collapsible_Collapsible__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(92775);
  276. /* harmony import */ var _icons_chevron_down_svg__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(24868);
  277. /* harmony import */ var _utils_eventLogger__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(55943);
  278. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_components_Notifications_hooks_useUpdateUserPreferences__WEBPACK_IMPORTED_MODULE_3__, _components_Notifications_NotificationSettings_Tabs_PreferenceSettingsToggles__WEBPACK_IMPORTED_MODULE_4__, _dls_Collapsible_Collapsible__WEBPACK_IMPORTED_MODULE_5__, _utils_eventLogger__WEBPACK_IMPORTED_MODULE_7__]);
  279. ([_components_Notifications_hooks_useUpdateUserPreferences__WEBPACK_IMPORTED_MODULE_3__, _components_Notifications_NotificationSettings_Tabs_PreferenceSettingsToggles__WEBPACK_IMPORTED_MODULE_4__, _dls_Collapsible_Collapsible__WEBPACK_IMPORTED_MODULE_5__, _utils_eventLogger__WEBPACK_IMPORTED_MODULE_7__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  280. /* eslint-disable no-underscore-dangle */
  281. const CollapsibleWorkflowSettings = ({ preference })=>{
  282. const { t } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2___default()("notification-settings");
  283. const { mutate: UpdateUserPreferences , isMutating } = (0,_components_Notifications_hooks_useUpdateUserPreferences__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z)(// eslint-disable-next-line no-underscore-dangle
  284. preference.template._id);
  285. // we need a local state to handle UI updates when the user changes one of the settings since the toggles are controlled
  286. const { 0: preferenceState , 1: setPreferenceState } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(preference);
  287. const { 0: mutatingChannel , 1: setMutatingChannel } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)();
  288. const onOpenChange = (isOpen)=>{
  289. if (isOpen) {
  290. (0,_utils_eventLogger__WEBPACK_IMPORTED_MODULE_7__/* .logEvent */ .Kz)("notif_workflow_settings_drawer_opened");
  291. } else {
  292. (0,_utils_eventLogger__WEBPACK_IMPORTED_MODULE_7__/* .logEvent */ .Kz)("notif_workflow_settings_drawer_closed");
  293. }
  294. };
  295. const onToggle = (isChecked, channel)=>{
  296. setMutatingChannel(channel);
  297. (0,_utils_eventLogger__WEBPACK_IMPORTED_MODULE_7__/* .logValueChange */ .Q8)("notif_workflow_settings", !isChecked, isChecked, {
  298. channel
  299. });
  300. UpdateUserPreferences(isChecked, channel, ()=>{
  301. setPreferenceState((prev)=>{
  302. const newState = {
  303. ...prev
  304. };
  305. newState.preference.channels[channel] = isChecked;
  306. return newState;
  307. });
  308. });
  309. };
  310. const workflowChannels = (0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)(()=>// eslint-disable-next-line unicorn/no-array-reduce
  311. Object.keys(preferenceState.preference.channels).reduce((acc, currentValue)=>{
  312. if (!acc) return t(`channels.${currentValue}`);
  313. return `${acc}, ${t(`channels.${currentValue}`)}`;
  314. }, ""), [
  315. preferenceState.preference.channels,
  316. t
  317. ]);
  318. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  319. className: (_CollapsibleWorkflowSettings_module_scss__WEBPACK_IMPORTED_MODULE_8___default().container),
  320. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_dls_Collapsible_Collapsible__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
  321. title: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  322. children: [
  323. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
  324. className: (_CollapsibleWorkflowSettings_module_scss__WEBPACK_IMPORTED_MODULE_8___default().workflowName),
  325. children: preferenceState.template.name
  326. }),
  327. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
  328. className: (_CollapsibleWorkflowSettings_module_scss__WEBPACK_IMPORTED_MODULE_8___default().workflowChannels),
  329. children: workflowChannels
  330. })
  331. ]
  332. }),
  333. prefix: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_chevron_down_svg__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {}),
  334. shouldRotatePrefixOnToggle: true,
  335. onOpenChange: onOpenChange,
  336. direction: _dls_Collapsible_Collapsible__WEBPACK_IMPORTED_MODULE_5__/* .CollapsibleDirection.Right */ .a.Right,
  337. children: ({ isOpen: isOpenRenderProp })=>{
  338. if (!isOpenRenderProp) return null;
  339. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components_Notifications_NotificationSettings_Tabs_PreferenceSettingsToggles__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
  340. onToggle: onToggle,
  341. isMutating: isMutating,
  342. preference: preferenceState,
  343. mutatingChannel: mutatingChannel,
  344. hasGlobalPreference: false
  345. });
  346. }
  347. })
  348. });
  349. };
  350. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (CollapsibleWorkflowSettings);
  351. __webpack_async_result__();
  352. } catch(e) { __webpack_async_result__(e); } });
  353. /***/ }),
  354. /***/ 37688:
  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 react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
  364. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  365. /* harmony import */ var lodash_groupBy__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(98492);
  366. /* harmony import */ var lodash_groupBy__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_groupBy__WEBPACK_IMPORTED_MODULE_2__);
  367. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(60866);
  368. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_3__);
  369. /* harmony import */ var _Tabs_module_scss__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(64576);
  370. /* harmony import */ var _Tabs_module_scss__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(_Tabs_module_scss__WEBPACK_IMPORTED_MODULE_11__);
  371. /* harmony import */ var _CollapsibleWorkflowSettings__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(66122);
  372. /* harmony import */ var _components_Notifications_hooks_useFetchUserPreferences__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(69505);
  373. /* harmony import */ var _components_Notifications_hooks_useHeadlessService__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(68158);
  374. /* harmony import */ var _components_Notifications_NotificationSettings_Tabs_FieldsetContainer__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(12146);
  375. /* harmony import */ var _dls_Pill__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(78945);
  376. /* harmony import */ var _dls_Spinner_Spinner__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(7190);
  377. /* harmony import */ var _pages_error__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(36049);
  378. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_CollapsibleWorkflowSettings__WEBPACK_IMPORTED_MODULE_4__, _components_Notifications_hooks_useFetchUserPreferences__WEBPACK_IMPORTED_MODULE_5__, _components_Notifications_hooks_useHeadlessService__WEBPACK_IMPORTED_MODULE_6__, _pages_error__WEBPACK_IMPORTED_MODULE_10__]);
  379. ([_CollapsibleWorkflowSettings__WEBPACK_IMPORTED_MODULE_4__, _components_Notifications_hooks_useFetchUserPreferences__WEBPACK_IMPORTED_MODULE_5__, _components_Notifications_hooks_useHeadlessService__WEBPACK_IMPORTED_MODULE_6__, _pages_error__WEBPACK_IMPORTED_MODULE_10__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  380. /* eslint-disable no-underscore-dangle */
  381. const MARKETING_TAG = "marketing";
  382. const CategoriesSettingsTab = ()=>{
  383. const { t } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_3___default()("notification-settings");
  384. const { mutate , isMutating: isFetchingUserPreferences , error , userPreferences , status , } = (0,_components_Notifications_hooks_useFetchUserPreferences__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z)();
  385. // we need a local state to handle UI updates when the user changes one of the settings since the toggles are controlled
  386. const { 0: preferences , 1: setPreferences } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(userPreferences);
  387. /**
  388. * Group the preferences by tags. We filter out:
  389. *
  390. * 1. critical workflows since they are cannot be skipped.
  391. * 2. preferences that don't have tags since they cannot be categorized.
  392. * 3. non-marketing emails
  393. */ const groupByTags = (0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)(()=>lodash_groupBy__WEBPACK_IMPORTED_MODULE_2___default()(preferences?.filter((preference)=>preference.template.critical === false && !!preference.template.tags.length && !preference.template.tags.includes(MARKETING_TAG)), (preference)=>preference.template.tags), [
  394. preferences
  395. ]);
  396. (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{
  397. setPreferences(userPreferences);
  398. }, [
  399. userPreferences
  400. ]);
  401. (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{
  402. mutate(false);
  403. }, [
  404. mutate
  405. ]);
  406. const isLoading = status === _components_Notifications_hooks_useHeadlessService__WEBPACK_IMPORTED_MODULE_6__/* .HeadlessServiceStatus.INITIALIZING */ .sp.INITIALIZING || isFetchingUserPreferences;
  407. if (isLoading) {
  408. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  409. className: (_Tabs_module_scss__WEBPACK_IMPORTED_MODULE_11___default().loadingContainer),
  410. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_dls_Spinner_Spinner__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z, {
  411. size: _dls_Spinner_Spinner__WEBPACK_IMPORTED_MODULE_9__/* .SpinnerSize.Large */ .E.Large
  412. })
  413. });
  414. }
  415. const hasError = status === _components_Notifications_hooks_useHeadlessService__WEBPACK_IMPORTED_MODULE_6__/* .HeadlessServiceStatus.ERROR */ .sp.ERROR || error;
  416. if (hasError) {
  417. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  418. className: (_Tabs_module_scss__WEBPACK_IMPORTED_MODULE_11___default().loadingContainer),
  419. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_pages_error__WEBPACK_IMPORTED_MODULE_10__["default"], {
  420. statusCode: 500
  421. })
  422. });
  423. }
  424. // if it's loading or there's an error, we don't want to render anything
  425. if (!preferences || preferences.length === 0) {
  426. return null;
  427. }
  428. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
  429. children: Object.keys(groupByTags).map((tag)=>{
  430. const tagPreferences = groupByTags[tag];
  431. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  432. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components_Notifications_NotificationSettings_Tabs_FieldsetContainer__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
  433. title: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_dls_Pill__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, {
  434. size: _dls_Pill__WEBPACK_IMPORTED_MODULE_8__/* .PillSize.SMALL */ .n.SMALL,
  435. children: t(`tags.${tag}`)
  436. }),
  437. children: tagPreferences.map((preference)=>{
  438. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_CollapsibleWorkflowSettings__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
  439. preference: preference
  440. }, preference.template._id);
  441. })
  442. })
  443. }, tag);
  444. })
  445. });
  446. };
  447. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (CategoriesSettingsTab);
  448. __webpack_async_result__();
  449. } catch(e) { __webpack_async_result__(e); } });
  450. /***/ }),
  451. /***/ 12146:
  452. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  453. "use strict";
  454. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  455. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  456. /* harmony export */ });
  457. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  458. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  459. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
  460. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  461. /* harmony import */ var _FieldsetContainer_module_scss__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(50021);
  462. /* harmony import */ var _FieldsetContainer_module_scss__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_FieldsetContainer_module_scss__WEBPACK_IMPORTED_MODULE_2__);
  463. const FieldsetContainer = ({ children , title })=>{
  464. return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("fieldset", {
  465. className: (_FieldsetContainer_module_scss__WEBPACK_IMPORTED_MODULE_2___default().channelsContainer),
  466. children: [
  467. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("legend", {
  468. children: title
  469. }),
  470. children
  471. ]
  472. });
  473. };
  474. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (FieldsetContainer);
  475. /***/ }),
  476. /***/ 93853:
  477. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  478. "use strict";
  479. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  480. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  481. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  482. /* harmony export */ });
  483. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  484. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  485. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
  486. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  487. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(60866);
  488. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2__);
  489. /* harmony import */ var _PreferenceSettingsToggles_module_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(57116);
  490. /* harmony import */ var _PreferenceSettingsToggles_module_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_PreferenceSettingsToggles_module_scss__WEBPACK_IMPORTED_MODULE_6__);
  491. /* harmony import */ var _components_Notifications_NotificationSettings_Tabs_FieldsetContainer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(12146);
  492. /* harmony import */ var _dls_Spinner_Spinner__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(7190);
  493. /* harmony import */ var _dls_Toggle_Toggle__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(90999);
  494. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_dls_Toggle_Toggle__WEBPACK_IMPORTED_MODULE_5__]);
  495. _dls_Toggle_Toggle__WEBPACK_IMPORTED_MODULE_5__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
  496. const PreferenceSettingsToggles = ({ isMutating , preference , onToggle , hasGlobalPreference =true , mutatingChannel , })=>{
  497. const { t } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2___default()("notification-settings");
  498. return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
  499. children: [
  500. hasGlobalPreference && /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  501. className: (_PreferenceSettingsToggles_module_scss__WEBPACK_IMPORTED_MODULE_6___default().row),
  502. children: [
  503. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_dls_Toggle_Toggle__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
  504. id: "all-notifications",
  505. label: t("all-notifications"),
  506. onChange: onToggle,
  507. checked: preference.preference.enabled,
  508. disabled: isMutating
  509. }),
  510. isMutating && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_dls_Spinner_Spinner__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {})
  511. ]
  512. }),
  513. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components_Notifications_NotificationSettings_Tabs_FieldsetContainer__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {
  514. title: t("channels-notifications"),
  515. children: Object.keys(preference.preference.channels).map((channelName)=>{
  516. return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  517. className: (_PreferenceSettingsToggles_module_scss__WEBPACK_IMPORTED_MODULE_6___default().row),
  518. children: [
  519. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_dls_Toggle_Toggle__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
  520. id: channelName,
  521. disabled: isMutating,
  522. label: t(`channels.${channelName}`),
  523. onChange: (checked)=>onToggle(checked, channelName),
  524. checked: preference.preference.channels[channelName]
  525. }),
  526. isMutating && channelName === mutatingChannel && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_dls_Spinner_Spinner__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {})
  527. ]
  528. }, channelName);
  529. })
  530. })
  531. ]
  532. });
  533. };
  534. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (PreferenceSettingsToggles);
  535. __webpack_async_result__();
  536. } catch(e) { __webpack_async_result__(e); } });
  537. /***/ }),
  538. /***/ 90569:
  539. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  540. "use strict";
  541. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  542. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  543. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  544. /* harmony export */ });
  545. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  546. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  547. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
  548. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  549. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(60866);
  550. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2__);
  551. /* harmony import */ var _Tabs_module_scss__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(64576);
  552. /* harmony import */ var _Tabs_module_scss__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_Tabs_module_scss__WEBPACK_IMPORTED_MODULE_4__);
  553. /* harmony import */ var _components_Notifications_NotificationSettings_Tabs_CategoriesSettingsTab__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(37688);
  554. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_components_Notifications_NotificationSettings_Tabs_CategoriesSettingsTab__WEBPACK_IMPORTED_MODULE_3__]);
  555. _components_Notifications_NotificationSettings_Tabs_CategoriesSettingsTab__WEBPACK_IMPORTED_MODULE_3__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
  556. const NotificationSettingsTabs = ()=>{
  557. const { t } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_2___default()("notification-settings");
  558. return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  559. className: (_Tabs_module_scss__WEBPACK_IMPORTED_MODULE_4___default().container),
  560. children: [
  561. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  562. className: (_Tabs_module_scss__WEBPACK_IMPORTED_MODULE_4___default().header),
  563. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  564. className: (_Tabs_module_scss__WEBPACK_IMPORTED_MODULE_4___default().titleContainer),
  565. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("h1", {
  566. children: t("common:notification-settings")
  567. })
  568. })
  569. }),
  570. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components_Notifications_NotificationSettings_Tabs_CategoriesSettingsTab__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {})
  571. ]
  572. });
  573. };
  574. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (NotificationSettingsTabs);
  575. __webpack_async_result__();
  576. } catch(e) { __webpack_async_result__(e); } });
  577. /***/ }),
  578. /***/ 89414:
  579. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  580. "use strict";
  581. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  582. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  583. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  584. /* harmony export */ });
  585. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
  586. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
  587. /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6022);
  588. /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);
  589. /* harmony import */ var _useHeadlessService__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(68158);
  590. /* harmony import */ var _useMarkNotificationAsSeen__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(32977);
  591. /* harmony import */ var _lib_sentry__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(15675);
  592. /* harmony import */ var _redux_slices_notifications__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(39953);
  593. /* harmony import */ var _utils_array__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(5639);
  594. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_useHeadlessService__WEBPACK_IMPORTED_MODULE_2__, _useMarkNotificationAsSeen__WEBPACK_IMPORTED_MODULE_3__, _lib_sentry__WEBPACK_IMPORTED_MODULE_4__]);
  595. ([_useHeadlessService__WEBPACK_IMPORTED_MODULE_2__, _useMarkNotificationAsSeen__WEBPACK_IMPORTED_MODULE_3__, _lib_sentry__WEBPACK_IMPORTED_MODULE_4__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  596. const NOTIFICATIONS_PAGE_SIZE = 10;
  597. const useFetchNotifications = ()=>{
  598. const { headlessService , isReady } = (0,_useHeadlessService__WEBPACK_IMPORTED_MODULE_2__/* .useHeadlessService */ .Qh)();
  599. const { 0: error , 1: setError } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null);
  600. const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_1__.useDispatch)();
  601. const { mutate: markNotificationAsSeen } = (0,_useMarkNotificationAsSeen__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z)();
  602. const loadedPages = (0,react_redux__WEBPACK_IMPORTED_MODULE_1__.useSelector)(_redux_slices_notifications__WEBPACK_IMPORTED_MODULE_5__/* .selectLoadedNotificationsPages */ .dq, _utils_array__WEBPACK_IMPORTED_MODULE_6__/* .areArraysEqual */ .Hj);
  603. const isFetchingNotifications = (0,react_redux__WEBPACK_IMPORTED_MODULE_1__.useSelector)(_redux_slices_notifications__WEBPACK_IMPORTED_MODULE_5__/* .selectNotificationsIsFetching */ .mv);
  604. const fetchNotifications = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(// eslint-disable-next-line react-func/max-lines-per-function
  605. ({ shouldMarkAsSeenOnSuccess =true , page , shouldResetOldData =false })=>{
  606. if (isReady) {
  607. if (isFetchingNotifications || loadedPages.includes(page)) {
  608. return;
  609. }
  610. headlessService.fetchNotifications({
  611. page,
  612. query: {
  613. limit: NOTIFICATIONS_PAGE_SIZE
  614. },
  615. listener: ({ isLoading: loading , isFetching: fetching , data })=>{
  616. if (data) {
  617. dispatch({
  618. type: _redux_slices_notifications__WEBPACK_IMPORTED_MODULE_5__/* .setNotificationsPageAndFinishLoading.type */ .gC.type,
  619. payload: {
  620. page: data.page,
  621. data,
  622. shouldResetOldData
  623. }
  624. });
  625. } else {
  626. dispatch({
  627. type: _redux_slices_notifications__WEBPACK_IMPORTED_MODULE_5__/* .setNotificationsLoading.type */ .Bh.type,
  628. payload: {
  629. isLoading: loading,
  630. isFetching: fetching,
  631. shouldResetOldData
  632. }
  633. });
  634. }
  635. },
  636. onSuccess: (response)=>{
  637. setError(null);
  638. if (shouldMarkAsSeenOnSuccess) {
  639. const messageIds = response.data.map((message)=>{
  640. // eslint-disable-next-line no-underscore-dangle
  641. return message._id;
  642. });
  643. markNotificationAsSeen(messageIds);
  644. }
  645. },
  646. onError: (err)=>{
  647. setError(err);
  648. (0,_lib_sentry__WEBPACK_IMPORTED_MODULE_4__/* .logErrorToSentry */ .R)(err, {
  649. transactionName: "useFetchNotifications",
  650. metadata: {
  651. page,
  652. shouldMarkAsSeenOnSuccess,
  653. shouldResetOldData
  654. }
  655. });
  656. }
  657. });
  658. }
  659. }, [
  660. dispatch,
  661. headlessService,
  662. isReady,
  663. markNotificationAsSeen,
  664. loadedPages,
  665. isFetchingNotifications,
  666. ]);
  667. return {
  668. fetch: fetchNotifications,
  669. error
  670. };
  671. };
  672. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (useFetchNotifications);
  673. __webpack_async_result__();
  674. } catch(e) { __webpack_async_result__(e); } });
  675. /***/ }),
  676. /***/ 69505:
  677. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  678. "use strict";
  679. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  680. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  681. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  682. /* harmony export */ });
  683. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
  684. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
  685. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(60866);
  686. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1__);
  687. /* harmony import */ var _components_Notifications_hooks_useHeadlessService__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(68158);
  688. /* harmony import */ var _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(79717);
  689. /* harmony import */ var _lib_sentry__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(15675);
  690. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_components_Notifications_hooks_useHeadlessService__WEBPACK_IMPORTED_MODULE_2__, _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__, _lib_sentry__WEBPACK_IMPORTED_MODULE_4__]);
  691. ([_components_Notifications_hooks_useHeadlessService__WEBPACK_IMPORTED_MODULE_2__, _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__, _lib_sentry__WEBPACK_IMPORTED_MODULE_4__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  692. const useFetchUserPreferences = ()=>{
  693. const { headlessService , isReady , status } = (0,_components_Notifications_hooks_useHeadlessService__WEBPACK_IMPORTED_MODULE_2__/* .useHeadlessService */ .Qh)();
  694. const { 0: isMutating , 1: setIsMutating } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);
  695. const { 0: error , 1: setError } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null);
  696. const { t } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1___default()("common");
  697. const toast = (0,_dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__/* .useToast */ .pm)();
  698. const { 0: userPreferences , 1: setUserPreferences } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null);
  699. const handlers = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>({
  700. listener: ({ isLoading })=>{
  701. setIsMutating(isLoading);
  702. },
  703. onSuccess: (response)=>{
  704. setError(null);
  705. setUserPreferences(response);
  706. },
  707. onError: (err)=>{
  708. setError(err);
  709. toast(t("error.general"), {
  710. status: _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__/* .ToastStatus.Error */ .YZ.Error
  711. });
  712. (0,_lib_sentry__WEBPACK_IMPORTED_MODULE_4__/* .logErrorToSentry */ .R)(err, {
  713. transactionName: "useFetchUserPreferences"
  714. });
  715. }
  716. }), [
  717. t,
  718. toast
  719. ]);
  720. const fetchGetUserPreferences = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((fetchGlobalSettings = false)=>{
  721. if (isReady) {
  722. if (fetchGlobalSettings) {
  723. headlessService.fetchUserGlobalPreferences(handlers);
  724. } else {
  725. headlessService.fetchUserPreferences(handlers);
  726. }
  727. }
  728. }, [
  729. handlers,
  730. headlessService,
  731. isReady
  732. ]);
  733. return {
  734. mutate: fetchGetUserPreferences,
  735. isMutating,
  736. error,
  737. userPreferences,
  738. status
  739. };
  740. };
  741. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (useFetchUserPreferences);
  742. __webpack_async_result__();
  743. } catch(e) { __webpack_async_result__(e); } });
  744. /***/ }),
  745. /***/ 68158:
  746. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  747. "use strict";
  748. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  749. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  750. /* harmony export */ "Qh": () => (/* binding */ useHeadlessService),
  751. /* harmony export */ "j": () => (/* binding */ HeadlessServiceProvider),
  752. /* harmony export */ "sp": () => (/* binding */ HeadlessServiceStatus)
  753. /* harmony export */ });
  754. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  755. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  756. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
  757. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  758. /* harmony import */ var _novu_headless__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(69825);
  759. /* harmony import */ var _novu_headless__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_novu_headless__WEBPACK_IMPORTED_MODULE_2__);
  760. /* harmony import */ var _lib_sentry__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(15675);
  761. /* harmony import */ var _utils_auth_login__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(22197);
  762. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_lib_sentry__WEBPACK_IMPORTED_MODULE_3__, _utils_auth_login__WEBPACK_IMPORTED_MODULE_4__]);
  763. ([_lib_sentry__WEBPACK_IMPORTED_MODULE_3__, _utils_auth_login__WEBPACK_IMPORTED_MODULE_4__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  764. const HeadlessServiceContext = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createContext)(null);
  765. var HeadlessServiceStatus;
  766. (function(HeadlessServiceStatus) {
  767. HeadlessServiceStatus["INITIALIZING"] = "initializing";
  768. HeadlessServiceStatus["READY"] = "ready";
  769. HeadlessServiceStatus["ERROR"] = "error";
  770. })(HeadlessServiceStatus || (HeadlessServiceStatus = {}));
  771. const HeadlessServiceProvider = ({ children })=>{
  772. const { 0: status , 1: setStatus } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(HeadlessServiceStatus.INITIALIZING);
  773. const { 0: error , 1: setError } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);
  774. const headlessService = (0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)(()=>{
  775. return new _novu_headless__WEBPACK_IMPORTED_MODULE_2__.HeadlessService({
  776. backendUrl: process.env.NEXT_PUBLIC_NOVU_BACKEND_URL,
  777. socketUrl: process.env.NEXT_PUBLIC_NOVU_SOCKET_URL,
  778. subscriberId: (0,_utils_auth_login__WEBPACK_IMPORTED_MODULE_4__/* .getUserIdCookie */ .AP)(),
  779. subscriberHash: (0,_utils_auth_login__WEBPACK_IMPORTED_MODULE_4__/* .getNotificationSubscriberHashCookie */ .N6)(),
  780. applicationIdentifier: process.env.NEXT_PUBLIC_NOVU_APP_ID
  781. });
  782. }, []);
  783. (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{
  784. headlessService.initializeSession({
  785. // eslint-disable-next-line @typescript-eslint/no-empty-function
  786. listener: ()=>{},
  787. onSuccess: ()=>{
  788. setStatus(HeadlessServiceStatus.READY);
  789. },
  790. onError: (err)=>{
  791. setError(err);
  792. setStatus(HeadlessServiceStatus.ERROR);
  793. (0,_lib_sentry__WEBPACK_IMPORTED_MODULE_3__/* .logErrorToSentry */ .R)(err, {
  794. transactionName: "useHeadlessService"
  795. });
  796. }
  797. });
  798. // eslint-disable-next-line react-hooks/exhaustive-deps
  799. }, [
  800. headlessService
  801. ]);
  802. const value = (0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)(()=>({
  803. headlessService,
  804. status,
  805. isReady: status === HeadlessServiceStatus.READY,
  806. error
  807. }), [
  808. headlessService,
  809. status,
  810. error
  811. ]);
  812. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(HeadlessServiceContext.Provider, {
  813. value: value,
  814. children: children
  815. });
  816. };
  817. const useHeadlessService = ()=>(0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(HeadlessServiceContext);
  818. __webpack_async_result__();
  819. } catch(e) { __webpack_async_result__(e); } });
  820. /***/ }),
  821. /***/ 40098:
  822. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  823. "use strict";
  824. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  825. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  826. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  827. /* harmony export */ });
  828. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
  829. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
  830. /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6022);
  831. /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);
  832. /* harmony import */ var _useHeadlessService__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(68158);
  833. /* harmony import */ var _lib_sentry__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(15675);
  834. /* harmony import */ var _redux_slices_notifications__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(39953);
  835. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_useHeadlessService__WEBPACK_IMPORTED_MODULE_2__, _lib_sentry__WEBPACK_IMPORTED_MODULE_3__]);
  836. ([_useHeadlessService__WEBPACK_IMPORTED_MODULE_2__, _lib_sentry__WEBPACK_IMPORTED_MODULE_3__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  837. const useInitializeUnseenCount = ()=>{
  838. const { headlessService , isReady } = (0,_useHeadlessService__WEBPACK_IMPORTED_MODULE_2__/* .useHeadlessService */ .Qh)();
  839. const { 0: error , 1: setError } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null);
  840. const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_1__.useDispatch)();
  841. (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{
  842. if (isReady) {
  843. headlessService.fetchUnseenCount({
  844. // eslint-disable-next-line @typescript-eslint/no-empty-function
  845. listener: ()=>{},
  846. onSuccess: ({ count })=>{
  847. dispatch({
  848. type: _redux_slices_notifications__WEBPACK_IMPORTED_MODULE_4__/* .setUnseenCount.type */ .Qw.type,
  849. payload: count
  850. });
  851. setError(null);
  852. },
  853. onError: (err)=>{
  854. setError(err);
  855. (0,_lib_sentry__WEBPACK_IMPORTED_MODULE_3__/* .logErrorToSentry */ .R)(err, {
  856. transactionName: "useInitializeUnseenCount"
  857. });
  858. }
  859. });
  860. headlessService.listenUnseenCountChange({
  861. listener: (count)=>{
  862. dispatch({
  863. type: _redux_slices_notifications__WEBPACK_IMPORTED_MODULE_4__/* .setUnseenCount.type */ .Qw.type,
  864. payload: count
  865. });
  866. }
  867. });
  868. }
  869. }, [
  870. headlessService,
  871. isReady,
  872. dispatch
  873. ]);
  874. return {
  875. error
  876. };
  877. };
  878. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (useInitializeUnseenCount);
  879. __webpack_async_result__();
  880. } catch(e) { __webpack_async_result__(e); } });
  881. /***/ }),
  882. /***/ 32977:
  883. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  884. "use strict";
  885. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  886. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  887. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  888. /* harmony export */ });
  889. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
  890. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
  891. /* harmony import */ var _useHeadlessService__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(68158);
  892. /* harmony import */ var _lib_sentry__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(15675);
  893. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_useHeadlessService__WEBPACK_IMPORTED_MODULE_1__, _lib_sentry__WEBPACK_IMPORTED_MODULE_2__]);
  894. ([_useHeadlessService__WEBPACK_IMPORTED_MODULE_1__, _lib_sentry__WEBPACK_IMPORTED_MODULE_2__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  895. const useMarkNotificationAsSeen = ()=>{
  896. const { headlessService , isReady } = (0,_useHeadlessService__WEBPACK_IMPORTED_MODULE_1__/* .useHeadlessService */ .Qh)();
  897. const { 0: isMutating , 1: setIsMutating } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);
  898. const { 0: error , 1: setError } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null);
  899. const markNotificationsAsSeen = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((messageIds)=>{
  900. if (isReady) {
  901. headlessService.markNotificationsAsSeen({
  902. messageId: messageIds,
  903. listener: ({ isLoading })=>{
  904. setIsMutating(isLoading);
  905. },
  906. onSuccess: ()=>{
  907. setError(null);
  908. },
  909. onError: (err)=>{
  910. setError(err);
  911. (0,_lib_sentry__WEBPACK_IMPORTED_MODULE_2__/* .logErrorToSentry */ .R)(err, {
  912. transactionName: "useMarkNotificationAsSeen",
  913. metadata: {
  914. messageIds
  915. }
  916. });
  917. }
  918. });
  919. }
  920. }, [
  921. headlessService,
  922. isReady
  923. ]);
  924. return {
  925. mutate: markNotificationsAsSeen,
  926. isLoading: isMutating,
  927. error
  928. };
  929. };
  930. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (useMarkNotificationAsSeen);
  931. __webpack_async_result__();
  932. } catch(e) { __webpack_async_result__(e); } });
  933. /***/ }),
  934. /***/ 92671:
  935. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  936. "use strict";
  937. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  938. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  939. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  940. /* harmony export */ });
  941. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
  942. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
  943. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(60866);
  944. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1__);
  945. /* harmony import */ var _useHeadlessService__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(68158);
  946. /* harmony import */ var _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(79717);
  947. /* harmony import */ var _lib_sentry__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(15675);
  948. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_useHeadlessService__WEBPACK_IMPORTED_MODULE_2__, _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__, _lib_sentry__WEBPACK_IMPORTED_MODULE_4__]);
  949. ([_useHeadlessService__WEBPACK_IMPORTED_MODULE_2__, _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__, _lib_sentry__WEBPACK_IMPORTED_MODULE_4__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  950. const useUpdateUserPreferences = (templateId)=>{
  951. const { headlessService } = (0,_useHeadlessService__WEBPACK_IMPORTED_MODULE_2__/* .useHeadlessService */ .Qh)();
  952. const { 0: isMutating , 1: setIsMutating } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);
  953. const { 0: error , 1: setError } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null);
  954. const { t } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_1___default()("common");
  955. const toast = (0,_dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__/* .useToast */ .pm)();
  956. const updateUserPreferences = (enabled, channel, onSuccess)=>{
  957. headlessService.updateUserPreferences({
  958. templateId,
  959. checked: enabled,
  960. channelType: channel,
  961. listener: ({ isLoading })=>{
  962. setIsMutating(isLoading);
  963. },
  964. onSuccess: ()=>{
  965. setError(null);
  966. toast(t("notification-settings:notif-update-success"), {
  967. status: _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__/* .ToastStatus.Success */ .YZ.Success
  968. });
  969. if (onSuccess) {
  970. onSuccess();
  971. }
  972. },
  973. onError: (err)=>{
  974. setError(err);
  975. toast(t("error.general"), {
  976. status: _dls_Toast_Toast__WEBPACK_IMPORTED_MODULE_3__/* .ToastStatus.Error */ .YZ.Error
  977. });
  978. (0,_lib_sentry__WEBPACK_IMPORTED_MODULE_4__/* .logErrorToSentry */ .R)(err, {
  979. transactionName: "updateUserPreferences",
  980. metadata: {
  981. templateId,
  982. checked: enabled,
  983. channelType: channel
  984. }
  985. });
  986. }
  987. });
  988. };
  989. return {
  990. mutate: updateUserPreferences,
  991. isMutating,
  992. error
  993. };
  994. };
  995. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (useUpdateUserPreferences);
  996. __webpack_async_result__();
  997. } catch(e) { __webpack_async_result__(e); } });
  998. /***/ }),
  999. /***/ 92775:
  1000. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  1001. "use strict";
  1002. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  1003. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1004. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__),
  1005. /* harmony export */ "a": () => (/* binding */ CollapsibleDirection)
  1006. /* harmony export */ });
  1007. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  1008. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  1009. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
  1010. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  1011. /* harmony import */ var _radix_ui_react_collapsible__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(74973);
  1012. /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(59003);
  1013. /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_3__);
  1014. /* harmony import */ var _Collapsible_module_scss__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(81670);
  1015. /* harmony import */ var _Collapsible_module_scss__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_Collapsible_module_scss__WEBPACK_IMPORTED_MODULE_4__);
  1016. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_radix_ui_react_collapsible__WEBPACK_IMPORTED_MODULE_2__]);
  1017. _radix_ui_react_collapsible__WEBPACK_IMPORTED_MODULE_2__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
  1018. /* eslint-disable jsx-a11y/no-static-element-interactions */ /* eslint-disable jsx-a11y/click-events-have-key-events */
  1019. var CollapsibleDirection;
  1020. (function(CollapsibleDirection) {
  1021. CollapsibleDirection["Left"] = "left";
  1022. CollapsibleDirection["Right"] = "right";
  1023. })(CollapsibleDirection || (CollapsibleDirection = {}));
  1024. const Collapsible = ({ isDefaultOpen =false , prefix , title , suffix , children , shouldRotatePrefixOnToggle , shouldOpen , onOpenChange , direction =CollapsibleDirection.Left })=>{
  1025. const { 0: isOpen , 1: setIsOpen } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(isDefaultOpen);
  1026. (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{
  1027. setIsOpen(shouldOpen);
  1028. }, [
  1029. shouldOpen
  1030. ]);
  1031. const onSuffixClicked = (e)=>{
  1032. e.preventDefault();
  1033. e.stopPropagation();
  1034. };
  1035. const onHeaderClicked = ()=>setIsOpen((preValue)=>!preValue);
  1036. return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_radix_ui_react_collapsible__WEBPACK_IMPORTED_MODULE_2__.Root, {
  1037. onOpenChange: onOpenChange,
  1038. open: isOpen,
  1039. children: [
  1040. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_radix_ui_react_collapsible__WEBPACK_IMPORTED_MODULE_2__.Trigger, {
  1041. asChild: true,
  1042. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  1043. className: (_Collapsible_module_scss__WEBPACK_IMPORTED_MODULE_4___default().header),
  1044. onClick: onHeaderClicked,
  1045. children: direction === CollapsibleDirection.Left ? /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
  1046. children: [
  1047. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  1048. className: (_Collapsible_module_scss__WEBPACK_IMPORTED_MODULE_4___default().headerLeft),
  1049. children: [
  1050. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  1051. className: classnames__WEBPACK_IMPORTED_MODULE_3___default()((_Collapsible_module_scss__WEBPACK_IMPORTED_MODULE_4___default().prefixContainer), {
  1052. [(_Collapsible_module_scss__WEBPACK_IMPORTED_MODULE_4___default().prefixRotated)]: shouldRotatePrefixOnToggle && isOpen
  1053. }),
  1054. children: prefix
  1055. }),
  1056. title
  1057. ]
  1058. }),
  1059. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  1060. className: (_Collapsible_module_scss__WEBPACK_IMPORTED_MODULE_4___default().suffixContainer),
  1061. onClick: onSuffixClicked,
  1062. children: suffix
  1063. })
  1064. ]
  1065. }) : /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
  1066. children: [
  1067. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  1068. className: (_Collapsible_module_scss__WEBPACK_IMPORTED_MODULE_4___default().headerLeft),
  1069. children: title
  1070. }),
  1071. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  1072. className: classnames__WEBPACK_IMPORTED_MODULE_3___default()((_Collapsible_module_scss__WEBPACK_IMPORTED_MODULE_4___default().prefixContainer), {
  1073. [(_Collapsible_module_scss__WEBPACK_IMPORTED_MODULE_4___default().prefixRotated)]: shouldRotatePrefixOnToggle && isOpen
  1074. }),
  1075. children: prefix
  1076. })
  1077. ]
  1078. })
  1079. })
  1080. }),
  1081. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_radix_ui_react_collapsible__WEBPACK_IMPORTED_MODULE_2__.CollapsibleContent, {
  1082. children: isOpen && children({
  1083. isOpen
  1084. })
  1085. })
  1086. ]
  1087. });
  1088. };
  1089. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Collapsible);
  1090. __webpack_async_result__();
  1091. } catch(e) { __webpack_async_result__(e); } });
  1092. /***/ }),
  1093. /***/ 78945:
  1094. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  1095. "use strict";
  1096. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1097. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__),
  1098. /* harmony export */ "n": () => (/* binding */ PillSize)
  1099. /* harmony export */ });
  1100. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  1101. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  1102. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
  1103. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  1104. /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(59003);
  1105. /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_2__);
  1106. /* harmony import */ var _Pill_module_scss__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(47989);
  1107. /* harmony import */ var _Pill_module_scss__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_Pill_module_scss__WEBPACK_IMPORTED_MODULE_3__);
  1108. var PillSize;
  1109. (function(PillSize) {
  1110. PillSize["SMALL"] = "small";
  1111. PillSize["MEDIUM"] = "medium";
  1112. })(PillSize || (PillSize = {}));
  1113. const Pill = ({ children , size =PillSize.MEDIUM })=>{
  1114. return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
  1115. className: classnames__WEBPACK_IMPORTED_MODULE_2___default()((_Pill_module_scss__WEBPACK_IMPORTED_MODULE_3___default().container), {
  1116. [(_Pill_module_scss__WEBPACK_IMPORTED_MODULE_3___default().medium)]: size === PillSize.MEDIUM,
  1117. [(_Pill_module_scss__WEBPACK_IMPORTED_MODULE_3___default().small)]: size === PillSize.SMALL
  1118. }),
  1119. children: children
  1120. });
  1121. };
  1122. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Pill);
  1123. /***/ }),
  1124. /***/ 90999:
  1125. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  1126. "use strict";
  1127. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  1128. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1129. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  1130. /* harmony export */ });
  1131. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
  1132. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
  1133. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
  1134. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  1135. /* harmony import */ var _radix_ui_react_switch__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(3702);
  1136. /* harmony import */ var _Toggle_module_scss__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(38429);
  1137. /* harmony import */ var _Toggle_module_scss__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_Toggle_module_scss__WEBPACK_IMPORTED_MODULE_3__);
  1138. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_radix_ui_react_switch__WEBPACK_IMPORTED_MODULE_2__]);
  1139. _radix_ui_react_switch__WEBPACK_IMPORTED_MODULE_2__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
  1140. const Toggle = ({ disabled =false , required =false , defaultChecked , checked , id , label , name , onChange , })=>{
  1141. return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
  1142. className: (_Toggle_module_scss__WEBPACK_IMPORTED_MODULE_3___default().container),
  1143. children: [
  1144. label && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("label", {
  1145. className: (_Toggle_module_scss__WEBPACK_IMPORTED_MODULE_3___default().label),
  1146. htmlFor: id,
  1147. children: label
  1148. }),
  1149. /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_radix_ui_react_switch__WEBPACK_IMPORTED_MODULE_2__.Root, {
  1150. id: id,
  1151. disabled: disabled,
  1152. name: name,
  1153. required: required,
  1154. className: (_Toggle_module_scss__WEBPACK_IMPORTED_MODULE_3___default().root),
  1155. ...checked !== undefined && {
  1156. checked
  1157. },
  1158. ...defaultChecked !== undefined && {
  1159. defaultChecked
  1160. },
  1161. ...onChange !== undefined && {
  1162. onCheckedChange: onChange
  1163. },
  1164. children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_radix_ui_react_switch__WEBPACK_IMPORTED_MODULE_2__.Thumb, {
  1165. className: (_Toggle_module_scss__WEBPACK_IMPORTED_MODULE_3___default().thumb)
  1166. })
  1167. })
  1168. ]
  1169. });
  1170. };
  1171. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Toggle);
  1172. __webpack_async_result__();
  1173. } catch(e) { __webpack_async_result__(e); } });
  1174. /***/ }),
  1175. /***/ 15675:
  1176. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  1177. "use strict";
  1178. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  1179. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1180. /* harmony export */ "R": () => (/* binding */ logErrorToSentry)
  1181. /* harmony export */ });
  1182. /* unused harmony export logMessageToSentry */
  1183. /* harmony import */ var _sentry_nextjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(58097);
  1184. /* harmony import */ var _sentry_nextjs__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_sentry_nextjs__WEBPACK_IMPORTED_MODULE_0__);
  1185. /* harmony import */ var _utils_auth_login__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(22197);
  1186. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_utils_auth_login__WEBPACK_IMPORTED_MODULE_1__]);
  1187. _utils_auth_login__WEBPACK_IMPORTED_MODULE_1__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
  1188. const SENTRY_ENABLED = process.env.NEXT_PUBLIC_CLIENT_SENTRY_ENABLED === "true";
  1189. /**
  1190. * A wrapper around Sentry.captureException that logs to the console if Sentry is not enabled and accepts additional metadata.
  1191. *
  1192. * @param {unknown} error
  1193. * @param {LogOptions} options
  1194. */ const logErrorToSentry = (error, options = {})=>{
  1195. if (!SENTRY_ENABLED) {
  1196. // eslint-disable-next-line no-console
  1197. console.error(error, options);
  1198. } else {
  1199. _sentry_nextjs__WEBPACK_IMPORTED_MODULE_0__.captureException(error, (scope)=>{
  1200. if (options.metadata) {
  1201. scope.setContext("extraData", options.metadata);
  1202. }
  1203. if ((0,_utils_auth_login__WEBPACK_IMPORTED_MODULE_1__/* .getUserIdCookie */ .AP)()) {
  1204. scope.setUser({
  1205. id: (0,_utils_auth_login__WEBPACK_IMPORTED_MODULE_1__/* .getUserIdCookie */ .AP)()
  1206. });
  1207. }
  1208. if (options.transactionName) {
  1209. scope.setTransactionName(options.transactionName);
  1210. }
  1211. return scope;
  1212. });
  1213. }
  1214. };
  1215. /**
  1216. * A wrapper around Sentry.captureMessage that logs to the console if Sentry is not enabled and accepts additional metadata. This is typically used for logging errors or in-app states that are not thrown.
  1217. *
  1218. * @param {string} message
  1219. * @param {LogOptions} options
  1220. */ const logMessageToSentry = (message, options = {})=>{
  1221. if (!SENTRY_ENABLED) {
  1222. // eslint-disable-next-line no-console
  1223. console.log(message, options);
  1224. } else {
  1225. Sentry.captureMessage(message, (scope)=>{
  1226. if (options.metadata) {
  1227. scope.setContext("extraData", options.metadata);
  1228. }
  1229. if (options.transactionName) {
  1230. scope.setTransactionName(options.transactionName);
  1231. }
  1232. return scope;
  1233. });
  1234. }
  1235. };
  1236. __webpack_async_result__();
  1237. } catch(e) { __webpack_async_result__(e); } });
  1238. /***/ }),
  1239. /***/ 69825:
  1240. /***/ ((module) => {
  1241. "use strict";
  1242. module.exports = require("@novu/headless");
  1243. /***/ }),
  1244. /***/ 75184:
  1245. /***/ ((module) => {
  1246. "use strict";
  1247. module.exports = require("@reduxjs/toolkit");
  1248. /***/ }),
  1249. /***/ 58097:
  1250. /***/ ((module) => {
  1251. "use strict";
  1252. module.exports = require("@sentry/nextjs");
  1253. /***/ }),
  1254. /***/ 59003:
  1255. /***/ ((module) => {
  1256. "use strict";
  1257. module.exports = require("classnames");
  1258. /***/ }),
  1259. /***/ 59606:
  1260. /***/ ((module) => {
  1261. "use strict";
  1262. module.exports = require("humps");
  1263. /***/ }),
  1264. /***/ 12372:
  1265. /***/ ((module) => {
  1266. "use strict";
  1267. module.exports = require("lodash/findKey");
  1268. /***/ }),
  1269. /***/ 98492:
  1270. /***/ ((module) => {
  1271. "use strict";
  1272. module.exports = require("lodash/groupBy");
  1273. /***/ }),
  1274. /***/ 35526:
  1275. /***/ ((module) => {
  1276. "use strict";
  1277. module.exports = require("lodash/random");
  1278. /***/ }),
  1279. /***/ 64042:
  1280. /***/ ((module) => {
  1281. "use strict";
  1282. module.exports = require("lodash/range");
  1283. /***/ }),
  1284. /***/ 16641:
  1285. /***/ ((module) => {
  1286. "use strict";
  1287. module.exports = require("next-seo");
  1288. /***/ }),
  1289. /***/ 60866:
  1290. /***/ ((module) => {
  1291. "use strict";
  1292. module.exports = require("next-translate/useTranslation");
  1293. /***/ }),
  1294. /***/ 3280:
  1295. /***/ ((module) => {
  1296. "use strict";
  1297. module.exports = require("next/dist/shared/lib/app-router-context.js");
  1298. /***/ }),
  1299. /***/ 92796:
  1300. /***/ ((module) => {
  1301. "use strict";
  1302. module.exports = require("next/dist/shared/lib/head-manager-context.js");
  1303. /***/ }),
  1304. /***/ 3539:
  1305. /***/ ((module) => {
  1306. "use strict";
  1307. module.exports = require("next/dist/shared/lib/i18n/detect-domain-locale.js");
  1308. /***/ }),
  1309. /***/ 34014:
  1310. /***/ ((module) => {
  1311. "use strict";
  1312. module.exports = require("next/dist/shared/lib/i18n/normalize-locale-path.js");
  1313. /***/ }),
  1314. /***/ 78524:
  1315. /***/ ((module) => {
  1316. "use strict";
  1317. module.exports = require("next/dist/shared/lib/is-plain-object.js");
  1318. /***/ }),
  1319. /***/ 78020:
  1320. /***/ ((module) => {
  1321. "use strict";
  1322. module.exports = require("next/dist/shared/lib/mitt.js");
  1323. /***/ }),
  1324. /***/ 64406:
  1325. /***/ ((module) => {
  1326. "use strict";
  1327. module.exports = require("next/dist/shared/lib/page-path/denormalize-page-path.js");
  1328. /***/ }),
  1329. /***/ 24964:
  1330. /***/ ((module) => {
  1331. "use strict";
  1332. module.exports = require("next/dist/shared/lib/router-context.js");
  1333. /***/ }),
  1334. /***/ 93431:
  1335. /***/ ((module) => {
  1336. "use strict";
  1337. module.exports = require("next/dist/shared/lib/router/utils/add-locale.js");
  1338. /***/ }),
  1339. /***/ 11751:
  1340. /***/ ((module) => {
  1341. "use strict";
  1342. module.exports = require("next/dist/shared/lib/router/utils/add-path-prefix.js");
  1343. /***/ }),
  1344. /***/ 46220:
  1345. /***/ ((module) => {
  1346. "use strict";
  1347. module.exports = require("next/dist/shared/lib/router/utils/compare-states.js");
  1348. /***/ }),
  1349. /***/ 10299:
  1350. /***/ ((module) => {
  1351. "use strict";
  1352. module.exports = require("next/dist/shared/lib/router/utils/format-next-pathname-info.js");
  1353. /***/ }),
  1354. /***/ 23938:
  1355. /***/ ((module) => {
  1356. "use strict";
  1357. module.exports = require("next/dist/shared/lib/router/utils/format-url.js");
  1358. /***/ }),
  1359. /***/ 29565:
  1360. /***/ ((module) => {
  1361. "use strict";
  1362. module.exports = require("next/dist/shared/lib/router/utils/get-asset-path-from-route.js");
  1363. /***/ }),
  1364. /***/ 35789:
  1365. /***/ ((module) => {
  1366. "use strict";
  1367. module.exports = require("next/dist/shared/lib/router/utils/get-next-pathname-info.js");
  1368. /***/ }),
  1369. /***/ 1897:
  1370. /***/ ((module) => {
  1371. "use strict";
  1372. module.exports = require("next/dist/shared/lib/router/utils/is-bot.js");
  1373. /***/ }),
  1374. /***/ 1428:
  1375. /***/ ((module) => {
  1376. "use strict";
  1377. module.exports = require("next/dist/shared/lib/router/utils/is-dynamic.js");
  1378. /***/ }),
  1379. /***/ 28854:
  1380. /***/ ((module) => {
  1381. "use strict";
  1382. module.exports = require("next/dist/shared/lib/router/utils/parse-path.js");
  1383. /***/ }),
  1384. /***/ 91292:
  1385. /***/ ((module) => {
  1386. "use strict";
  1387. module.exports = require("next/dist/shared/lib/router/utils/parse-relative-url.js");
  1388. /***/ }),
  1389. /***/ 34567:
  1390. /***/ ((module) => {
  1391. "use strict";
  1392. module.exports = require("next/dist/shared/lib/router/utils/path-has-prefix.js");
  1393. /***/ }),
  1394. /***/ 80979:
  1395. /***/ ((module) => {
  1396. "use strict";
  1397. module.exports = require("next/dist/shared/lib/router/utils/querystring.js");
  1398. /***/ }),
  1399. /***/ 93297:
  1400. /***/ ((module) => {
  1401. "use strict";
  1402. module.exports = require("next/dist/shared/lib/router/utils/remove-trailing-slash.js");
  1403. /***/ }),
  1404. /***/ 36052:
  1405. /***/ ((module) => {
  1406. "use strict";
  1407. module.exports = require("next/dist/shared/lib/router/utils/resolve-rewrites.js");
  1408. /***/ }),
  1409. /***/ 84226:
  1410. /***/ ((module) => {
  1411. "use strict";
  1412. module.exports = require("next/dist/shared/lib/router/utils/route-matcher.js");
  1413. /***/ }),
  1414. /***/ 95052:
  1415. /***/ ((module) => {
  1416. "use strict";
  1417. module.exports = require("next/dist/shared/lib/router/utils/route-regex.js");
  1418. /***/ }),
  1419. /***/ 59232:
  1420. /***/ ((module) => {
  1421. "use strict";
  1422. module.exports = require("next/dist/shared/lib/utils.js");
  1423. /***/ }),
  1424. /***/ 71853:
  1425. /***/ ((module) => {
  1426. "use strict";
  1427. module.exports = require("next/router");
  1428. /***/ }),
  1429. /***/ 16689:
  1430. /***/ ((module) => {
  1431. "use strict";
  1432. module.exports = require("react");
  1433. /***/ }),
  1434. /***/ 6022:
  1435. /***/ ((module) => {
  1436. "use strict";
  1437. module.exports = require("react-redux");
  1438. /***/ }),
  1439. /***/ 20997:
  1440. /***/ ((module) => {
  1441. "use strict";
  1442. module.exports = require("react/jsx-runtime");
  1443. /***/ }),
  1444. /***/ 74973:
  1445. /***/ ((module) => {
  1446. "use strict";
  1447. module.exports = import("@radix-ui/react-collapsible");;
  1448. /***/ }),
  1449. /***/ 3702:
  1450. /***/ ((module) => {
  1451. "use strict";
  1452. module.exports = import("@radix-ui/react-switch");;
  1453. /***/ }),
  1454. /***/ 66704:
  1455. /***/ ((module) => {
  1456. "use strict";
  1457. module.exports = import("@radix-ui/react-tooltip");;
  1458. /***/ }),
  1459. /***/ 88813:
  1460. /***/ ((module) => {
  1461. "use strict";
  1462. module.exports = import("firebase/compat/analytics");;
  1463. /***/ }),
  1464. /***/ 33773:
  1465. /***/ ((module) => {
  1466. "use strict";
  1467. module.exports = import("firebase/compat/app");;
  1468. /***/ }),
  1469. /***/ 69915:
  1470. /***/ ((module) => {
  1471. "use strict";
  1472. module.exports = import("js-cookie");;
  1473. /***/ }),
  1474. /***/ 3590:
  1475. /***/ ((module) => {
  1476. "use strict";
  1477. module.exports = import("react-toastify");;
  1478. /***/ }),
  1479. /***/ 63477:
  1480. /***/ ((module) => {
  1481. "use strict";
  1482. module.exports = require("querystring");
  1483. /***/ })
  1484. };
  1485. ;
  1486. // load runtime
  1487. var __webpack_require__ = require("../webpack-runtime.js");
  1488. __webpack_require__.C(exports);
  1489. var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
  1490. var __webpack_exports__ = __webpack_require__.X(0, [11497,79165,96270,24709,57933,61239,25869,50497,79717,22197,36049,5639,1223,39953], () => (__webpack_exec__(49086)));
  1491. module.exports = __webpack_exports__;
  1492. })();
  1493. //# sourceMappingURL=notification-settings.js.map