ouisys-component-library 3.0.51 → 3.0.53

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (216) hide show
  1. package/dist/AcceptanceCheckbox.js.map +1 -1
  2. package/dist/ChainRedirect.js +1 -1
  3. package/dist/ChainRedirect.js.map +1 -1
  4. package/dist/{CookieConsent-8c647631.js → CookieConsent-5ab9a20d.js} +2 -2
  5. package/dist/{CookieConsent-bb30e9e0.js.map → CookieConsent-5ab9a20d.js.map} +1 -1
  6. package/dist/CookieConsent.js +1 -1
  7. package/dist/Disclaimers.js.map +1 -1
  8. package/dist/{ExtraDisclaimers-030e2590.js → ExtraDisclaimers-e9c4fc0d.js} +1 -1
  9. package/dist/{ExtraDisclaimers-030e2590.js.map → ExtraDisclaimers-e9c4fc0d.js.map} +1 -1
  10. package/dist/ExtraDisclaimers.js +1 -1
  11. package/dist/{Features-2f33c3bf.js → Features-5bfe96f5.js} +1 -1
  12. package/dist/{Features-83b75c0f.js.map → Features-5bfe96f5.js.map} +1 -1
  13. package/dist/Features.js +1 -1
  14. package/dist/{Footer-0605dbc8.js → Footer-8a64feaf.js} +2 -2
  15. package/dist/{Footer-0605dbc8.js.map → Footer-8a64feaf.js.map} +1 -1
  16. package/dist/Footer.js +1 -1
  17. package/dist/Header.js +1 -1
  18. package/dist/Header.js.map +1 -1
  19. package/dist/{Intl-106cb675.js → Intl-69a131e2.js} +1 -1
  20. package/dist/{Intl-106cb675.js.map → Intl-69a131e2.js.map} +1 -1
  21. package/dist/IntlProvider.js +1 -1
  22. package/dist/{LanguageSwitcher-0b654061.js → LanguageSwitcher-06610aa5.js} +1 -1
  23. package/dist/LanguageSwitcher-06610aa5.js.map +1 -0
  24. package/dist/LanguageSwitcher.js +1 -1
  25. package/dist/Loader.js +1 -1
  26. package/dist/Loader.js.map +1 -1
  27. package/dist/LoadingPrelander.js.map +1 -1
  28. package/dist/{MOLink-01fd128f.js → MOLink-159f2464.js} +1 -1
  29. package/dist/{MOLink-01fd128f.js.map → MOLink-159f2464.js.map} +1 -1
  30. package/dist/MOLink.js +1 -1
  31. package/dist/{Menu-d852d192.js → Menu-1f312006.js} +2 -2
  32. package/dist/Menu-1f312006.js.map +1 -0
  33. package/dist/Menu.js +1 -1
  34. package/dist/PageContent.js +1 -1
  35. package/dist/PageContent.js.map +1 -1
  36. package/dist/Persuasive.js.map +1 -1
  37. package/dist/PhoneEntry.js.map +1 -1
  38. package/dist/Prelander.js.map +1 -1
  39. package/dist/{PricingPolicy-84b0e9e5.js → PricingPolicy-f4d7c9e2.js} +1 -1
  40. package/dist/{PricingPolicy-2c9d98f2.js.map → PricingPolicy-f4d7c9e2.js.map} +1 -1
  41. package/dist/PricingPolicy.js +1 -1
  42. package/dist/ProductArea.js +1 -1
  43. package/dist/ProductArea.js.map +1 -1
  44. package/dist/{RefundPolicy-28c15164.js → RefundPolicy-6e9e4be5.js} +2 -2
  45. package/dist/{RefundPolicy-4a82a347.js.map → RefundPolicy-6e9e4be5.js.map} +1 -1
  46. package/dist/RefundPolicy.js +1 -1
  47. package/dist/RootWrapper.js.map +1 -1
  48. package/dist/{Showcase-3561d2a9.js → Showcase-98769aa9.js} +1 -1
  49. package/dist/{Showcase-3561d2a9.js.map → Showcase-98769aa9.js.map} +1 -1
  50. package/dist/Showcase.js +1 -1
  51. package/dist/Steps.js +1 -1
  52. package/dist/Steps.js.map +1 -1
  53. package/dist/SubscriptionArea.js.map +1 -1
  54. package/dist/SuspenseLoader.js.map +1 -1
  55. package/dist/TermsAcceptanceCheck.js +1 -1
  56. package/dist/TermsAcceptanceCheck.js.map +1 -1
  57. package/dist/{Testimonials-04b47630.js → Testimonials-c30c888a.js} +1 -1
  58. package/dist/{Testimonials-04b47630.js.map → Testimonials-c30c888a.js.map} +1 -1
  59. package/dist/Testimonials.js +1 -1
  60. package/dist/Translate.js +1 -1
  61. package/dist/{Unsubscription-0063b720.js → Unsubscription-3a7ed665.js} +2 -2
  62. package/dist/{Unsubscription-0e63c854.js.map → Unsubscription-3a7ed665.js.map} +1 -1
  63. package/dist/Unsubscription.js +1 -1
  64. package/dist/defineMessages.js +1 -1
  65. package/dist/formatSMSLink.js +1 -1
  66. package/dist/injectIntl.js +1 -1
  67. package/dist/{routes-08e0cd9f.js → routes-874a6ef7.js} +1 -1
  68. package/dist/{routes-9ecebca3.js.map → routes-874a6ef7.js.map} +1 -1
  69. package/dist/styles.css +1 -1
  70. package/dist/styles.css.map +1 -1
  71. package/dist/types/ProductArea/ProductArea.d.ts +1 -1
  72. package/package.json +1 -1
  73. package/dist/CookieConsent-58588a3b.js +0 -2
  74. package/dist/CookieConsent-58588a3b.js.map +0 -1
  75. package/dist/CookieConsent-66987e6d.js +0 -2
  76. package/dist/CookieConsent-66987e6d.js.map +0 -1
  77. package/dist/CookieConsent-8c647631.js.map +0 -1
  78. package/dist/CookieConsent-a4583ebf.js +0 -2
  79. package/dist/CookieConsent-a4583ebf.js.map +0 -1
  80. package/dist/CookieConsent-bb30e9e0.js +0 -2
  81. package/dist/CookieConsent-d68ecb20.js +0 -2
  82. package/dist/CookieConsent-d68ecb20.js.map +0 -1
  83. package/dist/CookieConsent-e7435637.js +0 -2
  84. package/dist/CookieConsent-e7435637.js.map +0 -1
  85. package/dist/ExtraDisclaimers-19d3d0b1.js +0 -2
  86. package/dist/ExtraDisclaimers-19d3d0b1.js.map +0 -1
  87. package/dist/ExtraDisclaimers-19dea5d8.js +0 -2
  88. package/dist/ExtraDisclaimers-19dea5d8.js.map +0 -1
  89. package/dist/ExtraDisclaimers-479092ed.js +0 -2
  90. package/dist/ExtraDisclaimers-479092ed.js.map +0 -1
  91. package/dist/ExtraDisclaimers-61db773d.js +0 -2
  92. package/dist/ExtraDisclaimers-61db773d.js.map +0 -1
  93. package/dist/ExtraDisclaimers-d16a9b8a.js +0 -2
  94. package/dist/ExtraDisclaimers-d16a9b8a.js.map +0 -1
  95. package/dist/Features-2f33c3bf.js.map +0 -1
  96. package/dist/Features-3e15bfc9.js +0 -2
  97. package/dist/Features-3e15bfc9.js.map +0 -1
  98. package/dist/Features-83b75c0f.js +0 -2
  99. package/dist/Features-905e6eb2.js +0 -2
  100. package/dist/Features-905e6eb2.js.map +0 -1
  101. package/dist/Features-ad94029a.js +0 -2
  102. package/dist/Features-ad94029a.js.map +0 -1
  103. package/dist/Features-d3c405dd.js +0 -2
  104. package/dist/Features-d3c405dd.js.map +0 -1
  105. package/dist/Footer-1555474c.js +0 -2
  106. package/dist/Footer-1555474c.js.map +0 -1
  107. package/dist/Footer-4176ffa0.js +0 -2
  108. package/dist/Footer-4176ffa0.js.map +0 -1
  109. package/dist/Footer-831facf6.js +0 -2
  110. package/dist/Footer-831facf6.js.map +0 -1
  111. package/dist/Footer-946f282c.js +0 -2
  112. package/dist/Footer-946f282c.js.map +0 -1
  113. package/dist/Footer-ee70dc1d.js +0 -2
  114. package/dist/Footer-ee70dc1d.js.map +0 -1
  115. package/dist/Intl-5de471fb.js +0 -2
  116. package/dist/Intl-5de471fb.js.map +0 -1
  117. package/dist/Intl-68fb24f1.js +0 -2
  118. package/dist/Intl-68fb24f1.js.map +0 -1
  119. package/dist/Intl-913f3ad3.js +0 -2
  120. package/dist/Intl-913f3ad3.js.map +0 -1
  121. package/dist/Intl-c2b353e7.js +0 -2
  122. package/dist/Intl-c2b353e7.js.map +0 -1
  123. package/dist/Intl-c6e316ae.js +0 -2
  124. package/dist/Intl-c6e316ae.js.map +0 -1
  125. package/dist/LanguageSwitcher-0b654061.js.map +0 -1
  126. package/dist/LanguageSwitcher-24857a7d.js +0 -2
  127. package/dist/LanguageSwitcher-24857a7d.js.map +0 -1
  128. package/dist/LanguageSwitcher-2d885ef9.js +0 -2
  129. package/dist/LanguageSwitcher-2d885ef9.js.map +0 -1
  130. package/dist/LanguageSwitcher-458e64ff.js +0 -2
  131. package/dist/LanguageSwitcher-458e64ff.js.map +0 -1
  132. package/dist/LanguageSwitcher-802ec328.js +0 -2
  133. package/dist/LanguageSwitcher-802ec328.js.map +0 -1
  134. package/dist/LanguageSwitcher-d8f04116.js +0 -2
  135. package/dist/LanguageSwitcher-d8f04116.js.map +0 -1
  136. package/dist/MOLink-0b126ea3.js +0 -2
  137. package/dist/MOLink-0b126ea3.js.map +0 -1
  138. package/dist/MOLink-268f95ba.js +0 -2
  139. package/dist/MOLink-268f95ba.js.map +0 -1
  140. package/dist/MOLink-4848ed3b.js +0 -2
  141. package/dist/MOLink-4848ed3b.js.map +0 -1
  142. package/dist/MOLink-48914234.js +0 -2
  143. package/dist/MOLink-48914234.js.map +0 -1
  144. package/dist/MOLink-611006e6.js +0 -2
  145. package/dist/MOLink-611006e6.js.map +0 -1
  146. package/dist/Menu-095658ac.js +0 -2
  147. package/dist/Menu-095658ac.js.map +0 -1
  148. package/dist/Menu-1fd02fa0.js +0 -2
  149. package/dist/Menu-1fd02fa0.js.map +0 -1
  150. package/dist/Menu-20b70d3c.js +0 -2
  151. package/dist/Menu-20b70d3c.js.map +0 -1
  152. package/dist/Menu-688e10bf.js +0 -2
  153. package/dist/Menu-688e10bf.js.map +0 -1
  154. package/dist/Menu-d852d192.js.map +0 -1
  155. package/dist/Menu-fd6492bd.js +0 -2
  156. package/dist/Menu-fd6492bd.js.map +0 -1
  157. package/dist/PricingPolicy-2c9d98f2.js +0 -2
  158. package/dist/PricingPolicy-452a1353.js +0 -2
  159. package/dist/PricingPolicy-452a1353.js.map +0 -1
  160. package/dist/PricingPolicy-84b0e9e5.js.map +0 -1
  161. package/dist/PricingPolicy-b9920aae.js +0 -2
  162. package/dist/PricingPolicy-b9920aae.js.map +0 -1
  163. package/dist/PricingPolicy-de08af4b.js +0 -2
  164. package/dist/PricingPolicy-de08af4b.js.map +0 -1
  165. package/dist/PricingPolicy-efb90dd6.js +0 -2
  166. package/dist/PricingPolicy-efb90dd6.js.map +0 -1
  167. package/dist/RefundPolicy-28c15164.js.map +0 -1
  168. package/dist/RefundPolicy-2b8598c5.js +0 -2
  169. package/dist/RefundPolicy-2b8598c5.js.map +0 -1
  170. package/dist/RefundPolicy-4a82a347.js +0 -2
  171. package/dist/RefundPolicy-6a49f3b5.js +0 -2
  172. package/dist/RefundPolicy-6a49f3b5.js.map +0 -1
  173. package/dist/RefundPolicy-9cd6063e.js +0 -2
  174. package/dist/RefundPolicy-9cd6063e.js.map +0 -1
  175. package/dist/RefundPolicy-e14db410.js +0 -2
  176. package/dist/RefundPolicy-e14db410.js.map +0 -1
  177. package/dist/Showcase-9cba843d.js +0 -2
  178. package/dist/Showcase-9cba843d.js.map +0 -1
  179. package/dist/Showcase-acb95378.js +0 -2
  180. package/dist/Showcase-acb95378.js.map +0 -1
  181. package/dist/Showcase-b26fe325.js +0 -2
  182. package/dist/Showcase-b26fe325.js.map +0 -1
  183. package/dist/Showcase-b5b2dbdf.js +0 -2
  184. package/dist/Showcase-b5b2dbdf.js.map +0 -1
  185. package/dist/Showcase-b7920569.js +0 -2
  186. package/dist/Showcase-b7920569.js.map +0 -1
  187. package/dist/Testimonials-51bbfdfd.js +0 -2
  188. package/dist/Testimonials-51bbfdfd.js.map +0 -1
  189. package/dist/Testimonials-79044075.js +0 -2
  190. package/dist/Testimonials-79044075.js.map +0 -1
  191. package/dist/Testimonials-a1332218.js +0 -2
  192. package/dist/Testimonials-a1332218.js.map +0 -1
  193. package/dist/Testimonials-aedcfd27.js +0 -2
  194. package/dist/Testimonials-aedcfd27.js.map +0 -1
  195. package/dist/Testimonials-e65025e8.js +0 -2
  196. package/dist/Testimonials-e65025e8.js.map +0 -1
  197. package/dist/Unsubscription-0063b720.js.map +0 -1
  198. package/dist/Unsubscription-05697d14.js +0 -2
  199. package/dist/Unsubscription-05697d14.js.map +0 -1
  200. package/dist/Unsubscription-0e63c854.js +0 -2
  201. package/dist/Unsubscription-110906d6.js +0 -2
  202. package/dist/Unsubscription-110906d6.js.map +0 -1
  203. package/dist/Unsubscription-a319e91c.js +0 -2
  204. package/dist/Unsubscription-a319e91c.js.map +0 -1
  205. package/dist/Unsubscription-e8c832f9.js +0 -2
  206. package/dist/Unsubscription-e8c832f9.js.map +0 -1
  207. package/dist/routes-08e0cd9f.js.map +0 -1
  208. package/dist/routes-0b994a7e.js +0 -2
  209. package/dist/routes-0b994a7e.js.map +0 -1
  210. package/dist/routes-9a5171dc.js +0 -2
  211. package/dist/routes-9a5171dc.js.map +0 -1
  212. package/dist/routes-9ecebca3.js +0 -2
  213. package/dist/routes-c4ffda6e.js +0 -2
  214. package/dist/routes-c4ffda6e.js.map +0 -1
  215. package/dist/routes-f4775d3b.js +0 -2
  216. package/dist/routes-f4775d3b.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Header.js","sources":["../src/Header/Header.tsx"],"sourcesContent":["/* eslint-disable */\n\nimport cn from 'classnames';\nimport React from 'react';\nimport styles from './Header.module.scss';\nimport { InterfaceFeatures } from './Header.types';\nimport { LanguageSwitcher } from '../LanguageSwitcher/LanguageSwitcher';\nimport { Menu } from '../Menu/Menu';\n\nexport const Header = ({\n className = '',\n dataQaId = 'qa-header',\n locale = 'en',\n topLegal = '',\n tracker,\n pageConfigs = {\n isShowLogo: true,\n isShowLanguageSwitcher: true,\n isShowMenu: true\n },\n isMenuOpen = false,\n setIsMenuOpen,\n languageOptions = [],\n onLanguageChange\n}: Partial<InterfaceFeatures>) => {\n\n const logoUrl = pageConfigs?.logo?.url || '';\n\n return <div className=\"header\">\n <div className=\"header__wrapper\">\n\n\n {pageConfigs?.isShowLogo && logoUrl && ( \n <div className={cn(styles.header, 'Header', className)} data-qa-id={dataQaId}>\n <div className={cn(styles.headerLogo, 'Header__logo')}>\n <img src={logoUrl} alt=\"logo\" />\n <p className={cn(styles.headerLegal, 'Header__legal')}>{topLegal}</p>\n </div>\n </div>)}\n\n <div>\n {pageConfigs?.isShowLanguageSwitcher && (\n <LanguageSwitcher\n locale={locale}\n switchLang={onLanguageChange || (() => { })}\n options={languageOptions}\n data-lang-btn=\"single\"\n />\n )}\n {pageConfigs?.isShowMenu && (\n <Menu\n setIsOpen={setIsMenuOpen || (() => { })}\n logoUrl={logoUrl || ''}\n isOpen={isMenuOpen || false}\n locale={locale}\n labels={{ menu: \"Menu\", }}\n />\n )}\n </div>\n </div>\n </div>\n};\n"],"names":["Header","_a","_c","className","_d","dataQaId","_e","locale","_f","topLegal","tracker","_g","pageConfigs","isShowLogo","isShowLanguageSwitcher","isShowMenu","_h","isMenuOpen","setIsMenuOpen","_j","languageOptions","onLanguageChange","logoUrl","_b","logo","url","React","createElement","cn","styles","src","alt","LanguageSwitcher","switchLang","options","Menu","setIsOpen","isOpen","labels","menu"],"mappings":"qSASaA,EAAS,SAACC,SACrBC,EAAAD,EAAAE,UAAAA,OAAY,IAAAD,EAAA,KACZE,EAAAH,EAAAI,SAAAA,OAAW,IAAAD,EAAA,YAAWA,EACtBE,WAAAC,OAAS,IAAAD,EAAA,KAAIA,EACbE,EAAaP,EAAAQ,SAAbA,OAAW,IAAAD,EAAA,GAAEA,EACNP,EAAAS,YACPC,EAICV,EAAAW,YAJDA,OAAc,IAAAD,EAAA,CACZE,YAAY,EACZC,wBAAwB,EACxBC,YAAY,GACbJ,EACDK,EAAkBf,EAAAgB,WAAlBA,OAAa,IAAAD,KACbE,kBACAC,EAAAlB,EAAAmB,gBAAAA,OAAe,IAAAD,EAAG,GAAEA,EACpBE,EAAgBpB,EAAAoB,iBAGVC,GAA2B,QAAjBC,EAAAX,aAAA,EAAAA,EAAaY,YAAI,IAAAD,OAAA,EAAAA,EAAEE,MAAO,GAE1C,OAAOC,EAAAC,cAAA,MAAA,CAAKxB,UAAU,UACpBuB,EAAKC,cAAA,MAAA,CAAAxB,UAAU,oBAGZS,aAAA,EAAAA,EAAaC,aAAcS,GAC1BI,EAAAC,cAAA,MAAA,CAAKxB,UAAWyB,EAAGC,EAAe,SAAU1B,GAAU,aAAcE,GAClEqB,EAAKC,cAAA,MAAA,CAAAxB,UAAWyB,EAAGC,EAAmB,iBACpCH,EAAAC,cAAA,MAAA,CAAKG,IAAKR,EAASS,IAAI,SACvBL,EAAAC,cAAA,IAAA,CAAGxB,UAAWyB,EAAGC,EAAoB,kBAAmBpB,KAI9DiB,EAAAC,cAAA,MAAA,MACGf,aAAW,EAAXA,EAAaE,yBACZY,EAAAC,cAACK,EAAgB,CACfzB,OAAQA,EACR0B,WAAYZ,cAA8B,EAC1Ca,QAASd,EACK,gBAAA,YAGjBR,aAAW,EAAXA,EAAaG,aACZW,EAACC,cAAAQ,GACCC,UAAWlB,GAAa,WAAc,EACtCI,QAASA,GAAW,GACpBe,OAAQpB,IAAc,EACtBV,OAAQA,EACR+B,OAAQ,CAAEC,KAAM,YAM5B"}
1
+ {"version":3,"file":"Header.js","sources":["../src/Header/Header.tsx"],"sourcesContent":["/* eslint-disable */\n\nimport cn from 'classnames';\nimport React from 'react';\nimport { LanguageSwitcher } from '../LanguageSwitcher/LanguageSwitcher';\nimport { Menu } from '../Menu/Menu';\nimport styles from './Header.module.scss';\nimport { InterfaceFeatures } from './Header.types';\n\nexport const Header = ({\n className = '',\n dataQaId = 'qa-header',\n locale = 'en',\n topLegal = '',\n tracker,\n pageConfigs = {\n isShowLogo: true,\n isShowLanguageSwitcher: true,\n isShowMenu: true\n },\n isMenuOpen = false,\n setIsMenuOpen,\n languageOptions = [],\n onLanguageChange\n}: Partial<InterfaceFeatures>) => {\n const logoUrl = pageConfigs?.logo?.url || '';\n\n return (\n <div className=\"header\">\n <div className=\"header__wrapper\">\n {pageConfigs?.isShowLogo && logoUrl && (\n <div className={cn(styles.header, 'Header', className)} data-qa-id={dataQaId}>\n <div className={cn(styles.headerLogo, 'Header__logo')}>\n <img src={logoUrl} alt=\"logo\" />\n <p className={cn(styles.headerLegal, 'Header__legal')}>{topLegal}</p>\n </div>\n </div>\n )}\n\n <div>\n {pageConfigs?.isShowLanguageSwitcher && (\n <LanguageSwitcher\n locale={locale}\n switchLang={onLanguageChange || (() => {})}\n options={languageOptions}\n data-lang-btn=\"single\"\n />\n )}\n {pageConfigs?.isShowMenu && (\n <Menu\n setIsOpen={setIsMenuOpen || (() => {})}\n logoUrl={logoUrl || ''}\n isOpen={isMenuOpen || false}\n locale={locale}\n labels={{ menu: 'Menu' }}\n />\n )}\n </div>\n </div>\n </div>\n );\n};\n"],"names":["Header","_a","_c","className","_d","dataQaId","_e","locale","_f","topLegal","tracker","_g","pageConfigs","isShowLogo","isShowLanguageSwitcher","isShowMenu","_h","isMenuOpen","setIsMenuOpen","_j","languageOptions","onLanguageChange","logoUrl","_b","logo","url","React","createElement","cn","styles","src","alt","LanguageSwitcher","switchLang","options","Menu","setIsOpen","isOpen","labels","menu"],"mappings":"qSASaA,EAAS,SAACC,SACrBC,EAAAD,EAAAE,UAAAA,OAAY,IAAAD,EAAA,KACZE,EAAAH,EAAAI,SAAAA,OAAW,IAAAD,EAAA,YAAWA,EACtBE,WAAAC,OAAS,IAAAD,EAAA,KAAIA,EACbE,EAAaP,EAAAQ,SAAbA,OAAW,IAAAD,EAAA,GAAEA,EACNP,EAAAS,YACPC,EAICV,EAAAW,YAJDA,OAAc,IAAAD,EAAA,CACZE,YAAY,EACZC,wBAAwB,EACxBC,YAAY,GACbJ,EACDK,EAAkBf,EAAAgB,WAAlBA,OAAa,IAAAD,KACbE,kBACAC,EAAAlB,EAAAmB,gBAAAA,OAAe,IAAAD,EAAG,GAAEA,EACpBE,EAAgBpB,EAAAoB,iBAEVC,GAA2B,QAAjBC,EAAAX,aAAA,EAAAA,EAAaY,YAAI,IAAAD,OAAA,EAAAA,EAAEE,MAAO,GAE1C,OACEC,EAAAC,cAAA,MAAA,CAAKxB,UAAU,UACbuB,EAAKC,cAAA,MAAA,CAAAxB,UAAU,oBACZS,aAAA,EAAAA,EAAaC,aAAcS,GAC1BI,EAAAC,cAAA,MAAA,CAAKxB,UAAWyB,EAAGC,EAAe,SAAU1B,GAAU,aAAcE,GAClEqB,EAAKC,cAAA,MAAA,CAAAxB,UAAWyB,EAAGC,EAAmB,iBACpCH,EAAAC,cAAA,MAAA,CAAKG,IAAKR,EAASS,IAAI,SACvBL,EAAAC,cAAA,IAAA,CAAGxB,UAAWyB,EAAGC,EAAoB,kBAAmBpB,KAK9DiB,EAAAC,cAAA,MAAA,MACGf,aAAW,EAAXA,EAAaE,yBACZY,EAAAC,cAACK,EAAgB,CACfzB,OAAQA,EACR0B,WAAYZ,cAA6B,EACzCa,QAASd,EACK,gBAAA,YAGjBR,aAAW,EAAXA,EAAaG,aACZW,EAACC,cAAAQ,GACCC,UAAWlB,GAAa,WAAa,EACrCI,QAASA,GAAW,GACpBe,OAAQpB,IAAc,EACtBV,OAAQA,EACR+B,OAAQ,CAAEC,KAAM,YAO9B"}
@@ -1,2 +1,2 @@
1
1
  import{__assign as e}from"tslib";import*as r from"react";var t=r.createContext({locale:"en",messages:{},intl:{formatMessage:function(e,r){return e.id,e.defaultMessage,""}}});function a(e){var a=e.locale,n=e.messages,s=e.children;return r.createElement(t.Provider,{value:{locale:a,messages:n,intl:{formatMessage:function(e,r){var t=e.id,a=e.defaultMessage,s=n&&n[t]?n[t]:a||"";if(r){var u=Object.keys(r);Array.isArray(u)&&u.map((function(e){var t=s.replace("{".concat(e,"}"),r[e]);s=t}))}return s}}}},s)}function n(e){var a=e.id;e.values;var n=e.defaultMessage,s=r.useContext(t).messages;return s&&s[a]?s[a]:n||""}function s(a){return function(n){return r.createElement(t.Consumer,null,(function(t){var s=t.intl;return r.createElement(a,e({},n,{intl:s}))}))}}function u(e){return e}export{a as I,n as T,u as d,s as i};
2
- //# sourceMappingURL=Intl-106cb675.js.map
2
+ //# sourceMappingURL=Intl-69a131e2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Intl-106cb675.js","sources":["../src/Intl/Intl.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable react/jsx-props-no-spreading */\nimport * as React from 'react';\n\nexport interface IHash {\n [key: string]: string;\n}\n\nconst LocaleContext = React.createContext({\n locale: 'en',\n messages: {} as IHash,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n intl: { formatMessage: ({ id, defaultMessage }, values) => '' }\n});\n\nexport function IntlProvider({\n locale,\n messages,\n children\n}: {\n locale: string;\n messages: IHash;\n children: React.ReactChild | JSX.Element[] | JSX.Element;\n}) {\n return (\n <LocaleContext.Provider\n value={{\n locale,\n messages,\n intl: {\n formatMessage: ({ id, defaultMessage }, values) => {\n let defaultMessageString = !!messages && !!messages[id] ? messages[id] : defaultMessage || '';\n if (values) {\n const valKeyArr = Object.keys(values);\n if (Array.isArray(valKeyArr)) {\n // eslint-disable-next-line array-callback-return\n valKeyArr.map((value) => {\n const str = defaultMessageString;\n const res = str.replace(`{${value}}`, values[value]);\n defaultMessageString = res;\n });\n }\n }\n return defaultMessageString;\n }\n }\n }}\n >\n {children}\n </LocaleContext.Provider>\n );\n}\n\nexport function Translate({\n id,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars-experimental\n values,\n defaultMessage\n}: {\n id: string;\n values?: { [key: string]: string };\n defaultMessage?: string;\n}): string {\n const { messages } = React.useContext(LocaleContext);\n return !!messages && !!messages[id] ? messages[id] : defaultMessage || '';\n}\n\nexport function injectIntl(Child: React.ComponentType<any>) {\n return (props: any) => (\n <LocaleContext.Consumer>{({ intl }) => <Child {...props} intl={intl} />}</LocaleContext.Consumer>\n );\n}\n\nexport function defineMessages(messageDescriptors: any) {\n // console.log('messageDescriptors', messageDescriptors)\n return messageDescriptors;\n}\n"],"names":["LocaleContext","React","createContext","locale","messages","intl","formatMessage","_a","values","id","defaultMessage","IntlProvider","children","createElement","Provider","value","defaultMessageString","valKeyArr","Object","keys","Array","isArray","map","res","replace","concat","Translate","useContext","injectIntl","Child","props","Consumer","__assign","defineMessages","messageDescriptors"],"mappings":"yDAQA,IAAMA,EAAgBC,EAAMC,cAAc,CACxCC,OAAQ,KACRC,SAAU,CAAW,EAGrBC,KAAM,CAAEC,cAAe,SAACC,EAAwBC,GAAW,OAA/BD,EAAAE,GAAgBF,EAAAG,eAAe,EAAA,KAGvD,SAAUC,EAAaJ,GAC3B,IAAAJ,WACAC,EAAQG,EAAAH,SACRQ,EAAQL,EAAAK,SAMR,OACEX,EAACY,cAAAb,EAAcc,SAAQ,CACrBC,MAAO,CACLZ,OAAMA,EACNC,SAAQA,EACRC,KAAM,CACJC,cAAe,SAACC,EAAwBC,OAAtBC,EAAEF,EAAAE,GAAEC,EAAcH,EAAAG,eAC9BM,EAAyBZ,GAAcA,EAASK,GAAML,EAASK,GAAMC,GAAkB,GAC3F,GAAIF,EAAQ,CACV,IAAMS,EAAYC,OAAOC,KAAKX,GAC1BY,MAAMC,QAAQJ,IAEhBA,EAAUK,KAAI,SAACP,GACb,IACMQ,EADMP,EACIQ,QAAQ,IAAAC,OAAIV,EAAK,KAAKP,EAAOO,IAC7CC,EAAuBO,CACzB,GAEH,CACD,OAAOP,CACR,KAIJJ,EAGP,CAEM,SAAUc,EAAUnB,GACxB,IAAAE,EAAEF,EAAAE,GAEIF,EAAAC,WACNE,EAAcH,EAAAG,eAMNN,EAAaH,EAAM0B,WAAW3B,GAAcI,SACpD,OAASA,GAAcA,EAASK,GAAML,EAASK,GAAMC,GAAkB,EACzE,CAEM,SAAUkB,EAAWC,GACzB,OAAO,SAACC,GAAe,OACrB7B,EAACY,cAAAb,EAAc+B,SAAU,MAAA,SAACxB,GAAE,IAAAF,EAAIE,EAAAF,KAAO,OAAAJ,EAAAY,cAACgB,EAAUG,EAAA,CAAA,EAAAF,GAAOzB,KAAMA,IAAQ,GADlD,CAGzB,CAEM,SAAU4B,EAAeC,GAE7B,OAAOA,CACT"}
1
+ {"version":3,"file":"Intl-69a131e2.js","sources":["../src/Intl/Intl.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable react/jsx-props-no-spreading */\nimport * as React from 'react';\n\nexport interface IHash {\n [key: string]: string;\n}\n\nconst LocaleContext = React.createContext({\n locale: 'en',\n messages: {} as IHash,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n intl: { formatMessage: ({ id, defaultMessage }, values) => '' }\n});\n\nexport function IntlProvider({\n locale,\n messages,\n children\n}: {\n locale: string;\n messages: IHash;\n children: React.ReactChild | JSX.Element[] | JSX.Element;\n}) {\n return (\n <LocaleContext.Provider\n value={{\n locale,\n messages,\n intl: {\n formatMessage: ({ id, defaultMessage }, values) => {\n let defaultMessageString = !!messages && !!messages[id] ? messages[id] : defaultMessage || '';\n if (values) {\n const valKeyArr = Object.keys(values);\n if (Array.isArray(valKeyArr)) {\n // eslint-disable-next-line array-callback-return\n valKeyArr.map((value) => {\n const str = defaultMessageString;\n const res = str.replace(`{${value}}`, values[value]);\n defaultMessageString = res;\n });\n }\n }\n return defaultMessageString;\n }\n }\n }}\n >\n {children}\n </LocaleContext.Provider>\n );\n}\n\nexport function Translate({\n id,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars-experimental\n values,\n defaultMessage\n}: {\n id: string;\n values?: { [key: string]: string };\n defaultMessage?: string;\n}): string {\n const { messages } = React.useContext(LocaleContext);\n return !!messages && !!messages[id] ? messages[id] : defaultMessage || '';\n}\n\nexport function injectIntl(Child: React.ComponentType<any>) {\n return (props: any) => (\n <LocaleContext.Consumer>{({ intl }) => <Child {...props} intl={intl} />}</LocaleContext.Consumer>\n );\n}\n\nexport function defineMessages(messageDescriptors: any) {\n // console.log('messageDescriptors', messageDescriptors)\n return messageDescriptors;\n}\n"],"names":["LocaleContext","React","createContext","locale","messages","intl","formatMessage","_a","values","id","defaultMessage","IntlProvider","children","createElement","Provider","value","defaultMessageString","valKeyArr","Object","keys","Array","isArray","map","res","replace","concat","Translate","useContext","injectIntl","Child","props","Consumer","__assign","defineMessages","messageDescriptors"],"mappings":"yDAQA,IAAMA,EAAgBC,EAAMC,cAAc,CACxCC,OAAQ,KACRC,SAAU,CAAW,EAGrBC,KAAM,CAAEC,cAAe,SAACC,EAAwBC,GAAW,OAA/BD,EAAAE,GAAgBF,EAAAG,eAAe,EAAA,KAGvD,SAAUC,EAAaJ,GAC3B,IAAAJ,WACAC,EAAQG,EAAAH,SACRQ,EAAQL,EAAAK,SAMR,OACEX,EAACY,cAAAb,EAAcc,SAAQ,CACrBC,MAAO,CACLZ,OAAMA,EACNC,SAAQA,EACRC,KAAM,CACJC,cAAe,SAACC,EAAwBC,OAAtBC,EAAEF,EAAAE,GAAEC,EAAcH,EAAAG,eAC9BM,EAAyBZ,GAAcA,EAASK,GAAML,EAASK,GAAMC,GAAkB,GAC3F,GAAIF,EAAQ,CACV,IAAMS,EAAYC,OAAOC,KAAKX,GAC1BY,MAAMC,QAAQJ,IAEhBA,EAAUK,KAAI,SAACP,GACb,IACMQ,EADMP,EACIQ,QAAQ,IAAAC,OAAIV,EAAK,KAAKP,EAAOO,IAC7CC,EAAuBO,CACzB,GAEH,CACD,OAAOP,CACR,KAIJJ,EAGP,CAEM,SAAUc,EAAUnB,GACxB,IAAAE,EAAEF,EAAAE,GAEIF,EAAAC,WACNE,EAAcH,EAAAG,eAMNN,EAAaH,EAAM0B,WAAW3B,GAAcI,SACpD,OAASA,GAAcA,EAASK,GAAML,EAASK,GAAMC,GAAkB,EACzE,CAEM,SAAUkB,EAAWC,GACzB,OAAO,SAACC,GAAe,OACrB7B,EAACY,cAAAb,EAAc+B,SAAU,MAAA,SAACxB,GAAE,IAAAF,EAAIE,EAAAF,KAAO,OAAAJ,EAAAY,cAACgB,EAAUG,EAAA,CAAA,EAAAF,GAAOzB,KAAMA,IAAQ,GADlD,CAGzB,CAEM,SAAU4B,EAAeC,GAE7B,OAAOA,CACT"}
@@ -1,2 +1,2 @@
1
- export{I as IntlProvider}from"./Intl-c2b353e7.js";import"tslib";import"react";
1
+ export{I as IntlProvider}from"./Intl-69a131e2.js";import"tslib";import"react";
2
2
  //# sourceMappingURL=IntlProvider.js.map
@@ -1,2 +1,2 @@
1
1
  import{__read as e}from"tslib";import n from"classnames";import a,{useState as l}from"react";var t={langRadio:"LanguageSwitcher-module_langRadio__x0vX9",LangMenu:"LanguageSwitcher-module_LangMenu__k7g8K",langMenu:"LanguageSwitcher-module_LangMenu__k7g8K",LangMenu__button:"LanguageSwitcher-module_LangMenu__button__Ur1De",langMenuButton:"LanguageSwitcher-module_LangMenu__button__Ur1De",LangMenu__item:"LanguageSwitcher-module_LangMenu__item__83gzs",langMenuItem:"LanguageSwitcher-module_LangMenu__item__83gzs",LangMenu__list:"LanguageSwitcher-module_LangMenu__list__zET0i",langMenuList:"LanguageSwitcher-module_LangMenu__list__zET0i",LangMenu__list_open:"LanguageSwitcher-module_LangMenu__list_open__UQTKu",langMenuListOpen:"LanguageSwitcher-module_LangMenu__list_open__UQTKu",LangMenu__list_closed:"LanguageSwitcher-module_LangMenu__list_closed__zZkDr",langMenuListClosed:"LanguageSwitcher-module_LangMenu__list_closed__zZkDr",LangMenuOverlay:"LanguageSwitcher-module_LangMenuOverlay__v3m5V",langMenuOverlay:"LanguageSwitcher-module_LangMenuOverlay__v3m5V",open:"LanguageSwitcher-module_open__Saj3F",active:"LanguageSwitcher-module_active__8QrEn",Chevron:"LanguageSwitcher-module_Chevron__gPJ2z",chevron:"LanguageSwitcher-module_Chevron__gPJ2z"},u=[{value:"en",label:"EN"},{value:"ar",label:"AR"}],g=function(g){var _,i,r=g.locale,o=g.switchLang,c=g.options,m=void 0===c?u:c,L=g.className,s=void 0===L?"":L,d=g.dataQaId,v=void 0===d?"language-switcher":d,M=g.tracker,h=e(l(!1),2),w=h[0],S=h[1],E=function(e){var n=e.currentTarget.value;M&&M.customEvent("language","change","change language",{locale:n}),o(n)},p=function(){S(!w)};return(null==m?void 0:m.length)&&1===(null==m?void 0:m.length)?null:a.createElement(a.Fragment,null,2===m.length?a.createElement(a.Fragment,null,a.createElement("div",{className:n(t.langRadio,"langRadio",s)},m.map((function(e){var n=e.value,l=e.label;return a.createElement("li",null,a.createElement("input",{type:"radio",id:"radio-".concat(n),name:"radios",value:n,checked:r===n,onChange:function(e){return E(e)}}),a.createElement("label",{htmlFor:"radio-".concat(n)},l))})))):a.createElement(a.Fragment,null,a.createElement("div",{className:n(t.LangMenuOverlay,"LangMenuOverlay",(_={},_[t.open]=w,_[t.closed]=!w,_),s),"data-qa-id":v,onClick:p}),a.createElement("div",{className:n(t.LangMenu,"LangMenu",s),"data-qa-id":v},a.createElement("button",{className:n(t.LangMenu__button,"LangMenu__button","languageSwitcher",s),type:"button",onClick:p},r,a.createElement("i",{className:n(t.Chevron,"Chevron")})),a.createElement("ul",{className:n(t.LangMenu__list,"LangMenu__list",(i={},i[t.LangMenu__list_open]=w,i[t.LangMenu__list_closed]=!w,i),s)},a.createElement("i",{className:n(t.cancel,"cancel",s),onClick:p}),null==m?void 0:m.map((function(e){var l,u=e.value;return e.label,a.createElement("li",{className:n(t.LangMenu__item,"LangMenu__item")},a.createElement("button",{value:u,type:"button",onClick:E,className:n(t.languageSwitcher,"languageSwitcher",(l={},l[t.active]=u===r,l),s)},u))}))))))};export{g as L};
2
- //# sourceMappingURL=LanguageSwitcher-0b654061.js.map
2
+ //# sourceMappingURL=LanguageSwitcher-06610aa5.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LanguageSwitcher-06610aa5.js","sources":["../src/LanguageSwitcher/LanguageSwitcher.tsx"],"sourcesContent":["import cn from 'classnames';\nimport React, { useState } from 'react';\nimport styles from './LanguageSwitcher.module.scss';\nimport { interfaceLanguageSwitcher, typeLanguageSwitcherOptions } from './LanguageSwitcher.types';\n\nconst defaultOptions = [\n { value: 'en', label: 'EN' },\n { value: 'ar', label: 'AR' }\n];\n\nexport const LanguageSwitcher = ({\n locale,\n switchLang,\n options = defaultOptions,\n className = '',\n dataQaId = 'language-switcher',\n tracker\n}: interfaceLanguageSwitcher) => {\n const [isMenuOpen, setIsMenuOpen] = useState(false);\n const handleSwitchLangOnClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n const { value } = event.currentTarget;\n if (tracker) {\n tracker.customEvent('language', 'change', 'change language', { locale: value });\n }\n switchLang(value);\n };\n\n const handleMenuClick = () => {\n setIsMenuOpen(!isMenuOpen);\n };\n\n if (!!options?.length && options?.length === 1) {\n return null;\n }\n\n return (\n <>\n {options.length === 2 ? (\n <>\n <div className={cn(styles.langRadio, 'langRadio', className)}>\n {options.map(({ value, label }: typeLanguageSwitcherOptions) => (\n <li>\n <input\n type=\"radio\"\n id={`radio-${value}`}\n name=\"radios\"\n value={value}\n checked={locale === value}\n onChange={(e) => handleSwitchLangOnClick(e as any)}\n />\n <label htmlFor={`radio-${value}`}>{label}</label>\n </li>\n ))}\n </div>\n </>\n ) : (\n <>\n <div\n className={cn(\n styles.LangMenuOverlay,\n 'LangMenuOverlay',\n { [styles.open]: isMenuOpen, [styles.closed]: !isMenuOpen },\n className\n )}\n data-qa-id={dataQaId}\n onClick={handleMenuClick}\n />\n\n <div className={cn(styles.LangMenu, 'LangMenu', className)} data-qa-id={dataQaId}>\n <button\n className={cn(styles.LangMenu__button, 'LangMenu__button', 'languageSwitcher', className)}\n type=\"button\"\n onClick={handleMenuClick}\n >\n {locale}\n <i className={cn(styles.Chevron, 'Chevron')} />\n </button>\n\n <ul\n className={cn(\n styles.LangMenu__list,\n 'LangMenu__list',\n { [styles.LangMenu__list_open]: isMenuOpen, [styles.LangMenu__list_closed]: !isMenuOpen },\n className\n )}\n >\n <i className={cn(styles.cancel, 'cancel', className)} onClick={handleMenuClick} />\n {options?.map(({ value, label }: typeLanguageSwitcherOptions) => (\n <li className={cn(styles.LangMenu__item, 'LangMenu__item')}>\n <button\n value={value}\n type=\"button\"\n onClick={handleSwitchLangOnClick}\n className={cn(\n styles.languageSwitcher,\n 'languageSwitcher',\n { [styles.active]: value === locale },\n className\n )}\n >\n {value}\n </button>\n </li>\n ))}\n </ul>\n </div>\n </>\n )}\n </>\n );\n};\n"],"names":["defaultOptions","value","label","LanguageSwitcher","_a","locale","switchLang","_d","options","_e","className","_f","dataQaId","tracker","_g","__read","useState","isMenuOpen","setIsMenuOpen","handleSwitchLangOnClick","event","currentTarget","customEvent","handleMenuClick","length","React","createElement","Fragment","cn","styles","langRadio","map","type","id","concat","name","checked","onChange","e","htmlFor","LangMenuOverlay","_b","open","closed","onClick","LangMenu","LangMenu__button","Chevron","LangMenu__list","_c","LangMenu__list_open","LangMenu__list_closed","cancel","LangMenu__item","languageSwitcher","active"],"mappings":"guCAKMA,EAAiB,CACrB,CAAEC,MAAO,KAAMC,MAAO,MACtB,CAAED,MAAO,KAAMC,MAAO,OAGXC,EAAmB,SAACC,WAC/BC,EAAMD,EAAAC,OACNC,EAAUF,EAAAE,WACVC,EAAwBH,EAAAI,QAAxBA,OAAO,IAAAD,EAAGP,EAAcO,EACxBE,EAAAL,EAAAM,UAAAA,OAAY,IAAAD,EAAA,GAAEA,EACdE,EAA8BP,EAAAQ,SAA9BA,OAAQ,IAAAD,EAAG,oBAAmBA,EAC9BE,EAAOT,EAAAS,QAEDC,EAAAC,EAA8BC,GAAS,GAAM,GAA5CC,EAAUH,EAAA,GAAEI,OACbC,EAA0B,SAACC,GACvB,IAAAnB,EAAUmB,EAAMC,oBACpBR,GACFA,EAAQS,YAAY,WAAY,SAAU,kBAAmB,CAAEjB,OAAQJ,IAEzEK,EAAWL,EACb,EAEMsB,EAAkB,WACtBL,GAAeD,EACjB,EAEA,OAAMT,aAAO,EAAPA,EAASgB,SAA8B,KAApBhB,aAAO,EAAPA,EAASgB,QACzB,KAIPC,EACGC,cAAAD,EAAAE,SAAA,KAAmB,IAAnBnB,EAAQgB,OACPC,EAAAC,cAAAD,EAAAE,SAAA,KACEF,EAAAC,cAAA,MAAA,CAAKhB,UAAWkB,EAAGC,EAAOC,UAAW,YAAapB,IAC/CF,EAAQuB,KAAI,SAAC3B,OAAEH,EAAKG,EAAAH,MAAEC,EAAKE,EAAAF,MAAoC,OAC9DuB,EAAAC,cAAA,KAAA,KACED,EAAAC,cAAA,QAAA,CACEM,KAAK,QACLC,GAAI,SAASC,OAAAjC,GACbkC,KAAK,SACLlC,MAAOA,EACPmC,QAAS/B,IAAWJ,EACpBoC,SAAU,SAACC,GAAM,OAAAnB,EAAwBmB,EAAS,IAEpDb,EAAOC,cAAA,QAAA,CAAAa,QAAS,SAASL,OAAAjC,IAAUC,GAVyB,MAgBpEuB,EAAAC,cAAAD,EAAAE,SAAA,KACEF,EAAAC,cAAA,MAAA,CACEhB,UAAWkB,EACTC,EAAOW,gBACP,mBACEC,EAAA,GAAAA,EAACZ,EAAOa,MAAOzB,EAAYwB,EAACZ,EAAOc,SAAU1B,EAAUwB,GACzD/B,gBAEUE,EACZgC,QAASrB,IAGXE,EAAAC,cAAA,MAAA,CAAKhB,UAAWkB,EAAGC,EAAOgB,SAAU,WAAYnC,gBAAwBE,GACtEa,EACEC,cAAA,SAAA,CAAAhB,UAAWkB,EAAGC,EAAOiB,iBAAkB,mBAAoB,mBAAoBpC,GAC/EsB,KAAK,SACLY,QAASrB,GAERlB,EACDoB,EAAGC,cAAA,IAAA,CAAAhB,UAAWkB,EAAGC,EAAOkB,QAAS,cAGnCtB,EACEC,cAAA,KAAA,CAAAhB,UAAWkB,EACTC,EAAOmB,eACP,kBACEC,EAAA,GAAAA,EAACpB,EAAOqB,qBAAsBjC,EAAYgC,EAACpB,EAAOsB,wBAAyBlC,EAC7EgC,GAAAvC,IAGFe,EAAGC,cAAA,IAAA,CAAAhB,UAAWkB,EAAGC,EAAOuB,OAAQ,SAAU1C,GAAYkC,QAASrB,IAC9Df,aAAO,EAAPA,EAASuB,KAAI,SAAC3B,SAAEH,EAAKG,EAAAH,MAA2C,OAApCG,EAAAF,MAC3BuB,EAAIC,cAAA,KAAA,CAAAhB,UAAWkB,EAAGC,EAAOwB,eAAgB,mBACvC5B,EAAAC,cAAA,SAAA,CACEzB,MAAOA,EACP+B,KAAK,SACLY,QAASzB,EACTT,UAAWkB,EACTC,EAAOyB,iBACP,oBACEb,EAAA,CAAA,EAAAA,EAACZ,EAAO0B,QAAStD,IAAUI,KAC7BK,IAGDT,GAb0D,OAuB/E"}
@@ -1,2 +1,2 @@
1
- export{L as LanguageSwitcher}from"./LanguageSwitcher-458e64ff.js";import"tslib";import"classnames";import"react";
1
+ export{L as LanguageSwitcher}from"./LanguageSwitcher-06610aa5.js";import"tslib";import"classnames";import"react";
2
2
  //# sourceMappingURL=LanguageSwitcher.js.map
package/dist/Loader.js CHANGED
@@ -1,2 +1,2 @@
1
- import e from"react";import a from"classnames";var n={"loading-container":"Loader-module_loading-container__92xyp",loadingContainer:"Loader-module_loading-container__92xyp","lds-spinner":"Loader-module_lds-spinner__FEO3n",ldsSpinner:"Loader-module_lds-spinner__FEO3n"},r=function(r){var o=r.isLoading,t=void 0===o||o,i=r.message,d=r.className,s=r.dataQaId,l=r.children;return t?e.createElement("div",{className:a(n["loading-container"],"loading-container",d),"data-qa-id":s},e.createElement("div",{className:a(n["lds-spinner"],"spinner")},Array.from(Array(12)).map((function(a,n){return e.createElement("div",{key:"".concat(n,"-").concat(a),style:{animationDelay:"-".concat(1/12*(12-(n+1)),"s"),transform:"rotate(".concat(30*(n+1),"deg)")}})}))),l||i&&e.createElement("p",{className:a(n["loader-message"],"message")},i)):null};export{r as Loader};
1
+ import e from"classnames";import a from"react";var n={"loading-container":"Loader-module_loading-container__92xyp",loadingContainer:"Loader-module_loading-container__92xyp","lds-spinner":"Loader-module_lds-spinner__FEO3n",ldsSpinner:"Loader-module_lds-spinner__FEO3n"},r=function(r){var o=r.isLoading,t=void 0===o||o,i=r.message,d=r.className,s=r.dataQaId,l=r.children;return t?a.createElement("div",{className:e(n["loading-container"],"loading-container",d),"data-qa-id":s},a.createElement("div",{className:e(n["lds-spinner"],"spinner")},Array.from(Array(12)).map((function(e,n){return a.createElement("div",{key:"".concat(n,"-").concat(e),style:{animationDelay:"-".concat(1/12*(12-(n+1)),"s"),transform:"rotate(".concat(30*(n+1),"deg)")}})}))),l||i&&a.createElement("p",{className:e(n["loader-message"],"message")},i)):null};export{r as Loader};
2
2
  //# sourceMappingURL=Loader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Loader.js","sources":["../src/Loader/Loader.tsx"],"sourcesContent":["import React from 'react';\nimport cn from 'classnames';\nimport { ILoaderProps } from './Loader.types';\nimport styles from './Loader.module.scss';\n\nexport const Loader = ({ isLoading = true, message, className, dataQaId, children }: ILoaderProps) => {\n\n if (!isLoading) return null;\n\n return (<div className={cn(styles['loading-container'], \"loading-container\", className)} data-qa-id={dataQaId}>\n <div className={cn(styles['lds-spinner'], 'spinner')}>\n {Array.from(Array(12)).map((item, index) => (\n <div\n key={`${index}-${item}`}\n style={{\n animationDelay: `-${1 / 12 * (12 - (index + 1))}s`,\n transform: `rotate(${360 / 12 * (index + 1)}deg)`,\n }}\n />\n ))}\n </div>\n {children ? children : message && <p className={cn(styles['loader-message'], 'message')}>{message}</p>}\n </div>);\n};\n"],"names":["Loader","_a","_b","isLoading","message","className","dataQaId","children","React","createElement","cn","styles","Array","from","map","item","index","key","concat","style","animationDelay","transform"],"mappings":"6QAKaA,EAAS,SAACC,GAAE,IAAAC,EAAAD,EAAAE,UAAAA,OAAS,IAAAD,GAAOA,EAAEE,EAAOH,EAAAG,QAAEC,cAAWC,EAAQL,EAAAK,SAAEC,EAAQN,EAAAM,SAE/E,OAAKJ,EAEGK,EAAKC,cAAA,MAAA,CAAAJ,UAAWK,EAAGC,EAAO,qBAAsB,oBAAqBN,gBAAwBC,GACnGE,EAAAC,cAAA,MAAA,CAAKJ,UAAWK,EAAGC,EAAO,eAAgB,YACvCC,MAAMC,KAAKD,MAAM,KAAKE,KAAI,SAACC,EAAMC,GAAU,OAC1CR,uBACES,IAAK,UAAGD,EAAK,KAAAE,OAAIH,GACjBI,MAAO,CACLC,eAAgB,IAAAF,OAAI,EAAI,IAAM,IAAMF,EAAQ,IAAM,KAClDK,UAAW,UAAUH,OAAA,IAAYF,EAAQ,GAAQ,UAGtD,KAEFT,GAAsBH,GAAWI,EAAGC,cAAA,IAAA,CAAAJ,UAAWK,EAAGC,EAAO,kBAAmB,YAAaP,IAdrE,IAgBzB"}
1
+ {"version":3,"file":"Loader.js","sources":["../src/Loader/Loader.tsx"],"sourcesContent":["import cn from 'classnames';\nimport React from 'react';\nimport styles from './Loader.module.scss';\nimport { ILoaderProps } from './Loader.types';\n\nexport const Loader = ({ isLoading = true, message, className, dataQaId, children }: ILoaderProps) => {\n if (!isLoading) return null;\n\n return (\n <div className={cn(styles['loading-container'], 'loading-container', className)} data-qa-id={dataQaId}>\n <div className={cn(styles['lds-spinner'], 'spinner')}>\n {Array.from(Array(12)).map((item, index) => (\n <div\n key={`${index}-${item}`}\n style={{\n animationDelay: `-${(1 / 12) * (12 - (index + 1))}s`,\n transform: `rotate(${(360 / 12) * (index + 1)}deg)`\n }}\n />\n ))}\n </div>\n {children || (message && <p className={cn(styles['loader-message'], 'message')}>{message}</p>)}\n </div>\n );\n};\n"],"names":["Loader","_a","_b","isLoading","message","className","dataQaId","children","React","createElement","cn","styles","Array","from","map","item","index","key","concat","style","animationDelay","transform"],"mappings":"6QAKaA,EAAS,SAACC,GAAE,IAAAC,EAAAD,EAAAE,UAAAA,OAAS,IAAAD,GAAOA,EAAEE,EAAOH,EAAAG,QAAEC,cAAWC,EAAQL,EAAAK,SAAEC,EAAQN,EAAAM,SAC/E,OAAKJ,EAGHK,EAAKC,cAAA,MAAA,CAAAJ,UAAWK,EAAGC,EAAO,qBAAsB,oBAAqBN,gBAAwBC,GAC3FE,EAAAC,cAAA,MAAA,CAAKJ,UAAWK,EAAGC,EAAO,eAAgB,YACvCC,MAAMC,KAAKD,MAAM,KAAKE,KAAI,SAACC,EAAMC,GAAU,OAC1CR,uBACES,IAAK,UAAGD,EAAK,KAAAE,OAAIH,GACjBI,MAAO,CACLC,eAAgB,IAAIF,OAAC,EAAI,IAAO,IAAMF,EAAQ,IAAM,KACpDK,UAAW,UAAAH,OAAU,IAAcF,EAAQ,GAAQ,UAGxD,KAEFT,GAAaH,GAAWI,qBAAGH,UAAWK,EAAGC,EAAO,kBAAmB,YAAaP,IAf9D,IAkBzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"LoadingPrelander.js","sources":["../src/Prelanders/LoadingPrelander/LoadingPrelander.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport LoadingPrelanderProps from './LoadingPrelander.type';\nexport const LoadingPrelander = ({ contentLoaded, title, className, loadingText, dataQaId }: LoadingPrelanderProps) => {\n const [progress, setProgress] = useState(0);\n\n useEffect(() => {\n const intervalId = setInterval(() => {\n setProgress((prevProgress) => {\n const newProgress = prevProgress + 1;\n return newProgress > 100 ? 100 : newProgress;\n });\n }, 24);\n\n // Cleanup on component unmount\n return () => clearInterval(intervalId);\n }, []);\n\n useEffect(() => {\n if (progress >= 50) {\n contentLoaded();\n }\n }, [progress, contentLoaded]);\n\n return (\n <div className={`prelander ${className}`} data-qa-id={dataQaId}>\n <h2>{title}</h2>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n fillRule=\"evenodd\"\n strokeLinejoin=\"round\"\n strokeMiterlimit=\"2\"\n clipRule=\"evenodd\"\n viewBox=\"0 0 286 255\"\n className=\"cog-loader\"\n >\n <g className={`small-cog`}>\n <path\n fill=\"#ff7b00\"\n d=\"M278.717 189.195a57.803 57.803 0 00-6.313 0c.224 4.135-1.151 7.643-4.125 10.525a48.129 48.129 0 00-10.204 2.734c-4.017-1.008-6.962-3.359-8.835-7.053a58.19 58.19 0 00-5.467 3.157c2.262 3.469 2.826 7.194 1.691 11.177a48.147 48.147 0 00-7.47 7.47c-3.983 1.135-7.709.572-11.178-1.691a58.324 58.324 0 00-3.156 5.468c3.693 1.873 6.044 4.818 7.053 8.834a48.124 48.124 0 00-2.735 10.205c-2.881 2.974-6.39 4.349-10.525 4.124a58.327 58.327 0 000 6.314c4.135-.225 7.644 1.15 10.525 4.124a48.131 48.131 0 002.735 10.204c-1.009 4.017-3.36 6.962-7.053 8.835a58.18 58.18 0 003.156 5.467c3.469-2.262 7.195-2.825 11.178-1.691a48.11 48.11 0 007.47 7.471c1.135 3.982.571 7.708-1.691 11.177a58.41 58.41 0 005.467 3.157c1.873-3.694 4.818-6.045 8.835-7.053a48.129 48.129 0 0010.204 2.734c2.974 2.882 4.349 6.39 4.125 10.525 2.103.114 4.21.114 6.313 0-.225-4.135 1.15-7.643 4.124-10.525a48.122 48.122 0 0010.205-2.734c4.016 1.008 6.961 3.359 8.834 7.053a58.426 58.426 0 005.468-3.157c-2.262-3.469-2.826-7.195-1.691-11.177a48.153 48.153 0 007.47-7.471c3.983-1.134 7.709-.571 11.177 1.691a57.97 57.97 0 003.157-5.467c-3.693-1.873-6.044-4.818-7.053-8.835a48.129 48.129 0 002.734-10.204c2.882-2.974 6.39-4.349 10.526-4.124a58.327 58.327 0 000-6.314c-4.136.225-7.644-1.15-10.526-4.124a48.122 48.122 0 00-2.734-10.205c1.009-4.016 3.36-6.961 7.053-8.834a58.112 58.112 0 00-3.157-5.468c-3.468 2.263-7.194 2.826-11.177 1.691a48.19 48.19 0 00-7.47-7.47c-1.135-3.983-.571-7.708 1.691-11.177a58.205 58.205 0 00-5.468-3.157c-1.873 3.694-4.818 6.045-8.834 7.053a48.122 48.122 0 00-10.205-2.734c-2.974-2.882-4.349-6.39-4.124-10.525zm-3.157 33.08c13.813 0 25.028 11.214 25.028 25.027s-11.215 25.027-25.028 25.027c-13.813 0-25.027-11.214-25.027-25.027s11.214-25.027 25.027-25.027z\"\n transform=\"translate(-347.215 -302.076) scale(1.59736)\"\n ></path>\n </g>\n <g className={`big-cog`}>\n <path\n fill=\"#ff7b00\"\n d=\"M277.978 189.159a58.177 58.177 0 00-4.835 0l-3.94 9.852a48.718 48.718 0 00-12.282 3.291l-8.339-6.562a58.542 58.542 0 00-4.186 2.417l1.513 10.503a48.691 48.691 0 00-8.991 8.991l-10.502-1.514a57.81 57.81 0 00-2.417 4.187l6.562 8.338a48.687 48.687 0 00-3.291 12.282l-9.852 3.941a58.153 58.153 0 000 4.834l9.852 3.94a48.664 48.664 0 003.291 12.282l-6.562 8.339a58.026 58.026 0 002.417 4.187l10.502-1.514a48.691 48.691 0 008.991 8.991l-1.513 10.502a58.176 58.176 0 004.186 2.418l8.339-6.562a48.716 48.716 0 0012.282 3.29l3.94 9.853c1.611.067 3.224.067 4.835 0l3.94-9.853a48.727 48.727 0 0012.282-3.29l8.338 6.562a57.98 57.98 0 004.187-2.418l-1.514-10.502a48.691 48.691 0 008.991-8.991l10.503 1.514a58.402 58.402 0 002.417-4.187l-6.562-8.339a48.706 48.706 0 003.291-12.282l9.852-3.94a58.153 58.153 0 000-4.834l-9.852-3.941a48.729 48.729 0 00-3.291-12.282l6.562-8.338a58.184 58.184 0 00-2.417-4.187l-10.503 1.514a48.691 48.691 0 00-8.991-8.991l1.514-10.503a58.344 58.344 0 00-4.187-2.417l-8.338 6.562a48.729 48.729 0 00-12.282-3.291l-3.94-9.852zm-2.418 33.116c13.813 0 25.028 11.214 25.028 25.027s-11.215 25.027-25.028 25.027c-13.813 0-25.027-11.214-25.027-25.027s11.214-25.027 25.027-25.027z\"\n transform=\"translate(-94.71 -94.325) scale(1.14029)\"\n ></path>\n </g>\n </svg>\n <div className={`bar`}>\n <div className={`progress`}></div>\n </div>\n <p>\n {loadingText} <strong>{progress}%</strong>\n </p>\n </div>\n );\n}"],"names":["LoadingPrelander","_a","contentLoaded","title","className","loadingText","dataQaId","_b","__read","useState","progress","setProgress","useEffect","intervalId","setInterval","prevProgress","newProgress","clearInterval","React","createElement","xmlns","fillRule","strokeLinejoin","strokeMiterlimit","clipRule","viewBox","fill","d","transform"],"mappings":"kFAEO,IAAMA,EAAmB,SAACC,GAAE,IAAAC,EAAaD,EAAAC,cAAEC,EAAKF,EAAAE,MAAEC,EAASH,EAAAG,UAAEC,EAAWJ,EAAAI,YAAEC,EAAQL,EAAAK,SACjFC,EAAAC,EAA0BC,EAAS,GAAE,GAApCC,EAAQH,EAAA,GAAEI,OAoBjB,OAlBAC,GAAU,WACR,IAAMC,EAAaC,aAAY,WAC7BH,GAAY,SAACI,GACX,IAAMC,EAAcD,EAAe,EACnC,OAAOC,EAAc,IAAM,IAAMA,CACnC,GACD,GAAE,IAGH,OAAO,WAAM,OAAAC,cAAcJ,EAAW,CACvC,GAAE,IAEHD,GAAU,WACJF,GAAY,IACdR,GAEJ,GAAG,CAACQ,EAAUR,IAGZgB,uBAAKd,UAAW,oBAAaA,gBAAyBE,GACpDY,EAAAC,cAAA,KAAA,KAAKhB,GACLe,EACEC,cAAA,MAAA,CAAAC,MAAM,6BACNC,SAAS,UACTC,eAAe,QACfC,iBAAiB,IACjBC,SAAS,UACTC,QAAQ,cACRrB,UAAU,cAEVc,EAAGC,cAAA,IAAA,CAAAf,UAAW,aACZc,EAAAC,cAAA,OAAA,CACEO,KAAK,UACLC,EAAE,+sDACFC,UAAU,iDAGdV,EAAGC,cAAA,IAAA,CAAAf,UAAW,WACZc,EAAAC,cAAA,OAAA,CACEO,KAAK,UACLC,EAAE,oqCACFC,UAAU,+CAIhBV,EAAKC,cAAA,MAAA,CAAAf,UAAW,OACdc,EAAAC,cAAA,MAAA,CAAKf,UAAW,cAElBc,EAAAC,cAAA,IAAA,KACGd,MAAaa,EAAAC,cAAA,SAAA,KAAST,QAI/B"}
1
+ {"version":3,"file":"LoadingPrelander.js","sources":["../src/Prelanders/LoadingPrelander/LoadingPrelander.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport LoadingPrelanderProps from './LoadingPrelander.type';\n\nexport const LoadingPrelander = ({ contentLoaded, title, className, loadingText, dataQaId }: LoadingPrelanderProps) => {\n const [progress, setProgress] = useState(0);\n\n useEffect(() => {\n const intervalId = setInterval(() => {\n setProgress((prevProgress) => {\n const newProgress = prevProgress + 1;\n return newProgress > 100 ? 100 : newProgress;\n });\n }, 24);\n\n // Cleanup on component unmount\n return () => clearInterval(intervalId);\n }, []);\n\n useEffect(() => {\n if (progress >= 50) {\n contentLoaded();\n }\n }, [progress, contentLoaded]);\n\n return (\n <div className={`prelander ${className}`} data-qa-id={dataQaId}>\n <h2>{title}</h2>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n fillRule=\"evenodd\"\n strokeLinejoin=\"round\"\n strokeMiterlimit=\"2\"\n clipRule=\"evenodd\"\n viewBox=\"0 0 286 255\"\n className=\"cog-loader\"\n >\n <g className=\"small-cog\">\n <path\n fill=\"#ff7b00\"\n d=\"M278.717 189.195a57.803 57.803 0 00-6.313 0c.224 4.135-1.151 7.643-4.125 10.525a48.129 48.129 0 00-10.204 2.734c-4.017-1.008-6.962-3.359-8.835-7.053a58.19 58.19 0 00-5.467 3.157c2.262 3.469 2.826 7.194 1.691 11.177a48.147 48.147 0 00-7.47 7.47c-3.983 1.135-7.709.572-11.178-1.691a58.324 58.324 0 00-3.156 5.468c3.693 1.873 6.044 4.818 7.053 8.834a48.124 48.124 0 00-2.735 10.205c-2.881 2.974-6.39 4.349-10.525 4.124a58.327 58.327 0 000 6.314c4.135-.225 7.644 1.15 10.525 4.124a48.131 48.131 0 002.735 10.204c-1.009 4.017-3.36 6.962-7.053 8.835a58.18 58.18 0 003.156 5.467c3.469-2.262 7.195-2.825 11.178-1.691a48.11 48.11 0 007.47 7.471c1.135 3.982.571 7.708-1.691 11.177a58.41 58.41 0 005.467 3.157c1.873-3.694 4.818-6.045 8.835-7.053a48.129 48.129 0 0010.204 2.734c2.974 2.882 4.349 6.39 4.125 10.525 2.103.114 4.21.114 6.313 0-.225-4.135 1.15-7.643 4.124-10.525a48.122 48.122 0 0010.205-2.734c4.016 1.008 6.961 3.359 8.834 7.053a58.426 58.426 0 005.468-3.157c-2.262-3.469-2.826-7.195-1.691-11.177a48.153 48.153 0 007.47-7.471c3.983-1.134 7.709-.571 11.177 1.691a57.97 57.97 0 003.157-5.467c-3.693-1.873-6.044-4.818-7.053-8.835a48.129 48.129 0 002.734-10.204c2.882-2.974 6.39-4.349 10.526-4.124a58.327 58.327 0 000-6.314c-4.136.225-7.644-1.15-10.526-4.124a48.122 48.122 0 00-2.734-10.205c1.009-4.016 3.36-6.961 7.053-8.834a58.112 58.112 0 00-3.157-5.468c-3.468 2.263-7.194 2.826-11.177 1.691a48.19 48.19 0 00-7.47-7.47c-1.135-3.983-.571-7.708 1.691-11.177a58.205 58.205 0 00-5.468-3.157c-1.873 3.694-4.818 6.045-8.834 7.053a48.122 48.122 0 00-10.205-2.734c-2.974-2.882-4.349-6.39-4.124-10.525zm-3.157 33.08c13.813 0 25.028 11.214 25.028 25.027s-11.215 25.027-25.028 25.027c-13.813 0-25.027-11.214-25.027-25.027s11.214-25.027 25.027-25.027z\"\n transform=\"translate(-347.215 -302.076) scale(1.59736)\"\n />\n </g>\n <g className=\"big-cog\">\n <path\n fill=\"#ff7b00\"\n d=\"M277.978 189.159a58.177 58.177 0 00-4.835 0l-3.94 9.852a48.718 48.718 0 00-12.282 3.291l-8.339-6.562a58.542 58.542 0 00-4.186 2.417l1.513 10.503a48.691 48.691 0 00-8.991 8.991l-10.502-1.514a57.81 57.81 0 00-2.417 4.187l6.562 8.338a48.687 48.687 0 00-3.291 12.282l-9.852 3.941a58.153 58.153 0 000 4.834l9.852 3.94a48.664 48.664 0 003.291 12.282l-6.562 8.339a58.026 58.026 0 002.417 4.187l10.502-1.514a48.691 48.691 0 008.991 8.991l-1.513 10.502a58.176 58.176 0 004.186 2.418l8.339-6.562a48.716 48.716 0 0012.282 3.29l3.94 9.853c1.611.067 3.224.067 4.835 0l3.94-9.853a48.727 48.727 0 0012.282-3.29l8.338 6.562a57.98 57.98 0 004.187-2.418l-1.514-10.502a48.691 48.691 0 008.991-8.991l10.503 1.514a58.402 58.402 0 002.417-4.187l-6.562-8.339a48.706 48.706 0 003.291-12.282l9.852-3.94a58.153 58.153 0 000-4.834l-9.852-3.941a48.729 48.729 0 00-3.291-12.282l6.562-8.338a58.184 58.184 0 00-2.417-4.187l-10.503 1.514a48.691 48.691 0 00-8.991-8.991l1.514-10.503a58.344 58.344 0 00-4.187-2.417l-8.338 6.562a48.729 48.729 0 00-12.282-3.291l-3.94-9.852zm-2.418 33.116c13.813 0 25.028 11.214 25.028 25.027s-11.215 25.027-25.028 25.027c-13.813 0-25.027-11.214-25.027-25.027s11.214-25.027 25.027-25.027z\"\n transform=\"translate(-94.71 -94.325) scale(1.14029)\"\n />\n </g>\n </svg>\n <div className=\"bar\">\n <div className=\"progress\" />\n </div>\n <p>\n {loadingText} <strong>{progress}%</strong>\n </p>\n </div>\n );\n};\n"],"names":["LoadingPrelander","_a","contentLoaded","title","className","loadingText","dataQaId","_b","__read","useState","progress","setProgress","useEffect","intervalId","setInterval","prevProgress","newProgress","clearInterval","React","createElement","xmlns","fillRule","strokeLinejoin","strokeMiterlimit","clipRule","viewBox","fill","d","transform"],"mappings":"kFAGO,IAAMA,EAAmB,SAACC,GAAE,IAAAC,EAAaD,EAAAC,cAAEC,EAAKF,EAAAE,MAAEC,EAASH,EAAAG,UAAEC,EAAWJ,EAAAI,YAAEC,EAAQL,EAAAK,SACjFC,EAAAC,EAA0BC,EAAS,GAAE,GAApCC,EAAQH,EAAA,GAAEI,OAoBjB,OAlBAC,GAAU,WACR,IAAMC,EAAaC,aAAY,WAC7BH,GAAY,SAACI,GACX,IAAMC,EAAcD,EAAe,EACnC,OAAOC,EAAc,IAAM,IAAMA,CACnC,GACD,GAAE,IAGH,OAAO,WAAM,OAAAC,cAAcJ,EAAW,CACvC,GAAE,IAEHD,GAAU,WACJF,GAAY,IACdR,GAEJ,GAAG,CAACQ,EAAUR,IAGZgB,uBAAKd,UAAW,oBAAaA,gBAAyBE,GACpDY,EAAAC,cAAA,KAAA,KAAKhB,GACLe,EACEC,cAAA,MAAA,CAAAC,MAAM,6BACNC,SAAS,UACTC,eAAe,QACfC,iBAAiB,IACjBC,SAAS,UACTC,QAAQ,cACRrB,UAAU,cAEVc,EAAGC,cAAA,IAAA,CAAAf,UAAU,aACXc,EAAAC,cAAA,OAAA,CACEO,KAAK,UACLC,EAAE,+sDACFC,UAAU,iDAGdV,EAAGC,cAAA,IAAA,CAAAf,UAAU,WACXc,EAAAC,cAAA,OAAA,CACEO,KAAK,UACLC,EAAE,oqCACFC,UAAU,+CAIhBV,EAAKC,cAAA,MAAA,CAAAf,UAAU,OACbc,EAAAC,cAAA,MAAA,CAAKf,UAAU,cAEjBc,EAAAC,cAAA,IAAA,KACGd,MAAaa,EAAAC,cAAA,SAAA,KAAST,QAI/B"}
@@ -1,2 +1,2 @@
1
1
  import{__rest as o,__assign as t}from"tslib";import*as e from"react";var a=function(o,t){return"undefined"!=typeof navigator&&(/iPhone/i.test(navigator.userAgent)||/Mac OS/i.test(navigator.userAgent))?t?"sms:/open?addresses=".concat(o.shortcode,"&body=").concat(o.keyword):"sms:".concat(o.shortcode,"&body=").concat(o.keyword):["com.facebook.orca","com.facebook.katana","com.instagram.android"].some((function(o){return new RegExp(o,"ig").test(window.pac_analytics.visitor["x-requested-with"])}))?"/mo-redirect-util/".concat(o.shortcode,"/").concat(o.keyword):window.pac_analytics.visitor["x-requested-with"]&&null!==window.pac_analytics.visitor["x-requested-with"]&&-1!==window.pac_analytics.visitor["x-requested-with"].indexOf("com.facebook")?"sms://".concat(o.shortcode,"?body=").concat(o.keyword):"sms:".concat(o.shortcode,"?body=").concat(o.keyword)},c=function(c){var r=c.keywordAndShortcode,n=c.className,d=c.dataQaId,s=void 0===d?"mo-link":d,i=c.children,m=o(c,["keywordAndShortcode","className","dataQaId","children"]);return e.createElement("a",t({href:a(r),className:n,"data-qa-id":s},m),i)};export{c as M,a as f};
2
- //# sourceMappingURL=MOLink-01fd128f.js.map
2
+ //# sourceMappingURL=MOLink-159f2464.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MOLink-01fd128f.js","sources":["../src/MOLink/MOLink.tsx"],"sourcesContent":["import * as React from 'react';\nimport { IKeywordShortcode, MOLinkProps } from './MOLink.types';\n\nexport const formatSMSLink = (keywordAndShortcode: IKeywordShortcode, useOpenAddresses?: boolean): string => {\n if (\n typeof navigator !== 'undefined' &&\n (/iPhone/i.test(navigator.userAgent) || /Mac OS/i.test(navigator.userAgent))\n ) {\n // iOS\n return useOpenAddresses\n ? `sms:/open?addresses=${keywordAndShortcode.shortcode}&body=${keywordAndShortcode.keyword}`\n : `sms:${keywordAndShortcode.shortcode}&body=${keywordAndShortcode.keyword}`;\n }\n if (\n ['com.facebook.orca', 'com.facebook.katana', 'com.instagram.android'].some((x) =>\n new RegExp(x, 'ig').test(window.pac_analytics.visitor['x-requested-with'])\n )\n ) {\n // FB Browser (requested by Berkay in GR)\n return `/mo-redirect-util/${keywordAndShortcode.shortcode}/${keywordAndShortcode.keyword}`;\n }\n if (\n !!window.pac_analytics.visitor['x-requested-with'] &&\n window.pac_analytics.visitor['x-requested-with'] !== null &&\n window.pac_analytics.visitor['x-requested-with'].indexOf('com.facebook') !== -1\n ) {\n // Old FB\n return `sms://${keywordAndShortcode.shortcode}?body=${keywordAndShortcode.keyword}`;\n }\n // Everything else\n return `sms:${keywordAndShortcode.shortcode}?body=${keywordAndShortcode.keyword}`;\n};\n\nexport const MOLink: React.ComponentType<MOLinkProps> = ({\n keywordAndShortcode,\n className,\n dataQaId = 'mo-link',\n children,\n ...props\n}) => (\n // eslint-disable-next-line react/jsx-props-no-spreading\n <a href={formatSMSLink(keywordAndShortcode)} className={className} data-qa-id={dataQaId} {...props}>\n {children}\n </a>\n);\n"],"names":["formatSMSLink","keywordAndShortcode","useOpenAddresses","navigator","test","userAgent","shortcode","concat","keyword","some","x","RegExp","window","pac_analytics","visitor","indexOf","MOLink","_a","className","_b","dataQaId","children","props","__rest","React","createElement","__assign","href"],"mappings":"qEAGa,IAAAA,EAAgB,SAACC,EAAwCC,GACpE,MACuB,oBAAdC,YACN,UAAUC,KAAKD,UAAUE,YAAc,UAAUD,KAAKD,UAAUE,YAG1DH,EACH,8BAAuBD,EAAoBK,UAAkB,UAAAC,OAAAN,EAAoBO,SACjF,OAAOD,OAAAN,EAAoBK,2BAAkBL,EAAoBO,SAGrE,CAAC,oBAAqB,sBAAuB,yBAAyBC,MAAK,SAACC,GAC1E,OAAA,IAAIC,OAAOD,EAAG,MAAMN,KAAKQ,OAAOC,cAAcC,QAAQ,oBAAtD,IAIK,qBAAAP,OAAqBN,EAAoBK,sBAAaL,EAAoBO,SAG/EI,OAAOC,cAAcC,QAAQ,qBACsB,OAArDF,OAAOC,cAAcC,QAAQ,sBACiD,IAA9EF,OAAOC,cAAcC,QAAQ,oBAAoBC,QAAQ,gBAGlD,SAAAR,OAASN,EAAoBK,2BAAkBL,EAAoBO,SAGrE,OAAAD,OAAON,EAAoBK,2BAAkBL,EAAoBO,QAC1E,EAEaQ,EAA2C,SAACC,GACvD,IAAAhB,EAAmBgB,EAAAhB,oBACnBiB,EAASD,EAAAC,UACTC,aAAAC,aAAW,UAASD,EACpBE,EAAQJ,EAAAI,SACLC,EAAKC,EAAAN,EAL+C,2DAMnD,OAEJO,EAAAC,cAAA,IAAAC,EAAA,CAAGC,KAAM3B,EAAcC,GAAsBiB,UAAWA,EAAS,aAAcE,GAAcE,GAC1FD"}
1
+ {"version":3,"file":"MOLink-159f2464.js","sources":["../src/MOLink/MOLink.tsx"],"sourcesContent":["import * as React from 'react';\nimport { IKeywordShortcode, MOLinkProps } from './MOLink.types';\n\nexport const formatSMSLink = (keywordAndShortcode: IKeywordShortcode, useOpenAddresses?: boolean): string => {\n if (\n typeof navigator !== 'undefined' &&\n (/iPhone/i.test(navigator.userAgent) || /Mac OS/i.test(navigator.userAgent))\n ) {\n // iOS\n return useOpenAddresses\n ? `sms:/open?addresses=${keywordAndShortcode.shortcode}&body=${keywordAndShortcode.keyword}`\n : `sms:${keywordAndShortcode.shortcode}&body=${keywordAndShortcode.keyword}`;\n }\n if (\n ['com.facebook.orca', 'com.facebook.katana', 'com.instagram.android'].some((x) =>\n new RegExp(x, 'ig').test(window.pac_analytics.visitor['x-requested-with'])\n )\n ) {\n // FB Browser (requested by Berkay in GR)\n return `/mo-redirect-util/${keywordAndShortcode.shortcode}/${keywordAndShortcode.keyword}`;\n }\n if (\n !!window.pac_analytics.visitor['x-requested-with'] &&\n window.pac_analytics.visitor['x-requested-with'] !== null &&\n window.pac_analytics.visitor['x-requested-with'].indexOf('com.facebook') !== -1\n ) {\n // Old FB\n return `sms://${keywordAndShortcode.shortcode}?body=${keywordAndShortcode.keyword}`;\n }\n // Everything else\n return `sms:${keywordAndShortcode.shortcode}?body=${keywordAndShortcode.keyword}`;\n};\n\nexport const MOLink: React.ComponentType<MOLinkProps> = ({\n keywordAndShortcode,\n className,\n dataQaId = 'mo-link',\n children,\n ...props\n}) => (\n // eslint-disable-next-line react/jsx-props-no-spreading\n <a href={formatSMSLink(keywordAndShortcode)} className={className} data-qa-id={dataQaId} {...props}>\n {children}\n </a>\n);\n"],"names":["formatSMSLink","keywordAndShortcode","useOpenAddresses","navigator","test","userAgent","shortcode","concat","keyword","some","x","RegExp","window","pac_analytics","visitor","indexOf","MOLink","_a","className","_b","dataQaId","children","props","__rest","React","createElement","__assign","href"],"mappings":"qEAGa,IAAAA,EAAgB,SAACC,EAAwCC,GACpE,MACuB,oBAAdC,YACN,UAAUC,KAAKD,UAAUE,YAAc,UAAUD,KAAKD,UAAUE,YAG1DH,EACH,8BAAuBD,EAAoBK,UAAkB,UAAAC,OAAAN,EAAoBO,SACjF,OAAOD,OAAAN,EAAoBK,2BAAkBL,EAAoBO,SAGrE,CAAC,oBAAqB,sBAAuB,yBAAyBC,MAAK,SAACC,GAC1E,OAAA,IAAIC,OAAOD,EAAG,MAAMN,KAAKQ,OAAOC,cAAcC,QAAQ,oBAAtD,IAIK,qBAAAP,OAAqBN,EAAoBK,sBAAaL,EAAoBO,SAG/EI,OAAOC,cAAcC,QAAQ,qBACsB,OAArDF,OAAOC,cAAcC,QAAQ,sBACiD,IAA9EF,OAAOC,cAAcC,QAAQ,oBAAoBC,QAAQ,gBAGlD,SAAAR,OAASN,EAAoBK,2BAAkBL,EAAoBO,SAGrE,OAAAD,OAAON,EAAoBK,2BAAkBL,EAAoBO,QAC1E,EAEaQ,EAA2C,SAACC,GACvD,IAAAhB,EAAmBgB,EAAAhB,oBACnBiB,EAASD,EAAAC,UACTC,aAAAC,aAAW,UAASD,EACpBE,EAAQJ,EAAAI,SACLC,EAAKC,EAAAN,EAL+C,2DAMnD,OAEJO,EAAAC,cAAA,IAAAC,EAAA,CAAGC,KAAM3B,EAAcC,GAAsBiB,UAAWA,EAAS,aAAcE,GAAcE,GAC1FD"}
package/dist/MOLink.js CHANGED
@@ -1,2 +1,2 @@
1
- export{M as MOLink}from"./MOLink-0b126ea3.js";import"tslib";import"react";
1
+ export{M as MOLink}from"./MOLink-159f2464.js";import"tslib";import"react";
2
2
  //# sourceMappingURL=MOLink.js.map
@@ -1,2 +1,2 @@
1
- import{__read as e}from"tslib";import n from"classnames";import _,{useState as m}from"react";import{l as t,r as u}from"./routes-08e0cd9f.js";var l="Menu-module_menu__-1EdZ",a="Menu-module_menu__button__81SFo",o="Menu-module_menu__item__HiaJ9",c="Menu-module_menu__icon__5eQF7",i="Menu-module_menu__icon_hamburger__TcIuU",r="Menu-module_menu__icon_active__Nt5aS",s="Menu-module_menu__list__2RJNB",d="Menu-module_menu__list_open__ylNek",v="Menu-module_menu__list_closed__6SpmJ",M="Menu-module_menu__logo__cYLVU",E="Menu-module_menuOverlay__tS5Ft",p="Menu-module_menuOverlay_open__TcdJR",N="Menu-module_menuOverlay_closed__ABmM3",f=function(f){var b,g,y,O=f.locale,k=f.className,F=void 0===k?"":k;f.labels,f.isOpen,f.setIsOpen;var J=f.dataQaId,S=void 0===J?"qa-menu":J,h=f.logoUrl,q=e(m(!1),2),C=q[0],I=q[1],U=null==t?void 0:t[O],j=function(){I(!C)};return _.createElement(_.Fragment,null,_.createElement("div",{className:n(E,"menuOverlay",(b={},b[p]=C,b[N]=!C,b),F),"data-qa-id":S,onClick:j}),_.createElement("div",{className:n(l,"menu",F),"data-qa-id":S},_.createElement("button",{className:n(a,"menu__button","menu__button_".concat(C?"active":"inactive")),type:"button",onClick:j},_.createElement("div",{className:n(c,"menu__icon",(g={},g["".concat(r," menu__icon_active")]=C,g))},_.createElement("div",{className:n(i,"menu__icon_hamburger")}))),_.createElement("div",{className:n(s,"menu__list",(y={},y[d]=C,y[v]=!C,y)),onClick:j},_.createElement("div",{className:n(M,"menu__logo")},_.createElement("img",{src:h,alt:"logo"})),_.createElement("ul",null,Object.keys(U.Menu).filter((function(e){var n;return null===(n=null==t?void 0:t[O])||void 0===n?void 0:n.Menu[e]})).map((function(e,m){return _.createElement("li",{key:m,className:n(o,"menu__item")},_.createElement("a",{href:"/".concat(O).concat(u[e])},U.Menu[e]))}))))))};export{f as M};
2
- //# sourceMappingURL=Menu-d852d192.js.map
1
+ import{__read as e}from"tslib";import n from"classnames";import _,{useState as m}from"react";import{l as t,r as u}from"./routes-874a6ef7.js";var l="Menu-module_menu__-1EdZ",a="Menu-module_menu__button__81SFo",o="Menu-module_menu__item__HiaJ9",c="Menu-module_menu__icon__5eQF7",i="Menu-module_menu__icon_hamburger__TcIuU",r="Menu-module_menu__icon_active__Nt5aS",s="Menu-module_menu__list__2RJNB",d="Menu-module_menu__list_open__ylNek",v="Menu-module_menu__list_closed__6SpmJ",M="Menu-module_menu__logo__cYLVU",E="Menu-module_menuOverlay__tS5Ft",p="Menu-module_menuOverlay_open__TcdJR",N="Menu-module_menuOverlay_closed__ABmM3",f=function(f){var b,g,y,O=f.locale,k=f.className,F=void 0===k?"":k;f.labels,f.isOpen,f.setIsOpen;var J=f.dataQaId,S=void 0===J?"qa-menu":J,h=f.logoUrl,q=e(m(!1),2),C=q[0],I=q[1],U=null==t?void 0:t[O],j=function(){I(!C)};return _.createElement(_.Fragment,null,_.createElement("div",{className:n(E,"menuOverlay",(b={},b[p]=C,b[N]=!C,b),F),"data-qa-id":S,onClick:j}),_.createElement("div",{className:n(l,"menu",F),"data-qa-id":S},_.createElement("button",{className:n(a,"menu__button","menu__button_".concat(C?"active":"inactive")),type:"button",onClick:j},_.createElement("div",{className:n(c,"menu__icon",(g={},g["".concat(r," menu__icon_active")]=C,g))},_.createElement("div",{className:n(i,"menu__icon_hamburger")}))),_.createElement("div",{className:n(s,"menu__list",(y={},y[d]=C,y[v]=!C,y)),onClick:j},_.createElement("div",{className:n(M,"menu__logo")},_.createElement("img",{src:h,alt:"logo"})),_.createElement("ul",null,Object.keys(U.Menu).filter((function(e){var n;return null===(n=null==t?void 0:t[O])||void 0===n?void 0:n.Menu[e]})).map((function(e,m){return _.createElement("li",{key:m,className:n(o,"menu__item")},_.createElement("a",{href:"/".concat(O).concat(u[e])},U.Menu[e]))}))))))};export{f as M};
2
+ //# sourceMappingURL=Menu-1f312006.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Menu-1f312006.js","sources":["../src/Menu/Menu.tsx"],"sourcesContent":["import cn from 'classnames';\nimport React, { useState } from 'react';\nimport lng from '../utilities/navigation/locale';\nimport { routes } from '../utilities/navigation/routes';\nimport styles from './Menu.module.scss';\nimport { InterfaceFeatures } from './Menu.types';\n\nexport const Menu = ({\n locale,\n className = '',\n labels,\n isOpen,\n setIsOpen,\n dataQaId = 'qa-menu',\n logoUrl\n}: InterfaceFeatures) => {\n const [isMenuOpen, setIsMenuOpen] = useState(false);\n const localeData = lng?.[locale as keyof typeof lng];\n const handleMenuClick = () => {\n setIsMenuOpen(!isMenuOpen);\n };\n\n return (\n <>\n <div\n className={cn(\n styles.menuOverlay,\n 'menuOverlay',\n { [styles.menuOverlay_open]: isMenuOpen, [styles.menuOverlay_closed]: !isMenuOpen },\n className\n )}\n data-qa-id={dataQaId}\n onClick={handleMenuClick}\n />\n <div className={cn(styles.menu, 'menu', className)} data-qa-id={dataQaId}>\n <button\n className={cn(styles.menu__button, 'menu__button', `menu__button_${isMenuOpen ? 'active' : 'inactive'}`)}\n type=\"button\"\n onClick={handleMenuClick}\n >\n <div\n className={cn(styles.menu__icon, 'menu__icon', {\n [`${styles.menu__icon_active} menu__icon_active`]: isMenuOpen\n })}\n >\n <div className={cn(styles.menu__icon_hamburger, 'menu__icon_hamburger')} />\n </div>\n </button>\n <div\n className={cn(styles.menu__list, 'menu__list', {\n [styles.menu__list_open]: isMenuOpen,\n [styles.menu__list_closed]: !isMenuOpen\n })}\n onClick={handleMenuClick}\n >\n <div className={cn(styles.menu__logo, 'menu__logo')}>\n <img src={logoUrl} alt=\"logo\" />\n </div>\n\n <ul>\n {Object.keys(localeData.Menu)\n .filter((key) => lng?.[locale as keyof typeof lng]?.Menu[key as keyof typeof localeData.Menu])\n .map((key, index) => (\n <li key={index} className={cn(styles.menu__item, 'menu__item')}>\n <a href={`/${locale}${routes[key as keyof typeof routes]}`}>\n {localeData.Menu[key as keyof typeof localeData.Menu]}\n </a>\n </li>\n ))}\n </ul>\n </div>\n </div>\n </>\n );\n};\n"],"names":["Menu","_a","locale","_e","className","labels","setIsOpen","_f","dataQaId","logoUrl","_g","__read","useState","isMenuOpen","setIsMenuOpen","localeData","lng","handleMenuClick","React","createElement","Fragment","cn","styles","_b","onClick","concat","type","_c","_d","src","alt","Object","keys","filter","key","map","index","href","routes"],"mappings":"mnBAOaA,EAAO,SAACC,aACnBC,EAAMD,EAAAC,OACNC,EAAAF,EAAAG,UAAAA,OAAY,IAAAD,EAAA,GAAEA,EACRF,EAAAI,gBAEGJ,EAAAK,UAAA,IACTC,EAAoBN,EAAAO,SAApBA,OAAQ,IAAAD,EAAG,UAASA,EACpBE,EAAOR,EAAAQ,QAEDC,EAAAC,EAA8BC,GAAS,GAAM,GAA5CC,EAAUH,EAAA,GAAEI,OACbC,EAAaC,eAAAA,EAAMd,GACnBe,EAAkB,WACtBH,GAAeD,EACjB,EAEA,OACEK,EAAAC,cAAAD,EAAAE,SAAA,KACEF,EAAAC,cAAA,MAAA,CACEf,UAAWiB,EACTC,EACA,eACEC,EAAA,GAAAA,EAACD,GAA0BT,EAAYU,EAACD,IAA6BT,EAAUU,GACjFnB,gBAEUI,EACZgB,QAASP,IAEXC,EAAAC,cAAA,MAAA,CAAKf,UAAWiB,EAAGC,EAAa,OAAQlB,gBAAwBI,GAC9DU,EAAAC,cAAA,SAAA,CACEf,UAAWiB,EAAGC,EAAqB,eAAgB,gBAAgBG,OAAAZ,EAAa,SAAW,aAC3Fa,KAAK,SACLF,QAASP,GAETC,EACEC,cAAA,MAAA,CAAAf,UAAWiB,EAAGC,EAAmB,cAAYK,EAAA,CAAA,EAC3CA,EAAC,UAAGL,EAAwB,uBAAuBT,EACnDc,KAEFT,EAAAC,cAAA,MAAA,CAAKf,UAAWiB,EAAGC,EAA6B,4BAGpDJ,EACEC,cAAA,MAAA,CAAAf,UAAWiB,EAAGC,EAAmB,cAAYM,EAAA,CAAA,EAC3CA,EAACN,GAAyBT,EAC1Be,EAACN,IAA4BT,MAE/BW,QAASP,GAETC,EAAKC,cAAA,MAAA,CAAAf,UAAWiB,EAAGC,EAAmB,eACpCJ,EAAKC,cAAA,MAAA,CAAAU,IAAKpB,EAASqB,IAAI,UAGzBZ,EAAAC,cAAA,KAAA,KACGY,OAAOC,KAAKjB,EAAWf,MACrBiC,QAAO,SAACC,GAAG,IAAAjC,EAAK,OAAmC,QAAnCA,EAAAe,aAAG,EAAHA,EAAMd,UAA6B,IAAAD,OAAA,EAAAA,EAAAD,KAAKkC,EAAoC,IAC5FC,KAAI,SAACD,EAAKE,GAAU,OACnBlB,EAAAC,cAAA,KAAA,CAAIe,IAAKE,EAAOhC,UAAWiB,EAAGC,EAAmB,eAC/CJ,EAAAC,cAAA,IAAA,CAAGkB,KAAM,IAAIZ,OAAAvB,GAASuB,OAAAa,EAAOJ,KAC1BnB,EAAWf,KAAKkC,IAGtB,OAMf"}
package/dist/Menu.js CHANGED
@@ -1,2 +1,2 @@
1
- export{M as Menu}from"./Menu-095658ac.js";import"tslib";import"classnames";import"react";import"./routes-9a5171dc.js";
1
+ export{M as Menu}from"./Menu-1f312006.js";import"tslib";import"classnames";import"react";import"./routes-874a6ef7.js";
2
2
  //# sourceMappingURL=Menu.js.map
@@ -1,2 +1,2 @@
1
- import o from"react";import{F as e}from"./Features-3e15bfc9.js";import{F as i}from"./Footer-1555474c.js";import{P as l}from"./PricingPolicy-452a1353.js";import{R as n}from"./RefundPolicy-9cd6063e.js";import{S as t}from"./Showcase-acb95378.js";import{T as c}from"./Testimonials-79044075.js";import{U as a}from"./Unsubscription-110906d6.js";import{C as r}from"./CookieConsent-8c647631.js";import"classnames";import"./Intl-c2b353e7.js";import"tslib";import"./routes-9a5171dc.js";var s=function(s){var m,d,u,v,p,w,f=s.pageConfigs,h=s.locale,C=s.priceUnit,g=s.priceValue,S=s.logoUrl,E=s.tracker,U=s.onConsentUpdate;return o.createElement("div",{className:"page-content",onClick:function(){}},o.createElement("div",{className:"scroll-up",onClick:function(){window.scrollTo({top:0,behavior:"smooth"}),null==E||E.customEvent("image-cards","click","scroll-to-top")}},(null==f?void 0:f.isShowWhyChooseUs)&&o.createElement(e,{type:null==f?void 0:f.contentCategory,locale:h,tracker:E,domain:(null===(m=null===window||void 0===window?void 0:window.location)||void 0===m?void 0:m.origin)||"",headline:""}),(null==f?void 0:f.isShowShowCase)&&o.createElement(t,{tracker:E,locale:h,type:null==f?void 0:f.contentCategory,domain:(null===(d=null===window||void 0===window?void 0:window.location)||void 0===d?void 0:d.origin)||""}),(null==f?void 0:f.isShowPricingTable)&&o.createElement(l,{hideSections:!0,priceUnit:C,priceValue:g,locale:h}),(null==f?void 0:f.isShowRefundPolicy)&&o.createElement(n,{locale:h,serviceName:null==f?void 0:f.serviceName}),(null==f?void 0:f.isShowUnsubscription)&&o.createElement(a,{locale:h}),(null==f?void 0:f.isShowTestimonials)&&o.createElement(c,{locale:h})),(null==f?void 0:f.isShowAboutUs)&&o.createElement(i,{locale:h,mccName:null===(u=null==f?void 0:f.mccInformation)||void 0===u?void 0:u.mcc,address:null===(v=null==f?void 0:f.mccInformation)||void 0===v?void 0:v.address,email:null===(p=null==f?void 0:f.mccInformation)||void 0===p?void 0:p.mcc_email,phone:null===(w=null==f?void 0:f.mccInformation)||void 0===w?void 0:w.mcc_phone_number,logoUrl:S,className:"footer"}),(null==f?void 0:f.isShowCookieConsent)&&o.createElement(r,{onUpdate:function(o){U&&U(o)},locale:h}))};export{s as PageContent};
1
+ import o from"react";import{C as e}from"./CookieConsent-5ab9a20d.js";import{F as i}from"./Features-5bfe96f5.js";import{F as l}from"./Footer-8a64feaf.js";import{P as n}from"./PricingPolicy-f4d7c9e2.js";import{R as a}from"./RefundPolicy-6e9e4be5.js";import{S as t}from"./Showcase-98769aa9.js";import{T as c}from"./Testimonials-c30c888a.js";import{U as r}from"./Unsubscription-3a7ed665.js";import"tslib";import"classnames";import"./Intl-69a131e2.js";import"./routes-874a6ef7.js";var s=function(s){var m,d,u,v,p,f,w=s.pageConfigs,h=s.locale,C=s.priceUnit,g=s.priceValue,S=s.logoUrl,E=s.tracker,U=s.onConsentUpdate;return o.createElement("div",{className:"page-content",onClick:function(){}},o.createElement("div",{className:"scroll-up",onClick:function(){window.scrollTo({top:0,behavior:"smooth"}),null==E||E.customEvent("image-cards","click","scroll-to-top")}},(null==w?void 0:w.isShowWhyChooseUs)&&o.createElement(i,{type:null==w?void 0:w.contentCategory,locale:h,tracker:E,domain:(null===(m=null===window||void 0===window?void 0:window.location)||void 0===m?void 0:m.origin)||"",headline:""}),(null==w?void 0:w.isShowShowCase)&&o.createElement(t,{tracker:E,locale:h,type:null==w?void 0:w.contentCategory,domain:(null===(d=null===window||void 0===window?void 0:window.location)||void 0===d?void 0:d.origin)||""}),(null==w?void 0:w.isShowPricingTable)&&o.createElement(n,{hideSections:!0,priceUnit:C,priceValue:g,locale:h}),(null==w?void 0:w.isShowRefundPolicy)&&o.createElement(a,{locale:h,serviceName:null==w?void 0:w.serviceName}),(null==w?void 0:w.isShowUnsubscription)&&o.createElement(r,{locale:h}),(null==w?void 0:w.isShowTestimonials)&&o.createElement(c,{locale:h})),(null==w?void 0:w.isShowAboutUs)&&o.createElement(l,{locale:h,mccName:null===(u=null==w?void 0:w.mccInformation)||void 0===u?void 0:u.mcc,address:null===(v=null==w?void 0:w.mccInformation)||void 0===v?void 0:v.address,email:null===(p=null==w?void 0:w.mccInformation)||void 0===p?void 0:p.mcc_email,phone:null===(f=null==w?void 0:w.mccInformation)||void 0===f?void 0:f.mcc_phone_number,logoUrl:S,className:"footer"}),(null==w?void 0:w.isShowCookieConsent)&&o.createElement(e,{tracker:E,onUpdate:function(o){U&&U(o)},locale:h}))};export{s as PageContent};
2
2
  //# sourceMappingURL=PageContent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PageContent.js","sources":["../src/PageContent/PageContent.tsx"],"sourcesContent":["\n\nimport React from 'react';\nimport { Features } from '../Features/Features';\nimport { Footer } from '../Footer/Footer';\nimport { PricingPolicy } from '../PricingPolicy/PricingPolicy';\nimport { RefundPolicy } from '../RefundPolicy/RefundPolicy';\nimport { Showcase } from '../Showcase/Showcase';\nimport { Testimonials } from '../Testimonials/Testimonials';\nimport { Unsubscription } from '../Unsubscription/Unsubscription';\nimport { InterfaceFeatures } from './PageContent.types';\nimport { CookieConsent } from '../CookieConsent/CookieConsent';\n\nexport const PageContent = ({ pageConfigs, locale, priceUnit, priceValue, logoUrl, tracker, onConsentUpdate }: InterfaceFeatures) => {\n\n\n const scrollToTop = () => {\n // window.scrollTo({ top: 0, behavior: \"smooth\" });\n };\n\n return (\n <div className=\"page-content\" onClick={() => scrollToTop()}>\n <div\n className=\"scroll-up\"\n onClick={() => {\n window.scrollTo({ top: 0, behavior: \"smooth\" });\n tracker?.customEvent(\"image-cards\", \"click\", \"scroll-to-top\");\n }}\n >\n {pageConfigs?.isShowWhyChooseUs && (\n <Features\n type={pageConfigs?.contentCategory}\n locale={locale}\n tracker={tracker}\n domain={window?.location?.origin || \"\"}\n headline={''}\n />\n )}\n\n {pageConfigs?.isShowShowCase && (\n <Showcase\n tracker={tracker}\n locale={locale}\n type={pageConfigs?.contentCategory}\n domain={window?.location?.origin || \"\"}\n />\n )}\n\n {pageConfigs?.isShowPricingTable && (\n <PricingPolicy hideSections priceUnit={priceUnit} priceValue={priceValue} locale={locale} />\n )}\n\n {pageConfigs?.isShowRefundPolicy && (\n <RefundPolicy\n locale={locale}\n serviceName={pageConfigs?.serviceName}\n />\n )}\n\n {pageConfigs?.isShowUnsubscription && (\n <Unsubscription locale={locale} />\n )} \n\n {pageConfigs?.isShowTestimonials && (\n <Testimonials locale={locale} />\n )}\n </div>\n\n {pageConfigs?.isShowAboutUs && (\n <Footer\n locale={locale}\n mccName={pageConfigs?.mccInformation?.mcc}\n address={pageConfigs?.mccInformation?.address}\n email={pageConfigs?.mccInformation?.mcc_email}\n phone={pageConfigs?.mccInformation?.mcc_phone_number}\n logoUrl={logoUrl}\n className=\"footer\"\n />\n )}\n\n {pageConfigs?.isShowCookieConsent && (\n <CookieConsent onUpdate={(consent) => {\n onConsentUpdate && onConsentUpdate(consent);\n }} locale={locale} />\n )}\n </div>\n )\n}\n"],"names":["PageContent","_a","pageConfigs","locale","priceUnit","priceValue","logoUrl","tracker","onConsentUpdate","React","createElement","className","onClick","window","scrollTo","top","behavior","customEvent","isShowWhyChooseUs","Features","type","contentCategory","domain","_b","location","origin","headline","isShowShowCase","Showcase","_c","isShowPricingTable","PricingPolicy","hideSections","isShowRefundPolicy","RefundPolicy","serviceName","isShowUnsubscription","Unsubscription","isShowTestimonials","Testimonials","isShowAboutUs","Footer","mccName","_d","mccInformation","mcc","address","_e","email","_f","mcc_email","phone","_g","mcc_phone_number","isShowCookieConsent","CookieConsent","onUpdate","consent"],"mappings":"4dAaO,IAAMA,EAAc,SAACC,mBAAEC,gBAAaC,WAAQC,cAAWC,EAAUJ,EAAAI,WAAEC,EAAOL,EAAAK,QAAEC,EAAON,EAAAM,QAAEC,EAAeP,EAAAO,gBAOvG,OACIC,EAAAC,cAAA,MAAA,CAAKC,UAAU,eAAeC,QAAS,cACpCH,EAAAC,cAAA,MAAA,CACKC,UAAU,YACVC,QAAS,WACLC,OAAOC,SAAS,CAAEC,IAAK,EAAGC,SAAU,WACpCT,SAAAA,EAASU,YAAY,cAAe,QAAS,oBAGhDf,aAAW,EAAXA,EAAagB,oBACVT,EAACC,cAAAS,GACGC,KAAMlB,aAAW,EAAXA,EAAamB,gBACnBlB,OAAQA,EACRI,QAASA,EACTe,QAA0B,QAAlBC,EAAM,OAANV,aAAM,IAANA,YAAM,EAANA,OAAQW,gBAAU,IAAAD,OAAA,EAAAA,EAAAE,SAAU,GACpCC,SAAU,MAIjBxB,aAAW,EAAXA,EAAayB,iBACVlB,EAAAC,cAACkB,EACG,CAAArB,QAASA,EACTJ,OAAQA,EACRiB,KAAMlB,aAAW,EAAXA,EAAamB,gBACnBC,gBAAQO,SAAAhB,aAAM,IAANA,YAAM,EAANA,OAAQW,+BAAUC,SAAU,MAI3CvB,aAAA,EAAAA,EAAa4B,qBACVrB,EAACC,cAAAqB,EAAc,CAAAC,gBAAa5B,UAAWA,EAAWC,WAAYA,EAAYF,OAAQA,KAGrFD,aAAA,EAAAA,EAAa+B,qBACVxB,EAACC,cAAAwB,EACG,CAAA/B,OAAQA,EACRgC,YAAajC,aAAW,EAAXA,EAAaiC,eAIjCjC,aAAA,EAAAA,EAAakC,uBACV3B,EAAAC,cAAC2B,EAAe,CAAAlC,OAAQA,KAG3BD,aAAA,EAAAA,EAAaoC,qBACV7B,EAAAC,cAAC6B,EAAa,CAAApC,OAAQA,MAI7BD,aAAA,EAAAA,EAAasC,gBACV/B,EAAAC,cAAC+B,EACG,CAAAtC,OAAQA,EACRuC,QAAsC,QAA7BC,EAAAzC,aAAW,EAAXA,EAAa0C,sBAAgB,IAAAD,OAAA,EAAAA,EAAAE,IACtCC,QAAoC,QAA3BC,EAAA7C,eAAAA,EAAa0C,sBAAc,IAAAG,OAAA,EAAAA,EAAED,QACtCE,MAAkC,QAA3BC,EAAA/C,aAAA,EAAAA,EAAa0C,sBAAc,IAAAK,OAAA,EAAAA,EAAEC,UACpCC,cAAOC,EAAAlD,aAAA,EAAAA,EAAa0C,qCAAgBS,iBACpC/C,QAASA,EACTK,UAAU,YAIjBT,aAAW,EAAXA,EAAaoD,sBACV7C,gBAAC8C,EAAa,CAACC,SAAU,SAACC,GACtBjD,GAAmBA,EAAgBiD,EACtC,EAAEtD,OAAQA,IAI3B"}
1
+ {"version":3,"file":"PageContent.js","sources":["../src/PageContent/PageContent.tsx"],"sourcesContent":["import React from 'react';\nimport { CookieConsent } from '../CookieConsent/CookieConsent';\nimport { Features } from '../Features/Features';\nimport { Footer } from '../Footer/Footer';\nimport { PricingPolicy } from '../PricingPolicy/PricingPolicy';\nimport { RefundPolicy } from '../RefundPolicy/RefundPolicy';\nimport { Showcase } from '../Showcase/Showcase';\nimport { Testimonials } from '../Testimonials/Testimonials';\nimport { Unsubscription } from '../Unsubscription/Unsubscription';\nimport { InterfaceFeatures } from './PageContent.types';\n\nexport const PageContent = ({\n pageConfigs,\n locale,\n priceUnit,\n priceValue,\n logoUrl,\n tracker,\n onConsentUpdate\n}: InterfaceFeatures) => {\n const scrollToTop = () => {\n // window.scrollTo({ top: 0, behavior: \"smooth\" });\n };\n\n return (\n <div className=\"page-content\" onClick={() => scrollToTop()}>\n <div\n className=\"scroll-up\"\n onClick={() => {\n window.scrollTo({ top: 0, behavior: 'smooth' });\n tracker?.customEvent('image-cards', 'click', 'scroll-to-top');\n }}\n >\n {pageConfigs?.isShowWhyChooseUs && (\n <Features\n type={pageConfigs?.contentCategory}\n locale={locale}\n tracker={tracker}\n domain={window?.location?.origin || ''}\n headline=\"\"\n />\n )}\n\n {pageConfigs?.isShowShowCase && (\n <Showcase\n tracker={tracker}\n locale={locale}\n type={pageConfigs?.contentCategory}\n domain={window?.location?.origin || ''}\n />\n )}\n\n {pageConfigs?.isShowPricingTable && (\n <PricingPolicy hideSections priceUnit={priceUnit} priceValue={priceValue} locale={locale} />\n )}\n\n {pageConfigs?.isShowRefundPolicy && <RefundPolicy locale={locale} serviceName={pageConfigs?.serviceName} />}\n\n {pageConfigs?.isShowUnsubscription && <Unsubscription locale={locale} />}\n\n {pageConfigs?.isShowTestimonials && <Testimonials locale={locale} />}\n </div>\n\n {pageConfigs?.isShowAboutUs && (\n <Footer\n locale={locale}\n mccName={pageConfigs?.mccInformation?.mcc}\n address={pageConfigs?.mccInformation?.address}\n email={pageConfigs?.mccInformation?.mcc_email}\n phone={pageConfigs?.mccInformation?.mcc_phone_number}\n logoUrl={logoUrl}\n className=\"footer\"\n />\n )}\n\n {pageConfigs?.isShowCookieConsent && (\n <CookieConsent\n tracker={tracker}\n onUpdate={(consent) => {\n // eslint-disable-next-line no-unused-expressions\n onConsentUpdate && onConsentUpdate(consent);\n }}\n locale={locale}\n />\n )}\n </div>\n );\n};\n"],"names":["PageContent","_a","pageConfigs","locale","priceUnit","priceValue","logoUrl","tracker","onConsentUpdate","React","createElement","className","onClick","window","scrollTo","top","behavior","customEvent","isShowWhyChooseUs","Features","type","contentCategory","domain","_b","location","origin","headline","isShowShowCase","Showcase","_c","isShowPricingTable","PricingPolicy","hideSections","isShowRefundPolicy","RefundPolicy","serviceName","isShowUnsubscription","Unsubscription","isShowTestimonials","Testimonials","isShowAboutUs","Footer","mccName","_d","mccInformation","mcc","address","_e","email","_f","mcc_email","phone","_g","mcc_phone_number","isShowCookieConsent","CookieConsent","onUpdate","consent"],"mappings":"4dAWO,IAAMA,EAAc,SAACC,mBAC1BC,gBACAC,WACAC,cACAC,EAAUJ,EAAAI,WACVC,EAAOL,EAAAK,QACPC,EAAON,EAAAM,QACPC,EAAeP,EAAAO,gBAMf,OACEC,EAAAC,cAAA,MAAA,CAAKC,UAAU,eAAeC,QAAS,cACrCH,EAAAC,cAAA,MAAA,CACEC,UAAU,YACVC,QAAS,WACPC,OAAOC,SAAS,CAAEC,IAAK,EAAGC,SAAU,WACpCT,SAAAA,EAASU,YAAY,cAAe,QAAS,oBAG9Cf,aAAW,EAAXA,EAAagB,oBACZT,EAACC,cAAAS,GACCC,KAAMlB,aAAW,EAAXA,EAAamB,gBACnBlB,OAAQA,EACRI,QAASA,EACTe,QAA0B,QAAlBC,EAAM,OAANV,aAAM,IAANA,YAAM,EAANA,OAAQW,gBAAU,IAAAD,OAAA,EAAAA,EAAAE,SAAU,GACpCC,SAAS,MAIZxB,aAAW,EAAXA,EAAayB,iBACZlB,EAAAC,cAACkB,EACC,CAAArB,QAASA,EACTJ,OAAQA,EACRiB,KAAMlB,aAAW,EAAXA,EAAamB,gBACnBC,gBAAQO,SAAAhB,aAAM,IAANA,YAAM,EAANA,OAAQW,+BAAUC,SAAU,MAIvCvB,aAAA,EAAAA,EAAa4B,qBACZrB,EAACC,cAAAqB,EAAc,CAAAC,gBAAa5B,UAAWA,EAAWC,WAAYA,EAAYF,OAAQA,KAGnFD,aAAA,EAAAA,EAAa+B,qBAAsBxB,EAACC,cAAAwB,EAAa,CAAA/B,OAAQA,EAAQgC,YAAajC,aAAA,EAAAA,EAAaiC,eAE3FjC,aAAW,EAAXA,EAAakC,uBAAwB3B,EAAAC,cAAC2B,EAAc,CAAClC,OAAQA,KAE7DD,aAAW,EAAXA,EAAaoC,qBAAsB7B,EAAAC,cAAC6B,EAAa,CAAApC,OAAQA,MAG3DD,aAAA,EAAAA,EAAasC,gBACZ/B,EAAAC,cAAC+B,EACC,CAAAtC,OAAQA,EACRuC,QAAsC,QAA7BC,EAAAzC,aAAW,EAAXA,EAAa0C,sBAAgB,IAAAD,OAAA,EAAAA,EAAAE,IACtCC,QAAoC,QAA3BC,EAAA7C,eAAAA,EAAa0C,sBAAc,IAAAG,OAAA,EAAAA,EAAED,QACtCE,MAAkC,QAA3BC,EAAA/C,aAAA,EAAAA,EAAa0C,sBAAc,IAAAK,OAAA,EAAAA,EAAEC,UACpCC,cAAOC,EAAAlD,aAAA,EAAAA,EAAa0C,qCAAgBS,iBACpC/C,QAASA,EACTK,UAAU,YAIbT,eAAAA,EAAaoD,sBACZ7C,gBAAC8C,EAAa,CACZhD,QAASA,EACTiD,SAAU,SAACC,GAETjD,GAAmBA,EAAgBiD,EACpC,EACDtD,OAAQA,IAKlB"}
@@ -1 +1 @@
1
- {"version":3,"file":"Persuasive.js","sources":["../src/Persuasive/Persuasive.tsx"],"sourcesContent":["import cn from 'classnames';\nimport React from 'react';\nimport { InterfaceFeatures } from './Persuasive.types';\n\nexport const Persuasive = ({\n title = '',\n subtitle = '',\n className = '',\n caption = '',\n image = 'Persuasive Name',\n dataQaId = 'qa-persuasive',\n tracker,\n children\n}: InterfaceFeatures) => {\n if (!image) return null;\n\n return (\n\n <div id='creative-area' className=\"creative-area\">\n <div className=\"creative\" data-qa-id={dataQaId}>\n <img src={image} alt={image} />\n {(title || subtitle || caption || children) && (\n <>\n {title && <h1>{title}</h1>}\n {subtitle && <p>{subtitle}</p>}\n {caption && <p>{caption}</p>}\n {children}\n </>\n )}\n </div>\n </div>\n );\n};"],"names":["Persuasive","_a","_b","title","_c","subtitle","_e","caption","_f","image","_g","dataQaId","tracker","children","React","id","className","createElement","src","alt","Fragment"],"mappings":"qBAIO,IAAMA,EAAa,SAACC,OACzBC,EAAUD,EAAAE,MAAVA,OAAQ,IAAAD,EAAA,KACRE,EAAAH,EAAAI,SAAAA,OAAQ,IAAAD,EAAG,GAAEA,cAEb,IAAAE,EAAYL,EAAAM,QAAZA,OAAU,IAAAD,EAAA,KACVE,EAAAP,EAAAQ,MAAAA,OAAK,IAAAD,EAAG,kBAAiBA,EACzBE,aAAAC,aAAW,gBAAeD,EACnBT,EAAAW,QACP,IAAAC,EAAQZ,EAAAY,SAER,OAAKJ,EAIHK,uBAAKC,GAAG,gBAAgBC,UAAU,iBAChCF,EAAAG,cAAA,MAAA,CAAKD,UAAU,WAAU,aAAaL,GACpCG,EAAAG,cAAA,MAAA,CAAKC,IAAKT,EAAOU,IAAKV,KACpBN,GAASE,GAAYE,GAAWM,IAChCC,EAAAG,cAAAH,EAAAM,SAAA,KACGjB,GAASW,EAAKG,cAAA,KAAA,KAAAd,GACdE,GAAYS,EAAIG,cAAA,IAAA,KAAAZ,GAChBE,GAAWO,EAAIG,cAAA,IAAA,KAAAV,GACfM,KAZQ,IAkBrB"}
1
+ {"version":3,"file":"Persuasive.js","sources":["../src/Persuasive/Persuasive.tsx"],"sourcesContent":["import React from 'react';\nimport { InterfaceFeatures } from './Persuasive.types';\n\nexport const Persuasive = ({\n title = '',\n subtitle = '',\n className = '',\n caption = '',\n image = 'Persuasive Name',\n dataQaId = 'qa-persuasive',\n tracker,\n children\n}: InterfaceFeatures) => {\n if (!image) return null;\n\n return (\n <div id=\"creative-area\" className=\"creative-area\">\n <div className=\"creative\" data-qa-id={dataQaId}>\n <img src={image} alt={image} />\n {(title || subtitle || caption || children) && (\n <>\n {title && <h1>{title}</h1>}\n {subtitle && <p>{subtitle}</p>}\n {caption && <p>{caption}</p>}\n {children}\n </>\n )}\n </div>\n </div>\n );\n};\n"],"names":["Persuasive","_a","_b","title","_c","subtitle","_e","caption","_f","image","_g","dataQaId","tracker","children","React","id","className","createElement","src","alt","Fragment"],"mappings":"qBAGO,IAAMA,EAAa,SAACC,OACzBC,EAAUD,EAAAE,MAAVA,OAAQ,IAAAD,EAAA,KACRE,EAAAH,EAAAI,SAAAA,OAAQ,IAAAD,EAAG,GAAEA,cAEb,IAAAE,EAAYL,EAAAM,QAAZA,OAAU,IAAAD,EAAA,KACVE,EAAAP,EAAAQ,MAAAA,OAAK,IAAAD,EAAG,kBAAiBA,EACzBE,aAAAC,aAAW,gBAAeD,EACnBT,EAAAW,QACP,IAAAC,EAAQZ,EAAAY,SAER,OAAKJ,EAGHK,uBAAKC,GAAG,gBAAgBC,UAAU,iBAChCF,EAAAG,cAAA,MAAA,CAAKD,UAAU,WAAU,aAAaL,GACpCG,EAAAG,cAAA,MAAA,CAAKC,IAAKT,EAAOU,IAAKV,KACpBN,GAASE,GAAYE,GAAWM,IAChCC,EAAAG,cAAAH,EAAAM,SAAA,KACGjB,GAASW,EAAKG,cAAA,KAAA,KAAAd,GACdE,GAAYS,EAAIG,cAAA,IAAA,KAAAZ,GAChBE,GAAWO,EAAIG,cAAA,IAAA,KAAAV,GACfM,KAXQ,IAiBrB"}
@@ -1 +1 @@
1
- {"version":3,"file":"PhoneEntry.js","sources":["../src/utils/parsePhoneNumber.ts","../src/PhoneEntry/PhoneEntry.tsx"],"sourcesContent":["/* eslint-disable no-nested-ternary */\n/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable no-underscore-dangle */\n/* eslint-disable no-restricted-syntax */\n\n/**\n * These mappings map a character (key) to a specific digit that should\n * replace it for normalization purposes. Non-European digits that\n * may be used in phone numbers are mapped to a European equivalent.\n *\n * E.g. in Iraq they don't write `+442323234` but rather `+٤٤٢٣٢٣٢٣٤`.\n *\n */\n\nexport const DIGITS = {\n '0': '0',\n '1': '1',\n '2': '2',\n '3': '3',\n '4': '4',\n '5': '5',\n '6': '6',\n '7': '7',\n '8': '8',\n '9': '9',\n '\\uFF10': '0', // Fullwidth digit 0\n '\\uFF11': '1', // Fullwidth digit 1\n '\\uFF12': '2', // Fullwidth digit 2\n '\\uFF13': '3', // Fullwidth digit 3\n '\\uFF14': '4', // Fullwidth digit 4\n '\\uFF15': '5', // Fullwidth digit 5\n '\\uFF16': '6', // Fullwidth digit 6\n '\\uFF17': '7', // Fullwidth digit 7\n '\\uFF18': '8', // Fullwidth digit 8\n '\\uFF19': '9', // Fullwidth digit 9\n '\\u0660': '0', // Arabic-indic digit 0\n '\\u0661': '1', // Arabic-indic digit 1\n '\\u0662': '2', // Arabic-indic digit 2\n '\\u0663': '3', // Arabic-indic digit 3\n '\\u0664': '4', // Arabic-indic digit 4\n '\\u0665': '5', // Arabic-indic digit 5\n '\\u0666': '6', // Arabic-indic digit 6\n '\\u0667': '7', // Arabic-indic digit 7\n '\\u0668': '8', // Arabic-indic digit 8\n '\\u0669': '9', // Arabic-indic digit 9\n '\\u06F0': '0', // Eastern-Arabic digit 0\n '\\u06F1': '1', // Eastern-Arabic digit 1\n '\\u06F2': '2', // Eastern-Arabic digit 2\n '\\u06F3': '3', // Eastern-Arabic digit 3\n '\\u06F4': '4', // Eastern-Arabic digit 4\n '\\u06F5': '5', // Eastern-Arabic digit 5\n '\\u06F6': '6', // Eastern-Arabic digit 6\n '\\u06F7': '7', // Eastern-Arabic digit 7\n '\\u06F8': '8', // Eastern-Arabic digit 8\n '\\u06F9': '9' // Eastern-Arabic digit 9\n};\n\nexport const parseDigit = (character: string) =>\n character in DIGITS ? DIGITS[character as keyof typeof DIGITS] : undefined;\n\n/**\n * Parses phone number digits from a string.\n * Drops all punctuation leaving only digits.\n * Also converts wide-ascii and arabic-indic numerals to conventional numerals.\n *\n * E.g. in Iraq they don't write `+442323234` but rather `+٤٤٢٣٢٣٢٣٤`.\n * parseDigits('8 (800) 555')\n * Outputs '8800555'.\n *\n */\n\nexport const parseDigits = (string: string) => {\n let result = '';\n\n /**\n * Using `.split('')` here instead of normal `for ... of`\n * because the importing application doesn't neccessarily include an ES6 polyfill.\n * The `.split('')` approach discards \"exotic\" UTF-8 characters\n * (the ones consisting of four bytes) but digits\n * (including non-European ones) don't fall into that range\n * so such \"exotic\" characters would be discarded anyway.\n */\n\n for (const character of string.split('')) {\n const digit = parseDigit(character);\n if (digit) {\n result += digit;\n }\n }\n return result;\n};\n\n/**\n * Parses phone number characters from a string.\n * Drops all punctuation leaving only digits and the leading `+` sign (if any).\n * Also converts wide-ascii and arabic-indic numerals to conventional numerals.\n *\n * E.g. in Iraq they don't write `+442323234` but rather `+٤٤٢٣٢٣٢٣٤`.\n * Outputs '8800555'.\n * parseIncompletePhoneNumber('8 (800) 555')\n * Outputs '+7800555'.\n * parseIncompletePhoneNumber('+7 800 555')\n *\n */\n\nexport const parseIncompletePhoneNumber = (string: string) => {\n let result = '';\n let _iterator: any;\n let _isArray: boolean;\n let _i: any;\n\n /**\n * Using `.split('')` here instead of normal `for ... of`\n * because the importing application doesn't neccessarily include an ES6 polyfill.\n * The `.split('')` approach discards \"exotic\" UTF-8 characters\n * (the ones consisting of four bytes) but digits\n * (including non-European ones) don't fall into that range\n * so such \"exotic\" characters would be discarded anyway.\n */\n\n for (\n _iterator = string.split(''),\n _isArray = Array.isArray(_iterator),\n _i = 0,\n _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();\n ;\n\n ) {\n let _ref;\n\n if (_isArray) {\n if (_i >= _iterator.length) break;\n _ref = _iterator[(_i += 1)];\n } else {\n _i = _iterator.next();\n if (_i.done) break;\n _ref = _i.value;\n }\n\n const character = _ref;\n result += parsePhoneNumberCharacter(character, result) || '';\n }\n\n return result;\n};\n\n/**\n * Parses next character while parsing phone number digits (including a `+`)\n * from text: discards everything except `+` and digits, and `+` is only allowed\n * at the start of a phone number.\n */\n\nexport const parsePhoneNumberCharacter = (character: string, prevParsedCharacters: string) =>\n character === '+' ? (prevParsedCharacters ? '' : '+') : parseDigit(character);\n\n/**\n * Check if nationalNumber is a valid number by removing `+` if exist\n */\n\nexport const getBupperNumber = (nationalNumber: string) => {\n if (!nationalNumber) {\n return nationalNumber;\n }\n\n const match = nationalNumber.match(/\\d+/g);\n return match ? match.join('') : nationalNumber;\n};\n\n/**\n * Verify string contains a number\n */\n\nexport const hasNumber = (stringToCheck: string) => /\\d/.test(stringToCheck);\n\n/**\n * Used for providing prefix for specific country\n */\n\nconst generateConfig = (countryCode: string, commonPrefix: string, maxLength: number) => ({\n countryCode,\n commonPrefix,\n maxLength\n});\n\nconst configs: any = {\n mx: generateConfig('52', '01', 10),\n my: generateConfig('60', '01', 9),\n za: generateConfig('27', '0', 9),\n ae: generateConfig('971', '05', 10),\n a2: generateConfig('971', '05', 10),\n gr: generateConfig('30', '69', 9),\n g2: generateConfig('30', '69', 9),\n ee: generateConfig('372', '', 10),\n lt: generateConfig('370', '6', 9),\n ps: generateConfig('972', '0', 10),\n kk: generateConfig('7', '0', 10),\n kw: generateConfig('965', '0', 10),\n xx: generateConfig('', '', 10)\n};\n\nexport const getMsisdnPrefix = (countryCode: string) => configs[countryCode] || configs.xx;\n","import { getAsYouType, parsePhoneNumber } from 'awesome-phonenumber';\nimport cn from 'classnames';\nimport React, { useState } from 'react';\nimport { getBupperNumber, hasNumber, parseIncompletePhoneNumber } from '../utils/parsePhoneNumber';\nimport styles from './PhoneEntry.module.scss';\nimport { interfacePhoneEntry } from './PhoneEntry.types';\n\nconst specialCountryCodes: Record<string, string> = {\n s2: 'sa',\n o2: 'om',\n a2: 'ae',\n k2: 'kw',\n c2: 'ch',\n r2: 'rs',\n l2: 'lv',\n s3: 'se',\n b2: 'bh',\n g2: 'gr',\n a3: 'at'\n};\n\nexport const PhoneEntry = ({\n tracker,\n country,\n msisdn,\n setMsisdn,\n internationalNumber,\n setInternationalNumber,\n isMsisdnFilled,\n setIsMsisdnFilled,\n inputElementRef,\n id,\n className = '',\n dataQaId = 'qa-phone-entry',\n minLength = 7,\n placeholder,\n isValid,\n setIsValid,\n userInteract,\n setUserInteract,\n showIconInput = true,\n showIconValid = true,\n showIconInvalid = true,\n onChange,\n onKeyPress,\n onPaste,\n onBlur,\n onFocus,\n isFocused = false,\n msisdnLabel = 'Enter your mobile number to start download now:',\n msisdnLabelToolTip = 'Please insert your mobile number here',\n focusAnimation = ''\n}: interfacePhoneEntry) => {\n const userCountry = hasNumber(country) ? specialCountryCodes[country] : country;\n const [isTooltipVisible, setIsTooltipVisible] = useState(false);\n const [isLabelVisible, setIsLabelVisible] = useState(true);\n function handleKeyPress(whichKey: React.KeyboardEvent<HTMLInputElement>) {\n const regex = /[0-9]/;\n if (!regex.test(whichKey.key)) {\n whichKey.preventDefault();\n }\n }\n\n function formatMsisdn(unformatMsisdn: string) {\n const asUserType = getAsYouType(userCountry);\n asUserType.addChar(unformatMsisdn);\n return asUserType.number();\n }\n\n function parseMsisdn(_msisdn: string) {\n const currentMsisdn = _msisdn.startsWith('0') ? parseInt(_msisdn, 10).toString() : _msisdn;\n try {\n const parsedPhoneNumber = parsePhoneNumber(currentMsisdn, { regionCode: userCountry.toUpperCase() });\n const nationalPhoneNumber = parsedPhoneNumber.number?.national || '';\n const internationalPhoneNumber = parsedPhoneNumber.number?.international || '';\n const bupperPhoneNumber = getBupperNumber(nationalPhoneNumber);\n const parsedPhoneNumberIsValid =\n userCountry.toLowerCase() === 'ci'\n ? parsedPhoneNumber.possible ||\n parsedPhoneNumber.typeIsMobile ||\n nationalPhoneNumber.length === 8 ||\n nationalPhoneNumber.length === 9\n : parsedPhoneNumber.valid;\n\n return {\n bupperPhoneNumber,\n nationalPhoneNumber,\n internationalPhoneNumber,\n isPhoneNumberValid: parsedPhoneNumberIsValid\n };\n } catch (error) {\n console.warn(error);\n return {\n bupperPhoneNumber: '',\n nationalPhoneNumber: '',\n internationalPhoneNumber: '',\n isPhoneNumberValid: false\n };\n }\n }\n\n const handleTooltipVisibility = () => {\n setIsTooltipVisible(!isTooltipVisible);\n setIsLabelVisible(!isLabelVisible);\n };\n\n return (\n\n <div\n className={`msisdn-wrapper ${isFocused ? focusAnimation : ''}`}\n data-attr=\"has-subscription-box\"\n onClick={handleTooltipVisibility}\n >\n {isTooltipVisible ? (\n <div className=\"label-msisdn tooltip\">\n {/* <FormattedMessage\n id=\"msisdnLabelToolTip\"\n defaultMessage=\"Please insert your mobile number here\"\n /> */}\n {msisdnLabelToolTip}\n </div>\n ) : (\n <></>\n )}\n\n <div id='label-msisdn' className=\"label-msisdn\">\n {/* <FormattedMessage\n id=\"msisdnLabel\"\n defaultMessage=\"Enter your mobile number to start download now:\"\n /> */}\n {msisdnLabel}\n </div>\n\n\n <div\n className={cn(styles.phoneInputWrap, 'phone-input-wrap', {\n [styles.phoneInputWrapIconInput]: showIconInput,\n [styles.phoneInputWrapIconValid]: showIconValid && isValid && userInteract,\n [styles.phoneInputWrapIconInvalid]: showIconInvalid && !isValid && userInteract,\n // for custom css\n 'is-valid': isValid && userInteract,\n 'is-invalid': !isValid && userInteract\n })}\n data-msisdn={msisdn.replace(' ', '')}\n data-international-number={internationalNumber.replace('+', '').replace(' ', '')}\n >\n <input\n autoFocus\n required\n ref={inputElementRef}\n id={id || 'phone-input'}\n className={cn(styles.phoneInput, className, 'phone-input')}\n data-qa-id={dataQaId}\n type=\"tel\"\n placeholder={placeholder || 'Phone number'}\n value={formatMsisdn(msisdn)}\n pattern=\"[0-9]*\"\n inputMode=\"numeric\"\n minLength={minLength}\n autoComplete=\"tel\"\n onChange={(_ev: React.ChangeEvent<HTMLInputElement>) => {\n setUserInteract?.(true);\n\n const inputTargetValue = _ev.target.value;\n let newTargetValue = parseIncompletePhoneNumber(inputTargetValue);\n\n // Workaround for handling the Samsung Galaxy smart caret positioning bug\n if (newTargetValue === inputTargetValue && formatMsisdn(newTargetValue).startsWith(inputTargetValue)) {\n newTargetValue = newTargetValue.slice(0, -1);\n }\n\n // Requested by Aadam and partner for testing Luxembourg\n if (newTargetValue.includes('3522100000012340') && onChange) {\n onChange({\n isValid: true,\n msisdn: newTargetValue,\n nationalNumber: msisdn,\n internationalNumber: msisdn,\n bupperNumber: msisdn\n });\n setIsValid?.(true);\n return;\n }\n\n const { bupperPhoneNumber, internationalPhoneNumber, nationalPhoneNumber, isPhoneNumberValid } =\n parseMsisdn(newTargetValue);\n\n tracker?.customEvent('MSISDN-State', 'valid', 'MsisdnValid', { msisdn });\n setIsValid?.(isPhoneNumberValid);\n setMsisdn?.(_ev.currentTarget.value);\n setInternationalNumber?.(internationalPhoneNumber);\n\n if (onChange) {\n onChange({\n isValid: isPhoneNumberValid,\n msisdn: newTargetValue,\n bupperNumber: bupperPhoneNumber,\n nationalNumber: nationalPhoneNumber,\n internationalNumber: internationalPhoneNumber\n });\n }\n }}\n onKeyPress={(_ev: React.KeyboardEvent<HTMLInputElement>) => {\n handleKeyPress(_ev);\n\n if (!isMsisdnFilled && _ev.currentTarget.value.length >= minLength) {\n tracker?.customEvent('MSISDN-State', 'type', 'MsisdnType');\n setIsMsisdnFilled?.(true);\n }\n\n if (onKeyPress) {\n onKeyPress(_ev);\n }\n }}\n onPaste={(_ev: React.ClipboardEvent<HTMLInputElement>) => {\n if (!isMsisdnFilled && _ev.currentTarget.value.length >= minLength) {\n tracker?.customEvent('MSISDN-State', 'copypaste', 'MsisdnPasted');\n setIsMsisdnFilled?.(true);\n }\n\n if (onPaste) {\n onPaste(_ev);\n }\n }}\n onBlur={(_ev: React.FocusEvent<HTMLInputElement>) => {\n if (!isMsisdnFilled && _ev.currentTarget.value.length >= minLength) {\n tracker?.customEvent('MSISDN-State', 'autofill', 'AutoFill', { msisdn: _ev.target.value });\n setIsMsisdnFilled?.(true);\n }\n\n if (onBlur) {\n onBlur(_ev);\n }\n }}\n onFocus={(_ev: React.FocusEvent<HTMLInputElement>) => {\n if (onFocus) {\n onFocus(_ev);\n }\n }}\n />\n </div>\n </div>\n );\n};\n"],"names":["DIGITS","parsePhoneNumberCharacter","character","prevParsedCharacters","undefined","parseDigit","specialCountryCodes","s2","o2","a2","k2","c2","r2","l2","s3","b2","g2","a3","PhoneEntry","_a","tracker","country","msisdn","setMsisdn","internationalNumber","setInternationalNumber","isMsisdnFilled","setIsMsisdnFilled","inputElementRef","id","_c","className","_d","dataQaId","_e","minLength","placeholder","isValid","setIsValid","userInteract","setUserInteract","_f","showIconInput","_g","showIconValid","_h","showIconInvalid","onChange","onKeyPress","onPaste","onBlur","onFocus","_j","isFocused","_k","msisdnLabel","_l","msisdnLabelToolTip","_m","focusAnimation","userCountry","test","_o","__read","useState","isTooltipVisible","setIsTooltipVisible","_p","isLabelVisible","setIsLabelVisible","formatMsisdn","unformatMsisdn","asUserType","getAsYouType","addChar","number","React","onClick","createElement","cn","styles","_b","replace","autoFocus","required","ref","type","value","pattern","inputMode","autoComplete","_ev","inputTargetValue","target","newTargetValue","string","_iterator","_isArray","_i","result","split","Array","isArray","Symbol","iterator","_ref","length","next","done","parseIncompletePhoneNumber","startsWith","slice","includes","nationalNumber","bupperNumber","_msisdn","currentMsisdn","parseInt","toString","parsedPhoneNumber","parsePhoneNumber","regionCode","toUpperCase","nationalPhoneNumber","national","internationalPhoneNumber","international","bupperPhoneNumber","match","join","getBupperNumber","isPhoneNumberValid","toLowerCase","possible","typeIsMobile","valid","error","console","warn","parseMsisdn","customEvent","currentTarget","whichKey","key","preventDefault"],"mappings":"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"}
1
+ {"version":3,"file":"PhoneEntry.js","sources":["../src/utils/parsePhoneNumber.ts","../src/PhoneEntry/PhoneEntry.tsx"],"sourcesContent":["/* eslint-disable no-nested-ternary */\n/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable no-underscore-dangle */\n/* eslint-disable no-restricted-syntax */\n\n/**\n * These mappings map a character (key) to a specific digit that should\n * replace it for normalization purposes. Non-European digits that\n * may be used in phone numbers are mapped to a European equivalent.\n *\n * E.g. in Iraq they don't write `+442323234` but rather `+٤٤٢٣٢٣٢٣٤`.\n *\n */\n\nexport const DIGITS = {\n '0': '0',\n '1': '1',\n '2': '2',\n '3': '3',\n '4': '4',\n '5': '5',\n '6': '6',\n '7': '7',\n '8': '8',\n '9': '9',\n '\\uFF10': '0', // Fullwidth digit 0\n '\\uFF11': '1', // Fullwidth digit 1\n '\\uFF12': '2', // Fullwidth digit 2\n '\\uFF13': '3', // Fullwidth digit 3\n '\\uFF14': '4', // Fullwidth digit 4\n '\\uFF15': '5', // Fullwidth digit 5\n '\\uFF16': '6', // Fullwidth digit 6\n '\\uFF17': '7', // Fullwidth digit 7\n '\\uFF18': '8', // Fullwidth digit 8\n '\\uFF19': '9', // Fullwidth digit 9\n '\\u0660': '0', // Arabic-indic digit 0\n '\\u0661': '1', // Arabic-indic digit 1\n '\\u0662': '2', // Arabic-indic digit 2\n '\\u0663': '3', // Arabic-indic digit 3\n '\\u0664': '4', // Arabic-indic digit 4\n '\\u0665': '5', // Arabic-indic digit 5\n '\\u0666': '6', // Arabic-indic digit 6\n '\\u0667': '7', // Arabic-indic digit 7\n '\\u0668': '8', // Arabic-indic digit 8\n '\\u0669': '9', // Arabic-indic digit 9\n '\\u06F0': '0', // Eastern-Arabic digit 0\n '\\u06F1': '1', // Eastern-Arabic digit 1\n '\\u06F2': '2', // Eastern-Arabic digit 2\n '\\u06F3': '3', // Eastern-Arabic digit 3\n '\\u06F4': '4', // Eastern-Arabic digit 4\n '\\u06F5': '5', // Eastern-Arabic digit 5\n '\\u06F6': '6', // Eastern-Arabic digit 6\n '\\u06F7': '7', // Eastern-Arabic digit 7\n '\\u06F8': '8', // Eastern-Arabic digit 8\n '\\u06F9': '9' // Eastern-Arabic digit 9\n};\n\nexport const parseDigit = (character: string) =>\n character in DIGITS ? DIGITS[character as keyof typeof DIGITS] : undefined;\n\n/**\n * Parses phone number digits from a string.\n * Drops all punctuation leaving only digits.\n * Also converts wide-ascii and arabic-indic numerals to conventional numerals.\n *\n * E.g. in Iraq they don't write `+442323234` but rather `+٤٤٢٣٢٣٢٣٤`.\n * parseDigits('8 (800) 555')\n * Outputs '8800555'.\n *\n */\n\nexport const parseDigits = (string: string) => {\n let result = '';\n\n /**\n * Using `.split('')` here instead of normal `for ... of`\n * because the importing application doesn't neccessarily include an ES6 polyfill.\n * The `.split('')` approach discards \"exotic\" UTF-8 characters\n * (the ones consisting of four bytes) but digits\n * (including non-European ones) don't fall into that range\n * so such \"exotic\" characters would be discarded anyway.\n */\n\n for (const character of string.split('')) {\n const digit = parseDigit(character);\n if (digit) {\n result += digit;\n }\n }\n return result;\n};\n\n/**\n * Parses phone number characters from a string.\n * Drops all punctuation leaving only digits and the leading `+` sign (if any).\n * Also converts wide-ascii and arabic-indic numerals to conventional numerals.\n *\n * E.g. in Iraq they don't write `+442323234` but rather `+٤٤٢٣٢٣٢٣٤`.\n * Outputs '8800555'.\n * parseIncompletePhoneNumber('8 (800) 555')\n * Outputs '+7800555'.\n * parseIncompletePhoneNumber('+7 800 555')\n *\n */\n\nexport const parseIncompletePhoneNumber = (string: string) => {\n let result = '';\n let _iterator: any;\n let _isArray: boolean;\n let _i: any;\n\n /**\n * Using `.split('')` here instead of normal `for ... of`\n * because the importing application doesn't neccessarily include an ES6 polyfill.\n * The `.split('')` approach discards \"exotic\" UTF-8 characters\n * (the ones consisting of four bytes) but digits\n * (including non-European ones) don't fall into that range\n * so such \"exotic\" characters would be discarded anyway.\n */\n\n for (\n _iterator = string.split(''),\n _isArray = Array.isArray(_iterator),\n _i = 0,\n _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();\n ;\n\n ) {\n let _ref;\n\n if (_isArray) {\n if (_i >= _iterator.length) break;\n _ref = _iterator[(_i += 1)];\n } else {\n _i = _iterator.next();\n if (_i.done) break;\n _ref = _i.value;\n }\n\n const character = _ref;\n result += parsePhoneNumberCharacter(character, result) || '';\n }\n\n return result;\n};\n\n/**\n * Parses next character while parsing phone number digits (including a `+`)\n * from text: discards everything except `+` and digits, and `+` is only allowed\n * at the start of a phone number.\n */\n\nexport const parsePhoneNumberCharacter = (character: string, prevParsedCharacters: string) =>\n character === '+' ? (prevParsedCharacters ? '' : '+') : parseDigit(character);\n\n/**\n * Check if nationalNumber is a valid number by removing `+` if exist\n */\n\nexport const getBupperNumber = (nationalNumber: string) => {\n if (!nationalNumber) {\n return nationalNumber;\n }\n\n const match = nationalNumber.match(/\\d+/g);\n return match ? match.join('') : nationalNumber;\n};\n\n/**\n * Verify string contains a number\n */\n\nexport const hasNumber = (stringToCheck: string) => /\\d/.test(stringToCheck);\n\n/**\n * Used for providing prefix for specific country\n */\n\nconst generateConfig = (countryCode: string, commonPrefix: string, maxLength: number) => ({\n countryCode,\n commonPrefix,\n maxLength\n});\n\nconst configs: any = {\n mx: generateConfig('52', '01', 10),\n my: generateConfig('60', '01', 9),\n za: generateConfig('27', '0', 9),\n ae: generateConfig('971', '05', 10),\n a2: generateConfig('971', '05', 10),\n gr: generateConfig('30', '69', 9),\n g2: generateConfig('30', '69', 9),\n ee: generateConfig('372', '', 10),\n lt: generateConfig('370', '6', 9),\n ps: generateConfig('972', '0', 10),\n kk: generateConfig('7', '0', 10),\n kw: generateConfig('965', '0', 10),\n xx: generateConfig('', '', 10)\n};\n\nexport const getMsisdnPrefix = (countryCode: string) => configs[countryCode] || configs.xx;\n","import { getAsYouType, parsePhoneNumber } from 'awesome-phonenumber';\nimport cn from 'classnames';\nimport React, { useState } from 'react';\nimport { getBupperNumber, hasNumber, parseIncompletePhoneNumber } from '../utils/parsePhoneNumber';\nimport styles from './PhoneEntry.module.scss';\nimport { interfacePhoneEntry } from './PhoneEntry.types';\n\nconst specialCountryCodes: Record<string, string> = {\n s2: 'sa',\n o2: 'om',\n a2: 'ae',\n k2: 'kw',\n c2: 'ch',\n r2: 'rs',\n l2: 'lv',\n s3: 'se',\n b2: 'bh',\n g2: 'gr',\n a3: 'at'\n};\n\nexport const PhoneEntry = ({\n tracker,\n country,\n msisdn,\n setMsisdn,\n internationalNumber,\n setInternationalNumber,\n isMsisdnFilled,\n setIsMsisdnFilled,\n inputElementRef,\n id,\n className = '',\n dataQaId = 'qa-phone-entry',\n minLength = 7,\n placeholder,\n isValid,\n setIsValid,\n userInteract,\n setUserInteract,\n showIconInput = true,\n showIconValid = true,\n showIconInvalid = true,\n onChange,\n onKeyPress,\n onPaste,\n onBlur,\n onFocus,\n isFocused = false,\n msisdnLabel = 'Enter your mobile number to start download now:',\n msisdnLabelToolTip = 'Please insert your mobile number here',\n focusAnimation = ''\n}: interfacePhoneEntry) => {\n const userCountry = hasNumber(country) ? specialCountryCodes[country] : country;\n const [isTooltipVisible, setIsTooltipVisible] = useState(false);\n const [isLabelVisible, setIsLabelVisible] = useState(true);\n function handleKeyPress(whichKey: React.KeyboardEvent<HTMLInputElement>) {\n const regex = /[0-9]/;\n if (!regex.test(whichKey.key)) {\n whichKey.preventDefault();\n }\n }\n\n function formatMsisdn(unformatMsisdn: string) {\n const asUserType = getAsYouType(userCountry);\n asUserType.addChar(unformatMsisdn);\n return asUserType.number();\n }\n\n function parseMsisdn(_msisdn: string) {\n const currentMsisdn = _msisdn.startsWith('0') ? parseInt(_msisdn, 10).toString() : _msisdn;\n try {\n const parsedPhoneNumber = parsePhoneNumber(currentMsisdn, { regionCode: userCountry.toUpperCase() });\n const nationalPhoneNumber = parsedPhoneNumber.number?.national || '';\n const internationalPhoneNumber = parsedPhoneNumber.number?.international || '';\n const bupperPhoneNumber = getBupperNumber(nationalPhoneNumber);\n const parsedPhoneNumberIsValid =\n userCountry.toLowerCase() === 'ci'\n ? parsedPhoneNumber.possible ||\n parsedPhoneNumber.typeIsMobile ||\n nationalPhoneNumber.length === 8 ||\n nationalPhoneNumber.length === 9\n : parsedPhoneNumber.valid;\n\n return {\n bupperPhoneNumber,\n nationalPhoneNumber,\n internationalPhoneNumber,\n isPhoneNumberValid: parsedPhoneNumberIsValid\n };\n } catch (error) {\n console.warn(error);\n return {\n bupperPhoneNumber: '',\n nationalPhoneNumber: '',\n internationalPhoneNumber: '',\n isPhoneNumberValid: false\n };\n }\n }\n\n const handleTooltipVisibility = () => {\n setIsTooltipVisible(!isTooltipVisible);\n setIsLabelVisible(!isLabelVisible);\n };\n\n return (\n <div\n className={`msisdn-wrapper ${isFocused ? focusAnimation : ''}`}\n data-attr=\"has-subscription-box\"\n onClick={handleTooltipVisibility}\n >\n {isTooltipVisible ? (\n <div className=\"label-msisdn tooltip\">\n {/* <FormattedMessage\n id=\"msisdnLabelToolTip\"\n defaultMessage=\"Please insert your mobile number here\"\n /> */}\n {msisdnLabelToolTip}\n </div>\n ) : (\n <></>\n )}\n\n <div id=\"label-msisdn\" className=\"label-msisdn\">\n {/* <FormattedMessage\n id=\"msisdnLabel\"\n defaultMessage=\"Enter your mobile number to start download now:\"\n /> */}\n {msisdnLabel}\n </div>\n\n <div\n className={cn(styles.phoneInputWrap, 'phone-input-wrap', {\n [styles.phoneInputWrapIconInput]: showIconInput,\n [styles.phoneInputWrapIconValid]: showIconValid && isValid && userInteract,\n [styles.phoneInputWrapIconInvalid]: showIconInvalid && !isValid && userInteract,\n // for custom css\n 'is-valid': isValid && userInteract,\n 'is-invalid': !isValid && userInteract\n })}\n data-msisdn={msisdn.replace(' ', '')}\n data-international-number={internationalNumber.replace('+', '').replace(' ', '')}\n >\n <input\n autoFocus\n required\n ref={inputElementRef}\n id={id || 'phone-input'}\n className={cn(styles.phoneInput, className, 'phone-input')}\n data-qa-id={dataQaId}\n type=\"tel\"\n placeholder={placeholder || 'Phone number'}\n value={formatMsisdn(msisdn)}\n pattern=\"[0-9]*\"\n inputMode=\"numeric\"\n minLength={minLength}\n autoComplete=\"tel\"\n onChange={(_ev: React.ChangeEvent<HTMLInputElement>) => {\n setUserInteract?.(true);\n\n const inputTargetValue = _ev.target.value;\n let newTargetValue = parseIncompletePhoneNumber(inputTargetValue);\n\n // Workaround for handling the Samsung Galaxy smart caret positioning bug\n if (newTargetValue === inputTargetValue && formatMsisdn(newTargetValue).startsWith(inputTargetValue)) {\n newTargetValue = newTargetValue.slice(0, -1);\n }\n\n // Requested by Aadam and partner for testing Luxembourg\n if (newTargetValue.includes('3522100000012340') && onChange) {\n onChange({\n isValid: true,\n msisdn: newTargetValue,\n nationalNumber: msisdn,\n internationalNumber: msisdn,\n bupperNumber: msisdn\n });\n setIsValid?.(true);\n return;\n }\n\n const { bupperPhoneNumber, internationalPhoneNumber, nationalPhoneNumber, isPhoneNumberValid } =\n parseMsisdn(newTargetValue);\n\n tracker?.customEvent('MSISDN-State', 'valid', 'MsisdnValid', { msisdn });\n setIsValid?.(isPhoneNumberValid);\n setMsisdn?.(_ev.currentTarget.value);\n setInternationalNumber?.(internationalPhoneNumber);\n\n if (onChange) {\n onChange({\n isValid: isPhoneNumberValid,\n msisdn: newTargetValue,\n bupperNumber: bupperPhoneNumber,\n nationalNumber: nationalPhoneNumber,\n internationalNumber: internationalPhoneNumber\n });\n }\n }}\n onKeyPress={(_ev: React.KeyboardEvent<HTMLInputElement>) => {\n handleKeyPress(_ev);\n\n if (!isMsisdnFilled && _ev.currentTarget.value.length >= minLength) {\n tracker?.customEvent('MSISDN-State', 'type', 'MsisdnType');\n setIsMsisdnFilled?.(true);\n }\n\n if (onKeyPress) {\n onKeyPress(_ev);\n }\n }}\n onPaste={(_ev: React.ClipboardEvent<HTMLInputElement>) => {\n if (!isMsisdnFilled && _ev.currentTarget.value.length >= minLength) {\n tracker?.customEvent('MSISDN-State', 'copypaste', 'MsisdnPasted');\n setIsMsisdnFilled?.(true);\n }\n\n if (onPaste) {\n onPaste(_ev);\n }\n }}\n onBlur={(_ev: React.FocusEvent<HTMLInputElement>) => {\n if (!isMsisdnFilled && _ev.currentTarget.value.length >= minLength) {\n tracker?.customEvent('MSISDN-State', 'autofill', 'AutoFill', { msisdn: _ev.target.value });\n setIsMsisdnFilled?.(true);\n }\n\n if (onBlur) {\n onBlur(_ev);\n }\n }}\n onFocus={(_ev: React.FocusEvent<HTMLInputElement>) => {\n if (onFocus) {\n onFocus(_ev);\n }\n }}\n />\n </div>\n </div>\n );\n};\n"],"names":["DIGITS","parsePhoneNumberCharacter","character","prevParsedCharacters","undefined","parseDigit","specialCountryCodes","s2","o2","a2","k2","c2","r2","l2","s3","b2","g2","a3","PhoneEntry","_a","tracker","country","msisdn","setMsisdn","internationalNumber","setInternationalNumber","isMsisdnFilled","setIsMsisdnFilled","inputElementRef","id","_c","className","_d","dataQaId","_e","minLength","placeholder","isValid","setIsValid","userInteract","setUserInteract","_f","showIconInput","_g","showIconValid","_h","showIconInvalid","onChange","onKeyPress","onPaste","onBlur","onFocus","_j","isFocused","_k","msisdnLabel","_l","msisdnLabelToolTip","_m","focusAnimation","userCountry","test","_o","__read","useState","isTooltipVisible","setIsTooltipVisible","_p","isLabelVisible","setIsLabelVisible","formatMsisdn","unformatMsisdn","asUserType","getAsYouType","addChar","number","React","onClick","createElement","cn","styles","_b","replace","autoFocus","required","ref","type","value","pattern","inputMode","autoComplete","_ev","inputTargetValue","target","newTargetValue","string","_iterator","_isArray","_i","result","split","Array","isArray","Symbol","iterator","_ref","length","next","done","parseIncompletePhoneNumber","startsWith","slice","includes","nationalNumber","bupperNumber","_msisdn","currentMsisdn","parseInt","toString","parsedPhoneNumber","parsePhoneNumber","regionCode","toUpperCase","nationalPhoneNumber","national","internationalPhoneNumber","international","bupperPhoneNumber","match","join","getBupperNumber","isPhoneNumberValid","toLowerCase","possible","typeIsMobile","valid","error","console","warn","parseMsisdn","customEvent","currentTarget","whichKey","key","preventDefault"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Prelander.js","sources":["../src/Prelanders/Prelander/Prelander.tsx"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport styles from './Prelander.module.scss';\nimport { interfaceFeatures } from './Prelander.type';\n\nexport const Prelander = ({ locale, className = '', questions, tracker, onNext, onPrev }: interfaceFeatures) => {\n const [currentQuestion, setCurrentQuestion] = useState(0);\n const [selectedAnswers, setSelectedAnswers] = useState<{ [key: number]: string[] }>({});\n const [textAnswer, setTextAnswer] = useState<string>('');\n\n const isCompleted = currentQuestion >= questions.length;\n const currentQuestionData = questions[currentQuestion];\n const progress = ((currentQuestion + 1) / questions.length) * 100;\n\n useEffect(() => {\n if (currentQuestionData?.type === 'splash' && currentQuestionData.duration) {\n const timer = setTimeout(() => {\n if (tracker) {\n tracker.advancedInPreFlow('prelander', 'splash');\n }\n handleNext();\n }, currentQuestionData.duration);\n return () => clearTimeout(timer);\n }\n }, [currentQuestion, currentQuestionData, tracker]);\n\n useEffect(() => {\n if (currentQuestionData?.type === 'loader' && currentQuestionData.duration) {\n const timer = setTimeout(() => {\n if (tracker) {\n tracker.advancedInPreFlow('prelander', 'loader');\n }\n handleNext();\n }, currentQuestionData.duration);\n return () => clearTimeout(timer);\n }\n }, [currentQuestion, currentQuestionData, tracker]);\n\n const handleAnswerSelect = (answer: string) => {\n if (!currentQuestionData) return;\n\n if (currentQuestionData.type === 'single') {\n setSelectedAnswers(prev => ({\n ...prev,\n [currentQuestion]: [answer]\n }));\n handleNext();\n } else if (currentQuestionData.type === 'multi') {\n setSelectedAnswers(prev => {\n const currentAnswers = prev[currentQuestion] || [];\n const updatedAnswers = currentAnswers.includes(answer)\n ? currentAnswers.filter(a => a !== answer)\n : [...currentAnswers, answer];\n return {\n ...prev,\n [currentQuestion]: updatedAnswers\n };\n });\n }\n };\n\n const handleTextSubmit = () => {\n if (!textAnswer.trim()) return;\n setSelectedAnswers(prev => ({\n ...prev,\n [currentQuestion]: [textAnswer]\n }));\n handleNext();\n setTextAnswer('');\n };\n\n const handleNext = () => {\n onNext(currentQuestion + 1);\n setCurrentQuestion(currentQuestion + 1);\n };\n\n const handlePrevious = () => {\n if (currentQuestion > 0) {\n onPrev(currentQuestion - 1);\n setCurrentQuestion(currentQuestion - 1);\n }\n };\n\n const renderQuestion = () => {\n if (!currentQuestionData) return null;\n\n switch (currentQuestionData.type) {\n case 'splash':\n return (\n <div className={styles.splash}>\n {currentQuestionData.imageUrl && (\n <img\n src={currentQuestionData.imageUrl}\n alt={currentQuestionData.question}\n className={styles.splashImage}\n />\n )}\n <h2>{currentQuestionData.question}</h2>\n </div>\n );\n\n case 'loader':\n return (\n <div className={styles.loader}>\n {currentQuestionData.imageUrl && (\n <img\n src={currentQuestionData.imageUrl}\n alt={currentQuestionData.question}\n className={styles.loaderImage}\n />\n )}\n <h2>{currentQuestionData.question}</h2>\n <div className={styles.loaderContainer}>\n <div className={styles.loaderSpinner} />\n <p className={styles.loadingText}>\n {currentQuestionData.loadingText || 'Loading...'}\n </p>\n </div>\n {currentQuestionData.answers && (\n <div className={styles.loaderOptions}>\n {currentQuestionData.answers.map((answer, index) => (\n <div key={index} className={styles.loaderOption}>\n {answer.imageUrl && (\n <img\n src={answer.imageUrl}\n alt={answer.text}\n className={styles.optionImage}\n />\n )}\n <span>{answer.text}</span>\n </div>\n ))}\n </div>\n )}\n </div>\n );\n\n case 'result':\n return (\n <div className={styles.result}>\n {currentQuestionData.imageUrl && (\n <img\n src={currentQuestionData.imageUrl}\n alt={currentQuestionData.resultTitle || currentQuestionData.question}\n className={styles.resultHeaderImage}\n />\n )}\n <h2>{currentQuestionData.resultTitle || currentQuestionData.question}</h2>\n {currentQuestionData.resultSubtitle && (\n <p className={styles.resultSubtitle}>{currentQuestionData.resultSubtitle}</p>\n )}\n <div className={styles.resultItems}>\n {currentQuestionData.resultItems?.map((item, index) => (\n <div key={index} className={styles.resultItem}>\n {item.imageUrl && (\n <img\n src={item.imageUrl}\n alt={item.title}\n className={styles.resultItemImage}\n />\n )}\n <div className={styles.resultItemContent}>\n <h3>{item.title}</h3>\n <p>{item.description}</p>\n {item.score !== undefined && (\n <div className={styles.resultScore}>\n <div\n className={styles.resultScoreBar}\n style={{ width: `${item.score}%` }}\n />\n <span>{item.score}% Match</span>\n </div>\n )}\n {item.tags && item.tags.length > 0 && (\n <div className={styles.resultTags}>\n {item.tags.map((tag, tagIndex) => (\n <span key={tagIndex} className={styles.resultTag}>\n {tag}\n </span>\n ))}\n </div>\n )}\n </div>\n </div>\n ))}\n </div>\n {currentQuestionData.hasNext && (\n <button\n className={styles.submitButton}\n onClick={handleNext}\n >\n {currentQuestionData.nextButtonText || 'Next'}\n </button>\n )}\n </div>\n );\n\n case 'single':\n return (\n <div className={styles.answers}>\n {currentQuestionData.answers?.map((answer, index) => (\n <label key={index} className={styles.answerOption}>\n <input\n type=\"radio\"\n name={`question-${currentQuestion}`}\n value={answer.text}\n checked={selectedAnswers[currentQuestion]?.includes(answer.text)}\n onChange={() => handleAnswerSelect(answer.text)}\n />\n {answer.imageUrl && (\n <img\n src={answer.imageUrl}\n alt={answer.text}\n className={styles.answerImage}\n />\n )}\n <span>{answer.text}</span>\n </label>\n ))}\n </div>\n );\n\n case 'multi':\n return (\n <div className={styles.answers}>\n {currentQuestionData.answers?.map((answer, index) => (\n <label key={index} className={styles.answerOption}>\n <input\n type=\"checkbox\"\n value={answer.text}\n checked={selectedAnswers[currentQuestion]?.includes(answer.text)}\n onChange={() => handleAnswerSelect(answer.text)}\n />\n {answer.imageUrl && (\n <img\n src={answer.imageUrl}\n alt={answer.text}\n className={styles.answerImage}\n />\n )}\n <span>{answer.text}</span>\n </label>\n ))}\n <button\n className={styles.submitButton}\n onClick={() => {\n handleNext();\n }}\n disabled={!selectedAnswers[currentQuestion]?.length}\n >\n {currentQuestionData.nextButtonText || 'Next'}\n </button>\n </div>\n );\n\n case 'text':\n return (\n <div className={styles.textAnswer}>\n <input\n type=\"text\"\n value={textAnswer}\n onChange={(e) => setTextAnswer(e.target.value)}\n placeholder={currentQuestionData.placeholder}\n className={styles.textInput}\n />\n <button\n className={styles.submitButton}\n onClick={handleTextSubmit}\n disabled={!textAnswer.trim()}\n >\n {currentQuestionData.nextButtonText || 'Next'}\n </button>\n </div>\n );\n\n default:\n return null;\n }\n };\n\n return (\n <div className={`${className} ${isCompleted ? styles.completed : ''}`}>\n <div className={styles.questionContainer}>\n <div className={styles.progressBar}>\n <div\n className={styles.progressFill}\n style={{ width: `${progress}%` }}\n />\n </div>\n {currentQuestionData?.imageUrl && currentQuestionData.type !== 'splash' && currentQuestionData.type !== 'loader' && (\n <img\n src={currentQuestionData.imageUrl}\n alt={currentQuestionData.question}\n className={styles.questionImage}\n />\n )}\n <h1 className={styles.question}>{currentQuestionData?.question}</h1>\n {currentQuestionData?.subtitle && (\n <p className={styles.questionSubtitle}>{currentQuestionData.subtitle}</p>\n )}\n {renderQuestion()}\n </div>\n </div>\n );\n};\n"],"names":["Prelander","_a","_b","className","questions","tracker","onNext","onPrev","_c","__read","useState","currentQuestion","setCurrentQuestion","_d","selectedAnswers","setSelectedAnswers","_e","textAnswer","setTextAnswer","isCompleted","length","currentQuestionData","progress","useEffect","type","duration","timer_1","setTimeout","advancedInPreFlow","handleNext","clearTimeout","timer_2","handleAnswerSelect","answer","prev","__assign","currentAnswers","updatedAnswers","includes","filter","a","__spreadArray","handleTextSubmit","trim","React","createElement","concat","styles","completed","questionContainer","progressBar","progressFill","style","width","imageUrl","src","alt","question","questionImage","subtitle","questionSubtitle","splash","splashImage","loader","loaderImage","loaderContainer","loaderSpinner","loadingText","answers","loaderOptions","map","index","key","loaderOption","text","optionImage","result","resultTitle","resultHeaderImage","resultSubtitle","resultItems","item","resultItem","title","resultItemImage","resultItemContent","description","undefined","score","resultScore","resultScoreBar","tags","resultTags","tag","tagIndex","resultTag","hasNext","submitButton","onClick","nextButtonText","answerOption","name","value","checked","onChange","answerImage","disabled","e","target","placeholder","textInput","renderQuestion"],"mappings":"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"}
1
+ {"version":3,"file":"Prelander.js","sources":["../src/Prelanders/Prelander/Prelander.tsx"],"sourcesContent":["/* eslint-disable react/button-has-type */\nimport React, { useEffect, useState } from 'react';\nimport styles from './Prelander.module.scss';\nimport { interfaceFeatures } from './Prelander.type';\n\nexport const Prelander = ({ locale, className = '', questions, tracker, onNext, onPrev }: interfaceFeatures) => {\n const [currentQuestion, setCurrentQuestion] = useState(0);\n const [selectedAnswers, setSelectedAnswers] = useState<{ [key: number]: string[] }>({});\n const [textAnswer, setTextAnswer] = useState<string>('');\n\n const isCompleted = currentQuestion >= questions.length;\n const currentQuestionData = questions[currentQuestion];\n const progress = ((currentQuestion + 1) / questions.length) * 100;\n\n useEffect(() => {\n if (currentQuestionData?.type === 'splash' && currentQuestionData.duration) {\n const timer = setTimeout(() => {\n if (tracker) {\n tracker.advancedInPreFlow('prelander', 'splash');\n }\n handleNext();\n }, currentQuestionData.duration);\n return () => clearTimeout(timer);\n }\n }, [currentQuestion, currentQuestionData, tracker]);\n\n useEffect(() => {\n if (currentQuestionData?.type === 'loader' && currentQuestionData.duration) {\n const timer = setTimeout(() => {\n if (tracker) {\n tracker.advancedInPreFlow('prelander', 'loader');\n }\n handleNext();\n }, currentQuestionData.duration);\n return () => clearTimeout(timer);\n }\n }, [currentQuestion, currentQuestionData, tracker]);\n\n const handleAnswerSelect = (answer: string) => {\n if (!currentQuestionData) return;\n\n if (currentQuestionData.type === 'single') {\n setSelectedAnswers((prev) => ({\n ...prev,\n [currentQuestion]: [answer]\n }));\n handleNext();\n } else if (currentQuestionData.type === 'multi') {\n setSelectedAnswers((prev) => {\n const currentAnswers = prev[currentQuestion] || [];\n const updatedAnswers = currentAnswers.includes(answer)\n ? currentAnswers.filter((a) => a !== answer)\n : [...currentAnswers, answer];\n return {\n ...prev,\n [currentQuestion]: updatedAnswers\n };\n });\n }\n };\n\n const handleTextSubmit = () => {\n if (!textAnswer.trim()) return;\n setSelectedAnswers((prev) => ({\n ...prev,\n [currentQuestion]: [textAnswer]\n }));\n handleNext();\n setTextAnswer('');\n };\n\n const handleNext = () => {\n onNext(currentQuestion + 1);\n setCurrentQuestion(currentQuestion + 1);\n };\n\n const handlePrevious = () => {\n if (currentQuestion > 0) {\n onPrev(currentQuestion - 1);\n setCurrentQuestion(currentQuestion - 1);\n }\n };\n\n const renderQuestion = () => {\n if (!currentQuestionData) return null;\n\n switch (currentQuestionData.type) {\n case 'splash':\n return (\n <div className={styles.splash}>\n {currentQuestionData.imageUrl && (\n <img\n src={currentQuestionData.imageUrl}\n alt={currentQuestionData.question}\n className={styles.splashImage}\n />\n )}\n <h2>{currentQuestionData.question}</h2>\n </div>\n );\n\n case 'loader':\n return (\n <div className={styles.loader}>\n {currentQuestionData.imageUrl && (\n <img\n src={currentQuestionData.imageUrl}\n alt={currentQuestionData.question}\n className={styles.loaderImage}\n />\n )}\n <h2>{currentQuestionData.question}</h2>\n <div className={styles.loaderContainer}>\n <div className={styles.loaderSpinner} />\n <p className={styles.loadingText}>{currentQuestionData.loadingText || 'Loading...'}</p>\n </div>\n {currentQuestionData.answers && (\n <div className={styles.loaderOptions}>\n {currentQuestionData.answers.map((answer, index) => (\n <div key={index} className={styles.loaderOption}>\n {answer.imageUrl && <img src={answer.imageUrl} alt={answer.text} className={styles.optionImage} />}\n <span>{answer.text}</span>\n </div>\n ))}\n </div>\n )}\n </div>\n );\n\n case 'result':\n return (\n <div className={styles.result}>\n {currentQuestionData.imageUrl && (\n <img\n src={currentQuestionData.imageUrl}\n alt={currentQuestionData.resultTitle || currentQuestionData.question}\n className={styles.resultHeaderImage}\n />\n )}\n <h2>{currentQuestionData.resultTitle || currentQuestionData.question}</h2>\n {currentQuestionData.resultSubtitle && (\n <p className={styles.resultSubtitle}>{currentQuestionData.resultSubtitle}</p>\n )}\n <div className={styles.resultItems}>\n {currentQuestionData.resultItems?.map((item, index) => (\n <div key={index} className={styles.resultItem}>\n {item.imageUrl && <img src={item.imageUrl} alt={item.title} className={styles.resultItemImage} />}\n <div className={styles.resultItemContent}>\n <h3>{item.title}</h3>\n <p>{item.description}</p>\n {item.score !== undefined && (\n <div className={styles.resultScore}>\n <div className={styles.resultScoreBar} style={{ width: `${item.score}%` }} />\n <span>{item.score}% Match</span>\n </div>\n )}\n {item.tags && item.tags.length > 0 && (\n <div className={styles.resultTags}>\n {item.tags.map((tag, tagIndex) => (\n <span key={tagIndex} className={styles.resultTag}>\n {tag}\n </span>\n ))}\n </div>\n )}\n </div>\n </div>\n ))}\n </div>\n {currentQuestionData.hasNext && (\n <button className={styles.submitButton} onClick={handleNext}>\n {currentQuestionData.nextButtonText || 'Next'}\n </button>\n )}\n </div>\n );\n\n case 'single':\n return (\n <div className={styles.answers}>\n {currentQuestionData.answers?.map((answer, index) => (\n <label key={index} className={styles.answerOption}>\n <input\n type=\"radio\"\n name={`question-${currentQuestion}`}\n value={answer.text}\n checked={selectedAnswers[currentQuestion]?.includes(answer.text)}\n onChange={() => handleAnswerSelect(answer.text)}\n />\n {answer.imageUrl && <img src={answer.imageUrl} alt={answer.text} className={styles.answerImage} />}\n <span>{answer.text}</span>\n </label>\n ))}\n </div>\n );\n\n case 'multi':\n return (\n <div className={styles.answers}>\n {currentQuestionData.answers?.map((answer, index) => (\n <label key={index} className={styles.answerOption}>\n <input\n type=\"checkbox\"\n value={answer.text}\n checked={selectedAnswers[currentQuestion]?.includes(answer.text)}\n onChange={() => handleAnswerSelect(answer.text)}\n />\n {answer.imageUrl && <img src={answer.imageUrl} alt={answer.text} className={styles.answerImage} />}\n <span>{answer.text}</span>\n </label>\n ))}\n <button\n className={styles.submitButton}\n onClick={() => {\n handleNext();\n }}\n disabled={!selectedAnswers[currentQuestion]?.length}\n >\n {currentQuestionData.nextButtonText || 'Next'}\n </button>\n </div>\n );\n\n case 'text':\n return (\n <div className={styles.textAnswer}>\n <input\n type=\"text\"\n value={textAnswer}\n onChange={(e) => setTextAnswer(e.target.value)}\n placeholder={currentQuestionData.placeholder}\n className={styles.textInput}\n />\n <button className={styles.submitButton} onClick={handleTextSubmit} disabled={!textAnswer.trim()}>\n {currentQuestionData.nextButtonText || 'Next'}\n </button>\n </div>\n );\n\n default:\n return null;\n }\n };\n\n return (\n <div className={`${className} ${isCompleted ? styles.completed : ''}`}>\n <div className={styles.questionContainer}>\n <div className={styles.progressBar}>\n <div className={styles.progressFill} style={{ width: `${progress}%` }} />\n </div>\n {currentQuestionData?.imageUrl &&\n currentQuestionData.type !== 'splash' &&\n currentQuestionData.type !== 'loader' && (\n <img\n src={currentQuestionData.imageUrl}\n alt={currentQuestionData.question}\n className={styles.questionImage}\n />\n )}\n <h1 className={styles.question}>{currentQuestionData?.question}</h1>\n {currentQuestionData?.subtitle && <p className={styles.questionSubtitle}>{currentQuestionData.subtitle}</p>}\n {renderQuestion()}\n </div>\n </div>\n );\n};\n"],"names":["Prelander","_a","_b","className","questions","tracker","onNext","onPrev","_c","__read","useState","currentQuestion","setCurrentQuestion","_d","selectedAnswers","setSelectedAnswers","_e","textAnswer","setTextAnswer","isCompleted","length","currentQuestionData","progress","useEffect","type","duration","timer_1","setTimeout","advancedInPreFlow","handleNext","clearTimeout","timer_2","handleAnswerSelect","answer","prev","__assign","currentAnswers","updatedAnswers","includes","filter","a","__spreadArray","handleTextSubmit","trim","React","createElement","concat","styles","completed","questionContainer","progressBar","progressFill","style","width","imageUrl","src","alt","question","questionImage","subtitle","questionSubtitle","splash","splashImage","loader","loaderImage","loaderContainer","loaderSpinner","loadingText","answers","loaderOptions","map","index","key","loaderOption","text","optionImage","result","resultTitle","resultHeaderImage","resultSubtitle","resultItems","item","resultItem","title","resultItemImage","resultItemContent","description","undefined","score","resultScore","resultScoreBar","tags","resultTags","tag","tagIndex","resultTag","hasNext","submitButton","onClick","nextButtonText","answerOption","name","value","checked","onChange","answerImage","disabled","e","target","placeholder","textInput","renderQuestion"],"mappings":"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"}