1515use WooCommerce \PayPalCommerce \StoreSync \Helper \AgenticCartBuilder ;
1616use WooCommerce \PayPalCommerce \StoreSync \Helper \ShippingOptionsBuilder ;
1717use WooCommerce \PayPalCommerce \StoreSync \Schema \PayPalCart ;
18+ use WooCommerce \PayPalCommerce \StoreSync \Config \StoreCurrencyValue ;
1819
1920class ResponseFactory {
2021
2122 private AgenticCartBuilder $ cart_builder ;
2223 private AppliedCouponsBuilder $ applied_coupons_builder ;
2324 private ShippingOptionsBuilder $ shipping_options_builder ;
25+ private StoreCurrencyValue $ store_currency ;
2426
25- /**
26- * Constructor.
27- *
28- * @param AgenticCartBuilder $cart_builder Cart builder service.
29- * @param AppliedCouponsBuilder $applied_coupons_builder Applied coupons builder service.
30- * @param ShippingOptionsBuilder $shipping_options_builder Shipping options builder service.
31- */
3227 public function __construct (
3328 AgenticCartBuilder $ cart_builder ,
3429 AppliedCouponsBuilder $ applied_coupons_builder ,
35- ShippingOptionsBuilder $ shipping_options_builder
30+ ShippingOptionsBuilder $ shipping_options_builder ,
31+ StoreCurrencyValue $ store_currency
3632 ) {
3733 $ this ->cart_builder = $ cart_builder ;
3834 $ this ->applied_coupons_builder = $ applied_coupons_builder ;
3935 $ this ->shipping_options_builder = $ shipping_options_builder ;
36+ $ this ->store_currency = $ store_currency ;
4037 }
4138
4239 /**
@@ -52,6 +49,7 @@ public function new_cart( PayPalCart $cart, string $cart_id, string $token ): Ca
5249
5350 return CartResponse::create_new ( $ cart , $ cart_id , $ token )
5451 ->wc_cart ( $ wc_cart )
52+ ->store_currency ( $ this ->store_currency )
5553 ->applied_coupons ( $ this ->build_applied_coupons ( $ cart ) )
5654 ->shipping_options ( $ this ->shipping_options_builder ->build ( $ wc_cart ) );
5755 }
@@ -69,6 +67,7 @@ public function from_order( WC_Order $order, PayPalCart $cart, string $cart_id )
6967
7068 return CartResponse::create_completed ( $ cart , $ cart_id , $ order )
7169 ->wc_cart ( $ wc_cart )
70+ ->store_currency ( $ this ->store_currency )
7271 ->applied_coupons ( $ this ->build_applied_coupons ( $ cart ) )
7372 ->shipping_options ( $ this ->shipping_options_builder ->build ( $ wc_cart ) );
7473 }
@@ -85,6 +84,7 @@ public function from_cart( PayPalCart $cart, string $cart_id ): CartResponse {
8584
8685 return CartResponse::create ( $ cart , $ cart_id )
8786 ->wc_cart ( $ wc_cart )
87+ ->store_currency ( $ this ->store_currency )
8888 ->applied_coupons ( $ this ->build_applied_coupons ( $ cart ) )
8989 ->shipping_options ( $ this ->shipping_options_builder ->build ( $ wc_cart ) );
9090 }
0 commit comments