Refactor GooglePay contect handlers to reuse action handlers.

This commit is contained in:
Pedro Silva 2023-09-06 17:54:08 +01:00
parent 318217acb9
commit c6379ca980
No known key found for this signature in database
GPG key ID: E2EE20C0669D24B3
8 changed files with 78 additions and 64 deletions

View file

@ -7,21 +7,21 @@ import MiniCartHandler from "./MiniCartHandler";
class ContextHandlerFactory {
static create(context, buttonConfig, ppcpConfig) {
static create(context, buttonConfig, ppcpConfig, externalActionHandler) {
switch (context) {
case 'product':
return new SingleProductHandler(buttonConfig, ppcpConfig);
return new SingleProductHandler(buttonConfig, ppcpConfig, externalActionHandler);
case 'cart':
return new CartHandler(buttonConfig, ppcpConfig);
return new CartHandler(buttonConfig, ppcpConfig, externalActionHandler);
case 'checkout':
case 'pay-now': // same as checkout
return new CheckoutHandler(buttonConfig, ppcpConfig);
return new CheckoutHandler(buttonConfig, ppcpConfig, externalActionHandler);
case 'mini-cart':
return new MiniCartHandler(buttonConfig, ppcpConfig);
return new MiniCartHandler(buttonConfig, ppcpConfig, externalActionHandler);
case 'cart-block':
return new CartBlockHandler(buttonConfig, ppcpConfig);
return new CartBlockHandler(buttonConfig, ppcpConfig, externalActionHandler);
case 'checkout-block':
return new CheckoutBlockHandler(buttonConfig, ppcpConfig);
return new CheckoutBlockHandler(buttonConfig, ppcpConfig, externalActionHandler);
}
}
}