ouisys-component-library 3.0.69 → 3.0.71

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 (124) hide show
  1. package/dist/AcceptanceCheckbox.js +1 -1
  2. package/dist/AcceptanceCheckbox.js.map +1 -1
  3. package/dist/Button-0293e703.js +2 -0
  4. package/dist/Button-0293e703.js.map +1 -0
  5. package/dist/Button-e9c9447e.js +2 -0
  6. package/dist/Button-e9c9447e.js.map +1 -0
  7. package/dist/Button.js +1 -1
  8. package/dist/ChainRedirect-0d2b160d.js +2 -0
  9. package/dist/ChainRedirect-0d2b160d.js.map +1 -0
  10. package/dist/ChainRedirect-c27ccb70.js +2 -0
  11. package/dist/ChainRedirect-c27ccb70.js.map +1 -0
  12. package/dist/ChainRedirect.js +1 -1
  13. package/dist/CookieConsent-2f080cc6.js +2 -0
  14. package/dist/CookieConsent-2f080cc6.js.map +1 -0
  15. package/dist/CookieConsent-a2bf0300.js +2 -0
  16. package/dist/CookieConsent-a2bf0300.js.map +1 -0
  17. package/dist/CookieConsent.js +1 -1
  18. package/dist/Disclaimers.js.map +1 -1
  19. package/dist/ExtraDisclaimers-7bfd26b4.js +2 -0
  20. package/dist/ExtraDisclaimers-7bfd26b4.js.map +1 -0
  21. package/dist/ExtraDisclaimers-b91a6737.js +2 -0
  22. package/dist/ExtraDisclaimers-b91a6737.js.map +1 -0
  23. package/dist/ExtraDisclaimers.js +1 -1
  24. package/dist/Features-a62b1c31.js +2 -0
  25. package/dist/Features-a62b1c31.js.map +1 -0
  26. package/dist/Features-e7ace9cd.js +2 -0
  27. package/dist/Features-e7ace9cd.js.map +1 -0
  28. package/dist/Features.js +1 -1
  29. package/dist/Footer-d97c3762.js +2 -0
  30. package/dist/Footer-d97c3762.js.map +1 -0
  31. package/dist/Footer-f6eaac3d.js +2 -0
  32. package/dist/Footer-f6eaac3d.js.map +1 -0
  33. package/dist/Footer.js +1 -1
  34. package/dist/Header.js +1 -1
  35. package/dist/Intl-3f6e1182.js +2 -0
  36. package/dist/Intl-3f6e1182.js.map +1 -0
  37. package/dist/Intl-a0eb8ab5.js +2 -0
  38. package/dist/Intl-a0eb8ab5.js.map +1 -0
  39. package/dist/IntlProvider.js +1 -1
  40. package/dist/LanguageSwitcher-3cbf25ef.js +2 -0
  41. package/dist/LanguageSwitcher-3cbf25ef.js.map +1 -0
  42. package/dist/LanguageSwitcher-9361b31a.js +2 -0
  43. package/dist/LanguageSwitcher-9361b31a.js.map +1 -0
  44. package/dist/LanguageSwitcher-9cdfeab0.js +2 -0
  45. package/dist/LanguageSwitcher-9cdfeab0.js.map +1 -0
  46. package/dist/LanguageSwitcher-b5a3b8e9.js +2 -0
  47. package/dist/LanguageSwitcher-b5a3b8e9.js.map +1 -0
  48. package/dist/LanguageSwitcher.js +1 -1
  49. package/dist/Link-8f8d472f.js +2 -0
  50. package/dist/Link-8f8d472f.js.map +1 -0
  51. package/dist/Link-d8e5c3da.js +2 -0
  52. package/dist/Link-d8e5c3da.js.map +1 -0
  53. package/dist/Link.js +1 -1
  54. package/dist/MOLink-8ffbd43f.js +2 -0
  55. package/dist/MOLink-8ffbd43f.js.map +1 -0
  56. package/dist/MOLink-c577b000.js +2 -0
  57. package/dist/MOLink-c577b000.js.map +1 -0
  58. package/dist/MOLink.js +1 -1
  59. package/dist/Menu-d3df633b.js +2 -0
  60. package/dist/Menu-d3df633b.js.map +1 -0
  61. package/dist/Menu-ea34cef1.js +2 -0
  62. package/dist/Menu-ea34cef1.js.map +1 -0
  63. package/dist/Menu.js +1 -1
  64. package/dist/PageContent.js +1 -1
  65. package/dist/PageContent.js.map +1 -1
  66. package/dist/Persuasive.js +1 -1
  67. package/dist/Persuasive.js.map +1 -1
  68. package/dist/PhoneEntryForm.js +1 -1
  69. package/dist/PhoneEntryForm.js.map +1 -1
  70. package/dist/PhoneInput-c334169d.js +2 -0
  71. package/dist/PhoneInput-c334169d.js.map +1 -0
  72. package/dist/PhoneInput-e2fdf8fb.js +2 -0
  73. package/dist/PhoneInput-e2fdf8fb.js.map +1 -0
  74. package/dist/PhoneInput.js +1 -1
  75. package/dist/PinEntryForm.js +1 -1
  76. package/dist/PricingPolicy-6caa0ead.js +2 -0
  77. package/dist/PricingPolicy-6caa0ead.js.map +1 -0
  78. package/dist/PricingPolicy-b9b3a1cd.js +2 -0
  79. package/dist/PricingPolicy-b9b3a1cd.js.map +1 -0
  80. package/dist/PricingPolicy.js +1 -1
  81. package/dist/ProductArea.js +1 -1
  82. package/dist/RefundPolicy-7f917b6f.js +2 -0
  83. package/dist/RefundPolicy-7f917b6f.js.map +1 -0
  84. package/dist/RefundPolicy-b1d851ef.js +2 -0
  85. package/dist/RefundPolicy-b1d851ef.js.map +1 -0
  86. package/dist/RefundPolicy.js +1 -1
  87. package/dist/Showcase-ee7dc3c3.js +2 -0
  88. package/dist/Showcase-ee7dc3c3.js.map +1 -0
  89. package/dist/Showcase-eeab283c.js +2 -0
  90. package/dist/Showcase-eeab283c.js.map +1 -0
  91. package/dist/Showcase.js +1 -1
  92. package/dist/Steps.js +1 -1
  93. package/dist/Steps.js.map +1 -1
  94. package/dist/TermsAcceptanceCheck.js +1 -1
  95. package/dist/Testimonials-28fe9613.js +2 -0
  96. package/dist/Testimonials-28fe9613.js.map +1 -0
  97. package/dist/Testimonials-df688d1b.js +2 -0
  98. package/dist/Testimonials-df688d1b.js.map +1 -0
  99. package/dist/Testimonials.js +1 -1
  100. package/dist/ThankYou.js +1 -1
  101. package/dist/Translate.js +1 -1
  102. package/dist/Unsubscription-67dbeb7a.js +2 -0
  103. package/dist/Unsubscription-67dbeb7a.js.map +1 -0
  104. package/dist/Unsubscription-dd314af7.js +2 -0
  105. package/dist/Unsubscription-dd314af7.js.map +1 -0
  106. package/dist/Unsubscription.js +1 -1
  107. package/dist/defineMessages.js +1 -1
  108. package/dist/formatSMSLink.js +1 -1
  109. package/dist/injectIntl.js +1 -1
  110. package/dist/routes-390153cd.js +2 -0
  111. package/dist/routes-390153cd.js.map +1 -0
  112. package/dist/routes-bbd98109.js +2 -0
  113. package/dist/routes-bbd98109.js.map +1 -0
  114. package/dist/styles.css +1 -1
  115. package/dist/styles.css.map +1 -1
  116. package/dist/types/AcceptanceCheckbox/AcceptanceCheckbox.d.ts +1 -1
  117. package/dist/types/AcceptanceCheckbox/AcceptanceCheckbox.types.d.ts +3 -0
  118. package/dist/types/Disclaimers/Disclaimers.types.d.ts +1 -0
  119. package/dist/types/PageContent/PageContent.d.ts +1 -1
  120. package/dist/types/PageContent/PageContent.types.d.ts +2 -2
  121. package/dist/types/Steps/Steps.d.ts +1 -1
  122. package/dist/types/Steps/Steps.types.d.ts +3 -1
  123. package/dist/types/custom-types.d.ts +1 -1
  124. package/package.json +1 -1
package/dist/Menu.js CHANGED
@@ -1,2 +1,2 @@
1
- export{M as Menu}from"./Menu-61798040.js";import"tslib";import"classnames";import"react";import"./routes-8b2d7c95.js";
1
+ export{M as Menu}from"./Menu-ea34cef1.js";import"tslib";import"classnames";import"react";import"./routes-390153cd.js";
2
2
  //# sourceMappingURL=Menu.js.map
@@ -1,2 +1,2 @@
1
- import o from"react";import{C as e}from"./CookieConsent-5ea48d38.js";import{F as i}from"./Features-3c100cd3.js";import{F as l}from"./Footer-7c90dfee.js";import{P as n}from"./PricingPolicy-d6033103.js";import{R as t}from"./RefundPolicy-ab3b4096.js";import{S as a}from"./Showcase-a08ed0a0.js";import{T as c}from"./Testimonials-70ed1a40.js";import{U as r}from"./Unsubscription-ce4c9907.js";import"tslib";import"classnames";import"./Intl-862ecae2.js";import"./routes-8b2d7c95.js";var s=function(s){var d,m,u,v,p,w,f=s.email,h=s.pageConfigs,C=s.locale,g=s.priceUnit,S=s.priceValue,E=s.tracker,b=s.onConsentUpdate,j=(null===(d=null==h?void 0:h.logo)||void 0===d?void 0:d.url)||"";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==h?void 0:h.isShowWhyChooseUs)&&o.createElement(i,{type:null==h?void 0:h.contentCategory,locale:C,tracker:E,domain:(null===(m=null===window||void 0===window?void 0:window.location)||void 0===m?void 0:m.origin)||"",headline:""}),(null==h?void 0:h.isShowShowCase)&&o.createElement(a,{tracker:E,locale:C,type:null==h?void 0:h.contentCategory,domain:(null===(u=null===window||void 0===window?void 0:window.location)||void 0===u?void 0:u.origin)||""}),(null==h?void 0:h.isShowPricingTable)&&o.createElement(n,{hideSections:!0,priceUnit:g,priceValue:S,locale:C}),(null==h?void 0:h.isShowRefundPolicy)&&o.createElement(t,{locale:C,serviceName:null==h?void 0:h.serviceName}),(null==h?void 0:h.isShowUnsubscription)&&o.createElement(r,{locale:C}),(null==h?void 0:h.isShowTestimonials)&&o.createElement(c,{locale:C})),(null==h?void 0:h.isShowAboutUs)&&o.createElement(l,{locale:C,mccName:null===(v=null==h?void 0:h.mccInformation)||void 0===v?void 0:v.mcc,address:null===(p=null==h?void 0:h.mccInformation)||void 0===p?void 0:p.address,email:f,phone:null===(w=null==h?void 0:h.mccInformation)||void 0===w?void 0:w.mcc_phone_number,logoUrl:j,className:"footer"}),(null==h?void 0:h.isShowCookieConsent)&&o.createElement(e,{hasMoreOptions:!0,onUpdate:function(o){b&&b(o)},locale:C}))};export{s as PageContent};
1
+ import o from"react";import{C as e}from"./CookieConsent-2f080cc6.js";import{F as i}from"./Features-a62b1c31.js";import{F as l}from"./Footer-d97c3762.js";import{P as n}from"./PricingPolicy-b9b3a1cd.js";import{R as t}from"./RefundPolicy-b1d851ef.js";import{S as a}from"./Showcase-eeab283c.js";import{T as c}from"./Testimonials-df688d1b.js";import{U as r}from"./Unsubscription-67dbeb7a.js";import"tslib";import"classnames";import"./Intl-a0eb8ab5.js";import"./routes-390153cd.js";var s=function(s){var d,m,u,v,p,w,f=s.email,h=s.pageConfigs,b=s.locale,g=s.legals,C=s.tracker,S=s.onConsentUpdate,E=(null===(d=null==h?void 0:h.logo)||void 0===d?void 0:d.url)||"";return o.createElement("div",{className:"page-content",onClick:function(){}},o.createElement("div",{className:"scroll-up",onClick:function(){window.scrollTo({top:0,behavior:"smooth"}),null==C||C.customEvent("image-cards","click","scroll-to-top")}},(null==h?void 0:h.isShowWhyChooseUs)&&o.createElement(i,{type:null==h?void 0:h.contentCategory,locale:b,tracker:C,domain:(null===(m=null===window||void 0===window?void 0:window.location)||void 0===m?void 0:m.origin)||"",headline:""}),(null==h?void 0:h.isShowShowCase)&&o.createElement(a,{tracker:C,locale:b,type:null==h?void 0:h.contentCategory,domain:(null===(u=null===window||void 0===window?void 0:window.location)||void 0===u?void 0:u.origin)||""}),(null==h?void 0:h.isShowPricingTable)&&o.createElement(n,{hideSections:!0,priceUnit:null==g?void 0:g.price_unit,priceValue:null==g?void 0:g.price_point,locale:b}),(null==h?void 0:h.isShowRefundPolicy)&&o.createElement(t,{locale:b,serviceName:null==h?void 0:h.serviceName}),(null==h?void 0:h.isShowUnsubscription)&&o.createElement(r,{locale:b}),(null==h?void 0:h.isShowTestimonials)&&o.createElement(c,{locale:b})),(null==h?void 0:h.isShowAboutUs)&&o.createElement(l,{locale:b,mccName:null===(v=null==h?void 0:h.mccInformation)||void 0===v?void 0:v.mcc,address:null===(p=null==h?void 0:h.mccInformation)||void 0===p?void 0:p.address,email:f,phone:null===(w=null==h?void 0:h.mccInformation)||void 0===w?void 0:w.mcc_phone_number,logoUrl:E,className:"footer"}),(null==h?void 0:h.isShowCookieConsent)&&o.createElement(e,{hasMoreOptions:!0,onUpdate:function(o){S&&S(o)},locale:b}))};export{s as PageContent};
2
2
  //# sourceMappingURL=PageContent.js.map
@@ -1 +1 @@
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 email,\n pageConfigs,\n locale,\n priceUnit,\n priceValue,\n tracker,\n onConsentUpdate\n}: InterfaceFeatures) => {\n const logoUrl = pageConfigs?.logo?.url || '';\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 && <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={email}\n phone={pageConfigs?.mccInformation?.mcc_phone_number}\n logoUrl={logoUrl}\n className=\"footer\"\n />\n )}\n\n {pageConfigs?.isShowCookieConsent && (\n <CookieConsent\n hasMoreOptions\n onUpdate={(consent) => {\n if (onConsentUpdate) {\n onConsentUpdate(consent);\n }\n }}\n locale={locale}\n />\n )}\n </div>\n );\n};\n"],"names":["PageContent","_a","email","pageConfigs","locale","priceUnit","priceValue","tracker","onConsentUpdate","logoUrl","_b","logo","url","React","createElement","className","onClick","window","scrollTo","top","behavior","customEvent","isShowWhyChooseUs","Features","type","contentCategory","domain","_c","location","origin","headline","isShowShowCase","Showcase","_d","isShowPricingTable","PricingPolicy","hideSections","isShowRefundPolicy","RefundPolicy","serviceName","isShowUnsubscription","Unsubscription","isShowTestimonials","Testimonials","isShowAboutUs","Footer","mccName","_e","mccInformation","mcc","address","_f","phone","_g","mcc_phone_number","isShowCookieConsent","CookieConsent","hasMoreOptions","onUpdate","consent"],"mappings":"4dAWO,IAAMA,EAAc,SAACC,mBAC1BC,UACAC,gBACAC,WACAC,EAASJ,EAAAI,UACTC,EAAUL,EAAAK,WACVC,EAAON,EAAAM,QACPC,EAAeP,EAAAO,gBAETC,GAA2B,QAAjBC,EAAAP,aAAA,EAAAA,EAAaQ,YAAI,IAAAD,OAAA,EAAAA,EAAEE,MAAO,GAM1C,OACEC,EAAAC,cAAA,MAAA,CAAKC,UAAU,eAAeC,QAAS,cACrCH,EAAAC,cAAA,MAAA,CACEC,UAAU,YACVC,QAAS,WACPC,OAAOC,SAAS,CAAEC,IAAK,EAAGC,SAAU,WACpCb,SAAAA,EAASc,YAAY,cAAe,QAAS,oBAG9ClB,aAAW,EAAXA,EAAamB,oBACZT,EAACC,cAAAS,GACCC,KAAMrB,aAAW,EAAXA,EAAasB,gBACnBrB,OAAQA,EACRG,QAASA,EACTmB,QAA0B,QAAlBC,EAAM,OAANV,aAAM,IAANA,YAAM,EAANA,OAAQW,gBAAU,IAAAD,OAAA,EAAAA,EAAAE,SAAU,GACpCC,SAAS,MAIZ3B,aAAW,EAAXA,EAAa4B,iBACZlB,EAAAC,cAACkB,EACC,CAAAzB,QAASA,EACTH,OAAQA,EACRoB,KAAMrB,aAAW,EAAXA,EAAasB,gBACnBC,gBAAQO,SAAAhB,aAAM,IAANA,YAAM,EAANA,OAAQW,+BAAUC,SAAU,MAIvC1B,aAAA,EAAAA,EAAa+B,qBACZrB,EAACC,cAAAqB,EAAc,CAAAC,gBAAa/B,UAAWA,EAAWC,WAAYA,EAAYF,OAAQA,KAGnFD,aAAA,EAAAA,EAAakC,qBAAsBxB,EAACC,cAAAwB,EAAa,CAAAlC,OAAQA,EAAQmC,YAAapC,aAAA,EAAAA,EAAaoC,eAE3FpC,aAAW,EAAXA,EAAaqC,uBAAwB3B,EAAAC,cAAC2B,EAAc,CAACrC,OAAQA,KAE7DD,aAAW,EAAXA,EAAauC,qBAAsB7B,EAAAC,cAAC6B,EAAa,CAAAvC,OAAQA,MAG3DD,aAAW,EAAXA,EAAayC,gBACZ/B,EAAAC,cAAC+B,EAAM,CACLzC,OAAQA,EACR0C,QAAsC,QAA7BC,EAAA5C,aAAA,EAAAA,EAAa6C,sBAAgB,IAAAD,OAAA,EAAAA,EAAAE,IACtCC,gBAASC,EAAAhD,aAAA,EAAAA,EAAa6C,qCAAgBE,QACtChD,MAAOA,EACPkD,MAAkC,UAA3BjD,aAAW,EAAXA,EAAa6C,sBAAc,IAAAK,OAAA,EAAAA,EAAEC,iBACpC7C,QAASA,EACTM,UAAU,YAIbZ,aAAA,EAAAA,EAAaoD,sBACZ1C,EAAAC,cAAC0C,EACC,CAAAC,kBACAC,SAAU,SAACC,GACLnD,GACFA,EAAgBmD,EAEnB,EACDvD,OAAQA,IAKlB"}
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 = ({ email, pageConfigs, locale, legals, tracker, onConsentUpdate }: InterfaceFeatures) => {\n const logoUrl = pageConfigs?.logo?.url || '';\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={legals?.price_unit} priceValue={legals?.price_point} 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={email}\n phone={pageConfigs?.mccInformation?.mcc_phone_number}\n logoUrl={logoUrl}\n className=\"footer\"\n />\n )}\n\n {pageConfigs?.isShowCookieConsent && (\n <CookieConsent\n hasMoreOptions\n onUpdate={(consent) => {\n if (onConsentUpdate) {\n onConsentUpdate(consent);\n }\n }}\n locale={locale}\n />\n )}\n </div>\n );\n};\n"],"names":["PageContent","_a","email","pageConfigs","locale","legals","tracker","onConsentUpdate","logoUrl","_b","logo","url","React","createElement","className","onClick","window","scrollTo","top","behavior","customEvent","isShowWhyChooseUs","Features","type","contentCategory","domain","_c","location","origin","headline","isShowShowCase","Showcase","_d","isShowPricingTable","PricingPolicy","hideSections","priceUnit","price_unit","priceValue","price_point","isShowRefundPolicy","RefundPolicy","serviceName","isShowUnsubscription","Unsubscription","isShowTestimonials","Testimonials","isShowAboutUs","Footer","mccName","_e","mccInformation","mcc","address","_f","phone","_g","mcc_phone_number","isShowCookieConsent","CookieConsent","hasMoreOptions","onUpdate","consent"],"mappings":"4dAWO,IAAMA,EAAc,SAACC,mBAAEC,EAAKD,EAAAC,MAAEC,EAAWF,EAAAE,YAAEC,EAAMH,EAAAG,OAAEC,WAAQC,EAAOL,EAAAK,QAAEC,EAAeN,EAAAM,gBAClFC,GAA2B,QAAjBC,EAAAN,aAAA,EAAAA,EAAaO,YAAI,IAAAD,OAAA,EAAAA,EAAEE,MAAO,GAM1C,OACEC,EAAAC,cAAA,MAAA,CAAKC,UAAU,eAAeC,QAAS,cACrCH,EAAAC,cAAA,MAAA,CACEC,UAAU,YACVC,QAAS,WACPC,OAAOC,SAAS,CAAEC,IAAK,EAAGC,SAAU,WACpCb,SAAAA,EAASc,YAAY,cAAe,QAAS,oBAG9CjB,aAAW,EAAXA,EAAakB,oBACZT,EAACC,cAAAS,GACCC,KAAMpB,aAAW,EAAXA,EAAaqB,gBACnBpB,OAAQA,EACRE,QAASA,EACTmB,QAA0B,QAAlBC,EAAM,OAANV,aAAM,IAANA,YAAM,EAANA,OAAQW,gBAAU,IAAAD,OAAA,EAAAA,EAAAE,SAAU,GACpCC,SAAS,MAIZ1B,aAAW,EAAXA,EAAa2B,iBACZlB,EAAAC,cAACkB,EACC,CAAAzB,QAASA,EACTF,OAAQA,EACRmB,KAAMpB,aAAW,EAAXA,EAAaqB,gBACnBC,gBAAQO,SAAAhB,aAAM,IAANA,YAAM,EAANA,OAAQW,+BAAUC,SAAU,MAIvCzB,aAAA,EAAAA,EAAa8B,qBACZrB,EAAAC,cAACqB,EAAc,CAAAC,gBAAaC,UAAW/B,aAAA,EAAAA,EAAQgC,WAAYC,WAAYjC,aAAA,EAAAA,EAAQkC,YAAanC,OAAQA,KAGrGD,aAAA,EAAAA,EAAaqC,qBAAsB5B,EAACC,cAAA4B,EAAa,CAAArC,OAAQA,EAAQsC,YAAavC,aAAA,EAAAA,EAAauC,eAE3FvC,aAAW,EAAXA,EAAawC,uBAAwB/B,EAAAC,cAAC+B,EAAc,CAACxC,OAAQA,KAE7DD,aAAW,EAAXA,EAAa0C,qBAAsBjC,EAAAC,cAACiC,EAAa,CAAA1C,OAAQA,MAG3DD,aAAW,EAAXA,EAAa4C,gBACZnC,EAAAC,cAACmC,EAAM,CACL5C,OAAQA,EACR6C,QAAsC,QAA7BC,EAAA/C,aAAA,EAAAA,EAAagD,sBAAgB,IAAAD,OAAA,EAAAA,EAAAE,IACtCC,gBAASC,EAAAnD,aAAA,EAAAA,EAAagD,qCAAgBE,QACtCnD,MAAOA,EACPqD,MAAkC,UAA3BpD,aAAW,EAAXA,EAAagD,sBAAc,IAAAK,OAAA,EAAAA,EAAEC,iBACpCjD,QAASA,EACTM,UAAU,YAIbX,aAAA,EAAAA,EAAauD,sBACZ9C,EAAAC,cAAC8C,EACC,CAAAC,kBACAC,SAAU,SAACC,GACLvD,GACFA,EAAgBuD,EAEnB,EACD1D,OAAQA,IAKlB"}
@@ -1,2 +1,2 @@
1
- import e from"react";var a=function(a){var l,i,r,t=a.title,n=void 0===t?"":t,v=a.subtitle,u=void 0===v?"":v,d=a.caption,o=void 0===d?"":d,c=a.dataQaId,m=void 0===c?"qa-persuasive":c,s=a.pageConfigs,p=a.children;return(null===(l=null==s?void 0:s.persuasiveImg)||void 0===l?void 0:l.url)?e.createElement("div",{id:"creative-area",className:"creative-area"},e.createElement("div",{className:"creative","data-qa-id":m},e.createElement("img",{src:null===(i=null==s?void 0:s.persuasiveImg)||void 0===i?void 0:i.url,alt:(null===(r=null==s?void 0:s.persuasiveImg)||void 0===r?void 0:r.url)||"Persuasive Image"}),(n||u||o||p)&&e.createElement(e.Fragment,null,n&&e.createElement("h1",null,n),u&&e.createElement("p",null,u),o&&e.createElement("p",null,o),p))):null};export{a as Persuasive};
1
+ import e from"react";var a=function(a){var l,i,r,t=a.title,v=void 0===t?"":t,n=a.subtitle,u=void 0===n?"":n,d=a.caption,s=void 0===d?"":d,o=a.dataQaId,m=void 0===o?"qa-persuasive":o,c=a.pageConfigs,p=a.children;return(null===(l=null==c?void 0:c.persuasiveImg)||void 0===l?void 0:l.url)?e.createElement("div",{id:"persuasive-area",className:"persuasive-area"},e.createElement("div",{className:"persuasive","data-qa-id":m},e.createElement("img",{src:null===(i=null==c?void 0:c.persuasiveImg)||void 0===i?void 0:i.url,alt:(null===(r=null==c?void 0:c.persuasiveImg)||void 0===r?void 0:r.url)||"Persuasive Image"}),(v||u||s||p)&&e.createElement(e.Fragment,null,v&&e.createElement("h1",null,v),u&&e.createElement("div",null,u),s&&e.createElement("div",null,s),p))):null};export{a as Persuasive};
2
2
  //# sourceMappingURL=Persuasive.js.map
@@ -1 +1 @@
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 caption = '',\n // image = 'Persuasive Name',\n dataQaId = 'qa-persuasive',\n pageConfigs,\n children\n}: InterfaceFeatures) => {\n if (!pageConfigs?.persuasiveImg?.url) return null;\n\n return (\n <div id=\"creative-area\" className=\"creative-area\">\n <div className=\"creative\" data-qa-id={dataQaId}>\n <img src={pageConfigs?.persuasiveImg?.url} alt={pageConfigs?.persuasiveImg?.url || 'Persuasive 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","_e","title","_f","subtitle","_g","caption","_h","dataQaId","pageConfigs","children","_b","persuasiveImg","url","React","id","className","createElement","src","_c","alt","_d","Fragment"],"mappings":"qBAGO,IAAMA,EAAa,SAACC,aACzBC,EAAAD,EAAAE,MAAAA,OAAK,IAAAD,EAAG,GAAEA,EACVE,aAAAC,OAAW,IAAAD,EAAA,KACXE,EAAAL,EAAAM,QAAAA,OAAO,IAAAD,EAAG,GAAEA,EAEZE,EAA0BP,EAAAQ,SAA1BA,OAAQ,IAAAD,EAAG,gBAAeA,EAC1BE,EAAWT,EAAAS,YACXC,EAAQV,EAAAU,SAER,OAAiC,QAA5BC,EAAAF,aAAA,EAAAA,EAAaG,qBAAe,IAAAD,OAAA,EAAAA,EAAAE,KAG/BC,uBAAKC,GAAG,gBAAgBC,UAAU,iBAChCF,EAAAG,cAAA,MAAA,CAAKD,UAAU,WAAU,aAAaR,GACpCM,EAAAG,cAAA,MAAA,CAAKC,IAAiC,QAA5BC,EAAAV,aAAA,EAAAA,EAAaG,qBAAe,IAAAO,OAAA,EAAAA,EAAAN,IAAKO,KAAiC,QAA5BC,EAAAZ,aAAA,EAAAA,EAAaG,qBAAe,IAAAS,OAAA,EAAAA,EAAAR,MAAO,sBACjFX,GAASE,GAAYE,GAAWI,IAChCI,EAAAG,cAAAH,EAAAQ,SAAA,KACGpB,GAASY,EAAKG,cAAA,KAAA,KAAAf,GACdE,GAAYU,EAAIG,cAAA,IAAA,KAAAb,GAChBE,GAAWQ,EAAIG,cAAA,IAAA,KAAAX,GACfI,KAXkC,IAiB/C"}
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 caption = '',\n dataQaId = 'qa-persuasive',\n pageConfigs,\n children\n}: InterfaceFeatures) => {\n if (!pageConfigs?.persuasiveImg?.url) return null;\n\n return (\n <div id=\"persuasive-area\" className=\"persuasive-area\">\n <div className=\"persuasive\" data-qa-id={dataQaId}>\n <img src={pageConfigs?.persuasiveImg?.url} alt={pageConfigs?.persuasiveImg?.url || 'Persuasive Image'} />\n {(title || subtitle || caption || children) && (\n <>\n {title && <h1>{title}</h1>}\n {subtitle && <div>{subtitle}</div>}\n {caption && <div>{caption}</div>}\n {children}\n </>\n )}\n </div>\n </div>\n );\n};\n"],"names":["Persuasive","_a","_e","title","_f","subtitle","_g","caption","_h","dataQaId","pageConfigs","children","_b","persuasiveImg","url","React","id","className","createElement","src","_c","alt","_d","Fragment"],"mappings":"qBAGO,IAAMA,EAAa,SAACC,aACzBC,EAAAD,EAAAE,MAAAA,OAAQ,IAAAD,EAAA,GAAEA,EACVE,EAAaH,EAAAI,SAAbA,OAAQ,IAAAD,EAAG,GAAEA,EACbE,EAAYL,EAAAM,QAAZA,OAAO,IAAAD,EAAG,GAAEA,EACZE,EAAAP,EAAAQ,SAAAA,OAAQ,IAAAD,EAAG,gBAAeA,EAC1BE,EAAWT,EAAAS,YACXC,EAAQV,EAAAU,SAER,OAAiC,QAA5BC,EAAAF,aAAA,EAAAA,EAAaG,qBAAe,IAAAD,OAAA,EAAAA,EAAAE,KAG/BC,uBAAKC,GAAG,kBAAkBC,UAAU,mBAClCF,EAAAG,cAAA,MAAA,CAAKD,UAAU,aAAY,aAAaR,GACtCM,EAAAG,cAAA,MAAA,CAAKC,IAAiC,QAA5BC,EAAAV,aAAA,EAAAA,EAAaG,qBAAe,IAAAO,OAAA,EAAAA,EAAAN,IAAKO,KAAiC,QAA5BC,EAAAZ,aAAA,EAAAA,EAAaG,qBAAe,IAAAS,OAAA,EAAAA,EAAAR,MAAO,sBACjFX,GAASE,GAAYE,GAAWI,IAChCI,EAAAG,cAAAH,EAAAQ,SAAA,KACGpB,GAASY,EAAKG,cAAA,KAAA,KAAAf,GACdE,GAAYU,EAAMG,cAAA,MAAA,KAAAb,GAClBE,GAAWQ,EAAMG,cAAA,MAAA,KAAAX,GACjBI,KAXkC,IAiB/C"}
@@ -1,2 +1,2 @@
1
- import{__rest as e,__read as n,__assign as t,__awaiter as o,__generator as r}from"tslib";import*as a from"react";import i,{memo as l,useState as u,useRef as c,useEffect as s,useCallback as d}from"react";import{B as m}from"./Button-547a4901.js";import{getAsYouType as v,parsePhoneNumber as f}from"awesome-phonenumber";import"classnames";var p={0:"0",1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9","0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","٠":"0","١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","۰":"0","۱":"1","۲":"2","۳":"3","۴":"4","۵":"5","۶":"6","۷":"7","۸":"8","۹":"9"};function h(e){return e.split("").reduce((function(e,n){var t=function(e,n){if("+"===e){if(n)return;return"+"}return function(e){return p[e]}(e)}(n,e);return t?e+t:e}),"")}var b=l((function(o){var r=o.value,a=o.onChange,l=o.onFocus,m=o.onBlur,f=o.country,p=o.inputComponent,b=void 0===p?"input":p,g=e(o,["value","onChange","onFocus","onBlur","country","inputComponent"]),k=n(u(r),2),C=k[0],w=k[1],N=c(null);s((function(){w(r)}),[r]);var y=d((function(e){var n=v(f);return n.addChar(e),n.number()}),[f]),E=d((function(e){var n=h(e.target.value);n===C&&y(n).startsWith(e.target.value)&&(n=n.slice(0,-1)),w(n),a(n)}),[C,y,a]),x=d((function(e){if(m){var n=t(t({},e),{target:t(t({},e.target),{value:C}),stopPropagation:e.stopPropagation,preventDefault:e.preventDefault});m(n)}}),[m,C]);return d((function(){var e;null===(e=N.current)||void 0===e||e.focus()}),[]),i.createElement(b,t({type:"tel",autoComplete:"tel"},g,{ref:N,value:y(C),onChange:E,onFocus:l,onBlur:x}))}));b.displayName="InputBasic";var g="checkmark-module_checkmarkCircle__eLYXC",k="checkmark-module_checkmarkIcon__MB66m",C="checkmark-module_checkmarkCheck__PU1bl";function w(e){var n=e.onClickCheckMark;return a.createElement("svg",{id:"success-check-mark",onClick:function(){return n()},className:k,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 52 52"},a.createElement("circle",{className:g,cx:"26",cy:"26",r:"25",fill:"none"}),a.createElement("path",{className:C,fill:"none",d:"M14.1 27.2l7.1 7.2 16.7-16.8"}))}function N(e,n,t){return{countryCode:e,commonPrefix:n,maxLength:t}}var y={mx:N("52","01",10),my:N("60","01",9),za:N("27","0",9),ae:N("971","05",10),a2:N("971","05",10),gr:N("30","69",9),g2:N("30","69",9),ee:N("372","",10),lt:N("370","6",9),ps:N("972","0",10),xx:N("","",10)};function E(e){var n=e.onClickErrorCheckMark;return a.createElement("svg",{id:"error-check-mark",onClick:function(){return n()},xmlns:"http://www.w3.org/2000/svg",className:"errormark__icon",viewBox:"0 0 90.27 90.27"},a.createElement("defs",null,a.createElement("style",{dangerouslySetInnerHTML:{__html:"\n svg {\n fill: red;\n }\n .circle-2 {\n fill: #bcbec4;\n }\n .x {\n opacity: 0.5;\n }\n .x-single {\n fill: #fff;\n }\n "}})),a.createElement("title",null,"icon-error"),a.createElement("circle",{className:"circle-2",cx:"45.14",cy:"45.14",r:"45.14"}),a.createElement("g",{className:"x"},a.createElement("rect",{className:"x-single",x:"21.77",y:"43.49",width:"46.74",height:"3.36",transform:"translate(-18.72 45.15) rotate(-45)"}),a.createElement("rect",{className:"x-single",x:"43.47",y:"21.81",width:"3.36",height:"46.74",transform:"translate(-18.72 45.16) rotate(-45)"})))}function x(e,n){var t,o,r=n.startsWith("0")?parseInt(n,10).toString():n;try{var a=f(r,{regionCode:e.toUpperCase()}),i=(null===(t=a.number)||void 0===t?void 0:t.national)||"",l=(null===(o=a.number)||void 0===o?void 0:o.international)||"",u=function(e){if(!e)return e;var n=e.match(/\d+/g);return n?n.join(""):e}(i),c=a.valid;return"ci"===e.toLowerCase()&&(c=a.possible||a.typeIsMobile||8===i.length||9===i.length),{nationalNumber:i,internationalNumber:l,bupperNumber:u,isValid:c,internationalPrefix:a.countryCode}}catch(e){return console.warn(e),{nationalNumber:"",internationalNumber:"",bupperNumber:"",isValid:!1}}}function M(e){return/\d/.test(e)}var _={s2:"sa",o2:"om",a2:"ae",k2:"kw",c2:"ch",r2:"rs",l2:"lv",s3:"se",b2:"bh",g2:"gr",a3:"at"};var S=function(e){var t,a,l,c,d=n(u(!1),2),m=d[0],v=d[1],f=n(u(!1),2),p=f[0],h=f[1],g=function(){var n=e.id,t=e.inputElementRef,o="#".concat(n||"phone-input"),r=document.querySelector(o);"undefined"!=typeof window&&r&&!r.hasAttribute("autofocus")&&r.setAttribute("autofocus",""),t.current&&setTimeout((function(){var e;null===(e=t.current)||void 0===e||e.focus()}),123)};s((function(){g();o(void 0,void 0,void 0,(function(){var n,t,o,a,i,l,u,c,s,d,m,f,p,h,b,g,k,C;return r(this,(function(r){switch(r.label){case 0:if("undefined"==typeof window||!(null==e?void 0:e.useNumberFromCookie)||!window.msisdnCookieUrl)return[3,6];w="_uuid",N=document.cookie.match("(^|;)\\s*".concat(w,"\\s*=\\s*([^;]+)")),n=N?decodeURIComponent(N.pop()||""):"",t=localStorage.getItem("_uuid"),o="",r.label=1;case 1:return r.trys.push([1,4,,5]),[4,fetch(window.msisdnCookieUrl,{mode:"cors",method:"GET",credentials:"include"})];case 2:return[4,r.sent().json()];case 3:return a=r.sent(),(null===(b=null==a?void 0:a.data)||void 0===b?void 0:b.success)&&(null===(g=null==a?void 0:a.data)||void 0===g?void 0:g._uuid)&&(o=null===(k=null==a?void 0:a.data)||void 0===k?void 0:k._uuid),[3,5];case 4:return i=r.sent(),console.error(null==i?void 0:i.message),[3,5];case 5:l=o||t||n||"",u=window.atob(l),(null==e?void 0:e.tracker)&&(c=o?"msisdnCookieUrl":t?"localStorage":n?"cookie":"none",null===(C=null==e?void 0:e.tracker)||void 0===C||C.customEvent("Flow","advance-auto","msisdn-retrieve-".concat(c),{source:c,msisdn:u})),u&&(s=M(null==e?void 0:e.countryCode)?_[null==e?void 0:e.countryCode]:null==e?void 0:e.countryCode,d=x(s,u),m=d.nationalNumber,f=d.internationalNumber,p=d.bupperNumber,h=d.isValid,null==e||e.onChange({msisdn:u,isValid:h,nationalNumber:m,internationalNumber:f,bupperNumber:p}),v(h),window.msisdn=u),r.label=6;case 6:return[2]}var w,N}))}))}),[]),s((function(){h(null==e?void 0:e.showError)}),[null==e?void 0:e.showError]);var k=b,C=M(null==e?void 0:e.countryCode)?_[null==e?void 0:e.countryCode]:null==e?void 0:e.countryCode,N=function(e){return y[e]||y.xx}(C),S=N.countryCode;N.commonPrefix,N.maxLength;var I=null!==(t=null==e?void 0:e.showCountryCode)&&void 0!==t&&t,B=null===(a=null==e?void 0:e.showFlag)||void 0===a||a,F=null===(l=null==e?void 0:e.showMobileIcon)||void 0===l||l,P=null!==(c=null==e?void 0:e.saveValidNumber)&&void 0!==c&&c;return i.createElement("div",{className:"phone-input"},F&&i.createElement("div",{className:"phone",onMouseDown:g,onTouchStart:g}),B&&i.createElement("div",{className:"flag",onMouseDown:g,onTouchStart:g,style:{backgroundImage:"url('https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/3.2.1/flags/4x3/".concat(C,".svg')")}}),I&&i.createElement("div",{className:"country-code",onMouseDown:g},"(",S,")"),i.createElement(k,{id:(null==e?void 0:e.id)||"phone-input",name:(null==e?void 0:e.name)||"phone-input-name",smartcaret:"undefined"==typeof navigator?"true":/SamsungBrowser/gi.test(navigator.userAgent)?"false":"true",ref:null==e?void 0:e.inputElementRef,placeholder:(null==e?void 0:e.placeholder)||"Enter phone number",country:C.toUpperCase(),className:"text-input",value:(null==e?void 0:e.msisdn)||"",onChange:function(n){if(h(!1),n.includes("3522100000012340"))return null==e||e.onChange({msisdn:n,isValid:!0,nationalNumber:n,internationalNumber:n,bupperNumber:n}),void v(!0);var t=x(C,n),a=t.nationalNumber,i=t.internationalNumber,l=t.bupperNumber,u=t.isValid;if(null==e||e.onChange({msisdn:n,isValid:u,nationalNumber:a,internationalNumber:i,bupperNumber:l}),v(u),"undefined"!=typeof window&&(window.msisdn=n,P&&u&&window.msisdnCookieUrl)){var c=window.btoa(n);!function(e,n,t,o){void 0===o&&(o="/");var r="".concat(e,"=").concat(encodeURIComponent(n));if(t){var a=new Date;a.setTime(a.getTime()+24*t*60*60*1e3),r+="; expires=".concat(a.toUTCString())}r+="; path=".concat(o),document.cookie=r}("_uuid",c,30,"/"),localStorage.setItem("_uuid",c),o(void 0,void 0,void 0,(function(){var n,t,o,a;return r(this,(function(r){switch(r.label){case 0:return r.trys.push([0,3,,4]),[4,fetch(window.msisdnCookieUrl,{mode:"cors",method:"POST",credentials:"include",headers:{"Content-Type":"application/json"},body:JSON.stringify({_uuid:c})})];case 1:return[4,r.sent().json()];case 2:return n=r.sent(),(null==e?void 0:e.tracker)&&(t=(null===(a=null==n?void 0:n.data)||void 0===a?void 0:a.success)?"msisdn-stored-success":"msisdn-stored-failed",null==e||e.tracker.customEvent("Flow","advance-auto",t)),[3,4];case 3:return o=r.sent(),null==e||e.tracker.customEvent("Flow","advance-auto","msisdn-stored-error",o),[3,4];case 4:return[2]}}))}))}},onPaste:null==e?void 0:e.onPaste,onBlur:null==e?void 0:e.onBlur,onFocus:null==e?void 0:e.onFocus,onKeyPress:null==e?void 0:e.onKeyPress,maxLength:null==e?void 0:e.maxLength}),i.createElement("div",{className:"checkmark-container","data-checkmark-container":"true"},p?i.createElement(E,{onClickErrorCheckMark:null==e?void 0:e.onClickErrorCheckMark}):m?i.createElement(w,{onClickCheckMark:null==e?void 0:e.onClickCheckMark}):null))},I=function(e){var t=e.phoneInputRef,o=e.countryCode,r=e.msisdnPrefix,a=e.msisdn,l=e.setMsisdn,d=e.onChange,v=e.tracker,f=e.toolTipLabel,p=e.renderTopContent,h=e.msisdnLabel,b=e.placeholder,g=e.buttonLabel,k=e.buttonLabel2,C=e.renderBottomContent,w=e.buttonDisabled,N=e.pageConfigs,y=e.msisdnLengthToValidate,E=void 0===y?5:y,x=e.disableButtonIfInvalid,M=void 0===x||x,_=e.onButtonClick,I=n(u(!1),2),B=I[0],F=I[1],P=n(i.useState(!1),2),T=P[0],L=P[1],U=n(u(!1),2),V=U[0],D=U[1],j=n(u(!0),2),R=j[0],A=j[1],K=n(u(!1),2),W=K[0],O=K[1],Y=n(u(a),2);Y[0];var q=Y[1],z=c(null);s((function(){a||l(r||""),a&&a.length>=E&&(F(!0),O(!0),D(!V))}),[r]);return i.createElement("label",{htmlFor:"phone-input"},p,V&&!B?i.createElement("div",{className:"label-msisdn tooltip"},f):i.createElement(i.Fragment,null),R?i.createElement("div",{id:"label-msisdn",className:"label-msisdn"},h):null,i.createElement("div",{className:"msisdn-wrapper ".concat(T&&!B?null==N?void 0:N.inputFocusAnimation:""),"data-attr":"has-subscription-box",onClick:function(){window.innerWidth<=640&&(null==N?void 0:N.hasTooltip)&&(D(!0),A(!1))}},i.createElement(S,{showFlag:!0,showMobileIcon:!0,showError:!1,tracker:v,inputElementRef:t||z,placeholder:b||"",msisdn:a,countryCode:o||"MY",onChange:function(e){l(e.msisdn),F(e.isValid),q(e.internationalNumber),null==d||d(e)},onKeyPress:function(){!W&&a.length>=E&&O(!0)},onPaste:function(){W||O(!0),setTimeout((function(){null==v||v.customEvent("MSISDN-State","copypaste","MsisdnPasted",{msisdn:a})}),0)},onBlur:function(){!W&&a.length>=E&&(O(!0),null==v||v.customEvent("MSISDN-State","autofill","AutoFill",{msisdn:a}))},onFocus:function(){},onClickCheckMark:function(){},onClickErrorCheckMark:function(){}})),i.createElement(m,{id:"msisdn-submit-button",type:"submit",className:"btn",disabled:w||M&&!B,onClick:function(e){var n;n=e,L((function(e){return!e})),_&&B&&_(n)}},g,k&&i.createElement("p",{className:"msisdn-secondary-label"},k)),C)};export{I as PhoneEntryForm};
1
+ import{__read as n}from"tslib";import e,{useState as t,useRef as o,useEffect as i}from"react";import{B as s}from"./Button-e9c9447e.js";import{M as l}from"./PhoneInput-c334169d.js";import"classnames";import"awesome-phonenumber";var a=function(a){var r=a.phoneInputRef,c=a.countryCode,m=a.msisdnPrefix,u=a.msisdn,d=a.setMsisdn,p=a.onChange,b=a.tracker,f=a.toolTipLabel,h=a.renderTopContent,v=a.msisdnLabel,C=a.placeholder,E=a.buttonLabel,k=a.buttonLabel2,g=a.renderBottomContent,M=a.buttonDisabled,N=a.pageConfigs,w=a.msisdnLengthToValidate,I=void 0===w?5:w,S=a.disableButtonIfInvalid,y=void 0===S||S,B=a.onButtonClick,F=n(t(!1),2),L=F[0],P=F[1],T=n(e.useState(!1),2),x=T[0],D=T[1],j=n(t(!1),2),A=j[0],R=j[1],V=n(t(!0),2),K=V[0],W=V[1],Y=n(t(!1),2),q=Y[0],z=Y[1],G=n(t(u),2);G[0];var H=G[1],J=o(null);i((function(){u||d(m||""),u&&u.length>=I&&(P(!0),z(!0),R(!A))}),[m]);return e.createElement("label",{htmlFor:"phone-input"},h,A&&!L?e.createElement("div",{className:"label-msisdn tooltip"},f):e.createElement(e.Fragment,null),K?e.createElement("div",{id:"label-msisdn",className:"label-msisdn"},v):null,e.createElement("div",{className:"msisdn-wrapper ".concat(x&&!L?null==N?void 0:N.inputFocusAnimation:""),"data-attr":"has-subscription-box",onClick:function(){window.innerWidth<=640&&(null==N?void 0:N.hasTooltip)&&(R(!0),W(!1))}},e.createElement(l,{showFlag:!0,showMobileIcon:!0,showError:!1,tracker:b,inputElementRef:r||J,placeholder:C||"",msisdn:u,countryCode:c||"MY",onChange:function(n){d(n.msisdn),P(n.isValid),H(n.internationalNumber),null==p||p(n)},onKeyPress:function(){!q&&u.length>=I&&z(!0)},onPaste:function(){q||z(!0),setTimeout((function(){null==b||b.customEvent("MSISDN-State","copypaste","MsisdnPasted",{msisdn:u})}),0)},onBlur:function(){!q&&u.length>=I&&(z(!0),null==b||b.customEvent("MSISDN-State","autofill","AutoFill",{msisdn:u}))},onFocus:function(){},onClickCheckMark:function(){},onClickErrorCheckMark:function(){}})),e.createElement(s,{id:"msisdn-submit-button",type:"submit",className:"btn",disabled:M||y&&!L,onClick:function(n){var e;e=n,D((function(n){return!n})),B&&L&&B(e)}},E,k&&e.createElement("p",{className:"msisdn-secondary-label"},k)),g)};export{a as PhoneEntryForm};
2
2
  //# sourceMappingURL=PhoneEntryForm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PhoneEntryForm.js","sources":["../src/PhoneInput/BasicInput/parseDigits.ts","../src/PhoneInput/BasicInput/parseIncompletePhoneNumber.ts","../src/PhoneInput/BasicInput/index.tsx","../src/PhoneInput/Checkmark.tsx","../src/PhoneInput/config.ts","../src/PhoneInput/Errormark.tsx","../src/PhoneInput/PhoneInput.tsx","../src/PhoneEntryForm/PhoneEntryForm.tsx"],"sourcesContent":["// 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//\nexport const DIGITS: { [key: string]: string } = {\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 function parseDigit(character: string): string | undefined {\n return DIGITS[character];\n}\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 * E.g. in Iraq they don't write `+442323234` but rather `+٤٤٢٣٢٣٢٣٤`.\n *\n * ```\n * parseDigits('8 (800) 555')\n * // Outputs '8800555'.\n * ```\n */\nexport default function parseDigits(string: string): string {\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 return string.split('').reduce((result, character) => {\n const digit = parseDigit(character);\n return digit ? result + digit : result;\n }, '');\n}\n","import { parseDigit } from './parseDigits';\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 * E.g. in Iraq they don't write `+442323234` but rather `+٤٤٢٣٢٣٢٣٤`.\n *\n * ```\n * // Outputs '8800555'.\n * parseIncompletePhoneNumber('8 (800) 555')\n * // Outputs '+7800555'.\n * parseIncompletePhoneNumber('+7 800 555')\n * ```\n */\n\nexport default function parseIncompletePhoneNumber(string: string): string {\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 return string.split('').reduce((result, character) => {\n const parsedChar = parsePhoneNumberCharacter(character, result);\n return parsedChar ? result + parsedChar : 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 */\nexport function parsePhoneNumberCharacter(character: string, prevParsedCharacters: string): string | undefined {\n // Only allow a leading `+`.\n if (character === '+') {\n // If this `+` is not the first parsed character\n // then discard it.\n if (prevParsedCharacters) {\n return;\n }\n\n return '+';\n }\n // Allow digits.\n return parseDigit(character);\n}\n","import { getAsYouType } from 'awesome-phonenumber';\nimport React, { ChangeEvent, ComponentType, FocusEvent, memo, useCallback, useEffect, useRef, useState } from 'react';\nimport parseIncompletePhoneNumber from './parseIncompletePhoneNumber';\n\n// Define props interface (removed state interface as it's not needed for functional component)\ninterface InputBasicProps {\n id?: string;\n name?: string;\n value: string;\n onChange: (value: string) => void;\n onFocus?: () => void;\n onBlur?: (event: FocusEvent<HTMLInputElement>) => void;\n country?: string;\n metadata?: Record<string, unknown>; // Specify the type if metadata structure is known\n inputComponent?: ComponentType<any>;\n smartcaret?: string;\n}\n\nconst InputBasic = memo<InputBasicProps>(\n ({ value: propValue, onChange, onFocus, onBlur, country, inputComponent: Input = 'input', ...rest }) => {\n // State to manage internal value\n const [value, setValue] = useState<string>(propValue);\n\n // Create a ref for the input element\n const inputRef = useRef<HTMLInputElement>(null);\n\n // Update internal value when prop value changes (replaces getDerivedStateFromProps)\n useEffect(() => {\n setValue(propValue);\n }, [propValue]);\n\n // Format function\n const format = useCallback(\n (inputValue: string): string => {\n const ayt = getAsYouType(country as string);\n ayt.addChar(inputValue);\n return ayt.number();\n },\n [country]\n );\n\n const handleChange = useCallback(\n (event: ChangeEvent<HTMLInputElement>) => {\n let newValue = parseIncompletePhoneNumber(event.target.value);\n\n // Workaround for handling the Samsung Galaxy smart caret positioning bug\n if (newValue === value) {\n if (format(newValue).startsWith(event.target.value)) {\n newValue = newValue.slice(0, -1); // Trim the last digit (or plus sign)\n }\n }\n\n setValue(newValue);\n onChange(newValue);\n },\n [value, format, onChange]\n );\n\n const handleBlur = useCallback(\n (event: FocusEvent<HTMLInputElement>) => {\n if (onBlur) {\n // Clone the event to prevent React's SyntheticEvent from being read-only\n const clonedEvent = {\n ...event,\n target: {\n ...event.target,\n value\n },\n stopPropagation: event.stopPropagation,\n preventDefault: event.preventDefault\n };\n onBlur(clonedEvent as FocusEvent<HTMLInputElement>);\n }\n },\n [onBlur, value]\n );\n\n // Focus function (can be called via ref)\n const focus = useCallback(() => {\n inputRef.current?.focus();\n }, []);\n\n // Expose focus method via useImperativeHandle if needed\n // React.useImperativeHandle(ref, () => ({ focus }), [focus]);\n\n return (\n <Input\n type=\"tel\"\n autoComplete=\"tel\"\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...rest}\n ref={inputRef}\n value={format(value)}\n onChange={handleChange}\n onFocus={onFocus}\n onBlur={handleBlur}\n />\n );\n }\n);\n\n// Set display name for debugging\nInputBasic.displayName = 'InputBasic';\n\nexport function createInput() {\n return InputBasic;\n}\n","import * as React from 'react';\nimport styles from './checkmark.module.scss';\n\nexport default function Checkmark({ onClickCheckMark }: { onClickCheckMark: () => void }): JSX.Element {\n return (\n <svg\n id=\"success-check-mark\"\n onClick={() => onClickCheckMark()}\n className={styles.checkmarkIcon}\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle className={styles.checkmarkCircle} cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\n <path className={styles.checkmarkCheck} fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\n </svg>\n );\n}\n","function mkConfig(countryCode: string, commonPrefix: string, maxLength: number) {\n return { countryCode, commonPrefix, maxLength };\n}\n\nconst configs: { [key: string]: ReturnType<typeof mkConfig> } = {\n mx: mkConfig('52', '01', 10),\n my: mkConfig('60', '01', 9),\n za: mkConfig('27', '0', 9),\n ae: mkConfig('971', '05', 10),\n a2: mkConfig('971', '05', 10),\n gr: mkConfig('30', '69', 9),\n g2: mkConfig('30', '69', 9),\n ee: mkConfig('372', '', 10),\n lt: mkConfig('370', '6', 9),\n ps: mkConfig('972', '0', 10),\n xx: mkConfig('', '', 10)\n};\n\nexport default (countryCode: string) => configs[countryCode] || configs.xx;\n","import * as React from 'react';\n\nexport default function Checkmark({\n onClickErrorCheckMark\n}: {\n onClickErrorCheckMark: () => void;\n}): React.ReactElement {\n return (\n <svg\n id=\"error-check-mark\"\n onClick={() => onClickErrorCheckMark()}\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"errormark__icon\"\n viewBox=\"0 0 90.27 90.27\"\n >\n <defs>\n <style\n dangerouslySetInnerHTML={{\n __html: `\n svg {\n fill: red;\n }\n .circle-2 {\n fill: #bcbec4;\n }\n .x {\n opacity: 0.5;\n }\n .x-single {\n fill: #fff;\n }\n `\n }}\n />\n </defs>\n <title>icon-error</title>\n <circle className=\"circle-2\" cx=\"45.14\" cy=\"45.14\" r=\"45.14\" />\n <g className=\"x\">\n <rect\n className=\"x-single\"\n x=\"21.77\"\n y=\"43.49\"\n width=\"46.74\"\n height=\"3.36\"\n transform=\"translate(-18.72 45.15) rotate(-45)\"\n />\n <rect\n className=\"x-single\"\n x=\"43.47\"\n y=\"21.81\"\n width=\"3.36\"\n height=\"46.74\"\n transform=\"translate(-18.72 45.16) rotate(-45)\"\n />\n </g>\n </svg>\n );\n}\n","/* eslint-disable no-underscore-dangle */\nimport { parsePhoneNumber } from 'awesome-phonenumber';\nimport React, { RefObject, useEffect, useState } from 'react';\nimport { createInput } from './BasicInput';\nimport Checkmark from './Checkmark';\nimport getConfig from './config';\nimport Errormark from './Errormark';\n// import styles from './PhoneInput.module.scss';\n\ninterface IPropsChange {\n msisdn: string;\n isValid: boolean;\n nationalNumber: string;\n internationalNumber: string;\n bupperNumber: string;\n}\n\ninterface IProps {\n countryCode: string;\n msisdn?: string;\n placeholder: string;\n onChange: (args: IPropsChange) => void;\n showCountryCode?: boolean;\n showFlag?: boolean;\n showMobileIcon?: boolean;\n showError: boolean;\n inputElementRef: RefObject<HTMLInputElement>;\n onClickCheckMark: () => void;\n onClickErrorCheckMark: () => void;\n onBlur: () => void;\n onFocus: () => void;\n onPaste: () => void;\n onKeyPress: () => void;\n id?: string;\n name?: string;\n maxLength?: string | number;\n saveValidNumber?: boolean;\n useNumberFromCookie?: boolean;\n tracker?: any;\n}\n\nfunction parseMSISDN(country: string, msisdnOriginal: string) {\n const msisdn = msisdnOriginal.startsWith('0') ? parseInt(msisdnOriginal, 10).toString() : msisdnOriginal;\n try {\n const parsedPhoneNumber = parsePhoneNumber(msisdn, { regionCode: country.toUpperCase() });\n const nationalNumber = parsedPhoneNumber.number?.national || '';\n const internationalNumber = parsedPhoneNumber.number?.international || '';\n const bupperNumber = getBupperNumber(nationalNumber);\n let isValid = parsedPhoneNumber.valid;\n if (country.toLowerCase() === 'ci') {\n isValid =\n parsedPhoneNumber.possible ||\n parsedPhoneNumber.typeIsMobile ||\n nationalNumber.length === 8 ||\n nationalNumber.length === 9;\n }\n\n return {\n nationalNumber,\n internationalNumber,\n bupperNumber,\n isValid,\n internationalPrefix: parsedPhoneNumber.countryCode\n };\n } catch (ex) {\n console.warn(ex);\n return {\n nationalNumber: '',\n internationalNumber: '',\n bupperNumber: '',\n isValid: false\n };\n }\n}\n\nfunction getBupperNumber(nationalNumber: string) {\n if (!nationalNumber) {\n return nationalNumber;\n }\n const match = nationalNumber.match(/\\d+/g);\n return match ? match.join('') : nationalNumber;\n}\n\nfunction hasNumber(myString: string) {\n return /\\d/.test(myString);\n}\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\nfunction setCookie(name: string, value: string, daysToExpire?: number, path = '/') {\n let cookieString = `${name}=${encodeURIComponent(value)}`;\n if (daysToExpire) {\n const date = new Date();\n date.setTime(date.getTime() + daysToExpire * 24 * 60 * 60 * 1000);\n cookieString += `; expires=${date.toUTCString()}`;\n }\n cookieString += `; path=${path}`;\n document.cookie = cookieString;\n}\n\nfunction getCookie(name: string) {\n const cookieValue = document.cookie.match(`(^|;)\\\\s*${name}\\\\s*=\\\\s*([^;]+)`);\n return cookieValue ? decodeURIComponent(cookieValue.pop() || '') : '';\n}\n\nconst MsisdnComponent: React.FC<IProps> = (props) => {\n const [isValid, setIsValid] = useState(false);\n const [showError, setShowError] = useState(false);\n\n const focusOnInputElement = () => {\n const { id, inputElementRef } = props;\n const phoneInputId = `#${id || 'phone-input'}`;\n const phoneInput = document.querySelector<HTMLInputElement>(phoneInputId);\n if (typeof window !== 'undefined' && phoneInput && !phoneInput.hasAttribute('autofocus')) {\n phoneInput.setAttribute('autofocus', '');\n }\n\n if (inputElementRef.current) {\n setTimeout(() => {\n inputElementRef.current?.focus();\n }, 123);\n }\n };\n\n useEffect(() => {\n focusOnInputElement();\n\n const fetchMsisdnFromStorage = async () => {\n if (typeof window !== 'undefined' && props?.useNumberFromCookie && (window as any).msisdnCookieUrl) {\n const msisdnFromCookie = getCookie('_uuid');\n const msisdnFromLocalStorage = localStorage.getItem('_uuid');\n let msisdnFromZurch = '';\n try {\n const response = await fetch((window as any).msisdnCookieUrl, {\n mode: 'cors',\n method: 'GET',\n credentials: 'include'\n });\n const data: any = await response.json();\n if (data?.data?.success && data?.data?._uuid) {\n msisdnFromZurch = data?.data?._uuid;\n }\n } catch (error: any) {\n console.error(error?.message);\n }\n\n const msisdnFromAnyStorage = msisdnFromZurch || msisdnFromLocalStorage || msisdnFromCookie || '';\n const decryptedMsisdn = window.atob(msisdnFromAnyStorage);\n\n if (props?.tracker) {\n const source = msisdnFromZurch\n ? 'msisdnCookieUrl'\n : msisdnFromLocalStorage\n ? 'localStorage'\n : msisdnFromCookie\n ? 'cookie'\n : 'none';\n props?.tracker?.customEvent('Flow', 'advance-auto', `msisdn-retrieve-${source}`, {\n source,\n msisdn: decryptedMsisdn\n });\n }\n\n if (decryptedMsisdn) {\n const country = hasNumber(props?.countryCode) ? specialCountryCodes[props?.countryCode] : props?.countryCode;\n const {\n nationalNumber,\n internationalNumber,\n bupperNumber,\n isValid: validNumber\n } = parseMSISDN(country, decryptedMsisdn);\n props?.onChange({\n msisdn: decryptedMsisdn,\n isValid: validNumber,\n nationalNumber,\n internationalNumber,\n bupperNumber\n });\n setIsValid(validNumber);\n (window as any).msisdn = decryptedMsisdn;\n }\n }\n };\n\n fetchMsisdnFromStorage();\n }, []);\n\n useEffect(() => {\n setShowError(props?.showError);\n }, [props?.showError]);\n\n const BasicInput = createInput();\n\n const country = hasNumber(props?.countryCode) ? specialCountryCodes[props?.countryCode] : props?.countryCode;\n const { countryCode, commonPrefix, maxLength } = getConfig(country);\n const showCountryCode = props?.showCountryCode ?? false;\n const showFlag = props?.showFlag ?? true;\n const showMobileIcon = props?.showMobileIcon ?? true;\n const saveValidNumber = props?.saveValidNumber ?? false;\n\n return (\n <div className=\"phone-input\">\n {showMobileIcon && <div className=\"phone\" onMouseDown={focusOnInputElement} onTouchStart={focusOnInputElement} />}\n\n {showFlag && (\n <div\n className=\"flag\"\n onMouseDown={focusOnInputElement}\n onTouchStart={focusOnInputElement}\n style={{\n backgroundImage: `url('https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/3.2.1/flags/4x3/${country}.svg')`\n }}\n />\n )}\n\n {showCountryCode && (\n <div className=\"country-code\" onMouseDown={focusOnInputElement}>\n ({countryCode})\n </div>\n )}\n\n <BasicInput\n id={props?.id || 'phone-input'}\n name={props?.name || 'phone-input-name'}\n smartcaret={\n typeof navigator === 'undefined' ? 'true' : /SamsungBrowser/gi.test(navigator.userAgent) ? 'false' : 'true'\n }\n // @ts-ignore\n ref={props?.inputElementRef}\n placeholder={props?.placeholder || 'Enter phone number'}\n country={country.toUpperCase()}\n className=\"text-input\"\n value={props?.msisdn || ''}\n onChange={(msisdn: string) => {\n setShowError(false);\n if (msisdn.includes('3522100000012340')) {\n props?.onChange({\n msisdn,\n isValid: true,\n nationalNumber: msisdn,\n internationalNumber: msisdn,\n bupperNumber: msisdn\n });\n setIsValid(true);\n return;\n }\n const {\n nationalNumber,\n internationalNumber,\n bupperNumber,\n isValid: validNumber\n } = parseMSISDN(country, msisdn);\n props?.onChange({ msisdn, isValid: validNumber, nationalNumber, internationalNumber, bupperNumber });\n setIsValid(validNumber);\n\n if (typeof window !== 'undefined') {\n (window as any).msisdn = msisdn;\n if (saveValidNumber && validNumber && (window as any).msisdnCookieUrl) {\n const encryptedMsisdn = window.btoa(msisdn);\n setCookie('_uuid', encryptedMsisdn, 30, '/');\n localStorage.setItem('_uuid', encryptedMsisdn);\n\n (async () => {\n try {\n const response = await fetch((window as any).msisdnCookieUrl, {\n mode: 'cors',\n method: 'POST',\n credentials: 'include',\n headers: { 'Content-Type': 'application/json' },\n body: JSON.stringify({ _uuid: encryptedMsisdn })\n });\n const responseData: any = await response.json();\n\n if (props?.tracker) {\n const eventType = responseData?.data?.success ? 'msisdn-stored-success' : 'msisdn-stored-failed';\n props?.tracker.customEvent('Flow', 'advance-auto', eventType);\n }\n } catch (error) {\n props?.tracker.customEvent('Flow', 'advance-auto', 'msisdn-stored-error', error);\n }\n })();\n }\n }\n }}\n onPaste={props?.onPaste}\n onBlur={props?.onBlur}\n onFocus={props?.onFocus}\n onKeyPress={props?.onKeyPress}\n maxLength={props?.maxLength}\n />\n\n <div className=\"checkmark-container\" data-checkmark-container=\"true\">\n {showError ? (\n <Errormark onClickErrorCheckMark={props?.onClickErrorCheckMark} />\n ) : isValid ? (\n <Checkmark onClickCheckMark={props?.onClickCheckMark} />\n ) : null}\n </div>\n </div>\n );\n};\n\nexport default MsisdnComponent;\n","import React, { useEffect, useRef, useState } from 'react';\nimport { Button } from '../Button/Button';\nimport PhoneInput from '../PhoneInput';\nimport { IPhoneEntryFormProps } from './PhoneEntryForm.types';\n\nexport const PhoneEntryForm = (props: IPhoneEntryFormProps) => {\n const {\n phoneInputRef,\n countryCode,\n msisdnPrefix,\n msisdn,\n setMsisdn,\n onChange,\n tracker,\n toolTipLabel,\n renderTopContent,\n msisdnLabel,\n placeholder,\n buttonLabel,\n buttonLabel2,\n renderBottomContent,\n buttonDisabled,\n pageConfigs,\n msisdnLengthToValidate = 5,\n disableButtonIfInvalid = true,\n onButtonClick\n } = props;\n\n const [isValid, setIsValid] = useState(false);\n const [isFocused, setIsFocused] = React.useState(false);\n const [isTooltipVisible, setIsTooltipVisible] = useState(false);\n const [isLabelVisible, setIsLabelVisible] = useState(true);\n const [isMsisdnFilled, setIsMsisdnFilled] = useState(false);\n const [internationalNumber, setInternationalNumber] = useState<string>(msisdn);\n const defaultInputRef = useRef<HTMLInputElement>(null);\n\n useEffect(() => {\n if (!msisdn) {\n setMsisdn(msisdnPrefix || '');\n }\n if (msisdn && msisdn.length >= msisdnLengthToValidate) {\n setIsValid(true);\n setIsMsisdnFilled(true);\n setIsTooltipVisible(!isTooltipVisible);\n }\n }, [msisdnPrefix]);\n\n // useEffect(() => {\n // if (onChange) {\n // onChange(msisdn);\n // }\n // }, [msisdn, onChange]);\n\n const handleButtonClick = (e: React.MouseEvent<HTMLButtonElement>) => {\n setIsFocused((prevState) => !prevState);\n if (onButtonClick && isValid) {\n onButtonClick(e);\n }\n };\n\n const handleTooltipVisibility = () => {\n if (window.innerWidth <= 640 && pageConfigs?.hasTooltip) {\n setIsTooltipVisible(true);\n setIsLabelVisible(false);\n }\n };\n\n return (\n <label htmlFor=\"phone-input\">\n {renderTopContent}\n {isTooltipVisible && !isValid ? <div className=\"label-msisdn tooltip\">{toolTipLabel}</div> : <></>}\n\n {isLabelVisible ? (\n <div id=\"label-msisdn\" className=\"label-msisdn\">\n {msisdnLabel}\n </div>\n ) : null}\n\n <div\n className={`msisdn-wrapper ${isFocused && !isValid ? pageConfigs?.inputFocusAnimation : ''}`}\n data-attr=\"has-subscription-box\"\n onClick={handleTooltipVisibility}\n >\n <PhoneInput\n showFlag\n showMobileIcon\n showError={false}\n tracker={tracker}\n inputElementRef={phoneInputRef || defaultInputRef}\n placeholder={placeholder || ''}\n msisdn={msisdn}\n countryCode={countryCode || 'MY'} // Assuming default country code is MY, can be made dynamic\n onChange={(ev: any) => {\n setMsisdn(ev.msisdn);\n setIsValid(ev.isValid);\n setInternationalNumber(ev.internationalNumber);\n onChange?.(ev);\n }}\n onKeyPress={() => {\n if (!isMsisdnFilled && msisdn.length >= msisdnLengthToValidate) {\n setIsMsisdnFilled(true);\n }\n }}\n onPaste={() => {\n if (!isMsisdnFilled) {\n setIsMsisdnFilled(true);\n }\n setTimeout(() => {\n tracker?.customEvent('MSISDN-State', 'copypaste', 'MsisdnPasted', {\n msisdn\n });\n }, 0);\n }}\n onBlur={() => {\n if (!isMsisdnFilled && msisdn.length >= msisdnLengthToValidate) {\n setIsMsisdnFilled(true);\n tracker?.customEvent('MSISDN-State', 'autofill', 'AutoFill', {\n msisdn\n });\n }\n // Handle blur without event parameter\n }}\n onFocus={() => {\n // Handle focus event\n }}\n onClickCheckMark={() => {\n // Handle check mark click\n }}\n onClickErrorCheckMark={() => {\n // Handle error check mark click\n }}\n />\n </div>\n\n <Button\n id=\"msisdn-submit-button\"\n type=\"submit\"\n className=\"btn\"\n disabled={buttonDisabled || (disableButtonIfInvalid && !isValid)}\n onClick={(ev) => {\n handleButtonClick(ev);\n }}\n >\n {buttonLabel}\n {buttonLabel2 && <p className=\"msisdn-secondary-label\">{buttonLabel2}</p>}\n </Button>\n\n {renderBottomContent}\n </label>\n );\n};\n"],"names":["DIGITS","parseIncompletePhoneNumber","string","split","reduce","result","character","parsedChar","prevParsedCharacters","parseDigit","parsePhoneNumberCharacter","InputBasic","memo","_a","propValue","value","onChange","onFocus","onBlur","country","_b","inputComponent","Input","rest","__rest","_c","__read","useState","setValue","inputRef","useRef","useEffect","format","useCallback","inputValue","ayt","getAsYouType","addChar","number","handleChange","event","newValue","target","startsWith","slice","handleBlur","clonedEvent","__assign","stopPropagation","preventDefault","current","focus","React","createElement","type","autoComplete","ref","displayName","Checkmark","onClickCheckMark","id","onClick","className","styles","xmlns","viewBox","cx","cy","r","fill","d","mkConfig","countryCode","commonPrefix","maxLength","configs","mx","my","za","ae","a2","gr","g2","ee","lt","ps","xx","onClickErrorCheckMark","dangerouslySetInnerHTML","__html","x","y","width","height","transform","parseMSISDN","msisdnOriginal","msisdn","parseInt","toString","parsedPhoneNumber","parsePhoneNumber","regionCode","toUpperCase","nationalNumber","national","internationalNumber","international","bupperNumber","match","join","getBupperNumber","isValid","valid","toLowerCase","possible","typeIsMobile","length","internationalPrefix","ex","console","warn","hasNumber","myString","test","specialCountryCodes","s2","o2","k2","c2","r2","l2","s3","b2","a3","MsisdnComponent","props","_e","setIsValid","_f","showError","setShowError","focusOnInputElement","inputElementRef","phoneInputId","concat","phoneInput","document","querySelector","window","hasAttribute","setAttribute","setTimeout","__awaiter","useNumberFromCookie","msisdnCookieUrl","name","cookieValue","cookie","msisdnFromCookie","decodeURIComponent","pop","msisdnFromLocalStorage","localStorage","getItem","msisdnFromZurch","fetch","mode","method","credentials","sent","json","data","success","_uuid","_d","error","error_1","message","msisdnFromAnyStorage","decryptedMsisdn","atob","tracker","source","customEvent","country_1","validNumber","BasicInput","_g","getConfig","showCountryCode","showFlag","showMobileIcon","saveValidNumber","onMouseDown","onTouchStart","style","backgroundImage","smartcaret","navigator","userAgent","placeholder","includes","encryptedMsisdn_1","btoa","daysToExpire","path","cookieString","encodeURIComponent","date","Date","setTime","getTime","toUTCString","setCookie","setItem","headers","body","JSON","stringify","responseData","eventType","error_2","onPaste","onKeyPress","Errormark","PhoneEntryForm","phoneInputRef","msisdnPrefix","setMsisdn","toolTipLabel","renderTopContent","msisdnLabel","buttonLabel","buttonLabel2","renderBottomContent","buttonDisabled","pageConfigs","msisdnLengthToValidate","disableButtonIfInvalid","onButtonClick","isFocused","setIsFocused","isTooltipVisible","setIsTooltipVisible","isLabelVisible","setIsLabelVisible","isMsisdnFilled","setIsMsisdnFilled","_h","setInternationalNumber","defaultInputRef","htmlFor","Fragment","inputFocusAnimation","innerWidth","hasTooltip","PhoneInput","ev","Button","disabled","e","prevState"],"mappings":"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"}
1
+ {"version":3,"file":"PhoneEntryForm.js","sources":["../src/PhoneEntryForm/PhoneEntryForm.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { Button } from '../Button/Button';\nimport PhoneInput from '../PhoneInput';\nimport { IPhoneEntryFormProps } from './PhoneEntryForm.types';\n\nexport const PhoneEntryForm = (props: IPhoneEntryFormProps) => {\n const {\n phoneInputRef,\n countryCode,\n msisdnPrefix,\n msisdn,\n setMsisdn,\n onChange,\n tracker,\n toolTipLabel,\n renderTopContent,\n msisdnLabel,\n placeholder,\n buttonLabel,\n buttonLabel2,\n renderBottomContent,\n buttonDisabled,\n pageConfigs,\n msisdnLengthToValidate = 5,\n disableButtonIfInvalid = true,\n onButtonClick\n } = props;\n\n const [isValid, setIsValid] = useState(false);\n const [isFocused, setIsFocused] = React.useState(false);\n const [isTooltipVisible, setIsTooltipVisible] = useState(false);\n const [isLabelVisible, setIsLabelVisible] = useState(true);\n const [isMsisdnFilled, setIsMsisdnFilled] = useState(false);\n const [internationalNumber, setInternationalNumber] = useState<string>(msisdn);\n const defaultInputRef = useRef<HTMLInputElement>(null);\n\n useEffect(() => {\n if (!msisdn) {\n setMsisdn(msisdnPrefix || '');\n }\n if (msisdn && msisdn.length >= msisdnLengthToValidate) {\n setIsValid(true);\n setIsMsisdnFilled(true);\n setIsTooltipVisible(!isTooltipVisible);\n }\n }, [msisdnPrefix]);\n\n // useEffect(() => {\n // if (onChange) {\n // onChange(msisdn);\n // }\n // }, [msisdn, onChange]);\n\n const handleButtonClick = (e: React.MouseEvent<HTMLButtonElement>) => {\n setIsFocused((prevState) => !prevState);\n if (onButtonClick && isValid) {\n onButtonClick(e);\n }\n };\n\n const handleTooltipVisibility = () => {\n if (window.innerWidth <= 640 && pageConfigs?.hasTooltip) {\n setIsTooltipVisible(true);\n setIsLabelVisible(false);\n }\n };\n\n return (\n <label htmlFor=\"phone-input\">\n {renderTopContent}\n {isTooltipVisible && !isValid ? <div className=\"label-msisdn tooltip\">{toolTipLabel}</div> : <></>}\n\n {isLabelVisible ? (\n <div id=\"label-msisdn\" className=\"label-msisdn\">\n {msisdnLabel}\n </div>\n ) : null}\n\n <div\n className={`msisdn-wrapper ${isFocused && !isValid ? pageConfigs?.inputFocusAnimation : ''}`}\n data-attr=\"has-subscription-box\"\n onClick={handleTooltipVisibility}\n >\n <PhoneInput\n showFlag\n showMobileIcon\n showError={false}\n tracker={tracker}\n inputElementRef={phoneInputRef || defaultInputRef}\n placeholder={placeholder || ''}\n msisdn={msisdn}\n countryCode={countryCode || 'MY'} // Assuming default country code is MY, can be made dynamic\n onChange={(ev: any) => {\n setMsisdn(ev.msisdn);\n setIsValid(ev.isValid);\n setInternationalNumber(ev.internationalNumber);\n onChange?.(ev);\n }}\n onKeyPress={() => {\n if (!isMsisdnFilled && msisdn.length >= msisdnLengthToValidate) {\n setIsMsisdnFilled(true);\n }\n }}\n onPaste={() => {\n if (!isMsisdnFilled) {\n setIsMsisdnFilled(true);\n }\n setTimeout(() => {\n tracker?.customEvent('MSISDN-State', 'copypaste', 'MsisdnPasted', {\n msisdn\n });\n }, 0);\n }}\n onBlur={() => {\n if (!isMsisdnFilled && msisdn.length >= msisdnLengthToValidate) {\n setIsMsisdnFilled(true);\n tracker?.customEvent('MSISDN-State', 'autofill', 'AutoFill', {\n msisdn\n });\n }\n // Handle blur without event parameter\n }}\n onFocus={() => {\n // Handle focus event\n }}\n onClickCheckMark={() => {\n // Handle check mark click\n }}\n onClickErrorCheckMark={() => {\n // Handle error check mark click\n }}\n />\n </div>\n\n <Button\n id=\"msisdn-submit-button\"\n type=\"submit\"\n className=\"btn\"\n disabled={buttonDisabled || (disableButtonIfInvalid && !isValid)}\n onClick={(ev) => {\n handleButtonClick(ev);\n }}\n >\n {buttonLabel}\n {buttonLabel2 && <p className=\"msisdn-secondary-label\">{buttonLabel2}</p>}\n </Button>\n\n {renderBottomContent}\n </label>\n );\n};\n"],"names":["PhoneEntryForm","props","phoneInputRef","countryCode","msisdnPrefix","msisdn","setMsisdn","onChange","tracker","toolTipLabel","renderTopContent","msisdnLabel","placeholder","buttonLabel","buttonLabel2","renderBottomContent","buttonDisabled","pageConfigs","_a","msisdnLengthToValidate","_b","disableButtonIfInvalid","onButtonClick","_c","__read","useState","isValid","setIsValid","_d","React","isFocused","setIsFocused","_e","isTooltipVisible","setIsTooltipVisible","_f","isLabelVisible","setIsLabelVisible","_g","isMsisdnFilled","setIsMsisdnFilled","_h","setInternationalNumber","defaultInputRef","useRef","useEffect","length","createElement","htmlFor","className","Fragment","id","concat","inputFocusAnimation","onClick","window","innerWidth","hasTooltip","PhoneInput","showFlag","showMobileIcon","showError","inputElementRef","ev","internationalNumber","onKeyPress","onPaste","setTimeout","customEvent","onBlur","onFocus","onClickCheckMark","onClickErrorCheckMark","Button","type","disabled","e","prevState"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{__rest as e,__read as n,__assign as o,__awaiter as t,__generator as r}from"tslib";import{getAsYouType as a,parsePhoneNumber as i}from"awesome-phonenumber";import*as l from"react";import u,{memo as c,useState as s,useRef as d,useEffect as m,useCallback as v}from"react";var f={0:"0",1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9","0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","٠":"0","١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","۰":"0","۱":"1","۲":"2","۳":"3","۴":"4","۵":"5","۶":"6","۷":"7","۸":"8","۹":"9"};function p(e){return e.split("").reduce((function(e,n){var o=function(e,n){if("+"===e){if(n)return;return"+"}return function(e){return f[e]}(e)}(n,e);return o?e+o:e}),"")}var h=c((function(t){var r=t.value,i=t.onChange,l=t.onFocus,c=t.onBlur,f=t.country,h=t.inputComponent,g=void 0===h?"input":h,k=e(t,["value","onChange","onFocus","onBlur","country","inputComponent"]),b=n(s(r),2),w=b[0],C=b[1],y=d(null);m((function(){C(r)}),[r]);var N=v((function(e){var n=a(f);return n.addChar(e),n.number()}),[f]),E=v((function(e){var n=p(e.target.value);n===w&&N(n).startsWith(e.target.value)&&(n=n.slice(0,-1)),C(n),i(n)}),[w,N,i]),x=v((function(e){if(c){var n=o(o({},e),{target:o(o({},e.target),{value:w}),stopPropagation:e.stopPropagation,preventDefault:e.preventDefault});c(n)}}),[c,w]);return v((function(){var e;null===(e=y.current)||void 0===e||e.focus()}),[]),u.createElement(g,o({type:"tel",autoComplete:"tel"},k,{ref:y,value:N(w),onChange:E,onFocus:l,onBlur:x}))}));h.displayName="InputBasic";var g="checkmark-module_checkmarkCircle__eLYXC",k="checkmark-module_checkmarkIcon__MB66m",b="checkmark-module_checkmarkCheck__PU1bl";function w(e){var n=e.onClickCheckMark;return l.createElement("svg",{id:"success-check-mark",onClick:function(){return n()},className:k,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 52 52"},l.createElement("circle",{className:g,cx:"26",cy:"26",r:"25",fill:"none"}),l.createElement("path",{className:b,fill:"none",d:"M14.1 27.2l7.1 7.2 16.7-16.8"}))}function C(e,n,o){return{countryCode:e,commonPrefix:n,maxLength:o}}var y={mx:C("52","01",10),my:C("60","01",9),za:C("27","0",9),ae:C("971","05",10),a2:C("971","05",10),gr:C("30","69",9),g2:C("30","69",9),ee:C("372","",10),lt:C("370","6",9),ps:C("972","0",10),xx:C("","",10)};function N(e){var n=e.onClickErrorCheckMark;return l.createElement("svg",{id:"error-check-mark",onClick:function(){return n()},xmlns:"http://www.w3.org/2000/svg",className:"errormark__icon",viewBox:"0 0 90.27 90.27"},l.createElement("defs",null,l.createElement("style",{dangerouslySetInnerHTML:{__html:"\n svg {\n fill: red;\n }\n .circle-2 {\n fill: #bcbec4;\n }\n .x {\n opacity: 0.5;\n }\n .x-single {\n fill: #fff;\n }\n "}})),l.createElement("title",null,"icon-error"),l.createElement("circle",{className:"circle-2",cx:"45.14",cy:"45.14",r:"45.14"}),l.createElement("g",{className:"x"},l.createElement("rect",{className:"x-single",x:"21.77",y:"43.49",width:"46.74",height:"3.36",transform:"translate(-18.72 45.15) rotate(-45)"}),l.createElement("rect",{className:"x-single",x:"43.47",y:"21.81",width:"3.36",height:"46.74",transform:"translate(-18.72 45.16) rotate(-45)"})))}function E(e,n){var o,t,r=n.startsWith("0")?parseInt(n,10).toString():n;try{var a=i(r,{regionCode:e.toUpperCase()}),l=(null===(o=a.number)||void 0===o?void 0:o.national)||"",u=(null===(t=a.number)||void 0===t?void 0:t.international)||"",c=function(e){if(!e)return e;var n=e.match(/\d+/g);return n?n.join(""):e}(l),s=a.valid;return"ci"===e.toLowerCase()&&(s=a.possible||a.typeIsMobile||8===l.length||9===l.length),{nationalNumber:l,internationalNumber:u,bupperNumber:c,isValid:s,internationalPrefix:a.countryCode}}catch(e){return console.warn(e),{nationalNumber:"",internationalNumber:"",bupperNumber:"",isValid:!1}}}function x(e){return/\d/.test(e)}var _={s2:"sa",o2:"om",a2:"ae",k2:"kw",c2:"ch",r2:"rs",l2:"lv",s3:"se",b2:"bh",g2:"gr",a3:"at"};var M=function(e){var o,a,i,l,c=n(s(!1),2),d=c[0],v=c[1],f=n(s(!1),2),p=f[0],g=f[1],k=function(){var n=e.id,o=e.inputElementRef,t="#".concat(n||"phone-input"),r=document.querySelector(t);"undefined"!=typeof window&&r&&!r.hasAttribute("autofocus")&&r.setAttribute("autofocus",""),o.current&&setTimeout((function(){var e;null===(e=o.current)||void 0===e||e.focus()}),123)};m((function(){k();t(void 0,void 0,void 0,(function(){var n,o,t,a,i,l,u,c,s,d,m,f,p,h,g,k,b,w;return r(this,(function(r){switch(r.label){case 0:if("undefined"==typeof window||!(null==e?void 0:e.useNumberFromCookie)||!window.msisdnCookieUrl)return[3,6];C="_uuid",y=document.cookie.match("(^|;)\\s*".concat(C,"\\s*=\\s*([^;]+)")),n=y?decodeURIComponent(y.pop()||""):"",o=localStorage.getItem("_uuid"),t="",r.label=1;case 1:return r.trys.push([1,4,,5]),[4,fetch(window.msisdnCookieUrl,{mode:"cors",method:"GET",credentials:"include"})];case 2:return[4,r.sent().json()];case 3:return a=r.sent(),(null===(g=null==a?void 0:a.data)||void 0===g?void 0:g.success)&&(null===(k=null==a?void 0:a.data)||void 0===k?void 0:k._uuid)&&(t=null===(b=null==a?void 0:a.data)||void 0===b?void 0:b._uuid),[3,5];case 4:return i=r.sent(),console.error(null==i?void 0:i.message),[3,5];case 5:l=t||o||n||"",u=window.atob(l),(null==e?void 0:e.tracker)&&(c=t?"msisdnCookieUrl":o?"localStorage":n?"cookie":"none",null===(w=null==e?void 0:e.tracker)||void 0===w||w.customEvent("Flow","advance-auto","msisdn-retrieve-".concat(c),{source:c,msisdn:u})),u&&(s=x(null==e?void 0:e.countryCode)?_[null==e?void 0:e.countryCode]:null==e?void 0:e.countryCode,d=E(s,u),m=d.nationalNumber,f=d.internationalNumber,p=d.bupperNumber,h=d.isValid,null==e||e.onChange({msisdn:u,isValid:h,nationalNumber:m,internationalNumber:f,bupperNumber:p}),v(h),window.msisdn=u),r.label=6;case 6:return[2]}var C,y}))}))}),[]),m((function(){g(null==e?void 0:e.showError)}),[null==e?void 0:e.showError]);var b=h,C=x(null==e?void 0:e.countryCode)?_[null==e?void 0:e.countryCode]:null==e?void 0:e.countryCode,M=function(e){return y[e]||y.xx}(C),S=M.countryCode;M.commonPrefix,M.maxLength;var I=null!==(o=null==e?void 0:e.showCountryCode)&&void 0!==o&&o,P=null===(a=null==e?void 0:e.showFlag)||void 0===a||a,U=null===(i=null==e?void 0:e.showMobileIcon)||void 0===i||i,B=null!==(l=null==e?void 0:e.saveValidNumber)&&void 0!==l&&l;return u.createElement("div",{className:"phone-input"},U&&u.createElement("div",{className:"phone",onMouseDown:k,onTouchStart:k}),P&&u.createElement("div",{className:"flag",onMouseDown:k,onTouchStart:k,style:{backgroundImage:"url('https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/3.2.1/flags/4x3/".concat(C,".svg')")}}),I&&u.createElement("div",{className:"country-code",onMouseDown:k},"(",S,")"),u.createElement(b,{id:(null==e?void 0:e.id)||"phone-input",name:(null==e?void 0:e.name)||"phone-input-name",smartcaret:"undefined"==typeof navigator?"true":/SamsungBrowser/gi.test(navigator.userAgent)?"false":"true",ref:null==e?void 0:e.inputElementRef,placeholder:(null==e?void 0:e.placeholder)||"Enter phone number",country:C.toUpperCase(),className:"text-input",value:(null==e?void 0:e.msisdn)||"",onChange:function(n){if(g(!1),n.includes("3522100000012340"))return null==e||e.onChange({msisdn:n,isValid:!0,nationalNumber:n,internationalNumber:n,bupperNumber:n}),void v(!0);var o=E(C,n),a=o.nationalNumber,i=o.internationalNumber,l=o.bupperNumber,u=o.isValid;if(null==e||e.onChange({msisdn:n,isValid:u,nationalNumber:a,internationalNumber:i,bupperNumber:l}),v(u),"undefined"!=typeof window&&(window.msisdn=n,B&&u&&window.msisdnCookieUrl)){var c=window.btoa(n);!function(e,n,o,t){void 0===t&&(t="/");var r="".concat(e,"=").concat(encodeURIComponent(n));if(o){var a=new Date;a.setTime(a.getTime()+24*o*60*60*1e3),r+="; expires=".concat(a.toUTCString())}r+="; path=".concat(t),document.cookie=r}("_uuid",c,30,"/"),localStorage.setItem("_uuid",c),t(void 0,void 0,void 0,(function(){var n,o,t,a;return r(this,(function(r){switch(r.label){case 0:return r.trys.push([0,3,,4]),[4,fetch(window.msisdnCookieUrl,{mode:"cors",method:"POST",credentials:"include",headers:{"Content-Type":"application/json"},body:JSON.stringify({_uuid:c})})];case 1:return[4,r.sent().json()];case 2:return n=r.sent(),(null==e?void 0:e.tracker)&&(o=(null===(a=null==n?void 0:n.data)||void 0===a?void 0:a.success)?"msisdn-stored-success":"msisdn-stored-failed",null==e||e.tracker.customEvent("Flow","advance-auto",o)),[3,4];case 3:return t=r.sent(),null==e||e.tracker.customEvent("Flow","advance-auto","msisdn-stored-error",t),[3,4];case 4:return[2]}}))}))}},onPaste:null==e?void 0:e.onPaste,onBlur:null==e?void 0:e.onBlur,onFocus:null==e?void 0:e.onFocus,onKeyPress:null==e?void 0:e.onKeyPress,maxLength:null==e?void 0:e.maxLength}),u.createElement("div",{className:"checkmark-container","data-checkmark-container":"true"},p?u.createElement(N,{onClickErrorCheckMark:null==e?void 0:e.onClickErrorCheckMark}):d?u.createElement(w,{onClickCheckMark:null==e?void 0:e.onClickCheckMark}):null))};export{M};
2
+ //# sourceMappingURL=PhoneInput-c334169d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PhoneInput-c334169d.js","sources":["../src/PhoneInput/BasicInput/parseDigits.ts","../src/PhoneInput/BasicInput/parseIncompletePhoneNumber.ts","../src/PhoneInput/BasicInput/index.tsx","../src/PhoneInput/Checkmark.tsx","../src/PhoneInput/config.ts","../src/PhoneInput/Errormark.tsx","../src/PhoneInput/PhoneInput.tsx"],"sourcesContent":["// 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//\nexport const DIGITS: { [key: string]: string } = {\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 function parseDigit(character: string): string | undefined {\n return DIGITS[character];\n}\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 * E.g. in Iraq they don't write `+442323234` but rather `+٤٤٢٣٢٣٢٣٤`.\n *\n * ```\n * parseDigits('8 (800) 555')\n * // Outputs '8800555'.\n * ```\n */\nexport default function parseDigits(string: string): string {\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 return string.split('').reduce((result, character) => {\n const digit = parseDigit(character);\n return digit ? result + digit : result;\n }, '');\n}\n","import { parseDigit } from './parseDigits';\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 * E.g. in Iraq they don't write `+442323234` but rather `+٤٤٢٣٢٣٢٣٤`.\n *\n * ```\n * // Outputs '8800555'.\n * parseIncompletePhoneNumber('8 (800) 555')\n * // Outputs '+7800555'.\n * parseIncompletePhoneNumber('+7 800 555')\n * ```\n */\n\nexport default function parseIncompletePhoneNumber(string: string): string {\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 return string.split('').reduce((result, character) => {\n const parsedChar = parsePhoneNumberCharacter(character, result);\n return parsedChar ? result + parsedChar : 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 */\nexport function parsePhoneNumberCharacter(character: string, prevParsedCharacters: string): string | undefined {\n // Only allow a leading `+`.\n if (character === '+') {\n // If this `+` is not the first parsed character\n // then discard it.\n if (prevParsedCharacters) {\n return;\n }\n\n return '+';\n }\n // Allow digits.\n return parseDigit(character);\n}\n","import { getAsYouType } from 'awesome-phonenumber';\nimport React, { ChangeEvent, ComponentType, FocusEvent, memo, useCallback, useEffect, useRef, useState } from 'react';\nimport parseIncompletePhoneNumber from './parseIncompletePhoneNumber';\n\n// Define props interface (removed state interface as it's not needed for functional component)\ninterface InputBasicProps {\n id?: string;\n name?: string;\n value: string;\n onChange: (value: string) => void;\n onFocus?: () => void;\n onBlur?: (event: FocusEvent<HTMLInputElement>) => void;\n country?: string;\n metadata?: Record<string, unknown>; // Specify the type if metadata structure is known\n inputComponent?: ComponentType<any>;\n smartcaret?: string;\n}\n\nconst InputBasic = memo<InputBasicProps>(\n ({ value: propValue, onChange, onFocus, onBlur, country, inputComponent: Input = 'input', ...rest }) => {\n // State to manage internal value\n const [value, setValue] = useState<string>(propValue);\n\n // Create a ref for the input element\n const inputRef = useRef<HTMLInputElement>(null);\n\n // Update internal value when prop value changes (replaces getDerivedStateFromProps)\n useEffect(() => {\n setValue(propValue);\n }, [propValue]);\n\n // Format function\n const format = useCallback(\n (inputValue: string): string => {\n const ayt = getAsYouType(country as string);\n ayt.addChar(inputValue);\n return ayt.number();\n },\n [country]\n );\n\n const handleChange = useCallback(\n (event: ChangeEvent<HTMLInputElement>) => {\n let newValue = parseIncompletePhoneNumber(event.target.value);\n\n // Workaround for handling the Samsung Galaxy smart caret positioning bug\n if (newValue === value) {\n if (format(newValue).startsWith(event.target.value)) {\n newValue = newValue.slice(0, -1); // Trim the last digit (or plus sign)\n }\n }\n\n setValue(newValue);\n onChange(newValue);\n },\n [value, format, onChange]\n );\n\n const handleBlur = useCallback(\n (event: FocusEvent<HTMLInputElement>) => {\n if (onBlur) {\n // Clone the event to prevent React's SyntheticEvent from being read-only\n const clonedEvent = {\n ...event,\n target: {\n ...event.target,\n value\n },\n stopPropagation: event.stopPropagation,\n preventDefault: event.preventDefault\n };\n onBlur(clonedEvent as FocusEvent<HTMLInputElement>);\n }\n },\n [onBlur, value]\n );\n\n // Focus function (can be called via ref)\n const focus = useCallback(() => {\n inputRef.current?.focus();\n }, []);\n\n // Expose focus method via useImperativeHandle if needed\n // React.useImperativeHandle(ref, () => ({ focus }), [focus]);\n\n return (\n <Input\n type=\"tel\"\n autoComplete=\"tel\"\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...rest}\n ref={inputRef}\n value={format(value)}\n onChange={handleChange}\n onFocus={onFocus}\n onBlur={handleBlur}\n />\n );\n }\n);\n\n// Set display name for debugging\nInputBasic.displayName = 'InputBasic';\n\nexport function createInput() {\n return InputBasic;\n}\n","import * as React from 'react';\nimport styles from './checkmark.module.scss';\n\nexport default function Checkmark({ onClickCheckMark }: { onClickCheckMark: () => void }): JSX.Element {\n return (\n <svg\n id=\"success-check-mark\"\n onClick={() => onClickCheckMark()}\n className={styles.checkmarkIcon}\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle className={styles.checkmarkCircle} cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\n <path className={styles.checkmarkCheck} fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\n </svg>\n );\n}\n","function mkConfig(countryCode: string, commonPrefix: string, maxLength: number) {\n return { countryCode, commonPrefix, maxLength };\n}\n\nconst configs: { [key: string]: ReturnType<typeof mkConfig> } = {\n mx: mkConfig('52', '01', 10),\n my: mkConfig('60', '01', 9),\n za: mkConfig('27', '0', 9),\n ae: mkConfig('971', '05', 10),\n a2: mkConfig('971', '05', 10),\n gr: mkConfig('30', '69', 9),\n g2: mkConfig('30', '69', 9),\n ee: mkConfig('372', '', 10),\n lt: mkConfig('370', '6', 9),\n ps: mkConfig('972', '0', 10),\n xx: mkConfig('', '', 10)\n};\n\nexport default (countryCode: string) => configs[countryCode] || configs.xx;\n","import * as React from 'react';\n\nexport default function Checkmark({\n onClickErrorCheckMark\n}: {\n onClickErrorCheckMark: () => void;\n}): React.ReactElement {\n return (\n <svg\n id=\"error-check-mark\"\n onClick={() => onClickErrorCheckMark()}\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"errormark__icon\"\n viewBox=\"0 0 90.27 90.27\"\n >\n <defs>\n <style\n dangerouslySetInnerHTML={{\n __html: `\n svg {\n fill: red;\n }\n .circle-2 {\n fill: #bcbec4;\n }\n .x {\n opacity: 0.5;\n }\n .x-single {\n fill: #fff;\n }\n `\n }}\n />\n </defs>\n <title>icon-error</title>\n <circle className=\"circle-2\" cx=\"45.14\" cy=\"45.14\" r=\"45.14\" />\n <g className=\"x\">\n <rect\n className=\"x-single\"\n x=\"21.77\"\n y=\"43.49\"\n width=\"46.74\"\n height=\"3.36\"\n transform=\"translate(-18.72 45.15) rotate(-45)\"\n />\n <rect\n className=\"x-single\"\n x=\"43.47\"\n y=\"21.81\"\n width=\"3.36\"\n height=\"46.74\"\n transform=\"translate(-18.72 45.16) rotate(-45)\"\n />\n </g>\n </svg>\n );\n}\n","/* eslint-disable no-underscore-dangle */\nimport { parsePhoneNumber } from 'awesome-phonenumber';\nimport React, { RefObject, useEffect, useState } from 'react';\nimport { createInput } from './BasicInput';\nimport Checkmark from './Checkmark';\nimport getConfig from './config';\nimport Errormark from './Errormark';\n// import styles from './PhoneInput.module.scss';\n\ninterface IPropsChange {\n msisdn: string;\n isValid: boolean;\n nationalNumber: string;\n internationalNumber: string;\n bupperNumber: string;\n}\n\ninterface IProps {\n countryCode: string;\n msisdn?: string;\n placeholder: string;\n onChange: (args: IPropsChange) => void;\n showCountryCode?: boolean;\n showFlag?: boolean;\n showMobileIcon?: boolean;\n showError: boolean;\n inputElementRef: RefObject<HTMLInputElement>;\n onClickCheckMark: () => void;\n onClickErrorCheckMark: () => void;\n onBlur: () => void;\n onFocus: () => void;\n onPaste: () => void;\n onKeyPress: () => void;\n id?: string;\n name?: string;\n maxLength?: string | number;\n saveValidNumber?: boolean;\n useNumberFromCookie?: boolean;\n tracker?: any;\n}\n\nfunction parseMSISDN(country: string, msisdnOriginal: string) {\n const msisdn = msisdnOriginal.startsWith('0') ? parseInt(msisdnOriginal, 10).toString() : msisdnOriginal;\n try {\n const parsedPhoneNumber = parsePhoneNumber(msisdn, { regionCode: country.toUpperCase() });\n const nationalNumber = parsedPhoneNumber.number?.national || '';\n const internationalNumber = parsedPhoneNumber.number?.international || '';\n const bupperNumber = getBupperNumber(nationalNumber);\n let isValid = parsedPhoneNumber.valid;\n if (country.toLowerCase() === 'ci') {\n isValid =\n parsedPhoneNumber.possible ||\n parsedPhoneNumber.typeIsMobile ||\n nationalNumber.length === 8 ||\n nationalNumber.length === 9;\n }\n\n return {\n nationalNumber,\n internationalNumber,\n bupperNumber,\n isValid,\n internationalPrefix: parsedPhoneNumber.countryCode\n };\n } catch (ex) {\n console.warn(ex);\n return {\n nationalNumber: '',\n internationalNumber: '',\n bupperNumber: '',\n isValid: false\n };\n }\n}\n\nfunction getBupperNumber(nationalNumber: string) {\n if (!nationalNumber) {\n return nationalNumber;\n }\n const match = nationalNumber.match(/\\d+/g);\n return match ? match.join('') : nationalNumber;\n}\n\nfunction hasNumber(myString: string) {\n return /\\d/.test(myString);\n}\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\nfunction setCookie(name: string, value: string, daysToExpire?: number, path = '/') {\n let cookieString = `${name}=${encodeURIComponent(value)}`;\n if (daysToExpire) {\n const date = new Date();\n date.setTime(date.getTime() + daysToExpire * 24 * 60 * 60 * 1000);\n cookieString += `; expires=${date.toUTCString()}`;\n }\n cookieString += `; path=${path}`;\n document.cookie = cookieString;\n}\n\nfunction getCookie(name: string) {\n const cookieValue = document.cookie.match(`(^|;)\\\\s*${name}\\\\s*=\\\\s*([^;]+)`);\n return cookieValue ? decodeURIComponent(cookieValue.pop() || '') : '';\n}\n\nconst MsisdnComponent: React.FC<IProps> = (props) => {\n const [isValid, setIsValid] = useState(false);\n const [showError, setShowError] = useState(false);\n\n const focusOnInputElement = () => {\n const { id, inputElementRef } = props;\n const phoneInputId = `#${id || 'phone-input'}`;\n const phoneInput = document.querySelector<HTMLInputElement>(phoneInputId);\n if (typeof window !== 'undefined' && phoneInput && !phoneInput.hasAttribute('autofocus')) {\n phoneInput.setAttribute('autofocus', '');\n }\n\n if (inputElementRef.current) {\n setTimeout(() => {\n inputElementRef.current?.focus();\n }, 123);\n }\n };\n\n useEffect(() => {\n focusOnInputElement();\n\n const fetchMsisdnFromStorage = async () => {\n if (typeof window !== 'undefined' && props?.useNumberFromCookie && (window as any).msisdnCookieUrl) {\n const msisdnFromCookie = getCookie('_uuid');\n const msisdnFromLocalStorage = localStorage.getItem('_uuid');\n let msisdnFromZurch = '';\n try {\n const response = await fetch((window as any).msisdnCookieUrl, {\n mode: 'cors',\n method: 'GET',\n credentials: 'include'\n });\n const data: any = await response.json();\n if (data?.data?.success && data?.data?._uuid) {\n msisdnFromZurch = data?.data?._uuid;\n }\n } catch (error: any) {\n console.error(error?.message);\n }\n\n const msisdnFromAnyStorage = msisdnFromZurch || msisdnFromLocalStorage || msisdnFromCookie || '';\n const decryptedMsisdn = window.atob(msisdnFromAnyStorage);\n\n if (props?.tracker) {\n const source = msisdnFromZurch\n ? 'msisdnCookieUrl'\n : msisdnFromLocalStorage\n ? 'localStorage'\n : msisdnFromCookie\n ? 'cookie'\n : 'none';\n props?.tracker?.customEvent('Flow', 'advance-auto', `msisdn-retrieve-${source}`, {\n source,\n msisdn: decryptedMsisdn\n });\n }\n\n if (decryptedMsisdn) {\n const country = hasNumber(props?.countryCode) ? specialCountryCodes[props?.countryCode] : props?.countryCode;\n const {\n nationalNumber,\n internationalNumber,\n bupperNumber,\n isValid: validNumber\n } = parseMSISDN(country, decryptedMsisdn);\n props?.onChange({\n msisdn: decryptedMsisdn,\n isValid: validNumber,\n nationalNumber,\n internationalNumber,\n bupperNumber\n });\n setIsValid(validNumber);\n (window as any).msisdn = decryptedMsisdn;\n }\n }\n };\n\n fetchMsisdnFromStorage();\n }, []);\n\n useEffect(() => {\n setShowError(props?.showError);\n }, [props?.showError]);\n\n const BasicInput = createInput();\n\n const country = hasNumber(props?.countryCode) ? specialCountryCodes[props?.countryCode] : props?.countryCode;\n const { countryCode, commonPrefix, maxLength } = getConfig(country);\n const showCountryCode = props?.showCountryCode ?? false;\n const showFlag = props?.showFlag ?? true;\n const showMobileIcon = props?.showMobileIcon ?? true;\n const saveValidNumber = props?.saveValidNumber ?? false;\n\n return (\n <div className=\"phone-input\">\n {showMobileIcon && <div className=\"phone\" onMouseDown={focusOnInputElement} onTouchStart={focusOnInputElement} />}\n\n {showFlag && (\n <div\n className=\"flag\"\n onMouseDown={focusOnInputElement}\n onTouchStart={focusOnInputElement}\n style={{\n backgroundImage: `url('https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/3.2.1/flags/4x3/${country}.svg')`\n }}\n />\n )}\n\n {showCountryCode && (\n <div className=\"country-code\" onMouseDown={focusOnInputElement}>\n ({countryCode})\n </div>\n )}\n\n <BasicInput\n id={props?.id || 'phone-input'}\n name={props?.name || 'phone-input-name'}\n smartcaret={\n typeof navigator === 'undefined' ? 'true' : /SamsungBrowser/gi.test(navigator.userAgent) ? 'false' : 'true'\n }\n // @ts-ignore\n ref={props?.inputElementRef}\n placeholder={props?.placeholder || 'Enter phone number'}\n country={country.toUpperCase()}\n className=\"text-input\"\n value={props?.msisdn || ''}\n onChange={(msisdn: string) => {\n setShowError(false);\n if (msisdn.includes('3522100000012340')) {\n props?.onChange({\n msisdn,\n isValid: true,\n nationalNumber: msisdn,\n internationalNumber: msisdn,\n bupperNumber: msisdn\n });\n setIsValid(true);\n return;\n }\n const {\n nationalNumber,\n internationalNumber,\n bupperNumber,\n isValid: validNumber\n } = parseMSISDN(country, msisdn);\n props?.onChange({ msisdn, isValid: validNumber, nationalNumber, internationalNumber, bupperNumber });\n setIsValid(validNumber);\n\n if (typeof window !== 'undefined') {\n (window as any).msisdn = msisdn;\n if (saveValidNumber && validNumber && (window as any).msisdnCookieUrl) {\n const encryptedMsisdn = window.btoa(msisdn);\n setCookie('_uuid', encryptedMsisdn, 30, '/');\n localStorage.setItem('_uuid', encryptedMsisdn);\n\n (async () => {\n try {\n const response = await fetch((window as any).msisdnCookieUrl, {\n mode: 'cors',\n method: 'POST',\n credentials: 'include',\n headers: { 'Content-Type': 'application/json' },\n body: JSON.stringify({ _uuid: encryptedMsisdn })\n });\n const responseData: any = await response.json();\n\n if (props?.tracker) {\n const eventType = responseData?.data?.success ? 'msisdn-stored-success' : 'msisdn-stored-failed';\n props?.tracker.customEvent('Flow', 'advance-auto', eventType);\n }\n } catch (error) {\n props?.tracker.customEvent('Flow', 'advance-auto', 'msisdn-stored-error', error);\n }\n })();\n }\n }\n }}\n onPaste={props?.onPaste}\n onBlur={props?.onBlur}\n onFocus={props?.onFocus}\n onKeyPress={props?.onKeyPress}\n maxLength={props?.maxLength}\n />\n\n <div className=\"checkmark-container\" data-checkmark-container=\"true\">\n {showError ? (\n <Errormark onClickErrorCheckMark={props?.onClickErrorCheckMark} />\n ) : isValid ? (\n <Checkmark onClickCheckMark={props?.onClickCheckMark} />\n ) : null}\n </div>\n </div>\n );\n};\n\nexport default MsisdnComponent;\n"],"names":["DIGITS","parseIncompletePhoneNumber","string","split","reduce","result","character","parsedChar","prevParsedCharacters","parseDigit","parsePhoneNumberCharacter","InputBasic","memo","_a","propValue","value","onChange","onFocus","onBlur","country","_b","inputComponent","Input","rest","__rest","_c","__read","useState","setValue","inputRef","useRef","useEffect","format","useCallback","inputValue","ayt","getAsYouType","addChar","number","handleChange","event","newValue","target","startsWith","slice","handleBlur","clonedEvent","__assign","stopPropagation","preventDefault","current","focus","React","createElement","type","autoComplete","ref","displayName","Checkmark","onClickCheckMark","id","onClick","className","styles","xmlns","viewBox","cx","cy","r","fill","d","mkConfig","countryCode","commonPrefix","maxLength","configs","mx","my","za","ae","a2","gr","g2","ee","lt","ps","xx","onClickErrorCheckMark","dangerouslySetInnerHTML","__html","x","y","width","height","transform","parseMSISDN","msisdnOriginal","msisdn","parseInt","toString","parsedPhoneNumber","parsePhoneNumber","regionCode","toUpperCase","nationalNumber","national","internationalNumber","international","bupperNumber","match","join","getBupperNumber","isValid","valid","toLowerCase","possible","typeIsMobile","length","internationalPrefix","ex","console","warn","hasNumber","myString","test","specialCountryCodes","s2","o2","k2","c2","r2","l2","s3","b2","a3","MsisdnComponent","props","_e","setIsValid","_f","showError","setShowError","focusOnInputElement","inputElementRef","phoneInputId","concat","phoneInput","document","querySelector","window","hasAttribute","setAttribute","setTimeout","__awaiter","useNumberFromCookie","msisdnCookieUrl","name","cookieValue","cookie","msisdnFromCookie","decodeURIComponent","pop","msisdnFromLocalStorage","localStorage","getItem","msisdnFromZurch","fetch","mode","method","credentials","sent","json","data","success","_uuid","_d","error","error_1","message","msisdnFromAnyStorage","decryptedMsisdn","atob","tracker","source","customEvent","country_1","validNumber","BasicInput","_g","getConfig","showCountryCode","showFlag","showMobileIcon","saveValidNumber","onMouseDown","onTouchStart","style","backgroundImage","smartcaret","navigator","userAgent","placeholder","includes","encryptedMsisdn_1","btoa","daysToExpire","path","cookieString","encodeURIComponent","date","Date","setTime","getTime","toUTCString","setCookie","setItem","headers","body","JSON","stringify","responseData","eventType","error_2","onPaste","onKeyPress","Errormark"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{__rest as e,__read as n,__assign as o,__awaiter as t,__generator as r}from"tslib";import{getAsYouType as a,parsePhoneNumber as i}from"awesome-phonenumber";import*as l from"react";import u,{memo as c,useState as s,useRef as d,useEffect as m,useCallback as v}from"react";var f={0:"0",1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9","0":"0","1":"1","2":"2","3":"3","4":"4","5":"5","6":"6","7":"7","8":"8","9":"9","٠":"0","١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","۰":"0","۱":"1","۲":"2","۳":"3","۴":"4","۵":"5","۶":"6","۷":"7","۸":"8","۹":"9"};function p(e){return e.split("").reduce((function(e,n){var o=function(e,n){if("+"===e){if(n)return;return"+"}return function(e){return f[e]}(e)}(n,e);return o?e+o:e}),"")}var h=c((function(t){var r=t.value,i=t.onChange,l=t.onFocus,c=t.onBlur,f=t.country,h=t.inputComponent,g=void 0===h?"input":h,k=e(t,["value","onChange","onFocus","onBlur","country","inputComponent"]),b=n(s(r),2),w=b[0],C=b[1],y=d(null);m((function(){C(r)}),[r]);var N=v((function(e){var n=a(f);return n.addChar(e),n.number()}),[f]),E=v((function(e){var n=p(e.target.value);n===w&&N(n).startsWith(e.target.value)&&(n=n.slice(0,-1)),C(n),i(n)}),[w,N,i]),x=v((function(e){if(c){var n=o(o({},e),{target:o(o({},e.target),{value:w}),stopPropagation:e.stopPropagation,preventDefault:e.preventDefault});c(n)}}),[c,w]);return v((function(){var e;null===(e=y.current)||void 0===e||e.focus()}),[]),u.createElement(g,o({type:"tel",autoComplete:"tel"},k,{ref:y,value:N(w),onChange:E,onFocus:l,onBlur:x}))}));h.displayName="InputBasic";var g="checkmark-module_checkmarkCircle__eLYXC",k="checkmark-module_checkmarkIcon__MB66m",b="checkmark-module_checkmarkCheck__PU1bl";function w(e){var n=e.onClickCheckMark;return l.createElement("svg",{id:"success-check-mark",onClick:function(){return n()},className:k,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 52 52"},l.createElement("circle",{className:g,cx:"26",cy:"26",r:"25",fill:"none"}),l.createElement("path",{className:b,fill:"none",d:"M14.1 27.2l7.1 7.2 16.7-16.8"}))}function C(e,n,o){return{countryCode:e,commonPrefix:n,maxLength:o}}var y={mx:C("52","01",10),my:C("60","01",9),za:C("27","0",9),ae:C("971","05",10),a2:C("971","05",10),gr:C("30","69",9),g2:C("30","69",9),ee:C("372","",10),lt:C("370","6",9),ps:C("972","0",10),xx:C("","",10)};function N(e){var n=e.onClickErrorCheckMark;return l.createElement("svg",{id:"error-check-mark",onClick:function(){return n()},xmlns:"http://www.w3.org/2000/svg",className:"errormark__icon",viewBox:"0 0 90.27 90.27"},l.createElement("defs",null,l.createElement("style",{dangerouslySetInnerHTML:{__html:"\n svg {\n fill: red;\n }\n .circle-2 {\n fill: #bcbec4;\n }\n .x {\n opacity: 0.5;\n }\n .x-single {\n fill: #fff;\n }\n "}})),l.createElement("title",null,"icon-error"),l.createElement("circle",{className:"circle-2",cx:"45.14",cy:"45.14",r:"45.14"}),l.createElement("g",{className:"x"},l.createElement("rect",{className:"x-single",x:"21.77",y:"43.49",width:"46.74",height:"3.36",transform:"translate(-18.72 45.15) rotate(-45)"}),l.createElement("rect",{className:"x-single",x:"43.47",y:"21.81",width:"3.36",height:"46.74",transform:"translate(-18.72 45.16) rotate(-45)"})))}function E(e,n){var o,t,r=n.startsWith("0")?parseInt(n,10).toString():n;try{var a=i(r,{regionCode:e.toUpperCase()}),l=(null===(o=a.number)||void 0===o?void 0:o.national)||"",u=(null===(t=a.number)||void 0===t?void 0:t.international)||"",c=function(e){if(!e)return e;var n=e.match(/\d+/g);return n?n.join(""):e}(l),s=a.valid;return"ci"===e.toLowerCase()&&(s=a.possible||a.typeIsMobile||8===l.length||9===l.length),{nationalNumber:l,internationalNumber:u,bupperNumber:c,isValid:s,internationalPrefix:a.countryCode}}catch(e){return console.warn(e),{nationalNumber:"",internationalNumber:"",bupperNumber:"",isValid:!1}}}function x(e){return/\d/.test(e)}var _={s2:"sa",o2:"om",a2:"ae",k2:"kw",c2:"ch",r2:"rs",l2:"lv",s3:"se",b2:"bh",g2:"gr",a3:"at"};var M=function(e){var o,a,i,l,c=n(s(!1),2),d=c[0],v=c[1],f=n(s(!1),2),p=f[0],g=f[1],k=function(){var n=e.id,o=e.inputElementRef,t="#".concat(n||"phone-input"),r=document.querySelector(t);"undefined"!=typeof window&&r&&!r.hasAttribute("autofocus")&&r.setAttribute("autofocus",""),o.current&&setTimeout((function(){var e;null===(e=o.current)||void 0===e||e.focus()}),123)};m((function(){k();t(void 0,void 0,void 0,(function(){var n,o,t,a,i,l,u,c,s,d,m,f,p,h,g,k,b,w;return r(this,(function(r){switch(r.label){case 0:if("undefined"==typeof window||!(null==e?void 0:e.useNumberFromCookie)||!window.msisdnCookieUrl)return[3,6];C="_uuid",y=document.cookie.match("(^|;)\\s*".concat(C,"\\s*=\\s*([^;]+)")),n=y?decodeURIComponent(y.pop()||""):"",o=localStorage.getItem("_uuid"),t="",r.label=1;case 1:return r.trys.push([1,4,,5]),[4,fetch(window.msisdnCookieUrl,{mode:"cors",method:"GET",credentials:"include"})];case 2:return[4,r.sent().json()];case 3:return a=r.sent(),(null===(g=null==a?void 0:a.data)||void 0===g?void 0:g.success)&&(null===(k=null==a?void 0:a.data)||void 0===k?void 0:k._uuid)&&(t=null===(b=null==a?void 0:a.data)||void 0===b?void 0:b._uuid),[3,5];case 4:return i=r.sent(),console.error(null==i?void 0:i.message),[3,5];case 5:l=t||o||n||"",u=window.atob(l),(null==e?void 0:e.tracker)&&(c=t?"msisdnCookieUrl":o?"localStorage":n?"cookie":"none",null===(w=null==e?void 0:e.tracker)||void 0===w||w.customEvent("Flow","advance-auto","msisdn-retrieve-".concat(c),{source:c,msisdn:u})),u&&(s=x(null==e?void 0:e.countryCode)?_[null==e?void 0:e.countryCode]:null==e?void 0:e.countryCode,d=E(s,u),m=d.nationalNumber,f=d.internationalNumber,p=d.bupperNumber,h=d.isValid,null==e||e.onChange({msisdn:u,isValid:h,nationalNumber:m,internationalNumber:f,bupperNumber:p}),v(h),window.msisdn=u),r.label=6;case 6:return[2]}var C,y}))}))}),[]),m((function(){g(null==e?void 0:e.showError)}),[null==e?void 0:e.showError]);var b=h,C=x(null==e?void 0:e.countryCode)?_[null==e?void 0:e.countryCode]:null==e?void 0:e.countryCode,M=function(e){return y[e]||y.xx}(C),S=M.countryCode;M.commonPrefix,M.maxLength;var I=null!==(o=null==e?void 0:e.showCountryCode)&&void 0!==o&&o,P=null===(a=null==e?void 0:e.showFlag)||void 0===a||a,U=null===(i=null==e?void 0:e.showMobileIcon)||void 0===i||i,B=null!==(l=null==e?void 0:e.saveValidNumber)&&void 0!==l&&l;return u.createElement("div",{className:"phone-input"},U&&u.createElement("div",{className:"phone",onMouseDown:k,onTouchStart:k}),P&&u.createElement("div",{className:"flag",onMouseDown:k,onTouchStart:k,style:{backgroundImage:"url('https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/3.2.1/flags/4x3/".concat(C,".svg')")}}),I&&u.createElement("div",{className:"country-code",onMouseDown:k},"(",S,")"),u.createElement(b,{id:(null==e?void 0:e.id)||"phone-input",name:(null==e?void 0:e.name)||"phone-input-name",smartcaret:"undefined"==typeof navigator?"true":/SamsungBrowser/gi.test(navigator.userAgent)?"false":"true",ref:null==e?void 0:e.inputElementRef,placeholder:(null==e?void 0:e.placeholder)||"Enter phone number",country:C.toUpperCase(),className:"text-input",value:(null==e?void 0:e.msisdn)||"",onChange:function(n){if(g(!1),n.includes("3522100000012340"))return null==e||e.onChange({msisdn:n,isValid:!0,nationalNumber:n,internationalNumber:n,bupperNumber:n}),void v(!0);var o=E(C,n),a=o.nationalNumber,i=o.internationalNumber,l=o.bupperNumber,u=o.isValid;if(null==e||e.onChange({msisdn:n,isValid:u,nationalNumber:a,internationalNumber:i,bupperNumber:l}),v(u),"undefined"!=typeof window&&(window.msisdn=n,B&&u&&window.msisdnCookieUrl)){var c=window.btoa(n);!function(e,n,o,t){void 0===t&&(t="/");var r="".concat(e,"=").concat(encodeURIComponent(n));if(o){var a=new Date;a.setTime(a.getTime()+24*o*60*60*1e3),r+="; expires=".concat(a.toUTCString())}r+="; path=".concat(t),document.cookie=r}("_uuid",c,30,"/"),localStorage.setItem("_uuid",c),t(void 0,void 0,void 0,(function(){var n,o,t,a;return r(this,(function(r){switch(r.label){case 0:return r.trys.push([0,3,,4]),[4,fetch(window.msisdnCookieUrl,{mode:"cors",method:"POST",credentials:"include",headers:{"Content-Type":"application/json"},body:JSON.stringify({_uuid:c})})];case 1:return[4,r.sent().json()];case 2:return n=r.sent(),(null==e?void 0:e.tracker)&&(o=(null===(a=null==n?void 0:n.data)||void 0===a?void 0:a.success)?"msisdn-stored-success":"msisdn-stored-failed",null==e||e.tracker.customEvent("Flow","advance-auto",o)),[3,4];case 3:return t=r.sent(),null==e||e.tracker.customEvent("Flow","advance-auto","msisdn-stored-error",t),[3,4];case 4:return[2]}}))}))}},onPaste:null==e?void 0:e.onPaste,onBlur:null==e?void 0:e.onBlur,onFocus:null==e?void 0:e.onFocus,onKeyPress:null==e?void 0:e.onKeyPress,maxLength:null==e?void 0:e.maxLength}),u.createElement("div",{className:"checkmark-container","data-checkmark-container":"true"},p?u.createElement(N,{onClickErrorCheckMark:null==e?void 0:e.onClickErrorCheckMark}):d?u.createElement(w,{onClickCheckMark:null==e?void 0:e.onClickCheckMark}):null))};export{M};
2
+ //# sourceMappingURL=PhoneInput-e2fdf8fb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PhoneInput-e2fdf8fb.js","sources":["../src/PhoneInput/BasicInput/parseDigits.ts","../src/PhoneInput/BasicInput/parseIncompletePhoneNumber.ts","../src/PhoneInput/BasicInput/index.tsx","../src/PhoneInput/Checkmark.tsx","../src/PhoneInput/config.ts","../src/PhoneInput/Errormark.tsx","../src/PhoneInput/PhoneInput.tsx"],"sourcesContent":["// 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//\nexport const DIGITS: { [key: string]: string } = {\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 function parseDigit(character: string): string | undefined {\n return DIGITS[character];\n}\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 * E.g. in Iraq they don't write `+442323234` but rather `+٤٤٢٣٢٣٢٣٤`.\n *\n * ```\n * parseDigits('8 (800) 555')\n * // Outputs '8800555'.\n * ```\n */\nexport default function parseDigits(string: string): string {\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 return string.split('').reduce((result, character) => {\n const digit = parseDigit(character);\n return digit ? result + digit : result;\n }, '');\n}\n","import { parseDigit } from './parseDigits';\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 * E.g. in Iraq they don't write `+442323234` but rather `+٤٤٢٣٢٣٢٣٤`.\n *\n * ```\n * // Outputs '8800555'.\n * parseIncompletePhoneNumber('8 (800) 555')\n * // Outputs '+7800555'.\n * parseIncompletePhoneNumber('+7 800 555')\n * ```\n */\n\nexport default function parseIncompletePhoneNumber(string: string): string {\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 return string.split('').reduce((result, character) => {\n const parsedChar = parsePhoneNumberCharacter(character, result);\n return parsedChar ? result + parsedChar : 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 */\nexport function parsePhoneNumberCharacter(character: string, prevParsedCharacters: string): string | undefined {\n // Only allow a leading `+`.\n if (character === '+') {\n // If this `+` is not the first parsed character\n // then discard it.\n if (prevParsedCharacters) {\n return;\n }\n\n return '+';\n }\n // Allow digits.\n return parseDigit(character);\n}\n","import { getAsYouType } from 'awesome-phonenumber';\nimport React, { ChangeEvent, ComponentType, FocusEvent, memo, useCallback, useEffect, useRef, useState } from 'react';\nimport parseIncompletePhoneNumber from './parseIncompletePhoneNumber';\n\n// Define props interface (removed state interface as it's not needed for functional component)\ninterface InputBasicProps {\n id?: string;\n name?: string;\n value: string;\n onChange: (value: string) => void;\n onFocus?: () => void;\n onBlur?: (event: FocusEvent<HTMLInputElement>) => void;\n country?: string;\n metadata?: Record<string, unknown>; // Specify the type if metadata structure is known\n inputComponent?: ComponentType<any>;\n smartcaret?: string;\n}\n\nconst InputBasic = memo<InputBasicProps>(\n ({ value: propValue, onChange, onFocus, onBlur, country, inputComponent: Input = 'input', ...rest }) => {\n // State to manage internal value\n const [value, setValue] = useState<string>(propValue);\n\n // Create a ref for the input element\n const inputRef = useRef<HTMLInputElement>(null);\n\n // Update internal value when prop value changes (replaces getDerivedStateFromProps)\n useEffect(() => {\n setValue(propValue);\n }, [propValue]);\n\n // Format function\n const format = useCallback(\n (inputValue: string): string => {\n const ayt = getAsYouType(country as string);\n ayt.addChar(inputValue);\n return ayt.number();\n },\n [country]\n );\n\n const handleChange = useCallback(\n (event: ChangeEvent<HTMLInputElement>) => {\n let newValue = parseIncompletePhoneNumber(event.target.value);\n\n // Workaround for handling the Samsung Galaxy smart caret positioning bug\n if (newValue === value) {\n if (format(newValue).startsWith(event.target.value)) {\n newValue = newValue.slice(0, -1); // Trim the last digit (or plus sign)\n }\n }\n\n setValue(newValue);\n onChange(newValue);\n },\n [value, format, onChange]\n );\n\n const handleBlur = useCallback(\n (event: FocusEvent<HTMLInputElement>) => {\n if (onBlur) {\n // Clone the event to prevent React's SyntheticEvent from being read-only\n const clonedEvent = {\n ...event,\n target: {\n ...event.target,\n value\n },\n stopPropagation: event.stopPropagation,\n preventDefault: event.preventDefault\n };\n onBlur(clonedEvent as FocusEvent<HTMLInputElement>);\n }\n },\n [onBlur, value]\n );\n\n // Focus function (can be called via ref)\n const focus = useCallback(() => {\n inputRef.current?.focus();\n }, []);\n\n // Expose focus method via useImperativeHandle if needed\n // React.useImperativeHandle(ref, () => ({ focus }), [focus]);\n\n return (\n <Input\n type=\"tel\"\n autoComplete=\"tel\"\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...rest}\n ref={inputRef}\n value={format(value)}\n onChange={handleChange}\n onFocus={onFocus}\n onBlur={handleBlur}\n />\n );\n }\n);\n\n// Set display name for debugging\nInputBasic.displayName = 'InputBasic';\n\nexport function createInput() {\n return InputBasic;\n}\n","import * as React from 'react';\nimport styles from './checkmark.module.scss';\n\nexport default function Checkmark({ onClickCheckMark }: { onClickCheckMark: () => void }): JSX.Element {\n return (\n <svg\n id=\"success-check-mark\"\n onClick={() => onClickCheckMark()}\n className={styles.checkmarkIcon}\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle className={styles.checkmarkCircle} cx=\"26\" cy=\"26\" r=\"25\" fill=\"none\" />\n <path className={styles.checkmarkCheck} fill=\"none\" d=\"M14.1 27.2l7.1 7.2 16.7-16.8\" />\n </svg>\n );\n}\n","function mkConfig(countryCode: string, commonPrefix: string, maxLength: number) {\n return { countryCode, commonPrefix, maxLength };\n}\n\nconst configs: { [key: string]: ReturnType<typeof mkConfig> } = {\n mx: mkConfig('52', '01', 10),\n my: mkConfig('60', '01', 9),\n za: mkConfig('27', '0', 9),\n ae: mkConfig('971', '05', 10),\n a2: mkConfig('971', '05', 10),\n gr: mkConfig('30', '69', 9),\n g2: mkConfig('30', '69', 9),\n ee: mkConfig('372', '', 10),\n lt: mkConfig('370', '6', 9),\n ps: mkConfig('972', '0', 10),\n xx: mkConfig('', '', 10)\n};\n\nexport default (countryCode: string) => configs[countryCode] || configs.xx;\n","import * as React from 'react';\n\nexport default function Checkmark({\n onClickErrorCheckMark\n}: {\n onClickErrorCheckMark: () => void;\n}): React.ReactElement {\n return (\n <svg\n id=\"error-check-mark\"\n onClick={() => onClickErrorCheckMark()}\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"errormark__icon\"\n viewBox=\"0 0 90.27 90.27\"\n >\n <defs>\n <style\n dangerouslySetInnerHTML={{\n __html: `\n svg {\n fill: red;\n }\n .circle-2 {\n fill: #bcbec4;\n }\n .x {\n opacity: 0.5;\n }\n .x-single {\n fill: #fff;\n }\n `\n }}\n />\n </defs>\n <title>icon-error</title>\n <circle className=\"circle-2\" cx=\"45.14\" cy=\"45.14\" r=\"45.14\" />\n <g className=\"x\">\n <rect\n className=\"x-single\"\n x=\"21.77\"\n y=\"43.49\"\n width=\"46.74\"\n height=\"3.36\"\n transform=\"translate(-18.72 45.15) rotate(-45)\"\n />\n <rect\n className=\"x-single\"\n x=\"43.47\"\n y=\"21.81\"\n width=\"3.36\"\n height=\"46.74\"\n transform=\"translate(-18.72 45.16) rotate(-45)\"\n />\n </g>\n </svg>\n );\n}\n","/* eslint-disable no-underscore-dangle */\nimport { parsePhoneNumber } from 'awesome-phonenumber';\nimport React, { RefObject, useEffect, useState } from 'react';\nimport { createInput } from './BasicInput';\nimport Checkmark from './Checkmark';\nimport getConfig from './config';\nimport Errormark from './Errormark';\n// import styles from './PhoneInput.module.scss';\n\ninterface IPropsChange {\n msisdn: string;\n isValid: boolean;\n nationalNumber: string;\n internationalNumber: string;\n bupperNumber: string;\n}\n\ninterface IProps {\n countryCode: string;\n msisdn?: string;\n placeholder: string;\n onChange: (args: IPropsChange) => void;\n showCountryCode?: boolean;\n showFlag?: boolean;\n showMobileIcon?: boolean;\n showError: boolean;\n inputElementRef: RefObject<HTMLInputElement>;\n onClickCheckMark: () => void;\n onClickErrorCheckMark: () => void;\n onBlur: () => void;\n onFocus: () => void;\n onPaste: () => void;\n onKeyPress: () => void;\n id?: string;\n name?: string;\n maxLength?: string | number;\n saveValidNumber?: boolean;\n useNumberFromCookie?: boolean;\n tracker?: any;\n}\n\nfunction parseMSISDN(country: string, msisdnOriginal: string) {\n const msisdn = msisdnOriginal.startsWith('0') ? parseInt(msisdnOriginal, 10).toString() : msisdnOriginal;\n try {\n const parsedPhoneNumber = parsePhoneNumber(msisdn, { regionCode: country.toUpperCase() });\n const nationalNumber = parsedPhoneNumber.number?.national || '';\n const internationalNumber = parsedPhoneNumber.number?.international || '';\n const bupperNumber = getBupperNumber(nationalNumber);\n let isValid = parsedPhoneNumber.valid;\n if (country.toLowerCase() === 'ci') {\n isValid =\n parsedPhoneNumber.possible ||\n parsedPhoneNumber.typeIsMobile ||\n nationalNumber.length === 8 ||\n nationalNumber.length === 9;\n }\n\n return {\n nationalNumber,\n internationalNumber,\n bupperNumber,\n isValid,\n internationalPrefix: parsedPhoneNumber.countryCode\n };\n } catch (ex) {\n console.warn(ex);\n return {\n nationalNumber: '',\n internationalNumber: '',\n bupperNumber: '',\n isValid: false\n };\n }\n}\n\nfunction getBupperNumber(nationalNumber: string) {\n if (!nationalNumber) {\n return nationalNumber;\n }\n const match = nationalNumber.match(/\\d+/g);\n return match ? match.join('') : nationalNumber;\n}\n\nfunction hasNumber(myString: string) {\n return /\\d/.test(myString);\n}\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\nfunction setCookie(name: string, value: string, daysToExpire?: number, path = '/') {\n let cookieString = `${name}=${encodeURIComponent(value)}`;\n if (daysToExpire) {\n const date = new Date();\n date.setTime(date.getTime() + daysToExpire * 24 * 60 * 60 * 1000);\n cookieString += `; expires=${date.toUTCString()}`;\n }\n cookieString += `; path=${path}`;\n document.cookie = cookieString;\n}\n\nfunction getCookie(name: string) {\n const cookieValue = document.cookie.match(`(^|;)\\\\s*${name}\\\\s*=\\\\s*([^;]+)`);\n return cookieValue ? decodeURIComponent(cookieValue.pop() || '') : '';\n}\n\nconst MsisdnComponent: React.FC<IProps> = (props) => {\n const [isValid, setIsValid] = useState(false);\n const [showError, setShowError] = useState(false);\n\n const focusOnInputElement = () => {\n const { id, inputElementRef } = props;\n const phoneInputId = `#${id || 'phone-input'}`;\n const phoneInput = document.querySelector<HTMLInputElement>(phoneInputId);\n if (typeof window !== 'undefined' && phoneInput && !phoneInput.hasAttribute('autofocus')) {\n phoneInput.setAttribute('autofocus', '');\n }\n\n if (inputElementRef.current) {\n setTimeout(() => {\n inputElementRef.current?.focus();\n }, 123);\n }\n };\n\n useEffect(() => {\n focusOnInputElement();\n\n const fetchMsisdnFromStorage = async () => {\n if (typeof window !== 'undefined' && props?.useNumberFromCookie && (window as any).msisdnCookieUrl) {\n const msisdnFromCookie = getCookie('_uuid');\n const msisdnFromLocalStorage = localStorage.getItem('_uuid');\n let msisdnFromZurch = '';\n try {\n const response = await fetch((window as any).msisdnCookieUrl, {\n mode: 'cors',\n method: 'GET',\n credentials: 'include'\n });\n const data: any = await response.json();\n if (data?.data?.success && data?.data?._uuid) {\n msisdnFromZurch = data?.data?._uuid;\n }\n } catch (error: any) {\n console.error(error?.message);\n }\n\n const msisdnFromAnyStorage = msisdnFromZurch || msisdnFromLocalStorage || msisdnFromCookie || '';\n const decryptedMsisdn = window.atob(msisdnFromAnyStorage);\n\n if (props?.tracker) {\n const source = msisdnFromZurch\n ? 'msisdnCookieUrl'\n : msisdnFromLocalStorage\n ? 'localStorage'\n : msisdnFromCookie\n ? 'cookie'\n : 'none';\n props?.tracker?.customEvent('Flow', 'advance-auto', `msisdn-retrieve-${source}`, {\n source,\n msisdn: decryptedMsisdn\n });\n }\n\n if (decryptedMsisdn) {\n const country = hasNumber(props?.countryCode) ? specialCountryCodes[props?.countryCode] : props?.countryCode;\n const {\n nationalNumber,\n internationalNumber,\n bupperNumber,\n isValid: validNumber\n } = parseMSISDN(country, decryptedMsisdn);\n props?.onChange({\n msisdn: decryptedMsisdn,\n isValid: validNumber,\n nationalNumber,\n internationalNumber,\n bupperNumber\n });\n setIsValid(validNumber);\n (window as any).msisdn = decryptedMsisdn;\n }\n }\n };\n\n fetchMsisdnFromStorage();\n }, []);\n\n useEffect(() => {\n setShowError(props?.showError);\n }, [props?.showError]);\n\n const BasicInput = createInput();\n\n const country = hasNumber(props?.countryCode) ? specialCountryCodes[props?.countryCode] : props?.countryCode;\n const { countryCode, commonPrefix, maxLength } = getConfig(country);\n const showCountryCode = props?.showCountryCode ?? false;\n const showFlag = props?.showFlag ?? true;\n const showMobileIcon = props?.showMobileIcon ?? true;\n const saveValidNumber = props?.saveValidNumber ?? false;\n\n return (\n <div className=\"phone-input\">\n {showMobileIcon && <div className=\"phone\" onMouseDown={focusOnInputElement} onTouchStart={focusOnInputElement} />}\n\n {showFlag && (\n <div\n className=\"flag\"\n onMouseDown={focusOnInputElement}\n onTouchStart={focusOnInputElement}\n style={{\n backgroundImage: `url('https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/3.2.1/flags/4x3/${country}.svg')`\n }}\n />\n )}\n\n {showCountryCode && (\n <div className=\"country-code\" onMouseDown={focusOnInputElement}>\n ({countryCode})\n </div>\n )}\n\n <BasicInput\n id={props?.id || 'phone-input'}\n name={props?.name || 'phone-input-name'}\n smartcaret={\n typeof navigator === 'undefined' ? 'true' : /SamsungBrowser/gi.test(navigator.userAgent) ? 'false' : 'true'\n }\n // @ts-ignore\n ref={props?.inputElementRef}\n placeholder={props?.placeholder || 'Enter phone number'}\n country={country.toUpperCase()}\n className=\"text-input\"\n value={props?.msisdn || ''}\n onChange={(msisdn: string) => {\n setShowError(false);\n if (msisdn.includes('3522100000012340')) {\n props?.onChange({\n msisdn,\n isValid: true,\n nationalNumber: msisdn,\n internationalNumber: msisdn,\n bupperNumber: msisdn\n });\n setIsValid(true);\n return;\n }\n const {\n nationalNumber,\n internationalNumber,\n bupperNumber,\n isValid: validNumber\n } = parseMSISDN(country, msisdn);\n props?.onChange({ msisdn, isValid: validNumber, nationalNumber, internationalNumber, bupperNumber });\n setIsValid(validNumber);\n\n if (typeof window !== 'undefined') {\n (window as any).msisdn = msisdn;\n if (saveValidNumber && validNumber && (window as any).msisdnCookieUrl) {\n const encryptedMsisdn = window.btoa(msisdn);\n setCookie('_uuid', encryptedMsisdn, 30, '/');\n localStorage.setItem('_uuid', encryptedMsisdn);\n\n (async () => {\n try {\n const response = await fetch((window as any).msisdnCookieUrl, {\n mode: 'cors',\n method: 'POST',\n credentials: 'include',\n headers: { 'Content-Type': 'application/json' },\n body: JSON.stringify({ _uuid: encryptedMsisdn })\n });\n const responseData: any = await response.json();\n\n if (props?.tracker) {\n const eventType = responseData?.data?.success ? 'msisdn-stored-success' : 'msisdn-stored-failed';\n props?.tracker.customEvent('Flow', 'advance-auto', eventType);\n }\n } catch (error) {\n props?.tracker.customEvent('Flow', 'advance-auto', 'msisdn-stored-error', error);\n }\n })();\n }\n }\n }}\n onPaste={props?.onPaste}\n onBlur={props?.onBlur}\n onFocus={props?.onFocus}\n onKeyPress={props?.onKeyPress}\n maxLength={props?.maxLength}\n />\n\n <div className=\"checkmark-container\" data-checkmark-container=\"true\">\n {showError ? (\n <Errormark onClickErrorCheckMark={props?.onClickErrorCheckMark} />\n ) : isValid ? (\n <Checkmark onClickCheckMark={props?.onClickCheckMark} />\n ) : null}\n </div>\n </div>\n );\n};\n\nexport default MsisdnComponent;\n"],"names":["DIGITS","parseIncompletePhoneNumber","string","split","reduce","result","character","parsedChar","prevParsedCharacters","parseDigit","parsePhoneNumberCharacter","InputBasic","memo","_a","propValue","value","onChange","onFocus","onBlur","country","_b","inputComponent","Input","rest","__rest","_c","__read","useState","setValue","inputRef","useRef","useEffect","format","useCallback","inputValue","ayt","getAsYouType","addChar","number","handleChange","event","newValue","target","startsWith","slice","handleBlur","clonedEvent","__assign","stopPropagation","preventDefault","current","focus","React","createElement","type","autoComplete","ref","displayName","Checkmark","onClickCheckMark","id","onClick","className","styles","xmlns","viewBox","cx","cy","r","fill","d","mkConfig","countryCode","commonPrefix","maxLength","configs","mx","my","za","ae","a2","gr","g2","ee","lt","ps","xx","onClickErrorCheckMark","dangerouslySetInnerHTML","__html","x","y","width","height","transform","parseMSISDN","msisdnOriginal","msisdn","parseInt","toString","parsedPhoneNumber","parsePhoneNumber","regionCode","toUpperCase","nationalNumber","national","internationalNumber","international","bupperNumber","match","join","getBupperNumber","isValid","valid","toLowerCase","possible","typeIsMobile","length","internationalPrefix","ex","console","warn","hasNumber","myString","test","specialCountryCodes","s2","o2","k2","c2","r2","l2","s3","b2","a3","MsisdnComponent","props","_e","setIsValid","_f","showError","setShowError","focusOnInputElement","inputElementRef","phoneInputId","concat","phoneInput","document","querySelector","window","hasAttribute","setAttribute","setTimeout","__awaiter","useNumberFromCookie","msisdnCookieUrl","name","cookieValue","cookie","msisdnFromCookie","decodeURIComponent","pop","msisdnFromLocalStorage","localStorage","getItem","msisdnFromZurch","fetch","mode","method","credentials","sent","json","data","success","_uuid","_d","error","error_1","message","msisdnFromAnyStorage","decryptedMsisdn","atob","tracker","source","customEvent","country_1","validNumber","BasicInput","_g","getConfig","showCountryCode","showFlag","showMobileIcon","saveValidNumber","onMouseDown","onTouchStart","style","backgroundImage","smartcaret","navigator","userAgent","placeholder","includes","encryptedMsisdn_1","btoa","daysToExpire","path","cookieString","encodeURIComponent","date","Date","setTime","getTime","toUTCString","setCookie","setItem","headers","body","JSON","stringify","responseData","eventType","error_2","onPaste","onKeyPress","Errormark"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export{M as PhoneInput}from"./PhoneInput-fcedce3f.js";import"tslib";import"awesome-phonenumber";import"react";
1
+ export{M as PhoneInput}from"./PhoneInput-c334169d.js";import"tslib";import"awesome-phonenumber";import"react";
2
2
  //# sourceMappingURL=PhoneInput.js.map
@@ -1,2 +1,2 @@
1
- import{__read as e}from"tslib";import t,{useEffect as n}from"react";import{B as a}from"./Button-547a4901.js";import"classnames";var i=function(i){var o=i.onChange,l=i.pinMaxLength,r=i.renderTopContent,m=i.pinEntryLabel,p=i.placeholder,u=i.buttonLabel,c=i.renderBottomContent,s=i.buttonDisabled,d=i.pageConfigs,b=i.disableButtonIfInvalidPin,f=i.onButtonClick,g=e(t.useState(""),2),h=g[0],v=g[1],E=e(t.useState(!1),2),C=E[0],L=E[1],N=h.length>=4&&h.length<=(l||6);n((function(){o&&o(h)}),[h,o]);return t.createElement("label",{htmlFor:"pin-input"},r,t.createElement("p",{className:"pinEntryLabel"},m),t.createElement("div",{className:"pin-wrapper"},t.createElement("div",{className:"pin-input ".concat(C&&!N?null==d?void 0:d.inputFocusAnimation:"")},t.createElement("div",{className:"pin"}),t.createElement("input",{className:"text-input",type:"text",placeholder:p,value:h,pattern:"[0-9]*",inputMode:"numeric",maxLength:l||6,minLength:4,autoComplete:"one-time-code",onChange:function(e){return v(e.target.value)}})),t.createElement(a,{id:"pin-submit-button",type:"submit",className:"btn",disabled:s||b&&!N,onClick:function(e){L((function(e){return!e})),f&&N&&f(e)}},u)),c)};export{i as PinEntryForm};
1
+ import{__read as e}from"tslib";import t,{useEffect as n}from"react";import{B as a}from"./Button-e9c9447e.js";import"classnames";var i=function(i){var o=i.onChange,l=i.pinMaxLength,r=i.renderTopContent,m=i.pinEntryLabel,c=i.placeholder,p=i.buttonLabel,u=i.renderBottomContent,s=i.buttonDisabled,d=i.pageConfigs,b=i.disableButtonIfInvalidPin,f=i.onButtonClick,g=e(t.useState(""),2),h=g[0],v=g[1],E=e(t.useState(!1),2),C=E[0],L=E[1],N=h.length>=4&&h.length<=(l||6);n((function(){o&&o(h)}),[h,o]);return t.createElement("label",{htmlFor:"pin-input"},r,t.createElement("p",{className:"pinEntryLabel"},m),t.createElement("div",{className:"pin-wrapper"},t.createElement("div",{className:"pin-input ".concat(C&&!N?null==d?void 0:d.inputFocusAnimation:"")},t.createElement("div",{className:"pin"}),t.createElement("input",{className:"text-input",type:"text",placeholder:c,value:h,pattern:"[0-9]*",inputMode:"numeric",maxLength:l||6,minLength:4,autoComplete:"one-time-code",onChange:function(e){return v(e.target.value)}})),t.createElement(a,{id:"pin-submit-button",type:"submit",className:"btn",disabled:s||b&&!N,onClick:function(e){L((function(e){return!e})),f&&N&&f(e)}},p)),u)};export{i as PinEntryForm};
2
2
  //# sourceMappingURL=PinEntryForm.js.map