rebill-web-components-sdk 1.8.32-beta.0 → 1.8.33

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.
@@ -1 +1 @@
1
- {"version":3,"file":"rebill-renewal.entry.esm.js","sources":["src/components/renewal/utils/getRequiredFieldsRenewal.ts","src/components/renewal/rebill-renewal.css?tag=rebill-renewal","src/components/renewal/rebill-renewal.tsx"],"sourcesContent":["import { api } from '../../../api';\nimport { PAYMENT_METHOD_ENUM } from '../../../models/enums/payment-methods.enum';\nimport { renewalState } from '../../../store/renewal.store';\nimport { PaymentMethodMapper } from '../../../utils/payment-method-mapper';\nimport { mapRequiredFields, RequiredField } from '../../../utils/required-fields-mappers';\n\nexport interface RequiredFieldsResult {\n fields: string[];\n original: RequiredField[];\n}\n\nexport interface AllRequiredFieldsMap {\n [key: string]: RequiredFieldsResult;\n}\n\nconst getRequiredFields = async (\n currency: string,\n method: string,\n organizationId: string,\n): Promise<RequiredFieldsResult> => {\n const requiredFieldsResponse = await api.checkout.getRequiredFields(\n {\n currency,\n method,\n },\n organizationId,\n );\n\n return {\n fields: mapRequiredFields(requiredFieldsResponse.data),\n original: requiredFieldsResponse.data,\n };\n};\n\nexport const getAllRequiredFieldsRenewal = async (): Promise<AllRequiredFieldsMap> => {\n const paymentMethods = [\n ...new Set(renewalState.data.paymentMethods.map(pm => pm.type as PAYMENT_METHOD_ENUM)),\n ];\n const promises = paymentMethods.map(async paymentMethod => {\n try {\n const apiPaymentMethod = PaymentMethodMapper.mapToAPMPaymentMethod(\n paymentMethod,\n renewalState.data.price.country,\n );\n\n const result = await getRequiredFields(\n renewalState.data.price.currency,\n apiPaymentMethod,\n renewalState.data.organization.id,\n );\n\n return {\n paymentMethod,\n ...result,\n };\n } catch (error) {\n console.error(`Error getting required fields for ${paymentMethod}:`, error);\n return {\n paymentMethod,\n fields: [],\n original: [],\n };\n }\n });\n\n const results = await Promise.all(promises);\n const fieldsMap: AllRequiredFieldsMap = {};\n\n results.forEach(result => {\n fieldsMap[result.paymentMethod] = {\n fields: result.fields,\n original: result.original,\n };\n });\n return fieldsMap;\n};\n\nexport const getRequiredFieldsForMethod = (\n paymentMethod: PAYMENT_METHOD_ENUM,\n allRequiredFields: AllRequiredFieldsMap,\n): RequiredFieldsResult => {\n const storedFields = allRequiredFields[paymentMethod];\n if (storedFields) {\n return storedFields;\n } else {\n return {\n fields: [],\n original: [],\n };\n }\n};\n","@import '../../styles/variables.css';\n\n@media (max-width: 1024px) {\n .rebill-checkout-renewal {\n flex-direction: column;\n gap: 0;\n justify-content: flex-start;\n background: var(--rebill-color-background);\n padding: 20px;\n }\n .right-section .left-section {\n width: 100%;\n height: 100%;\n background: var(--rebill-color-background);\n }\n .checkout-form-section {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n gap: 24px;\n height: 100%;\n margin-top: 24px;\n }\n .otp-container {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n gap: 24px;\n }\n}\n\n@media (min-width: 1025px) {\n .rebill-checkout-renewal {\n width: 100vw;\n min-height: 100vh;\n display: flex;\n flex-direction: row;\n justify-content: center;\n overflow-y: auto;\n }\n\n .left-section {\n display: flex;\n width: 60%;\n background: var(--rebill-color-background-left);\n justify-content: space-around;\n }\n\n .right-section {\n display: flex;\n padding-top: 72px;\n width: 40%;\n background: var(--rebill-color-background-right);\n position: sticky;\n top: 0;\n\n justify-content: center;\n }\n\n .checkout-form-section {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n margin-bottom: 36px;\n margin-top: 24px;\n gap: 32px;\n }\n .left-section-container {\n max-width: 450px;\n min-width: 450px;\n margin: 2.5rem 2rem 1.5rem 2rem;\n display: flex;\n flex-direction: column;\n }\n\n .checkout-summary-section {\n max-width: 450px;\n min-width: 350px;\n margin: 0rem 2rem;\n background: var(--rebill-color-background-right);\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n width: 100%;\n }\n\n .checkout-form-section user-information,\n .checkout-form-section payment-method-selector,\n .checkout-form-section rebill-address,\n .checkout-summary-section rebill-summary {\n width: 100%;\n }\n\n /* Google Maps Autocomplete Styles */\n .pac-container {\n border-radius: 4px;\n box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);\n border: 1px solid #e0e0e0;\n margin-top: 4px;\n font-family: inherit;\n }\n\n .pac-item {\n padding: 10px 12px;\n cursor: pointer;\n border-top: none;\n }\n\n .pac-item:first-child {\n border-top: none;\n }\n\n .pac-item:hover {\n background-color: #f5f5f5;\n }\n\n .pac-item-query {\n font-weight: 500;\n }\n\n .pac-icon {\n display: none;\n }\n}\n\n.payment-button-container {\n display: flex;\n flex-direction: column;\n gap: 16px;\n margin-bottom: 16px;\n}\n/* Animaciones para componentes condicionales */\n.animated-component {\n transition: all 0.3s ease-in-out;\n overflow: visible;\n}\n\n/* Keep overflow hidden only for sliding height animations */\n/* .animated-component.slide-in {\n overflow: hidden;\n} */\n\n.fade-in {\n animation: fadeIn 0.4s ease-in-out;\n}\n\n.slide-in {\n animation: slideIn 0.5s ease-out;\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n transform: translateY(-10px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n@keyframes slideIn {\n from {\n opacity: 0;\n transform: translateX(-20px);\n max-height: 0;\n }\n to {\n opacity: 1;\n transform: translateX(0);\n max-height: 450px;\n }\n}\n\n/* Animación para cuando se ocultan los componentes */\n.animated-component.hide {\n animation: fadeOut 0.3s ease-in-out forwards;\n}\n\n@keyframes fadeOut {\n from {\n opacity: 1;\n transform: translateY(0);\n }\n to {\n opacity: 0;\n transform: translateY(20px);\n }\n}\n\n/* Test Mode Chip Positioning */\nrebill-mode-sandbox {\n position: fixed;\n bottom: 50px;\n left: 50%;\n transform: translateX(-50%);\n z-index: 1000;\n}\n\n/* Ensure the chip is visible on all screen sizes */\n@media (max-width: 1024px) {\n rebill-test-mode-chip {\n bottom: 46px;\n }\n}\n\n@media (min-width: 1025px) {\n rebill-test-mode-chip {\n bottom: 46px;\n }\n}\n.mode-sandbox-mobile-container {\n display: flex;\n align-items: center;\n width: 100%;\n\n padding: 0;\n margin: 0;\n box-sizing: border-box;\n}\n\n/* Desktop grande - mantener tamaños originales */\n@media (min-width: 1451px) {\n .left-section-container {\n min-width: 450px;\n margin: 2.5rem 5rem 1.5rem 5rem;\n }\n\n .checkout-summary-section {\n min-width: 450px;\n margin: 0rem 5rem;\n }\n}\n","import { Component, Event, EventEmitter, h, Listen, Prop, State } from '@stencil/core';\nimport * as yup from 'yup';\nimport { api, Country } from '../../api';\nimport { SavedCard } from '../../api/entities/cards/types';\nimport {\n CheckoutStatusE,\n CreateAPMCheckoutRequest,\n CreateAPMCheckoutResponse,\n CreateCardCheckoutRequest,\n} from '../../api/entities/checkout/types';\nimport '../../components/checkout/apm/apm-checkout/apm-checkout';\nimport '../../components/checkout/processing-payment/processing-payment';\nimport { I18nService } from '../../i18n/i18n.service';\n\nimport { PaymentMethodNameE } from '../../models/enums/payment-method-name.enum';\nimport { PAYMENT_METHOD_ENUM } from '../../models/enums/payment-methods.enum';\nimport { PaymentMessageE } from '../../models/enums/payment-status.enum';\nimport { onChange as renewalOnChange, renewalState, RenewalStore } from '../../store/renewal.store';\nimport { BREAKPOINT_ENUM, getBreakpoint, isBreakpointBelow } from '../../utils/breakpoint';\nimport { COLORS_ENUM } from '../../utils/color-class-mapper';\nimport { generateIdempotencyKey } from '../../utils/generate-idempotency-key';\nimport { GoogleMapsService } from '../../utils/google-maps.service';\nimport { AlertErrorKeys, PaymentErrorMapper } from '../../utils/payment-error-mapper';\nimport { PaymentMethodMapper } from '../../utils/payment-method-mapper';\nimport { getFieldValues, isFieldRequired } from '../../utils/required-fields-mappers';\nimport {\n AllRequiredFieldsMap,\n getAllRequiredFieldsRenewal,\n getRequiredFieldsForMethod,\n} from './utils/getRequiredFieldsRenewal';\n\n@Component({\n tag: 'rebill-renewal',\n styleUrl: 'rebill-renewal.css',\n shadow: false,\n})\nexport class RebillRenewal {\n @Prop() renewalData!: string;\n @Prop() renewalToken!: string;\n\n @State() currentPaymentMethod: PAYMENT_METHOD_ENUM = PAYMENT_METHOD_ENUM.CARD;\n @State() isSubmitting: boolean = false;\n @State() isCardSubmitting: boolean = false;\n @State() isCardSuccess: boolean = false;\n @State() errorMessage: AlertErrorKeys | null = null;\n @State() breakpoint: BREAKPOINT_ENUM = BREAKPOINT_ENUM.DESKTOP;\n @State() errorPaymentCard: boolean = false;\n @State() errorPaymentAPM: boolean = false;\n @State() initialData: any = {};\n @State() checkoutResponse: CreateAPMCheckoutResponse | null = null;\n @State() currentApmPaymentMethod: PaymentMethodNameE | null = null;\n @State() countries: Country[] = [];\n @State() allRequiredFields: AllRequiredFieldsMap = {};\n @State() currentRequiredFields: string[] = [];\n @State() errorCardInvalid: boolean = false;\n @State() cardMode: 'input' | 'select' | null = 'select';\n\n @Event() success: EventEmitter<any>;\n @Event() paymentError: EventEmitter<any>;\n @Event() paymentMethodSelected: EventEmitter<PAYMENT_METHOD_ENUM>;\n\n private validationSchema = {\n 'phoneNumber': yup.string().when([], {\n is: () =>\n isFieldRequired('phoneNumber', this.currentRequiredFields) && this.cardMode === 'input',\n then: schema => schema.required('validation.phoneRequired'),\n otherwise: schema => schema.notRequired(),\n }),\n 'billing-country': yup.string().when([], {\n is: () =>\n isFieldRequired('billing-country', this.currentRequiredFields) && this.cardMode === 'input',\n then: schema => schema.required('validation.countryRequired'),\n otherwise: schema => schema.notRequired(),\n }),\n 'billing-state': yup.string().when([], {\n is: () =>\n isFieldRequired('billing-state', this.currentRequiredFields) && this.cardMode === 'input',\n then: schema => schema.required('validation.stateRequired'),\n otherwise: schema => schema.notRequired(),\n }),\n 'billing-address': yup.string().when([], {\n is: () =>\n isFieldRequired('billing-address', this.currentRequiredFields) && this.cardMode === 'input',\n then: schema => schema.required('validation.addressRequired'),\n otherwise: schema => schema.notRequired(),\n }),\n 'billing-city': yup.string().when([], {\n is: () =>\n isFieldRequired('billing-city', this.currentRequiredFields) && this.cardMode === 'input',\n then: schema => schema.required('validation.cityRequired'),\n otherwise: schema => schema.notRequired(),\n }),\n 'billing-zip': yup.string().when([], {\n is: () =>\n isFieldRequired('billing-zip', this.currentRequiredFields) && this.cardMode === 'input',\n then: schema => schema.required('validation.zipRequired'),\n otherwise: schema => schema.notRequired(),\n }),\n 'bankId': yup.string().when([], {\n is: () => isFieldRequired('bankId', this.currentRequiredFields),\n then: schema => schema.required('validation.bankRequired'),\n otherwise: schema => schema.notRequired(),\n }),\n 'documentType': yup.string().when([], {\n is: () =>\n isFieldRequired('documentType', this.currentRequiredFields) && this.cardMode === 'input',\n then: schema => schema.required('validation.documentTypeRequired'),\n otherwise: schema => schema.notRequired(),\n }),\n 'documentNumber': yup.string().when([], {\n is: () =>\n isFieldRequired('documentNumber', this.currentRequiredFields) && this.cardMode === 'input',\n then: schema =>\n schema.required('validation.documentNumberRequired').min(7, 'validation.documentInvalid'),\n otherwise: schema => schema.notRequired(),\n }),\n };\n\n private resizeHandler = () => {\n this.breakpoint = getBreakpoint(window.innerWidth);\n };\n\n async componentWillLoad() {\n this.resizeHandler();\n window.addEventListener('resize', this.resizeHandler);\n\n const renewalProps =\n typeof this.renewalData === 'string' ? JSON.parse(this.renewalData) : this.renewalData;\n\n RenewalStore.initializeRenewal({\n ...renewalProps,\n token: this.renewalToken,\n });\n\n // Load Google Maps script for address autocomplete\n GoogleMapsService.loadGoogleMapsScript();\n\n // Load countries data\n try {\n const response = await api.data.getCountries();\n this.countries = response.data;\n } catch (error) {\n console.error('Error loading countries:', error);\n }\n\n // Load required fields data\n try {\n this.allRequiredFields = await getAllRequiredFieldsRenewal();\n } catch (error) {\n console.error('Error loading required fields:', error);\n }\n\n if (renewalState.data.paymentMethods.length > 0) {\n const firstPaymentMethod = renewalState.data.paymentMethods[0].type as PAYMENT_METHOD_ENUM;\n this.currentPaymentMethod = firstPaymentMethod;\n RenewalStore.setSelectedPaymentMethod(firstPaymentMethod);\n\n // Set required fields for the initial payment method\n try {\n this.currentRequiredFields = getRequiredFieldsForMethod(\n firstPaymentMethod,\n this.allRequiredFields,\n ).fields;\n } catch (error) {\n console.error('Error getting required fields for method:', error);\n }\n\n // Initialize fingerprint for the first payment method\n await this.initializeFingerprint(firstPaymentMethod);\n }\n\n this.initialData = this.getInitialData();\n\n this.cardMode = renewalState.cardMode;\n renewalOnChange('cardMode', () => {\n this.cardMode = renewalState.cardMode;\n });\n }\n\n disconnectedCallback() {\n window.removeEventListener('resize', this.resizeHandler);\n }\n\n @Listen('paymentMethodSelected')\n async handlePaymentMethodSelected(event: CustomEvent<PAYMENT_METHOD_ENUM>) {\n event.stopPropagation();\n\n if (this.currentPaymentMethod === event.detail) {\n return;\n }\n\n this.currentPaymentMethod = event.detail;\n RenewalStore.setSelectedPaymentMethod(this.currentPaymentMethod);\n\n // Change cardMode to 'input' if payment method is not CARD\n if (this.currentPaymentMethod !== PAYMENT_METHOD_ENUM.CARD) {\n this.cardMode = 'input';\n RenewalStore.setCardMode('input');\n }\n\n // Update required fields for the new payment method\n try {\n this.currentRequiredFields = getRequiredFieldsForMethod(\n this.currentPaymentMethod,\n this.allRequiredFields,\n ).fields;\n } catch (error) {\n console.error('Error getting required fields for method:', error);\n }\n\n // Note: Fingerprint is handled in componentWillLoad\n\n // Initialize fingerprint for the new payment method\n await this.initializeFingerprint(this.currentPaymentMethod);\n\n this.paymentMethodSelected.emit(event.detail);\n }\n\n private async initializeFingerprint(paymentMethod: PAYMENT_METHOD_ENUM) {\n // Only initialize fingerprint for card payments and if not already generated\n if (paymentMethod === PAYMENT_METHOD_ENUM.CARD && !renewalState.deviceId) {\n try {\n const uuid = crypto.randomUUID();\n const fingerprintResponse = await api.fingerPrint.getFingerPrint(uuid);\n RenewalStore.setDeviceId(uuid);\n const script = fingerprintResponse.result.script;\n const scriptElement = document.createElement('script');\n scriptElement.innerHTML = script;\n document.body.appendChild(scriptElement);\n } catch (error) {\n console.error('Failed to initialize fingerprint:', error);\n }\n }\n }\n\n @Listen('bankSelected')\n handleBankSelected(event: CustomEvent<string>) {\n event.stopPropagation();\n RenewalStore.setSelectedBankId(event.detail);\n }\n\n @Listen('cardSelected')\n handleCardSelected(event: CustomEvent<{ card: SavedCard; cvv?: string }>) {\n const { card, cvv } = event.detail;\n RenewalStore.setSelectedCard(card);\n RenewalStore.setCvv(cvv || '');\n }\n\n private get currentPaymentError(): boolean {\n if (this.currentPaymentMethod === PAYMENT_METHOD_ENUM.CARD) {\n return this.errorPaymentCard;\n } else if (\n this.currentPaymentMethod === PAYMENT_METHOD_ENUM.CASH ||\n this.currentPaymentMethod === PAYMENT_METHOD_ENUM.BANK_TRANSFER\n ) {\n return this.errorPaymentAPM;\n }\n return false;\n }\n\n private async handleSubmit(event?: CustomEvent) {\n if (this.isSubmitting) {\n return;\n }\n\n if (this.currentPaymentMethod === PAYMENT_METHOD_ENUM.CARD) {\n await this.handleCardRenewal(event);\n } else {\n await this.handleAPMRenewal(event);\n }\n }\n\n private async handleCardRenewal(event?: CustomEvent) {\n const formData = event?.detail || this.getInitialData();\n\n if (!renewalState.data.cardId && !renewalState.data.cardTokenId) {\n this.errorCardInvalid = true;\n return;\n }\n if (!renewalState.data.cardInformation && !renewalState.data.cardId) {\n this.errorCardInvalid = true;\n return;\n }\n this.errorCardInvalid = false;\n this.isSubmitting = true;\n this.isCardSubmitting = true;\n RenewalStore.setLoading(true);\n\n try {\n const renewalRequest: CreateCardCheckoutRequest = {\n transaction: {\n quantity: 1,\n },\n ...(renewalState.data.cardId && { cardId: renewalState.data.cardId }),\n ...(renewalState.data.cardTokenId && { cardTokenId: renewalState.data.cardTokenId }),\n customAttributes: {\n ...(renewalState.deviceId && { deviceId: renewalState.deviceId }),\n },\n ...(this.cardMode === 'input' && {\n customer: {\n firstName:\n formData.fullName?.split(' ')[0] ||\n renewalState.data.subscription.customerName?.split(' ')[0],\n lastName:\n formData.fullName?.split(' ').slice(1).join(' ') ||\n renewalState.data.subscription.customerName?.split(' ').slice(1).join(' '),\n email: formData.email || renewalState.data.subscription.customerEmail,\n phone: {\n countryCode: formData.countryCodePhoneNumber || '',\n number: formData.phoneNumber || '',\n },\n },\n billingDetails: {\n address: {\n lineOne: formData['billing-address'] || '',\n city: formData['billing-city'] || '',\n state: formData['billing-state'] || '',\n country: formData['billing-country'] || '',\n zipCode: formData['billing-zip'] || '',\n },\n identification: {\n type: formData.documentType || '',\n value: formData.documentNumber || '',\n },\n },\n }),\n };\n\n const idempotencyKey = generateIdempotencyKey();\n const response = await api.checkout.createCardCheckoutRequest(\n renewalState.data.id,\n idempotencyKey,\n renewalRequest,\n renewalState.token,\n );\n\n this.isSubmitting = false;\n this.isCardSubmitting = false;\n RenewalStore.setLoading(false);\n RenewalStore.setCheckoutResponse(response.data);\n\n if (response.data.result?.status.toUpperCase() === CheckoutStatusE.APPROVED) {\n this.isCardSuccess = true;\n } else {\n this.isCardSuccess = false;\n this.errorPaymentCard = true;\n this.errorMessage = {\n message: response.data.error?.error?.message as PaymentMessageE,\n };\n }\n } catch (error: any) {\n this.isSubmitting = false;\n this.isCardSubmitting = false;\n RenewalStore.setLoading(false);\n\n this.errorPaymentCard = true;\n this.errorMessage = {\n message: error.data?.error?.message as PaymentMessageE,\n };\n }\n }\n\n private async handleAPMRenewal(event?: CustomEvent) {\n this.isSubmitting = true;\n RenewalStore.setLoading(true);\n\n try {\n const apmPaymentMethod = PaymentMethodMapper.mapToAPMPaymentMethod(\n this.currentPaymentMethod,\n renewalState.data.price.country,\n );\n\n // Get form data for billing details and customer info\n const formData = event?.detail || this.getFormData();\n\n // Transform form data to match CreateAPMCheckoutRequest structure\n const billingDetails = {\n address: {\n country: formData['billing-country'],\n state: formData['billing-state'] || '',\n city: formData['billing-city'] || '',\n zipCode: formData['billing-zip'] || '',\n lineOne: formData['billing-address'] || '',\n },\n identification: {\n type: formData.documentType || 'dni',\n value: formData.documentNumber || '',\n },\n };\n\n const renewalRequest: CreateAPMCheckoutRequest = {\n transaction: {\n quantity: 1,\n },\n method: apmPaymentMethod,\n billingDetails,\n redirect: {\n approved: window.location.origin + '/renewal/success',\n rejected: window.location.origin + '/renewal/failure',\n },\n paymentMetadata: {\n orderId: renewalState.data.id,\n source: 'renewal-web',\n },\n customAttributes: {\n bank: formData.bankId || '',\n },\n // Remove targetCurrency for PSE payments as it's not supported\n ...(apmPaymentMethod !== PaymentMethodNameE.CO_TRANSFERENCE_PSE && {\n targetCurrency: renewalState.data.price.currency,\n }),\n };\n\n // Add customer data for renewal\n renewalRequest.customer = {\n firstName:\n formData.fullName?.split(' ')[0] ||\n renewalState.data.subscription.customerName.split(' ')[0] ||\n '',\n lastName:\n formData.fullName?.split(' ').slice(1).join(' ') ||\n renewalState.data.subscription.customerName.split(' ').slice(1).join(' ') ||\n '',\n email: formData.email || renewalState.data.subscription.customerEmail,\n phone: {\n countryCode: formData.countryCodePhoneNumber || '',\n number: formData.phoneNumber || '',\n },\n };\n\n const idempotencyKey = generateIdempotencyKey();\n const response = await api.checkout.createAPMCheckoutRequest(\n renewalState.data.id,\n idempotencyKey,\n renewalRequest,\n );\n\n this.isSubmitting = false;\n RenewalStore.setLoading(false);\n RenewalStore.setCheckoutResponse(response.data);\n this.checkoutResponse = response.data;\n if (response.data.result?.status.toUpperCase() === CheckoutStatusE.APPROVED) {\n this.isCardSuccess = true;\n } else {\n this.paymentError.emit(response.data);\n RenewalStore.setCheckoutResponse(response.data);\n this.errorPaymentAPM = true;\n\n this.errorMessage = {\n alertTitle: response.data?.error?.message as PaymentMessageE,\n message: response.data.error?.message as PaymentMessageE,\n };\n }\n } catch (error: any) {\n this.isSubmitting = false;\n RenewalStore.setLoading(false);\n this.paymentError.emit(error);\n this.errorPaymentAPM = true;\n\n this.errorMessage = {\n alertTitle: error.data?.error?.message as PaymentMessageE,\n message: error.data?.error?.message,\n };\n }\n }\n\n private getFormData = () => {\n return this.initialData;\n };\n\n private getInitialData = () => {\n return {\n 'email': renewalState.data.subscription.customerEmail,\n 'fullName': renewalState.data.subscription.customerName,\n 'card': '',\n 'billing-country': '',\n 'billing-state': '',\n 'billing-address': '',\n 'billing-city': '',\n 'billing-zip': '',\n 'bankId': '',\n 'phoneNumber': '',\n 'countryCodePhoneNumber': '',\n 'documentType': '',\n 'documentNumber': '',\n };\n };\n\n private hasPrefilledAddress = () => {\n const billingFields = [\n 'billing-country',\n 'billing-state',\n 'billing-address',\n 'billing-city',\n 'billing-zip',\n ];\n return billingFields.some(key => {\n const value = this.initialData[key];\n return value && value.trim() !== '';\n });\n };\n\n private getPaymentDate = (): string => {\n const payment = renewalState.form.checkoutResponse;\n if (!payment) return '';\n\n if ('date' in payment) {\n return payment.date as string;\n }\n\n return '';\n };\n\n private getReferenceNumber = (): string => {\n const payment = renewalState.form.checkoutResponse;\n if (!payment) return '';\n if ('traceId' in payment) {\n return payment.traceId as string;\n }\n\n return '';\n };\n\n render() {\n if (!renewalState.isInitialized) {\n return <div class=\"loading\">{I18nService.translate('renewal.loading')}</div>;\n }\n\n const renderRenewalSummary = props => (\n <renewal-summary\n totalAmount={renewalState.data.price.amount}\n currency={renewalState.data.price.currency}\n subscriptionTitle={renewalState.data.subscription.name[0]?.text || 'Subscription'}\n subscriptionAmount={renewalState.data.subscription.amount}\n nextChargeDate={renewalState.data.subscription.nextChargeDate}\n frequency={renewalState.data.subscription.frequency}\n {...props}\n />\n );\n\n return (\n <>\n <rebill-processing-payment style={{ display: this.isCardSubmitting ? 'block' : 'none' }} />\n {this.isCardSuccess ? (\n <renewal-success-page\n typePaymentMethod={this.currentPaymentMethod}\n paymentDate={this.getPaymentDate()}\n referenceNumber={this.getReferenceNumber()}\n cardLastFour={renewalState.data.subscription.cardLastFour}\n country={renewalState.data.price.country}\n paymentMethodName={PaymentMethodMapper.mapToAPMPaymentMethod(\n this.currentPaymentMethod,\n renewalState.data?.price?.country,\n )}\n bank={renewalState.form?.selectedBankId || ''}\n />\n ) : (\n <rebill-checkout-form\n style={{ display: this.isCardSubmitting || this.isCardSuccess ? 'none' : 'block' }}\n validationSchema={this.validationSchema}\n initialData={this.initialData}\n onSubmit={(args: any) => this.handleSubmit(args)}\n renderForm={({ submit, formData, errors }) => (\n <div class=\"rebill-checkout-renewal\">\n <div class=\"left-section\">\n <div class=\"left-section-container\">\n <organization-logo organization={renewalState.data.organization} />\n\n <div class=\"checkout-form-section\">\n {/* Customer Information - Readonly */}\n <user-information-static\n userInfo={{\n customerName: renewalState.data.subscription.customerName,\n customerEmail: renewalState.data.subscription.customerEmail,\n }}\n />\n\n {isBreakpointBelow(this.breakpoint, BREAKPOINT_ENUM.DESKTOP) &&\n renderRenewalSummary({\n displayedComponents: 'header',\n })}\n\n {isBreakpointBelow(this.breakpoint, BREAKPOINT_ENUM.DESKTOP) &&\n renderRenewalSummary({\n displayedComponents: 'details',\n })}\n\n {/* Payment Method Selection */}\n <div style={{ display: 'flex', flexDirection: 'column', gap: '32px' }}>\n <payment-method-selector\n enabledPaymentMethods={[\n ...new Set(\n renewalState.data.paymentMethods.map(\n pm => pm.type as PAYMENT_METHOD_ENUM,\n ),\n ),\n ]}\n defaultSelected={this.currentPaymentMethod}\n errorComponent={{\n showErrorComponent: this.currentPaymentError,\n alertTitle: PaymentErrorMapper.getErrorTitle(\n this.currentPaymentMethod,\n renewalState.data.price.country,\n this.errorMessage?.alertTitle,\n ),\n message: PaymentErrorMapper.getErrorMessage(\n this.errorMessage?.message,\n this.currentPaymentMethod,\n renewalState.data.price.country,\n ),\n }}\n cardError={{\n showCardInvalid: this.errorCardInvalid,\n type: null,\n }}\n country={renewalState.data.price.country}\n documentTypeError={errors?.documentType}\n documentNumberError={errors?.documentNumber}\n showDocument={\n this.cardMode === 'input' &&\n (isFieldRequired('documentType', this.currentRequiredFields) ||\n isFieldRequired('documentNumber', this.currentRequiredFields))\n }\n />\n {/* Alert for non-card payment methods */}\n {this.currentPaymentMethod !== PAYMENT_METHOD_ENUM.CARD && (\n <rebill-alert\n type=\"info\"\n message={I18nService.translate('renewal.paymentMethodAlert', {\n cardLastFour: renewalState.data.subscription.cardLastFour || '****',\n })}\n icon=\"calendar-edit\"\n variant=\"outlined\"\n colorIcon={COLORS_ENUM.PRIMARY}\n />\n )}\n {this.cardMode === 'input' &&\n isFieldRequired('bankId', this.currentRequiredFields) && (\n <div class=\"animated-component fade-in\">\n <rebill-bank-selector\n banks={\n getFieldValues(\n 'bank',\n this.allRequiredFields[this.currentPaymentMethod]?.original,\n ) || []\n }\n defaultSelectedBankId={formData.bankId || ''}\n error={errors?.bankId}\n />\n </div>\n )}\n </div>\n {this.cardMode === 'input' &&\n (isFieldRequired('billing-country', this.currentRequiredFields) ||\n isFieldRequired('billing-state', this.currentRequiredFields) ||\n isFieldRequired('billing-address', this.currentRequiredFields) ||\n isFieldRequired('billing-city', this.currentRequiredFields) ||\n isFieldRequired('billing-zip', this.currentRequiredFields)) && (\n <div class=\"animated-component slide-in\">\n <rebill-address\n countryOptions={this.countries.map(country => ({\n label: country.country,\n value: country.isoCountryCode,\n }))}\n billingView={this.hasPrefilledAddress() ? 'form' : 'search'}\n errors={{\n 'billing-country': errors['billing-country'],\n 'billing-state': errors['billing-state'],\n 'billing-address': errors['billing-address'],\n 'billing-city': errors['billing-city'],\n 'billing-zip': errors['billing-zip'],\n }}\n />\n </div>\n )}\n {this.cardMode === 'input' &&\n isFieldRequired('phoneNumber', this.currentRequiredFields) && (\n <div class=\"animated-component fade-in\">\n <user-information-phone error={errors?.phoneNumber} />\n </div>\n )}\n\n {/* Show APM checkout response after successful payment submission */}\n {this.checkoutResponse?.result &&\n (this.currentPaymentMethod === PAYMENT_METHOD_ENUM.CASH ||\n this.currentPaymentMethod === PAYMENT_METHOD_ENUM.BANK_TRANSFER) && (\n <apm-checkout\n paymentMethod={this.currentPaymentMethod}\n referenceId={\n this.currentPaymentMethod === PAYMENT_METHOD_ENUM.CASH\n ? this.checkoutResponse.result.data.referenceId\n : undefined\n }\n qrCodeData={\n this.currentPaymentMethod === PAYMENT_METHOD_ENUM.BANK_TRANSFER\n ? this.checkoutResponse.result.data.qrCode\n : undefined\n }\n providerName={renewalState.data.organization?.name || ''}\n expirationDate={(() => {\n const expirationDate = new Date();\n expirationDate.setDate(expirationDate.getDate() + 30);\n return expirationDate.toISOString();\n })()}\n country={renewalState.data.price.country}\n redirectUrl={this.checkoutResponse.result.data.url}\n />\n )}\n\n {isBreakpointBelow(this.breakpoint, BREAKPOINT_ENUM.DESKTOP) &&\n renderRenewalSummary({\n displayedComponents: 'summary',\n })}\n\n <div style={{ display: 'flex', flexDirection: 'column', gap: '16px' }}>\n {/* Payment Button */}\n <payment-button\n paymentMethod={this.currentPaymentMethod}\n isLoading={this.isSubmitting}\n isRenewal={true}\n trialPeriodDays={renewalState.data.subscription.trialPeriodDays}\n redirectUrl={!!this.checkoutResponse?.result?.data?.url}\n timeToRedirect={5000}\n country={renewalState.data.price.country}\n isDisabled={renewalState.fetchingInstallments}\n onSubmit={() => submit()}\n />\n\n {/* Disabled Button Below */}\n <rebill-alert\n type=\"secure\"\n variant=\"variant-secure\"\n icon=\"lock-outline\"\n message={I18nService.translate('otp.secureMessage')}\n />\n </div>\n </div>\n <rebill-footer\n style={{\n marginTop: isBreakpointBelow(this.breakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? '24px'\n : 'auto',\n }}\n />\n </div>\n </div>\n\n {/* Desktop Summary */}\n {!isBreakpointBelow(this.breakpoint, BREAKPOINT_ENUM.DESKTOP) && (\n <div class=\"right-section\">\n <div class=\"checkout-summary-section\">\n {renderRenewalSummary({\n displayedComponents: ['header', 'details', 'summary'],\n })}\n </div>\n </div>\n )}\n </div>\n )}\n />\n )}\n </>\n );\n }\n}\n"],"names":["yup.string","renewalOnChange"],"mappings":"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"}
1
+ {"version":3,"file":"rebill-renewal.entry.esm.js","sources":["src/components/renewal/utils/getRequiredFieldsRenewal.ts","src/components/renewal/rebill-renewal.css?tag=rebill-renewal","src/components/renewal/rebill-renewal.tsx"],"sourcesContent":["import { api } from '../../../api';\nimport { PAYMENT_METHOD_ENUM } from '../../../models/enums/payment-methods.enum';\nimport { renewalState } from '../../../store/renewal.store';\nimport { PaymentMethodMapper } from '../../../utils/payment-method-mapper';\nimport { mapRequiredFields, RequiredField } from '../../../utils/required-fields-mappers';\n\nexport interface RequiredFieldsResult {\n fields: string[];\n original: RequiredField[];\n}\n\nexport interface AllRequiredFieldsMap {\n [key: string]: RequiredFieldsResult;\n}\n\nconst getRequiredFields = async (\n currency: string,\n method: string,\n organizationId: string,\n): Promise<RequiredFieldsResult> => {\n const requiredFieldsResponse = await api.checkout.getRequiredFields(\n {\n currency,\n method,\n },\n organizationId,\n );\n\n return {\n fields: mapRequiredFields(requiredFieldsResponse.data),\n original: requiredFieldsResponse.data,\n };\n};\n\nexport const getAllRequiredFieldsRenewal = async (): Promise<AllRequiredFieldsMap> => {\n const paymentMethods = [\n ...new Set(renewalState.data.paymentMethods.map(pm => pm.type as PAYMENT_METHOD_ENUM)),\n ];\n const promises = paymentMethods.map(async paymentMethod => {\n try {\n const apiPaymentMethod = PaymentMethodMapper.mapToAPMPaymentMethod(\n paymentMethod,\n renewalState.data.price.country,\n );\n\n const result = await getRequiredFields(\n renewalState.data.price.currency,\n apiPaymentMethod,\n renewalState.data.organization.id,\n );\n\n return {\n paymentMethod,\n ...result,\n };\n } catch (error) {\n console.error(`Error getting required fields for ${paymentMethod}:`, error);\n return {\n paymentMethod,\n fields: [],\n original: [],\n };\n }\n });\n\n const results = await Promise.all(promises);\n const fieldsMap: AllRequiredFieldsMap = {};\n\n results.forEach(result => {\n fieldsMap[result.paymentMethod] = {\n fields: result.fields,\n original: result.original,\n };\n });\n return fieldsMap;\n};\n\nexport const getRequiredFieldsForMethod = (\n paymentMethod: PAYMENT_METHOD_ENUM,\n allRequiredFields: AllRequiredFieldsMap,\n): RequiredFieldsResult => {\n const storedFields = allRequiredFields[paymentMethod];\n if (storedFields) {\n return storedFields;\n } else {\n return {\n fields: [],\n original: [],\n };\n }\n};\n","@import '../../styles/variables.css';\n\n@media (max-width: 1024px) {\n .rebill-checkout-renewal {\n flex-direction: column;\n gap: 0;\n justify-content: flex-start;\n background: var(--rebill-color-background);\n padding: 20px;\n }\n .right-section .left-section {\n width: 100%;\n height: 100%;\n background: var(--rebill-color-background);\n }\n .checkout-form-section {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n gap: 24px;\n height: 100%;\n margin-top: 24px;\n }\n .otp-container {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n gap: 24px;\n }\n}\n\n@media (min-width: 1025px) {\n .rebill-checkout-renewal {\n width: 100vw;\n min-height: 100vh;\n display: flex;\n flex-direction: row;\n justify-content: center;\n overflow-y: auto;\n }\n\n .left-section {\n display: flex;\n width: 60%;\n background: var(--rebill-color-background-left);\n justify-content: space-around;\n }\n\n .right-section {\n display: flex;\n padding-top: 72px;\n width: 40%;\n background: var(--rebill-color-background-right);\n position: sticky;\n top: 0;\n\n justify-content: center;\n }\n\n .checkout-form-section {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n margin-bottom: 36px;\n margin-top: 24px;\n gap: 32px;\n }\n .left-section-container {\n max-width: 450px;\n min-width: 450px;\n margin: 2.5rem 2rem 1.5rem 2rem;\n display: flex;\n flex-direction: column;\n }\n\n .checkout-summary-section {\n max-width: 450px;\n min-width: 350px;\n margin: 0rem 2rem;\n background: var(--rebill-color-background-right);\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n width: 100%;\n }\n\n .checkout-form-section user-information,\n .checkout-form-section payment-method-selector,\n .checkout-form-section rebill-address,\n .checkout-summary-section rebill-summary {\n width: 100%;\n }\n\n /* Google Maps Autocomplete Styles */\n .pac-container {\n border-radius: 4px;\n box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);\n border: 1px solid #e0e0e0;\n margin-top: 4px;\n font-family: inherit;\n }\n\n .pac-item {\n padding: 10px 12px;\n cursor: pointer;\n border-top: none;\n }\n\n .pac-item:first-child {\n border-top: none;\n }\n\n .pac-item:hover {\n background-color: #f5f5f5;\n }\n\n .pac-item-query {\n font-weight: 500;\n }\n\n .pac-icon {\n display: none;\n }\n}\n\n.payment-button-container {\n display: flex;\n flex-direction: column;\n gap: 16px;\n margin-bottom: 16px;\n}\n/* Animaciones para componentes condicionales */\n.animated-component {\n transition: all 0.3s ease-in-out;\n overflow: visible;\n}\n\n/* Keep overflow hidden only for sliding height animations */\n/* .animated-component.slide-in {\n overflow: hidden;\n} */\n\n.fade-in {\n animation: fadeIn 0.4s ease-in-out;\n}\n\n.slide-in {\n animation: slideIn 0.5s ease-out;\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n transform: translateY(-10px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n@keyframes slideIn {\n from {\n opacity: 0;\n transform: translateX(-20px);\n max-height: 0;\n }\n to {\n opacity: 1;\n transform: translateX(0);\n max-height: 450px;\n }\n}\n\n/* Animación para cuando se ocultan los componentes */\n.animated-component.hide {\n animation: fadeOut 0.3s ease-in-out forwards;\n}\n\n@keyframes fadeOut {\n from {\n opacity: 1;\n transform: translateY(0);\n }\n to {\n opacity: 0;\n transform: translateY(20px);\n }\n}\n\n/* Test Mode Chip Positioning */\nrebill-mode-sandbox {\n position: fixed;\n bottom: 50px;\n left: 50%;\n transform: translateX(-50%);\n z-index: 1000;\n}\n\n/* Ensure the chip is visible on all screen sizes */\n@media (max-width: 1024px) {\n rebill-test-mode-chip {\n bottom: 46px;\n }\n}\n\n@media (min-width: 1025px) {\n rebill-test-mode-chip {\n bottom: 46px;\n }\n}\n.mode-sandbox-mobile-container {\n display: flex;\n align-items: center;\n width: 100%;\n\n padding: 0;\n margin: 0;\n box-sizing: border-box;\n}\n\n/* Desktop grande - mantener tamaños originales */\n@media (min-width: 1451px) {\n .left-section-container {\n min-width: 450px;\n margin: 2.5rem 5rem 1.5rem 5rem;\n }\n\n .checkout-summary-section {\n min-width: 450px;\n margin: 0rem 5rem;\n }\n}\n","import { Component, Event, EventEmitter, h, Listen, Prop, State } from '@stencil/core';\nimport * as yup from 'yup';\nimport { api, Country } from '../../api';\nimport { SavedCard } from '../../api/entities/cards/types';\nimport {\n CheckoutStatusE,\n CreateAPMCheckoutRequest,\n CreateAPMCheckoutResponse,\n CreateCardCheckoutRequest,\n} from '../../api/entities/checkout/types';\nimport '../../components/checkout/apm/apm-checkout/apm-checkout';\nimport '../../components/checkout/processing-payment/processing-payment';\nimport { I18nService } from '../../i18n/i18n.service';\n\nimport { PaymentMethodNameE } from '../../models/enums/payment-method-name.enum';\nimport { PAYMENT_METHOD_ENUM } from '../../models/enums/payment-methods.enum';\nimport { PaymentMessageE } from '../../models/enums/payment-status.enum';\nimport { onChange as renewalOnChange, renewalState, RenewalStore } from '../../store/renewal.store';\nimport { BREAKPOINT_ENUM, getBreakpoint, isBreakpointBelow } from '../../utils/breakpoint';\nimport { COLORS_ENUM } from '../../utils/color-class-mapper';\nimport { generateIdempotencyKey } from '../../utils/generate-idempotency-key';\nimport { GoogleMapsService } from '../../utils/google-maps.service';\nimport { AlertErrorKeys, PaymentErrorMapper } from '../../utils/payment-error-mapper';\nimport { PaymentMethodMapper } from '../../utils/payment-method-mapper';\nimport { getFieldValues, isFieldRequired } from '../../utils/required-fields-mappers';\nimport {\n AllRequiredFieldsMap,\n getAllRequiredFieldsRenewal,\n getRequiredFieldsForMethod,\n} from './utils/getRequiredFieldsRenewal';\n\n@Component({\n tag: 'rebill-renewal',\n styleUrl: 'rebill-renewal.css',\n shadow: false,\n})\nexport class RebillRenewal {\n @Prop() renewalData!: string;\n @Prop() renewalToken!: string;\n\n @State() currentPaymentMethod: PAYMENT_METHOD_ENUM = PAYMENT_METHOD_ENUM.CARD;\n @State() isSubmitting: boolean = false;\n @State() isCardSubmitting: boolean = false;\n @State() isCardSuccess: boolean = false;\n @State() errorMessage: AlertErrorKeys | null = null;\n @State() breakpoint: BREAKPOINT_ENUM = BREAKPOINT_ENUM.DESKTOP;\n @State() errorPaymentCard: boolean = false;\n @State() errorPaymentAPM: boolean = false;\n @State() initialData: any = {};\n @State() checkoutResponse: CreateAPMCheckoutResponse | null = null;\n @State() currentApmPaymentMethod: PaymentMethodNameE | null = null;\n @State() countries: Country[] = [];\n @State() allRequiredFields: AllRequiredFieldsMap = {};\n @State() currentRequiredFields: string[] = [];\n @State() errorCardInvalid: boolean = false;\n @State() cardMode: 'input' | 'select' | null = 'select';\n\n @Event() success: EventEmitter<any>;\n @Event() paymentError: EventEmitter<any>;\n @Event() paymentMethodSelected: EventEmitter<PAYMENT_METHOD_ENUM>;\n\n private validationSchema = {\n 'phoneNumber': yup.string().when([], {\n is: () =>\n isFieldRequired('phoneNumber', this.currentRequiredFields) && this.cardMode === 'input',\n then: schema => schema.required('validation.phoneRequired'),\n otherwise: schema => schema.notRequired(),\n }),\n 'billing-country': yup.string().when([], {\n is: () =>\n isFieldRequired('billing-country', this.currentRequiredFields) && this.cardMode === 'input',\n then: schema => schema.required('validation.countryRequired'),\n otherwise: schema => schema.notRequired(),\n }),\n 'billing-state': yup.string().when([], {\n is: () =>\n isFieldRequired('billing-state', this.currentRequiredFields) && this.cardMode === 'input',\n then: schema => schema.required('validation.stateRequired'),\n otherwise: schema => schema.notRequired(),\n }),\n 'billing-address': yup.string().when([], {\n is: () =>\n isFieldRequired('billing-address', this.currentRequiredFields) && this.cardMode === 'input',\n then: schema => schema.required('validation.addressRequired'),\n otherwise: schema => schema.notRequired(),\n }),\n 'billing-city': yup.string().when([], {\n is: () =>\n isFieldRequired('billing-city', this.currentRequiredFields) && this.cardMode === 'input',\n then: schema => schema.required('validation.cityRequired'),\n otherwise: schema => schema.notRequired(),\n }),\n 'billing-zip': yup.string().when([], {\n is: () =>\n isFieldRequired('billing-zip', this.currentRequiredFields) && this.cardMode === 'input',\n then: schema => schema.required('validation.zipRequired'),\n otherwise: schema => schema.notRequired(),\n }),\n 'bankId': yup.string().when([], {\n is: () => isFieldRequired('bankId', this.currentRequiredFields),\n then: schema => schema.required('validation.bankRequired'),\n otherwise: schema => schema.notRequired(),\n }),\n 'documentType': yup.string().when([], {\n is: () =>\n isFieldRequired('documentType', this.currentRequiredFields) && this.cardMode === 'input',\n then: schema => schema.required('validation.documentTypeRequired'),\n otherwise: schema => schema.notRequired(),\n }),\n 'documentNumber': yup.string().when([], {\n is: () =>\n isFieldRequired('documentNumber', this.currentRequiredFields) && this.cardMode === 'input',\n then: schema =>\n schema.required('validation.documentNumberRequired').min(7, 'validation.documentInvalid'),\n otherwise: schema => schema.notRequired(),\n }),\n };\n\n private resizeHandler = () => {\n this.breakpoint = getBreakpoint(window.innerWidth);\n };\n\n async componentWillLoad() {\n this.resizeHandler();\n window.addEventListener('resize', this.resizeHandler);\n\n const renewalProps =\n typeof this.renewalData === 'string' ? JSON.parse(this.renewalData) : this.renewalData;\n\n RenewalStore.initializeRenewal({\n ...renewalProps,\n token: this.renewalToken,\n });\n\n // Load Google Maps script for address autocomplete\n GoogleMapsService.loadGoogleMapsScript();\n\n // Load countries data\n try {\n const response = await api.data.getCountries();\n this.countries = response.data;\n } catch (error) {\n console.error('Error loading countries:', error);\n }\n\n // Load required fields data\n try {\n this.allRequiredFields = await getAllRequiredFieldsRenewal();\n } catch (error) {\n console.error('Error loading required fields:', error);\n }\n\n if (renewalState.data.paymentMethods.length > 0) {\n let defaultPaymentMethod: PAYMENT_METHOD_ENUM | null = null;\n\n if (renewalState.data.subscription?.paymentMethod) {\n const subscriptionPaymentMethod =\n renewalState.data.subscription.paymentMethod.toLowerCase();\n const mappedMethod =\n subscriptionPaymentMethod === 'card'\n ? PAYMENT_METHOD_ENUM.CARD\n : subscriptionPaymentMethod === 'bank_transfer'\n ? PAYMENT_METHOD_ENUM.BANK_TRANSFER\n : null;\n\n if (mappedMethod) {\n const isAvailable = renewalState.data.paymentMethods.some(pm => pm.type === mappedMethod);\n if (isAvailable) {\n defaultPaymentMethod = mappedMethod;\n }\n }\n }\n\n if (!defaultPaymentMethod) {\n defaultPaymentMethod = renewalState.data.paymentMethods[0].type as PAYMENT_METHOD_ENUM;\n }\n\n this.currentPaymentMethod = defaultPaymentMethod;\n RenewalStore.setSelectedPaymentMethod(defaultPaymentMethod);\n\n if (defaultPaymentMethod !== PAYMENT_METHOD_ENUM.CARD) {\n this.cardMode = 'input';\n RenewalStore.setCardMode('input');\n }\n\n try {\n this.currentRequiredFields = getRequiredFieldsForMethod(\n defaultPaymentMethod,\n this.allRequiredFields,\n ).fields;\n } catch (error) {\n console.error('Error getting required fields for method:', error);\n }\n\n await this.initializeFingerprint(defaultPaymentMethod);\n }\n\n this.initialData = this.getInitialData();\n\n renewalOnChange('cardMode', () => {\n this.cardMode = renewalState.cardMode;\n });\n }\n\n disconnectedCallback() {\n window.removeEventListener('resize', this.resizeHandler);\n }\n\n @Listen('paymentMethodSelected')\n async handlePaymentMethodSelected(event: CustomEvent<PAYMENT_METHOD_ENUM>) {\n event.stopPropagation();\n\n if (this.currentPaymentMethod === event.detail) {\n return;\n }\n\n this.currentPaymentMethod = event.detail;\n RenewalStore.setSelectedPaymentMethod(this.currentPaymentMethod);\n\n // Change cardMode to 'input' if payment method is not CARD\n if (this.currentPaymentMethod !== PAYMENT_METHOD_ENUM.CARD) {\n this.cardMode = 'input';\n RenewalStore.setCardMode('input');\n }\n\n // Update required fields for the new payment method\n try {\n this.currentRequiredFields = getRequiredFieldsForMethod(\n this.currentPaymentMethod,\n this.allRequiredFields,\n ).fields;\n } catch (error) {\n console.error('Error getting required fields for method:', error);\n }\n\n // Note: Fingerprint is handled in componentWillLoad\n\n // Initialize fingerprint for the new payment method\n await this.initializeFingerprint(this.currentPaymentMethod);\n\n this.paymentMethodSelected.emit(event.detail);\n }\n\n private async initializeFingerprint(paymentMethod: PAYMENT_METHOD_ENUM) {\n // Only initialize fingerprint for card payments and if not already generated\n if (paymentMethod === PAYMENT_METHOD_ENUM.CARD && !renewalState.deviceId) {\n try {\n const uuid = crypto.randomUUID();\n const fingerprintResponse = await api.fingerPrint.getFingerPrint(uuid);\n RenewalStore.setDeviceId(uuid);\n const script = fingerprintResponse.result.script;\n const scriptElement = document.createElement('script');\n scriptElement.innerHTML = script;\n document.body.appendChild(scriptElement);\n } catch (error) {\n console.error('Failed to initialize fingerprint:', error);\n }\n }\n }\n\n @Listen('bankSelected')\n handleBankSelected(event: CustomEvent<string>) {\n event.stopPropagation();\n RenewalStore.setSelectedBankId(event.detail);\n }\n\n @Listen('cardSelected')\n handleCardSelected(event: CustomEvent<{ card: SavedCard; cvv?: string }>) {\n const { card, cvv } = event.detail;\n RenewalStore.setSelectedCard(card);\n RenewalStore.setCvv(cvv || '');\n }\n\n private get currentPaymentError(): boolean {\n if (this.currentPaymentMethod === PAYMENT_METHOD_ENUM.CARD) {\n return this.errorPaymentCard;\n } else if (\n this.currentPaymentMethod === PAYMENT_METHOD_ENUM.CASH ||\n this.currentPaymentMethod === PAYMENT_METHOD_ENUM.BANK_TRANSFER\n ) {\n return this.errorPaymentAPM;\n }\n return false;\n }\n\n private async handleSubmit(event?: CustomEvent) {\n if (this.isSubmitting) {\n return;\n }\n\n if (this.currentPaymentMethod === PAYMENT_METHOD_ENUM.CARD) {\n await this.handleCardRenewal(event);\n } else {\n await this.handleAPMRenewal(event);\n }\n }\n\n private async handleCardRenewal(event?: CustomEvent) {\n const formData = event?.detail || this.getInitialData();\n\n if (!renewalState.data.cardId && !renewalState.data.cardTokenId) {\n this.errorCardInvalid = true;\n return;\n }\n if (!renewalState.data.cardInformation && !renewalState.data.cardId) {\n this.errorCardInvalid = true;\n return;\n }\n this.errorCardInvalid = false;\n this.isSubmitting = true;\n this.isCardSubmitting = true;\n RenewalStore.setLoading(true);\n\n try {\n const renewalRequest: CreateCardCheckoutRequest = {\n transaction: {\n quantity: 1,\n },\n ...(renewalState.data.cardId && { cardId: renewalState.data.cardId }),\n ...(renewalState.data.cardTokenId && { cardTokenId: renewalState.data.cardTokenId }),\n customAttributes: {\n ...(renewalState.deviceId && { deviceId: renewalState.deviceId }),\n },\n ...(this.cardMode === 'input' && {\n customer: {\n firstName:\n formData.fullName?.split(' ')[0] ||\n renewalState.data.subscription.customerName?.split(' ')[0],\n lastName:\n formData.fullName?.split(' ').slice(1).join(' ') ||\n renewalState.data.subscription.customerName?.split(' ').slice(1).join(' '),\n email: formData.email || renewalState.data.subscription.customerEmail,\n phone: {\n countryCode: formData.countryCodePhoneNumber || '',\n number: formData.phoneNumber || '',\n },\n },\n billingDetails: {\n address: {\n lineOne: formData['billing-address'] || '',\n city: formData['billing-city'] || '',\n state: formData['billing-state'] || '',\n country: formData['billing-country'] || '',\n zipCode: formData['billing-zip'] || '',\n },\n identification: {\n type: formData.documentType || '',\n value: formData.documentNumber || '',\n },\n },\n }),\n };\n\n const idempotencyKey = generateIdempotencyKey();\n const response = await api.checkout.createCardCheckoutRequest(\n renewalState.data.id,\n idempotencyKey,\n renewalRequest,\n renewalState.token,\n );\n\n this.isSubmitting = false;\n this.isCardSubmitting = false;\n RenewalStore.setLoading(false);\n RenewalStore.setCheckoutResponse(response.data);\n\n if (response.data.result?.status.toUpperCase() === CheckoutStatusE.APPROVED) {\n this.isCardSuccess = true;\n } else {\n this.isCardSuccess = false;\n this.errorPaymentCard = true;\n this.errorMessage = {\n message: response.data.error?.error?.message as PaymentMessageE,\n };\n }\n } catch (error: any) {\n this.isSubmitting = false;\n this.isCardSubmitting = false;\n RenewalStore.setLoading(false);\n\n this.errorPaymentCard = true;\n this.errorMessage = {\n message: error.data?.error?.message as PaymentMessageE,\n };\n }\n }\n\n private async handleAPMRenewal(event?: CustomEvent) {\n this.isSubmitting = true;\n RenewalStore.setLoading(true);\n\n try {\n const apmPaymentMethod = PaymentMethodMapper.mapToAPMPaymentMethod(\n this.currentPaymentMethod,\n renewalState.data.price.country,\n );\n\n // Get form data for billing details and customer info\n const formData = event?.detail || this.getFormData();\n\n // Transform form data to match CreateAPMCheckoutRequest structure\n const billingDetails = {\n address: {\n country: formData['billing-country'],\n state: formData['billing-state'] || '',\n city: formData['billing-city'] || '',\n zipCode: formData['billing-zip'] || '',\n lineOne: formData['billing-address'] || '',\n },\n identification: {\n type: formData.documentType || 'dni',\n value: formData.documentNumber || '',\n },\n };\n\n const renewalRequest: CreateAPMCheckoutRequest = {\n transaction: {\n quantity: 1,\n },\n method: apmPaymentMethod,\n billingDetails,\n redirect: {\n approved: window.location.origin + '/renewal/success',\n rejected: window.location.origin + '/renewal/failure',\n },\n paymentMetadata: {\n orderId: renewalState.data.id,\n source: 'renewal-web',\n },\n customAttributes: {\n bank: formData.bankId || '',\n },\n // Remove targetCurrency for PSE payments as it's not supported\n ...(apmPaymentMethod !== PaymentMethodNameE.CO_TRANSFERENCE_PSE && {\n targetCurrency: renewalState.data.price.currency,\n }),\n };\n\n // Add customer data for renewal\n renewalRequest.customer = {\n firstName:\n formData.fullName?.split(' ')[0] ||\n renewalState.data.subscription.customerName.split(' ')[0] ||\n '',\n lastName:\n formData.fullName?.split(' ').slice(1).join(' ') ||\n renewalState.data.subscription.customerName.split(' ').slice(1).join(' ') ||\n '',\n email: formData.email || renewalState.data.subscription.customerEmail,\n phone: {\n countryCode: formData.countryCodePhoneNumber || '',\n number: formData.phoneNumber || '',\n },\n };\n\n const idempotencyKey = generateIdempotencyKey();\n const response = await api.checkout.createAPMCheckoutRequest(\n renewalState.data.id,\n idempotencyKey,\n renewalRequest,\n );\n\n this.isSubmitting = false;\n RenewalStore.setLoading(false);\n RenewalStore.setCheckoutResponse(response.data);\n this.checkoutResponse = response.data;\n if (response.data.result?.status.toUpperCase() === CheckoutStatusE.APPROVED) {\n this.isCardSuccess = true;\n } else {\n this.paymentError.emit(response.data);\n RenewalStore.setCheckoutResponse(response.data);\n this.errorPaymentAPM = true;\n\n this.errorMessage = {\n alertTitle: response.data?.error?.message as PaymentMessageE,\n message: response.data.error?.message as PaymentMessageE,\n };\n }\n } catch (error: any) {\n this.isSubmitting = false;\n RenewalStore.setLoading(false);\n this.paymentError.emit(error);\n this.errorPaymentAPM = true;\n\n this.errorMessage = {\n alertTitle: error.data?.error?.message as PaymentMessageE,\n message: error.data?.error?.message,\n };\n }\n }\n\n private getFormData = () => {\n return this.initialData;\n };\n\n private getInitialData = () => {\n return {\n 'email': renewalState.data.subscription.customerEmail,\n 'fullName': renewalState.data.subscription.customerName,\n 'card': '',\n 'billing-country': '',\n 'billing-state': '',\n 'billing-address': '',\n 'billing-city': '',\n 'billing-zip': '',\n 'bankId': '',\n 'phoneNumber': '',\n 'countryCodePhoneNumber': '',\n 'documentType': '',\n 'documentNumber': '',\n };\n };\n\n private hasPrefilledAddress = () => {\n const billingFields = [\n 'billing-country',\n 'billing-state',\n 'billing-address',\n 'billing-city',\n 'billing-zip',\n ];\n return billingFields.some(key => {\n const value = this.initialData[key];\n return value && value.trim() !== '';\n });\n };\n\n private getPaymentDate = (): string => {\n const payment = renewalState.form.checkoutResponse;\n if (!payment) return '';\n\n if ('date' in payment) {\n return payment.date as string;\n }\n\n return '';\n };\n\n private getReferenceNumber = (): string => {\n const payment = renewalState.form.checkoutResponse;\n if (!payment) return '';\n if ('traceId' in payment) {\n return payment.traceId as string;\n }\n\n return '';\n };\n\n render() {\n if (!renewalState.isInitialized) {\n return <div class=\"loading\">{I18nService.translate('renewal.loading')}</div>;\n }\n\n const renderRenewalSummary = props => (\n <renewal-summary\n totalAmount={renewalState.data.price.amount}\n currency={renewalState.data.price.currency}\n subscriptionTitle={renewalState.data.subscription.name[0]?.text || 'Subscription'}\n subscriptionAmount={renewalState.data.subscription.amount}\n nextChargeDate={renewalState.data.subscription.nextChargeDate}\n frequency={renewalState.data.subscription.frequency}\n {...props}\n />\n );\n\n return (\n <>\n <rebill-processing-payment style={{ display: this.isCardSubmitting ? 'block' : 'none' }} />\n {this.isCardSuccess ? (\n <renewal-success-page\n typePaymentMethod={this.currentPaymentMethod}\n paymentDate={this.getPaymentDate()}\n referenceNumber={this.getReferenceNumber()}\n cardLastFour={renewalState.data.subscription.cardLastFour}\n country={renewalState.data.price.country}\n paymentMethodName={PaymentMethodMapper.mapToAPMPaymentMethod(\n this.currentPaymentMethod,\n renewalState.data?.price?.country,\n )}\n bank={renewalState.form?.selectedBankId || ''}\n />\n ) : (\n <rebill-checkout-form\n style={{ display: this.isCardSubmitting || this.isCardSuccess ? 'none' : 'block' }}\n validationSchema={this.validationSchema}\n initialData={this.initialData}\n onSubmit={(args: any) => this.handleSubmit(args)}\n renderForm={({ submit, formData, errors }) => (\n <div class=\"rebill-checkout-renewal\">\n <div class=\"left-section\">\n <div class=\"left-section-container\">\n <organization-logo organization={renewalState.data.organization} />\n\n <div class=\"checkout-form-section\">\n {/* Customer Information - Readonly */}\n <user-information-static\n userInfo={{\n customerName: renewalState.data.subscription.customerName,\n customerEmail: renewalState.data.subscription.customerEmail,\n }}\n />\n\n {isBreakpointBelow(this.breakpoint, BREAKPOINT_ENUM.DESKTOP) &&\n renderRenewalSummary({\n displayedComponents: 'header',\n })}\n\n {isBreakpointBelow(this.breakpoint, BREAKPOINT_ENUM.DESKTOP) &&\n renderRenewalSummary({\n displayedComponents: 'details',\n })}\n\n {/* Payment Method Selection */}\n <div style={{ display: 'flex', flexDirection: 'column', gap: '32px' }}>\n <payment-method-selector\n enabledPaymentMethods={[\n ...new Set(\n renewalState.data.paymentMethods.map(\n pm => pm.type as PAYMENT_METHOD_ENUM,\n ),\n ),\n ]}\n defaultSelected={this.currentPaymentMethod}\n errorComponent={{\n showErrorComponent: this.currentPaymentError,\n alertTitle: PaymentErrorMapper.getErrorTitle(\n this.currentPaymentMethod,\n renewalState.data.price.country,\n this.errorMessage?.alertTitle,\n ),\n message: PaymentErrorMapper.getErrorMessage(\n this.errorMessage?.message,\n this.currentPaymentMethod,\n renewalState.data.price.country,\n ),\n }}\n cardError={{\n showCardInvalid: this.errorCardInvalid,\n type: null,\n }}\n country={renewalState.data.price.country}\n documentTypeError={errors?.documentType}\n documentNumberError={errors?.documentNumber}\n showDocument={\n this.cardMode === 'input' &&\n (isFieldRequired('documentType', this.currentRequiredFields) ||\n isFieldRequired('documentNumber', this.currentRequiredFields))\n }\n />\n {/* Alert for non-card payment methods */}\n {this.currentPaymentMethod !== PAYMENT_METHOD_ENUM.CARD &&\n renewalState.data.subscription?.paymentMethod ===\n PAYMENT_METHOD_ENUM.CARD && (\n <rebill-alert\n type=\"info\"\n message={I18nService.translate('renewal.paymentMethodAlert', {\n cardLastFour:\n renewalState.data?.subscription?.cardLastFour || '****',\n })}\n icon=\"calendar-edit\"\n variant=\"outlined\"\n colorIcon={COLORS_ENUM.PRIMARY}\n />\n )}\n {this.cardMode === 'input' &&\n isFieldRequired('bankId', this.currentRequiredFields) && (\n <div class=\"animated-component fade-in\">\n <rebill-bank-selector\n banks={\n getFieldValues(\n 'bank',\n this.allRequiredFields[this.currentPaymentMethod]?.original,\n ) || []\n }\n defaultSelectedBankId={formData.bankId || ''}\n error={errors?.bankId}\n />\n </div>\n )}\n </div>\n {this.cardMode === 'input' &&\n (isFieldRequired('billing-country', this.currentRequiredFields) ||\n isFieldRequired('billing-state', this.currentRequiredFields) ||\n isFieldRequired('billing-address', this.currentRequiredFields) ||\n isFieldRequired('billing-city', this.currentRequiredFields) ||\n isFieldRequired('billing-zip', this.currentRequiredFields)) && (\n <div class=\"animated-component slide-in\">\n <rebill-address\n countryOptions={this.countries.map(country => ({\n label: country.country,\n value: country.isoCountryCode,\n }))}\n billingView={this.hasPrefilledAddress() ? 'form' : 'search'}\n errors={{\n 'billing-country': errors['billing-country'],\n 'billing-state': errors['billing-state'],\n 'billing-address': errors['billing-address'],\n 'billing-city': errors['billing-city'],\n 'billing-zip': errors['billing-zip'],\n }}\n />\n </div>\n )}\n {this.cardMode === 'input' &&\n isFieldRequired('phoneNumber', this.currentRequiredFields) && (\n <div class=\"animated-component fade-in\">\n <user-information-phone error={errors?.phoneNumber} />\n </div>\n )}\n\n {/* Show APM checkout response after successful payment submission */}\n {this.checkoutResponse?.result &&\n (this.currentPaymentMethod === PAYMENT_METHOD_ENUM.CASH ||\n this.currentPaymentMethod === PAYMENT_METHOD_ENUM.BANK_TRANSFER) && (\n <apm-checkout\n paymentMethod={this.currentPaymentMethod}\n referenceId={\n this.currentPaymentMethod === PAYMENT_METHOD_ENUM.CASH\n ? this.checkoutResponse.result.data.referenceId\n : undefined\n }\n qrCodeData={\n this.currentPaymentMethod === PAYMENT_METHOD_ENUM.BANK_TRANSFER\n ? this.checkoutResponse.result.data.qrCode\n : undefined\n }\n providerName={renewalState.data.organization?.name || ''}\n expirationDate={(() => {\n const expirationDate = new Date();\n expirationDate.setDate(expirationDate.getDate() + 30);\n return expirationDate.toISOString();\n })()}\n country={renewalState.data.price.country}\n redirectUrl={this.checkoutResponse.result.data.url}\n />\n )}\n\n {isBreakpointBelow(this.breakpoint, BREAKPOINT_ENUM.DESKTOP) &&\n renderRenewalSummary({\n displayedComponents: 'summary',\n })}\n\n <div style={{ display: 'flex', flexDirection: 'column', gap: '16px' }}>\n {/* Payment Button */}\n <payment-button\n paymentMethod={this.currentPaymentMethod}\n isLoading={this.isSubmitting}\n isRenewal={true}\n trialPeriodDays={renewalState.data.subscription.trialPeriodDays}\n redirectUrl={!!this.checkoutResponse?.result?.data?.url}\n timeToRedirect={5000}\n country={renewalState.data.price.country}\n isDisabled={renewalState.fetchingInstallments}\n onSubmit={() => submit()}\n />\n\n {/* Disabled Button Below */}\n <rebill-alert\n type=\"secure\"\n variant=\"variant-secure\"\n icon=\"lock-outline\"\n message={I18nService.translate('otp.secureMessage')}\n />\n </div>\n </div>\n <rebill-footer\n style={{\n marginTop: isBreakpointBelow(this.breakpoint, BREAKPOINT_ENUM.DESKTOP)\n ? '24px'\n : 'auto',\n }}\n />\n </div>\n </div>\n\n {/* Desktop Summary */}\n {!isBreakpointBelow(this.breakpoint, BREAKPOINT_ENUM.DESKTOP) && (\n <div class=\"right-section\">\n <div class=\"checkout-summary-section\">\n {renderRenewalSummary({\n displayedComponents: ['header', 'details', 'summary'],\n })}\n </div>\n </div>\n )}\n </div>\n )}\n />\n )}\n </>\n );\n }\n}\n"],"names":["yup.string","renewalOnChange"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{p as e,b as t}from"./p-D8cwEAmw.js";export{s as setNonce}from"./p-D8cwEAmw.js";import{g as r}from"./p-DQuL1Twl.js";var a=()=>{const t=import.meta.url;const r={};if(t!==""){r.resourcesUrl=new URL(".",t).href}return e(r)};a().then((async e=>{await r();return t(JSON.parse('[["p-6667496c",[[256,"rebill-checkout",{"productId":[1,"product-id"],"planId":[1,"plan-id"],"publicKey":[1,"public-key"],"instantProduct":[1,"instant-product"],"instantPlan":[1,"instant-plan"],"display":[1],"customerInformation":[1,"customer-information"],"oneClickCheckout":[4,"one-click-checkout"],"css":[1],"language":[1],"checkoutLandingSession":[1,"checkout-landing-session"],"externalPayment":[1,"external-payment"],"rejectedPaymentCard":[32],"rejectedPaymentAPM":[32],"countries":[32],"currentPaymentMethod":[32],"checkoutResponse":[32],"isSubmitting":[32],"isCardSubmitting":[32],"isCardSuccess":[32],"isAPMSubmitting":[32],"isAPMSuccess":[32],"storedCheckoutResults":[32],"alertErrorKeys":[32],"currentApmPaymentMethod":[32],"breakpoint":[32],"showRefreshModal":[32],"cardError":[32],"initialData":[32],"allRequiredFields":[32],"currentRequiredFields":[32],"customerExists":[32],"showOtp":[32],"otpVerified":[32],"responseCheckoutCard":[32],"cardMode":[32],"submit":[64]},[[0,"paymentMethodSelected","handlePaymentMethodSelected"],[0,"input","handleInputChange"],[0,"onRebillAccountClick","handleRebillAccountClick"],[0,"returnForm","handleReturnForm"],[0,"signOut","handleSignOut"],[0,"codeVerified","handleCodeVerified"]],{"language":["handleLanguageChange"]}]]],["p-b519d8a2",[[256,"rebill-renewal",{"renewalData":[1,"renewal-data"],"renewalToken":[1,"renewal-token"],"currentPaymentMethod":[32],"isSubmitting":[32],"isCardSubmitting":[32],"isCardSuccess":[32],"errorMessage":[32],"breakpoint":[32],"errorPaymentCard":[32],"errorPaymentAPM":[32],"initialData":[32],"checkoutResponse":[32],"currentApmPaymentMethod":[32],"countries":[32],"allRequiredFields":[32],"currentRequiredFields":[32],"errorCardInvalid":[32],"cardMode":[32]},[[0,"paymentMethodSelected","handlePaymentMethodSelected"],[0,"bankSelected","handleBankSelected"],[0,"cardSelected","handleCardSelected"]]]]],["p-63020e78",[[256,"root-component",{"isLoading":[32],"currentLang":[32],"formData":[32]}]]],["p-e5b0f2b9",[[256,"rebill-card-carousel",{"interval":[2],"size":[1],"color":[1],"showAllCards":[4,"show-all-cards"],"currentIndex":[32]}]]],["p-92de0c03",[[260,"rebill-flex-container",{"direction":[1],"wrap":[1],"gap":[1],"alignItems":[1,"align-items"],"justifyContent":[1,"justify-content"]}]]],["p-7ea96b11",[[260,"rebill-grid-container",{"columns":[2],"gap":[1],"alignItems":[1,"align-items"],"justifyContent":[1,"justify-content"]}]]],["p-5df71605",[[256,"renewal-success-page",{"typePaymentMethod":[1,"type-payment-method"],"country":[1],"bank":[1],"paymentMethodName":[1,"payment-method-name"],"cardLastFour":[1,"card-last-four"],"paymentDate":[1,"payment-date"],"referenceNumber":[1,"reference-number"],"trialPeriodDays":[2,"trial-period-days"],"debitDay":[2,"debit-day"],"planAmount":[2,"plan-amount"],"timeToRedirect":[2,"time-to-redirect"],"currentLocale":[32],"breakpoint":[32],"loaderProgress":[32],"isLoadingLottie":[32],"showRedirectMessage":[32]}],[256,"renewal-summary",{"displayedComponents":[16],"totalAmount":[8,"total-amount"],"subscriptionTitle":[1,"subscription-title"],"subscriptionAmount":[8,"subscription-amount"],"nextChargeDate":[1,"next-charge-date"],"frequency":[16],"currency":[1],"forceUpdate":[32]}]]],["p-edb69e28",[[256,"input-otp",{"error":[1],"otp":[1],"clearable":[4],"placeholder":[1],"otpValue":[32]}]]],["p-51571e15",[[256,"rebill-card",{"cardTitle":[1,"card-title"],"cardLabels":[16]}]]],["p-924e7ec2",[[260,"rebill-container",{"maxWidth":[1,"max-width"],"padding":[1],"fluid":[4]}],[256,"rebill-input-checkbox",{"label":[1],"checked":[1540],"error":[1],"id":[1],"disabled":[4]},[[4,"change","handleFormChange"]]]]],["p-43675422",[[256,"rebill-divider"]]],["p-821e1fed",[[260,"rebill-form",{"validationSchema":[8,"validation-schema"],"initialData":[16],"renderForm":[16],"formData":[32],"errors":[32],"submitForm":[64],"resetValidation":[64],"clearError":[64]},[[0,"input","handleInputChange"],[0,"blur","handleBlur"]],{"initialData":["handleInitialDataChange"],"validationSchema":["handleValidationSchemaChange"]}]]],["p-36a897c4",[[256,"rebill-vertical-divider",{"height":[1],"color":[1],"thickness":[1],"dashed":[4],"connectorActive":[4,"connector-active"],"withDot":[4,"with-dot"]}]]],["p-b59254ca",[[260,"rebill-typography",{"variant":[1],"color":[1],"align":[1],"noWrap":[4,"no-wrap"],"gutterBottom":[4,"gutter-bottom"],"paragraph":[4]}],[256,"rebill-icon",{"name":[1],"size":[1],"color":[1],"svgContent":[32]}]]],["p-eb6a2c0d",[[256,"discount-coupon",{"hideLabel":[4,"hide-label"],"couponCode":[32],"actionStatus":[32],"isLoading":[32],"isError":[32],"currentLocale":[32]}],[256,"rebill-timeline-debit-day",{"debitDay":[2,"debit-day"],"totalAmount":[2,"total-amount"],"planAmount":[2,"plan-amount"],"currency":[1],"debitStrategy":[1,"debit-strategy"],"language":[1],"discountApplied":[4,"discount-applied"],"discountType":[1,"discount-type"],"discountedPercentage":[2,"discounted-percentage"],"discountDuration":[2,"discount-duration"],"discountAmount":[2,"discount-amount"],"currentLanguage":[32]}],[256,"rebill-timeline-free-trial",{"trialPeriodEndsAt":[1,"trial-period-ends-at"],"trialPeriodEndsReminderAt":[1,"trial-period-ends-reminder-at"],"trialPeriodDays":[2,"trial-period-days"],"subtotal":[2],"currency":[1],"language":[1],"discountApplied":[4,"discount-applied"],"discountType":[1,"discount-type"],"discountedPercentage":[2,"discounted-percentage"],"discountDuration":[2,"discount-duration"],"discountAmount":[2,"discount-amount"],"currentLanguage":[32]}]]],["p-a0d6b0c0",[[260,"collapsible-card",{"header":[1],"open":[4],"variant":[1],"isOpen":[32]}]]],["p-bc6f455d",[[256,"rebill-alert",{"type":[1],"message":[1],"alertTitle":[1,"alert-title"],"icon":[1],"variant":[1],"size":[1],"colorIcon":[1,"color-icon"]}]]],["p-e8eadef6",[[256,"rebill-input-text",{"label":[1],"placeholder":[1],"value":[1537],"error":[1],"id":[1],"disabled":[4],"leftIcon":[1,"left-icon"],"rightIcon":[1,"right-icon"],"clearable":[4],"variant":[1],"uppercase":[4],"getInputElement":[64]},[[4,"change","handleFormChange"]]]]],["p-1c3e7171",[[256,"rebill-input-select",{"label":[1],"options":[16],"value":[1537],"error":[1],"id":[1],"disabled":[4],"placeholder":[1],"variant":[1],"arrowIcon":[1,"arrow-icon"],"dropPosition":[1,"drop-position"],"fontSize":[1,"font-size"],"backgroundColor":[1,"background-color"],"searchable":[4],"searchPlaceholder":[1,"search-placeholder"],"loading":[4],"isOpen":[32],"componentId":[32],"highlightedIndex":[32],"searchTerm":[32],"filteredOptions":[32],"languageUpdateTrigger":[32]},[[4,"change","handleFormChange"],[4,"closeAllSelects","handleCloseAllSelects"],[4,"click","handleDocumentClick"],[0,"keydown","handleKeyDown"]]]]],["p-567ae839",[[260,"rebill-button",{"type":[1],"disabled":[4],"id":[1],"loading":[4],"showSpinnerWithText":[4,"show-spinner-with-text"],"nonClickable":[4,"non-clickable"],"variant":[1],"theme":[1],"size":[1],"icon":[1],"iconColor":[1,"icon-color"]}]]],["p-26f12a67",[[256,"rebill-card-icon",{"cardBrand":[1,"card-brand"],"width":[2],"height":[2]}],[260,"rebill-checkout-single-column"],[256,"rebill-footer",{"breakpoint":[32]}],[256,"organization-logo",{"organization":[16]}]]],["p-c8a5a137",[[256,"rebill-summary",{"totalAmount":[8,"total-amount"],"itemTitle":[1,"item-title"],"itemDescription":[1,"item-description"],"itemAmount":[8,"item-amount"],"planFrequency":[1,"plan-frequency"],"planFrequencyCount":[2,"plan-frequency-count"],"subtotal":[8],"discount":[8],"currency":[1],"displayedComponents":[16],"allowCoupon":[4,"allow-coupon"],"currentBreakpoint":[1,"current-breakpoint"],"discountType":[1,"discount-type"],"discountedPercentage":[2,"discounted-percentage"],"discountDuration":[2,"discount-duration"],"discountAmount":[2,"discount-amount"],"discountApplied":[32]},[[0,"discountApplied","handleDiscountApplied"]]],[256,"success-page",{"typePaymentMethod":[1,"type-payment-method"],"country":[1],"bank":[1],"paymentMethodName":[1,"payment-method-name"],"cardLastFour":[1,"card-last-four"],"paymentDate":[1,"payment-date"],"referenceNumber":[1,"reference-number"],"trialPeriodDays":[2,"trial-period-days"],"debitDay":[2,"debit-day"],"planAmount":[2,"plan-amount"],"timeToRedirect":[2,"time-to-redirect"],"currentLocale":[32],"breakpoint":[32],"loaderProgress":[32],"isLoadingLottie":[32],"showRedirectMessage":[32]}],[256,"otp-component",{"timeLeft":[32],"isTimerRunning":[32],"codeResent":[32],"isVerifying":[32],"otpValue":[32],"error":[32]}],[256,"user-information",{"userInformation":[16],"errors":[16],"customerExists":[4,"customer-exists"],"disabled":[4]},[[0,"input","handleInputChange"],[0,"blur","handleBlur"]]],[256,"rebill-mode-sandbox",{"isPanelVisible":[32],"isPanelClosing":[32],"isCardsPanelVisible":[32],"isCardsPanelClosing":[32],"currentLanguage":[32]}],[256,"rebill-mode-sandbox-mobile",{"isPanelVisible":[32],"currentLanguage":[32]}],[256,"rebill-modal-overlay",{"visible":[32],"languageUpdateTrigger":[32]}]]],["p-9084f3ef",[[256,"rebill-installments",{"error":[1],"currentValue":[32],"isDisabled":[32],"value":[32],"placeholder":[32]}],[256,"card-identification",{"documentTypeError":[1,"document-type-error"],"documentNumberError":[1,"document-number-error"],"disabled":[4],"documentTypes":[32],"country":[32],"currentLanguage":[32]}],[256,"card-iframe",{"customCSS":[1,"custom-c-s-s"],"iframeLoaded":[32],"currentLang":[32],"initialLang":[32],"iframeHeight":[32]}],[256,"rebill-input-combo",{"label":[1],"options":[16],"selectValue":[1537,"select-value"],"inputValue":[1537,"input-value"],"inputPlaceholder":[1,"input-placeholder"],"selectPlaceholder":[1,"select-placeholder"],"error":[1],"selectId":[1,"select-id"],"inputId":[1,"input-id"],"disabled":[4],"selectWidth":[1,"select-width"],"isOpen":[32],"highlightedIndex":[32],"componentId":[32]},[[4,"change","handleFormChange"],[4,"closeAllSelects","handleCloseAllSelects"],[4,"click","handleDocumentClick"]]],[256,"card-skeleton"]]],["p-7e94aec8",[[256,"payment-method-selector",{"enabledPaymentMethods":[16],"defaultSelected":[1,"default-selected"],"showErrorComponent":[4,"show-error-component"],"cardError":[16],"country":[1],"installmentsError":[1,"installments-error"],"documentTypeError":[1,"document-type-error"],"showDocument":[4,"show-document"],"documentNumberError":[1,"document-number-error"],"customCSS":[1,"custom-c-s-s"],"errorComponent":[16],"disabled":[4],"icon":[32],"selectedPaymentMethod":[32],"saveCard":[32]},[[0,"selectableCardClick","handleSelectableCardClick"]]],[256,"apm-checkout",{"paymentMethod":[1,"payment-method"],"referenceId":[1,"reference-id"],"qrCodeData":[1,"qr-code-data"],"code":[1],"providerName":[1,"provider-name"],"expirationDate":[1,"expiration-date"],"country":[1],"redirectUrl":[1,"redirect-url"],"timeToRedirect":[2,"time-to-redirect"],"checkoutRequestId":[1,"checkout-request-id"],"bearerToken":[1,"bearer-token"],"bankTransferData":[8,"bank-transfer-data"],"showRedirectMessage":[32],"isPolling":[32],"minutesLeft":[32],"qrStartTime":[32],"downloadData":[32]}],[256,"rebill-processing-payment",{"currentLocale":[32],"breakpoint":[32],"loaderProgress":[32],"isLoadingLottie":[32]}],[256,"rebill-address",{"billingView":[1537,"billing-view"],"disabled":[4],"countryOptions":[16],"errors":[16],"currentBillingStateOptions":[32],"isLoadingAddress":[32]}],[256,"user-information-static",{"userInfo":[16],"variant":[1]}],[256,"payment-button",{"isDisabled":[4,"is-disabled"],"isLoading":[4,"is-loading"],"paymentMethod":[1,"payment-method"],"isRenewal":[4,"is-renewal"],"trialPeriodDays":[2,"trial-period-days"],"redirectUrl":[4,"redirect-url"],"timeToRedirect":[2,"time-to-redirect"],"country":[1],"currentLanguage":[32],"countdownSeconds":[32],"paymentMethodDisplayName":[32]},null,{"redirectUrl":["onRedirectPropsChange"],"timeToRedirect":["onRedirectPropsChange"]}],[256,"rebill-bank-selector",{"banks":[16],"defaultSelectedBankId":[1,"default-selected-bank-id"],"error":[1],"disabled":[4],"selectedBankId":[32],"languageUpdateTrigger":[32]}],[256,"user-information-phone",{"error":[1],"countryCode":[1,"country-code"],"disabled":[4],"languageUpdateTrigger":[32]}],[256,"rebill-checkout-form",{"validationSchema":[8,"validation-schema"],"initialData":[16],"renderForm":[16],"resetValidation":[64]},[[0,"change","handleFormChange"]]],[256,"card-fields-wrapper",{"installmentsError":[1,"installments-error"],"documentTypeError":[1,"document-type-error"],"documentNumberError":[1,"document-number-error"],"showDocument":[4,"show-document"],"customCSS":[1,"custom-c-s-s"]}],[256,"bank-transfer",{"bankTransferData":[8,"bank-transfer-data"]}],[256,"qr-code",{"qrCodeData":[1,"qr-code-data"],"providerName":[1,"provider-name"],"expirationDate":[1,"expiration-date"],"paymentMethod":[1,"payment-method"],"code":[1],"qrCodeSvg":[32],"isImage":[32],"timeLeft":[32],"formattedTime":[32],"hasCopied":[32]}],[256,"rebill-address-form",{"addressType":[1,"address-type"],"countryOptions":[16],"stateOptions":[16],"errors":[16],"disabled":[4]}],[256,"rebill-address-search",{"addressType":[1,"address-type"],"placeholder":[1],"error":[1],"disabled":[4],"isInitialized":[32],"currentLocale":[32]}],[256,"apm-download",{"data":[16]}],[256,"single-payment-method",{"paymentMethod":[1,"payment-method"],"currencyCountry":[1,"currency-country"],"paymentMethodDetails":[16],"icons":[16]}],[256,"rebill-input-phone",{"placeholder":[1],"value":[1537],"error":[1],"phoneNumberId":[1,"phone-number-id"],"countryCodeId":[1,"country-code-id"],"validationErrorId":[1,"validation-error-id"],"disabled":[4],"initialCountry":[1,"initial-country"],"required":[4],"searchable":[4],"searchPlaceholder":[1,"search-placeholder"],"selectedCountry":[32],"isDropdownOpen":[32],"validationError":[32],"searchTerm":[32],"filteredCountries":[32],"componentId":[32],"languageUpdateTrigger":[32]},[[4,"change","handleFormChange"],[4,"closeAllSelects","handleCloseAllSelects"],[4,"click","handleDocumentClick"]]],[256,"reference-code",{"referenceId":[1,"reference-id"],"providerName":[1,"provider-name"],"expirationDate":[1,"expiration-date"],"instructions":[16],"showInstructions":[32]}],[260,"selectable-card",{"selected":[4],"label":[1],"cardKey":[1,"card-key"],"disabled":[4]}]]]]'),e)}));
1
+ import{p as e,b as t}from"./p-D8cwEAmw.js";export{s as setNonce}from"./p-D8cwEAmw.js";import{g as r}from"./p-DQuL1Twl.js";var a=()=>{const t=import.meta.url;const r={};if(t!==""){r.resourcesUrl=new URL(".",t).href}return e(r)};a().then((async e=>{await r();return t(JSON.parse('[["p-6667496c",[[256,"rebill-checkout",{"productId":[1,"product-id"],"planId":[1,"plan-id"],"publicKey":[1,"public-key"],"instantProduct":[1,"instant-product"],"instantPlan":[1,"instant-plan"],"display":[1],"customerInformation":[1,"customer-information"],"oneClickCheckout":[4,"one-click-checkout"],"css":[1],"language":[1],"checkoutLandingSession":[1,"checkout-landing-session"],"externalPayment":[1,"external-payment"],"rejectedPaymentCard":[32],"rejectedPaymentAPM":[32],"countries":[32],"currentPaymentMethod":[32],"checkoutResponse":[32],"isSubmitting":[32],"isCardSubmitting":[32],"isCardSuccess":[32],"isAPMSubmitting":[32],"isAPMSuccess":[32],"storedCheckoutResults":[32],"alertErrorKeys":[32],"currentApmPaymentMethod":[32],"breakpoint":[32],"showRefreshModal":[32],"cardError":[32],"initialData":[32],"allRequiredFields":[32],"currentRequiredFields":[32],"customerExists":[32],"showOtp":[32],"otpVerified":[32],"responseCheckoutCard":[32],"cardMode":[32],"submit":[64]},[[0,"paymentMethodSelected","handlePaymentMethodSelected"],[0,"input","handleInputChange"],[0,"onRebillAccountClick","handleRebillAccountClick"],[0,"returnForm","handleReturnForm"],[0,"signOut","handleSignOut"],[0,"codeVerified","handleCodeVerified"]],{"language":["handleLanguageChange"]}]]],["p-6334b899",[[256,"rebill-renewal",{"renewalData":[1,"renewal-data"],"renewalToken":[1,"renewal-token"],"currentPaymentMethod":[32],"isSubmitting":[32],"isCardSubmitting":[32],"isCardSuccess":[32],"errorMessage":[32],"breakpoint":[32],"errorPaymentCard":[32],"errorPaymentAPM":[32],"initialData":[32],"checkoutResponse":[32],"currentApmPaymentMethod":[32],"countries":[32],"allRequiredFields":[32],"currentRequiredFields":[32],"errorCardInvalid":[32],"cardMode":[32]},[[0,"paymentMethodSelected","handlePaymentMethodSelected"],[0,"bankSelected","handleBankSelected"],[0,"cardSelected","handleCardSelected"]]]]],["p-63020e78",[[256,"root-component",{"isLoading":[32],"currentLang":[32],"formData":[32]}]]],["p-e5b0f2b9",[[256,"rebill-card-carousel",{"interval":[2],"size":[1],"color":[1],"showAllCards":[4,"show-all-cards"],"currentIndex":[32]}]]],["p-92de0c03",[[260,"rebill-flex-container",{"direction":[1],"wrap":[1],"gap":[1],"alignItems":[1,"align-items"],"justifyContent":[1,"justify-content"]}]]],["p-7ea96b11",[[260,"rebill-grid-container",{"columns":[2],"gap":[1],"alignItems":[1,"align-items"],"justifyContent":[1,"justify-content"]}]]],["p-5df71605",[[256,"renewal-success-page",{"typePaymentMethod":[1,"type-payment-method"],"country":[1],"bank":[1],"paymentMethodName":[1,"payment-method-name"],"cardLastFour":[1,"card-last-four"],"paymentDate":[1,"payment-date"],"referenceNumber":[1,"reference-number"],"trialPeriodDays":[2,"trial-period-days"],"debitDay":[2,"debit-day"],"planAmount":[2,"plan-amount"],"timeToRedirect":[2,"time-to-redirect"],"currentLocale":[32],"breakpoint":[32],"loaderProgress":[32],"isLoadingLottie":[32],"showRedirectMessage":[32]}],[256,"renewal-summary",{"displayedComponents":[16],"totalAmount":[8,"total-amount"],"subscriptionTitle":[1,"subscription-title"],"subscriptionAmount":[8,"subscription-amount"],"nextChargeDate":[1,"next-charge-date"],"frequency":[16],"currency":[1],"forceUpdate":[32]}]]],["p-edb69e28",[[256,"input-otp",{"error":[1],"otp":[1],"clearable":[4],"placeholder":[1],"otpValue":[32]}]]],["p-51571e15",[[256,"rebill-card",{"cardTitle":[1,"card-title"],"cardLabels":[16]}]]],["p-924e7ec2",[[260,"rebill-container",{"maxWidth":[1,"max-width"],"padding":[1],"fluid":[4]}],[256,"rebill-input-checkbox",{"label":[1],"checked":[1540],"error":[1],"id":[1],"disabled":[4]},[[4,"change","handleFormChange"]]]]],["p-43675422",[[256,"rebill-divider"]]],["p-821e1fed",[[260,"rebill-form",{"validationSchema":[8,"validation-schema"],"initialData":[16],"renderForm":[16],"formData":[32],"errors":[32],"submitForm":[64],"resetValidation":[64],"clearError":[64]},[[0,"input","handleInputChange"],[0,"blur","handleBlur"]],{"initialData":["handleInitialDataChange"],"validationSchema":["handleValidationSchemaChange"]}]]],["p-36a897c4",[[256,"rebill-vertical-divider",{"height":[1],"color":[1],"thickness":[1],"dashed":[4],"connectorActive":[4,"connector-active"],"withDot":[4,"with-dot"]}]]],["p-b59254ca",[[260,"rebill-typography",{"variant":[1],"color":[1],"align":[1],"noWrap":[4,"no-wrap"],"gutterBottom":[4,"gutter-bottom"],"paragraph":[4]}],[256,"rebill-icon",{"name":[1],"size":[1],"color":[1],"svgContent":[32]}]]],["p-eb6a2c0d",[[256,"discount-coupon",{"hideLabel":[4,"hide-label"],"couponCode":[32],"actionStatus":[32],"isLoading":[32],"isError":[32],"currentLocale":[32]}],[256,"rebill-timeline-debit-day",{"debitDay":[2,"debit-day"],"totalAmount":[2,"total-amount"],"planAmount":[2,"plan-amount"],"currency":[1],"debitStrategy":[1,"debit-strategy"],"language":[1],"discountApplied":[4,"discount-applied"],"discountType":[1,"discount-type"],"discountedPercentage":[2,"discounted-percentage"],"discountDuration":[2,"discount-duration"],"discountAmount":[2,"discount-amount"],"currentLanguage":[32]}],[256,"rebill-timeline-free-trial",{"trialPeriodEndsAt":[1,"trial-period-ends-at"],"trialPeriodEndsReminderAt":[1,"trial-period-ends-reminder-at"],"trialPeriodDays":[2,"trial-period-days"],"subtotal":[2],"currency":[1],"language":[1],"discountApplied":[4,"discount-applied"],"discountType":[1,"discount-type"],"discountedPercentage":[2,"discounted-percentage"],"discountDuration":[2,"discount-duration"],"discountAmount":[2,"discount-amount"],"currentLanguage":[32]}]]],["p-a0d6b0c0",[[260,"collapsible-card",{"header":[1],"open":[4],"variant":[1],"isOpen":[32]}]]],["p-bc6f455d",[[256,"rebill-alert",{"type":[1],"message":[1],"alertTitle":[1,"alert-title"],"icon":[1],"variant":[1],"size":[1],"colorIcon":[1,"color-icon"]}]]],["p-e8eadef6",[[256,"rebill-input-text",{"label":[1],"placeholder":[1],"value":[1537],"error":[1],"id":[1],"disabled":[4],"leftIcon":[1,"left-icon"],"rightIcon":[1,"right-icon"],"clearable":[4],"variant":[1],"uppercase":[4],"getInputElement":[64]},[[4,"change","handleFormChange"]]]]],["p-1c3e7171",[[256,"rebill-input-select",{"label":[1],"options":[16],"value":[1537],"error":[1],"id":[1],"disabled":[4],"placeholder":[1],"variant":[1],"arrowIcon":[1,"arrow-icon"],"dropPosition":[1,"drop-position"],"fontSize":[1,"font-size"],"backgroundColor":[1,"background-color"],"searchable":[4],"searchPlaceholder":[1,"search-placeholder"],"loading":[4],"isOpen":[32],"componentId":[32],"highlightedIndex":[32],"searchTerm":[32],"filteredOptions":[32],"languageUpdateTrigger":[32]},[[4,"change","handleFormChange"],[4,"closeAllSelects","handleCloseAllSelects"],[4,"click","handleDocumentClick"],[0,"keydown","handleKeyDown"]]]]],["p-567ae839",[[260,"rebill-button",{"type":[1],"disabled":[4],"id":[1],"loading":[4],"showSpinnerWithText":[4,"show-spinner-with-text"],"nonClickable":[4,"non-clickable"],"variant":[1],"theme":[1],"size":[1],"icon":[1],"iconColor":[1,"icon-color"]}]]],["p-26f12a67",[[256,"rebill-card-icon",{"cardBrand":[1,"card-brand"],"width":[2],"height":[2]}],[260,"rebill-checkout-single-column"],[256,"rebill-footer",{"breakpoint":[32]}],[256,"organization-logo",{"organization":[16]}]]],["p-c8a5a137",[[256,"rebill-summary",{"totalAmount":[8,"total-amount"],"itemTitle":[1,"item-title"],"itemDescription":[1,"item-description"],"itemAmount":[8,"item-amount"],"planFrequency":[1,"plan-frequency"],"planFrequencyCount":[2,"plan-frequency-count"],"subtotal":[8],"discount":[8],"currency":[1],"displayedComponents":[16],"allowCoupon":[4,"allow-coupon"],"currentBreakpoint":[1,"current-breakpoint"],"discountType":[1,"discount-type"],"discountedPercentage":[2,"discounted-percentage"],"discountDuration":[2,"discount-duration"],"discountAmount":[2,"discount-amount"],"discountApplied":[32]},[[0,"discountApplied","handleDiscountApplied"]]],[256,"success-page",{"typePaymentMethod":[1,"type-payment-method"],"country":[1],"bank":[1],"paymentMethodName":[1,"payment-method-name"],"cardLastFour":[1,"card-last-four"],"paymentDate":[1,"payment-date"],"referenceNumber":[1,"reference-number"],"trialPeriodDays":[2,"trial-period-days"],"debitDay":[2,"debit-day"],"planAmount":[2,"plan-amount"],"timeToRedirect":[2,"time-to-redirect"],"currentLocale":[32],"breakpoint":[32],"loaderProgress":[32],"isLoadingLottie":[32],"showRedirectMessage":[32]}],[256,"otp-component",{"timeLeft":[32],"isTimerRunning":[32],"codeResent":[32],"isVerifying":[32],"otpValue":[32],"error":[32]}],[256,"user-information",{"userInformation":[16],"errors":[16],"customerExists":[4,"customer-exists"],"disabled":[4]},[[0,"input","handleInputChange"],[0,"blur","handleBlur"]]],[256,"rebill-mode-sandbox",{"isPanelVisible":[32],"isPanelClosing":[32],"isCardsPanelVisible":[32],"isCardsPanelClosing":[32],"currentLanguage":[32]}],[256,"rebill-mode-sandbox-mobile",{"isPanelVisible":[32],"currentLanguage":[32]}],[256,"rebill-modal-overlay",{"visible":[32],"languageUpdateTrigger":[32]}]]],["p-9084f3ef",[[256,"rebill-installments",{"error":[1],"currentValue":[32],"isDisabled":[32],"value":[32],"placeholder":[32]}],[256,"card-identification",{"documentTypeError":[1,"document-type-error"],"documentNumberError":[1,"document-number-error"],"disabled":[4],"documentTypes":[32],"country":[32],"currentLanguage":[32]}],[256,"card-iframe",{"customCSS":[1,"custom-c-s-s"],"iframeLoaded":[32],"currentLang":[32],"initialLang":[32],"iframeHeight":[32]}],[256,"rebill-input-combo",{"label":[1],"options":[16],"selectValue":[1537,"select-value"],"inputValue":[1537,"input-value"],"inputPlaceholder":[1,"input-placeholder"],"selectPlaceholder":[1,"select-placeholder"],"error":[1],"selectId":[1,"select-id"],"inputId":[1,"input-id"],"disabled":[4],"selectWidth":[1,"select-width"],"isOpen":[32],"highlightedIndex":[32],"componentId":[32]},[[4,"change","handleFormChange"],[4,"closeAllSelects","handleCloseAllSelects"],[4,"click","handleDocumentClick"]]],[256,"card-skeleton"]]],["p-7e94aec8",[[256,"payment-method-selector",{"enabledPaymentMethods":[16],"defaultSelected":[1,"default-selected"],"showErrorComponent":[4,"show-error-component"],"cardError":[16],"country":[1],"installmentsError":[1,"installments-error"],"documentTypeError":[1,"document-type-error"],"showDocument":[4,"show-document"],"documentNumberError":[1,"document-number-error"],"customCSS":[1,"custom-c-s-s"],"errorComponent":[16],"disabled":[4],"icon":[32],"selectedPaymentMethod":[32],"saveCard":[32]},[[0,"selectableCardClick","handleSelectableCardClick"]]],[256,"apm-checkout",{"paymentMethod":[1,"payment-method"],"referenceId":[1,"reference-id"],"qrCodeData":[1,"qr-code-data"],"code":[1],"providerName":[1,"provider-name"],"expirationDate":[1,"expiration-date"],"country":[1],"redirectUrl":[1,"redirect-url"],"timeToRedirect":[2,"time-to-redirect"],"checkoutRequestId":[1,"checkout-request-id"],"bearerToken":[1,"bearer-token"],"bankTransferData":[8,"bank-transfer-data"],"showRedirectMessage":[32],"isPolling":[32],"minutesLeft":[32],"qrStartTime":[32],"downloadData":[32]}],[256,"rebill-processing-payment",{"currentLocale":[32],"breakpoint":[32],"loaderProgress":[32],"isLoadingLottie":[32]}],[256,"rebill-address",{"billingView":[1537,"billing-view"],"disabled":[4],"countryOptions":[16],"errors":[16],"currentBillingStateOptions":[32],"isLoadingAddress":[32]}],[256,"user-information-static",{"userInfo":[16],"variant":[1]}],[256,"payment-button",{"isDisabled":[4,"is-disabled"],"isLoading":[4,"is-loading"],"paymentMethod":[1,"payment-method"],"isRenewal":[4,"is-renewal"],"trialPeriodDays":[2,"trial-period-days"],"redirectUrl":[4,"redirect-url"],"timeToRedirect":[2,"time-to-redirect"],"country":[1],"currentLanguage":[32],"countdownSeconds":[32],"paymentMethodDisplayName":[32]},null,{"redirectUrl":["onRedirectPropsChange"],"timeToRedirect":["onRedirectPropsChange"]}],[256,"rebill-bank-selector",{"banks":[16],"defaultSelectedBankId":[1,"default-selected-bank-id"],"error":[1],"disabled":[4],"selectedBankId":[32],"languageUpdateTrigger":[32]}],[256,"user-information-phone",{"error":[1],"countryCode":[1,"country-code"],"disabled":[4],"languageUpdateTrigger":[32]}],[256,"rebill-checkout-form",{"validationSchema":[8,"validation-schema"],"initialData":[16],"renderForm":[16],"resetValidation":[64]},[[0,"change","handleFormChange"]]],[256,"card-fields-wrapper",{"installmentsError":[1,"installments-error"],"documentTypeError":[1,"document-type-error"],"documentNumberError":[1,"document-number-error"],"showDocument":[4,"show-document"],"customCSS":[1,"custom-c-s-s"]}],[256,"bank-transfer",{"bankTransferData":[8,"bank-transfer-data"]}],[256,"qr-code",{"qrCodeData":[1,"qr-code-data"],"providerName":[1,"provider-name"],"expirationDate":[1,"expiration-date"],"paymentMethod":[1,"payment-method"],"code":[1],"qrCodeSvg":[32],"isImage":[32],"timeLeft":[32],"formattedTime":[32],"hasCopied":[32]}],[256,"rebill-address-form",{"addressType":[1,"address-type"],"countryOptions":[16],"stateOptions":[16],"errors":[16],"disabled":[4]}],[256,"rebill-address-search",{"addressType":[1,"address-type"],"placeholder":[1],"error":[1],"disabled":[4],"isInitialized":[32],"currentLocale":[32]}],[256,"apm-download",{"data":[16]}],[256,"single-payment-method",{"paymentMethod":[1,"payment-method"],"currencyCountry":[1,"currency-country"],"paymentMethodDetails":[16],"icons":[16]}],[256,"rebill-input-phone",{"placeholder":[1],"value":[1537],"error":[1],"phoneNumberId":[1,"phone-number-id"],"countryCodeId":[1,"country-code-id"],"validationErrorId":[1,"validation-error-id"],"disabled":[4],"initialCountry":[1,"initial-country"],"required":[4],"searchable":[4],"searchPlaceholder":[1,"search-placeholder"],"selectedCountry":[32],"isDropdownOpen":[32],"validationError":[32],"searchTerm":[32],"filteredCountries":[32],"componentId":[32],"languageUpdateTrigger":[32]},[[4,"change","handleFormChange"],[4,"closeAllSelects","handleCloseAllSelects"],[4,"click","handleDocumentClick"]]],[256,"reference-code",{"referenceId":[1,"reference-id"],"providerName":[1,"provider-name"],"expirationDate":[1,"expiration-date"],"instructions":[16],"showInstructions":[32]}],[260,"selectable-card",{"selected":[4],"label":[1],"cardKey":[1,"card-key"],"disabled":[4]}]]]]'),e)}));
2
2
  //# sourceMappingURL=rebill-web-components-sdk.esm.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rebill-web-components-sdk",
3
- "version": "1.8.32-beta.0",
3
+ "version": "1.8.33",
4
4
  "description": "Stencil Component Starter",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.js",
@@ -1,2 +0,0 @@
1
- import{r as e,c as t,h as i}from"./p-D8cwEAmw.js";import{c as r}from"./p-MMCcKmy_.js";import{a as o}from"./p-CTo1s54i.js";import{m as n,i as a,g as s,C as l,a as c,b as d}from"./p-DDA1jPBc.js";import{P as h,I as m}from"./p-DkbFAMha.js";import{P as u,G as p,a as b}from"./p-CrUPzbxi.js";import{r as f,R as y,o as g}from"./p-CdYpsLqg.js";import{B as x,g as w,i as k}from"./p-Do_vNuMa.js";import{C as v}from"./p-DA598vBj.js";import"./p-E-ZsRS8r.js";import"./p-D339jHg4.js";const C=async(e,t,i)=>{const r=await o.checkout.getRequiredFields({currency:e,method:t},i);return{fields:n(r.data),original:r.data}};const q=async()=>{const e=[...new Set(f.data.paymentMethods.map((e=>e.type)))];const t=e.map((async e=>{try{const t=u.mapToAPMPaymentMethod(e,f.data.price.country);const i=await C(f.data.price.currency,t,f.data.organization.id);return{paymentMethod:e,...i}}catch(t){console.error(`Error getting required fields for ${e}:`,t);return{paymentMethod:e,fields:[],original:[]}}}));const i=await Promise.all(t);const r={};i.forEach((e=>{r[e.paymentMethod]={fields:e.fields,original:e.original}}));return r};const D=(e,t)=>{const i=t[e];if(i){return i}else{return{fields:[],original:[]}}};const M=":root{--rebill-color-primary:#3b82f6;--rebill-color-primary-light:rgba(59, 130, 246, 0.1);--rebill-color-primary-hover:#2563eb;--rebill-color-primary-dark:#001131;--rebill-color-primary-dark-text:#000000;--rebill-color-primary-dark-hover:#001c4a;--rebill-color-primary-dark-light:rgba(0, 17, 49, 0.1);--rebill-color-error:#ef4444;--rebill-color-error-background:#fef2f2;--rebill-color-error-light:rgba(239, 68, 68, 0.1);--rebill-color-error-dark:#6f101b;--rebill-color-background:#ffffff;--rebill-color-background-left:#fafafa;--rebill-color-background-right:#f4f5f6;--rebill-color-background-secondary:#f7f8fa;--rebill-color-border:#ebedef;--rebill-color-timeline-connector:#c4c8cf;--rebill-color-neutrals-700:#58616e;--rebill-color-neutrals-500:#9ca3af;--rebill-color-border-primary:#e4e4e7;--rebill-color-text-primary:#3b4049;--rebill-color-text-secondary:#6b7280;--rebill-color-grey-700:#7d7d7d;--rebill-color-text-secondary-light:#a1a1aa;--rebill-color-text-on-primary:#ffffff;--rebill-color-disabled:#9ca3af;--rebill-color-shadow:rgba(0, 0, 0, 0.1);--rebill-color-green:#10b981;--rebill-color-green-text:#257c67;--rebill-color-green-light:rgba(183, 233, 221, 0.15);--rebill-color-green-light-2:rgba(183, 233, 221, 1);--rebill-color-info-background:#d5e4ff;--rebill-color-info-border:#0156f6;--rebill-color-info-text:#172b85;--rebill-color-background-secondary-light:#f7f8fa;--rebill-breakpoint-mobile:768px;--rebill-breakpoint-tablet:1024px;--rebill-breakpoint-desktop:1025px;--rebill-color-orange:#ff9400;--rebill-color-black:#1e2025;--rebill-color-grey-300:#3b4049;--rebill-color-grey-100:#aeaeae}.qr-container,.qr-image,.qr-image svg,.qr-image img,[class*='qr-'],[class*='success'],[class*='receipt']{transition:none !important;animation:none !important;will-change:auto !important}button:active,button:focus,button:hover{isolation:isolate}@media (max-width: 1024px){.rebill-checkout-renewal{flex-direction:column;gap:0;justify-content:flex-start;background:var(--rebill-color-background);padding:20px}.right-section .left-section{width:100%;height:100%;background:var(--rebill-color-background)}.checkout-form-section{display:flex;flex-direction:column;justify-content:flex-start;gap:24px;height:100%;margin-top:24px}.otp-container{display:flex;flex-direction:column;justify-content:flex-start;gap:24px}}@media (min-width: 1025px){.rebill-checkout-renewal{width:100vw;min-height:100vh;display:flex;flex-direction:row;justify-content:center;overflow-y:auto}.left-section{display:flex;width:60%;background:var(--rebill-color-background-left);justify-content:space-around}.right-section{display:flex;padding-top:72px;width:40%;background:var(--rebill-color-background-right);position:sticky;top:0;justify-content:center}.checkout-form-section{display:flex;flex-direction:column;justify-content:flex-start;margin-bottom:36px;margin-top:24px;gap:32px}.left-section-container{max-width:450px;min-width:450px;margin:2.5rem 2rem 1.5rem 2rem;display:flex;flex-direction:column}.checkout-summary-section{max-width:450px;min-width:350px;margin:0rem 2rem;background:var(--rebill-color-background-right);display:flex;flex-direction:column;justify-content:flex-start;width:100%}.checkout-form-section user-information,.checkout-form-section payment-method-selector,.checkout-form-section rebill-address,.checkout-summary-section rebill-summary{width:100%}.pac-container{border-radius:4px;box-shadow:0 4px 8px rgba(0, 0, 0, 0.1);border:1px solid #e0e0e0;margin-top:4px;font-family:inherit}.pac-item{padding:10px 12px;cursor:pointer;border-top:none}.pac-item:first-child{border-top:none}.pac-item:hover{background-color:#f5f5f5}.pac-item-query{font-weight:500}.pac-icon{display:none}}.payment-button-container{display:flex;flex-direction:column;gap:16px;margin-bottom:16px}.animated-component{transition:all 0.3s ease-in-out;overflow:visible}.fade-in{animation:fadeIn 0.4s ease-in-out}.slide-in{animation:slideIn 0.5s ease-out}@keyframes fadeIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{from{opacity:0;transform:translateX(-20px);max-height:0}to{opacity:1;transform:translateX(0);max-height:450px}}.animated-component.hide{animation:fadeOut 0.3s ease-in-out forwards}@keyframes fadeOut{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}rebill-mode-sandbox{position:fixed;bottom:50px;left:50%;transform:translateX(-50%);z-index:1000}@media (max-width: 1024px){rebill-test-mode-chip{bottom:46px}}@media (min-width: 1025px){rebill-test-mode-chip{bottom:46px}}.mode-sandbox-mobile-container{display:flex;align-items:center;width:100%;padding:0;margin:0;box-sizing:border-box}@media (min-width: 1451px){.left-section-container{min-width:450px;margin:2.5rem 5rem 1.5rem 5rem}.checkout-summary-section{min-width:450px;margin:0rem 5rem}}";const j=class{constructor(i){e(this,i);this.success=t(this,"success");this.paymentError=t(this,"paymentError");this.paymentMethodSelected=t(this,"paymentMethodSelected")}renewalData;renewalToken;currentPaymentMethod=h.CARD;isSubmitting=false;isCardSubmitting=false;isCardSuccess=false;errorMessage=null;breakpoint=x.DESKTOP;errorPaymentCard=false;errorPaymentAPM=false;initialData={};checkoutResponse=null;currentApmPaymentMethod=null;countries=[];allRequiredFields={};currentRequiredFields=[];errorCardInvalid=false;cardMode="select";success;paymentError;paymentMethodSelected;validationSchema={phoneNumber:r().when([],{is:()=>a("phoneNumber",this.currentRequiredFields)&&this.cardMode==="input",then:e=>e.required("validation.phoneRequired"),otherwise:e=>e.notRequired()}),"billing-country":r().when([],{is:()=>a("billing-country",this.currentRequiredFields)&&this.cardMode==="input",then:e=>e.required("validation.countryRequired"),otherwise:e=>e.notRequired()}),"billing-state":r().when([],{is:()=>a("billing-state",this.currentRequiredFields)&&this.cardMode==="input",then:e=>e.required("validation.stateRequired"),otherwise:e=>e.notRequired()}),"billing-address":r().when([],{is:()=>a("billing-address",this.currentRequiredFields)&&this.cardMode==="input",then:e=>e.required("validation.addressRequired"),otherwise:e=>e.notRequired()}),"billing-city":r().when([],{is:()=>a("billing-city",this.currentRequiredFields)&&this.cardMode==="input",then:e=>e.required("validation.cityRequired"),otherwise:e=>e.notRequired()}),"billing-zip":r().when([],{is:()=>a("billing-zip",this.currentRequiredFields)&&this.cardMode==="input",then:e=>e.required("validation.zipRequired"),otherwise:e=>e.notRequired()}),bankId:r().when([],{is:()=>a("bankId",this.currentRequiredFields),then:e=>e.required("validation.bankRequired"),otherwise:e=>e.notRequired()}),documentType:r().when([],{is:()=>a("documentType",this.currentRequiredFields)&&this.cardMode==="input",then:e=>e.required("validation.documentTypeRequired"),otherwise:e=>e.notRequired()}),documentNumber:r().when([],{is:()=>a("documentNumber",this.currentRequiredFields)&&this.cardMode==="input",then:e=>e.required("validation.documentNumberRequired").min(7,"validation.documentInvalid"),otherwise:e=>e.notRequired()})};resizeHandler=()=>{this.breakpoint=w(window.innerWidth)};async componentWillLoad(){this.resizeHandler();window.addEventListener("resize",this.resizeHandler);const e=typeof this.renewalData==="string"?JSON.parse(this.renewalData):this.renewalData;y.initializeRenewal({...e,token:this.renewalToken});p.loadGoogleMapsScript();try{const e=await o.data.getCountries();this.countries=e.data}catch(e){console.error("Error loading countries:",e)}try{this.allRequiredFields=await q()}catch(e){console.error("Error loading required fields:",e)}if(f.data.paymentMethods.length>0){const e=f.data.paymentMethods[0].type;this.currentPaymentMethod=e;y.setSelectedPaymentMethod(e);try{this.currentRequiredFields=D(e,this.allRequiredFields).fields}catch(e){console.error("Error getting required fields for method:",e)}await this.initializeFingerprint(e)}this.initialData=this.getInitialData();this.cardMode=f.cardMode;g("cardMode",(()=>{this.cardMode=f.cardMode}))}disconnectedCallback(){window.removeEventListener("resize",this.resizeHandler)}async handlePaymentMethodSelected(e){e.stopPropagation();if(this.currentPaymentMethod===e.detail){return}this.currentPaymentMethod=e.detail;y.setSelectedPaymentMethod(this.currentPaymentMethod);if(this.currentPaymentMethod!==h.CARD){this.cardMode="input";y.setCardMode("input")}try{this.currentRequiredFields=D(this.currentPaymentMethod,this.allRequiredFields).fields}catch(e){console.error("Error getting required fields for method:",e)}await this.initializeFingerprint(this.currentPaymentMethod);this.paymentMethodSelected.emit(e.detail)}async initializeFingerprint(e){if(e===h.CARD&&!f.deviceId){try{const e=crypto.randomUUID();const t=await o.fingerPrint.getFingerPrint(e);y.setDeviceId(e);const i=t.result.script;const r=document.createElement("script");r.innerHTML=i;document.body.appendChild(r)}catch(e){console.error("Failed to initialize fingerprint:",e)}}}handleBankSelected(e){e.stopPropagation();y.setSelectedBankId(e.detail)}handleCardSelected(e){const{card:t,cvv:i}=e.detail;y.setSelectedCard(t);y.setCvv(i||"")}get currentPaymentError(){if(this.currentPaymentMethod===h.CARD){return this.errorPaymentCard}else if(this.currentPaymentMethod===h.CASH||this.currentPaymentMethod===h.BANK_TRANSFER){return this.errorPaymentAPM}return false}async handleSubmit(e){if(this.isSubmitting){return}if(this.currentPaymentMethod===h.CARD){await this.handleCardRenewal(e)}else{await this.handleAPMRenewal(e)}}async handleCardRenewal(e){const t=e?.detail||this.getInitialData();if(!f.data.cardId&&!f.data.cardTokenId){this.errorCardInvalid=true;return}if(!f.data.cardInformation&&!f.data.cardId){this.errorCardInvalid=true;return}this.errorCardInvalid=false;this.isSubmitting=true;this.isCardSubmitting=true;y.setLoading(true);try{const e={transaction:{quantity:1},...f.data.cardId&&{cardId:f.data.cardId},...f.data.cardTokenId&&{cardTokenId:f.data.cardTokenId},customAttributes:{...f.deviceId&&{deviceId:f.deviceId}},...this.cardMode==="input"&&{customer:{firstName:t.fullName?.split(" ")[0]||f.data.subscription.customerName?.split(" ")[0],lastName:t.fullName?.split(" ").slice(1).join(" ")||f.data.subscription.customerName?.split(" ").slice(1).join(" "),email:t.email||f.data.subscription.customerEmail,phone:{countryCode:t.countryCodePhoneNumber||"",number:t.phoneNumber||""}},billingDetails:{address:{lineOne:t["billing-address"]||"",city:t["billing-city"]||"",state:t["billing-state"]||"",country:t["billing-country"]||"",zipCode:t["billing-zip"]||""},identification:{type:t.documentType||"",value:t.documentNumber||""}}}};const i=s();const r=await o.checkout.createCardCheckoutRequest(f.data.id,i,e,f.token);this.isSubmitting=false;this.isCardSubmitting=false;y.setLoading(false);y.setCheckoutResponse(r.data);if(r.data.result?.status.toUpperCase()===l.APPROVED){this.isCardSuccess=true}else{this.isCardSuccess=false;this.errorPaymentCard=true;this.errorMessage={message:r.data.error?.error?.message}}}catch(e){this.isSubmitting=false;this.isCardSubmitting=false;y.setLoading(false);this.errorPaymentCard=true;this.errorMessage={message:e.data?.error?.message}}}async handleAPMRenewal(e){this.isSubmitting=true;y.setLoading(true);try{const t=u.mapToAPMPaymentMethod(this.currentPaymentMethod,f.data.price.country);const i=e?.detail||this.getFormData();const r={address:{country:i["billing-country"],state:i["billing-state"]||"",city:i["billing-city"]||"",zipCode:i["billing-zip"]||"",lineOne:i["billing-address"]||""},identification:{type:i.documentType||"dni",value:i.documentNumber||""}};const n={transaction:{quantity:1},method:t,billingDetails:r,redirect:{approved:window.location.origin+"/renewal/success",rejected:window.location.origin+"/renewal/failure"},paymentMetadata:{orderId:f.data.id,source:"renewal-web"},customAttributes:{bank:i.bankId||""},...t!==b.CO_TRANSFERENCE_PSE&&{targetCurrency:f.data.price.currency}};n.customer={firstName:i.fullName?.split(" ")[0]||f.data.subscription.customerName.split(" ")[0]||"",lastName:i.fullName?.split(" ").slice(1).join(" ")||f.data.subscription.customerName.split(" ").slice(1).join(" ")||"",email:i.email||f.data.subscription.customerEmail,phone:{countryCode:i.countryCodePhoneNumber||"",number:i.phoneNumber||""}};const a=s();const c=await o.checkout.createAPMCheckoutRequest(f.data.id,a,n);this.isSubmitting=false;y.setLoading(false);y.setCheckoutResponse(c.data);this.checkoutResponse=c.data;if(c.data.result?.status.toUpperCase()===l.APPROVED){this.isCardSuccess=true}else{this.paymentError.emit(c.data);y.setCheckoutResponse(c.data);this.errorPaymentAPM=true;this.errorMessage={alertTitle:c.data?.error?.message,message:c.data.error?.message}}}catch(e){this.isSubmitting=false;y.setLoading(false);this.paymentError.emit(e);this.errorPaymentAPM=true;this.errorMessage={alertTitle:e.data?.error?.message,message:e.data?.error?.message}}}getFormData=()=>this.initialData;getInitialData=()=>({email:f.data.subscription.customerEmail,fullName:f.data.subscription.customerName,card:"","billing-country":"","billing-state":"","billing-address":"","billing-city":"","billing-zip":"",bankId:"",phoneNumber:"",countryCodePhoneNumber:"",documentType:"",documentNumber:""});hasPrefilledAddress=()=>{const e=["billing-country","billing-state","billing-address","billing-city","billing-zip"];return e.some((e=>{const t=this.initialData[e];return t&&t.trim()!==""}))};getPaymentDate=()=>{const e=f.form.checkoutResponse;if(!e)return"";if("date"in e){return e.date}return""};getReferenceNumber=()=>{const e=f.form.checkoutResponse;if(!e)return"";if("traceId"in e){return e.traceId}return""};render(){if(!f.isInitialized){return i("div",{class:"loading"},m.translate("renewal.loading"))}const e=e=>i("renewal-summary",{totalAmount:f.data.price.amount,currency:f.data.price.currency,subscriptionTitle:f.data.subscription.name[0]?.text||"Subscription",subscriptionAmount:f.data.subscription.amount,nextChargeDate:f.data.subscription.nextChargeDate,frequency:f.data.subscription.frequency,...e});return i(i.Fragment,null,i("rebill-processing-payment",{style:{display:this.isCardSubmitting?"block":"none"}}),this.isCardSuccess?i("renewal-success-page",{typePaymentMethod:this.currentPaymentMethod,paymentDate:this.getPaymentDate(),referenceNumber:this.getReferenceNumber(),cardLastFour:f.data.subscription.cardLastFour,country:f.data.price.country,paymentMethodName:u.mapToAPMPaymentMethod(this.currentPaymentMethod,f.data?.price?.country),bank:f.form?.selectedBankId||""}):i("rebill-checkout-form",{style:{display:this.isCardSubmitting||this.isCardSuccess?"none":"block"},validationSchema:this.validationSchema,initialData:this.initialData,onSubmit:e=>this.handleSubmit(e),renderForm:({submit:t,formData:r,errors:o})=>i("div",{class:"rebill-checkout-renewal"},i("div",{class:"left-section"},i("div",{class:"left-section-container"},i("organization-logo",{organization:f.data.organization}),i("div",{class:"checkout-form-section"},i("user-information-static",{userInfo:{customerName:f.data.subscription.customerName,customerEmail:f.data.subscription.customerEmail}}),k(this.breakpoint,x.DESKTOP)&&e({displayedComponents:"header"}),k(this.breakpoint,x.DESKTOP)&&e({displayedComponents:"details"}),i("div",{style:{display:"flex",flexDirection:"column",gap:"32px"}},i("payment-method-selector",{enabledPaymentMethods:[...new Set(f.data.paymentMethods.map((e=>e.type)))],defaultSelected:this.currentPaymentMethod,errorComponent:{showErrorComponent:this.currentPaymentError,alertTitle:c.getErrorTitle(this.currentPaymentMethod,f.data.price.country,this.errorMessage?.alertTitle),message:c.getErrorMessage(this.errorMessage?.message,this.currentPaymentMethod,f.data.price.country)},cardError:{showCardInvalid:this.errorCardInvalid,type:null},country:f.data.price.country,documentTypeError:o?.documentType,documentNumberError:o?.documentNumber,showDocument:this.cardMode==="input"&&(a("documentType",this.currentRequiredFields)||a("documentNumber",this.currentRequiredFields))}),this.currentPaymentMethod!==h.CARD&&i("rebill-alert",{type:"info",message:m.translate("renewal.paymentMethodAlert",{cardLastFour:f.data.subscription.cardLastFour||"****"}),icon:"calendar-edit",variant:"outlined",colorIcon:v.PRIMARY}),this.cardMode==="input"&&a("bankId",this.currentRequiredFields)&&i("div",{class:"animated-component fade-in"},i("rebill-bank-selector",{banks:d("bank",this.allRequiredFields[this.currentPaymentMethod]?.original)||[],defaultSelectedBankId:r.bankId||"",error:o?.bankId}))),this.cardMode==="input"&&(a("billing-country",this.currentRequiredFields)||a("billing-state",this.currentRequiredFields)||a("billing-address",this.currentRequiredFields)||a("billing-city",this.currentRequiredFields)||a("billing-zip",this.currentRequiredFields))&&i("div",{class:"animated-component slide-in"},i("rebill-address",{countryOptions:this.countries.map((e=>({label:e.country,value:e.isoCountryCode}))),billingView:this.hasPrefilledAddress()?"form":"search",errors:{"billing-country":o["billing-country"],"billing-state":o["billing-state"],"billing-address":o["billing-address"],"billing-city":o["billing-city"],"billing-zip":o["billing-zip"]}})),this.cardMode==="input"&&a("phoneNumber",this.currentRequiredFields)&&i("div",{class:"animated-component fade-in"},i("user-information-phone",{error:o?.phoneNumber})),this.checkoutResponse?.result&&(this.currentPaymentMethod===h.CASH||this.currentPaymentMethod===h.BANK_TRANSFER)&&i("apm-checkout",{paymentMethod:this.currentPaymentMethod,referenceId:this.currentPaymentMethod===h.CASH?this.checkoutResponse.result.data.referenceId:undefined,qrCodeData:this.currentPaymentMethod===h.BANK_TRANSFER?this.checkoutResponse.result.data.qrCode:undefined,providerName:f.data.organization?.name||"",expirationDate:(()=>{const e=new Date;e.setDate(e.getDate()+30);return e.toISOString()})(),country:f.data.price.country,redirectUrl:this.checkoutResponse.result.data.url}),k(this.breakpoint,x.DESKTOP)&&e({displayedComponents:"summary"}),i("div",{style:{display:"flex",flexDirection:"column",gap:"16px"}},i("payment-button",{paymentMethod:this.currentPaymentMethod,isLoading:this.isSubmitting,isRenewal:true,trialPeriodDays:f.data.subscription.trialPeriodDays,redirectUrl:!!this.checkoutResponse?.result?.data?.url,timeToRedirect:5e3,country:f.data.price.country,isDisabled:f.fetchingInstallments,onSubmit:()=>t()}),i("rebill-alert",{type:"secure",variant:"variant-secure",icon:"lock-outline",message:m.translate("otp.secureMessage")}))),i("rebill-footer",{style:{marginTop:k(this.breakpoint,x.DESKTOP)?"24px":"auto"}}))),!k(this.breakpoint,x.DESKTOP)&&i("div",{class:"right-section"},i("div",{class:"checkout-summary-section"},e({displayedComponents:["header","details","summary"]}))))}))}};j.style=M;export{j as rebill_renewal};
2
- //# sourceMappingURL=p-b519d8a2.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["registerInstance","createEvent","h","create$6","api","mapRequiredFields","isFieldRequired","generateIdempotencyKey","CheckoutStatusE","PaymentErrorMapper","getFieldValues","PAYMENT_METHOD_ENUM","I18nService","PaymentMethodMapper","GoogleMapsService","PaymentMethodNameE","renewalState","RenewalStore","onChange","BREAKPOINT_ENUM","getBreakpoint","isBreakpointBelow","COLORS_ENUM","getRequiredFields","async","currency","method","organizationId","requiredFieldsResponse","checkout","fields","data","original","getAllRequiredFieldsRenewal","paymentMethods","Set","map","pm","type","promises","paymentMethod","apiPaymentMethod","mapToAPMPaymentMethod","price","country","result","organization","id","error","console","results","Promise","all","fieldsMap","forEach","getRequiredFieldsForMethod","allRequiredFields","storedFields","rebillRenewalCss","RebillRenewal","constructor","hostRef","this","success","paymentError","paymentMethodSelected","renewalData","renewalToken","currentPaymentMethod","CARD","isSubmitting","isCardSubmitting","isCardSuccess","errorMessage","breakpoint","DESKTOP","errorPaymentCard","errorPaymentAPM","initialData","checkoutResponse","currentApmPaymentMethod","countries","currentRequiredFields","errorCardInvalid","cardMode","validationSchema","phoneNumber","when","is","then","schema","required","otherwise","notRequired","bankId","documentType","documentNumber","min","resizeHandler","window","innerWidth","componentWillLoad","addEventListener","renewalProps","JSON","parse","initializeRenewal","token","loadGoogleMapsScript","response","getCountries","length","firstPaymentMethod","setSelectedPaymentMethod","initializeFingerprint","getInitialData","disconnectedCallback","removeEventListener","handlePaymentMethodSelected","event","stopPropagation","detail","setCardMode","emit","deviceId","uuid","crypto","randomUUID","fingerprintResponse","fingerPrint","getFingerPrint","setDeviceId","script","scriptElement","document","createElement","innerHTML","body","appendChild","handleBankSelected","setSelectedBankId","handleCardSelected","card","cvv","setSelectedCard","setCvv","currentPaymentError","CASH","BANK_TRANSFER","handleSubmit","handleCardRenewal","handleAPMRenewal","formData","cardId","cardTokenId","cardInformation","setLoading","renewalRequest","transaction","quantity","customAttributes","customer","firstName","fullName","split","subscription","customerName","lastName","slice","join","email","customerEmail","phone","countryCode","countryCodePhoneNumber","number","billingDetails","address","lineOne","city","state","zipCode","identification","value","idempotencyKey","createCardCheckoutRequest","setCheckoutResponse","status","toUpperCase","APPROVED","message","apmPaymentMethod","getFormData","redirect","approved","location","origin","rejected","paymentMetadata","orderId","source","bank","CO_TRANSFERENCE_PSE","targetCurrency","createAPMCheckoutRequest","alertTitle","hasPrefilledAddress","billingFields","some","key","trim","getPaymentDate","payment","form","date","getReferenceNumber","traceId","render","isInitialized","class","translate","renderRenewalSummary","props","totalAmount","amount","subscriptionTitle","name","text","subscriptionAmount","nextChargeDate","frequency","Fragment","style","display","typePaymentMethod","paymentDate","referenceNumber","cardLastFour","paymentMethodName","selectedBankId","onSubmit","args","renderForm","submit","errors","userInfo","displayedComponents","flexDirection","gap","enabledPaymentMethods","defaultSelected","errorComponent","showErrorComponent","getErrorTitle","getErrorMessage","cardError","showCardInvalid","documentTypeError","documentNumberError","showDocument","icon","variant","colorIcon","PRIMARY","banks","defaultSelectedBankId","countryOptions","label","isoCountryCode","billingView","referenceId","undefined","qrCodeData","qrCode","providerName","expirationDate","Date","setDate","getDate","toISOString","redirectUrl","url","isLoading","isRenewal","trialPeriodDays","timeToRedirect","isDisabled","fetchingInstallments","marginTop"],"sources":["0"],"mappings":"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","ignoreList":[]}