woocommerce-paypal-payments/modules.local/ppcp-button/resources/js/modules/Renderer/Renderer.js
2020-04-30 15:28:48 +03:00

34 lines
No EOL
875 B
JavaScript

class Renderer {
constructor(creditCardRenderer, defaultConfig) {
this.defaultConfig = defaultConfig;
this.creditCardRenderer = creditCardRenderer;
}
render(wrapper, hostedFieldsWrapper, contextConfig) {
if (this.isAlreadyRendered(wrapper)) {
return;
}
const style = this.defaultConfig.button.style;
paypal.Buttons({
style,
...contextConfig,
}).render(wrapper);
this.creditCardRenderer.render(hostedFieldsWrapper, contextConfig);
}
isAlreadyRendered(wrapper) {
return document.querySelector(wrapper).hasChildNodes();
}
hideButtons(element) {
document.querySelector(element).style.display = 'none';
}
showButtons(element) {
document.querySelector(element).style.display = 'block';
}
}
export default Renderer;