{"version":3,"file":"cta-footer.9c7d520c.js","sources":["../../src/components/cta-footer.ts"],"sourcesContent":["import { defineComponent } from \"vue\";\r\nimport common from \"../core/core\";\r\nimport { mainModelService } from \"@/services/main.model.service\";\r\n\r\nimport * as Sentry from \"@sentry/vue\";\r\n\r\nexport default defineComponent({\r\n components: {},\r\n data() {\r\n return {\r\n ctaCitySelectOpened: false,\r\n mainModelService,\r\n tariffsService: this.$store.direct.getters.tariffsService,\r\n };\r\n },\r\n async mounted() {\r\n this.AppService.phoneBlockSubject.subscribe(async (data) => {\r\n const containerId = (this.$refs.container as HTMLElement)?.querySelector(\"#phone-block-\" + data.id)?.id;\r\n const phoneBlock = (this.$refs.container as HTMLElement)?.querySelector(\"#phone-block-\" + data.id) as HTMLElement;\r\n const phoneBlockTechnology = phoneBlock?.dataset.technology;\r\n\r\n if (containerId === \"phone-block-\" + data.id) {\r\n const tariff = this.$store.direct.getters.tariffsService.getTariff();\r\n const address = this.$store.direct.getters.addressService.address; // TODO access via getter\r\n const hasCoverage = await this.$store.direct.getters.coverageService.getHasCoverage();\r\n const hasPlannedCoverage = await this.$store.direct.getters.coverageService.getHasPlannedCoverage();\r\n const clientCenterOpen = await this.$store.direct.getters.holidaysService.isClientCenterOpen();\r\n const token = await this.$store.direct.getters.recaptchaService.getToken(\"order\");\r\n const phoneNumber = data.code + data.number;\r\n // Prepare the request\r\n const reqBuilder = this.$store.direct.getters.createWebOrderRequestBuilderFactory.create();\r\n reqBuilder.setPhone(phoneNumber);\r\n reqBuilder.setRecaptcha(token);\r\n\r\n // if technology-specific phone block\r\n if (phoneBlockTechnology !== undefined) {\r\n reqBuilder.setTechnology(phoneBlockTechnology);\r\n } else {\r\n reqBuilder.setAddress(address);\r\n reqBuilder.setTariff(tariff);\r\n reqBuilder.setHasCoverage(hasCoverage);\r\n reqBuilder.setHasPlannedCoverage(hasPlannedCoverage);\r\n }\r\n\r\n // Fire\r\n let webApiResponse = null;\r\n try {\r\n webApiResponse = await this.$store.direct.getters.webApiService.createWebOrder(await reqBuilder.getRequest());\r\n this.phoneBlockLoading = false;\r\n this.AppService.openPopup(\"form_success\", {\r\n hasPlannedCoverage: hasPlannedCoverage,\r\n clientCenterOpen: clientCenterOpen,\r\n });\r\n } catch (error) {\r\n this.phoneBlockLoading = false;\r\n this.AppService.openPopup(\"form_error\", {\r\n hasPlannedCoverage: hasPlannedCoverage,\r\n });\r\n Sentry.captureException(error);\r\n }\r\n // Track\r\n\r\n const trackingPayload = {\r\n web_order_uuid: webApiResponse?.uuid ?? null,\r\n url: window.location.pathname,\r\n city: address?.mesto,\r\n technology: tariff?.param_pvr, // 5e / wifi / gpon / bytovky / siim\r\n has_coverage: hasCoverage,\r\n phone_number: phoneNumber,\r\n };\r\n\r\n await Promise.all([\r\n this.$store.direct.getters.gtmService.trackOncePerSession(\"phone_submit_footer\", trackingPayload),\r\n this.$store.direct.getters.exponeaService.trackOncePerSession(\"phone_submit_footer\", trackingPayload),\r\n ]);\r\n }\r\n });\r\n },\r\n computed: {},\r\n methods: {\r\n toggleCtaCountrySelect() {\r\n this.ctaCitySelectOpened = !this.ctaCitySelectOpened;\r\n },\r\n closeCtaCountrySelect() {\r\n this.ctaCitySelectOpened = false;\r\n },\r\n },\r\n mixins: [common],\r\n});\r\n"],"names":["ctaFooter","defineComponent","mainModelService","data","containerId","_b","_a","phoneBlock","_c","phoneBlockTechnology","tariff","address","hasCoverage","hasPlannedCoverage","clientCenterOpen","token","phoneNumber","reqBuilder","webApiResponse","error","Sentry.captureException","trackingPayload","_d","common"],"mappings":"mZAMA,MAAAA,EAAeC,EAAgB,CAC7B,WAAY,CAAC,EACb,MAAO,CACE,MAAA,CACL,oBAAqB,GACrB,iBAAAC,EACA,eAAgB,KAAK,OAAO,OAAO,QAAQ,cAAA,CAE/C,EACA,MAAM,SAAU,CACd,KAAK,WAAW,kBAAkB,UAAU,MAAOC,GAAS,aACpD,MAAAC,GAAeC,GAAAC,EAAA,KAAK,MAAM,YAAX,YAAAA,EAAsC,cAAc,gBAAkBH,EAAK,MAA3E,YAAAE,EAAgF,GAC/FE,GAAcC,EAAA,KAAK,MAAM,YAAX,YAAAA,EAAsC,cAAc,gBAAkBL,EAAK,IACzFM,EAAuBF,GAAA,YAAAA,EAAY,QAAQ,WAE7C,GAAAH,IAAgB,eAAiBD,EAAK,GAAI,CAC5C,MAAMO,EAAS,KAAK,OAAO,OAAO,QAAQ,eAAe,YACnDC,EAAU,KAAK,OAAO,OAAO,QAAQ,eAAe,QACpDC,EAAc,MAAM,KAAK,OAAO,OAAO,QAAQ,gBAAgB,iBAC/DC,EAAqB,MAAM,KAAK,OAAO,OAAO,QAAQ,gBAAgB,wBACtEC,EAAmB,MAAM,KAAK,OAAO,OAAO,QAAQ,gBAAgB,qBACpEC,EAAQ,MAAM,KAAK,OAAO,OAAO,QAAQ,iBAAiB,SAAS,OAAO,EAC1EC,EAAcb,EAAK,KAAOA,EAAK,OAE/Bc,EAAa,KAAK,OAAO,OAAO,QAAQ,oCAAoC,SAClFA,EAAW,SAASD,CAAW,EAC/BC,EAAW,aAAaF,CAAK,EAGzBN,IAAyB,OAC3BQ,EAAW,cAAcR,CAAoB,GAE7CQ,EAAW,WAAWN,CAAO,EAC7BM,EAAW,UAAUP,CAAM,EAC3BO,EAAW,eAAeL,CAAW,EACrCK,EAAW,sBAAsBJ,CAAkB,GAIrD,IAAIK,EAAiB,KACjB,GAAA,CACeA,EAAA,MAAM,KAAK,OAAO,OAAO,QAAQ,cAAc,eAAe,MAAMD,EAAW,WAAY,CAAA,EAC5G,KAAK,kBAAoB,GACpB,KAAA,WAAW,UAAU,eAAgB,CACxC,mBAAAJ,EACA,iBAAAC,CAAA,CACD,QACMK,GACP,KAAK,kBAAoB,GACpB,KAAA,WAAW,UAAU,aAAc,CACtC,mBAAAN,CAAA,CACD,EACDO,EAAwBD,CAAK,CAC/B,CAGA,MAAME,EAAkB,CACtB,gBAAgBC,EAAAJ,GAAA,YAAAA,EAAgB,OAAhB,KAAAI,EAAwB,KACxC,IAAK,OAAO,SAAS,SACrB,KAAMX,GAAA,YAAAA,EAAS,MACf,WAAYD,GAAA,YAAAA,EAAQ,UACpB,aAAcE,EACd,aAAcI,CAAA,EAGhB,MAAM,QAAQ,IAAI,CAChB,KAAK,OAAO,OAAO,QAAQ,WAAW,oBAAoB,sBAAuBK,CAAe,EAChG,KAAK,OAAO,OAAO,QAAQ,eAAe,oBAAoB,sBAAuBA,CAAe,CAAA,CACrG,CACH,CAAA,CACD,CACH,EACA,SAAU,CAAC,EACX,QAAS,CACP,wBAAyB,CAClB,KAAA,oBAAsB,CAAC,KAAK,mBACnC,EACA,uBAAwB,CACtB,KAAK,oBAAsB,EAC7B,CACF,EACA,OAAQ,CAACE,CAAM,CACjB,CAAC"}