mirror of
https://github.com/woocommerce/woocommerce-paypal-payments.git
synced 2025-09-05 08:59:14 +08:00
65 lines
1.5 KiB
JavaScript
65 lines
1.5 KiB
JavaScript
import SingleProductHandler from './SingleProductHandler';
|
|
import CartHandler from './CartHandler';
|
|
import CheckoutHandler from './CheckoutHandler';
|
|
import CartBlockHandler from './CartBlockHandler';
|
|
import CheckoutBlockHandler from './CheckoutBlockHandler';
|
|
import MiniCartHandler from './MiniCartHandler';
|
|
import PayNowHandler from './PayNowHandler';
|
|
import PreviewHandler from './PreviewHandler';
|
|
|
|
class ContextHandlerFactory {
|
|
static create( context, buttonConfig, ppcpConfig, externalActionHandler ) {
|
|
switch ( context ) {
|
|
case 'product':
|
|
return new SingleProductHandler(
|
|
buttonConfig,
|
|
ppcpConfig,
|
|
externalActionHandler
|
|
);
|
|
case 'cart':
|
|
return new CartHandler(
|
|
buttonConfig,
|
|
ppcpConfig,
|
|
externalActionHandler
|
|
);
|
|
case 'checkout':
|
|
return new CheckoutHandler(
|
|
buttonConfig,
|
|
ppcpConfig,
|
|
externalActionHandler
|
|
);
|
|
case 'pay-now':
|
|
return new PayNowHandler(
|
|
buttonConfig,
|
|
ppcpConfig,
|
|
externalActionHandler
|
|
);
|
|
case 'mini-cart':
|
|
return new MiniCartHandler(
|
|
buttonConfig,
|
|
ppcpConfig,
|
|
externalActionHandler
|
|
);
|
|
case 'cart-block':
|
|
return new CartBlockHandler(
|
|
buttonConfig,
|
|
ppcpConfig,
|
|
externalActionHandler
|
|
);
|
|
case 'checkout-block':
|
|
return new CheckoutBlockHandler(
|
|
buttonConfig,
|
|
ppcpConfig,
|
|
externalActionHandler
|
|
);
|
|
case 'preview':
|
|
return new PreviewHandler(
|
|
buttonConfig,
|
|
ppcpConfig,
|
|
externalActionHandler
|
|
);
|
|
}
|
|
}
|
|
}
|
|
|
|
export default ContextHandlerFactory;
|