<?xml version="1.0"?>
<!--
  ~ Copyright Magmodules.eu. All rights reserved.
  ~ See COPYING.txt for license details.
  -->

<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
    <type name="Magento\QuoteGraphQl\Model\Cart\Payment\AdditionalDataProviderPool">
        <arguments>
            <argument name="dataProviders" xsi:type="array">
                <item name="mollie_methods_applepay" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_alma" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_bancomatpay" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_bancontact" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_banktransfer" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_belfius" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_billie" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_bizum" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_blik" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_creditcard" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_directdebit" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_eps" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_giftcard" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_googlepay" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_ideal" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_in3" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_kbc" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_klarna" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_klarnapaylater" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_klarnapaynow" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_klarnasliceit" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_voucher" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_mbway" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_mobilepay" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_multibanco" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_mybank" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_paybybank" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_paypal" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_paysafecard" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_pointofsale" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_payconiq" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_przelewy24" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_riverty" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_satispay" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_sofort" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_swish" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_trustly" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_twint" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
                <item name="mollie_methods_vipps" xsi:type="object">Mollie\Payment\GraphQL\DataProvider</item>
            </argument>
        </arguments>
    </type>

    <type name="Magento\QuoteGraphQl\Model\Resolver\PlaceOrder">
        <plugin name="mollie_set_the_redirect_url" type="Mollie\Payment\GraphQL\Plugin\PlaceOrder\SetTheRedirectUrl" />
    </type>

    <type name="Magento\Quote\Api\PaymentMethodManagementInterface">
        <plugin name="mollie_hide_non_graphql_methods" type="Mollie\Payment\GraphQL\Plugin\Quote\PaymentMethodManagement\HideNonGrahpQlMethods" />
    </type>
</config>
