rebill-web-components-sdk 1.8.32 → 1.8.34-beta.0
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.
- package/dist/cjs/apm-checkout_19.cjs.entry.js +12 -12
- package/dist/cjs/card-identification_5.cjs.entry.js +8 -8
- package/dist/cjs/collapsible-card.cjs.entry.js +1 -1
- package/dist/cjs/discount-coupon.rebill-divider.entry.cjs.js.map +1 -0
- package/dist/cjs/discount-coupon_2.cjs.entry.js +157 -0
- package/dist/cjs/index-C-VTnc0I.js.map +1 -1
- package/dist/cjs/input-otp.cjs.entry.js +2 -2
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/organization-logo.rebill-card-icon.rebill-checkout-single-column.rebill-footer.entry.cjs.js.map +1 -1
- package/dist/cjs/organization-logo_4.cjs.entry.js +3 -3
- package/dist/cjs/otp-component_7.cjs.entry.js +8 -8
- package/dist/cjs/rebill-alert.cjs.entry.js +2 -2
- package/dist/cjs/rebill-card-carousel.cjs.entry.js +1 -1
- package/dist/cjs/rebill-card.cjs.entry.js +1 -1
- package/dist/cjs/rebill-container_2.cjs.entry.js +2 -2
- package/dist/cjs/rebill-flex-container.cjs.entry.js +1 -1
- package/dist/cjs/rebill-form.cjs.entry.js +1 -1
- package/dist/cjs/rebill-grid-container.cjs.entry.js +1 -1
- package/dist/cjs/rebill-input-select.cjs.entry.js +2 -2
- package/dist/cjs/rebill-input-text.cjs.entry.js +2 -2
- package/dist/cjs/rebill-renewal.cjs.entry.js +32 -12
- package/dist/cjs/rebill-renewal.entry.cjs.js.map +1 -1
- package/dist/cjs/rebill-timeline-debit-day.rebill-timeline-free-trial.entry.cjs.js.map +1 -0
- package/dist/cjs/{discount-coupon_3.cjs.entry.js → rebill-timeline-debit-day_2.cjs.entry.js} +3 -117
- package/dist/cjs/rebill-vertical-divider.cjs.entry.js +1 -1
- package/dist/cjs/rebill-web-components-sdk.cjs.js +1 -1
- package/dist/cjs/renewal-success-page.renewal-summary.entry.cjs.js.map +1 -1
- package/dist/cjs/renewal-success-page_2.cjs.entry.js +41 -13
- package/dist/cjs/{renewal.store-C9AesGY1.js → renewal.store-BaH9Id4E.js} +5 -2
- package/dist/cjs/renewal.store-BaH9Id4E.js.map +1 -0
- package/dist/cjs/root-component.cjs.entry.js +1 -1
- package/dist/collection/components/checkout/discount-coupon/discount-coupon.css +4 -0
- package/dist/collection/components/checkout/discount-coupon/discount-coupon.js +104 -4
- package/dist/collection/components/checkout/discount-coupon/discount-coupon.js.map +1 -1
- package/dist/collection/components/checkout/otp/otp.js +4 -4
- package/dist/collection/components/checkout/payment-method-selector/card-fields/card-fields-wrapper.js +2 -2
- package/dist/collection/components/checkout/payment-method-selector/card-fields/identification/identification.js +1 -1
- package/dist/collection/components/checkout/payment-method-selector/card-fields/iframe/CardIframe.js +2 -2
- package/dist/collection/components/checkout/payment-method-selector/card-fields/iframe/skeleton/CardSkeleton.js +1 -1
- package/dist/collection/components/checkout/payment-method-selector/card-fields/installments/installments.js +2 -2
- package/dist/collection/components/checkout/rebill-footer/rebill-footer.css +1 -1
- package/dist/collection/components/checkout/rebill-footer/rebill-footer.js +1 -1
- package/dist/collection/components/checkout/user-information/user-information-phone.js +1 -1
- package/dist/collection/components/checkout/user-information/user-information.js +3 -3
- package/dist/collection/components/renewal/rebill-renewal.js +31 -11
- package/dist/collection/components/renewal/rebill-renewal.js.map +1 -1
- package/dist/collection/components/renewal/renewal-success-page/renewal-success-page.js +2 -2
- package/dist/collection/components/renewal/renewal-summary/renewal-summary.js +101 -16
- package/dist/collection/components/renewal/renewal-summary/renewal-summary.js.map +1 -1
- package/dist/collection/components/root-component/root-component.js +1 -1
- package/dist/collection/components/shared/alert/alert.js +2 -2
- package/dist/collection/components/shared/card/card.js +1 -1
- package/dist/collection/components/shared/card-carousel/card-carousel.js +1 -1
- package/dist/collection/components/shared/collapsible-card/collapsible-card.js +1 -1
- package/dist/collection/components/shared/divider/divider.js +1 -1
- package/dist/collection/components/shared/divider/vertical-divider.js +1 -1
- package/dist/collection/components/shared/form/form.js +1 -1
- package/dist/collection/components/shared/inputs/input-checkbox/input-checkbox.js +1 -1
- package/dist/collection/components/shared/inputs/input-combo/input-combo.js +1 -1
- package/dist/collection/components/shared/inputs/input-otp/input-otp.js +2 -2
- package/dist/collection/components/shared/inputs/input-phone/input-phone.js +2 -2
- package/dist/collection/components/shared/inputs/input-select/input-select.js +2 -2
- package/dist/collection/components/shared/inputs/input-text/input-text.js +2 -2
- package/dist/collection/components/shared/layouts/custom/single-column/checkout-single-column.js +1 -1
- package/dist/collection/components/shared/layouts/generics/container.js +1 -1
- package/dist/collection/components/shared/layouts/generics/flex.js +1 -1
- package/dist/collection/components/shared/layouts/generics/grid.js +1 -1
- package/dist/collection/components/shared/mode-sandbox/mode-sandbox-mobile.js +1 -1
- package/dist/collection/components/shared/selectable-card/selectable-card.js +2 -2
- package/dist/collection/components/shared/singlePaymentMethod/singlePaymentMethod.js +4 -4
- package/dist/collection/components/shared/timeline/timeline-debit-day.js +1 -1
- package/dist/collection/components/shared/timeline/timeline-free-trial.js +1 -1
- package/dist/collection/models/renewal.model.js.map +1 -1
- package/dist/collection/store/renewal.store.js +3 -0
- package/dist/collection/store/renewal.store.js.map +1 -1
- package/dist/components/apm-checkout.js +1 -1
- package/dist/components/bank-transfer.js +1 -1
- package/dist/components/card-fields-wrapper.js +1 -1
- package/dist/components/card-identification.js +1 -1
- package/dist/components/card-iframe.js +1 -1
- package/dist/components/card-skeleton.js +1 -1
- package/dist/components/collapsible-card.js +1 -1
- package/dist/components/discount-coupon.js +1 -1
- package/dist/components/input-otp.js +1 -1
- package/dist/components/otp-component.js +1 -1
- package/dist/components/{p-BbLfqjb0.js → p-3K2fnS0h.js} +5 -5
- package/dist/components/{p-BbLfqjb0.js.map → p-3K2fnS0h.js.map} +1 -1
- package/dist/components/p-8BpuJ_V5.js.map +1 -1
- package/dist/components/{p-Dm2xJSTe.js → p-B0QvmxUI.js} +3 -3
- package/dist/components/{p-Dm2xJSTe.js.map → p-B0QvmxUI.js.map} +1 -1
- package/dist/components/{p-CYhj6VLQ.js → p-B544NesK.js} +4 -4
- package/dist/components/{p-CYhj6VLQ.js.map → p-B544NesK.js.map} +1 -1
- package/dist/components/{p-mA3Sj5fj.js → p-B7uE6iBd.js} +11 -11
- package/dist/components/{p-mA3Sj5fj.js.map → p-B7uE6iBd.js.map} +1 -1
- package/dist/components/{p-1ZvL9CLG.js → p-BLbS7nF7.js} +3 -3
- package/dist/components/{p-1ZvL9CLG.js.map → p-BLbS7nF7.js.map} +1 -1
- package/dist/components/{p-qI3t-gYu.js → p-BZYd-So1.js} +4 -4
- package/dist/components/{p-qI3t-gYu.js.map → p-BZYd-So1.js.map} +1 -1
- package/dist/components/{p-tTqPr5zM.js → p-BeVdyYff.js} +6 -6
- package/dist/components/{p-tTqPr5zM.js.map → p-BeVdyYff.js.map} +1 -1
- package/dist/components/{p-1I-sUD5D.js → p-BuNsfNGm.js} +6 -6
- package/dist/components/{p-1I-sUD5D.js.map → p-BuNsfNGm.js.map} +1 -1
- package/dist/components/{p-BV_MHtDc.js → p-C0LGxeng.js} +3 -3
- package/dist/components/{p-BV_MHtDc.js.map → p-C0LGxeng.js.map} +1 -1
- package/dist/components/{p-DvXuQN4U.js → p-CD0TNzOh.js} +12 -12
- package/dist/components/{p-DvXuQN4U.js.map → p-CD0TNzOh.js.map} +1 -1
- package/dist/components/{p-wjfhDzgd.js → p-CKYowY5T.js} +4 -4
- package/dist/components/{p-wjfhDzgd.js.map → p-CKYowY5T.js.map} +1 -1
- package/dist/components/{p-ChnuJbVe.js → p-C_S6-o9t.js} +10 -10
- package/dist/components/{p-ChnuJbVe.js.map → p-C_S6-o9t.js.map} +1 -1
- package/dist/components/{p-CKiwr2yo.js → p-CajUouzQ.js} +3 -3
- package/dist/components/{p-CKiwr2yo.js.map → p-CajUouzQ.js.map} +1 -1
- package/dist/components/{p-fEiok6NF.js → p-CfUbJq8-.js} +3 -3
- package/dist/components/{p-fEiok6NF.js.map → p-CfUbJq8-.js.map} +1 -1
- package/dist/components/{p-BWkW7_Hh.js → p-CisP549A.js} +36 -9
- package/dist/components/p-CisP549A.js.map +1 -0
- package/dist/components/{p-DiNW75Kd.js → p-CmYsenWG.js} +3 -3
- package/dist/components/{p-DiNW75Kd.js.map → p-CmYsenWG.js.map} +1 -1
- package/dist/components/{p-QzWBUSLD.js → p-CneaXzeq.js} +4 -4
- package/dist/components/{p-QzWBUSLD.js.map → p-CneaXzeq.js.map} +1 -1
- package/dist/components/{p-Di8WeTd9.js → p-CuX2faVH.js} +4 -4
- package/dist/components/{p-Di8WeTd9.js.map → p-CuX2faVH.js.map} +1 -1
- package/dist/components/{p-h8TZeiqt.js → p-D0AmEJnp.js} +6 -6
- package/dist/components/{p-h8TZeiqt.js.map → p-D0AmEJnp.js.map} +1 -1
- package/dist/components/{p-B1BCKuQ0.js → p-D1lAYXxG.js} +8 -8
- package/dist/components/{p-B1BCKuQ0.js.map → p-D1lAYXxG.js.map} +1 -1
- package/dist/components/{p-BnBTbmTe.js → p-DA0QxWuE.js} +4 -4
- package/dist/components/{p-BnBTbmTe.js.map → p-DA0QxWuE.js.map} +1 -1
- package/dist/components/{p-CpXk4UfE.js → p-DBi6K19S.js} +5 -5
- package/dist/components/{p-CpXk4UfE.js.map → p-DBi6K19S.js.map} +1 -1
- package/dist/components/{p-gj5jUg6C.js → p-DDp9qjAz.js} +3 -3
- package/dist/components/{p-gj5jUg6C.js.map → p-DDp9qjAz.js.map} +1 -1
- package/dist/components/{p-DlrQ_kVv.js → p-DIILFLsN.js} +5 -5
- package/dist/components/{p-DlrQ_kVv.js.map → p-DIILFLsN.js.map} +1 -1
- package/dist/components/{p-CNBrNMEa.js → p-DKn8wDv6.js} +3 -3
- package/dist/components/{p-CNBrNMEa.js.map → p-DKn8wDv6.js.map} +1 -1
- package/dist/components/{p-D6yu2OYw.js → p-DPUz_1Ev.js} +5 -5
- package/dist/components/{p-D6yu2OYw.js.map → p-DPUz_1Ev.js.map} +1 -1
- package/dist/components/{p-BL08tUBX.js → p-DRTzT9ks.js} +3 -3
- package/dist/components/{p-BL08tUBX.js.map → p-DRTzT9ks.js.map} +1 -1
- package/dist/components/{p-DSFlA7FF.js → p-DaS8xGPM.js} +5 -5
- package/dist/components/{p-DSFlA7FF.js.map → p-DaS8xGPM.js.map} +1 -1
- package/dist/components/{p-DZWQyp55.js → p-DgRM4z7g.js} +3 -3
- package/dist/components/{p-DZWQyp55.js.map → p-DgRM4z7g.js.map} +1 -1
- package/dist/components/{p-DU4kUISl.js → p-Dm8Dxmer.js} +5 -5
- package/dist/components/{p-DU4kUISl.js.map → p-Dm8Dxmer.js.map} +1 -1
- package/dist/components/{p-DrAiGSzG.js → p-Dp8EoajW.js} +3 -3
- package/dist/components/{p-DrAiGSzG.js.map → p-Dp8EoajW.js.map} +1 -1
- package/dist/components/{p-BX1_zmbg.js → p-DvV5MmYi.js} +5 -5
- package/dist/components/{p-BX1_zmbg.js.map → p-DvV5MmYi.js.map} +1 -1
- package/dist/components/{p-4hVDutj0.js → p-DzdUnkvh.js} +3 -3
- package/dist/components/{p-4hVDutj0.js.map → p-DzdUnkvh.js.map} +1 -1
- package/dist/components/{p-D3QILlvg.js → p-HzmATjhQ.js} +5 -5
- package/dist/components/p-HzmATjhQ.js.map +1 -0
- package/dist/components/{p-CVtNCEPd.js → p-PBF27XTU.js} +3 -3
- package/dist/components/{p-CVtNCEPd.js.map → p-PBF27XTU.js.map} +1 -1
- package/dist/components/{p-BmjU_TBT.js → p-QTa3HvQl.js} +3 -3
- package/dist/components/{p-BmjU_TBT.js.map → p-QTa3HvQl.js.map} +1 -1
- package/dist/components/{p-WQJ1HwUp.js → p-dgrAtFYi.js} +6 -6
- package/dist/components/{p-WQJ1HwUp.js.map → p-dgrAtFYi.js.map} +1 -1
- package/dist/components/{p-RGadlsa-.js → p-hpg1lOUJ.js} +5 -2
- package/dist/components/p-hpg1lOUJ.js.map +1 -0
- package/dist/components/{p-D4oYYfeG.js → p-nkv8Z87a.js} +8 -8
- package/dist/components/{p-D4oYYfeG.js.map → p-nkv8Z87a.js.map} +1 -1
- package/dist/components/{p-dtookouT.js → p-nvpvagPB.js} +7 -7
- package/dist/components/{p-dtookouT.js.map → p-nvpvagPB.js.map} +1 -1
- package/dist/components/{p-B-Wxp2_p.js → p-oE_0ElW3.js} +69 -20
- package/dist/components/p-oE_0ElW3.js.map +1 -0
- package/dist/components/{p-CKZvdOpK.js → p-qDaQOriJ.js} +4 -4
- package/dist/components/{p-CKZvdOpK.js.map → p-qDaQOriJ.js.map} +1 -1
- package/dist/components/{p-lfUd06gm.js → p-rnhSIhil.js} +3 -3
- package/dist/components/{p-lfUd06gm.js.map → p-rnhSIhil.js.map} +1 -1
- package/dist/components/{p-Dr1acigj.js → p-xNgCL9nV.js} +4 -4
- package/dist/components/{p-Dr1acigj.js.map → p-xNgCL9nV.js.map} +1 -1
- package/dist/components/payment-method-selector.js +1 -1
- package/dist/components/qr-code.js +1 -1
- package/dist/components/rebill-address-form.js +1 -1
- package/dist/components/rebill-address-search.js +1 -1
- package/dist/components/rebill-address.js +1 -1
- package/dist/components/rebill-alert.js +1 -1
- package/dist/components/rebill-bank-selector.js +1 -1
- package/dist/components/rebill-card-carousel.js +1 -1
- package/dist/components/rebill-card.js +1 -1
- package/dist/components/rebill-checkout-form.js +1 -1
- package/dist/components/rebill-checkout-single-column.js +1 -1
- package/dist/components/rebill-checkout.js +39 -39
- package/dist/components/rebill-container.js +1 -1
- package/dist/components/rebill-divider.js +1 -1
- package/dist/components/rebill-flex-container.js +1 -1
- package/dist/components/rebill-footer.js +1 -1
- package/dist/components/rebill-form.js +1 -1
- package/dist/components/rebill-grid-container.js +1 -1
- package/dist/components/rebill-input-checkbox.js +1 -1
- package/dist/components/rebill-input-combo.js +1 -1
- package/dist/components/rebill-input-phone.js +1 -1
- package/dist/components/rebill-input-select.js +1 -1
- package/dist/components/rebill-input-text.js +1 -1
- package/dist/components/rebill-installments.js +1 -1
- package/dist/components/rebill-mode-sandbox-mobile.js +1 -1
- package/dist/components/rebill-processing-payment.js +1 -1
- package/dist/components/rebill-renewal.js +77 -51
- package/dist/components/rebill-renewal.js.map +1 -1
- package/dist/components/rebill-summary.js +1 -1
- package/dist/components/rebill-timeline-debit-day.js +1 -1
- package/dist/components/rebill-timeline-free-trial.js +1 -1
- package/dist/components/rebill-vertical-divider.js +1 -1
- package/dist/components/renewal-success-page.js +1 -1
- package/dist/components/renewal-summary.js +1 -1
- package/dist/components/root-component.js +6 -6
- package/dist/components/selectable-card.js +1 -1
- package/dist/components/single-payment-method.js +1 -1
- package/dist/components/success-page.js +1 -1
- package/dist/components/user-information-phone.js +1 -1
- package/dist/components/user-information.js +1 -1
- package/dist/esm/apm-checkout_19.entry.js +12 -12
- package/dist/esm/card-identification_5.entry.js +8 -8
- package/dist/esm/collapsible-card.entry.js +1 -1
- package/dist/esm/discount-coupon.rebill-divider.entry.js.map +1 -0
- package/dist/esm/discount-coupon_2.entry.js +154 -0
- package/dist/esm/index-D8cwEAmw.js.map +1 -1
- package/dist/esm/input-otp.entry.js +2 -2
- package/dist/esm/loader.js +1 -1
- package/dist/esm/organization-logo.rebill-card-icon.rebill-checkout-single-column.rebill-footer.entry.js.map +1 -1
- package/dist/esm/organization-logo_4.entry.js +3 -3
- package/dist/esm/otp-component_7.entry.js +8 -8
- package/dist/esm/rebill-alert.entry.js +2 -2
- package/dist/esm/rebill-card-carousel.entry.js +1 -1
- package/dist/esm/rebill-card.entry.js +1 -1
- package/dist/esm/rebill-container_2.entry.js +2 -2
- package/dist/esm/rebill-flex-container.entry.js +1 -1
- package/dist/esm/rebill-form.entry.js +1 -1
- package/dist/esm/rebill-grid-container.entry.js +1 -1
- package/dist/esm/rebill-input-select.entry.js +2 -2
- package/dist/esm/rebill-input-text.entry.js +2 -2
- package/dist/esm/rebill-renewal.entry.js +32 -12
- package/dist/esm/rebill-renewal.entry.js.map +1 -1
- package/dist/esm/rebill-timeline-debit-day.rebill-timeline-free-trial.entry.js.map +1 -0
- package/dist/esm/{discount-coupon_3.entry.js → rebill-timeline-debit-day_2.entry.js} +6 -119
- package/dist/esm/rebill-vertical-divider.entry.js +1 -1
- package/dist/esm/rebill-web-components-sdk.js +1 -1
- package/dist/esm/renewal-success-page.renewal-summary.entry.js.map +1 -1
- package/dist/esm/renewal-success-page_2.entry.js +41 -13
- package/dist/esm/{renewal.store-C6hSvhsF.js → renewal.store-vAxzxA8H.js} +5 -2
- package/dist/esm/renewal.store-vAxzxA8H.js.map +1 -0
- package/dist/esm/root-component.entry.js +1 -1
- package/dist/rebill-web-components-sdk/discount-coupon.rebill-divider.entry.esm.js.map +1 -0
- package/dist/rebill-web-components-sdk/organization-logo.rebill-card-icon.rebill-checkout-single-column.rebill-footer.entry.esm.js.map +1 -1
- package/dist/rebill-web-components-sdk/p-012e3770.entry.js +2 -0
- package/dist/rebill-web-components-sdk/p-012e3770.entry.js.map +1 -0
- package/dist/rebill-web-components-sdk/{p-1c3e7171.entry.js → p-0239917e.entry.js} +2 -2
- package/dist/rebill-web-components-sdk/{p-edb69e28.entry.js → p-1ac036d7.entry.js} +2 -2
- package/dist/rebill-web-components-sdk/{p-36a897c4.entry.js → p-1d7e392c.entry.js} +2 -2
- package/dist/rebill-web-components-sdk/{p-e5b0f2b9.entry.js → p-2ebb1d54.entry.js} +2 -2
- package/dist/rebill-web-components-sdk/{p-e8eadef6.entry.js → p-3a5bdb02.entry.js} +2 -2
- package/dist/rebill-web-components-sdk/{p-5df71605.entry.js → p-43924d1d.entry.js} +2 -2
- package/dist/rebill-web-components-sdk/p-43924d1d.entry.js.map +1 -0
- package/dist/rebill-web-components-sdk/{p-9084f3ef.entry.js → p-47ee3edc.entry.js} +2 -2
- package/dist/rebill-web-components-sdk/{p-92de0c03.entry.js → p-508cc019.entry.js} +2 -2
- package/dist/rebill-web-components-sdk/{p-924e7ec2.entry.js → p-515e9e16.entry.js} +2 -2
- package/dist/rebill-web-components-sdk/p-5ac0522d.entry.js +2 -0
- package/dist/rebill-web-components-sdk/{p-821e1fed.entry.js → p-6089b208.entry.js} +2 -2
- package/dist/rebill-web-components-sdk/p-63baba00.entry.js +2 -0
- package/dist/rebill-web-components-sdk/p-63baba00.entry.js.map +1 -0
- package/dist/rebill-web-components-sdk/{p-a0d6b0c0.entry.js → p-6ea98ccf.entry.js} +2 -2
- package/dist/rebill-web-components-sdk/{p-bc6f455d.entry.js → p-7287e0f0.entry.js} +2 -2
- package/dist/rebill-web-components-sdk/{p-26f12a67.entry.js → p-8c7f75c0.entry.js} +2 -2
- package/dist/rebill-web-components-sdk/{p-26f12a67.entry.js.map → p-8c7f75c0.entry.js.map} +1 -1
- package/dist/rebill-web-components-sdk/p-D8cwEAmw.js.map +1 -1
- package/dist/rebill-web-components-sdk/{p-c8a5a137.entry.js → p-aa96087c.entry.js} +2 -2
- package/dist/rebill-web-components-sdk/{p-63020e78.entry.js → p-ad9a6685.entry.js} +2 -2
- package/dist/rebill-web-components-sdk/{p-7e94aec8.entry.js → p-e0a3f3a8.entry.js} +2 -2
- package/dist/rebill-web-components-sdk/p-e242be38.entry.js +2 -0
- package/dist/rebill-web-components-sdk/p-e242be38.entry.js.map +1 -0
- package/dist/rebill-web-components-sdk/p-f672574a.entry.js +2 -0
- package/dist/rebill-web-components-sdk/p-nVuaISVM.js +2 -0
- package/dist/rebill-web-components-sdk/p-nVuaISVM.js.map +1 -0
- package/dist/rebill-web-components-sdk/rebill-renewal.entry.esm.js.map +1 -1
- package/dist/rebill-web-components-sdk/rebill-timeline-debit-day.rebill-timeline-free-trial.entry.esm.js.map +1 -0
- package/dist/rebill-web-components-sdk/rebill-web-components-sdk.esm.js +1 -1
- package/dist/rebill-web-components-sdk/renewal-success-page.renewal-summary.entry.esm.js.map +1 -1
- package/dist/types/components/checkout/discount-coupon/discount-coupon.d.ts +5 -0
- package/dist/types/components/renewal/renewal-summary/renewal-summary.d.ts +12 -5
- package/dist/types/components.d.ts +24 -4
- package/dist/types/models/renewal.model.d.ts +3 -0
- package/package.json +1 -1
- package/dist/cjs/discount-coupon.rebill-timeline-debit-day.rebill-timeline-free-trial.entry.cjs.js.map +0 -1
- package/dist/cjs/rebill-divider.cjs.entry.js +0 -18
- package/dist/cjs/rebill-divider.entry.cjs.js.map +0 -1
- package/dist/cjs/renewal.store-C9AesGY1.js.map +0 -1
- package/dist/components/p-B-Wxp2_p.js.map +0 -1
- package/dist/components/p-BWkW7_Hh.js.map +0 -1
- package/dist/components/p-D3QILlvg.js.map +0 -1
- package/dist/components/p-RGadlsa-.js.map +0 -1
- package/dist/esm/discount-coupon.rebill-timeline-debit-day.rebill-timeline-free-trial.entry.js.map +0 -1
- package/dist/esm/rebill-divider.entry.js +0 -16
- package/dist/esm/rebill-divider.entry.js.map +0 -1
- package/dist/esm/renewal.store-C6hSvhsF.js.map +0 -1
- package/dist/rebill-web-components-sdk/discount-coupon.rebill-timeline-debit-day.rebill-timeline-free-trial.entry.esm.js.map +0 -1
- package/dist/rebill-web-components-sdk/p-43675422.entry.js +0 -2
- package/dist/rebill-web-components-sdk/p-43675422.entry.js.map +0 -1
- package/dist/rebill-web-components-sdk/p-51571e15.entry.js +0 -2
- package/dist/rebill-web-components-sdk/p-5df71605.entry.js.map +0 -1
- package/dist/rebill-web-components-sdk/p-7ea96b11.entry.js +0 -2
- package/dist/rebill-web-components-sdk/p-CdYpsLqg.js +0 -2
- package/dist/rebill-web-components-sdk/p-CdYpsLqg.js.map +0 -1
- package/dist/rebill-web-components-sdk/p-b519d8a2.entry.js +0 -2
- package/dist/rebill-web-components-sdk/p-b519d8a2.entry.js.map +0 -1
- package/dist/rebill-web-components-sdk/p-eb6a2c0d.entry.js +0 -2
- package/dist/rebill-web-components-sdk/p-eb6a2c0d.entry.js.map +0 -1
- package/dist/rebill-web-components-sdk/rebill-divider.entry.esm.js.map +0 -1
- /package/dist/rebill-web-components-sdk/{p-1c3e7171.entry.js.map → p-0239917e.entry.js.map} +0 -0
- /package/dist/rebill-web-components-sdk/{p-edb69e28.entry.js.map → p-1ac036d7.entry.js.map} +0 -0
- /package/dist/rebill-web-components-sdk/{p-36a897c4.entry.js.map → p-1d7e392c.entry.js.map} +0 -0
- /package/dist/rebill-web-components-sdk/{p-e5b0f2b9.entry.js.map → p-2ebb1d54.entry.js.map} +0 -0
- /package/dist/rebill-web-components-sdk/{p-e8eadef6.entry.js.map → p-3a5bdb02.entry.js.map} +0 -0
- /package/dist/rebill-web-components-sdk/{p-9084f3ef.entry.js.map → p-47ee3edc.entry.js.map} +0 -0
- /package/dist/rebill-web-components-sdk/{p-92de0c03.entry.js.map → p-508cc019.entry.js.map} +0 -0
- /package/dist/rebill-web-components-sdk/{p-924e7ec2.entry.js.map → p-515e9e16.entry.js.map} +0 -0
- /package/dist/rebill-web-components-sdk/{p-51571e15.entry.js.map → p-5ac0522d.entry.js.map} +0 -0
- /package/dist/rebill-web-components-sdk/{p-821e1fed.entry.js.map → p-6089b208.entry.js.map} +0 -0
- /package/dist/rebill-web-components-sdk/{p-a0d6b0c0.entry.js.map → p-6ea98ccf.entry.js.map} +0 -0
- /package/dist/rebill-web-components-sdk/{p-bc6f455d.entry.js.map → p-7287e0f0.entry.js.map} +0 -0
- /package/dist/rebill-web-components-sdk/{p-c8a5a137.entry.js.map → p-aa96087c.entry.js.map} +0 -0
- /package/dist/rebill-web-components-sdk/{p-63020e78.entry.js.map → p-ad9a6685.entry.js.map} +0 -0
- /package/dist/rebill-web-components-sdk/{p-7e94aec8.entry.js.map → p-e0a3f3a8.entry.js.map} +0 -0
- /package/dist/rebill-web-components-sdk/{p-7ea96b11.entry.js.map → p-f672574a.entry.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"p-DlrQ_kVv.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement","sessionState"],"sources":["src/components/checkout/card-success-page/success-page.css?tag=success-page","src/components/checkout/card-success-page/success-page.tsx"],"sourcesContent":["@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"],"version":3}
|
|
1
|
+
{"file":"p-DIILFLsN.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement","sessionState"],"sources":["src/components/checkout/card-success-page/success-page.css?tag=success-page","src/components/checkout/card-success-page/success-page.tsx"],"sourcesContent":["@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"],"version":3}
|
|
@@ -17,7 +17,7 @@ const VerticalDivider = /*@__PURE__*/ proxyCustomElement(class VerticalDivider e
|
|
|
17
17
|
connectorActive = false;
|
|
18
18
|
withDot = false;
|
|
19
19
|
render() {
|
|
20
|
-
return (h("div", { key: '
|
|
20
|
+
return (h("div", { key: 'eb4eb689ee3b202277acf9afe8824b0eaf92eee6', class: `rebill-vertical-divider ${this.dashed ? 'dashed' : ''} ${this.connectorActive ? 'connectorActive' : ''} ${this.withDot ? 'with-dot' : ''}`, style: {
|
|
21
21
|
'--divider-color': colorClassMapper(this.color),
|
|
22
22
|
'--divider-thickness': this.thickness,
|
|
23
23
|
'--divider-dashed': this.dashed ? '2 2' : 'none',
|
|
@@ -49,6 +49,6 @@ function defineCustomElement() {
|
|
|
49
49
|
defineCustomElement();
|
|
50
50
|
|
|
51
51
|
export { VerticalDivider as V, defineCustomElement as d };
|
|
52
|
-
//# sourceMappingURL=p-
|
|
52
|
+
//# sourceMappingURL=p-DKn8wDv6.js.map
|
|
53
53
|
|
|
54
|
-
//# sourceMappingURL=p-
|
|
54
|
+
//# sourceMappingURL=p-DKn8wDv6.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"p-
|
|
1
|
+
{"file":"p-DKn8wDv6.js","mappings":";;;AAAA,MAAM,kBAAkB,GAAG,g7BAAg7B;;MCS97B,eAAe,iBAAAA,kBAAA,CAAA,MAAA,eAAA,SAAAC,CAAA,CAAA;;;;;;;AAClB,IAAA,MAAM;AACN,IAAA,KAAK,GAAgB,WAAW,CAAC,kBAAkB;IACnD,SAAS,GAAW,KAAK;IACzB,MAAM,GAAY,KAAK;IACvB,eAAe,GAAY,KAAK;IAChC,OAAO,GAAY,KAAK;IAEhC,MAAM,GAAA;QACJ,QACE,CACE,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,CAA2B,wBAAA,EAAA,IAAI,CAAC,MAAM,GAAG,QAAQ,GAAG,EAAE,CAAA,CAAA,EAAI,IAAI,CAAC,eAAe,GAAG,iBAAiB,GAAG,EAAE,CAAA,CAAA,EAAI,IAAI,CAAC,OAAO,GAAG,UAAU,GAAG,EAAE,CAAA,CAAE,EAClJ,KAAK,EAAE;AACL,gBAAA,iBAAiB,EAAE,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC;gBAC/C,qBAAqB,EAAE,IAAI,CAAC,SAAS;gBACrC,kBAAkB,EAAE,IAAI,CAAC,MAAM,GAAG,KAAK,GAAG,MAAM;AAChD,gBAAA,QAAQ,EAAE,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,eAAe,GAAG,MAAM,GAAG,MAAM,CAAC;aAClE,EAAA,CACI;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/shared/divider/vertical-divider.css?tag=rebill-vertical-divider","src/components/shared/divider/vertical-divider.tsx"],"sourcesContent":[".rebill-vertical-divider {\n width: var(--divider-thickness, 1px);\n height: 100%; /* Altura completa del contenedor */\n color: var(--divider-color, #c4c8cf);\n border-left: var(--divider-thickness, 1px) solid var(--divider-color, #c4c8cf);\n padding: 0;\n background: none;\n flex-shrink: 0;\n}\n\n.rebill-vertical-divider[style*='--divider-dashed: 2 2'] {\n border-left-style: dashed;\n border-left-width: var(--divider-thickness, 1px);\n border-left-color: var(--divider-color, #c4c8cf);\n}\n\n.rebill-vertical-divider.dashed {\n border-left-style: dashed;\n}\n\n/* Estilos para la variación conector */\n.rebill-vertical-divider.connectorActive {\n border-left: var(--divider-thickness, 1px) solid var(--divider-color, #0056f6);\n background: none;\n}\n\n/* Estilos para la variación con punto al final */\n.rebill-vertical-divider.with-dot {\n border-left: var(--divider-thickness, 1px) solid var(--divider-color, #0056f6);\n background: none;\n position: relative;\n /* Hereda los mismos estilos que connectorActive */\n}\n\n.rebill-vertical-divider.with-dot::after {\n content: '';\n position: absolute;\n bottom: -3px; /* Centrar el punto con la línea */\n left: 50%;\n transform: translateX(-65%);\n width: 6px;\n height: 6px;\n background: var(--divider-color, #0056f6);\n border-radius: 50%;\n}\n","import { Component, h, Prop } from '@stencil/core';\nimport { colorClassMapper, COLORS_ENUM } from '../../../utils/color-class-mapper';\nimport './vertical-divider.css';\n\n@Component({\n tag: 'rebill-vertical-divider',\n styleUrl: 'vertical-divider.css',\n shadow: false,\n})\nexport class VerticalDivider {\n @Prop() height?: string;\n @Prop() color: COLORS_ENUM = COLORS_ENUM.TIMELINE_CONNECTOR;\n @Prop() thickness: string = '1px';\n @Prop() dashed: boolean = false;\n @Prop() connectorActive: boolean = false;\n @Prop() withDot: boolean = false;\n\n render() {\n return (\n <div\n class={`rebill-vertical-divider ${this.dashed ? 'dashed' : ''} ${this.connectorActive ? 'connectorActive' : ''} ${this.withDot ? 'with-dot' : ''}`}\n style={{\n '--divider-color': colorClassMapper(this.color),\n '--divider-thickness': this.thickness,\n '--divider-dashed': this.dashed ? '2 2' : 'none',\n 'height': this.height || (this.connectorActive ? '27px' : '40px'),\n }}\n ></div>\n );\n }\n}\n"],"version":3}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { proxyCustomElement, H, h } from './p-8BpuJ_V5.js';
|
|
2
2
|
import { c as formatAmount, e as instance, j as SESSION_DISCOUNT_TYPE_ENUM, s as state } from './p-CMzpQU2o.js';
|
|
3
3
|
import { C as COLORS_ENUM } from './p-DA598vBj.js';
|
|
4
|
-
import { d as defineCustomElement$4 } from './p-
|
|
4
|
+
import { d as defineCustomElement$4 } from './p-xNgCL9nV.js';
|
|
5
5
|
import { d as defineCustomElement$3 } from './p-CWY-g0zG.js';
|
|
6
6
|
import { d as defineCustomElement$2 } from './p-C_txMekS.js';
|
|
7
|
-
import { d as defineCustomElement$1 } from './p-
|
|
7
|
+
import { d as defineCustomElement$1 } from './p-DKn8wDv6.js';
|
|
8
8
|
|
|
9
9
|
var DEBIT_STRATEGY_ENUM;
|
|
10
10
|
(function (DEBIT_STRATEGY_ENUM) {
|
|
@@ -258,7 +258,7 @@ const TimelineDebitDay = /*@__PURE__*/ proxyCustomElement(class TimelineDebitDay
|
|
|
258
258
|
}
|
|
259
259
|
render() {
|
|
260
260
|
const events = this.buildEvents();
|
|
261
|
-
return (h("div", { key: '
|
|
261
|
+
return (h("div", { key: 'ef56072d4c83ca886b0dc7fded2d21cece3c58f8', class: "timeline-container" }, h("div", { key: '420ac37e41eac4cac58cd813fe8d32de218425ba', class: "timeline" }, events.map((event, index) => this.renderEvent(event, index === events.length - 1, index === 0)))));
|
|
262
262
|
}
|
|
263
263
|
static get style() { return timelineDebitDayCss; }
|
|
264
264
|
}, [256, "rebill-timeline-debit-day", {
|
|
@@ -311,6 +311,6 @@ function defineCustomElement() {
|
|
|
311
311
|
defineCustomElement();
|
|
312
312
|
|
|
313
313
|
export { TimelineDebitDay as T, defineCustomElement as d };
|
|
314
|
-
//# sourceMappingURL=p-
|
|
314
|
+
//# sourceMappingURL=p-DPUz_1Ev.js.map
|
|
315
315
|
|
|
316
|
-
//# sourceMappingURL=p-
|
|
316
|
+
//# sourceMappingURL=p-DPUz_1Ev.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"p-D6yu2OYw.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement","i18n","sessionState"],"sources":["src/models/enums/debit-strategy.enum.ts","src/components/shared/timeline/timeline-debit-day.css?tag=rebill-timeline-debit-day","src/components/shared/timeline/timeline-debit-day.tsx"],"sourcesContent":["export enum DEBIT_STRATEGY_ENUM {\n CHARGE_FULL = 'charge_full',\n CHARGE_NEXT_CYCLE = 'charge_next_cycle',\n CHARGE_PRORATED = 'charge_prorated',\n}\n",".timeline-container {\n width: 100%;\n margin: 0 auto;\n}\n\n.timeline {\n display: flex;\n flex-direction: column;\n gap: 4px;\n padding: 16px;\n background: var(--rebill-color-background);\n border: 1px solid var(--rebill-color-border);\n border-radius: 8px;\n justify-content: space-evenly;\n}\n\n.timeline-event {\n display: flex;\n align-items: flex-start;\n gap: 8px;\n position: relative;\n}\n\n.timeline-icon-container {\n display: flex;\n flex-direction: column;\n align-items: center;\n flex-shrink: 0;\n position: relative;\n gap: 4px;\n}\n.timeline-connector-container {\n display: flex;\n flex-direction: column;\n align-items: center;\n flex-shrink: 0;\n position: relative;\n min-height: 45px;\n}\n.timeline-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n border-radius: 50%;\n flex-shrink: 0;\n z-index: 2;\n gap: 4px;\n}\n\n.timeline-connector-icon {\n display: block;\n flex-shrink: 0;\n z-index: 1;\n}\n\n.event-content {\n flex: 1;\n display: flex;\n flex-direction: column;\n}\n\n.discount-info {\n margin-top: 8px;\n}\n\n.event-date rebill-icon {\n display: inline-block;\n vertical-align: text-top;\n margin: 0 4px;\n width: 14px;\n height: 14px;\n transform: translateY(-1px);\n}\n\n@media (max-width: 1024px) {\n .timeline {\n border: none;\n padding: 0;\n }\n\n .timeline-event {\n gap: 12px;\n align-items: flex-start;\n }\n\n .timeline-icon {\n width: 28px;\n height: 28px;\n }\n}\n","import { Component, h, Prop, State } from '@stencil/core';\nimport i18n from '../../../i18n/i18n.config';\nimport { DEBIT_STRATEGY_ENUM } from '../../../models/enums/debit-strategy.enum';\nimport { SESSION_DISCOUNT_TYPE_ENUM } from '../../../models/enums/session.enum';\nimport { sessionState } from '../../../store/session.store';\nimport { COLORS_ENUM } from '../../../utils/color-class-mapper';\nimport { formatAmount } from '../../../utils/currency-formatter';\n\ninterface TimelineEvent {\n day: number;\n type: 'today' | 'first_charge' | 'recurring';\n date: string;\n title: string;\n description?: string;\n icon: string;\n amount?: string;\n discountInfo?: string;\n}\n\n@Component({\n tag: 'rebill-timeline-debit-day',\n styleUrl: 'timeline-debit-day.css',\n shadow: false,\n})\nexport class TimelineDebitDay {\n @State() currentLanguage: string;\n\n @Prop() debitDay: number;\n @Prop() totalAmount: number;\n @Prop() planAmount: number;\n @Prop() currency: string;\n @Prop() debitStrategy: DEBIT_STRATEGY_ENUM;\n @Prop() language?: string;\n @Prop() discountApplied: boolean = false;\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 get totalAmountFormatted() {\n return formatAmount(this.totalAmount, this.currency, false);\n }\n\n private get planAmountFormatted() {\n return formatAmount(this.planAmount, this.currency, false);\n }\n\n private getDurationTranslation(duration: number): string {\n return duration === 1\n ? i18n.t('summary.month_one')\n : i18n.t('summary.month_other', { count: duration });\n }\n\n private get hasDiscountApplied(): boolean {\n return this.discountApplied && (this.discountedPercentage > 0 || this.discountAmount > 0);\n }\n\n private getDiscountDescription(): string {\n if (!this.hasDiscountApplied) return '';\n\n const couponCode =\n sessionState.data.discount.couponCode || sessionState.data.pricing.discountCouponCode;\n const discount =\n this.discountType === SESSION_DISCOUNT_TYPE_ENUM.PERCENTAGE\n ? `${this.discountedPercentage}%`\n : formatAmount(this.discountAmount, this.currency);\n\n if (this.discountDuration) {\n return i18n.t(`summary.planDiscountDescriptionWithDuration`, {\n discount: couponCode ? `${couponCode} – ${discount}` : discount,\n duration: this.getDurationTranslation(this.discountDuration),\n });\n } else {\n return i18n.t(`summary.planDiscountDescriptionWithoutDuration`, {\n discount: couponCode ? `${couponCode} – ${discount}` : discount,\n });\n }\n }\n\n private calculateDelayedChargeDate(): string {\n if (!this.hasDiscountApplied || !this.discountDuration) {\n return this.getDateForDay(this.debitDay);\n }\n\n const today = new Date();\n const targetDate = new Date(today);\n\n targetDate.setMonth(today.getMonth() + this.discountDuration);\n targetDate.setDate(this.debitDay);\n\n return targetDate.toLocaleDateString(this.currentLanguage, {\n day: 'numeric',\n month: 'long',\n timeZone: 'UTC',\n });\n }\n\n componentWillLoad() {\n this.currentLanguage = this.language || i18n.language;\n i18n.on('languageChanged', this.handleLanguageChange);\n }\n\n disconnectedCallback() {\n i18n.off('languageChanged', this.handleLanguageChange);\n }\n\n private handleLanguageChange = () => {\n this.currentLanguage = this.language || i18n.language;\n };\n\n private getDateForDay(dayNumber: number): string {\n const today = new Date();\n const targetDate = new Date(today);\n\n if (dayNumber === 1) {\n // Día 1 es siempre hoy\n return targetDate.toLocaleDateString(this.currentLanguage, {\n day: 'numeric',\n month: 'long',\n timeZone: 'UTC',\n });\n } else {\n const currentMonth = today.getMonth();\n\n if (this.debitDay < today.getDate()) {\n targetDate.setMonth(currentMonth + 1);\n }\n\n targetDate.setDate(this.debitDay);\n return targetDate.toLocaleDateString(this.currentLanguage, {\n day: 'numeric',\n month: 'long',\n timeZone: 'UTC',\n });\n }\n }\n\n private getNextMonthName(): string {\n const today = new Date();\n const nextMonth = new Date(today);\n nextMonth.setMonth(today.getMonth() + 1);\n return nextMonth.toLocaleDateString(this.currentLanguage, {\n month: 'long',\n timeZone: 'UTC',\n });\n }\n\n private getMonthNameForDebitDay(): string {\n const today = new Date();\n const targetDate = new Date(today);\n if (this.debitDay < today.getDate()) {\n targetDate.setMonth(today.getMonth() + 1);\n }\n\n return targetDate.toLocaleDateString(this.currentLanguage, {\n month: 'long',\n timeZone: 'UTC',\n });\n }\n\n private getMonthNameForDelayedCharge(): string {\n if (!this.hasDiscountApplied || !this.discountDuration) {\n return this.getNextMonthName();\n }\n\n const today = new Date();\n const targetDate = new Date(today);\n targetDate.setMonth(today.getMonth() + this.discountDuration);\n\n return targetDate.toLocaleDateString(this.currentLanguage, {\n month: 'long',\n timeZone: 'UTC',\n });\n }\n\n private buildEvents(): TimelineEvent[] {\n const events: TimelineEvent[] = [];\n const nextMonthName = this.getNextMonthName();\n const delayedChargeDate = this.calculateDelayedChargeDate();\n const discountInfo = this.hasDiscountApplied ? this.getDiscountDescription() : undefined;\n\n switch (this.debitStrategy) {\n case DEBIT_STRATEGY_ENUM.CHARGE_FULL:\n events.push({\n day: 1,\n type: 'today',\n date: this.getDateForDay(1),\n title: i18n.t('timeline.today'),\n description: i18n.t('timeline.chargeFullToday', {\n amount: `$${this.totalAmountFormatted}`,\n }),\n icon: 'circle-calendar',\n discountInfo,\n });\n\n events.push({\n day: this.debitDay,\n type: 'recurring',\n date: this.hasDiscountApplied ? delayedChargeDate : '',\n title: i18n.t('timeline.after'),\n description: i18n.t('timeline.recurringCharge', {\n day: this.debitDay,\n amount: `$${this.planAmountFormatted}`,\n month: this.hasDiscountApplied ? this.getMonthNameForDelayedCharge() : nextMonthName,\n }),\n icon: 'circle-receipt-active',\n });\n break;\n\n case DEBIT_STRATEGY_ENUM.CHARGE_NEXT_CYCLE:\n events.push({\n day: 1,\n type: 'today',\n date: this.getDateForDay(1),\n title: i18n.t('timeline.today'),\n icon: 'circle-calendar',\n amount: `$${this.totalAmountFormatted}`,\n discountInfo,\n });\n\n events.push({\n day: this.debitDay,\n type: 'first_charge',\n date: this.hasDiscountApplied ? delayedChargeDate : this.getDateForDay(this.debitDay),\n title: i18n.t('timeline.firstCharge'),\n description: '',\n icon: 'circle-receipt',\n amount: `$${this.planAmountFormatted}`,\n });\n\n events.push({\n day: this.debitDay + 1,\n type: 'recurring',\n date: '',\n title: i18n.t('timeline.after'),\n description: i18n.t('timeline.recurringCharge', {\n day: this.debitDay,\n amount: `$${this.planAmountFormatted}`,\n month: this.hasDiscountApplied ? this.getMonthNameForDelayedCharge() : nextMonthName,\n }),\n icon: 'clock-and-calendar',\n });\n break;\n\n case DEBIT_STRATEGY_ENUM.CHARGE_PRORATED:\n events.push({\n day: 1,\n type: 'today',\n date: this.getDateForDay(1),\n title: i18n.t('timeline.today'),\n description: i18n.t('timeline.proratedCharge', {\n amount: `$${this.totalAmountFormatted}`,\n day: this.debitDay,\n month: this.getMonthNameForDebitDay(),\n }),\n icon: 'circle-calendar',\n amount: `$${this.totalAmountFormatted}`,\n discountInfo,\n });\n\n events.push({\n day: this.debitDay,\n type: 'first_charge',\n date: this.hasDiscountApplied ? delayedChargeDate : this.getDateForDay(this.debitDay),\n title: i18n.t('timeline.firstCharge'),\n description: '',\n icon: 'circle-receipt',\n amount: `$${this.planAmountFormatted}`,\n });\n\n events.push({\n day: this.debitDay + 1,\n type: 'recurring',\n date: '',\n title: i18n.t('timeline.after'),\n description: i18n.t('timeline.recurringCharge', {\n day: this.debitDay,\n amount: `$${this.planAmountFormatted}`,\n month: this.hasDiscountApplied ? this.getMonthNameForDelayedCharge() : nextMonthName,\n }),\n icon: 'clock-and-calendar',\n });\n break;\n }\n\n return events;\n }\n\n private renderEvent(event: TimelineEvent, isLast: boolean, isFirst: boolean) {\n const events = this.buildEvents();\n const totalEvents = events.length;\n\n return (\n <div key={event.day} class=\"timeline-event\">\n <div class=\"timeline-icon-container\">\n <rebill-icon name={event.icon} style={{ marginTop: '3px' }} />\n <div class=\"timeline-connector-container\">\n {!isLast &&\n (isFirst ? (\n totalEvents === 2 ? (\n <rebill-vertical-divider\n connectorActive\n color={COLORS_ENUM.INFO_BORDER}\n class=\"timeline-connector-icon\"\n height={event.discountInfo ? '65px' : '45px'}\n />\n ) : (\n <rebill-vertical-divider\n connectorActive\n color={COLORS_ENUM.INFO_BORDER}\n class=\"timeline-connector-icon\"\n height={event.discountInfo ? '65px' : '45px'}\n withDot\n />\n )\n ) : (\n <rebill-vertical-divider\n color={COLORS_ENUM.TIMELINE_CONNECTOR}\n class=\"timeline-connector-icon\"\n height={event.discountInfo ? '65px' : '45px'}\n />\n ))}\n </div>\n </div>\n <div class=\"event-content\">\n <rebill-typography variant=\"subtitle-bold\">{event.title}</rebill-typography>\n <div class=\"event-date\">\n <rebill-typography variant=\"body2\">\n {event.amount ? (\n <span>\n {event.date} <rebill-icon name=\"arrow-right\" /> {event.amount} {event.description}\n </span>\n ) : event.date ? (\n `${event.date} - ${event.description}`\n ) : (\n event.description\n )}\n </rebill-typography>\n </div>\n {event.discountInfo && (\n <div class=\"discount-info\">\n <rebill-alert\n variant=\"filled\"\n type=\"coupon\"\n icon=\"tag-green\"\n size=\"small\"\n colorIcon={COLORS_ENUM.GREEN}\n alertTitle={event.discountInfo}\n />\n </div>\n )}\n </div>\n </div>\n );\n }\n\n render() {\n const events = this.buildEvents();\n\n return (\n <div class=\"timeline-container\">\n <div class=\"timeline\">\n {events.map((event, index) =>\n this.renderEvent(event, index === events.length - 1, index === 0),\n )}\n </div>\n </div>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"p-DPUz_1Ev.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement","i18n","sessionState"],"sources":["src/models/enums/debit-strategy.enum.ts","src/components/shared/timeline/timeline-debit-day.css?tag=rebill-timeline-debit-day","src/components/shared/timeline/timeline-debit-day.tsx"],"sourcesContent":["export enum DEBIT_STRATEGY_ENUM {\n CHARGE_FULL = 'charge_full',\n CHARGE_NEXT_CYCLE = 'charge_next_cycle',\n CHARGE_PRORATED = 'charge_prorated',\n}\n",".timeline-container {\n width: 100%;\n margin: 0 auto;\n}\n\n.timeline {\n display: flex;\n flex-direction: column;\n gap: 4px;\n padding: 16px;\n background: var(--rebill-color-background);\n border: 1px solid var(--rebill-color-border);\n border-radius: 8px;\n justify-content: space-evenly;\n}\n\n.timeline-event {\n display: flex;\n align-items: flex-start;\n gap: 8px;\n position: relative;\n}\n\n.timeline-icon-container {\n display: flex;\n flex-direction: column;\n align-items: center;\n flex-shrink: 0;\n position: relative;\n gap: 4px;\n}\n.timeline-connector-container {\n display: flex;\n flex-direction: column;\n align-items: center;\n flex-shrink: 0;\n position: relative;\n min-height: 45px;\n}\n.timeline-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n border-radius: 50%;\n flex-shrink: 0;\n z-index: 2;\n gap: 4px;\n}\n\n.timeline-connector-icon {\n display: block;\n flex-shrink: 0;\n z-index: 1;\n}\n\n.event-content {\n flex: 1;\n display: flex;\n flex-direction: column;\n}\n\n.discount-info {\n margin-top: 8px;\n}\n\n.event-date rebill-icon {\n display: inline-block;\n vertical-align: text-top;\n margin: 0 4px;\n width: 14px;\n height: 14px;\n transform: translateY(-1px);\n}\n\n@media (max-width: 1024px) {\n .timeline {\n border: none;\n padding: 0;\n }\n\n .timeline-event {\n gap: 12px;\n align-items: flex-start;\n }\n\n .timeline-icon {\n width: 28px;\n height: 28px;\n }\n}\n","import { Component, h, Prop, State } from '@stencil/core';\nimport i18n from '../../../i18n/i18n.config';\nimport { DEBIT_STRATEGY_ENUM } from '../../../models/enums/debit-strategy.enum';\nimport { SESSION_DISCOUNT_TYPE_ENUM } from '../../../models/enums/session.enum';\nimport { sessionState } from '../../../store/session.store';\nimport { COLORS_ENUM } from '../../../utils/color-class-mapper';\nimport { formatAmount } from '../../../utils/currency-formatter';\n\ninterface TimelineEvent {\n day: number;\n type: 'today' | 'first_charge' | 'recurring';\n date: string;\n title: string;\n description?: string;\n icon: string;\n amount?: string;\n discountInfo?: string;\n}\n\n@Component({\n tag: 'rebill-timeline-debit-day',\n styleUrl: 'timeline-debit-day.css',\n shadow: false,\n})\nexport class TimelineDebitDay {\n @State() currentLanguage: string;\n\n @Prop() debitDay: number;\n @Prop() totalAmount: number;\n @Prop() planAmount: number;\n @Prop() currency: string;\n @Prop() debitStrategy: DEBIT_STRATEGY_ENUM;\n @Prop() language?: string;\n @Prop() discountApplied: boolean = false;\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 get totalAmountFormatted() {\n return formatAmount(this.totalAmount, this.currency, false);\n }\n\n private get planAmountFormatted() {\n return formatAmount(this.planAmount, this.currency, false);\n }\n\n private getDurationTranslation(duration: number): string {\n return duration === 1\n ? i18n.t('summary.month_one')\n : i18n.t('summary.month_other', { count: duration });\n }\n\n private get hasDiscountApplied(): boolean {\n return this.discountApplied && (this.discountedPercentage > 0 || this.discountAmount > 0);\n }\n\n private getDiscountDescription(): string {\n if (!this.hasDiscountApplied) return '';\n\n const couponCode =\n sessionState.data.discount.couponCode || sessionState.data.pricing.discountCouponCode;\n const discount =\n this.discountType === SESSION_DISCOUNT_TYPE_ENUM.PERCENTAGE\n ? `${this.discountedPercentage}%`\n : formatAmount(this.discountAmount, this.currency);\n\n if (this.discountDuration) {\n return i18n.t(`summary.planDiscountDescriptionWithDuration`, {\n discount: couponCode ? `${couponCode} – ${discount}` : discount,\n duration: this.getDurationTranslation(this.discountDuration),\n });\n } else {\n return i18n.t(`summary.planDiscountDescriptionWithoutDuration`, {\n discount: couponCode ? `${couponCode} – ${discount}` : discount,\n });\n }\n }\n\n private calculateDelayedChargeDate(): string {\n if (!this.hasDiscountApplied || !this.discountDuration) {\n return this.getDateForDay(this.debitDay);\n }\n\n const today = new Date();\n const targetDate = new Date(today);\n\n targetDate.setMonth(today.getMonth() + this.discountDuration);\n targetDate.setDate(this.debitDay);\n\n return targetDate.toLocaleDateString(this.currentLanguage, {\n day: 'numeric',\n month: 'long',\n timeZone: 'UTC',\n });\n }\n\n componentWillLoad() {\n this.currentLanguage = this.language || i18n.language;\n i18n.on('languageChanged', this.handleLanguageChange);\n }\n\n disconnectedCallback() {\n i18n.off('languageChanged', this.handleLanguageChange);\n }\n\n private handleLanguageChange = () => {\n this.currentLanguage = this.language || i18n.language;\n };\n\n private getDateForDay(dayNumber: number): string {\n const today = new Date();\n const targetDate = new Date(today);\n\n if (dayNumber === 1) {\n // Día 1 es siempre hoy\n return targetDate.toLocaleDateString(this.currentLanguage, {\n day: 'numeric',\n month: 'long',\n timeZone: 'UTC',\n });\n } else {\n const currentMonth = today.getMonth();\n\n if (this.debitDay < today.getDate()) {\n targetDate.setMonth(currentMonth + 1);\n }\n\n targetDate.setDate(this.debitDay);\n return targetDate.toLocaleDateString(this.currentLanguage, {\n day: 'numeric',\n month: 'long',\n timeZone: 'UTC',\n });\n }\n }\n\n private getNextMonthName(): string {\n const today = new Date();\n const nextMonth = new Date(today);\n nextMonth.setMonth(today.getMonth() + 1);\n return nextMonth.toLocaleDateString(this.currentLanguage, {\n month: 'long',\n timeZone: 'UTC',\n });\n }\n\n private getMonthNameForDebitDay(): string {\n const today = new Date();\n const targetDate = new Date(today);\n if (this.debitDay < today.getDate()) {\n targetDate.setMonth(today.getMonth() + 1);\n }\n\n return targetDate.toLocaleDateString(this.currentLanguage, {\n month: 'long',\n timeZone: 'UTC',\n });\n }\n\n private getMonthNameForDelayedCharge(): string {\n if (!this.hasDiscountApplied || !this.discountDuration) {\n return this.getNextMonthName();\n }\n\n const today = new Date();\n const targetDate = new Date(today);\n targetDate.setMonth(today.getMonth() + this.discountDuration);\n\n return targetDate.toLocaleDateString(this.currentLanguage, {\n month: 'long',\n timeZone: 'UTC',\n });\n }\n\n private buildEvents(): TimelineEvent[] {\n const events: TimelineEvent[] = [];\n const nextMonthName = this.getNextMonthName();\n const delayedChargeDate = this.calculateDelayedChargeDate();\n const discountInfo = this.hasDiscountApplied ? this.getDiscountDescription() : undefined;\n\n switch (this.debitStrategy) {\n case DEBIT_STRATEGY_ENUM.CHARGE_FULL:\n events.push({\n day: 1,\n type: 'today',\n date: this.getDateForDay(1),\n title: i18n.t('timeline.today'),\n description: i18n.t('timeline.chargeFullToday', {\n amount: `$${this.totalAmountFormatted}`,\n }),\n icon: 'circle-calendar',\n discountInfo,\n });\n\n events.push({\n day: this.debitDay,\n type: 'recurring',\n date: this.hasDiscountApplied ? delayedChargeDate : '',\n title: i18n.t('timeline.after'),\n description: i18n.t('timeline.recurringCharge', {\n day: this.debitDay,\n amount: `$${this.planAmountFormatted}`,\n month: this.hasDiscountApplied ? this.getMonthNameForDelayedCharge() : nextMonthName,\n }),\n icon: 'circle-receipt-active',\n });\n break;\n\n case DEBIT_STRATEGY_ENUM.CHARGE_NEXT_CYCLE:\n events.push({\n day: 1,\n type: 'today',\n date: this.getDateForDay(1),\n title: i18n.t('timeline.today'),\n icon: 'circle-calendar',\n amount: `$${this.totalAmountFormatted}`,\n discountInfo,\n });\n\n events.push({\n day: this.debitDay,\n type: 'first_charge',\n date: this.hasDiscountApplied ? delayedChargeDate : this.getDateForDay(this.debitDay),\n title: i18n.t('timeline.firstCharge'),\n description: '',\n icon: 'circle-receipt',\n amount: `$${this.planAmountFormatted}`,\n });\n\n events.push({\n day: this.debitDay + 1,\n type: 'recurring',\n date: '',\n title: i18n.t('timeline.after'),\n description: i18n.t('timeline.recurringCharge', {\n day: this.debitDay,\n amount: `$${this.planAmountFormatted}`,\n month: this.hasDiscountApplied ? this.getMonthNameForDelayedCharge() : nextMonthName,\n }),\n icon: 'clock-and-calendar',\n });\n break;\n\n case DEBIT_STRATEGY_ENUM.CHARGE_PRORATED:\n events.push({\n day: 1,\n type: 'today',\n date: this.getDateForDay(1),\n title: i18n.t('timeline.today'),\n description: i18n.t('timeline.proratedCharge', {\n amount: `$${this.totalAmountFormatted}`,\n day: this.debitDay,\n month: this.getMonthNameForDebitDay(),\n }),\n icon: 'circle-calendar',\n amount: `$${this.totalAmountFormatted}`,\n discountInfo,\n });\n\n events.push({\n day: this.debitDay,\n type: 'first_charge',\n date: this.hasDiscountApplied ? delayedChargeDate : this.getDateForDay(this.debitDay),\n title: i18n.t('timeline.firstCharge'),\n description: '',\n icon: 'circle-receipt',\n amount: `$${this.planAmountFormatted}`,\n });\n\n events.push({\n day: this.debitDay + 1,\n type: 'recurring',\n date: '',\n title: i18n.t('timeline.after'),\n description: i18n.t('timeline.recurringCharge', {\n day: this.debitDay,\n amount: `$${this.planAmountFormatted}`,\n month: this.hasDiscountApplied ? this.getMonthNameForDelayedCharge() : nextMonthName,\n }),\n icon: 'clock-and-calendar',\n });\n break;\n }\n\n return events;\n }\n\n private renderEvent(event: TimelineEvent, isLast: boolean, isFirst: boolean) {\n const events = this.buildEvents();\n const totalEvents = events.length;\n\n return (\n <div key={event.day} class=\"timeline-event\">\n <div class=\"timeline-icon-container\">\n <rebill-icon name={event.icon} style={{ marginTop: '3px' }} />\n <div class=\"timeline-connector-container\">\n {!isLast &&\n (isFirst ? (\n totalEvents === 2 ? (\n <rebill-vertical-divider\n connectorActive\n color={COLORS_ENUM.INFO_BORDER}\n class=\"timeline-connector-icon\"\n height={event.discountInfo ? '65px' : '45px'}\n />\n ) : (\n <rebill-vertical-divider\n connectorActive\n color={COLORS_ENUM.INFO_BORDER}\n class=\"timeline-connector-icon\"\n height={event.discountInfo ? '65px' : '45px'}\n withDot\n />\n )\n ) : (\n <rebill-vertical-divider\n color={COLORS_ENUM.TIMELINE_CONNECTOR}\n class=\"timeline-connector-icon\"\n height={event.discountInfo ? '65px' : '45px'}\n />\n ))}\n </div>\n </div>\n <div class=\"event-content\">\n <rebill-typography variant=\"subtitle-bold\">{event.title}</rebill-typography>\n <div class=\"event-date\">\n <rebill-typography variant=\"body2\">\n {event.amount ? (\n <span>\n {event.date} <rebill-icon name=\"arrow-right\" /> {event.amount} {event.description}\n </span>\n ) : event.date ? (\n `${event.date} - ${event.description}`\n ) : (\n event.description\n )}\n </rebill-typography>\n </div>\n {event.discountInfo && (\n <div class=\"discount-info\">\n <rebill-alert\n variant=\"filled\"\n type=\"coupon\"\n icon=\"tag-green\"\n size=\"small\"\n colorIcon={COLORS_ENUM.GREEN}\n alertTitle={event.discountInfo}\n />\n </div>\n )}\n </div>\n </div>\n );\n }\n\n render() {\n const events = this.buildEvents();\n\n return (\n <div class=\"timeline-container\">\n <div class=\"timeline\">\n {events.map((event, index) =>\n this.renderEvent(event, index === events.length - 1, index === 0),\n )}\n </div>\n </div>\n );\n }\n}\n"],"version":3}
|
|
@@ -179,7 +179,7 @@ const InputCombo = /*@__PURE__*/ proxyCustomElement(class InputCombo extends H {
|
|
|
179
179
|
render() {
|
|
180
180
|
const selectedLabel = this.getSelectedOptionLabel();
|
|
181
181
|
const hasSelectValue = this.selectValue !== '';
|
|
182
|
-
return (h("div", { key: '
|
|
182
|
+
return (h("div", { key: '78274d3e83b4a14ec044ff3852e833a99feb8348', class: "input-container" }, this.label && (h("label", { key: '1c49d0001d73ada9f2a892bb28438fd44f369828', class: `input-label ${this.disabled ? 'disabled' : ''}` }, this.label)), h("div", { key: 'f8fdecad81908c55d33c3c5612afacf122916635', class: `input-combo-wrapper combo-wrapper ${this.disabled ? 'disabled' : ''} ${this.error ? 'error' : ''}` }, h("div", { key: '2b824e4efec1d67539fcc5e3dd3cd750e65e342a', class: "select-section", style: { width: this.selectWidth } }, h("div", { key: 'dc0116959636baf538f158a1c018087cf9c8890a', ref: el => (this.triggerRef = el), class: `input-combo-select select-combo-trigger ${!hasSelectValue ? 'placeholder' : ''}`, onClick: this.toggleDropdown, onKeyDown: this.handleKeyDown, onBlur: this.onSelectBlur, tabIndex: this.disabled ? -1 : 0, role: "combobox", "aria-expanded": this.isOpen.toString(), "aria-haspopup": "listbox" }, h("span", { key: '0fd9d93421d8fd546771e806c93a29c0200ee408', class: "select-value" }, selectedLabel), h("div", { key: '6a3b3431c75f00bcb97d91e907c982e7abca3435', class: "icon-wrapper" }, h("rebill-icon", { key: 'b473ae6f95bdd29a45dc57b8a617c4311d89f3d3', name: "chevron-up-down", size: "20px", class: "select-icon" }))), this.isOpen && (h("div", { key: '90337b81ac236c22559e7bfd1c21169452e6196a', ref: el => (this.dropdownRef = el), class: "select-dropdown", role: "listbox" }, this.options.map((option, index) => (h("div", { class: `select-option ${this.selectValue === option.value ? 'selected' : ''} ${this.highlightedIndex === index ? 'highlighted' : ''}`, onClick: () => this.selectOption(option), role: "option", "aria-selected": this.selectValue === option.value ? 'true' : 'false' }, option.label)))))), h("div", { key: 'b23f197692e344ba927859c95da58ac610d68239', class: "combo-divider" }), h("div", { key: '53947485ce5b7f58baa9755d2cbbe32d3d2d63dd', class: "input-section" }, h("input", { key: 'a4350c9c44ab5915671ba9ab26ddd98bfe443544', type: "text", class: "input-combo-element combo-input", placeholder: this.inputPlaceholder, value: this.inputValue, onInput: this.onInputChange, onBlur: this.onInputBlur, disabled: this.disabled }))), this.error && h("span", { key: 'fc58be7909cf174089b791270720da65050d7e19', class: "error-message" }, this.error)));
|
|
183
183
|
}
|
|
184
184
|
static get style() { return inputComboCss; }
|
|
185
185
|
}, [256, "rebill-input-combo", {
|
|
@@ -219,6 +219,6 @@ function defineCustomElement() {
|
|
|
219
219
|
defineCustomElement();
|
|
220
220
|
|
|
221
221
|
export { InputCombo as I, defineCustomElement as d };
|
|
222
|
-
//# sourceMappingURL=p-
|
|
222
|
+
//# sourceMappingURL=p-DRTzT9ks.js.map
|
|
223
223
|
|
|
224
|
-
//# sourceMappingURL=p-
|
|
224
|
+
//# sourceMappingURL=p-DRTzT9ks.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"p-BL08tUBX.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/shared/inputs/input-combo/input-combo.css?tag=rebill-input-combo","src/components/shared/inputs/input-combo/input-combo.tsx"],"sourcesContent":["@import '../shared-input.css';\n\n:host {\n display: block;\n width: 100%;\n box-sizing: border-box;\n}\n\n.combo-wrapper {\n display: flex;\n align-items: stretch;\n width: 100%;\n height: 38.33px;\n border-radius: var(--input-group-inner-border-radius, 8px);\n border: 1.5px solid var(--rebill-color-border);\n background: var(--rebill-color-background);\n transition: border-color 0.2s;\n position: relative;\n box-sizing: border-box;\n}\n\n.combo-wrapper:focus-within {\n border-color: var(--rebill-color-primary);\n box-shadow: 0 0 0 2px var(--rebill-color-primary-light);\n}\n\n.combo-wrapper.error {\n border-color: var(--rebill-color-error);\n}\n\n.combo-wrapper.disabled {\n background-color: var(--rebill-color-background);\n border-color: var(--rebill-color-disabled);\n color: var(--rebill-color-text-secondary);\n cursor: not-allowed;\n opacity: 0.7;\n}\n\n/* Sección del selector */\n.select-section {\n position: relative;\n flex-shrink: 0;\n min-width: 80px;\n display: flex;\n align-items: center;\n}\n\n.select-combo-trigger {\n width: 100%;\n height: 100%;\n padding: 0 30px 0 14px;\n font-size: 0.875rem;\n font-weight: normal;\n color: var(--rebill-color-text-primary);\n background: transparent;\n border: none;\n outline: none;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: space-between;\n user-select: none;\n box-sizing: border-box;\n position: relative;\n transition: border-color 0.2s;\n}\n\n.select-combo-trigger:focus {\n outline: none;\n}\n\n.select-combo-trigger:hover:not(.disabled) {\n border-color: var(--rebill-color-primary);\n}\n\n.select-combo-trigger.placeholder .select-value {\n color: var(--rebill-color-text-secondary-light);\n}\n\n.combo-wrapper.disabled .select-combo-trigger {\n cursor: not-allowed;\n color: var(--rebill-color-text-secondary);\n}\n\n.select-value {\n flex: 1;\n text-align: left;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.select-section .icon-wrapper {\n position: absolute;\n right: 0.75rem;\n top: 50%;\n transform: translateY(-50%);\n display: flex;\n align-items: center;\n justify-content: center;\n height: 20px;\n width: 20px;\n}\n\n.select-icon {\n color: var(--rebill-color-text-secondary);\n transition: transform 0.2s ease;\n transform-origin: 50% 50%;\n display: block;\n}\n\n.combo-wrapper.disabled .select-icon {\n color: var(--rebill-color-disabled);\n}\n\n/* Dropdown del selector */\n.select-dropdown {\n position: absolute;\n top: 100%;\n left: 0;\n right: 0;\n z-index: 1000;\n background-color: var(--rebill-color-background);\n border: 1px solid var(--rebill-color-border);\n border-radius: 0.375rem;\n box-shadow:\n 0 4px 6px -1px rgba(0, 0, 0, 0.1),\n 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n margin-top: 0.25rem;\n max-height: 200px;\n overflow-y: auto;\n animation: slideDown 0.15s ease-out;\n box-sizing: border-box;\n width: 100%;\n}\n\n.select-option {\n padding: 0.75rem;\n font-size: 0.875rem;\n color: var(--rebill-color-text-primary);\n cursor: pointer;\n border-bottom: 1px solid var(--rebill-color-border);\n transition: background-color 0.15s ease;\n}\n\n.select-option:last-child {\n border-bottom: none;\n}\n\n.select-option:hover,\n.select-option.highlighted {\n background-color: #f0f9ff;\n}\n\n.select-option.selected {\n background-color: var(--rebill-color-primary);\n color: white;\n}\n\n.select-option.selected:hover,\n.select-option.selected.highlighted {\n background-color: var(--rebill-color-primary);\n}\n\n/* Scrollbar styling para el dropdown */\n.select-dropdown::-webkit-scrollbar {\n width: 6px;\n}\n\n.select-dropdown::-webkit-scrollbar-track {\n background: transparent;\n}\n\n.select-dropdown::-webkit-scrollbar-thumb {\n background-color: var(--rebill-color-border);\n border-radius: 3px;\n}\n\n.select-dropdown::-webkit-scrollbar-thumb:hover {\n background-color: var(--rebill-color-text-secondary);\n}\n\n/* Divisor vertical */\n.combo-divider {\n width: 1px;\n background-color: var(--rebill-color-border);\n margin: 0;\n flex-shrink: 0;\n}\n\n/* Sección del input de texto */\n.input-section {\n flex: 1;\n min-width: 0;\n display: flex;\n align-items: center;\n}\n\n.combo-input {\n width: 100%;\n height: 100%;\n padding: 0 14px;\n font-size: 0.875rem;\n color: var(--rebill-color-text-primary);\n background: transparent;\n border: none;\n outline: none;\n box-sizing: border-box;\n}\n\n.combo-input:focus {\n outline: none;\n}\n\n.combo-input::placeholder {\n color: var(--rebill-color-text-secondary-light);\n font-size: 0.875rem;\n opacity: 1;\n}\n\n.combo-wrapper.disabled .combo-input {\n color: var(--rebill-color-text-secondary);\n cursor: not-allowed;\n}\n\n.combo-wrapper.disabled .combo-input::placeholder {\n color: var(--rebill-color-text-secondary);\n}\n\n/* Animación del dropdown */\n@keyframes slideDown {\n from {\n opacity: 0;\n transform: translateY(-8px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n@keyframes slideUp {\n from {\n opacity: 0;\n transform: translateY(8px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n/* Scrollbar styling para el dropdown */\n.select-dropdown::-webkit-scrollbar {\n width: 6px;\n}\n\n.select-dropdown::-webkit-scrollbar-track {\n background: transparent;\n}\n\n.select-dropdown::-webkit-scrollbar-thumb {\n background-color: var(--rebill-color-border);\n border-radius: 3px;\n}\n\n.select-dropdown::-webkit-scrollbar-thumb:hover {\n background-color: var(--rebill-color-text-secondary);\n}\n\n/* Fix para evitar zoom en dispositivos móviles */\n@media screen and (max-width: 768px) {\n .select-combo-trigger {\n font-size: 1rem;\n }\n\n .select-option {\n font-size: 1rem;\n }\n\n .combo-input {\n font-size: 1rem;\n }\n\n .combo-input::placeholder {\n font-size: 1rem;\n }\n}\n","import { Component, Event, EventEmitter, Listen, Prop, State, h } from '@stencil/core';\n\n@Component({\n tag: 'rebill-input-combo',\n styleUrl: 'input-combo.css',\n shadow: false,\n})\nexport class InputCombo {\n private dropdownRef?: HTMLDivElement;\n private triggerRef?: HTMLDivElement;\n\n /** Etiqueta que se muestra arriba del campo */\n @Prop() label: string = '';\n /** Opciones del selector */\n @Prop() options: { label: string; value: string }[] = [];\n /** Valor del selector */\n @Prop({ mutable: true, reflect: true }) selectValue: string = '';\n /** Valor del input de texto */\n @Prop({ mutable: true, reflect: true }) inputValue: string = '';\n /** Placeholder del campo de texto */\n @Prop() inputPlaceholder: string = '';\n /** Placeholder del selector */\n @Prop() selectPlaceholder: string = '';\n /** Mensaje de error */\n @Prop() error: string = '';\n /** ID del selector */\n @Prop() selectId: string = '';\n /** ID del input de texto */\n @Prop() inputId: string = '';\n /** Estado deshabilitado */\n @Prop() disabled: boolean = false;\n /** Ancho del selector (en porcentaje o píxeles) */\n @Prop() selectWidth: string = '120px';\n /** Estado interno para mostrar/ocultar el dropdown */\n @State() isOpen: boolean = false;\n /** Índice de la opción resaltada para navegación con teclado */\n @State() highlightedIndex: number = -1;\n /** ID único del componente */\n @State() componentId: string = '';\n\n @Event() blur: EventEmitter<{ id: string; value: string }>;\n /** Evento al cambiar el valor del selector */\n @Event() selectChange: EventEmitter<{ id: string; value: string }>;\n /** Evento al cambiar el valor del input */\n @Event() input: EventEmitter<{ id: string; value: string }>;\n\n componentWillLoad() {\n this.componentId = this.selectId || `combo-${Math.random().toString(36).substr(2, 9)}`;\n }\n\n @Listen('change', { target: 'document' })\n handleFormChange(event: CustomEvent) {\n const formData = event.detail;\n if (formData) {\n // Manejar cambios del selector\n if (this.selectId && this.selectId in formData) {\n const newSelectValue = formData[this.selectId];\n if (typeof newSelectValue === 'string') {\n this.selectValue = newSelectValue;\n }\n }\n // Manejar cambios del input\n if (this.inputId && this.inputId in formData) {\n const newInputValue = formData[this.inputId];\n if (typeof newInputValue === 'string') {\n this.inputValue = newInputValue;\n }\n }\n }\n }\n\n @Listen('closeAllSelects', { target: 'document' })\n handleCloseAllSelects(event: CustomEvent) {\n if (event.detail !== this.componentId) {\n this.closeDropdown();\n }\n }\n\n @Listen('click', { target: 'document' })\n handleDocumentClick(event: Event) {\n if (\n this.dropdownRef &&\n this.triggerRef &&\n !this.dropdownRef.contains(event.target as Node) &&\n !this.triggerRef.contains(event.target as Node)\n ) {\n this.closeDropdown();\n }\n }\n\n private toggleDropdown = () => {\n if (this.disabled) return;\n\n const wasOpen = this.isOpen;\n this.isOpen = !this.isOpen;\n\n if (this.isOpen) {\n if (!wasOpen) {\n document.dispatchEvent(new CustomEvent('closeAllSelects', { detail: this.componentId }));\n }\n\n this.highlightedIndex = this.options.findIndex(option => option.value === this.selectValue);\n if (this.highlightedIndex === -1) {\n this.highlightedIndex = 0;\n }\n }\n };\n\n private openDropdown = () => {\n if (this.disabled) return;\n\n document.dispatchEvent(new CustomEvent('closeAllSelects', { detail: this.componentId }));\n\n this.isOpen = true;\n this.highlightedIndex = this.options.findIndex(option => option.value === this.selectValue);\n if (this.highlightedIndex === -1) {\n this.highlightedIndex = 0;\n }\n };\n\n private closeDropdown = () => {\n this.isOpen = false;\n this.highlightedIndex = -1;\n };\n\n private selectOption = (option: { label: string; value: string }) => {\n if (this.disabled) return;\n this.selectValue = option.value;\n this.closeDropdown();\n this.input.emit({ id: this.selectId, value: this.selectValue });\n };\n\n private onInputChange = (event: Event) => {\n if (this.disabled) return;\n const input = event.target as HTMLInputElement;\n this.inputValue = input.value;\n this.input.emit({ id: this.inputId, value: this.inputValue });\n };\n\n private onSelectBlur = () => {\n this.blur.emit({ id: this.selectId, value: this.selectValue });\n };\n\n private onInputBlur = () => {\n const trimmedValue = this.inputValue.trim();\n\n if (trimmedValue !== this.inputValue) {\n this.inputValue = trimmedValue;\n this.input.emit({ id: this.inputId, value: this.inputValue });\n }\n\n this.blur.emit({ id: this.inputId, value: this.inputValue });\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n if (this.disabled) return;\n\n switch (event.key) {\n case 'Enter':\n case ' ':\n event.preventDefault();\n if (this.isOpen && this.highlightedIndex >= 0) {\n this.selectOption(this.options[this.highlightedIndex]);\n } else {\n this.toggleDropdown();\n }\n break;\n case 'Escape':\n event.preventDefault();\n this.closeDropdown();\n break;\n case 'ArrowDown':\n event.preventDefault();\n if (!this.isOpen) {\n this.openDropdown();\n } else {\n this.highlightedIndex = Math.min(this.highlightedIndex + 1, this.options.length - 1);\n }\n break;\n case 'ArrowUp':\n event.preventDefault();\n if (this.isOpen) {\n this.highlightedIndex = Math.max(this.highlightedIndex - 1, 0);\n }\n break;\n }\n };\n\n private getSelectedOptionLabel = (): string => {\n const selectedOption = this.options.find(option => option.value === this.selectValue);\n return selectedOption ? selectedOption.label : this.selectPlaceholder;\n };\n\n render() {\n const selectedLabel = this.getSelectedOptionLabel();\n const hasSelectValue = this.selectValue !== '';\n\n return (\n <div class=\"input-container\">\n {this.label && (\n <label class={`input-label ${this.disabled ? 'disabled' : ''}`}>{this.label}</label>\n )}\n <div\n class={`input-combo-wrapper combo-wrapper ${this.disabled ? 'disabled' : ''} ${this.error ? 'error' : ''}`}\n >\n {/* Selector */}\n <div class=\"select-section\" style={{ width: this.selectWidth }}>\n <div\n ref={el => (this.triggerRef = el)}\n class={`input-combo-select select-combo-trigger ${!hasSelectValue ? 'placeholder' : ''}`}\n onClick={this.toggleDropdown}\n onKeyDown={this.handleKeyDown}\n onBlur={this.onSelectBlur}\n tabIndex={this.disabled ? -1 : 0}\n role=\"combobox\"\n aria-expanded={this.isOpen.toString()}\n aria-haspopup=\"listbox\"\n >\n <span class=\"select-value\">{selectedLabel}</span>\n <div class=\"icon-wrapper\">\n <rebill-icon name=\"chevron-up-down\" size=\"20px\" class=\"select-icon\" />\n </div>\n </div>\n\n {this.isOpen && (\n <div ref={el => (this.dropdownRef = el)} class=\"select-dropdown\" role=\"listbox\">\n {this.options.map((option, index) => (\n <div\n class={`select-option ${this.selectValue === option.value ? 'selected' : ''} ${this.highlightedIndex === index ? 'highlighted' : ''}`}\n onClick={() => this.selectOption(option)}\n role=\"option\"\n aria-selected={this.selectValue === option.value ? 'true' : 'false'}\n >\n {option.label}\n </div>\n ))}\n </div>\n )}\n </div>\n\n {/* Divisor vertical */}\n <div class=\"combo-divider\"></div>\n\n {/* Campo de texto */}\n <div class=\"input-section\">\n <input\n type=\"text\"\n class=\"input-combo-element combo-input\"\n placeholder={this.inputPlaceholder}\n value={this.inputValue}\n onInput={this.onInputChange}\n onBlur={this.onInputBlur}\n disabled={this.disabled}\n />\n </div>\n </div>\n {this.error && <span class=\"error-message\">{this.error}</span>}\n </div>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"p-DRTzT9ks.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/shared/inputs/input-combo/input-combo.css?tag=rebill-input-combo","src/components/shared/inputs/input-combo/input-combo.tsx"],"sourcesContent":["@import '../shared-input.css';\n\n:host {\n display: block;\n width: 100%;\n box-sizing: border-box;\n}\n\n.combo-wrapper {\n display: flex;\n align-items: stretch;\n width: 100%;\n height: 38.33px;\n border-radius: var(--input-group-inner-border-radius, 8px);\n border: 1.5px solid var(--rebill-color-border);\n background: var(--rebill-color-background);\n transition: border-color 0.2s;\n position: relative;\n box-sizing: border-box;\n}\n\n.combo-wrapper:focus-within {\n border-color: var(--rebill-color-primary);\n box-shadow: 0 0 0 2px var(--rebill-color-primary-light);\n}\n\n.combo-wrapper.error {\n border-color: var(--rebill-color-error);\n}\n\n.combo-wrapper.disabled {\n background-color: var(--rebill-color-background);\n border-color: var(--rebill-color-disabled);\n color: var(--rebill-color-text-secondary);\n cursor: not-allowed;\n opacity: 0.7;\n}\n\n/* Sección del selector */\n.select-section {\n position: relative;\n flex-shrink: 0;\n min-width: 80px;\n display: flex;\n align-items: center;\n}\n\n.select-combo-trigger {\n width: 100%;\n height: 100%;\n padding: 0 30px 0 14px;\n font-size: 0.875rem;\n font-weight: normal;\n color: var(--rebill-color-text-primary);\n background: transparent;\n border: none;\n outline: none;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: space-between;\n user-select: none;\n box-sizing: border-box;\n position: relative;\n transition: border-color 0.2s;\n}\n\n.select-combo-trigger:focus {\n outline: none;\n}\n\n.select-combo-trigger:hover:not(.disabled) {\n border-color: var(--rebill-color-primary);\n}\n\n.select-combo-trigger.placeholder .select-value {\n color: var(--rebill-color-text-secondary-light);\n}\n\n.combo-wrapper.disabled .select-combo-trigger {\n cursor: not-allowed;\n color: var(--rebill-color-text-secondary);\n}\n\n.select-value {\n flex: 1;\n text-align: left;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.select-section .icon-wrapper {\n position: absolute;\n right: 0.75rem;\n top: 50%;\n transform: translateY(-50%);\n display: flex;\n align-items: center;\n justify-content: center;\n height: 20px;\n width: 20px;\n}\n\n.select-icon {\n color: var(--rebill-color-text-secondary);\n transition: transform 0.2s ease;\n transform-origin: 50% 50%;\n display: block;\n}\n\n.combo-wrapper.disabled .select-icon {\n color: var(--rebill-color-disabled);\n}\n\n/* Dropdown del selector */\n.select-dropdown {\n position: absolute;\n top: 100%;\n left: 0;\n right: 0;\n z-index: 1000;\n background-color: var(--rebill-color-background);\n border: 1px solid var(--rebill-color-border);\n border-radius: 0.375rem;\n box-shadow:\n 0 4px 6px -1px rgba(0, 0, 0, 0.1),\n 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n margin-top: 0.25rem;\n max-height: 200px;\n overflow-y: auto;\n animation: slideDown 0.15s ease-out;\n box-sizing: border-box;\n width: 100%;\n}\n\n.select-option {\n padding: 0.75rem;\n font-size: 0.875rem;\n color: var(--rebill-color-text-primary);\n cursor: pointer;\n border-bottom: 1px solid var(--rebill-color-border);\n transition: background-color 0.15s ease;\n}\n\n.select-option:last-child {\n border-bottom: none;\n}\n\n.select-option:hover,\n.select-option.highlighted {\n background-color: #f0f9ff;\n}\n\n.select-option.selected {\n background-color: var(--rebill-color-primary);\n color: white;\n}\n\n.select-option.selected:hover,\n.select-option.selected.highlighted {\n background-color: var(--rebill-color-primary);\n}\n\n/* Scrollbar styling para el dropdown */\n.select-dropdown::-webkit-scrollbar {\n width: 6px;\n}\n\n.select-dropdown::-webkit-scrollbar-track {\n background: transparent;\n}\n\n.select-dropdown::-webkit-scrollbar-thumb {\n background-color: var(--rebill-color-border);\n border-radius: 3px;\n}\n\n.select-dropdown::-webkit-scrollbar-thumb:hover {\n background-color: var(--rebill-color-text-secondary);\n}\n\n/* Divisor vertical */\n.combo-divider {\n width: 1px;\n background-color: var(--rebill-color-border);\n margin: 0;\n flex-shrink: 0;\n}\n\n/* Sección del input de texto */\n.input-section {\n flex: 1;\n min-width: 0;\n display: flex;\n align-items: center;\n}\n\n.combo-input {\n width: 100%;\n height: 100%;\n padding: 0 14px;\n font-size: 0.875rem;\n color: var(--rebill-color-text-primary);\n background: transparent;\n border: none;\n outline: none;\n box-sizing: border-box;\n}\n\n.combo-input:focus {\n outline: none;\n}\n\n.combo-input::placeholder {\n color: var(--rebill-color-text-secondary-light);\n font-size: 0.875rem;\n opacity: 1;\n}\n\n.combo-wrapper.disabled .combo-input {\n color: var(--rebill-color-text-secondary);\n cursor: not-allowed;\n}\n\n.combo-wrapper.disabled .combo-input::placeholder {\n color: var(--rebill-color-text-secondary);\n}\n\n/* Animación del dropdown */\n@keyframes slideDown {\n from {\n opacity: 0;\n transform: translateY(-8px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n@keyframes slideUp {\n from {\n opacity: 0;\n transform: translateY(8px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n/* Scrollbar styling para el dropdown */\n.select-dropdown::-webkit-scrollbar {\n width: 6px;\n}\n\n.select-dropdown::-webkit-scrollbar-track {\n background: transparent;\n}\n\n.select-dropdown::-webkit-scrollbar-thumb {\n background-color: var(--rebill-color-border);\n border-radius: 3px;\n}\n\n.select-dropdown::-webkit-scrollbar-thumb:hover {\n background-color: var(--rebill-color-text-secondary);\n}\n\n/* Fix para evitar zoom en dispositivos móviles */\n@media screen and (max-width: 768px) {\n .select-combo-trigger {\n font-size: 1rem;\n }\n\n .select-option {\n font-size: 1rem;\n }\n\n .combo-input {\n font-size: 1rem;\n }\n\n .combo-input::placeholder {\n font-size: 1rem;\n }\n}\n","import { Component, Event, EventEmitter, Listen, Prop, State, h } from '@stencil/core';\n\n@Component({\n tag: 'rebill-input-combo',\n styleUrl: 'input-combo.css',\n shadow: false,\n})\nexport class InputCombo {\n private dropdownRef?: HTMLDivElement;\n private triggerRef?: HTMLDivElement;\n\n /** Etiqueta que se muestra arriba del campo */\n @Prop() label: string = '';\n /** Opciones del selector */\n @Prop() options: { label: string; value: string }[] = [];\n /** Valor del selector */\n @Prop({ mutable: true, reflect: true }) selectValue: string = '';\n /** Valor del input de texto */\n @Prop({ mutable: true, reflect: true }) inputValue: string = '';\n /** Placeholder del campo de texto */\n @Prop() inputPlaceholder: string = '';\n /** Placeholder del selector */\n @Prop() selectPlaceholder: string = '';\n /** Mensaje de error */\n @Prop() error: string = '';\n /** ID del selector */\n @Prop() selectId: string = '';\n /** ID del input de texto */\n @Prop() inputId: string = '';\n /** Estado deshabilitado */\n @Prop() disabled: boolean = false;\n /** Ancho del selector (en porcentaje o píxeles) */\n @Prop() selectWidth: string = '120px';\n /** Estado interno para mostrar/ocultar el dropdown */\n @State() isOpen: boolean = false;\n /** Índice de la opción resaltada para navegación con teclado */\n @State() highlightedIndex: number = -1;\n /** ID único del componente */\n @State() componentId: string = '';\n\n @Event() blur: EventEmitter<{ id: string; value: string }>;\n /** Evento al cambiar el valor del selector */\n @Event() selectChange: EventEmitter<{ id: string; value: string }>;\n /** Evento al cambiar el valor del input */\n @Event() input: EventEmitter<{ id: string; value: string }>;\n\n componentWillLoad() {\n this.componentId = this.selectId || `combo-${Math.random().toString(36).substr(2, 9)}`;\n }\n\n @Listen('change', { target: 'document' })\n handleFormChange(event: CustomEvent) {\n const formData = event.detail;\n if (formData) {\n // Manejar cambios del selector\n if (this.selectId && this.selectId in formData) {\n const newSelectValue = formData[this.selectId];\n if (typeof newSelectValue === 'string') {\n this.selectValue = newSelectValue;\n }\n }\n // Manejar cambios del input\n if (this.inputId && this.inputId in formData) {\n const newInputValue = formData[this.inputId];\n if (typeof newInputValue === 'string') {\n this.inputValue = newInputValue;\n }\n }\n }\n }\n\n @Listen('closeAllSelects', { target: 'document' })\n handleCloseAllSelects(event: CustomEvent) {\n if (event.detail !== this.componentId) {\n this.closeDropdown();\n }\n }\n\n @Listen('click', { target: 'document' })\n handleDocumentClick(event: Event) {\n if (\n this.dropdownRef &&\n this.triggerRef &&\n !this.dropdownRef.contains(event.target as Node) &&\n !this.triggerRef.contains(event.target as Node)\n ) {\n this.closeDropdown();\n }\n }\n\n private toggleDropdown = () => {\n if (this.disabled) return;\n\n const wasOpen = this.isOpen;\n this.isOpen = !this.isOpen;\n\n if (this.isOpen) {\n if (!wasOpen) {\n document.dispatchEvent(new CustomEvent('closeAllSelects', { detail: this.componentId }));\n }\n\n this.highlightedIndex = this.options.findIndex(option => option.value === this.selectValue);\n if (this.highlightedIndex === -1) {\n this.highlightedIndex = 0;\n }\n }\n };\n\n private openDropdown = () => {\n if (this.disabled) return;\n\n document.dispatchEvent(new CustomEvent('closeAllSelects', { detail: this.componentId }));\n\n this.isOpen = true;\n this.highlightedIndex = this.options.findIndex(option => option.value === this.selectValue);\n if (this.highlightedIndex === -1) {\n this.highlightedIndex = 0;\n }\n };\n\n private closeDropdown = () => {\n this.isOpen = false;\n this.highlightedIndex = -1;\n };\n\n private selectOption = (option: { label: string; value: string }) => {\n if (this.disabled) return;\n this.selectValue = option.value;\n this.closeDropdown();\n this.input.emit({ id: this.selectId, value: this.selectValue });\n };\n\n private onInputChange = (event: Event) => {\n if (this.disabled) return;\n const input = event.target as HTMLInputElement;\n this.inputValue = input.value;\n this.input.emit({ id: this.inputId, value: this.inputValue });\n };\n\n private onSelectBlur = () => {\n this.blur.emit({ id: this.selectId, value: this.selectValue });\n };\n\n private onInputBlur = () => {\n const trimmedValue = this.inputValue.trim();\n\n if (trimmedValue !== this.inputValue) {\n this.inputValue = trimmedValue;\n this.input.emit({ id: this.inputId, value: this.inputValue });\n }\n\n this.blur.emit({ id: this.inputId, value: this.inputValue });\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n if (this.disabled) return;\n\n switch (event.key) {\n case 'Enter':\n case ' ':\n event.preventDefault();\n if (this.isOpen && this.highlightedIndex >= 0) {\n this.selectOption(this.options[this.highlightedIndex]);\n } else {\n this.toggleDropdown();\n }\n break;\n case 'Escape':\n event.preventDefault();\n this.closeDropdown();\n break;\n case 'ArrowDown':\n event.preventDefault();\n if (!this.isOpen) {\n this.openDropdown();\n } else {\n this.highlightedIndex = Math.min(this.highlightedIndex + 1, this.options.length - 1);\n }\n break;\n case 'ArrowUp':\n event.preventDefault();\n if (this.isOpen) {\n this.highlightedIndex = Math.max(this.highlightedIndex - 1, 0);\n }\n break;\n }\n };\n\n private getSelectedOptionLabel = (): string => {\n const selectedOption = this.options.find(option => option.value === this.selectValue);\n return selectedOption ? selectedOption.label : this.selectPlaceholder;\n };\n\n render() {\n const selectedLabel = this.getSelectedOptionLabel();\n const hasSelectValue = this.selectValue !== '';\n\n return (\n <div class=\"input-container\">\n {this.label && (\n <label class={`input-label ${this.disabled ? 'disabled' : ''}`}>{this.label}</label>\n )}\n <div\n class={`input-combo-wrapper combo-wrapper ${this.disabled ? 'disabled' : ''} ${this.error ? 'error' : ''}`}\n >\n {/* Selector */}\n <div class=\"select-section\" style={{ width: this.selectWidth }}>\n <div\n ref={el => (this.triggerRef = el)}\n class={`input-combo-select select-combo-trigger ${!hasSelectValue ? 'placeholder' : ''}`}\n onClick={this.toggleDropdown}\n onKeyDown={this.handleKeyDown}\n onBlur={this.onSelectBlur}\n tabIndex={this.disabled ? -1 : 0}\n role=\"combobox\"\n aria-expanded={this.isOpen.toString()}\n aria-haspopup=\"listbox\"\n >\n <span class=\"select-value\">{selectedLabel}</span>\n <div class=\"icon-wrapper\">\n <rebill-icon name=\"chevron-up-down\" size=\"20px\" class=\"select-icon\" />\n </div>\n </div>\n\n {this.isOpen && (\n <div ref={el => (this.dropdownRef = el)} class=\"select-dropdown\" role=\"listbox\">\n {this.options.map((option, index) => (\n <div\n class={`select-option ${this.selectValue === option.value ? 'selected' : ''} ${this.highlightedIndex === index ? 'highlighted' : ''}`}\n onClick={() => this.selectOption(option)}\n role=\"option\"\n aria-selected={this.selectValue === option.value ? 'true' : 'false'}\n >\n {option.label}\n </div>\n ))}\n </div>\n )}\n </div>\n\n {/* Divisor vertical */}\n <div class=\"combo-divider\"></div>\n\n {/* Campo de texto */}\n <div class=\"input-section\">\n <input\n type=\"text\"\n class=\"input-combo-element combo-input\"\n placeholder={this.inputPlaceholder}\n value={this.inputValue}\n onInput={this.onInputChange}\n onBlur={this.onInputBlur}\n disabled={this.disabled}\n />\n </div>\n </div>\n {this.error && <span class=\"error-message\">{this.error}</span>}\n </div>\n );\n }\n}\n"],"version":3}
|