From 752bc139ee138282309872b9b213c98e1ce53601 Mon Sep 17 00:00:00 2001 From: "e.kireev" Date: Mon, 18 Mar 2024 16:12:00 +0300 Subject: [PATCH] fix (PAYMENTS-18509): iframe loading twice --- src/core/web-components/web-component.abstract.ts | 4 ++-- src/features/headless-checkout/headless-checkout.ts | 2 ++ .../web-components/text-component/text.component.ts | 7 +++++-- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/core/web-components/web-component.abstract.ts b/src/core/web-components/web-component.abstract.ts index c17e3de..22c5acd 100644 --- a/src/core/web-components/web-component.abstract.ts +++ b/src/core/web-components/web-component.abstract.ts @@ -22,7 +22,7 @@ export abstract class WebComponentAbstract extends HTMLElement { protected addEventListenerToElement( element: Element, eventType: string, - listener: (event: Event) => void + listener: (event: Event) => void, ): void { element.addEventListener(eventType, listener); this.eventListeners.push({ element, eventType, listener }); @@ -46,7 +46,7 @@ export abstract class WebComponentAbstract extends HTMLElement { protected attributeChangedCallback( name?: string, oldValue?: string, - newValue?: string + newValue?: string, ): void { this.render(); } diff --git a/src/features/headless-checkout/headless-checkout.ts b/src/features/headless-checkout/headless-checkout.ts index a8fdcbb..a22f152 100644 --- a/src/features/headless-checkout/headless-checkout.ts +++ b/src/features/headless-checkout/headless-checkout.ts @@ -85,6 +85,8 @@ export class HeadlessCheckout { }, }; + this.formSpy.formWasInit = false; + return this.postMessagesClient.send
(msg, (message) => initFormHandler(message, (args?: unknown) => { if (args) { diff --git a/src/features/headless-checkout/web-components/text-component/text.component.ts b/src/features/headless-checkout/web-components/text-component/text.component.ts index 31bc36a..03f7a4f 100644 --- a/src/features/headless-checkout/web-components/text-component/text.component.ts +++ b/src/features/headless-checkout/web-components/text-component/text.component.ts @@ -48,7 +48,6 @@ export class TextComponent extends SecureComponentAbstract { protected connectedCallback(): void { this.startLoadingComponentHandler(); - if (!this.formSpy.formWasInit) { this.formSpy.listenFormInit(() => this.getConfigFromInputName()); return; @@ -87,7 +86,11 @@ export class TextComponent extends SecureComponentAbstract { }; protected attributeChangedCallback(): void { - this.connectedCallback(); + if (!this.inputName) { + return; + } + + super.attributeChangedCallback(); } protected getHtml(): string {