2023-08-28 17:19:07 +01:00
|
|
|
import SingleProductHandler from "./SingleProductHandler";
|
|
|
|
import CartHandler from "./CartHandler";
|
|
|
|
import CheckoutHandler from "./CheckoutHandler";
|
|
|
|
import CartBlockHandler from "./CartBlockHandler";
|
|
|
|
import CheckoutBlockHandler from "./CheckoutBlockHandler";
|
2023-08-29 08:19:11 +01:00
|
|
|
import MiniCartHandler from "./MiniCartHandler";
|
2023-10-13 17:57:03 +01:00
|
|
|
import PayNowHandler from "./PayNowHandler";
|
2023-09-21 11:58:51 +01:00
|
|
|
import PreviewHandler from "./PreviewHandler";
|
2023-08-28 17:19:07 +01:00
|
|
|
|
|
|
|
class ContextHandlerFactory {
|
|
|
|
|
2023-09-06 17:54:08 +01:00
|
|
|
static create(context, buttonConfig, ppcpConfig, externalActionHandler) {
|
2023-08-28 17:19:07 +01:00
|
|
|
switch (context) {
|
|
|
|
case 'product':
|
2023-09-06 17:54:08 +01:00
|
|
|
return new SingleProductHandler(buttonConfig, ppcpConfig, externalActionHandler);
|
2023-08-28 17:19:07 +01:00
|
|
|
case 'cart':
|
2023-09-06 17:54:08 +01:00
|
|
|
return new CartHandler(buttonConfig, ppcpConfig, externalActionHandler);
|
2023-08-28 17:19:07 +01:00
|
|
|
case 'checkout':
|
2023-09-06 17:54:08 +01:00
|
|
|
return new CheckoutHandler(buttonConfig, ppcpConfig, externalActionHandler);
|
2023-10-13 17:57:03 +01:00
|
|
|
case 'pay-now':
|
|
|
|
return new PayNowHandler(buttonConfig, ppcpConfig, externalActionHandler);
|
2023-08-28 17:19:07 +01:00
|
|
|
case 'mini-cart':
|
2023-09-06 17:54:08 +01:00
|
|
|
return new MiniCartHandler(buttonConfig, ppcpConfig, externalActionHandler);
|
2023-08-28 17:19:07 +01:00
|
|
|
case 'cart-block':
|
2023-09-06 17:54:08 +01:00
|
|
|
return new CartBlockHandler(buttonConfig, ppcpConfig, externalActionHandler);
|
2023-08-28 17:19:07 +01:00
|
|
|
case 'checkout-block':
|
2023-09-06 17:54:08 +01:00
|
|
|
return new CheckoutBlockHandler(buttonConfig, ppcpConfig, externalActionHandler);
|
2023-09-21 11:58:51 +01:00
|
|
|
case 'preview':
|
|
|
|
return new PreviewHandler(buttonConfig, ppcpConfig, externalActionHandler);
|
2023-08-28 17:19:07 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
export default ContextHandlerFactory;
|