{ "version": 3, "sources": ["src/app/features/lead-magnet/components/lead-magnet-active-campaign-modal/lead-magnet-active-campaign-modal.component.ts", "src/app/features/lead-magnet/components/lead-magnet-active-campaign-modal/lead-magnet-active-campaign-modal.component.html", "src/app/features/lead-magnet/components/lead-magnet-exit-intent/lead-magnet-exit-intent.component.ts"], "sourcesContent": ["import { ChangeDetectorRef, Component, OnInit } from '@angular/core';\nimport {\n ReactiveFormsModule,\n UntypedFormBuilder,\n UntypedFormGroup,\n Validators,\n} from '@angular/forms';\nimport { DjangoService } from '@core/services/django.service';\nimport { EventTrackerService } from '@core/services/event-tracker.service';\nimport { ANALYTICS_EVENTS } from '@core/utils/AnalyticsEvents';\nimport { ModalData } from '@features/modal/interfaces/modal-data';\nimport { ModalService } from '@features/modal/services/modal.service';\nimport { ActiveCampaignLeadMagnet } from '@generated/graphql';\nimport { SaveButtonComponent } from '../../../../shared/save-button/save-button.component';\n\n@Component({\n selector: 'app-lead-magnet-active-campaign-modal',\n templateUrl: './lead-magnet-active-campaign-modal.component.html',\n styleUrls: ['./lead-magnet-active-campaign-modal.component.css'],\n standalone: true,\n imports: [ReactiveFormsModule, SaveButtonComponent],\n})\nexport class LeadMagnetActiveCampaignModalComponent\n implements OnInit, ModalData<{ leadMagnet: ActiveCampaignLeadMagnet }>\n{\n showLoader = false;\n success = false;\n error = false;\n\n readonly modalStyle = ['bg-blue text-white'];\n readonly navigationStyle = ['bg-blue text-white'];\n\n modalData: { leadMagnet: ActiveCampaignLeadMagnet; isExitIntent?: boolean };\n leadMagnetForm: UntypedFormGroup;\n constructor(\n private formBuilder: UntypedFormBuilder,\n private cd: ChangeDetectorRef,\n private modalService: ModalService,\n private djangoService: DjangoService,\n private eventTrackerService: EventTrackerService\n ) {}\n\n ngOnInit(): void {\n this.leadMagnetForm = this.formBuilder.group({\n firstName: ['', [Validators.required]],\n email: ['', [Validators.required, Validators.email]],\n });\n }\n\n onSubmit() {\n if (this.leadMagnetForm.valid) {\n this.showLoader = true;\n const values = this.leadMagnetForm.value;\n const data = {\n email: values.email,\n first_name: values.firstName,\n lead_magnet: this.modalData.leadMagnet.sys.id,\n };\n\n this.djangoService.leadMagnet(data).subscribe({\n next: () => {\n this.success = true;\n this.showLoader = false;\n this.cd.detectChanges();\n const eventTitle = this.modalData.isExitIntent\n ? ANALYTICS_EVENTS.LEAD_MAGNET_EXIT_INTENT_COMPLETED\n : ANALYTICS_EVENTS.LEAD_MAGNET_COMPLETED;\n this.eventTrackerService.trackEvent(\n eventTitle,\n {\n leadMagnet: this.modalData.leadMagnet.title,\n tag: this.modalData.leadMagnet.activeCampaignTag,\n },\n data.email\n );\n setTimeout(() => this.modalService.hide(), 2000);\n },\n error: error => {\n this.success = false;\n this.showLoader = false;\n this.error = true;\n this.cd.detectChanges();\n },\n });\n }\n }\n}\n", "@if (modalData?.leadMagnet) {\n
\n There was an error processing your request. Please try again\n at a later time.\n
\n\n If it is an urgent request, feel free to reach out to\n \n travel@followalice.com .\n
\n