merchant() || $this->is_card_fields_supported(), CardButtonGateway::ID => fn() => $this->is_mexico_merchant() || !$this->is_card_fields_supported(), GooglePayGateway::ID => fn() => $this->google_pay_available, ApplePayGateway::ID => fn() => $this->apple_pay_available, AxoGateway::ID => fn() => $this->dcc_product_status->is_active() && call_user_func($this->axo_eligible), 'venmo' => fn() => $this->merchant_country === 'US'); } /** * Whether merchant country is mexico. * * @return bool */ private function is_mexico_merchant(): bool { return $this->merchant_country === 'MX'; } /** * Whether Card Fields is supported. It requires also ACDC to be supported. * * @return bool */ private function is_card_fields_supported(): bool { return $this->dcc_product_status->is_active() && call_user_func($this->card_fields_eligible); } /** * Whether Pay With Crypto capability is enabled. * * @return bool */ private function has_pwc_capability(): bool { return $this->merchant_capabilities[FeaturesDefinition::FEATURE_PAY_WITH_CRYPTO] ?? \false; } }