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.
@@ -171,21 +171,39 @@ const RebillRenewal = class {
171
171
  console.error('Error loading required fields:', error);
172
172
  }
173
173
  if (renewalState.data.paymentMethods.length > 0) {
174
- const firstPaymentMethod = renewalState.data.paymentMethods[0].type;
175
- this.currentPaymentMethod = firstPaymentMethod;
176
- RenewalStore.setSelectedPaymentMethod(firstPaymentMethod);
177
- // Set required fields for the initial payment method
174
+ let defaultPaymentMethod = null;
175
+ if (renewalState.data.subscription?.paymentMethod) {
176
+ const subscriptionPaymentMethod = renewalState.data.subscription.paymentMethod.toLowerCase();
177
+ const mappedMethod = subscriptionPaymentMethod === 'card'
178
+ ? PAYMENT_METHOD_ENUM.CARD
179
+ : subscriptionPaymentMethod === 'bank_transfer'
180
+ ? PAYMENT_METHOD_ENUM.BANK_TRANSFER
181
+ : null;
182
+ if (mappedMethod) {
183
+ const isAvailable = renewalState.data.paymentMethods.some(pm => pm.type === mappedMethod);
184
+ if (isAvailable) {
185
+ defaultPaymentMethod = mappedMethod;
186
+ }
187
+ }
188
+ }
189
+ if (!defaultPaymentMethod) {
190
+ defaultPaymentMethod = renewalState.data.paymentMethods[0].type;
191
+ }
192
+ this.currentPaymentMethod = defaultPaymentMethod;
193
+ RenewalStore.setSelectedPaymentMethod(defaultPaymentMethod);
194
+ if (defaultPaymentMethod !== PAYMENT_METHOD_ENUM.CARD) {
195
+ this.cardMode = 'input';
196
+ RenewalStore.setCardMode('input');
197
+ }
178
198
  try {
179
- this.currentRequiredFields = getRequiredFieldsForMethod(firstPaymentMethod, this.allRequiredFields).fields;
199
+ this.currentRequiredFields = getRequiredFieldsForMethod(defaultPaymentMethod, this.allRequiredFields).fields;
180
200
  }
181
201
  catch (error) {
182
202
  console.error('Error getting required fields for method:', error);
183
203
  }
184
- // Initialize fingerprint for the first payment method
185
- await this.initializeFingerprint(firstPaymentMethod);
204
+ await this.initializeFingerprint(defaultPaymentMethod);
186
205
  }
187
206
  this.initialData = this.getInitialData();
188
- this.cardMode = renewalState.cardMode;
189
207
  onChange('cardMode', () => {
190
208
  this.cardMode = renewalState.cardMode;
191
209
  });
@@ -505,8 +523,10 @@ const RebillRenewal = class {
505
523
  type: null,
506
524
  }, country: renewalState.data.price.country, documentTypeError: errors?.documentType, documentNumberError: errors?.documentNumber, showDocument: this.cardMode === 'input' &&
507
525
  (isFieldRequired('documentType', this.currentRequiredFields) ||
508
- isFieldRequired('documentNumber', this.currentRequiredFields)) }), this.currentPaymentMethod !== PAYMENT_METHOD_ENUM.CARD && (h("rebill-alert", { type: "info", message: I18nService.translate('renewal.paymentMethodAlert', {
509
- cardLastFour: renewalState.data.subscription.cardLastFour || '****',
526
+ isFieldRequired('documentNumber', this.currentRequiredFields)) }), this.currentPaymentMethod !== PAYMENT_METHOD_ENUM.CARD &&
527
+ renewalState.data.subscription?.paymentMethod ===
528
+ PAYMENT_METHOD_ENUM.CARD && (h("rebill-alert", { type: "info", message: I18nService.translate('renewal.paymentMethodAlert', {
529
+ cardLastFour: renewalState.data?.subscription?.cardLastFour || '****',
510
530
  }), icon: "calendar-edit", variant: "outlined", colorIcon: COLORS_ENUM.PRIMARY })), this.cardMode === 'input' &&
511
531
  isFieldRequired('bankId', this.currentRequiredFields) && (h("div", { class: "animated-component fade-in" }, h("rebill-bank-selector", { banks: getFieldValues('bank', this.allRequiredFields[this.currentPaymentMethod]?.original) || [], defaultSelectedBankId: formData.bankId || '', error: errors?.bankId })))), this.cardMode === 'input' &&
512
532
  (isFieldRequired('billing-country', this.currentRequiredFields) ||
@@ -1 +1 @@
1
- {"version":3,"file":"rebill-renewal.entry.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.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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"}
@@ -0,0 +1,2 @@
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 f}from"./p-CrUPzbxi.js";import{r as b,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(b.data.paymentMethods.map((e=>e.type)))];const t=e.map((async e=>{try{const t=u.mapToAPMPaymentMethod(e,b.data.price.country);const i=await C(b.data.price.currency,t,b.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(b.data.paymentMethods.length>0){let e=null;if(b.data.subscription?.paymentMethod){const t=b.data.subscription.paymentMethod.toLowerCase();const i=t==="card"?h.CARD:t==="bank_transfer"?h.BANK_TRANSFER:null;if(i){const t=b.data.paymentMethods.some((e=>e.type===i));if(t){e=i}}}if(!e){e=b.data.paymentMethods[0].type}this.currentPaymentMethod=e;y.setSelectedPaymentMethod(e);if(e!==h.CARD){this.cardMode="input";y.setCardMode("input")}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();g("cardMode",(()=>{this.cardMode=b.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&&!b.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(!b.data.cardId&&!b.data.cardTokenId){this.errorCardInvalid=true;return}if(!b.data.cardInformation&&!b.data.cardId){this.errorCardInvalid=true;return}this.errorCardInvalid=false;this.isSubmitting=true;this.isCardSubmitting=true;y.setLoading(true);try{const e={transaction:{quantity:1},...b.data.cardId&&{cardId:b.data.cardId},...b.data.cardTokenId&&{cardTokenId:b.data.cardTokenId},customAttributes:{...b.deviceId&&{deviceId:b.deviceId}},...this.cardMode==="input"&&{customer:{firstName:t.fullName?.split(" ")[0]||b.data.subscription.customerName?.split(" ")[0],lastName:t.fullName?.split(" ").slice(1).join(" ")||b.data.subscription.customerName?.split(" ").slice(1).join(" "),email:t.email||b.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(b.data.id,i,e,b.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,b.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:b.data.id,source:"renewal-web"},customAttributes:{bank:i.bankId||""},...t!==f.CO_TRANSFERENCE_PSE&&{targetCurrency:b.data.price.currency}};n.customer={firstName:i.fullName?.split(" ")[0]||b.data.subscription.customerName.split(" ")[0]||"",lastName:i.fullName?.split(" ").slice(1).join(" ")||b.data.subscription.customerName.split(" ").slice(1).join(" ")||"",email:i.email||b.data.subscription.customerEmail,phone:{countryCode:i.countryCodePhoneNumber||"",number:i.phoneNumber||""}};const a=s();const c=await o.checkout.createAPMCheckoutRequest(b.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:b.data.subscription.customerEmail,fullName:b.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=b.form.checkoutResponse;if(!e)return"";if("date"in e){return e.date}return""};getReferenceNumber=()=>{const e=b.form.checkoutResponse;if(!e)return"";if("traceId"in e){return e.traceId}return""};render(){if(!b.isInitialized){return i("div",{class:"loading"},m.translate("renewal.loading"))}const e=e=>i("renewal-summary",{totalAmount:b.data.price.amount,currency:b.data.price.currency,subscriptionTitle:b.data.subscription.name[0]?.text||"Subscription",subscriptionAmount:b.data.subscription.amount,nextChargeDate:b.data.subscription.nextChargeDate,frequency:b.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:b.data.subscription.cardLastFour,country:b.data.price.country,paymentMethodName:u.mapToAPMPaymentMethod(this.currentPaymentMethod,b.data?.price?.country),bank:b.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:b.data.organization}),i("div",{class:"checkout-form-section"},i("user-information-static",{userInfo:{customerName:b.data.subscription.customerName,customerEmail:b.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(b.data.paymentMethods.map((e=>e.type)))],defaultSelected:this.currentPaymentMethod,errorComponent:{showErrorComponent:this.currentPaymentError,alertTitle:c.getErrorTitle(this.currentPaymentMethod,b.data.price.country,this.errorMessage?.alertTitle),message:c.getErrorMessage(this.errorMessage?.message,this.currentPaymentMethod,b.data.price.country)},cardError:{showCardInvalid:this.errorCardInvalid,type:null},country:b.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&&b.data.subscription?.paymentMethod===h.CARD&&i("rebill-alert",{type:"info",message:m.translate("renewal.paymentMethodAlert",{cardLastFour:b.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:b.data.organization?.name||"",expirationDate:(()=>{const e=new Date;e.setDate(e.getDate()+30);return e.toISOString()})(),country:b.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:b.data.subscription.trialPeriodDays,redirectUrl:!!this.checkoutResponse?.result?.data?.url,timeToRedirect:5e3,country:b.data.price.country,isDisabled:b.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-6334b899.entry.js.map
@@ -0,0 +1 @@
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","defaultPaymentMethod","subscription","subscriptionPaymentMethod","toLowerCase","mappedMethod","BANK_TRANSFER","isAvailable","some","setSelectedPaymentMethod","setCardMode","initializeFingerprint","getInitialData","disconnectedCallback","removeEventListener","handlePaymentMethodSelected","event","stopPropagation","detail","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","handleSubmit","handleCardRenewal","handleAPMRenewal","formData","cardId","cardTokenId","cardInformation","setLoading","renewalRequest","transaction","quantity","customAttributes","customer","firstName","fullName","split","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","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":[]}