woocommerce-paypal-payments/modules.local/ppcp-button/resources/js/modules/Renderer.js

39 lines
873 B
JavaScript
Raw Normal View History

2020-04-02 08:38:00 +03:00
class Renderer {
constructor(config) {
this.config = config;
}
render(buttonConfig) {
const script = document.createElement('script');
if (typeof paypal !== 'object') {
script.setAttribute('src', this.config.url);
script.addEventListener('load', (event) => {
this.renderButtons(buttonConfig);
})
document.body.append(script);
return;
}
this.renderButtons(buttonConfig);
}
renderButtons(buttonConfig) {
paypal.Buttons(
buttonConfig
).render(this.config.wrapper);
}
hideButtons() {
document.querySelector(this.config.wrapper).style.display = 'none';
}
showButtons() {
document.querySelector(this.config.wrapper).style.display = 'block';
}
}
export default Renderer;