mirror of
https://github.com/woocommerce/woocommerce-paypal-payments.git
synced 2025-09-06 12:25:15 +08:00
* Fix add fix for Messages loading edge case and a Widget reload event listener.
This commit is contained in:
parent
b25a124ffa
commit
ecbe4a9abf
2 changed files with 15 additions and 1 deletions
|
@ -6,7 +6,6 @@ import {
|
|||
PaymentMethods
|
||||
} from "../Helper/CheckoutMethodState";
|
||||
import BootstrapHelper from "../Helper/BootstrapHelper";
|
||||
import {disable, enable} from "../Helper/ButtonDisabler";
|
||||
|
||||
class CheckoutBootstap {
|
||||
constructor(gateway, renderer, messages, spinner, errorHandler) {
|
||||
|
|
|
@ -9,12 +9,20 @@ class WidgetBuilder {
|
|||
this.buttons = new Map();
|
||||
this.messages = new Map();
|
||||
|
||||
this.renderEventName = 'ppcp-render';
|
||||
|
||||
document.ppcpWidgetBuilderStatus = () => {
|
||||
console.log({
|
||||
buttons: this.buttons,
|
||||
messages: this.messages,
|
||||
});
|
||||
}
|
||||
|
||||
jQuery(document)
|
||||
.off(this.renderEventName)
|
||||
.on(this.renderEventName, () => {
|
||||
this.renderAll();
|
||||
});
|
||||
}
|
||||
|
||||
setPaypal(paypal) {
|
||||
|
@ -84,6 +92,13 @@ class WidgetBuilder {
|
|||
const btn = this.paypal.Messages(entry.options);
|
||||
|
||||
btn.render(entry.wrapper);
|
||||
|
||||
// watchdog to try to handle some strange cases where the wrapper may not be present
|
||||
setTimeout(() => {
|
||||
if (!this.hasRendered(wrapper)) {
|
||||
btn.render(entry.wrapper);
|
||||
}
|
||||
}, 100);
|
||||
}
|
||||
|
||||
renderAllMessages() {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue