rebill-web-components-sdk 1.8.22 → 1.8.24

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 (131) hide show
  1. package/dist/cjs/apm-checkout_19.cjs.entry.js +11 -5
  2. package/dist/cjs/card-identification.card-iframe.card-skeleton.rebill-input-combo.rebill-installments.entry.cjs.js.map +1 -1
  3. package/dist/cjs/card-identification_5.cjs.entry.js +1 -1
  4. package/dist/cjs/index-C-VTnc0I.js.map +1 -1
  5. package/dist/cjs/otp-component.rebill-modal-overlay.rebill-mode-sandbox.rebill-mode-sandbox-mobile.rebill-summary.success-page.user-information.entry.cjs.js.map +1 -1
  6. package/dist/cjs/otp-component_7.cjs.entry.js +1 -1
  7. package/dist/cjs/rebill-container.rebill-input-checkbox.entry.cjs.js.map +1 -1
  8. package/dist/cjs/rebill-container_2.cjs.entry.js +1 -1
  9. package/dist/cjs/rebill-input-select.cjs.entry.js +1 -1
  10. package/dist/cjs/rebill-input-select.entry.cjs.js.map +1 -1
  11. package/dist/cjs/rebill-input-text.cjs.entry.js +1 -1
  12. package/dist/cjs/rebill-input-text.entry.cjs.js.map +1 -1
  13. package/dist/collection/components/checkout/address/address.js +10 -4
  14. package/dist/collection/components/checkout/address/address.js.map +1 -1
  15. package/dist/collection/components/shared/inputs/input-checkbox/input-checkbox.css +11 -0
  16. package/dist/collection/components/shared/inputs/input-combo/input-combo.css +30 -0
  17. package/dist/collection/components/shared/inputs/input-phone/input-phone.css +39 -1
  18. package/dist/collection/components/shared/inputs/input-select/input-select.css +42 -0
  19. package/dist/collection/components/shared/inputs/input-text/input-text.css +11 -0
  20. package/dist/collection/components/shared/modal-overlay/modal-overlay.css +11 -4
  21. package/dist/components/card-fields-wrapper.js +1 -1
  22. package/dist/components/card-identification.js +1 -1
  23. package/dist/components/discount-coupon.js +1 -1
  24. package/dist/components/{p-Mgbx0b10.js → p--RloWBLk.js} +3 -3
  25. package/dist/components/{p-Mgbx0b10.js.map → p--RloWBLk.js.map} +1 -1
  26. package/dist/components/{p-B8GIr65u.js → p--gCxFWo3.js} +7 -7
  27. package/dist/components/{p-B8GIr65u.js.map → p--gCxFWo3.js.map} +1 -1
  28. package/dist/components/p-8BpuJ_V5.js.map +1 -1
  29. package/dist/components/{p-DVmistTq.js → p-BIHeH7ht.js} +3 -3
  30. package/dist/components/{p-DVmistTq.js.map → p-BIHeH7ht.js.map} +1 -1
  31. package/dist/components/{p-DStRg6vz.js → p-BJHx0OQj.js} +3 -3
  32. package/dist/components/{p-DStRg6vz.js.map → p-BJHx0OQj.js.map} +1 -1
  33. package/dist/components/{p-BgJ9ZORq.js → p-BZj9nSOY.js} +3 -3
  34. package/dist/components/{p-BgJ9ZORq.js.map → p-BZj9nSOY.js.map} +1 -1
  35. package/dist/components/{p-c9SkZ__E.js → p-Bb1L1oJK.js} +3 -3
  36. package/dist/components/{p-c9SkZ__E.js.map → p-Bb1L1oJK.js.map} +1 -1
  37. package/dist/components/{p-zU9a56AF.js → p-BeNxLLvH.js} +3 -3
  38. package/dist/components/{p-zU9a56AF.js.map → p-BeNxLLvH.js.map} +1 -1
  39. package/dist/components/{p-D9Eow84L.js → p-BnUMlZY9.js} +4 -4
  40. package/dist/components/{p-D9Eow84L.js.map → p-BnUMlZY9.js.map} +1 -1
  41. package/dist/components/{p-CWdTbodL.js → p-Bw7Jq0SL.js} +3 -3
  42. package/dist/components/{p-CWdTbodL.js.map → p-Bw7Jq0SL.js.map} +1 -1
  43. package/dist/components/{p-DTjDV-2m.js → p-BxXWkB7L.js} +6 -6
  44. package/dist/components/{p-DTjDV-2m.js.map → p-BxXWkB7L.js.map} +1 -1
  45. package/dist/components/{p-8eukGNL9.js → p-C2gtk16s.js} +3 -3
  46. package/dist/components/{p-8eukGNL9.js.map → p-C2gtk16s.js.map} +1 -1
  47. package/dist/components/{p-D2wX2Bnk.js → p-C4TcKKa8.js} +4 -4
  48. package/dist/components/{p-D2wX2Bnk.js.map → p-C4TcKKa8.js.map} +1 -1
  49. package/dist/components/{p-CHUzEc6D.js → p-C8lHS2ZV.js} +5 -5
  50. package/dist/components/{p-CHUzEc6D.js.map → p-C8lHS2ZV.js.map} +1 -1
  51. package/dist/components/{p-DQIG3sUQ.js → p-CH8Qt-7B.js} +3 -3
  52. package/dist/components/{p-DQIG3sUQ.js.map → p-CH8Qt-7B.js.map} +1 -1
  53. package/dist/components/{p-CN4bVlrI.js → p-CK6dlS5z.js} +5 -5
  54. package/dist/components/{p-CN4bVlrI.js.map → p-CK6dlS5z.js.map} +1 -1
  55. package/dist/components/{p-s8WhwKwq.js → p-CVQ9SnQp.js} +16 -10
  56. package/dist/components/p-CVQ9SnQp.js.map +1 -0
  57. package/dist/components/{p-6aqJA2NI.js → p-CYC_SbCo.js} +3 -3
  58. package/dist/components/{p-6aqJA2NI.js.map → p-CYC_SbCo.js.map} +1 -1
  59. package/dist/components/{p-y5rBN7LS.js → p-Coc_KFqp.js} +4 -4
  60. package/dist/components/{p-y5rBN7LS.js.map → p-Coc_KFqp.js.map} +1 -1
  61. package/dist/components/{p-ti0gvUO5.js → p-CpCPsj5Y.js} +3 -3
  62. package/dist/components/{p-ti0gvUO5.js.map → p-CpCPsj5Y.js.map} +1 -1
  63. package/dist/components/{p-DuW9_9Co.js → p-Cqrdj1mj.js} +3 -3
  64. package/dist/components/{p-DuW9_9Co.js.map → p-Cqrdj1mj.js.map} +1 -1
  65. package/dist/components/{p-B9fIqz0z.js → p-DSnJHRr3.js} +3 -3
  66. package/dist/components/{p-B9fIqz0z.js.map → p-DSnJHRr3.js.map} +1 -1
  67. package/dist/components/{p-BpkqlhjE.js → p-DUxs56Lj.js} +3 -3
  68. package/dist/components/{p-BpkqlhjE.js.map → p-DUxs56Lj.js.map} +1 -1
  69. package/dist/components/{p-DLh7v0Ng.js → p-Dzeq5BdH.js} +5 -5
  70. package/dist/components/{p-DLh7v0Ng.js.map → p-Dzeq5BdH.js.map} +1 -1
  71. package/dist/components/payment-method-selector.js +1 -1
  72. package/dist/components/rebill-address-form.js +1 -1
  73. package/dist/components/rebill-address-search.js +1 -1
  74. package/dist/components/rebill-address.js +1 -1
  75. package/dist/components/rebill-bank-selector.js +1 -1
  76. package/dist/components/rebill-checkout-single-column.js +1 -1
  77. package/dist/components/rebill-checkout.js +21 -21
  78. package/dist/components/rebill-footer.js +1 -1
  79. package/dist/components/rebill-input-checkbox.js +1 -1
  80. package/dist/components/rebill-input-combo.js +1 -1
  81. package/dist/components/rebill-input-phone.js +1 -1
  82. package/dist/components/rebill-input-select.js +1 -1
  83. package/dist/components/rebill-input-text.js +1 -1
  84. package/dist/components/rebill-installments.js +1 -1
  85. package/dist/components/rebill-modal-overlay.js +1 -1
  86. package/dist/components/rebill-processing-payment.js +1 -1
  87. package/dist/components/rebill-renewal.js +17 -17
  88. package/dist/components/rebill-summary.js +1 -1
  89. package/dist/components/renewal-success-page.js +1 -1
  90. package/dist/components/root-component.js +3 -3
  91. package/dist/components/success-page.js +1 -1
  92. package/dist/components/user-information-phone.js +1 -1
  93. package/dist/components/user-information.js +1 -1
  94. package/dist/esm/apm-checkout_19.entry.js +11 -5
  95. package/dist/esm/card-identification.card-iframe.card-skeleton.rebill-input-combo.rebill-installments.entry.js.map +1 -1
  96. package/dist/esm/card-identification_5.entry.js +1 -1
  97. package/dist/esm/index-D8cwEAmw.js.map +1 -1
  98. package/dist/esm/otp-component.rebill-modal-overlay.rebill-mode-sandbox.rebill-mode-sandbox-mobile.rebill-summary.success-page.user-information.entry.js.map +1 -1
  99. package/dist/esm/otp-component_7.entry.js +1 -1
  100. package/dist/esm/rebill-container.rebill-input-checkbox.entry.js.map +1 -1
  101. package/dist/esm/rebill-container_2.entry.js +1 -1
  102. package/dist/esm/rebill-input-select.entry.js +1 -1
  103. package/dist/esm/rebill-input-select.entry.js.map +1 -1
  104. package/dist/esm/rebill-input-text.entry.js +1 -1
  105. package/dist/esm/rebill-input-text.entry.js.map +1 -1
  106. package/dist/rebill-web-components-sdk/card-identification.card-iframe.card-skeleton.rebill-input-combo.rebill-installments.entry.esm.js.map +1 -1
  107. package/dist/rebill-web-components-sdk/otp-component.rebill-modal-overlay.rebill-mode-sandbox.rebill-mode-sandbox-mobile.rebill-summary.success-page.user-information.entry.esm.js.map +1 -1
  108. package/dist/rebill-web-components-sdk/{p-fc6b9d89.entry.js → p-1bbc702a.entry.js} +2 -2
  109. package/dist/rebill-web-components-sdk/{p-fc6b9d89.entry.js.map → p-1bbc702a.entry.js.map} +1 -1
  110. package/dist/rebill-web-components-sdk/p-2354c848.entry.js +2 -0
  111. package/dist/rebill-web-components-sdk/{p-33238246.entry.js.map → p-2354c848.entry.js.map} +1 -1
  112. package/dist/rebill-web-components-sdk/p-61e86126.entry.js +2 -0
  113. package/dist/rebill-web-components-sdk/{p-c7c48b15.entry.js.map → p-61e86126.entry.js.map} +1 -1
  114. package/dist/rebill-web-components-sdk/p-7b33865e.entry.js +2 -0
  115. package/dist/rebill-web-components-sdk/p-7b33865e.entry.js.map +1 -0
  116. package/dist/rebill-web-components-sdk/p-D8cwEAmw.js.map +1 -1
  117. package/dist/rebill-web-components-sdk/p-ca2882ea.entry.js +2 -0
  118. package/dist/rebill-web-components-sdk/{p-a758a555.entry.js.map → p-ca2882ea.entry.js.map} +1 -1
  119. package/dist/rebill-web-components-sdk/{p-d7eaf879.entry.js → p-f3afcd86.entry.js} +2 -2
  120. package/dist/rebill-web-components-sdk/{p-d7eaf879.entry.js.map → p-f3afcd86.entry.js.map} +1 -1
  121. package/dist/rebill-web-components-sdk/rebill-container.rebill-input-checkbox.entry.esm.js.map +1 -1
  122. package/dist/rebill-web-components-sdk/rebill-input-select.entry.esm.js.map +1 -1
  123. package/dist/rebill-web-components-sdk/rebill-input-text.entry.esm.js.map +1 -1
  124. package/dist/rebill-web-components-sdk/rebill-web-components-sdk.esm.js +1 -1
  125. package/package.json +1 -1
  126. package/dist/components/p-s8WhwKwq.js.map +0 -1
  127. package/dist/rebill-web-components-sdk/p-33238246.entry.js +0 -2
  128. package/dist/rebill-web-components-sdk/p-6bcff3c5.entry.js +0 -2
  129. package/dist/rebill-web-components-sdk/p-6bcff3c5.entry.js.map +0 -1
  130. package/dist/rebill-web-components-sdk/p-a758a555.entry.js +0 -2
  131. package/dist/rebill-web-components-sdk/p-c7c48b15.entry.js +0 -2
@@ -1 +1 @@
1
- {"version":3,"file":"otp-component.rebill-modal-overlay.rebill-mode-sandbox.rebill-mode-sandbox-mobile.rebill-summary.success-page.user-information.entry.cjs.js","sources":["node_modules/.pnpm/number-flow@0.5.8/node_modules/number-flow/dist/lite-BTIaQdTe.mjs","node_modules/.pnpm/number-flow@0.5.8/node_modules/number-flow/dist/index.mjs","src/components/checkout/summary/summary.css?tag=rebill-summary","src/components/checkout/summary/summary.tsx","src/components/shared/mode-sandbox/mode-sandbox.css?tag=rebill-mode-sandbox","src/components/shared/mode-sandbox/mode-sandbox.tsx","src/components/checkout/otp/otp.css?tag=otp-component","src/components/checkout/otp/otp.tsx","src/components/shared/modal-overlay/modal-overlay.css?tag=rebill-modal-overlay","src/components/shared/modal-overlay/modal-overlay.tsx","src/components/shared/mode-sandbox/mode-sandbox-mobile.css?tag=rebill-mode-sandbox-mobile","src/components/shared/mode-sandbox/mode-sandbox-mobile.tsx","src/components/checkout/card-success-page/success-page.css?tag=success-page","src/components/checkout/card-success-page/success-page.tsx","src/components/checkout/user-information/user-information.css?tag=user-information","src/components/checkout/user-information/user-information.tsx"],"sourcesContent":["import { BROWSER as _ } from \"esm-env\";\nimport \"./plugins.mjs\";\nconst u = (n, t, e) => {\n const i = document.createElement(n), [s, a] = Array.isArray(t) ? [void 0, t] : [t, e];\n return s && Object.assign(i, s), a == null || a.forEach((r) => i.appendChild(r)), i;\n}, F = (n, t) => {\n var e;\n return t === \"left\" ? n.offsetLeft : (((e = n.offsetParent instanceof HTMLElement ? n.offsetParent : null) == null ? void 0 : e.offsetWidth) ?? 0) - n.offsetWidth - n.offsetLeft;\n}, H = (n) => n.offsetWidth > 0 && n.offsetHeight > 0, st = (n, t) => {\n _ && !customElements.get(n) && customElements.define(n, t);\n};\nfunction X(n, t, { reverse: e = !1 } = {}) {\n const i = n.length;\n for (let s = e ? i - 1 : 0; e ? s >= 0 : s < i; e ? s-- : s++)\n t(n[s], s);\n}\nfunction nt(n, t, e, i) {\n const s = t.formatToParts(n);\n e && s.unshift({ type: \"prefix\", value: e }), i && s.push({ type: \"suffix\", value: i });\n const a = [], r = [], o = [], c = [], d = {}, p = (h) => `${h}:${d[h] = (d[h] ?? -1) + 1}`;\n let x = \"\", g = !1, y = !1;\n for (const h of s) {\n x += h.value;\n const l = h.type === \"minusSign\" || h.type === \"plusSign\" ? \"sign\" : h.type;\n l === \"integer\" ? (g = !0, r.push(...h.value.split(\"\").map((C) => ({ type: l, value: parseInt(C) })))) : l === \"group\" ? r.push({ type: l, value: h.value }) : l === \"decimal\" ? (y = !0, o.push({ type: l, value: h.value, key: p(l) })) : l === \"fraction\" ? o.push(...h.value.split(\"\").map((C) => ({\n type: l,\n value: parseInt(C),\n key: p(l),\n pos: -1 - d[l]\n }))) : (g || y ? c : a).push({\n type: l,\n value: h.value,\n key: p(l)\n });\n }\n const T = [];\n for (let h = r.length - 1; h >= 0; h--) {\n const l = r[h];\n T.unshift(l.type === \"integer\" ? {\n ...l,\n key: p(l.type),\n pos: d[l.type]\n } : {\n ...l,\n key: p(l.type)\n });\n }\n return {\n pre: a,\n integer: T,\n fraction: o,\n post: c,\n valueAsString: x,\n value: typeof n == \"string\" ? parseFloat(n) : n\n };\n}\nconst I = String.raw, V = String.raw, O = _ && (() => {\n try {\n document.createElement(\"div\").animate({ opacity: 0 }, { easing: \"linear(0, 1)\" });\n } catch {\n return !1;\n }\n return !0;\n})(), z = _ && typeof CSS < \"u\" && CSS.supports && CSS.supports(\"line-height\", \"mod(1,1)\"), A = _ && typeof matchMedia < \"u\" ? matchMedia(\"(prefers-reduced-motion: reduce)\") : null, $ = \"--_number-flow-d-opacity\", U = \"--_number-flow-d-width\", S = \"--_number-flow-dx\", j = \"--_number-flow-d\", Y = (() => {\n try {\n return CSS.registerProperty({\n name: $,\n syntax: \"<number>\",\n inherits: !1,\n initialValue: \"0\"\n }), CSS.registerProperty({\n name: S,\n syntax: \"<length>\",\n inherits: !0,\n initialValue: \"0px\"\n }), CSS.registerProperty({\n name: U,\n syntax: \"<number>\",\n inherits: !1,\n initialValue: \"0\"\n }), CSS.registerProperty({\n name: j,\n syntax: \"<number>\",\n inherits: !0,\n initialValue: \"0\"\n }), !0;\n } catch {\n return !1;\n }\n})(), P = \"var(--number-flow-char-height, 1em)\", f = \"var(--number-flow-mask-height, 0.25em)\", k = `calc(${f} / 2)`, E = \"var(--number-flow-mask-width, 0.5em)\", m = `calc(${E} / var(--scale-x))`, w = \"#000 0, transparent 71%\", M = V`:host{display:inline-block;direction:ltr;white-space:nowrap;isolation:isolate;line-height:${P} !important}.number,.number__inner{display:inline-block;transform-origin:left top}:host([data-will-change]) :is(.number,.number__inner,.section,.digit,.digit__num,.symbol){will-change:transform}.number{--scale-x:calc(1 + var(${U}) / var(--width));transform:translateX(var(${S})) scaleX(var(--scale-x));margin:0 calc(-1 * ${E});position:relative;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 ${m},#000 calc(100% - ${m}),transparent ),linear-gradient(to bottom,transparent 0,#000 ${f},#000 calc(100% - ${f}),transparent 100% ),radial-gradient(at bottom right,${w}),radial-gradient(at bottom left,${w}),radial-gradient(at top left,${w}),radial-gradient(at top right,${w});-webkit-mask-size:100% calc(100% - ${f} * 2),calc(100% - ${m} * 2) 100%,${m} ${f},${m} ${f},${m} ${f},${m} ${f};-webkit-mask-position:center,center,top left,top right,bottom right,bottom left;-webkit-mask-repeat:no-repeat}.number__inner{padding:${k} ${E};transform:scaleX(calc(1 / var(--scale-x))) translateX(calc(-1 * var(${S})))}:host > :not(.number){z-index:5}.section,.symbol{display:inline-block;position:relative;isolation:isolate}.section::after{content:'\\200b';display:inline-block}.section--justify-left{transform-origin:center left}.section--justify-right{transform-origin:center right}.section > [inert],.symbol > [inert]{margin:0 !important;position:absolute !important;z-index:-1}.digit{display:inline-block;position:relative;--c:var(--current) + var(${j})}.digit__num,.number .section::after{padding:${k} 0}.digit__num{display:inline-block;--offset-raw:mod(var(--length) + var(--n) - mod(var(--c),var(--length)),var(--length));--offset:calc( var(--offset-raw) - var(--length) * round(down,var(--offset-raw) / (var(--length) / 2),1) );--y:clamp(-100%,var(--offset) * 100%,100%);transform:translateY(var(--y))}.digit__num[inert]{position:absolute;top:0;left:50%;transform:translateX(-50%) translateY(var(--y))}.digit:not(.is-spinning) .digit__num[inert]{display:none}.symbol__value{display:inline-block;mix-blend-mode:plus-lighter;white-space:pre}.section--justify-left .symbol > [inert]{left:0}.section--justify-right .symbol > [inert]{right:0}.animate-presence{opacity:calc(1 + var(${$}))}`, G = _ ? HTMLElement : class {\n}, K = V`:host{display:inline-block;direction:ltr;white-space:nowrap;line-height:${P} !important}span{display:inline-block}:host([data-will-change]) span{will-change:transform}.number,.digit{padding:${k} 0}.symbol{white-space:pre}`, Z = (n) => `<span class=\"${n.type === \"integer\" || n.type === \"fraction\" ? \"digit\" : \"symbol\"}\" part=\"${n.type === \"integer\" || n.type === \"fraction\" ? `digit ${n.type}-digit` : `symbol ${n.type}`}\">${n.value}</span>`, v = (n, t) => `<span part=\"${t}\">${n.reduce((e, i) => e + Z(i), \"\")}</span>`, at = (n) => (\n // shadowroot=\"open\" non-standard attribute for old Chrome:\n I`<template shadowroot=\"open\" shadowrootmode=\"open\"\n\t\t\t><style>\n\t\t\t\t${K}</style\n\t\t\t><span role=\"img\" aria-label=\"${n.valueAsString}\"\n\t\t\t\t>${v(n.pre, \"left\")}<span part=\"number\" class=\"number\"\n\t\t\t\t\t>${v(n.integer, \"integer\")}${v(n.fraction, \"fraction\")}</span\n\t\t\t\t>${v(n.post, \"right\")}</span\n\t\t\t></template\n\t\t><span\n\t\t\tstyle=\"font-kerning: none; display: inline-block; line-height: ${P} !important; padding: ${f} 0;\"\n\t\t\t>${n.valueAsString}</span\n\t\t>`\n), q = z && O && Y;\nlet b;\nclass J extends G {\n constructor() {\n super(), this.created = !1, this.batched = !1;\n const { animated: t, ...e } = this.constructor.defaultProps;\n this._animated = this.computedAnimated = t, Object.assign(this, e);\n }\n get animated() {\n return this._animated;\n }\n set animated(t) {\n var e;\n this.animated !== t && (this._animated = t, (e = this.shadowRoot) == null || e.getAnimations().forEach((i) => i.finish()));\n }\n /**\n * @internal\n */\n set data(t) {\n var o;\n if (t == null)\n return;\n const { pre: e, integer: i, fraction: s, post: a, value: r } = t;\n if (this.created) {\n const c = this._data;\n this._data = t, this.computedTrend = typeof this.trend == \"function\" ? this.trend(c.value, r) : this.trend, this.computedAnimated = q && this._animated && (!this.respectMotionPreference || !(A != null && A.matches)) && // https://github.com/barvian/number-flow/issues/9\n H(this), (o = this.plugins) == null || o.forEach((d) => {\n var p;\n return (p = d.onUpdate) == null ? void 0 : p.call(d, t, c, this);\n }), this.batched || this.willUpdate(), this._pre.update(e), this._num.update({ integer: i, fraction: s }), this._post.update(a), this.batched || this.didUpdate();\n } else {\n this._data = t, this.attachShadow({ mode: \"open\" });\n try {\n this._internals ?? (this._internals = this.attachInternals()), this._internals.role = \"img\";\n } catch {\n }\n if (typeof CSSStyleSheet < \"u\" && this.shadowRoot.adoptedStyleSheets)\n b || (b = new CSSStyleSheet(), b.replaceSync(M)), this.shadowRoot.adoptedStyleSheets = [b];\n else {\n const c = document.createElement(\"style\");\n c.textContent = M, this.shadowRoot.appendChild(c);\n }\n this._pre = new N(this, e, {\n justify: \"right\",\n part: \"left\"\n }), this.shadowRoot.appendChild(this._pre.el), this._num = new Q(this, i, s), this.shadowRoot.appendChild(this._num.el), this._post = new N(this, a, {\n justify: \"left\",\n part: \"right\"\n }), this.shadowRoot.appendChild(this._post.el), this.created = !0;\n }\n try {\n this._internals.ariaLabel = t.valueAsString;\n } catch {\n }\n }\n /**\n * @internal\n */\n willUpdate() {\n this._pre.willUpdate(), this._num.willUpdate(), this._post.willUpdate();\n }\n /**\n * @internal\n */\n didUpdate() {\n if (!this.computedAnimated)\n return;\n this._abortAnimationsFinish ? this._abortAnimationsFinish.abort() : this.dispatchEvent(new Event(\"animationsstart\")), this._pre.didUpdate(), this._num.didUpdate(), this._post.didUpdate();\n const t = new AbortController();\n Promise.all(this.shadowRoot.getAnimations().map((e) => e.finished)).then(() => {\n t.signal.aborted || (this.dispatchEvent(new Event(\"animationsfinish\")), this._abortAnimationsFinish = void 0);\n }), this._abortAnimationsFinish = t;\n }\n}\nJ.defaultProps = {\n transformTiming: {\n duration: 900,\n // Make sure to keep this minified:\n easing: \"linear(0,.005,.019,.039,.066,.096,.129,.165,.202,.24,.278,.316,.354,.39,.426,.461,.494,.526,.557,.586,.614,.64,.665,.689,.711,.731,.751,.769,.786,.802,.817,.831,.844,.856,.867,.877,.887,.896,.904,.912,.919,.925,.931,.937,.942,.947,.951,.955,.959,.962,.965,.968,.971,.973,.976,.978,.98,.981,.983,.984,.986,.987,.988,.989,.99,.991,.992,.992,.993,.994,.994,.995,.995,.996,.996,.9963,.9967,.9969,.9972,.9975,.9977,.9979,.9981,.9982,.9984,.9985,.9987,.9988,.9989,1)\"\n },\n spinTiming: void 0,\n opacityTiming: { duration: 450, easing: \"ease-out\" },\n animated: !0,\n trend: (n, t) => Math.sign(t - n),\n respectMotionPreference: !0,\n plugins: void 0,\n digits: void 0\n};\nclass Q {\n constructor(t, e, i, { className: s, ...a } = {}) {\n this.flow = t, this._integer = new L(t, e, {\n justify: \"right\",\n part: \"integer\"\n }), this._fraction = new L(t, i, {\n justify: \"left\",\n part: \"fraction\"\n }), this._inner = u(\"span\", {\n className: \"number__inner\"\n }, [this._integer.el, this._fraction.el]), this.el = u(\"span\", {\n ...a,\n part: \"number\",\n className: `number ${s ?? \"\"}`\n }, [this._inner]);\n }\n willUpdate() {\n this._prevWidth = this.el.offsetWidth, this._prevLeft = this.el.getBoundingClientRect().left, this._integer.willUpdate(), this._fraction.willUpdate();\n }\n update({ integer: t, fraction: e }) {\n this._integer.update(t), this._fraction.update(e);\n }\n didUpdate() {\n const t = this.el.getBoundingClientRect();\n this._integer.didUpdate(), this._fraction.didUpdate();\n const e = this._prevLeft - t.left, i = this.el.offsetWidth, s = this._prevWidth - i;\n this.el.style.setProperty(\"--width\", String(i)), this.el.animate({\n [S]: [`${e}px`, \"0px\"],\n [U]: [s, 0]\n }, {\n ...this.flow.transformTiming,\n composite: \"accumulate\"\n });\n }\n}\nclass W {\n constructor(t, e, { justify: i, className: s, ...a }, r) {\n this.flow = t, this.children = /* @__PURE__ */ new Map(), this.onCharRemove = (c) => () => {\n this.children.delete(c);\n }, this.justify = i;\n const o = e.map((c) => this.addChar(c).el);\n this.el = u(\"span\", {\n ...a,\n className: `section section--justify-${i} ${s ?? \"\"}`\n }, r ? r(o) : o);\n }\n addChar(t, { startDigitsAtZero: e = !1, ...i } = {}) {\n const s = t.type === \"integer\" || t.type === \"fraction\" ? new D(this, t.type, e ? 0 : t.value, t.pos, {\n ...i,\n onRemove: this.onCharRemove(t.key)\n }) : new tt(this, t.type, t.value, {\n ...i,\n onRemove: this.onCharRemove(t.key)\n });\n return this.children.set(t.key, s), s;\n }\n unpop(t) {\n t.el.removeAttribute(\"inert\"), t.el.style.top = \"\", t.el.style[this.justify] = \"\";\n }\n pop(t) {\n t.forEach((e) => {\n e.el.style.top = `${e.el.offsetTop}px`, e.el.style[this.justify] = `${F(e.el, this.justify)}px`;\n }), t.forEach((e) => {\n e.el.setAttribute(\"inert\", \"\"), e.present = !1;\n });\n }\n addNewAndUpdateExisting(t) {\n const e = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map(), s = this.justify === \"left\", a = s ? \"prepend\" : \"append\";\n if (X(t, (r) => {\n let o;\n this.children.has(r.key) ? (o = this.children.get(r.key), i.set(r, o), this.unpop(o), o.present = !0) : (o = this.addChar(r, { startDigitsAtZero: !0, animateIn: !0 }), e.set(r, o)), this.el[a](o.el);\n }, { reverse: s }), this.flow.computedAnimated) {\n const r = this.el.getBoundingClientRect();\n e.forEach((o) => {\n o.willUpdate(r);\n });\n }\n e.forEach((r, o) => {\n r.update(o.value);\n }), i.forEach((r, o) => {\n r.update(o.value);\n });\n }\n willUpdate() {\n const t = this.el.getBoundingClientRect();\n this._prevOffset = t[this.justify], this.children.forEach((e) => e.willUpdate(t));\n }\n didUpdate() {\n const t = this.el.getBoundingClientRect();\n this.children.forEach((s) => s.didUpdate(t));\n const e = t[this.justify], i = this._prevOffset - e;\n i && this.children.size && this.el.animate({\n transform: [`translateX(${i}px)`, \"none\"]\n }, {\n ...this.flow.transformTiming,\n composite: \"accumulate\"\n });\n }\n}\nclass L extends W {\n update(t) {\n const e = /* @__PURE__ */ new Map();\n this.children.forEach((i, s) => {\n t.find((a) => a.key === s) || e.set(s, i), this.unpop(i);\n }), this.addNewAndUpdateExisting(t), e.forEach((i) => {\n i instanceof D && i.update(0);\n }), this.pop(e);\n }\n}\nclass N extends W {\n update(t) {\n const e = /* @__PURE__ */ new Map();\n this.children.forEach((i, s) => {\n t.find((a) => a.key === s) || e.set(s, i);\n }), this.pop(e), this.addNewAndUpdateExisting(t);\n }\n}\nclass R {\n constructor(t, e, { onRemove: i, animateIn: s = !1 } = {}) {\n this.flow = t, this.el = e, this._present = !0, this._remove = () => {\n var a;\n this.el.remove(), (a = this._onRemove) == null || a.call(this);\n }, this.el.classList.add(\"animate-presence\"), this.flow.computedAnimated && s && this.el.animate({\n [$]: [-0.9999, 0]\n }, {\n ...this.flow.opacityTiming,\n composite: \"accumulate\"\n }), this._onRemove = i;\n }\n get present() {\n return this._present;\n }\n set present(t) {\n if (this._present !== t) {\n if (this._present = t, t ? this.el.removeAttribute(\"inert\") : this.el.setAttribute(\"inert\", \"\"), !this.flow.computedAnimated) {\n t || this._remove();\n return;\n }\n this.el.style.setProperty(\"--_number-flow-d-opacity\", t ? \"0\" : \"-.999\"), this.el.animate({\n [$]: t ? [-0.9999, 0] : [0.999, 0]\n }, {\n ...this.flow.opacityTiming,\n composite: \"accumulate\"\n }), t ? this.flow.removeEventListener(\"animationsfinish\", this._remove) : this.flow.addEventListener(\"animationsfinish\", this._remove, {\n once: !0\n });\n }\n }\n}\nclass B extends R {\n constructor(t, e, i, s) {\n super(t.flow, i, s), this.section = t, this.value = e, this.el = i;\n }\n}\nclass D extends B {\n constructor(t, e, i, s, a) {\n var d, p;\n const r = (((p = (d = t.flow.digits) == null ? void 0 : d[s]) == null ? void 0 : p.max) ?? 9) + 1, o = Array.from({ length: r }).map((x, g) => {\n const y = u(\"span\", { className: \"digit__num\" }, [\n document.createTextNode(String(g))\n ]);\n return g !== i && y.setAttribute(\"inert\", \"\"), y.style.setProperty(\"--n\", String(g)), y;\n }), c = u(\"span\", {\n part: `digit ${e}-digit`,\n className: \"digit\"\n }, o);\n c.style.setProperty(\"--current\", String(i)), c.style.setProperty(\"--length\", String(r)), super(t, i, c, a), this.pos = s, this._onAnimationsFinish = () => {\n this.el.classList.remove(\"is-spinning\");\n }, this._numbers = o, this.length = r;\n }\n willUpdate(t) {\n const e = this.el.getBoundingClientRect();\n this._prevValue = this.value;\n const i = e[this.section.justify] - t[this.section.justify], s = e.width / 2;\n this._prevCenter = this.section.justify === \"left\" ? i + s : i - s;\n }\n update(t) {\n this.el.style.setProperty(\"--current\", String(t)), this._numbers.forEach((e, i) => i === t ? e.removeAttribute(\"inert\") : e.setAttribute(\"inert\", \"\")), this.value = t;\n }\n didUpdate(t) {\n const e = this.el.getBoundingClientRect(), i = e[this.section.justify] - t[this.section.justify], s = e.width / 2, a = this.section.justify === \"left\" ? i + s : i - s, r = this._prevCenter - a;\n r && this.el.animate({\n transform: [`translateX(${r}px)`, \"none\"]\n }, {\n ...this.flow.transformTiming,\n composite: \"accumulate\"\n });\n const o = this.getDelta();\n o && (this.el.classList.add(\"is-spinning\"), this.el.animate({\n [j]: [-o, 0]\n }, {\n ...this.flow.spinTiming ?? this.flow.transformTiming,\n composite: \"accumulate\"\n }), this.flow.addEventListener(\"animationsfinish\", this._onAnimationsFinish, { once: !0 }));\n }\n getDelta() {\n var i;\n if (this.flow.plugins)\n for (const s of this.flow.plugins) {\n const a = (i = s.getDelta) == null ? void 0 : i.call(s, this.value, this._prevValue, this);\n if (a != null)\n return a;\n }\n const t = this.value - this._prevValue, e = this.flow.computedTrend || Math.sign(t);\n return e < 0 && this.value > this._prevValue ? this.value - this.length - this._prevValue : e > 0 && this.value < this._prevValue ? this.length - this._prevValue + this.value : t;\n }\n}\nclass tt extends B {\n constructor(t, e, i, s) {\n const a = u(\"span\", {\n className: \"symbol__value\",\n textContent: i\n });\n super(t, i, u(\"span\", {\n part: `symbol ${e}`,\n className: \"symbol\"\n }, [a]), s), this.type = e, this._children = /* @__PURE__ */ new Map(), this._onChildRemove = (r) => () => {\n this._children.delete(r);\n }, this._children.set(i, new R(this.flow, a, {\n onRemove: this._onChildRemove(i)\n }));\n }\n willUpdate(t) {\n if (this.type === \"decimal\")\n return;\n const e = this.el.getBoundingClientRect();\n this._prevOffset = e[this.section.justify] - t[this.section.justify];\n }\n update(t) {\n if (this.value !== t) {\n const e = this._children.get(this.value);\n e && (e.present = !1);\n const i = this._children.get(t);\n if (i)\n i.present = !0;\n else {\n const s = u(\"span\", {\n className: \"symbol__value\",\n textContent: t\n });\n this.el.appendChild(s), this._children.set(t, new R(this.flow, s, {\n animateIn: !0,\n onRemove: this._onChildRemove(t)\n }));\n }\n }\n this.value = t;\n }\n didUpdate(t) {\n if (this.type === \"decimal\")\n return;\n const i = this.el.getBoundingClientRect()[this.section.justify] - t[this.section.justify], s = this._prevOffset - i;\n s && this.el.animate({\n transform: [`translateX(${s}px)`, \"none\"]\n }, { ...this.flow.transformTiming, composite: \"accumulate\" });\n }\n}\nexport {\n D,\n J as N,\n G as S,\n q as c,\n st as d,\n nt as f,\n A as p,\n at as r\n};\n","import { d as i, N as u, f as r, r as c } from \"./lite-BTIaQdTe.mjs\";\nimport { D as _, c as v, p as E } from \"./lite-BTIaQdTe.mjs\";\nimport { continuous as N } from \"./plugins.mjs\";\nconst l = \"number-flow-connect\", m = \"number-flow-update\", d = (t, { locales: e, format: s, numberPrefix: n, numberSuffix: a } = {}) => {\n const o = r(t, new Intl.NumberFormat(e, s), n, a);\n return c(o);\n};\nclass f extends u {\n constructor() {\n super(...arguments), this.connected = !1;\n }\n connectedCallback() {\n this.connected = !0, this.dispatchEvent(new Event(l, { bubbles: !0 }));\n }\n disconnectedCallback() {\n this.connected = !1;\n }\n get value() {\n return this._value;\n }\n update(e) {\n (!this._formatter || this._prevFormat !== this.format || this._prevLocales !== this.locales) && (this._formatter = new Intl.NumberFormat(this.locales, this.format), this._prevFormat = this.format, this._prevLocales = this.locales), e != null && (this._value = e), this.dispatchEvent(new Event(m, { bubbles: !0 })), this.data = r(this._value, this._formatter, this.numberPrefix, this.numberSuffix);\n }\n}\ni(\"number-flow\", f);\nexport {\n l as CONNECT_EVENT,\n _ as Digit,\n m as UPDATE_EVENT,\n v as canAnimate,\n N as continuous,\n f as default,\n i as define,\n r as formatToData,\n E as prefersReducedMotion,\n d as renderInnerHTML\n};\n",".summary-container {\n width: 100%;\n margin: 0 auto;\n display: flex;\n flex-direction: column;\n gap: 40px;\n background-color: var(--rebill-color-background-right);\n}\n.summary-header {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 10px;\n}\n\n.trial-pill {\n background-color: var(--rebill-color-green-light-2);\n border-radius: 4px;\n padding: 4px 6px 4px 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.total-amount-container {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 10px;\n}\n\n@media (max-width: 1024px) {\n .summary-container {\n gap: 1.5rem !important;\n background-color: var(--rebill-color-background);\n }\n .summary-header {\n margin-top: 24px;\n }\n .summary-row.total {\n margin-top: 0 !important;\n }\n}\n\n.summary-card {\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 24px;\n padding: 0px;\n background: #ffffff;\n}\n\n.summary-card-info {\n flex: 1;\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n.summary-card-amount {\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.summary-details {\n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n.summary-row {\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 16px;\n & > :nth-child(2) {\n text-align: right;\n }\n}\n\n.summary-row.total {\n margin-top: 1rem;\n font-weight: bold;\n}\n\n@media (min-width: 1025px) and (max-width: 1450px) {\n .summary-container {\n margin: 0px 10px;\n max-width: 400px;\n }\n}\n","import { Component, h, Listen, Prop, State } from '@stencil/core';\nimport 'number-flow';\nimport { I18nService } from '../../../i18n/i18n.service';\nimport {\n PLAN_FREQUENCY_ENUM,\n SESSION_DISCOUNT_TYPE_ENUM,\n SESSION_ITEM_TYPE_ENUM,\n} from '../../../models';\nimport { sessionState } from '../../../store/session.store';\nimport { BREAKPOINT_ENUM, isBreakpointBelow } from '../../../utils/breakpoint';\nimport { COLORS_ENUM } from '../../../utils/color-class-mapper';\nimport { formatAmount } from '../../../utils/currency-formatter';\nimport { getInstallmentDescription } from '../../../utils/installment-utils';\n\n@Component({\n tag: 'rebill-summary',\n styleUrl: 'summary.css',\n shadow: false,\n})\nexport class Summary {\n /** Monto total */\n @Prop() totalAmount!: number | string;\n /** Título del item */\n @Prop() itemTitle!: string;\n /** Descripción del item */\n @Prop() itemDescription!: string;\n /** Monto del item */\n @Prop() itemAmount!: number | string;\n /** Frecuencia del plan */\n @Prop() planFrequency?: PLAN_FREQUENCY_ENUM;\n /** Cantidad de frecuencia del plan */\n @Prop() planFrequencyCount?: number;\n /** Subtotal */\n @Prop() subtotal!: number | string;\n /** Descuento (opcional) */\n @Prop() discount?: number | string;\n @Prop() currency: string;\n @Prop() displayedComponents: (\n | 'totalAmount'\n | 'discount'\n | 'itemDetails'\n | 'priceDetails'\n | 'timelineFreeTrial'\n | 'timelineDebitDay'\n )[] = [\n 'totalAmount',\n 'discount',\n 'itemDetails',\n 'priceDetails',\n 'timelineFreeTrial',\n 'timelineDebitDay',\n ];\n @Prop() allowCoupon: boolean = false;\n @Prop() currentBreakpoint: BREAKPOINT_ENUM = BREAKPOINT_ENUM.DESKTOP;\n @State() discountApplied: boolean = false;\n private totalFlow?: HTMLElement & { update: (value: number) => void; format?: any };\n @Prop() discountType: SESSION_DISCOUNT_TYPE_ENUM;\n @Prop() discountedPercentage: number = 0;\n @Prop() discountDuration: number = 0;\n @Prop() discountAmount: number = 0;\n\n private getDurationTranslation(duration: number): string {\n const frequency = this.planFrequency || PLAN_FREQUENCY_ENUM.MONTH;\n\n if (duration === 1) {\n return I18nService.translate(`summary.${frequency}_one`);\n } else {\n return I18nService.translate(`summary.${frequency}_other`, { count: duration });\n }\n }\n componentDidLoad() {\n this.updateTotalFlow();\n // this.initializeDiscountState();\n }\n\n componentDidUpdate() {\n this.updateTotalFlow();\n }\n\n private updateTotalFlow() {\n if (this.totalFlow) {\n this.totalFlow.format = { style: 'currency', currency: this.currency };\n this.totalFlow.update(Number(sessionState.data.pricing.total));\n }\n }\n @Listen('discountApplied')\n handleDiscountApplied(event: CustomEvent) {\n this.discountApplied = event.detail;\n }\n\n private getRecalculatedInstallmentAmount(): number {\n const selectedInstallment =\n sessionState.data?.cardInformation?.installments?.selectedInstallment;\n if (!selectedInstallment) {\n return 0;\n }\n\n if (sessionState.data.pricing.discountAmount > 0) {\n const originalTotal = sessionState.data.pricing.subtotal;\n const currentTotal = sessionState.data.pricing.totalWithoutInstallment;\n const discountRatio = currentTotal / originalTotal;\n\n return Math.round(selectedInstallment.installmentAmount * discountRatio * 100) / 100;\n }\n\n return selectedInstallment.installmentAmount;\n }\n\n private renderTotalForPlan() {\n return (\n sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n sessionState.data?.itemInformation?.debitStrategy && (\n <div class=\"summary-row total\">\n <rebill-typography\n variant={\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'subtitle1'\n : 'body3'\n }\n style={{\n fontWeight: isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'normal'\n : 'bold',\n }}\n >\n {I18nService.translate('summary.totalAmountToday')}\n </rebill-typography>\n <rebill-typography\n variant={\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'subtitle1'\n : 'body3'\n }\n style={{\n fontWeight: isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'normal'\n : 'bold',\n }}\n >\n {formatAmount(sessionState.data.pricing.total, this.currency)}\n </rebill-typography>\n </div>\n )\n );\n }\n\n private renderTotalForPlanGeneral() {\n return (\n sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n !sessionState.data?.itemInformation?.trial?.trialPeriodDays &&\n !sessionState.data?.itemInformation?.debitStrategy && (\n <div class=\"summary-row total\">\n <rebill-typography\n variant={\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'subtitle1'\n : 'body3'\n }\n style={{\n fontWeight: isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'normal'\n : 'bold',\n }}\n >\n {I18nService.translate('summary.totalAmount')}\n </rebill-typography>\n <rebill-typography\n variant={\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'subtitle1'\n : 'body3'\n }\n style={{\n fontWeight: isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'normal'\n : 'bold',\n }}\n >\n {formatAmount(sessionState.data?.pricing?.total, this.currency)}\n </rebill-typography>\n </div>\n )\n );\n }\n\n private renderTotalForNonPlan() {\n return (\n sessionState.data?.itemInformation?.type !== SESSION_ITEM_TYPE_ENUM.PLAN && (\n <div class=\"summary-row total\">\n <rebill-typography\n variant={\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'subtitle1'\n : 'body3'\n }\n style={{\n fontWeight: isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'normal'\n : 'bold',\n }}\n >\n {I18nService.translate('summary.totalAmount')}\n </rebill-typography>\n <rebill-typography\n variant={\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'subtitle1'\n : 'body3'\n }\n style={{\n fontWeight: isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'normal'\n : 'bold',\n }}\n >\n {formatAmount(sessionState.data.pricing.total, this.currency)}\n </rebill-typography>\n </div>\n )\n );\n }\n\n private renderTrialPeriod() {\n return (\n sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n sessionState.data?.itemInformation?.trial?.trialPeriodDays && (\n <div class=\"summary-row\">\n <rebill-typography variant=\"body2\">\n {I18nService.translate('summary.totalAmountLastTrialPeriod')}\n </rebill-typography>\n <rebill-typography variant=\"body2\">\n {formatAmount(sessionState.data?.pricing?.total, this.currency)}\n {`/${I18nService.translate(`summary.${this.planFrequency}`, {\n count: this.planFrequencyCount || 1,\n })} `}\n </rebill-typography>\n </div>\n )\n );\n }\n\n private renderDiscountAlertWrapper() {\n return (\n sessionState.data?.itemInformation?.trial?.trialPeriodDays && (\n <div class=\"summary-row\">\n <rebill-typography\n variant={\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'subtitle1'\n : 'body3'\n }\n style={{\n fontWeight: isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'normal'\n : 'bold',\n }}\n >\n {I18nService.translate('summary.trialPeriodDaysDetails', {\n trialDays: sessionState.data?.itemInformation?.trial?.trialPeriodDays,\n count: sessionState.data?.itemInformation?.trial?.trialPeriodDays,\n })}\n </rebill-typography>\n <rebill-typography\n variant={\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'subtitle1'\n : 'body3'\n }\n style={{\n fontWeight: isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'normal'\n : 'bold',\n }}\n >\n {I18nService.translate('summary.free')}\n </rebill-typography>\n </div>\n )\n );\n }\n\n render() {\n const renderItemDetails = (\n title: boolean = true,\n description: boolean = true,\n amount: boolean = true,\n ) => (\n <div class=\"summary-card\">\n {(title || description) && (\n <div class=\"summary-card-info\">\n {title && (\n <rebill-typography variant=\"subtitle-bold\" gutterBottom>\n {this.itemTitle}\n </rebill-typography>\n )}\n {description && this.itemDescription && (\n <rebill-typography variant=\"body2\">{this.itemDescription}</rebill-typography>\n )}\n </div>\n )}\n {amount && (\n <div class=\"summary-card-amount\">\n <rebill-typography variant=\"body2\">\n {sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n sessionState.data?.itemInformation?.debitStrategy\n ? formatAmount(sessionState.data?.pricing?.planAmount, this.currency)\n : formatAmount(this.subtotal, this.currency)}\n </rebill-typography>\n </div>\n )}\n </div>\n );\n const renderPriceDetails = () => {\n const detailsBlocks = [\n this.renderTotalForPlan(),\n this.renderTotalForPlanGeneral(),\n this.renderTotalForNonPlan(),\n this.renderTrialPeriod(),\n this.renderDiscountAlertWrapper(),\n ].filter(Boolean);\n\n if (detailsBlocks.length > 1) {\n detailsBlocks.splice(detailsBlocks.length - 1, 0, <rebill-divider />);\n }\n\n return (\n <div class=\"summary-details\">\n {/* Subtotal se queda inline */}\n <div class=\"summary-row\">\n <rebill-typography variant=\"body2\">\n {I18nService.translate('summary.subtotal')}\n </rebill-typography>\n <rebill-typography variant=\"body2\">\n {sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n sessionState.data?.itemInformation?.debitStrategy\n ? formatAmount(sessionState.data.pricing.planAmount, this.currency)\n : formatAmount(this.subtotal, this.currency)}\n </rebill-typography>\n </div>\n {/* Installments y coupon también inline */}\n {sessionState.data.pricing.installments && (\n <div class=\"summary-row\">\n <rebill-typography variant=\"body2\">\n {I18nService.translate('summary.installments')}\n </rebill-typography>\n <rebill-typography variant=\"body2\">\n {getInstallmentDescription(\n sessionState.data?.pricing?.installments,\n this.getRecalculatedInstallmentAmount(),\n )}\n </rebill-typography>\n </div>\n )}\n {this.allowCoupon &&\n !isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP) && (\n <discount-coupon />\n )}\n {!sessionState.data?.itemInformation?.trial?.trialPeriodDays &&\n !sessionState.data?.itemInformation?.debitStrategy && <rebill-divider />}\n {detailsBlocks.map(block => (\n <div class=\"summary-detail-wrapper\">{block}</div>\n ))}\n </div>\n );\n };\n const renderDiscountAlert = () =>\n this.planFrequency &&\n this.discountApplied &&\n (this.discountedPercentage > 0 || this.discountAmount > 0) && (\n <rebill-alert\n variant=\"filled\"\n type=\"success\"\n icon=\"tag-sale\"\n size=\"medium\"\n colorIcon={COLORS_ENUM.GREEN}\n message={\n this.discountDuration\n ? I18nService.translate(`summary.planDiscountDescriptionWithDuration`, {\n discount:\n this.discountType === SESSION_DISCOUNT_TYPE_ENUM.PERCENTAGE\n ? `${this.discountedPercentage}%`\n : formatAmount(this.discountAmount, this.currency),\n duration: this.getDurationTranslation(this.discountDuration),\n })\n : I18nService.translate(`summary.planDiscountDescriptionWithoutDuration`, {\n discount:\n this.discountType === SESSION_DISCOUNT_TYPE_ENUM.PERCENTAGE\n ? `${this.discountedPercentage}%`\n : formatAmount(this.discountAmount, this.currency),\n })\n }\n />\n );\n return (\n <div class=\"summary-container\">\n {this.displayedComponents.includes('totalAmount') && (\n <div class=\"summary-header\">\n {sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n sessionState.data.itemInformation?.trial?.trialPeriodDays && (\n <div class=\"trial-pill\">\n <rebill-typography variant=\"body2\" align=\"center\" color={COLORS_ENUM.GREEN_TEXT}>\n {I18nService.translate('summary.trialPill', {\n days: sessionState.data?.itemInformation?.trial?.trialPeriodDays,\n count: sessionState.data?.itemInformation?.trial?.trialPeriodDays,\n })}\n </rebill-typography>\n </div>\n )}\n <div class=\"total-amount-container\">\n <rebill-typography variant=\"h4-span\" align=\"center\" gutterBottom>\n <number-flow ref={el => (this.totalFlow = el as any)}></number-flow>\n </rebill-typography>\n {this.planFrequency && (\n <rebill-typography\n variant=\"body1\"\n color={COLORS_ENUM.SECONDARY}\n align=\"center\"\n gutterBottom\n style={{ fontWeight: 'normal' }}\n >\n {`/ ${I18nService.translate(`summary.${this.planFrequency}`, {\n count: this.planFrequencyCount || 1,\n })}`}\n </rebill-typography>\n )}\n </div>\n {sessionState.data?.itemInformation?.type !== SESSION_ITEM_TYPE_ENUM.PLAN && (\n <rebill-typography variant=\"body2\" align=\"center\" gutterBottom>\n {I18nService.translate('summary.totalAmount')}\n </rebill-typography>\n )}\n {this.allowCoupon &&\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP) && (\n <discount-coupon hide-label />\n )}\n </div>\n )}\n {this.displayedComponents.includes('itemDetails') &&\n (isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP) ? (\n <collapsible-card header={I18nService.translate('summary.details')}>\n {renderItemDetails(true, true, true)}\n </collapsible-card>\n ) : (\n <collapsible-card header={this.itemTitle}>\n {renderItemDetails(false, !!this.itemDescription, true)}\n </collapsible-card>\n ))}\n {this.displayedComponents.includes('discount') &&\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP) &&\n !sessionState.data?.itemInformation?.trial?.trialPeriodDays &&\n !sessionState.data?.itemInformation?.debitStrategy &&\n renderDiscountAlert()}\n {this.displayedComponents.includes('timelineFreeTrial') &&\n sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n sessionState.data?.itemInformation?.trial?.trialPeriodDays &&\n !isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP) && (\n <rebill-timeline-free-trial\n trial-period-ends-at={sessionState.data?.itemInformation?.trial?.trialPeriodEndsAt}\n trial-period-ends-reminder-at={\n sessionState.data?.itemInformation?.trial?.trialPeriodEndsReminderAt\n }\n trial-period-days={sessionState.data?.itemInformation?.trial?.trialPeriodDays}\n subtotal={sessionState.data.pricing.subtotal}\n currency={sessionState.data.pricing.currency}\n discount-applied={this.discountApplied}\n discount-type={this.discountType}\n discounted-percentage={this.discountedPercentage}\n discount-duration={this.discountDuration}\n discount-amount={this.discountAmount}\n />\n )}\n {this.displayedComponents.includes('timelineDebitDay') &&\n sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n sessionState.data?.itemInformation?.debitStrategy &&\n sessionState.data?.itemInformation?.debitDay &&\n !isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP) && (\n <rebill-timeline-debit-day\n debit-day={sessionState.data?.itemInformation?.debitDay}\n total-amount={sessionState.data?.pricing?.total}\n plan-amount={sessionState.data?.pricing?.planAmount}\n currency={sessionState.data?.pricing?.currency}\n debit-strategy={sessionState.data?.itemInformation?.debitStrategy}\n discount-applied={this.discountApplied}\n discount-type={this.discountType}\n discounted-percentage={this.discountedPercentage}\n discount-duration={this.discountDuration}\n discount-amount={this.discountAmount}\n />\n )}\n {this.displayedComponents.includes('priceDetails') &&\n (isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP) ? (\n <collapsible-card header={I18nService.translate('summary.summary')}>\n {renderPriceDetails()}\n </collapsible-card>\n ) : (\n renderPriceDetails()\n ))}\n {this.displayedComponents.includes('timelineFreeTrial') &&\n sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n sessionState.data?.itemInformation?.trial?.trialPeriodDays &&\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP) && (\n <rebill-timeline-free-trial\n trial-period-ends-at={sessionState.data?.itemInformation?.trial?.trialPeriodEndsAt}\n trial-period-ends-reminder-at={\n sessionState.data?.itemInformation?.trial?.trialPeriodEndsReminderAt\n }\n trial-period-days={sessionState.data?.itemInformation?.trial?.trialPeriodDays}\n subtotal={sessionState.data?.pricing?.subtotal}\n currency={sessionState.data?.pricing?.currency}\n discount-applied={this.discountApplied}\n discount-type={this.discountType}\n discounted-percentage={this.discountedPercentage}\n discount-duration={this.discountDuration}\n discount-amount={this.discountAmount}\n />\n )}\n {this.displayedComponents.includes('timelineDebitDay') &&\n sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n sessionState.data?.itemInformation?.debitStrategy &&\n sessionState.data?.itemInformation?.debitDay &&\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP) && (\n <rebill-timeline-debit-day\n debit-day={sessionState.data?.itemInformation?.debitDay}\n total-amount={sessionState.data?.pricing?.total}\n plan-amount={sessionState.data?.pricing?.planAmount}\n currency={sessionState.data?.pricing?.currency}\n debit-strategy={sessionState.data?.itemInformation?.debitStrategy}\n discount-applied={this.discountApplied}\n discount-type={this.discountType}\n discounted-percentage={this.discountedPercentage}\n discount-duration={this.discountDuration}\n discount-amount={this.discountAmount}\n />\n )}\n {this.displayedComponents.includes('discount') &&\n !isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP) &&\n !sessionState.data?.itemInformation?.trial?.trialPeriodDays &&\n !sessionState.data?.itemInformation?.debitStrategy &&\n renderDiscountAlert()}\n </div>\n );\n }\n}\n",":host {\n display: block;\n position: relative;\n}\n\n.test-mode-container {\n position: relative;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: 8px;\n}\n.info-icon {\n margin-right: 4px;\n display: flex;\n align-items: center;\n}\n\n.test-mode-chip {\n display: flex;\n min-width: 149px;\n height: 40px;\n background: #ffffff;\n border: 1px solid #e5e7eb;\n border-radius: 20px;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n overflow: hidden;\n position: relative;\n z-index: 10;\n}\n\n.test-mode-chip.expanded {\n max-width: 579px;\n height: 40px;\n flex-direction: row;\n border-radius: 20px;\n justify-content: space-between;\n}\n\n.test-mode-container.cards-visible .test-mode-chip.expanded {\n border-radius: 0 0 20px 20px;\n width: 579px;\n}\n\n.chip-content {\n display: flex;\n align-items: center;\n gap: 2px;\n justify-content: space-between;\n min-height: 24px;\n flex-shrink: 0;\n margin-left: 18px;\n margin-right: 8px;\n}\n\n.chip-content .info-icon {\n display: flex !important;\n align-items: center !important;\n vertical-align: middle !important;\n}\n\n.chip-content rebill-typography {\n display: flex !important;\n align-items: center !important;\n line-height: 1.5 !important;\n}\n\n.test-mode-chip.expanded .chip-content {\n justify-content: flex-start;\n width: auto;\n margin-right: 12px;\n}\n\n.test-mode-panel {\n display: flex;\n align-items: center;\n width: 100%;\n justify-content: space-between;\n animation: slideIn 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.test-mode-panel.closing {\n animation: slideOut 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.panel-sections {\n display: flex;\n align-items: center;\n gap: 12px;\n flex: 1;\n justify-content: space-between;\n margin: 8px;\n}\n\n/* Sección de Cards */\n.cards-section {\n display: flex;\n align-items: center;\n cursor: pointer;\n border-radius: 8px;\n transition: background-color 0.2s ease;\n}\n\n.cards-section .cards-button {\n display: flex !important;\n align-items: center !important;\n justify-content: flex-start !important;\n margin-left: 4px !important;\n}\n\n.cards-section .cards-button .card-icon {\n display: flex !important;\n align-items: center !important;\n margin-right: 8px !important;\n vertical-align: middle !important;\n}\n\n.cards-section .cards-button rebill-typography {\n display: flex !important;\n align-items: center !important;\n line-height: 1 !important;\n}\n\n/* Sección de Docs */\n/* .docs-section {\n display: flex;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n transition: background-color 0.2s ease;\n} */\n\n/* Sección de Registration */\n.registration-section {\n display: flex;\n align-items: center;\n gap: 2px;\n cursor: pointer;\n transition: background-color 0.2s ease;\n flex: 1;\n min-width: 0;\n}\n\n.cards-dropdown-panel {\n position: absolute;\n bottom: 40px;\n left: 0;\n width: 579px;\n background: #ffffff;\n border-top: 1px solid #e5e7eb;\n border-left: 1px solid #e5e7eb;\n border-right: 1px solid #e5e7eb;\n border-bottom: none;\n border-radius: 16px 16px 0 0;\n z-index: 15;\n animation: expandUp 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n transform-origin: bottom center;\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.cards-dropdown-panel.closing {\n animation: collapseDown 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-section {\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n}\n\n.header-content {\n display: flex;\n align-items: center;\n gap: 8px;\n margin: 8px;\n}\n\n.card-details {\n background: #fafafa;\n border-radius: 8px;\n border: 1px solid #e5e7eb;\n margin: 8px;\n min-height: 223.7px;\n\n display: flex;\n flex-direction: column;\n justify-content: space-around;\n padding: 16px;\n}\n\n.card-row {\n display: flex;\n flex-direction: row;\n gap: 24px;\n align-items: center;\n background: #ffffff;\n justify-content: space-around;\n border-radius: 8px;\n border: 1px solid #e5e7eb;\n width: 531px;\n height: 68px;\n}\n\n.card-field {\n display: flex;\n flex-direction: column;\n gap: 8px;\n flex: 1;\n}\n\n.field-value {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 8px;\n max-height: 20px;\n}\n\n.copy-button {\n align-items: center;\n}\n\n/* Animaciones */\n@keyframes slideIn {\n from {\n opacity: 0;\n transform: translateX(-20px);\n }\n to {\n opacity: 1;\n transform: translateX(0);\n }\n}\n\n@keyframes slideOut {\n from {\n opacity: 1;\n transform: translateX(0);\n }\n to {\n opacity: 0;\n transform: translateX(-20px);\n }\n}\n\n@keyframes expandUp {\n from {\n opacity: 0;\n transform: translateY(10px) scaleY(0.9);\n }\n to {\n opacity: 1;\n transform: translateY(0) scaleY(1);\n }\n}\n\n@keyframes collapseDown {\n from {\n opacity: 1;\n transform: translateY(0) scaleY(1);\n }\n to {\n opacity: 0;\n transform: translateY(10px) scaleY(0.9);\n }\n}\n","import { Component, Element, h, State } from '@stencil/core';\nimport i18n from '../../../i18n/i18n.config';\nimport { I18nService } from '../../../i18n/i18n.service';\nimport { copyToClipboard } from '../../../utils/clipboard';\nimport { COLORS_ENUM } from '../../../utils/color-class-mapper';\n\n@Component({\n tag: 'rebill-mode-sandbox',\n styleUrl: 'mode-sandbox.css',\n shadow: false,\n})\nexport class RebillTestModeChip {\n @Element() el: HTMLElement;\n @State() isPanelVisible = false;\n @State() isPanelClosing = false;\n @State() isCardsPanelVisible = false;\n @State() isCardsPanelClosing = false;\n @State() currentLanguage: string = I18nService.getCurrentLanguage();\n\n componentWillLoad() {\n i18n.on('languageChanged', this.handleLanguageChange);\n }\n\n disconnectedCallback() {\n i18n.off('languageChanged', this.handleLanguageChange);\n }\n\n private handleLanguageChange = () => {\n this.currentLanguage = I18nService.getCurrentLanguage();\n };\n\n private togglePanel = () => {\n if (this.isPanelVisible) {\n this.isPanelClosing = true;\n if (this.isCardsPanelVisible) {\n this.isCardsPanelClosing = true;\n }\n setTimeout(() => {\n this.isPanelVisible = false;\n this.isPanelClosing = false;\n this.isCardsPanelVisible = false;\n this.isCardsPanelClosing = false;\n }, 300);\n } else {\n this.isPanelVisible = true;\n }\n };\n\n private togglePanelCards = () => {\n if (this.isCardsPanelVisible) {\n this.isCardsPanelClosing = true;\n setTimeout(() => {\n this.isCardsPanelVisible = false;\n this.isCardsPanelClosing = false;\n }, 300);\n } else {\n this.isCardsPanelVisible = true;\n }\n };\n\n private handleCopy = (text: string) => {\n copyToClipboard(text);\n this.isCardsPanelClosing = true;\n setTimeout(() => {\n this.isCardsPanelVisible = false;\n this.isCardsPanelClosing = false;\n }, 300);\n };\n private handleDocsClick = () => {\n window.open('https://v3.docs.rebill.com/sdk/checkout', '_blank');\n };\n\n private renderBasicChip() {\n return (\n <div class=\"chip-content\">\n <div class=\"info-icon\">\n <rebill-icon name=\"circle-info\" size=\"16px\" color={COLORS_ENUM.ORANGE} />\n </div>\n <rebill-typography\n variant=\"subtitle2\"\n color={COLORS_ENUM.PRIMARY_DARK}\n style={{ display: 'flex', alignItems: 'center', justifyContent: 'center' }}\n >\n {I18nService.translate('sandbox.testMode')}\n </rebill-typography>\n {!this.isPanelVisible && (\n <div class=\"arrow-icon\">\n <rebill-button variant=\"text\" size=\"small\" onClick={this.togglePanel}>\n <rebill-icon name=\"arrow-right-circle\" />\n </rebill-button>\n </div>\n )}\n </div>\n );\n }\n\n private renderExpandedChip() {\n return (\n <div class={`test-mode-panel ${this.isPanelClosing ? 'closing' : ''}`}>\n <div class=\"panel-sections\">\n <div class=\"cards-section\" onClick={this.togglePanelCards}>\n <rebill-button variant=\"text\" size=\"small\" class=\"cards-button\">\n <rebill-icon name=\"card-test\" class=\"card-icon\" />\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n {`${I18nService.translate('sandbox.cards')} `}\n </rebill-typography>\n <rebill-icon\n key={this.isCardsPanelVisible ? 'chevron-up' : 'chevron-down'}\n name={this.isCardsPanelVisible ? 'chevron-up' : 'chevron-down'}\n style={{ marginLeft: '8px' }}\n />\n </rebill-button>\n </div>\n {/* TODO: Add docs and registration sections when we have endpoints */}\n <div class=\"docs-section\">\n <rebill-button variant=\"text\" size=\"small\" onClick={this.handleDocsClick}>\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY}>\n {I18nService.translate('sandbox.docs')}\n </rebill-typography>\n <rebill-icon name=\"external-link\" style={{ marginLeft: '8px' }} />\n </rebill-button>\n </div>\n {/*\n <div class=\"registration-section\" onClick={this.handleRegistrationClick}>\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY}>\n {I18nService.translate('sandbox.completeMyAccountRegistration')}\n </rebill-typography>\n <rebill-icon name=\"external-link\" />\n </div> */}\n <rebill-button variant=\"text\" size=\"small\" onClick={this.togglePanel}>\n <rebill-icon name=\"close\" />\n </rebill-button>\n </div>\n </div>\n );\n }\n\n private renderCardsPanel() {\n return (\n <div class={`cards-dropdown-panel ${this.isCardsPanelClosing ? 'closing' : ''}`}>\n <div class=\"card-details\">\n <div class=\"card-section\">\n <div class=\"header-content\">\n <rebill-icon name=\"succes\" color={COLORS_ENUM.GREEN} />\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n {I18nService.translate('sandbox.successPayment')}\n </rebill-typography>\n </div>\n <div class=\"card-row\">\n <div class=\"card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.cardNumber')}\n </rebill-typography>\n <div class=\"field-value\">\n <rebill-icon name=\"visa\" />\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 4539148803436467\n </rebill-typography>\n </div>\n </div>\n <div class=\"card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.expiryDate')}\n </rebill-typography>\n <div class=\"field-value\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 01/99\n </rebill-typography>\n </div>\n </div>\n <div class=\"card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.cvv')}\n </rebill-typography>\n <div class=\"field-value\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 123\n </rebill-typography>\n <div class=\"copy-button\">\n <rebill-button\n variant=\"text\"\n size=\"small\"\n onClick={() => this.handleCopy('4539148803436467 01/99 123')}\n >\n <rebill-icon name=\"copy\" />\n </rebill-button>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"card-section\">\n <div class=\"header-content\">\n <rebill-icon name=\"rejected\" color={COLORS_ENUM.ERROR} />\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n {I18nService.translate('sandbox.rejectedPayment')}\n </rebill-typography>\n </div>\n <div class=\"card-row\">\n <div class=\"card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.cardNumber')}\n </rebill-typography>\n <div class=\"field-value\">\n <rebill-icon name=\"visa\" />\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 4485364739527352\n </rebill-typography>\n </div>\n </div>\n <div class=\"card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.expiryDate')}\n </rebill-typography>\n <div class=\"field-value\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 01/99\n </rebill-typography>\n </div>\n </div>\n\n <div class=\"card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.cvv')}\n </rebill-typography>\n <div class=\"field-value\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 123\n </rebill-typography>\n <div class=\"copy-button\">\n <rebill-button\n variant=\"text\"\n size=\"small\"\n onClick={() => this.handleCopy('4485364739527352 01/99 123')}\n >\n <rebill-icon name=\"copy\" />\n </rebill-button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n }\n\n render() {\n return (\n <div\n class={`test-mode-container ${this.isCardsPanelVisible || this.isCardsPanelClosing ? 'cards-visible' : ''}`}\n >\n <div class={`test-mode-chip ${this.isPanelVisible ? 'expanded' : ''}`}>\n {this.renderBasicChip()}\n {(this.isPanelVisible || this.isPanelClosing) && this.renderExpandedChip()}\n </div>\n {(this.isPanelVisible || this.isCardsPanelClosing) &&\n (this.isCardsPanelVisible || this.isCardsPanelClosing) &&\n this.renderCardsPanel()}\n </div>\n );\n }\n}\n",".otp__otp-container {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 16px;\n width: 100%;\n position: relative;\n margin-top: 2rem;\n}\n\n.otp__user-information {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-direction: column;\n width: 100%;\n gap: 8px;\n}\n\n.otp__otp-description-container {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n gap: 4px;\n}\n.otp__change-email {\n cursor: pointer;\n text-decoration: underline;\n margin-left: 0;\n}\n\n.otp__change-email:hover {\n color: var(--rebill-primary-color);\n text-decoration: underline;\n}\n\n.otp__alternative {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n gap: 16px;\n margin: 32px;\n width: 100%;\n}\n\n.otp__rebill-alert {\n width: 100%;\n}\n\n.otp__guest-options {\n display: flex;\n flex-direction: column;\n width: 100%;\n gap: 8px;\n margin-top: auto;\n}\n\n.otp__verifying-container {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 16px;\n margin: 8px 0;\n}\n\n.otp__code-resent-container rebill-typography {\n display: flex;\n line-height: 1;\n}\n\n.otp__code-resent-container rebill-icon {\n flex-shrink: 0;\n display: inline-flex;\n vertical-align: middle;\n margin-right: 8px;\n}\n\n.otp__spinner {\n width: 15px;\n height: 15px;\n border: 2px solid rgba(255, 255, 255, 0.3);\n border-radius: 50%;\n border-top-color: var(--rebill-color-primary);\n animation: spin 1s linear infinite;\n display: inline-block;\n}\n\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n\n/* Responsive adjustments */\n@media (max-width: 1024px) {\n .otp__otp-container {\n min-height: calc(100vh - 40px);\n }\n\n .otp__guest-options {\n margin-top: 32px;\n }\n}\n\n@media (min-width: 1025px) {\n .otp__otp-container {\n justify-content: flex-start;\n }\n\n .otp__guest-options {\n margin-top: auto;\n padding-bottom: 2rem;\n }\n}\n","import { Component, Event, EventEmitter, h, State } from '@stencil/core';\nimport { api } from '../../../api';\nimport { OTPVerifyResponse } from '../../../api/entities/OTP/types';\nimport { I18nService } from '../../../i18n/i18n.service';\nimport { sessionState, SessionStore } from '../../../store/session.store';\nimport { COLORS_ENUM } from '../../../utils/color-class-mapper';\nimport { createCountdownTimer } from '../../../utils/timer';\n\n@Component({\n tag: 'otp-component',\n styleUrl: 'otp.css',\n shadow: false,\n})\nexport class Otp {\n @Event() changeEmailClick: EventEmitter<void>;\n @State() timeLeft: number = 59;\n @State() isTimerRunning: boolean = false;\n @State() codeResent: boolean = false;\n @State() isVerifying: boolean = false;\n @State() otpValue: string = '';\n @Event() returnForm: EventEmitter<boolean>;\n @Event() codeVerified: EventEmitter<OTPVerifyResponse>;\n @State() error: boolean = false;\n\n private timer = createCountdownTimer({\n duration: 59,\n onTick: timeLeft => {\n this.timeLeft = timeLeft;\n },\n onComplete: () => {\n this.isTimerRunning = false;\n },\n });\n\n private messageTimer = createCountdownTimer({\n duration: 5,\n onComplete: () => {\n this.codeResent = false;\n },\n });\n\n disconnectedCallback() {\n this.timer.stop();\n }\n\n startTimer() {\n this.timer.start();\n this.isTimerRunning = true;\n }\n\n handleResendCode = async () => {\n if (!this.isTimerRunning) {\n await api.otp.generate(sessionState.data.sessionId, {\n email: sessionState.data.userInformation.email,\n });\n this.codeResent = true;\n this.messageTimer.start();\n this.startTimer();\n\n this.error = false;\n }\n };\n\n handleOtpChange = (value: string) => {\n this.otpValue = value;\n\n if (value.length === 6) {\n this.handleVerifyOtp(value);\n this.error = false;\n }\n };\n\n handleVerifyOtp = async (otp: string) => {\n this.isVerifying = true;\n try {\n const response = await api.otp.verify(sessionState.data.sessionId, {\n email: sessionState.data.userInformation.email,\n code: otp,\n });\n\n this.codeVerified.emit(response.data);\n SessionStore.setUserInformation({\n ...response.data.customer,\n fullName: `${response.data.customer.firstName} ${response.data.customer.lastName}`.trim(),\n phoneNumber: {\n number: response.data.customer.phoneNumbers[0].number,\n countryCode: response.data.customer.phoneNumbers[0].countryCode,\n },\n address: {\n billingAddress: {\n address: response.data.customer.addresses[0].lineOne,\n zip: response.data.customer.addresses[0].zipCode,\n city: response.data.customer.addresses[0].city,\n state: response.data.customer.addresses[0].state,\n country: response.data.customer.addresses[0].country,\n },\n },\n documentType: response.data.customer.identifications[0].type,\n documentNumber: response.data.customer.identifications[0].value,\n });\n SessionStore.setAccessToken(response.data.accessToken);\n SessionStore.setCustomerId(response.data.customer.id);\n this.otpValue = '';\n this.error = false;\n } catch (error) {\n this.error = true;\n } finally {\n this.isVerifying = false;\n }\n };\n\n render() {\n return (\n <div class=\"otp__otp-container\">\n <div class=\"otp__user-information\">\n <div class=\"otp__otp-description-container\">\n <rebill-typography variant=\"body2\" class=\"otp__otp-description\">\n {I18nService.translate('otp.description')}\n </rebill-typography>\n <rebill-typography variant=\"subtitle-bold\" class=\"otp__otp-description-digits\">\n {' '}\n <strong>{I18nService.translate('otp.descriptionDigits')}</strong>{' '}\n </rebill-typography>\n <rebill-typography variant=\"body2\" class=\"otp__otp-description-email\">\n {I18nService.translate('otp.descriptionEmail')}\n </rebill-typography>\n </div>\n <rebill-typography variant=\"body2\" class=\"otp__otp-email-line\">\n {sessionState.data.userInformation.email}{' '}\n {!sessionState.data.prefilledData?.email && (\n <span\n class=\"otp__change-email\"\n onClick={() => {\n this.otpValue = '';\n this.error = false;\n this.returnForm.emit(false);\n }}\n >\n {I18nService.translate('otp.change')}\n </span>\n )}\n </rebill-typography>\n </div>\n <input-otp\n otp={this.otpValue}\n onOtpChange={event => this.handleOtpChange(event.detail)}\n error={this.error ? I18nService.translate('otp.error') : ''}\n />\n\n {this.isVerifying && (\n <div class=\"otp__verifying-container\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY}>\n {I18nService.translate('otp.verifyingCode')}\n </rebill-typography>\n <div class=\"otp__spinner\"></div>\n </div>\n )}\n <rebill-button\n type=\"button\"\n variant=\"outline\"\n theme={this.isTimerRunning ? 'secondary' : 'primary'}\n disabled={this.isTimerRunning}\n onClick={this.handleResendCode}\n size=\"small\"\n style={{ height: '24px', marginBottom: '8px' }}\n >\n {this.isTimerRunning\n ? `${I18nService.translate('otp.resendCodeIn')} (${this.timer.getFormattedTime()})`\n : I18nService.translate('otp.resendCode')}\n </rebill-button>\n\n {this.codeResent && (\n <div class=\"otp__code-resent-container\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.GREEN}>\n <rebill-icon name=\"check-radio\" />\n {I18nService.translate('otp.codeResent')}\n </rebill-typography>\n </div>\n )}\n <rebill-alert\n class=\"otp__rebill-alert\"\n type=\"secure\"\n variant=\"variant-info\"\n message={I18nService.translate('otp.infoMessage')}\n icon=\"circle-info\"\n alertTitle={I18nService.translate('otp.infoTitle')}\n colorIcon={COLORS_ENUM.PRIMARY_DARK_LIGHT}\n />\n <div class=\"otp__alternative\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK}>\n o\n </rebill-typography>\n </div>\n <div class=\"otp__guest-options\">\n <rebill-button\n type=\"button\"\n variant=\"outline\"\n theme=\"secondary\"\n size=\"medium\"\n onClick={() => {\n this.otpValue = '';\n this.error = false;\n this.returnForm.emit(false);\n }}\n >\n {I18nService.translate('otp.continueAsGuest')}\n </rebill-button>\n\n <rebill-alert\n type=\"secure\"\n variant=\"variant-secure\"\n icon=\"lock-outline\"\n message={I18nService.translate('otp.secureMessage')}\n />\n </div>\n </div>\n );\n }\n}\n",".modal-overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n background-color: transparent;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 10000;\n padding: 12px 16px;\n box-sizing: border-box;\n}\n\n.modal-content {\n background: white;\n border-radius: 8px;\n padding: 16px 20px;\n width: 350px;\n box-shadow:\n 0 4px 12px -2px rgba(0, 0, 0, 0.15),\n 0 2px 4px -1px rgba(0, 0, 0, 0.1);\n position: relative;\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.modal-content .alert {\n margin: 0;\n flex: 1;\n padding: 0;\n background: transparent;\n border: none;\n box-shadow: none;\n}\n\n/* Override para quitar cualquier color de fondo del modal */\n.modal-content .alert {\n background-color: transparent !important;\n border-color: transparent !important;\n}\n\n.modal-content .alert-message {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.modal-content .close-button {\n position: absolute;\n top: 8px;\n right: 8px;\n width: 20px;\n height: 20px;\n border: none;\n background: transparent;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 50%;\n transition: background-color 0.2s ease;\n padding: 0;\n margin: 0;\n outline: none;\n box-shadow: none;\n line-height: 1;\n}\n\n.modal-content .close-button:focus {\n outline: none;\n box-shadow: none;\n}\n\n.modal-content .close-button:hover {\n background-color: #f0f0f0;\n}\n\n.modal-content .close-button rebill-icon {\n width: 16px;\n height: 16px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n@media (max-width: 768px) {\n .modal-overlay {\n padding: 8px 12px;\n }\n\n .modal-content {\n padding: 12px 16px;\n flex-direction: column;\n gap: 8px;\n text-align: center;\n }\n\n .modal-content .close-button {\n width: 100%;\n }\n}\n","import { Component, h, State } from '@stencil/core';\nimport { I18nService } from '../../../i18n/i18n.service';\nimport { SessionStore } from '../../../store/session.store';\nimport { COLORS_ENUM } from '../../../utils/color-class-mapper';\nimport { createCountdownTimer } from '../../../utils/timer';\n\n@Component({\n tag: 'rebill-modal-overlay',\n styleUrl: 'modal-overlay.css',\n shadow: false,\n})\nexport class ModalOverlay {\n @State() visible: boolean = true;\n @State() languageUpdateTrigger: number = 0;\n private unsubscribeCurrentLocaleStore?: () => void;\n private autoCloseTimer?: ReturnType<typeof createCountdownTimer>;\n\n componentDidLoad() {\n this.unsubscribeCurrentLocaleStore = SessionStore.onChange('currentLocale', () => {\n this.languageUpdateTrigger++;\n });\n\n this.autoCloseTimer = createCountdownTimer({\n duration: 30,\n onComplete: () => {\n this.closeModal();\n },\n });\n\n this.autoCloseTimer.start();\n }\n\n disconnectedCallback() {\n if (this.unsubscribeCurrentLocaleStore) {\n this.unsubscribeCurrentLocaleStore();\n }\n\n if (this.autoCloseTimer) {\n this.autoCloseTimer.stop();\n }\n }\n\n private closeModal = () => {\n this.visible = false;\n\n if (this.autoCloseTimer) {\n this.autoCloseTimer.stop();\n }\n };\n\n render() {\n if (!this.visible) return null;\n\n return (\n <div class=\"modal-overlay\">\n <div class=\"modal-content\">\n <div class=\"alert info filled medium\">\n <div class=\"alert-icon\">\n <rebill-icon name=\"circle-info\" size=\"16px\" color={COLORS_ENUM.ORANGE} />\n </div>\n <div class=\"alert-message\">\n <div class=\"alert-title\">\n <rebill-typography variant=\"subtitle-bold\" color={COLORS_ENUM.PRIMARY_DARK}>\n {I18nService.translate('session.refreshedTitle')}\n </rebill-typography>\n </div>\n <div class=\"alert-message-text\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n {I18nService.translate('session.refreshedMessage')}\n </rebill-typography>\n </div>\n </div>\n </div>\n <button onClick={this.closeModal} class=\"close-button\" type=\"button\">\n <rebill-icon name=\"close\" size=\"20px\" />\n </button>\n </div>\n </div>\n );\n }\n}\n",":host {\n display: flex;\n position: relative;\n width: 100%;\n justify-content: center;\n align-items: center;\n}\n\n.mode-sandbox-mobile__test-mode-container {\n position: relative;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: 8px;\n width: 100%;\n}\n\n.mode-sandbox-mobile__overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(0, 0, 0, 0.5);\n z-index: 5;\n animation: fadeIn 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n pointer-events: auto;\n cursor: pointer;\n}\n\n.mode-sandbox-mobile__test-mode-chip-mobile {\n display: flex;\n width: 100%;\n min-width: auto;\n max-width: 100%;\n height: 40px;\n background: #ffffff;\n border: 1px solid #e5e7eb;\n border-radius: 20px;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n overflow: hidden;\n position: relative;\n z-index: 20;\n}\n\n.mode-sandbox-mobile__chip-content-mobile {\n display: flex;\n align-items: center;\n gap: 2px;\n justify-content: flex-end;\n min-height: 24px;\n flex-shrink: 0;\n width: 100%;\n margin: 8px;\n}\n\n.mode-sandbox-mobile__info-icon {\n display: flex;\n align-items: center;\n}\n\n.mode-sandbox-mobile__test-mode-chip-mobile.expanded .mode-sandbox-mobile__chip-content-mobile {\n justify-content: flex-end;\n width: 100%;\n}\n\n.mode-sandbox-mobile__cards-dropdown-panel-header {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 8px;\n}\n\n/* Sección de Docs */\n.mode-sandbox-mobile__docs-section {\n display: flex;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n margin-left: 0;\n transition: background-color 0.2s ease;\n justify-content: flex-end;\n padding: 8px;\n margin-top: 8px;\n}\n\n.mode-sandbox-mobile__cards-dropdown-panel {\n position: absolute;\n top: 100%;\n left: 0;\n right: 0;\n width: 100%;\n background: #ffffff;\n border-top: none;\n border-left: 1px solid #e5e7eb;\n border-right: 1px solid #e5e7eb;\n border-bottom: 1px solid #e5e7eb;\n margin-top: 16px;\n z-index: 25;\n animation: expandDown 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n transform-origin: top center;\n}\n\n.mode-sandbox-mobile__card-section {\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n}\n\n.mode-sandbox-mobile__header-content {\n display: flex;\n align-items: center;\n gap: 8px;\n margin: 8px;\n}\n\n.mode-sandbox-mobile__card-details {\n background: #fafafa;\n border-radius: 8px;\n border: 1px solid #e5e7eb;\n margin: 8px;\n min-height: 208px;\n display: flex;\n flex-direction: column;\n}\n\n.mode-sandbox-mobile__card-row {\n display: flex;\n gap: 12px;\n align-items: stretch;\n background: #ffffff;\n justify-content: space-around;\n border-radius: 8px;\n border: 1px solid #e5e7eb;\n height: auto;\n padding: 8px;\n margin: 8px;\n}\n\n.mode-sandbox-mobile__card-value {\n display: flex;\n flex-direction: column;\n gap: 6px;\n flex: 1;\n}\n\n.mode-sandbox-mobile__field-value {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 8px;\n max-height: 20px;\n}\n\n.mode-sandbox-mobile__copy-button {\n align-items: center;\n margin-left: auto;\n margin-right: 0;\n}\n\n.mode-sandbox-mobile__icon-button {\n margin-left: auto;\n margin-right: 16px;\n}\n\n/* Animaciones */\n\n@keyframes expandDown {\n from {\n opacity: 0;\n transform: translateY(-10px) scaleY(0.9);\n }\n to {\n opacity: 1;\n transform: translateY(0) scaleY(1);\n }\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n","import { Component, Element, h, State } from '@stencil/core';\nimport i18n from '../../../i18n/i18n.config';\nimport { I18nService } from '../../../i18n/i18n.service';\nimport { copyToClipboard } from '../../../utils/clipboard';\nimport { COLORS_ENUM } from '../../../utils/color-class-mapper';\n\n@Component({\n tag: 'rebill-mode-sandbox-mobile',\n styleUrl: 'mode-sandbox-mobile.css',\n shadow: false,\n})\nexport class RebillTestModeChipMobile {\n @Element() el: HTMLElement;\n @State() isPanelVisible = false;\n @State() currentLanguage: string = I18nService.getCurrentLanguage();\n\n componentWillLoad() {\n i18n.on('languageChanged', this.handleLanguageChange);\n }\n\n disconnectedCallback() {\n i18n.off('languageChanged', this.handleLanguageChange);\n }\n\n private handleLanguageChange = () => {\n this.currentLanguage = I18nService.getCurrentLanguage();\n };\n\n private togglePanel = () => {\n this.isPanelVisible = !this.isPanelVisible;\n };\n\n private handleCopy = (text: string) => {\n copyToClipboard(text);\n this.isPanelVisible = false;\n };\n\n private handleDocsClick = () => {\n window.open('https://v3.docs.rebill.com/sdk/checkout', '_blank');\n };\n\n private renderBasicChip() {\n return (\n <div class=\"mode-sandbox-mobile__chip-content-mobile\">\n <div class=\"mode-sandbox-mobile__info-icon\">\n <rebill-icon name=\"circle-info\" size=\"24px\" color={COLORS_ENUM.ORANGE} />\n </div>\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n {I18nService.translate('sandbox.testMode')}\n </rebill-typography>\n <div class=\"mode-sandbox-mobile__icon-button\">\n <rebill-button variant=\"text\" size=\"small\" onClick={this.togglePanel}>\n <rebill-icon name=\"hamburger\" />\n </rebill-button>\n </div>\n </div>\n );\n }\n\n private renderCardsPanel() {\n return (\n <div class=\"mode-sandbox-mobile__cards-dropdown-panel\">\n <div class=\"mode-sandbox-mobile__cards-dropdown-panel-header\">\n <rebill-icon name=\"card-test\" />\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n {I18nService.translate('sandbox.cardTest')}\n </rebill-typography>\n </div>\n <div class=\"mode-sandbox-mobile__card-details\">\n <div class=\"mode-sandbox-mobile__card-section\">\n <div class=\"mode-sandbox-mobile__header-content\">\n <rebill-icon name=\"succes\" color={COLORS_ENUM.GREEN} />\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n {I18nService.translate('sandbox.successPayment')}\n </rebill-typography>\n </div>\n <div class=\"mode-sandbox-mobile__card-row\">\n <div class=\"mode-sandbox-mobile__card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.cardNumber')}\n </rebill-typography>\n <div class=\"mode-sandbox-mobile__field-value\">\n <rebill-icon name=\"visa\" />\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 4539148803436467\n </rebill-typography>\n </div>\n </div>\n <div class=\"mode-sandbox-mobile__card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.exp')}\n </rebill-typography>\n <div class=\"mode-sandbox-mobile__field-value\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 01/99\n </rebill-typography>\n </div>\n </div>\n <div class=\"mode-sandbox-mobile__card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.cvv')}\n </rebill-typography>\n <div class=\"mode-sandbox-mobile__field-value mode-sandbox-mobile__field-value-with-copy\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 123\n </rebill-typography>\n <div class=\"mode-sandbox-mobile__copy-button\">\n <rebill-button\n variant=\"text\"\n size=\"small\"\n onClick={() => this.handleCopy('4539148803436467 01/99 123')}\n >\n <rebill-icon name=\"copy\" />\n </rebill-button>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"mode-sandbox-mobile__card-section\">\n <div class=\"mode-sandbox-mobile__header-content\">\n <rebill-icon name=\"rejected\" color={COLORS_ENUM.ERROR} />\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n {I18nService.translate('sandbox.rejectedPayment')}\n </rebill-typography>\n </div>\n <div class=\"mode-sandbox-mobile__card-row\">\n <div class=\"mode-sandbox-mobile__card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.cardNumber')}\n </rebill-typography>\n <div class=\"mode-sandbox-mobile__field-value\">\n <rebill-icon name=\"visa\" />\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 4485364739527352\n </rebill-typography>\n </div>\n </div>\n <div class=\"mode-sandbox-mobile__card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.exp')}\n </rebill-typography>\n <div class=\"mode-sandbox-mobile__field-value\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 01/99\n </rebill-typography>\n </div>\n </div>\n <div class=\"mode-sandbox-mobile__card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.cvv')}\n </rebill-typography>\n <div class=\"mode-sandbox-mobile__field-value mode-sandbox-mobile__field-value-with-copy\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 123\n </rebill-typography>\n <div class=\"mode-sandbox-mobile__copy-button\">\n <rebill-button\n variant=\"text\"\n size=\"small\"\n onClick={() => this.handleCopy('4485364739527352 01/99 123')}\n >\n <rebill-icon name=\"copy\" />\n </rebill-button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"mode-sandbox-mobile__docs-section\" onClick={this.handleDocsClick}>\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY}>\n {I18nService.translate('sandbox.docs')}\n </rebill-typography>\n <rebill-icon name=\"external-link\" />\n </div>\n </div>\n );\n }\n\n render() {\n return (\n <div\n class={`mode-sandbox-mobile__test-mode-container ${this.isPanelVisible ? 'cards-visible' : ''}`}\n >\n {this.isPanelVisible && <div class=\"mode-sandbox-mobile__overlay\"></div>}\n <div\n class={`mode-sandbox-mobile__test-mode-chip-mobile ${this.isPanelVisible ? 'expanded' : ''}`}\n >\n {this.renderBasicChip()}\n </div>\n {this.isPanelVisible && this.renderCardsPanel()}\n </div>\n );\n }\n}\n","@import '../../../styles/variables.css';\n\n/* Text Content */\n.success-page__text-content {\n margin-bottom: 2rem;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 8px;\n}\n\n/* Success View Styles */\n.success-page__success-content {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 1rem;\n width: 100%;\n overflow-x: hidden;\n box-sizing: border-box;\n}\n.success-page__lottie-container {\n width: 80px;\n height: 80px;\n}\n/* Eliminar márgenes del h3 en el componente de éxito */\n.success-page__success-content rebill-typography[variant='h3'] {\n margin: 0 !important;\n padding: 0 !important;\n}\n\n.success-page__success-icon {\n display: flex;\n justify-content: center;\n margin: 0.5rem 0;\n}\n\n/* Info Cards */\n.success-page__info-card {\n padding: 24px;\n gap: 16px;\n width: 100%;\n max-width: 450px;\n border: 1px solid #ebedef;\n border-radius: 8px;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n}\n\n.success-page__card-row {\n display: flex;\n justify-content: space-between;\n align-items: start;\n min-height: 20px;\n gap: 15%;\n}\n\n.success-page__card-row:last-of-type {\n margin-bottom: 0;\n}\n\n.success-page__card-value {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n}\n\n.success-page__payment-method-display {\n display: flex;\n align-items: center;\n gap: 8px;\n justify-content: center;\n}\n\n.success-page__payment-method-display rebill-card-icon {\n display: inline-block;\n flex-shrink: 0;\n margin-right: 8px;\n vertical-align: middle;\n}\n\n.success-page__payment-method-display rebill-card-icon svg {\n display: block;\n}\n\n.success-page__payment-method-display rebill-icon {\n display: inline-block;\n vertical-align: middle;\n margin-right: 8px;\n}\n\n.success-page__payment-method-display rebill-icon div {\n display: block;\n}\n\n.success-page__card-divider {\n height: 1px;\n background: #e5e7eb;\n}\n\n.success-page__download-container {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: 2px;\n text-decoration: none;\n cursor: pointer;\n}\n\n.success-page__contact-info {\n text-align: left;\n}\n\n.success-page__reference-number {\n word-break: break-all;\n overflow-wrap: break-word;\n hyphens: auto;\n max-width: 100%;\n text-align: right;\n}\n\n.success-page__total-amount-container {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 8px;\n flex-direction: row;\n}\n\n.success-page__trial-pill {\n background-color: var(--rebill-color-green-light-2);\n border-radius: 4px;\n padding: 4px 6px 4px 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.success-page__next-charge-header {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n margin-bottom: 12px;\n}\n\n.success-page__next-charge-details {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n}\n\n.success-page__next-charge-amount {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 4px;\n}\n\n.success-page__next-charge-date {\n text-align: right;\n}\n\n.success-page__next-charge-section {\n margin-top: 12px;\n padding-top: 12px;\n}\n\n/* Responsive Styles */\n@media (max-width: 1024px) {\n .success-page__success-content {\n max-width: 100%;\n gap: 1.5rem;\n margin-left: 16px;\n margin-right: 16px;\n }\n\n .success-page__info-card {\n width: 100%;\n max-width: 100%;\n padding: 12px;\n }\n .success-page__text-content {\n gap: 12px;\n }\n}\n\n@media (max-width: 767px) {\n .success-page__info-card {\n padding: 12px;\n }\n\n .success-page__processing-container {\n padding: 0 16px;\n }\n}\n","import { Component, Event, EventEmitter, h, Prop, State } from '@stencil/core';\nimport { I18nService } from '../../../i18n/i18n.service';\nimport { ENUM_INSTALLMENT_MODEL } from '../../../models/enums/installment.enum';\nimport { PAYMENT_METHOD_ENUM } from '../../../models/enums/payment-methods.enum';\nimport { SESSION_ITEM_TYPE_ENUM } from '../../../models/enums/session.enum';\nimport { sessionState, SessionStore } from '../../../store/session.store';\nimport { formatDateTime } from '../../../utils';\nimport { getAssetURL } from '../../../utils/assets';\nimport { BREAKPOINT_ENUM, getBreakpoint, isBreakpointBelow } from '../../../utils/breakpoint';\nimport { COLORS_ENUM } from '../../../utils/color-class-mapper';\nimport { getCountryPaymentMethods } from '../../../utils/countries-payment-methods';\nimport { formatAmount } from '../../../utils/currency-formatter';\nimport {\n getInstallmentLabelSummary,\n getRecalculatedInstallmentAmount,\n} from '../../../utils/installment-utils';\nimport { PDFGenerator } from '../../../utils/pdf-generator';\n\n@Component({\n tag: 'success-page',\n styleUrl: 'success-page.css',\n shadow: false,\n})\nexport class CardSuccessPage {\n @Prop() typePaymentMethod: PAYMENT_METHOD_ENUM = PAYMENT_METHOD_ENUM.CARD;\n @Prop() country?: string = '';\n @Prop() bank?: string = '';\n @Prop() paymentMethodName?: string = '';\n @Prop() cardLastFour?: string = '';\n @Prop() paymentDate: string = '';\n @Prop() referenceNumber: string = '';\n @Prop() trialPeriodDays?: number = 0;\n @Prop() debitDay?: number = 0;\n @Prop() planAmount?: number = 0;\n @State() currentLocale: string = sessionState.currentLocale;\n @State() breakpoint: BREAKPOINT_ENUM = BREAKPOINT_ENUM.DESKTOP;\n\n @Event() successRedirect: EventEmitter<any>;\n @State() loaderProgress: number = 0;\n @State() isLoadingLottie: boolean = true;\n @State() showRedirectMessage: boolean = false;\n @Prop() timeToRedirect: number = 3000;\n private progressInterval?: number;\n private lottieContainer?: HTMLElement;\n private lottieAnimation?: any;\n private unsubscribeCurrentLocaleStore?: () => void;\n private successDisplayTimeout?: number;\n\n private applyStartCaseToBrand = (brand: string): string => {\n if (!brand) return '';\n\n return brand\n .toLowerCase()\n .split(/[\\s-]+/)\n .map(word => word.charAt(0).toUpperCase() + word.slice(1))\n .join(' ');\n };\n\n private getPaymentMethodConfig(method: PAYMENT_METHOD_ENUM) {\n const countryPaymentMethods = this.country ? getCountryPaymentMethods(this.country) : null;\n\n const countrySpecificMethod = countryPaymentMethods?.find(pm => pm.type === method);\n\n // Default configurations (fallback)\n const defaultConfigs = {\n [PAYMENT_METHOD_ENUM.CARD]: {\n key: PAYMENT_METHOD_ENUM.CARD,\n label: I18nService.translate('paymentMethods.card'),\n icons: ['doblecard'],\n },\n [PAYMENT_METHOD_ENUM.CASH]: {\n key: PAYMENT_METHOD_ENUM.CASH,\n label: I18nService.translate('paymentMethods.cash'),\n icons: ['pago-facil'],\n },\n [PAYMENT_METHOD_ENUM.BANK_TRANSFER]: {\n key: PAYMENT_METHOD_ENUM.BANK_TRANSFER,\n label: I18nService.translate('paymentMethods.bank_transfer'),\n icons: ['plus'],\n },\n };\n\n const defaultConfig = defaultConfigs[method];\n\n return {\n ...defaultConfig,\n icons: countrySpecificMethod?.icons || defaultConfig.icons,\n };\n }\n\n private getPaymentDate = (): string => {\n return this.paymentDate || '';\n };\n\n componentWillLoad() {\n this.breakpoint = getBreakpoint(window.innerWidth);\n this.unsubscribeCurrentLocaleStore = SessionStore.onChange('currentLocale', () => {\n this.currentLocale = sessionState.currentLocale;\n });\n\n if (sessionState.data?.itemInformation?.redirectSuccess) {\n this.successDisplayTimeout = window.setTimeout(() => {\n this.showRedirectMessage = true;\n this.loadLottieAnimation();\n }, 1500);\n\n setTimeout(() => {\n let redirectUrl = sessionState.data?.itemInformation?.redirectSuccess;\n if (redirectUrl) {\n this.successRedirect.emit({ redirectUrl });\n this.stopLoaderAnimation();\n }\n }, this.timeToRedirect);\n }\n }\n\n componentDidLoad() {\n window.addEventListener('resize', this.handleResize);\n if (!sessionState.data?.itemInformation?.redirectSuccess || this.showRedirectMessage) {\n this.loadLottieAnimation();\n }\n }\n\n disconnectedCallback() {\n if (this.unsubscribeCurrentLocaleStore) {\n this.unsubscribeCurrentLocaleStore();\n }\n if (this.successDisplayTimeout) {\n clearTimeout(this.successDisplayTimeout);\n }\n window.removeEventListener('resize', this.handleResize);\n this.stopLoaderAnimation();\n }\n\n private handleResize = () => {\n this.breakpoint = getBreakpoint(window.innerWidth);\n };\n private loadLottieAnimation = async () => {\n try {\n const lottie = await import('lottie-web');\n const animationData = await fetch(getAssetURL(`loader-redirect1.json`));\n const animationJson = await animationData.json();\n\n if (this.lottieContainer) {\n this.lottieAnimation = lottie.default.loadAnimation({\n container: this.lottieContainer,\n renderer: 'svg',\n loop: true,\n autoplay: true,\n animationData: animationJson,\n });\n } else {\n this.startLoaderAnimation();\n }\n } catch (error) {\n this.startLoaderAnimation();\n }\n };\n\n private startLoaderAnimation = () => {\n const duration = 3000;\n const interval = 50;\n const increment = (interval / duration) * 100;\n\n this.progressInterval = window.setInterval(() => {\n this.loaderProgress = Math.min(this.loaderProgress + increment, 100);\n if (this.loaderProgress >= 100) {\n this.stopLoaderAnimation();\n }\n }, interval);\n };\n\n private stopLoaderAnimation = () => {\n if (this.progressInterval) {\n clearInterval(this.progressInterval);\n this.progressInterval = undefined;\n }\n if (this.lottieAnimation) {\n this.lottieAnimation.destroy();\n this.lottieAnimation = undefined;\n }\n };\n\n private handleDownloadReceipt = async () => {\n try {\n await PDFGenerator.generateAndDownloadReceipt({\n paymentMethod:\n this.typePaymentMethod === PAYMENT_METHOD_ENUM.CARD\n ? this.textPaymentMethodCard()\n : this.paymentMethodName,\n ...(this.typePaymentMethod === PAYMENT_METHOD_ENUM.BANK_TRANSFER && { bank: this.bank }),\n ...(this.typePaymentMethod === PAYMENT_METHOD_ENUM.CARD && {\n cardBrand: this.applyStartCaseToBrand(sessionState.data.cardInformation?.brand || ''),\n }),\n ...(this.typePaymentMethod === PAYMENT_METHOD_ENUM.CARD && {\n cardLastFour: this.cardLastFour ?? sessionState.data.cardInformation?.lastFour,\n }),\n paymentDate:\n formatDateTime(this.getPaymentDate()) || formatDateTime(new Date().toISOString()),\n email: sessionState?.data?.userInformation?.email || '',\n referenceNumber: this.referenceNumber,\n productTitle: sessionState?.data?.itemInformation?.title || '',\n subtotal: this.getFormattedSubtotal(),\n total: this.getFormattedTotal(),\n currency: sessionState?.data?.pricing?.currency || ' ',\n installments:\n sessionState?.data?.pricing?.installments &&\n sessionState?.data?.cardInformation?.installments?.selectedInstallment\n ? `${getInstallmentLabelSummary(\n sessionState.data?.cardInformation?.installments?.selectedInstallment?.installment,\n getRecalculatedInstallmentAmount(\n sessionState.data?.cardInformation?.installments?.selectedInstallment\n ?.installmentAmount || 0,\n ),\n sessionState.data?.pricing?.currency,\n sessionState.data?.cardInformation?.installments?.selectedInstallment?.cft,\n sessionState.data?.cardInformation?.installments?.selectedInstallment?.model,\n )}\\n( ${I18nService.translate('processing.purchaseTotal')}: ${this.getFormattedTotal()} )${\n sessionState.data.cardInformation?.installments?.installments.find(\n installment =>\n installment.installment ===\n sessionState.data.cardInformation?.installments?.selectedInstallment\n ?.installment,\n )?.model === ENUM_INSTALLMENT_MODEL.CUSTOMER_FINANCED\n ? `\\n${I18nService.translate('installments.interest')}`\n : ''\n }`\n : '',\n discountAmount: this.getFormattedDiscountAmount(),\n trialPeriodDays:\n this.trialPeriodDays || sessionState.data?.itemInformation?.trial?.trialPeriodDays,\n debitDay: this.debitDay || sessionState.data?.itemInformation?.debitDay,\n planAmount: this.getFormattedSubtotal(this.planAmount),\n trialEndDate: this.hasFreeTrial() ? this.getTrialEndDateFormatted() : undefined,\n debitDate: this.hasDebitDay() ? this.getDebitDateFormatted() : undefined,\n isBankTransfer: this.typePaymentMethod === PAYMENT_METHOD_ENUM.BANK_TRANSFER,\n });\n } catch (error) {\n console.error('Error downloading receipt:', error);\n }\n };\n\n private getFormattedDiscountAmount = () => {\n if (sessionState?.data?.pricing?.discountAmount > 0) {\n const formattedAmount = formatAmount(\n sessionState.data?.pricing?.discountAmount,\n sessionState.data?.pricing?.currency,\n );\n return `-${formattedAmount}`;\n }\n return undefined;\n };\n\n private getFormattedSubtotal = (planAmount: number = 0 || null) => {\n return formatAmount(\n planAmount || sessionState?.data?.pricing?.subtotal,\n sessionState?.data?.pricing?.currency,\n );\n };\n\n private getFormattedTotal = () => {\n if (this.trialPeriodDays > 0) {\n return formatAmount(0, sessionState?.data?.pricing?.currency);\n }\n return formatAmount(sessionState?.data?.pricing?.total, sessionState?.data?.pricing?.currency);\n };\n\n private hasFreeTrial = () => {\n return (\n sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n sessionState.data?.itemInformation?.trial?.trialPeriodDays &&\n sessionState.data?.itemInformation?.trial?.trialPeriodDays > 0\n );\n };\n\n private hasDebitDay = () => {\n const debitDay = sessionState.data?.itemInformation?.debitDay;\n return debitDay && debitDay > 0;\n };\n\n private getTrialEndDateFormatted = () => {\n const trialEndsAt = sessionState.data?.itemInformation?.trial?.trialPeriodEndsAt;\n if (!trialEndsAt) return '';\n\n const date = new Date(trialEndsAt);\n const currentLanguage = I18nService.getCurrentLanguage();\n const locale =\n currentLanguage === 'es' ? 'es-ES' : currentLanguage === 'pt' ? 'pt-BR' : 'en-US';\n\n if (currentLanguage === 'en') {\n return `${date.toLocaleDateString(locale, { month: 'long' })} ${date.getDate()}`;\n } else {\n return `${date.getDate()} de ${date.toLocaleDateString(locale, { month: 'long' })}`;\n }\n };\n\n private getDebitDateFormatted = () => {\n const debitDay = sessionState.data?.itemInformation?.debitDay;\n if (!debitDay || debitDay <= 0) return '';\n\n const today = new Date();\n const targetDate = new Date(today);\n const currentLanguage = I18nService.getCurrentLanguage();\n const locale =\n currentLanguage === 'es' ? 'es-ES' : currentLanguage === 'pt' ? 'pt-BR' : 'en-US';\n if (debitDay < today.getDate()) {\n targetDate.setMonth(today.getMonth() + 1);\n }\n targetDate.setDate(debitDay);\n\n while (targetDate.getDate() !== debitDay) {\n targetDate.setDate(targetDate.getDate() - 1);\n }\n\n if (currentLanguage === 'en') {\n return `${targetDate.toLocaleDateString(locale, { month: 'long' })} ${targetDate.getDate()}`;\n } else {\n return `${targetDate.getDate()} de ${targetDate.toLocaleDateString(locale, { month: 'long' })}`;\n }\n };\n\n private textPaymentMethodCard = () => {\n const cardBrand = sessionState.data?.cardInformation?.brand;\n const cardLastFour = this.cardLastFour || sessionState?.data?.cardInformation?.lastFour;\n\n const formattedBrand = this.applyStartCaseToBrand(cardBrand || '');\n return cardBrand && cardLastFour ? `${formattedBrand} - ${cardLastFour}` : formattedBrand;\n };\n\n render() {\n const hasRedirect = sessionState.data?.itemInformation?.redirectSuccess;\n\n return (\n <rebill-checkout-single-column>\n <div class=\"success-page__success-content\">\n <rebill-typography variant=\"h3\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {hasRedirect && this.showRedirectMessage\n ? I18nService.translate('processing.redirectMessage')\n : I18nService.translate('processing.successTitle')}\n </rebill-typography>\n\n {hasRedirect && this.showRedirectMessage ? (\n <div class=\"redirect-message\">\n <div class=\"success-page__lottie-container\">\n <div ref={el => (this.lottieContainer = el)} class=\"lottie-animation\"></div>\n </div>\n </div>\n ) : (\n <div class=\"success-page__success-icon\">\n <svg\n width={isBreakpointBelow(this.breakpoint, BREAKPOINT_ENUM.DESKTOP) ? '64' : '96'}\n height={isBreakpointBelow(this.breakpoint, BREAKPOINT_ENUM.DESKTOP) ? '64' : '96'}\n viewBox=\"0 0 96 96\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7.99219 47.998C7.99219 25.9067 25.9008 7.99805 47.9922 7.99805C70.0836 7.99805 87.9922 25.9067 87.9922 47.998C87.9922 70.0894 70.0836 87.998 47.9922 87.998C25.9008 87.998 7.99219 70.0894 7.99219 47.998ZM61.5401 39.2645C62.2396 38.4096 62.1136 37.1496 61.2587 36.4501C60.4038 35.7507 59.1437 35.8767 58.4443 36.7316L41.8437 57.0211L35.4064 50.5838C34.6254 49.8028 33.359 49.8028 32.578 50.5838C31.7969 51.3649 31.7969 52.6312 32.578 53.4123L40.578 61.4123C40.9775 61.8118 41.5275 62.0237 42.0918 61.9956C42.6562 61.9674 43.1823 61.7019 43.5401 61.2645L61.5401 39.2645Z\"\n fill=\"#35B093\"\n />\n </svg>\n </div>\n )}\n\n {/* Payment Details Card */}\n <div class=\"success-page__info-card\">\n <div class=\"success-page__card-row\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.SECONDARY}>\n {I18nService.translate('processing.paymentMethod')}\n </rebill-typography>\n <div class=\"success-page__card-value\">\n <div class=\"success-page__payment-method-display\">\n {this.typePaymentMethod === PAYMENT_METHOD_ENUM.CARD && (\n <>\n <rebill-card-icon\n card-brand={sessionState.data?.cardInformation?.brand || ''}\n />\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {this.textPaymentMethodCard()}\n </rebill-typography>\n </>\n )}\n {this.typePaymentMethod === PAYMENT_METHOD_ENUM.BANK_TRANSFER && (\n <div style={{ display: 'flex', alignItems: 'center', gap: '8px' }}>\n <div style={{ display: 'flex', alignItems: 'center', gap: '8px' }}>\n {this.getPaymentMethodConfig(PAYMENT_METHOD_ENUM.BANK_TRANSFER).icons.map(\n iconName => {\n return <rebill-icon name={iconName} size=\"24px\" />;\n },\n )}\n </div>\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {I18nService.translate('paymentMethods.bank_transfer')}\n </rebill-typography>\n </div>\n )}\n </div>\n </div>\n </div>\n {sessionState?.data?.pricing?.installments &&\n sessionState?.data?.cardInformation?.installments?.selectedInstallment && (\n <div>\n <div class=\"success-page__card-row\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.SECONDARY}>\n {I18nService.translate('summary.installments')}\n </rebill-typography>\n <div\n style={{\n display: 'flex',\n flexDirection: 'column',\n gap: '10px',\n alignItems: 'end',\n }}\n >\n <rebill-typography\n variant=\"body2\"\n color={COLORS_ENUM.PRIMARY_DARK_TEXT}\n style={{ textAlign: 'end' }}\n >\n {getInstallmentLabelSummary(\n sessionState.data?.cardInformation?.installments?.selectedInstallment\n ?.installment,\n getRecalculatedInstallmentAmount(\n sessionState.data?.cardInformation?.installments?.selectedInstallment\n ?.installmentAmount || 0,\n ),\n sessionState.data?.pricing?.currency,\n sessionState.data?.cardInformation?.installments?.selectedInstallment\n ?.cft,\n sessionState.data?.cardInformation?.installments?.selectedInstallment\n ?.model,\n )}\n </rebill-typography>\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {`( ${I18nService.translate('processing.purchaseTotal')}: ${this.getFormattedTotal()} )`}\n </rebill-typography>\n {sessionState.data.cardInformation?.installments?.installments.find(\n installment =>\n installment.installment ===\n sessionState.data.cardInformation?.installments?.selectedInstallment\n ?.installment,\n )?.model === ENUM_INSTALLMENT_MODEL.CUSTOMER_FINANCED && (\n <rebill-typography\n variant=\"italic\"\n color={COLORS_ENUM.SECONDARY}\n style={{ textAlign: 'end' }}\n >\n {`${I18nService.translate('installments.interest')}`}\n </rebill-typography>\n )}\n </div>\n </div>\n </div>\n )}\n <div class=\"success-page__card-row\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.SECONDARY}>\n {I18nService.translate('processing.paymentDate')}\n </rebill-typography>\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {formatDateTime(\n this.paymentDate || this.getPaymentDate() || sessionState.createdAt,\n ) || ''}\n </rebill-typography>\n </div>\n <div class=\"success-page__card-row\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.SECONDARY}>\n {I18nService.translate('processing.paymentEmail')}\n </rebill-typography>\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {sessionState?.data?.userInformation?.email}\n </rebill-typography>\n </div>\n <div class=\"success-page__card-row\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.SECONDARY}>\n {I18nService.translate('processing.paymentReference')}\n </rebill-typography>\n <rebill-typography\n variant=\"body2\"\n color={COLORS_ENUM.PRIMARY_DARK_TEXT}\n class=\"success-page__reference-number\"\n >\n {this.referenceNumber || ''}\n </rebill-typography>\n </div>\n </div>\n\n {/* Purchase Details Card */}\n <div class=\"success-page__info-card\">\n <rebill-typography variant=\"subtitle-bold\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {I18nService.translate('processing.purchaseDetails')}\n </rebill-typography>\n <div class=\"success-page__card-row\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.SECONDARY}>\n {I18nService.translate('processing.purchaseDetail')}\n </rebill-typography>\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {sessionState?.data?.itemInformation?.title || ''}\n </rebill-typography>\n </div>\n {!this.trialPeriodDays && (\n <div class=\"success-page__card-row\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.SECONDARY}>\n {I18nService.translate('processing.purchaseSubtotal')}\n </rebill-typography>\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {this.getFormattedSubtotal()}\n </rebill-typography>\n </div>\n )}\n {sessionState?.data?.pricing?.discountAmount > 0 && (\n <div class=\"success-page__card-row\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.SECONDARY}>\n {I18nService.translate('summary.discount')}\n </rebill-typography>\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {this.getFormattedDiscountAmount()}\n </rebill-typography>\n </div>\n )}\n <div class=\"success-page__card-row\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.SECONDARY}>\n {I18nService.translate('processing.purchaseMontoTotal')}\n </rebill-typography>\n <div class=\"success-page__total-amount-container\">\n {this.trialPeriodDays > 0 && (\n <div class=\"success-page__trial-pill\">\n <rebill-typography\n variant=\"body2\"\n align=\"center\"\n color={COLORS_ENUM.GREEN_TEXT}\n >\n {I18nService.translate('processing.trialPill', {\n days: this.trialPeriodDays,\n count: this.trialPeriodDays,\n })}\n </rebill-typography>\n </div>\n )}\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {this.getFormattedTotal()}\n </rebill-typography>\n </div>\n </div>\n {(this.trialPeriodDays || this.hasDebitDay()) && (\n <div class=\"success-page__card-divider\"></div>\n )}\n\n {/* Next Charge Section */}\n {(this.hasFreeTrial() || this.hasDebitDay()) && (\n <div class=\"success-page__next-charge-section\">\n <div class=\"success-page__next-charge-header\">\n <rebill-typography variant=\"subtitle-bold\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {I18nService.translate('processing.nextCharge')}\n </rebill-typography>\n <rebill-typography variant=\"subtitle-bold\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {I18nService.translate('processing.onDate', {\n date: this.hasFreeTrial()\n ? this.getTrialEndDateFormatted()\n : this.getDebitDateFormatted(),\n })}\n </rebill-typography>\n </div>\n <div class=\"success-page__card-row\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {this.hasFreeTrial() ? I18nService.translate('processing.atEndOfTrial') : ''}\n </rebill-typography>\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {this.getFormattedSubtotal(this.planAmount)}{' '}\n {I18nService.translate('processing.perMonth')}\n </rebill-typography>\n </div>\n </div>\n )}\n <div class=\"success-page__card-divider\"></div>\n <div class=\"success-page__download-container\">\n <svg\n class=\"download-icon\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M13.498 9.83333V12.1667C13.498 12.903 12.9011 13.5 12.1647 13.5H3.83138C3.095 13.5 2.49805 12.903 2.49805 12.1667V9.83333M7.99804 10V2.5M7.99804 10L5.66471 7.66667M7.99804 10L10.3314 7.66667\"\n stroke=\"currentColor\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n <rebill-button\n type=\"button\"\n variant=\"download\"\n size=\"small\"\n onClick={this.handleDownloadReceipt}\n >\n <rebill-typography variant=\"overline\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {I18nService.translate('processing.download')}\n </rebill-typography>\n </rebill-button>\n </div>\n\n {/* Contact Info */}\n <div class=\"success-page__contact-info\">\n <rebill-typography variant=\"information-text\" color={COLORS_ENUM.SECONDARY}>\n {I18nService.translate('processing.downloadDescription')}\n </rebill-typography>\n </div>\n </div>\n </div>\n </rebill-checkout-single-column>\n );\n }\n}\n",":host {\n display: block;\n}\n\n.inputs-container {\n display: flex;\n flex-direction: column;\n gap: 16px;\n width: 100%;\n}\n.customer-exists {\n display: flex;\n justify-content: flex-end;\n margin-bottom: 16px;\n}\n","import { Component, Event, EventEmitter, h, Host, Listen, Prop } from '@stencil/core';\nimport { api } from '../../../api';\nimport { I18nService } from '../../../i18n/i18n.service';\nimport { sessionState, SessionStore } from '../../../store/session.store';\n\n@Component({\n tag: 'user-information',\n styleUrl: 'user-information.css',\n shadow: false,\n})\nexport class UserInformation {\n @Prop() userInformation: {\n email?: string;\n fullName?: string;\n countryCode?: string;\n phoneNumber?: {\n number: string;\n countryCode: string;\n };\n } = {\n email: '',\n fullName: '',\n countryCode: '',\n };\n\n @Prop() errors: {\n email?: string;\n fullName?: string;\n } | null = null;\n\n @Prop() customerExists: boolean = false;\n @Prop() disabled: boolean = false;\n @Event() onRebillAccountClick: EventEmitter<boolean>;\n\n private translateError(errorKey: string | undefined): string {\n if (!errorKey) return '';\n if (errorKey.includes('validation.') || errorKey.includes('paymentErrors.')) {\n return I18nService.translate(errorKey);\n }\n return errorKey;\n }\n\n @Listen('input')\n handleInputChange(event: CustomEvent<{ id: string; value: string }>) {\n if (!event.detail) return;\n\n const { id, value } = event.detail;\n SessionStore.setUserInformation({ [id]: value });\n }\n\n @Listen('blur')\n handleBlur(event: CustomEvent<{ id: string; value: string }>) {\n if (!event.detail) return;\n\n const { id, value } = event.detail;\n SessionStore.setUserInformation({ [id]: value });\n }\n\n private getCardLabels() {\n const labels = [];\n\n if (sessionState.data.prefilledData.email) {\n labels.push({\n label: I18nService.translate('userInformation.emailPlaceholder'),\n value: sessionState.data.prefilledData.email,\n });\n SessionStore.setUserInformation({\n ...sessionState.data.userInformation,\n email: sessionState.data.prefilledData.email,\n });\n }\n\n if (sessionState.data.prefilledData.fullName) {\n labels.push({\n label: I18nService.translate('userInformation.fullNamePlaceholder'),\n value: sessionState.data.prefilledData.fullName,\n });\n SessionStore.setUserInformation({\n ...sessionState.data.userInformation,\n fullName: sessionState.data.prefilledData.fullName,\n });\n }\n\n return labels;\n }\n private async handleRebillAccountClick() {\n api.otp.generate(sessionState.data.sessionId, {\n email: sessionState.data.userInformation.email,\n });\n this.onRebillAccountClick.emit(true);\n }\n\n private renderInputs() {\n const hasPrefilledEmail = sessionState.data.prefilledData.email;\n const hasPrefilledName = sessionState.data.prefilledData.fullName;\n\n const inputs = [];\n\n if (!hasPrefilledEmail) {\n inputs.push(\n <rebill-input-text\n id=\"email\"\n variant=\"floating\"\n label={I18nService.translate('userInformation.emailPlaceholder')}\n placeholder={I18nService.translate('userInformation.emailPlaceholder')}\n left-icon=\"email\"\n clearable={true}\n disabled={this.disabled}\n error={this.translateError(this.errors?.email)}\n />,\n );\n }\n\n if (!hasPrefilledName) {\n inputs.push(\n <rebill-input-text\n id=\"fullName\"\n variant=\"floating\"\n label={I18nService.translate('userInformation.fullNamePlaceholder')}\n placeholder={I18nService.translate('userInformation.fullNamePlaceholder')}\n disabled={this.disabled}\n error={this.translateError(this.errors?.fullName)}\n />,\n );\n }\n\n return inputs.length > 0 ? (\n <div\n class=\"inputs-container\"\n style={{\n marginTop: inputs.length > 0 && (hasPrefilledEmail || hasPrefilledName) ? '1rem' : '0',\n }}\n >\n {inputs}\n </div>\n ) : null;\n }\n\n render() {\n const customerExistsButton = (\n <div class=\"customer-exists\">\n <rebill-button\n style={{\n visibility: this.customerExists ? 'visible' : 'hidden',\n opacity: this.customerExists ? '1' : '0',\n transition: 'opacity 0.3s ease-in-out',\n }}\n variant=\"text\"\n size=\"small\"\n onClick={() => this.handleRebillAccountClick()}\n icon=\"lock\"\n >\n {I18nService.translate('userInformation.rebillAccount')}\n <rebill-icon name=\"arrow-right\" />\n </rebill-button>\n </div>\n );\n\n const hasPrefilledEmail = sessionState.data.prefilledData.email;\n const hasPrefilledName = sessionState.data.prefilledData.fullName;\n const hasAnyPrefilled = hasPrefilledEmail || hasPrefilledName;\n\n return (\n <Host>\n {customerExistsButton}\n {hasAnyPrefilled && (\n <rebill-card\n cardTitle={I18nService.translate('userInformation.personalInformation')}\n cardLabels={this.getCardLabels()}\n />\n )}\n {this.renderInputs()}\n </Host>\n );\n }\n}\n"],"names":["f","m","u","r","i","BREAKPOINT_ENUM","PLAN_FREQUENCY_ENUM","I18nService","sessionState","SESSION_ITEM_TYPE_ENUM","h","isBreakpointBelow","formatAmount","getInstallmentDescription","COLORS_ENUM","SESSION_DISCOUNT_TYPE_ENUM","i18n","copyToClipboard","createCountdownTimer","api","SessionStore","PAYMENT_METHOD_ENUM","getCountryPaymentMethods","getBreakpoint","getAssetURL","PDFGenerator","formatDateTime","getInstallmentLabelSummary","getRecalculatedInstallmentAmount","ENUM_INSTALLMENT_MODEL","Host"],"mappings":"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","x_google_ignoreList":[0,1]}
1
+ {"version":3,"file":"otp-component.rebill-modal-overlay.rebill-mode-sandbox.rebill-mode-sandbox-mobile.rebill-summary.success-page.user-information.entry.cjs.js","sources":["node_modules/.pnpm/number-flow@0.5.8/node_modules/number-flow/dist/lite-BTIaQdTe.mjs","node_modules/.pnpm/number-flow@0.5.8/node_modules/number-flow/dist/index.mjs","src/components/checkout/summary/summary.css?tag=rebill-summary","src/components/checkout/summary/summary.tsx","src/components/shared/mode-sandbox/mode-sandbox.css?tag=rebill-mode-sandbox","src/components/shared/mode-sandbox/mode-sandbox.tsx","src/components/checkout/otp/otp.css?tag=otp-component","src/components/checkout/otp/otp.tsx","src/components/shared/modal-overlay/modal-overlay.css?tag=rebill-modal-overlay","src/components/shared/modal-overlay/modal-overlay.tsx","src/components/shared/mode-sandbox/mode-sandbox-mobile.css?tag=rebill-mode-sandbox-mobile","src/components/shared/mode-sandbox/mode-sandbox-mobile.tsx","src/components/checkout/card-success-page/success-page.css?tag=success-page","src/components/checkout/card-success-page/success-page.tsx","src/components/checkout/user-information/user-information.css?tag=user-information","src/components/checkout/user-information/user-information.tsx"],"sourcesContent":["import { BROWSER as _ } from \"esm-env\";\nimport \"./plugins.mjs\";\nconst u = (n, t, e) => {\n const i = document.createElement(n), [s, a] = Array.isArray(t) ? [void 0, t] : [t, e];\n return s && Object.assign(i, s), a == null || a.forEach((r) => i.appendChild(r)), i;\n}, F = (n, t) => {\n var e;\n return t === \"left\" ? n.offsetLeft : (((e = n.offsetParent instanceof HTMLElement ? n.offsetParent : null) == null ? void 0 : e.offsetWidth) ?? 0) - n.offsetWidth - n.offsetLeft;\n}, H = (n) => n.offsetWidth > 0 && n.offsetHeight > 0, st = (n, t) => {\n _ && !customElements.get(n) && customElements.define(n, t);\n};\nfunction X(n, t, { reverse: e = !1 } = {}) {\n const i = n.length;\n for (let s = e ? i - 1 : 0; e ? s >= 0 : s < i; e ? s-- : s++)\n t(n[s], s);\n}\nfunction nt(n, t, e, i) {\n const s = t.formatToParts(n);\n e && s.unshift({ type: \"prefix\", value: e }), i && s.push({ type: \"suffix\", value: i });\n const a = [], r = [], o = [], c = [], d = {}, p = (h) => `${h}:${d[h] = (d[h] ?? -1) + 1}`;\n let x = \"\", g = !1, y = !1;\n for (const h of s) {\n x += h.value;\n const l = h.type === \"minusSign\" || h.type === \"plusSign\" ? \"sign\" : h.type;\n l === \"integer\" ? (g = !0, r.push(...h.value.split(\"\").map((C) => ({ type: l, value: parseInt(C) })))) : l === \"group\" ? r.push({ type: l, value: h.value }) : l === \"decimal\" ? (y = !0, o.push({ type: l, value: h.value, key: p(l) })) : l === \"fraction\" ? o.push(...h.value.split(\"\").map((C) => ({\n type: l,\n value: parseInt(C),\n key: p(l),\n pos: -1 - d[l]\n }))) : (g || y ? c : a).push({\n type: l,\n value: h.value,\n key: p(l)\n });\n }\n const T = [];\n for (let h = r.length - 1; h >= 0; h--) {\n const l = r[h];\n T.unshift(l.type === \"integer\" ? {\n ...l,\n key: p(l.type),\n pos: d[l.type]\n } : {\n ...l,\n key: p(l.type)\n });\n }\n return {\n pre: a,\n integer: T,\n fraction: o,\n post: c,\n valueAsString: x,\n value: typeof n == \"string\" ? parseFloat(n) : n\n };\n}\nconst I = String.raw, V = String.raw, O = _ && (() => {\n try {\n document.createElement(\"div\").animate({ opacity: 0 }, { easing: \"linear(0, 1)\" });\n } catch {\n return !1;\n }\n return !0;\n})(), z = _ && typeof CSS < \"u\" && CSS.supports && CSS.supports(\"line-height\", \"mod(1,1)\"), A = _ && typeof matchMedia < \"u\" ? matchMedia(\"(prefers-reduced-motion: reduce)\") : null, $ = \"--_number-flow-d-opacity\", U = \"--_number-flow-d-width\", S = \"--_number-flow-dx\", j = \"--_number-flow-d\", Y = (() => {\n try {\n return CSS.registerProperty({\n name: $,\n syntax: \"<number>\",\n inherits: !1,\n initialValue: \"0\"\n }), CSS.registerProperty({\n name: S,\n syntax: \"<length>\",\n inherits: !0,\n initialValue: \"0px\"\n }), CSS.registerProperty({\n name: U,\n syntax: \"<number>\",\n inherits: !1,\n initialValue: \"0\"\n }), CSS.registerProperty({\n name: j,\n syntax: \"<number>\",\n inherits: !0,\n initialValue: \"0\"\n }), !0;\n } catch {\n return !1;\n }\n})(), P = \"var(--number-flow-char-height, 1em)\", f = \"var(--number-flow-mask-height, 0.25em)\", k = `calc(${f} / 2)`, E = \"var(--number-flow-mask-width, 0.5em)\", m = `calc(${E} / var(--scale-x))`, w = \"#000 0, transparent 71%\", M = V`:host{display:inline-block;direction:ltr;white-space:nowrap;isolation:isolate;line-height:${P} !important}.number,.number__inner{display:inline-block;transform-origin:left top}:host([data-will-change]) :is(.number,.number__inner,.section,.digit,.digit__num,.symbol){will-change:transform}.number{--scale-x:calc(1 + var(${U}) / var(--width));transform:translateX(var(${S})) scaleX(var(--scale-x));margin:0 calc(-1 * ${E});position:relative;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 ${m},#000 calc(100% - ${m}),transparent ),linear-gradient(to bottom,transparent 0,#000 ${f},#000 calc(100% - ${f}),transparent 100% ),radial-gradient(at bottom right,${w}),radial-gradient(at bottom left,${w}),radial-gradient(at top left,${w}),radial-gradient(at top right,${w});-webkit-mask-size:100% calc(100% - ${f} * 2),calc(100% - ${m} * 2) 100%,${m} ${f},${m} ${f},${m} ${f},${m} ${f};-webkit-mask-position:center,center,top left,top right,bottom right,bottom left;-webkit-mask-repeat:no-repeat}.number__inner{padding:${k} ${E};transform:scaleX(calc(1 / var(--scale-x))) translateX(calc(-1 * var(${S})))}:host > :not(.number){z-index:5}.section,.symbol{display:inline-block;position:relative;isolation:isolate}.section::after{content:'\\200b';display:inline-block}.section--justify-left{transform-origin:center left}.section--justify-right{transform-origin:center right}.section > [inert],.symbol > [inert]{margin:0 !important;position:absolute !important;z-index:-1}.digit{display:inline-block;position:relative;--c:var(--current) + var(${j})}.digit__num,.number .section::after{padding:${k} 0}.digit__num{display:inline-block;--offset-raw:mod(var(--length) + var(--n) - mod(var(--c),var(--length)),var(--length));--offset:calc( var(--offset-raw) - var(--length) * round(down,var(--offset-raw) / (var(--length) / 2),1) );--y:clamp(-100%,var(--offset) * 100%,100%);transform:translateY(var(--y))}.digit__num[inert]{position:absolute;top:0;left:50%;transform:translateX(-50%) translateY(var(--y))}.digit:not(.is-spinning) .digit__num[inert]{display:none}.symbol__value{display:inline-block;mix-blend-mode:plus-lighter;white-space:pre}.section--justify-left .symbol > [inert]{left:0}.section--justify-right .symbol > [inert]{right:0}.animate-presence{opacity:calc(1 + var(${$}))}`, G = _ ? HTMLElement : class {\n}, K = V`:host{display:inline-block;direction:ltr;white-space:nowrap;line-height:${P} !important}span{display:inline-block}:host([data-will-change]) span{will-change:transform}.number,.digit{padding:${k} 0}.symbol{white-space:pre}`, Z = (n) => `<span class=\"${n.type === \"integer\" || n.type === \"fraction\" ? \"digit\" : \"symbol\"}\" part=\"${n.type === \"integer\" || n.type === \"fraction\" ? `digit ${n.type}-digit` : `symbol ${n.type}`}\">${n.value}</span>`, v = (n, t) => `<span part=\"${t}\">${n.reduce((e, i) => e + Z(i), \"\")}</span>`, at = (n) => (\n // shadowroot=\"open\" non-standard attribute for old Chrome:\n I`<template shadowroot=\"open\" shadowrootmode=\"open\"\n\t\t\t><style>\n\t\t\t\t${K}</style\n\t\t\t><span role=\"img\" aria-label=\"${n.valueAsString}\"\n\t\t\t\t>${v(n.pre, \"left\")}<span part=\"number\" class=\"number\"\n\t\t\t\t\t>${v(n.integer, \"integer\")}${v(n.fraction, \"fraction\")}</span\n\t\t\t\t>${v(n.post, \"right\")}</span\n\t\t\t></template\n\t\t><span\n\t\t\tstyle=\"font-kerning: none; display: inline-block; line-height: ${P} !important; padding: ${f} 0;\"\n\t\t\t>${n.valueAsString}</span\n\t\t>`\n), q = z && O && Y;\nlet b;\nclass J extends G {\n constructor() {\n super(), this.created = !1, this.batched = !1;\n const { animated: t, ...e } = this.constructor.defaultProps;\n this._animated = this.computedAnimated = t, Object.assign(this, e);\n }\n get animated() {\n return this._animated;\n }\n set animated(t) {\n var e;\n this.animated !== t && (this._animated = t, (e = this.shadowRoot) == null || e.getAnimations().forEach((i) => i.finish()));\n }\n /**\n * @internal\n */\n set data(t) {\n var o;\n if (t == null)\n return;\n const { pre: e, integer: i, fraction: s, post: a, value: r } = t;\n if (this.created) {\n const c = this._data;\n this._data = t, this.computedTrend = typeof this.trend == \"function\" ? this.trend(c.value, r) : this.trend, this.computedAnimated = q && this._animated && (!this.respectMotionPreference || !(A != null && A.matches)) && // https://github.com/barvian/number-flow/issues/9\n H(this), (o = this.plugins) == null || o.forEach((d) => {\n var p;\n return (p = d.onUpdate) == null ? void 0 : p.call(d, t, c, this);\n }), this.batched || this.willUpdate(), this._pre.update(e), this._num.update({ integer: i, fraction: s }), this._post.update(a), this.batched || this.didUpdate();\n } else {\n this._data = t, this.attachShadow({ mode: \"open\" });\n try {\n this._internals ?? (this._internals = this.attachInternals()), this._internals.role = \"img\";\n } catch {\n }\n if (typeof CSSStyleSheet < \"u\" && this.shadowRoot.adoptedStyleSheets)\n b || (b = new CSSStyleSheet(), b.replaceSync(M)), this.shadowRoot.adoptedStyleSheets = [b];\n else {\n const c = document.createElement(\"style\");\n c.textContent = M, this.shadowRoot.appendChild(c);\n }\n this._pre = new N(this, e, {\n justify: \"right\",\n part: \"left\"\n }), this.shadowRoot.appendChild(this._pre.el), this._num = new Q(this, i, s), this.shadowRoot.appendChild(this._num.el), this._post = new N(this, a, {\n justify: \"left\",\n part: \"right\"\n }), this.shadowRoot.appendChild(this._post.el), this.created = !0;\n }\n try {\n this._internals.ariaLabel = t.valueAsString;\n } catch {\n }\n }\n /**\n * @internal\n */\n willUpdate() {\n this._pre.willUpdate(), this._num.willUpdate(), this._post.willUpdate();\n }\n /**\n * @internal\n */\n didUpdate() {\n if (!this.computedAnimated)\n return;\n this._abortAnimationsFinish ? this._abortAnimationsFinish.abort() : this.dispatchEvent(new Event(\"animationsstart\")), this._pre.didUpdate(), this._num.didUpdate(), this._post.didUpdate();\n const t = new AbortController();\n Promise.all(this.shadowRoot.getAnimations().map((e) => e.finished)).then(() => {\n t.signal.aborted || (this.dispatchEvent(new Event(\"animationsfinish\")), this._abortAnimationsFinish = void 0);\n }), this._abortAnimationsFinish = t;\n }\n}\nJ.defaultProps = {\n transformTiming: {\n duration: 900,\n // Make sure to keep this minified:\n easing: \"linear(0,.005,.019,.039,.066,.096,.129,.165,.202,.24,.278,.316,.354,.39,.426,.461,.494,.526,.557,.586,.614,.64,.665,.689,.711,.731,.751,.769,.786,.802,.817,.831,.844,.856,.867,.877,.887,.896,.904,.912,.919,.925,.931,.937,.942,.947,.951,.955,.959,.962,.965,.968,.971,.973,.976,.978,.98,.981,.983,.984,.986,.987,.988,.989,.99,.991,.992,.992,.993,.994,.994,.995,.995,.996,.996,.9963,.9967,.9969,.9972,.9975,.9977,.9979,.9981,.9982,.9984,.9985,.9987,.9988,.9989,1)\"\n },\n spinTiming: void 0,\n opacityTiming: { duration: 450, easing: \"ease-out\" },\n animated: !0,\n trend: (n, t) => Math.sign(t - n),\n respectMotionPreference: !0,\n plugins: void 0,\n digits: void 0\n};\nclass Q {\n constructor(t, e, i, { className: s, ...a } = {}) {\n this.flow = t, this._integer = new L(t, e, {\n justify: \"right\",\n part: \"integer\"\n }), this._fraction = new L(t, i, {\n justify: \"left\",\n part: \"fraction\"\n }), this._inner = u(\"span\", {\n className: \"number__inner\"\n }, [this._integer.el, this._fraction.el]), this.el = u(\"span\", {\n ...a,\n part: \"number\",\n className: `number ${s ?? \"\"}`\n }, [this._inner]);\n }\n willUpdate() {\n this._prevWidth = this.el.offsetWidth, this._prevLeft = this.el.getBoundingClientRect().left, this._integer.willUpdate(), this._fraction.willUpdate();\n }\n update({ integer: t, fraction: e }) {\n this._integer.update(t), this._fraction.update(e);\n }\n didUpdate() {\n const t = this.el.getBoundingClientRect();\n this._integer.didUpdate(), this._fraction.didUpdate();\n const e = this._prevLeft - t.left, i = this.el.offsetWidth, s = this._prevWidth - i;\n this.el.style.setProperty(\"--width\", String(i)), this.el.animate({\n [S]: [`${e}px`, \"0px\"],\n [U]: [s, 0]\n }, {\n ...this.flow.transformTiming,\n composite: \"accumulate\"\n });\n }\n}\nclass W {\n constructor(t, e, { justify: i, className: s, ...a }, r) {\n this.flow = t, this.children = /* @__PURE__ */ new Map(), this.onCharRemove = (c) => () => {\n this.children.delete(c);\n }, this.justify = i;\n const o = e.map((c) => this.addChar(c).el);\n this.el = u(\"span\", {\n ...a,\n className: `section section--justify-${i} ${s ?? \"\"}`\n }, r ? r(o) : o);\n }\n addChar(t, { startDigitsAtZero: e = !1, ...i } = {}) {\n const s = t.type === \"integer\" || t.type === \"fraction\" ? new D(this, t.type, e ? 0 : t.value, t.pos, {\n ...i,\n onRemove: this.onCharRemove(t.key)\n }) : new tt(this, t.type, t.value, {\n ...i,\n onRemove: this.onCharRemove(t.key)\n });\n return this.children.set(t.key, s), s;\n }\n unpop(t) {\n t.el.removeAttribute(\"inert\"), t.el.style.top = \"\", t.el.style[this.justify] = \"\";\n }\n pop(t) {\n t.forEach((e) => {\n e.el.style.top = `${e.el.offsetTop}px`, e.el.style[this.justify] = `${F(e.el, this.justify)}px`;\n }), t.forEach((e) => {\n e.el.setAttribute(\"inert\", \"\"), e.present = !1;\n });\n }\n addNewAndUpdateExisting(t) {\n const e = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map(), s = this.justify === \"left\", a = s ? \"prepend\" : \"append\";\n if (X(t, (r) => {\n let o;\n this.children.has(r.key) ? (o = this.children.get(r.key), i.set(r, o), this.unpop(o), o.present = !0) : (o = this.addChar(r, { startDigitsAtZero: !0, animateIn: !0 }), e.set(r, o)), this.el[a](o.el);\n }, { reverse: s }), this.flow.computedAnimated) {\n const r = this.el.getBoundingClientRect();\n e.forEach((o) => {\n o.willUpdate(r);\n });\n }\n e.forEach((r, o) => {\n r.update(o.value);\n }), i.forEach((r, o) => {\n r.update(o.value);\n });\n }\n willUpdate() {\n const t = this.el.getBoundingClientRect();\n this._prevOffset = t[this.justify], this.children.forEach((e) => e.willUpdate(t));\n }\n didUpdate() {\n const t = this.el.getBoundingClientRect();\n this.children.forEach((s) => s.didUpdate(t));\n const e = t[this.justify], i = this._prevOffset - e;\n i && this.children.size && this.el.animate({\n transform: [`translateX(${i}px)`, \"none\"]\n }, {\n ...this.flow.transformTiming,\n composite: \"accumulate\"\n });\n }\n}\nclass L extends W {\n update(t) {\n const e = /* @__PURE__ */ new Map();\n this.children.forEach((i, s) => {\n t.find((a) => a.key === s) || e.set(s, i), this.unpop(i);\n }), this.addNewAndUpdateExisting(t), e.forEach((i) => {\n i instanceof D && i.update(0);\n }), this.pop(e);\n }\n}\nclass N extends W {\n update(t) {\n const e = /* @__PURE__ */ new Map();\n this.children.forEach((i, s) => {\n t.find((a) => a.key === s) || e.set(s, i);\n }), this.pop(e), this.addNewAndUpdateExisting(t);\n }\n}\nclass R {\n constructor(t, e, { onRemove: i, animateIn: s = !1 } = {}) {\n this.flow = t, this.el = e, this._present = !0, this._remove = () => {\n var a;\n this.el.remove(), (a = this._onRemove) == null || a.call(this);\n }, this.el.classList.add(\"animate-presence\"), this.flow.computedAnimated && s && this.el.animate({\n [$]: [-0.9999, 0]\n }, {\n ...this.flow.opacityTiming,\n composite: \"accumulate\"\n }), this._onRemove = i;\n }\n get present() {\n return this._present;\n }\n set present(t) {\n if (this._present !== t) {\n if (this._present = t, t ? this.el.removeAttribute(\"inert\") : this.el.setAttribute(\"inert\", \"\"), !this.flow.computedAnimated) {\n t || this._remove();\n return;\n }\n this.el.style.setProperty(\"--_number-flow-d-opacity\", t ? \"0\" : \"-.999\"), this.el.animate({\n [$]: t ? [-0.9999, 0] : [0.999, 0]\n }, {\n ...this.flow.opacityTiming,\n composite: \"accumulate\"\n }), t ? this.flow.removeEventListener(\"animationsfinish\", this._remove) : this.flow.addEventListener(\"animationsfinish\", this._remove, {\n once: !0\n });\n }\n }\n}\nclass B extends R {\n constructor(t, e, i, s) {\n super(t.flow, i, s), this.section = t, this.value = e, this.el = i;\n }\n}\nclass D extends B {\n constructor(t, e, i, s, a) {\n var d, p;\n const r = (((p = (d = t.flow.digits) == null ? void 0 : d[s]) == null ? void 0 : p.max) ?? 9) + 1, o = Array.from({ length: r }).map((x, g) => {\n const y = u(\"span\", { className: \"digit__num\" }, [\n document.createTextNode(String(g))\n ]);\n return g !== i && y.setAttribute(\"inert\", \"\"), y.style.setProperty(\"--n\", String(g)), y;\n }), c = u(\"span\", {\n part: `digit ${e}-digit`,\n className: \"digit\"\n }, o);\n c.style.setProperty(\"--current\", String(i)), c.style.setProperty(\"--length\", String(r)), super(t, i, c, a), this.pos = s, this._onAnimationsFinish = () => {\n this.el.classList.remove(\"is-spinning\");\n }, this._numbers = o, this.length = r;\n }\n willUpdate(t) {\n const e = this.el.getBoundingClientRect();\n this._prevValue = this.value;\n const i = e[this.section.justify] - t[this.section.justify], s = e.width / 2;\n this._prevCenter = this.section.justify === \"left\" ? i + s : i - s;\n }\n update(t) {\n this.el.style.setProperty(\"--current\", String(t)), this._numbers.forEach((e, i) => i === t ? e.removeAttribute(\"inert\") : e.setAttribute(\"inert\", \"\")), this.value = t;\n }\n didUpdate(t) {\n const e = this.el.getBoundingClientRect(), i = e[this.section.justify] - t[this.section.justify], s = e.width / 2, a = this.section.justify === \"left\" ? i + s : i - s, r = this._prevCenter - a;\n r && this.el.animate({\n transform: [`translateX(${r}px)`, \"none\"]\n }, {\n ...this.flow.transformTiming,\n composite: \"accumulate\"\n });\n const o = this.getDelta();\n o && (this.el.classList.add(\"is-spinning\"), this.el.animate({\n [j]: [-o, 0]\n }, {\n ...this.flow.spinTiming ?? this.flow.transformTiming,\n composite: \"accumulate\"\n }), this.flow.addEventListener(\"animationsfinish\", this._onAnimationsFinish, { once: !0 }));\n }\n getDelta() {\n var i;\n if (this.flow.plugins)\n for (const s of this.flow.plugins) {\n const a = (i = s.getDelta) == null ? void 0 : i.call(s, this.value, this._prevValue, this);\n if (a != null)\n return a;\n }\n const t = this.value - this._prevValue, e = this.flow.computedTrend || Math.sign(t);\n return e < 0 && this.value > this._prevValue ? this.value - this.length - this._prevValue : e > 0 && this.value < this._prevValue ? this.length - this._prevValue + this.value : t;\n }\n}\nclass tt extends B {\n constructor(t, e, i, s) {\n const a = u(\"span\", {\n className: \"symbol__value\",\n textContent: i\n });\n super(t, i, u(\"span\", {\n part: `symbol ${e}`,\n className: \"symbol\"\n }, [a]), s), this.type = e, this._children = /* @__PURE__ */ new Map(), this._onChildRemove = (r) => () => {\n this._children.delete(r);\n }, this._children.set(i, new R(this.flow, a, {\n onRemove: this._onChildRemove(i)\n }));\n }\n willUpdate(t) {\n if (this.type === \"decimal\")\n return;\n const e = this.el.getBoundingClientRect();\n this._prevOffset = e[this.section.justify] - t[this.section.justify];\n }\n update(t) {\n if (this.value !== t) {\n const e = this._children.get(this.value);\n e && (e.present = !1);\n const i = this._children.get(t);\n if (i)\n i.present = !0;\n else {\n const s = u(\"span\", {\n className: \"symbol__value\",\n textContent: t\n });\n this.el.appendChild(s), this._children.set(t, new R(this.flow, s, {\n animateIn: !0,\n onRemove: this._onChildRemove(t)\n }));\n }\n }\n this.value = t;\n }\n didUpdate(t) {\n if (this.type === \"decimal\")\n return;\n const i = this.el.getBoundingClientRect()[this.section.justify] - t[this.section.justify], s = this._prevOffset - i;\n s && this.el.animate({\n transform: [`translateX(${s}px)`, \"none\"]\n }, { ...this.flow.transformTiming, composite: \"accumulate\" });\n }\n}\nexport {\n D,\n J as N,\n G as S,\n q as c,\n st as d,\n nt as f,\n A as p,\n at as r\n};\n","import { d as i, N as u, f as r, r as c } from \"./lite-BTIaQdTe.mjs\";\nimport { D as _, c as v, p as E } from \"./lite-BTIaQdTe.mjs\";\nimport { continuous as N } from \"./plugins.mjs\";\nconst l = \"number-flow-connect\", m = \"number-flow-update\", d = (t, { locales: e, format: s, numberPrefix: n, numberSuffix: a } = {}) => {\n const o = r(t, new Intl.NumberFormat(e, s), n, a);\n return c(o);\n};\nclass f extends u {\n constructor() {\n super(...arguments), this.connected = !1;\n }\n connectedCallback() {\n this.connected = !0, this.dispatchEvent(new Event(l, { bubbles: !0 }));\n }\n disconnectedCallback() {\n this.connected = !1;\n }\n get value() {\n return this._value;\n }\n update(e) {\n (!this._formatter || this._prevFormat !== this.format || this._prevLocales !== this.locales) && (this._formatter = new Intl.NumberFormat(this.locales, this.format), this._prevFormat = this.format, this._prevLocales = this.locales), e != null && (this._value = e), this.dispatchEvent(new Event(m, { bubbles: !0 })), this.data = r(this._value, this._formatter, this.numberPrefix, this.numberSuffix);\n }\n}\ni(\"number-flow\", f);\nexport {\n l as CONNECT_EVENT,\n _ as Digit,\n m as UPDATE_EVENT,\n v as canAnimate,\n N as continuous,\n f as default,\n i as define,\n r as formatToData,\n E as prefersReducedMotion,\n d as renderInnerHTML\n};\n",".summary-container {\n width: 100%;\n margin: 0 auto;\n display: flex;\n flex-direction: column;\n gap: 40px;\n background-color: var(--rebill-color-background-right);\n}\n.summary-header {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 10px;\n}\n\n.trial-pill {\n background-color: var(--rebill-color-green-light-2);\n border-radius: 4px;\n padding: 4px 6px 4px 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.total-amount-container {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 10px;\n}\n\n@media (max-width: 1024px) {\n .summary-container {\n gap: 1.5rem !important;\n background-color: var(--rebill-color-background);\n }\n .summary-header {\n margin-top: 24px;\n }\n .summary-row.total {\n margin-top: 0 !important;\n }\n}\n\n.summary-card {\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 24px;\n padding: 0px;\n background: #ffffff;\n}\n\n.summary-card-info {\n flex: 1;\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n.summary-card-amount {\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.summary-details {\n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n.summary-row {\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 16px;\n & > :nth-child(2) {\n text-align: right;\n }\n}\n\n.summary-row.total {\n margin-top: 1rem;\n font-weight: bold;\n}\n\n@media (min-width: 1025px) and (max-width: 1450px) {\n .summary-container {\n margin: 0px 10px;\n max-width: 400px;\n }\n}\n","import { Component, h, Listen, Prop, State } from '@stencil/core';\nimport 'number-flow';\nimport { I18nService } from '../../../i18n/i18n.service';\nimport {\n PLAN_FREQUENCY_ENUM,\n SESSION_DISCOUNT_TYPE_ENUM,\n SESSION_ITEM_TYPE_ENUM,\n} from '../../../models';\nimport { sessionState } from '../../../store/session.store';\nimport { BREAKPOINT_ENUM, isBreakpointBelow } from '../../../utils/breakpoint';\nimport { COLORS_ENUM } from '../../../utils/color-class-mapper';\nimport { formatAmount } from '../../../utils/currency-formatter';\nimport { getInstallmentDescription } from '../../../utils/installment-utils';\n\n@Component({\n tag: 'rebill-summary',\n styleUrl: 'summary.css',\n shadow: false,\n})\nexport class Summary {\n /** Monto total */\n @Prop() totalAmount!: number | string;\n /** Título del item */\n @Prop() itemTitle!: string;\n /** Descripción del item */\n @Prop() itemDescription!: string;\n /** Monto del item */\n @Prop() itemAmount!: number | string;\n /** Frecuencia del plan */\n @Prop() planFrequency?: PLAN_FREQUENCY_ENUM;\n /** Cantidad de frecuencia del plan */\n @Prop() planFrequencyCount?: number;\n /** Subtotal */\n @Prop() subtotal!: number | string;\n /** Descuento (opcional) */\n @Prop() discount?: number | string;\n @Prop() currency: string;\n @Prop() displayedComponents: (\n | 'totalAmount'\n | 'discount'\n | 'itemDetails'\n | 'priceDetails'\n | 'timelineFreeTrial'\n | 'timelineDebitDay'\n )[] = [\n 'totalAmount',\n 'discount',\n 'itemDetails',\n 'priceDetails',\n 'timelineFreeTrial',\n 'timelineDebitDay',\n ];\n @Prop() allowCoupon: boolean = false;\n @Prop() currentBreakpoint: BREAKPOINT_ENUM = BREAKPOINT_ENUM.DESKTOP;\n @State() discountApplied: boolean = false;\n private totalFlow?: HTMLElement & { update: (value: number) => void; format?: any };\n @Prop() discountType: SESSION_DISCOUNT_TYPE_ENUM;\n @Prop() discountedPercentage: number = 0;\n @Prop() discountDuration: number = 0;\n @Prop() discountAmount: number = 0;\n\n private getDurationTranslation(duration: number): string {\n const frequency = this.planFrequency || PLAN_FREQUENCY_ENUM.MONTH;\n\n if (duration === 1) {\n return I18nService.translate(`summary.${frequency}_one`);\n } else {\n return I18nService.translate(`summary.${frequency}_other`, { count: duration });\n }\n }\n componentDidLoad() {\n this.updateTotalFlow();\n // this.initializeDiscountState();\n }\n\n componentDidUpdate() {\n this.updateTotalFlow();\n }\n\n private updateTotalFlow() {\n if (this.totalFlow) {\n this.totalFlow.format = { style: 'currency', currency: this.currency };\n this.totalFlow.update(Number(sessionState.data.pricing.total));\n }\n }\n @Listen('discountApplied')\n handleDiscountApplied(event: CustomEvent) {\n this.discountApplied = event.detail;\n }\n\n private getRecalculatedInstallmentAmount(): number {\n const selectedInstallment =\n sessionState.data?.cardInformation?.installments?.selectedInstallment;\n if (!selectedInstallment) {\n return 0;\n }\n\n if (sessionState.data.pricing.discountAmount > 0) {\n const originalTotal = sessionState.data.pricing.subtotal;\n const currentTotal = sessionState.data.pricing.totalWithoutInstallment;\n const discountRatio = currentTotal / originalTotal;\n\n return Math.round(selectedInstallment.installmentAmount * discountRatio * 100) / 100;\n }\n\n return selectedInstallment.installmentAmount;\n }\n\n private renderTotalForPlan() {\n return (\n sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n sessionState.data?.itemInformation?.debitStrategy && (\n <div class=\"summary-row total\">\n <rebill-typography\n variant={\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'subtitle1'\n : 'body3'\n }\n style={{\n fontWeight: isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'normal'\n : 'bold',\n }}\n >\n {I18nService.translate('summary.totalAmountToday')}\n </rebill-typography>\n <rebill-typography\n variant={\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'subtitle1'\n : 'body3'\n }\n style={{\n fontWeight: isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'normal'\n : 'bold',\n }}\n >\n {formatAmount(sessionState.data.pricing.total, this.currency)}\n </rebill-typography>\n </div>\n )\n );\n }\n\n private renderTotalForPlanGeneral() {\n return (\n sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n !sessionState.data?.itemInformation?.trial?.trialPeriodDays &&\n !sessionState.data?.itemInformation?.debitStrategy && (\n <div class=\"summary-row total\">\n <rebill-typography\n variant={\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'subtitle1'\n : 'body3'\n }\n style={{\n fontWeight: isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'normal'\n : 'bold',\n }}\n >\n {I18nService.translate('summary.totalAmount')}\n </rebill-typography>\n <rebill-typography\n variant={\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'subtitle1'\n : 'body3'\n }\n style={{\n fontWeight: isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'normal'\n : 'bold',\n }}\n >\n {formatAmount(sessionState.data?.pricing?.total, this.currency)}\n </rebill-typography>\n </div>\n )\n );\n }\n\n private renderTotalForNonPlan() {\n return (\n sessionState.data?.itemInformation?.type !== SESSION_ITEM_TYPE_ENUM.PLAN && (\n <div class=\"summary-row total\">\n <rebill-typography\n variant={\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'subtitle1'\n : 'body3'\n }\n style={{\n fontWeight: isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'normal'\n : 'bold',\n }}\n >\n {I18nService.translate('summary.totalAmount')}\n </rebill-typography>\n <rebill-typography\n variant={\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'subtitle1'\n : 'body3'\n }\n style={{\n fontWeight: isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'normal'\n : 'bold',\n }}\n >\n {formatAmount(sessionState.data.pricing.total, this.currency)}\n </rebill-typography>\n </div>\n )\n );\n }\n\n private renderTrialPeriod() {\n return (\n sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n sessionState.data?.itemInformation?.trial?.trialPeriodDays && (\n <div class=\"summary-row\">\n <rebill-typography variant=\"body2\">\n {I18nService.translate('summary.totalAmountLastTrialPeriod')}\n </rebill-typography>\n <rebill-typography variant=\"body2\">\n {formatAmount(sessionState.data?.pricing?.total, this.currency)}\n {`/${I18nService.translate(`summary.${this.planFrequency}`, {\n count: this.planFrequencyCount || 1,\n })} `}\n </rebill-typography>\n </div>\n )\n );\n }\n\n private renderDiscountAlertWrapper() {\n return (\n sessionState.data?.itemInformation?.trial?.trialPeriodDays && (\n <div class=\"summary-row\">\n <rebill-typography\n variant={\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'subtitle1'\n : 'body3'\n }\n style={{\n fontWeight: isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'normal'\n : 'bold',\n }}\n >\n {I18nService.translate('summary.trialPeriodDaysDetails', {\n trialDays: sessionState.data?.itemInformation?.trial?.trialPeriodDays,\n count: sessionState.data?.itemInformation?.trial?.trialPeriodDays,\n })}\n </rebill-typography>\n <rebill-typography\n variant={\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'subtitle1'\n : 'body3'\n }\n style={{\n fontWeight: isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? 'normal'\n : 'bold',\n }}\n >\n {I18nService.translate('summary.free')}\n </rebill-typography>\n </div>\n )\n );\n }\n\n render() {\n const renderItemDetails = (\n title: boolean = true,\n description: boolean = true,\n amount: boolean = true,\n ) => (\n <div class=\"summary-card\">\n {(title || description) && (\n <div class=\"summary-card-info\">\n {title && (\n <rebill-typography variant=\"subtitle-bold\" gutterBottom>\n {this.itemTitle}\n </rebill-typography>\n )}\n {description && this.itemDescription && (\n <rebill-typography variant=\"body2\">{this.itemDescription}</rebill-typography>\n )}\n </div>\n )}\n {amount && (\n <div class=\"summary-card-amount\">\n <rebill-typography variant=\"body2\">\n {sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n sessionState.data?.itemInformation?.debitStrategy\n ? formatAmount(sessionState.data?.pricing?.planAmount, this.currency)\n : formatAmount(this.subtotal, this.currency)}\n </rebill-typography>\n </div>\n )}\n </div>\n );\n const renderPriceDetails = () => {\n const detailsBlocks = [\n this.renderTotalForPlan(),\n this.renderTotalForPlanGeneral(),\n this.renderTotalForNonPlan(),\n this.renderTrialPeriod(),\n this.renderDiscountAlertWrapper(),\n ].filter(Boolean);\n\n if (detailsBlocks.length > 1) {\n detailsBlocks.splice(detailsBlocks.length - 1, 0, <rebill-divider />);\n }\n\n return (\n <div class=\"summary-details\">\n {/* Subtotal se queda inline */}\n <div class=\"summary-row\">\n <rebill-typography variant=\"body2\">\n {I18nService.translate('summary.subtotal')}\n </rebill-typography>\n <rebill-typography variant=\"body2\">\n {sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n sessionState.data?.itemInformation?.debitStrategy\n ? formatAmount(sessionState.data.pricing.planAmount, this.currency)\n : formatAmount(this.subtotal, this.currency)}\n </rebill-typography>\n </div>\n {/* Installments y coupon también inline */}\n {sessionState.data.pricing.installments && (\n <div class=\"summary-row\">\n <rebill-typography variant=\"body2\">\n {I18nService.translate('summary.installments')}\n </rebill-typography>\n <rebill-typography variant=\"body2\">\n {getInstallmentDescription(\n sessionState.data?.pricing?.installments,\n this.getRecalculatedInstallmentAmount(),\n )}\n </rebill-typography>\n </div>\n )}\n {this.allowCoupon &&\n !isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP) && (\n <discount-coupon />\n )}\n {!sessionState.data?.itemInformation?.trial?.trialPeriodDays &&\n !sessionState.data?.itemInformation?.debitStrategy && <rebill-divider />}\n {detailsBlocks.map(block => (\n <div class=\"summary-detail-wrapper\">{block}</div>\n ))}\n </div>\n );\n };\n const renderDiscountAlert = () =>\n this.planFrequency &&\n this.discountApplied &&\n (this.discountedPercentage > 0 || this.discountAmount > 0) && (\n <rebill-alert\n variant=\"filled\"\n type=\"success\"\n icon=\"tag-sale\"\n size=\"medium\"\n colorIcon={COLORS_ENUM.GREEN}\n message={\n this.discountDuration\n ? I18nService.translate(`summary.planDiscountDescriptionWithDuration`, {\n discount:\n this.discountType === SESSION_DISCOUNT_TYPE_ENUM.PERCENTAGE\n ? `${this.discountedPercentage}%`\n : formatAmount(this.discountAmount, this.currency),\n duration: this.getDurationTranslation(this.discountDuration),\n })\n : I18nService.translate(`summary.planDiscountDescriptionWithoutDuration`, {\n discount:\n this.discountType === SESSION_DISCOUNT_TYPE_ENUM.PERCENTAGE\n ? `${this.discountedPercentage}%`\n : formatAmount(this.discountAmount, this.currency),\n })\n }\n />\n );\n return (\n <div class=\"summary-container\">\n {this.displayedComponents.includes('totalAmount') && (\n <div class=\"summary-header\">\n {sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n sessionState.data.itemInformation?.trial?.trialPeriodDays && (\n <div class=\"trial-pill\">\n <rebill-typography variant=\"body2\" align=\"center\" color={COLORS_ENUM.GREEN_TEXT}>\n {I18nService.translate('summary.trialPill', {\n days: sessionState.data?.itemInformation?.trial?.trialPeriodDays,\n count: sessionState.data?.itemInformation?.trial?.trialPeriodDays,\n })}\n </rebill-typography>\n </div>\n )}\n <div class=\"total-amount-container\">\n <rebill-typography variant=\"h4-span\" align=\"center\" gutterBottom>\n <number-flow ref={el => (this.totalFlow = el as any)}></number-flow>\n </rebill-typography>\n {this.planFrequency && (\n <rebill-typography\n variant=\"body1\"\n color={COLORS_ENUM.SECONDARY}\n align=\"center\"\n gutterBottom\n style={{ fontWeight: 'normal' }}\n >\n {`/ ${I18nService.translate(`summary.${this.planFrequency}`, {\n count: this.planFrequencyCount || 1,\n })}`}\n </rebill-typography>\n )}\n </div>\n {sessionState.data?.itemInformation?.type !== SESSION_ITEM_TYPE_ENUM.PLAN && (\n <rebill-typography variant=\"body2\" align=\"center\" gutterBottom>\n {I18nService.translate('summary.totalAmount')}\n </rebill-typography>\n )}\n {this.allowCoupon &&\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP) && (\n <discount-coupon hide-label />\n )}\n </div>\n )}\n {this.displayedComponents.includes('itemDetails') &&\n (isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP) ? (\n <collapsible-card header={I18nService.translate('summary.details')}>\n {renderItemDetails(true, true, true)}\n </collapsible-card>\n ) : (\n <collapsible-card header={this.itemTitle}>\n {renderItemDetails(false, !!this.itemDescription, true)}\n </collapsible-card>\n ))}\n {this.displayedComponents.includes('discount') &&\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP) &&\n !sessionState.data?.itemInformation?.trial?.trialPeriodDays &&\n !sessionState.data?.itemInformation?.debitStrategy &&\n renderDiscountAlert()}\n {this.displayedComponents.includes('timelineFreeTrial') &&\n sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n sessionState.data?.itemInformation?.trial?.trialPeriodDays &&\n !isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP) && (\n <rebill-timeline-free-trial\n trial-period-ends-at={sessionState.data?.itemInformation?.trial?.trialPeriodEndsAt}\n trial-period-ends-reminder-at={\n sessionState.data?.itemInformation?.trial?.trialPeriodEndsReminderAt\n }\n trial-period-days={sessionState.data?.itemInformation?.trial?.trialPeriodDays}\n subtotal={sessionState.data.pricing.subtotal}\n currency={sessionState.data.pricing.currency}\n discount-applied={this.discountApplied}\n discount-type={this.discountType}\n discounted-percentage={this.discountedPercentage}\n discount-duration={this.discountDuration}\n discount-amount={this.discountAmount}\n />\n )}\n {this.displayedComponents.includes('timelineDebitDay') &&\n sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n sessionState.data?.itemInformation?.debitStrategy &&\n sessionState.data?.itemInformation?.debitDay &&\n !isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP) && (\n <rebill-timeline-debit-day\n debit-day={sessionState.data?.itemInformation?.debitDay}\n total-amount={sessionState.data?.pricing?.total}\n plan-amount={sessionState.data?.pricing?.planAmount}\n currency={sessionState.data?.pricing?.currency}\n debit-strategy={sessionState.data?.itemInformation?.debitStrategy}\n discount-applied={this.discountApplied}\n discount-type={this.discountType}\n discounted-percentage={this.discountedPercentage}\n discount-duration={this.discountDuration}\n discount-amount={this.discountAmount}\n />\n )}\n {this.displayedComponents.includes('priceDetails') &&\n (isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP) ? (\n <collapsible-card header={I18nService.translate('summary.summary')}>\n {renderPriceDetails()}\n </collapsible-card>\n ) : (\n renderPriceDetails()\n ))}\n {this.displayedComponents.includes('timelineFreeTrial') &&\n sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n sessionState.data?.itemInformation?.trial?.trialPeriodDays &&\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP) && (\n <rebill-timeline-free-trial\n trial-period-ends-at={sessionState.data?.itemInformation?.trial?.trialPeriodEndsAt}\n trial-period-ends-reminder-at={\n sessionState.data?.itemInformation?.trial?.trialPeriodEndsReminderAt\n }\n trial-period-days={sessionState.data?.itemInformation?.trial?.trialPeriodDays}\n subtotal={sessionState.data?.pricing?.subtotal}\n currency={sessionState.data?.pricing?.currency}\n discount-applied={this.discountApplied}\n discount-type={this.discountType}\n discounted-percentage={this.discountedPercentage}\n discount-duration={this.discountDuration}\n discount-amount={this.discountAmount}\n />\n )}\n {this.displayedComponents.includes('timelineDebitDay') &&\n sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n sessionState.data?.itemInformation?.debitStrategy &&\n sessionState.data?.itemInformation?.debitDay &&\n isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP) && (\n <rebill-timeline-debit-day\n debit-day={sessionState.data?.itemInformation?.debitDay}\n total-amount={sessionState.data?.pricing?.total}\n plan-amount={sessionState.data?.pricing?.planAmount}\n currency={sessionState.data?.pricing?.currency}\n debit-strategy={sessionState.data?.itemInformation?.debitStrategy}\n discount-applied={this.discountApplied}\n discount-type={this.discountType}\n discounted-percentage={this.discountedPercentage}\n discount-duration={this.discountDuration}\n discount-amount={this.discountAmount}\n />\n )}\n {this.displayedComponents.includes('discount') &&\n !isBreakpointBelow(this.currentBreakpoint, BREAKPOINT_ENUM.DESKTOP) &&\n !sessionState.data?.itemInformation?.trial?.trialPeriodDays &&\n !sessionState.data?.itemInformation?.debitStrategy &&\n renderDiscountAlert()}\n </div>\n );\n }\n}\n",":host {\n display: block;\n position: relative;\n}\n\n.test-mode-container {\n position: relative;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: 8px;\n}\n.info-icon {\n margin-right: 4px;\n display: flex;\n align-items: center;\n}\n\n.test-mode-chip {\n display: flex;\n min-width: 149px;\n height: 40px;\n background: #ffffff;\n border: 1px solid #e5e7eb;\n border-radius: 20px;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n overflow: hidden;\n position: relative;\n z-index: 10;\n}\n\n.test-mode-chip.expanded {\n max-width: 579px;\n height: 40px;\n flex-direction: row;\n border-radius: 20px;\n justify-content: space-between;\n}\n\n.test-mode-container.cards-visible .test-mode-chip.expanded {\n border-radius: 0 0 20px 20px;\n width: 579px;\n}\n\n.chip-content {\n display: flex;\n align-items: center;\n gap: 2px;\n justify-content: space-between;\n min-height: 24px;\n flex-shrink: 0;\n margin-left: 18px;\n margin-right: 8px;\n}\n\n.chip-content .info-icon {\n display: flex !important;\n align-items: center !important;\n vertical-align: middle !important;\n}\n\n.chip-content rebill-typography {\n display: flex !important;\n align-items: center !important;\n line-height: 1.5 !important;\n}\n\n.test-mode-chip.expanded .chip-content {\n justify-content: flex-start;\n width: auto;\n margin-right: 12px;\n}\n\n.test-mode-panel {\n display: flex;\n align-items: center;\n width: 100%;\n justify-content: space-between;\n animation: slideIn 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.test-mode-panel.closing {\n animation: slideOut 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.panel-sections {\n display: flex;\n align-items: center;\n gap: 12px;\n flex: 1;\n justify-content: space-between;\n margin: 8px;\n}\n\n/* Sección de Cards */\n.cards-section {\n display: flex;\n align-items: center;\n cursor: pointer;\n border-radius: 8px;\n transition: background-color 0.2s ease;\n}\n\n.cards-section .cards-button {\n display: flex !important;\n align-items: center !important;\n justify-content: flex-start !important;\n margin-left: 4px !important;\n}\n\n.cards-section .cards-button .card-icon {\n display: flex !important;\n align-items: center !important;\n margin-right: 8px !important;\n vertical-align: middle !important;\n}\n\n.cards-section .cards-button rebill-typography {\n display: flex !important;\n align-items: center !important;\n line-height: 1 !important;\n}\n\n/* Sección de Docs */\n/* .docs-section {\n display: flex;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n transition: background-color 0.2s ease;\n} */\n\n/* Sección de Registration */\n.registration-section {\n display: flex;\n align-items: center;\n gap: 2px;\n cursor: pointer;\n transition: background-color 0.2s ease;\n flex: 1;\n min-width: 0;\n}\n\n.cards-dropdown-panel {\n position: absolute;\n bottom: 40px;\n left: 0;\n width: 579px;\n background: #ffffff;\n border-top: 1px solid #e5e7eb;\n border-left: 1px solid #e5e7eb;\n border-right: 1px solid #e5e7eb;\n border-bottom: none;\n border-radius: 16px 16px 0 0;\n z-index: 15;\n animation: expandUp 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n transform-origin: bottom center;\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.cards-dropdown-panel.closing {\n animation: collapseDown 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.card-section {\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n}\n\n.header-content {\n display: flex;\n align-items: center;\n gap: 8px;\n margin: 8px;\n}\n\n.card-details {\n background: #fafafa;\n border-radius: 8px;\n border: 1px solid #e5e7eb;\n margin: 8px;\n min-height: 223.7px;\n\n display: flex;\n flex-direction: column;\n justify-content: space-around;\n padding: 16px;\n}\n\n.card-row {\n display: flex;\n flex-direction: row;\n gap: 24px;\n align-items: center;\n background: #ffffff;\n justify-content: space-around;\n border-radius: 8px;\n border: 1px solid #e5e7eb;\n width: 531px;\n height: 68px;\n}\n\n.card-field {\n display: flex;\n flex-direction: column;\n gap: 8px;\n flex: 1;\n}\n\n.field-value {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 8px;\n max-height: 20px;\n}\n\n.copy-button {\n align-items: center;\n}\n\n/* Animaciones */\n@keyframes slideIn {\n from {\n opacity: 0;\n transform: translateX(-20px);\n }\n to {\n opacity: 1;\n transform: translateX(0);\n }\n}\n\n@keyframes slideOut {\n from {\n opacity: 1;\n transform: translateX(0);\n }\n to {\n opacity: 0;\n transform: translateX(-20px);\n }\n}\n\n@keyframes expandUp {\n from {\n opacity: 0;\n transform: translateY(10px) scaleY(0.9);\n }\n to {\n opacity: 1;\n transform: translateY(0) scaleY(1);\n }\n}\n\n@keyframes collapseDown {\n from {\n opacity: 1;\n transform: translateY(0) scaleY(1);\n }\n to {\n opacity: 0;\n transform: translateY(10px) scaleY(0.9);\n }\n}\n","import { Component, Element, h, State } from '@stencil/core';\nimport i18n from '../../../i18n/i18n.config';\nimport { I18nService } from '../../../i18n/i18n.service';\nimport { copyToClipboard } from '../../../utils/clipboard';\nimport { COLORS_ENUM } from '../../../utils/color-class-mapper';\n\n@Component({\n tag: 'rebill-mode-sandbox',\n styleUrl: 'mode-sandbox.css',\n shadow: false,\n})\nexport class RebillTestModeChip {\n @Element() el: HTMLElement;\n @State() isPanelVisible = false;\n @State() isPanelClosing = false;\n @State() isCardsPanelVisible = false;\n @State() isCardsPanelClosing = false;\n @State() currentLanguage: string = I18nService.getCurrentLanguage();\n\n componentWillLoad() {\n i18n.on('languageChanged', this.handleLanguageChange);\n }\n\n disconnectedCallback() {\n i18n.off('languageChanged', this.handleLanguageChange);\n }\n\n private handleLanguageChange = () => {\n this.currentLanguage = I18nService.getCurrentLanguage();\n };\n\n private togglePanel = () => {\n if (this.isPanelVisible) {\n this.isPanelClosing = true;\n if (this.isCardsPanelVisible) {\n this.isCardsPanelClosing = true;\n }\n setTimeout(() => {\n this.isPanelVisible = false;\n this.isPanelClosing = false;\n this.isCardsPanelVisible = false;\n this.isCardsPanelClosing = false;\n }, 300);\n } else {\n this.isPanelVisible = true;\n }\n };\n\n private togglePanelCards = () => {\n if (this.isCardsPanelVisible) {\n this.isCardsPanelClosing = true;\n setTimeout(() => {\n this.isCardsPanelVisible = false;\n this.isCardsPanelClosing = false;\n }, 300);\n } else {\n this.isCardsPanelVisible = true;\n }\n };\n\n private handleCopy = (text: string) => {\n copyToClipboard(text);\n this.isCardsPanelClosing = true;\n setTimeout(() => {\n this.isCardsPanelVisible = false;\n this.isCardsPanelClosing = false;\n }, 300);\n };\n private handleDocsClick = () => {\n window.open('https://v3.docs.rebill.com/sdk/checkout', '_blank');\n };\n\n private renderBasicChip() {\n return (\n <div class=\"chip-content\">\n <div class=\"info-icon\">\n <rebill-icon name=\"circle-info\" size=\"16px\" color={COLORS_ENUM.ORANGE} />\n </div>\n <rebill-typography\n variant=\"subtitle2\"\n color={COLORS_ENUM.PRIMARY_DARK}\n style={{ display: 'flex', alignItems: 'center', justifyContent: 'center' }}\n >\n {I18nService.translate('sandbox.testMode')}\n </rebill-typography>\n {!this.isPanelVisible && (\n <div class=\"arrow-icon\">\n <rebill-button variant=\"text\" size=\"small\" onClick={this.togglePanel}>\n <rebill-icon name=\"arrow-right-circle\" />\n </rebill-button>\n </div>\n )}\n </div>\n );\n }\n\n private renderExpandedChip() {\n return (\n <div class={`test-mode-panel ${this.isPanelClosing ? 'closing' : ''}`}>\n <div class=\"panel-sections\">\n <div class=\"cards-section\" onClick={this.togglePanelCards}>\n <rebill-button variant=\"text\" size=\"small\" class=\"cards-button\">\n <rebill-icon name=\"card-test\" class=\"card-icon\" />\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n {`${I18nService.translate('sandbox.cards')} `}\n </rebill-typography>\n <rebill-icon\n key={this.isCardsPanelVisible ? 'chevron-up' : 'chevron-down'}\n name={this.isCardsPanelVisible ? 'chevron-up' : 'chevron-down'}\n style={{ marginLeft: '8px' }}\n />\n </rebill-button>\n </div>\n {/* TODO: Add docs and registration sections when we have endpoints */}\n <div class=\"docs-section\">\n <rebill-button variant=\"text\" size=\"small\" onClick={this.handleDocsClick}>\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY}>\n {I18nService.translate('sandbox.docs')}\n </rebill-typography>\n <rebill-icon name=\"external-link\" style={{ marginLeft: '8px' }} />\n </rebill-button>\n </div>\n {/*\n <div class=\"registration-section\" onClick={this.handleRegistrationClick}>\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY}>\n {I18nService.translate('sandbox.completeMyAccountRegistration')}\n </rebill-typography>\n <rebill-icon name=\"external-link\" />\n </div> */}\n <rebill-button variant=\"text\" size=\"small\" onClick={this.togglePanel}>\n <rebill-icon name=\"close\" />\n </rebill-button>\n </div>\n </div>\n );\n }\n\n private renderCardsPanel() {\n return (\n <div class={`cards-dropdown-panel ${this.isCardsPanelClosing ? 'closing' : ''}`}>\n <div class=\"card-details\">\n <div class=\"card-section\">\n <div class=\"header-content\">\n <rebill-icon name=\"succes\" color={COLORS_ENUM.GREEN} />\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n {I18nService.translate('sandbox.successPayment')}\n </rebill-typography>\n </div>\n <div class=\"card-row\">\n <div class=\"card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.cardNumber')}\n </rebill-typography>\n <div class=\"field-value\">\n <rebill-icon name=\"visa\" />\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 4539148803436467\n </rebill-typography>\n </div>\n </div>\n <div class=\"card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.expiryDate')}\n </rebill-typography>\n <div class=\"field-value\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 01/99\n </rebill-typography>\n </div>\n </div>\n <div class=\"card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.cvv')}\n </rebill-typography>\n <div class=\"field-value\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 123\n </rebill-typography>\n <div class=\"copy-button\">\n <rebill-button\n variant=\"text\"\n size=\"small\"\n onClick={() => this.handleCopy('4539148803436467 01/99 123')}\n >\n <rebill-icon name=\"copy\" />\n </rebill-button>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"card-section\">\n <div class=\"header-content\">\n <rebill-icon name=\"rejected\" color={COLORS_ENUM.ERROR} />\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n {I18nService.translate('sandbox.rejectedPayment')}\n </rebill-typography>\n </div>\n <div class=\"card-row\">\n <div class=\"card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.cardNumber')}\n </rebill-typography>\n <div class=\"field-value\">\n <rebill-icon name=\"visa\" />\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 4485364739527352\n </rebill-typography>\n </div>\n </div>\n <div class=\"card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.expiryDate')}\n </rebill-typography>\n <div class=\"field-value\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 01/99\n </rebill-typography>\n </div>\n </div>\n\n <div class=\"card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.cvv')}\n </rebill-typography>\n <div class=\"field-value\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 123\n </rebill-typography>\n <div class=\"copy-button\">\n <rebill-button\n variant=\"text\"\n size=\"small\"\n onClick={() => this.handleCopy('4485364739527352 01/99 123')}\n >\n <rebill-icon name=\"copy\" />\n </rebill-button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n }\n\n render() {\n return (\n <div\n class={`test-mode-container ${this.isCardsPanelVisible || this.isCardsPanelClosing ? 'cards-visible' : ''}`}\n >\n <div class={`test-mode-chip ${this.isPanelVisible ? 'expanded' : ''}`}>\n {this.renderBasicChip()}\n {(this.isPanelVisible || this.isPanelClosing) && this.renderExpandedChip()}\n </div>\n {(this.isPanelVisible || this.isCardsPanelClosing) &&\n (this.isCardsPanelVisible || this.isCardsPanelClosing) &&\n this.renderCardsPanel()}\n </div>\n );\n }\n}\n",".otp__otp-container {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 16px;\n width: 100%;\n position: relative;\n margin-top: 2rem;\n}\n\n.otp__user-information {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-direction: column;\n width: 100%;\n gap: 8px;\n}\n\n.otp__otp-description-container {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n gap: 4px;\n}\n.otp__change-email {\n cursor: pointer;\n text-decoration: underline;\n margin-left: 0;\n}\n\n.otp__change-email:hover {\n color: var(--rebill-primary-color);\n text-decoration: underline;\n}\n\n.otp__alternative {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n gap: 16px;\n margin: 32px;\n width: 100%;\n}\n\n.otp__rebill-alert {\n width: 100%;\n}\n\n.otp__guest-options {\n display: flex;\n flex-direction: column;\n width: 100%;\n gap: 8px;\n margin-top: auto;\n}\n\n.otp__verifying-container {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 16px;\n margin: 8px 0;\n}\n\n.otp__code-resent-container rebill-typography {\n display: flex;\n line-height: 1;\n}\n\n.otp__code-resent-container rebill-icon {\n flex-shrink: 0;\n display: inline-flex;\n vertical-align: middle;\n margin-right: 8px;\n}\n\n.otp__spinner {\n width: 15px;\n height: 15px;\n border: 2px solid rgba(255, 255, 255, 0.3);\n border-radius: 50%;\n border-top-color: var(--rebill-color-primary);\n animation: spin 1s linear infinite;\n display: inline-block;\n}\n\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n\n/* Responsive adjustments */\n@media (max-width: 1024px) {\n .otp__otp-container {\n min-height: calc(100vh - 40px);\n }\n\n .otp__guest-options {\n margin-top: 32px;\n }\n}\n\n@media (min-width: 1025px) {\n .otp__otp-container {\n justify-content: flex-start;\n }\n\n .otp__guest-options {\n margin-top: auto;\n padding-bottom: 2rem;\n }\n}\n","import { Component, Event, EventEmitter, h, State } from '@stencil/core';\nimport { api } from '../../../api';\nimport { OTPVerifyResponse } from '../../../api/entities/OTP/types';\nimport { I18nService } from '../../../i18n/i18n.service';\nimport { sessionState, SessionStore } from '../../../store/session.store';\nimport { COLORS_ENUM } from '../../../utils/color-class-mapper';\nimport { createCountdownTimer } from '../../../utils/timer';\n\n@Component({\n tag: 'otp-component',\n styleUrl: 'otp.css',\n shadow: false,\n})\nexport class Otp {\n @Event() changeEmailClick: EventEmitter<void>;\n @State() timeLeft: number = 59;\n @State() isTimerRunning: boolean = false;\n @State() codeResent: boolean = false;\n @State() isVerifying: boolean = false;\n @State() otpValue: string = '';\n @Event() returnForm: EventEmitter<boolean>;\n @Event() codeVerified: EventEmitter<OTPVerifyResponse>;\n @State() error: boolean = false;\n\n private timer = createCountdownTimer({\n duration: 59,\n onTick: timeLeft => {\n this.timeLeft = timeLeft;\n },\n onComplete: () => {\n this.isTimerRunning = false;\n },\n });\n\n private messageTimer = createCountdownTimer({\n duration: 5,\n onComplete: () => {\n this.codeResent = false;\n },\n });\n\n disconnectedCallback() {\n this.timer.stop();\n }\n\n startTimer() {\n this.timer.start();\n this.isTimerRunning = true;\n }\n\n handleResendCode = async () => {\n if (!this.isTimerRunning) {\n await api.otp.generate(sessionState.data.sessionId, {\n email: sessionState.data.userInformation.email,\n });\n this.codeResent = true;\n this.messageTimer.start();\n this.startTimer();\n\n this.error = false;\n }\n };\n\n handleOtpChange = (value: string) => {\n this.otpValue = value;\n\n if (value.length === 6) {\n this.handleVerifyOtp(value);\n this.error = false;\n }\n };\n\n handleVerifyOtp = async (otp: string) => {\n this.isVerifying = true;\n try {\n const response = await api.otp.verify(sessionState.data.sessionId, {\n email: sessionState.data.userInformation.email,\n code: otp,\n });\n\n this.codeVerified.emit(response.data);\n SessionStore.setUserInformation({\n ...response.data.customer,\n fullName: `${response.data.customer.firstName} ${response.data.customer.lastName}`.trim(),\n phoneNumber: {\n number: response.data.customer.phoneNumbers[0].number,\n countryCode: response.data.customer.phoneNumbers[0].countryCode,\n },\n address: {\n billingAddress: {\n address: response.data.customer.addresses[0].lineOne,\n zip: response.data.customer.addresses[0].zipCode,\n city: response.data.customer.addresses[0].city,\n state: response.data.customer.addresses[0].state,\n country: response.data.customer.addresses[0].country,\n },\n },\n documentType: response.data.customer.identifications[0].type,\n documentNumber: response.data.customer.identifications[0].value,\n });\n SessionStore.setAccessToken(response.data.accessToken);\n SessionStore.setCustomerId(response.data.customer.id);\n this.otpValue = '';\n this.error = false;\n } catch (error) {\n this.error = true;\n } finally {\n this.isVerifying = false;\n }\n };\n\n render() {\n return (\n <div class=\"otp__otp-container\">\n <div class=\"otp__user-information\">\n <div class=\"otp__otp-description-container\">\n <rebill-typography variant=\"body2\" class=\"otp__otp-description\">\n {I18nService.translate('otp.description')}\n </rebill-typography>\n <rebill-typography variant=\"subtitle-bold\" class=\"otp__otp-description-digits\">\n {' '}\n <strong>{I18nService.translate('otp.descriptionDigits')}</strong>{' '}\n </rebill-typography>\n <rebill-typography variant=\"body2\" class=\"otp__otp-description-email\">\n {I18nService.translate('otp.descriptionEmail')}\n </rebill-typography>\n </div>\n <rebill-typography variant=\"body2\" class=\"otp__otp-email-line\">\n {sessionState.data.userInformation.email}{' '}\n {!sessionState.data.prefilledData?.email && (\n <span\n class=\"otp__change-email\"\n onClick={() => {\n this.otpValue = '';\n this.error = false;\n this.returnForm.emit(false);\n }}\n >\n {I18nService.translate('otp.change')}\n </span>\n )}\n </rebill-typography>\n </div>\n <input-otp\n otp={this.otpValue}\n onOtpChange={event => this.handleOtpChange(event.detail)}\n error={this.error ? I18nService.translate('otp.error') : ''}\n />\n\n {this.isVerifying && (\n <div class=\"otp__verifying-container\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY}>\n {I18nService.translate('otp.verifyingCode')}\n </rebill-typography>\n <div class=\"otp__spinner\"></div>\n </div>\n )}\n <rebill-button\n type=\"button\"\n variant=\"outline\"\n theme={this.isTimerRunning ? 'secondary' : 'primary'}\n disabled={this.isTimerRunning}\n onClick={this.handleResendCode}\n size=\"small\"\n style={{ height: '24px', marginBottom: '8px' }}\n >\n {this.isTimerRunning\n ? `${I18nService.translate('otp.resendCodeIn')} (${this.timer.getFormattedTime()})`\n : I18nService.translate('otp.resendCode')}\n </rebill-button>\n\n {this.codeResent && (\n <div class=\"otp__code-resent-container\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.GREEN}>\n <rebill-icon name=\"check-radio\" />\n {I18nService.translate('otp.codeResent')}\n </rebill-typography>\n </div>\n )}\n <rebill-alert\n class=\"otp__rebill-alert\"\n type=\"secure\"\n variant=\"variant-info\"\n message={I18nService.translate('otp.infoMessage')}\n icon=\"circle-info\"\n alertTitle={I18nService.translate('otp.infoTitle')}\n colorIcon={COLORS_ENUM.PRIMARY_DARK_LIGHT}\n />\n <div class=\"otp__alternative\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK}>\n o\n </rebill-typography>\n </div>\n <div class=\"otp__guest-options\">\n <rebill-button\n type=\"button\"\n variant=\"outline\"\n theme=\"secondary\"\n size=\"medium\"\n onClick={() => {\n this.otpValue = '';\n this.error = false;\n this.returnForm.emit(false);\n }}\n >\n {I18nService.translate('otp.continueAsGuest')}\n </rebill-button>\n\n <rebill-alert\n type=\"secure\"\n variant=\"variant-secure\"\n icon=\"lock-outline\"\n message={I18nService.translate('otp.secureMessage')}\n />\n </div>\n </div>\n );\n }\n}\n",".modal-overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n background-color: transparent;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 10000;\n padding: 12px 16px;\n box-sizing: border-box;\n}\n\n.modal-content {\n background: white;\n border-radius: 8px;\n padding: 16px 20px;\n width: 350px;\n box-shadow:\n 0 4px 12px -2px rgba(0, 0, 0, 0.15),\n 0 2px 4px -1px rgba(0, 0, 0, 0.1);\n position: relative;\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.modal-content .alert {\n margin: 0;\n flex: 1;\n padding: 0;\n background: transparent;\n border: none;\n box-shadow: none;\n}\n\n/* Override para quitar cualquier color de fondo del modal */\n.modal-content .alert {\n background-color: transparent !important;\n border-color: transparent !important;\n}\n\n.modal-content .alert-message {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.modal-content .close-button {\n position: absolute;\n top: 8px;\n right: 8px;\n width: 20px;\n height: 20px;\n border: none;\n background: transparent;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 50%;\n transition: background-color 0.2s ease;\n padding: 0;\n margin: 0;\n outline: none;\n box-shadow: none;\n line-height: 1;\n}\n\n.modal-content .close-button:focus {\n outline: none;\n box-shadow: none;\n}\n\n.modal-content .close-button:hover {\n background-color: #f0f0f0;\n}\n\n.modal-content .close-button rebill-icon {\n width: 16px;\n height: 16px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n@media (max-width: 768px) {\n .modal-overlay {\n padding: 8px 12px;\n }\n\n .modal-content {\n padding: 12px 16px;\n width: 100%;\n max-width: 350px;\n flex-direction: row;\n gap: 12px;\n text-align: left;\n }\n\n .modal-content .close-button {\n position: absolute;\n top: 8px;\n right: 8px;\n width: 20px;\n height: 20px;\n flex-shrink: 0;\n }\n}\n","import { Component, h, State } from '@stencil/core';\nimport { I18nService } from '../../../i18n/i18n.service';\nimport { SessionStore } from '../../../store/session.store';\nimport { COLORS_ENUM } from '../../../utils/color-class-mapper';\nimport { createCountdownTimer } from '../../../utils/timer';\n\n@Component({\n tag: 'rebill-modal-overlay',\n styleUrl: 'modal-overlay.css',\n shadow: false,\n})\nexport class ModalOverlay {\n @State() visible: boolean = true;\n @State() languageUpdateTrigger: number = 0;\n private unsubscribeCurrentLocaleStore?: () => void;\n private autoCloseTimer?: ReturnType<typeof createCountdownTimer>;\n\n componentDidLoad() {\n this.unsubscribeCurrentLocaleStore = SessionStore.onChange('currentLocale', () => {\n this.languageUpdateTrigger++;\n });\n\n this.autoCloseTimer = createCountdownTimer({\n duration: 30,\n onComplete: () => {\n this.closeModal();\n },\n });\n\n this.autoCloseTimer.start();\n }\n\n disconnectedCallback() {\n if (this.unsubscribeCurrentLocaleStore) {\n this.unsubscribeCurrentLocaleStore();\n }\n\n if (this.autoCloseTimer) {\n this.autoCloseTimer.stop();\n }\n }\n\n private closeModal = () => {\n this.visible = false;\n\n if (this.autoCloseTimer) {\n this.autoCloseTimer.stop();\n }\n };\n\n render() {\n if (!this.visible) return null;\n\n return (\n <div class=\"modal-overlay\">\n <div class=\"modal-content\">\n <div class=\"alert info filled medium\">\n <div class=\"alert-icon\">\n <rebill-icon name=\"circle-info\" size=\"16px\" color={COLORS_ENUM.ORANGE} />\n </div>\n <div class=\"alert-message\">\n <div class=\"alert-title\">\n <rebill-typography variant=\"subtitle-bold\" color={COLORS_ENUM.PRIMARY_DARK}>\n {I18nService.translate('session.refreshedTitle')}\n </rebill-typography>\n </div>\n <div class=\"alert-message-text\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n {I18nService.translate('session.refreshedMessage')}\n </rebill-typography>\n </div>\n </div>\n </div>\n <button onClick={this.closeModal} class=\"close-button\" type=\"button\">\n <rebill-icon name=\"close\" size=\"20px\" />\n </button>\n </div>\n </div>\n );\n }\n}\n",":host {\n display: flex;\n position: relative;\n width: 100%;\n justify-content: center;\n align-items: center;\n}\n\n.mode-sandbox-mobile__test-mode-container {\n position: relative;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: 8px;\n width: 100%;\n}\n\n.mode-sandbox-mobile__overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(0, 0, 0, 0.5);\n z-index: 5;\n animation: fadeIn 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n pointer-events: auto;\n cursor: pointer;\n}\n\n.mode-sandbox-mobile__test-mode-chip-mobile {\n display: flex;\n width: 100%;\n min-width: auto;\n max-width: 100%;\n height: 40px;\n background: #ffffff;\n border: 1px solid #e5e7eb;\n border-radius: 20px;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n overflow: hidden;\n position: relative;\n z-index: 20;\n}\n\n.mode-sandbox-mobile__chip-content-mobile {\n display: flex;\n align-items: center;\n gap: 2px;\n justify-content: flex-end;\n min-height: 24px;\n flex-shrink: 0;\n width: 100%;\n margin: 8px;\n}\n\n.mode-sandbox-mobile__info-icon {\n display: flex;\n align-items: center;\n}\n\n.mode-sandbox-mobile__test-mode-chip-mobile.expanded .mode-sandbox-mobile__chip-content-mobile {\n justify-content: flex-end;\n width: 100%;\n}\n\n.mode-sandbox-mobile__cards-dropdown-panel-header {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 8px;\n}\n\n/* Sección de Docs */\n.mode-sandbox-mobile__docs-section {\n display: flex;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n margin-left: 0;\n transition: background-color 0.2s ease;\n justify-content: flex-end;\n padding: 8px;\n margin-top: 8px;\n}\n\n.mode-sandbox-mobile__cards-dropdown-panel {\n position: absolute;\n top: 100%;\n left: 0;\n right: 0;\n width: 100%;\n background: #ffffff;\n border-top: none;\n border-left: 1px solid #e5e7eb;\n border-right: 1px solid #e5e7eb;\n border-bottom: 1px solid #e5e7eb;\n margin-top: 16px;\n z-index: 25;\n animation: expandDown 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n transform-origin: top center;\n}\n\n.mode-sandbox-mobile__card-section {\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n}\n\n.mode-sandbox-mobile__header-content {\n display: flex;\n align-items: center;\n gap: 8px;\n margin: 8px;\n}\n\n.mode-sandbox-mobile__card-details {\n background: #fafafa;\n border-radius: 8px;\n border: 1px solid #e5e7eb;\n margin: 8px;\n min-height: 208px;\n display: flex;\n flex-direction: column;\n}\n\n.mode-sandbox-mobile__card-row {\n display: flex;\n gap: 12px;\n align-items: stretch;\n background: #ffffff;\n justify-content: space-around;\n border-radius: 8px;\n border: 1px solid #e5e7eb;\n height: auto;\n padding: 8px;\n margin: 8px;\n}\n\n.mode-sandbox-mobile__card-value {\n display: flex;\n flex-direction: column;\n gap: 6px;\n flex: 1;\n}\n\n.mode-sandbox-mobile__field-value {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 8px;\n max-height: 20px;\n}\n\n.mode-sandbox-mobile__copy-button {\n align-items: center;\n margin-left: auto;\n margin-right: 0;\n}\n\n.mode-sandbox-mobile__icon-button {\n margin-left: auto;\n margin-right: 16px;\n}\n\n/* Animaciones */\n\n@keyframes expandDown {\n from {\n opacity: 0;\n transform: translateY(-10px) scaleY(0.9);\n }\n to {\n opacity: 1;\n transform: translateY(0) scaleY(1);\n }\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n","import { Component, Element, h, State } from '@stencil/core';\nimport i18n from '../../../i18n/i18n.config';\nimport { I18nService } from '../../../i18n/i18n.service';\nimport { copyToClipboard } from '../../../utils/clipboard';\nimport { COLORS_ENUM } from '../../../utils/color-class-mapper';\n\n@Component({\n tag: 'rebill-mode-sandbox-mobile',\n styleUrl: 'mode-sandbox-mobile.css',\n shadow: false,\n})\nexport class RebillTestModeChipMobile {\n @Element() el: HTMLElement;\n @State() isPanelVisible = false;\n @State() currentLanguage: string = I18nService.getCurrentLanguage();\n\n componentWillLoad() {\n i18n.on('languageChanged', this.handleLanguageChange);\n }\n\n disconnectedCallback() {\n i18n.off('languageChanged', this.handleLanguageChange);\n }\n\n private handleLanguageChange = () => {\n this.currentLanguage = I18nService.getCurrentLanguage();\n };\n\n private togglePanel = () => {\n this.isPanelVisible = !this.isPanelVisible;\n };\n\n private handleCopy = (text: string) => {\n copyToClipboard(text);\n this.isPanelVisible = false;\n };\n\n private handleDocsClick = () => {\n window.open('https://v3.docs.rebill.com/sdk/checkout', '_blank');\n };\n\n private renderBasicChip() {\n return (\n <div class=\"mode-sandbox-mobile__chip-content-mobile\">\n <div class=\"mode-sandbox-mobile__info-icon\">\n <rebill-icon name=\"circle-info\" size=\"24px\" color={COLORS_ENUM.ORANGE} />\n </div>\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n {I18nService.translate('sandbox.testMode')}\n </rebill-typography>\n <div class=\"mode-sandbox-mobile__icon-button\">\n <rebill-button variant=\"text\" size=\"small\" onClick={this.togglePanel}>\n <rebill-icon name=\"hamburger\" />\n </rebill-button>\n </div>\n </div>\n );\n }\n\n private renderCardsPanel() {\n return (\n <div class=\"mode-sandbox-mobile__cards-dropdown-panel\">\n <div class=\"mode-sandbox-mobile__cards-dropdown-panel-header\">\n <rebill-icon name=\"card-test\" />\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n {I18nService.translate('sandbox.cardTest')}\n </rebill-typography>\n </div>\n <div class=\"mode-sandbox-mobile__card-details\">\n <div class=\"mode-sandbox-mobile__card-section\">\n <div class=\"mode-sandbox-mobile__header-content\">\n <rebill-icon name=\"succes\" color={COLORS_ENUM.GREEN} />\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n {I18nService.translate('sandbox.successPayment')}\n </rebill-typography>\n </div>\n <div class=\"mode-sandbox-mobile__card-row\">\n <div class=\"mode-sandbox-mobile__card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.cardNumber')}\n </rebill-typography>\n <div class=\"mode-sandbox-mobile__field-value\">\n <rebill-icon name=\"visa\" />\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 4539148803436467\n </rebill-typography>\n </div>\n </div>\n <div class=\"mode-sandbox-mobile__card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.exp')}\n </rebill-typography>\n <div class=\"mode-sandbox-mobile__field-value\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 01/99\n </rebill-typography>\n </div>\n </div>\n <div class=\"mode-sandbox-mobile__card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.cvv')}\n </rebill-typography>\n <div class=\"mode-sandbox-mobile__field-value mode-sandbox-mobile__field-value-with-copy\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 123\n </rebill-typography>\n <div class=\"mode-sandbox-mobile__copy-button\">\n <rebill-button\n variant=\"text\"\n size=\"small\"\n onClick={() => this.handleCopy('4539148803436467 01/99 123')}\n >\n <rebill-icon name=\"copy\" />\n </rebill-button>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"mode-sandbox-mobile__card-section\">\n <div class=\"mode-sandbox-mobile__header-content\">\n <rebill-icon name=\"rejected\" color={COLORS_ENUM.ERROR} />\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n {I18nService.translate('sandbox.rejectedPayment')}\n </rebill-typography>\n </div>\n <div class=\"mode-sandbox-mobile__card-row\">\n <div class=\"mode-sandbox-mobile__card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.cardNumber')}\n </rebill-typography>\n <div class=\"mode-sandbox-mobile__field-value\">\n <rebill-icon name=\"visa\" />\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 4485364739527352\n </rebill-typography>\n </div>\n </div>\n <div class=\"mode-sandbox-mobile__card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.exp')}\n </rebill-typography>\n <div class=\"mode-sandbox-mobile__field-value\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 01/99\n </rebill-typography>\n </div>\n </div>\n <div class=\"mode-sandbox-mobile__card-value\">\n <rebill-typography variant=\"subtitle3\" color={COLORS_ENUM.GREY_700}>\n {I18nService.translate('sandbox.cvv')}\n </rebill-typography>\n <div class=\"mode-sandbox-mobile__field-value mode-sandbox-mobile__field-value-with-copy\">\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY_DARK}>\n 123\n </rebill-typography>\n <div class=\"mode-sandbox-mobile__copy-button\">\n <rebill-button\n variant=\"text\"\n size=\"small\"\n onClick={() => this.handleCopy('4485364739527352 01/99 123')}\n >\n <rebill-icon name=\"copy\" />\n </rebill-button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"mode-sandbox-mobile__docs-section\" onClick={this.handleDocsClick}>\n <rebill-typography variant=\"subtitle2\" color={COLORS_ENUM.PRIMARY}>\n {I18nService.translate('sandbox.docs')}\n </rebill-typography>\n <rebill-icon name=\"external-link\" />\n </div>\n </div>\n );\n }\n\n render() {\n return (\n <div\n class={`mode-sandbox-mobile__test-mode-container ${this.isPanelVisible ? 'cards-visible' : ''}`}\n >\n {this.isPanelVisible && <div class=\"mode-sandbox-mobile__overlay\"></div>}\n <div\n class={`mode-sandbox-mobile__test-mode-chip-mobile ${this.isPanelVisible ? 'expanded' : ''}`}\n >\n {this.renderBasicChip()}\n </div>\n {this.isPanelVisible && this.renderCardsPanel()}\n </div>\n );\n }\n}\n","@import '../../../styles/variables.css';\n\n/* Text Content */\n.success-page__text-content {\n margin-bottom: 2rem;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 8px;\n}\n\n/* Success View Styles */\n.success-page__success-content {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 1rem;\n width: 100%;\n overflow-x: hidden;\n box-sizing: border-box;\n}\n.success-page__lottie-container {\n width: 80px;\n height: 80px;\n}\n/* Eliminar márgenes del h3 en el componente de éxito */\n.success-page__success-content rebill-typography[variant='h3'] {\n margin: 0 !important;\n padding: 0 !important;\n}\n\n.success-page__success-icon {\n display: flex;\n justify-content: center;\n margin: 0.5rem 0;\n}\n\n/* Info Cards */\n.success-page__info-card {\n padding: 24px;\n gap: 16px;\n width: 100%;\n max-width: 450px;\n border: 1px solid #ebedef;\n border-radius: 8px;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n}\n\n.success-page__card-row {\n display: flex;\n justify-content: space-between;\n align-items: start;\n min-height: 20px;\n gap: 15%;\n}\n\n.success-page__card-row:last-of-type {\n margin-bottom: 0;\n}\n\n.success-page__card-value {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n}\n\n.success-page__payment-method-display {\n display: flex;\n align-items: center;\n gap: 8px;\n justify-content: center;\n}\n\n.success-page__payment-method-display rebill-card-icon {\n display: inline-block;\n flex-shrink: 0;\n margin-right: 8px;\n vertical-align: middle;\n}\n\n.success-page__payment-method-display rebill-card-icon svg {\n display: block;\n}\n\n.success-page__payment-method-display rebill-icon {\n display: inline-block;\n vertical-align: middle;\n margin-right: 8px;\n}\n\n.success-page__payment-method-display rebill-icon div {\n display: block;\n}\n\n.success-page__card-divider {\n height: 1px;\n background: #e5e7eb;\n}\n\n.success-page__download-container {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: 2px;\n text-decoration: none;\n cursor: pointer;\n}\n\n.success-page__contact-info {\n text-align: left;\n}\n\n.success-page__reference-number {\n word-break: break-all;\n overflow-wrap: break-word;\n hyphens: auto;\n max-width: 100%;\n text-align: right;\n}\n\n.success-page__total-amount-container {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 8px;\n flex-direction: row;\n}\n\n.success-page__trial-pill {\n background-color: var(--rebill-color-green-light-2);\n border-radius: 4px;\n padding: 4px 6px 4px 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.success-page__next-charge-header {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n margin-bottom: 12px;\n}\n\n.success-page__next-charge-details {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n}\n\n.success-page__next-charge-amount {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 4px;\n}\n\n.success-page__next-charge-date {\n text-align: right;\n}\n\n.success-page__next-charge-section {\n margin-top: 12px;\n padding-top: 12px;\n}\n\n/* Responsive Styles */\n@media (max-width: 1024px) {\n .success-page__success-content {\n max-width: 100%;\n gap: 1.5rem;\n margin-left: 16px;\n margin-right: 16px;\n }\n\n .success-page__info-card {\n width: 100%;\n max-width: 100%;\n padding: 12px;\n }\n .success-page__text-content {\n gap: 12px;\n }\n}\n\n@media (max-width: 767px) {\n .success-page__info-card {\n padding: 12px;\n }\n\n .success-page__processing-container {\n padding: 0 16px;\n }\n}\n","import { Component, Event, EventEmitter, h, Prop, State } from '@stencil/core';\nimport { I18nService } from '../../../i18n/i18n.service';\nimport { ENUM_INSTALLMENT_MODEL } from '../../../models/enums/installment.enum';\nimport { PAYMENT_METHOD_ENUM } from '../../../models/enums/payment-methods.enum';\nimport { SESSION_ITEM_TYPE_ENUM } from '../../../models/enums/session.enum';\nimport { sessionState, SessionStore } from '../../../store/session.store';\nimport { formatDateTime } from '../../../utils';\nimport { getAssetURL } from '../../../utils/assets';\nimport { BREAKPOINT_ENUM, getBreakpoint, isBreakpointBelow } from '../../../utils/breakpoint';\nimport { COLORS_ENUM } from '../../../utils/color-class-mapper';\nimport { getCountryPaymentMethods } from '../../../utils/countries-payment-methods';\nimport { formatAmount } from '../../../utils/currency-formatter';\nimport {\n getInstallmentLabelSummary,\n getRecalculatedInstallmentAmount,\n} from '../../../utils/installment-utils';\nimport { PDFGenerator } from '../../../utils/pdf-generator';\n\n@Component({\n tag: 'success-page',\n styleUrl: 'success-page.css',\n shadow: false,\n})\nexport class CardSuccessPage {\n @Prop() typePaymentMethod: PAYMENT_METHOD_ENUM = PAYMENT_METHOD_ENUM.CARD;\n @Prop() country?: string = '';\n @Prop() bank?: string = '';\n @Prop() paymentMethodName?: string = '';\n @Prop() cardLastFour?: string = '';\n @Prop() paymentDate: string = '';\n @Prop() referenceNumber: string = '';\n @Prop() trialPeriodDays?: number = 0;\n @Prop() debitDay?: number = 0;\n @Prop() planAmount?: number = 0;\n @State() currentLocale: string = sessionState.currentLocale;\n @State() breakpoint: BREAKPOINT_ENUM = BREAKPOINT_ENUM.DESKTOP;\n\n @Event() successRedirect: EventEmitter<any>;\n @State() loaderProgress: number = 0;\n @State() isLoadingLottie: boolean = true;\n @State() showRedirectMessage: boolean = false;\n @Prop() timeToRedirect: number = 3000;\n private progressInterval?: number;\n private lottieContainer?: HTMLElement;\n private lottieAnimation?: any;\n private unsubscribeCurrentLocaleStore?: () => void;\n private successDisplayTimeout?: number;\n\n private applyStartCaseToBrand = (brand: string): string => {\n if (!brand) return '';\n\n return brand\n .toLowerCase()\n .split(/[\\s-]+/)\n .map(word => word.charAt(0).toUpperCase() + word.slice(1))\n .join(' ');\n };\n\n private getPaymentMethodConfig(method: PAYMENT_METHOD_ENUM) {\n const countryPaymentMethods = this.country ? getCountryPaymentMethods(this.country) : null;\n\n const countrySpecificMethod = countryPaymentMethods?.find(pm => pm.type === method);\n\n // Default configurations (fallback)\n const defaultConfigs = {\n [PAYMENT_METHOD_ENUM.CARD]: {\n key: PAYMENT_METHOD_ENUM.CARD,\n label: I18nService.translate('paymentMethods.card'),\n icons: ['doblecard'],\n },\n [PAYMENT_METHOD_ENUM.CASH]: {\n key: PAYMENT_METHOD_ENUM.CASH,\n label: I18nService.translate('paymentMethods.cash'),\n icons: ['pago-facil'],\n },\n [PAYMENT_METHOD_ENUM.BANK_TRANSFER]: {\n key: PAYMENT_METHOD_ENUM.BANK_TRANSFER,\n label: I18nService.translate('paymentMethods.bank_transfer'),\n icons: ['plus'],\n },\n };\n\n const defaultConfig = defaultConfigs[method];\n\n return {\n ...defaultConfig,\n icons: countrySpecificMethod?.icons || defaultConfig.icons,\n };\n }\n\n private getPaymentDate = (): string => {\n return this.paymentDate || '';\n };\n\n componentWillLoad() {\n this.breakpoint = getBreakpoint(window.innerWidth);\n this.unsubscribeCurrentLocaleStore = SessionStore.onChange('currentLocale', () => {\n this.currentLocale = sessionState.currentLocale;\n });\n\n if (sessionState.data?.itemInformation?.redirectSuccess) {\n this.successDisplayTimeout = window.setTimeout(() => {\n this.showRedirectMessage = true;\n this.loadLottieAnimation();\n }, 1500);\n\n setTimeout(() => {\n let redirectUrl = sessionState.data?.itemInformation?.redirectSuccess;\n if (redirectUrl) {\n this.successRedirect.emit({ redirectUrl });\n this.stopLoaderAnimation();\n }\n }, this.timeToRedirect);\n }\n }\n\n componentDidLoad() {\n window.addEventListener('resize', this.handleResize);\n if (!sessionState.data?.itemInformation?.redirectSuccess || this.showRedirectMessage) {\n this.loadLottieAnimation();\n }\n }\n\n disconnectedCallback() {\n if (this.unsubscribeCurrentLocaleStore) {\n this.unsubscribeCurrentLocaleStore();\n }\n if (this.successDisplayTimeout) {\n clearTimeout(this.successDisplayTimeout);\n }\n window.removeEventListener('resize', this.handleResize);\n this.stopLoaderAnimation();\n }\n\n private handleResize = () => {\n this.breakpoint = getBreakpoint(window.innerWidth);\n };\n private loadLottieAnimation = async () => {\n try {\n const lottie = await import('lottie-web');\n const animationData = await fetch(getAssetURL(`loader-redirect1.json`));\n const animationJson = await animationData.json();\n\n if (this.lottieContainer) {\n this.lottieAnimation = lottie.default.loadAnimation({\n container: this.lottieContainer,\n renderer: 'svg',\n loop: true,\n autoplay: true,\n animationData: animationJson,\n });\n } else {\n this.startLoaderAnimation();\n }\n } catch (error) {\n this.startLoaderAnimation();\n }\n };\n\n private startLoaderAnimation = () => {\n const duration = 3000;\n const interval = 50;\n const increment = (interval / duration) * 100;\n\n this.progressInterval = window.setInterval(() => {\n this.loaderProgress = Math.min(this.loaderProgress + increment, 100);\n if (this.loaderProgress >= 100) {\n this.stopLoaderAnimation();\n }\n }, interval);\n };\n\n private stopLoaderAnimation = () => {\n if (this.progressInterval) {\n clearInterval(this.progressInterval);\n this.progressInterval = undefined;\n }\n if (this.lottieAnimation) {\n this.lottieAnimation.destroy();\n this.lottieAnimation = undefined;\n }\n };\n\n private handleDownloadReceipt = async () => {\n try {\n await PDFGenerator.generateAndDownloadReceipt({\n paymentMethod:\n this.typePaymentMethod === PAYMENT_METHOD_ENUM.CARD\n ? this.textPaymentMethodCard()\n : this.paymentMethodName,\n ...(this.typePaymentMethod === PAYMENT_METHOD_ENUM.BANK_TRANSFER && { bank: this.bank }),\n ...(this.typePaymentMethod === PAYMENT_METHOD_ENUM.CARD && {\n cardBrand: this.applyStartCaseToBrand(sessionState.data.cardInformation?.brand || ''),\n }),\n ...(this.typePaymentMethod === PAYMENT_METHOD_ENUM.CARD && {\n cardLastFour: this.cardLastFour ?? sessionState.data.cardInformation?.lastFour,\n }),\n paymentDate:\n formatDateTime(this.getPaymentDate()) || formatDateTime(new Date().toISOString()),\n email: sessionState?.data?.userInformation?.email || '',\n referenceNumber: this.referenceNumber,\n productTitle: sessionState?.data?.itemInformation?.title || '',\n subtotal: this.getFormattedSubtotal(),\n total: this.getFormattedTotal(),\n currency: sessionState?.data?.pricing?.currency || ' ',\n installments:\n sessionState?.data?.pricing?.installments &&\n sessionState?.data?.cardInformation?.installments?.selectedInstallment\n ? `${getInstallmentLabelSummary(\n sessionState.data?.cardInformation?.installments?.selectedInstallment?.installment,\n getRecalculatedInstallmentAmount(\n sessionState.data?.cardInformation?.installments?.selectedInstallment\n ?.installmentAmount || 0,\n ),\n sessionState.data?.pricing?.currency,\n sessionState.data?.cardInformation?.installments?.selectedInstallment?.cft,\n sessionState.data?.cardInformation?.installments?.selectedInstallment?.model,\n )}\\n( ${I18nService.translate('processing.purchaseTotal')}: ${this.getFormattedTotal()} )${\n sessionState.data.cardInformation?.installments?.installments.find(\n installment =>\n installment.installment ===\n sessionState.data.cardInformation?.installments?.selectedInstallment\n ?.installment,\n )?.model === ENUM_INSTALLMENT_MODEL.CUSTOMER_FINANCED\n ? `\\n${I18nService.translate('installments.interest')}`\n : ''\n }`\n : '',\n discountAmount: this.getFormattedDiscountAmount(),\n trialPeriodDays:\n this.trialPeriodDays || sessionState.data?.itemInformation?.trial?.trialPeriodDays,\n debitDay: this.debitDay || sessionState.data?.itemInformation?.debitDay,\n planAmount: this.getFormattedSubtotal(this.planAmount),\n trialEndDate: this.hasFreeTrial() ? this.getTrialEndDateFormatted() : undefined,\n debitDate: this.hasDebitDay() ? this.getDebitDateFormatted() : undefined,\n isBankTransfer: this.typePaymentMethod === PAYMENT_METHOD_ENUM.BANK_TRANSFER,\n });\n } catch (error) {\n console.error('Error downloading receipt:', error);\n }\n };\n\n private getFormattedDiscountAmount = () => {\n if (sessionState?.data?.pricing?.discountAmount > 0) {\n const formattedAmount = formatAmount(\n sessionState.data?.pricing?.discountAmount,\n sessionState.data?.pricing?.currency,\n );\n return `-${formattedAmount}`;\n }\n return undefined;\n };\n\n private getFormattedSubtotal = (planAmount: number = 0 || null) => {\n return formatAmount(\n planAmount || sessionState?.data?.pricing?.subtotal,\n sessionState?.data?.pricing?.currency,\n );\n };\n\n private getFormattedTotal = () => {\n if (this.trialPeriodDays > 0) {\n return formatAmount(0, sessionState?.data?.pricing?.currency);\n }\n return formatAmount(sessionState?.data?.pricing?.total, sessionState?.data?.pricing?.currency);\n };\n\n private hasFreeTrial = () => {\n return (\n sessionState.data?.itemInformation?.type === SESSION_ITEM_TYPE_ENUM.PLAN &&\n sessionState.data?.itemInformation?.trial?.trialPeriodDays &&\n sessionState.data?.itemInformation?.trial?.trialPeriodDays > 0\n );\n };\n\n private hasDebitDay = () => {\n const debitDay = sessionState.data?.itemInformation?.debitDay;\n return debitDay && debitDay > 0;\n };\n\n private getTrialEndDateFormatted = () => {\n const trialEndsAt = sessionState.data?.itemInformation?.trial?.trialPeriodEndsAt;\n if (!trialEndsAt) return '';\n\n const date = new Date(trialEndsAt);\n const currentLanguage = I18nService.getCurrentLanguage();\n const locale =\n currentLanguage === 'es' ? 'es-ES' : currentLanguage === 'pt' ? 'pt-BR' : 'en-US';\n\n if (currentLanguage === 'en') {\n return `${date.toLocaleDateString(locale, { month: 'long' })} ${date.getDate()}`;\n } else {\n return `${date.getDate()} de ${date.toLocaleDateString(locale, { month: 'long' })}`;\n }\n };\n\n private getDebitDateFormatted = () => {\n const debitDay = sessionState.data?.itemInformation?.debitDay;\n if (!debitDay || debitDay <= 0) return '';\n\n const today = new Date();\n const targetDate = new Date(today);\n const currentLanguage = I18nService.getCurrentLanguage();\n const locale =\n currentLanguage === 'es' ? 'es-ES' : currentLanguage === 'pt' ? 'pt-BR' : 'en-US';\n if (debitDay < today.getDate()) {\n targetDate.setMonth(today.getMonth() + 1);\n }\n targetDate.setDate(debitDay);\n\n while (targetDate.getDate() !== debitDay) {\n targetDate.setDate(targetDate.getDate() - 1);\n }\n\n if (currentLanguage === 'en') {\n return `${targetDate.toLocaleDateString(locale, { month: 'long' })} ${targetDate.getDate()}`;\n } else {\n return `${targetDate.getDate()} de ${targetDate.toLocaleDateString(locale, { month: 'long' })}`;\n }\n };\n\n private textPaymentMethodCard = () => {\n const cardBrand = sessionState.data?.cardInformation?.brand;\n const cardLastFour = this.cardLastFour || sessionState?.data?.cardInformation?.lastFour;\n\n const formattedBrand = this.applyStartCaseToBrand(cardBrand || '');\n return cardBrand && cardLastFour ? `${formattedBrand} - ${cardLastFour}` : formattedBrand;\n };\n\n render() {\n const hasRedirect = sessionState.data?.itemInformation?.redirectSuccess;\n\n return (\n <rebill-checkout-single-column>\n <div class=\"success-page__success-content\">\n <rebill-typography variant=\"h3\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {hasRedirect && this.showRedirectMessage\n ? I18nService.translate('processing.redirectMessage')\n : I18nService.translate('processing.successTitle')}\n </rebill-typography>\n\n {hasRedirect && this.showRedirectMessage ? (\n <div class=\"redirect-message\">\n <div class=\"success-page__lottie-container\">\n <div ref={el => (this.lottieContainer = el)} class=\"lottie-animation\"></div>\n </div>\n </div>\n ) : (\n <div class=\"success-page__success-icon\">\n <svg\n width={isBreakpointBelow(this.breakpoint, BREAKPOINT_ENUM.DESKTOP) ? '64' : '96'}\n height={isBreakpointBelow(this.breakpoint, BREAKPOINT_ENUM.DESKTOP) ? '64' : '96'}\n viewBox=\"0 0 96 96\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M7.99219 47.998C7.99219 25.9067 25.9008 7.99805 47.9922 7.99805C70.0836 7.99805 87.9922 25.9067 87.9922 47.998C87.9922 70.0894 70.0836 87.998 47.9922 87.998C25.9008 87.998 7.99219 70.0894 7.99219 47.998ZM61.5401 39.2645C62.2396 38.4096 62.1136 37.1496 61.2587 36.4501C60.4038 35.7507 59.1437 35.8767 58.4443 36.7316L41.8437 57.0211L35.4064 50.5838C34.6254 49.8028 33.359 49.8028 32.578 50.5838C31.7969 51.3649 31.7969 52.6312 32.578 53.4123L40.578 61.4123C40.9775 61.8118 41.5275 62.0237 42.0918 61.9956C42.6562 61.9674 43.1823 61.7019 43.5401 61.2645L61.5401 39.2645Z\"\n fill=\"#35B093\"\n />\n </svg>\n </div>\n )}\n\n {/* Payment Details Card */}\n <div class=\"success-page__info-card\">\n <div class=\"success-page__card-row\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.SECONDARY}>\n {I18nService.translate('processing.paymentMethod')}\n </rebill-typography>\n <div class=\"success-page__card-value\">\n <div class=\"success-page__payment-method-display\">\n {this.typePaymentMethod === PAYMENT_METHOD_ENUM.CARD && (\n <>\n <rebill-card-icon\n card-brand={sessionState.data?.cardInformation?.brand || ''}\n />\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {this.textPaymentMethodCard()}\n </rebill-typography>\n </>\n )}\n {this.typePaymentMethod === PAYMENT_METHOD_ENUM.BANK_TRANSFER && (\n <div style={{ display: 'flex', alignItems: 'center', gap: '8px' }}>\n <div style={{ display: 'flex', alignItems: 'center', gap: '8px' }}>\n {this.getPaymentMethodConfig(PAYMENT_METHOD_ENUM.BANK_TRANSFER).icons.map(\n iconName => {\n return <rebill-icon name={iconName} size=\"24px\" />;\n },\n )}\n </div>\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {I18nService.translate('paymentMethods.bank_transfer')}\n </rebill-typography>\n </div>\n )}\n </div>\n </div>\n </div>\n {sessionState?.data?.pricing?.installments &&\n sessionState?.data?.cardInformation?.installments?.selectedInstallment && (\n <div>\n <div class=\"success-page__card-row\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.SECONDARY}>\n {I18nService.translate('summary.installments')}\n </rebill-typography>\n <div\n style={{\n display: 'flex',\n flexDirection: 'column',\n gap: '10px',\n alignItems: 'end',\n }}\n >\n <rebill-typography\n variant=\"body2\"\n color={COLORS_ENUM.PRIMARY_DARK_TEXT}\n style={{ textAlign: 'end' }}\n >\n {getInstallmentLabelSummary(\n sessionState.data?.cardInformation?.installments?.selectedInstallment\n ?.installment,\n getRecalculatedInstallmentAmount(\n sessionState.data?.cardInformation?.installments?.selectedInstallment\n ?.installmentAmount || 0,\n ),\n sessionState.data?.pricing?.currency,\n sessionState.data?.cardInformation?.installments?.selectedInstallment\n ?.cft,\n sessionState.data?.cardInformation?.installments?.selectedInstallment\n ?.model,\n )}\n </rebill-typography>\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {`( ${I18nService.translate('processing.purchaseTotal')}: ${this.getFormattedTotal()} )`}\n </rebill-typography>\n {sessionState.data.cardInformation?.installments?.installments.find(\n installment =>\n installment.installment ===\n sessionState.data.cardInformation?.installments?.selectedInstallment\n ?.installment,\n )?.model === ENUM_INSTALLMENT_MODEL.CUSTOMER_FINANCED && (\n <rebill-typography\n variant=\"italic\"\n color={COLORS_ENUM.SECONDARY}\n style={{ textAlign: 'end' }}\n >\n {`${I18nService.translate('installments.interest')}`}\n </rebill-typography>\n )}\n </div>\n </div>\n </div>\n )}\n <div class=\"success-page__card-row\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.SECONDARY}>\n {I18nService.translate('processing.paymentDate')}\n </rebill-typography>\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {formatDateTime(\n this.paymentDate || this.getPaymentDate() || sessionState.createdAt,\n ) || ''}\n </rebill-typography>\n </div>\n <div class=\"success-page__card-row\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.SECONDARY}>\n {I18nService.translate('processing.paymentEmail')}\n </rebill-typography>\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {sessionState?.data?.userInformation?.email}\n </rebill-typography>\n </div>\n <div class=\"success-page__card-row\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.SECONDARY}>\n {I18nService.translate('processing.paymentReference')}\n </rebill-typography>\n <rebill-typography\n variant=\"body2\"\n color={COLORS_ENUM.PRIMARY_DARK_TEXT}\n class=\"success-page__reference-number\"\n >\n {this.referenceNumber || ''}\n </rebill-typography>\n </div>\n </div>\n\n {/* Purchase Details Card */}\n <div class=\"success-page__info-card\">\n <rebill-typography variant=\"subtitle-bold\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {I18nService.translate('processing.purchaseDetails')}\n </rebill-typography>\n <div class=\"success-page__card-row\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.SECONDARY}>\n {I18nService.translate('processing.purchaseDetail')}\n </rebill-typography>\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {sessionState?.data?.itemInformation?.title || ''}\n </rebill-typography>\n </div>\n {!this.trialPeriodDays && (\n <div class=\"success-page__card-row\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.SECONDARY}>\n {I18nService.translate('processing.purchaseSubtotal')}\n </rebill-typography>\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {this.getFormattedSubtotal()}\n </rebill-typography>\n </div>\n )}\n {sessionState?.data?.pricing?.discountAmount > 0 && (\n <div class=\"success-page__card-row\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.SECONDARY}>\n {I18nService.translate('summary.discount')}\n </rebill-typography>\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {this.getFormattedDiscountAmount()}\n </rebill-typography>\n </div>\n )}\n <div class=\"success-page__card-row\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.SECONDARY}>\n {I18nService.translate('processing.purchaseMontoTotal')}\n </rebill-typography>\n <div class=\"success-page__total-amount-container\">\n {this.trialPeriodDays > 0 && (\n <div class=\"success-page__trial-pill\">\n <rebill-typography\n variant=\"body2\"\n align=\"center\"\n color={COLORS_ENUM.GREEN_TEXT}\n >\n {I18nService.translate('processing.trialPill', {\n days: this.trialPeriodDays,\n count: this.trialPeriodDays,\n })}\n </rebill-typography>\n </div>\n )}\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {this.getFormattedTotal()}\n </rebill-typography>\n </div>\n </div>\n {(this.trialPeriodDays || this.hasDebitDay()) && (\n <div class=\"success-page__card-divider\"></div>\n )}\n\n {/* Next Charge Section */}\n {(this.hasFreeTrial() || this.hasDebitDay()) && (\n <div class=\"success-page__next-charge-section\">\n <div class=\"success-page__next-charge-header\">\n <rebill-typography variant=\"subtitle-bold\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {I18nService.translate('processing.nextCharge')}\n </rebill-typography>\n <rebill-typography variant=\"subtitle-bold\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {I18nService.translate('processing.onDate', {\n date: this.hasFreeTrial()\n ? this.getTrialEndDateFormatted()\n : this.getDebitDateFormatted(),\n })}\n </rebill-typography>\n </div>\n <div class=\"success-page__card-row\">\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {this.hasFreeTrial() ? I18nService.translate('processing.atEndOfTrial') : ''}\n </rebill-typography>\n <rebill-typography variant=\"body2\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {this.getFormattedSubtotal(this.planAmount)}{' '}\n {I18nService.translate('processing.perMonth')}\n </rebill-typography>\n </div>\n </div>\n )}\n <div class=\"success-page__card-divider\"></div>\n <div class=\"success-page__download-container\">\n <svg\n class=\"download-icon\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M13.498 9.83333V12.1667C13.498 12.903 12.9011 13.5 12.1647 13.5H3.83138C3.095 13.5 2.49805 12.903 2.49805 12.1667V9.83333M7.99804 10V2.5M7.99804 10L5.66471 7.66667M7.99804 10L10.3314 7.66667\"\n stroke=\"currentColor\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n <rebill-button\n type=\"button\"\n variant=\"download\"\n size=\"small\"\n onClick={this.handleDownloadReceipt}\n >\n <rebill-typography variant=\"overline\" color={COLORS_ENUM.PRIMARY_DARK_TEXT}>\n {I18nService.translate('processing.download')}\n </rebill-typography>\n </rebill-button>\n </div>\n\n {/* Contact Info */}\n <div class=\"success-page__contact-info\">\n <rebill-typography variant=\"information-text\" color={COLORS_ENUM.SECONDARY}>\n {I18nService.translate('processing.downloadDescription')}\n </rebill-typography>\n </div>\n </div>\n </div>\n </rebill-checkout-single-column>\n );\n }\n}\n",":host {\n display: block;\n}\n\n.inputs-container {\n display: flex;\n flex-direction: column;\n gap: 16px;\n width: 100%;\n}\n.customer-exists {\n display: flex;\n justify-content: flex-end;\n margin-bottom: 16px;\n}\n","import { Component, Event, EventEmitter, h, Host, Listen, Prop } from '@stencil/core';\nimport { api } from '../../../api';\nimport { I18nService } from '../../../i18n/i18n.service';\nimport { sessionState, SessionStore } from '../../../store/session.store';\n\n@Component({\n tag: 'user-information',\n styleUrl: 'user-information.css',\n shadow: false,\n})\nexport class UserInformation {\n @Prop() userInformation: {\n email?: string;\n fullName?: string;\n countryCode?: string;\n phoneNumber?: {\n number: string;\n countryCode: string;\n };\n } = {\n email: '',\n fullName: '',\n countryCode: '',\n };\n\n @Prop() errors: {\n email?: string;\n fullName?: string;\n } | null = null;\n\n @Prop() customerExists: boolean = false;\n @Prop() disabled: boolean = false;\n @Event() onRebillAccountClick: EventEmitter<boolean>;\n\n private translateError(errorKey: string | undefined): string {\n if (!errorKey) return '';\n if (errorKey.includes('validation.') || errorKey.includes('paymentErrors.')) {\n return I18nService.translate(errorKey);\n }\n return errorKey;\n }\n\n @Listen('input')\n handleInputChange(event: CustomEvent<{ id: string; value: string }>) {\n if (!event.detail) return;\n\n const { id, value } = event.detail;\n SessionStore.setUserInformation({ [id]: value });\n }\n\n @Listen('blur')\n handleBlur(event: CustomEvent<{ id: string; value: string }>) {\n if (!event.detail) return;\n\n const { id, value } = event.detail;\n SessionStore.setUserInformation({ [id]: value });\n }\n\n private getCardLabels() {\n const labels = [];\n\n if (sessionState.data.prefilledData.email) {\n labels.push({\n label: I18nService.translate('userInformation.emailPlaceholder'),\n value: sessionState.data.prefilledData.email,\n });\n SessionStore.setUserInformation({\n ...sessionState.data.userInformation,\n email: sessionState.data.prefilledData.email,\n });\n }\n\n if (sessionState.data.prefilledData.fullName) {\n labels.push({\n label: I18nService.translate('userInformation.fullNamePlaceholder'),\n value: sessionState.data.prefilledData.fullName,\n });\n SessionStore.setUserInformation({\n ...sessionState.data.userInformation,\n fullName: sessionState.data.prefilledData.fullName,\n });\n }\n\n return labels;\n }\n private async handleRebillAccountClick() {\n api.otp.generate(sessionState.data.sessionId, {\n email: sessionState.data.userInformation.email,\n });\n this.onRebillAccountClick.emit(true);\n }\n\n private renderInputs() {\n const hasPrefilledEmail = sessionState.data.prefilledData.email;\n const hasPrefilledName = sessionState.data.prefilledData.fullName;\n\n const inputs = [];\n\n if (!hasPrefilledEmail) {\n inputs.push(\n <rebill-input-text\n id=\"email\"\n variant=\"floating\"\n label={I18nService.translate('userInformation.emailPlaceholder')}\n placeholder={I18nService.translate('userInformation.emailPlaceholder')}\n left-icon=\"email\"\n clearable={true}\n disabled={this.disabled}\n error={this.translateError(this.errors?.email)}\n />,\n );\n }\n\n if (!hasPrefilledName) {\n inputs.push(\n <rebill-input-text\n id=\"fullName\"\n variant=\"floating\"\n label={I18nService.translate('userInformation.fullNamePlaceholder')}\n placeholder={I18nService.translate('userInformation.fullNamePlaceholder')}\n disabled={this.disabled}\n error={this.translateError(this.errors?.fullName)}\n />,\n );\n }\n\n return inputs.length > 0 ? (\n <div\n class=\"inputs-container\"\n style={{\n marginTop: inputs.length > 0 && (hasPrefilledEmail || hasPrefilledName) ? '1rem' : '0',\n }}\n >\n {inputs}\n </div>\n ) : null;\n }\n\n render() {\n const customerExistsButton = (\n <div class=\"customer-exists\">\n <rebill-button\n style={{\n visibility: this.customerExists ? 'visible' : 'hidden',\n opacity: this.customerExists ? '1' : '0',\n transition: 'opacity 0.3s ease-in-out',\n }}\n variant=\"text\"\n size=\"small\"\n onClick={() => this.handleRebillAccountClick()}\n icon=\"lock\"\n >\n {I18nService.translate('userInformation.rebillAccount')}\n <rebill-icon name=\"arrow-right\" />\n </rebill-button>\n </div>\n );\n\n const hasPrefilledEmail = sessionState.data.prefilledData.email;\n const hasPrefilledName = sessionState.data.prefilledData.fullName;\n const hasAnyPrefilled = hasPrefilledEmail || hasPrefilledName;\n\n return (\n <Host>\n {customerExistsButton}\n {hasAnyPrefilled && (\n <rebill-card\n cardTitle={I18nService.translate('userInformation.personalInformation')}\n cardLabels={this.getCardLabels()}\n />\n )}\n {this.renderInputs()}\n </Host>\n );\n }\n}\n"],"names":["f","m","u","r","i","BREAKPOINT_ENUM","PLAN_FREQUENCY_ENUM","I18nService","sessionState","SESSION_ITEM_TYPE_ENUM","h","isBreakpointBelow","formatAmount","getInstallmentDescription","COLORS_ENUM","SESSION_DISCOUNT_TYPE_ENUM","i18n","copyToClipboard","createCountdownTimer","api","SessionStore","PAYMENT_METHOD_ENUM","getCountryPaymentMethods","getBreakpoint","getAssetURL","PDFGenerator","formatDateTime","getInstallmentLabelSummary","getRecalculatedInstallmentAmount","ENUM_INSTALLMENT_MODEL","Host"],"mappings":"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","x_google_ignoreList":[0,1]}