Fatal error: Uncaught Magento\Framework\Exception\LocalizedException: More than one node matching the query: /config/type[@name='Magento\Framework\Console\CommandList']/arguments, Xml is: <?xml version="1.0"?> <!-- /** * Copyright © Magento, Inc. 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"> <preference for="Magento\Store\Api\StoreRepositoryInterface" type="Magento\Store\Model\StoreRepository"/> <preference for="Magento\Store\Api\GroupRepositoryInterface" type="Magento\Store\Model\GroupRepository"/> <preference for="Magento\Store\Api\WebsiteRepositoryInterface" type="Magento\Store\Model\WebsiteRepository"/> <preference for="Magento\Store\Api\Data\StoreInterface" type="Magento\Store\Model\Store"/> <preference for="Magento\Store\Api\Data\GroupInterface" type="Magento\Store\Model\Group"/> <preference for="Magento\Store\Api\Data\WebsiteInterface" type="Magento\Store\Model\Website"/> <preference for="Magento\Store\Api\StoreWebsiteRelationInterface" type="Magento\Store\Model\StoreManager"/> <preference for="Magento\Store\Api\StoreResolverInterface" type="Magento\Store\Model\StoreResolver"/> <preference for="Magento\Framework\App\Request\PathInfoProcessorInterface" type="Magento\Backend\App\Request\PathInfoProcessor"/> <preference for="Magento\Store\Model\StoreManagerInterface" type="Magento\Store\Model\StoreManager"/> <preference for="Magento\Framework\App\Response\RedirectInterface" type="Magento\Store\App\Response\Redirect"/> <preference for="Magento\Store\Api\StoreCookieManagerInterface" type="Magento\Store\Model\StoreCookieManager"/> <preference for="Magento\Store\Api\StoreConfigManagerInterface" type="Magento\Store\Model\Service\StoreConfigManager"/> <preference for="Magento\Store\Api\Data\StoreConfigInterface" type="Magento\Store\Model\Data\StoreConfig"/> <preference for="Magento\Store\Api\StoreManagementInterface" type="Magento\Store\Model\StoreManagement"/> <preference for="Magento\Store\Api\WebsiteManagementInterface" type="Magento\Store\Model\WebsiteManagement"/> <preference for="Magento\Framework\App\ScopeFallbackResolverInterface" type="Magento\Store\Model\ScopeFallbackResolver"/> <preference for="Magento\Framework\App\ScopeTreeProviderInterface" type="Magento\Store\Model\ScopeTreeProvider"/> <preference for="Magento\Framework\App\ScopeValidatorInterface" type="Magento\Store\Model\ScopeValidator"/> <preference for="Magento\Store\Model\StoreSwitcherInterface" type="Magento\Store\Model\StoreSwitcher"/> <preference for="Magento\Store\Model\StoreSwitcher\RedirectDataPreprocessorInterface" type="Magento\Store\Model\StoreSwitcher\RedirectDataPreprocessorComposite"/> <preference for="Magento\Store\Model\StoreSwitcher\RedirectDataPostprocessorInterface" type="Magento\Store\Model\StoreSwitcher\RedirectDataPostprocessorComposite"/> <preference for="Magento\Store\Model\StoreSwitcher\RedirectDataSerializerInterface" type="Magento\Store\Model\StoreSwitcher\RedirectDataCacheSerializer"/> <preference for="Magento\Store\Model\StoreSwitcher\ContextInterface" type="Magento\Store\Model\StoreSwitcher\Context"/> <preference for="Magento\Store\Model\StoreSwitcher\RedirectDataInterface" type="Magento\Store\Model\StoreSwitcher\RedirectData"/> <type name="Magento\Framework\App\Http\Context"> <arguments> <argument name="default" xsi:type="array"> <item name="website" xsi:type="string">0</item> <item name="customer_group" xsi:type="const">Magento\Customer\Api\Data\GroupInterface::NOT_LOGGED_IN_ID</item></argument> </arguments> </type> <type name="Magento\Framework\App\Response\Http"> <plugin name="genericHeaderPlugin" type="Magento\Framework\App\Response\HeaderManager"/> </type> <type name="Magento\Framework\App\Response\HeaderProvider\XFrameOptions"> <arguments> <argument name="xFrameOpt" xsi:type="init_parameter">Magento\Framework\App\Response\HeaderProvider\XFrameOptions::DEPLOYMENT_CONFIG_X_FRAME_OPT</argument> </arguments> </type> <type name="Magento\Framework\View\Element\Template\File\Validator"> <arguments> <argument name="scope" xsi:type="string">store</argument> </arguments> </type> <type name="Magento\Store\Model\Resolver\Store"> <arguments> <argument name="storeManager" xsi:type="object">Magento\Store\Model\StoreManagerInterface\Proxy</argument> </arguments> </type> <type name="Magento\Store\Model\Resolver\Group"> <arguments> <argument name="storeManager" xsi:type="object">Magento\Store\Model\StoreManagerInterface\Proxy</argument> </arguments> </type> <type name="Magento\Store\Model\Resolver\Website"> <arguments> <argument name="storeManager" xsi:type="object">Magento\Store\Model\StoreManagerInterface\Proxy</argument> </arguments> </type> <preference for="Magento\Framework\App\ScopeResolverInterface" type="Magento\Store\Model\Resolver\Store"/> <preference for="Magento\Framework\App\Router\PathConfigInterface" type="Magento\Store\Model\PathConfig"/> <type name="Magento\Framework\App\ActionInterface"> <plugin name="storeCheck" type="Magento\Store\App\Action\Plugin\StoreCheck"/> <plugin name="designLoader" type="Magento\Theme\Plugin\LoadDesignPlugin"/><plugin name="customerNotification" type="Magento\Customer\Model\Plugin\CustomerNotification"/></type> <type name="Magento\Framework\Url\SecurityInfo"> <plugin name="storeUrlSecurityInfo" type="Magento\Store\Url\Plugin\SecurityInfo"/> </type> <type name="Magento\Framework\Url\RouteParamsResolver"> <plugin name="storeUrlRouteParamsResolver" type="Magento\Store\Url\Plugin\RouteParamsResolver"/> </type> <type name="Magento\Store\Model\ResourceModel\Website\Collection"> <arguments> <argument name="fetchStrategy" xsi:type="object">Magento\Store\Model\ResourceModel\Website\Collection\FetchStrategy</argument> </arguments> </type> <type name="Magento\Store\Model\ResourceModel\Group\Collection"> <arguments> <argument name="fetchStrategy" xsi:type="object">Magento\Store\Model\ResourceModel\Group\Collection\FetchStrategy</argument> </arguments> </type> <type name="Magento\Store\Model\ResourceModel\Store\Collection"> <arguments> <argument name="fetchStrategy" xsi:type="object">Magento\Store\Model\ResourceModel\Store\Collection\FetchStrategy</argument> </arguments> </type> <type name="Magento\Store\Model\Store"> <arguments> <argument name="session" xsi:type="object" shared="false">Magento\Framework\Session\Generic\Proxy</argument> <argument name="isCustomEntryPoint" xsi:type="init_parameter">Magento\Store\Model\Store::CUSTOM_ENTRY_POINT_PARAM</argument> <argument name="url" xsi:type="object" shared="false">Magento\Framework\UrlInterface</argument> </arguments> <plugin name="themeDesignConfigGridIndexerStore" type="Magento\Theme\Model\Indexer\Design\Config\Plugin\Store"/></type> <type name="Magento\Store\Model\StoreManager"> <arguments> <argument name="cache" xsi:type="object">Magento\Framework\App\Cache\Type\Config</argument> </arguments> </type> <type name="Magento\Store\Model\StoreResolver"> <arguments> <argument name="runMode" xsi:type="init_parameter">Magento\Store\Model\StoreManager::PARAM_RUN_TYPE</argument> <argument name="scopeCode" xsi:type="init_parameter">Magento\Store\Model\StoreManager::PARAM_RUN_CODE</argument> </arguments> <plugin name="staging_preview_allowed_stores_check_bypass" type="Magento\Staging\Plugin\Store\Model\StoreResolver"/></type> <type name="Magento\Store\Model\StoresData"> <arguments> <argument name="cache" xsi:type="object">Magento\Framework\App\Cache\Type\Config</argument> </arguments> </type> <type name="Magento\Store\App\FrontController\Plugin\DefaultStore"> <arguments> <argument name="runMode" xsi:type="init_parameter">Magento\Store\Model\StoreManager::PARAM_RUN_TYPE</argument> <argument name="scopeCode" xsi:type="init_parameter">Magento\Store\Model\StoreManager::PARAM_RUN_CODE</argument> </arguments> </type> <virtualType name="Magento\Store\Model\ResourceModel\Group\Collection\FetchStrategy" type="Magento\Framework\Data\Collection\Db\FetchStrategy\Cache"> <arguments> <argument name="cache" xsi:type="object">Magento\Framework\App\Cache\Type\Collection</argument> <argument name="cacheIdPrefix" xsi:type="string">app_</argument> <argument name="cacheTags" xsi:type="array"> <item name="storeTag" xsi:type="const">Magento\Store\Model\Store::CACHE_TAG</item> <item name="configTag" xsi:type="const">Magento\Framework\App\Config::CACHE_TAG</item> </argument> <argument name="cacheLifetime" xsi:type="boolean">false</argument> </arguments> </virtualType> <virtualType name="Magento\Store\Model\ResourceModel\Store\Collection\FetchStrategy" type="Magento\Framework\Data\Collection\Db\FetchStrategy\Cache"> <arguments> <argument name="cache" xsi:type="object">Magento\Framework\App\Cache\Type\Collection</argument> <argument name="cacheIdPrefix" xsi:type="string">app_</argument> <argument name="cacheTags" xsi:type="array"> <item name="storeTag" xsi:type="const">Magento\Store\Model\Store::CACHE_TAG</item> <item name="configTag" xsi:type="const">Magento\Framework\App\Config::CACHE_TAG</item> </argument> <argument name="cacheLifetime" xsi:type="boolean">false</argument> </arguments> </virtualType> <virtualType name="Magento\Store\Model\ResourceModel\Website\Collection\FetchStrategy" type="Magento\Framework\Data\Collection\Db\FetchStrategy\Cache"> <arguments> <argument name="cache" xsi:type="object">Magento\Framework\App\Cache\Type\Collection</argument> <argument name="cacheIdPrefix" xsi:type="string">app_</argument> <argument name="cacheTags" xsi:type="array"> <item name="storeTag" xsi:type="const">Magento\Store\Model\Website::CACHE_TAG</item> <item name="configTag" xsi:type="const">Magento\Framework\App\Config::CACHE_TAG</item> </argument> <argument name="cacheLifetime" xsi:type="boolean">false</argument> </arguments> </virtualType> <type name="Magento\Store\Model\Config\Placeholder"> <arguments> <argument name="request" xsi:type="object">Magento\Framework\App\Request\Http\Proxy</argument> <argument name="urlPaths" xsi:type="array"> <item name="unsecureBaseUrl" xsi:type="string">web/unsecure/base_url</item> <item name="secureBaseUrl" xsi:type="string">web/secure/base_url</item> </argument> <argument name="urlPlaceholder" xsi:type="string">{{base_url}}</argument> </arguments> </type> <type name="Magento\Framework\Module\Output\Config"> <arguments> <argument name="scopeType" xsi:type="const">Magento\Store\Model\ScopeInterface::SCOPE_STORE</argument> </arguments> </type> <type name="Magento\Framework\Session\Config"> <arguments> <argument name="scopeType" xsi:type="const">Magento\Store\Model\ScopeInterface::SCOPE_STORE</argument> </arguments> </type> <type name="Magento\Framework\Session\SessionMaxSizeConfig"> <arguments> <argument name="scopeType" xsi:type="const">Magento\Store\Model\ScopeInterface::SCOPE_STORE</argument> </arguments> </type> <type name="Magento\Framework\Session\SidResolver"> <arguments> <argument name="scopeType" xsi:type="const">Magento\Store\Model\ScopeInterface::SCOPE_STORE</argument> </arguments> <plugin name="pagebuilder_preview_sid_resolving" type="Magento\PageBuilder\Plugin\Framework\Session\SidResolver"/></type> <type name="Magento\Framework\View\Layout\Element\Layout"> <arguments> <argument name="scopeType" xsi:type="const">Magento\Store\Model\ScopeInterface::SCOPE_STORE</argument> </arguments> </type> <type name="Magento\Framework\View\DesignExceptions"> <arguments> <argument name="exceptionConfigPath" xsi:type="string">design/theme/ua_regexp</argument> <argument name="scopeType" xsi:type="const">Magento\Store\Model\ScopeInterface::SCOPE_STORE</argument> </arguments> </type> <type name="Magento\Framework\View\TemplateEngineFactory"> <arguments> <argument name="engines" xsi:type="array"> <item name="phtml" xsi:type="string">Magento\Framework\View\TemplateEngine\Php</item> <item name="xhtml" xsi:type="string">Magento\Framework\View\TemplateEngine\Xhtml</item></argument> </arguments> </type> <type name="Magento\Framework\App\Router\NoRouteHandlerList"> <arguments> <argument name="handlerClassesList" xsi:type="array"> <item name="default" xsi:type="array"> <item name="class" xsi:type="string">Magento\Framework\App\Router\NoRouteHandler</item> <item name="sortOrder" xsi:type="string">100</item> </item> <item name="backend" xsi:type="array"> <item name="class" xsi:type="string">Magento\Backend\App\Router\NoRouteHandler</item> <item name="sortOrder" xsi:type="string">10</item> </item></argument> </arguments> </type> <type name="Magento\Framework\App\AreaList"> <arguments> <argument name="areas" xsi:type="array"> <item name="frontend" xsi:type="array"> <item name="frontName" xsi:type="null"/> <item name="router" xsi:type="string">standard</item> </item> <item name="adminhtml" xsi:type="array"> <item name="frontNameResolver" xsi:type="string">Magento\Backend\App\Area\FrontNameResolver</item> <item name="router" xsi:type="string">admin</item> </item><item name="graphql" xsi:type="array"> <item name="frontName" xsi:type="string">graphql</item> </item><item name="crontab" xsi:type="null"/><item name="webapi_rest" xsi:type="array"> <item name="frontName" xsi:type="string">rest</item> </item><item name="webapi_soap" xsi:type="array"> <item name="frontName" xsi:type="string">soap</item> </item></argument> <argument name="default" xsi:type="string">frontend</argument> </arguments> </type> <type name="Magento\Framework\App\Config\Initial\Converter"> <arguments> <argument name="nodeMap" xsi:type="array"> <item name="default" xsi:type="string">/config/default</item> <item name="stores" xsi:type="string">/config/stores</item> <item name="websites" xsi:type="string">/config/websites</item> </argument> </arguments> <plugin name="cron_system_config_initial_converter_plugin" type="Magento\Cron\Model\System\Config\Initial\Converter"/></type> <type name="Magento\Framework\Reflection\MethodsMap"> <arguments> <argument name="cache" xsi:type="object">Magento\Framework\App\Cache\Type\Reflection</argument> </arguments> </type> <type name="Magento\Framework\Url"> <arguments> <argument name="scopeType" xsi:type="const">Magento\Store\Model\ScopeInterface::SCOPE_STORE</argument> </arguments> </type> <type name="Magento\Framework\App\ScopeResolverPool"> <arguments> <argument name="scopeResolvers" xsi:type="array"> <item name="default" xsi:type="object">Magento\Framework\App\ScopeResolver</item> <item name="store" xsi:type="object">Magento\Store\Model\Resolver\Store</item> <item name="stores" xsi:type="object">Magento\Store\Model\Resolver\Store</item> <item name="group" xsi:type="object">Magento\Store\Model\Resolver\Group</item> <item name="website" xsi:type="object">Magento\Store\Model\Resolver\Website</item> <item name="websites" xsi:type="object">Magento\Store\Model\Resolver\Website</item> </argument> </arguments> </type> <type name="Magento\Framework\Model\ActionValidator\RemoveAction"> <arguments> <argument name="protectedModels" xsi:type="array"> <item name="store" xsi:type="string">Magento\Store\Model\Store</item> <item name="website" xsi:type="string">Magento\Store\Model\Website</item> <item name="storeGroup" xsi:type="string">Magento\Store\Model\Group</item> <item name="customer" xsi:type="string">Magento\Customer\Model\Customer</item><item name="catalogCategory" xsi:type="string">Magento\Catalog\Model\Category</item><item name="catalogProduct" xsi:type="string">Magento\Catalog\Model\Product</item><item name="salesOrder" xsi:type="string">Magento\Sales\Model\Order</item><item name="salesOrderCreditmemo" xsi:type="string">Magento\Sales\Model\Order\Creditmemo</item><item name="salesOrderInvoice" xsi:type="string">Magento\Sales\Model\Order\Invoice</item><item name="salesOrderShipment" xsi:type="string">Magento\Sales\Model\Order\Shipment</item><item name="review" xsi:type="string">Magento\Review\Model\Review</item></argument> </arguments> </type> <type name="Magento\Framework\Module\Setup\Migration"> <arguments> <argument name="confPathToMapFile" xsi:type="string">app/etc/aliases_to_classes_map.json</argument> <argument name="compositeModules" xsi:type="array"> <item name="importexport" xsi:type="string">Magento_ImportExport</item> <item name="catalogrule" xsi:type="string">Magento_CatalogRule</item><item name="cataloginventory" xsi:type="string">Magento_CatalogInventory</item><item name="search" xsi:type="string">Magento_Search</item><item name="magento_salesarchive" xsi:type="string">Magento_SalesArchive</item><item name="catalogsearch" xsi:type="string">Magento_CatalogSearch</item><item name="salesrule" xsi:type="string">Magento_SalesRule</item><item name="magento_giftcard" xsi:type="string">Magento_GiftCard</item><item name="magento_giftregistry" xsi:type="string">Magento_GiftRegistry</item><item name="currencysymbol" xsi:type="string">Magento_CurrencySymbol</item><item name="magento_customerbalance" xsi:type="string">Magento_CustomerBalance</item><item name="magento_customersegment" xsi:type="string">Magento_CustomerSegment</item><item name="productalert" xsi:type="string">Magento_ProductAlert</item><item name="magento_targetrule" xsi:type="string">Magento_TargetRule</item><item name="magento_websiterestriction" xsi:type="string">Magento_WebsiteRestriction</item><item name="magento_giftcardaccount" xsi:type="string">Magento_GiftCardAccount</item><item name="magento_catalogevent" xsi:type="string">Magento_CatalogEvent</item><item name="giftmessage" xsi:type="string">Magento_GiftMessage</item><item name="magento_giftwrapping" xsi:type="string">Magento_GiftWrapping</item><item name="googleanalytics" xsi:type="string">Magento_GoogleAnalytics</item><item name="googlegtag" xsi:type="string">Magento_GoogleGtag</item><item name="magento_catalogpermissions" xsi:type="string">Magento_CatalogPermissions</item><item name="magento_admingws" xsi:type="string">Magento_AdminGws</item><item name="magento_pricepermissions" xsi:type="string">Magento_PricePermissions</item><item name="magento_promotionpermissions" xsi:type="string">Magento_PromotionPermissions</item><item name="magento_scheduledimportexport" xsi:type="string">Magento_ScheduledImportExport</item></argument></arguments> </type> <type name="Magento\Framework\Module\Setup\MigrationData"> <arguments> <argument name="data" xsi:type="array"> <item name="plain" xsi:type="string"><![CDATA[/^(?P<alias>[a-z]+[_a-z\d]*?\/[a-z]+[_a-z\d]*?)::.*?$/sui]]></item> <item name="wiki" xsi:type="string"><![CDATA[/{{(block|widget).*?(class|type)=\"(?P<alias>[a-z]+[_a-z\d]*?\/[a-z]+[_a-z\d]*?)\".*?}}/sui]]></item> <item name="xml" xsi:type="string"><![CDATA[/<block.*?class=\"(?P<alias>[a-z]+[_a-z\d]*?\/[a-z]+[_a-z\d]*?)\".*?>/sui]]></item> <item name="serialized" xsi:type="string"><![CDATA[#(?P<string>s:\d+:"(?P<alias>[a-z]+[_a-z\d]*?/[a-z]+[_a-z\d]*?)")#sui]]></item> </argument> </arguments> </type> <type name="Magento\Framework\App\Helper\Context"> <arguments> <argument name="urlBuilder" xsi:type="object">Magento\Framework\UrlInterface</argument> <argument name="httpRequest" xsi:type="object">Magento\Framework\App\Request\Http\Proxy</argument> </arguments> </type> <type name="Magento\Framework\App\FrontController"> <plugin name="install" type="Magento\Framework\Module\Plugin\DbStatusValidator" sortOrder="40"/> <plugin name="storeCookieValidate" type="Magento\Store\Model\Plugin\StoreCookie" sortOrder="10"/> </type> <type name="Magento\Store\Model\Plugin\StoreCookie"> <arguments> <argument name="storeManager" xsi:type="object">Magento\Store\Model\StoreManagerInterface\Proxy</argument> </arguments> </type> <type name="Magento\Framework\Module\Plugin\DbStatusValidator"> <arguments> <argument name="cache" xsi:type="object">Magento\Framework\App\Cache\Type\Config</argument> </arguments> </type> <type name="Magento\Framework\Stdlib\DateTime\Timezone"> <arguments> <argument name="defaultTimezonePath" xsi:type="const">Magento\Directory\Helper\Data::XML_PATH_DEFAULT_TIMEZONE</argument> <argument name="scopeType" xsi:type="const">Magento\Store\Model\ScopeInterface::SCOPE_STORE</argument> </arguments> <plugin name="staging_datetime_timezone_bypass" type="Magento\Staging\Plugin\DateTime\Timezone"/></type> <type name="Magento\Framework\Locale\Resolver"> <arguments> <argument name="defaultLocalePath" xsi:type="const">Magento\Directory\Helper\Data::XML_PATH_DEFAULT_LOCALE</argument> <argument name="scopeType" xsi:type="const">Magento\Store\Model\ScopeInterface::SCOPE_STORE</argument> </arguments> </type> <type name="Magento\Framework\App\Config\Initial\SchemaLocator"> <arguments> <argument name="moduleName" xsi:type="string">Magento_Store</argument> </arguments> </type> <type name="Magento\Framework\DB\Helper"> <arguments> <argument name="modulePrefix" xsi:type="string">store</argument> </arguments> </type> <type name="Magento\Framework\App\Response\HeaderManager"> <arguments> <argument name="headerProviderList" xsi:type="array"> <item name="HSTSHeader" xsi:type="object">Magento\Store\Model\HeaderProvider\Hsts</item> <item name="upgrade-insecure-requests" xsi:type="object">Magento\Store\Model\HeaderProvider\UpgradeInsecure</item> <item name="x-content-type-options" xsi:type="object">Magento\Framework\App\Response\HeaderProvider\XContentTypeOptions</item> <item name="x-xss-protection" xsi:type="object">Magento\Framework\App\Response\HeaderProvider\XssProtection</item> <item name="x-frame-options" xsi:type="object">Magento\Framework\App\Response\HeaderProvider\XFrameOptions</item></argument> </arguments> </type> <virtualType name="systemConfigPostProcessorComposite" type="Magento\Framework\App\Config\PostProcessorComposite"> <arguments> <argument name="processors" xsi:type="array"> <item name="placeholder" xsi:type="object">Magento\Store\Model\Config\Processor\Placeholder</item> <item name="metadata" xsi:type="object">Magento\Framework\App\Config\MetadataConfigTypeProcessor</item></argument> </arguments> </virtualType> <type name="Magento\Framework\App\Config"> <arguments> <argument name="types" xsi:type="array"> <item name="scopes" xsi:type="object">Magento\Store\App\Config\Type\Scopes</item> <item name="system" xsi:type="object">Magento\Config\App\Config\Type\System</item><item name="i18n" xsi:type="object">Magento\Translation\App\Config\Type\Translation</item></argument> </arguments> </type> <type name="Magento\Store\App\Config\Type\Scopes"> <arguments> <argument name="source" xsi:type="object">scopesConfigSourceAggregatedProxy</argument> </arguments> </type> <virtualType name="scopesConfigSourceAggregatedProxy" type="Magento\Framework\App\Config\ConfigSourceAggregated\Proxy"> <arguments> <argument name="instanceName" xsi:type="string">scopesConfigSourceAggregated</argument> </arguments> </virtualType> <virtualType name="scopesConfigSourceAggregated" type="Magento\Framework\App\Config\ConfigSourceAggregated"> <arguments> <argument name="sources" xsi:type="array"> <item name="initial" xsi:type="array"> <item name="source" xsi:type="object">scopesConfigInitialDataProvider</item> <item name="sortOrder" xsi:type="string">10</item> </item> <item name="runtime" xsi:type="array"> <item name="source" xsi:type="object">Magento\Store\App\Config\Source\RuntimeConfigSource</item> <item name="sortOrder" xsi:type="string">0</item> </item> </argument> </arguments> </virtualType> <virtualType name="scopesConfigInitialDataProvider" type="Magento\Store\App\Config\Source\InitialConfigSource"> <arguments> <argument name="reader" xsi:type="object">Magento\Framework\App\DeploymentConfig\Reader</argument> <argument name="configType" xsi:type="const">Magento\Store\App\Config\Type\Scopes::CONFIG_TYPE</argument> </arguments> </virtualType> <type name="Magento\Deploy\Console\Command\App\ApplicationDumpCommand"> <arguments> <argument name="sources" xsi:type="array"> <item name="scopes" xsi:type="array"> <item name="source" xsi:type="object">scopesConfigSourceAggregated</item> <item name="namespace" xsi:type="const">Magento\Store\App\Config\Type\Scopes::CONFIG_TYPE</item> </item> <item name="themes" xsi:type="array"> <item name="source" xsi:type="object">Magento\Theme\Model\Source\InitialThemeSource</item> <item name="namespace" xsi:type="string">themes</item> </item><item name="system" xsi:type="array"> <item name="source" xsi:type="object">appDumpConfigSystemSource</item> <item name="namespace" xsi:type="const">Magento\Config\App\Config\Type\System::CONFIG_TYPE</item> <item name="comment" xsi:type="object">Magento\Config\Model\Config\Export\Comment</item> </item><item name="system_env" xsi:type="array"> <item name="source" xsi:type="object">appDumpEnvSystemSource</item> <item name="namespace" xsi:type="const">Magento\Config\App\Config\Type\System::CONFIG_TYPE</item> <item name="pool" xsi:type="const">Magento\Framework\Config\File\ConfigFilePool::APP_ENV</item> </item><item name="i18n" xsi:type="array"> <item name="source" xsi:type="object">Magento\Translation\Model\Source\InitialTranslationSource</item> <item name="namespace" xsi:type="const">Magento\Translation\App\Config\Type\Translation::CONFIG_TYPE</item> </item></argument> </arguments> </type> <type name="Magento\Framework\Console\CommandListInterface"> <arguments> <argument name="commands" xsi:type="array"> <item name="commandStoreList" xsi:type="object">Magento\Store\Console\Command\StoreListCommand</item> <item name="commandWebsiteList" xsi:type="object">Magento\Store\Console\Command\WebsiteListCommand</item> <item name="theme_uninstall" xsi:type="object">Magento\Theme\Console\Command\ThemeUninstallCommand</item><item name="upgradeHashAlgorithmCommand" xsi:type="object">Magento\Customer\Console\Command\UpgradeHashAlgorithmCommand</item><item name="info" xsi:type="object">Magento\Indexer\Console\Command\IndexerInfoCommand</item><item name="reindex" xsi:type="object">Magento\Indexer\Console\Command\IndexerReindexCommand</item><item name="set-mode" xsi:type="object">Magento\Indexer\Console\Command\IndexerSetModeCommand</item><item name="show-mode" xsi:type="object">Magento\Indexer\Console\Command\IndexerShowModeCommand</item><item name="status" xsi:type="object">Magento\Indexer\Console\Command\IndexerStatusCommand</item><item name="reset" xsi:type="object">Magento\Indexer\Console\Command\IndexerResetStateCommand</item><item name="set-dimensions-mode" xsi:type="object">Magento\Indexer\Console\Command\IndexerSetDimensionsModeCommand</item><item name="show-dimensions-mode" xsi:type="object">Magento\Indexer\Console\Command\IndexerShowDimensionsModeCommand</item><item name="cacheEnableCommand" xsi:type="object">Magento\Backend\Console\Command\CacheEnableCommand</item><item name="cacheDisableCommand" xsi:type="object">Magento\Backend\Console\Command\CacheDisableCommand</item><item name="cacheFlushCommand" xsi:type="object">Magento\Backend\Console\Command\CacheFlushCommand</item><item name="cacheCleanCommand" xsi:type="object">Magento\Backend\Console\Command\CacheCleanCommand</item><item name="cacheStatusCommand" xsi:type="object">Magento\Backend\Console\Command\CacheStatusCommand</item><item name="maintenanceAllowIps" xsi:type="object">Magento\Backend\Console\Command\MaintenanceAllowIpsCommand</item><item name="maintenanceDisable" xsi:type="object">Magento\Backend\Console\Command\MaintenanceDisableCommand</item><item name="maintenanceEnableCommand" xsi:type="object">Magento\Backend\Console\Command\MaintenanceDisableCommand</item><item name="maintenanceStatusCommand" xsi:type="object">Magento\Backend\Console\Command\MaintenanceStatusCommand</item><item name="configSetCommand" xsi:type="object">Magento\Config\Console\Command\ConfigSetCommand</item><item name="configShowCommand" xsi:type="object">Magento\Config\Console\Command\ConfigShowCommand</item><item name="UnlockAdminAccountCommand" xsi:type="object">Magento\User\Console\UnlockAdminAccountCommand</item><item name="cms_wysiwyg_restrict" xsi:type="object">Magento\Cms\Command\WysiwygRestrictCommand</item><item name="productAttributesCleanUp" xsi:type="object">Magento\Catalog\Console\Command\ProductAttributesCleanUp</item><item name="adminAdobeEnableImsCommand" xsi:type="object">Magento\AdminAdobeIms\Console\Command\AdminAdobeImsEnableCommand</item><item name="adminAdobeDisableImsCommand" xsi:type="object">Magento\AdminAdobeIms\Console\Command\AdminAdobeImsDisableCommand</item><item name="adminAdobeInfoImsCommand" xsi:type="object">Magento\AdminAdobeIms\Console\Command\AdminAdobeImsInfoCommand</item><item name="adminAdobeStatusImsCommand" xsi:type="object">Magento\AdminAdobeIms\Console\Command\AdminAdobeImsStatusCommand</item><item name="encyption_payment_data_update" xsi:type="object">Magento\Sales\Console\Command\EncryptionPaymentDataUpdateCommand</item><item name="addDomainsCommand" xsi:type="object">Magento\Downloadable\Console\Command\DomainsAddCommand</item><item name="removeDomainsCommand" xsi:type="object">Magento\Downloadable\Console\Command\DomainsRemoveCommand</item><item name="showDomainsCommand" xsi:type="object">Magento\Downloadable\Console\Command\DomainsShowCommand</item><item name="imagesResizeCommand" xsi:type="object">Magento\MediaStorage\Console\Command\ImagesResizeCommand</item><item name="VarnishGenerateVclCommand" xsi:type="object">Magento\PageCache\Console\Command\GenerateVclCommand</item><item name="cronCommand" xsi:type="object">Magento\Cron\Console\Command\CronCommand</item><item name="cronInstall" xsi:type="object">Magento\Cron\Console\Command\CronInstallCommand</item><item name="cronRemove" xsi:type="object">Magento\Cron\Console\Command\CronRemoveCommand</item><item name="setModeCommand" xsi:type="object">Magento\Deploy\Console\Command\SetModeCommand</item><item name="showModeCommand" xsi:type="object">Magento\Deploy\Console\Command\ShowModeCommand</item><item name="dumpApplicationCommand" xsi:type="object">\Magento\Deploy\Console\Command\App\ApplicationDumpCommand</item><item name="sensitiveConfigSetCommand" xsi:type="object">\Magento\Deploy\Console\Command\App\SensitiveConfigSetCommand</item><item name="configImportCommand" xsi:type="object">Magento\Deploy\Console\Command\App\ConfigImportCommand</item><item name="configStatusCommand" xsi:type="object">Magento\Deploy\Console\Command\App\ConfigStatusCommand</item><item name="dev_tests_run" xsi:type="object">Magento\Developer\Console\Command\DevTestsRunCommand</item><item name="whitelist_generation" xsi:type="object">Magento\Developer\Console\Command\TablesWhitelistGenerateCommand</item><item name="dev_source_theme_deploy" xsi:type="object">Magento\Developer\Console\Command\SourceThemeDeployCommand</item><item name="xml_converter" xsi:type="object">Magento\Developer\Console\Command\XmlConverterCommand</item><item name="xml_catalog_generator" xsi:type="object">Magento\Developer\Console\Command\XmlCatalogGenerateCommand</item><item name="dev_di_info" xsi:type="object">Magento\Developer\Console\Command\DiInfoCommand</item><item name="dev_query_log_enable" xsi:type="object">Magento\Developer\Console\Command\QueryLogEnableCommand</item><item name="dev_query_log_disable" xsi:type="object">Magento\Developer\Console\Command\QueryLogDisableCommand</item><item name="dev_template_hints_disable" xsi:type="object">Magento\Developer\Console\Command\TemplateHintsDisableCommand</item><item name="dev_template_hints_enable" xsi:type="object">Magento\Developer\Console\Command\TemplateHintsEnableCommand</item><item name="dev_template_hints_status" xsi:type="object">Magento\Developer\Console\Command\TemplateHintsStatusCommand</item><item name="dev_profiler_disable" xsi:type="object">Magento\Developer\Console\Command\ProfilerDisableCommand</item><item name="dev_profiler_enable" xsi:type="object">Magento\Developer\Console\Command\ProfilerEnableCommand</item><item name="dev_generate_patch" xsi:type="object">Magento\Developer\Console\Command\GeneratePatchCommand</item><item name="emailTemplateCheck" xsi:type="object">Magento\Email\Console\Command\DatabaseTemplateCompatibilityCommand</item><item name="remoteStorageSync" xsi:type="object">Magento\RemoteStorage\Console\Command\RemoteStorageSynchronizeCommand</item><item name="importGeoNames" xsi:type="object">Magento\InventoryDistanceBasedSourceSelection\Console\Command\ImportGeoNamesCommand</item><item name="inventory_salable_quantity_inconsistency" xsi:type="object"> Magento\InventoryReservationCli\Command\ShowInconsistencies </item><item name="inventory_salable_quantity_compensations" xsi:type="object"> Magento\InventoryReservationCli\Command\CreateCompensations </item><item name="mediaContentSynchronization" xsi:type="object">Magento\MediaContentSynchronization\Console\Command\Synchronize</item><item name="mediaGallerySynchronization" xsi:type="object">Magento\MediaGallerySynchronization\Console\Command\Synchronize</item><item name="startConsumerCommand" xsi:type="object">Magento\MessageQueue\Console\StartConsumerCommand\Proxy</item><item name="consumerListCommand" xsi:type="object">Magento\MessageQueue\Console\ConsumerListCommand\Proxy</item><item name="newrelicreporting_deploy_marker" xsi:type="object">Magento\NewRelicReporting\Console\Command\DeployMarker</item><item name="newsletterCompatibilityCheck" xsi:type="object">Magento\Newsletter\Console\Command\TemplateCheckCommand</item><item name="disable_recaptcha_for_user_login" xsi:type="object">Magento\ReCaptchaUser\Command\DisableReCaptchaForUserLoginCommand</item><item name="disable_recaptcha_for_user_forgot_password" xsi:type="object">\Magento\ReCaptchaUser\Command\DisableReCaptchaForUserForgotPasswordCommand</item><item name="setup:db-schema:add-slave" xsi:type="object">Magento\ResourceConnections\Console\Command\AddSlave</item><item name="sampleDataDeployCommand" xsi:type="object">Magento\SampleData\Console\Command\SampleDataDeployCommand</item><item name="sampleDataResetCommand" xsi:type="object">Magento\SampleData\Console\Command\SampleDataResetCommand</item><item name="sampleDataRemoveCommand" xsi:type="object">Magento\SampleData\Console\Command\SampleDataRemoveCommand</item><item name="split-quote-db" xsi:type="object">Magento\ScalableCheckout\Console\Command\SplitQuote</item><item name="split-sales-db" xsi:type="object">Magento\ScalableOms\Console\Command\SplitSales</item><item name="check" xsi:type="object">Magento\Support\Console\Command\UtilityCheckCommand</item><item name="paths" xsi:type="object">Magento\Support\Console\Command\UtilityPathsCommand</item><item name="db" xsi:type="object">Magento\Support\Console\Command\BackupDbCommand</item><item name="code" xsi:type="object">Magento\Support\Console\Command\BackupCodeCommand</item><item name="uninstall_language" xsi:type="object">Magento\Translation\Console\Command\UninstallLanguageCommand</item><item name="adyen_webhookprocessorcommand" xsi:type="object">Adyen\Payment\Console\Command\WebhookProcessorCommand</item><item name="AmBase::sendSysInfo" xsi:type="object">Amasty\Base\Console\Command\SendSysInfo</item><item name="AmBase::registerLicenceKey" xsi:type="object">Amasty\Base\Console\Command\RegisterLicenceKey</item></argument> </arguments> </type> <type name="Magento\Deploy\Model\DeploymentConfig\ImporterPool"> <arguments> <argument name="importers" xsi:type="array"> <item name="scopes" xsi:type="array"> <item name="importer_class" xsi:type="string">Magento\Store\Model\Config\Importer</item> <item name="validator_class" xsi:type="string">Magento\Store\Model\Config\Validator</item> <item name="sort_order" xsi:type="number">10</item> </item> <item name="themes" xsi:type="array"> <item name="importer_class" xsi:type="string">Magento\Theme\Model\Config\Importer</item> <item name="sort_order" xsi:type="number">20</item> </item><item name="system" xsi:type="array"> <item name="importer_class" xsi:type="string">Magento\Config\Model\Config\Importer</item> <item name="sort_order" xsi:type="number">30</item> </item></argument> </arguments> </type> <type name="Magento\Store\Model\Config\Importer\Processor\ProcessorFactory"> <arguments> <argument name="processors" xsi:type="array"> <item name="create" xsi:type="string">Magento\Store\Model\Config\Importer\Processor\Create</item> <item name="update" xsi:type="string">Magento\Store\Model\Config\Importer\Processor\Update</item> <item name="delete" xsi:type="string">Magento\Store\Model\Config\Importer\Processor\Delete</item> </argument> </arguments> </type> <type name="Magento\Store\Model\Config\Importer\DataDifferenceCalculator"> <arguments> <argument name="runtimeConfigSource" xsi:type="object">Magento\Store\App\Config\Source\RuntimeConfigSource</argument> </arguments> </type> <type name="Magento\Config\Model\Config\TypePool"> <arguments> <argument name="environment" xsi:type="array"> <item name="web/default/front" xsi:type="string">1</item> <item name="web/secure/base_link_url" xsi:type="string">1</item> <item name="web/secure/base_media_url" xsi:type="string">1</item> <item name="web/secure/base_static_url" xsi:type="string">1</item> <item name="web/secure/base_url" xsi:type="string">1</item> <item name="web/unsecure/base_link_url" xsi:type="string">1</item> <item name="web/unsecure/base_media_url" xsi:type="string">1</item> <item name="web/unsecure/base_static_url" xsi:type="string">1</item> <item name="web/unsecure/base_url" xsi:type="string">1</item> <item name="web/cookie/cookie_domain" xsi:type="string">1</item><item name="web/cookie/cookie_path" xsi:type="string">1</item><item name="dev/js/session_storage_key" xsi:type="string">1</item><item name="system/full_page_cache/varnish/backend_host" xsi:type="string">1</item><item name="system/full_page_cache/varnish/backend_port" xsi:type="string">1</item><item name="crontab/default/jobs/analytics_collect_data/schedule/cron_expr" xsi:type="string">1</item><item name="crontab/default/jobs/analytics_update/schedule/cron_expr" xsi:type="string">1</item><item name="crontab/default/jobs/analytics_subscribe/schedule/cron_expr" xsi:type="string">1</item><item name="dev/restrict/allow_ips" xsi:type="string">1</item><item name="carriers/dhl/debug" xsi:type="string">1</item><item name="carriers/dhl/gateway_url" xsi:type="string">1</item><item name="catalog/search/elasticsearch5_enable_auth" xsi:type="string">1</item><item name="catalog/search/elasticsearch5_index_prefix" xsi:type="string">1</item><item name="catalog/search/elasticsearch5_password" xsi:type="string">1</item><item name="catalog/search/elasticsearch5_server_hostname" xsi:type="string">1</item><item name="catalog/search/elasticsearch5_server_port" xsi:type="string">1</item><item name="catalog/search/elasticsearch5_username" xsi:type="string">1</item><item name="catalog/search/elasticsearch5_server_timeout" xsi:type="string">1</item><item name="catalog/search/elasticsearch6_enable_auth" xsi:type="string">1</item><item name="catalog/search/elasticsearch6_index_prefix" xsi:type="string">1</item><item name="catalog/search/elasticsearch6_password" xsi:type="string">1</item><item name="catalog/search/elasticsearch6_server_hostname" xsi:type="string">1</item><item name="catalog/search/elasticsearch6_server_port" xsi:type="string">1</item><item name="catalog/search/elasticsearch6_username" xsi:type="string">1</item><item name="catalog/search/elasticsearch6_server_timeout" xsi:type="string">1</item><item name="system/smtp/host" xsi:type="string">1</item><item name="system/smtp/port" xsi:type="string">1</item><item name="carriers/fedex/sandbox_mode" xsi:type="string">1</item><item name="cataloginventory/source_selection_distance_based_google/api_key" xsi:type="string">1</item><item name="newrelicreporting/general/api_url" xsi:type="string">1</item><item name="newrelicreporting/general/insights_api_url" xsi:type="string">1</item><item name="payment/hosted_pro/debug" xsi:type="string">1</item><item name="payment/payflow_advanced/debug" xsi:type="string">1</item><item name="payment/payflow_advanced/proxy_host" xsi:type="string">1</item><item name="payment/payflow_advanced/proxy_port" xsi:type="string">1</item><item name="payment/payflow_advanced/sandbox_flag" xsi:type="string">1</item><item name="payment/payflow_advanced/url_method" xsi:type="string">1</item><item name="payment/payflow_express/debug" xsi:type="string">1</item><item name="payment/payflow_link/debug" xsi:type="string">1</item><item name="payment/payflow_link/proxy_host" xsi:type="string">1</item><item name="payment/payflow_link/proxy_port" xsi:type="string">1</item><item name="payment/payflow_link/sandbox_flag" xsi:type="string">1</item><item name="payment/payflow_link/url_method" xsi:type="string">1</item><item name="payment/payflow_link/use_proxy" xsi:type="string">1</item><item name="payment/payflowpro/debug" xsi:type="string">1</item><item name="payment/payflowpro/proxy_host" xsi:type="string">1</item><item name="payment/payflowpro/proxy_port" xsi:type="string">1</item><item name="payment/payflowpro/pwd" xsi:type="string">1</item><item name="payment/payflowpro/sandbox_flag" xsi:type="string">1</item><item name="payment/paypal_billing_agreement/debug" xsi:type="string">1</item><item name="payment/paypal_express/debug" xsi:type="string">1</item><item name="payment_all_paypal/paypal_payflowpro/settings_paypal_payflow/settings_paypal_payflow_advanced/paypal_payflow_settlement_report/heading_sftp" xsi:type="string">1</item><item name="paypal/fetch_reports/ftp_ip" xsi:type="string">1</item><item name="paypal/fetch_reports/ftp_path" xsi:type="string">1</item><item name="paypal/fetch_reports/ftp_sandbox" xsi:type="string">1</item><item name="paypal/wpp/proxy_host" xsi:type="string">1</item><item name="paypal/wpp/proxy_port" xsi:type="string">1</item><item name="paypal/wpp/sandbox_flag" xsi:type="string">1</item><item name="recaptcha_backend/type_recaptcha/public_key" xsi:type="string">1</item><item name="recaptcha_backend/type_recaptcha/private_key" xsi:type="string">1</item><item name="recaptcha_frontend/type_recaptcha/public_key" xsi:type="string">1</item><item name="recaptcha_frontend/type_recaptcha/private_key" xsi:type="string">1</item><item name="recaptcha_backend/type_invisible/public_key" xsi:type="string">1</item><item name="recaptcha_backend/type_invisible/private_key" xsi:type="string">1</item><item name="recaptcha_frontend/type_invisible/public_key" xsi:type="string">1</item><item name="recaptcha_frontend/type_invisible/private_key" xsi:type="string">1</item><item name="recaptcha_backend/type_recaptcha_v3/public_key" xsi:type="string">1</item><item name="recaptcha_backend/type_recaptcha_v3/private_key" xsi:type="string">1</item><item name="recaptcha_frontend/type_recaptcha_v3/public_key" xsi:type="string">1</item><item name="recaptcha_frontend/type_recaptcha_v3/private_key" xsi:type="string">1</item><item name="catalog/search/elasticsearch7_enable_auth" xsi:type="string">1</item><item name="catalog/search/elasticsearch7_index_prefix" xsi:type="string">1</item><item name="catalog/search/elasticsearch7_password" xsi:type="string">1</item><item name="catalog/search/elasticsearch7_server_hostname" xsi:type="string">1</item><item name="catalog/search/elasticsearch7_server_port" xsi:type="string">1</item><item name="catalog/search/elasticsearch7_username" xsi:type="string">1</item><item name="catalog/search/elasticsearch7_server_timeout" xsi:type="string">1</item><item name="carriers/ups/access_license_number" xsi:type="string">1</item><item name="carriers/ups/debug" xsi:type="string">1</item><item name="carriers/ups/gateway_url" xsi:type="string">1</item><item name="carriers/ups/gateway_xml_url" xsi:type="string">1</item><item name="carriers/ups/is_account_live" xsi:type="string">1</item><item name="carriers/ups/password" xsi:type="string">1</item><item name="carriers/ups/username" xsi:type="string">1</item><item name="payment/adyen_abstract/demo_mode" xsi:type="string">1</item><item name="payment/adyen_abstract/debug" xsi:type="string">1</item><item name="tax/avatax/enabled" xsi:type="string">1</item><item name="tax/avatax/tax_mode" xsi:type="string">1</item><item name="tax/avatax/commit_submitted_transactions" xsi:type="string">1</item><item name="tax/avatax/live_mode" xsi:type="string">1</item><item name="tax/avatax/production_account_number" xsi:type="string">1</item><item name="tax/avatax/production_company_code" xsi:type="string">1</item><item name="tax/avatax/production_company_id" xsi:type="string">1</item><item name="tax/avatax/production_license_key" xsi:type="string">1</item><item name="tax/avatax/development_account_number" xsi:type="string">1</item><item name="tax/avatax/development_company_code" xsi:type="string">1</item><item name="tax/avatax/development_license_key" xsi:type="string">1</item><item name="tax/avatax/development_company_id" xsi:type="string">1</item><item name="tax/avatax/location_code" xsi:type="string">1</item><item name="tax/avatax/address_validation_enabled" xsi:type="string">1</item><item name="tax/avatax/logging_file_enabled" xsi:type="string">1</item><item name="tax/avatax/logging_file_mode" xsi:type="string">1</item><item name="tax/avatax/logging_file_builtin_rotation_enabled" xsi:type="string">1</item><item name="tax/avatax/queue_admin_notification_enabled" xsi:type="string">1</item><item name="tax/avatax/queue_failure_notification_enabled" xsi:type="string">1</item></argument> <argument name="sensitive" xsi:type="array"> <item name="currency/import/error_email" xsi:type="string">1</item> <item name="admin/url/custom" xsi:type="string">1</item><item name="admin/url/custom_path" xsi:type="string">1</item><item name="trans_email/ident_custom1/email" xsi:type="string">1</item><item name="trans_email/ident_custom1/name" xsi:type="string">1</item><item name="trans_email/ident_custom2/email" xsi:type="string">1</item><item name="trans_email/ident_custom2/name" xsi:type="string">1</item><item name="trans_email/ident_general/email" xsi:type="string">1</item><item name="trans_email/ident_general/name" xsi:type="string">1</item><item name="trans_email/ident_sales/email" xsi:type="string">1</item><item name="trans_email/ident_sales/name" xsi:type="string">1</item><item name="trans_email/ident_support/email" xsi:type="string">1</item><item name="trans_email/ident_support/name" xsi:type="string">1</item><item name="sales_email/creditmemo/copy_to" xsi:type="string">1</item><item name="sales_email/creditmemo_comment/copy_to" xsi:type="string">1</item><item name="sales_email/invoice/copy_to" xsi:type="string">1</item><item name="sales_email/invoice_comment/copy_to" xsi:type="string">1</item><item name="sales_email/order/copy_to" xsi:type="string">1</item><item name="sales_email/order_comment/copy_to" xsi:type="string">1</item><item name="sales_email/shipment/copy_to" xsi:type="string">1</item><item name="sales_email/shipment_comment/copy_to" xsi:type="string">1</item><item name="checkout/payment_failed/copy_to" xsi:type="string">1</item><item name="system/full_page_cache/varnish/access_list" xsi:type="string">1</item><item name="system/full_page_cache/varnish/backend_host" xsi:type="string">1</item><item name="contact/email/recipient_email" xsi:type="string">1</item><item name="analytics/url/signup" xsi:type="string">1</item><item name="analytics/url/update" xsi:type="string">1</item><item name="analytics/url/bi_essentials" xsi:type="string">1</item><item name="analytics/url/otp" xsi:type="string">1</item><item name="analytics/url/report" xsi:type="string">1</item><item name="analytics/url/notify_data_changed" xsi:type="string">1</item><item name="analytics/general/token" xsi:type="string">1</item><item name="dev/restrict/allow_ips" xsi:type="string">1</item><item name="carriers/dhl/account" xsi:type="string">1</item><item name="carriers/dhl/gateway_url" xsi:type="string">1</item><item name="carriers/dhl/id" xsi:type="string">1</item><item name="carriers/dhl/password" xsi:type="string">1</item><item name="catalog/productalert_cron/error_email" xsi:type="string">1</item><item name="catalog/search/elasticsearch5_password" xsi:type="string">1</item><item name="catalog/search/elasticsearch5_server_hostname" xsi:type="string">1</item><item name="catalog/search/elasticsearch5_username" xsi:type="string">1</item><item name="catalog/search/elasticsearch6_password" xsi:type="string">1</item><item name="catalog/search/elasticsearch6_server_hostname" xsi:type="string">1</item><item name="catalog/search/elasticsearch6_username" xsi:type="string">1</item><item name="system/smtp/host" xsi:type="string">1</item><item name="carriers/fedex/account" xsi:type="string">1</item><item name="carriers/fedex/key" xsi:type="string">1</item><item name="carriers/fedex/meter_number" xsi:type="string">1</item><item name="carriers/fedex/password" xsi:type="string">1</item><item name="carriers/fedex/production_webservices_url" xsi:type="string">1</item><item name="carriers/fedex/sandbox_webservices_url" xsi:type="string">1</item><item name="carriers/fedex/smartpost_hubid" xsi:type="string">1</item><item name="sitemap/generate/error_email" xsi:type="string">1</item><item name="google/analytics/account" xsi:type="string">1</item><item name="google/gtag/analytics4/measurement_id" xsi:type="string">1</item><item name="google/gtag/adwords/conversion_id" xsi:type="string">1</item><item name="cataloginventory/source_selection_distance_based_google/api_key" xsi:type="string">1</item><item name="adobe_ims/integration/api_key" xsi:type="string">1</item><item name="adobe_ims/integration/private_key" xsi:type="string">1</item><item name="newrelicreporting/general/account_id" xsi:type="string">1</item><item name="newrelicreporting/general/app_id" xsi:type="string">1</item><item name="newrelicreporting/general/api" xsi:type="string">1</item><item name="newrelicreporting/general/insights_insert_key" xsi:type="string">1</item><item name="newrelicreporting/general/insights_api_url" xsi:type="string">1</item><item name="newrelicreporting/general/api_url" xsi:type="string">1</item><item name="payment/checkmo/mailing_address" xsi:type="string">1</item><item name="payment/payflow_advanced/proxy_host" xsi:type="string">1</item><item name="payment/payflow_advanced/pwd" xsi:type="string">1</item><item name="payment/payflow_advanced/user" xsi:type="string">1</item><item name="payment/payflow_link/proxy_host" xsi:type="string">1</item><item name="payment/payflow_link/pwd" xsi:type="string">1</item><item name="payment/payflowpro/partner" xsi:type="string">1</item><item name="payment/payflowpro/proxy_host" xsi:type="string">1</item><item name="payment/payflowpro/pwd" xsi:type="string">1</item><item name="payment/payflowpro/user" xsi:type="string">1</item><item name="payment/paypal_express/merchant_id" xsi:type="string">1</item><item name="payment/paypal_express_bml/publisher_id" xsi:type="string">1</item><item name="payment_all_paypal/express_checkout/settings_ec/settings_ec_advanced/express_checkout_settlement_report/heading_sftp" xsi:type="string">1</item><item name="payment_all_paypal/payflow_link/settings_payflow_link/settings_payflow_link_advanced/payflow_link_settlement_report/heading_sftp" xsi:type="string">1</item><item name="payment_all_paypal/payments_pro_hosted_solution/pphs_settings/pphs_settings_advanced/pphs_settlement_report/heading_sftp" xsi:type="string">1</item><item name="payment_all_paypal/paypal_payflowpro/settings_paypal_payflow/heading_cc" xsi:type="string">1</item><item name="payment_all_paypal/paypal_payflowpro/settings_paypal_payflow/settings_paypal_payflow_advanced/paypal_payflow_settlement_report/heading_sftp" xsi:type="string">1</item><item name="paypal/fetch_reports/ftp_ip" xsi:type="string">1</item><item name="paypal/fetch_reports/ftp_login" xsi:type="string">1</item><item name="paypal/fetch_reports/ftp_password" xsi:type="string">1</item><item name="paypal/fetch_reports/ftp_path" xsi:type="string">1</item><item name="paypal/general/business_account" xsi:type="string">1</item><item name="paypal/general/merchant_country" xsi:type="string">1</item><item name="paypal/wpp/api_cert" xsi:type="string">1</item><item name="paypal/wpp/api_password" xsi:type="string">1</item><item name="paypal/wpp/api_signature" xsi:type="string">1</item><item name="paypal/wpp/api_username" xsi:type="string">1</item><item name="paypal/wpp/proxy_host" xsi:type="string">1</item><item name="catalog/product_video/youtube_api_key" xsi:type="string">1</item><item name="recaptcha_backend/type_recaptcha/public_key" xsi:type="string">1</item><item name="recaptcha_backend/type_recaptcha/private_key" xsi:type="string">1</item><item name="recaptcha_frontend/type_recaptcha/public_key" xsi:type="string">1</item><item name="recaptcha_frontend/type_recaptcha/private_key" xsi:type="string">1</item><item name="recaptcha_backend/type_invisible/public_key" xsi:type="string">1</item><item name="recaptcha_backend/type_invisible/private_key" xsi:type="string">1</item><item name="recaptcha_frontend/type_invisible/public_key" xsi:type="string">1</item><item name="recaptcha_frontend/type_invisible/private_key" xsi:type="string">1</item><item name="recaptcha_backend/type_recaptcha_v3/public_key" xsi:type="string">1</item><item name="recaptcha_backend/type_recaptcha_v3/private_key" xsi:type="string">1</item><item name="recaptcha_frontend/type_recaptcha_v3/public_key" xsi:type="string">1</item><item name="recaptcha_frontend/type_recaptcha_v3/private_key" xsi:type="string">1</item><item name="system/release_notification/content_url" xsi:type="string">1</item><item name="system/release_notification/use_https" xsi:type="string">1</item><item name="promo/magento_reminder/identity" xsi:type="string">1</item><item name="sales_email/magento_rma/copy_to" xsi:type="string">1</item><item name="sales_email/magento_rma_auth/copy_to" xsi:type="string">1</item><item name="sales_email/magento_rma_comment/copy_to" xsi:type="string">1</item><item name="sales_email/magento_rma_customer_comment/copy_to" xsi:type="string">1</item><item name="system/magento_scheduled_import_export_log/error_email" xsi:type="string">1</item><item name="catalog/search/elasticsearch7_password" xsi:type="string">1</item><item name="catalog/search/elasticsearch7_server_hostname" xsi:type="string">1</item><item name="catalog/search/elasticsearch7_username" xsi:type="string">1</item><item name="google/analytics/container_id" xsi:type="string">1</item><item name="google/gtag/analytics4/container_id" xsi:type="string">1</item><item name="carriers/ups/username" xsi:type="string">1</item><item name="carriers/ups/password" xsi:type="string">1</item><item name="carriers/ups/access_license_number" xsi:type="string">1</item><item name="carriers/ups/tracking_xml_url" xsi:type="string">1</item><item name="carriers/ups/gateway_xml_url" xsi:type="string">1</item><item name="carriers/ups/shipper_number" xsi:type="string">1</item><item name="carriers/ups/gateway_url" xsi:type="string">1</item><item name="carriers/usps/userid" xsi:type="string">1</item><item name="carriers/usps/password" xsi:type="string">1</item><item name="carriers/usps/gateway_url" xsi:type="string">1</item><item name="carriers/usps/gateway_secure_url" xsi:type="string">1</item><item name="payment/adyen_abstract/merchant_account" xsi:type="string">1</item><item name="payment/adyen_abstract/api_key_test" xsi:type="string">1</item><item name="payment/adyen_abstract/api_key_live" xsi:type="string">1</item><item name="payment/adyen_abstract/client_key_test" xsi:type="string">1</item><item name="payment/adyen_abstract/client_key_live" xsi:type="string">1</item><item name="payment/adyen_abstract/notification_username" xsi:type="string">1</item><item name="payment/adyen_abstract/notification_password" xsi:type="string">1</item><item name="payment/adyen_abstract/live_endpoint_url_prefix" xsi:type="string">1</item><item name="payment/adyen_abstract/checkout_frontend_region" xsi:type="string">1</item><item name="payment/adyen_pos_cloud/pos_merchant_account" xsi:type="string">1</item><item name="payment/adyen_pos_cloud/api_key_test" xsi:type="string">1</item><item name="payment/adyen_pos_cloud/api_key_live" xsi:type="string">1</item><item name="payment/adyen_pos_cloud/pos_store_id" xsi:type="string">1</item><item name="payment/adyen_abstract/notification_hmac_key_test" xsi:type="string">1</item><item name="payment/adyen_abstract/notification_hmac_key_live" xsi:type="string">1</item><item name="tax/avatax/production_license_key" xsi:type="string">1</item><item name="tax/avatax/development_license_key" xsi:type="string">1</item></argument><argument name="excludeList" xsi:type="object">Magento\Config\Model\Config\Export\ExcludeList</argument></arguments> </type> <type name="Magento\Framework\Data\Argument\Interpreter\Composite"> <arguments> <argument name="interpreters" xsi:type="array"> <item name="serviceUrl" xsi:type="object">Magento\Store\Model\Argument\Interpreter\ServiceUrl</item> <item name="const" xsi:type="object">Magento\Framework\Data\Argument\Interpreter\Constant</item><item name="object" xsi:type="object">configurableObjectArgumentInterpreterProxy</item><item name="configurableObject" xsi:type="object">configurableObjectArgumentInterpreterProxy</item><item name="array" xsi:type="object">arrayArgumentInterpreterProxy</item><item name="boolean" xsi:type="object">Magento\Framework\Data\Argument\Interpreter\Boolean</item><item name="number" xsi:type="object">Magento\Framework\Data\Argument\Interpreter\Number</item><item name="string" xsi:type="object">Magento\Framework\Data\Argument\Interpreter\StringUtils</item><item name="null" xsi:type="object">Magento\Framework\Data\Argument\Interpreter\NullType</item><item name="url" xsi:type="object">Magento\Ui\Config\Argument\Parser\Url</item></argument> <argument name="discriminator" xsi:type="string">xsi:type</argument></arguments> </type> <type name="Magento\Store\Model\StoreSwitcher"> <arguments> <argument name="storeSwitchers" xsi:type="array"> <item name="cleanTargetUrl" xsi:type="object">Magento\Store\Model\StoreSwitcher\CleanTargetUrl</item> <item name="manageStoreCookie" xsi:type="object">Magento\Store\Model\StoreSwitcher\ManageStoreCookie</item> <item name="managePrivateContent" xsi:type="object">Magento\Store\Model\StoreSwitcher\ManagePrivateContent</item> <item name="hashProcessor" xsi:type="object" sortOrder="1000">Magento\Store\Model\StoreSwitcher\HashProcessor</item> <item name="rewriteUrl" xsi:type="object">Magento\UrlRewrite\Model\StoreSwitcher\RewriteUrl</item><item name="manageHierarchy" xsi:type="object">Magento\VersionsCmsUrlRewrite\Model\StoreSwitcher</item></argument> </arguments> </type> <type name="Magento\Store\Model\Validation\StoreValidator"> <arguments> <argument name="rules" xsi:type="array"> <item name="name" xsi:type="object">Magento\Store\Model\Validation\StoreNameValidator</item> <item name="code" xsi:type="object">Magento\Store\Model\Validation\StoreCodeValidator</item> </argument> </arguments> </type> <type name="Magento\Framework\Notification\NotifierList"> <arguments> <argument name="notifiers" xsi:type="array"> <item name="adminnotification" xsi:type="string">Magento\AdminNotification\Model\Inbox</item> </argument> </arguments> </type><type name="Magento\Directory\Model\Currency\Import\Config"> <arguments> <argument name="servicesConfig" xsi:type="array"> <item name="fixerio" xsi:type="array"> <item name="label" xsi:type="string" translatable="true">Fixer.io</item> <item name="class" xsi:type="string">Magento\Directory\Model\Currency\Import\FixerIo</item> </item> <item name="currencyconverterapi" xsi:type="array"> <item name="label" xsi:type="string" translatable="true">Currency Converter API</item> <item name="class" xsi:type="string">Magento\Directory\Model\Currency\Import\CurrencyConverterApi</item> </item> </argument> </arguments> </type><virtualType name="DirectoryHelperDataProxy" type="Magento\Directory\Helper\Data\Proxy"> <arguments> <argument name="instanceName" xsi:type="string">Magento\Directory\Helper\Data</argument> </arguments> </virtualType><type name="Magento\Directory\Model\ResourceModel\Country\Collection" shared="false"> <arguments> <argument name="helperData" xsi:type="object">DirectoryHelperDataProxy</argument> <argument name="countriesWithNotRequiredStates" xsi:type="array"> <item name="FR" xsi:type="string">FR</item> <item name="DE" xsi:type="string">DE</item> <item name="AT" xsi:type="string">AT</item> <item name="FI" xsi:type="string">FI</item> <item name="BE" xsi:type="string">BE</item> </argument> </arguments> </type><preference for="Magento\Directory\Model\Country\Postcode\ConfigInterface" type="Magento\Directory\Model\Country\Postcode\Config"/><preference for="Magento\Directory\Model\Country\Postcode\ValidatorInterface" type="Magento\Directory\Model\Country\Postcode\Validator"/><preference for="Magento\Directory\Api\CurrencyInformationAcquirerInterface" type="Magento\Directory\Model\CurrencyInformationAcquirer"/><preference for="Magento\Directory\Api\Data\CurrencyInformationInterface" type="Magento\Directory\Model\Data\CurrencyInformation"/><preference for="Magento\Directory\Api\Data\ExchangeRateInterface" type="Magento\Directory\Model\Data\ExchangeRate"/><preference for="Magento\Directory\Api\CountryInformationAcquirerInterface" type="Magento\Directory\Model\CountryInformationAcquirer"/><preference for="Magento\Directory\Api\Data\CountryInformationInterface" type="Magento\Directory\Model\Data\CountryInformation"/><preference for="Magento\Directory\Api\Data\RegionInformationInterface" type="Magento\Directory\Model\Data\RegionInformation"/><preference for="Magento\AdobeImsApi\Api\UserProfileRepositoryInterface" type="Magento\AdobeIms\Model\UserProfileRepository"/><preference for="Magento\AdobeImsApi\Api\Data\UserProfileInterface" type="Magento\AdobeIms\Model\UserProfile"/><preference for="Magento\AdobeImsApi\Api\ConfigInterface" type="Magento\AdobeIms\Model\Config"/><preference for="Magento\AdobeImsApi\Api\Data\TokenResponseInterface" type="Magento\AdobeIms\Model\OAuth\TokenResponse"/><preference for="Magento\AdobeImsApi\Api\GetTokenInterface" type="Magento\AdobeIms\Model\GetToken"/><preference for="Magento\AdobeImsApi\Api\GetImageInterface" type="Magento\AdobeIms\Model\GetImage"/><preference for="Magento\AdobeImsApi\Api\UserAuthorizedInterface" type="Magento\AdminAdobeIms\Model\UserAuthorizedProxy"/><preference for="Magento\AdobeImsApi\Api\LogInInterface" type="Magento\AdobeIms\Model\LogIn"/><preference for="Magento\AdobeImsApi\Api\LogOutInterface" type="Magento\AdobeIms\Model\LogOut"/><preference for="Magento\AdobeImsApi\Api\GetAccessTokenInterface" type="Magento\AdminAdobeIms\Model\GetAccessTokenProxy"/><preference for="Magento\AdobeImsApi\Api\FlushUserTokensInterface" type="Magento\AdobeIms\Model\FlushUserTokens"/><preference for="Magento\MediaGalleryApi\Api\Data\KeywordInterface" type="Magento\MediaGallery\Model\Keyword"/><preference for="Magento\MediaGalleryApi\Api\Data\AssetInterface" type="Magento\MediaGallery\Model\Asset"/><preference for="Magento\MediaGalleryApi\Api\Data\AssetKeywordsInterface" type="Magento\MediaGallery\Model\AssetKeywords"/><preference for="Magento\MediaGalleryApi\Model\Asset\Command\GetByIdInterface" type="Magento\MediaGallery\Model\Asset\Command\GetById"/><preference for="Magento\MediaGalleryApi\Model\Asset\Command\SaveInterface" type="Magento\MediaGallery\Model\Asset\Command\Save"/><preference for="Magento\MediaGalleryApi\Model\Asset\Command\GetByPathInterface" type="Magento\MediaGallery\Model\Asset\Command\GetByPath"/><preference for="Magento\MediaGalleryApi\Model\Asset\Command\DeleteByPathInterface" type="Magento\MediaGallery\Model\Asset\Command\DeleteByPath"/><preference for="Magento\MediaGalleryApi\Model\Asset\Command\DeleteByDirectoryPathInterface" type="Magento\MediaGallery\Model\Asset\Command\DeleteByDirectoryPath"/><preference for="Magento\MediaGalleryApi\Model\Keyword\Command\GetAssetKeywordsInterface" type="Magento\MediaGallery\Model\Keyword\Command\GetAssetKeywords"/><preference for="Magento\MediaGalleryApi\Model\Keyword\Command\SaveAssetKeywordsInterface" type="Magento\MediaGallery\Model\Keyword\Command\SaveAssetKeywords"/><preference for="Magento\MediaGalleryApi\Api\CreateDirectoriesByPathsInterface" type="Magento\MediaGallery\Model\Directory\Command\CreateByPaths"/><preference for="Magento\MediaGalleryApi\Api\DeleteDirectoriesByPathsInterface" type="Magento\MediaGallery\Model\Directory\Command\DeleteByPaths"/><preference for="Magento\MediaGalleryApi\Api\IsPathExcludedInterface" type="Magento\MediaGallery\Model\Directory\IsExcluded"/><preference for="Magento\MediaGalleryApi\Api\DeleteAssetsByPathsInterface" type="Magento\MediaGallery\Model\ResourceModel\DeleteAssetsByPaths"/><preference for="Magento\MediaGalleryApi\Api\GetAssetsByIdsInterface" type="Magento\MediaGallery\Model\ResourceModel\GetAssetsByIds"/><preference for="Magento\MediaGalleryApi\Api\GetAssetsByPathsInterface" type="Magento\MediaGallery\Model\ResourceModel\GetAssetsByPaths"/><preference for="Magento\MediaGalleryApi\Api\SaveAssetsInterface" type="Magento\MediaGallery\Model\ResourceModel\SaveAssets"/><preference for="Magento\MediaGalleryApi\Api\GetAssetsKeywordsInterface" type="Magento\MediaGallery\Model\ResourceModel\Keyword\GetAssetsKeywords"/><preference for="Magento\MediaGalleryApi\Api\SaveAssetsKeywordsInterface" type="Magento\MediaGallery\Model\ResourceModel\Keyword\SaveAssetsKeywords"/><preference for="Magento\MediaGalleryApi\Api\SearchAssetsInterface" type="Magento\MediaGallery\Model\SearchAssets"/><type name="Magento\Cms\Model\Wysiwyg\Images\Storage"> <plugin name="media_gallery_image_remove_metadata_after_wysiwyg" type="Magento\MediaGallery\Plugin\Wysiwyg\Images\Storage" sortOrder="10" disabled="false"/> <arguments> <argument name="resizeParameters" xsi:type="array"> <item name="height" xsi:type="number">200</item> <item name="width" xsi:type="number">200</item> </argument> <argument name="extensions" xsi:type="array"> <item name="allowed" xsi:type="array"> <item name="jpg" xsi:type="string">image/jpg</item> <item name="jpeg" xsi:type="string">image/jpeg</item> <item name="png" xsi:type="string">image/png</item> <item name="gif" xsi:type="string">image/gif</item> </item> <item name="image_allowed" xsi:type="array"> <item name="jpg" xsi:type="string">image/jpg</item> <item name="jpeg" xsi:type="string">image/jpeg</item> <item name="png" xsi:type="string">image/png</item> <item name="gif" xsi:type="string">image/gif</item> </item> <item name="media_allowed" xsi:type="array"> <item name="flv" xsi:type="string">video/x-flv</item> <item name="avi" xsi:type="string">video/x-msvideo</item> <item name="mov" xsi:type="string">video/x-sgi-movie</item> <item name="rm" xsi:type="string">application/vnd.rn-realmedia</item> <item name="wmv" xsi:type="string">video/x-ms-wmv</item> </item> </argument> <argument name="dirs" xsi:type="array"> <item name="exclude" xsi:type="array"> <item name="captcha" xsi:type="array"> <item name="regexp" xsi:type="boolean">true</item> <item name="name" xsi:type="string">media[/\\]+captcha[/\\]*$</item> </item> <item name="catalog/product" xsi:type="array"> <item name="regexp" xsi:type="boolean">true</item> <item name="name" xsi:type="string">media[/\\]+catalog[/\\]+product[/\\]*$</item> </item> <item name="customer" xsi:type="array"> <item name="regexp" xsi:type="boolean">true</item> <item name="name" xsi:type="string">media[/\\]+customer[/\\]*$</item> </item> <item name="downloadable" xsi:type="array"> <item name="regexp" xsi:type="boolean">true</item> <item name="name" xsi:type="string">media[/\\]+downloadable[/\\]*$</item> </item> <item name="import" xsi:type="array"> <item name="regexp" xsi:type="boolean">true</item> <item name="name" xsi:type="string">media[/\\]+import[/\\]*$</item> </item> <item name="theme" xsi:type="array"> <item name="regexp" xsi:type="boolean">true</item> <item name="name" xsi:type="string">media[/\\]+theme[/\\]*$</item> </item> <item name="theme_customization" xsi:type="array"> <item name="regexp" xsi:type="boolean">true</item> <item name="name" xsi:type="string">media[/\\]+theme_customization[/\\]*$</item> </item> <item name="tmp" xsi:type="array"> <item name="regexp" xsi:type="boolean">true</item> <item name="name" xsi:type="string">media[/\\]+tmp[/\\]*$</item> </item> <item name="sitemap" xsi:type="array"> <item name="regexp" xsi:type="boolean">true</item> <item name="name" xsi:type="string">media[/\\]+sitemap[/\\]*$</item> </item></item> <item name="include" xsi:type="array"/> </argument> <argument name="filesystem" xsi:type="object">fullRemoteFilesystem</argument></arguments></type><virtualType name="Magento\MediaGallery\Model\Directory\Config\Reader" type="Magento\Framework\Config\Reader\Filesystem"> <arguments> <argument name="fileName" xsi:type="string">directory.xml</argument> <argument name="converter" xsi:type="object">Magento\MediaGallery\Model\Directory\Config\Converter</argument> <argument name="schemaLocator" xsi:type="object">Magento\MediaGallery\Model\Directory\Config\SchemaLocator</argument> <argument name="idAttributes" xsi:type="array"> <item name="/config/exclude/patterns/pattern" xsi:type="string">name</item> </argument> </arguments> </virtualType><virtualType name="Magento\MediaGallery\Model\Directory\Config\Data" type="Magento\Framework\Config\Data"> <arguments> <argument name="reader" xsi:type="object">Magento\MediaGallery\Model\Directory\Config\Reader</argument> <argument name="cacheId" xsi:type="string">Media_Gallery_Patterns_CacheId</argument> </arguments> </virtualType><type name="Magento\MediaGallery\Model\Directory\ExcludedPatternsConfig"> <arguments> <argument name="data" xsi:type="object">Magento\MediaGallery\Model\Directory\Config\Data</argument> </arguments> </type><preference for="Magento\MediaGalleryApi\Model\ExcludedPatternsConfigInterface" type="Magento\MediaGallery\Model\Directory\ExcludedPatternsConfig"/><preference for="Magento\AdobeStockClientApi\Api\ClientInterface" type="Magento\AdobeStockClient\Model\Client"/><preference for="Magento\AdobeStockClientApi\Api\ConfigInterface" type="Magento\AdobeStockClient\Model\Config"/><preference for="Magento\AdobeStockClientApi\Api\Data\UserQuotaInterface" type="Magento\AdobeStockClient\Model\UserQuota"/><preference for="Magento\AdobeStockClientApi\Api\Data\LicenseConfirmationInterface" type="Magento\AdobeStockClient\Model\LicenseConfirmation"/><preference for="Magento\AdobeStockClientApi\Api\Client\FilesInterface" type="Magento\AdobeStockClient\Model\Client\Files"/><type name="Magento\AdobeStockClientApi\Api\ClientInterface"> <arguments> <argument name="searchParametersProvider" xsi:type="object">Magento\AdobeStockClient\Model\SearchParametersProviderComposite</argument> <argument name="searchResultFields" xsi:type="array"> <item name="0" xsi:type="string">ID</item> <item name="1" xsi:type="string">NB_RESULTS</item> <item name="2" xsi:type="string">COMP_URL</item> <item name="3" xsi:type="string">THUMBNAIL_240_URL</item> <item name="4" xsi:type="string">WIDTH</item> <item name="5" xsi:type="string">HEIGHT</item> <item name="6" xsi:type="string">THUMBNAIL_500_URL</item> <item name="7" xsi:type="string">TITLE</item> <item name="8" xsi:type="string">CREATOR_ID</item> <item name="9" xsi:type="string">CREATOR_NAME</item> <item name="10" xsi:type="string">CREATION_DATE</item> <item name="11" xsi:type="string">COUNTRY_NAME</item> <item name="13" xsi:type="string">CATEGORY</item> <item name="14" xsi:type="string">KEYWORDS</item> <item name="15" xsi:type="string">MEDIA_TYPE_ID</item> <item name="16" xsi:type="string">CONTENT_TYPE</item> <item name="17" xsi:type="string">DETAILS_URL</item> <item name="18" xsi:type="string">PREMIUM_LEVEL_ID</item> </argument> </arguments> </type><type name="Magento\AdobeStockClient\Model\SearchParametersProviderComposite"> <arguments> <argument name="providers" xsi:type="array"> <item name="simpleFilters" xsi:type="object">Magento\AdobeStockClient\Model\SearchParametersProvider\SimpleFilters</item> <item name="pagination" xsi:type="object">Magento\AdobeStockClient\Model\SearchParametersProvider\Pagination</item> <item name="content_type_filter" xsi:type="object">Magento\AdobeStockClient\Model\SearchParametersProvider\ContentType</item> <item name="isolated_filter" xsi:type="object">Magento\AdobeStockClient\Model\SearchParametersProvider\Isolated</item> <item name="offensive_filter" xsi:type="object">Magento\AdobeStockClient\Model\SearchParametersProvider\Offensive</item> <item name="sorting" xsi:type="object">Magento\AdobeStockClient\Model\SearchParametersProvider\Sorting</item> <item name="orientation_filter" xsi:type="object">Magento\AdobeStockClient\Model\SearchParametersProvider\Orientation</item> <item name="words" xsi:type="object">Magento\AdobeStockClient\Model\SearchParametersProvider\Words</item> <item name="media_id" xsi:type="object">Magento\AdobeStockClient\Model\SearchParametersProvider\MediaId</item> <item name="premium_price_filter" xsi:type="object">Magento\AdobeStockClient\Model\SearchParametersProvider\Premium</item> <item name="similar" xsi:type="object">Magento\AdobeStockClient\Model\SearchParametersProvider\Similar</item> </argument> </arguments> </type><type name="Magento\AdobeStockClient\Model\SearchParametersProvider\SimpleFilters"> <arguments> <argument name="filters" xsi:type="array"> <item name="colors_filter" xsi:type="string">setFilterColors</item> <item name="serie_id" xsi:type="string">setSerieId</item> <item name="model_id" xsi:type="string">setModelId</item> <item name="premium_filter" xsi:type="string">setFilterPremium</item> <item name="gallery_id" xsi:type="string">setGalleryId</item> </argument> </arguments> </type><preference for="Magento\AdobeStockImageApi\Api\GetImageListInterface" type="Magento\AdobeStockImage\Model\GetImageList"/><preference for="Magento\AdobeStockImageApi\Api\SaveImageInterface" type="Magento\AdobeStockImage\Model\SaveImage"/><preference for="Magento\AdobeStockImageApi\Api\SaveLicensedImageInterface" type="Magento\AdobeStockImage\Model\SaveLicensedImage"/><preference for="Magento\AdobeStockImageApi\Api\GetRelatedImagesInterface" type="Magento\AdobeStockImage\Model\GetRelatedImages"/><preference for="Magento\AdobeStockImageApi\Api\ConfigInterface" type="Magento\AdobeStockImage\Model\Config"/><type name="Magento\AdobeStockImage\Model\GetImageList"> <arguments> <argument name="defaultFilters" xsi:type="array"> <item name="illustration_filter" xsi:type="array"> <item name="type" xsi:type="string">content_type_filter</item> <item name="condition" xsi:type="string">or</item> <item name="field" xsi:type="string">illustration</item> </item> <item name="photo_filter" xsi:type="array"> <item name="type" xsi:type="string">content_type_filter</item> <item name="condition" xsi:type="string">or</item> <item name="field" xsi:type="string">photo</item> </item> <item name="premium_filter" xsi:type="array"> <item name="type" xsi:type="string">premium_price_filter</item> <item name="condition" xsi:type="string">eq</item> <item name="field" xsi:type="string">ALL</item> </item> </argument> </arguments> </type><type name="Magento\AdobeStockImage\Model\Storage\Save"> <arguments> <argument name="driver" xsi:type="object">Magento\Framework\Filesystem\Driver\Https</argument> <argument name="maxFileLength" xsi:type="number">255</argument> </arguments> </type><type name="Magento\AdobeStockImage\Model\GetRelatedImages"> <arguments> <argument name="fields" xsi:type="array"> <item name="same_series" xsi:type="string">serie_id</item> <item name="same_model" xsi:type="string">model_id</item> </argument> </arguments> </type><preference for="Magento\Framework\View\Design\Theme\ThemeInterface" type="Magento\Theme\Model\Theme"/><preference for="Magento\Framework\View\Design\Theme\FileInterface" type="Magento\Theme\Model\Theme\File"/><preference for="Magento\Framework\View\Design\Theme\ThemeProviderInterface" type="Magento\Theme\Model\Theme\ThemeProvider"/><preference for="Magento\Framework\View\Design\Theme\FileProviderInterface" type="Magento\Theme\Model\Theme\FileProvider"/><preference for="Magento\Framework\View\Design\Theme\Customization\ConfigInterface" type="Magento\Theme\Model\Theme\Customization\Config"/><preference for="Magento\Framework\App\DesignInterface" type="Magento\Theme\Model\Design"/><preference for="Magento\Framework\View\Design\Theme\ListInterface" type="Magento\Theme\Model\Theme\Collection"/><preference for="Magento\Theme\Api\Data\DesignConfigInterface" type="Magento\Theme\Model\Data\Design\Config"/><preference for="Magento\Theme\Api\Data\DesignConfigDataInterface" type="Magento\Theme\Model\Data\Design\Config\Data"/><preference for="Magento\Theme\Api\DesignConfigRepositoryInterface" type="Magento\Theme\Model\DesignConfigRepository"/><preference for="Magento\Framework\View\Model\PageLayout\Config\BuilderInterface" type="Magento\Theme\Model\PageLayout\Config\Builder"/><preference for="Magento\Theme\Model\Design\Config\MetadataProviderInterface" type="Magento\Theme\Model\Design\Config\MetadataProvider"/><preference for="Magento\Theme\Model\Theme\StoreThemesResolverInterface" type="Magento\Theme\Model\Theme\StoreThemesResolver"/><preference for="Magento\Theme\CustomerData\MessagesProviderInterface" type="Magento\Catalog\Model\Theme\CustomerData\MessagesProvider"/><type name="Magento\Theme\Model\Config"> <arguments> <argument name="configCache" xsi:type="object">Magento\Framework\App\Cache\Type\Config</argument> <argument name="layoutCache" xsi:type="object">Magento\Framework\App\Cache\Type\Layout</argument> </arguments> </type><type name="Magento\Theme\Model\Uploader\Service"> <arguments> <argument name="uploadLimits" xsi:type="array"> <item name="css" xsi:type="string">2M</item> <item name="js" xsi:type="string">2M</item> </argument> </arguments> </type><type name="Magento\Theme\Model\Layout\Config\Reader"> <arguments> <argument name="fileName" xsi:type="string">layouts.xml</argument> <argument name="converter" xsi:type="object">Magento\Theme\Model\Layout\Config\Converter</argument> <argument name="schemaLocator" xsi:type="object">Magento\Theme\Model\Layout\Config\SchemaLocator</argument> </arguments> </type><virtualType name="Magento\Theme\Model\Layout\Config\Data" type="Magento\Framework\Config\Data"> <arguments> <argument name="reader" xsi:type="object">Magento\Theme\Model\Layout\Config\Reader\Proxy</argument> <argument name="cacheId" xsi:type="string">page_layouts_config</argument> </arguments> </virtualType><type name="Magento\Theme\Model\Layout\Config"> <arguments> <argument name="dataStorage" xsi:type="object">Magento\Theme\Model\Layout\Config\Data</argument> </arguments> </type><type name="Magento\Theme\Model\Wysiwyg\Storage"> <arguments> <argument name="helper" xsi:type="object">Magento\Theme\Helper\Storage\Proxy</argument> </arguments> </type><type name="Magento\Framework\Url\ScopeInterface"> <plugin name="urlSignature" type="Magento\Theme\Model\Url\Plugin\Signature"/> </type><type name="Magento\Theme\Model\Theme\Collection" shared="false"/><type name="Magento\Theme\Model\View\Design"> <arguments> <argument name="themes" xsi:type="array"> <item name="frontend" xsi:type="string">Magento/luma</item> <item name="adminhtml" xsi:type="string">Magento/spectrum</item> </argument> </arguments> </type><type name="Magento\Framework\App\Area"> <arguments> <argument name="translator" xsi:type="object">Magento\Framework\TranslateInterface</argument> <argument name="design" xsi:type="object">Magento\Theme\Model\Design\Proxy</argument> </arguments> </type><type name="Magento\Theme\Model\DesignConfigRepository"> <plugin name="save_design_settings_event_dispatching" type="Magento\Theme\Model\Design\Config\Plugin"/> </type><virtualType name="Magento\Theme\Model\ResourceModel\Design\Config\Grid\Collection" type="Magento\Framework\View\Element\UiComponent\DataProvider\SearchResult"> <arguments> <argument name="mainTable" xsi:type="string">design_config_grid_flat</argument> <argument name="resourceModel" xsi:type="string">Magento\Theme\Model\ResourceModel\Design\Config</argument> </arguments> </virtualType><virtualType name="Magento\Theme\Model\Scope\WebsiteSource" type="Magento\Framework\App\Scope\Source"> <arguments> <argument name="scope" xsi:type="const">Magento\Store\Model\ScopeInterface::SCOPE_WEBSITE</argument> </arguments> </virtualType><virtualType name="Magento\Theme\Model\Scope\GroupSource" type="Magento\Framework\App\Scope\Source"> <arguments> <argument name="scope" xsi:type="const">Magento\Store\Model\ScopeInterface::SCOPE_GROUP</argument> </arguments> </virtualType><virtualType name="Magento\Theme\Model\Scope\StoreSource" type="Magento\Framework\App\Scope\Source"> <arguments> <argument name="scope" xsi:type="const">Magento\Store\Model\ScopeInterface::SCOPE_STORE</argument> </arguments> </virtualType><type name="Magento\Framework\View\Element\UiComponent\DataProvider\CollectionFactory"> <arguments> <argument name="collections" xsi:type="array"> <item name="design_config_listing_data_source" xsi:type="string">Magento\Theme\Model\ResourceModel\Design\Config\Grid\Collection</item> <item name="design_theme_listing_data_source" xsi:type="string">Magento\Theme\Ui\Component\Theme\DataProvider\SearchResult</item> <item name="customer_listing_data_source" xsi:type="string">Magento\Customer\Model\ResourceModel\Grid\Collection</item><item name="customer_online_grid_data_source" xsi:type="string">Magento\Customer\Model\ResourceModel\Online\Grid\Collection</item><item name="customer_group_listing_data_source" xsi:type="string">Magento\Customer\Model\ResourceModel\Group\Grid\Collection</item><item name="customer_address_listing_data_source" xsi:type="string">Magento\Customer\Model\ResourceModel\Address\Grid\Collection</item><item name="cms_page_listing_data_source" xsi:type="string">Magento\Cms\Model\ResourceModel\Page\Grid\Collection</item><item name="cms_block_listing_data_source" xsi:type="string">Magento\Cms\Model\ResourceModel\Block\Grid\Collection</item><item name="catalog_rule_data_source" xsi:type="string">catalogRuleSearchResult</item><item name="sales_order_grid_data_source" xsi:type="string">Magento\AsyncOrder\Model\ResourceModel\Order\Grid\Collection</item><item name="sales_order_invoice_grid_data_source" xsi:type="string">Magento\Sales\Model\ResourceModel\Order\Invoice\Grid\Collection</item><item name="sales_order_shipment_grid_data_source" xsi:type="string">Magento\Sales\Model\ResourceModel\Order\Shipment\Grid\Collection</item><item name="sales_order_creditmemo_grid_data_source" xsi:type="string">Magento\Sales\Model\ResourceModel\Order\Creditmemo\Grid\Collection</item><item name="sales_order_view_invoice_grid_data_source" xsi:type="string">Magento\Sales\Model\ResourceModel\Order\Invoice\Orders\Grid\Collection</item><item name="sales_order_view_shipment_grid_data_source" xsi:type="string">Magento\Sales\Model\ResourceModel\Order\Shipment\Order\Grid\Collection</item><item name="sales_order_view_creditmemo_grid_data_source" xsi:type="string">Magento\Sales\Model\ResourceModel\Order\Creditmemo\Order\Grid\Collection</item><item name="search_synonyms_grid_data_source" xsi:type="string">Magento\Search\Model\ResourceModel\Synonyms\Grid\Collection</item><item name="sales_archive_order_grid_data_source" xsi:type="string">Magento\SalesArchive\Model\ResourceModel\Order\Collection</item><item name="sales_archive_order_invoice_grid_data_source" xsi:type="string">Magento\SalesArchive\Model\ResourceModel\Order\Invoice\Collection</item><item name="sales_archive_order_shipment_grid_data_source" xsi:type="string">Magento\SalesArchive\Model\ResourceModel\Order\Shipment\Collection</item><item name="sales_archive_order_creditmemo_grid_data_source" xsi:type="string">Magento\SalesArchive\Model\ResourceModel\Order\Creditmemo\Collection</item><item name="staging_update_grid_data_source" xsi:type="string">Magento\Staging\Model\Update\Grid\SearchResult</item><item name="staging_update_edit_data_source" xsi:type="string">Magento\Staging\Model\Update\Grid\SearchResult</item><item name="staging_update_preview_grid_data_source" xsi:type="string">Magento\Staging\Model\Update\Grid\SearchResult</item><item name="media_gallery_listing_data_source" xsi:type="string">Magento\MediaGalleryUi\Ui\Component\Listing\Provider</item><item name="url_rewrite_listing_data_source" xsi:type="string">Magento\UrlRewrite\Ui\Component\UrlRewrite\DataProvider\SearchResult</item><item name="pagebuilder_block_select_grid_data_source" xsi:type="string">Magento\Cms\Model\ResourceModel\Block\Grid\Collection</item><item name="pagebuilder_stage_template_grid_data_source" xsi:type="string">Magento\PageBuilder\Model\ResourceModel\Template\Grid\Collection</item><item name="pagebuilder_template_grid_data_source" xsi:type="string">Magento\PageBuilder\Model\ResourceModel\Template\Grid\Collection</item><item name="catalogstaging_category_upcoming_grid_data_source" xsi:type="string">stagingCatalogCategoryUpcomingResult</item><item name="catalogstaging_category_update_select_grid_data_source" xsi:type="string">stagingCatalogCategoryUpdateSelectResult</item><item name="catalogstaging_category_update_remove_select_grid_data_source" xsi:type="string">stagingCatalogCategoryUpdateSelectResult</item><item name="product_staging_update_grid_data_source" xsi:type="string">Magento\CatalogStaging\Model\Update\Grid\SearchResult</item><item name="staging_update_edit_category_grid_data_source" xsi:type="string">Magento\CatalogStaging\Model\ResourceModel\Category\Grid\Collection</item><item name="catalogstaging_upcoming_grid_data_source" xsi:type="string">stagingCatalogUpcomingResult</item><item name="catalogstaging_update_select_grid_data_source" xsi:type="string">stagingCatalogUpdateSelectResult</item><item name="catalogstaging_update_remove_select_grid_data_source" xsi:type="string">stagingCatalogUpdateSelectResult</item><item name="salesrulestaging_upcoming_grid_data_source" xsi:type="string">stagingSalesRuleUpcomingResult</item><item name="salesrulestaging_update_select_grid_data_source" xsi:type="string">stagingSalesRuleUpdateSelectResult</item><item name="salesrulestaging_update_remove_select_grid_data_source" xsi:type="string">stagingSalesRuleUpdateSelectResult</item><item name="catalogrulestaging_upcoming_grid_data_source" xsi:type="string">stagingCatalogRuleUpcomingResult</item><item name="catalogrulestaging_update_select_grid_data_source" xsi:type="string">stagingCatalogRuleUpdateSelectResult</item><item name="catalogrulestaging_update_remove_select_grid_data_source" xsi:type="string">stagingCatalogRuleUpdateSelectResult</item><item name="pagebuilder_dynamic_block_select_grid_data_source" xsi:type="string">Magento\BannerPageBuilder\Model\ResourceModel\DynamicBlock\Grid\Collection</item><item name="support_report_listing_data_source" xsi:type="string">ReportGridDataProvider</item><item name="support_backup_listing_data_source" xsi:type="string">BackupGridDataProvider</item><item name="bulk_listing_data_source" xsi:type="string">Magento\AsynchronousOperations\Ui\Component\DataProvider\SearchResult</item><item name="failed_operation_listing_data_source" xsi:type="string">Magento\AsynchronousOperations\Ui\Component\DataProvider\Operation\Failed\SearchResult</item><item name="retriable_operation_listing_data_source" xsi:type="string">Magento\AsynchronousOperations\Ui\Component\DataProvider\Operation\Retriable\SearchResult</item><item name="failed_operation_modal_listing_data_source" xsi:type="string">Magento\AsynchronousOperations\Ui\Component\DataProvider\Operation\Failed\SearchResult</item><item name="retriable_operation_modal_listing_data_source" xsi:type="string">Magento\AsynchronousOperations\Ui\Component\DataProvider\Operation\Retriable\SearchResult</item><item name="cmsstaging_page_upcoming_grid_data_source" xsi:type="string">stagingCmsPageUpcomingResult</item><item name="cmsstaging_page_update_select_grid_data_source" xsi:type="string">stagingCmsPageUpdateSelectResult</item><item name="cmsstaging_page_update_remove_select_grid_data_source" xsi:type="string">stagingCmsPageUpdateSelectResult</item><item name="cmsstaging_block_upcoming_grid_data_source" xsi:type="string">stagingCmsBlockUpcomingResult</item><item name="cmsstaging_block_update_select_grid_data_source" xsi:type="string">stagingCmsBlockUpdateSelectResult</item><item name="cmsstaging_block_update_remove_select_grid_data_source" xsi:type="string">stagingCmsBlockUpdateSelectResult</item><item name="staging_update_edit_page_grid_data_source" xsi:type="string">Magento\Cms\Model\ResourceModel\Page\Grid\Collection</item><item name="staging_update_edit_block_grid_data_source" xsi:type="string">Magento\Cms\Model\ResourceModel\Block\Grid\Collection</item><item name="adyen_notifications_overview_data_source" xsi:type="string">Adyen\Payment\Model\ResourceModel\Notification\UiComponentCollection</item><item name="tagged_posts_listing_data_source" xsi:type="string">Amasty\Blog\Model\ResourceModel\Posts\Collection\Grid</item><item name="category_posts_listing_data_source" xsi:type="string">Amasty\Blog\Model\ResourceModel\Posts\Collection\Grid</item><item name="author_posts_listing_data_source" xsi:type="string">Amasty\Blog\Model\ResourceModel\Posts\Collection\Grid</item><item name="comments_listing_data_source" xsi:type="string">Amasty\Blog\Model\ResourceModel\Comments\Collection\Grid</item><item name="authors_listing_data_source" xsi:type="string">Amasty\Blog\Model\ResourceModel\Author\Collection\Grid</item><item name="tags_listing_data_source" xsi:type="string">Amasty\Blog\Model\ResourceModel\Tag\Collection\Grid</item><item name="categories_listing_data_source" xsi:type="string">Amasty\Blog\Model\ResourceModel\Categories\Collection\Grid</item><item name="posts_listing_data_source" xsi:type="string">Amasty\Blog\Model\ResourceModel\Posts\Collection\Grid</item><item name="baseprovider_queue_listing_data_source" xsi:type="string">BaseProviderQueueGridDataProvider</item><item name="baseprovider_log_listing_data_source" xsi:type="string">AvaTaxLogGridDataProvider</item><item name="avatax_tax_classes_customer_listing_data_source" xsi:type="string">ClassyLlama\AvaTax\Model\ResourceModel\Tax\Classes\Customer\Collection</item><item name="avatax_tax_classes_product_listing_data_source" xsi:type="string">ClassyLlama\AvaTax\Model\ResourceModel\Tax\Classes\Product\Collection</item><item name="avatax_crossborder_classes_listing_data_source" xsi:type="string">ClassyLlama\AvaTax\Model\ResourceModel\CrossBorderClass\Grid\Collection</item><item name="avatax_log_listing_data_source" xsi:type="string">AvaTaxLogGridDataProvider</item><item name="avatax_queue_listing_data_source" xsi:type="string">AvaTaxQueueGridDataProvider</item><item name="classyllama_avatax_crossbordertype_grid_data_source" xsi:type="string">ClassyLlama\AvaTax\Model\ResourceModel\CrossBorderType\Grid\Collection</item></argument> </arguments> </type><type name="Magento\Theme\Model\Design\Config\MetadataProvider"> <arguments> <argument name="metadata" xsi:type="array"> <item name="theme_theme_id" xsi:type="array"> <item name="path" xsi:type="string">design/theme/theme_id</item> <item name="fieldset" xsi:type="string">theme</item> <item name="backend_model" xsi:type="string">Magento\Theme\Model\Design\Backend\Theme</item> <item name="use_in_grid" xsi:type="boolean">true</item> </item> <item name="theme_ua_regexp" xsi:type="array"> <item name="path" xsi:type="string">design/theme/ua_regexp</item> <item name="fieldset" xsi:type="string">desing_rule</item> <item name="backend_model" xsi:type="string">Magento\Theme\Model\Design\Backend\Exceptions</item> </item> <item name="pagination_pagination_frame" xsi:type="array"> <item name="path" xsi:type="string">design/pagination/pagination_frame</item> <item name="fieldset" xsi:type="string">other_settings/pagination</item> </item> <item name="pagination_pagination_frame_skip" xsi:type="array"> <item name="path" xsi:type="string">design/pagination/pagination_frame_skip</item> <item name="fieldset" xsi:type="string">other_settings/pagination</item> </item> <item name="pagination_anchor_text_for_previous" xsi:type="array"> <item name="path" xsi:type="string">design/pagination/anchor_text_for_previous</item> <item name="fieldset" xsi:type="string">other_settings/pagination</item> </item> <item name="pagination_anchor_text_for_next" xsi:type="array"> <item name="path" xsi:type="string">design/pagination/anchor_text_for_next</item> <item name="fieldset" xsi:type="string">other_settings/pagination</item> </item> <item name="head_shortcut_icon" xsi:type="array"> <item name="path" xsi:type="string">design/head/shortcut_icon</item> <item name="fieldset" xsi:type="string">other_settings/head</item> <item name="backend_model" xsi:type="string">Magento\Theme\Model\Design\Backend\Favicon</item> <item name="base_url" xsi:type="array"> <item name="type" xsi:type="string">media</item> <item name="scope_info" xsi:type="string">1</item> <item name="value" xsi:type="string">favicon</item> </item> </item> <item name="head_default_title" xsi:type="array"> <item name="path" xsi:type="string">design/head/default_title</item> <item name="fieldset" xsi:type="string">other_settings/head</item> </item> <item name="head_title_prefix" xsi:type="array"> <item name="path" xsi:type="string">design/head/title_prefix</item> <item name="fieldset" xsi:type="string">other_settings/head</item> </item> <item name="head_title_suffix" xsi:type="array"> <item name="path" xsi:type="string">design/head/title_suffix</item> <item name="fieldset" xsi:type="string">other_settings/head</item> </item> <item name="head_default_description" xsi:type="array"> <item name="path" xsi:type="string">design/head/default_description</item> <item name="fieldset" xsi:type="string">other_settings/head</item> </item> <item name="head_default_keywords" xsi:type="array"> <item name="path" xsi:type="string">design/head/default_keywords</item> <item name="fieldset" xsi:type="string">other_settings/head</item> </item> <item name="head_includes" xsi:type="array"> <item name="path" xsi:type="string">design/head/includes</item> <item name="fieldset" xsi:type="string">other_settings/head</item> </item> <item name="head_demonotice" xsi:type="array"> <item name="path" xsi:type="string">design/head/demonotice</item> <item name="fieldset" xsi:type="string">other_settings/head</item> </item> <item name="header_logo_src" xsi:type="array"> <item name="path" xsi:type="string">design/header/logo_src</item> <item name="fieldset" xsi:type="string">other_settings/header</item> <item name="backend_model" xsi:type="string">Magento\Theme\Model\Design\Backend\Logo</item> <item name="base_url" xsi:type="array"> <item name="type" xsi:type="string">media</item> <item name="scope_info" xsi:type="string">1</item> <item name="value" xsi:type="string">logo</item> </item> </item> <item name="header_logo_width" xsi:type="array"> <item name="path" xsi:type="string">design/header/logo_width</item> <item name="fieldset" xsi:type="string">other_settings/header</item> </item> <item name="header_logo_height" xsi:type="array"> <item name="path" xsi:type="string">design/header/logo_height</item> <item name="fieldset" xsi:type="string">other_settings/header</item> </item> <item name="header_logo_alt" xsi:type="array"> <item name="path" xsi:type="string">design/header/logo_alt</item> <item name="fieldset" xsi:type="string">other_settings/header</item> </item> <item name="header_welcome" xsi:type="array"> <item name="path" xsi:type="string">design/header/welcome</item> <item name="fieldset" xsi:type="string">other_settings/header</item> </item> <item name="header_translate_title" xsi:type="array"> <item name="path" xsi:type="string">design/header/translate_title</item> <item name="fieldset" xsi:type="string">other_settings/header</item> </item> <item name="footer_copyright" xsi:type="array"> <item name="path" xsi:type="string">design/footer/copyright</item> <item name="fieldset" xsi:type="string">other_settings/footer</item> </item> <item name="footer_absolute_footer" xsi:type="array"> <item name="path" xsi:type="string">design/footer/absolute_footer</item> <item name="fieldset" xsi:type="string">other_settings/footer</item> </item> <item name="footer_report_bugs" xsi:type="array"> <item name="path" xsi:type="string">design/footer/report_bugs</item> <item name="fieldset" xsi:type="string">other_settings/footer</item> </item> <item name="default_robots" xsi:type="array"> <item name="path" xsi:type="string">design/search_engine_robots/default_robots</item> <item name="fieldset" xsi:type="string">other_settings/search_engine_robots</item> </item> <item name="custom_instructions" xsi:type="array"> <item name="path" xsi:type="string">design/search_engine_robots/custom_instructions</item> <item name="fieldset" xsi:type="string">other_settings/search_engine_robots</item> <item name="backend_model" xsi:type="string">Magento\Robots\Model\Config\Value</item></item> <item name="watermark_image_size" xsi:type="array"> <item name="path" xsi:type="string">design/watermark/image_size</item> <item name="fieldset" xsi:type="string">other_settings/watermark/image</item> </item><item name="watermark_image_imageOpacity" xsi:type="array"> <item name="path" xsi:type="string">design/watermark/image_imageOpacity</item> <item name="fieldset" xsi:type="string">other_settings/watermark/image</item> </item><item name="watermark_image_image" xsi:type="array"> <item name="path" xsi:type="string">design/watermark/image_image</item> <item name="fieldset" xsi:type="string">other_settings/watermark/image</item> <item name="backend_model" xsi:type="string">Magento\Theme\Model\Design\Backend\Image</item> <item name="upload_dir" xsi:type="array"> <item name="config" xsi:type="string">system/filesystem/media</item> <item name="scope_info" xsi:type="string">1</item> <item name="value" xsi:type="string">catalog/product/watermark</item> </item> <item name="base_url" xsi:type="array"> <item name="type" xsi:type="string">media</item> <item name="scope_info" xsi:type="string">1</item> <item name="value" xsi:type="string">catalog/product/watermark</item> </item> </item><item name="watermark_image_position" xsi:type="array"> <item name="path" xsi:type="string">design/watermark/image_position</item> <item name="fieldset" xsi:type="string">other_settings/watermark/image</item> </item><item name="watermark_small_image_size" xsi:type="array"> <item name="path" xsi:type="string">design/watermark/small_image_size</item> <item name="fieldset" xsi:type="string">other_settings/watermark/small_image</item> </item><item name="watermark_small_image_imageOpacity" xsi:type="array"> <item name="path" xsi:type="string">design/watermark/small_image_imageOpacity</item> <item name="fieldset" xsi:type="string">other_settings/watermark/small_image</item> </item><item name="watermark_small_image_image" xsi:type="array"> <item name="path" xsi:type="string">design/watermark/small_image_image</item> <item name="fieldset" xsi:type="string">other_settings/watermark/small_image</item> <item name="backend_model" xsi:type="string">Magento\Theme\Model\Design\Backend\Image</item> <item name="upload_dir" xsi:type="array"> <item name="config" xsi:type="string">system/filesystem/media</item> <item name="scope_info" xsi:type="string">1</item> <item name="value" xsi:type="string">catalog/product/watermark</item> </item> <item name="base_url" xsi:type="array"> <item name="type" xsi:type="string">media</item> <item name="scope_info" xsi:type="string">1</item> <item name="value" xsi:type="string">catalog/product/watermark</item> </item> </item><item name="watermark_small_image_position" xsi:type="array"> <item name="path" xsi:type="string">design/watermark/small_image_position</item> <item name="fieldset" xsi:type="string">other_settings/watermark/small_image</item> </item><item name="watermark_thumbnail_size" xsi:type="array"> <item name="path" xsi:type="string">design/watermark/thumbnail_size</item> <item name="fieldset" xsi:type="string">other_settings/watermark/thumbnail</item> </item><item name="watermark_thumbnail_imageOpacity" xsi:type="array"> <item name="path" xsi:type="string">design/watermark/thumbnail_imageOpacity</item> <item name="fieldset" xsi:type="string">other_settings/watermark/thumbnail</item> </item><item name="watermark_thumbnail_image" xsi:type="array"> <item name="path" xsi:type="string">design/watermark/thumbnail_image</item> <item name="fieldset" xsi:type="string">other_settings/watermark/thumbnail</item> <item name="backend_model" xsi:type="string">Magento\Theme\Model\Design\Backend\Image</item> <item name="upload_dir" xsi:type="array"> <item name="config" xsi:type="string">system/filesystem/media</item> <item name="scope_info" xsi:type="string">1</item> <item name="value" xsi:type="string">catalog/product/watermark</item> </item> <item name="base_url" xsi:type="array"> <item name="type" xsi:type="string">media</item> <item name="scope_info" xsi:type="string">1</item> <item name="value" xsi:type="string">catalog/product/watermark</item> </item> </item><item name="watermark_thumbnail_position" xsi:type="array"> <item name="path" xsi:type="string">design/watermark/thumbnail_position</item> <item name="fieldset" xsi:type="string">other_settings/watermark/thumbnail</item> </item><item name="email_logo" xsi:type="array"> <item name="path" xsi:type="string">design/email/logo</item> <item name="fieldset" xsi:type="string">other_settings/email</item> <item name="backend_model" xsi:type="string">Magento\Email\Model\Design\Backend\Logo</item> <item name="base_url" xsi:type="array"> <item name="type" xsi:type="string">media</item> <item name="scope_info" xsi:type="string">1</item> <item name="value" xsi:type="string">email/logo</item> </item> </item><item name="email_logo_alt" xsi:type="array"> <item name="path" xsi:type="string">design/email/logo_alt</item> <item name="fieldset" xsi:type="string">other_settings/email</item> </item><item name="email_logo_width" xsi:type="array"> <item name="path" xsi:type="string">design/email/logo_width</item> <item name="fieldset" xsi:type="string">other_settings/email</item> </item><item name="email_logo_height" xsi:type="array"> <item name="path" xsi:type="string">design/email/logo_height</item> <item name="fieldset" xsi:type="string">other_settings/email</item> </item><item name="email_header_template" xsi:type="array"> <item name="path" xsi:type="string">design/email/header_template</item> <item name="fieldset" xsi:type="string">other_settings/email</item> </item><item name="email_footer_template" xsi:type="array"> <item name="path" xsi:type="string">design/email/footer_template</item> <item name="fieldset" xsi:type="string">other_settings/email</item> </item></argument> </arguments> </type><type name="Magento\Store\Model\Website"> <plugin name="themeDesignConfigGridIndexerWebsite" type="Magento\Theme\Model\Indexer\Design\Config\Plugin\Website"/> </type><type name="Magento\Store\Model\Group"> <plugin name="themeDesignConfigGridIndexerStoreGroup" type="Magento\Theme\Model\Indexer\Design\Config\Plugin\StoreGroup"/> </type><type name="Magento\Framework\App\Config\PreProcessorComposite"> <arguments> <argument name="processors" xsi:type="array"> <item name="designConfigTheme" xsi:type="object">Magento\Theme\Model\Config\Processor\DesignTheme\Proxy</item> <item name="environmentPlaceholder" xsi:type="object">Magento\Config\Model\Config\Processor\EnvironmentPlaceholder</item></argument> </arguments> </type><type name="Magento\Theme\Model\Config\Processor\DesignTheme"> <arguments> <argument name="themeList" xsi:type="object">Magento\Theme\Model\ResourceModel\Theme\Collection\Proxy</argument> </arguments> </type><type name="Magento\Config\App\Config\Source\DumpConfigSourceAggregated"> <plugin name="designConfigTheme" type="Magento\Theme\Model\Design\Config\Plugin\Dump" sortOrder="50"/> </type><type name="Magento\Theme\Model\Design\Config\Plugin\Dump"> <arguments> <argument name="themeList" xsi:type="object">Magento\Theme\Model\ResourceModel\Theme\Collection</argument> </arguments> </type><type name="Magento\Theme\Ui\Component\Theme\DataProvider\SearchResult"> <arguments> <argument name="mainTable" xsi:type="string">theme</argument> <argument name="resourceModel" xsi:type="string">Magento\Theme\Model\ResourceModel\Theme</argument> <argument name="identifierName" xsi:type="string">theme_id</argument> </arguments> </type><virtualType name="configured_design_cache" type="Magento\Framework\App\Cache"> <arguments> <argument name="cacheIdentifier" xsi:type="string">layout</argument> </arguments> </virtualType><virtualType name="design_context" type="Magento\Framework\Model\Context"> <arguments> <argument name="cacheManager" xsi:type="object">configured_design_cache</argument> </arguments> </virtualType><type name="Magento\Theme\Model\Design"> <arguments> <argument name="context" xsi:type="object">design_context</argument> </arguments> </type><type name="Magento\Theme\Model\Theme\ThemeProvider"> <arguments> <argument name="cache" xsi:type="object">configured_design_cache</argument> </arguments> </type><type name="Magento\Theme\Model\Theme\StoreThemesResolver"> <arguments> <argument name="resolvers" xsi:type="array"> <item name="storeDefaultTheme" xsi:type="object">Magento\Theme\Model\Theme\StoreDefaultThemeResolver</item> <item name="storeUserAgentTheme" xsi:type="object">Magento\Theme\Model\Theme\StoreUserAgentThemeResolver</item> </argument> </arguments> </type><type name="Magento\Theme\Helper\Storage"> <arguments> <argument name="filesystemDriver" xsi:type="object">Magento\Framework\Filesystem\Driver\File</argument> </arguments> </type><type name="Magento\Framework\Data\Collection"> <plugin name="currentPageDetection" type="Magento\Theme\Plugin\Data\Collection"/> </type><preference for="Magento\Eav\Model\Entity\Setup\PropertyMapperInterface" type="Magento\Eav\Model\Entity\Setup\PropertyMapper\Composite"/><preference for="Magento\Eav\Model\Entity\AttributeLoaderInterface" type="Magento\Eav\Model\Entity\AttributeLoader"/><preference for="Magento\Eav\Model\Entity\Attribute\UniqueValidationInterface" type="Magento\Eav\Model\Entity\Attribute\UniqueValidator"/><preference for="Magento\Eav\Model\ReservedAttributeCheckerInterface" type="Magento\Eav\Model\ReservedAttributeChecker"/><preference for="Magento\Eav\Api\Data\AttributeInterface" type="Magento\Eav\Model\Entity\Attribute"/><preference for="Magento\Eav\Api\AttributeRepositoryInterface" type="Magento\Eav\Model\AttributeRepository"/><preference for="Magento\Eav\Api\Data\AttributeGroupInterface" type="Magento\Eav\Model\Entity\Attribute\Group"/><preference for="Magento\Eav\Api\AttributeGroupRepositoryInterface" type="Magento\Eav\Model\Attribute\GroupRepository"/><preference for="Magento\Eav\Api\AttributeSetRepositoryInterface" type="Magento\Eav\Model\AttributeSetRepository"/><preference for="Magento\Eav\Api\AttributeSetManagementInterface" type="Magento\Eav\Model\AttributeSetManagement"/><preference for="Magento\Eav\Api\Data\AttributeSetInterface" type="Magento\Eav\Model\Entity\Attribute\Set"/><preference for="Magento\Eav\Api\AttributeManagementInterface" type="Magento\Eav\Model\AttributeManagement"/><preference for="Magento\Eav\Api\Data\AttributeFrontendLabelInterface" type="Magento\Eav\Model\Entity\Attribute\FrontendLabel"/><preference for="Magento\Eav\Api\Data\AttributeOptionInterface" type="Magento\Eav\Model\Entity\Attribute\Option"/><preference for="Magento\Eav\Api\AttributeOptionManagementInterface" type="Magento\Eav\Model\Entity\Attribute\OptionManagement"/><preference for="Magento\Eav\Api\AttributeOptionUpdateInterface" type="Magento\Eav\Model\Entity\Attribute\OptionManagement"/><preference for="Magento\Eav\Api\Data\AttributeOptionLabelInterface" type="Magento\Eav\Model\Entity\Attribute\OptionLabel"/><preference for="Magento\Eav\Api\Data\AttributeValidationRuleInterface" type="Magento\Eav\Model\Entity\Attribute\ValidationRule"/><preference for="Magento\Eav\Api\Data\AttributeSearchResultsInterface" type="Magento\Eav\Model\AttributeSearchResults"/><preference for="Magento\Eav\Api\Data\AttributeSetSearchResultsInterface" type="Magento\Eav\Model\AttributeSetSearchResults"/><preference for="Magento\Eav\Api\Data\AttributeGroupSearchResultsInterface" type="Magento\Eav\Model\AttributeGroupSearchResults"/><preference for="Magento\Framework\Webapi\CustomAttributeTypeLocatorInterface" type="Magento\Eav\Model\TypeLocator"/><type name="Magento\Eav\Model\Entity\Attribute\Config"> <arguments> <argument name="reader" xsi:type="object">Magento\Eav\Model\Entity\Attribute\Config\Reader\Proxy</argument> </arguments> </type><type name="Magento\Eav\Model\ResourceModel\Helper"> <arguments> <argument name="modulePrefix" xsi:type="string">eav</argument> </arguments> </type><type name="Magento\Eav\Model\Entity\Setup\PropertyMapper\Composite"> <arguments> <argument name="propertyMappers" xsi:type="array"> <item name="default" xsi:type="string">Magento\Eav\Model\Entity\Setup\PropertyMapper</item> <item name="customer" xsi:type="string">Magento\Customer\Model\ResourceModel\Setup\PropertyMapper</item><item name="catalog" xsi:type="string">Magento\Catalog\Model\ResourceModel\Setup\PropertyMapper</item><item name="catalog_search" xsi:type="string">Magento\CatalogSearch\Model\ResourceModel\Setup\PropertyMapper</item><item name="configurable" xsi:type="string">Magento\ConfigurableProduct\Model\ResourceModel\Setup\PropertyMapper</item><item name="reward" xsi:type="string">Magento\Reward\Model\ResourceModel\Setup\PropertyMapper</item><item name="rma" xsi:type="string">Magento\Rma\Model\ResourceModel\Setup\PropertyMapper</item></argument> </arguments> </type><type name="Magento\Eav\Model\ResourceModel\Entity\Attribute"> <plugin name="storeLabelCaching" type="Magento\Eav\Plugin\Model\ResourceModel\Entity\Attribute"/> </type><type name="Magento\Framework\Webapi\ServiceTypeToEntityTypeMap"> <arguments> <argument name="serviceTypeToEntityTypeMap" xsi:type="array"><item name="Magento\Customer\Api\Data\CustomerInterface" xsi:type="const">Magento\Customer\Api\CustomerMetadataInterface::ENTITY_TYPE_CUSTOMER</item><item name="Magento\Customer\Api\Data\AddressInterface" xsi:type="const">Magento\Customer\Api\AddressMetadataInterface::ENTITY_TYPE_ADDRESS</item><item name="Magento\Catalog\Api\Data\ProductInterface" xsi:type="const">Magento\Catalog\Api\Data\ProductAttributeInterface::ENTITY_TYPE_CODE</item><item name="Magento\Catalog\Api\Data\CategoryInterface" xsi:type="const">Magento\Catalog\Api\Data\CategoryAttributeInterface::ENTITY_TYPE_CODE</item></argument> </arguments> </type><type name="Magento\Eav\Model\TypeLocator"> <arguments> <argument name="typeLocators" xsi:type="array"> <item name="simpleType" sortOrder="50" xsi:type="object">Magento\Eav\Model\TypeLocator\SimpleType</item> <item name="complexType" sortOrder="10" xsi:type="object">Magento\Eav\Model\TypeLocator\ComplexType</item> <item name="serviceClassType" sortOrder="0" xsi:type="object">Magento\Eav\Model\TypeLocator\ServiceClassLocator</item> </argument> </arguments> </type><type name="Magento\Eav\Model\TypeLocator\ComplexType"> <arguments> <argument name="backendModelToAttributeTypeMap" xsi:type="array"> <item name="Magento\Eav\Model\Attribute\Data\Text" xsi:type="string">string</item> <item name="Magento\Eav\Model\Attribute\Data\Date" xsi:type="string">string</item> <item name="Magento\Eav\Model\Attribute\Data\Boolean" xsi:type="string">boolean</item> <item name="Magento\Eav\Model\Attribute\Data\File" xsi:type="string">string</item> <item name="Magento\Eav\Model\Attribute\Data\Hidden" xsi:type="string">string</item> <item name="Magento\Eav\Model\Attribute\Data\Image" xsi:type="string">Magento\Framework\Api\Data\ImageContentInterface</item> <item name="Magento\Eav\Model\Attribute\Data\Multiline" xsi:type="string">string</item> <item name="Magento\Eav\Model\Attribute\Data\Multiselect" xsi:type="string">string</item> <item name="Magento\Eav\Model\Attribute\Data\Select" xsi:type="string">string</item> <item name="Magento\Eav\Model\Attribute\Data\Textarea" xsi:type="string">string</item> <item name="Magento\Eav\Model\Entity\Attribute\Backend\DefaultBackend" xsi:type="string">string</item> <item name="Magento\Customer\Api\Data\CustomerInterface" xsi:type="array"> <item name="Magento\Eav\Model\Attribute\Data\Image" xsi:type="string">Magento\Framework\Api\Data\ImageContentInterface</item> </item><item name="Magento\Customer\Model\Customer\Attribute\Backend\Website" xsi:type="string">int</item><item name="Magento\Customer\Model\Customer\Attribute\Backend\Store" xsi:type="string">int</item><item name="Magento\Customer\Model\Attribute\Backend\Data\Boolean" xsi:type="string">boolean</item><item name="Magento\Customer\Model\Customer\Attribute\Backend\Password" xsi:type="string">string</item><item name="Magento\Customer\Model\Customer\Attribute\Backend\Billing" xsi:type="string">Magento\Customer\Api\Data\AddressInterface</item><item name="Magento\Customer\Model\Customer\Attribute\Backend\Shipping" xsi:type="string">Magento\Customer\Api\Data\AddressInterface</item><item name="Magento\Eav\Model\Entity\Attribute\Backend\Datetime" xsi:type="string">string</item><item name="Magento\Customer\Model\ResourceModel\Address\Attribute\Backend\Region" xsi:type="string">Magento\Customer\Api\Data\RegionInterface</item><item name="Magento\Catalog\Model\Product\Attribute\Backend\Sku" xsi:type="string">string</item><item name="Magento\Catalog\Model\Product\Attribute\Backend\Category" xsi:type="string">int[]</item><item name="Magento\Catalog\Model\Product\Attribute\Backend\Stock" xsi:type="string">Magento\CatalogInventory\Api\Data\StockItemInterface[]</item><item name="Magento\Catalog\Model\Category\Attribute\Backend\Sortby" xsi:type="string">string[]</item><item name="Magento\Catalog\Api\Data\ProductInterface" xsi:type="array"> <item name="Magento\GiftCard\Model\Attribute\Backend\Giftcard\Amount" xsi:type="string">Magento\GiftCard\Api\Data\GiftcardAmountInterface[]</item> </item></argument> </arguments> </type><type name="Magento\Eav\Model\Entity\Attribute"> <arguments> <argument name="reservedAttributeList" xsi:type="object">Magento\Catalog\Model\Product\ReservedAttributeList\Proxy</argument> </arguments> </type><type name="Magento\Framework\EntityManager\Operation\AttributePool"> <arguments> <argument name="extensionActions" xsi:type="array"> <item name="eav" xsi:type="array"> <item name="default" xsi:type="array"> <item name="read" xsi:type="string">Magento\Eav\Model\ResourceModel\ReadHandler</item> <item name="create" xsi:type="string">Magento\Eav\Model\ResourceModel\CreateHandler</item> <item name="update" xsi:type="string">Magento\Eav\Model\ResourceModel\UpdateHandler</item> </item> <item name="Magento\Catalog\Api\Data\CategoryInterface" xsi:type="array"> <item name="create" xsi:type="string">Magento\CatalogStaging\Model\ResourceModel\CatalogCreateHandler</item> <item name="update" xsi:type="string">Magento\Catalog\Model\ResourceModel\UpdateHandler</item> </item><item name="Magento\Catalog\Api\Data\ProductInterface" xsi:type="array"> <item name="create" xsi:type="string">Magento\CatalogStaging\Model\ResourceModel\CatalogCreateHandler</item> <item name="update" xsi:type="string">Magento\Catalog\Model\ResourceModel\UpdateHandler</item> </item></item> <item name="websites" xsi:type="array"> <item name="Magento\Catalog\Api\Data\ProductInterface" xsi:type="array"> <item name="create" xsi:type="string">Magento\Catalog\Model\ResourceModel\ProductWebsiteAssignmentHandler</item> </item> </item><item name="catalogRule" xsi:type="array"> <item name="Magento\CatalogRule\Api\Data\RuleInterface" xsi:type="array"> <item name="read" xsi:type="string">Magento\CatalogRule\Model\ResourceModel\ReadHandler</item> <item name="create" xsi:type="string">Magento\CatalogRule\Model\ResourceModel\SaveHandler</item> <item name="update" xsi:type="string">Magento\CatalogRule\Model\ResourceModel\SaveHandler</item> </item> </item><item name="salesRule" xsi:type="array"> <item name="Magento\SalesRule\Api\Data\RuleInterface" xsi:type="array"> <item name="read" xsi:type="string">Magento\SalesRule\Model\ResourceModel\ReadHandler</item> <item name="create" xsi:type="string">Magento\SalesRule\Model\ResourceModel\SaveHandler</item> <item name="update" xsi:type="string">Magento\SalesRule\Model\ResourceModel\SaveHandler</item> </item> </item><item name="bannerCatalogRule" xsi:type="array"> <item name="Magento\CatalogRule\Api\Data\RuleInterface" xsi:type="array"> <item name="read" xsi:type="string">Magento\Banner\Model\ResourceModel\Catalogrule\ReadHandler</item> </item> </item></argument> </arguments> </type><type name="Magento\Framework\Model\EntitySnapshot\AttributeProvider"> <arguments> <argument name="providers" xsi:type="array"> <item name="default" xsi:type="array"> <item name="eav" xsi:type="string">\Magento\Eav\Model\AttributeProvider</item> </item> </argument> </arguments> </type><type name="Magento\Eav\Model\Entity\AbstractEntity"> <plugin name="clean_cache" type="Magento\Framework\App\Cache\FlushCacheByTags"/> </type><virtualType name="Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor"> <arguments> <argument name="processors" xsi:type="array"> <item name="filters" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor</item> <item name="sorting" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\SortingProcessor</item> <item name="pagination" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\PaginationProcessor</item> </argument> </arguments> </virtualType><type name="Magento\Eav\Model\AttributeRepository"> <arguments> <argument name="collectionProcessor" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\AttributeCollectionProcessor</argument> </arguments> </type><virtualType name="Magento\Eav\Model\Api\SearchCriteria\AttributeCollectionProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor"> <arguments> <argument name="processors" xsi:type="array"> <item name="filters" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\AttributeFilterProcessor</item> <item name="sorting" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\AttributeSortingProcessor</item> <item name="pagination" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\PaginationProcessor</item> </argument> </arguments> </virtualType><virtualType name="Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\AttributeFilterProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\FilterProcessor"> <arguments> <argument name="fieldMapping" xsi:type="array"> <item name="attribute_id" xsi:type="string">main_table.attribute_id</item> </argument> </arguments> </virtualType><virtualType name="Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\AttributeSortingProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\SortingProcessor"> <arguments> <argument name="fieldMapping" xsi:type="array"> <item name="attribute_id" xsi:type="string">main_table.attribute_id</item> </argument> </arguments> </virtualType><virtualType name="Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\AttributeSetFilterProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\FilterProcessor"> <arguments> <argument name="customFilters" xsi:type="array"> <item name="entity_type_code" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor\AttributeSetEntityTypeCodeFilter</item> </argument> </arguments> </virtualType><virtualType name="Magento\Eav\Model\Api\SearchCriteria\AttributeSetCollectionProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor"> <arguments> <argument name="processors" xsi:type="array"> <item name="filters" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\AttributeSetFilterProcessor</item> <item name="sorting" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\SortingProcessor</item> <item name="pagination" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\PaginationProcessor</item> </argument> </arguments> </virtualType><type name="Magento\Eav\Model\AttributeSetRepository"> <arguments> <argument name="collectionProcessor" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\AttributeSetCollectionProcessor</argument> </arguments> </type><virtualType name="Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\AttributeGroupFilterProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\FilterProcessor"> <arguments> <argument name="fieldMapping" xsi:type="array"> <item name="attribute_group_code" xsi:type="string">main_table.attribute_group_code</item> </argument> <argument name="customFilters" xsi:type="array"> <item name="attribute_set_id" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor\AttributeGroupAttributeSetIdFilter</item> <item name="attribute_group_code" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor\AttributeGroupCodeFilter</item> </argument> </arguments> </virtualType><virtualType name="Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\AttributeGroupSortingProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\SortingProcessor"> <arguments> <argument name="fieldMapping" xsi:type="array"> <item name="attribute_group_code" xsi:type="string">main_table.attribute_group_code</item> </argument> <argument name="defaultOrders" xsi:type="array"> <item name="sort_order" xsi:type="string">ASC</item> </argument> </arguments> </virtualType><virtualType name="Magento\Eav\Model\Api\SearchCriteria\AttributeGroupCollectionProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor"> <arguments> <argument name="processors" xsi:type="array"> <item name="filters" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\AttributeGroupFilterProcessor</item> <item name="sorting" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\AttributeGroupSortingProcessor</item> <item name="pagination" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\PaginationProcessor</item> </argument> </arguments> </virtualType><type name="Magento\Eav\Model\Attribute\GroupRepository"> <arguments> <argument name="collectionProcessor" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\AttributeGroupCollectionProcessor</argument> </arguments> </type><type name="Magento\Framework\EntityManager\CompositeMapper"> <arguments> <argument name="mappers" xsi:type="array"> <item name="mapper" xsi:type="object">Magento\Framework\EntityManager\Mapper</item> <item name="customAttributesMapper" xsi:type="object">Magento\Eav\Model\CustomAttributesMapper</item> </argument> </arguments> </type><virtualType name="configured_eav_cache" type="Magento\Framework\App\Cache"> <arguments> <argument name="cacheIdentifier" xsi:type="string">eav</argument> </arguments> </virtualType><type name="Magento\Eav\Model\Config"> <arguments> <argument name="cache" xsi:type="object">configured_eav_cache</argument> <argument name="attributesForPreload" xsi:type="array"> <item name="customer" xsi:type="array"> <item name="confirmation" xsi:type="string">customer</item> <item name="created_at" xsi:type="string">customer</item> <item name="created_in" xsi:type="string">customer</item> <item name="default_billing" xsi:type="string">customer</item> <item name="default_shipping" xsi:type="string">customer</item> <item name="disable_auto_group_change" xsi:type="string">customer</item> <item name="dob" xsi:type="string">customer</item> <item name="email" xsi:type="string">customer</item> <item name="failures_num" xsi:type="string">customer</item> <item name="firstname" xsi:type="string">customer</item> <item name="first_failure" xsi:type="string">customer</item> <item name="gender" xsi:type="string">customer</item> <item name="group_id" xsi:type="string">customer</item> <item name="lastname" xsi:type="string">customer</item> <item name="lock_expires" xsi:type="string">customer</item> <item name="middlename" xsi:type="string">customer</item> <item name="password_hash" xsi:type="string">customer</item> <item name="prefix" xsi:type="string">customer</item> <item name="rp_token" xsi:type="string">customer</item> <item name="rp_token_created_at" xsi:type="string">customer</item> <item name="store_id" xsi:type="string">customer</item> <item name="suffix" xsi:type="string">customer</item> <item name="taxvat" xsi:type="string">customer</item> <item name="updated_at" xsi:type="string">customer</item> <item name="website_id" xsi:type="string">customer</item> <item name="reward_update_notification" xsi:type="string">customer</item><item name="reward_warning_notification" xsi:type="string">customer</item></item> <item name="customer_address" xsi:type="array"> <item name="city" xsi:type="string">customer_address</item> <item name="company" xsi:type="string">customer_address</item> <item name="country_id" xsi:type="string">customer_address</item> <item name="fax" xsi:type="string">customer_address</item> <item name="firstname" xsi:type="string">customer_address</item> <item name="lastname" xsi:type="string">customer_address</item> <item name="middlename" xsi:type="string">customer_address</item> <item name="postcode" xsi:type="string">customer_address</item> <item name="prefix" xsi:type="string">customer_address</item> <item name="region" xsi:type="string">customer_address</item> <item name="region_id" xsi:type="string">customer_address</item> <item name="street" xsi:type="string">customer_address</item> <item name="suffix" xsi:type="string">customer_address</item> <item name="telephone" xsi:type="string">customer_address</item> <item name="vat_id" xsi:type="string">customer_address</item> <item name="vat_is_valid" xsi:type="string">customer_address</item> <item name="vat_request_date" xsi:type="string">customer_address</item> <item name="vat_request_id" xsi:type="string">customer_address</item> <item name="vat_request_success" xsi:type="string">customer_address</item> </item> <item name="catalog_product" xsi:type="array"> <item name="category_ids" xsi:type="string">catalog_product</item> <item name="country_of_manufacture" xsi:type="string">catalog_product</item> <item name="created_at" xsi:type="string">catalog_product</item> <item name="custom_design" xsi:type="string">catalog_product</item> <item name="custom_design_from" xsi:type="string">catalog_product</item> <item name="custom_design_to" xsi:type="string">catalog_product</item> <item name="custom_layout" xsi:type="string">catalog_product</item> <item name="custom_layout_update" xsi:type="string">catalog_product</item> <item name="description" xsi:type="string">catalog_product</item> <item name="gallery" xsi:type="string">catalog_product</item> <item name="has_options" xsi:type="string">catalog_product</item> <item name="image" xsi:type="string">catalog_product</item> <item name="image_label" xsi:type="string">catalog_product</item> <item name="media_gallery" xsi:type="string">catalog_product</item> <item name="meta_description" xsi:type="string">catalog_product</item> <item name="meta_keyword" xsi:type="string">catalog_product</item> <item name="meta_title" xsi:type="string">catalog_product</item> <item name="minimal_price" xsi:type="string">catalog_product</item> <item name="name" xsi:type="string">catalog_product</item> <item name="news_from_date" xsi:type="string">catalog_product</item> <item name="news_to_date" xsi:type="string">catalog_product</item> <item name="old_id" xsi:type="string">catalog_product</item> <item name="options_container" xsi:type="string">catalog_product</item> <item name="page_layout" xsi:type="string">catalog_product</item> <item name="price" xsi:type="string">catalog_product</item> <item name="quantity_and_stock_status" xsi:type="string">catalog_product</item> <item name="required_options" xsi:type="string">catalog_product</item> <item name="short_description" xsi:type="string">catalog_product</item> <item name="sku" xsi:type="string">catalog_product</item> <item name="small_image" xsi:type="string">catalog_product</item> <item name="small_image_label" xsi:type="string">catalog_product</item> <item name="special_from_date" xsi:type="string">catalog_product</item> <item name="special_price" xsi:type="string">catalog_product</item> <item name="special_to_date" xsi:type="string">catalog_product</item> <item name="status" xsi:type="string">catalog_product</item> <item name="thumbnail" xsi:type="string">catalog_product</item> <item name="thumbnail_label" xsi:type="string">catalog_product</item> <item name="tier_price" xsi:type="string">catalog_product</item> <item name="updated_at" xsi:type="string">catalog_product</item> <item name="visibility" xsi:type="string">catalog_product</item> <item name="weight" xsi:type="string">catalog_product</item> <item name="price_type" xsi:type="string">catalog_product</item><item name="price_view" xsi:type="string">catalog_product</item><item name="shipment_type" xsi:type="string">catalog_product</item><item name="sku_type" xsi:type="string">catalog_product</item><item name="weight_type" xsi:type="string">catalog_product</item><item name="url_key" xsi:type="string">catalog_product</item><item name="url_path" xsi:type="string">catalog_product</item><item name="msrp" xsi:type="string">catalog_product</item><item name="msrp_display_actual_price_type" xsi:type="string">catalog_product</item><item name="links_exist" xsi:type="string">catalog_product</item><item name="links_purchased_separately" xsi:type="string">catalog_product</item><item name="links_title" xsi:type="string">catalog_product</item><item name="samples_title" xsi:type="string">catalog_product</item><item name="allow_message" xsi:type="string">catalog_product</item><item name="allow_open_amount" xsi:type="string">catalog_product</item><item name="email_template" xsi:type="string">catalog_product</item><item name="giftcard_amounts" xsi:type="string">catalog_product</item><item name="giftcard_type" xsi:type="string">catalog_product</item><item name="lifetime" xsi:type="string">catalog_product</item><item name="open_amount_max" xsi:type="string">catalog_product</item><item name="open_amount_min" xsi:type="string">catalog_product</item><item name="use_config_allow_message" xsi:type="string">catalog_product</item><item name="use_config_email_template" xsi:type="string">catalog_product</item><item name="is_redeemable" xsi:type="string">catalog_product</item><item name="use_config_is_redeemable" xsi:type="string">catalog_product</item><item name="use_config_lifetime" xsi:type="string">catalog_product</item><item name="related_tgtr_position_behavior" xsi:type="string">catalog_product</item><item name="related_tgtr_position_limit" xsi:type="string">catalog_product</item><item name="upsell_tgtr_position_behavior" xsi:type="string">catalog_product</item><item name="upsell_tgtr_position_limit" xsi:type="string">catalog_product</item><item name="tax_class_id" xsi:type="string">catalog_product</item><item name="gift_message_available" xsi:type="string">catalog_product</item><item name="gift_wrapping_available" xsi:type="string">catalog_product</item><item name="gift_wrapping_price" xsi:type="string">catalog_product</item><item name="is_returnable" xsi:type="string">catalog_product</item><item name="swatch_image" xsi:type="string">catalog_product</item></item><item name="catalog_category" xsi:type="array"> <item name="all_children" xsi:type="string">catalog_category</item> <item name="available_sort_by" xsi:type="string">catalog_category</item> <item name="children" xsi:type="string">catalog_category</item> <item name="children_count" xsi:type="string">catalog_category</item> <item name="custom_apply_to_products" xsi:type="string">catalog_category</item> <item name="custom_design" xsi:type="string">catalog_category</item> <item name="custom_design_from" xsi:type="string">catalog_category</item> <item name="custom_design_to" xsi:type="string">catalog_category</item> <item name="custom_layout_update" xsi:type="string">catalog_category</item> <item name="custom_use_parent_settings" xsi:type="string">catalog_category</item> <item name="default_sort_by" xsi:type="string">catalog_category</item> <item name="description" xsi:type="string">catalog_category</item> <item name="display_mode" xsi:type="string">catalog_category</item> <item name="filter_price_range" xsi:type="string">catalog_category</item> <item name="image" xsi:type="string">catalog_category</item> <item name="include_in_menu" xsi:type="string">catalog_category</item> <item name="is_active" xsi:type="string">catalog_category</item> <item name="is_anchor" xsi:type="string">catalog_category</item> <item name="landing_page" xsi:type="string">catalog_category</item> <item name="level" xsi:type="string">catalog_category</item> <item name="meta_description" xsi:type="string">catalog_category</item> <item name="meta_keywords" xsi:type="string">catalog_category</item> <item name="meta_title" xsi:type="string">catalog_category</item> <item name="name" xsi:type="string">catalog_category</item> <item name="page_layout" xsi:type="string">catalog_category</item> <item name="path" xsi:type="string">catalog_category</item> <item name="path_in_store" xsi:type="string">catalog_category</item> <item name="position" xsi:type="string">catalog_category</item> <item name="url_key" xsi:type="string">catalog_category</item><item name="url_path" xsi:type="string">catalog_category</item></item></argument></arguments> </type><preference for="Magento\Customer\Api\AddressRepositoryInterface" type="Magento\Customer\Model\ResourceModel\AddressRepository"/><preference for="Magento\Customer\Api\CustomerRepositoryInterface" type="Magento\Customer\Model\ResourceModel\CustomerRepository"/><preference for="Magento\Customer\Api\GroupManagementInterface" type="Magento\Customer\Model\GroupManagement"/><preference for="Magento\Customer\Api\CustomerGroupConfigInterface" type="Magento\Customer\Model\CustomerGroupConfig"/><preference for="Magento\Customer\Api\GroupRepositoryInterface" type="Magento\Customer\Model\ResourceModel\GroupRepository"/><preference for="Magento\Customer\Api\Data\CustomerInterface" type="Magento\Customer\Model\Data\Customer"/><preference for="Magento\Customer\Api\Data\AddressInterface" type="Magento\Customer\Model\Data\Address"/><preference for="Magento\Customer\Api\Data\RegionInterface" type="Magento\Customer\Model\Data\Region"/><preference for="Magento\Customer\Api\Data\AttributeMetadataInterface" type="Magento\Customer\Model\Data\AttributeMetadata"/><preference for="Magento\Customer\Api\Data\GroupInterface" type="Magento\Customer\Model\Data\Group"/><preference for="Magento\Customer\Api\Data\GroupExcludedWebsiteInterface" type="Magento\Customer\Model\Data\GroupExcludedWebsite"/><preference for="Magento\Customer\Api\Data\OptionInterface" type="Magento\Customer\Model\Data\Option"/><preference for="Magento\Customer\Api\Data\ValidationRuleInterface" type="Magento\Customer\Model\Data\ValidationRule"/><preference for="Magento\Customer\Api\Data\ValidationResultsInterface" type="Magento\Customer\Model\Data\ValidationResults"/><preference for="Magento\Customer\Api\Data\GroupSearchResultsInterface" type="Magento\Customer\Model\GroupSearchResults"/><preference for="Magento\Customer\Api\Data\CustomerSearchResultsInterface" type="Magento\Customer\Model\CustomerSearchResults"/><preference for="Magento\Customer\Api\Data\AddressSearchResultsInterface" type="Magento\Customer\Model\AddressSearchResults"/><preference for="Magento\Customer\Api\AccountManagementInterface" type="Magento\Customer\Model\AccountManagement"/><preference for="Magento\Customer\Api\CustomerMetadataInterface" type="Magento\Customer\Model\Metadata\CustomerCachedMetadata"/><preference for="Magento\Customer\Api\AddressMetadataInterface" type="Magento\Customer\Model\Metadata\AddressCachedMetadata"/><preference for="Magento\Customer\Api\CustomerMetadataManagementInterface" type="Magento\Customer\Model\Metadata\CustomerMetadataManagement"/><preference for="Magento\Customer\Api\AddressMetadataManagementInterface" type="Magento\Customer\Model\Metadata\AddressMetadataManagement"/><preference for="Magento\Customer\Api\CustomerManagementInterface" type="Magento\Customer\Model\CustomerManagement"/><preference for="Magento\Customer\Model\AuthenticationInterface" type="Magento\Customer\Model\Authentication"/><preference for="Magento\Customer\Model\EmailNotificationInterface" type="Magento\Customer\Model\EmailNotification"/><preference for="Magento\Customer\Api\CustomerNameGenerationInterface" type="Magento\Customer\Helper\View"/><preference for="Magento\Customer\Model\Address\CustomAttributeListInterface" type="Magento\CustomerCustomAttributes\Model\Quote\Address\CustomAttributeList"/><preference for="Magento\Customer\Model\Customer\Source\GroupSourceInterface" type="Magento\Customer\Model\Customer\Source\Group"/><preference for="Magento\Customer\Model\Customer\Attribute\Source\GroupSourceLoggedInOnlyInterface" type="Magento\Customer\Model\Customer\Attribute\Source\Group"/><preference for="Magento\Customer\Block\Account\SortLinkInterface" type="Magento\Customer\Block\Account\SortLink"/><preference for="Magento\Customer\Model\Group\RetrieverInterface" type="Magento\Customer\Model\Group\Retriever"/><preference for="Magento\Customer\Api\SessionCleanerInterface" type="Magento\Customer\Model\Session\SessionCleaner"/><preference for="Magento\Customer\Api\GroupExcludedWebsiteRepositoryInterface" type="Magento\Customer\Model\ResourceModel\GroupExcludedWebsiteRepository"/><virtualType name="SessionValidator" type="Magento\Framework\Session\CompositeValidator"> <arguments> <argument name="validators" xsi:type="array"> <item name="validator" xsi:type="object">Magento\Framework\Session\Validator</item> <item name="cutoff_validator" xsi:type="object"> Magento\Customer\Model\Session\Validators\CutoffValidator </item> </argument> </arguments> </virtualType><type name="Magento\Customer\Model\Session"> <arguments> <argument name="configShare" xsi:type="object">Magento\Customer\Model\Config\Share\Proxy</argument> <argument name="customerUrl" xsi:type="object">Magento\Customer\Model\Url\Proxy</argument> <argument name="customerResource" xsi:type="object">Magento\Customer\Model\ResourceModel\Customer\Proxy</argument> <argument name="storage" xsi:type="object">Magento\Customer\Model\Session\Storage</argument> <argument name="customerRepository" xsi:type="object">Magento\Customer\Api\CustomerRepositoryInterface\Proxy</argument> <argument name="validator" xsi:type="object">SessionValidator</argument> </arguments> <plugin name="staging_preview_customer_session_id_change_bypass" type="Magento\Staging\Plugin\Customer\Model\Session"/></type><type name="Magento\Customer\Helper\Address"> <arguments> <argument name="addressConfig" xsi:type="object">Magento\Customer\Model\Address\Config\Proxy</argument> </arguments> </type><type name="Magento\Customer\Model\Config\Share"> <arguments> <argument name="customerResource" xsi:type="object">Magento\Customer\Model\ResourceModel\Customer\Proxy</argument> </arguments> </type><type name="Magento\Customer\Model\ResourceModel\Address"> <arguments> <argument name="customerRepository" xsi:type="object">Magento\Customer\Api\CustomerRepositoryInterface\Proxy</argument> <argument name="entitySnapshot" xsi:type="object">CustomerAddressSnapshot</argument> <argument name="entityRelationComposite" xsi:type="object">CustomerAddressRelationsComposite</argument> </arguments> </type><type name="Magento\Customer\Model\Address\Config"> <arguments> <argument name="reader" xsi:type="object">Magento\Customer\Model\Address\Config\Reader\Proxy</argument> </arguments> </type><type name="Magento\Customer\Model\Visitor"> <arguments> <argument name="ignoredUserAgents" xsi:type="array"> <item name="google1" xsi:type="string">Googlebot/1.0 (googlebot@googlebot.com http://googlebot.com/)</item> <item name="google2" xsi:type="string">Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)</item> <item name="google3" xsi:type="string">Googlebot/2.1 (+http://www.googlebot.com/bot.html)</item> </argument> </arguments> </type><type name="Magento\Customer\Model\ResourceModel\Group" shared="false"> <arguments> <argument name="groupManagement" xsi:type="object">Magento\Customer\Api\GroupManagementInterface\Proxy</argument> </arguments> </type><type name="Magento\Customer\Model\Metadata\CustomerMetadata"> <arguments> <argument name="systemAttributes" xsi:type="array"> <item name="disable_auto_group_change" xsi:type="string">disable_auto_group_change</item> <item name="reward_update_notification" xsi:type="string">reward_update_notification</item></argument> </arguments> </type><virtualType name="SectionInvalidationConfigReader" type="Magento\Framework\Config\Reader\Filesystem"> <arguments> <argument name="idAttributes" xsi:type="array"> <item name="/config/action" xsi:type="string">name</item> <item name="/config/action/section" xsi:type="string">name</item> </argument> <argument name="fileName" xsi:type="string">sections.xml</argument> <argument name="converter" xsi:type="object">\Magento\Customer\CustomerData\SectionConfigConverter</argument> <argument name="schemaLocator" xsi:type="object">Magento\Customer\CustomerData\SchemaLocator</argument> <argument name="defaultScope" xsi:type="string">frontend</argument> </arguments> </virtualType><virtualType name="SectionInvalidationConfigData" type="Magento\Framework\Config\Data"> <arguments> <argument name="reader" xsi:type="object">SectionInvalidationConfigReader</argument> <argument name="cacheId" xsi:type="string">sections_invalidation_config</argument> </arguments> </virtualType><type name="Magento\Customer\Block\SectionConfig"> <arguments> <argument name="sectionConfig" xsi:type="object">SectionInvalidationConfigData</argument> </arguments> </type><type name="Magento\Customer\Block\SectionNamesProvider"> <arguments> <argument name="sectionConfig" xsi:type="object">SectionInvalidationConfigData</argument> </arguments> </type><preference for="Magento\Customer\CustomerData\JsLayoutDataProviderPoolInterface" type="Magento\Customer\CustomerData\JsLayoutDataProviderPool"/><virtualType name="EavVersionControlSnapshot" type="Magento\Framework\Model\ResourceModel\Db\VersionControl\Snapshot"> <arguments> <argument name="metadata" xsi:type="object">Magento\Eav\Model\Entity\VersionControl\Metadata</argument> </arguments> </virtualType><virtualType name="CustomerAddressSnapshot" type="Magento\Customer\Model\ResourceModel\Db\VersionControl\AddressSnapshot"> <arguments> <argument name="metadata" xsi:type="object">Magento\Eav\Model\Entity\VersionControl\Metadata</argument> </arguments> </virtualType><virtualType name="CustomerRelationsComposite" type="Magento\Framework\Model\ResourceModel\Db\VersionControl\RelationComposite"> <arguments> <argument name="relationProcessors" xsi:type="array"> <item name="default" xsi:type="object">Magento\Customer\Model\ResourceModel\Customer\Relation</item> </argument> </arguments> </virtualType><virtualType name="CustomerAddressRelationsComposite" type="Magento\Framework\Model\ResourceModel\Db\VersionControl\RelationComposite"> <arguments> <argument name="relationProcessors" xsi:type="array"> <item name="default" xsi:type="object">Magento\Customer\Model\ResourceModel\Address\Relation</item> </argument> </arguments> </virtualType><type name="Magento\Customer\Model\ResourceModel\Customer"> <arguments> <argument name="entitySnapshot" xsi:type="object">EavVersionControlSnapshot</argument> <argument name="entityRelationComposite" xsi:type="object">CustomerRelationsComposite</argument> </arguments> <plugin name="recollect_quote_on_customer_group_change" type="Magento\Checkout\Model\Plugin\RecollectQuoteOnCustomerGroupChange"/></type><type name="Magento\Customer\Model\ResourceModel\Customer\Collection"> <arguments> <argument name="entitySnapshot" xsi:type="object">EavVersionControlSnapshot</argument> </arguments> </type><type name="Magento\Customer\Model\ResourceModel\Address\Collection"> <arguments> <argument name="entitySnapshot" xsi:type="object">EavVersionControlSnapshot</argument> </arguments> </type><virtualType name="CustomerNameHandler" type="Magento\Framework\Indexer\Handler\ConcatHandler"> <arguments> <argument name="concatExpression" xsi:type="object">CustomerNameExpression</argument> </arguments> </virtualType><virtualType name="ShippingAddressHandler" type="Magento\Framework\Indexer\Handler\ConcatHandler"> <arguments> <argument name="concatExpression" xsi:type="object">ShippingAddressExpression</argument> </arguments> </virtualType><virtualType name="BillingAddressHandler" type="Magento\Framework\Indexer\Handler\ConcatHandler"> <arguments> <argument name="concatExpression" xsi:type="object">BillingAddressExpression</argument> </arguments> </virtualType><virtualType name="CustomerNameExpression" type="Magento\Framework\DB\Sql\ConcatExpression"> <arguments> <argument name="tableName" xsi:type="string">e</argument> <argument name="columns" xsi:type="array"> <item name="prefix" xsi:type="array"> <item name="tableAlias" xsi:type="string">e</item> <item name="columnName" xsi:type="string">prefix</item> </item> <item name="firstname" xsi:type="array"> <item name="tableAlias" xsi:type="string">e</item> <item name="columnName" xsi:type="string">firstname</item> </item> <item name="middlename" xsi:type="array"> <item name="tableAlias" xsi:type="string">e</item> <item name="columnName" xsi:type="string">middlename</item> </item> <item name="lastname" xsi:type="array"> <item name="tableAlias" xsi:type="string">e</item> <item name="columnName" xsi:type="string">lastname</item> </item> <item name="suffix" xsi:type="array"> <item name="tableAlias" xsi:type="string">e</item> <item name="columnName" xsi:type="string">suffix</item> </item> </argument> </arguments> </virtualType><virtualType name="ShippingAddressExpression" type="Magento\Framework\DB\Sql\ConcatExpression"> <arguments> <argument name="columns" xsi:type="array"> <item name="prefix" xsi:type="array"> <item name="tableAlias" xsi:type="string">shipping</item> <item name="columnName" xsi:type="string">street</item> </item> <item name="firstname" xsi:type="array"> <item name="tableAlias" xsi:type="string">shipping</item> <item name="columnName" xsi:type="string">city</item> </item> <item name="middlename" xsi:type="array"> <item name="tableAlias" xsi:type="string">shipping</item> <item name="columnName" xsi:type="string">region</item> </item> <item name="lastname" xsi:type="array"> <item name="tableAlias" xsi:type="string">shipping</item> <item name="columnName" xsi:type="string">postcode</item> </item> </argument> </arguments> </virtualType><virtualType name="BillingAddressExpression" type="Magento\Framework\DB\Sql\ConcatExpression"> <arguments> <argument name="columns" xsi:type="array"> <item name="prefix" xsi:type="array"> <item name="tableAlias" xsi:type="string">billing</item> <item name="columnName" xsi:type="string">street</item> </item> <item name="firstname" xsi:type="array"> <item name="tableAlias" xsi:type="string">billing</item> <item name="columnName" xsi:type="string">city</item> </item> <item name="middlename" xsi:type="array"> <item name="tableAlias" xsi:type="string">billing</item> <item name="columnName" xsi:type="string">region</item> </item> <item name="lastname" xsi:type="array"> <item name="tableAlias" xsi:type="string">billing</item> <item name="columnName" xsi:type="string">postcode</item> </item> </argument> </arguments> </virtualType><type name="Magento\Customer\Model\Indexer\AttributeProvider"> <arguments> <argument name="collection" xsi:type="object" shared="false">Magento\Customer\Model\ResourceModel\Attribute\Collection</argument> </arguments> </type><type name="Magento\Customer\Model\Indexer\Address\AttributeProvider"> <arguments> <argument name="collection" xsi:type="object" shared="false">Magento\Customer\Model\ResourceModel\Address\Attribute\Collection</argument> </arguments> </type><type name="Magento\Customer\Model\ResourceModel\Online\Grid\Collection"> <arguments> <argument name="mainTable" xsi:type="string">customer_visitor</argument> <argument name="resourceModel" xsi:type="string">Magento\Customer\Model\ResourceModel\Visitor</argument> </arguments> </type><type name="Magento\Customer\Api\CustomerRepositoryInterface"> <plugin name="transactionWrapper" type="Magento\Customer\Model\Plugin\CustomerRepository\TransactionWrapper" sortOrder="-1"/> <plugin name="login_as_customer_customer_repository_plugin" type="Magento\LoginAsCustomerAssistance\Plugin\CustomerPlugin"/><plugin name="update_newsletter_subscription_on_customer_update" type="Magento\Newsletter\Model\Plugin\CustomerPlugin"/></type><type name="Magento\Customer\Model\Authorization\CustomerSessionUserContext"> <arguments> <argument name="customerSession" xsi:type="object">Magento\Customer\Model\Session\Proxy</argument> </arguments> </type><type name="Magento\PageCache\Observer\FlushFormKey"> <plugin name="customerFlushFormKey" type="Magento\Customer\Model\Plugin\CustomerFlushFormKey"/> </type><type name="Magento\Customer\Model\Customer\NotificationStorage"> <arguments> <argument name="cache" xsi:type="object">Magento\Customer\Model\Cache\Type\Notification</argument> </arguments> </type><type name="Magento\Customer\Model\ResourceModel\CustomerRepository"> <arguments> <argument name="collectionProcessor" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor</argument> </arguments> </type><virtualType name="Magento\Customer\Model\Api\SearchCriteria\CollectionProcessor\GroupFilterProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\FilterProcessor"> <arguments> <argument name="fieldMapping" xsi:type="array"> <item name="code" xsi:type="string">main_table.customer_group_code</item> <item name="id" xsi:type="string">main_table.customer_group_id</item> <item name="tax_class_name" xsi:type="string">tax_class_table.class_name</item> </argument> </arguments> </virtualType><virtualType name="Magento\Customer\Model\Api\SearchCriteria\CollectionProcessor\GroupSortingProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\SortingProcessor"> <arguments> <argument name="fieldMapping" xsi:type="array"> <item name="code" xsi:type="string">main_table.customer_group_code</item> <item name="id" xsi:type="string">main_table.customer_group_id</item> <item name="tax_class_name" xsi:type="string">tax_class_table.class_name</item> </argument> <argument name="defaultOrders" xsi:type="array"> <item name="id" xsi:type="string">ASC</item> </argument> </arguments> </virtualType><virtualType name="Magento\Customer\Model\Api\SearchCriteria\GroupCollectionProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor"> <arguments> <argument name="processors" xsi:type="array"> <item name="filters" xsi:type="object">Magento\Customer\Model\Api\SearchCriteria\CollectionProcessor\GroupFilterProcessor</item> <item name="sorting" xsi:type="object">Magento\Customer\Model\Api\SearchCriteria\CollectionProcessor\GroupSortingProcessor</item> <item name="pagination" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\PaginationProcessor</item> </argument> </arguments> </virtualType><type name="Magento\Customer\Model\ResourceModel\GroupRepository"> <arguments> <argument name="collectionProcessor" xsi:type="object">Magento\Customer\Model\Api\SearchCriteria\GroupCollectionProcessor</argument> </arguments> <plugin name="create_delete_customer_groups_index_tables" type="Magento\CatalogPermissions\Plugin\Customer\Model\ResourceModel\GroupRepositoryPlugin"/></type><type name="Magento\Customer\Model\ResourceModel\AddressRepository"> <arguments> <argument name="collectionProcessor" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor</argument> </arguments> </type><type name="Magento\Customer\Model\Attribute"> <arguments> <argument name="attributeMetadataCache" xsi:type="object">Magento\Customer\Model\Metadata\AttributeMetadataCache\Proxy</argument> </arguments> </type><type name="Magento\Framework\EntityManager\MetadataPool"> <arguments> <argument name="metadata" xsi:type="array"> <item name="Magento\Customer\Api\Data\CustomerInterface" xsi:type="array"> <item name="entityTableName" xsi:type="string">customer_entity</item> <item name="eavEntityType" xsi:type="string">customer</item> <item name="identifierField" xsi:type="string">entity_id</item> </item> <item name="Magento\Cms\Api\Data\PageInterface" xsi:type="array"> <item name="entityTableName" xsi:type="string">cms_page</item> <item name="identifierField" xsi:type="string">page_id</item> <item name="sequenceTable" xsi:type="string">sequence_cms_page</item></item><item name="Magento\Cms\Api\Data\BlockInterface" xsi:type="array"> <item name="entityTableName" xsi:type="string">cms_block</item> <item name="identifierField" xsi:type="string">block_id</item> <item name="sequenceTable" xsi:type="string">sequence_cms_block</item></item><item name="Magento\Catalog\Api\Data\ProductInterface" xsi:type="array"> <item name="entityTableName" xsi:type="string">catalog_product_entity</item> <item name="eavEntityType" xsi:type="string">catalog_product</item> <item name="identifierField" xsi:type="string">entity_id</item> <item name="entityContext" xsi:type="array"> <item name="store" xsi:type="string">Magento\Store\Model\StoreScopeProvider</item> </item> <item name="sequenceTable" xsi:type="string">sequence_product</item></item><item name="Magento\Catalog\Api\Data\CategoryInterface" xsi:type="array"> <item name="entityTableName" xsi:type="string">catalog_category_entity</item> <item name="eavEntityType" xsi:type="string">catalog_category</item> <item name="identifierField" xsi:type="string">entity_id</item> <item name="entityContext" xsi:type="array"> <item name="store" xsi:type="string">Magento\Store\Model\StoreScopeProvider</item> </item> <item name="sequenceTable" xsi:type="string">sequence_catalog_category</item></item><item name="Magento\Catalog\Api\Data\CategoryLinkInterface" xsi:type="array"> <item name="entityTableName" xsi:type="string">catalog_category_product</item> <item name="identifierField" xsi:type="string">entity_id</item> </item><item name="Magento\Catalog\Api\Data\ProductFrontendActionInterface" xsi:type="array"> <item name="entityTableName" xsi:type="string">catalog_product_frontend_action</item> <item name="identifierField" xsi:type="string">action_id</item> </item><item name="Magento\CatalogRule\Api\Data\RuleInterface" xsi:type="array"> <item name="entityTableName" xsi:type="string">catalogrule</item> <item name="identifierField" xsi:type="string">rule_id</item> <item name="sequenceTable" xsi:type="string">sequence_catalogrule</item></item><item name="Magento\Bundle\Api\Data\OptionInterface" xsi:type="array"> <item name="entityTableName" xsi:type="string">catalog_product_bundle_option</item> <item name="identifierField" xsi:type="string">option_id</item> <item name="sequenceTable" xsi:type="string">sequence_product_bundle_option</item></item><item name="Magento\Bundle\Model\Selection" xsi:type="array"> <item name="entityTableName" xsi:type="string">catalog_product_bundle_selection</item> <item name="identifierField" xsi:type="string">selection_id</item> <item name="sequenceTable" xsi:type="string">sequence_product_bundle_selection</item></item><item name="Magento\SalesRule\Api\Data\RuleInterface" xsi:type="array"> <item name="entityTableName" xsi:type="string">salesrule</item> <item name="identifierField" xsi:type="string">rule_id</item> <item name="sequenceTable" xsi:type="string">sequence_salesrule</item></item><item name="Magento\Downloadable\Api\Data\LinkInterface" xsi:type="array"> <item name="entityTableName" xsi:type="string">downloadable_link</item> <item name="identifierField" xsi:type="string">link_id</item> </item><item name="Magento\Downloadable\Api\Data\SampleInterface" xsi:type="array"> <item name="entityTableName" xsi:type="string">downloadable_sample</item> <item name="identifierField" xsi:type="string">sample_id</item> </item><item name="Magento\GiftCard\Api\Data\GiftcardAmountInterface" xsi:type="array"> <item name="entityTableName" xsi:type="string">magento_giftcard_amount</item> <item name="identifierField" xsi:type="string">value_id</item> </item><item name="Magento\AsynchronousOperations\Api\Data\OperationInterface" xsi:type="array"> <item name="entityTableName" xsi:type="string">magento_operation</item> <item name="identifierField" xsi:type="string">id</item> </item><item name="Magento\AsynchronousOperations\Api\Data\BulkSummaryInterface" xsi:type="array"> <item name="entityTableName" xsi:type="string">magento_bulk</item> <item name="identifierField" xsi:type="string">uuid</item> </item><item name="Magento\AsynchronousOperations\Api\Data\OperationListInterface" xsi:type="array"> <item name="entityTableName" xsi:type="string">magento_operation</item> <item name="identifierField" xsi:type="string">id</item> </item></argument> <argument name="eavMapping" xsi:type="array"> <item name="Magento\Catalog\Api\Data\ProductInterface" xsi:type="string">catalog_product</item> </argument></arguments> </type><type name="Magento\Customer\Ui\Component\MassAction\Group\Options"> <arguments> <argument name="data" xsi:type="array"> <item name="urlPath" xsi:type="string">customer/index/massAssignGroup</item> <item name="paramName" xsi:type="string">group</item> <item name="confirm" xsi:type="array"> <item name="title" xsi:type="string" translatable="true">Assign a Customer Group</item> <item name="message" xsi:type="string" translatable="true">Are you sure to assign selected customers to new group?</item> </item> </argument> </arguments> </type><type name="Magento\Customer\Model\AccountManagement"> <arguments> <argument name="sessionManager" xsi:type="object">Magento\Framework\Session\SessionManagerInterface\Proxy</argument> </arguments> <plugin name="security_check_customer_password_reset_attempt" type="Magento\Security\Model\Plugin\AccountManagement"/></type><type name="Magento\Customer\Model\Address\CompositeValidator"> <arguments> <argument name="validators" xsi:type="array"> <item name="general" xsi:type="object">Magento\Customer\Model\Address\Validator\General</item> <item name="country" xsi:type="object">Magento\Customer\Model\Address\Validator\Country</item> <item name="customer" xsi:type="object">Magento\Customer\Model\Address\Validator\Customer</item> </argument> </arguments> </type><type name="Magento\Customer\Model\ResourceModel\Group\Grid\Collection"> <arguments> <argument name="mainTable" xsi:type="string">customer_group</argument> <argument name="eventPrefix" xsi:type="string">customer_group_grid_collection</argument> <argument name="eventObject" xsi:type="string">customer_group_collection</argument> <argument name="resourceModel" xsi:type="string">Magento\Customer\Model\ResourceModel\Group</argument> </arguments> </type><type name="Magento\Customer\Model\ResourceModel\Address\Grid\Collection"> <arguments> <argument name="mainTable" xsi:type="string">customer_address_entity</argument> <argument name="eventPrefix" xsi:type="string">customer_address_entity_grid_collection</argument> <argument name="eventObject" xsi:type="string">customer_address_entity_grid_collection</argument> <argument name="resourceModel" xsi:type="string">Magento\Customer\Model\ResourceModel\Address</argument> </arguments> </type><type name="Magento\Webapi\Controller\Rest\ParamsOverrider"> <arguments> <argument name="paramOverriders" xsi:type="array"> <item name="%customer_group_id%" xsi:type="object">Magento\Customer\Model\Webapi\ParamOverriderCustomerGroupId</item> <item name="%customer_website_id%" xsi:type="object">Magento\Customer\Model\Webapi\ParamOverriderCustomerWebsiteId</item> <item name="%customer_store_id%" xsi:type="object">Magento\Customer\Model\Webapi\ParamOverriderCustomerStoreId</item> <item name="%cart_id%" xsi:type="object">Magento\Quote\Model\Webapi\ParamOverriderCartId\Proxy</item><item name="%customer_id%" xsi:type="object">Magento\Webapi\Controller\Rest\ParamOverriderCustomerId</item></argument> </arguments> </type><preference for="Magento\Customer\Api\AccountDelegationInterface" type="Magento\Customer\Model\Delegation\AccountDelegation"/><type name="Magento\Customer\Api\GroupRepositoryInterface"> <plugin name="saveCustomerGroupExcludedWebsite" type="Magento\Customer\Model\Plugin\SaveCustomerGroupExcludedWebsite"/> <plugin name="deleteCustomerGroupExcludedWebsite" type="Magento\Customer\Model\Plugin\DeleteCustomerGroupExcludedWebsite"/> <plugin name="getByIdCustomerGroupExcludedWebsite" type="Magento\Customer\Model\Plugin\GetByIdCustomerGroupExcludedWebsite"/> <plugin name="getListCustomerGroupExcludedWebsite" type="Magento\Customer\Model\Plugin\GetListCustomerGroupExcludedWebsite"/> <plugin name="invalidatePriceIndexerOnCustomerGroup" type="Magento\Catalog\Model\Indexer\Product\Price\Plugin\CustomerGroup"/><plugin name="customerGroupEdit" type="Magento\CatalogPermissions\Model\Indexer\Plugin\GroupRepository"/></type><type name="Magento\Customer\Ui\Component\Listing\Columns"> <arguments> <argument name="filterConfigProviders" xsi:type="array"> <item name="text" xsi:type="object">Magento\Customer\Ui\Component\Listing\Filter\TextFilterConfigProvider</item> </argument> </arguments> </type><type name="Magento\AdvancedPricingImportExport\Model\Import\AdvancedPricing"> <plugin name="invalidateAdvancedPriceIndexerOnImport" type="Magento\AdvancedPricingImportExport\Model\Indexer\Product\Price\Plugin\Import"/> </type><type name="Magento\AdvancedPricingImportExport\Model\Import\AdvancedPricing\Validator"> <arguments> <argument name="validators" xsi:type="array"> <item name="tierPrice" xsi:type="object">Magento\AdvancedPricingImportExport\Model\Import\AdvancedPricing\Validator\TierPrice</item> <item name="website" xsi:type="object">Magento\AdvancedPricingImportExport\Model\Import\AdvancedPricing\Validator\Website</item> <item name="tierPriceType" xsi:type="object">Magento\AdvancedPricingImportExport\Model\Import\AdvancedPricing\Validator\TierPriceType</item> </argument> </arguments> </type><preference for="Magento\ImportExport\Controller\Adminhtml\Export\GetFilter" type="Magento\AdvancedPricingImportExport\Controller\Adminhtml\Export\GetFilter"/><preference for="Magento\Framework\Mview\View\State\CollectionInterface" type="Magento\Indexer\Model\ResourceModel\Mview\View\State\Collection"/><preference for="Magento\Framework\Mview\View\StateInterface" type="Magento\Indexer\Model\Mview\View\State"/><preference for="Magento\Framework\Indexer\ConfigInterface" type="Magento\Indexer\Model\Config"/><preference for="Magento\Framework\Indexer\IndexerInterface" type="Magento\Indexer\Model\Indexer\DependencyDecorator"/><preference for="Magento\Framework\Indexer\Table\StrategyInterface" type="Magento\Framework\Indexer\Table\Strategy"/><preference for="Magento\Framework\Indexer\StateInterface" type="Magento\Indexer\Model\Indexer\State"/><preference for="Magento\Framework\Indexer\IndexMutexInterface" type="Magento\Indexer\Model\IndexMutex"/><type name="Magento\Framework\Indexer\Table\StrategyInterface" shared="false"/><type name="Magento\Indexer\Model\Indexer"> <arguments> <argument name="view" xsi:type="object" shared="false">Magento\Framework\Mview\View</argument> </arguments> <plugin name="reindexRow" type="Magento\CatalogStaging\Helper\Indexer"/></type><type name="Magento\Indexer\Model\Config"> <arguments> <argument name="configData" xsi:type="object">Magento\Indexer\Model\Config\Data\Proxy</argument> </arguments> </type><type name="Magento\Indexer\Model\HandlerPool"> <arguments> <argument name="defaultHandler" xsi:type="object">Magento\Indexer\Model\Handler\DefaultHandler</argument> </arguments> </type><type name="Magento\Indexer\Model\Config\Data"> <arguments> <argument name="stateCollection" xsi:type="object" shared="false">Magento\Indexer\Model\ResourceModel\Indexer\State\Collection</argument> </arguments> <plugin name="indexerCategoryFlatConfigGet" type="Magento\Catalog\Model\Indexer\Category\Flat\Plugin\IndexerConfigData"/><plugin name="indexerProductFlatConfigGet" type="Magento\Catalog\Model\Indexer\Product\Flat\Plugin\IndexerConfigData"/><plugin name="catalogPermissionsIndexerConfigGet" type="Magento\CatalogPermissions\Model\Indexer\Plugin\IndexerConfigData"/></type><type name="Magento\Framework\Mview\View\Subscription"> <arguments> <argument name="viewCollection" xsi:type="object" shared="false">Magento\Framework\Mview\View\CollectionInterface</argument> </arguments> </type><type name="Magento\Indexer\Model\Processor"> <plugin name="page-cache-indexer-reindex-clean-cache" type="Magento\Indexer\Model\Processor\CleanCache" sortOrder="10"/> </type><type name="Magento\Indexer\Model\ProcessManager"> <arguments> <argument name="threadsCount" xsi:type="init_parameter">Magento\Indexer\Model\ProcessManager::THREADS_COUNT</argument> </arguments> </type><preference for="Magento\Framework\Indexer\BatchSizeManagementInterface" type="Magento\Framework\Indexer\BatchSizeManagement"/><type name="Magento\Indexer\Model\Indexer\DependencyDecorator"> <arguments> <argument name="indexer" xsi:type="object" shared="false">Magento\Indexer\Model\Indexer</argument> </arguments> </type><type name="Magento\Framework\Indexer\ActionInterface"> <plugin name="cache_cleaner_after_reindex" type="Magento\Indexer\Model\Indexer\CacheCleaner"/> </type><type name="Magento\Framework\Indexer\CacheContext"> <plugin name="defer_cache_cleaning" type="Magento\Indexer\Model\Indexer\DeferCacheCleaning"/> </type><preference for="Magento\Framework\App\Config\Storage\WriterInterface" type="Magento\Framework\App\Config\Storage\Writer"/><preference for="Magento\Backend\Model\Auth\StorageInterface" type="Magento\Backend\Model\Auth\Session"/><preference for="Magento\Backend\Model\Auth\Credential\StorageInterface" type="Magento\User\Model\User"/><preference for="Magento\Backend\App\ConfigInterface" type="Magento\Backend\App\Config"/><preference for="Magento\Backend\Model\UrlInterface" type="Magento\Backend\Model\Url"/><preference for="Magento\Backend\Block\Widget\Button\ToolbarInterface" type="Magento\Backend\Block\Widget\Button\Toolbar"/><preference for="Magento\Backend\Service\V1\ModuleServiceInterface" type="Magento\Backend\Service\V1\ModuleService"/><type name="Magento\Backend\Block\Widget\Button\ButtonList" shared="false"/><type name="Magento\Backend\Model\Menu\Config"> <arguments> <argument name="menuDirector" xsi:type="object">Magento\Backend\Model\Menu\Director\Director</argument> </arguments> </type><type name="Magento\Backend\Helper\Data"> <arguments> <argument name="backendUrl" xsi:type="object">Magento\Backend\Model\UrlInterface\Proxy</argument> <argument name="auth" xsi:type="object">Magento\Backend\Model\Auth\Proxy</argument> <argument name="locale" xsi:type="object">Magento\Backend\Model\Locale\Resolver\Proxy</argument> </arguments> </type><type name="Magento\Backend\Model\Widget\Grid\Row\UrlGenerator"> <arguments> <argument name="backendUrl" xsi:type="object">Magento\Backend\Model\UrlInterface\Proxy</argument> </arguments> </type><type name="Magento\Backend\Model\Url\ScopeResolver"> <arguments> <argument name="areaCode" xsi:type="string">adminhtml</argument> </arguments> </type><type name="Magento\Backend\Model\Url"> <arguments> <argument name="scopeResolver" xsi:type="object">Magento\Backend\Model\Url\ScopeResolver</argument> <argument name="authSession" xsi:type="object">Magento\Backend\Model\Auth\Session\Proxy</argument> <argument name="formKey" xsi:type="object">Magento\Framework\Data\Form\FormKey\Proxy</argument> <argument name="scopeType" xsi:type="const">Magento\Store\Model\ScopeInterface::SCOPE_STORE</argument> <argument name="backendHelper" xsi:type="object">Magento\Backend\Helper\Data\Proxy</argument> </arguments> </type><preference for="Magento\Framework\Authorization\PolicyInterface" type="Magento\Framework\Authorization\Policy\Acl"/><preference for="Magento\Framework\Acl\AclResource\ProviderInterface" type="Magento\Framework\Acl\AclResource\Provider"/><type name="Magento\Framework\Acl\AclResource\Config\Reader\Filesystem"> <arguments> <argument name="converter" xsi:type="object">Magento\Framework\Acl\AclResource\Config\Converter\Dom</argument> </arguments> </type><type name="Magento\Framework\Acl\AclResource\Provider"> <arguments> <argument name="configReader" xsi:type="object">Magento\Framework\Acl\AclResource\Config\Reader\Filesystem</argument> </arguments> </type><type name="Magento\Framework\Acl\Builder"> <arguments> <argument name="resourceLoader" xsi:type="object">Magento\Framework\Acl\Loader\ResourceLoader</argument> <argument name="ruleLoader" xsi:type="object">Magento\Authorization\Model\Acl\Loader\Rule</argument><argument name="roleLoader" xsi:type="object">Magento\Authorization\Model\Acl\Loader\Role</argument></arguments> </type><type name="Magento\Framework\Acl\RootResource"> <arguments> <argument name="identifier" xsi:type="string">Magento_Backend::all</argument> </arguments> </type><type name="Magento\Backend\Controller\Adminhtml\Index\GlobalSearch"> <arguments> <argument name="searchModules" xsi:type="array"> <item name="customers" xsi:type="array"> <item name="class" xsi:type="string">Magento\Backend\Model\Search\Customer</item> <item name="acl" xsi:type="string">Magento_Customer::customer</item> </item> <item name="sales" xsi:type="array"> <item name="class" xsi:type="string">Magento\Backend\Model\Search\Order</item> <item name="acl" xsi:type="string">Magento_Sales::sales</item> </item> <item name="config" xsi:type="array"> <item name="class" xsi:type="string">Magento\Backend\Model\Search\Config</item> <item name="acl" xsi:type="string">Magento_Config::config</item> </item> <item name="products" xsi:type="array"> <item name="class" xsi:type="string">Magento\CatalogSearch\Model\Search\Catalog</item> <item name="acl" xsi:type="string">Magento_Catalog::catalog</item> </item><item name="categories" xsi:type="array"> <item name="class" xsi:type="string">Magento\CatalogSearch\Model\Search\Category</item> <item name="acl" xsi:type="string">Magento_Catalog::categories</item> </item></argument> </arguments> </type><virtualType name="Magento\Backend\Model\Auth\Session\Storage" type="Magento\Framework\Session\Storage"> <arguments> <argument name="namespace" xsi:type="string">admin</argument> </arguments> </virtualType><type name="Magento\Backend\Model\Auth\Session"> <arguments> <argument name="aclBuilder" xsi:type="object">Magento\Framework\Acl\Builder\Proxy</argument> <argument name="storage" xsi:type="object">Magento\Backend\Model\Auth\Session\Storage</argument> </arguments> <plugin name="admin_adobe_ims_backend_auth_session" type="Magento\AdminAdobeIms\Plugin\BackendAuthSessionPlugin"/></type><virtualType name="Magento\Backend\Model\Session\Storage" type="Magento\Framework\Session\Storage"> <arguments> <argument name="namespace" xsi:type="string">adminhtml</argument> </arguments> </virtualType><type name="Magento\Backend\Model\Session"> <arguments> <argument name="storage" xsi:type="object">Magento\Backend\Model\Session\Storage</argument> </arguments> </type><type name="Magento\Framework\App\Request\DataPersistor"> <arguments> <argument name="session" xsi:type="object">Magento\Backend\Model\Session</argument> </arguments> </type><virtualType name="Magento\Backend\Model\Session\Quote\Storage" type="Magento\Framework\Session\Storage"> <arguments> <argument name="namespace" xsi:type="string">adminhtml_quote</argument> </arguments> </virtualType><type name="Magento\Backend\Model\Session\Quote"> <arguments> <argument name="storage" xsi:type="object">Magento\Backend\Model\Session\Quote\Storage</argument> </arguments> </type><type name="Magento\Backend\Block\Menu"> <arguments> <argument name="menuItemChecker" xsi:type="object">Magento\Backend\Block\MenuItemChecker</argument> <argument name="anchorRenderer" xsi:type="object">Magento\Backend\Block\AnchorRenderer</argument> </arguments> </type><type name="Magento\Backend\Model\Validator\UrlKey\CompositeUrlKey"> <arguments> <argument name="validators" xsi:type="array"> <item name="frontNameValidator" xsi:type="object">Magento\Backend\Model\Validator\UrlKey\FrontName</item> <item name="restrictedWordsValidator" xsi:type="object">Magento\Backend\Model\Validator\UrlKey\RestrictedWords</item> </argument> </arguments> </type><preference for="Magento\Config\Model\Config\Structure\SearchInterface" type="Magento\Config\Model\Config\Structure"/><preference for="Magento\Config\Model\Config\Backend\File\RequestData\RequestDataInterface" type="Magento\Config\Model\Config\Backend\File\RequestData"/><preference for="Magento\Framework\App\Config\ConfigResource\ConfigInterface" type="Magento\Config\Model\ResourceModel\Config"/><preference for="Magento\Framework\App\Config\CommentParserInterface" type="Magento\Config\Model\Config\Parser\Comment"/><virtualType name="Magento\Framework\View\TemplateEngine\Xhtml\ConfigCompiler" type="Magento\Framework\View\TemplateEngine\Xhtml\Compiler" shared="false"> <arguments> <argument name="compilerText" xsi:type="object">Magento\Framework\View\TemplateEngine\Xhtml\Compiler\Text</argument> <argument name="compilerAttribute" xsi:type="object">Magento\Framework\View\TemplateEngine\Xhtml\Compiler\Attribute</argument> <argument name="compilerCdata" xsi:type="object">Magento\Framework\View\TemplateEngine\Xhtml\Compiler\Cdata</argument> <argument name="compilerComment" xsi:type="object">Magento\Framework\View\TemplateEngine\Xhtml\Compiler\Comment</argument> <argument name="elementCompilers" xsi:type="array"> <item name="include" xsi:type="object">Magento\Config\Model\Config\Compiler\IncludeElement</item> </argument> </arguments> </virtualType><type name="Magento\Config\Model\Config\Structure\Reader"> <arguments> <argument name="compiler" xsi:type="object">Magento\Framework\View\TemplateEngine\Xhtml\ConfigCompiler</argument> </arguments> </type><type name="Magento\Config\Controller\Adminhtml\System\Config\Save"> <arguments> <argument name="cache" xsi:type="object">Magento\Framework\App\Cache\Type\Layout</argument> </arguments> </type><type name="Magento\Config\Model\Config\Structure\Element\Iterator\Group" shared="false"/><type name="Magento\Config\Model\Config\Structure\Element\Group\Proxy" shared="false"/><type name="Magento\Config\Model\Config\Structure\Element\Dependency\Mapper" shared="false"> <arguments> <argument name="fieldLocator" xsi:type="object">Magento\Config\Model\Config\Structure\Search\Proxy</argument> </arguments> </type><type name="Magento\Config\Model\Config\Structure\Data"> <arguments> <argument name="cacheId" xsi:type="string">backend_system_configuration_structure</argument> </arguments> </type><type name="Magento\Config\Model\Config\Structure\Element\Tab" shared="false"> <arguments> <argument name="childrenIterator" xsi:type="object">Magento\Config\Model\Config\Structure\Element\Iterator\Section</argument> </arguments> </type><type name="Magento\Config\Model\Config\Structure\Element\Section" shared="false"> <arguments> <argument name="childrenIterator" xsi:type="object">Magento\Config\Model\Config\Structure\Element\Iterator\Group</argument> </arguments> </type><type name="Magento\Config\Model\Config\Structure\Element\Iterator\Field" shared="false"> <arguments> <argument name="groupFlyweight" xsi:type="object">Magento\Config\Model\Config\Structure\Element\Group\Proxy</argument> </arguments> </type><type name="Magento\Config\Model\Config\Structure\Element\Group" shared="false"> <arguments> <argument name="childrenIterator" xsi:type="object">Magento\Config\Model\Config\Structure\Element\Iterator\Field</argument> </arguments> </type><type name="Magento\Framework\App\Config\Value"> <arguments> <argument name="resource" xsi:type="object">Magento\Config\Model\ResourceModel\Config\Data</argument> <argument name="resourceCollection" xsi:type="object">Magento\Config\Model\ResourceModel\Config\Data\Collection\Proxy</argument> </arguments> <plugin name="admin_system_config_media_gallery_renditions" type="Magento\MediaGalleryRenditions\Plugin\UpdateRenditionsOnConfigChange"/><plugin name="admin_system_config_adobe_stock_save_plugin" type="Magento\MediaGallerySynchronization\Plugin\MediaGallerySyncTrigger"/><plugin name="webapiResourceSecurityCacheInvalidate" type="Magento\WebapiSecurity\Model\Plugin\CacheInvalidator"/></type><type name="Magento\Framework\Lock\Backend\Cache"> <arguments> <argument name="cache" xsi:type="object">Magento\Framework\App\Cache\Type\Config</argument> </arguments> </type><type name="Magento\Config\App\Config\Type\System"> <arguments> <argument name="source" xsi:type="object">systemConfigSourceAggregatedProxy</argument> <argument name="postProcessor" xsi:type="object">systemConfigPostProcessorCompositeProxy</argument> <argument name="cache" xsi:type="object">Magento\Framework\App\Cache\Type\Config</argument> <argument name="preProcessor" xsi:type="object">Magento\Framework\App\Config\PreProcessorComposite</argument> <argument name="serializer" xsi:type="object">Magento\Framework\Serialize\Serializer\Serialize</argument> <argument name="reader" xsi:type="object">Magento\Config\App\Config\Type\System\Reader\Proxy</argument> <argument name="lockQuery" xsi:type="object">systemConfigQueryLocker</argument> </arguments> </type><virtualType name="systemConfigQueryLocker" type="Magento\Framework\Cache\LockGuardedCacheLoader"> <arguments> <argument name="locker" xsi:type="object">Magento\Framework\Lock\Proxy</argument> </arguments> </virtualType><type name="Magento\Config\App\Config\Type\System\Reader"> <arguments> <argument name="source" xsi:type="object">systemConfigSourceAggregated</argument> <argument name="postProcessor" xsi:type="object">systemConfigPostProcessorComposite</argument> <argument name="preProcessor" xsi:type="object">Magento\Framework\App\Config\PreProcessorComposite</argument> </arguments> </type><virtualType name="systemSnapshot" type="Magento\Config\App\Config\Type\System"> <arguments> <argument name="source" xsi:type="object">systemConfigSnapshotSourceAggregated</argument> <argument name="configType" xsi:type="string">system_snapshot</argument> </arguments> </virtualType><virtualType name="configSnapshot" type="Magento\Framework\App\Config"> <arguments> <argument name="types" xsi:type="array"> <item name="system" xsi:type="object">systemSnapshot</item> </argument> </arguments> </virtualType><virtualType name="snapshotValueFactory" type="Magento\Config\Model\PreparedValueFactory"> <arguments> <argument name="config" xsi:type="object">configSnapshot</argument> </arguments> </virtualType><type name="Magento\Config\Model\Config\Importer"> <arguments> <argument name="valueBuilder" xsi:type="object">snapshotValueFactory</argument> </arguments> </type><virtualType name="modulesDataProviderProxy" type="Magento\Framework\App\Config\InitialConfigSource\Proxy"> <arguments> <argument name="instanceName" xsi:type="string">modulesDataProvider</argument> </arguments> </virtualType><virtualType name="modulesDataProvider" type="Magento\Framework\App\Config\InitialConfigSource"> <arguments> <argument name="reader" xsi:type="object">Magento\Framework\App\DeploymentConfig\Reader</argument> <argument name="configType" xsi:type="const">Magento\Framework\Config\ConfigOptionsListConstants::KEY_MODULES</argument> <argument name="fileKey" xsi:type="const">Magento\Framework\Config\File\ConfigFilePool::APP_CONFIG</argument> </arguments> </virtualType><virtualType name="systemConfigPostProcessorCompositeProxy" type="Magento\Framework\App\Config\PostProcessorComposite\Proxy"> <arguments> <argument name="instanceName" xsi:type="string">systemConfigPostProcessorComposite</argument> </arguments> </virtualType><virtualType name="systemConfigSourceAggregatedProxy" type="Magento\Framework\App\Config\ConfigSourceAggregated\Proxy"> <arguments> <argument name="instanceName" xsi:type="string">systemConfigSourceAggregated</argument> </arguments> </virtualType><virtualType name="systemConfigSourceAggregated" type="Magento\Framework\App\Config\ConfigSourceAggregated"> <arguments> <argument name="sources" xsi:type="array"> <item name="modular" xsi:type="array"> <item name="source" xsi:type="object">Magento\Config\App\Config\Source\ModularConfigSource</item> <item name="sortOrder" xsi:type="string">10</item> </item> <item name="dynamic" xsi:type="array"> <item name="source" xsi:type="object">Magento\Config\App\Config\Source\RuntimeConfigSource</item> <item name="sortOrder" xsi:type="string">100</item> </item> <item name="initial" xsi:type="array"> <item name="source" xsi:type="object">systemConfigInitialDataProvider</item> <item name="sortOrder" xsi:type="string">1000</item> </item> </argument> </arguments> </virtualType><virtualType name="systemConfigSnapshotSourceAggregated" type="systemConfigSourceAggregated"> <arguments> <argument name="sources" xsi:type="array"> <item name="initial" xsi:type="array"> <item name="source" xsi:type="object">Magento\Config\App\Config\Source\InitialSnapshotConfigSource</item> <item name="sortOrder" xsi:type="string">1000</item> </item> </argument> </arguments> </virtualType><virtualType name="systemConfigInitialDataProvider" type="Magento\Framework\App\Config\InitialConfigSource"> <arguments> <argument name="reader" xsi:type="object">Magento\Framework\App\DeploymentConfig\Reader</argument> <argument name="configType" xsi:type="const">Magento\Config\App\Config\Type\System::CONFIG_TYPE</argument> </arguments> </virtualType><virtualType name="appDumpSystemSource" type="Magento\Config\App\Config\Source\DumpConfigSourceAggregated"> <arguments> <argument name="sources" xsi:type="array"> <item name="structure" xsi:type="array"> <item name="source" xsi:type="object">Magento\Config\App\Config\Source\ConfigStructureSource</item> <item name="sortOrder" xsi:type="string">1</item> </item> <item name="modular" xsi:type="array"> <item name="source" xsi:type="object">Magento\Config\App\Config\Source\ModularConfigSource</item> <item name="sortOrder" xsi:type="string">10</item> </item> <item name="dynamic" xsi:type="array"> <item name="source" xsi:type="object">Magento\Config\App\Config\Source\RuntimeConfigSource</item> <item name="sortOrder" xsi:type="string">100</item> </item> <item name="initial" xsi:type="array"> <item name="source" xsi:type="object">systemConfigInitialDataProvider</item> <item name="sortOrder" xsi:type="string">1000</item> </item> </argument> </arguments> </virtualType><virtualType name="appDumpConfigSystemSource" type="appDumpSystemSource"> <arguments> <argument name="rules" xsi:type="array"> <item name="default" xsi:type="const">Magento\Config\App\Config\Source\DumpConfigSourceAggregated::RULE_TYPE_INCLUDE</item> <item name="environment" xsi:type="const">Magento\Config\App\Config\Source\DumpConfigSourceAggregated::RULE_TYPE_EXCLUDE</item> <item name="sensitive" xsi:type="const">Magento\Config\App\Config\Source\DumpConfigSourceAggregated::RULE_TYPE_EXCLUDE</item> </argument> </arguments> </virtualType><virtualType name="appDumpEnvSystemSource" type="appDumpSystemSource"> <arguments> <argument name="rules" xsi:type="array"> <item name="default" xsi:type="const">Magento\Config\App\Config\Source\DumpConfigSourceAggregated::RULE_TYPE_EXCLUDE</item> <item name="environment" xsi:type="const">Magento\Config\App\Config\Source\DumpConfigSourceAggregated::RULE_TYPE_INCLUDE</item> <item name="sensitive" xsi:type="const">Magento\Config\App\Config\Source\DumpConfigSourceAggregated::RULE_TYPE_INCLUDE</item> </argument> </arguments> </virtualType><type name="Magento\Config\Model\Config\Export\Comment"> <arguments> <argument name="source" xsi:type="object">appDumpConfigSystemSource</argument> </arguments> </type><type name="Magento\Config\Model\Placeholder\PlaceholderFactory"> <arguments> <argument name="types" xsi:type="array"> <item name="environment" xsi:type="string">Magento\Config\Model\Placeholder\Environment</item> </argument> </arguments> </type><type name="Magento\Config\Model\Config\Parser\Comment"> <arguments> <argument name="placeholder" xsi:type="object">Magento\Config\Model\Placeholder\Environment</argument> </arguments> </type><virtualType name="configShowSourceAggregated" type="Magento\Framework\App\Config\ConfigSourceAggregated"> <arguments> <argument name="sources" xsi:type="array"> <item name="dynamic" xsi:type="array"> <item name="source" xsi:type="object">Magento\Config\App\Config\Source\RuntimeConfigSource</item> <item name="sortOrder" xsi:type="string">100</item> </item> <item name="initial" xsi:type="array"> <item name="source" xsi:type="object">systemConfigInitialDataProvider</item> <item name="sortOrder" xsi:type="string">1000</item> </item> <item name="envVariable" xsi:type="array"> <item name="source" xsi:type="object">Magento\Config\App\Config\Source\EnvironmentConfigSource</item> <item name="sortOrder" xsi:type="string">2000</item> </item> </argument> </arguments> </virtualType><type name="Magento\Config\Console\Command\ConfigShowCommand"> <arguments> <argument name="configSource" xsi:type="object">configShowSourceAggregated</argument> </arguments> </type><type name="Magento\Config\Console\Command\ConfigSet\ConfigSetProcessorFactory"> <arguments> <argument name="processors" xsi:type="array"> <item name="default" xsi:type="string">Magento\Config\Console\Command\ConfigSet\DefaultProcessor</item> <item name="lock-env" xsi:type="string">Magento\Config\Console\Command\ConfigSet\VirtualLockEnvProcessor</item> <item name="lock-config" xsi:type="string">Magento\Config\Console\Command\ConfigSet\VirtualLockConfigProcessor</item> </argument> </arguments> </type><virtualType name="Magento\Config\Console\Command\ConfigSet\VirtualLockEnvProcessor" type="Magento\Config\Console\Command\ConfigSet\LockProcessor"> <arguments> <argument name="target" xsi:type="string">app_env</argument> </arguments> </virtualType><virtualType name="Magento\Config\Console\Command\ConfigSet\VirtualLockConfigProcessor" type="Magento\Config\Console\Command\ConfigSet\LockProcessor"> <arguments> <argument name="target" xsi:type="string">app_config</argument> </arguments> </virtualType><virtualType name="adminhtmlConfigStructureData" type="\Magento\Config\Model\Config\Structure\Data"> <arguments> <argument name="configScope" xsi:type="object">adminhtmlConfigScope</argument> </arguments> </virtualType><virtualType name="adminhtmlConfigStructure" type="Magento\Config\Model\Config\Structure"> <arguments> <argument name="structureData" xsi:type="object">adminhtmlConfigStructureData</argument> </arguments> </virtualType><type name="Magento\Config\App\Config\Source\ConfigStructureSource"> <arguments> <argument name="structure" xsi:type="object">adminhtmlConfigStructure</argument> </arguments> </type><type name="Magento\Config\Model\Config"> <arguments> <argument name="configStructure" xsi:type="object">\Magento\Config\Model\Config\Structure\Proxy</argument> </arguments> <plugin name="configPermissionChange" type="Magento\CatalogPermissions\Model\Indexer\Plugin\ConfigData"/></type><type name="Magento\Variable\Model\Config\Structure\AvailableVariables"> <arguments> <argument name="configPaths" xsi:type="array"> <item name="web" xsi:type="array"> <item name="web/unsecure/base_url" xsi:type="string">1</item> <item name="web/secure/base_url" xsi:type="string">1</item> </item> <item name="trans_email/ident_general" xsi:type="array"> <item name="trans_email/ident_general/name" xsi:type="string">1</item> <item name="trans_email/ident_general/email" xsi:type="string">1</item> </item> <item name="trans_email/ident_sales" xsi:type="array"> <item name="trans_email/ident_sales/name" xsi:type="string">1</item> <item name="trans_email/ident_sales/email" xsi:type="string">1</item> </item> <item name="trans_email/ident_support" xsi:type="array"> <item name="trans_email/ident_support/name" xsi:type="string">1</item> <item name="trans_email/ident_support/email" xsi:type="string">1</item> </item> <item name="trans_email/ident_custom1" xsi:type="array"> <item name="trans_email/ident_custom1/name" xsi:type="string">1</item> <item name="trans_email/ident_custom1/email" xsi:type="string">1</item> </item> <item name="trans_email/ident_custom2" xsi:type="array"> <item name="trans_email/ident_custom2/name" xsi:type="string">1</item> <item name="trans_email/ident_custom2/email" xsi:type="string">1</item> </item> <item name="general/store_information" xsi:type="array"> <item name="general/store_information/name" xsi:type="string">1</item> <item name="general/store_information/phone" xsi:type="string">1</item> <item name="general/store_information/hours" xsi:type="string">1</item> <item name="general/store_information/country_id" xsi:type="string">1</item> <item name="general/store_information/region_id" xsi:type="string">1</item> <item name="general/store_information/postcode" xsi:type="string">1</item> <item name="general/store_information/city" xsi:type="string">1</item> <item name="general/store_information/street_line1" xsi:type="string">1</item> <item name="general/store_information/street_line2" xsi:type="string">1</item> <item name="general/store_information/merchant_vat_number" xsi:type="string">1</item> </item> </argument> </arguments> </type><type name="Magento\Variable\Model\Source\Variables"> <arguments> <argument name="configStructure" xsi:type="object">Magento\Variable\Model\Config\StructureVirtual</argument> </arguments> </type><virtualType name="Magento\Variable\Model\Config\Structure\ReaderVirtual" type="Magento\Config\Model\Config\Structure\Reader"> <arguments> <argument name="domDocumentClass" xsi:type="string">Magento\Variable\Model\Config\Structure\Dom</argument> </arguments> </virtualType><virtualType name="Magento\Variable\Model\Config\StructureDataVirtual" type="Magento\Config\Model\Config\Structure\Data"> <arguments> <argument name="cacheId" xsi:type="string">variable_system_configuration_structure</argument> <argument name="reader" xsi:type="object">Magento\Variable\Model\Config\Structure\ReaderVirtual</argument> </arguments> </virtualType><virtualType name="Magento\Variable\Model\Config\StructureVirtual" type="Magento\Config\Model\Config\StructureLazy"> <arguments> <argument name="structureData" xsi:type="object">Magento\Variable\Model\Config\StructureDataVirtual</argument> </arguments> </virtualType><type name="Magento\Authorization\Model\Role" shared="false"><plugin name="updateRoleUsersAcl" type="Magento\User\Model\Plugin\AuthorizationRole" sortOrder="20"/></type><type name="Magento\Authorization\Model\ResourceModel\Rules"> <arguments> <argument name="rootResource" xsi:type="object">Magento\Framework\Acl\RootResource\Proxy</argument> </arguments> </type><type name="Magento\Framework\Authorization\Policy\Acl"> <arguments> <argument name="aclBuilder" xsi:type="object">Magento\Framework\Acl\Builder\Proxy</argument> </arguments> </type><preference for="Magento\Authorization\Model\UserContextInterface" type="Magento\Authorization\Model\CompositeUserContext"/><preference for="Magento\User\Api\Data\UserInterface" type="Magento\User\Model\User"/><preference for="Magento\User\Model\Spi\NotificatorInterface" type="Magento\User\Model\Notificator"/><preference for="Magento\Cms\Api\Data\PageSearchResultsInterface" type="Magento\Cms\Model\PageSearchResults"/><preference for="Magento\Cms\Api\Data\BlockSearchResultsInterface" type="Magento\Cms\Model\BlockSearchResults"/><preference for="Magento\Cms\Api\GetBlockByIdentifierInterface" type="Magento\Cms\Model\GetBlockByIdentifier"/><preference for="Magento\Cms\Api\GetPageByIdentifierInterface" type="Magento\Cms\Model\GetPageByIdentifier"/><preference for="Magento\Cms\Api\Data\PageInterface" type="Magento\Cms\Model\Page"/><preference for="Magento\Cms\Api\Data\BlockInterface" type="Magento\Cms\Model\Block"/><preference for="Magento\Cms\Api\BlockRepositoryInterface" type="Magento\Cms\Model\BlockRepository"/><preference for="Magento\Cms\Api\PageRepositoryInterface" type="Magento\Cms\Model\PageRepository\ValidationComposite"/><preference for="Magento\Ui\Component\Wysiwyg\ConfigInterface" type="Magento\Ui\Component\Wysiwyg\Config"/><preference for="Magento\Cms\Api\GetUtilityPageIdentifiersInterface" type="Magento\Cms\Model\GetUtilityPageIdentifiers"/><type name="Magento\Cms\Model\Wysiwyg\Config"> <arguments> <argument name="windowSize" xsi:type="array"> <item name="height" xsi:type="number">600</item> <item name="width" xsi:type="number">1000</item> </argument> </arguments> </type><type name="Magento\Cms\Model\ResourceModel\Page\Grid\Collection"> <arguments> <argument name="mainTable" xsi:type="string">cms_page</argument> <argument name="eventPrefix" xsi:type="string">cms_page_grid_collection</argument> <argument name="eventObject" xsi:type="string">page_grid_collection</argument> <argument name="resourceModel" xsi:type="string">Magento\Cms\Model\ResourceModel\Page</argument> </arguments> <plugin name="setStagingFlagCmsPageUpdate" type="Magento\CmsStaging\Model\ResourceModel\Grid\Collection\UpdatePlugin"/></type><type name="Magento\Cms\Model\ResourceModel\Block\Grid\Collection"> <arguments> <argument name="mainTable" xsi:type="string">cms_block</argument> <argument name="eventPrefix" xsi:type="string">cms_block_grid_collection</argument> <argument name="eventObject" xsi:type="string">block_grid_collection</argument> <argument name="resourceModel" xsi:type="string">Magento\Cms\Model\ResourceModel\Block</argument> </arguments> <plugin name="setStagingFlagCmsBlockUpdate" type="Magento\CmsStaging\Model\ResourceModel\Grid\Collection\UpdatePlugin"/></type><type name="Magento\Framework\Model\Entity\RepositoryFactory"> <arguments> <argument name="entities" xsi:type="array"> <item name="Magento\Cms\Api\Data\PageInterface" xsi:type="string">Magento\Cms\Api\PageRepositoryInterface</item> <item name="Magento\Cms\Api\Data\BlockInterface" xsi:type="string">Magento\Cms\Api\BlockRepositoryInterface</item> <item name="Magento\Catalog\Api\Data\ProductInterface" xsi:type="string">Magento\Catalog\Api\ProductRepositoryInterface</item><item name="Magento\Catalog\Api\Data\CategoryInterface" xsi:type="string">Magento\Catalog\Api\CategoryRepositoryInterface</item><item name="Magento\CatalogRule\Api\Data\RuleInterface" xsi:type="string">Magento\CatalogRule\Api\CatalogRuleRepositoryInterface</item><item name="Magento\SalesRule\Api\Data\RuleInterface" xsi:type="string">Magento\SalesRule\Model\ResourceModel\Rule</item></argument> </arguments> </type><type name="Magento\Framework\EntityManager\Operation\ExtensionPool"> <arguments> <argument name="extensionActions" xsi:type="array"> <item name="Magento\Cms\Api\Data\PageInterface" xsi:type="array"> <item name="read" xsi:type="array"> <item name="storeReader" xsi:type="string">Magento\Cms\Model\ResourceModel\Page\Relation\Store\ReadHandler</item> </item> <item name="create" xsi:type="array"> <item name="storeCreator" xsi:type="string">Magento\Cms\Model\ResourceModel\Page\Relation\Store\SaveHandler</item> </item> <item name="update" xsi:type="array"> <item name="storeUpdater" xsi:type="string">Magento\Cms\Model\ResourceModel\Page\Relation\Store\SaveHandler</item> </item> </item> <item name="Magento\Cms\Api\Data\BlockInterface" xsi:type="array"> <item name="read" xsi:type="array"> <item name="storeReader" xsi:type="string">Magento\Cms\Model\ResourceModel\Block\Relation\Store\ReadHandler</item> </item> <item name="create" xsi:type="array"> <item name="storeCreator" xsi:type="string">Magento\Cms\Model\ResourceModel\Block\Relation\Store\SaveHandler</item> </item> <item name="update" xsi:type="array"> <item name="storeUpdater" xsi:type="string">Magento\Cms\Model\ResourceModel\Block\Relation\Store\SaveHandler</item> </item> </item> <item name="Magento\Catalog\Api\Data\ProductInterface" xsi:type="array"> <item name="read" xsi:type="array"> <item name="optionReader" xsi:type="string">Magento\Catalog\Model\Product\Option\ReadHandler</item> <item name="mediaGalleryRead" xsi:type="string">Magento\Catalog\Model\Product\Gallery\ReadHandler</item> <item name="categoryProductLinksRead" xsi:type="string">Magento\Catalog\Model\Category\Link\ReadHandler</item> <item name="websiteReader" xsi:type="string">Magento\Catalog\Model\Product\Website\ReadHandler</item> <item name="read_bundle_options" xsi:type="string">Magento\Bundle\Model\Product\ReadHandler</item><item name="downloadable_link_read" xsi:type="string">Magento\Downloadable\Model\Link\ReadHandler</item><item name="downloadable_sample_read" xsi:type="string">Magento\Downloadable\Model\Sample\ReadHandler</item><item name="giftcard_amount_reader" xsi:type="string">Magento\GiftCard\Model\Product\ReadHandler</item><item name="read_configurable_options" xsi:type="string">Magento\ConfigurableProduct\Model\Product\ReadHandler</item></item> <item name="create" xsi:type="array"> <item name="custom_options" xsi:type="string">Magento\Catalog\Model\Product\Option\SaveHandler</item> <item name="mediaGalleryCreate" xsi:type="string">Magento\CatalogStaging\Model\Product\Gallery\CreateHandler</item> <item name="categoryProductLinksSave" xsi:type="string">Magento\Catalog\Model\Category\Link\SaveHandler</item> <item name="websitePersistor" xsi:type="string">Magento\Catalog\Model\Product\Website\SaveHandler</item> <item name="tierPriceCreator" xsi:type="string">Magento\Catalog\Model\Product\Attribute\Backend\TierPrice\SaveHandler</item> <item name="create_bundle_options" xsi:type="string">Magento\Bundle\Model\Product\SaveHandler</item><item name="downloadable_link_create" xsi:type="string">Magento\Downloadable\Model\Link\CreateHandler</item><item name="downloadable_sample_create" xsi:type="string">Magento\Downloadable\Model\Sample\CreateHandler</item><item name="giftcard_amount_creator" xsi:type="string">Magento\GiftCard\Model\Product\SaveHandler</item><item name="create_configurable_options" xsi:type="string">Magento\ConfigurableProduct\Model\Product\SaveHandler</item></item> <item name="update" xsi:type="array"> <item name="optionUpdater" xsi:type="string">Magento\Catalog\Model\Product\Option\SaveHandler</item> <item name="mediaGalleryUpdate" xsi:type="string">Magento\CatalogStaging\Model\Product\Gallery\UpdateHandler</item> <item name="categoryProductLinksSave" xsi:type="string">Magento\Catalog\Model\Category\Link\SaveHandler</item> <item name="websitePersistor" xsi:type="string">Magento\Catalog\Model\Product\Website\SaveHandler</item> <item name="tierPriceUpdater" xsi:type="string">Magento\Catalog\Model\Product\Attribute\Backend\TierPrice\UpdateHandler</item> <item name="update_bundle_options" xsi:type="string">Magento\Bundle\Model\Product\SaveHandler</item><item name="downloadable_link_update" xsi:type="string">Magento\Downloadable\Model\Sample\UpdateHandler</item><item name="downloadable_sample_update" xsi:type="string">Magento\Downloadable\Model\Link\UpdateHandler</item><item name="giftcard_amount_updater" xsi:type="string">Magento\GiftCard\Model\Product\SaveHandler</item><item name="update_configurable_options" xsi:type="string">Magento\ConfigurableProduct\Model\Product\SaveHandler</item></item> <item name="delete" xsi:type="array"> <item name="downloadable_link_delete" xsi:type="string">Magento\Downloadable\Model\Sample\DeleteHandler</item> <item name="downloadable_sample_delete" xsi:type="string">Magento\Downloadable\Model\Link\DeleteHandler</item> <item name="giftcard_amount_deleter" xsi:type="string">Magento\GiftCard\Model\Product\DeleteHandler</item></item></item><item name="Magento\SalesRule\Api\Data\RuleInterface" xsi:type="array"> <item name="create" xsi:type="array"> <item name="create_reward" xsi:type="string">Magento\Reward\Model\SalesRule\SaveHandler</item> </item> <item name="update" xsi:type="array"> <item name="update_reward" xsi:type="string">Magento\Reward\Model\SalesRule\SaveHandler</item> </item> <item name="read" xsi:type="array"> <item name="read_reward" xsi:type="string">Magento\Reward\Model\SalesRule\ReadHandler</item> </item> </item></argument> </arguments> </type><type name="Magento\Framework\EntityManager\HydratorPool"> <arguments> <argument name="hydrators" xsi:type="array"> <item name="Magento\Cms\Api\Data\PageInterface" xsi:type="string">Magento\Framework\EntityManager\AbstractModelHydrator</item> <item name="Magento\Cms\Api\Data\BlockInterface" xsi:type="string">Magento\Framework\EntityManager\AbstractModelHydrator</item> <item name="Magento\Catalog\Api\Data\CategoryInterface" xsi:type="string">Magento\Framework\EntityManager\AbstractModelHydrator</item><item name="Magento\Catalog\Api\Data\ProductInterface" xsi:type="string">Magento\Catalog\Model\Product\Hydrator</item><item name="Magento\CatalogRule\Api\Data\RuleInterface" xsi:type="string">Magento\Framework\EntityManager\AbstractModelHydrator</item><item name="Magento\Sales\Api\Data\ShipmentTrackCreationInterface" xsi:type="string">Magento\Framework\EntityManager\HydratorInterface</item><item name="Magento\Bundle\Api\Data\OptionInterface" xsi:type="string">Magento\Framework\EntityManager\AbstractModelHydrator</item><item name="Magento\Bundle\Model\Selection" xsi:type="string">Magento\Framework\EntityManager\AbstractModelHydrator</item><item name="Magento\SalesRule\Api\Data\RuleInterface" xsi:type="string">Magento\Framework\EntityManager\AbstractModelHydrator</item><item name="Magento\SalesRule\Api\Data\CouponInterface" xsi:type="string">Magento\Framework\EntityManager\AbstractModelHydrator</item><item name="Magento\Staging\Api\Data\UpdateInterface" xsi:type="string">Magento\Framework\EntityManager\AbstractModelHydrator</item><item name="Magento\GiftCard\Api\Data\GiftcardAmountInterface" xsi:type="string">Magento\Framework\EntityManager\AbstractModelHydrator</item></argument> </arguments> </type><virtualType name="Magento\Cms\Model\Api\SearchCriteria\CollectionProcessor\PageFilterProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\FilterProcessor"> <arguments> <argument name="customFilters" xsi:type="array"> <item name="store_id" xsi:type="object">Magento\Cms\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor\PageStoreFilter</item> </argument> </arguments> </virtualType><virtualType name="Magento\Cms\Model\Api\SearchCriteria\PageCollectionProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor"> <arguments> <argument name="processors" xsi:type="array"> <item name="filters" xsi:type="object">Magento\Cms\Model\Api\SearchCriteria\CollectionProcessor\PageFilterProcessor</item> <item name="sorting" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\SortingProcessor</item> <item name="pagination" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\PaginationProcessor</item> </argument> </arguments> </virtualType><type name="Magento\Cms\Model\PageRepository"> <arguments> <argument name="collectionProcessor" xsi:type="object">Magento\Cms\Model\Api\SearchCriteria\PageCollectionProcessor</argument> <argument name="hydrator" xsi:type="object">Magento\Framework\EntityManager\AbstractModelHydrator</argument> </arguments> <plugin name="versions_cms_url_rewrite_plugin" type="Magento\VersionsCmsUrlRewrite\Plugin\Cms\Model\PageRepositoryPlugin"/></type><virtualType name="Magento\Cms\Model\Api\SearchCriteria\CollectionProcessor\BlockFilterProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\FilterProcessor"> <arguments> <argument name="customFilters" xsi:type="array"> <item name="store_id" xsi:type="object">Magento\Cms\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor\BlockStoreFilter</item> </argument> </arguments> </virtualType><virtualType name="Magento\Cms\Model\Api\SearchCriteria\BlockCollectionProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor"> <arguments> <argument name="processors" xsi:type="array"> <item name="filters" xsi:type="object">Magento\Cms\Model\Api\SearchCriteria\CollectionProcessor\BlockFilterProcessor</item> <item name="sorting" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\SortingProcessor</item> <item name="pagination" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\PaginationProcessor</item> </argument> </arguments> </virtualType><type name="Magento\Cms\Model\BlockRepository"> <arguments> <argument name="collectionProcessor" xsi:type="object">Magento\Cms\Model\Api\SearchCriteria\BlockCollectionProcessor</argument> <argument name="hydrator" xsi:type="object">Magento\Framework\EntityManager\AbstractModelHydrator</argument> </arguments> </type><type name="Magento\Cms\Ui\Component\DataProvider"> <arguments> <argument name="additionalFilterPool" xsi:type="array"> <item name="fulltext" xsi:type="object">Magento\Cms\Ui\Component\Page\FulltextFilter</item> </argument> </arguments> <plugin name="filterCmsPageAndBlockUpdate" type="Magento\CmsStaging\Ui\Component\DataProvider\UpdatePlugin"/></type><type name="Magento\Catalog\Model\Product"> <plugin name="cms" type="Magento\Cms\Model\Plugin\Product" sortOrder="100"/> <arguments> <argument name="catalogProductStatus" xsi:type="object">Magento\Catalog\Model\Product\Attribute\Source\Status\Proxy</argument> <argument name="productLink" xsi:type="object">Magento\Catalog\Model\Product\Link\Proxy</argument> </arguments><plugin name="add_bundle_parent_identities" type="Magento\Bundle\Model\Plugin\ProductIdentitiesExtender" sortOrder="100"/><plugin name="catalogInventoryAfterLoad" type="Magento\CatalogInventory\Model\Plugin\AfterProductLoad"/><plugin name="product_identities_extender" type="Magento\ConfigurableProduct\Model\Plugin\ProductIdentitiesExtender"/><plugin name="catalogPermissionsProductChange" type="Magento\CatalogPermissions\Model\Indexer\Plugin\Product"/><plugin name="availabilityStaging" type="Magento\CatalogStaging\Plugin\Model\Product" sortOrder="100"/><plugin name="exclude_swatch_attribute" type="Magento\Swatches\Model\Plugin\Product"/></type><type name="Magento\Cms\Model\PageRepository\ValidationComposite"> <arguments> <argument name="repository" xsi:type="object">Magento\Cms\Model\PageRepository</argument> <argument name="validators" xsi:type="array"> <item name="layout_update" xsi:type="object">Magento\Cms\Model\PageRepository\Validator\LayoutUpdateValidator</item> </argument> <argument name="hydrator" xsi:type="object">Magento\Framework\EntityManager\AbstractModelHydrator</argument> </arguments> <plugin name="cms_validate_url_plugin" type="Magento\CmsUrlRewrite\Plugin\Cms\Model\PageRepository\ValidationCompositePlugin" sortOrder="10"/></type><preference for="Magento\Cms\Model\Page\CustomLayoutManagerInterface" type="Magento\Cms\Model\Page\CustomLayout\CustomLayoutManager"/><type name="Magento\Cms\Model\Page\CustomLayout\CustomLayoutManager"> <arguments> <argument name="themeFactory" xsi:type="object">Magento\Framework\View\Design\Theme\FlyweightFactory\Proxy</argument> </arguments> </type><preference for="Magento\Cms\Model\Page\CustomLayoutRepositoryInterface" type="Magento\Cms\Model\Page\CustomLayout\CustomLayoutRepository"/><type name="Magento\Cms\Model\Wysiwyg\Validator"> <arguments> <argument name="validator" xsi:type="object">DefaultWYSIWYGValidator</argument> </arguments> </type><preference for="Magento\Framework\Validator\HTML\WYSIWYGValidatorInterface" type="Magento\Cms\Model\Wysiwyg\Validator"/><virtualType name="DefaultWYSIWYGValidator" type="Magento\Framework\Validator\HTML\ConfigurableWYSIWYGValidator"> <arguments> <argument name="allowedTags" xsi:type="array"> <item name="div" xsi:type="string">div</item> <item name="a" xsi:type="string">a</item> <item name="p" xsi:type="string">p</item> <item name="span" xsi:type="string">span</item> <item name="em" xsi:type="string">em</item> <item name="strong" xsi:type="string">strong</item> <item name="ul" xsi:type="string">ul</item> <item name="li" xsi:type="string">li</item> <item name="ol" xsi:type="string">ol</item> <item name="h5" xsi:type="string">h5</item> <item name="h4" xsi:type="string">h4</item> <item name="h3" xsi:type="string">h3</item> <item name="h2" xsi:type="string">h2</item> <item name="h1" xsi:type="string">h1</item> <item name="table" xsi:type="string">table</item> <item name="tbody" xsi:type="string">tbody</item> <item name="tr" xsi:type="string">tr</item> <item name="td" xsi:type="string">td</item> <item name="th" xsi:type="string">th</item> <item name="tfoot" xsi:type="string">tfoot</item> <item name="img" xsi:type="string">img</item> <item name="hr" xsi:type="string">hr</item> <item name="figure" xsi:type="string">figure</item> <item name="button" xsi:type="string">button</item> <item name="i" xsi:type="string">i</item> <item name="u" xsi:type="string">u</item> <item name="br" xsi:type="string">br</item> <item name="b" xsi:type="string">b</item> <item name="iframe" xsi:type="string">iframe</item><item name="style" xsi:type="string">style</item><item name="pre" xsi:type="string">pre</item></argument> <argument name="allowedAttributes" xsi:type="array"> <item name="class" xsi:type="string">class</item> <item name="width" xsi:type="string">width</item> <item name="height" xsi:type="string">height</item> <item name="style" xsi:type="string">style</item> <item name="alt" xsi:type="string">alt</item> <item name="title" xsi:type="string">title</item> <item name="border" xsi:type="string">border</item> <item name="id" xsi:type="string">id</item> <item name="data-active-tab" xsi:type="string">data-active-tab</item><item name="data-appearance" xsi:type="string">data-appearance</item><item name="data-autoplay" xsi:type="string">data-autoplay</item><item name="data-autoplay-speed" xsi:type="string">data-autoplay-speed</item><item name="data-background-images" xsi:type="string">data-background-images</item><item name="data-background-type" xsi:type="string">data-background-type</item><item name="data-carousel-mode" xsi:type="string">data-carousel-mode</item><item name="data-center-padding" xsi:type="string">data-center-padding</item><item name="data-content-type" xsi:type="string">data-content-type</item><item name="data-element" xsi:type="string">data-element</item><item name="data-enable-parallax" xsi:type="string">data-enable-parallax</item><item name="data-fade" xsi:type="string">data-fade</item><item name="data-grid-size" xsi:type="string">data-grid-size</item><item name="data-infinite-loop" xsi:type="string">data-infinite-loop</item><item name="data-link-type" xsi:type="string">data-link-type</item><item name="data-locations" xsi:type="string">data-locations</item><item name="data-overlay-color" xsi:type="string">data-overlay-color</item><item name="data-parallax-speed" xsi:type="string">data-parallax-speed</item><item name="data-pb-style" xsi:type="string">data-pb-style</item><item name="data-same-width" xsi:type="string">data-same-width</item><item name="data-show-arrows" xsi:type="string">data-show-arrows</item><item name="data-show-button" xsi:type="string">data-show-button</item><item name="data-show-controls" xsi:type="string">data-show-controls</item><item name="data-show-dots" xsi:type="string">data-show-dots</item><item name="data-show-overlay" xsi:type="string">data-show-overlay</item><item name="data-slide-name" xsi:type="string">data-slide-name</item><item name="data-slick-index" xsi:type="string">data-slick-index</item><item name="data-role" xsi:type="string">data-role</item><item name="data-product-id" xsi:type="string"> data-product-id</item><item name="data-price-box" xsi:type="string">data-price-box</item><item name="aria-hidden" xsi:type="string">aria-hidden</item><item name="aria-label" xsi:type="string">aria-label</item><item name="data-tab-name" xsi:type="string">data-tab-name</item><item name="data-video-fallback-src" xsi:type="string">data-video-fallback-src</item><item name="data-video-lazy-load" xsi:type="string">data-video-lazy-load</item><item name="data-video-loop" xsi:type="string">data-video-loop</item><item name="data-video-overlay-color" xsi:type="string">data-video-overlay-color</item><item name="data-video-play-only-visible" xsi:type="string">data-video-play-only-visible</item><item name="data-video-src" xsi:type="string">data-video-src</item><item name="href" xsi:type="string">href</item><item name="role" xsi:type="string">role</item><item name="target" xsi:type="string">target</item></argument> <argument name="attributesAllowedByTags" xsi:type="array"> <item name="a" xsi:type="array"> <item name="href" xsi:type="string">href</item> <item name="tabindex" xsi:type="string">tabindex</item><item name="target" xsi:type="string">target</item><item name="rel" xsi:type="string">rel</item></item> <item name="img" xsi:type="array"> <item name="src" xsi:type="string">src</item> </item> <item name="button" xsi:type="array"> <item name="type" xsi:type="string">type</item> </item> <item name="iframe" xsi:type="array"> <item name="allowfullscreen" xsi:type="string">allowfullscreen</item> <item name="autoplay" xsi:type="string">autoplay</item> <item name="frameborder" xsi:type="string">frameborder</item> <item name="muted" xsi:type="string">muted</item> <item name="src" xsi:type="string">src</item> </item><item name="style" xsi:type="array"> <item name="data-style-id" xsi:type="string">data-style-id</item> </item></argument> <argument name="attributeValidators" xsi:type="array"> <item name="style" xsi:type="object">Magento\Framework\Validator\HTML\StyleAttributeValidator</item> <item name="src" xsi:type="array"> <item name="iframe-src" xsi:type="object">Magento\PageBuilder\Model\Validator\IframeSrcAttributeValidator</item> </item></argument> <argument name="tagValidators" xsi:type="array"> <item name="div" xsi:type="array"> <item name="html" xsi:type="object">Magento\PageBuilder\Model\Validator\InnerHtmlValidator</item> </item> </argument></arguments> </virtualType><preference for="Magento\Catalog\Api\Data\ProductInterface" type="Magento\Catalog\Model\Product"/><preference for="Magento\Catalog\Api\ProductRepositoryInterface" type="Magento\Catalog\Model\ProductRepository"/><preference for="Magento\Catalog\Api\CategoryAttributeRepositoryInterface" type="Magento\Catalog\Model\Category\AttributeRepository"/><preference for="Magento\Catalog\Api\Data\CategoryAttributeInterface" type="Magento\Catalog\Model\Category\Attribute"/><preference for="Magento\Catalog\Api\CategoryAttributeOptionManagementInterface" type="Magento\Catalog\Model\Category\Attribute\OptionManagement"/><preference for="Magento\Catalog\Model\ProductTypes\ConfigInterface" type="Magento\Catalog\Model\ProductTypes\Config"/><preference for="Magento\Catalog\Model\ProductOptions\ConfigInterface" type="Magento\Catalog\Model\ProductOptions\Config"/><preference for="Magento\Catalog\Model\Product\PriceModifierInterface" type="Magento\Catalog\Model\Product\PriceModifier\Composite"/><preference for="Magento\Catalog\Model\Attribute\LockValidatorInterface" type="Magento\Catalog\Model\Attribute\LockValidatorComposite"/><preference for="Magento\Catalog\Model\Entity\Product\Attribute\Group\AttributeMapperInterface" type="Magento\Catalog\Model\Entity\Product\Attribute\Group\AttributeMapper"/><preference for="Magento\Catalog\Block\Product\ReviewRendererInterface" type="Magento\Review\Block\Product\ReviewRenderer"/><preference for="Magento\Framework\Pricing\PriceInfoInterface" type="Magento\Framework\Pricing\PriceInfo\Base"/><preference for="Magento\Framework\Pricing\PriceCurrencyInterface" type="Magento\Directory\Model\PriceCurrency"/><preference for="Magento\Framework\Pricing\Adjustment\CalculatorInterface" type="Magento\Framework\Pricing\Adjustment\Calculator"/><preference for="Magento\Catalog\Api\Data\CategoryInterface" type="Magento\Catalog\Model\Category"/><preference for="Magento\Catalog\Api\CategoryManagementInterface" type="Magento\Catalog\Model\CategoryManagement"/><preference for="Magento\Catalog\Api\CategoryRepositoryInterface" type="Magento\Catalog\Model\CategoryRepository"/><preference for="Magento\Catalog\Api\Data\CategoryTreeInterface" type="Magento\Catalog\Model\Category"/><preference for="Magento\Catalog\Api\ProductAttributeRepositoryInterface" type="Magento\Catalog\Model\Product\Attribute\Repository"/><preference for="Magento\Catalog\Api\Data\ProductAttributeInterface" type="Magento\Catalog\Model\ResourceModel\Eav\Attribute"/><preference for="Magento\Catalog\Api\ProductTypeListInterface" type="Magento\Catalog\Model\ProductTypeList"/><preference for="Magento\Catalog\Api\Data\ProductTypeInterface" type="Magento\Catalog\Model\ProductType"/><preference for="Magento\Catalog\Api\ProductAttributeMediaGalleryManagementInterface" type="Magento\Catalog\Model\Product\Gallery\GalleryManagement"/><preference for="Magento\Catalog\Api\Data\ProductAttributeMediaGalleryEntryInterface" type="Magento\Catalog\Model\Product\Gallery\Entry"/><preference for="Magento\Catalog\Api\ProductMediaAttributeManagementInterface" type="Magento\Catalog\Model\Product\Media\AttributeManagement"/><preference for="Magento\Catalog\Api\ProductAttributeTypesListInterface" type="Magento\Catalog\Model\Product\Attribute\TypesList"/><preference for="Magento\Catalog\Api\Data\ProductAttributeTypeInterface" type="Magento\Catalog\Model\Product\Attribute\Type"/><preference for="Magento\Catalog\Api\ProductAttributeGroupRepositoryInterface" type="Magento\Catalog\Model\ProductAttributeGroupRepository"/><preference for="Magento\Catalog\Api\ProductAttributeOptionManagementInterface" type="Magento\Catalog\Model\Product\Attribute\OptionManagement"/><preference for="Magento\Catalog\Api\ProductAttributeOptionUpdateInterface" type="Magento\Catalog\Model\Product\Attribute\OptionManagement"/><preference for="Magento\Catalog\Api\ProductLinkRepositoryInterface" type="Magento\Catalog\Model\ProductLink\Repository"/><preference for="Magento\Catalog\Api\Data\ProductAttributeSearchResultsInterface" type="Magento\Catalog\Model\ProductAttributeSearchResults"/><preference for="Magento\Catalog\Api\Data\CategoryAttributeSearchResultsInterface" type="Magento\Catalog\Model\CategoryAttributeSearchResults"/><preference for="Magento\Catalog\Api\Data\ProductSearchResultsInterface" type="Magento\Catalog\Model\ProductSearchResults"/><preference for="Magento\Catalog\Api\ProductAttributeManagementInterface" type="Magento\Catalog\Model\Product\Attribute\Management"/><preference for="Magento\Catalog\Api\AttributeSetManagementInterface" type="Magento\Catalog\Model\Product\Attribute\SetManagement"/><preference for="Magento\Catalog\Api\AttributeSetRepositoryInterface" type="Magento\Catalog\Model\Product\Attribute\SetRepository"/><preference for="Magento\Catalog\Api\ProductManagementInterface" type="Magento\Catalog\Model\ProductManagement"/><preference for="Magento\Catalog\Api\AttributeSetFinderInterface" type="Magento\Catalog\Model\Product\Attribute\AttributeSetFinder"/><preference for="Magento\Catalog\Api\CategoryListInterface" type="Magento\Catalog\Model\CategoryList"/><preference for="Magento\Catalog\Api\Data\CategorySearchResultsInterface" type="Magento\Catalog\Model\CategorySearchResults"/><preference for="Magento\Catalog\Model\Config\Source\ProductPriceOptionsInterface" type="Magento\Catalog\Model\Config\Source\Product\Options\Price"/><preference for="Magento\Catalog\Model\Indexer\Product\Flat\Table\BuilderInterface" type="Magento\Catalog\Model\Indexer\Product\Flat\Table\Builder"/><preference for="Magento\Catalog\Api\ProductRenderListInterface" type="Magento\Catalog\Model\ProductRenderList"/><preference for="Magento\Catalog\Api\Data\ProductRenderSearchResultsInterface" type="Magento\Catalog\Model\ProductRenderSearchResults"/><preference for="Magento\Catalog\Model\Product\Pricing\Renderer\SalableResolverInterface" type="Magento\Catalog\Model\Product\Pricing\Renderer\SalableResolver"/><preference for="Magento\Catalog\Model\Product\Media\ConfigInterface" type="Magento\Catalog\Model\Product\Media\Config"/><preference for="Magento\Framework\View\Asset\ContextInterface" type="Magento\Catalog\Model\View\Asset\Image\Context"/><preference for="Magento\Catalog\Api\TierPriceStorageInterface" type="Magento\Catalog\Model\Product\Price\TierPriceStorage"/><preference for="Magento\Catalog\Api\Data\TierPriceInterface" type="Magento\Catalog\Model\Product\Price\TierPrice"/><preference for="Magento\Catalog\Api\BasePriceStorageInterface" type="Magento\Catalog\Model\Product\Price\BasePriceStorage"/><preference for="Magento\Catalog\Api\Data\BasePriceInterface" type="Magento\Catalog\Model\Product\Price\BasePrice"/><preference for="Magento\Catalog\Api\CostStorageInterface" type="Magento\Catalog\Model\Product\Price\CostStorage"/><preference for="Magento\Catalog\Api\Data\CostInterface" type="Magento\Catalog\Model\Product\Price\Cost"/><preference for="Magento\Catalog\Api\SpecialPriceStorageInterface" type="Magento\Catalog\Model\Product\Price\SpecialPriceStorage"/><preference for="Magento\Catalog\Api\Data\SpecialPriceInterface" type="Magento\Catalog\Model\Product\Price\SpecialPrice"/><preference for="Magento\Catalog\Api\Data\PriceUpdateResultInterface" type="Magento\Catalog\Model\Product\Price\PriceUpdateResult"/><preference for="Magento\Catalog\Api\SpecialPriceInterface" type="Magento\CatalogStaging\Model\ResourceModel\Product\Price\SpecialPrice"/><preference for="Magento\Catalog\Model\ProductIdLocatorInterface" type="Magento\Catalog\Model\ProductIdLocator"/><preference for="Magento\Catalog\Api\Data\ProductRender\ButtonInterface" type="Magento\Catalog\Model\ProductRender\Button"/><preference for="Magento\Catalog\Api\Data\ProductRender\ImageInterface" type="Magento\Catalog\Model\ProductRender\Image"/><preference for="Magento\Catalog\Api\Data\ProductRender\PriceInfoInterface" type="Magento\Catalog\Model\ProductRender\PriceInfo"/><preference for="Magento\Catalog\Api\Data\ProductRender\FormattedPriceInfoInterface" type="Magento\Catalog\Model\ProductRender\FormattedPriceInfo"/><preference for="Magento\Framework\Indexer\BatchProviderInterface" type="Magento\Framework\Indexer\BatchProvider"/><preference for="Magento\Catalog\Model\Indexer\Product\Price\UpdateIndexInterface" type="Magento\Catalog\Model\Indexer\Product\Price\InvalidateIndex"/><preference for="Magento\Catalog\Model\Product\Gallery\ImagesConfigFactoryInterface" type="Magento\Catalog\Model\Product\Gallery\ImagesConfigFactory"/><preference for="Magento\Catalog\Model\Product\Configuration\Item\ItemResolverInterface" type="Magento\Catalog\Model\Product\Configuration\Item\ItemResolverComposite"/><preference for="Magento\Catalog\Api\Data\MassActionInterface" type="Magento\Catalog\Model\MassAction"/><preference for="Magento\Catalog\Model\ProductLink\Data\ListCriteriaInterface" type="Magento\Catalog\Model\ProductLink\Data\ListCriteria"/><preference for="Magento\Catalog\Api\CategoryListDeleteBySkuInterface" type="Magento\Catalog\Model\CategoryLinkRepository"/><type name="Magento\Customer\Model\ResourceModel\Visitor"> <plugin name="catalogLog" type="Magento\Catalog\Model\Plugin\Log"/> <plugin name="reportLog" type="Magento\Reports\Model\Plugin\Log"/></type><type name="Magento\Catalog\Model\Category\DataProvider"> <arguments> <argument name="uiConfigFactory" xsi:type="object">uiComponentConfigFactory</argument> </arguments> <plugin name="set_page_layout_default_value" type="Magento\Catalog\Model\Plugin\SetPageLayoutDefaultValue"/> <plugin name="catalogCategoryDataProviderTrimData" type="Magento\CatalogStaging\Plugin\Catalog\Model\Category\DataProvider\TrimData"/></type><type name="Magento\Theme\Block\Html\Topmenu"> <plugin name="catalogTopmenu" type="Magento\Catalog\Plugin\Block\Topmenu"/> <plugin name="catalogPermissionsCachingTopmenu" type="Magento\CatalogPermissions\Model\Plugin\Theme\Block\Html\Topmenu"/></type><type name="Magento\Framework\Mview\View\StateInterface"> <plugin name="setStatusForMview" type="Magento\Catalog\Model\Indexer\Category\Product\Plugin\MviewState"/> <plugin name="catalogPermissionsIndexerSetStatusForMview" type="Magento\CatalogPermissions\Model\Indexer\Plugin\MviewState"/></type><type name="Magento\Catalog\Model\Indexer\Category\Product\Plugin\MviewState"> <arguments> <argument name="state" xsi:type="object" shared="false">Magento\Framework\Mview\View\StateInterface</argument> <argument name="changelog" xsi:type="object" shared="false">Magento\Framework\Mview\View\ChangelogInterface</argument> </arguments> </type><type name="Magento\Catalog\Model\Indexer\Product\Full"> <arguments> <argument name="indexerList" xsi:type="array"> <item name="catalog_category_product" xsi:type="const">Magento\Catalog\Model\Indexer\Category\Product::INDEXER_ID</item> <item name="catalog_product_category" xsi:type="const">Magento\Catalog\Model\Indexer\Product\Category::INDEXER_ID</item> <item name="catalog_product_price" xsi:type="const">Magento\Catalog\Model\Indexer\Product\Price\Processor::INDEXER_ID</item> <item name="catalog_product_attribute" xsi:type="const">Magento\Catalog\Model\Indexer\Product\Eav\Processor::INDEXER_ID</item> <item name="cataloginventory_stock" xsi:type="const">Magento\CatalogInventory\Model\Indexer\Stock\Processor::INDEXER_ID</item><item name="catalogsearch_fulltext" xsi:type="const">Magento\CatalogSearch\Model\Indexer\Fulltext::INDEXER_ID</item></argument> </arguments> </type><type name="Magento\Catalog\Model\Product\Attribute\Backend\Media\EntryConverterPool"> <arguments> <argument name="mediaGalleryEntryConvertersCollection" xsi:type="array"> <item name="image" xsi:type="object">Magento\Catalog\Model\Product\Attribute\Backend\Media\ImageEntryConverter</item> <item name="external-video" xsi:type="object">Magento\ProductVideo\Model\Product\Attribute\Media\ExternalVideoEntryConverter</item></argument> </arguments> </type><type name="Magento\Catalog\Helper\Product"> <arguments> <argument name="catalogSession" xsi:type="object">Magento\Catalog\Model\Session\Proxy</argument> <argument name="reindexPriceIndexerData" xsi:type="array"> <item name="byDataResult" xsi:type="array"> <item name="tier_price_changed" xsi:type="string">tier_price_changed</item> <item name="is_relations_changed" xsi:type="string">is_relations_changed</item></item> <item name="byDataChange" xsi:type="array"> <item name="status" xsi:type="string">status</item> <item name="price" xsi:type="string">price</item> <item name="special_price" xsi:type="string">special_price</item> <item name="special_from_date" xsi:type="string">special_from_date</item> <item name="special_to_date" xsi:type="string">special_to_date</item> <item name="website_ids" xsi:type="string">website_ids</item> <item name="gift_wrapping_price" xsi:type="string">gift_wrapping_price</item> <item name="tax_class_id" xsi:type="string">tax_class_id</item> <item name="msrp" xsi:type="string">msrp</item><item name="msrp_display_actual_price_type" xsi:type="string">msrp_display_actual_price_type</item></item> </argument> <argument name="reindexProductCategoryIndexerData" xsi:type="array"> <item name="byDataChange" xsi:type="array"> <item name="category_ids" xsi:type="string">category_ids</item> <item name="entity_id" xsi:type="string">entity_id</item> <item name="store_id" xsi:type="string">store_id</item> <item name="website_ids" xsi:type="string">website_ids</item> <item name="visibility" xsi:type="string">visibility</item> <item name="status" xsi:type="string">status</item> </item> </argument> <argument name="productRepository" xsi:type="object">Magento\Catalog\Api\ProductRepositoryInterface\Proxy</argument> </arguments> </type><type name="Magento\Catalog\Helper\Product\Edit\Action\Attribute"> <arguments> <argument name="session" xsi:type="object">Magento\Backend\Model\Session\Proxy</argument> </arguments> </type><type name="Magento\Catalog\Model\ResourceModel\Product\Collection"> <arguments> <argument name="catalogUrl" xsi:type="object">Magento\Catalog\Model\ResourceModel\Url\Proxy</argument> <argument name="customerSession" xsi:type="object">Magento\Customer\Model\Session\Proxy</argument> </arguments> <plugin name="joinProductsWhenFlatEnabled" type="Magento\CatalogStaging\Model\Plugin\ResourceModel\Product\JoinProductsWhenFlatEnabled"/><plugin name="joinAttribute" type="Magento\CatalogStaging\Model\Plugin\ResourceModel\Product\Collection"/></type><type name="Magento\Catalog\Model\Entity\Product\Attribute\Design\Options\Container"> <arguments> <argument name="options" xsi:type="array"> <item name="option1" xsi:type="array"> <item name="value" xsi:type="string">container1</item> <item name="label" xsi:type="string" translatable="true">Product Info Column</item> </item> <item name="option2" xsi:type="array"> <item name="value" xsi:type="string">container2</item> <item name="label" xsi:type="string" translatable="true">Block after Info Column</item> </item> </argument> </arguments> </type><type name="Magento\Catalog\Helper\Data"> <arguments> <argument name="templateFilterModel" xsi:type="string">Magento\Widget\Model\Template\Filter</argument> <argument name="catalogSession" xsi:type="object">Magento\Catalog\Model\Session\Proxy</argument> </arguments> </type><type name="Magento\Catalog\Helper\Output"> <arguments> <argument name="directivePatterns" xsi:type="array"> <item name="construct" xsi:type="const">\Magento\Framework\Filter\Template::CONSTRUCTION_PATTERN</item> <item name="backgroundImage" xsi:type="const">\Magento\PageBuilder\Plugin\Filter\TemplatePlugin::BACKGROUND_IMAGE_PATTERN</item><item name="htmlContentType" xsi:type="const">\Magento\PageBuilder\Plugin\Filter\TemplatePlugin::HTML_CONTENT_TYPE_PATTERN</item></argument> </arguments> </type><type name="Magento\Catalog\Model\Config\Source\GridPerPage"> <arguments> <argument name="perPageValues" xsi:type="string">9,15,30</argument> </arguments> </type><type name="Magento\Catalog\Model\ProductIdLocator"> <arguments> <argument name="idsLimit" xsi:type="number">1000</argument> </arguments> </type><type name="Magento\Catalog\Model\Config\Source\ListPerPage"> <arguments> <argument name="options" xsi:type="string">5,10,15,20,25</argument> </arguments> </type><type name="Magento\Catalog\Helper\Product\Compare"> <arguments> <argument name="customerSession" xsi:type="object">Magento\Customer\Model\Session\Proxy</argument> <argument name="catalogSession" xsi:type="object">Magento\Catalog\Model\Session\Proxy</argument> </arguments> </type><virtualType name="Magento\Catalog\Model\Session\Storage" type="Magento\Framework\Session\Storage"> <arguments> <argument name="namespace" xsi:type="string">catalog</argument> </arguments> </virtualType><virtualType name="Magento\Catalog\Model\System\Config\Source\InputtypeFactory" type="Magento\Eav\Model\Adminhtml\System\Config\Source\InputtypeFactory"> <arguments> <argument name="instanceName" xsi:type="string">Magento\Catalog\Model\System\Config\Source\Inputtype</argument> </arguments> </virtualType><virtualType name="Magento\Catalog\CategoryImageUpload" type="Magento\Catalog\Model\ImageUploader"> <arguments> <argument name="baseTmpPath" xsi:type="string">catalog/tmp/category</argument> <argument name="basePath" xsi:type="string">catalog/category</argument> <argument name="allowedExtensions" xsi:type="array"> <item name="jpg" xsi:type="string">jpg</item> <item name="jpeg" xsi:type="string">jpeg</item> <item name="gif" xsi:type="string">gif</item> <item name="png" xsi:type="string">png</item> </argument> <argument name="allowedMimeTypes" xsi:type="array"> <item name="jpg" xsi:type="string">image/jpg</item> <item name="jpeg" xsi:type="string">image/jpeg</item> <item name="gif" xsi:type="string">image/gif</item> <item name="png" xsi:type="string">image/png</item> </argument> </arguments> </virtualType><type name="Magento\Catalog\Controller\Adminhtml\Category\Image\Upload"> <arguments> <argument name="imageUploader" xsi:type="object">Magento\Catalog\CategoryImageUpload</argument> </arguments> </type><type name="Magento\Catalog\Model\Category\Attribute\Backend\Image"> <arguments> <argument name="imageUploader" xsi:type="object">Magento\Catalog\CategoryImageUpload</argument> </arguments> </type><type name="Magento\Catalog\Model\Session"> <arguments> <argument name="storage" xsi:type="object">Magento\Catalog\Model\Session\Storage</argument> </arguments> </type><type name="Magento\Store\Model\ResourceModel\Website"> <plugin name="invalidatePriceIndexerOnWebsite" type="Magento\Catalog\Model\Indexer\Product\Price\Plugin\Website"/> <plugin name="categoryProductWebsiteAfterDelete" type="\Magento\Catalog\Model\Indexer\Category\Product\Plugin\Website"/> <plugin name="assign_website_to_default_stock" type="Magento\InventorySales\Plugin\Store\Model\ResourceModel\Website\AssignWebsiteToDefaultStockPlugin"/><plugin name="delete_website_to_stock_link" type="Magento\InventorySales\Plugin\Store\Model\ResourceModel\Website\DeleteWebsiteToStockLinkPlugin"/><plugin name="update_sales_channel_website_code" type="Magento\InventorySales\Plugin\Store\Model\ResourceModel\Website\UpdateSalesChannelWebsiteCodePlugin"/></type><type name="Magento\Store\Model\ResourceModel\Store"> <plugin name="storeViewResourceAroundSave" type="Magento\Catalog\Model\Indexer\Category\Flat\Plugin\StoreView"/> <plugin name="catalogProductFlatIndexerStore" type="Magento\Catalog\Model\Indexer\Product\Flat\Plugin\Store"/> <plugin name="categoryStoreAroundSave" type="Magento\Catalog\Model\Indexer\Category\Product\Plugin\StoreView"/> <plugin name="productAttributesStoreViewSave" type="Magento\Catalog\Model\Indexer\Product\Eav\Plugin\StoreView"/> <plugin name="catalogsearchFulltextIndexerStoreView" type="Magento\CatalogSearch\Model\Indexer\Fulltext\Plugin\Store\View"/><plugin name="invalidateTargetRuleOnStoreViewChange" type="Magento\TargetRule\Model\Indexer\TargetRule\Plugin\Store"/><plugin name="catalogPermissionsIndexerStoreView" type="Magento\CatalogPermissions\Model\Indexer\Plugin\Store\View"/></type><type name="Magento\Store\Model\ResourceModel\Group"> <plugin name="storeGroupResourceAroundSave" type="Magento\Catalog\Model\Indexer\Category\Flat\Plugin\StoreGroup"/> <plugin name="catalogProductFlatIndexerStoreGroup" type="Magento\Catalog\Model\Indexer\Product\Flat\Plugin\StoreGroup"/> <plugin name="categoryStoreGroupAroundSave" type="Magento\Catalog\Model\Indexer\Category\Product\Plugin\StoreGroup"/> <plugin name="storeGroupResourceAroundBeforeSave" type="Magento\CatalogInventory\Model\Indexer\Stock\Plugin\StoreGroup"/><plugin name="catalogsearchFulltextIndexerStoreGroup" type="Magento\CatalogSearch\Model\Indexer\Fulltext\Plugin\Store\Group"/><plugin name="invalidateTargetRuleOnStoreGroupChange" type="Magento\TargetRule\Model\Indexer\TargetRule\Plugin\StoreGroup"/><plugin name="catalogPermissionsIndexerStoreGroup" type="Magento\CatalogPermissions\Model\Indexer\Plugin\Store\Group"/></type><type name="Magento\Catalog\Model\Indexer\Product\Price\AbstractAction"> <arguments> <argument name="defaultPriceIndexer" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\Price\DefaultPrice</argument> </arguments> </type><type name="Magento\Eav\Model\Entity\Attribute\Set"> <plugin name="invalidateEavIndexerOnAttributeSetSave" type="Magento\Catalog\Model\Indexer\Product\Eav\Plugin\AttributeSet"/> <plugin name="invalidateTargetRuleOnDeleteAttributeSet" type="Magento\TargetRule\Model\Indexer\TargetRule\Plugin\AttributeSet"/></type><type name="Magento\Catalog\Helper\Product\Flat\Indexer"> <arguments> <argument name="flatAttributeGroups" xsi:type="array"> <item name="catalog_product" xsi:type="string">catalog_product</item> <item name="quote_item" xsi:type="string">quote_item</item></argument> </arguments> <plugin name="addRowIdToFlatDefinition" type="Magento\CatalogStaging\Plugin\Helper\Product\Flat\FlatColumnsDefinition"/><plugin name="addRowIdToIndex" type="Magento\CatalogStaging\Plugin\Helper\Product\Flat\FlatIndexes"/></type><type name="Magento\Catalog\Model\Product\LinkTypeProvider"> <arguments> <argument name="linkTypes" xsi:type="array"> <item name="related" xsi:type="const">Magento\Catalog\Model\Product\Link::LINK_TYPE_RELATED</item> <item name="crosssell" xsi:type="const">Magento\Catalog\Model\Product\Link::LINK_TYPE_CROSSSELL</item> <item name="upsell" xsi:type="const">Magento\Catalog\Model\Product\Link::LINK_TYPE_UPSELL</item> <item name="associated" xsi:type="const">Magento\GroupedProduct\Model\ResourceModel\Product\Link::LINK_TYPE_GROUPED</item></argument> </arguments> </type><type name="Magento\Catalog\Model\Product\TypeTransitionManager"> <arguments> <argument name="compatibleTypes" xsi:type="array"> <item name="simple" xsi:type="const">Magento\Catalog\Model\Product\Type::TYPE_SIMPLE</item> <item name="virtual" xsi:type="const">Magento\Catalog\Model\Product\Type::TYPE_VIRTUAL</item> <item name="downloadable" xsi:type="const">Magento\Downloadable\Model\Product\Type::TYPE_DOWNLOADABLE</item><item name="configurable" xsi:type="const">Magento\ConfigurableProduct\Model\Product\Type\Configurable::TYPE_CODE</item></argument> </arguments> <plugin name="downloadable_product_transition" type="Magento\Downloadable\Model\Product\TypeTransitionManager\Plugin\Downloadable"/><plugin name="configurable_product_transition" type="Magento\ConfigurableProduct\Model\Product\TypeTransitionManager\Plugin\Configurable" sortOrder="50"/></type><virtualType name="rowsFlatTableBuilder" type="Magento\Catalog\Model\Indexer\Product\Flat\FlatTableBuilder"> <arguments> <argument name="tableData" xsi:type="object">Magento\Catalog\Model\Indexer\Product\Flat\Action\Rows\TableData</argument> </arguments> </virtualType><type name="Magento\Catalog\Model\Indexer\Product\Flat\Action\Rows"> <arguments> <argument name="flatTableBuilder" xsi:type="object">rowsFlatTableBuilder</argument> </arguments> </type><type name="Magento\Catalog\Model\Indexer\Product\Flat\FlatTableBuilder"> <arguments> <argument name="tableData" xsi:type="object">Magento\Catalog\Model\Indexer\Product\Flat\TableData</argument> </arguments> </type><virtualType name="categoryFilterList" type="Magento\Catalog\Model\Layer\FilterList"> <arguments> <argument name="filterableAttributes" xsi:type="object">Magento\Catalog\Model\Layer\Category\FilterableAttributeList</argument> <argument name="filters" xsi:type="array"> <item name="attribute" xsi:type="string">Magento\CatalogSearch\Model\Layer\Filter\Attribute</item> <item name="price" xsi:type="string">Magento\CatalogSearch\Model\Layer\Filter\Price</item> <item name="decimal" xsi:type="string">Magento\CatalogSearch\Model\Layer\Filter\Decimal</item> <item name="category" xsi:type="string">Magento\CatalogSearch\Model\Layer\Filter\Category</item> </argument></arguments> </virtualType><virtualType name="searchFilterList" type="Magento\Catalog\Model\Layer\FilterList"> <arguments> <argument name="filterableAttributes" xsi:type="object">Magento\Catalog\Model\Layer\Search\FilterableAttributeList</argument> <argument name="filters" xsi:type="array"> <item name="attribute" xsi:type="string">Magento\CatalogSearch\Model\Layer\Filter\Attribute</item> <item name="price" xsi:type="string">Magento\CatalogSearch\Model\Layer\Filter\Price</item> <item name="decimal" xsi:type="string">Magento\CatalogSearch\Model\Layer\Filter\Decimal</item> <item name="category" xsi:type="string">Magento\CatalogSearch\Model\Layer\Filter\Category</item> </argument></arguments> </virtualType><type name="Magento\Catalog\Model\Layer\Category\FilterableAttributeList"> <arguments> <argument name="layer" xsi:type="object">Magento\Catalog\Model\Layer\Category</argument> </arguments> </type><type name="Magento\Catalog\Model\Layer\Search\FilterableAttributeList"> <arguments> <argument name="layer" xsi:type="object">Magento\Catalog\Model\Layer\Search</argument> </arguments> </type><type name="Magento\Catalog\Model\Indexer\Product\Price\Processor"> <arguments> <argument name="indexer" xsi:type="object" shared="false">Magento\Framework\Indexer\IndexerInterface</argument> </arguments> </type><type name="Magento\Framework\Pricing\Adjustment\Collection"> <arguments> <argument name="adjustments" xsi:type="array"> <item name="tax" xsi:type="const">Magento\Tax\Pricing\Adjustment::ADJUSTMENT_CODE</item> <item name="weee" xsi:type="const">Magento\Weee\Pricing\Adjustment::ADJUSTMENT_CODE</item><item name="weee_tax" xsi:type="const">Magento\Weee\Pricing\TaxAdjustment::ADJUSTMENT_CODE</item></argument> </arguments></type><type name="Magento\Catalog\Model\Product\ReservedAttributeList"> <arguments> <argument name="productModel" xsi:type="string">\Magento\Catalog\Model\Product</argument> <argument name="reservedAttributes" xsi:type="array"> <item name="position" xsi:type="string">position</item> <item name="category_name" xsi:type="string">category_name</item></argument> <argument name="allowedAttributes" xsi:type="array"> <item name="type_id" xsi:type="string">type_id</item> <item name="calculated_final_price" xsi:type="string">calculated_final_price</item> <item name="request_path" xsi:type="string">request_path</item> <item name="rating_summary" xsi:type="string">rating_summary</item></argument> </arguments> </type><virtualType name="Magento\Catalog\Pricing\Price\Pool" type="Magento\Framework\Pricing\Price\Pool"> <arguments> <argument name="prices" xsi:type="array"> <item name="regular_price" xsi:type="string">Magento\Catalog\Pricing\Price\RegularPrice</item> <item name="final_price" xsi:type="string">Magento\Catalog\Pricing\Price\FinalPrice</item> <item name="tier_price" xsi:type="string">Magento\Catalog\Pricing\Price\TierPrice</item> <item name="special_price" xsi:type="string">Magento\Catalog\Pricing\Price\SpecialPrice</item> <item name="base_price" xsi:type="string">Magento\Catalog\Pricing\Price\BasePrice</item> <item name="custom_option_price" xsi:type="string">Magento\Catalog\Pricing\Price\CustomOptionPrice</item> <item name="configured_price" xsi:type="string">Magento\Catalog\Pricing\Price\ConfiguredPrice</item> <item name="configured_regular_price" xsi:type="string">Magento\Catalog\Pricing\Price\ConfiguredRegularPrice</item> <item name="catalog_rule_price" xsi:type="string">\Magento\CatalogRuleStaging\Pricing\Price\CatalogRulePrice</item><item name="msrp_price" xsi:type="string">Magento\Msrp\Pricing\Price\MsrpPrice</item><item name="wishlist_configured_price" xsi:type="string">Magento\Catalog\Pricing\Price\ConfiguredPrice</item></argument> </arguments> </virtualType><type name="Magento\Catalog\Pricing\Price\Collection"> <arguments> <argument name="pool" xsi:type="object">Magento\Catalog\Pricing\Price\Pool</argument> </arguments> </type><type name="Magento\Framework\Pricing\PriceInfo\Factory"> <arguments> <argument name="types" xsi:type="array"> <item name="default" xsi:type="array"> <item name="infoClass" xsi:type="string">Magento\Framework\Pricing\PriceInfo\Base</item> <item name="prices" xsi:type="string">Magento\Catalog\Pricing\Price\Collection</item> </item> <item name="bundle" xsi:type="array"> <item name="infoClass" xsi:type="string">Magento\Bundle\Pricing\PriceInfo</item> <item name="prices" xsi:type="string">Magento\Bundle\Pricing\Price\Collection</item> </item><item name="downloadable" xsi:type="array"> <item name="infoClass" xsi:type="string">Magento\Framework\Pricing\PriceInfo\Base</item> <item name="prices" xsi:type="string">Magento\Downloadable\Pricing\Price\Collection</item> </item><item name="giftcard" xsi:type="array"> <item name="infoClass" xsi:type="string">Magento\Framework\Pricing\PriceInfo\Base</item> <item name="prices" xsi:type="string">Magento\GiftCard\Pricing\Price\Collection</item> </item><item name="configurable" xsi:type="array"> <item name="infoClass" xsi:type="string">Magento\Framework\Pricing\PriceInfo\Base</item> <item name="prices" xsi:type="string">Magento\ConfigurableProduct\Pricing\Price\Collection</item> </item><item name="grouped" xsi:type="array"> <item name="infoClass" xsi:type="string">Magento\Framework\Pricing\PriceInfo\Base</item> <item name="prices" xsi:type="string">Magento\GroupedProduct\Pricing\Price\Collection</item> </item></argument> </arguments> </type><type name="Magento\Catalog\Model\ProductLink\CollectionProvider"> <arguments> <argument name="providers" xsi:type="array"> <item name="crosssell" xsi:type="object">Magento\Catalog\Model\ProductLink\CollectionProvider\Crosssell</item> <item name="upsell" xsi:type="object">Magento\Catalog\Model\ProductLink\CollectionProvider\Upsell</item> <item name="related" xsi:type="object">Magento\Catalog\Model\ProductLink\CollectionProvider\Related</item> <item name="associated" xsi:type="object">Magento\GroupedProduct\Model\Product\Link\CollectionProvider\Grouped</item></argument> <argument name="mapProviders" xsi:type="array"> <item name="linked" xsi:type="object">Magento\Catalog\Model\ProductLink\CollectionProvider\LinkedMapProvider</item> </argument> </arguments> </type><type name="Magento\Catalog\Model\ProductLink\Converter\ConverterPool"> <arguments> <argument name="converters" xsi:type="array"> <item name="default" xsi:type="object">Magento\Catalog\Model\ProductLink\Converter\DefaultConverter</item> <item name="associated" xsi:type="object">\Magento\GroupedProduct\Model\Product\Link\ProductEntity\Converter</item></argument> </arguments> </type><type name="Magento\Catalog\Model\Product\Option"> <arguments> <argument name="optionGroups" xsi:type="array"> <item name="date" xsi:type="string">Magento\Catalog\Model\Product\Option\Type\Date</item> <item name="file" xsi:type="string">Magento\Catalog\Model\Product\Option\Type\File</item> <item name="select" xsi:type="string">Magento\Catalog\Model\Product\Option\Type\Select</item> <item name="text" xsi:type="string">Magento\Catalog\Model\Product\Option\Type\Text</item> </argument> <argument name="optionTypesToGroups" xsi:type="array"> <item name="field" xsi:type="const">Magento\Catalog\Api\Data\ProductCustomOptionInterface::OPTION_GROUP_TEXT</item> <item name="area" xsi:type="const">Magento\Catalog\Api\Data\ProductCustomOptionInterface::OPTION_GROUP_TEXT</item> <item name="file" xsi:type="const">Magento\Catalog\Api\Data\ProductCustomOptionInterface::OPTION_GROUP_FILE</item> <item name="drop_down" xsi:type="const">Magento\Catalog\Api\Data\ProductCustomOptionInterface::OPTION_GROUP_SELECT</item> <item name="radio" xsi:type="const">Magento\Catalog\Api\Data\ProductCustomOptionInterface::OPTION_GROUP_SELECT</item> <item name="checkbox" xsi:type="const">Magento\Catalog\Api\Data\ProductCustomOptionInterface::OPTION_GROUP_SELECT</item> <item name="multiple" xsi:type="const">Magento\Catalog\Api\Data\ProductCustomOptionInterface::OPTION_GROUP_SELECT</item> <item name="date" xsi:type="const">Magento\Catalog\Api\Data\ProductCustomOptionInterface::OPTION_GROUP_DATE</item> <item name="date_time" xsi:type="const">Magento\Catalog\Api\Data\ProductCustomOptionInterface::OPTION_GROUP_DATE</item> <item name="time" xsi:type="const">Magento\Catalog\Api\Data\ProductCustomOptionInterface::OPTION_GROUP_DATE</item> </argument> </arguments> </type><type name="Magento\Catalog\Model\Product\Option\Validator\Pool"> <arguments> <argument name="validators" xsi:type="array"> <item name="default" xsi:type="object">Magento\Catalog\Model\Product\Option\Validator\DefaultValidator</item> <item name="drop_down" xsi:type="object">Magento\Catalog\Model\Product\Option\Validator\Select</item> <item name="radio" xsi:type="object">Magento\Catalog\Model\Product\Option\Validator\Select</item> <item name="checkbox" xsi:type="object">Magento\Catalog\Model\Product\Option\Validator\Select</item> <item name="multiple" xsi:type="object">Magento\Catalog\Model\Product\Option\Validator\Select</item> <item name="text" xsi:type="object">Magento\Catalog\Model\Product\Option\Validator\Text</item> <item name="area" xsi:type="object">Magento\Catalog\Model\Product\Option\Validator\Text</item> <item name="file" xsi:type="object">Magento\Catalog\Model\Product\Option\Validator\File</item> </argument> </arguments> </type><type name="Magento\Catalog\Model\ProductTypes\Config"> <arguments> <argument name="reader" xsi:type="object">Magento\Catalog\Model\ProductTypes\Config\Reader\Proxy</argument> </arguments> </type><type name="Magento\Catalog\Model\Attribute\Config\Data"> <arguments> <argument name="reader" xsi:type="object">Magento\Catalog\Model\Attribute\Config\Reader\Proxy</argument> </arguments> </type><type name="Magento\Catalog\Model\ProductOptions\Config"> <arguments> <argument name="reader" xsi:type="object">Magento\Catalog\Model\ProductOptions\Config\Reader\Proxy</argument> </arguments> </type><type name="Magento\CatalogInventory\Model\Config\Backend\ShowOutOfStock"> <plugin name="showOutOfStockValueChanged" type="Magento\Catalog\Model\Plugin\ShowOutOfStockConfig"/> </type><virtualType name="Magento\Catalog\Block\Category\Widget\Link" type="Magento\Catalog\Block\Widget\Link"> <arguments> <argument name="entityResource" xsi:type="object">Magento\Catalog\Model\ResourceModel\Category</argument> </arguments> </virtualType><virtualType name="Magento\Catalog\Block\Product\Widget\Link" type="Magento\Catalog\Block\Widget\Link"> <arguments> <argument name="entityResource" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product</argument> </arguments> </virtualType><type name="Magento\Framework\App\Rss\RssManagerInterface"> <arguments> <argument name="dataProviders" xsi:type="array"> <item name="new_products" xsi:type="string">Magento\Catalog\Block\Rss\Product\NewProducts</item> <item name="special_products" xsi:type="string">Magento\Catalog\Block\Rss\Product\Special</item> <item name="category" xsi:type="string">Magento\Catalog\Block\Rss\Category</item> <item name="order_status" xsi:type="string">Magento\Sales\Model\Rss\OrderStatus</item><item name="discounts" xsi:type="string">Magento\SalesRule\Block\Rss\Discounts</item><item name="wishlist" xsi:type="string">Magento\Wishlist\Model\Rss\Wishlist</item></argument> </arguments> </type><type name="Magento\Catalog\Model\Product\Option\Type\File"> <arguments> <argument name="validatorInfo" xsi:type="object">Magento\Catalog\Model\Product\Option\Type\File\ValidatorInfo\Proxy</argument> <argument name="validatorFile" xsi:type="object">Magento\Catalog\Model\Product\Option\Type\File\ValidatorFile\Proxy</argument> </arguments> </type><type name="Magento\Catalog\Model\Attribute\Config"> <arguments> <argument name="dataStorage" xsi:type="object">Magento\Catalog\Model\Attribute\Config\Data\Proxy</argument> </arguments> </type><virtualType name="Magento\Catalog\Model\Layer\Search\Context" type="Magento\Catalog\Model\Layer\Context"> <arguments> <argument name="collectionProvider" xsi:type="object">Magento\Catalog\Model\Layer\Search\ItemCollectionProvider</argument> <argument name="stateKey" xsi:type="object">Magento\Catalog\Model\Layer\Category\StateKey</argument> <argument name="collectionFilter" xsi:type="object">Magento\Catalog\Model\Layer\Search\CollectionFilter</argument> </arguments> </virtualType><virtualType name="Magento\Catalog\Model\Layer\Category\Context" type="Magento\Catalog\Model\Layer\Context"> <arguments> <argument name="collectionProvider" xsi:type="object">Magento\Catalog\Model\Layer\Category\ItemCollectionProvider</argument> <argument name="stateKey" xsi:type="object">Magento\Catalog\Model\Layer\Category\StateKey</argument> <argument name="collectionFilter" xsi:type="object">Magento\Catalog\Model\Layer\Category\CollectionFilter</argument> </arguments> </virtualType><type name="Magento\Catalog\Model\Layer\Search"> <arguments> <argument name="context" xsi:type="object">Magento\Elasticsearch\Model\Layer\Search\Context</argument> </arguments> </type><type name="Magento\Catalog\Model\Layer\Category"> <arguments> <argument name="context" xsi:type="object">Magento\Elasticsearch\Model\Layer\Category\Context</argument> </arguments> </type><type name="Magento\Catalog\Model\Layer\Filter\Dynamic\AlgorithmFactory"> <arguments> <argument name="algorithms" xsi:type="array"> <item name="auto" xsi:type="string">Magento\Catalog\Model\Layer\Filter\Dynamic\Auto</item> <item name="improved" xsi:type="string">Magento\Catalog\Model\Layer\Filter\Dynamic\Improved</item> <item name="manual" xsi:type="string">Magento\Catalog\Model\Layer\Filter\Dynamic\Manual</item> </argument> </arguments> </type><type name="Magento\Catalog\Model\Layer\Resolver"> <arguments> <argument name="layersPool" xsi:type="array"> <item name="category" xsi:type="string">Magento\Catalog\Model\Layer\Category</item> <item name="search" xsi:type="string">Magento\Catalog\Model\Layer\Search</item> </argument> </arguments> </type><type name="Magento\Catalog\Model\ResourceModel\Config"> <plugin name="productListingAttributesCaching" type="Magento\Catalog\Plugin\Model\ResourceModel\Config"/> </type><preference for="Magento\Catalog\Api\ProductLinkTypeListInterface" type="Magento\Catalog\Model\Product\LinkTypeProvider"/><preference for="Magento\Catalog\Api\Data\ProductLinkAttributeInterface" type="Magento\Catalog\Model\ProductLink\Attribute"/><preference for="Magento\Catalog\Api\Data\ProductLinkTypeInterface" type="Magento\Catalog\Model\ProductLink\Type"/><preference for="Magento\Catalog\Api\ProductLinkManagementInterface" type="Magento\Catalog\Model\ProductLink\Management"/><preference for="Magento\Catalog\Api\Data\ProductLinkInterface" type="Magento\Catalog\Model\ProductLink\Link"/><preference for="Magento\Catalog\Api\CategoryLinkManagementInterface" type="Magento\Catalog\Model\CategoryLinkManagement"/><preference for="Magento\Catalog\Api\Data\ProductWebsiteLinkInterface" type="Magento\Catalog\Model\ProductWebsiteLink"/><preference for="Magento\Catalog\Api\ProductWebsiteLinkRepositoryInterface" type="Magento\Catalog\Model\ProductWebsiteLinkRepository"/><preference for="Magento\Catalog\Api\CategoryLinkRepositoryInterface" type="Magento\Catalog\Model\CategoryLinkRepository"/><preference for="Magento\Catalog\Api\Data\ProductCustomOptionInterface" type="Magento\Catalog\Model\Product\Option"/><preference for="Magento\Catalog\Api\ProductCustomOptionRepositoryInterface" type="Magento\Catalog\Model\Product\Option\Repository"/><preference for="Magento\Catalog\Api\Data\ProductCustomOptionTypeInterface" type="Magento\Catalog\Model\Product\Option\Type"/><preference for="Magento\Catalog\Api\ProductTierPriceManagementInterface" type="Magento\Catalog\Model\Product\TierPriceManagement"/><preference for="Magento\Catalog\Api\ScopedProductTierPriceManagementInterface" type="Magento\Catalog\Model\Product\ScopedTierPriceManagement"/><preference for="Magento\Catalog\Api\Data\ProductTierPriceInterface" type="Magento\Catalog\Model\Product\TierPrice"/><preference for="Magento\Catalog\Api\Data\CategoryProductLinkInterface" type="Magento\Catalog\Model\CategoryProductLink"/><preference for="Magento\Catalog\Api\ProductCustomOptionTypeListInterface" type="Magento\Catalog\Model\ProductOptions\TypeList"/><preference for="Magento\Catalog\Api\Data\ProductCustomOptionValuesInterface" type="Magento\Catalog\Model\Product\Option\Value"/><preference for="Magento\Catalog\Api\Data\CustomOptionInterface" type="Magento\Catalog\Model\CustomOptions\CustomOption"/><preference for="Magento\Catalog\Api\Data\ProductOptionInterface" type="Magento\Catalog\Model\ProductOption"/><preference for="Magento\Catalog\Api\Data\CategoryLinkInterface" type="Magento\Catalog\Model\CategoryLink"/><virtualType name="Magento\Catalog\Model\ResourceModel\Attribute\Collection" type="Magento\Eav\Model\ResourceModel\Entity\Attribute\Collection"> </virtualType><type name="Magento\Eav\Model\Entity\Attribute\Backend\AbstractBackend"> <plugin name="attributeValidation" type="Magento\Catalog\Plugin\Model\Attribute\Backend\AttributeValidation"/> <plugin name="ConfigurableProduct::skipValidation" type="Magento\ConfigurableProduct\Plugin\Model\Attribute\Backend\AttributeValidation"/></type><type name="Magento\Catalog\Plugin\Model\Attribute\Backend\AttributeValidation"> <arguments> <argument name="allowedEntityTypes" xsi:type="array"> <item name="product" xsi:type="string">Magento\Catalog\Api\Data\ProductInterface</item> <item name="category" xsi:type="string">Magento\Catalog\Api\Data\CategoryInterface</item> </argument> </arguments> </type><type name="Magento\Catalog\Model\CategoryRepository"> <arguments> <argument name="categoryResource" xsi:type="object">Magento\Catalog\Model\ResourceModel\Category\Proxy</argument> </arguments> </type><type name="Magento\Catalog\Helper\Product\ConfigurationPool"> <arguments> <argument name="instancesByType" xsi:type="array"> <item name="default" xsi:type="object">Magento\Catalog\Helper\Product\Configuration</item> </argument> </arguments> </type><type name="Magento\Framework\Config\View"> <arguments> <argument name="xpath" xsi:type="array"> <item name="image" xsi:type="array"> <item name="/view/media/images" xsi:type="array"> <item name="id" xsi:type="string">module</item> </item> <item name="/view/media/images/image" xsi:type="array"> <item name="id1" xsi:type="string">id</item> <item name="id2" xsi:type="string">type</item> </item> </item> <item name="video" xsi:type="array"> <item name="/view/media/videos" xsi:type="array"> <item name="id" xsi:type="string">module</item> </item> <item name="/view/media/videos/video" xsi:type="array"> <item name="id1" xsi:type="string">id</item> <item name="id2" xsi:type="string">type</item> </item> </item></argument> </arguments> </type><type name="Magento\Framework\View\Xsd\Media\TypeDataExtractorPool"> <arguments> <argument name="extractors" xsi:type="array"> <item name="images" xsi:type="object">Magento\Catalog\Model\ImageExtractor</item> <item name="videos" xsi:type="object">Magento\ProductVideo\Model\VideoExtractor</item></argument> </arguments> </type><type name="Magento\Quote\Model\Quote\Item\Repository"> <arguments> <argument name="cartItemProcessors" xsi:type="array"> <item name="custom_options" xsi:type="object">Magento\Catalog\Model\CustomOptions\CustomOptionProcessor\Proxy</item> <item name="bundle" xsi:type="object">\Magento\Bundle\Model\CartItemProcessor\Proxy</item><item name="downloadable" xsi:type="object">Magento\Downloadable\Model\Quote\Item\CartItemProcessor\Proxy</item><item name="giftcard" xsi:type="object">Magento\GiftCard\Model\Quote\Item\CartItemProcessor\Proxy</item><item name="configurable" xsi:type="object">Magento\ConfigurableProduct\Model\Quote\Item\CartItemProcessor\Proxy</item><item name="grouped" xsi:type="object">Magento\GroupedProduct\Model\Quote\Item\CartItemProcessor\Proxy</item></argument> </arguments> </type><type name="Magento\Sales\Api\OrderItemRepositoryInterface"> <arguments> <argument name="processorPool" xsi:type="array"> <item name="custom_options" xsi:type="object">Magento\Catalog\Model\ProductOptionProcessor</item> <item name="bundle" xsi:type="object">Magento\Bundle\Model\ProductOptionProcessor</item><item name="downloadable" xsi:type="object">Magento\Downloadable\Model\ProductOptionProcessor</item><item name="giftcard" xsi:type="object">Magento\GiftCard\Model\ProductOptionProcessor</item><item name="configurable" xsi:type="object">Magento\ConfigurableProduct\Model\ProductOptionProcessor</item></argument> </arguments> <plugin name="get_gift_message" type="Magento\GiftMessage\Model\Plugin\OrderItemGet"/></type><type name="Magento\Sales\Model\Order\ProductOption"> <arguments> <argument name="processorPool" xsi:type="array"> <item name="custom_options" xsi:type="object">Magento\Catalog\Model\ProductOptionProcessor</item> <item name="bundle" xsi:type="object">Magento\Bundle\Model\ProductOptionProcessor</item><item name="downloadable" xsi:type="object">Magento\Downloadable\Model\ProductOptionProcessor</item><item name="giftcard" xsi:type="object">Magento\GiftCard\Model\ProductOptionProcessor</item><item name="configurable" xsi:type="object">Magento\ConfigurableProduct\Model\ProductOptionProcessor</item></argument> </arguments> </type><type name="Magento\Catalog\Model\Indexer\Category\Flat\SkipStaticColumnsProvider"> <arguments> <argument name="skipStaticColumns" xsi:type="array"> <item name="entity_type_id" xsi:type="string">entity_type_id</item> <item name="attribute_set_id" xsi:type="string">attribute_set_id</item> <item name="row_id" xsi:type="string">row_id</item><item name="created_in" xsi:type="string">created_in</item><item name="updated_in" xsi:type="string">updated_in</item></argument> </arguments> </type><type name="Magento\Catalog\Model\ResourceModel\Product\Collection\ProductLimitation" shared="false"><plugin name="isUsingPriceIndex" type="Magento\CatalogStaging\Model\Plugin\ResourceModel\Product\Collection\ProductLimitation"/></type><virtualType name="Magento\Catalog\EntityCreator\MetadataPool" type="Magento\Framework\EntityManager\MetadataPool"> <arguments> <argument name="metadata" xsi:type="array"> <item name="Magento\Catalog\Api\Data\ProductInterface" xsi:type="array"> <item name="entityContext" xsi:type="array"> <item name="store" xsi:type="string">Magento\Store\Model\DefaultStoreScopeProvider</item> </item> </item> <item name="Magento\Catalog\Api\Data\CategoryInterface" xsi:type="array"> <item name="entityContext" xsi:type="array"> <item name="store" xsi:type="string">Magento\Store\Model\DefaultStoreScopeProvider</item> </item> </item> </argument> </arguments> </virtualType><virtualType name="Magento\Catalog\Model\Entity\CreationScopeResolver" type="Magento\Framework\Model\Entity\ScopeResolver"> <arguments> <argument name="metadataPool" xsi:type="object">Magento\Catalog\EntityCreator\MetadataPool</argument> </arguments> </virtualType><virtualType name="Magento\Catalog\Model\ResourceModel\CreateHandler" type="Magento\Eav\Model\ResourceModel\CreateHandler"> <arguments> <argument name="metadataPool" xsi:type="object">Magento\Catalog\EntityCreator\MetadataPool</argument> <argument name="scopeResolver" xsi:type="object">Magento\Catalog\Model\Entity\CreationScopeResolver</argument> </arguments> </virtualType><virtualType name="Magento\Catalog\Model\ResourceModel\UpdateHandler" type="Magento\Eav\Model\ResourceModel\UpdateHandler"> <arguments> <argument name="attributePersistor" xsi:type="object">Magento\Catalog\Model\ResourceModel\AttributePersistor</argument> </arguments> </virtualType><type name="Magento\Eav\Model\ResourceModel\ReadSnapshot"> <plugin name="catalogReadSnapshot" type="Magento\Catalog\Plugin\Model\ResourceModel\ReadSnapshotPlugin"/> </type><preference for="Magento\Catalog\Model\ResourceModel\Product\LinkedProductSelectBuilderInterface" type="Magento\Catalog\Model\ResourceModel\Product\LinkedProductSelectBuilderComposite"/><type name="Magento\Catalog\Model\ResourceModel\Product\LinkedProductSelectBuilderComposite"> <arguments> <argument name="linkedProductSelectBuilder" xsi:type="array"> <item name="basePrice" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\LinkedProductSelectBuilderByBasePrice</item> <item name="specialPrice" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\LinkedProductSelectBuilderBySpecialPrice</item> <item name="tierPrice" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\LinkedProductSelectBuilderByTierPrice</item> <item name="indexPrice" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\LinkedProductSelectBuilderByIndexPrice</item> <item name="catalogRulePrice" xsi:type="object">Magento\CatalogRule\Model\ResourceModel\Product\LinkedProductSelectBuilderByCatalogRulePrice</item></argument> </arguments> </type><virtualType name="Magento\Catalog\Model\Api\SearchCriteria\CollectionProcessor\ProductFilterProcessor" type="Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor"> <arguments> <argument name="customFilters" xsi:type="array"> <item name="category_id" xsi:type="object">Magento\Catalog\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor\ProductCategoryFilter</item> <item name="store" xsi:type="object">Magento\Catalog\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor\ProductStoreFilter</item> <item name="store_id" xsi:type="object">Magento\Catalog\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor\ProductStoreFilter</item> <item name="website_id" xsi:type="object">Magento\Catalog\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor\ProductWebsiteFilter</item> </argument> </arguments> </virtualType><virtualType name="Magento\Catalog\Model\Api\SearchCriteria\ProductCollectionProcessor" type="Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor"> <arguments> <argument name="processors" xsi:type="array"> <item name="filters" xsi:type="object">Magento\Catalog\Model\Api\SearchCriteria\CollectionProcessor\ProductFilterProcessor</item> <item name="sorting" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\SortingProcessor</item> <item name="pagination" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\PaginationProcessor</item> </argument> </arguments> </virtualType><type name="Magento\Catalog\Model\ProductRepository"> <arguments> <argument name="collectionProcessor" xsi:type="object">Magento\Catalog\Model\Api\SearchCriteria\ProductCollectionProcessor</argument> </arguments> </type><type name="Magento\Catalog\Model\CategoryList"> <arguments> <argument name="collectionProcessor" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor</argument> </arguments> </type><type name="Magento\Catalog\Model\ProductRenderList"> <arguments> <argument name="collectionProcessor" xsi:type="object">Magento\Catalog\Model\Api\SearchCriteria\ProductCollectionProcessor</argument> <argument name="productAttributes" xsi:type="array"> <item name="msrp" xsi:type="string">msrp</item> <item name="msrp_display_price_type" xsi:type="string">msrp_display_actual_price_type</item> </argument></arguments> </type><type name="Magento\Quote\Model\Quote\Item\ToOrderItem"> <plugin name="copy_quote_files_to_order" type="Magento\Catalog\Model\Plugin\QuoteItemProductOption"/> <plugin name="append_bundle_data_to_order" type="Magento\Bundle\Model\Plugin\QuoteItem"/><plugin name="append_gift_card_data_to_order" type="Magento\GiftCard\Model\Plugin\QuoteItem"/><plugin name="gift_registry_item_from_quote_item" type="Magento\GiftRegistry\Model\Plugin\QuoteItem"/><plugin name="gift_message_quote_item_conversion" type="Magento\GiftMessage\Model\Plugin\QuoteItem"/><plugin name="ava_vatcode_quote_to_order_item" type="ClassyLlama\AvaTax\Plugin\AvaVatcodeQuoteToOrderItem"/></type><preference for="Magento\Catalog\Model\ResourceModel\Product\BaseSelectProcessorInterface" type="Magento\Catalog\Model\ResourceModel\Product\CompositeWithWebsiteProcessor"/><type name="Magento\Catalog\Model\ResourceModel\Product\CompositeBaseSelectProcessor"> <arguments> <argument name="baseSelectProcessors" xsi:type="array"> <item name="status" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\StatusBaseSelectProcessor</item> <item name="stock_status" xsi:type="object">Magento\InventoryConfigurableProduct\Model\ResourceModel\Product\StockStatusBaseSelectProcessor</item></argument> </arguments> </type><virtualType name="Magento\Catalog\Model\ResourceModel\Product\CompositeWithWebsiteProcessor" type="Magento\Catalog\Model\ResourceModel\Product\CompositeBaseSelectProcessor"> <arguments> <argument name="baseSelectProcessors" xsi:type="array"> <item name="website" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Website\SelectProcessor</item> </argument> </arguments> </virtualType><type name="Magento\Catalog\Model\ResourceModel\Product\Indexer\LinkedProductSelectBuilderByIndexPrice"> <arguments> <argument name="baseSelectProcessor" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\CompositeBaseSelectProcessor</argument> <argument name="priceTableResolver" xsi:type="object">Magento\Catalog\Model\Indexer\Product\Price\PriceTableResolver</argument> </arguments> </type><type name="Magento\Catalog\Model\Product\Price\CostStorage"> <arguments> <argument name="allowedProductTypes" xsi:type="array"> <item name="0" xsi:type="string">simple</item> <item name="1" xsi:type="string">virtual</item> <item name="2" xsi:type="string">downloadable</item></argument> </arguments> </type><type name="Magento\Catalog\Model\Product\Price\BasePriceStorage"> <arguments> <argument name="allowedProductTypes" xsi:type="array"> <item name="0" xsi:type="string">simple</item> <item name="1" xsi:type="string">virtual</item> <item name="2" xsi:type="string">bundle</item> <item name="3" xsi:type="string">downloadable</item></argument> </arguments> </type><type name="Magento\Catalog\Model\Product\Price\Validation\TierPriceValidator"> <arguments> <argument name="allowedProductTypes" xsi:type="array"> <item name="0" xsi:type="string">simple</item> <item name="1" xsi:type="string">virtual</item> <item name="2" xsi:type="string">bundle</item> <item name="3" xsi:type="string">downloadable</item></argument> </arguments> </type><type name="Magento\Catalog\Model\Product\Price\SpecialPriceStorage"> <arguments> <argument name="allowedProductTypes" xsi:type="array"> <item name="0" xsi:type="string">simple</item> <item name="1" xsi:type="string">virtual</item> <item name="2" xsi:type="string">bundle</item><item name="3" xsi:type="string">downloadable</item></argument> </arguments> </type><type name="Magento\Catalog\Ui\DataProvider\Product\ProductRenderCollectorComposite"> <arguments> <argument name="productProviders" xsi:type="array"> <item name="image" xsi:type="object">\Magento\Catalog\Ui\DataProvider\Product\Listing\Collector\Image</item> <item name="price" xsi:type="object">\Magento\Catalog\Ui\DataProvider\Product\Listing\Collector\Price</item> <item name="url" xsi:type="object">\Magento\Catalog\Ui\DataProvider\Product\Listing\Collector\Url</item> <item name="additional_info" xsi:type="object">\Magento\Catalog\Ui\DataProvider\Product\Listing\Collector\AdditionalInfo</item> <item name="bundle_price" xsi:type="object">\Magento\Bundle\Ui\DataProvider\Product\Listing\Collector\BundlePrice</item><item name="msrp_price" xsi:type="object">\Magento\Msrp\Ui\DataProvider\Product\Listing\Collector\MsrpPrice</item><item name="giftcard_price" xsi:type="object">\Magento\GiftCard\Ui\DataProvider\Product\Collector\Price</item><item name="wishlist_url" xsi:type="object">\Magento\Wishlist\Ui\DataProvider\Product\Collector\Button</item><item name="tax" xsi:type="object">Magento\Tax\Ui\DataProvider\Product\Listing\Collector\Tax</item><item name="weee" xsi:type="object">\Magento\Weee\Ui\DataProvider\Product\Listing\Collector\Weee</item><item name="review" xsi:type="object">\Magento\Review\Ui\DataProvider\Product\Listing\Collector\Review</item></argument> </arguments> </type><type name="Magento\Catalog\Model\FrontendStorageConfigurationPool"> <arguments> <argument name="storageConfigurations" xsi:type="array"> <item name="recently_viewed_product" xsi:type="object">Magento\Catalog\Model\Widget\RecentlyViewedStorageConfiguration</item> <item name="recently_compared_product" xsi:type="object">Magento\Catalog\Model\Widget\RecentlyComparedStorageConfiguration</item> </argument> </arguments> </type><type name="Magento\Catalog\Ui\DataProvider\Product\Listing\Collector\Image"> <arguments> <argument name="imageCodes" xsi:type="array"> <item name="widget_recently_viewed_grid" xsi:type="string">recently_viewed_products_grid_content_widget</item> <item name="widget_recently_viewed_list" xsi:type="string">recently_viewed_products_list_content_widget</item> <item name="widget_recently_viewed_sidebar" xsi:type="string">recently_viewed_products_images_names_widget</item> <item name="widget_recently_compared_grid" xsi:type="string">recently_compared_products_grid_content_widget</item> <item name="widget_recently_compared_list" xsi:type="string">recently_compared_products_list_content_widget</item> <item name="widget_recently_compared_sidebar" xsi:type="string">recently_compared_products_images_names_widget</item> </argument> </arguments> </type><preference for="Magento\Catalog\Pricing\Price\MinimalPriceCalculatorInterface" type="Magento\Catalog\Pricing\Price\MinimalTierPriceCalculator"/><type name="Magento\Catalog\Model\ResourceModel\Product\Indexer\Price\BatchSizeCalculator"> <arguments> <argument name="batchRowsCount" xsi:type="array"> <item name="default" xsi:type="number">5000</item> <item name="configurable" xsi:type="number">50000</item></argument> <argument name="estimators" xsi:type="array"> <item name="default" xsi:type="object">Magento\Catalog\Model\Indexer\Price\BatchSizeManagement</item> <item name="bundle" xsi:type="object">Magento\Catalog\Model\Indexer\Price\CompositeProductBatchSizeManagement</item><item name="configurable" xsi:type="object">Magento\Catalog\Model\Indexer\Price\CompositeProductBatchSizeManagement</item><item name="grouped" xsi:type="object">Magento\Catalog\Model\Indexer\Price\CompositeProductBatchSizeManagement</item></argument> <argument name="batchSizeAdjusters" xsi:type="array"> <item name="bundle" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\Price\CompositeProductBatchSizeAdjuster</item> <item name="configurable" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\Price\CompositeProductBatchSizeAdjuster</item><item name="grouped" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\Price\CompositeProductBatchSizeAdjuster</item></argument></arguments> </type><virtualType name="Magento\Catalog\Model\Indexer\Price\CompositeProductBatchSizeManagement" type="Magento\Framework\Indexer\BatchSizeManagement"> <arguments> <argument name="rowSizeEstimator" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\Price\CompositeProductRowSizeEstimator</argument> </arguments> </virtualType><virtualType name="Magento\Catalog\Model\Indexer\Price\BatchSizeManagement" type="Magento\Framework\Indexer\BatchSizeManagement"> <arguments> <argument name="rowSizeEstimator" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\Price\IndexTableRowSizeEstimator</argument> </arguments> </virtualType><type name="Magento\Catalog\Model\Indexer\Category\Product\Action\Full"> <arguments> <argument name="batchRowsCount" xsi:type="number">100000</argument> <argument name="batchSizeManagement" xsi:type="object">Magento\Catalog\Model\Indexer\CategoryProductBatchSize</argument> </arguments> </type><virtualType name="Magento\Catalog\Model\Indexer\CategoryProductBatchSize" type="Magento\Framework\Indexer\BatchSizeManagement"> <arguments> <argument name="rowSizeEstimator" xsi:type="object">Magento\Catalog\Model\Indexer\Category\Product\RowSizeEstimator</argument> </arguments> </virtualType><type name="Magento\Catalog\Model\ResourceModel\Product\Indexer\TemporaryTableStrategy" shared="false"> <arguments> <argument name="strategy" xsi:type="object">Magento\Framework\Indexer\Table\Strategy</argument> </arguments> </type><type name="Magento\Catalog\Model\ResourceModel\Product\Indexer\Price\DefaultPrice"> <arguments> <argument name="tableStrategy" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\TemporaryTableStrategy</argument> <argument name="connectionName" xsi:type="string">indexer</argument> </arguments> </type><type name="Magento\Catalog\Model\Indexer\Product\Eav\Action\Full"> <arguments> <argument name="batchSizeCalculator" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\Eav\BatchSizeCalculator</argument> </arguments> </type><type name="Magento\Catalog\Model\ResourceModel\Product\Indexer\Eav\Source"> <arguments> <argument name="tableStrategy" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\TemporaryTableStrategy</argument> <argument name="connectionName" xsi:type="string">indexer</argument> </arguments> </type><virtualType name="Magento\Catalog\Model\ResourceModel\Product\Indexer\Eav\DecimalBatchSizeManagement" type="Magento\Framework\Indexer\BatchSizeManagement"> <arguments> <argument name="rowSizeEstimator" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\Eav\DecimalRowSizeEstimator</argument> </arguments> </virtualType><virtualType name="Magento\Catalog\Model\ResourceModel\Product\Indexer\Eav\SourceBatchSizeManagement" type="Magento\Framework\Indexer\BatchSizeManagement"> <arguments> <argument name="rowSizeEstimator" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\Eav\SourceRowSizeEstimator</argument> </arguments> </virtualType><type name="Magento\Catalog\Model\ResourceModel\Product\Indexer\Eav\BatchSizeCalculator"> <arguments> <argument name="batchSizes" xsi:type="array"> <item name="decimal" xsi:type="number">1000</item> <item name="source" xsi:type="number">1000</item> </argument> <argument name="batchSizeManagers" xsi:type="array"> <item name="decimal" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\Eav\DecimalBatchSizeManagement</item> <item name="source" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\Eav\SourceBatchSizeManagement</item> </argument> </arguments> </type><type name="Magento\Framework\Data\CollectionModifier"> <arguments> <argument name="conditions" xsi:type="array"> <item name="productVisibilityCondition" xsi:type="object">Magento\Catalog\Model\ProductVisibilityCondition</item> <item name="stockStatusCondition" xsi:type="object">Magento\CatalogInventory\Model\ProductCollectionStockCondition</item></argument> </arguments> </type><type name="Magento\Catalog\Controller\Adminhtml\Product\Initialization\Helper"> <arguments> <argument name="productRepository" xsi:type="object">Magento\Catalog\Api\ProductRepositoryInterface\Proxy</argument> </arguments> <plugin name="weeeAttributeOptionsProcess" type="Magento\Weee\Plugin\Catalog\Controller\Adminhtml\Product\Initialization\Helper\ProcessTaxAttribute"/></type><type name="Magento\Catalog\Model\ResourceModel\Product\Indexer\Price\TierPrice"> <arguments> <argument name="connectionName" xsi:type="string">indexer</argument> </arguments> </type><type name="Magento\Catalog\Model\Api\SearchCriteria\CollectionProcessor\ConditionProcessor\ConditionBuilder\Factory"> <arguments> <argument name="eavAttributeConditionBuilder" xsi:type="object">Magento\Catalog\Model\Api\SearchCriteria\CollectionProcessor\ConditionProcessor\ConditionBuilder\EavAttributeCondition</argument> <argument name="nativeAttributeConditionBuilder" xsi:type="object">Magento\Catalog\Model\Api\SearchCriteria\CollectionProcessor\ConditionProcessor\ConditionBuilder\NativeAttributeCondition</argument> </arguments> </type><type name="Magento\Catalog\Model\Indexer\Product\Price\DimensionCollectionFactory"> <arguments> <argument name="dimensionProviders" xsi:type="array"> <!-- @see \Magento\Store\Model\Indexer\WebsiteDimensionProvider::DIMENSION_NAME --> <item name="ws" xsi:type="object">Magento\Store\Model\Indexer\WebsiteDimensionProvider</item> <!-- @see \Magento\Customer\Model\Indexer\CustomerGroupDimensionProvider::DIMENSION_NAME --> <item name="cg" xsi:type="object">Magento\Customer\Model\Indexer\CustomerGroupDimensionProvider</item> </argument> </arguments> </type><type name="Magento\Catalog\Model\Indexer\Product\Price\Plugin\TableResolver"> <arguments> <argument name="priceTableResolver" xsi:type="object">Magento\Catalog\Model\Indexer\Product\Price\PriceTableResolver\Proxy</argument> <argument name="storeManager" xsi:type="object">Magento\Store\Model\StoreManagerInterface\Proxy</argument> <argument name="context" xsi:type="object">Magento\Framework\App\Http\Context\Proxy</argument> <!-- Unccomment after fix issue with Proxy generation --> <!--<argument name="dimensionModeConfiguration" xsi:type="object">--> <!--Magento\Catalog\Model\Indexer\Product\Price\DimensionModeConfiguration\Proxy--> <!--</argument>--> </arguments> </type><type name="Magento\Catalog\Model\ResourceModel\Layer\Filter\Price"> <arguments> <argument name="priceTableResolver" xsi:type="object"> Magento\Catalog\Model\Indexer\Product\Price\PriceTableResolver </argument> </arguments> </type><type name="Magento\Catalog\Model\ResourceModel\Product\Indexer\Price\CustomOptionPriceModifier"> <arguments> <argument name="tableStrategy" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\TemporaryTableStrategy</argument> </arguments> </type><type name="Magento\Catalog\Model\Indexer\Product\Price\TableMaintainer"> <arguments> <argument name="connectionName" xsi:type="string">indexer</argument> <argument name="tableResolver" xsi:type="object">Magento\Framework\Indexer\ScopeResolver\IndexScopeResolver</argument> </arguments> </type><type name="Magento\Catalog\Model\ResourceModel\Product\Indexer\Price\BasePriceModifier"> <arguments> <argument name="priceModifiers" xsi:type="array"> <item name="customOptionPriceModifier" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\Price\CustomOptionPriceModifier</item> <item name="catalogRulePriceModifier" xsi:type="object">Magento\CatalogRule\Model\Indexer\ProductPriceIndexModifier</item><item name="DisabledProductOptionPriceModifier" xsi:type="object">Magento\Bundle\Model\ResourceModel\Indexer\Price\DisabledProductOptionPriceModifier</item><item name="inventoryProductPriceIndexFilter" xsi:type="object">Magento\CatalogInventory\Model\Indexer\ProductPriceIndexFilter</item></argument> </arguments> </type><virtualType name="Magento\Catalog\Model\ResourceModel\Product\Indexer\Price\VirtualProductPrice" type="Magento\Catalog\Model\ResourceModel\Product\Indexer\Price\SimpleProductPrice"> <arguments> <argument name="productType" xsi:type="string">virtual</argument> </arguments> </virtualType><type name="Magento\Indexer\Console\Command\IndexerSetDimensionsModeCommand"> <arguments> <argument name="dimensionSwitchers" xsi:type="array"> <item name="catalog_product_price" xsi:type="object">Magento\Catalog\Model\Indexer\Product\Price\ModeSwitcher</item> <item name="catalogpermissions_category" xsi:type="object">Magento\CatalogPermissions\Model\Indexer\Category\ModeSwitcher</item></argument> </arguments> </type><type name="Magento\Indexer\Console\Command\IndexerShowDimensionsModeCommand"> <arguments> <argument name="indexers" xsi:type="array"> <item name="catalog_product_price" xsi:type="string">catalog_product_price</item> <item name="catalogpermissions_category" xsi:type="string">catalogpermissions_category</item></argument> <argument name="optionalIndexers" xsi:type="array"> <item name="catalogpermissions_category" xsi:type="string">catalogpermissions_category</item> </argument></arguments> </type><type name="Magento\Catalog\Model\Product\Option\Type\Select"> <arguments> <argument name="singleSelectionTypes" xsi:type="array"> <item name="drop_down" xsi:type="const">Magento\Catalog\Api\Data\ProductCustomOptionInterface::OPTION_TYPE_DROP_DOWN</item> <item name="radio" xsi:type="const">Magento\Catalog\Api\Data\ProductCustomOptionInterface::OPTION_TYPE_RADIO</item> </argument> </arguments> </type><type name="Magento\Catalog\Model\ProductLink\Repository"> <arguments> <argument name="entityCollectionProvider" xsi:type="object">Magento\Catalog\Model\ProductLink\CollectionProvider\Proxy</argument> <argument name="linkInitializer" xsi:type="object">Magento\Catalog\Model\Product\Initialization\Helper\ProductLinks\Proxy</argument> </arguments> </type><type name="Magento\Catalog\Model\ProductLink\ProductLinkQuery"> <arguments> <argument name="collectionProvider" xsi:type="object">Magento\Catalog\Model\ProductLink\CollectionProvider\Proxy</argument> </arguments> </type><type name="Magento\Catalog\Model\Product\Attribute\LayoutUpdateManager"> <arguments> <argument name="themeFactory" xsi:type="object">Magento\Framework\View\Design\Theme\FlyweightFactory\Proxy</argument> </arguments> </type><type name="Magento\Catalog\Model\Category\Attribute\LayoutUpdateManager"> <arguments> <argument name="themeFactory" xsi:type="object">Magento\Framework\View\Design\Theme\FlyweightFactory\Proxy</argument> </arguments> </type><type name="Magento\Catalog\Model\Category\Attribute\Backend\LayoutUpdate"> <arguments> <argument name="manager" xsi:type="object">Magento\Catalog\Model\Category\Attribute\LayoutUpdateManager\Proxy</argument> </arguments> </type><type name="Magento\Catalog\Model\Category\Attribute\Source\LayoutUpdate"> <arguments> <argument name="manager" xsi:type="object">Magento\Catalog\Model\Category\Attribute\LayoutUpdateManager\Proxy</argument> </arguments> </type><type name="Magento\Catalog\Model\Product\Attribute\Backend\LayoutUpdate"> <arguments> <argument name="manager" xsi:type="object">Magento\Catalog\Model\Product\Attribute\LayoutUpdateManager\Proxy</argument> </arguments> </type><type name="Magento\Catalog\Model\Product\Attribute\Source\LayoutUpdate"> <arguments> <argument name="manager" xsi:type="object">Magento\Catalog\Model\Product\Attribute\LayoutUpdateManager\Proxy</argument> </arguments> </type><type name="Magento\Catalog\Model\Product\Configuration\Item\ItemResolverComposite"> <arguments> <argument name="itemResolvers" xsi:type="array"><item name="configurable" xsi:type="string">Magento\ConfigurableProduct\Model\Product\Configuration\Item\ItemProductResolver</item><item name="grouped" xsi:type="string">Magento\GroupedProduct\Model\Product\Configuration\Item\ItemProductResolver</item></argument> </arguments> </type><type name="Magento\Catalog\Api\ProductRepositoryInterface"> <plugin name="remove_images_from_gallery_after_removing_product" type="Magento\Catalog\Plugin\RemoveImagesFromGalleryAfterRemovingProduct"/> <plugin name="configurableProductSaveOptions" sortOrder="10" type="Magento\ConfigurableProduct\Model\Plugin\ProductRepositorySave"/></type><type name="Magento\Catalog\Observer\ImageResizeAfterProductSave"> <arguments> <argument name="imageResizeScheduler" xsi:type="object">Magento\MediaStorage\Service\ImageResizeScheduler\Proxy</argument> </arguments> </type><type name="Magento\Eav\Model\ReservedAttributeChecker"> <arguments> <argument name="validators" xsi:type="array"> <item name="catalog_product" xsi:type="array"> <item name="product_reserved_attribute_codes" xsi:type="object">\Magento\Catalog\Model\Product\ReservedAttributeCheckerAdapter</item> </item> </argument> </arguments> </type><type name="Magento\CatalogImportExport\Model\Export\RowCustomizer\Composite"> <arguments> <argument name="customizers" xsi:type="array"> <item name="giftcardProduct" xsi:type="string">Magento\GiftCardImportExport\Model\Export\RowCustomizer</item> <item name="bundleProduct" xsi:type="string">Magento\BundleImportExport\Model\Export\RowCustomizer</item><item name="configurableProduct" xsi:type="string">Magento\ConfigurableImportExport\Model\Export\RowCustomizer</item><item name="downloadableProduct" xsi:type="string">Magento\DownloadableImportExport\Model\Export\RowCustomizer</item><item name="groupedProduct" xsi:type="string">Magento\GroupedImportExport\Model\Export\RowCustomizer</item></argument> </arguments> </type><type name="Magento\Widget\Model\Config\Reader"> <arguments> <argument name="fileName" xsi:type="string">widget.xml</argument> <argument name="schemaLocator" xsi:type="object">Magento\Widget\Model\Config\SchemaLocator</argument> <argument name="fileResolver" xsi:type="object">Magento\Widget\Model\Config\FileResolver</argument> </arguments> </type><type name="Magento\Widget\Model\Config\Data"> <arguments> <argument name="reader" xsi:type="object">Magento\Widget\Model\Config\Reader\Proxy</argument> <argument name="cacheId" xsi:type="string">widget_config</argument> </arguments> </type><type name="Magento\Widget\Model\ResourceModel\Layout\Update"> <arguments> <argument name="cache" xsi:type="object">Magento\Framework\App\Cache\Type\Layout</argument> </arguments> </type><type name="Magento\Cms\Model\Template\FilterProvider"> <arguments> <argument name="pageFilter" xsi:type="string">Magento\Widget\Model\Template\Filter</argument> <argument name="blockFilter" xsi:type="string">Magento\Widget\Model\Template\Filter</argument> </arguments> </type><type name="Magento\Framework\View\Model\Layout\Merge"> <plugin name="widget-layout-update-plugin" type="Magento\Widget\Model\ResourceModel\Layout\Plugin" sortOrder="10"/> </type><virtualType name="WidgetValidationState" type="\Magento\Framework\Config\ValidationState\Configurable"> <arguments> <argument name="required" xsi:type="boolean">true</argument> </arguments> </virtualType><virtualType name="WidgetXmlValidator" type="\Magento\Framework\View\Model\Layout\Update\Validator"> <arguments> <argument name="validationState" xsi:type="object">WidgetValidationState</argument> </arguments> </virtualType><virtualType name="WidgetXmlValidatorFactory" type="Magento\Framework\View\Model\Layout\Update\ValidatorFactory"> <arguments> <argument name="instanceName" xsi:type="string">WidgetXmlValidator</argument> </arguments> </virtualType><type name="Magento\Widget\Model\Widget\Instance"> <arguments> <argument name="xmlValidatorFactory" xsi:type="object">WidgetXmlValidatorFactory</argument> </arguments> </type><preference for="Magento\ImportExport\Model\Import\ConfigInterface" type="Magento\ImportExport\Model\Import\Config"/><preference for="Magento\ImportExport\Model\Export\ConfigInterface" type="Magento\ImportExport\Model\Export\Config"/><preference for="Magento\ImportExport\Model\Import\ErrorProcessing\ProcessingErrorAggregatorInterface" type="Magento\ImportExport\Model\Import\ErrorProcessing\ProcessingErrorAggregator"/><preference for="Magento\ImportExport\Model\Report\ReportProcessorInterface" type="Magento\ImportExport\Model\Report\Csv"/><preference for="Magento\ImportExport\Api\Data\ExportInfoInterface" type="Magento\ImportExport\Model\Export\Entity\ExportInfo"/><preference for="Magento\ImportExport\Api\Data\LocalizedExportInfoInterface" type="Magento\ImportExport\Model\Export\Entity\ExportInfo"/><preference for="Magento\ImportExport\Api\ExportManagementInterface" type="Magento\ImportExport\Model\Export\ExportManagement"/><type name="Magento\ImportExport\Model\Import\SampleFileProvider"> <arguments> <argument name="samples" xsi:type="array"> <item name="advanced_pricing" xsi:type="string">Magento_ImportExport</item> <item name="catalog_product" xsi:type="string">Magento_ImportExport</item> <item name="customer" xsi:type="string">Magento_ImportExport</item> <item name="customer_address" xsi:type="string">Magento_ImportExport</item> <item name="customer_composite" xsi:type="string">Magento_ImportExport</item> <item name="customer_finance" xsi:type="string">Magento_ImportExport</item> <item name="stock_sources" xsi:type="string">Magento_InventoryImportExport</item></argument> </arguments> </type><type name="Magento\ImportExport\Model\LocalizedFileName"> <arguments> <argument name="dateFormats" xsi:type="array"> <item name="Ymd_His" xsi:type="string">Ymd_His</item> <item name="Y-m-d_H-i-s" xsi:type="string">Y-m-d_H-i-s</item></argument> </arguments> </type><preference for="Magento\AdminAdobeIms\Api\Data\ImsWebapiSearchResultsInterface" type="Magento\AdminAdobeIms\Model\ImsWebapiSearchResults"/><preference for="Magento\AdminAdobeIms\Api\ImsWebapiRepositoryInterface" type="Magento\AdminAdobeIms\Model\ImsWebapiRepository"/><preference for="Magento\AdminAdobeIms\Api\Data\ImsWebapiInterface" type="Magento\AdminAdobeIms\Model\ImsWebapi"/><type name="Magento\User\Controller\Adminhtml\Auth\Forgotpassword"> <plugin name="admin_forgot_password_plugin" type="Magento\AdminAdobeIms\Plugin\AdminForgotPasswordPlugin" sortOrder="1"/> </type><type name="Magento\AdminAdobeIms\Service\ImsCommandValidationService"> <arguments> <argument name="organizationIdRegex" xsi:type="string"><![CDATA[/^([A-Z0-9]{24})(@AdobeOrg)?$/i]]></argument> <argument name="clientIdRegex" xsi:type="string"><![CDATA[/[^a-z_\-0-9]/i]]></argument> <argument name="clientSecretRegex" xsi:type="string"><![CDATA[/[^a-z_\-0-9]/i]]></argument> <argument name="twoFactorAuthRegex" xsi:type="string"><![CDATA[/^y/i]]></argument> </arguments> </type><type name="Magento\Captcha\Observer\CheckUserLoginBackendObserver"> <plugin name="captcha_check_user_login_backend_observer_plugin" type="Magento\AdminAdobeIms\Plugin\CheckUserLoginBackendObserverPlugin"/> </type><type name="Magento\Captcha\Observer\ResetAttemptForBackendObserver"> <plugin name="captcha_reset_attempt_for_backend_observer_plugin" type="Magento\AdminAdobeIms\Plugin\ResetAttemptForBackendObserverPlugin"/> </type><virtualType name="Magento\AdminAdobeIms\Logger\Handler" type="Magento\Framework\Logger\Handler\Base"> <arguments> <argument name="fileName" xsi:type="string">/var/log/admin_adobe_ims.log</argument> </arguments> </virtualType><type name="Magento\AdminAdobeIms\Logger\AdminAdobeImsLogger"> <arguments> <argument name="enabled" xsi:type="string">1</argument> <argument name="name" xsi:type="string">admin_adobe_ims_logger</argument> <argument name="handlers" xsi:type="array"> <item name="system" xsi:type="object">Magento\AdminAdobeIms\Logger\Handler</item> </argument> </arguments> </type><type name="Magento\Backend\Model\Auth"> <plugin name="disable_admin_login_auth" type="Magento\AdminAdobeIms\Plugin\DisableAdminLoginAuthPlugin"/> <plugin name="login_as_customer_admin_logout" type="Magento\LoginAsCustomer\Plugin\AdminLogoutPlugin"/></type><preference for="Magento\AdminAdobeIms\Api\TokenReaderInterface" type="Magento\AdminAdobeIms\Model\TokenReader"/><type name="Magento\Integration\Model\AdminTokenService"> <plugin name="admin_adobe_ims_admin_token_plugin" type="Magento\AdminAdobeIms\Plugin\AdminTokenPlugin"/> </type><type name="Magento\Framework\Backup\Db\BackupFactory"> <arguments> <argument name="backupInstanceName" xsi:type="string">Magento\Backup\Model\Backup</argument> <argument name="backupDbInstanceName" xsi:type="string">Magento\Backup\Model\Db</argument> </arguments> </type><type name="Magento\Backup\Model\ResourceModel\Helper"> <arguments> <argument name="modulePrefix" xsi:type="string">backup</argument> </arguments> </type><type name="Magento\CatalogRule\Model\ResourceModel\Rule"> <arguments> <argument name="eventManager" xsi:type="object">Magento\Framework\Event\Manager\Proxy</argument> </arguments> </type><type name="Magento\CatalogRule\Model\ResourceModel\Rule\Collection" shared="false"/><type name="Magento\Catalog\Model\Product\PriceModifier\Composite"> <arguments> <argument name="modifiers" xsi:type="array"> <item name="catalog_rule" xsi:type="string">Magento\CatalogRule\Model\Product\PriceModifier</item> </argument> </arguments> </type><preference for="Magento\CatalogRule\Api\Data\RuleInterface" type="Magento\CatalogRule\Model\Rule"/><preference for="Magento\CatalogRule\Api\CatalogRuleRepositoryInterface" type="Magento\CatalogRule\Model\CatalogRuleRepository"/><virtualType name="catalogRuleSearchResult" type="Magento\Framework\View\Element\UiComponent\DataProvider\SearchResult"> <arguments> <argument name="mainTable" xsi:type="string">catalogrule</argument> <argument name="resourceModel" xsi:type="string">\Magento\CatalogRule\Model\ResourceModel\Rule</argument> </arguments> </virtualType><type name="Magento\CatalogRule\Model\Rule\Condition\Combine"> <arguments> <argument name="data" xsi:type="array"> <item name="form_name" xsi:type="string">catalog_rule_form</item> </argument> </arguments> </type><type name="Magento\CatalogRule\Model\Rule\Condition\Product"> <arguments> <argument name="data" xsi:type="array"> <item name="form_name" xsi:type="string">catalog_rule_form</item> </argument> </arguments> </type><preference for="Magento\CatalogRule\Api\Data\ConditionInterface" type="Magento\CatalogRule\Model\Data\Condition"/><virtualType name="Magento\CatalogRule\Model\ResourceModel\Rule\AssociatedEntityMap" type="Magento\Framework\DataObject"> <arguments> <argument name="data" xsi:type="array"> <item name="website" xsi:type="array"> <item name="associations_table" xsi:type="string">catalogrule_website</item> <item name="rule_id_field" xsi:type="string">row_id</item> <item name="entity_id_field" xsi:type="string">website_id</item> </item> <item name="customer_group" xsi:type="array"> <item name="associations_table" xsi:type="string">catalogrule_customer_group</item> <item name="rule_id_field" xsi:type="string">row_id</item> <item name="entity_id_field" xsi:type="string">customer_group_id</item> </item> </argument> </arguments> </virtualType><preference for="Magento\CatalogRule\Model\Indexer\IndexerTableSwapperInterface" type="Magento\CatalogRule\Model\Indexer\IndexerTableSwapper"/><type name="Magento\Catalog\Model\ResourceModel\Product\Indexer\Price\PriceInterface"> <arguments> <argument name="priceModifiers" xsi:type="array"> <item name="catalogRulePriceModifier" xsi:type="object">Magento\CatalogRule\Model\Indexer\ProductPriceIndexModifier</item> <item name="inventoryProductPriceIndexFilter" xsi:type="object">Magento\CatalogInventory\Model\Indexer\ProductPriceIndexFilter</item></argument> </arguments> </type><virtualType name="CatalogRuleCustomConditionProvider" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\ConditionProcessor\CustomConditionProvider"> <arguments> <argument name="customConditionProcessors" xsi:type="array"> <item name="category_ids" xsi:type="object">Magento\Catalog\Model\Api\SearchCriteria\CollectionProcessor\ConditionProcessor\ProductCategoryCondition</item> </argument> </arguments> </virtualType><virtualType name="CatalogRuleAdvancedFilterProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\AdvancedFilterProcessor"> <arguments> <argument name="defaultConditionProcessor" xsi:type="object">Magento\Catalog\Model\Api\SearchCriteria\CollectionProcessor\ConditionProcessor\DefaultCondition</argument> <argument name="customConditionProvider" xsi:type="object">CatalogRuleCustomConditionProvider</argument> </arguments> </virtualType><type name="Magento\CatalogRule\Model\ResourceModel\Product\ConditionsToCollectionApplier"> <arguments> <argument name="searchCriteriaProcessor" xsi:type="object">CatalogRuleAdvancedFilterProcessor</argument> </arguments> </type><type name="Magento\CatalogRule\Model\Rule\Condition\MappableConditionsProcessor"> <arguments> <argument name="customConditionProvider" xsi:type="object">CatalogRuleCustomConditionProvider</argument> </arguments> </type><preference for="Magento\Quote\Api\ShippingMethodManagementInterface" type="Magento\Quote\Model\ShippingMethodManagement"/><preference for="Magento\Quote\Api\ShipmentEstimationInterface" type="Magento\Quote\Model\ShippingMethodManagement"/><preference for="Magento\Quote\Api\Data\ShippingMethodInterface" type="Magento\Quote\Model\Cart\ShippingMethod"/><preference for="Magento\Quote\Api\BillingAddressManagementInterface" type="Magento\Quote\Model\BillingAddressManagement"/><preference for="Magento\Quote\Model\ShippingAddressManagementInterface" type="Magento\Quote\Model\ShippingAddressManagement"/><preference for="Magento\Quote\Model\MaskedQuoteIdToQuoteIdInterface" type="Magento\Quote\Model\MaskedQuoteIdToQuoteId"/><preference for="Magento\Quote\Model\QuoteIdToMaskedQuoteIdInterface" type="Magento\Quote\Model\QuoteIdToMaskedQuoteId"/><preference for="Magento\Quote\Api\Data\AddressInterface" type="Magento\Quote\Model\Quote\Address"/><preference for="Magento\Quote\Api\Data\CartItemInterface" type="Magento\Quote\Model\Quote\Item"/><preference for="Magento\Quote\Api\Data\CartInterface" type="Magento\Quote\Model\Quote"/><preference for="Magento\Quote\Api\CartItemRepositoryInterface" type="Magento\Quote\Model\Quote\Item\Repository"/><preference for="Magento\Quote\Api\CartRepositoryInterface" type="Magento\Quote\Model\QuoteRepository"/><preference for="Magento\Quote\Api\Data\CartSearchResultsInterface" type="Magento\Quote\Model\CartSearchResults"/><preference for="Magento\Quote\Api\PaymentMethodManagementInterface" type="Magento\Quote\Model\PaymentMethodManagement"/><preference for="Magento\Quote\Api\Data\PaymentInterface" type="Magento\Quote\Model\Quote\Payment"/><preference for="Magento\Quote\Api\CouponManagementInterface" type="Magento\Quote\Model\CouponManagement"/><preference for="Magento\Quote\Api\CartManagementInterface" type="Magento\Quote\Model\QuoteManagement"/><preference for="Magento\Quote\Api\CartTotalRepositoryInterface" type="Magento\Quote\Model\Cart\CartTotalRepository"/><preference for="Magento\Quote\Api\ChangeQuoteControlInterface" type="Magento\Quote\Model\ChangeQuoteControl"/><preference for="Magento\Quote\Api\CartTotalManagementInterface" type="Magento\Quote\Model\Cart\CartTotalManagement"/><preference for="Magento\Quote\Api\Data\TotalsInterface" type="Magento\Quote\Model\Cart\Totals"/><preference for="Magento\Quote\Api\Data\TotalSegmentInterface" type="Magento\Quote\Model\Cart\TotalSegment"/><preference for="Magento\Quote\Api\Data\TotalsItemInterface" type="Magento\Quote\Model\Cart\Totals\Item"/><preference for="Magento\Quote\Api\Data\CurrencyInterface" type="Magento\Quote\Model\Cart\Currency"/><preference for="Magento\Quote\Api\GuestCartManagementInterface" type="Magento\Quote\Model\GuestCart\GuestCartManagement"/><preference for="Magento\Quote\Api\GuestCartRepositoryInterface" type="Magento\Quote\Model\GuestCart\GuestCartRepository"/><preference for="Magento\Quote\Api\GuestCartItemRepositoryInterface" type="Magento\Quote\Model\GuestCart\GuestCartItemRepository"/><preference for="Magento\Quote\Api\GuestCouponManagementInterface" type="Magento\Quote\Model\GuestCart\GuestCouponManagement"/><preference for="Magento\Quote\Api\GuestPaymentMethodManagementInterface" type="Magento\Quote\Model\GuestCart\GuestPaymentMethodManagement"/><preference for="Magento\Quote\Api\GuestCartTotalRepositoryInterface" type="Magento\Quote\Model\GuestCart\GuestCartTotalRepository"/><preference for="Magento\Quote\Model\GuestCart\GuestShippingAddressManagementInterface" type="Magento\Quote\Model\GuestCart\GuestShippingAddressManagement"/><preference for="Magento\Quote\Api\GuestShippingMethodManagementInterface" type="Magento\Quote\Model\GuestCart\GuestShippingMethodManagement"/><preference for="Magento\Quote\Api\GuestShipmentEstimationInterface" type="Magento\Quote\Model\GuestCart\GuestShippingMethodManagement"/><preference for="Magento\Quote\Api\GuestBillingAddressManagementInterface" type="Magento\Quote\Model\GuestCart\GuestBillingAddressManagement"/><preference for="Magento\Quote\Api\GuestCartTotalManagementInterface" type="Magento\Quote\Model\GuestCart\GuestCartTotalManagement"/><preference for="Magento\Quote\Api\Data\EstimateAddressInterface" type="Magento\Quote\Model\EstimateAddress"/><preference for="Magento\Quote\Api\Data\ProductOptionInterface" type="Magento\Quote\Model\Quote\ProductOption"/><preference for="Magento\Quote\Model\ValidationRules\QuoteValidationRuleInterface" type="Magento\Quote\Model\ValidationRules\QuoteValidationComposite\Proxy"/><preference for="Magento\Quote\Model\QuoteMutexInterface" type="Magento\Quote\Model\QuoteMutex"/><preference for="Magento\Quote\Model\Quote\Item\Option\ComparatorInterface" type="Magento\Quote\Model\Quote\Item\Option\Comparator"/><type name="Magento\Quote\Model\QuoteRepository"> <arguments> <argument name="quoteCollection" xsi:type="object">Magento\Quote\Model\ResourceModel\Quote\Collection\Proxy</argument> </arguments> <plugin name="multishipping_quote_repository" type="Magento\Multishipping\Plugin\MultishippingQuoteRepository"/></type><type name="Magento\Quote\Model\Quote\Address"> <arguments> <argument name="addressConfig" xsi:type="object">Magento\Customer\Model\Address\Config\Proxy</argument> </arguments> <plugin name="convertQuoteAddressToCustomerAddress" type="Magento\CustomerCustomAttributes\Model\Plugin\ConvertQuoteAddressToCustomerAddress"/><plugin name="manage_assignment_of_pickup_location_to_quote_address" type="Magento\InventoryInStorePickupQuote\Plugin\Quote\Address\ManageAssignmentOfPickupLocationToQuoteAddress" sortOrder="20"/></type><virtualType name="QuoteAddressRelationsComposite" type="Magento\Framework\Model\ResourceModel\Db\VersionControl\RelationComposite"> <arguments> <argument name="relationProcessors" xsi:type="array"> <item name="default" xsi:type="object">Magento\Quote\Model\Quote\Address\Relation</item> </argument> </arguments> </virtualType><type name="Magento\Quote\Model\ResourceModel\Quote\Address"> <arguments> <argument name="entityRelationComposite" xsi:type="object">QuoteAddressRelationsComposite</argument> <argument name="connectionName" xsi:type="string">checkout</argument></arguments> <plugin name="load_pickup_location_for_quote_address" type="Magento\InventoryInStorePickupQuote\Plugin\Quote\Address\LoadPickupLocationForQuoteAddress" sortOrder="30"/></type><virtualType name="QuoteRelationsComposite" type="Magento\Framework\Model\ResourceModel\Db\VersionControl\RelationComposite"> <arguments> <argument name="relationProcessors" xsi:type="array"> <item name="default" xsi:type="object">Magento\Quote\Model\Quote\Relation</item> <item name="custom_attribute" xsi:type="object">Magento\CustomerCustomAttributes\Model\Quote\Relation</item></argument> </arguments> </virtualType><type name="Magento\Quote\Model\ResourceModel\Quote"> <arguments> <argument name="entityRelationComposite" xsi:type="object">QuoteRelationsComposite</argument> <argument name="connectionName" xsi:type="string">checkout</argument></arguments> <plugin name="substract_product_from_quotes" type="Magento\CatalogStaging\Plugin\Quote\SubstractProductFromQuotes" sortOrder="800"/></type><preference for="Magento\Quote\Api\Data\AddressAdditionalDataInterface" type="Magento\Quote\Model\AddressAdditionalData"/><preference for="Magento\Quote\Api\Data\TotalsAdditionalDataInterface" type="Magento\Quote\Model\Cart\TotalsAdditionalData"/><preference for="Magento\Quote\Model\Quote\Address\CustomAttributeListInterface" type="Magento\CustomerCustomAttributes\Model\Quote\Address\CustomAttributeList"/><preference for="Magento\Quote\Model\Quote\Address\FreeShippingInterface" type="Magento\OfflineShipping\Model\Quote\Address\FreeShipping"/><preference for="Magento\Quote\Model\GuestCart\GuestShippingMethodManagementInterface" type="Magento\Quote\Model\GuestCart\GuestShippingMethodManagement"/><preference for="Magento\Quote\Model\ShippingMethodManagementInterface" type="Magento\Quote\Model\ShippingMethodManagement"/><preference for="Magento\Quote\Api\Data\ShippingInterface" type="Magento\Quote\Model\Shipping"/><preference for="Magento\Quote\Api\Data\ShippingAssignmentInterface" type="Magento\Quote\Model\ShippingAssignment"/><preference for="Magento\Quote\Model\Product\QuoteItemsCleanerInterface" type="Magento\ScalableCheckout\Model\Product\QuoteItemsCleaner"/><type name="Magento\Catalog\Model\ResourceModel\Product"> <plugin name="clean_quote_items_after_product_delete" type="Magento\Quote\Model\Product\Plugin\RemoveQuoteItems"/> <plugin name="update_quote_items_after_product_save" type="Magento\Quote\Model\Product\Plugin\UpdateQuoteItems"/> <plugin name="catalogsearchFulltextProduct" type="Magento\CatalogSearch\Model\Indexer\Fulltext\Plugin\Product"/><plugin name="update_quote_items_after_giftcard_product_save" type="Magento\GiftCard\Plugin\Catalog\Model\ResourceModel\Product"/><plugin name="delete_source_items" type="Magento\InventoryCatalog\Plugin\Catalog\Model\ResourceModel\Product\DeleteSourceItemsPlugin"/><plugin name="process_source_items_after_product_save" type="Magento\InventoryCatalog\Plugin\Catalog\Model\ResourceModel\Product\ProcessSourceItemsPlugin"/><plugin name="process_reservations_after_product_save" type="Magento\InventorySales\Plugin\Catalog\Model\ResourceModel\Product\UpdateReservationsPlugin"/><plugin name="delete_reservations" type="Magento\InventorySales\Plugin\Catalog\Model\ResourceModel\Product\DeleteReservationsPlugin"/><arguments> <argument name="uniqueValidator" xsi:type="object">Magento\CatalogStaging\Model\Product\Attribute\UniqueValidator</argument> </arguments></type><type name="Magento\Catalog\Api\TierPriceStorageInterface"> <plugin name="update_quote_items_after_tier_prices_update" type="Magento\Quote\Model\Product\Plugin\UpdateQuote"/> </type><type name="Magento\Catalog\Model\Product\Action"> <plugin name="quoteProductMassChange" type="Magento\Quote\Model\Product\Plugin\MarkQuotesRecollectMassDisabled"/> <plugin name="ReindexUpdatedProducts" type="Magento\CatalogInventory\Model\Plugin\ReindexUpdatedProducts"/><plugin name="catalogsearchFulltextMassAction" type="Magento\CatalogSearch\Model\Indexer\Fulltext\Plugin\Product\Action"/><plugin name="update_url_rewrites_after_websites_update_plugin" type="Magento\CatalogUrlRewrite\Plugin\Catalog\Model\Product\UpdateProductWebsiteUrlRewrites"/><plugin name="catalogPermissionsProductMassChange" type="Magento\CatalogPermissions\Model\Indexer\Plugin\Product\Action"/><plugin name="stagingMassAttributesUpdate" type="Magento\CatalogStaging\Model\Plugin\Model\Product\ActionPlugin" sortOrder="1"/></type><type name="Magento\Quote\Model\ValidationRules\QuoteValidationComposite"> <arguments> <argument name="validationRules" xsi:type="array"> <item name="AllowedCountryValidationRule" xsi:type="object">Magento\Quote\Model\ValidationRules\AllowedCountryValidationRule</item> <item name="ShippingAddressValidationRule" xsi:type="object">Magento\Quote\Model\ValidationRules\ShippingAddressValidationRule</item> <item name="ShippingMethodValidationRule" xsi:type="object">Magento\Quote\Model\ValidationRules\ShippingMethodValidationRule</item> <item name="BillingAddressValidationRule" xsi:type="object">Magento\Quote\Model\ValidationRules\BillingAddressValidationRule</item> <item name="PaymentMethodValidationRule" xsi:type="object">Magento\Quote\Model\ValidationRules\PaymentMethodValidationRule</item> <item name="MinimumAmountValidationRule" xsi:type="object">Magento\Quote\Model\ValidationRules\MinimumAmountValidationRule</item> <item name="InStorePickupQuoteValidationRule" xsi:type="object">Magento\InventoryInStorePickupQuote\Model\Quote\ValidationRule\InStorePickupQuoteValidationRule</item></argument> </arguments> </type><type name="Magento\Quote\Model\ValidationRules\AllowedCountryValidationRule"> <arguments> <argument name="generalMessage" xsi:type="string" translatable="true">Some addresses can't be used due to the configurations for specific countries.</argument> </arguments> </type><type name="Magento\Quote\Model\ValidationRules\ShippingAddressValidationRule"> <arguments> <argument name="generalMessage" xsi:type="string" translatable="true">Please check the shipping address information.</argument> </arguments> </type><type name="Magento\Quote\Model\ValidationRules\ShippingMethodValidationRule"> <arguments> <argument name="generalMessage" xsi:type="string" translatable="true">The shipping method is missing. Select the shipping method and try again.</argument> </arguments> </type><type name="Magento\Quote\Model\ValidationRules\BillingAddressValidationRule"> <arguments> <argument name="generalMessage" xsi:type="string" translatable="true">Please check the billing address information.</argument> </arguments> </type><type name="Magento\Quote\Model\ValidationRules\PaymentMethodValidationRule"> <arguments> <argument name="generalMessage" xsi:type="string" translatable="true">Enter a valid payment method and try again.</argument> </arguments> </type><preference for="Magento\Payment\Api\Data\PaymentMethodInterface" type="Magento\Payment\Model\PaymentMethod"/><preference for="Magento\Payment\Api\Data\PaymentAdditionalInfoInterface" type="Magento\Payment\Model\PaymentAdditionalInfo"/><preference for="Magento\Payment\Api\PaymentMethodListInterface" type="Magento\Payment\Model\PaymentMethodList"/><preference for="Magento\Payment\Gateway\Validator\ResultInterface" type="Magento\Payment\Gateway\Validator\Result"/><preference for="Magento\Payment\Gateway\ConfigFactoryInterface" type="Magento\Payment\Gateway\Config\ConfigFactory"/><preference for="Magento\Payment\Gateway\Command\CommandManagerPoolInterface" type="Magento\Payment\Gateway\Command\CommandManagerPool"/><preference for="Magento\Payment\Gateway\Data\PaymentDataObjectFactoryInterface" type="Magento\Payment\Gateway\Data\PaymentDataObjectFactory"/><preference for="Magento\Payment\Gateway\ErrorMapper\ErrorMessageMapperInterface" type="Magento\Payment\Gateway\ErrorMapper\ErrorMessageMapper"/><type name="Magento\Payment\Model\Config\Reader"> <arguments> <argument name="fileName" xsi:type="string">payment.xml</argument> <argument name="converter" xsi:type="object">Magento\Payment\Model\Config\Converter</argument> <argument name="schemaLocator" xsi:type="object">Magento\Payment\Model\Config\SchemaLocator</argument> </arguments> </type><virtualType name="Magento\Payment\Model\Config\Data" type="Magento\Framework\Config\Data"> <arguments> <argument name="reader" xsi:type="object">Magento\Payment\Model\Config\Reader\Proxy</argument> <argument name="cacheId" xsi:type="string">payment_config</argument> </arguments> </virtualType><type name="Magento\Payment\Model\Config"> <arguments> <argument name="dataStorage" xsi:type="object">Magento\Payment\Model\Config\Data</argument> </arguments> </type><type name="Magento\Payment\Block\ConfigurableInfo"> <arguments> <argument name="config" xsi:type="object">Magento\Payment\Gateway\Config\Config</argument> </arguments> </type><virtualType name="Magento\Payment\Gateway\ErrorMapper\VirtualSchemaLocator" type="Magento\Framework\Config\GenericSchemaLocator"> <arguments> <argument name="moduleName" xsi:type="string">Magento_Payment</argument> <argument name="schema" xsi:type="string">error_mapping.xsd</argument> </arguments> </virtualType><virtualType name="Magento\Payment\Gateway\ErrorMapper\VirtualConfigReader" type="Magento\Framework\Config\Reader\Filesystem"> <arguments> <argument name="converter" xsi:type="object">Magento\Payment\Gateway\ErrorMapper\XmlToArrayConverter</argument> <argument name="schemaLocator" xsi:type="object">Magento\Payment\Gateway\ErrorMapper\VirtualSchemaLocator</argument> <argument name="fileName" xsi:type="string">error_mapping.xml</argument> </arguments> </virtualType><type name="Magento\Payment\Gateway\ErrorMapper\MappingData"> <arguments> <argument name="reader" xsi:type="object">Magento\Payment\Gateway\ErrorMapper\VirtualConfigReader</argument> <argument name="cacheId" xsi:type="string">payment_error_mapper</argument> </arguments> </type><type name="Magento\Payment\Gateway\ErrorMapper\ErrorMessageMapper"> <arguments> <argument name="messageMapping" xsi:type="object">Magento\Payment\Gateway\ErrorMapper\NullMappingData</argument> </arguments> </type><virtualType name="Magento\Payment\Model\Method\VirtualDebug" type="Magento\Framework\Logger\Handler\Base"> <arguments> <argument name="fileName" xsi:type="string">/var/log/payment.log</argument> </arguments> </virtualType><virtualType name="Magento\Payment\Model\Method\VirtualLogger" type="Magento\Framework\Logger\Monolog"> <arguments> <argument name="handlers" xsi:type="array"> <item name="debug" xsi:type="object">Magento\Payment\Model\Method\VirtualDebug</item> </argument> </arguments> </virtualType><type name="Magento\Payment\Model\Method\Logger"> <arguments> <argument name="logger" xsi:type="object">Magento\Payment\Model\Method\VirtualLogger</argument> </arguments> </type><preference for="Magento\Sales\Api\Data\CreditmemoCommentInterface" type="Magento\Sales\Model\Order\Creditmemo\Comment"/><preference for="Magento\Sales\Api\Data\CreditmemoCommentSearchResultInterface" type="Magento\Sales\Model\ResourceModel\Order\Creditmemo\Comment\Collection"/><preference for="Magento\Sales\Api\Data\CreditmemoInterface" type="Magento\Sales\Model\Order\Creditmemo"/><preference for="Magento\Sales\Api\Data\CreditmemoItemInterface" type="Magento\Sales\Model\Order\Creditmemo\Item"/><preference for="Magento\Sales\Api\Data\CreditmemoItemSearchResultInterface" type="Magento\Sales\Model\ResourceModel\Order\Creditmemo\Item\Collection"/><preference for="Magento\Sales\Api\Data\CreditmemoSearchResultInterface" type="Magento\Sales\Model\ResourceModel\Order\Creditmemo\Collection"/><preference for="Magento\Sales\Api\Data\InvoiceCommentInterface" type="Magento\Sales\Model\Order\Invoice\Comment"/><preference for="Magento\Sales\Api\Data\InvoiceCommentSearchResultInterface" type="Magento\Sales\Model\ResourceModel\Order\Invoice\Comment\Collection"/><preference for="Magento\Sales\Api\Data\InvoiceInterface" type="Magento\Sales\Model\Order\Invoice"/><preference for="Magento\Sales\Api\Data\InvoiceItemInterface" type="Magento\Sales\Model\Order\Invoice\Item"/><preference for="Magento\Sales\Api\Data\InvoiceItemSearchResultInterface" type="Magento\Sales\Model\ResourceModel\Order\Invoice\Item\Collection"/><preference for="Magento\Sales\Api\Data\InvoiceSearchResultInterface" type="Magento\Sales\Model\ResourceModel\Order\Invoice\Collection"/><preference for="Magento\Sales\Api\Data\OrderAddressInterface" type="Magento\Sales\Model\Order\Address"/><preference for="Magento\Sales\Api\Data\OrderAddressSearchResultInterface" type="Magento\Sales\Model\ResourceModel\Order\Address\Collection"/><preference for="Magento\Sales\Api\Data\OrderInterface" type="Magento\Sales\Model\Order"/><preference for="Magento\Sales\Api\Data\OrderItemInterface" type="Magento\Sales\Model\Order\Item"/><preference for="Magento\Sales\Api\Data\OrderItemSearchResultInterface" type="Magento\Sales\Model\ResourceModel\Order\Item\Collection"/><preference for="Magento\Sales\Api\Data\OrderPaymentInterface" type="Magento\Sales\Model\Order\Payment"/><preference for="Magento\Sales\Api\Data\OrderPaymentSearchResultInterface" type="Magento\Sales\Model\ResourceModel\Order\Payment\Collection"/><preference for="Magento\Sales\Api\Data\OrderSearchResultInterface" type="Magento\Sales\Model\ResourceModel\Order\Collection"/><preference for="Magento\Sales\Api\Data\OrderStatusHistoryInterface" type="Magento\Sales\Model\Order\Status\History"/><preference for="Magento\Sales\Api\Data\OrderStatusHistorySearchResultInterface" type="Magento\Sales\Model\ResourceModel\Order\Status\History\Collection"/><preference for="Magento\Sales\Api\Data\ShipmentCommentInterface" type="Magento\Sales\Model\Order\Shipment\Comment"/><preference for="Magento\Sales\Api\Data\ShipmentCommentSearchResultInterface" type="Magento\Sales\Model\ResourceModel\Order\Shipment\Comment\Collection"/><preference for="Magento\Sales\Api\Data\ShipmentCreationArgumentsInterface" type="Magento\Sales\Model\Order\Shipment\CreationArguments"/><preference for="Magento\Sales\Api\Data\ShipmentInterface" type="Magento\Sales\Model\Order\Shipment"/><preference for="Magento\Sales\Api\Data\ShipmentItemCreationInterface" type="Magento\Sales\Model\Order\Shipment\ItemCreation"/><preference for="Magento\Sales\Api\Data\ShipmentItemInterface" type="Magento\Sales\Model\Order\Shipment\Item"/><preference for="Magento\Sales\Api\Data\ShipmentItemSearchResultInterface" type="Magento\Sales\Model\ResourceModel\Order\Shipment\Item\Collection"/><preference for="Magento\Sales\Api\Data\ShipmentSearchResultInterface" type="Magento\Sales\Model\ResourceModel\Order\Shipment\Collection"/><preference for="Magento\Sales\Api\Data\ShipmentTrackInterface" type="Magento\Sales\Model\Order\Shipment\Track"/><preference for="Magento\Sales\Api\Data\ShipmentTrackSearchResultInterface" type="Magento\Sales\Model\ResourceModel\Order\Shipment\Track\Collection"/><preference for="Magento\Sales\Api\Data\ShippingInterface" type="Magento\Sales\Model\Order\Shipping"/><preference for="Magento\Sales\Api\Data\ShippingAssignmentInterface" type="Magento\Sales\Model\Order\ShippingAssignment"/><preference for="Magento\Sales\Api\Data\TransactionInterface" type="Magento\Sales\Model\Order\Payment\Transaction"/><preference for="Magento\Sales\Api\Data\TransactionSearchResultInterface" type="Magento\Sales\Model\ResourceModel\Order\Payment\Transaction\Collection"/><preference for="Magento\Sales\Api\Data\TotalInterface" type="Magento\Sales\Model\Order\ShippingTotal"/><preference for="Magento\Sales\Api\CreditmemoCommentRepositoryInterface" type="Magento\Sales\Model\Order\Creditmemo\CommentRepository"/><preference for="Magento\Sales\Api\CreditmemoItemRepositoryInterface" type="Magento\Sales\Model\Order\Creditmemo\ItemRepository"/><preference for="Magento\Sales\Api\CreditmemoRepositoryInterface" type="Magento\Sales\Model\Order\CreditmemoRepository"/><preference for="Magento\Sales\Api\CreditmemoManagementInterface" type="Magento\Sales\Model\Service\CreditmemoService"/><preference for="Magento\Sales\Api\Data\CreditmemoCreationArgumentsInterface" type="Magento\Sales\Model\Order\Creditmemo\CreationArguments"/><preference for="Magento\Sales\Api\Data\CreditmemoItemCreationInterface" type="Magento\Sales\Model\Order\Creditmemo\ItemCreation"/><preference for="Magento\Sales\Api\InvoiceCommentRepositoryInterface" type="Magento\Sales\Model\Order\Invoice\CommentRepository"/><preference for="Magento\Sales\Api\InvoiceItemRepositoryInterface" type="Magento\Sales\Model\Order\Invoice\ItemRepository"/><preference for="Magento\Sales\Api\InvoiceRepositoryInterface" type="Magento\Sales\Model\Order\InvoiceRepository"/><preference for="Magento\Sales\Api\InvoiceManagementInterface" type="Magento\Sales\Model\Service\InvoiceService"/><preference for="Magento\Sales\Api\Data\InvoiceCreationArgumentsInterface" type="Magento\Sales\Model\Order\Invoice\CreationArguments"/><preference for="Magento\Sales\Api\Data\InvoiceItemCreationInterface" type="Magento\Sales\Model\Order\Invoice\ItemCreation"/><preference for="Magento\Sales\Api\Data\InvoiceCommentCreationInterface" type="Magento\Sales\Model\Order\Invoice\CommentCreation"/><preference for="Magento\Sales\Api\Data\ShipmentCommentCreationInterface" type="Magento\Sales\Model\Order\Shipment\CommentCreation"/><preference for="Magento\Sales\Api\Data\CreditmemoCommentCreationInterface" type="Magento\Sales\Model\Order\Creditmemo\CommentCreation"/><preference for="Magento\Sales\Api\OrderAddressRepositoryInterface" type="Magento\Sales\Model\Order\AddressRepository"/><preference for="Magento\Sales\Api\OrderCustomerManagementInterface" type="Magento\Sales\Model\Order\CustomerManagement"/><preference for="Magento\Sales\Api\OrderItemRepositoryInterface" type="Magento\Sales\Model\Order\ItemRepository"/><preference for="Magento\Sales\Api\OrderPaymentRepositoryInterface" type="Magento\Sales\Model\Order\Payment\Repository"/><preference for="Magento\Sales\Api\OrderRepositoryInterface" type="Magento\Sales\Model\OrderRepository"/><preference for="Magento\Sales\Api\OrderManagementInterface" type="Magento\Sales\Model\Service\OrderService"/><preference for="Magento\Sales\Api\OrderStatusHistoryRepositoryInterface" type="Magento\Sales\Model\Order\Status\HistoryRepository"/><preference for="Magento\Sales\Api\PaymentFailuresInterface" type="Magento\Sales\Model\Service\PaymentFailuresService"/><preference for="Magento\Sales\Api\ShipmentCommentRepositoryInterface" type="Magento\Sales\Model\Order\Shipment\CommentRepository"/><preference for="Magento\Sales\Api\ShipmentItemRepositoryInterface" type="Magento\Sales\Model\Order\Shipment\ItemRepository"/><preference for="Magento\Sales\Api\ShipmentRepositoryInterface" type="Magento\Sales\Model\Order\ShipmentRepository"/><preference for="Magento\Sales\Api\ShipmentManagementInterface" type="Magento\Sales\Model\Service\ShipmentService"/><preference for="Magento\Sales\Api\ShipmentTrackRepositoryInterface" type="Magento\Sales\Model\Order\Shipment\TrackRepository"/><preference for="Magento\Sales\Api\ShipOrderInterface" type="Magento\Sales\Model\ShipOrder"/><preference for="Magento\Sales\Api\TransactionRepositoryInterface" type="Magento\Sales\Model\Order\Payment\Transaction\Repository"/><preference for="Magento\Sales\Model\Order\Invoice\NotifierInterface" type="Magento\Sales\Model\Order\Invoice\Notifier"/><preference for="Magento\Sales\Model\Order\Shipment\NotifierInterface" type="Magento\Sales\Model\Order\Shipment\Notifier"/><preference for="Magento\Sales\Model\Order\PaymentAdapterInterface" type="Magento\Sales\Model\Order\PaymentAdapter"/><preference for="Magento\Sales\Model\Order\RefundAdapterInterface" type="Magento\Sales\Model\Order\RefundAdapter"/><preference for="Magento\Sales\Model\Order\Payment\Transaction\ManagerInterface" type="Magento\Sales\Model\Order\Payment\Transaction\Manager"/><preference for="Magento\Sales\Model\Order\Payment\Transaction\BuilderInterface" type="Magento\Sales\Model\Order\Payment\Transaction\Builder"/><preference for="Magento\Sales\Model\Order\Shipment\OrderRegistrarInterface" type="Magento\Sales\Model\Order\Shipment\OrderRegistrar"/><preference for="Magento\Sales\Model\Spi\CreditmemoCommentResourceInterface" type="Magento\Sales\Model\ResourceModel\Order\Creditmemo\Comment"/><preference for="Magento\Sales\Model\Spi\CreditmemoItemResourceInterface" type="Magento\Sales\Model\ResourceModel\Order\Creditmemo\Item"/><preference for="Magento\Sales\Model\Spi\CreditmemoResourceInterface" type="Magento\Sales\Model\ResourceModel\Order\Creditmemo"/><preference for="Magento\Sales\Model\Spi\InvoiceCommentResourceInterface" type="Magento\Sales\Model\ResourceModel\Order\Invoice\Comment"/><preference for="Magento\Sales\Model\Spi\InvoiceItemResourceInterface" type="Magento\Sales\Model\ResourceModel\Order\Invoice\Item"/><preference for="Magento\Sales\Model\Spi\InvoiceResourceInterface" type="Magento\Sales\Model\ResourceModel\Order\Invoice"/><preference for="Magento\Sales\Model\Spi\OrderAddressResourceInterface" type="Magento\Sales\Model\ResourceModel\Order\Address"/><preference for="Magento\Sales\Model\Spi\OrderItemResourceInterface" type="Magento\Sales\Model\ResourceModel\Order\Item"/><preference for="Magento\Sales\Model\Spi\OrderPaymentResourceInterface" type="Magento\Sales\Model\ResourceModel\Order\Payment"/><preference for="Magento\Sales\Model\Spi\OrderResourceInterface" type="Magento\Sales\Model\ResourceModel\Order"/><preference for="Magento\Sales\Model\Spi\OrderStatusHistoryResourceInterface" type="Magento\Sales\Model\ResourceModel\Order\Status\History"/><preference for="Magento\Sales\Model\Spi\ShipmentCommentResourceInterface" type="Magento\Sales\Model\ResourceModel\Order\Shipment\Comment"/><preference for="Magento\Sales\Model\Spi\ShipmentItemResourceInterface" type="Magento\Sales\Model\ResourceModel\Order\Shipment\Item"/><preference for="Magento\Sales\Model\Spi\ShipmentResourceInterface" type="Magento\Sales\Model\ResourceModel\Order\Shipment"/><preference for="Magento\Sales\Model\Spi\ShipmentTrackResourceInterface" type="Magento\Sales\Model\ResourceModel\Order\Shipment\Track"/><preference for="Magento\Sales\Model\Spi\TransactionResourceInterface" type="Magento\Sales\Model\ResourceModel\Order\Payment\Transaction"/><preference for="Magento\Sales\Model\ResourceModel\Order\CollectionFactoryInterface" type="Magento\Sales\Model\ResourceModel\Order\CollectionFactory"/><preference for="Magento\Sales\Api\InvoiceOrderInterface" type="Magento\Sales\Model\InvoiceOrder"/><preference for="Magento\Sales\Model\Order\OrderStateResolverInterface" type="Magento\Sales\Model\Order\StateResolver"/><preference for="Magento\Sales\Api\Data\ShipmentTrackCreationInterface" type="Magento\Sales\Model\Order\Shipment\TrackCreation"/><preference for="Magento\Sales\Api\Data\ShipmentPackageInterface" type="Magento\Sales\Model\Order\Shipment\Package"/><preference for="Magento\Sales\Api\Data\ShipmentPackageCreationInterface" type="Magento\Sales\Model\Order\Shipment\PackageCreation"/><preference for="Magento\Sales\Model\Order\OrderValidatorInterface" type="Magento\Sales\Model\Order\OrderValidator"/><preference for="Magento\Sales\Model\Order\Invoice\InvoiceValidatorInterface" type="Magento\Sales\Model\Order\Invoice\InvoiceValidator"/><preference for="Magento\Sales\Model\Order\Shipment\ShipmentValidatorInterface" type="Magento\Sales\Model\Order\Shipment\ShipmentValidator"/><preference for="Magento\Sales\Model\Order\Creditmemo\CreditmemoValidatorInterface" type="Magento\Sales\Model\Order\Creditmemo\CreditmemoValidator"/><preference for="Magento\Sales\Model\Order\Creditmemo\ItemCreationValidatorInterface" type="Magento\Sales\Model\Order\Creditmemo\ItemCreationValidator"/><preference for="Magento\Sales\Model\ValidatorResultInterface" type="Magento\Sales\Model\ValidatorResult"/><preference for="Magento\Sales\Model\Order\Validation\InvoiceOrderInterface" type="Magento\Sales\Model\Order\Validation\InvoiceOrder"/><preference for="Magento\Sales\Model\Order\Validation\RefundInvoiceInterface" type="Magento\Sales\Model\Order\Validation\RefundInvoice"/><preference for="Magento\Sales\Model\Order\Validation\RefundOrderInterface" type="Magento\Sales\Model\Order\Validation\RefundOrder"/><preference for="Magento\Sales\Model\Order\Validation\ShipOrderInterface" type="Magento\Sales\Model\Order\Validation\ShipOrder"/><preference for="Magento\Sales\Model\Order\Creditmemo\NotifierInterface" type="Magento\Sales\Model\Order\Creditmemo\Notifier"/><preference for="Magento\Sales\Api\RefundOrderInterface" type="Magento\Sales\Model\RefundOrder"/><preference for="Magento\Sales\Api\RefundInvoiceInterface" type="Magento\Sales\Model\RefundInvoice"/><preference for="Magento\Sales\Model\ResourceModel\Provider\NotSyncedDataProviderInterface" type="Magento\Sales\Model\ResourceModel\Provider\NotSyncedDataProvider"/><preference for="Magento\Sales\Model\ConfigInterface" type="Magento\Sales\Model\Config"/><preference for="Magento\Sales\Model\Order\Shipment\ShipmentItemsValidatorInterface" type="Magento\Sales\Model\Order\Shipment\ShipmentItemsValidator"/><preference for="Magento\Sales\Model\OrderMutexInterface" type="Magento\Sales\Model\OrderMutex"/><type name="Magento\Sales\Model\ResourceModel\Provider\NotSyncedDataProvider"> <arguments> <argument name="providers" xsi:type="array"> <item name="default" xsi:type="string">Magento\Sales\Model\ResourceModel\Provider\UpdatedIdListProvider</item> <item name="updated_at" xsi:type="string">Magento\Sales\Model\ResourceModel\Provider\UpdatedAtListProvider</item> </argument> </arguments> </type><type name="Magento\Sales\Model\ResourceModel\Report" shared="false"/><type name="Magento\Sales\Model\Order\Pdf\Config\Reader"> <arguments> <argument name="fileName" xsi:type="string">pdf.xml</argument> <argument name="converter" xsi:type="object">Magento\Sales\Model\Order\Pdf\Config\Converter</argument> <argument name="schemaLocator" xsi:type="object">Magento\Sales\Model\Order\Pdf\Config\SchemaLocator</argument> </arguments> </type><virtualType name="pdfConfigDataStorage" type="Magento\Framework\Config\Data"> <arguments> <argument name="reader" xsi:type="object">Magento\Sales\Model\Order\Pdf\Config\Reader</argument> <argument name="cacheId" xsi:type="string">sales_pdf_config</argument> </arguments> </virtualType><type name="Magento\Sales\Model\Order\Pdf\Config"> <arguments> <argument name="dataStorage" xsi:type="object">pdfConfigDataStorage</argument> </arguments> </type><type name="Magento\Payment\Model\Checks\SpecificationFactory"> <arguments> <argument name="mapping" xsi:type="array"> <item name="country" xsi:type="object">Magento\Payment\Model\Checks\CanUseForCountry</item> <item name="currency" xsi:type="object">Magento\Payment\Model\Checks\CanUseForCurrency</item> <item name="checkout" xsi:type="object">Magento\Payment\Model\Checks\CanUseCheckout</item> <item name="internal" xsi:type="object">Magento\Payment\Model\Checks\CanUseInternal</item> <item name="total" xsi:type="object">Magento\Payment\Model\Checks\TotalMinMax</item> <item name="zero_total" xsi:type="object">Magento\Payment\Model\Checks\ZeroTotal</item> </argument> </arguments> </type><type name="Magento\Sales\Model\Config\Data"> <arguments> <argument name="reader" xsi:type="object">Magento\Sales\Model\Config\Reader\Proxy</argument> </arguments> </type><type name="Magento\Sales\Controller\Order\Creditmemo"> <plugin name="authentication" type="Magento\Sales\Controller\Order\Plugin\Authentication"/> <plugin name="redirect_creditmemo" type="Magento\AsyncOrder\Plugin\Controller\Order\CustomerRedirectPlugin"/></type><type name="Magento\Sales\Controller\Order\History"> <plugin name="authentication" type="Magento\Sales\Controller\Order\Plugin\Authentication"/> </type><type name="Magento\Sales\Controller\Order\Invoice"> <plugin name="authentication" type="Magento\Sales\Controller\Order\Plugin\Authentication"/> <plugin name="redirect_invoice" type="Magento\AsyncOrder\Plugin\Controller\Order\CustomerRedirectPlugin"/></type><type name="Magento\Sales\Controller\Order\PrintAction"> <plugin name="authentication" type="Magento\Sales\Controller\Order\Plugin\Authentication"/> <plugin name="redirect_print" type="Magento\AsyncOrder\Plugin\Controller\Order\CustomerRedirectPlugin"/></type><type name="Magento\Sales\Controller\Order\PrintCreditmemo"> <plugin name="authentication" type="Magento\Sales\Controller\Order\Plugin\Authentication"/> <plugin name="redirect_print_creditmemo" type="Magento\AsyncOrder\Plugin\Controller\Order\CustomerRedirectPlugin"/></type><type name="Magento\Sales\Controller\Order\PrintInvoice"> <plugin name="authentication" type="Magento\Sales\Controller\Order\Plugin\Authentication"/> <plugin name="redirect_print_invoice" type="Magento\AsyncOrder\Plugin\Controller\Order\CustomerRedirectPlugin"/></type><type name="Magento\Sales\Controller\Order\PrintShipment"> <plugin name="authentication" type="Magento\Sales\Controller\Order\Plugin\Authentication"/> <plugin name="redirect_print_shipment" type="Magento\AsyncOrder\Plugin\Controller\Order\CustomerRedirectPlugin"/></type><type name="Magento\Sales\Controller\Order\Reorder"> <plugin name="authentication" type="Magento\Sales\Controller\Order\Plugin\Authentication"/> <plugin name="redirect_reorder" type="Magento\AsyncOrder\Plugin\Controller\Order\CustomerRedirectPlugin"/></type><type name="Magento\Sales\Controller\Order\Shipment"> <plugin name="authentication" type="Magento\Sales\Controller\Order\Plugin\Authentication"/> <plugin name="redirect_shipment" type="Magento\AsyncOrder\Plugin\Controller\Order\CustomerRedirectPlugin"/></type><type name="Magento\Sales\Controller\Order\View"> <plugin name="authentication" type="Magento\Sales\Controller\Order\Plugin\Authentication"/> <plugin name="redirect_view_order" type="Magento\AsyncOrder\Plugin\Controller\Order\CustomerRedirectPlugin"/></type><type name="Magento\Sales\Model\EmailSenderHandler"> <arguments> <argument name="modifyStartFromDate" xsi:type="string">-1 day</argument> </arguments> </type><virtualType name="SalesOrderIndexGridSyncRemove" type="Magento\Sales\Observer\GridSyncRemoveObserver"> <arguments> <argument name="entityGrid" xsi:type="object">Magento\Sales\Model\ResourceModel\Order\Grid</argument> </arguments> </virtualType><virtualType name="SalesInvoiceIndexGridSyncRemove" type="Magento\Sales\Observer\GridSyncRemoveObserver"> <arguments> <argument name="entityGrid" xsi:type="object">Magento\Sales\Model\ResourceModel\Order\Invoice\Grid</argument> </arguments> </virtualType><virtualType name="SalesShipmentIndexGridSyncRemove" type="Magento\Sales\Observer\GridSyncRemoveObserver"> <arguments> <argument name="entityGrid" xsi:type="object">ShipmentGridAggregator</argument> </arguments> </virtualType><virtualType name="SalesCreditmemoIndexGridSyncRemove" type="Magento\Sales\Observer\GridSyncRemoveObserver"> <arguments> <argument name="entityGrid" xsi:type="object">CreditmemoGridAggregator</argument> </arguments> </virtualType><virtualType name="SalesOrderIndexGridSyncInsert" type="Magento\Sales\Observer\GridSyncInsertObserver"> <arguments> <argument name="entityGrid" xsi:type="object">Magento\Sales\Model\ResourceModel\Order\Grid</argument> </arguments> </virtualType><virtualType name="SalesInvoiceIndexGridSyncInsert" type="Magento\Sales\Observer\GridSyncInsertObserver"> <arguments> <argument name="entityGrid" xsi:type="object">Magento\Sales\Model\ResourceModel\Order\Invoice\Grid</argument> </arguments> </virtualType><virtualType name="SalesShipmentIndexGridSyncInsert" type="Magento\Sales\Observer\GridSyncInsertObserver"> <arguments> <argument name="entityGrid" xsi:type="object">ShipmentGridAggregator</argument> </arguments> </virtualType><virtualType name="SalesCreditmemoIndexGridSyncInsert" type="Magento\Sales\Observer\GridSyncInsertObserver"> <arguments> <argument name="entityGrid" xsi:type="object">CreditmemoGridAggregator</argument> </arguments> </virtualType><virtualType name="SalesOrderIndexGridAsyncInsert" type="Magento\Sales\Model\GridAsyncInsert"> <arguments> <argument name="entityGrid" xsi:type="object">Magento\Sales\Model\ResourceModel\Order\Grid</argument> <argument name="globalConfig" xsi:type="object">Magento\AsyncOrder\Model\AsyncGlobalConfig</argument></arguments> </virtualType><virtualType name="SalesInvoiceIndexGridAsyncInsert" type="Magento\Sales\Model\GridAsyncInsert"> <arguments> <argument name="entityGrid" xsi:type="object">Magento\Sales\Model\ResourceModel\Order\Invoice\Grid</argument> <argument name="globalConfig" xsi:type="object">Magento\AsyncOrder\Model\AsyncGlobalConfig</argument></arguments> </virtualType><virtualType name="SalesShipmentIndexGridAsyncInsert" type="Magento\Sales\Model\GridAsyncInsert"> <arguments> <argument name="entityGrid" xsi:type="object">ShipmentGridAggregator</argument> <argument name="globalConfig" xsi:type="object">Magento\AsyncOrder\Model\AsyncGlobalConfig</argument></arguments> </virtualType><virtualType name="SalesCreditmemoIndexGridAsyncInsert" type="Magento\Sales\Model\GridAsyncInsert"> <arguments> <argument name="entityGrid" xsi:type="object">CreditmemoGridAggregator</argument> <argument name="globalConfig" xsi:type="object">Magento\AsyncOrder\Model\AsyncGlobalConfig</argument></arguments> </virtualType><virtualType name="SalesOrderIndexGridAsyncInsertObserver" type="Magento\Sales\Observer\GridAsyncInsertObserver"> <arguments> <argument name="asyncInsert" xsi:type="object">SalesOrderIndexGridAsyncInsert</argument> </arguments> </virtualType><virtualType name="SalesInvoiceIndexGridAsyncInsertObserver" type="Magento\Sales\Observer\GridAsyncInsertObserver"> <arguments> <argument name="asyncInsert" xsi:type="object">SalesInvoiceIndexGridAsyncInsert</argument> </arguments> </virtualType><virtualType name="SalesShipmentIndexGridAsyncInsertObserver" type="Magento\Sales\Observer\GridAsyncInsertObserver"> <arguments> <argument name="asyncInsert" xsi:type="object">SalesShipmentIndexGridAsyncInsert</argument> </arguments> </virtualType><virtualType name="SalesCreditmemoIndexGridAsyncInsertObserver" type="Magento\Sales\Observer\GridAsyncInsertObserver"> <arguments> <argument name="asyncInsert" xsi:type="object">SalesCreditmemoIndexGridAsyncInsert</argument> </arguments> </virtualType><virtualType name="SalesOrderIndexGridAsyncInsertCron" type="Magento\Sales\Cron\GridAsyncInsert"> <arguments> <argument name="asyncInsert" xsi:type="object">SalesOrderIndexGridAsyncInsert</argument> </arguments> </virtualType><virtualType name="SalesInvoiceIndexGridAsyncInsertCron" type="Magento\Sales\Cron\GridAsyncInsert"> <arguments> <argument name="asyncInsert" xsi:type="object">SalesInvoiceIndexGridAsyncInsert</argument> </arguments> </virtualType><virtualType name="SalesShipmentIndexGridAsyncInsertCron" type="Magento\Sales\Cron\GridAsyncInsert"> <arguments> <argument name="asyncInsert" xsi:type="object">SalesShipmentIndexGridAsyncInsert</argument> </arguments> </virtualType><virtualType name="SalesCreditmemoIndexGridAsyncInsertCron" type="Magento\Sales\Cron\GridAsyncInsert"> <arguments> <argument name="asyncInsert" xsi:type="object">SalesCreditmemoIndexGridAsyncInsert</argument> </arguments> </virtualType><virtualType name="SalesOrderSendEmails" type="Magento\Sales\Model\EmailSenderHandler"> <arguments> <argument name="emailSender" xsi:type="object">Magento\Sales\Model\Order\Email\Sender\OrderSender</argument> <argument name="entityResource" xsi:type="object">Magento\Sales\Model\ResourceModel\Order</argument> <argument name="entityCollection" xsi:type="object" shared="false">Magento\Sales\Model\ResourceModel\Order\Collection</argument> <argument name="identityContainer" xsi:type="object" shared="false">Magento\Sales\Model\Order\Email\Container\OrderIdentity</argument> </arguments> </virtualType><virtualType name="SalesOrderInvoiceSendEmails" type="Magento\Sales\Model\EmailSenderHandler"> <arguments> <argument name="emailSender" xsi:type="object">Magento\Sales\Model\Order\Email\Sender\InvoiceSender</argument> <argument name="entityResource" xsi:type="object">Magento\Sales\Model\ResourceModel\Order\Invoice</argument> <argument name="entityCollection" xsi:type="object" shared="false">Magento\Sales\Model\ResourceModel\Order\Invoice\Collection</argument> <argument name="identityContainer" xsi:type="object" shared="false">Magento\Sales\Model\Order\Email\Container\InvoiceIdentity</argument> </arguments> </virtualType><virtualType name="SalesOrderShipmentSendEmails" type="Magento\Sales\Model\EmailSenderHandler"> <arguments> <argument name="emailSender" xsi:type="object">Magento\Sales\Model\Order\Email\Sender\ShipmentSender</argument> <argument name="entityResource" xsi:type="object">Magento\Sales\Model\ResourceModel\Order\Shipment</argument> <argument name="entityCollection" xsi:type="object" shared="false">Magento\Sales\Model\ResourceModel\Order\Shipment\Collection</argument> <argument name="identityContainer" xsi:type="object" shared="false">Magento\Sales\Model\Order\Email\Container\ShipmentIdentity</argument> </arguments> </virtualType><virtualType name="SalesOrderCreditmemoSendEmails" type="Magento\Sales\Model\EmailSenderHandler"> <arguments> <argument name="emailSender" xsi:type="object">Magento\Sales\Model\Order\Email\Sender\CreditmemoSender</argument> <argument name="entityResource" xsi:type="object">Magento\Sales\Model\ResourceModel\Order\Creditmemo</argument> <argument name="entityCollection" xsi:type="object" shared="false">Magento\Sales\Model\ResourceModel\Order\Creditmemo\Collection</argument> <argument name="identityContainer" xsi:type="object" shared="false">Magento\Sales\Model\Order\Email\Container\CreditmemoIdentity</argument> </arguments> </virtualType><virtualType name="SalesOrderSendEmailsObserver" type="Magento\Sales\Observer\Virtual\SendEmails"> <arguments> <argument name="emailSenderHandler" xsi:type="object" shared="false">SalesOrderSendEmails</argument> </arguments> </virtualType><virtualType name="SalesOrderInvoiceSendEmailsObserver" type="Magento\Sales\Observer\Virtual\SendEmails"> <arguments> <argument name="emailSenderHandler" xsi:type="object" shared="false">SalesOrderInvoiceSendEmails</argument> </arguments> </virtualType><virtualType name="SalesOrderShipmentSendEmailsObserver" type="Magento\Sales\Observer\Virtual\SendEmails"> <arguments> <argument name="emailSenderHandler" xsi:type="object" shared="false">SalesOrderShipmentSendEmails</argument> </arguments> </virtualType><virtualType name="SalesOrderCreditmemoSendEmailsObserver" type="Magento\Sales\Observer\Virtual\SendEmails"> <arguments> <argument name="emailSenderHandler" xsi:type="object" shared="false">SalesOrderCreditmemoSendEmails</argument> </arguments> </virtualType><virtualType name="SalesOrderSendEmailsCron" type="Magento\Sales\Cron\SendEmails"> <arguments> <argument name="emailSenderHandler" xsi:type="object" shared="false">SalesOrderSendEmails</argument> </arguments> </virtualType><virtualType name="SalesInvoiceSendEmailsCron" type="Magento\Sales\Cron\SendEmails"> <arguments> <argument name="emailSenderHandler" xsi:type="object" shared="false">SalesOrderInvoiceSendEmails</argument> </arguments> </virtualType><virtualType name="SalesShipmentSendEmailsCron" type="Magento\Sales\Cron\SendEmails"> <arguments> <argument name="emailSenderHandler" xsi:type="object" shared="false">SalesOrderShipmentSendEmails</argument> </arguments> </virtualType><virtualType name="SalesCreditmemoSendEmailsCron" type="Magento\Sales\Cron\SendEmails"> <arguments> <argument name="emailSenderHandler" xsi:type="object" shared="false">SalesOrderCreditmemoSendEmails</argument> </arguments> </virtualType><type name="Magento\SalesSequence\Model\EntityPool"> <arguments> <argument name="entities" xsi:type="array"> <item name="order" xsi:type="string">order</item> <item name="invoice" xsi:type="string">invoice</item> <item name="creditmemo" xsi:type="string">creditmemo</item> <item name="shipment" xsi:type="string">shipment</item> <item name="rma_item" xsi:type="string">rma_item</item></argument> </arguments> </type><type name="Magento\SalesSequence\Model\ResourceModel\Meta"> <arguments> <argument name="connectionName" xsi:type="string">sales</argument> </arguments> </type><type name="Magento\SalesSequence\Model\ResourceModel\Profile"> <arguments> <argument name="connectionName" xsi:type="string">sales</argument> </arguments> </type><type name="Magento\Sales\Model\ResourceModel\Report\Order\Createdat"> <arguments> <argument name="connectionName" xsi:type="string">sales</argument> </arguments> </type><type name="Magento\Sales\Model\ResourceModel\Report\Bestsellers"> <arguments> <argument name="connectionName" xsi:type="string">sales</argument> <argument name="ignoredProductTypes" xsi:type="array"> <item name="configurable" xsi:type="const">Magento\ConfigurableProduct\Model\Product\Type\Configurable::TYPE_CODE</item> <item name="grouped" xsi:type="const">Magento\GroupedProduct\Model\Product\Type\Grouped::TYPE_CODE</item></argument></arguments> </type><type name="Magento\Sales\Model\ResourceModel\Order\Status"> <arguments> <argument name="connectionName" xsi:type="string">sales</argument> </arguments> </type><virtualType name="OrderRelationsComposite" type="Magento\Framework\Model\ResourceModel\Db\VersionControl\RelationComposite"> <arguments> <argument name="relationProcessors" xsi:type="array"> <item name="default" xsi:type="object">Magento\Sales\Model\ResourceModel\Order\Relation</item> </argument> </arguments> </virtualType><type name="Magento\Sales\Model\ResourceModel\Order"> <arguments> <argument name="entityRelationComposite" xsi:type="object">OrderRelationsComposite</argument> </arguments> <plugin sortOrder="1" name="classyllama_avatax_order_extension_attribute_persistence" type="ClassyLlama\AvaTax\Plugin\Model\ResourceModel\ExtensionAttributesPersistencePlugin"/></type><virtualType name="InvoiceRelationsComposite" type="Magento\Framework\Model\ResourceModel\Db\VersionControl\RelationComposite"> <arguments> <argument name="relationProcessors" xsi:type="array"> <item name="default" xsi:type="object">Magento\Sales\Model\ResourceModel\Order\Invoice\Relation</item> </argument> </arguments> </virtualType><type name="Magento\Sales\Model\ResourceModel\Order\Invoice"> <arguments> <argument name="entityRelationComposite" xsi:type="object">InvoiceRelationsComposite</argument> </arguments> </type><virtualType name="ShipmentRelationsComposite" type="Magento\Framework\Model\ResourceModel\Db\VersionControl\RelationComposite"> <arguments> <argument name="relationProcessors" xsi:type="array"> <item name="default" xsi:type="object">Magento\Sales\Model\ResourceModel\Order\Shipment\Relation</item> </argument> </arguments> </virtualType><type name="Magento\Sales\Model\ResourceModel\Order\Shipment"> <arguments> <argument name="entityRelationComposite" xsi:type="object">ShipmentRelationsComposite</argument> </arguments> <plugin name="SaveSourceForShipment" type="Magento\InventoryShipping\Plugin\Sales\ResourceModel\Order\Shipment\SaveSourceForShipmentPlugin"/><plugin name="LoadSourceForShipment" type="Magento\InventoryShipping\Plugin\Sales\ResourceModel\Order\Shipment\LoadSourceForShipmentPlugin"/><plugin name="DeleteSourceForShipment" type="Magento\InventoryShipping\Plugin\Sales\ResourceModel\Order\Shipment\DeleteSourceForShipmentPlugin"/></type><virtualType name="CreditmemoRelationsComposite" type="Magento\Framework\Model\ResourceModel\Db\VersionControl\RelationComposite"> <arguments> <argument name="relationProcessors" xsi:type="array"> <item name="default" xsi:type="object">Magento\Sales\Model\ResourceModel\Order\Creditmemo\Relation</item> </argument> </arguments> </virtualType><type name="Magento\Sales\Model\ResourceModel\Order\Creditmemo"> <arguments> <argument name="entityRelationComposite" xsi:type="object">CreditmemoRelationsComposite</argument> </arguments> <plugin name="refundRewardPoints" type="Magento\Reward\Model\Plugin\RewardPointsRefund"/></type><virtualType name="Magento\Sales\Model\ResourceModel\Provider\NotSyncedOrderDataProvider" type="Magento\Sales\Model\ResourceModel\Provider\NotSyncedDataProvider"> <arguments> <argument name="providers" xsi:type="array"> <item name="default" xsi:type="string">Magento\Sales\Model\ResourceModel\Provider\UpdatedIdListProvider</item> <item name="updated_at" xsi:type="string">Magento\Sales\Model\ResourceModel\Provider\UpdatedAtListProvider</item> </argument> </arguments> </virtualType><virtualType name="Magento\Sales\Model\ResourceModel\Order\Grid" type="Magento\Sales\Model\ResourceModel\Grid"> <arguments> <argument name="mainTableName" xsi:type="string">sales_order</argument> <argument name="gridTableName" xsi:type="string">sales_order_grid</argument> <argument name="orderIdField" xsi:type="string">sales_order.entity_id</argument> <argument name="joins" xsi:type="array"> <item name="sales_shipping_address" xsi:type="array"> <item name="table" xsi:type="string">sales_order_address</item> <item name="origin_column" xsi:type="string">shipping_address_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_billing_address" xsi:type="array"> <item name="table" xsi:type="string">sales_order_address</item> <item name="origin_column" xsi:type="string">billing_address_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_order_payment" xsi:type="array"> <item name="table" xsi:type="string">sales_order_payment</item> <item name="origin_column" xsi:type="string">entity_id</item> <item name="target_column" xsi:type="string">parent_id</item> </item> <item name="inventory_pickup_location_order" xsi:type="array"> <item name="table" xsi:type="string">inventory_pickup_location_order</item> <item name="origin_column" xsi:type="string">entity_id</item> <item name="target_column" xsi:type="string">order_id</item> </item></argument> <argument name="columns" xsi:type="array"> <item name="entity_id" xsi:type="string">sales_order.entity_id</item> <item name="status" xsi:type="string">sales_order.status</item> <item name="store_id" xsi:type="string">sales_order.store_id</item> <item name="store_name" xsi:type="string">sales_order.store_name</item> <item name="customer_id" xsi:type="string">sales_order.customer_id</item> <item name="base_grand_total" xsi:type="string">sales_order.base_grand_total</item> <item name="base_total_paid" xsi:type="string">sales_order.base_total_paid</item> <item name="grand_total" xsi:type="string">sales_order.grand_total</item> <item name="total_paid" xsi:type="string">sales_order.total_paid</item> <item name="increment_id" xsi:type="string">sales_order.increment_id</item> <item name="base_currency_code" xsi:type="string">sales_order.base_currency_code</item> <item name="order_currency_code" xsi:type="string">sales_order.order_currency_code</item> <item name="shipping_name" xsi:type="object">ShippingNameAggregator</item> <item name="billing_name" xsi:type="object">BillingNameAggregator</item> <item name="created_at" xsi:type="string">sales_order.created_at</item> <item name="updated_at" xsi:type="string">sales_order.updated_at</item> <item name="billing_address" xsi:type="object">BillingAddressAggregator</item> <item name="shipping_address" xsi:type="object">ShippingAddressAggregator</item> <item name="shipping_information" xsi:type="string">sales_order.shipping_description</item> <item name="customer_email" xsi:type="string">sales_order.customer_email</item> <item name="customer_group" xsi:type="string">sales_order.customer_group_id</item> <item name="subtotal" xsi:type="string">sales_order.base_subtotal</item> <item name="shipping_and_handling" xsi:type="string">sales_order.base_shipping_amount</item> <item name="customer_name" xsi:type="object">CustomerNameAggregator</item> <item name="payment_method" xsi:type="string">sales_order_payment.method</item> <item name="total_refunded" xsi:type="string">sales_order.total_refunded</item> <item name="refunded_to_store_credit" xsi:type="string">sales_order.customer_bal_total_refunded</item><item name="pickup_location_code" xsi:type="string">inventory_pickup_location_order.pickup_location_code</item></argument> <argument name="notSyncedDataProvider" xsi:type="object">Magento\Sales\Model\ResourceModel\Provider\NotSyncedOrderDataProvider</argument> </arguments> </virtualType><virtualType name="ShipmentGridAggregator" type="Magento\Sales\Model\ResourceModel\Grid"> <arguments> <argument name="mainTableName" xsi:type="string">sales_shipment</argument> <argument name="gridTableName" xsi:type="string">sales_shipment_grid</argument> <argument name="orderIdField" xsi:type="string">sales_shipment.order_id</argument> <argument name="joins" xsi:type="array"> <item name="sales_order" xsi:type="array"> <item name="table" xsi:type="string">sales_order</item> <item name="origin_column" xsi:type="string">order_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_shipping_address" xsi:type="array"> <item name="table" xsi:type="string">sales_order_address</item> <item name="origin_column" xsi:type="string">shipping_address_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_billing_address" xsi:type="array"> <item name="table" xsi:type="string">sales_order_address</item> <item name="origin_column" xsi:type="string">billing_address_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_order_payment" xsi:type="array"> <item name="table" xsi:type="string">sales_order_payment</item> <item name="origin_column" xsi:type="string">order_id</item> <item name="target_column" xsi:type="string">parent_id</item> </item> </argument> <argument name="columns" xsi:type="array"> <item name="entity_id" xsi:type="string">sales_shipment.entity_id</item> <item name="increment_id" xsi:type="string">sales_shipment.increment_id</item> <item name="store_id" xsi:type="string">sales_shipment.store_id</item> <item name="order_increment_id" xsi:type="string">sales_order.increment_id</item> <item name="order_created_at" xsi:type="string">sales_order.created_at</item> <item name="customer_name" xsi:type="object">CustomerNameAggregator</item> <item name="total_qty" xsi:type="string">sales_shipment.total_qty</item> <item name="shipment_status" xsi:type="string">sales_shipment.shipment_status</item> <item name="order_status" xsi:type="string">sales_order.status</item> <item name="billing_address" xsi:type="object">BillingAddressAggregator</item> <item name="shipping_address" xsi:type="object">ShippingAddressAggregator</item> <item name="billing_name" xsi:type="object">BillingNameAggregator</item> <item name="shipping_name" xsi:type="object">ShippingNameAggregator</item> <item name="customer_email" xsi:type="string">sales_order.customer_email</item> <item name="customer_group_id" xsi:type="string">sales_order.customer_group_id</item> <item name="payment_method" xsi:type="string">sales_order_payment.method</item> <item name="created_at" xsi:type="string">sales_shipment.created_at</item> <item name="updated_at" xsi:type="string">sales_shipment.updated_at</item> <item name="order_id" xsi:type="string">sales_shipment.order_id</item> <item name="shipping_information" xsi:type="string">sales_order.shipping_description</item> </argument> </arguments> </virtualType><virtualType name="CreditmemoGridAggregator" type="Magento\Sales\Model\ResourceModel\Grid"> <arguments> <argument name="mainTableName" xsi:type="string">sales_creditmemo</argument> <argument name="gridTableName" xsi:type="string">sales_creditmemo_grid</argument> <argument name="orderIdField" xsi:type="string">sales_creditmemo.order_id</argument> <argument name="joins" xsi:type="array"> <item name="sales_shipping_address" xsi:type="array"> <item name="table" xsi:type="string">sales_order_address</item> <item name="origin_column" xsi:type="string">shipping_address_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_billing_address" xsi:type="array"> <item name="table" xsi:type="string">sales_order_address</item> <item name="origin_column" xsi:type="string">billing_address_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_order" xsi:type="array"> <item name="table" xsi:type="string">sales_order</item> <item name="origin_column" xsi:type="string">order_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_order_payment" xsi:type="array"> <item name="table" xsi:type="string">sales_order_payment</item> <item name="origin_column" xsi:type="string">order_id</item> <item name="target_column" xsi:type="string">parent_id</item> </item> </argument> <argument name="columns" xsi:type="array"> <item name="entity_id" xsi:type="string">sales_creditmemo.entity_id</item> <item name="increment_id" xsi:type="string">sales_creditmemo.increment_id</item> <item name="created_at" xsi:type="string">sales_creditmemo.created_at</item> <item name="updated_at" xsi:type="string">sales_creditmemo.updated_at</item> <item name="order_id" xsi:type="string">sales_order.entity_id</item> <item name="order_increment_id" xsi:type="string">sales_order.increment_id</item> <item name="order_created_at" xsi:type="string">sales_order.created_at</item> <item name="billing_name" xsi:type="object">BillingNameAggregator</item> <item name="state" xsi:type="string">sales_creditmemo.state</item> <item name="base_grand_total" xsi:type="string">sales_creditmemo.base_grand_total</item> <item name="order_status" xsi:type="string">sales_order.status</item> <item name="store_id" xsi:type="string">sales_creditmemo.store_id</item> <item name="billing_address" xsi:type="object">BillingAddressAggregator</item> <item name="shipping_address" xsi:type="object">ShippingAddressAggregator</item> <item name="customer_name" xsi:type="object">CustomerNameAggregator</item> <item name="customer_email" xsi:type="string">sales_order.customer_email</item> <item name="customer_group_id" xsi:type="string">sales_order.customer_group_id</item> <item name="payment_method" xsi:type="string">sales_order_payment.method</item> <item name="shipping_information" xsi:type="string">sales_order.shipping_description</item> <item name="subtotal" xsi:type="string">sales_creditmemo.subtotal</item> <item name="shipping_and_handling" xsi:type="string">sales_creditmemo.shipping_amount</item> <item name="adjustment_positive" xsi:type="string">sales_creditmemo.adjustment_positive</item> <item name="adjustment_negative" xsi:type="string">sales_creditmemo.adjustment_negative</item> <item name="order_base_grand_total" xsi:type="string">sales_order.base_grand_total</item> </argument> </arguments> </virtualType><virtualType name="Magento\Sales\Model\ResourceModel\Order\Invoice\Grid" type="Magento\Sales\Model\ResourceModel\Grid"> <arguments> <argument name="mainTableName" xsi:type="string">sales_invoice</argument> <argument name="gridTableName" xsi:type="string">sales_invoice_grid</argument> <argument name="orderIdField" xsi:type="string">sales_invoice.order_id</argument> <argument name="joins" xsi:type="array"> <item name="sales_order" xsi:type="array"> <item name="table" xsi:type="string">sales_order</item> <item name="origin_column" xsi:type="string">order_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_shipping_address" xsi:type="array"> <item name="table" xsi:type="string">sales_order_address</item> <item name="origin_column" xsi:type="string">shipping_address_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_billing_address" xsi:type="array"> <item name="table" xsi:type="string">sales_order_address</item> <item name="origin_column" xsi:type="string">billing_address_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_order_payment" xsi:type="array"> <item name="table" xsi:type="string">sales_order_payment</item> <item name="origin_column" xsi:type="string">order_id</item> <item name="target_column" xsi:type="string">parent_id</item> </item> </argument> <argument name="columns" xsi:type="array"> <item name="entity_id" xsi:type="string">sales_invoice.entity_id</item> <item name="increment_id" xsi:type="string">sales_invoice.increment_id</item> <item name="state" xsi:type="string">sales_invoice.state</item> <item name="store_id" xsi:type="string">sales_invoice.store_id</item> <item name="store_name" xsi:type="string">sales_order.store_name</item> <item name="order_id" xsi:type="string">sales_invoice.order_id</item> <item name="order_increment_id" xsi:type="string">sales_order.increment_id</item> <item name="order_created_at" xsi:type="string">sales_order.created_at</item> <item name="customer_name" xsi:type="object">CustomerNameAggregator</item> <item name="customer_email" xsi:type="string">sales_order.customer_email</item> <item name="customer_group_id" xsi:type="string">sales_order.customer_group_id</item> <item name="payment_method" xsi:type="string">sales_order_payment.method</item> <item name="store_currency_code" xsi:type="string">sales_invoice.store_currency_code</item> <item name="order_currency_code" xsi:type="string">sales_invoice.order_currency_code</item> <item name="base_currency_code" xsi:type="string">sales_invoice.base_currency_code</item> <item name="global_currency_code" xsi:type="string">sales_invoice.global_currency_code</item> <item name="billing_name" xsi:type="object">BillingNameAggregator</item> <item name="billing_address" xsi:type="object">BillingAddressAggregator</item> <item name="shipping_address" xsi:type="object">ShippingAddressAggregator</item> <item name="shipping_information" xsi:type="string">sales_order.shipping_description</item> <item name="subtotal" xsi:type="string">sales_invoice.base_subtotal</item> <item name="shipping_and_handling" xsi:type="string">sales_invoice.base_shipping_amount</item> <item name="base_grand_total" xsi:type="string">sales_invoice.base_grand_total</item> <item name="grand_total" xsi:type="string">sales_invoice.grand_total</item> <item name="created_at" xsi:type="string">sales_invoice.created_at</item> <item name="updated_at" xsi:type="string">sales_invoice.updated_at</item> </argument> </arguments> </virtualType><virtualType name="CustomerNameAggregator" type="Magento\Framework\DB\Sql\ConcatExpression"> <arguments> <argument name="columns" xsi:type="array"> <item name="customer_firstname" xsi:type="array"> <item name="tableAlias" xsi:type="string">sales_order</item> <item name="columnName" xsi:type="string">customer_firstname</item> </item> <item name="customer_lastname" xsi:type="array"> <item name="tableAlias" xsi:type="string">sales_order</item> <item name="columnName" xsi:type="string">customer_lastname</item> </item> </argument> </arguments> </virtualType><virtualType name="ShippingNameAggregator" type="Magento\Framework\DB\Sql\ConcatExpression"> <arguments> <argument name="columns" xsi:type="array"> <item name="firstname" xsi:type="array"> <item name="tableAlias" xsi:type="string">sales_shipping_address</item> <item name="columnName" xsi:type="string">firstname</item> </item> <item name="lastname" xsi:type="array"> <item name="tableAlias" xsi:type="string">sales_shipping_address</item> <item name="columnName" xsi:type="string">lastname</item> </item> </argument> </arguments> </virtualType><virtualType name="BillingNameAggregator" type="Magento\Framework\DB\Sql\ConcatExpression"> <arguments> <argument name="columns" xsi:type="array"> <item name="firstname" xsi:type="array"> <item name="tableAlias" xsi:type="string">sales_billing_address</item> <item name="columnName" xsi:type="string">firstname</item> </item> <item name="lastname" xsi:type="array"> <item name="tableAlias" xsi:type="string">sales_billing_address</item> <item name="columnName" xsi:type="string">lastname</item> </item> </argument> </arguments> </virtualType><virtualType name="ShippingAddressAggregator" type="Magento\Framework\DB\Sql\ConcatExpression"> <arguments> <argument name="columns" xsi:type="array"> <item name="company" xsi:type="array"> <item name="tableAlias" xsi:type="string">sales_shipping_address</item> <item name="columnName" xsi:type="string">company</item> </item> <item name="street" xsi:type="array"> <item name="tableAlias" xsi:type="string">sales_shipping_address</item> <item name="columnName" xsi:type="string">street</item> </item> <item name="city" xsi:type="array"> <item name="tableAlias" xsi:type="string">sales_shipping_address</item> <item name="columnName" xsi:type="string">city</item> </item> <item name="region" xsi:type="array"> <item name="tableAlias" xsi:type="string">sales_shipping_address</item> <item name="columnName" xsi:type="string">region</item> </item> <item name="postcode" xsi:type="array"> <item name="tableAlias" xsi:type="string">sales_shipping_address</item> <item name="columnName" xsi:type="string">postcode</item> </item> </argument> <argument name="separator" xsi:type="string">, </argument> </arguments> </virtualType><virtualType name="BillingAddressAggregator" type="Magento\Framework\DB\Sql\ConcatExpression"> <arguments> <argument name="columns" xsi:type="array"> <item name="company" xsi:type="array"> <item name="tableAlias" xsi:type="string">sales_billing_address</item> <item name="columnName" xsi:type="string">company</item> </item> <item name="street" xsi:type="array"> <item name="tableAlias" xsi:type="string">sales_billing_address</item> <item name="columnName" xsi:type="string">street</item> </item> <item name="city" xsi:type="array"> <item name="tableAlias" xsi:type="string">sales_billing_address</item> <item name="columnName" xsi:type="string">city</item> </item> <item name="region" xsi:type="array"> <item name="tableAlias" xsi:type="string">sales_billing_address</item> <item name="columnName" xsi:type="string">region</item> </item> <item name="postcode" xsi:type="array"> <item name="tableAlias" xsi:type="string">sales_billing_address</item> <item name="columnName" xsi:type="string">postcode</item> </item> </argument> <argument name="separator" xsi:type="string">, </argument> </arguments> </virtualType><virtualType name="PaymentMethodSubSelect" type="Magento\Framework\DB\Sql\LookupExpression"> <arguments> <argument name="targetTable" xsi:type="string">sales_order_payment</argument> <argument name="targetColumn" xsi:type="string">method</argument> <argument name="referenceColumns" xsi:type="array"> <item name="parent_id" xsi:type="array"> <item name="tableAlias" xsi:type="string">sales_order</item> <item name="columnName" xsi:type="string">entity_id</item> </item> </argument> </arguments> </virtualType><type name="Magento\Sales\Model\ResourceModel\GridPool"> <arguments> <argument name="grids" xsi:type="array"> <item name="order_grid" xsi:type="object">Magento\Sales\Model\ResourceModel\Order\Grid</item> <item name="invoice_grid" xsi:type="object">Magento\Sales\Model\ResourceModel\Order\Invoice\Grid</item> <item name="shipment_grid" xsi:type="object">ShipmentGridAggregator</item> <item name="creditmemo_grid" xsi:type="object">CreditmemoGridAggregator</item> </argument> </arguments> </type><virtualType name="Magento\Sales\Model\ResourceModel\Order\Invoice\Grid\Collection" type="Magento\Framework\View\Element\UiComponent\DataProvider\SearchResult"> <arguments> <argument name="mainTable" xsi:type="string">sales_invoice_grid</argument> <argument name="resourceModel" xsi:type="string">Magento\Sales\Model\ResourceModel\Order\Invoice</argument> </arguments> </virtualType><type name="Magento\Sales\Model\Order\Config"> <arguments> <argument name="state" xsi:type="object">Magento\Framework\App\State\Proxy</argument> </arguments> </type><virtualType name="orderMetadata" type="Magento\Sales\Model\ResourceModel\Metadata"> <arguments> <argument name="resourceClassName" xsi:type="string">Magento\Sales\Model\ResourceModel\Order</argument> <argument name="modelClassName" xsi:type="string">Magento\Sales\Model\Order</argument> </arguments> </virtualType><virtualType name="orderItemMetadata" type="Magento\Sales\Model\ResourceModel\Metadata"> <arguments> <argument name="resourceClassName" xsi:type="string">Magento\Sales\Model\ResourceModel\Order\Item</argument> <argument name="modelClassName" xsi:type="string">Magento\Sales\Model\Order\Item</argument> </arguments> </virtualType><virtualType name="invoiceMetadata" type="Magento\Sales\Model\ResourceModel\Metadata"> <arguments> <argument name="resourceClassName" xsi:type="string">Magento\Sales\Model\ResourceModel\Order\Invoice</argument> <argument name="modelClassName" xsi:type="string">Magento\Sales\Model\Order\Invoice</argument> </arguments> </virtualType><virtualType name="shipmentMetadata" type="Magento\Sales\Model\ResourceModel\Metadata"> <arguments> <argument name="resourceClassName" xsi:type="string">Magento\Sales\Model\ResourceModel\Order\Shipment</argument> <argument name="modelClassName" xsi:type="string">Magento\Sales\Model\Order\Shipment</argument> </arguments> </virtualType><virtualType name="creditmemoMetadata" type="Magento\Sales\Model\ResourceModel\Metadata"> <arguments> <argument name="resourceClassName" xsi:type="string">Magento\Sales\Model\ResourceModel\Order\Creditmemo</argument> <argument name="modelClassName" xsi:type="string">Magento\Sales\Model\Order\Creditmemo</argument> </arguments> </virtualType><virtualType name="transactionMetaData" type="Magento\Sales\Model\ResourceModel\Metadata"> <arguments> <argument name="resourceClassName" xsi:type="string">Magento\Sales\Model\ResourceModel\Order\Payment\Transaction</argument> <argument name="modelClassName" xsi:type="string">Magento\Sales\Model\Order\Payment\Transaction</argument> </arguments> </virtualType><virtualType name="paymentMetaData" type="Magento\Sales\Model\ResourceModel\Metadata"> <arguments> <argument name="resourceClassName" xsi:type="string">Magento\Sales\Model\ResourceModel\Order\Payment</argument> <argument name="modelClassName" xsi:type="string">Magento\Sales\Model\Order\Payment</argument> </arguments> </virtualType><virtualType name="orderAddressMetadata" type="Magento\Sales\Model\ResourceModel\Metadata"> <arguments> <argument name="resourceClassName" xsi:type="string">Magento\Sales\Model\ResourceModel\Order\Address</argument> <argument name="modelClassName" xsi:type="string">Magento\Sales\Model\Order\Address</argument> </arguments> </virtualType><type name="Magento\Sales\Model\OrderRepository"> <arguments> <argument name="metadata" xsi:type="object">orderMetadata</argument> </arguments> <plugin name="add_sources_to_order" type="Ampersand\DisableStockReservation\Plugin\Model\OrderRepositoryPlugin" sortOrder="2"/></type><type name="Magento\Sales\Model\Order\ItemRepository"> <arguments> <argument name="metadata" xsi:type="object">orderItemMetadata</argument> </arguments> </type><type name="Magento\Sales\Model\Order\InvoiceRepository"> <arguments> <argument name="invoiceMetadata" xsi:type="object">invoiceMetadata</argument> </arguments> </type><type name="Magento\Sales\Model\Order\ShipmentRepository"> <arguments> <argument name="metadata" xsi:type="object">shipmentMetadata</argument> </arguments> </type><type name="Magento\Sales\Model\Order\CreditmemoRepository"> <arguments> <argument name="metadata" xsi:type="object">creditmemoMetadata</argument> </arguments> </type><type name="Magento\Sales\Model\Order\Payment\Transaction\Repository"> <arguments> <argument name="metaData" xsi:type="object">transactionMetaData</argument> </arguments> </type><type name="Magento\Sales\Model\Order\Payment\Repository"> <arguments> <argument name="metaData" xsi:type="object">paymentMetaData</argument> </arguments> </type><type name="Magento\Sales\Model\Order\AddressRepository"> <arguments> <argument name="metadata" xsi:type="object">orderAddressMetadata</argument> </arguments> </type><type name="Magento\Sales\Model\Order\Payment\Operations\AuthorizeOperation"> <arguments> <argument name="stateCommand" xsi:type="object">Magento\Sales\Model\Order\Payment\State\AuthorizeCommand</argument> </arguments> </type><type name="Magento\Sales\Model\Order\Payment\Operations\CaptureOperation"> <arguments> <argument name="stateCommand" xsi:type="object">Magento\Sales\Model\Order\Payment\State\CaptureCommand</argument> </arguments> </type><type name="Magento\Sales\Model\Order\Payment\Operations\ProcessInvoiceOperation"> <arguments> <argument name="stateCommand" xsi:type="object">Magento\Sales\Model\Order\Payment\State\CaptureCommand</argument> </arguments> </type><type name="Magento\Sales\Model\Order\Payment\Operations\OrderOperation"> <arguments> <argument name="stateCommand" xsi:type="object">Magento\Sales\Model\Order\Payment\State\OrderCommand</argument> </arguments> </type><type name="Magento\Sales\Model\Order\Payment\Operations\RegisterCaptureNotificationOperation"> <arguments> <argument name="stateCommand" xsi:type="object">Magento\Sales\Model\Order\Payment\State\RegisterCaptureNotificationCommand</argument> </arguments> </type><type name="Magento\Sales\Model\ResourceModel\Order\Tax\Item"> <arguments> <argument name="connectionName" xsi:type="string">sales</argument> </arguments> </type><type name="Magento\Sales\Model\Order\Invoice\Notifier"> <arguments> <argument name="senders" xsi:type="array"> <item name="email" xsi:type="object">Magento\Sales\Model\Order\Invoice\Sender\EmailSender</item> </argument> </arguments> </type><type name="Magento\Sales\Model\Order\Shipment\Notifier"> <arguments> <argument name="senders" xsi:type="array"> <item name="email" xsi:type="object">Magento\Sales\Model\Order\Shipment\Sender\EmailSender</item> </argument> </arguments> </type><type name="Magento\Sales\Model\Order\Creditmemo\Notifier"> <arguments> <argument name="senders" xsi:type="array"> <item name="email" xsi:type="object">Magento\Sales\Model\Order\Creditmemo\Sender\EmailSender</item> </argument> </arguments> </type><type name="Magento\Sales\Model\ResourceModel\Order\Handler\Address"> <plugin name="addressUpdate" type="Magento\Sales\Model\Order\Invoice\Plugin\AddressUpdate"/> </type><preference for="Magento\Sales\Api\OrderCustomerDelegateInterface" type="Magento\Sales\Model\Order\OrderCustomerDelegate"/><type name="Magento\Sales\Model\Order\Reorder\OrderedProductAvailabilityChecker"> <arguments> <argument name="productAvailabilityChecks" xsi:type="array"><item name="configurable" xsi:type="object">Magento\ConfigurableProductSales\Model\Order\Reorder\OrderedProductAvailabilityChecker</item></argument> </arguments> </type><type name="Magento\Sales\Model\Order\StatusLabel"> <arguments> <argument name="maskStatusesMapping" xsi:type="array"> <item name="frontend" xsi:type="array"> <item name="fraud" xsi:type="const">Magento\Sales\Model\Order::STATUS_FRAUD</item> <item name="payment_review" xsi:type="const">Magento\Sales\Model\Order::STATE_PROCESSING</item> </item> </argument> </arguments> </type><preference for="Magento\Bundle\Api\ProductOptionTypeListInterface" type="Magento\Bundle\Model\OptionTypeList"/><preference for="Magento\Bundle\Api\Data\OptionTypeInterface" type="Magento\Bundle\Model\Source\Option\Type"/><preference for="Magento\Bundle\Api\ProductLinkManagementInterface" type="Magento\Bundle\Model\LinkManagement"/><preference for="Magento\Bundle\Api\Data\LinkInterface" type="Magento\Bundle\Model\Link"/><preference for="Magento\Bundle\Api\ProductOptionRepositoryInterface" type="Magento\Bundle\Model\OptionRepository"/><preference for="Magento\Bundle\Api\ProductOptionManagementInterface" type="Magento\Bundle\Model\OptionManagement"/><preference for="Magento\Bundle\Api\Data\OptionInterface" type="Magento\Bundle\Model\Option"/><preference for="Magento\Bundle\Api\Data\BundleOptionInterface" type="Magento\Bundle\Model\BundleOption"/><preference for="Magento\Bundle\Pricing\Adjustment\SelectionPriceListProviderInterface" type="Magento\Bundle\Pricing\Adjustment\DefaultSelectionPriceListProvider"/><type name="Magento\Bundle\Model\Source\Option\Type"> <arguments> <argument name="options" xsi:type="array"> <item name="select" xsi:type="string">Drop-down</item> <item name="radio" xsi:type="string">Radio Buttons</item> <item name="checkbox" xsi:type="string">Checkbox</item> <item name="multi" xsi:type="string">Multiple Select</item> </argument> </arguments> </type><type name="Magento\Catalog\Model\Product\CatalogPrice"> <arguments> <argument name="priceModelPool" xsi:type="array"> <item name="bundle" xsi:type="string">Magento\Bundle\Model\Product\CatalogPrice</item> <item name="giftcard" xsi:type="string">Magento\GiftCard\Model\Product\CatalogPrice</item><item name="grouped" xsi:type="string">Magento\GroupedProduct\Model\Product\CatalogPrice</item></argument> </arguments> </type><virtualType name="Magento\Bundle\Pricing\Adjustment\Collection" type="Magento\Framework\Pricing\Adjustment\Collection"> </virtualType><preference for="Magento\Bundle\Pricing\Adjustment\BundleCalculatorInterface" type="Magento\Bundle\Pricing\Adjustment\Calculator"/><virtualType name="Magento\Bundle\Pricing\PriceInfo" type="Magento\Framework\Pricing\PriceInfo\Base"> <arguments> <argument name="adjustmentCollection" xsi:type="object">Magento\Bundle\Pricing\Adjustment\Collection</argument> </arguments> </virtualType><virtualType name="Magento\Bundle\Pricing\Price\Pool" type="Magento\Framework\Pricing\Price\Pool"> <arguments> <argument name="prices" xsi:type="array"> <item name="regular_price" xsi:type="string">Magento\Bundle\Pricing\Price\BundleRegularPrice</item> <item name="final_price" xsi:type="string">Magento\Bundle\Pricing\Price\FinalPrice</item> <item name="tier_price" xsi:type="string">Magento\Bundle\Pricing\Price\TierPrice</item> <item name="special_price" xsi:type="string">Magento\Bundle\Pricing\Price\SpecialPrice</item> <item name="custom_option_price" xsi:type="string">Magento\Catalog\Pricing\Price\CustomOptionPrice</item> <item name="base_price" xsi:type="string">Magento\Catalog\Pricing\Price\BasePrice</item> <item name="configured_price" xsi:type="string">Magento\Bundle\Pricing\Price\ConfiguredPrice</item> <item name="configured_regular_price" xsi:type="string">Magento\Bundle\Pricing\Price\ConfiguredRegularPrice</item> <item name="bundle_option" xsi:type="string">Magento\Bundle\Pricing\Price\BundleOptionPrice</item> <item name="bundle_option_regular_price" xsi:type="string">Magento\Bundle\Pricing\Price\BundleOptionRegularPrice</item> <item name="catalog_rule_price" xsi:type="string">Magento\CatalogRule\Pricing\Price\CatalogRulePrice</item> <item name="msrp_price" xsi:type="string">Magento\Msrp\Pricing\Price\MsrpPrice</item><item name="wishlist_configured_price" xsi:type="string">Magento\Bundle\Pricing\Price\ConfiguredPrice</item></argument> </arguments> </virtualType><virtualType name="Magento\Bundle\Pricing\Price\Collection" type="Magento\Framework\Pricing\Price\Collection"> <arguments> <argument name="pool" xsi:type="object">Magento\Bundle\Pricing\Price\Pool</argument> </arguments> </virtualType><type name="Magento\Bundle\Pricing\Price\BundleRegularPrice"> <arguments> <argument name="calculator" xsi:type="object">Magento\Bundle\Pricing\Adjustment\BundleCalculatorInterface</argument> </arguments> </type><type name="Magento\Bundle\Pricing\Price\FinalPrice"> <arguments> <argument name="calculator" xsi:type="object">Magento\Bundle\Pricing\Adjustment\BundleCalculatorInterface</argument> </arguments> </type><type name="Magento\Catalog\Pricing\Price\ConfiguredPriceSelection"> <arguments> <argument name="calculator" xsi:type="object">Magento\Bundle\Pricing\Adjustment\BundleCalculatorInterface</argument> </arguments> </type><type name="Magento\Catalog\Model\Product\Attribute\Backend\Price"> <plugin name="bundle" type="Magento\Bundle\Model\Plugin\PriceBackend" sortOrder="100"/> <plugin name="giftCardOpenAmount" type="Magento\GiftCard\Plugin\Catalog\Model\Product\Attribute\Backend\Price"/><plugin name="configurable" type="Magento\ConfigurableProduct\Model\Plugin\PriceBackend" sortOrder="100"/></type><type name="Magento\Sales\Model\Order\Item"> <plugin name="bundle" type="Magento\Bundle\Model\Sales\Order\Plugin\Item" sortOrder="100"/> </type><type name="Magento\Bundle\Model\Product\Type"> <arguments> <argument name="stockRegistry" xsi:type="object">Magento\CatalogInventory\Api\StockRegistryInterface\Proxy</argument> <argument name="stockState" xsi:type="object">Magento\CatalogInventory\Api\StockStateInterface\Proxy</argument> </arguments> <plugin name="adapt_is_product_salable" type="Magento\InventoryBundleProduct\Plugin\Bundle\Model\Product\Type\AdaptIsSalablePlugin"/></type><type name="Magento\Bundle\Ui\DataProvider\Product\Listing\Collector\BundlePrice"> <arguments> <argument name="excludeAdjustments" xsi:type="array"> <item name="weee" xsi:type="string">weee</item> <item name="weee_tax" xsi:type="string">weee_tax</item> </argument> </arguments> </type><type name="Magento\Bundle\Model\ResourceModel\Indexer\Price"> <arguments> <argument name="tableStrategy" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\TemporaryTableStrategy</argument> <argument name="connectionName" xsi:type="string">indexer</argument> </arguments> </type><type name="Magento\CatalogInventory\Model\Indexer\Stock\Action\Full"> <arguments> <argument name="batchRowsCount" xsi:type="array"> <item name="bundle" xsi:type="number">136</item> <item name="default" xsi:type="number">200</item></argument> <argument name="batchSizeManagement" xsi:type="object">Magento\CatalogInventory\Model\Indexer\Stock\BatchSizeManagement</argument></arguments> </type><type name="Magento\SalesRule\Model\Quote\ChildrenValidationLocator"> <arguments> <argument name="productTypeChildrenValidationMap" xsi:type="array"> <item name="bundle" xsi:type="boolean">false</item> <item name="configurable" xsi:type="boolean">false</item></argument> </arguments> </type><type name="Magento\Sales\Model\Order\Shipment\ShipmentItemsValidator"> <arguments> <argument name="validators" xsi:type="array"> <item name="shipment_type" xsi:type="object">Magento\Bundle\Model\Sales\Order\Shipment\BundleShipmentTypeValidator</item> </argument> </arguments> </type><type name="Magento\Quote\Model\Quote\Item\Option\Comparator"> <arguments> <argument name="customComparators" xsi:type="array"> <item name="bundle_selection_attributes" xsi:type="object">Magento\Bundle\Model\Quote\Item\Option\BundleSelectionAttributesComparator</item> </argument> </arguments> </type><type name="Magento\Quote\Model\QuoteManagement"> <plugin name="update_bundle_quote_item_options" type="Magento\Bundle\Plugin\Quote\UpdateBundleQuoteItemOptions" sortOrder="10"/> </type><type name="Magento\Bundle\Model\ProductRelationsProcessorComposite"> <arguments> <argument name="processors" xsi:type="array"> <item name="quote_recollect" xsi:type="object">Magento\Bundle\Model\QuoteRecollectProcessor</item> </argument> </arguments> </type><type name="Magento\Bundle\Model\QuoteRecollectProcessor"> <arguments> <argument name="comparisonFieldsTypeMapper" xsi:type="array"> <item name="sku" xsi:type="string">string</item> <item name="price" xsi:type="string">float</item> <item name="price_type" xsi:type="string">string</item> <item name="qty" xsi:type="string">float</item> <item name="selection_can_change_quantity" xsi:type="string">string</item> </argument> </arguments> </type><type name="Magento\CatalogInventory\Observer\SaveInventoryDataObserver"> <arguments> <argument name="parentItemProcessorPool" xsi:type="array"> <item name="bundle" xsi:type="object">Magento\Bundle\Model\Inventory\ParentItemProcessor</item> <item name="configurable" xsi:type="object"> Magento\ConfigurableProduct\Model\Inventory\ParentItemProcessor</item><item name="grouped" xsi:type="object"> Magento\GroupedProduct\Model\Inventory\ParentItemProcessor</item></argument> </arguments> </type><preference for="Magento\Framework\GraphQl\Schema\SchemaGeneratorInterface" type="Magento\Framework\GraphQl\Schema\SchemaGenerator"/><preference for="Magento\Framework\GraphQl\Query\Resolver\ContextInterface" type="Magento\GraphQl\Model\Query\Resolver\Context"/><preference for="Magento\GraphQl\Model\Query\ContextInterface" type="Magento\GraphQl\Model\Query\Context"/><preference for="Magento\Framework\GraphQl\Schema\Type\Entity\MapperInterface" type="Magento\Framework\GraphQl\Schema\Type\Entity\DefaultMapper"/><preference for="Magento\Framework\GraphQl\Schema\Type\Enum\DataMapperInterface" type="Magento\Framework\GraphQl\Schema\Type\Enum\DefaultDataMapper"/><preference for="Magento\Framework\GraphQlSchemaStitching\GraphQlReader\TypeMetaReaderInterface" type="Magento\Framework\GraphQlSchemaStitching\GraphQlReader\TypeReaderComposite"/><preference for="Magento\GraphQl\Model\Query\ContextFactoryInterface" type="Magento\GraphQl\Model\Query\ContextFactory"/><preference for="Magento\GraphQl\Model\Query\ContextParametersInterface" type="Magento\GraphQl\Model\Query\ContextParameters"/><preference for="Magento\Framework\GraphQl\Query\Resolver\ArgumentsProcessorInterface" type="Magento\Framework\GraphQl\Query\Resolver\ArgumentsCompositeProcessor"/><preference for="Magento\GraphQl\Model\Query\Logger\LoggerInterface" type="Magento\GraphQl\Model\Query\Logger\LoggerPool"/><preference for="Magento\Framework\GraphQl\ConfigInterface" type="Magento\Framework\GraphQl\Config"/><preference for="Magento\Framework\GraphQl\Config\ConfigElementFactoryInterface" type="Magento\Framework\GraphQl\Config\ConfigElementFactory"/><type name="Magento\Framework\GraphQl\Config\ConfigElementFactory"> <arguments> <argument name="factoryMapByConfigElementType" xsi:type="array"> <item name="graphql_interface" xsi:type="object">Magento\Framework\GraphQl\Config\Element\InterfaceFactory</item> <item name="graphql_union" xsi:type="object">Magento\Framework\GraphQl\Config\Element\UnionFactory</item> <item name="graphql_type" xsi:type="object">Magento\Framework\GraphQl\Config\Element\TypeFactory</item> <item name="graphql_input" xsi:type="object">Magento\Framework\GraphQl\Config\Element\InputFactory</item> <item name="graphql_enum" xsi:type="object">Magento\Framework\GraphQl\Config\Element\EnumFactory</item> </argument> </arguments> </type><type name="Magento\Framework\GraphQl\Config"> <arguments> <argument name="data" xsi:type="object">Magento\Framework\GraphQl\Config\Data</argument> </arguments> </type><virtualType name="Magento\Framework\GraphQl\Config\Data" type="Magento\Framework\Config\Data"> <arguments> <argument name="reader" xsi:type="object">Magento\Framework\GraphQlSchemaStitching\Reader</argument> <argument name="cacheId" xsi:type="string">Magento_Framework_GraphQlSchemaStitching_Config_Data</argument> </arguments> </virtualType><virtualType name="Magento\Framework\GraphQl\Config\SchemaLocator" type="Magento\Framework\Config\SchemaLocator"> <arguments> <argument name="realPath" xsi:type="string">urn:magento:module:Magento_GraphQl:etc/graphql.xsd</argument> </arguments> </virtualType><virtualType name="Magento\Framework\GraphQlSchemaStitching\Reader" type="Magento\Framework\GraphQlSchemaStitching\Common\Reader"> <arguments> <argument name="readers" xsi:type="array"> <item name="graphql_reader" xsi:type="object">Magento\Framework\GraphQlSchemaStitching\GraphQlReader</item> <item name="productDynamicAttributeReader" xsi:type="object">Magento\CatalogGraphQl\Model\Config\AttributeReader</item><item name="categoryDynamicAttributeReader" xsi:type="object">Magento\CatalogGraphQl\Model\Config\CategoryAttributeReader</item><item name="productSortDynamicAttributeReader" xsi:type="object">Magento\CatalogGraphQl\Model\Config\SortAttributeReader</item><item name="productFilterDynamicAttributeReader" xsi:type="object">Magento\CatalogGraphQl\Model\Config\FilterAttributeReader</item></argument> </arguments> </virtualType><type name="Magento\Framework\GraphQl\Schema\Type\TypeRegistry"> <arguments> <argument name="configToTypeMap" xsi:type="array"> <item name="Magento\Framework\GraphQl\Config\Element\Type" xsi:type="string">Magento\Framework\GraphQl\Schema\Type\Output\OutputTypeObject</item> <item name="Magento\Framework\GraphQl\Config\Element\Input" xsi:type="string">Magento\Framework\GraphQl\Schema\Type\Input\InputObjectType</item> <item name="Magento\Framework\GraphQl\Config\Element\InterfaceType" xsi:type="string">Magento\Framework\GraphQl\Schema\Type\Output\OutputInterfaceObject</item> <item name="Magento\Framework\GraphQl\Config\Element\UnionType" xsi:type="string">Magento\Framework\GraphQl\Schema\Type\Output\OutputUnionObject</item> <item name="Magento\Framework\GraphQl\Config\Element\Enum" xsi:type="string">Magento\Framework\GraphQl\Schema\Type\Enum\Enum</item> </argument> </arguments> </type><type name="Magento\Framework\GraphQl\Schema\Type\Output\ElementMapper"> <arguments> <argument name="formatter" xsi:type="object">Magento\Framework\GraphQl\Schema\Type\Output\ElementMapper\FormatterComposite</argument> </arguments> </type><type name="Magento\Framework\GraphQl\Schema\Type\Output\ElementMapper\FormatterComposite"> <arguments> <argument name="formatters" xsi:type="array"> <item name="fields" xsi:type="object">Magento\Framework\GraphQl\Schema\Type\Output\ElementMapper\Formatter\Fields</item> <item name="interfaces" xsi:type="object">Magento\Framework\GraphQl\Schema\Type\Output\ElementMapper\Formatter\Interfaces</item> <item name="unions" xsi:type="object">Magento\Framework\GraphQl\Schema\Type\Output\ElementMapper\Formatter\Unions</item> <item name="resolveType" xsi:type="object">Magento\Framework\GraphQl\Schema\Type\Output\ElementMapper\Formatter\ResolveType</item> </argument> </arguments> </type><type name="Magento\Framework\GraphQlSchemaStitching\GraphQlReader\TypeReaderComposite"> <arguments> <argument name="typeReaders" xsi:type="array"> <item name="union_type" xsi:type="object">Magento\Framework\GraphQlSchemaStitching\GraphQlReader\Reader\UnionType</item> <item name="enum_type" xsi:type="object">Magento\Framework\GraphQlSchemaStitching\GraphQlReader\Reader\EnumType</item> <item name="object_type" xsi:type="object">Magento\Framework\GraphQlSchemaStitching\GraphQlReader\Reader\ObjectType</item> <item name="input_object_type" xsi:type="object">Magento\Framework\GraphQlSchemaStitching\GraphQlReader\Reader\InputObjectType</item> <item name="interface_type" xsi:type="object">Magento\Framework\GraphQlSchemaStitching\GraphQlReader\Reader\InterfaceType</item> </argument> </arguments> </type><type name="Magento\Framework\GraphQl\Query\QueryComplexityLimiter"> <arguments> <argument name="queryDepth" xsi:type="number">20</argument> <argument name="queryComplexity" xsi:type="number">300</argument> </arguments> </type><type name="Magento\GraphQl\Model\Query\Logger\LoggerPool"> <arguments> <argument name="loggers" xsi:type="array"> <item name="newRelic" xsi:type="object">Magento\GraphQl\Model\Query\Logger\NewRelic</item> </argument> </arguments> </type><type name="Magento\CatalogImportExport\Model\StockItemImporterInterface"> <plugin name="update_bundle_products_stock_item_status" type="Magento\BundleImportExport\Plugin\Import\Product\UpdateBundleProductsStockItemStatusPlugin" sortOrder="200" disabled="true"/> <plugin name="update_configurable_products_stock_item_status" type="Magento\ConfigurableImportExport\Plugin\Import\Product\UpdateConfigurableProductsStockItemStatusPlugin" sortOrder="100" disabled="true"/><plugin name="update_grouped_product_stock_status_plugin" type="Magento\GroupedImportExport\Plugin\CatalogImportExport\Model\StockItemImporter\UpdateGroupedProductStockStatusPlugin"/><plugin name="update_bundle_products_stock_item_status_single_source_only" type="Magento\InventoryBundleImportExport\Plugin\Import\Product\UpdateBundleProductsStockItemStatusPlugin" sortOrder="200"/><plugin name="updateConfigurableProductsStockItemStatusInventory" type="Magento\InventoryImportExport\Plugin\Import\UpdateConfigurableProductsPlugin" sortOrder="100"/><plugin name="importStockItemDataForSourceItem" type="Magento\InventoryImportExport\Plugin\Import\SourceItemImporter"/></type><type name="Magento\BundleImportExport\Model\Import\Product\Type\Bundle\RelationsDataSaver"> <plugin name="sequence_application" type="Magento\BundleImportExportStaging\Plugin\BundleImportExport\Model\Import\Product\Type\Bundle\RelationsDataSaver"/> </type><preference for="Magento\CatalogInventory\Api\Data\StockInterface" type="Magento\CatalogInventory\Model\Stock"/><preference for="Magento\CatalogInventory\Api\Data\StockItemInterface" type="Magento\CatalogInventory\Model\Stock\Item"/><preference for="Magento\CatalogInventory\Api\Data\StockStatusInterface" type="Magento\CatalogInventory\Model\Stock\Status"/><preference for="Magento\CatalogInventory\Api\Data\StockCollectionInterface" type="Magento\CatalogInventory\Model\ResourceModel\Stock\Collection"/><preference for="Magento\CatalogInventory\Api\Data\StockItemCollectionInterface" type="Magento\CatalogInventory\Model\ResourceModel\Stock\Item\Collection"/><preference for="Magento\CatalogInventory\Api\Data\StockStatusCollectionInterface" type="Magento\CatalogInventory\Model\ResourceModel\Stock\Status\Collection"/><preference for="Magento\CatalogInventory\Api\StockCriteriaInterface" type="Magento\CatalogInventory\Model\ResourceModel\Stock\StockCriteria"/><preference for="Magento\CatalogInventory\Api\StockItemCriteriaInterface" type="Magento\CatalogInventory\Model\ResourceModel\Stock\Item\StockItemCriteria"/><preference for="Magento\CatalogInventory\Api\StockStatusCriteriaInterface" type="Magento\CatalogInventory\Model\ResourceModel\Stock\Status\StockStatusCriteria"/><preference for="Magento\CatalogInventory\Api\StockConfigurationInterface" type="Magento\CatalogInventory\Model\Configuration"/><preference for="Magento\CatalogInventory\Api\StockManagementInterface" type="Magento\CatalogInventory\Model\StockManagement"/><preference for="Magento\CatalogInventory\Api\StockIndexInterface" type="Magento\CatalogInventory\Model\StockIndex"/><preference for="Magento\CatalogInventory\Api\StockRegistryInterface" type="Magento\CatalogInventory\Model\StockRegistry"/><preference for="Magento\CatalogInventory\Api\StockStateInterface" type="Magento\CatalogInventory\Model\StockState"/><preference for="Magento\CatalogInventory\Api\StockRepositoryInterface" type="Magento\CatalogInventory\Model\Stock\StockRepository"/><preference for="Magento\CatalogInventory\Api\StockItemRepositoryInterface" type="Magento\CatalogInventory\Model\Stock\StockItemRepository"/><preference for="Magento\CatalogInventory\Api\StockStatusRepositoryInterface" type="Magento\CatalogInventory\Model\Stock\StockStatusRepository"/><preference for="Magento\CatalogInventory\Model\Spi\StockRegistryProviderInterface" type="Magento\CatalogInventory\Model\StockRegistryProvider"/><preference for="Magento\CatalogInventory\Model\Spi\StockStateProviderInterface" type="Magento\CatalogInventory\Model\StockStateProvider"/><preference for="Magento\CatalogInventory\Model\ResourceModel\QtyCounterInterface" type="Magento\ScalableInventory\Model\ResourceModel\QtyCounterProxy"/><preference for="Magento\CatalogInventory\Model\ResourceModel\StockStatusFilterInterface" type="Magento\CatalogInventory\Model\ResourceModel\StockStatusFilter"/><preference for="Magento\CatalogInventory\Model\StockStatusApplierInterface" type="Magento\InventoryCatalog\Model\StockStatusApplier"/><type name="Magento\Catalog\Model\Product\Attribute\Repository"> <plugin name="filterCustomAttribute" type="Magento\CatalogInventory\Model\Plugin\FilterCustomAttribute"/> <plugin name="process_extension_attributes" type="Magento\PageBuilder\Plugin\Catalog\Model\Product\Attribute\RepositoryPlugin"/></type><type name="Magento\Catalog\Model\FilterProductCustomAttribute"> <arguments> <argument name="excludedList" xsi:type="array"> <item name="quantity_and_stock_status" xsi:type="string">quantity_and_stock_status</item> </argument> </arguments> </type><type name="Magento\CatalogInventory\Observer\UpdateItemsStockUponConfigChangeObserver"> <arguments> <argument name="resourceStockItem" xsi:type="object">Magento\CatalogInventory\Model\ResourceModel\Stock\Item\Proxy</argument> </arguments> </type><type name="Magento\Catalog\Block\Product\View"> <plugin name="quantityValidators" type="Magento\CatalogInventory\Block\Plugin\ProductView"/> </type><type name="Magento\CatalogInventory\Model\Configuration"> <arguments> <argument name="config" xsi:type="object">Magento\Catalog\Model\ProductTypes\Config\Proxy</argument> </arguments> <plugin name="out_of_stock_plugin" type="Magento\CatalogInventoryStaging\Model\Plugin\Configuration"/></type><type name="Magento\CatalogInventory\Setup\UpgradeData"> <arguments> <argument name="indexerProcessor" xsi:type="object">Magento\CatalogInventory\Model\Indexer\Stock\Processor</argument> </arguments> </type><virtualType name="Magento\CatalogInventory\Model\Indexer\Stock\BatchSizeManagement" type="Magento\Framework\Indexer\BatchSizeManagement"> <arguments> <argument name="rowSizeEstimator" xsi:type="object">Magento\CatalogInventory\Model\ResourceModel\Indexer\Stock\IndexTableRowSizeEstimator</argument> </arguments> </virtualType><virtualType name="Magento\CatalogInventory\Model\ResourceModel\Indexer\Stock\IndexTableRowSizeEstimator" type="Magento\Framework\Indexer\IndexTableRowSizeEstimator"> <arguments> <argument name="rowMemorySize" xsi:type="number">100</argument> </arguments> </virtualType><type name="Magento\Catalog\Controller\Adminhtml\Product\Action\Attribute\Save"> <plugin name="massAction" type="Magento\CatalogInventory\Plugin\MassUpdateProductAttribute" disabled="true"/> <plugin name="inventoryUpdate" type="Magento\InventoryCatalog\Plugin\Catalog\Controller\Adminhtml\Product\Action\Attribute\Save\ProcessInventoryPlugin"/></type><type name="Magento\CatalogInventory\Model\ResourceModel\Indexer\Stock\GetStatusExpression"> <arguments> <argument name="statusExpressions" xsi:type="array"> <item name="default" xsi:type="object">Magento\InventoryCatalog\Model\ResourceModel\StockStatusExpressionForDefaultStock</item> <item name="bundle" xsi:type="object">Magento\CatalogInventory\Model\ResourceModel\Indexer\Stock\StatusExpression\DefaultExpression</item><item name="grouped" xsi:type="object">Magento\CatalogInventory\Model\ResourceModel\Indexer\Stock\StatusExpression\DefaultExpression</item></argument> </arguments> </type><virtualType name="Magento\Checkout\Model\Session\Storage" type="Magento\Framework\Session\Storage"> <arguments> <argument name="namespace" xsi:type="string">checkout</argument> </arguments> </virtualType><type name="Magento\Checkout\Model\Session"> <arguments> <argument name="storage" xsi:type="object">Magento\Checkout\Model\Session\Storage</argument> </arguments> </type><preference for="Magento\Checkout\Api\GuestShippingInformationManagementInterface" type="Magento\Checkout\Model\GuestShippingInformationManagement"/><preference for="Magento\Checkout\Api\ShippingInformationManagementInterface" type="Magento\Checkout\Model\ShippingInformationManagement"/><preference for="Magento\Checkout\Api\Data\ShippingInformationInterface" type="Magento\Checkout\Model\ShippingInformation"/><preference for="Magento\Checkout\Api\Data\PaymentDetailsInterface" type="Magento\Checkout\Model\PaymentDetails"/><preference for="Magento\Checkout\Api\GuestPaymentInformationManagementInterface" type="Magento\Checkout\Model\GuestPaymentInformationManagement"/><preference for="Magento\Checkout\Api\PaymentInformationManagementInterface" type="Magento\Checkout\Model\PaymentInformationManagement"/><preference for="Magento\Checkout\Api\Data\TotalsInformationInterface" type="Magento\Checkout\Model\TotalsInformation"/><preference for="Magento\Checkout\Api\GuestTotalsInformationManagementInterface" type="Magento\Checkout\Model\GuestTotalsInformationManagement"/><preference for="Magento\Checkout\Api\TotalsInformationManagementInterface" type="Magento\Checkout\Model\TotalsInformationManagement"/><preference for="Magento\Checkout\Api\AgreementsValidatorInterface" type="Magento\CheckoutAgreements\Model\AgreementsValidator"/><preference for="Magento\Checkout\Model\Cart\RequestInfoFilterInterface" type="Magento\Checkout\Model\Cart\RequestInfoFilterComposite"/><type name="Magento\Checkout\Model\Cart\RequestInfoFilter"> <arguments> <argument name="filterList" xsi:type="array"> <item name="form_key" xsi:type="string">form_key</item> </argument> </arguments> </type><type name="Magento\Checkout\Model\Cart\RequestInfoFilterComposite"> <arguments> <argument name="filters" xsi:type="array"> <item name="filter" xsi:type="object">Magento\Checkout\Model\Cart\RequestInfoFilter</item> </argument> </arguments> </type><preference for="Magento\Checkout\Api\PaymentProcessingRateLimiterInterface" type="Magento\Checkout\Model\CaptchaPaymentProcessingRateLimiter"/><preference for="Magento\Checkout\Api\PaymentSavingRateLimiterInterface" type="Magento\Checkout\Model\CaptchaPaymentSavingRateLimiter"/><preference for="Magento\CardinalCommerce\Model\Response\JwtPayloadValidatorInterface" type="Magento\CardinalCommerce\Model\Response\JwtPayloadValidator"/><preference for="Magento\CardinalCommerce\Model\Response\JwtParserInterface" type="Magento\CardinalCommerce\Model\Response\JwtParser"/><type name="Magento\AdvancedCatalog\Model\Indexer\Table\Strategy" shared="false"/><preference for="Magento\Security\Model\ConfigInterface" type="Magento\Security\Model\Config"/><type name="Magento\Security\Model\SecurityManager"> <arguments> <argument name="securityCheckers" xsi:type="array"> <item name="frequency" xsi:type="object">Magento\Security\Model\SecurityChecker\Frequency</item> <item name="quantity" xsi:type="object">Magento\Security\Model\SecurityChecker\Quantity</item> </argument> </arguments> </type><preference for="Magento\Security\Api\Data\UserExpirationInterface" type="Magento\Security\Model\UserExpiration"/><preference for="Magento\Search\Api\SearchInterface" type="Magento\Search\Model\Search"/><preference for="Magento\Framework\Search\EngineResolverInterface" type="Magento\Search\Model\EngineResolver"/><preference for="Magento\Search\Model\QueryFactoryInterface" type="Magento\Search\Model\QueryFactory"/><preference for="Magento\Search\Model\QueryInterface" type="Magento\Search\Model\Query"/><preference for="Magento\Search\Api\SynonymAnalyzerInterface" type="Magento\Search\Model\SynonymAnalyzer"/><type name="Magento\Search\Model\EngineResolver"> <arguments> <argument name="path" xsi:type="string">catalog/search/engine</argument> <argument name="scopeType" xsi:type="string">default</argument> <argument name="engines" xsi:type="array"> <item name="elasticsearch5" xsi:type="string">elasticsearch5</item> <item name="elasticsearch6" xsi:type="string">elasticsearch6</item><item name="elasticsearch7" xsi:type="string">elasticsearch7</item></argument><argument name="defaultEngine" xsi:type="string">elasticsearch7</argument></arguments> </type><preference for="Magento\Search\Model\AutocompleteInterface" type="Magento\Search\Model\Autocomplete"/><preference for="Magento\Search\Model\Autocomplete\ItemInterface" type="Magento\Search\Model\Autocomplete\Item"/><preference for="Magento\Framework\Search\SearchEngineInterface" type="Magento\Search\Model\SearchEngine"/><virtualType name="Magento\Search\Model\ResourceModel\Synonyms\Grid\Collection" type="Magento\Framework\View\Element\UiComponent\DataProvider\SearchResult"> <arguments> <argument name="name" xsi:type="string">search_synonyms_grid_data_source</argument> <argument name="primaryFieldName" xsi:type="string">group_id</argument> <argument name="requestFieldName" xsi:type="string">id</argument> <argument name="mainTable" xsi:type="string">search_synonyms</argument> <argument name="resourceModel" xsi:type="string">Magento\Search\Model\ResourceModel\SynonymGroup</argument> </arguments> </virtualType><preference for="Magento\Search\Api\Data\SynonymGroupInterface" type="Magento\Search\Model\SynonymGroup"/><preference for="Magento\Search\Api\SynonymGroupRepositoryInterface" type="Magento\Search\Model\SynonymGroupRepository"/><preference for="Magento\Framework\Search\Adapter\Preprocessor\PreprocessorInterface" type="Magento\Search\Adapter\Query\Preprocessor\Synonyms"/><preference for="Magento\Framework\Search\SearchEngine\ConfigInterface" type="Magento\Search\Model\SearchEngine\Config"/><type name="Magento\Search\Model\SearchEngine\Config"> <arguments> <argument name="dataStorage" xsi:type="object">Magento\Search\Model\SearchEngine\Config\Data</argument> </arguments> </type><preference for="Magento\Search\Setup\InstallConfigInterface" type="Magento\Search\Setup\CompositeInstallConfig"/><preference for="Magento\Search\Model\SearchEngine\ValidatorInterface" type="Magento\Search\Model\SearchEngine\Validator"/><type name="Magento\SalesArchive\Model\Observer"> <arguments> <argument name="config" xsi:type="object">Magento\SalesArchive\Model\Config\Proxy</argument> <argument name="backendData" xsi:type="object">Magento\Backend\Helper\Data\Proxy</argument> </arguments> </type><type name="Magento\SalesArchive\Model\ResourceModel\Order\Collection"> <arguments> <argument name="mainTable" xsi:type="string">magento_sales_order_grid_archive</argument> <argument name="resourceModel" xsi:type="string">Magento\Sales\Model\ResourceModel\Order</argument> </arguments> </type><virtualType name="Magento\SalesArchive\Model\ResourceModel\Order\Invoice\Collection" type="Magento\Framework\View\Element\UiComponent\DataProvider\SearchResult"> <arguments> <argument name="mainTable" xsi:type="string">magento_sales_invoice_grid_archive</argument> <argument name="resourceModel" xsi:type="string">Magento\Sales\Model\ResourceModel\Order\Invoice</argument> </arguments> </virtualType><virtualType name="Magento\SalesArchive\Model\ResourceModel\Order\Shipment\Collection" type="Magento\Framework\View\Element\UiComponent\DataProvider\SearchResult"> <arguments> <argument name="mainTable" xsi:type="string">magento_sales_shipment_grid_archive</argument> <argument name="resourceModel" xsi:type="string">Magento\Sales\Model\ResourceModel\Order\Shipment</argument> </arguments> </virtualType><virtualType name="Magento\SalesArchive\Model\ResourceModel\Order\Creditmemo\Collection" type="Magento\Framework\View\Element\UiComponent\DataProvider\SearchResult"> <arguments> <argument name="mainTable" xsi:type="string">magento_sales_creditmemo_grid_archive</argument> <argument name="resourceModel" xsi:type="string">Magento\Sales\Model\ResourceModel\Order\Creditmemo</argument> </arguments> </virtualType><type name="Magento\Sales\Model\ResourceModel\Provider\Query\IdListBuilder"> <plugin name="process_archive_entities" type="Magento\SalesArchive\Plugin\ArchivedEntitiesProcessorPlugin"/> </type><virtualType name="Magento\SalesArchive\Model\ResourceModel\Order\Grid" type="Magento\Sales\Model\ResourceModel\Grid"> <arguments> <argument name="mainTableName" xsi:type="string">sales_order</argument> <argument name="gridTableName" xsi:type="string">magento_sales_order_grid_archive</argument> <argument name="orderIdField" xsi:type="string">sales_order.entity_id</argument> <argument name="joins" xsi:type="array"> <item name="sales_shipping_address" xsi:type="array"> <item name="table" xsi:type="string">sales_order_address</item> <item name="origin_column" xsi:type="string">shipping_address_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_billing_address" xsi:type="array"> <item name="table" xsi:type="string">sales_order_address</item> <item name="origin_column" xsi:type="string">billing_address_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_order_payment" xsi:type="array"> <item name="table" xsi:type="string">sales_order_payment</item> <item name="origin_column" xsi:type="string">entity_id</item> <item name="target_column" xsi:type="string">parent_id</item> </item> </argument> <argument name="columns" xsi:type="array"> <item name="entity_id" xsi:type="string">sales_order.entity_id</item> <item name="status" xsi:type="string">sales_order.status</item> <item name="store_id" xsi:type="string">sales_order.store_id</item> <item name="store_name" xsi:type="string">sales_order.store_name</item> <item name="customer_id" xsi:type="string">sales_order.customer_id</item> <item name="base_grand_total" xsi:type="string">sales_order.base_grand_total</item> <item name="base_total_paid" xsi:type="string">sales_order.base_total_paid</item> <item name="grand_total" xsi:type="string">sales_order.grand_total</item> <item name="total_paid" xsi:type="string">sales_order.total_paid</item> <item name="increment_id" xsi:type="string">sales_order.increment_id</item> <item name="base_currency_code" xsi:type="string">sales_order.base_currency_code</item> <item name="order_currency_code" xsi:type="string">sales_order.order_currency_code</item> <item name="shipping_name" xsi:type="object">ShippingNameAggregator</item> <item name="billing_name" xsi:type="object">BillingNameAggregator</item> <item name="created_at" xsi:type="string">sales_order.created_at</item> <item name="updated_at" xsi:type="string">sales_order.updated_at</item> <item name="billing_address" xsi:type="object">BillingAddressAggregator</item> <item name="shipping_address" xsi:type="object">ShippingAddressAggregator</item> <item name="shipping_information" xsi:type="string">sales_order.shipping_description</item> <item name="customer_email" xsi:type="string">sales_order.customer_email</item> <item name="customer_group" xsi:type="string">sales_order.customer_group_id</item> <item name="subtotal" xsi:type="string">sales_order.base_subtotal</item> <item name="shipping_and_handling" xsi:type="string">sales_order.base_shipping_amount</item> <item name="customer_name" xsi:type="object">CustomerNameAggregator</item> <item name="payment_method" xsi:type="string">sales_order_payment.method</item> <item name="total_refunded" xsi:type="string">sales_order.total_refunded</item> <item name="refunded_to_store_credit" xsi:type="string">sales_order.customer_bal_total_refunded</item></argument> </arguments> </virtualType><virtualType name="Magento\SalesArchive\Model\ResourceModel\Order\Invoice\Grid" type="Magento\Sales\Model\ResourceModel\Grid"> <arguments> <argument name="mainTableName" xsi:type="string">sales_invoice</argument> <argument name="gridTableName" xsi:type="string">magento_sales_invoice_grid_archive</argument> <argument name="orderIdField" xsi:type="string">sales_invoice.order_id</argument> <argument name="joins" xsi:type="array"> <item name="sales_order" xsi:type="array"> <item name="table" xsi:type="string">sales_order</item> <item name="origin_column" xsi:type="string">order_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_shipping_address" xsi:type="array"> <item name="table" xsi:type="string">sales_order_address</item> <item name="origin_column" xsi:type="string">shipping_address_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_billing_address" xsi:type="array"> <item name="table" xsi:type="string">sales_order_address</item> <item name="origin_column" xsi:type="string">billing_address_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_order_payment" xsi:type="array"> <item name="table" xsi:type="string">sales_order_payment</item> <item name="origin_column" xsi:type="string">order_id</item> <item name="target_column" xsi:type="string">parent_id</item> </item> </argument> <argument name="columns" xsi:type="array"> <item name="entity_id" xsi:type="string">sales_invoice.entity_id</item> <item name="increment_id" xsi:type="string">sales_invoice.increment_id</item> <item name="state" xsi:type="string">sales_invoice.state</item> <item name="store_id" xsi:type="string">sales_invoice.store_id</item> <item name="store_name" xsi:type="string">sales_order.store_name</item> <item name="order_id" xsi:type="string">sales_invoice.order_id</item> <item name="order_increment_id" xsi:type="string">sales_order.increment_id</item> <item name="order_created_at" xsi:type="string">sales_order.created_at</item> <item name="customer_name" xsi:type="object">CustomerNameAggregator</item> <item name="customer_email" xsi:type="string">sales_order.customer_email</item> <item name="customer_group_id" xsi:type="string">sales_order.customer_group_id</item> <item name="payment_method" xsi:type="string">sales_order_payment.method</item> <item name="store_currency_code" xsi:type="string">sales_invoice.store_currency_code</item> <item name="order_currency_code" xsi:type="string">sales_invoice.order_currency_code</item> <item name="base_currency_code" xsi:type="string">sales_invoice.base_currency_code</item> <item name="global_currency_code" xsi:type="string">sales_invoice.global_currency_code</item> <item name="billing_name" xsi:type="object">BillingNameAggregator</item> <item name="billing_address" xsi:type="object">BillingAddressAggregator</item> <item name="shipping_address" xsi:type="object">ShippingAddressAggregator</item> <item name="shipping_information" xsi:type="string">sales_order.shipping_description</item> <item name="subtotal" xsi:type="string">sales_order.base_subtotal</item> <item name="shipping_and_handling" xsi:type="string">sales_order.base_shipping_amount</item> <item name="base_grand_total" xsi:type="string">sales_invoice.base_grand_total</item> <item name="grand_total" xsi:type="string">sales_invoice.grand_total</item> <item name="created_at" xsi:type="string">sales_invoice.created_at</item> <item name="updated_at" xsi:type="string">sales_invoice.updated_at</item> </argument> </arguments> </virtualType><virtualType name="Magento\SalesArchive\Model\ResourceModel\Order\Shipment\Grid" type="Magento\Sales\Model\ResourceModel\Grid"> <arguments> <argument name="mainTableName" xsi:type="string">sales_shipment</argument> <argument name="gridTableName" xsi:type="string">magento_sales_shipment_grid_archive</argument> <argument name="orderIdField" xsi:type="string">sales_shipment.order_id</argument> <argument name="joins" xsi:type="array"> <item name="sales_order" xsi:type="array"> <item name="table" xsi:type="string">sales_order</item> <item name="origin_column" xsi:type="string">order_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_shipping_address" xsi:type="array"> <item name="table" xsi:type="string">sales_order_address</item> <item name="origin_column" xsi:type="string">shipping_address_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_billing_address" xsi:type="array"> <item name="table" xsi:type="string">sales_order_address</item> <item name="origin_column" xsi:type="string">billing_address_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_order_payment" xsi:type="array"> <item name="table" xsi:type="string">sales_order_payment</item> <item name="origin_column" xsi:type="string">order_id</item> <item name="target_column" xsi:type="string">parent_id</item> </item> </argument> <argument name="columns" xsi:type="array"> <item name="entity_id" xsi:type="string">sales_shipment.entity_id</item> <item name="increment_id" xsi:type="string">sales_shipment.increment_id</item> <item name="store_id" xsi:type="string">sales_shipment.store_id</item> <item name="order_increment_id" xsi:type="string">sales_order.increment_id</item> <item name="order_created_at" xsi:type="string">sales_order.created_at</item> <item name="customer_name" xsi:type="object">CustomerNameAggregator</item> <item name="total_qty" xsi:type="string">sales_shipment.total_qty</item> <item name="shipment_status" xsi:type="string">sales_shipment.shipment_status</item> <item name="order_status" xsi:type="string">sales_order.status</item> <item name="billing_address" xsi:type="object">BillingAddressAggregator</item> <item name="shipping_address" xsi:type="object">ShippingAddressAggregator</item> <item name="billing_name" xsi:type="object">BillingNameAggregator</item> <item name="shipping_name" xsi:type="object">ShippingNameAggregator</item> <item name="customer_email" xsi:type="string">sales_order.customer_email</item> <item name="customer_group_id" xsi:type="string">sales_order.customer_group_id</item> <item name="payment_method" xsi:type="string">sales_order_payment.method</item> <item name="created_at" xsi:type="string">sales_shipment.created_at</item> <item name="updated_at" xsi:type="string">sales_shipment.updated_at</item> <item name="order_id" xsi:type="string">sales_shipment.order_id</item> <item name="shipping_information" xsi:type="string">sales_order.shipping_description</item> </argument> </arguments> </virtualType><virtualType name="Magento\SalesArchive\Model\ResourceModel\Order\Creditmemo\Grid" type="Magento\Sales\Model\ResourceModel\Grid"> <arguments> <argument name="mainTableName" xsi:type="string">sales_creditmemo</argument> <argument name="gridTableName" xsi:type="string">magento_sales_creditmemo_grid_archive</argument> <argument name="orderIdField" xsi:type="string">sales_creditmemo.order_id</argument> <argument name="joins" xsi:type="array"> <item name="sales_shipping_address" xsi:type="array"> <item name="table" xsi:type="string">sales_order_address</item> <item name="origin_column" xsi:type="string">shipping_address_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_billing_address" xsi:type="array"> <item name="table" xsi:type="string">sales_order_address</item> <item name="origin_column" xsi:type="string">billing_address_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_order" xsi:type="array"> <item name="table" xsi:type="string">sales_order</item> <item name="origin_column" xsi:type="string">order_id</item> <item name="target_column" xsi:type="string">entity_id</item> </item> <item name="sales_order_payment" xsi:type="array"> <item name="table" xsi:type="string">sales_order_payment</item> <item name="origin_column" xsi:type="string">order_id</item> <item name="target_column" xsi:type="string">parent_id</item> </item> </argument> <argument name="columns" xsi:type="array"> <item name="entity_id" xsi:type="string">sales_creditmemo.entity_id</item> <item name="increment_id" xsi:type="string">sales_creditmemo.increment_id</item> <item name="created_at" xsi:type="string">sales_creditmemo.created_at</item> <item name="updated_at" xsi:type="string">sales_creditmemo.updated_at</item> <item name="order_id" xsi:type="string">sales_order.entity_id</item> <item name="order_increment_id" xsi:type="string">sales_order.increment_id</item> <item name="order_created_at" xsi:type="string">sales_order.created_at</item> <item name="billing_name" xsi:type="object">BillingNameAggregator</item> <item name="state" xsi:type="string">sales_creditmemo.state</item> <item name="base_grand_total" xsi:type="string">sales_creditmemo.base_grand_total</item> <item name="order_status" xsi:type="string">sales_order.status</item> <item name="store_id" xsi:type="string">sales_creditmemo.store_id</item> <item name="billing_address" xsi:type="object">BillingAddressAggregator</item> <item name="shipping_address" xsi:type="object">ShippingAddressAggregator</item> <item name="customer_name" xsi:type="object">CustomerNameAggregator</item> <item name="customer_email" xsi:type="string">sales_order.customer_email</item> <item name="customer_group_id" xsi:type="string">sales_order.customer_group_id</item> <item name="payment_method" xsi:type="string">sales_order_payment.method</item> <item name="shipping_information" xsi:type="string">sales_order.shipping_description</item> <item name="subtotal" xsi:type="string">sales_creditmemo.subtotal</item> <item name="shipping_and_handling" xsi:type="string">sales_creditmemo.shipping_amount</item> <item name="adjustment_positive" xsi:type="string">sales_creditmemo.adjustment_positive</item> <item name="adjustment_negative" xsi:type="string">sales_creditmemo.adjustment_negative</item> <item name="order_base_grand_total" xsi:type="string">sales_order.base_grand_total</item> </argument> </arguments> </virtualType><virtualType name="SalesArchiveOrderIndexGridSyncInsert" type="Magento\SalesArchive\Observer\GridSyncInsertObserver"> <arguments> <argument name="entityGrid" xsi:type="object">Magento\SalesArchive\Model\ResourceModel\Order\Grid</argument> </arguments> </virtualType><virtualType name="SalesArchiveInvoiceIndexGridSyncInsert" type="Magento\SalesArchive\Observer\GridSyncInsertObserver"> <arguments> <argument name="entityGrid" xsi:type="object">Magento\SalesArchive\Model\ResourceModel\Order\Invoice\Grid</argument> </arguments> </virtualType><virtualType name="SalesArchiveShipmentIndexGridSyncInsert" type="Magento\SalesArchive\Observer\GridSyncInsertObserver"> <arguments> <argument name="entityGrid" xsi:type="object">Magento\SalesArchive\Model\ResourceModel\Order\Shipment\Grid</argument> </arguments> </virtualType><virtualType name="SalesArchiveCreditmemoIndexGridSyncInsert" type="Magento\SalesArchive\Observer\GridSyncInsertObserver"> <arguments> <argument name="entityGrid" xsi:type="object">Magento\SalesArchive\Model\ResourceModel\Order\Creditmemo\Grid</argument> </arguments> </virtualType><preference for="Magento\CatalogImportExport\Model\Export\RowCustomizerInterface" type="Magento\CatalogImportExport\Model\Export\RowCustomizer\Composite"/><preference for="Magento\CatalogImportExport\Model\StockItemImporterInterface" type="Magento\CatalogImportExport\Model\StockItemImporter"/><preference for="Magento\CatalogImportExport\Model\Export\ProductFilterInterface" type="Magento\CatalogImportExport\Model\Export\ProductFilters"/><type name="Magento\ImportExport\Model\Import"> <plugin name="catalogProductFlatIndexerImport" type="Magento\CatalogImportExport\Model\Indexer\Product\Flat\Plugin\Import"/> <plugin name="invalidatePriceIndexerOnImport" type="Magento\CatalogImportExport\Model\Indexer\Product\Price\Plugin\Import"/> <plugin name="invalidateStockIndexerOnImport" type="Magento\CatalogImportExport\Model\Indexer\Stock\Plugin\Import"/> <plugin name="invalidateEavIndexerOnImport" type="Magento\CatalogImportExport\Model\Indexer\Product\Eav\Plugin\Import"/> <plugin name="invalidateProductCategoryIndexerOnImport" type="Magento\CatalogImportExport\Model\Indexer\Product\Category\Plugin\Import"/> <plugin name="invalidateCategoryProductIndexerOnImport" type="Magento\CatalogImportExport\Model\Indexer\Category\Product\Plugin\Import"/> <plugin name="targetRuleImportInvalidate" type="Magento\TargetRule\Model\Indexer\TargetRule\Plugin\Import"/><arguments> <argument name="filesystem" xsi:type="object">fullRemoteFilesystem</argument> </arguments><plugin name="catalogPermissionImport" type="Magento\CatalogPermissions\Model\Indexer\Plugin\Import"/></type><type name="Magento\CatalogImportExport\Model\Import\Product\StockProcessor"> <arguments> <argument name="indexers" xsi:type="array"> <item name="cataloginventory_stock" xsi:type="null"/> </argument> </arguments> </type><type name="Magento\CatalogImportExport\Model\Import\Product\Validator"> <arguments> <argument name="validators" xsi:type="array"> <item name="media" xsi:type="object">Magento\CatalogImportExport\Model\Import\Product\Validator\Media</item> <item name="superProductsSku" xsi:type="object">Magento\CatalogImportExport\Model\Import\Product\Validator\SuperProductsSku</item> <item name="tierPrice" xsi:type="object">Magento\CatalogImportExport\Model\Import\Product\Validator\TierPrice</item> <item name="website" xsi:type="object">Magento\CatalogImportExport\Model\Import\Product\Validator\Website</item> <item name="weight" xsi:type="object">Magento\CatalogImportExport\Model\Import\Product\Validator\Weight</item> <item name="quantity" xsi:type="object">Magento\CatalogImportExport\Model\Import\Product\Validator\Quantity</item> <item name="layout_update" xsi:type="object">Magento\CatalogImportExport\Model\Import\Product\Validator\LayoutUpdate</item> <item name="layout_update_permissions" xsi:type="object">Magento\CatalogImportExport\Model\Import\Product\Validator\LayoutUpdatePermissions</item> </argument> </arguments> </type><type name="Magento\CatalogImportExport\Model\Import\Product\Validator\LayoutUpdate"> <arguments> <argument name="validationState" xsi:type="object">Magento\Framework\Config\ValidationState\Required</argument> </arguments> </type><type name="Magento\CatalogImportExport\Model\Export\ProductFilters"> <arguments> <argument name="filters" xsi:type="array"> <item name="category_ids" xsi:type="object">Magento\CatalogImportExport\Model\Export\Product\CategoryFilter</item> <item name="quantity_and_stock_status" xsi:type="object">Magento\CatalogImportExport\Model\Export\Product\StockStatusFilter</item> <item name="website_ids" xsi:type="object">Magento\CatalogImportExport\Model\Export\Product\WebsiteFilter</item> </argument> </arguments> </type><type name="Magento\CatalogImportExport\Model\Import\Product\LinkProcessor"> <arguments> <argument name="linkNameToId" xsi:type="array"> <item name="_related_" xsi:type="const">Magento\Catalog\Model\Product\Link::LINK_TYPE_RELATED</item> <item name="_crosssell_" xsi:type="const">Magento\Catalog\Model\Product\Link::LINK_TYPE_CROSSSELL</item> <item name="_upsell_" xsi:type="const">Magento\Catalog\Model\Product\Link::LINK_TYPE_UPSELL</item> </argument> </arguments> </type><type name="Magento\CatalogImportExport\Model\Import\Product"> <plugin name="staging-import-products" type="Magento\CatalogImportExportStaging\Model\Import\ProductPlugin"/> <arguments> <argument name="filesystem" xsi:type="object">fullRemoteFilesystem</argument> </arguments></type><preference for="Magento\Framework\Search\Adapter\OptionsInterface" type="Magento\CatalogSearch\Model\Adapter\Options"/><preference for="Magento\CatalogSearch\Model\Indexer\IndexSwitcherInterface" type="Magento\CatalogSearch\Model\Indexer\IndexSwitcherProxy"/><preference for="Magento\CatalogSearch\Model\Adapter\Aggregation\RequestCheckerInterface" type="Magento\CatalogSearch\Model\Adapter\Aggregation\RequestCheckerComposite"/><preference for="Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection\SearchCriteriaResolverInterface" type="Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection\SearchCriteriaResolver"/><preference for="Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection\SearchResultApplierInterface" type="Magento\Elasticsearch\Model\ResourceModel\Fulltext\Collection\SearchResultApplier"/><preference for="Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection\TotalRecordsResolverInterface" type="Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection\TotalRecordsResolver"/><preference for="Magento\CatalogSearch\Model\Search\ItemCollectionProviderInterface" type="Magento\CatalogSearch\Model\Search\ItemCollectionProvider"/><preference for="Magento\Framework\Indexer\IndexStructureInterface" type="Magento\CatalogSearch\Model\Indexer\IndexStructure"/><preference for="Magento\CatalogSearch\Model\Search\Request\ModifierInterface" type="Magento\CatalogSearch\Model\Search\Request\ModifierComposite"/><type name="Magento\Catalog\Model\ResourceModel\Category"> <plugin name="catalogsearchFulltextCategory" type="Magento\CatalogSearch\Model\Indexer\Fulltext\Plugin\Category"/> <plugin name="category_move_plugin" type="Magento\CatalogUrlRewrite\Model\Category\Plugin\Category\Move"/><plugin name="category_delete_plugin" type="Magento\CatalogUrlRewrite\Model\Category\Plugin\Category\Remove"/><plugin name="update_url_path_for_different_stores" type="Magento\CatalogUrlRewrite\Model\Category\Plugin\Category\UpdateUrlPath"/></type><type name="Magento\Catalog\Model\Indexer\Product\Category\Action\Rows"> <plugin name="catalogsearchFulltextCategoryAssignment" type="Magento\CatalogSearch\Model\Indexer\Fulltext\Plugin\Product\Category\Action\Rows"/> </type><type name="Magento\Catalog\Model\ResourceModel\Attribute"> <plugin name="catalogsearchFulltextIndexerAttribute" type="Magento\CatalogSearch\Model\Indexer\Fulltext\Plugin\Attribute"/> <plugin name="catalogsearchAttributeSearchWeightCache" type="Magento\CatalogSearch\Model\Attribute\SearchWeight"/> <plugin name="updateElasticsearchIndexerMapping" type="Magento\Elasticsearch\Model\Indexer\Fulltext\Plugin\Category\Product\Attribute"/></type><type name="Magento\Framework\Search\EntityMetadata"/><virtualType name="Magento\Framework\Search\ProductEntityMetadata" type="Magento\Framework\Search\EntityMetadata"> <arguments> <argument name="entityId" xsi:type="string">entity_id</argument> </arguments> </virtualType><type name="Magento\Framework\Search\Request\Config\FilesystemReader"> <plugin name="catalogSearchDynamicFields" type="Magento\CatalogSearch\Model\Search\ReaderPlugin"/> <plugin name="productAttributesDynamicFields" type="Magento\CatalogGraphQl\Plugin\Search\Request\ConfigReader"/></type><preference for="Magento\Search\Model\SearchCollectionInterface" type="Magento\CatalogSearch\Model\ResourceModel\Search\Collection"/><type name="Magento\Catalog\Model\Layer\Search\CollectionFilter"> <plugin name="searchQuery" type="Magento\CatalogSearch\Model\Layer\Search\Plugin\CollectionFilter"/> </type><virtualType name="Magento\CatalogSearch\Model\ResourceModel\Fulltext\CollectionFactory" type="Magento\Catalog\Model\ResourceModel\Product\CollectionFactory"> <arguments> <argument name="instanceName" xsi:type="string">Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection</argument> </arguments> </virtualType><type name="Magento\CatalogSearch\Model\Layer\Category\ItemCollectionProvider"> <arguments> <argument name="collectionFactory" xsi:type="object">Magento\CatalogSearch\Model\ResourceModel\Fulltext\CollectionFactory</argument> </arguments> </type><virtualType name="Magento\CatalogSearch\Model\ResourceModel\Fulltext\SearchCollection" type="Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection"> <arguments> <argument name="searchRequestName" xsi:type="string">quick_search_container</argument> </arguments> </virtualType><virtualType name="Magento\CatalogSearch\Model\ResourceModel\Fulltext\SearchCollectionFactory" type="Magento\Catalog\Model\ResourceModel\Product\CollectionFactory"> <arguments> <argument name="instanceName" xsi:type="string">Magento\CatalogSearch\Model\ResourceModel\Fulltext\SearchCollection</argument> </arguments> </virtualType><virtualType name="Magento\CatalogSearch\Model\Layer\Search\ItemCollectionProvider" type="Magento\Catalog\Model\Layer\Search\ItemCollectionProvider"> <arguments> <argument name="collectionFactory" xsi:type="object">Magento\CatalogSearch\Model\ResourceModel\Fulltext\SearchCollectionFactory</argument> </arguments> </virtualType><virtualType name="Magento\CatalogSearch\Model\Advanced\ItemCollectionProvider" type="Magento\Catalog\Model\Layer\Search\ItemCollectionProvider"> <arguments> <argument name="collectionFactory" xsi:type="object">Magento\CatalogSearch\Model\ResourceModel\Advanced\CollectionFactory</argument> </arguments> </virtualType><virtualType name="Magento\CatalogSearch\Model\ResourceModel\Advanced\CollectionFactory" type="Magento\Catalog\Model\ResourceModel\Product\CollectionFactory"> <arguments> <argument name="instanceName" xsi:type="string">Magento\CatalogSearch\Model\ResourceModel\Advanced\Collection</argument> </arguments> </virtualType><type name="Magento\CatalogSearch\Model\Advanced"> <arguments> <argument name="productCollectionFactory" xsi:type="object">Magento\CatalogSearch\Model\ResourceModel\Advanced\CollectionFactory</argument> <argument name="collectionProvider" xsi:type="object">Magento\CatalogSearch\Model\Search\ItemCollectionProviderInterface</argument> </arguments> </type><virtualType name="Magento\CatalogSearch\Model\Layer\Category\Context" type="Magento\Catalog\Model\Layer\Category\Context"> <arguments> <argument name="collectionProvider" xsi:type="object">Magento\CatalogSearch\Model\Layer\Category\ItemCollectionProvider</argument> </arguments> </virtualType><virtualType name="Magento\CatalogSearch\Model\Layer\Search\Context" type="Magento\Catalog\Model\Layer\Search\Context"> <arguments> <argument name="collectionProvider" xsi:type="object">Magento\CatalogSearch\Model\Layer\Search\ItemCollectionProvider</argument> <argument name="stateKey" xsi:type="object">Magento\CatalogSearch\Model\Layer\Search\StateKey</argument> </arguments> </virtualType><type name="Magento\Search\Model\Autocomplete"> <arguments> <argument name="dataProviders" xsi:type="array"> <item name="10" xsi:type="object">Magento\CatalogSearch\Model\Autocomplete\DataProvider</item> </argument> </arguments> </type><type name="Magento\Framework\Search\Adapter\Aggregation\AggregationResolver"> <arguments> <argument name="resolvers" xsi:type="array"> <item name="catalogsearch_fulltext" xsi:type="object">Magento\CatalogSearch\Model\Adapter\Aggregation\AggregationResolver</item> </argument> </arguments> </type><type name="Magento\CatalogSearch\Model\Search\RequestGenerator\GeneratorResolver"> <arguments> <argument name="defaultGenerator" xsi:type="object">\Magento\CatalogSearch\Model\Search\RequestGenerator\General</argument> <argument name="generators" xsi:type="array"> <item name="decimal" xsi:type="object">Magento\CatalogSearch\Model\Search\RequestGenerator\Decimal</item> </argument> </arguments> </type><type name="Magento\CatalogSearch\Model\Adapter\Aggregation\RequestCheckerComposite"> <arguments> <argument name="queryCheckers" xsi:type="array"> <item name="advanced_search_container" xsi:type="object">\Magento\CatalogSearch\Model\Adapter\Aggregation\Checker\Query\AdvancedSearch</item> <item name="catalog_view_container" xsi:type="object">\Magento\CatalogSearch\Model\Adapter\Aggregation\Checker\Query\CatalogView</item> </argument> </arguments> </type><type name="Magento\CatalogSearch\Model\Adapter\Aggregation\Checker\Query\AdvancedSearch"> <arguments> <argument name="name" xsi:type="string">advanced_search_container</argument> </arguments> </type><type name="Magento\CatalogSearch\Model\Adapter\Aggregation\Checker\Query\CatalogView"> <arguments> <argument name="name" xsi:type="string">catalog_view_container</argument> </arguments> </type><type name="Magento\CatalogSearch\Model\Indexer\Fulltext"> <arguments> <argument name="dimensionProvider" xsi:type="object" shared="false"> Magento\Store\Model\StoreDimensionProvider </argument> </arguments> </type><type name="Magento\CatalogSearch\Model\Indexer\Fulltext\Action\DataProvider"> <plugin name="stockedProductsFilterPlugin" type="Magento\CatalogSearch\Model\Indexer\Plugin\StockedProductsFilterPlugin" disabled="true"/> <plugin name="stockedProductFilterByInventoryStockPlugin" type="Magento\InventoryElasticsearch\Plugin\CatalogSearch\Model\Indexer\Fulltext\Action\DataProvider\StockedProductFilterByInventoryStock"/></type><type name="Magento\CatalogSearch\Model\Indexer\Fulltext\Action\Full"> <arguments> <!-- @deprecated parameter indexIteratorFactory has been deprecated and not in use now --> <argument name="indexIteratorFactory" xsi:type="null"/> </arguments> </type><type name="Magento\CatalogSearch\Model\ResourceModel\Advanced\Collection"> <arguments> <!-- @deprecated parameter requestBuilder has been deprecated and not in use now --> <argument name="requestBuilder" xsi:type="null"/> <!-- @deprecated parameter searchEngine has been deprecated and not in use now --> <argument name="searchEngine" xsi:type="null"/> <!-- @deprecated parameter temporaryStorageFactory has been deprecated and not in use now --> <argument name="temporaryStorageFactory" xsi:type="null"/> </arguments> <plugin name="add_catalog_permissions_information" type="Magento\ElasticsearchCatalogPermissions\Plugin\AddCategoryPermissionsToCollection"/></type><type name="Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection"> <arguments> <!-- @deprecated parameter catalogSearchData has been deprecated and not in use now --> <argument name="catalogSearchData" xsi:type="null"/> <!-- @deprecated parameter requestBuilder has been deprecated and not in use now --> <argument name="requestBuilder" xsi:type="null"/> <!-- @deprecated parameter searchEngine has been deprecated and not in use now --> <argument name="searchEngine" xsi:type="null"/> <!-- @deprecated parameter temporaryStorageFactory has been deprecated and not in use now --> <argument name="temporaryStorageFactory" xsi:type="null"/> </arguments> <plugin name="can_show_price_in_layered_navigation_plugin" type="Magento\CatalogPermissions\Plugin\CatalogSearch\Model\ResourceModel\Fulltext\Collection"/><plugin name="loadPreview" type="Magento\CatalogStaging\Model\Plugin\ResourceModel\Product\Fulltext\Collection"/><plugin name="add_catalog_permissions_information" type="Magento\ElasticsearchCatalogPermissions\Plugin\AddCategoryPermissionsToFulltextCollection"/></type><type name="Magento\CatalogSearch\Model\Search\Request\ModifierComposite"> <arguments> <argument name="modifiers" xsi:type="array"> <item name="search" xsi:type="object">Magento\CatalogSearch\Model\Search\Request\SearchModifier</item> <item name="partial_search" xsi:type="object">Magento\CatalogSearch\Model\Search\Request\PartialSearchModifier</item> <item name="match_queries" xsi:type="object">Magento\CatalogSearch\Model\Search\Request\MatchQueriesModifier</item> </argument> </arguments> </type><type name="Magento\CatalogSearch\Model\Search\Request\MatchQueriesModifier"> <arguments> <argument name="queries" xsi:type="array"> <item name="partial_search" xsi:type="array"> <item name="name" xsi:type="array"> <item name="analyzer" xsi:type="string">prefix_search</item> </item> <item name="sku" xsi:type="array"> <item name="analyzer" xsi:type="string">sku_prefix_search</item> </item> </item> </argument> </arguments> </type><type name="Magento\Catalog\Block\Widget\Link"> <arguments> <argument name="urlFinder" xsi:type="object">Magento\CatalogUrlRewrite\Model\Storage\DbStorage</argument> </arguments> </type><type name="Magento\Catalog\Model\Product\Url"> <arguments> <argument name="urlFinder" xsi:type="object">Magento\CatalogUrlRewrite\Model\Storage\DbStorage</argument> </arguments> </type><type name="Magento\UrlRewrite\Model\StorageInterface"> <plugin name="storage_plugin" type="Magento\CatalogUrlRewrite\Model\Category\Plugin\Storage"/> </type><type name="Magento\CatalogUrlRewrite\Model\Storage\DbStorage"> <plugin name="dynamic_storage_plugin" type="Magento\CatalogUrlRewrite\Plugin\DynamicCategoryRewrites"/> </type><type name="Magento\CatalogUrlRewrite\Model\Map\UrlRewriteFinder"> <arguments> <argument name="urlRewriteClassNames" xsi:type="array"> <item name="product" xsi:type="string">Magento\CatalogUrlRewrite\Model\Map\DataProductUrlRewriteDatabaseMap</item> <item name="category" xsi:type="string">Magento\CatalogUrlRewrite\Model\Map\DataCategoryUrlRewriteDatabaseMap</item> </argument> </arguments> </type><type name="Magento\UrlRewrite\Model\CompositeUrlFinder"> <arguments> <argument name="children" xsi:type="array"> <item name="catalog" xsi:type="array"> <item name="class" xsi:type="string">Magento\CatalogUrlRewrite\Model\Storage\DbStorage</item> <item name="sortOrder" xsi:type="number">20</item> </item> <item name="default" xsi:type="array"> <item name="class" xsi:type="string">Magento\UrlRewrite\Model\Storage\DbStorage</item> <item name="sortOrder" xsi:type="number">10</item> </item></argument> </arguments> </type><type name="Magento\UrlRewrite\Model\UrlRewrite"> <arguments> <argument name="entityToCacheTagMap" xsi:type="array"> <item name="product" xsi:type="const">Magento\Catalog\Model\Product::CACHE_TAG</item> <item name="category" xsi:type="const">Magento\Catalog\Model\Category::CACHE_TAG</item> <item name="cms-page" xsi:type="const">Magento\Cms\Model\Page::CACHE_TAG</item></argument> </arguments> </type><preference for="Magento\Framework\View\Element\UiComponent\ContainerInterface" type="Magento\Ui\Component\Wrapper\UiComponent"/><preference for="Magento\Framework\View\Element\UiComponent\Control\ActionPoolInterface" type="Magento\Ui\Component\Control\ActionPool"/><preference for="Magento\Framework\Data\Argument\InterpreterInterface" type="Magento\Framework\Data\Argument\Interpreter\Composite"/><preference for="Magento\Framework\Config\ConverterInterface" type="Magento\Framework\View\Element\UiComponent\Config\Converter"/><preference for="Magento\Framework\View\Element\UiComponent\Config\ManagerInterface" type="Magento\Ui\Model\Manager"/><preference for="Magento\Framework\View\Element\UiComponent\ContextInterface" type="Magento\Framework\View\Element\UiComponent\Context"/><preference for="Magento\Framework\View\Element\UiComponent\LayoutInterface" type="Magento\Framework\View\Layout\Generic"/><preference for="Magento\Ui\Api\Data\BookmarkSearchResultsInterface" type="Magento\Ui\Model\BookmarkSearchResults"/><preference for="Magento\Ui\Api\BookmarkRepositoryInterface" type="Magento\Ui\Model\ResourceModel\BookmarkRepository"/><preference for="Magento\Ui\Api\Data\BookmarkInterface" type="Magento\Ui\Model\Bookmark"/><preference for="Magento\Ui\Api\BookmarkManagementInterface" type="Magento\Ui\Model\BookmarkManagement"/><preference for="Magento\Framework\View\TemplateEngine\Xhtml\ResultInterface" type="Magento\Ui\TemplateEngine\Xhtml\Result"/><preference for="Magento\Framework\Api\Search\ReportingInterface" type="Magento\Framework\View\Element\UiComponent\DataProvider\Reporting"/><preference for="Magento\Ui\Config\ConverterInterface" type="Magento\Ui\Config\Converter\Composite"/><preference for="Magento\Ui\Config\Argument\ParserInterface" type="Magento\Ui\Config\Argument\Parser\Composite"/><preference for="Magento\Ui\DataProvider\Modifier\PoolInterface" type="Magento\Ui\DataProvider\Modifier\Pool"/><type name="Magento\Ui\TemplateEngine\Xhtml\Result" shared="false"/><type name="Magento\Framework\View\Element\UiComponent\TemplateAdapter" shared="false"/><type name="Magento\Framework\View\TemplateEngine\Xhtml"> <arguments> <argument name="compilerFactory" xsi:type="object">Magento\Framework\View\TemplateEngine\Xhtml\UiCompilerFactory</argument> </arguments> </type><type name="Magento\Framework\View\Element\UiComponent\ContentType\ContentTypeFactory"> <arguments> <argument name="types" xsi:type="array"> <item name="html" xsi:type="string">Magento\Framework\View\Element\UiComponent\ContentType\Html</item> <item name="json" xsi:type="string">Magento\Framework\View\Element\UiComponent\ContentType\Json</item> <item name="xml" xsi:type="string">Magento\Framework\View\Element\UiComponent\ContentType\Xml</item> </argument> </arguments> </type><type name="Magento\Framework\View\TemplateEngine\Xhtml\Compiler\Text"> <arguments> <argument name="directivePool" xsi:type="array"> <item name="variable" xsi:type="object">Magento\Framework\View\TemplateEngine\Xhtml\Compiler\Directive\Variable</item> <item name="callableMethod" xsi:type="object">Magento\Framework\View\TemplateEngine\Xhtml\Compiler\Directive\CallableMethod</item> </argument> </arguments> </type><type name="Magento\Framework\View\TemplateEngine\Xhtml\Compiler\Attribute"> <arguments> <argument name="directivePool" xsi:type="array"> <item name="variable" xsi:type="object">Magento\Framework\View\TemplateEngine\Xhtml\Compiler\Directive\Variable</item> <item name="callableMethod" xsi:type="object">Magento\Framework\View\TemplateEngine\Xhtml\Compiler\Directive\CallableMethod</item> </argument> </arguments> </type><virtualType name="Magento\Framework\View\TemplateEngine\Xhtml\UiCompilerFactory" type="Magento\Framework\View\TemplateEngine\Xhtml\CompilerFactory"> <arguments> <argument name="instanceName" xsi:type="string">Magento\Framework\View\TemplateEngine\Xhtml\UiCompiler</argument> </arguments> </virtualType><virtualType name="Magento\Framework\View\TemplateEngine\Xhtml\UiCompiler" type="Magento\Framework\View\TemplateEngine\Xhtml\Compiler" shared="false"> <arguments> <argument name="compilerText" xsi:type="object">Magento\Framework\View\TemplateEngine\Xhtml\Compiler\Text</argument> <argument name="compilerAttribute" xsi:type="object">Magento\Framework\View\TemplateEngine\Xhtml\Compiler\Attribute</argument> <argument name="compilerCdata" xsi:type="object">Magento\Framework\View\TemplateEngine\Xhtml\Compiler\Cdata</argument> <argument name="compilerComment" xsi:type="object">Magento\Framework\View\TemplateEngine\Xhtml\Compiler\Comment</argument> <argument name="elementCompilers" xsi:type="array"> <item name="render" xsi:type="object">Magento\Ui\TemplateEngine\Xhtml\Compiler\Element\Render</item> <item name="content" xsi:type="object">Magento\Ui\TemplateEngine\Xhtml\Compiler\Element\Content</item> <item name="form" xsi:type="object">Magento\Ui\TemplateEngine\Xhtml\Compiler\Element\Form</item> </argument> </arguments> </virtualType><virtualType name="uiConfigurationDomMerger" type="Magento\Framework\View\Element\UiComponent\Config\DomMerger"> <arguments> <argument name="schema" xsi:type="string">urn:magento:module:Magento_Ui:etc/ui_configuration.xsd</argument> <argument name="contextXPath" xsi:type="array"> <item name="ui_context" xsi:type="string">/</item> </argument> <argument name="idAttributes" xsi:type="array"> <item name="attribute_name" xsi:type="string">name</item> </argument> </arguments> </virtualType><type name="Magento\Ui\Config\Reader\Definition"> <arguments> <argument name="fileName" xsi:type="string">etc/definition.xml</argument> <argument name="converter" xsi:type="object">Magento\Ui\Config\Converter</argument> <argument name="fileResolver" xsi:type="object">Magento\Ui\Config\Reader\FileResolver</argument> <argument name="schemaLocator" xsi:type="object">Magento\Ui\Config\Reader\Definition\SchemaLocator</argument> <argument name="idAttributes" xsi:type="array"> <item name="/components/(.*)/argument" xsi:type="string">name</item> <item name="/components/(.*)/argument(/item)+" xsi:type="string">name</item> </argument> </arguments> </type><type name="Magento\Ui\Config\Reader\DefinitionMap"> <arguments> <argument name="fileName" xsi:type="string">etc/definition.map.xml</argument> <argument name="converter" xsi:type="object">Magento\Ui\Config\Reader\DefinitionMap\Converter</argument> <argument name="fileResolver" xsi:type="object">Magento\Ui\Config\Reader\FileResolver</argument> <argument name="schemaLocator" xsi:type="object">Magento\Ui\Config\Reader\DefinitionMap\SchemaLocator</argument> <argument name="idAttributes" xsi:type="array"> <item name="/components/component" xsi:type="string">name</item> </argument> </arguments> </type><virtualType name="Magento\Ui\Config\Definition\Data" type="Magento\Framework\Config\Data"> <arguments> <argument name="reader" xsi:type="object">Magento\Ui\Config\Reader\Definition</argument> <argument name="cacheId" xsi:type="string">ui_component_definition_data_new</argument> </arguments> </virtualType><virtualType name="Magento\Ui\Config\DefinitionMap\Data" type="Magento\Framework\Config\Data"> <arguments> <argument name="reader" xsi:type="object">Magento\Ui\Config\Reader\DefinitionMap</argument> <argument name="cacheId" xsi:type="string">ui_component_definition_map_data</argument> </arguments> </virtualType><type name="Magento\Ui\Config\Converter"> <arguments> <argument name="reader" xsi:type="object">Magento\Ui\Config\Reader\DefinitionMap</argument> <argument name="parser" xsi:type="object">Magento\Ui\Config\Argument\Parser\Composite</argument> </arguments> </type><type name="Magento\Ui\Config\Reader"> <arguments> <argument name="converter" xsi:type="object">Magento\Ui\Config\Converter</argument> <argument name="fileResolver" xsi:type="object">Magento\Ui\Config\Reader\FileResolver</argument> </arguments> </type><type name="Magento\Ui\Config\Reader\Dom"> <arguments> <argument name="schemaLocator" xsi:type="object">Magento\Ui\Config\Reader\SchemaLocator</argument> </arguments> </type><type name="Magento\Ui\Model\Manager"> <arguments> <argument name="domMerger" xsi:type="object">uiConfigurationDomMerger</argument> </arguments> </type><virtualType name="uiTemplateDomMerger" type="Magento\Framework\View\Element\UiComponent\Config\DomMerger"> <arguments> <argument name="schema" xsi:type="string">urn:magento:module:Magento_Ui:etc/ui_template.xsd</argument> <argument name="contextXPath" xsi:type="array"> <item name="ui_context" xsi:type="string">/</item> </argument> <argument name="idAttributes" xsi:type="array"> <item name="attribute_name" xsi:type="string">name</item> <item name="attribute_id" xsi:type="string">id</item> </argument> </arguments> </virtualType><type name="Magento\Framework\View\Element\UiComponent\Config\Provider\Template"> <arguments> <argument name="domMerger" xsi:type="object">uiTemplateDomMerger</argument> </arguments> </type><virtualType name="uiDefinitionDomMerger" type="Magento\Framework\View\Element\UiComponent\Config\DomMerger"> <arguments> <argument name="schema" xsi:type="string">urn:magento:module:Magento_Ui:etc/ui_definition.xsd</argument> <argument name="contextXPath" xsi:type="array"> <item name="ui_context" xsi:type="string">/components</item> </argument> <argument name="idAttributes" xsi:type="array"> <item name="attribute_name" xsi:type="string">name</item> </argument> <argument name="isMergeSimpleXMLElement" xsi:type="boolean">true</argument> </arguments> </virtualType><virtualType name="uiDefinitionFileCollector" type="Magento\Framework\View\Element\UiComponent\Config\FileCollector\AggregatedFileCollector"> <arguments> <argument name="searchPattern" xsi:type="string">etc/definition.xml</argument> </arguments> </virtualType><virtualType name="uiDefinitionReader" type="Magento\Framework\View\Element\UiComponent\Config\Reader"> <arguments> <argument name="fileCollector" xsi:type="object">uiDefinitionFileCollector</argument> <argument name="domMerger" xsi:type="object">uiDefinitionDomMerger</argument> </arguments> </virtualType><type name="Magento\Framework\View\Element\UiComponent\Config\Provider\Component\Definition"> <arguments> <argument name="uiReader" xsi:type="object">uiDefinitionReader</argument> </arguments> </type><type name="Magento\Framework\View\Element\UiComponent\DataProvider\FilterPool"> <arguments> <argument name="appliers" xsi:type="array"> <item name="regular" xsi:type="object">Magento\Framework\View\Element\UiComponent\DataProvider\RegularFilter</item> <item name="fulltext" xsi:type="object">Magento\Framework\View\Element\UiComponent\DataProvider\FulltextFilter</item> </argument> </arguments> </type><type name="Magento\Framework\View\Layout\Pool"> <arguments> <argument name="types" xsi:type="array"> <item name="generic" xsi:type="array"> <item name="class" xsi:type="string">Magento\Framework\View\Layout\Generic</item> <item name="template" xsi:type="string">templates/layout/generic</item> </item> <item name="tabs" xsi:type="array"> <item name="class" xsi:type="string">Magento\Ui\Component\Layout\Tabs</item> <item name="template" xsi:type="string">templates/layout/tabs</item> </item> </argument> </arguments> </type><type name="Magento\Framework\View\Layout\Generic"> <arguments> <argument name="data" xsi:type="array"> <item name="config" xsi:type="array"> <item name="component" xsi:type="string">Magento_Ui/js/form/components/html</item> <item name="componentName" xsi:type="string">html_content</item> <item name="panelComponentName" xsi:type="string">fieldset</item> </item> </argument> </arguments> </type><type name="Magento\Ui\Component\Layout\Tabs"> <arguments> <argument name="data" xsi:type="array"> <item name="config" xsi:type="array"> <item name="component" xsi:type="string">Magento_Ui/js/form/components/html</item> <item name="componentName" xsi:type="string">html_content</item> </item> </argument> </arguments> </type><virtualType name="arrayArgumentInterpreterProxy" type="Magento\Framework\Data\Argument\InterpreterInterface\Proxy"> <arguments> <argument name="instanceName" xsi:type="string">Magento\Framework\Data\Argument\Interpreter\ArrayType</argument> </arguments> </virtualType><virtualType name="configurableObjectArgumentInterpreterProxy" type="Magento\Framework\Data\Argument\InterpreterInterface\Proxy"> <arguments> <argument name="instanceName" xsi:type="string">Magento\Framework\View\Element\UiComponent\Argument\Interpreter\ConfigurableObject</argument> </arguments> </virtualType><type name="Magento\Framework\View\Element\UiComponent\Config\FileCollector\AggregatedFileCollector"> <arguments> <argument name="collectorAggregated" xsi:type="object">uiComponentAggregatedCollector</argument> </arguments> </type><virtualType name="uiComponentAggregatedCollector" type="Magento\Framework\View\Layout\File\Collector\Aggregated"> <arguments> <argument name="baseFiles" xsi:type="object">uiComponentAggregatedSourceBaseSorted</argument> <argument name="themeFiles" xsi:type="object">uiComponentAggregatedSourceThemeSorted</argument> <argument name="overrideBaseFiles" xsi:type="object">uiComponentAggregatedSourceOverrideBaseSorted</argument> <argument name="overrideThemeFiles" xsi:type="object">uiComponentAggregatedSourceOverrideThemeSorted</argument> </arguments> </virtualType><virtualType name="uiComponentAggregatedSourceBase" type="Magento\Framework\View\File\Collector\Base"> <arguments> <argument name="subDir" xsi:type="string">ui_component</argument> </arguments> </virtualType><virtualType shared="false" name="uiComponentAggregatedSourceBaseFiltered" type="Magento\Framework\View\File\Collector\Decorator\ModuleOutput"> <arguments> <argument name="subject" xsi:type="object">uiComponentAggregatedSourceBase</argument> </arguments> </virtualType><virtualType name="uiComponentAggregatedSourceBaseSorted" type="Magento\Framework\View\File\Collector\Decorator\ModuleDependency"> <arguments> <argument name="subject" xsi:type="object">uiComponentAggregatedSourceBaseFiltered</argument> </arguments> </virtualType><virtualType name="uiComponentAggregatedSourceTheme" type="Magento\Framework\View\File\Collector\ThemeModular"> <arguments> <argument name="subDir" xsi:type="string">ui_component</argument> </arguments> </virtualType><virtualType name="uiComponentAggregatedSourceThemeFiltered" type="Magento\Framework\View\File\Collector\Decorator\ModuleOutput"> <arguments> <argument name="subject" xsi:type="object">uiComponentAggregatedSourceTheme</argument> </arguments> </virtualType><virtualType name="uiComponentAggregatedSourceThemeSorted" type="Magento\Framework\View\File\Collector\Decorator\ModuleDependency"> <arguments> <argument name="subject" xsi:type="object">uiComponentAggregatedSourceThemeFiltered</argument> </arguments> </virtualType><virtualType name="uiComponentAggregatedSourceOverrideBase" type="Magento\Framework\View\File\Collector\Override\Base"> <arguments> <argument name="subDir" xsi:type="string">layout/override/base</argument> </arguments> </virtualType><virtualType name="uiComponentAggregatedSourceOverrideBaseFiltered" type="Magento\Framework\View\File\Collector\Decorator\ModuleOutput"> <arguments> <argument name="subject" xsi:type="object">uiComponentAggregatedSourceOverrideBase</argument> </arguments> </virtualType><virtualType name="uiComponentAggregatedSourceOverrideBaseSorted" type="Magento\Framework\View\File\Collector\Decorator\ModuleDependency"> <arguments> <argument name="subject" xsi:type="object">uiComponentAggregatedSourceOverrideBaseFiltered</argument> </arguments> </virtualType><virtualType name="uiComponentAggregatedSourceOverrideTheme" type="Magento\Framework\View\File\Collector\Override\ThemeModular"> <arguments> <argument name="subDir" xsi:type="string">layout/override/theme</argument> </arguments> </virtualType><virtualType name="uiComponentAggregatedSourceOverrideThemeFiltered" type="Magento\Framework\View\File\Collector\Decorator\ModuleOutput"> <arguments> <argument name="subject" xsi:type="object">uiComponentAggregatedSourceOverrideTheme</argument> </arguments> </virtualType><virtualType name="uiComponentAggregatedSourceOverrideThemeSorted" type="Magento\Framework\View\File\Collector\Decorator\ModuleDependency"> <arguments> <argument name="subject" xsi:type="object">uiComponentAggregatedSourceOverrideThemeFiltered</argument> </arguments> </virtualType><virtualType name="uiComponentConfigFactory" type="Magento\Framework\Config\DataInterfaceFactory"> <arguments> <argument xsi:type="string" name="instanceName">Magento\Ui\Config\Data</argument> </arguments> </virtualType><type name="Magento\Framework\View\Layout\Reader\UiComponent"> <arguments> <argument name="uiConfigFactory" xsi:type="object">uiComponentConfigFactory</argument> </arguments> </type><virtualType name="uiComponentMapFactory" type="Magento\Framework\Config\DataInterfaceFactory"> <arguments> <argument xsi:type="string" name="instanceName">Magento\Ui\Config\Data</argument> </arguments> </virtualType><type name="Magento\Framework\View\Element\UiComponentFactory"> <arguments> <argument name="componentChildFactories" xsi:type="array"> <item name="Magento\Ui\Component\HtmlContent" xsi:type="object">Magento\Framework\View\Element\UiComponent\Factory\HtmlContentFactory\Proxy</item> </argument> <argument name="configFactory" xsi:type="object">uiComponentConfigFactory</argument> <argument name="definitionData" xsi:type="object">Magento\Ui\Config\Reader\Definition\Data</argument> <argument name="componentManager" xsi:type="object">Magento\Ui\Model\Manager\Proxy</argument> </arguments> </type><type name="Magento\Ui\Config\Argument\Parser\ArrayType"> <arguments> <argument name="itemParser" xsi:type="object">Magento\Ui\Config\Argument\Parser\Composite\Proxy</argument> </arguments> </type><type name="Magento\Ui\Config\Argument\Parser\ConfigurableObjectType"> <arguments> <argument name="argumentParser" xsi:type="object">Magento\Ui\Config\Argument\Parser\Composite\Proxy</argument> </arguments> </type><type name="Magento\Ui\Config\Argument\Parser\Composite"> <arguments> <argument name="parsers" xsi:type="array"> <item name="array" xsi:type="object">Magento\Ui\Config\Argument\Parser\ArrayType</item> <item name="configurableObject" xsi:type="object">Magento\Ui\Config\Argument\Parser\ConfigurableObjectType</item> <item name="xpath" xsi:type="object">Magento\Ui\Config\Argument\Parser\XpathType</item> <item name="converter" xsi:type="object">Magento\Ui\Config\Argument\Parser\ConverterType</item> </argument> <argument name="discriminator" xsi:type="string">xsi:type</argument> </arguments> </type><virtualType name="Magento\Ui\Config\Converter\Item\Proxy" type="Magento\Ui\Config\ConverterInterface\Proxy"> <arguments> <argument name="instanceName" xsi:type="string">Magento\Ui\Config\Converter\Item</argument> </arguments> </virtualType><virtualType name="Magento\Ui\Config\Converter\Buttons\Proxy" type="Magento\Ui\Config\ConverterInterface\Proxy"> <arguments> <argument name="instanceName" xsi:type="string">Magento\Ui\Config\Converter\Buttons</argument> </arguments> </virtualType><virtualType name="Magento\Ui\Config\Converter\Actions\Proxy" type="Magento\Ui\Config\ConverterInterface\Proxy"> <arguments> <argument name="instanceName" xsi:type="string">Magento\Ui\Config\Converter\Actions</argument> </arguments> </virtualType><virtualType name="Magento\Ui\Config\Converter\StorageConfig\Proxy" type="Magento\Ui\Config\ConverterInterface\Proxy"> <arguments> <argument name="instanceName" xsi:type="string">Magento\Ui\Config\Converter\StorageConfig</argument> </arguments> </virtualType><type name="Magento\Ui\Config\Converter\Composite"> <arguments> <argument name="converters" xsi:type="array"> <item name="item" xsi:type="object">Magento\Ui\Config\Converter\Item\Proxy</item> <item name="url" xsi:type="object">Magento\Ui\Config\Converter\Url</item> <item name="deps" xsi:type="object">Magento\Ui\Config\Converter\Deps</item> <item name="buttons" xsi:type="object">Magento\Ui\Config\Converter\Buttons\Proxy</item> <item name="storageConfig" xsi:type="object">Magento\Ui\Config\Converter\StorageConfig\Proxy</item> <item name="communication" xsi:type="object">Magento\Ui\Config\Converter\Communication</item> <item name="htmlContent" xsi:type="object">Magento\Ui\Config\Converter\HtmlContent</item> <item name="additionalClasses" xsi:type="object">Magento\Ui\Config\Converter\AdditionalClasses</item> <item name="options" xsi:type="object">Magento\Ui\Config\Converter\Options</item> <item name="actions" xsi:type="object">Magento\Ui\Config\Converter\Actions\Proxy</item> <item name="urlTypes" xsi:type="object">Magento\Ui\Config\Converter\Actions\Proxy</item> </argument> <argument name="discriminator" xsi:type="string">type</argument> </arguments> </type><type name="Magento\Ui\Model\UiComponentTypeResolver"> <arguments> <argument name="uiComponentTypeMap" xsi:type="array"> <item name="html" xsi:type="string">text/html</item> <item name="json" xsi:type="string">application/json</item> <item name="xml" xsi:type="string">application/xml</item> </argument> </arguments> </type><preference for="Magento\CustomerCustomAttributes\Model\Customer\TemporaryFileStorageInterface" type="Magento\CustomerCustomAttributes\Model\Customer\TemporaryFileSessionStorage"/><type name="Magento\CustomerCustomAttributes\Helper\Data"> <arguments> <argument name="customerAddress" xsi:type="object">Magento\CustomerCustomAttributes\Helper\Address\Proxy</argument> <argument name="customerCustomer" xsi:type="object">Magento\CustomerCustomAttributes\Helper\Customer\Proxy</argument> </arguments> </type><type name="Magento\CustomerCustomAttributes\Model\ResourceModel\Sales\Order"> <arguments> <argument name="connectionName" xsi:type="string">sales</argument> </arguments> </type><type name="Magento\CustomerCustomAttributes\Model\ResourceModel\Sales\Order\Address"> <arguments> <argument name="connectionName" xsi:type="string">sales</argument> </arguments> </type><type name="Magento\Checkout\Block\Checkout\LayoutProcessor"> <arguments> <argument name="options" xsi:type="object">Magento\CustomerCustomAttributes\Model\Options</argument> </arguments> </type><type name="Magento\Sales\Block\Adminhtml\Order\Create\Form\Address"> <arguments> <argument name="options" xsi:type="object">Magento\CustomerCustomAttributes\Model\Options</argument> </arguments> </type><type name="Magento\Quote\Model\Quote\Address\ToOrderAddress"> <plugin name="convertQuoteAddressToOrderAddress" type="Magento\CustomerCustomAttributes\Model\Plugin\ConvertQuoteAddressToOrderAddress"/> <plugin name="gift_registry_quote_address_to_order_address" type="Magento\GiftRegistry\Model\Plugin\ConvertQuoteAddressToOrderAddress"/></type><type name="Magento\Customer\Block\Widget\Name"> <plugin name="formatPrefixSuffixOptions" type="Magento\CustomerCustomAttributes\Plugin\FormatPrefixSuffixOptions"/> </type><type name="Magento\Customer\Model\Address"> <plugin name="updateDataCustomerAddress" type="Magento\CustomerCustomAttributes\Model\Plugin\AddCustomAttributesToCustomerAddress"/> </type><virtualType name="OrderAddressRelationsComposite" type="Magento\Framework\Model\ResourceModel\Db\VersionControl\RelationComposite"> <arguments> <argument name="relationProcessors" xsi:type="array"> <item name="save_customer_custom_attributes" xsi:type="object">Magento\CustomerCustomAttributes\Model\ResourceModel\Sales\Address\Relation</item> </argument> </arguments> </virtualType><type name="Magento\Sales\Model\ResourceModel\Order\Address"> <arguments> <argument name="entityRelationComposite" xsi:type="object">OrderAddressRelationsComposite</argument> </arguments> </type><type name="Magento\Framework\Webapi\ServiceInputProcessor"> <arguments> <argument name="customAttributePreprocessors" xsi:type="array"> <item name="file_processor" xsi:type="object">Magento\CustomerCustomAttributes\Model\Customer\Address\Attributes\Preprocessor\File</item> <item name="multiselect_processor" xsi:type="object">Magento\CustomerCustomAttributes\Model\Customer\Address\Attributes\Preprocessor\Multiselect</item> </argument> </arguments> </type><type name="Magento\CustomerCustomAttributes\Block\Checkout\LayoutProcessor"> <arguments> <argument name="merger" xsi:type="object">Magento\CustomerCustomAttributes\Block\Checkout\AttributeMerger</argument> </arguments> </type><type name="Magento\CustomAttributeManagement\Block\Form"> <plugin name="set_customer_custom_attribute_for_company" type="Magento\CustomerCustomAttributes\Plugin\Customer\Block\Form\CustomerCustomAttributePlugin"/> </type><type name="Magento\Checkout\Api\PaymentInformationManagementInterface"> <plugin name="process_billing_custom_customer_attributes" type="Magento\CustomerCustomAttributes\Model\Plugin\ProcessCustomerBillingAddressCustomAttributes"/> <plugin name="validate-agreements" type="Magento\CheckoutAgreements\Model\Checkout\Plugin\Validation"/><plugin name="disable-place-order" type="Magento\CheckoutStaging\Plugin\PaymentInformationManagementPlugin"/><plugin name="ProcessPaymentVaultInformationManagement" type="Magento\Vault\Plugin\PaymentVaultInformationManagement"/><plugin name="AdyenPaymentInformationResetOrderId" type="Adyen\Payment\Plugin\PaymentInformationResetOrderId" sortOrder="10"/></type><type name="Magento\Checkout\Api\ShippingInformationManagementInterface"> <plugin name="process_shipping_custom_customer_attributes" type="Magento\CustomerCustomAttributes\Model\Plugin\ProcessCustomerShippingAddressCustomAttributes"/> <plugin name="gift_registry_save_address" type="Magento\GiftRegistry\Model\Plugin\SaveAddress"/></type><type name="Magento\Checkout\Api\GuestPaymentInformationManagementInterface"> <plugin name="process_billing_custom_guest_attributes" type="Magento\CustomerCustomAttributes\Model\Plugin\ProcessGuestBillingAddressCustomAttributes"/> <plugin name="validate-guest-agreements" type="Magento\CheckoutAgreements\Model\Checkout\Plugin\GuestValidation"/><plugin name="disable-guest-place-order" type="Magento\CheckoutStaging\Plugin\GuestPaymentInformationManagementPlugin"/><plugin name="GuestAdyenPaymentInformationResetOrderId" type="Adyen\Payment\Plugin\GuestPaymentInformationResetOrderId" sortOrder="10"/></type><type name="Magento\Checkout\Api\GuestShippingInformationManagementInterface"> <plugin name="process_shipping_custom_guest_attributes" type="Magento\CustomerCustomAttributes\Model\Plugin\ProcessGuestShippingAddressCustomAttributes"/> </type><type name="Magento\CustomerCustomAttributes\Model\CustomerAddressCustomAttributesProcessor"> <arguments> <argument name="processors" xsi:type="array"> <item name="array_type_of_value" xsi:type="object"> Magento\CustomerCustomAttributes\Model\Customer\Address\Attributes\Processors\ArrayTypeOfValue </item> </argument> </arguments> </type><virtualType name="CustomerFileAttribute" type="Magento\CustomerCustomAttributes\ViewModel\FileAttribute"> <arguments> <argument name="uploadUrl" xsi:type="string">customer_custom_attributes/customer_file/upload</argument> <argument name="entityType" xsi:type="string">customer</argument> <argument name="downloadUrl" xsi:type="string">customer_custom_attributes/index/viewfile</argument> </arguments> </virtualType><virtualType name="AddressFileAttribute" type="Magento\CustomerCustomAttributes\ViewModel\FileAttribute"> <arguments> <argument name="uploadUrl" xsi:type="string">customer_custom_attributes/address_file/upload</argument> <argument name="entityType" xsi:type="string">customer_address</argument> <argument name="downloadUrl" xsi:type="string">customer_custom_attributes/address_file/viewfile</argument> </arguments> </virtualType><virtualType name="CustomerFileDownload" type="Magento\CustomerCustomAttributes\Model\Customer\FileDownload"> <arguments> <argument name="entityType" xsi:type="string">customer</argument> </arguments> </virtualType><virtualType name="AddressFileDownload" type="Magento\CustomerCustomAttributes\Model\Customer\FileDownload"> <arguments> <argument name="entityType" xsi:type="string">customer_address</argument> </arguments> </virtualType><type name="Magento\CustomerCustomAttributes\Controller\Index\Viewfile"> <arguments> <argument name="fileDownload" xsi:type="object">CustomerFileDownload</argument> </arguments> </type><type name="Magento\CustomerCustomAttributes\Controller\Address\File\Viewfile"> <arguments> <argument name="fileDownload" xsi:type="object">AddressFileDownload</argument> </arguments> </type><type name="Magento\CustomerCustomAttributes\Model\Customer\TemporaryFileSessionStorage"> <arguments> <argument name="session" xsi:type="object">Magento\Customer\Model\Session\Proxy</argument> </arguments> </type><preference for="\Magento\Msrp\Api\Data\ProductRender\MsrpPriceInfoInterface" type="\Magento\Msrp\Model\ProductRender\MsrpPriceInfo"/><preference for="\Magento\Msrp\Pricing\MsrpPriceCalculatorInterface" type="\Magento\Msrp\Pricing\MsrpPriceCalculator"/><type name="Magento\Msrp\Model\Product\Options" shared="true"/><type name="Magento\Msrp\Helper\Data" shared="true"> <arguments> <argument name="productOptions" xsi:type="object">Magento\Msrp\Model\Product\Options\Proxy</argument> </arguments> </type><preference for="Magento\SalesRule\Api\RuleRepositoryInterface" type="Magento\SalesRule\Model\RuleRepository"/><preference for="Magento\SalesRule\Api\Data\RuleInterface" type="Magento\SalesRule\Model\Data\Rule"/><preference for="Magento\SalesRule\Api\Data\ConditionInterface" type="Magento\SalesRule\Model\Data\Condition"/><preference for="Magento\SalesRule\Api\Data\RuleSearchResultInterface" type="Magento\Framework\Api\SearchResults"/><preference for="Magento\SalesRule\Api\Data\RuleLabelInterface" type="Magento\SalesRule\Model\Data\RuleLabel"/><preference for="Magento\SalesRule\Api\Data\CouponInterface" type="Magento\SalesRule\Model\Coupon"/><preference for="Magento\SalesRule\Api\CouponRepositoryInterface" type="Magento\SalesRule\Model\CouponRepository"/><preference for="Magento\SalesRule\Model\Spi\CouponResourceInterface" type="Magento\SalesRule\Model\ResourceModel\Coupon"/><preference for="Magento\SalesRule\Api\Data\CouponSearchResultInterface" type="Magento\Framework\Api\SearchResults"/><preference for="Magento\SalesRule\Api\Data\CouponGenerationSpecInterface" type="Magento\SalesRule\Model\Data\CouponGenerationSpec"/><preference for="Magento\SalesRule\Api\Data\CouponMassDeleteResultInterface" type="Magento\SalesRule\Model\Data\CouponMassDeleteResult"/><preference for="Magento\SalesRule\Api\CouponManagementInterface" type="Magento\SalesRule\Model\Service\CouponManagementService"/><preference for="Magento\SalesRule\Api\Data\RuleDiscountInterface" type="Magento\SalesRule\Model\Data\RuleDiscount"/><preference for="Magento\SalesRule\Api\Data\DiscountDataInterface" type="Magento\SalesRule\Model\Data\DiscountData"/><preference for="Magento\SalesRule\Model\Spi\RuleQuoteRecollectTotalsInterface" type="Magento\SalesRule\Model\Rule\RuleQuoteRecollectTotalsOnDemand"/><preference for="Magento\SalesRule\Model\Spi\QuoteResetAppliedRulesInterface" type="Magento\SalesRule\Model\Rule\QuoteResetAppliedRules"/><type name="Magento\SalesRule\Helper\Coupon"> <arguments> <argument name="couponParameters" xsi:type="array"> <item name="separator" xsi:type="string">-</item> <item name="charset" xsi:type="array"> <item name="alphanum" xsi:type="string">ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789</item> <item name="alpha" xsi:type="string">ABCDEFGHIJKLMNOPQRSTUVWXYZ</item> <item name="num" xsi:type="string">0123456789</item> </item> </argument> </arguments> </type><type name="Magento\SalesRule\Model\ResourceModel\Rule\Collection" shared="false"><plugin name="aroundSetValidationFilter" type="Magento\AdvancedSalesRule\Model\ResourceModel\Plugin\Rule\Collection" sortOrder="500"/><plugin name="beforeSetValidationFilter" type="Magento\SalesRuleStaging\Model\ResourceModel\Plugin\Rule\Collection" sortOrder="100"/><arguments> <argument name="versionManager" xsi:type="object">Magento\Staging\Model\VersionManager\Proxy</argument> </arguments></type><type name="Magento\Quote\Model\Quote\Config"> <plugin name="append_sales_rule_keys_to_quote" type="Magento\SalesRule\Model\Plugin\QuoteConfigProductAttributes"/> <plugin name="avatax_quote_model_quote_config" type="ClassyLlama\AvaTax\Plugin\Quote\Model\Quote\Config"/></type><type name="Magento\SalesRule\Model\ResourceModel\Report\Rule"> <arguments> <argument name="connectionName" xsi:type="string">sales</argument> </arguments> </type><type name="Magento\SalesRule\Model\ResourceModel\Report\Rule\Createdat"> <arguments> <argument name="connectionName" xsi:type="string">sales</argument> </arguments> </type><type name="Magento\SalesRule\Model\ResourceModel\Report\Rule\Updatedat"> <arguments> <argument name="connectionName" xsi:type="string">sales</argument> </arguments> </type><type name="Magento\SalesRule\Model\Rule\Condition\Address"> <arguments> <argument name="data" xsi:type="array"> <item name="form_name" xsi:type="string">sales_rule_form</item> </argument> </arguments> </type><type name="Magento\SalesRule\Model\Rule\Condition\Combine"> <arguments> <argument name="data" xsi:type="array"> <item name="form_name" xsi:type="string">sales_rule_form</item> </argument> </arguments> </type><type name="Magento\SalesRule\Model\Rule\Condition\Product"> <arguments> <argument name="data" xsi:type="array"> <item name="form_name" xsi:type="string">sales_rule_form</item> </argument> </arguments> <plugin name="apply_rule_on_configurable_children" type="Magento\ConfigurableProduct\Plugin\SalesRule\Model\Rule\Condition\Product"/></type><type name="Magento\SalesRule\Model\Rule\Condition\Product\Combine"> <arguments> <argument name="data" xsi:type="array"> <item name="form_name" xsi:type="string">sales_rule_form</item> </argument> </arguments> </type><type name="Magento\SalesRule\Model\Rule\Condition\Product\Found"> <arguments> <argument name="data" xsi:type="array"> <item name="form_name" xsi:type="string">sales_rule_form</item> </argument> </arguments> </type><type name="Magento\SalesRule\Model\Rule\Condition\Product\Subselect"> <arguments> <argument name="data" xsi:type="array"> <item name="form_name" xsi:type="string">sales_rule_form</item> </argument> </arguments> </type><type name="Magento\SalesRule\Model\Rule\Customer"> <arguments> <argument name="data" xsi:type="array"> <item name="form_name" xsi:type="string">sales_rule_form</item> </argument> </arguments> </type><virtualType name="Magento\SalesRule\Model\ResourceModel\Rule\AssociatedEntityMap" type="Magento\Framework\DataObject"> <arguments> <argument name="data" xsi:type="array"> <item name="website" xsi:type="array"> <item name="associations_table" xsi:type="string">salesrule_website</item> <item name="rule_id_field" xsi:type="string">row_id</item> <item name="entity_id_field" xsi:type="string">website_id</item> </item> <item name="customer_group" xsi:type="array"> <item name="associations_table" xsi:type="string">salesrule_customer_group</item> <item name="rule_id_field" xsi:type="string">row_id</item> <item name="entity_id_field" xsi:type="string">customer_group_id</item> </item> </argument> </arguments> </virtualType><type name="Magento\Quote\Model\Cart\CartTotalRepository"> <plugin name="coupon_label_plugin" type="Magento\SalesRule\Plugin\CartTotalRepository"/> <plugin name="multishipping_shipping_addresses" type="Magento\Multishipping\Model\Cart\CartTotalRepositoryPlugin"/><plugin name="rewardTotal" type="Magento\Reward\Model\Plugin\CartTotalRepository"/><plugin name="avataxCustomsMessages" type="ClassyLlama\AvaTax\Model\Plugin\CartTotalRepository"/></type><type name="Magento\Sales\Model\Service\OrderService"> <plugin name="coupon_uses_decrement_plugin" type="Magento\SalesRule\Plugin\CouponUsagesDecrement"/> <plugin name="inventory_sales_source_deduction_processor" type="Ampersand\DisableStockReservation\Plugin\SourceDeductionProcessor"/></type><type name="\Magento\Quote\Model\QuoteManagement"> <plugin name="coupon_uses_increment_plugin" type="Magento\SalesRule\Plugin\CouponUsagesIncrement" sortOrder="20"/> <plugin name="validate_purchase_order_number" type="Magento\OfflinePayments\Plugin\ValidatePurchaseOrderNumber"/></type><preference for="Magento\SalesRule\Model\Spi\CodeLimitManagerInterface" type="Magento\SalesRule\Model\Coupon\CodeLimitManager"/><type name="Magento\SalesRule\Observer\RuleQuoteRecollectTotalsObserver"> <arguments> <argument name="recollectTotals" xsi:type="object">Magento\SalesRule\Model\Rule\RuleQuoteRecollectTotalsAsync\Proxy</argument> </arguments> </type><preference for="Magento\Captcha\Api\CaptchaConfigPostProcessorInterface" type="Magento\Captcha\Model\Filter\CaptchaConfigPostProcessorComposite"/><type name="Magento\Captcha\Model\DefaultModel"> <arguments> <argument name="session" xsi:type="object">Magento\Customer\Model\Session</argument> </arguments> </type><type name="Magento\Captcha\Observer\CheckUserCreateObserver"> <arguments> <argument name="session" xsi:type="object">Magento\Customer\Model\Session</argument> </arguments> </type><type name="Magento\Captcha\Observer\CheckUserForgotPasswordBackendObserver"> <arguments> <argument name="session" xsi:type="object">Magento\Customer\Model\Session</argument> </arguments> </type><type name="Magento\Captcha\Observer\CheckUserLoginObserver"> <arguments> <argument name="session" xsi:type="object">Magento\Customer\Model\Session</argument> </arguments> </type><type name="Magento\Customer\Controller\Ajax\Login"> <plugin name="captcha_validation" type="Magento\Captcha\Model\Customer\Plugin\AjaxLogin" sortOrder="50"/> </type><type name="Magento\Captcha\Model\Customer\Plugin\AjaxLogin"> <arguments> <argument name="formIds" xsi:type="array"> <item name="user_login" xsi:type="string">user_login</item> </argument> </arguments> </type><type name="Magento\Checkout\Block\Cart\Sidebar"> <plugin name="login_captcha" type="Magento\Captcha\Model\Cart\ConfigPlugin" sortOrder="50"/> </type><type name="Magento\Captcha\Model\Filter\CaptchaConfigPostProcessorComposite"> <arguments> <argument name="processors" xsi:type="array"> <item name="processor" xsi:type="object">Magento\Captcha\Model\Filter\QuoteDataConfigFilter</item> </argument> </arguments> </type><type name="Magento\Captcha\Model\Filter\QuoteDataConfigFilter"> <arguments> <argument name="filterList" xsi:type="array"> <item name="remote_ip" xsi:type="string">remote_ip</item> <item name="x_forwarded_for" xsi:type="string">x_forwarded_for</item> </argument> </arguments> </type><type name="Magento\Downloadable\Helper\Download"> <arguments> <argument name="coreFileStorageDb" xsi:type="object">Magento\MediaStorage\Helper\File\Storage\Database\Proxy</argument> </arguments> </type><type name="Magento\Catalog\Model\Product\CartConfiguration"> <plugin name="Downloadable" type="Magento\Downloadable\Model\Product\CartConfiguration\Plugin\Downloadable"/> <plugin name="GiftCard" type="Magento\GiftCard\Model\Product\CartConfiguration\Plugin\GiftCard"/><plugin name="configurable_product" type="Magento\ConfigurableProduct\Model\Product\CartConfiguration\Plugin\Configurable" sortOrder="50"/><plugin name="isProductConfigured" type="Magento\GroupedProduct\Model\Product\Cart\Configuration\Plugin\Grouped"/></type><virtualType name="context_for_downloadable" type="Magento\Framework\View\Element\Template\Context"> <arguments> <argument name="urlBuilder" xsi:type="object">Magento\Framework\Url</argument> </arguments> </virtualType><type name="Magento\Downloadable\Block\Sales\Order\Email\Items\Order\Downloadable"> <arguments> <argument name="context" xsi:type="object">context_for_downloadable</argument> </arguments> </type><virtualType name="Magento\Downloadable\Pricing\Price\Pool" type="Magento\Framework\Pricing\Price\Pool"> <arguments> <argument name="prices" xsi:type="array"> <item name="link_price" xsi:type="string">Magento\Downloadable\Pricing\Price\LinkPrice</item> <item name="wishlist_configured_price" xsi:type="string">Magento\Wishlist\Pricing\ConfiguredPrice\Downloadable</item></argument> <argument name="target" xsi:type="object">Magento\Catalog\Pricing\Price\Pool</argument> </arguments> </virtualType><virtualType name="Magento\Downloadable\Pricing\Price\Collection" type="Magento\Framework\Pricing\Price\Collection"> <arguments> <argument name="pool" xsi:type="object">Magento\Downloadable\Pricing\Price\Pool</argument> </arguments> </virtualType><type name="Magento\Downloadable\Model\Product\TypeHandler\TypeHandler"> <arguments> <argument name="handlers" xsi:type="array"> <item name="sample" xsi:type="object">Magento\Downloadable\Model\Product\TypeHandler\Sample</item> <item name="link" xsi:type="object">Magento\Downloadable\Model\Product\TypeHandler\Link</item> </argument> </arguments> </type><preference for="Magento\Downloadable\Api\LinkRepositoryInterface" type="Magento\Downloadable\Model\LinkRepository"/><preference for="Magento\Downloadable\Api\SampleRepositoryInterface" type="Magento\Downloadable\Model\SampleRepository"/><preference for="Magento\Downloadable\Api\Data\LinkInterface" type="Magento\Downloadable\Model\Link"/><preference for="Magento\Downloadable\Api\Data\SampleInterface" type="Magento\Downloadable\Model\Sample"/><preference for="Magento\Downloadable\Api\Data\File\ContentInterface" type="Magento\Downloadable\Model\File\Content"/><preference for="Magento\Downloadable\Api\Data\File\ContentUploaderInterface" type="Magento\Downloadable\Model\File\ContentUploader"/><preference for="Magento\Downloadable\Model\Product\TypeHandler\TypeHandlerInterface" type="Magento\Downloadable\Model\Product\TypeHandler\TypeHandler"/><preference for="Magento\Downloadable\Api\Data\DownloadableOptionInterface" type="Magento\Downloadable\Model\DownloadableOption"/><preference for="Magento\Downloadable\Api\DomainManagerInterface" type="Magento\Downloadable\Model\DomainManager"/><type name="Magento\Downloadable\Model\ResourceModel\Indexer\Price"> <arguments> <argument name="tableStrategy" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\TemporaryTableStrategy</argument> <argument name="connectionName" xsi:type="string">indexer</argument> </arguments> </type><preference for="Magento\Staging\Api\Data\UpdateInterface" type="Magento\Staging\Model\Update"/><preference for="Magento\Staging\Api\Data\UpdateSearchResultInterface" type="Magento\Staging\Model\ResourceModel\Update\Collection"/><preference for="Magento\Staging\Api\UpdateRepositoryInterface" type="Magento\Staging\Model\UpdateRepository"/><preference for="Magento\Staging\Model\VersionHistoryInterface" type="Magento\Staging\Model\Update\VersionHistory"/><preference for="Magento\Staging\Block\Adminhtml\Update\Entity\EntityProviderInterface" type="Magento\Staging\Block\Adminhtml\Update\Entity\DefaultEntityProvider"/><preference for="Magento\Framework\Event\ManagerInterface" type="Magento\Staging\Model\Event\Manager\Proxy"/><type name="Magento\Staging\Model\Event\Manager"> <arguments> <argument name="bannedEvents" xsi:type="array"/> <argument name="bannedObservers" xsi:type="array"/> </arguments> </type><type name="Magento\Staging\Model\Update\Grid\SearchResult"> <arguments> <argument name="mainTable" xsi:type="string">staging_update</argument> <argument name="resourceModel" xsi:type="string">Magento\Staging\Model\ResourceModel\Update</argument> </arguments> </type><type name="Magento\Framework\DB\Select\SelectRenderer"> <arguments> <argument name="renderers" xsi:type="array"> <item name="distinct" xsi:type="array"> <item name="renderer" xsi:type="object">Magento\Framework\DB\Select\DistinctRenderer</item> <item name="sort" xsi:type="string">100</item> <item name="part" xsi:type="string">distinct</item> </item> <item name="columns" xsi:type="array"> <item name="renderer" xsi:type="object">Magento\Framework\DB\Select\ColumnsRenderer</item> <item name="sort" xsi:type="string">200</item> <item name="part" xsi:type="string">columns</item> </item> <item name="union" xsi:type="array"> <item name="renderer" xsi:type="object">Magento\Framework\DB\Select\UnionRenderer</item> <item name="sort" xsi:type="string">300</item> <item name="part" xsi:type="string">union</item> </item> <item name="from" xsi:type="array"> <item name="renderer" xsi:type="object">Magento\Staging\Model\Select\FromRenderer</item> <item name="sort" xsi:type="string">400</item> <item name="part" xsi:type="string">from</item> </item> <item name="where" xsi:type="array"> <item name="renderer" xsi:type="object">Magento\Framework\DB\Select\WhereRenderer</item> <item name="sort" xsi:type="string">500</item> <item name="part" xsi:type="string">where</item> </item> <item name="group" xsi:type="array"> <item name="renderer" xsi:type="object">Magento\Framework\DB\Select\GroupRenderer</item> <item name="sort" xsi:type="string">600</item> <item name="part" xsi:type="string">group</item> </item> <item name="having" xsi:type="array"> <item name="renderer" xsi:type="object">Magento\Framework\DB\Select\HavingRenderer</item> <item name="sort" xsi:type="string">700</item> <item name="part" xsi:type="string">having</item> </item> <item name="order" xsi:type="array"> <item name="renderer" xsi:type="object">Magento\Framework\DB\Select\OrderRenderer</item> <item name="sort" xsi:type="string">800</item> <item name="part" xsi:type="string">order</item> </item> <item name="limit" xsi:type="array"> <item name="renderer" xsi:type="object">Magento\Framework\DB\Select\LimitRenderer</item> <item name="sort" xsi:type="string">900</item> <item name="part" xsi:type="string">limitcount</item> </item> <item name="for_update" xsi:type="array"> <item name="renderer" xsi:type="object">Magento\Framework\DB\Select\ForUpdateRenderer</item> <item name="sort" xsi:type="string">1000</item> <item name="part" xsi:type="string">forupdate</item> </item> </argument> </arguments> </type><type name="Magento\Framework\DB\SelectFactory"> <arguments> <argument name="selectRenderer" xsi:type="object">Magento\Framework\DB\Select\RendererProxy</argument> <argument name="parts" xsi:type="array"> <item name="disable_staging_preview" xsi:type="boolean">false</item> </argument> </arguments> </type><type name="Magento\Staging\Plugin\Framework\App\FrontController"> <arguments> <argument name="auth" xsi:type="object">\Magento\Backend\Model\Auth\Proxy</argument> </arguments> </type><type name="Magento\Framework\App\FrontControllerInterface"> <plugin name="staging_preview_permissions_check" type="Magento\Staging\Plugin\Framework\App\FrontController"/> <plugin name="configHash" type="Magento\Deploy\Model\Plugin\ConfigChangeDetector" sortOrder="50"/></type><type name="Magento\Webapi\Controller\Rest"> <plugin name="beforeRestDispatch" type="Magento\Staging\Plugin\RestPlugin"/> </type><type name="Magento\PageCache\Model\Config"> <plugin name="staging_pagecache_bypass" type="Magento\Staging\Plugin\PageCache\Model\Config"/> </type><type name="Magento\Store\Model\BaseUrlChecker"> <plugin name="staging_store_baseurl_check_bypass" type="Magento\Staging\Plugin\Store\Model\BaseUrlChecker"/> </type><type name="Magento\Store\Controller\Store\SwitchAction"> <plugin name="staging_preview_store_switch_fixing" type="Magento\Staging\Plugin\Store\Controller\Store\SwitchAction"/> </type><virtualType name="Magento\Framework\DB\UnversionedSelectFactory" type="Magento\Framework\DB\SelectFactory"> <arguments> <argument name="parts" xsi:type="array"> <item name="disable_staging_preview" xsi:type="boolean">true</item> </argument> </arguments> </virtualType><type name="Magento\Framework\DB\FieldDataConverter"> <arguments> <argument name="selectFactory" xsi:type="object">Magento\Framework\DB\UnversionedSelectFactory</argument> </arguments> </type><type name="Magento\Framework\Url\RouteParamsPreprocessorComposite"> <arguments> <argument name="routeParamsPreprocessors" xsi:type="array"> <item name="staging_preview" xsi:type="object">Magento\Staging\Model\Preview\RouteParamsPreprocessor</item> </argument> </arguments> </type><type name="Magento\Framework\Setup\Declaration\Schema\DataSavior\TableSavior"> <arguments> <argument name="selectFactory" xsi:type="object">Magento\Framework\DB\UnversionedSelectFactory</argument> </arguments> </type><type name="Magento\Framework\Setup\Declaration\Schema\DataSavior\ColumnSavior"> <arguments> <argument name="selectFactory" xsi:type="object">Magento\Framework\DB\UnversionedSelectFactory</argument> </arguments> </type><type name="Magento\Framework\Url\ModifierComposite"> <arguments> <argument name="modifiers" xsi:type="array"> <item name="staging_preview_base" xsi:type="object">Magento\Staging\Model\Url\BaseUrlModifier</item> </argument> </arguments> </type><type name="Magento\Staging\Block\Adminhtml\Update\Upcoming"> <arguments> <argument name="aclResourceAction" xsi:type="string">Magento_Staging::staging</argument> </arguments> </type><type name="Magento\Framework\EntityManager\OperationPool"> <arguments> <argument name="operations" xsi:type="array"> <item name="default" xsi:type="array"> <item name="checkIfExists" xsi:type="string">Magento\Framework\EntityManager\Operation\CheckIfExists</item> <item name="read" xsi:type="string">Magento\Framework\EntityManager\Operation\Read</item> <item name="create" xsi:type="string">Magento\Framework\EntityManager\Operation\Create</item> <item name="update" xsi:type="string">Magento\Framework\EntityManager\Operation\Update</item> <item name="delete" xsi:type="string">Magento\Framework\EntityManager\Operation\Delete</item> </item> <item name="Magento\Catalog\Api\Data\ProductInterface" xsi:type="array"> <item name="read" xsi:type="string">Magento\Framework\EntityManager\Operation\Read</item> <item name="create" xsi:type="string">Magento\Staging\Model\Operation\Create</item> <item name="update" xsi:type="string">Magento\Staging\Model\Operation\Update</item> <item name="delete" xsi:type="string">Magento\Staging\Model\Operation\Delete</item> </item><item name="Magento\Catalog\Api\Data\CategoryInterface" xsi:type="array"> <item name="create" xsi:type="string">Magento\Staging\Model\Operation\Create</item> <item name="update" xsi:type="string">Magento\Staging\Model\Operation\Update</item> <item name="delete" xsi:type="string">Magento\Staging\Model\Operation\Delete</item> </item><item name="Magento\SalesRule\Api\Data\RuleInterface" xsi:type="array"> <item name="read" xsi:type="string">Magento\Framework\EntityManager\Operation\Read</item> <item name="create" xsi:type="string">Magento\Staging\Model\Operation\Create</item> <item name="update" xsi:type="string">Magento\Staging\Model\Operation\Update</item> <item name="delete" xsi:type="string">Magento\Staging\Model\Operation\Delete</item> </item><item name="Magento\CatalogRule\Api\Data\RuleInterface" xsi:type="array"> <item name="read" xsi:type="string">Magento\Framework\EntityManager\Operation\Read</item> <item name="create" xsi:type="string">Magento\CatalogRuleStaging\Model\Operation\Create</item> <item name="update" xsi:type="string">Magento\Staging\Model\Operation\Update</item> <item name="delete" xsi:type="string">Magento\Staging\Model\Operation\Delete</item> </item><item name="Magento\AsynchronousOperations\Api\Data\OperationListInterface" xsi:type="array"> <item name="checkIfExists" xsi:type="string">Magento\AsynchronousOperations\Model\ResourceModel\Operation\CheckIfExists</item> <item name="create" xsi:type="string">Magento\AsynchronousOperations\Model\ResourceModel\Operation\Create</item> </item><item name="Magento\Cms\Api\Data\PageInterface" xsi:type="array"> <item name="create" xsi:type="string">Magento\Staging\Model\Operation\Create</item> <item name="update" xsi:type="string">Magento\Staging\Model\Operation\Update</item> <item name="delete" xsi:type="string">Magento\Staging\Model\Operation\Delete</item> </item><item name="Magento\Cms\Api\Data\BlockInterface" xsi:type="array"> <item name="create" xsi:type="string">Magento\Staging\Model\Operation\Create</item> <item name="update" xsi:type="string">Magento\Staging\Model\Operation\Update</item> <item name="delete" xsi:type="string">Magento\Staging\Model\Operation\Delete</item> </item><item name="Magento\Bundle\Api\Data\OptionInterface" xsi:type="array"> <item name="update" xsi:type="string">Magento\BundleStaging\Model\EntityManager\Operation\Update</item> <item name="updateCheckIfExists" xsi:type="string">Magento\BundleStaging\Model\EntityManager\Operation\Update\CheckIfExists</item> <item name="updateUpdate" xsi:type="string">Magento\Framework\EntityManager\Operation\Update</item> <item name="updateCreate" xsi:type="string">Magento\BundleStaging\Model\EntityManager\Operation\Update\Create</item> </item><item name="Magento\Bundle\Model\Selection" xsi:type="array"> <item name="update" xsi:type="string">Magento\BundleStaging\Model\EntityManager\Operation\Update</item> <item name="updateCheckIfExists" xsi:type="string">Magento\BundleStaging\Model\EntityManager\Operation\Update\CheckIfExists</item> <item name="updateUpdate" xsi:type="string">Magento\Framework\EntityManager\Operation\Update</item> <item name="updateCreate" xsi:type="string">Magento\BundleStaging\Model\EntityManager\Operation\Update\Create</item> </item></argument> </arguments> </type><type name="Magento\Staging\Model\Operation\Update\TemporaryUpdateProcessorPool"> <arguments> <argument name="processors" xsi:type="array"> <item name="default" xsi:type="string">Magento\Staging\Model\Operation\Update\DefaultTemporaryUpdateProcessor</item> <item name="Magento\Catalog\Api\Data\ProductInterface" xsi:type="string">Magento\CatalogStaging\Model\Product\Operation\Update\TemporaryUpdateProcessor</item><item name="Magento\SalesRule\Api\Data\RuleInterface" xsi:type="string">Magento\SalesRuleStaging\Model\Operation\Update\TemporaryUpdateProcessor</item></argument> </arguments> </type><type name="Magento\Staging\Model\Operation\Update\PermanentUpdateProcessorPool"> <arguments> <argument name="processors" xsi:type="array"> <item name="default" xsi:type="string">Magento\Staging\Model\Operation\Update\DefaultPermanentUpdateProcessor</item> </argument> </arguments> </type><type name="Magento\Staging\Model\Entity\Update\Action\TransactionPool"> <arguments> <argument name="transactionPool" xsi:type="array"> <item name="update_action_delete_save" xsi:type="string">Magento\Staging\Model\Entity\Update\Action\Delete\SaveAction</item> <item name="update_action_save_save" xsi:type="string">Magento\Staging\Model\Entity\Update\Action\Save\SaveAction</item> </argument> </arguments> </type><type name="Magento\Staging\Model\Entity\Builder"> <arguments> <argument name="strategies" xsi:type="array"> <item name="default" xsi:type="string">Magento\Staging\Model\Entity\Builder\DefaultBuilder</item> <item name="Magento\Catalog\Api\Data\ProductInterface" xsi:type="string">Magento\CatalogStaging\Model\Product\Builder</item><item name="Magento\Catalog\Api\Data\CategoryInterface" xsi:type="string">Magento\CatalogStaging\Model\Category\Builder</item></argument> </arguments> </type><type name="Magento\Framework\View\Element\Template\Context"> <arguments> <argument name="cacheState" xsi:type="object">Magento\Staging\Model\CacheState</argument> </arguments> </type><type name="Magento\Staging\Model\CacheState"> <arguments> <argument name="cacheTypes" xsi:type="array"> <item name="block_html" xsi:type="boolean">false</item> </argument> </arguments> </type><type name="Magento\Framework\Setup\Declaration\Schema\Operations\AddColumn"> <arguments> <argument name="triggers" xsi:type="array"> <item name="migrateDataFromSameTable" xsi:type="object">Magento\Framework\Setup\Declaration\Schema\Db\MySQL\DDL\Triggers\MigrateDataFrom</item> <item name="migrateSequneceColumnData" xsi:type="object">Magento\Staging\Setup\Declaration\Schema\Db\MySQL\DDL\Triggers\MigrateSequenceColumnData</item> </argument> </arguments> </type><type name="Magento\Framework\Setup\Declaration\Schema\Operations\CreateTable"> <arguments> <argument name="columnTriggers" xsi:type="array"> <item name="migrateSequneceColumnData" xsi:type="object">Magento\Staging\Setup\Declaration\Schema\Db\MySQL\DDL\Triggers\MigrateSequenceColumnData</item> </argument> </arguments> </type><type name="Magento\Staging\Model\Preview\RouteParamsPreprocessor"> <arguments> <argument name="versionManager" xsi:type="object">Magento\Staging\Model\VersionManager\Proxy</argument> <argument name="requestSigner" xsi:type="object">\Magento\Staging\Model\Preview\RequestSigner\Proxy</argument> </arguments> </type><type name="Magento\Staging\Plugin\Store\Model\StoreResolver"> <arguments> <argument name="versionManager" xsi:type="object">Magento\Staging\Model\VersionManager\Proxy</argument> </arguments> </type><type name="Magento\Staging\Model\UpdateRepository"> <arguments> <argument name="periodSyncScheduler" xsi:type="object">Magento\Staging\Model\Entity\PeriodSync\Scheduler\Proxy</argument> </arguments> </type><preference for="Magento\GiftCard\Api\Data\GiftcardAmountInterface" type="Magento\GiftCard\Model\Giftcard\Amount"/><preference for="Magento\GiftCard\Api\Data\GiftCardOptionInterface" type="Magento\GiftCard\Model\Giftcard\Option"/><virtualType name="Magento\GiftCard\Model\ResourceModel\Helper" type="Magento\Eav\Model\ResourceModel\Helper"> <arguments> <argument name="modulePrefix" xsi:type="string">Eav</argument> </arguments> </virtualType><type name="Magento\GiftCard\Model\Source\Open"> <arguments> <argument name="resourceHelper" xsi:type="object">Magento\GiftCard\Model\ResourceModel\Helper</argument> </arguments> </type><type name="Magento\Wishlist\Block\Catalog\Product\View\AddTo\Wishlist"> <plugin name="getWishlistOptions" type="Magento\GiftCard\Block\Product\View\Plugin"/> </type><type name="Magento\Wishlist\Block\Item\Configure"> <plugin name="getWishlistOptions" type="Magento\GiftCard\Block\Product\View\Plugin"/> </type><type name="Magento\GiftRegistry\Helper\Data"> <plugin name="getWishlistOptions" type="Magento\GiftCard\Helper\GiftRegistry\Plugin"/> </type><type name="Magento\GiftCard\Helper\Data"> <arguments> <argument name="layout" xsi:type="object">Magento\Framework\View\LayoutInterface\Proxy</argument> </arguments> </type><virtualType name="Magento\GiftCard\Pricing\Price\Collection" type="Magento\Framework\Pricing\Price\Collection"> <arguments> <argument name="pool" xsi:type="object">Magento\GiftCard\Pricing\Price\Pool</argument> </arguments> </virtualType><virtualType name="Magento\GiftCard\Pricing\Price\Pool" type="Magento\Framework\Pricing\Price\Pool"> <arguments> <argument name="prices" xsi:type="array"> <item name="regular_price" xsi:type="string">Magento\Catalog\Pricing\Price\RegularPrice</item> <item name="final_price" xsi:type="string">Magento\GiftCard\Pricing\Price\FinalPrice</item> <item name="tier_price" xsi:type="string">Magento\Catalog\Pricing\Price\TierPrice</item> <item name="special_price" xsi:type="string">Magento\Catalog\Pricing\Price\SpecialPrice</item> <item name="msrp_price" xsi:type="string">Magento\Msrp\Pricing\Price\MsrpPrice</item> <item name="custom_option_price" xsi:type="string">Magento\Catalog\Pricing\Price\CustomOptionPrice</item> <item name="base_price" xsi:type="string">Magento\Catalog\Pricing\Price\BasePrice</item> <item name="configured_price" xsi:type="string">Magento\GiftCard\Pricing\Price\ConfiguredPrice</item> <item name="configured_regular_price" xsi:type="string">Magento\Bundle\Pricing\Price\ConfiguredRegularPrice</item> <item name="bundle_option" xsi:type="string">Magento\Bundle\Pricing\Price\BundleOptionPrice</item> <item name="bundle_option_regular_price" xsi:type="string">Magento\Bundle\Pricing\Price\BundleOptionRegularPrice</item> <item name="wishlist_configured_price" xsi:type="string">Magento\GiftCard\Pricing\Price\ConfiguredPrice</item> </argument> </arguments> </virtualType><type name="Magento\SalesRule\Model\Validator\Pool"> <arguments> <argument name="validators" xsi:type="array"> <item name="discount" xsi:type="array"> <item name="giftcard_validator" xsi:type="object">Magento\GiftCard\Model\Validator\Discount</item> </item> </argument> </arguments> </type><type name="Magento\GiftCard\Model\ResourceModel\Indexer\Price"> <arguments> <argument name="tableStrategy" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\TemporaryTableStrategy</argument> <argument name="connectionName" xsi:type="string">indexer</argument> </arguments> </type><preference for="Magento\Wishlist\Model\AuthenticationStateInterface" type="Magento\PersistentHistory\Model\WishlistAuthenticationState"/><preference for="Magento\Wishlist\Controller\WishlistProviderInterface" type="Magento\Wishlist\Controller\WishlistProvider"/><type name="Magento\Wishlist\Model\ResourceModel\Item\Collection\Grid"> <arguments> <argument name="resource" xsi:type="object">Magento\Wishlist\Model\ResourceModel\Item</argument> </arguments> </type><type name="Magento\Wishlist\Helper\Data"> <arguments> <argument name="customerSession" xsi:type="object">Magento\Customer\Model\Session\Proxy</argument> </arguments> </type><type name="Magento\Wishlist\Controller\AbstractIndex"> <plugin name="authentication" type="Magento\Wishlist\Controller\Index\Plugin" sortOrder="10"/> </type><virtualType name="Magento\Wishlist\Block\Context" type="Magento\Catalog\Block\Product\Context"> <arguments> <argument name="wishlistHelper" xsi:type="object">Magento\Wishlist\Helper\Rss</argument> </arguments> </virtualType><virtualType name="Magento\ConfigurableProduct\Pricing\Price\Pool" type="Magento\Framework\Pricing\Price\Pool"> <arguments> <argument name="prices" xsi:type="array"> <item name="wishlist_configured_price" xsi:type="string">Magento\Wishlist\Pricing\ConfiguredPrice\ConfigurableProduct</item> <item name="regular_price" xsi:type="string">Magento\ConfigurableProduct\Pricing\Price\ConfigurableRegularPrice</item><item name="final_price" xsi:type="string">Magento\ConfigurableProduct\Pricing\Price\FinalPrice</item></argument> <argument name="target" xsi:type="object">Magento\Catalog\Pricing\Price\Pool</argument></arguments> </virtualType><virtualType name="Magento\GroupedProduct\Pricing\Price\Pool" type="Magento\Framework\Pricing\Price\Pool"> <arguments> <argument name="prices" xsi:type="array"> <item name="wishlist_configured_price" xsi:type="string">Magento\GroupedProduct\Pricing\Price\ConfiguredPrice</item> <item name="final_price" xsi:type="string">Magento\GroupedProduct\Pricing\Price\FinalPrice</item><item name="configured_price" xsi:type="string">Magento\GroupedProduct\Pricing\Price\ConfiguredPrice</item><item name="configured_regular_price" xsi:type="string">Magento\GroupedProduct\Pricing\Price\ConfiguredRegularPrice</item></argument> <argument name="target" xsi:type="object">Magento\Catalog\Pricing\Price\Pool</argument></arguments> </virtualType><type name="Magento\Catalog\Ui\DataProvider\Product\Listing\DataProvider"> <plugin name="wishlistSettingsDataProvider" type="Magento\Wishlist\Plugin\Ui\DataProvider\WishlistSettings"/> <plugin name="taxSettingsProvider" type="Magento\Tax\Plugin\Ui\DataProvider\TaxSettings"/><plugin name="weeeSettingsProvider" type="Magento\Weee\Plugin\Ui\DataProvider\WeeeSettings"/></type><preference for="Magento\Wishlist\Model\ResourceModel\Item\Product\CollectionBuilderInterface" type="Magento\Wishlist\Model\ResourceModel\Item\Product\CollectionBuilder"/><preference for="Magento\CatalogGraphQl\Model\Resolver\Products\DataProvider\Product\CollectionProcessorInterface" type="Magento\CatalogGraphQl\Model\Resolver\Products\DataProvider\Product\CompositeCollectionProcessor"/><preference for="Magento\CatalogGraphQl\Model\Resolver\Products\DataProvider\Product\CollectionPostProcessorInterface" type="Magento\CatalogGraphQl\Model\Resolver\Products\DataProvider\Product\CompositeCollectionPostProcessor"/><preference for="Magento\CatalogGraphQl\Model\Resolver\Categories\DataProvider\Category\CollectionProcessorInterface" type="Magento\CatalogGraphQl\Model\Resolver\Categories\DataProvider\Category\CompositeCollectionProcessor"/><type name="Magento\EavGraphQl\Model\Resolver\Query\Type"> <arguments> <argument name="customTypes" xsi:type="array"> <item name="media_gallery" xsi:type="string">ProductMediaGallery</item> </argument> </arguments> </type><type name="Magento\Framework\GraphQl\Query\FieldTranslator"> <arguments> <argument name="translationMap" xsi:type="array"> <item name="new_from_date" xsi:type="string">news_from_date</item> <item name="new_to_date" xsi:type="string">news_to_date</item> <item name="ship_bundle_items" xsi:type="string">shipment_type</item><item name="dynamic_price" xsi:type="string">price_type</item><item name="dynamic_sku" xsi:type="string">sku_type</item><item name="dynamic_weight" xsi:type="string">weight_type</item></argument> </arguments> </type><type name="Magento\Framework\GraphQl\Query\Resolver\Argument\FieldEntityAttributesPool"> <arguments> <argument name="attributesInstances" xsi:type="array"> <item name="products" xsi:type="object">Magento\CatalogGraphQl\Model\Resolver\Products\FilterArgument\ProductEntityAttributesForAst</item> <item name="categoryList" xsi:type="object">Magento\CatalogGraphQl\Model\Category\CategoryFilterAttributesForAst</item> <item name="pickupLocations" xsi:type="object">Magento\InventoryInStorePickupGraphQl\Model\Resolver\PickupLocations\FilterArgument\PickupLocationsAttributesForAst</item></argument> </arguments> </type><type name="Magento\CatalogGraphQl\Model\Resolver\Products\DataProvider\Product\CompositeCollectionProcessor"> <arguments> <argument name="collectionProcessors" xsi:type="array"> <item name="attributes" xsi:type="object">Magento\CatalogGraphQl\Model\Resolver\Products\DataProvider\Product\CollectionProcessor\AttributeProcessor</item> <item name="extensible" xsi:type="object">Magento\CatalogGraphQl\Model\Resolver\Products\DataProvider\Product\CollectionProcessor\ExtensibleEntityProcessor</item> <item name="required" xsi:type="object">Magento\CatalogGraphQl\Model\Resolver\Products\DataProvider\Product\CollectionProcessor\RequiredColumnsProcessor</item> <item name="search" xsi:type="object">Magento\CatalogGraphQl\Model\Resolver\Products\DataProvider\Product\CollectionProcessor\SearchCriteriaProcessor</item> <item name="stock" xsi:type="object">Magento\CatalogGraphQl\Model\Resolver\Products\DataProvider\Product\CollectionProcessor\StockProcessor</item> <item name="visibility" xsi:type="object">Magento\CatalogGraphQl\Model\Resolver\Products\DataProvider\Product\CollectionProcessor\VisibilityStatusProcessor</item> <item name="mediaGallery" xsi:type="object">Magento\CatalogGraphQl\Model\Resolver\Products\DataProvider\Product\CollectionProcessor\MediaGalleryProcessor</item> </argument> </arguments> <plugin name="applyCategoryPermissionsOnProductProcessor" type="\Magento\CatalogPermissionsGraphQl\Plugin\CatalogGraphQl\Model\Resolver\Products\DataProvider\Product\CompositeCollectionProcessorPlugin" disabled="false"/></type><type name="Magento\CatalogGraphQl\Model\Resolver\Products\DataProvider\Product\CompositeCollectionPostProcessor"> <arguments> <argument name="collectionPostProcessors" xsi:type="array"> <item name="default" xsi:type="object">Magento\CatalogGraphQl\Model\Resolver\Products\DataProvider\Product\CollectionPostProcessor</item> <item name="disabled_product_option" xsi:type="object">Magento\BundleGraphQl\Model\Resolver\Products\DataProvider\Product\DisabledProductOptionPostProcessor</item></argument> </arguments> </type><type name="Magento\CatalogGraphQl\Model\Resolver\Categories\DataProvider\Category\CompositeCollectionProcessor"> <arguments> <argument name="collectionProcessors" xsi:type="array"> <item name="catalog" xsi:type="object">Magento\CatalogGraphQl\Model\Resolver\Categories\DataProvider\Category\CollectionProcessor\CatalogProcessor</item> <item name="customerGroup" xsi:type="object">Magento\CatalogPermissionsGraphQl\Model\Resolver\Categories\DataProvider\Category\CollectionProcessor\ApplyPermissionsOnCategory</item></argument> </arguments> </type><type name="Magento\CatalogGraphQl\Model\Resolver\Products\DataProvider\Product\CollectionProcessor\SearchCriteriaProcessor"> <arguments> <argument name="searchCriteriaApplier" xsi:type="object">Magento\Catalog\Model\Api\SearchCriteria\ProductCollectionProcessor</argument> </arguments> </type><type name="Magento\Framework\GraphQl\Query\Resolver\ArgumentsCompositeProcessor"> <arguments> <argument name="processors" xsi:type="array"> <item name="category_uid" xsi:type="object">Magento\CatalogGraphQl\Model\Resolver\Products\Query\CategoryUidArgsProcessor</item> <item name="category_uids" xsi:type="object">Magento\CatalogGraphQl\Model\Category\CategoryUidsArgsProcessor</item> <item name="parent_category_uids" xsi:type="object">Magento\CatalogGraphQl\Model\Category\ParentCategoryUidsArgsProcessor</item> <item name="cart_item_id" xsi:type="object">Magento\QuoteGraphQl\Model\CartItem\CartItemUidArgsProcessor</item><item name="cart_items_id" xsi:type="object">Magento\QuoteGraphQl\Model\CartItem\CartItemsUidArgsProcessor</item></argument> </arguments> </type><type name="Magento\CatalogGraphQl\Plugin\Search\Request\ConfigReader"> <arguments> <argument name="exactMatchAttributes" xsi:type="array"> <item name="sku" xsi:type="string">sku</item> <item name="url_key" xsi:type="string">url_key</item></argument> </arguments> </type><preference type="\Magento\CatalogGraphQl\Model\Resolver\Product\Price\Provider" for="\Magento\CatalogGraphQl\Model\Resolver\Product\Price\ProviderInterface"/><preference type="Magento\CatalogStagingGraphQl\Model\Products\Query\PreviewFilter" for="Magento\CatalogGraphQl\Model\Resolver\Products\Query\ProductQueryInterface"/><type name="\Magento\CatalogGraphQl\Model\Resolver\Product\BatchProductLinks"> <arguments> <argument name="linkTypes" xsi:type="array"> <item name="related" xsi:type="string">related</item> <item name="upsell" xsi:type="string">upsell</item> <item name="crosssell" xsi:type="string">crosssell</item> <item name="associated" xsi:type="string">associated</item></argument> </arguments> </type><type name="Magento\CatalogGraphQl\Model\Resolver\Categories\DataProvider\Category\CollectionProcessor\CatalogProcessor"> <arguments> <argument name="collectionProcessor" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor</argument> </arguments> </type><type name="Magento\MediaStorage\Helper\File\Storage"> <arguments> <argument name="storage" xsi:type="object">Magento\MediaStorage\Model\File\Storage\Proxy</argument> </arguments> </type><type name="Magento\MediaStorage\Helper\File\Storage\Database"> <arguments> <argument name="fileStorage" xsi:type="object">Magento\MediaStorage\Model\File\Storage\File\Proxy</argument> </arguments> </type><type name="Magento\Framework\View\Asset\MergeService"> <plugin name="cleanMergedJsCss" type="Magento\MediaStorage\Model\Asset\Plugin\CleanMergedJsCss"/> </type><type name="Magento\MediaStorage\Console\Command\ImagesResizeCommand"> <arguments> <argument name="imageResizeScheduler" xsi:type="object">Magento\MediaStorage\Service\ImageResizeScheduler\Proxy</argument> </arguments> </type><virtualType name="robotsResultPage" type="Magento\Framework\View\Result\Page"> <arguments> <argument name="template" xsi:type="string">Magento_Robots::robots.phtml</argument> </arguments> </virtualType><virtualType name="robotsResultPageFactory" type="Magento\Framework\View\Result\PageFactory"> <arguments> <argument name="instanceName" xsi:type="string">robotsResultPage</argument> </arguments> </virtualType><type name="Magento\Robots\Controller\Index\Index"> <arguments> <argument name="resultPageFactory" xsi:type="object">robotsResultPageFactory</argument> </arguments> </type><preference for="Magento\ConfigurableProduct\Api\ConfigurableProductManagementInterface" type="Magento\ConfigurableProduct\Model\ConfigurableProductManagement"/><preference for="Magento\ConfigurableProduct\Api\LinkManagementInterface" type="Magento\ConfigurableProduct\Model\LinkManagement"/><preference for="Magento\ConfigurableProduct\Api\OptionRepositoryInterface" type="Magento\ConfigurableProduct\Model\OptionRepository"/><preference for="Magento\ConfigurableProduct\Api\Data\OptionInterface" type="Magento\ConfigurableProduct\Model\Product\Type\Configurable\Attribute"/><preference for="Magento\ConfigurableProduct\Api\Data\OptionValueInterface" type="Magento\ConfigurableProduct\Model\Product\Type\Configurable\OptionValue"/><preference for="Magento\ConfigurableProduct\Api\Data\ConfigurableItemOptionValueInterface" type="Magento\ConfigurableProduct\Model\Quote\Item\ConfigurableItemOptionValue"/><preference for="Magento\ConfigurableProduct\Pricing\Price\PriceResolverInterface" type="Magento\ConfigurableProduct\Pricing\Price\ConfigurablePriceResolver"/><preference for="Magento\ConfigurableProduct\Pricing\Price\ConfigurableOptionsProviderInterface" type="Magento\ConfigurableProduct\Pricing\Price\ConfigurableOptionsProvider"/><preference for="Magento\ConfigurableProduct\Pricing\Price\LowestPriceOptionsProviderInterface" type="Magento\ConfigurableProduct\Pricing\Price\LowestPriceOptionsProvider"/><preference for="Magento\ConfigurableProduct\Model\AttributeOptionProviderInterface" type="Magento\ConfigurableProduct\Model\AttributeOptionProvider"/><preference for="Magento\ConfigurableProduct\Model\ResourceModel\Attribute\OptionSelectBuilderInterface" type="Magento\ConfigurableProduct\Model\ResourceModel\Attribute\OptionSelectBuilder"/><preference for="Magento\ConfigurableProduct\Model\ResourceModel\Product\Indexer\Price\OptionsIndexerInterface" type="Magento\InventoryConfigurableProduct\Pricing\Price\Indexer\OptionsIndexer"/><preference for="Magento\ConfigurableProduct\Model\ResourceModel\Product\Indexer\Price\OptionsSelectBuilderInterface" type="Magento\ConfigurableProduct\Model\ResourceModel\Product\Indexer\Price\OptionsSelectBuilder"/><preference for="Magento\ConfigurableProduct\Pricing\Price\ConfigurableOptionsFilterInterface" type="Magento\ConfigurableProduct\Pricing\Price\ConfigurableOptionsCompositeFilter"/><type name="Magento\CatalogInventory\Model\Quote\Item\QuantityValidator\Initializer\Option"> <plugin name="configurable_product" type="Magento\ConfigurableProduct\Model\Quote\Item\QuantityValidator\Initializer\Option\Plugin\ConfigurableProduct" sortOrder="50"/> </type><type name="Magento\Sales\Model\Order\Admin\Item"> <plugin name="configurable_product" type="Magento\ConfigurableProduct\Model\Order\Admin\Item\Plugin\Configurable" sortOrder="50"/> </type><type name="Magento\Catalog\Helper\Product\Configuration"> <plugin name="configurable_product" type="Magento\ConfigurableProduct\Helper\Product\Configuration\Plugin" sortOrder="50"/> <plugin name="grouped_options" type="Magento\GroupedProduct\Helper\Product\Configuration\Plugin\Grouped"/></type><type name="Magento\ConfigurableProduct\Plugin\Model\Attribute\Backend\AttributeValidation"> <arguments> <argument name="unskippableAttributes" xsi:type="array"> <item name="custom_layout_update" xsi:type="string">custom_layout_update</item> </argument> </arguments> </type><type name="Magento\Catalog\Model\Entity\Product\Attribute\Group\AttributeMapperInterface"> <plugin name="configurable_product" type="Magento\ConfigurableProduct\Model\Entity\Product\Attribute\Group\AttributeMapper\Plugin" sortOrder="50"/> </type><type name="Magento\Catalog\Model\Attribute\LockValidatorComposite"> <arguments> <argument name="validators" xsi:type="array"> <item name="configurable" xsi:type="string">Magento\ConfigurableProduct\Model\Attribute\LockValidator</item> </argument> </arguments> </type><type name="Magento\Catalog\Model\Product\Type"> <plugin name="configurable_output" type="Magento\ConfigurableProduct\Model\Product\Type\Plugin"/> <plugin name="grouped_output" type="Magento\GroupedProduct\Model\Product\Type\Plugin"/></type><virtualType name="Magento\ConfigurableProduct\Pricing\Price\Collection" type="Magento\Framework\Pricing\Price\Collection"> <arguments> <argument name="pool" xsi:type="object">Magento\ConfigurableProduct\Pricing\Price\Pool</argument> </arguments> </virtualType><virtualType name="ConfigurableFinalPriceResolver" type="Magento\ConfigurableProduct\Pricing\Price\ConfigurablePriceResolver"> <arguments> <argument name="priceResolver" xsi:type="object">Magento\ConfigurableProduct\Pricing\Price\FinalPriceResolver</argument> </arguments> </virtualType><type name="Magento\ConfigurableProduct\Pricing\Price\FinalPrice"> <arguments> <argument name="priceResolver" xsi:type="object">ConfigurableFinalPriceResolver</argument> </arguments> </type><virtualType name="ConfigurableRegularPriceResolver" type="Magento\ConfigurableProduct\Pricing\Price\ConfigurablePriceResolver"> <arguments> <argument name="priceResolver" xsi:type="object">Magento\ConfigurableProduct\Pricing\Price\RegularPriceResolver</argument> </arguments> </virtualType><type name="Magento\ConfigurableProduct\Pricing\Price\ConfigurableRegularPrice"> <arguments> <argument name="priceResolver" xsi:type="object">ConfigurableRegularPriceResolver</argument> </arguments> </type><type name="Magento\ProductVideo\Block\Product\View\Gallery"> <plugin name="product_video_gallery" type="Magento\ConfigurableProduct\Block\Plugin\Product\Media\Gallery"/> </type><type name="Magento\ConfigurableProduct\Model\Product\Type\Configurable"> <arguments> <argument name="cache" xsi:type="object">Magento\Framework\App\Cache\Type\Collection</argument> </arguments> <plugin name="add_swatch_attributes_to_configurable" type="Magento\Swatches\Model\Plugin\Configurable"/></type><type name="Magento\ConfigurableProduct\Model\ResourceModel\Product\Type\Configurable"> <arguments> <argument name="attributeOptionProvider" xsi:type="object">Magento\ConfigurableProduct\Model\AttributeOptionProvider\Proxy</argument> </arguments> </type><type name="Magento\ConfigurableProduct\Observer\HideUnsupportedAttributeTypes"> <arguments> <argument name="supportedTypes" xsi:type="array"> <item name="select" xsi:type="string">select</item> <item name="swatch_visual" xsi:type="string">swatch_visual</item><item name="swatch_text" xsi:type="string">swatch_text</item></argument> </arguments> </type><type name="Magento\ConfigurableProduct\Model\ResourceModel\Product\Indexer\Price\Configurable"> <arguments> <argument name="tableStrategy" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\TemporaryTableStrategy</argument> <argument name="connectionName" xsi:type="string">indexer</argument> <argument name="baseSelectProcessor" xsi:type="object">Magento\ConfigurableProduct\Model\ResourceModel\Product\Indexer\Price\BaseStockStatusSelectProcessor</argument> </arguments> </type><type name="Magento\ConfigurableProduct\Model\ResourceModel\Product\Indexer\Price\OptionsSelectBuilder"> <arguments> <argument name="selectProcessor" xsi:type="object">Magento\InventoryConfigurableProduct\Pricing\Price\Indexer\BaseStockStatusSelectProcessor</argument> <argument name="connectionName" xsi:type="string">indexer</argument> </arguments> </type><type name="Magento\ConfigurableProduct\Plugin\Model\ResourceModel\Product"> <arguments> <argument name="productIndexer" xsi:type="object">Magento\Catalog\Model\Indexer\Product\Full</argument> </arguments> </type><type name="Magento\ConfigurableProduct\Pricing\Price\LowestPriceOptionsProvider"> <arguments> <argument name="linkedProductSelectBuilder" xsi:type="object">Magento\ConfigurableProduct\Model\ResourceModel\Product\LinkedProductSelectBuilder</argument> </arguments> </type><type name="Magento\ConfigurableProduct\Model\ResourceModel\Product\LinkedProductSelectBuilder"> <arguments> <argument name="baseSelectProcessor" xsi:type="object">Magento\InventoryConfigurableProduct\Pricing\Price\LowestPriceOptionsProvider\StockStatusBaseSelectProcessor</argument> <argument name="linkedProductSelectBuilder" xsi:type="object">Magento\Catalog\Model\ResourceModel\Product\Indexer\LinkedProductSelectBuilderByIndexPrice</argument> </arguments> </type><type name="Magento\Catalog\Model\Product\Pricing\Renderer\SalableResolver"> <plugin name="configurable" type="Magento\ConfigurableProduct\Plugin\Catalog\Model\Product\Pricing\Renderer\SalableResolver"/> </type><type name="Magento\Tax\Model\Sales\Total\Quote\CommonTaxCollector"> <plugin name="apply_tax_class_id" type="Magento\ConfigurableProduct\Plugin\Tax\Model\Sales\Total\Quote\CommonTaxCollector"/> </type><type name="Magento\Eav\Model\Entity\Attribute\Group"> <arguments> <argument name="reservedSystemNames" xsi:type="array"> <item name="configurable" xsi:type="string">configurable</item> </argument> </arguments> </type><type name="Magento\ConfigurableProduct\Model\Plugin\Frontend\UsedProductsCache"> <arguments> <argument name="cache" xsi:type="object">Magento\Framework\App\Cache\Type\Collection</argument> </arguments> <arguments> <argument name="serializer" xsi:type="object">Magento\Framework\Serialize\Serializer\Json</argument> </arguments> </type><type name="Magento\CatalogInventory\Model\ResourceModel\Stock\Item"> <plugin name="updateStockChangedAuto" type="Magento\ConfigurableProduct\Model\Plugin\UpdateStockChangedAuto"/> <plugin name="update_source_item_at_legacy_stock_item_save" type="Magento\InventoryCatalog\Plugin\CatalogInventory\UpdateSourceItemAtLegacyStockItemSavePlugin"/><plugin name="update_source_stock_for_configurable_product" type="Magento\InventoryConfigurableProduct\Plugin\CatalogInventory\UpdateSourceItemAtLegacyStockItemSavePlugin"/></type><preference for="Magento\GiftRegistry\Api\ShippingMethodManagementInterface" type="Magento\GiftRegistry\Model\ShippingMethodManagement"/><preference for="Magento\GiftRegistry\Api\GuestCart\ShippingMethodManagementInterface" type="Magento\GiftRegistry\Model\GuestCart\ShippingMethodManagement"/><preference for="Magento\GiftRegistry\Model\Item\Collection\FilterInterface" type="Magento\GiftRegistry\Model\Item\Collection\CompositeFilter"/><type name="Magento\GiftRegistry\Model\ResourceModel\Helper"> <arguments> <argument name="modulePrefix" xsi:type="string">giftregistry</argument> </arguments> </type><type name="Magento\GiftRegistry\Model\Config\Data"> <arguments> <argument name="reader" xsi:type="object">Magento\GiftRegistry\Model\Config\Reader\Proxy</argument> </arguments> </type><type name="Magento\Quote\Model\Quote"> <plugin name="gift_registry_update_quote_item" type="Magento\GiftRegistry\Model\Plugin\UpdateQuoteItem"/> <plugin name="remove_store_credit_after_product_delete" type="Magento\CustomerBalance\Plugin\Model\Quote\ResetCustomerBalanceUsage"/></type><preference for="Magento\CheckoutAgreements\Api\CheckoutAgreementsRepositoryInterface" type="Magento\CheckoutAgreements\Model\CheckoutAgreementsRepository"/><preference for="Magento\CheckoutAgreements\Api\Data\AgreementInterface" type="Magento\CheckoutAgreements\Model\Agreement"/><preference for="Magento\CheckoutAgreements\Api\CheckoutAgreementsListInterface" type="Magento\CheckoutAgreements\Model\CheckoutAgreementsList"/><type name="Magento\CheckoutAgreements\Model\AgreementsValidator"> <arguments> <argument name="list" xsi:type="array"> <item name="checkoutagreements" xsi:type="object">\Magento\CheckoutAgreements\Model\AgreementsProvider</item> </argument> </arguments> </type><type name="Magento\CheckoutAgreements\Model\CheckoutAgreementsList"> <arguments> <argument name="collectionProcessor" xsi:type="object">Magento\CheckoutAgreements\Model\Api\SearchCriteria\CollectionProcessor</argument> </arguments> </type><virtualType name="Magento\CheckoutAgreements\Model\Api\SearchCriteria\CollectionProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor"> <arguments> <argument name="processors" xsi:type="array"> <item name="filters" xsi:type="object">Magento\CheckoutAgreements\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor</item> <item name="sorting" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\SortingProcessor</item> <item name="pagination" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\PaginationProcessor</item> </argument> </arguments> </virtualType><virtualType name="Magento\CheckoutAgreements\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\FilterProcessor"> <arguments> <argument name="customFilters" xsi:type="array"> <item name="store_id" xsi:type="object">Magento\CheckoutAgreements\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor\StoreFilter</item> </argument> </arguments> </virtualType><type name="Magento\Quote\Api\CartRepositoryInterface"> <plugin name="save_fake_quota_in_preview" type="Magento\CheckoutStaging\Plugin\SavePreviewQuotaPlugin"/> <plugin name="remove_in_store_pickup_data" type="Magento\InventoryInStorePickupMultishipping\Plugin\Quote\RemoveInStorePickupDataInMultishippingModePlugin"/></type><type name="Magento\ScalableCheckout\Console\Command\SplitQuote"> <arguments> <argument name="tables" xsi:type="array"> <item name="quote_preview" xsi:type="string">quote_preview</item> <item name="magento_customercustomattributes_sales_flat_quote" xsi:type="string">magento_customercustomattributes_sales_flat_quote</item><item name="magento_customercustomattributes_sales_flat_quote_address" xsi:type="string">magento_customercustomattributes_sales_flat_quote_address</item><item name="quote_shipping_rate" xsi:type="string">quote_shipping_rate</item><item name="quote_address_item" xsi:type="string">quote_address_item</item><item name="quote_item_option" xsi:type="string">quote_item_option</item><item name="quote_payment" xsi:type="string">quote_payment</item><item name="quote_item" xsi:type="string">quote_item</item><item name="quote_address" xsi:type="string">quote_address</item><item name="quote_id_mask" xsi:type="string">quote_id_mask</item><item name="quote" xsi:type="string">quote</item></argument> </arguments> </type><preference for="Magento\MediaGalleryUiApi\Api\ConfigInterface" type="Magento\MediaGalleryUi\Model\Config"/><preference for="Magento\MediaGalleryUiApi\Api\Data\InsertImageDataInterface" type="\Magento\MediaGalleryUi\Model\InsertImageData"/><virtualType name="mediaGallerySearchResult" type="Magento\Framework\View\Element\UiComponent\DataProvider\SearchResult"> <arguments> <argument name="mainTable" xsi:type="string">media_gallery_asset_grid</argument> <argument name="resourceModel" xsi:type="string">Magento\MediaGalleryUi\Model\ResourceModel\Grid\Asset</argument> </arguments> </virtualType><type name="Magento\MediaGallerySynchronizationApi\Model\ImportFilesComposite"> <plugin name="createMediaGalleryThumbnails" type="Magento\MediaGalleryUi\Plugin\CreateThumbnails"/> <arguments> <argument name="importers" xsi:type="array"> <item name="10" xsi:type="object">Magento\MediaGallerySynchronization\Model\ImportMediaAsset</item> <item name="20" xsi:type="object">Magento\MediaGallerySynchronizationMetadata\Model\ImportKeywords</item></argument> </arguments></type><preference for="Magento\VersionsCms\Model\Hierarchy\ConfigInterface" type="Magento\VersionsCms\Model\Hierarchy\Config"/><preference for="Magento\VersionsCms\Api\Data\HierarchyNodeSearchResultsInterface" type="Magento\Framework\Api\SearchResults"/><preference for="Magento\VersionsCms\Api\Data\HierarchyNodeInterface" type="Magento\VersionsCms\Model\Hierarchy\Node"/><preference for="Magento\VersionsCms\Api\HierarchyNodeRepositoryInterface" type="Magento\VersionsCms\Model\Hierarchy\NodeRepository"/><preference for="Magento\VersionsCms\Model\CurrentNodeResolverInterface" type="Magento\VersionsCms\Model\CurrentNodeResolver"/><type name="Magento\VersionsCms\Model\Hierarchy\Config"> <arguments> <argument name="reader" xsi:type="object">Magento\VersionsCms\Model\Hierarchy\Config\Reader\Proxy</argument> </arguments> </type><type name="Magento\VersionsCms\Model\Hierarchy\NodeRepository"> <arguments> <argument name="collectionProcessor" xsi:type="object">Magento\VersionsCms\Api\SearchCriteria\HierarchyNodeCollectionProcessor</argument> </arguments> </type><virtualType name="Magento\VersionsCms\Api\SearchCriteria\HierarchyNodeCollectionProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor"> <arguments> <argument name="processors" xsi:type="array"> <item name="filters" xsi:type="object">Magento\VersionsCms\Model\Api\SearchCriteria\CollectionProcessor\HierarchyNodeFilterProcessor</item> <item name="sorting" xsi:type="object">Magento\VersionsCms\Model\Api\SearchCriteria\CollectionProcessor\HierarchyNodeSortingProcessor</item> </argument> </arguments> </virtualType><virtualType name="Magento\VersionsCms\Model\Api\SearchCriteria\CollectionProcessor\HierarchyNodeFilterProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\FilterProcessor"> <arguments> <argument name="customFilters" xsi:type="array"> <item name="store_id" xsi:type="object">Magento\VersionsCms\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor\HierarchyNodeStoreFilter</item> </argument> <argument name="fieldMapping" xsi:type="array"> <item name="page_id" xsi:type="string">main_table.page_id</item> </argument> </arguments> </virtualType><virtualType name="Magento\VersionsCms\Model\Api\SearchCriteria\CollectionProcessor\HierarchyNodeSortingProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\SortingProcessor"> <arguments> <argument name="fieldMapping" xsi:type="array"> <item name="page_id" xsi:type="string">main_table.page_id</item> </argument> </arguments> </virtualType><type name="Magento\Cms\Model\ResourceModel\Page"> <plugin name="cms_url_rewrite_plugin" type="Magento\CmsUrlRewrite\Plugin\Cms\Model\ResourceModel\Page"/> </type><type name="Magento\UrlRewriteGraphQl\Model\Resolver\UrlRewrite\CustomUrlLocator"> <arguments> <argument name="urlLocators" xsi:type="array"> <item name="homePageUrlLocator" xsi:type="object">Magento\CmsUrlRewriteGraphQl\Model\Resolver\UrlRewrite\HomePageUrlLocator</item> </argument> </arguments> </type><type name="Magento\UrlRewriteGraphQl\Model\Resolver\UrlRewrite\UrlResolverIdentity"> <arguments> <argument name="urlResolverIdentities" xsi:type="array"> <item name="cms_page" xsi:type="object">Magento\CmsUrlRewriteGraphQl\Model\Resolver\UrlRewrite\CmsUrlResolverIdentity</item> <item name="product" xsi:type="object">Magento\CatalogUrlRewriteGraphQl\Model\Resolver\UrlRewrite\CatalogUrlResolverIdentity</item><item name="category" xsi:type="object">Magento\CatalogUrlRewriteGraphQl\Model\Resolver\UrlRewrite\CatalogUrlResolverIdentity</item></argument> </arguments> </type><type name="Magento\UrlRewriteGraphQl\Model\DataProvider\EntityDataProviderComposite"> <arguments> <argument name="dataProviders" xsi:type="array"> <item name="cms_page" xsi:type="object">Magento\CmsUrlRewriteGraphQl\Model\DataProvider\UrlRewrite\Page</item> <item name="category" xsi:type="object">Magento\CatalogUrlRewriteGraphQl\Model\DataProvider\UrlRewrite\CatalogTreeDataProvider</item><item name="product" xsi:type="object">Magento\CatalogUrlRewriteGraphQl\Model\DataProvider\UrlRewrite\ProductDataProvider</item></argument> </arguments> </type><preference for="Magento\Integration\Api\IntegrationServiceInterface" type="Magento\Integration\Model\IntegrationService"/><preference for="Magento\Integration\Api\AuthorizationServiceInterface" type="Magento\Integration\Model\AuthorizationService"/><preference for="Magento\Integration\Api\OauthServiceInterface" type="Magento\Integration\Model\OauthService"/><preference for="Magento\Framework\Oauth\ConsumerInterface" type="Magento\Integration\Model\Oauth\Consumer"/><preference for="Magento\Framework\Oauth\NonceGeneratorInterface" type="Magento\Integration\Model\Oauth\Nonce\Generator"/><preference for="Magento\Framework\Oauth\TokenProviderInterface" type="Magento\Integration\Model\Oauth\Token\Provider"/><preference for="Magento\Integration\Api\CustomerTokenServiceInterface" type="Magento\Integration\Model\CustomerTokenService"/><preference for="Magento\Integration\Api\AdminTokenServiceInterface" type="Magento\Integration\Model\AdminTokenService"/><preference for="Magento\Integration\Model\Oauth\Token\RequestLog\ReaderInterface" type="Magento\Integration\Model\ResourceModel\Oauth\Token\RequestLog"/><preference for="Magento\Integration\Model\Oauth\Token\RequestLog\WriterInterface" type="Magento\Integration\Model\ResourceModel\Oauth\Token\RequestLog"/><type name="Magento\Integration\Model\Oauth\Nonce\Generator"> <arguments> <argument name="date" xsi:type="object">Magento\Framework\Stdlib\DateTime\DateTime\Proxy</argument> </arguments> </type><type name="Magento\Integration\Model\Oauth\Token\Provider"> <arguments> <argument name="date" xsi:type="object">Magento\Framework\Stdlib\DateTime\DateTime\Proxy</argument> </arguments> </type><type name="Magento\Integration\Api\IntegrationServiceInterface"> <plugin name="webapiIntegrationService" type="Magento\Integration\Model\Plugin\Integration"/> </type><type name="Magento\User\Model\User"> <plugin name="revokeTokensFromInactiveAdmins" type="Magento\Integration\Plugin\Model\AdminUser"/> </type><type name="Magento\Customer\Model\Customer"> <plugin name="revokeTokensFromInactiveCustomers" type="Magento\Integration\Plugin\Model\CustomerUser"/> </type><type name="Magento\Integration\Model\CompositeUserTokenValidator"> <arguments> <argument name="validators" xsi:type="array"> <item name="expiration" xsi:type="object">Magento\Integration\Model\UserToken\ExpirationValidator</item> <item name="jwt_revoked" xsi:type="object">Magento\JwtUserToken\Model\RevokedValidator</item></argument> </arguments> </type><preference for="Magento\Integration\Api\Data\UserTokenParametersInterface" type="Magento\Integration\Model\UserToken\UserTokenParameters"/><preference for="Magento\Integration\Api\UserTokenValidatorInterface" type="Magento\Integration\Model\CompositeUserTokenValidator"/><preference for="Magento\Integration\Api\UserTokenIssuerInterface" type="Magento\JwtUserToken\Model\Issuer"/><preference for="Magento\Integration\Api\UserTokenReaderInterface" type="Magento\Integration\Model\CompositeTokenReader"/><preference for="Magento\Integration\Api\UserTokenRevokerInterface" type="Magento\JwtUserToken\Model\Revoker"/><type name="Magento\Integration\Model\CompositeTokenReader"> <arguments> <argument name="readers" xsi:type="array"> <item name="5" xsi:type="object">Magento\Integration\Model\OpaqueToken\Reader</item> <item name="10" xsi:type="object">Magento\JwtUserToken\Model\Reader</item></argument> </arguments> </type><type name="Magento\ConfigurableProduct\Model\ResourceModel\Product\Type\Configurable\Product\Collection"> <plugin name="catalogRulePriceForConfigurableProduct" type="Magento\CatalogRuleConfigurable\Plugin\ConfigurableProduct\Model\ResourceModel\AddCatalogRulePrice"/> </type><preference for="Magento\QuoteGraphQl\Model\CartItem\DataProvider\CustomizableOptionValueInterface" type="Magento\QuoteGraphQl\Model\CartItem\DataProvider\CustomizableOptionValue\Composite"/><preference for="Magento\QuoteGraphQl\Model\CartItem\DataProvider\Processor\ItemDataProcessorInterface" type="Magento\QuoteGraphQl\Model\CartItem\DataProvider\Processor\ItemDataCompositeProcessor"/><type name="Magento\QuoteGraphQl\Model\Resolver\CartItemTypeResolver"> <arguments> <argument name="supportedTypes" xsi:type="array"> <item name="simple" xsi:type="string">SimpleCartItem</item> <item name="virtual" xsi:type="string">VirtualCartItem</item> <item name="configurable" xsi:type="string">ConfigurableCartItem</item> <item name="downloadable" xsi:type="string">DownloadableCartItem</item> <item name="bundle" xsi:type="string">BundleCartItem</item><item name="giftcard" xsi:type="string">GiftCardCartItem</item></argument> </arguments> </type><type name="Magento\QuoteGraphQl\Model\CartItem\DataProvider\CustomizableOptionValue\Composite"> <arguments> <argument name="customizableOptionValues" xsi:type="array"> <item name="field" xsi:type="string">Magento\QuoteGraphQl\Model\CartItem\DataProvider\CustomizableOptionValue\Text</item> <item name="date" xsi:type="string">Magento\QuoteGraphQl\Model\CartItem\DataProvider\CustomizableOptionValue\Text</item> <item name="time" xsi:type="string">Magento\QuoteGraphQl\Model\CartItem\DataProvider\CustomizableOptionValue\Text</item> <item name="date_time" xsi:type="string">Magento\QuoteGraphQl\Model\CartItem\DataProvider\CustomizableOptionValue\Text</item> <item name="area" xsi:type="string">Magento\QuoteGraphQl\Model\CartItem\DataProvider\CustomizableOptionValue\Text</item> <item name="drop_down" xsi:type="string">Magento\QuoteGraphQl\Model\CartItem\DataProvider\CustomizableOptionValue\Dropdown</item> <item name="radio" xsi:type="string">Magento\QuoteGraphQl\Model\CartItem\DataProvider\CustomizableOptionValue\Dropdown</item> <item name="checkbox" xsi:type="string">Magento\QuoteGraphQl\Model\CartItem\DataProvider\CustomizableOptionValue\Multiple</item> <item name="multiple" xsi:type="string">Magento\QuoteGraphQl\Model\CartItem\DataProvider\CustomizableOptionValue\Multiple</item> </argument> </arguments> </type><type name="Magento\QuoteGraphQl\Model\Resolver\AvailablePaymentMethods"> <arguments> <argument name="informationShipping" xsi:type="object">Magento\Quote\Api\ShippingMethodManagementInterface</argument> </arguments> </type><type name="Magento\Framework\App\PageCache\Identifier"> <plugin name="core-app-area-design-exception-plugin" type="Magento\PageCache\Model\App\CacheIdentifierPlugin" sortOrder="10"/> </type><type name="Magento\Framework\App\PageCache\Cache"> <plugin name="fpc-type-plugin" type="Magento\PageCache\Model\App\PageCachePlugin"/> </type><type name="Magento\PageCache\Controller\Block"> <arguments> <argument name="layoutCacheKey" xsi:type="object">Magento\Framework\View\Layout\LayoutCacheKeyInterface</argument> </arguments> </type><type name="Magento\Framework\App\Cache\RuntimeStaleCacheStateModifier"> <arguments> <argument name="cacheTypes" xsi:type="array"> <item name="full_page_cache" xsi:type="const">Magento\PageCache\Model\Cache\Type::TYPE_IDENTIFIER</item> </argument> </arguments> </type><preference for="Magento\PageCache\Model\VclGeneratorInterface" type="Magento\PageCache\Model\Varnish\VclGenerator"/><preference for="Magento\PageCache\Model\VclTemplateLocatorInterface" type="Magento\PageCache\Model\Varnish\VclTemplateLocator"/><preference for="Magento\PageCache\Model\Spi\PageCacheTagsPreprocessorInterface" type="Magento\PageCache\Model\PageCacheTagsPreprocessorComposite"/><preference for="Magento\Contact\Model\MailInterface" type="Magento\Contact\Model\Mail"/><preference for="Magento\Contact\Model\ConfigInterface" type="Magento\Contact\Model\Config"/><preference for="Magento\Framework\Stdlib\CookieManagerInterface" type="Magento\Framework\Stdlib\Cookie\PhpCookieManager"/><preference for="Magento\Cron\Model\ConfigInterface" type="Magento\Cron\Model\Config"/><preference for="Magento\Framework\Shell\CommandRendererInterface" type="Magento\Framework\Shell\CommandRenderer"/><preference for="Magento\Framework\Crontab\CrontabManagerInterface" type="Magento\Framework\Crontab\CrontabManager"/><preference for="Magento\Framework\Crontab\TasksProviderInterface" type="Magento\Framework\Crontab\TasksProvider"/><type name="Magento\Config\Model\Config\Structure\Converter"> <plugin name="cron_backend_config_structure_converter_plugin" type="Magento\Cron\Model\Backend\Config\Structure\Converter"/> </type><virtualType name="Magento\Cron\Model\VirtualLoggerHandler" type="Magento\Framework\Logger\Handler\Base"> <arguments> <argument name="fileName" xsi:type="string">/var/log/cron.log</argument> </arguments> </virtualType><virtualType name="Magento\Cron\Model\VirtualLogger" type="Magento\Framework\Logger\Monolog"> <arguments> <argument name="handlers" xsi:type="array"> <item name="system" xsi:type="object">Magento\Cron\Model\VirtualLoggerHandler</item> </argument> </arguments> </virtualType><virtualType name="shellBackground" type="Magento\Framework\Shell"> <arguments> <argument name="commandRenderer" xsi:type="object">Magento\Framework\Shell\CommandRendererBackground</argument> </arguments> </virtualType><type name="Magento\Cron\Observer\ProcessCronQueueObserver"> <arguments> <argument name="shell" xsi:type="object">shellBackground</argument> <argument name="logger" xsi:type="object">Magento\Cron\Model\VirtualLogger</argument> </arguments> </type><type name="Magento\Framework\Crontab\CrontabManagerInterface"> <arguments> <argument name="shell" xsi:type="object">Magento\Framework\App\Shell</argument> </arguments> </type><type name="Magento\Framework\Crontab\TasksProviderInterface"> <arguments> <argument name="tasks" xsi:type="array"> <item name="cronMagento" xsi:type="array"> <item name="command" xsi:type="string">{magentoRoot}bin/magento cron:run | grep -v "Ran jobs by schedule" &gt;&gt; {magentoLog}magento.cron.log</item> <item name="optional" xsi:type="boolean">false</item> </item> </argument> </arguments> </type><preference for="Magento\Cron\Model\DeadlockRetrierInterface" type="Magento\Cron\Model\DeadlockRetrier"/><preference for="Magento\Csp\Api\CspRendererInterface" type="Magento\Csp\Model\CspRenderer"/><type name="Magento\Csp\Model\PolicyRendererPool"> <arguments> <argument name="renderers" xsi:type="array"> <item name="header" xsi:type="object">Magento\Csp\Model\Policy\Renderer\SimplePolicyHeaderRenderer</item> </argument> </arguments> </type><preference for="Magento\Csp\Api\PolicyCollectorInterface" type="Magento\Csp\Model\CompositePolicyCollector"/><preference for="Magento\Csp\Model\Collector\MergerInterface" type="Magento\Csp\Model\Collector\CompositeMerger"/><type name="Magento\Csp\Model\Collector\CompositeMerger"> <arguments> <argument name="mergers" xsi:type="array"> <item name="fetch" xsi:type="object">Magento\Csp\Model\Collector\FetchPolicyMerger</item> <item name="flag" xsi:type="object">Magento\Csp\Model\Collector\FlagPolicyMerger</item> <item name="plugins" xsi:type="object">Magento\Csp\Model\Collector\PluginTypesPolicyMerger</item> <item name="sandbox" xsi:type="object">Magento\Csp\Model\Collector\SandboxPolicyMerger</item> </argument> </arguments> </type><type name="Magento\Csp\Model\CompositePolicyCollector"> <arguments> <argument name="collectors" xsi:type="array"> <item name="config" xsi:type="object" sortOrder="1">Magento\Csp\Model\Collector\ConfigCollector\Proxy</item> <item name="whitelist" xsi:type="object" sortOrder="2">Magento\Csp\Model\Collector\CspWhitelistXmlCollector\Proxy</item> <item name="controller" xsi:type="object" sortOrder="100">Magento\Csp\Model\Collector\ControllerCollector\Proxy</item> <item name="dynamic" xsi:type="object" sortOrder="3">Magento\Csp\Model\Collector\DynamicCollector\Proxy</item> </argument> <argument name="mergers" xsi:type="array"> <item name="composite" xsi:type="object">Magento\Csp\Model\Collector\MergerInterface</item> </argument> </arguments> </type><type name="Magento\Csp\Model\Collector\Config\PolicyReaderPool"> <arguments> <argument name="readers" xsi:type="array"> <item name="fetch" xsi:type="object">Magento\Csp\Model\Collector\Config\FetchPolicyReader</item> <item name="plugin_types" xsi:type="object">Magento\Csp\Model\Collector\Config\PluginTypesPolicyReader</item> <item name="sandbox" xsi:type="object">Magento\Csp\Model\Collector\Config\SandboxPolicyReader</item> <item name="flag" xsi:type="object">Magento\Csp\Model\Collector\Config\FlagPolicyReader</item> </argument> </arguments> </type><preference for="Magento\Csp\Api\ModeConfigManagerInterface" type="Magento\Csp\Model\Mode\ConfigManager"/><type name="Magento\Csp\Model\Collector\CspWhitelistXml\Reader"> <arguments> <argument name="converter" xsi:type="object">Magento\Csp\Model\Collector\CspWhitelistXml\Converter</argument> <argument name="schemaLocator" xsi:type="object">Magento\Csp\Model\Collector\CspWhitelistXml\SchemaLocator</argument> <argument name="fileResolver" xsi:type="object">Magento\Csp\Model\Collector\CspWhitelistXml\FileResolver</argument> <argument name="fileName" xsi:type="string">csp_whitelist.xml</argument> </arguments> </type><type name="Magento\Csp\Model\Collector\CspWhitelistXmlCollector"> <arguments> <argument name="configReader" xsi:type="object">Magento\Csp\Model\Collector\CspWhitelistXml\Data</argument> </arguments> </type><type name="Magento\Csp\Model\Collector\CspWhitelistXml\Data"> <arguments> <argument name="reader" xsi:type="object">Magento\Csp\Model\Collector\CspWhitelistXml\Reader\Proxy</argument> </arguments> </type><preference for="Magento\Csp\Api\InlineUtilInterface" type="Magento\Csp\Helper\InlineUtil"/><type name="Magento\Csp\Plugin\TemplateRenderingPlugin"> <arguments> <argument name="util" xsi:type="object">Magento\Csp\Api\InlineUtilInterface\Proxy</argument> </arguments> </type><type name="Magento\Framework\View\TemplateEngine\Php"> <arguments> <argument name="blockVariables" xsi:type="array"> <item name="csp" xsi:type="object">Magento\Csp\Api\InlineUtilInterface\Proxy</item> <item name="secureRenderer" xsi:type="object">Magento\Framework\View\Helper\SecureHtmlRenderer\Proxy</item> <item name="escaper" xsi:type="object">Magento\Framework\Escaper</item> <item name="localeFormatter" xsi:type="object">Magento\Framework\Locale\LocaleFormatter</item> </argument> </arguments> <plugin name="Amasty_Base::AddEscaperToPhpRenderer" type="Amasty\Base\Plugin\Framework\View\TemplateEngine\Php" sortOrder="10"/></type><type name="Magento\Framework\App\RouterInterface"> <plugin name="csp_aware_plugin" type="Magento\Csp\Plugin\CspAwareControllerPlugin"/> </type><type name="Magento\Framework\View\Helper\SecureHtmlRenderer"> <arguments> <argument name="processors" xsi:type="array"> <item name="csp" xsi:type="object">Magento\Csp\Helper\InlineUtil\Proxy</item> </argument> </arguments> </type><type name="Magento\Csp\Observer\Render"> <arguments> <argument name="cspRenderer" xsi:type="object">Magento\Csp\Api\CspRendererInterface</argument> </arguments> </type><type name="Magento\Csp\Model\BlockCache"> <arguments> <argument name="cache" xsi:type="object">configured_block_cache</argument> <argument name="serializer" xsi:type="object">Magento\Framework\Serialize\Serializer\Serialize</argument> </arguments> </type><type name="Magento\Framework\View\Element\Context"> <arguments> <argument name="cache" xsi:type="object">Magento\Csp\Model\BlockCache</argument> </arguments> </type><type name="Magento\AdvancedCheckout\Helper\Data"> <arguments> <argument name="cart" xsi:type="object">Magento\AdvancedCheckout\Model\Cart\Proxy</argument> <argument name="catalogConfig" xsi:type="object">Magento\Catalog\Model\Config\Proxy</argument> <argument name="session" xsi:type="object">Magento\Customer\Model\Session\Proxy</argument> <argument name="customerSession" xsi:type="object">Magento\Customer\Model\Session\Proxy</argument> <argument name="checkoutSession" xsi:type="object">Magento\Checkout\Model\Session\Proxy</argument> <argument name="scopeConfig" xsi:type="object">Magento\Framework\App\Config\ScopeConfigInterface\Proxy</argument> </arguments> </type><preference for="Magento\AdvancedCheckout\Model\IsProductInStockInterface" type="Magento\AdvancedCheckout\Model\IsProductInStock"/><preference for="\Magento\AdvancedCheckout\Model\AreProductsSalableForRequestedQtyInterface" type="\Magento\AdvancedCheckout\Model\AreProductsSalableForRequestedQty"/><preference for="Magento\Analytics\ReportXml\ConfigInterface" type="Magento\Analytics\ReportXml\Config"/><preference for="Magento\Analytics\Model\ConfigInterface" type="Magento\Analytics\Model\Config"/><preference for="Magento\Analytics\Model\ReportWriterInterface" type="Magento\Analytics\Model\ReportWriter"/><preference for="Magento\Analytics\Api\LinkProviderInterface" type="Magento\Analytics\Model\LinkProvider"/><preference for="Magento\Analytics\Api\Data\LinkInterface" type="Magento\Analytics\Model\Link"/><preference for="Magento\Analytics\Model\Connector\Http\ClientInterface" type="Magento\Analytics\Model\Connector\Http\Client\Curl"/><preference for="Magento\Analytics\Model\ExportDataHandlerInterface" type="Magento\Analytics\Model\ExportDataHandlerNotification"/><preference for="Magento\Analytics\Model\Connector\Http\ConverterInterface" type="Magento\Analytics\Model\Connector\Http\JsonConverter"/><type name="Magento\Analytics\Model\Connector"> <arguments> <argument name="commands" xsi:type="array"> <item name="signUp" xsi:type="string">Magento\Analytics\Model\Connector\SignUpCommand</item> <item name="update" xsi:type="string">Magento\Analytics\Model\Connector\UpdateCommand</item> <item name="notifyDataChanged" xsi:type="string">Magento\Analytics\Model\Connector\NotifyDataChangedCommand</item> </argument> </arguments> </type><type name="Magento\Analytics\ReportXml\Config"> <arguments> <argument name="data" xsi:type="object">Magento\Analytics\ReportXml\Config\Data</argument> </arguments> </type><virtualType name="Magento\Analytics\ReportXml\Config\Data" type="Magento\Framework\Config\Data"> <arguments> <argument name="reader" xsi:type="object">Magento\Analytics\ReportXml\Config\Reader</argument> <argument name="cacheId" xsi:type="string">Magento_Analytics_ReportXml_CacheId</argument> </arguments> </virtualType><virtualType name="Magento\Analytics\ReportXml\Config\SchemaLocator" type="Magento\Framework\Config\SchemaLocator"> <arguments> <argument name="realPath" xsi:type="string">urn:magento:module:Magento_Analytics:etc/reports.xsd</argument> </arguments> </virtualType><virtualType name="Magento\Analytics\ReportXml\Config\Reader\Xml" type="Magento\Framework\Config\Reader\Filesystem"> <arguments> <argument name="converter" xsi:type="object">Magento\Analytics\ReportXml\Config\Converter\Xml</argument> <argument name="schemaLocator" xsi:type="object">Magento\Analytics\ReportXml\Config\SchemaLocator</argument> <argument name="fileName" xsi:type="string">reports.xml</argument> <argument name="idAttributes" xsi:type="array"> <item name="/config/report" xsi:type="string">name</item> <item name="/config/report/source/link-source" xsi:type="array"> <item name="name" xsi:type="string">name</item> <item name="alias" xsi:type="string">alias</item> </item> <item name="/config/report/source/attribute" xsi:type="string">name</item> <item name="/config/report/source/link-source/attribute" xsi:type="string">name</item> <!-- filter conditions for main source--> <item name="/config/report/source(/filter)+" xsi:type="string">glue</item> <item name="/config/report/source(/filter)+/condition" xsi:type="array"> <item name="attribute" xsi:type="string">attribute</item> <item name="operator" xsi:type="string">operator</item> </item> <!-- filter conditions for joined source--> <item name="/config/report/source/link-source(/filter)+" xsi:type="string">glue</item> <item name="/config/report/source/link-source(/filter)+/condition" xsi:type="array"> <item name="attribute" xsi:type="string">attribute</item> <item name="operator" xsi:type="string">operator</item> </item> <!-- join conditions for joined source--> <item name="/config/report/source/link-source/using" xsi:type="string">glue</item> <item name="/config/report/source/link-source/using/condition" xsi:type="array"> <item name="attribute" xsi:type="string">attribute</item> <item name="operator" xsi:type="string">operator</item> </item> <item name="/config/report/source/link-source/using(/filter)+" xsi:type="string">glue</item> <item name="/config/report/source/link-source/using(/filter)+/condition" xsi:type="array"> <item name="attribute" xsi:type="string">attribute</item> <item name="operator" xsi:type="string">operator</item> </item> </argument> </arguments> </virtualType><type name="Magento\Analytics\ReportXml\Config\Reader"> <arguments> <argument name="readers" xsi:type="array"> <item name="xml" xsi:type="object">Magento\Analytics\ReportXml\Config\Reader\Xml</item> </argument> </arguments> </type><type name="Magento\Analytics\Model\Config"> <arguments> <argument name="data" xsi:type="object">Magento\Analytics\Model\Config\Data</argument> </arguments> </type><virtualType name="Magento\Analytics\Model\Config\Data" type="Magento\Framework\Config\Data"> <arguments> <argument name="reader" xsi:type="object">Magento\Analytics\Model\Config\Reader</argument> <argument name="cacheId" xsi:type="string">Magento_Analytics_CacheId</argument> </arguments> </virtualType><virtualType name="Magento\Analytics\Model\Config\SchemaLocator" type="Magento\Framework\Config\SchemaLocator"> <arguments> <argument name="realPath" xsi:type="string">urn:magento:module:Magento_Analytics:etc/analytics.xsd</argument> </arguments> </virtualType><virtualType name="Magento\Analytics\Model\Config\Reader\Xml" type="Magento\Framework\Config\Reader\Filesystem"> <arguments> <argument name="converter" xsi:type="object">Magento\Analytics\ReportXml\Config\Converter\Xml</argument> <argument name="schemaLocator" xsi:type="object">Magento\Analytics\Model\Config\SchemaLocator</argument> <argument name="fileName" xsi:type="string">analytics.xml</argument> <argument name="idAttributes" xsi:type="array"> <item name="/config/file" xsi:type="string">name</item> </argument> </arguments> </virtualType><type name="Magento\Analytics\ReportXml\QueryFactory"> <arguments> <argument name="assemblers" xsi:type="array"> <item name="from" xsi:type="object">Magento\Analytics\ReportXml\DB\Assembler\FromAssembler</item> <item name="filter" xsi:type="object">Magento\Analytics\ReportXml\DB\Assembler\FilterAssembler</item> <item name="join" xsi:type="object">Magento\Analytics\ReportXml\DB\Assembler\JoinAssembler</item> </argument> </arguments> </type><type name="Magento\Analytics\Model\Config\Reader"> <arguments> <argument name="readers" xsi:type="array"> <item name="xml" xsi:type="object">Magento\Analytics\Model\Config\Reader\Xml</item> </argument> </arguments> </type><type name="Magento\Analytics\Model\StoreConfigurationProvider"> <arguments> <argument name="configPaths" xsi:type="array"> <item name="0" xsi:type="string">web/unsecure/base_url</item> <item name="1" xsi:type="string">currency/options/base</item> <item name="2" xsi:type="string">general/locale/timezone</item> <item name="3" xsi:type="string">general/country/default</item> <item name="4" xsi:type="string">carriers/dhl/title</item> <item name="5" xsi:type="string">carriers/dhl/active</item> <item name="6" xsi:type="string">carriers/fedex/title</item> <item name="7" xsi:type="string">carriers/fedex/active</item> <item name="8" xsi:type="string">carriers/flatrate/title</item> <item name="9" xsi:type="string">carriers/flatrate/active</item> <item name="10" xsi:type="string">carriers/tablerate/title</item> <item name="11" xsi:type="string">carriers/tablerate/active</item> <item name="12" xsi:type="string">carriers/freeshipping/title</item> <item name="13" xsi:type="string">carriers/freeshipping/active</item> <item name="14" xsi:type="string">carriers/ups/title</item> <item name="15" xsi:type="string">carriers/ups/active</item> <item name="16" xsi:type="string">carriers/usps/title</item> <item name="17" xsi:type="string">carriers/usps/active</item> <item name="18" xsi:type="string">payment/free/title</item> <item name="19" xsi:type="string">payment/free/active</item> <item name="20" xsi:type="string">payment/checkmo/title</item> <item name="21" xsi:type="string">payment/checkmo/active</item> <item name="22" xsi:type="string">payment/purchaseorder/title</item> <item name="23" xsi:type="string">payment/purchaseorder/active</item> <item name="24" xsi:type="string">payment/banktransfer/title</item> <item name="25" xsi:type="string">payment/banktransfer/active</item> <item name="26" xsi:type="string">payment/cashondelivery/title</item> <item name="27" xsi:type="string">payment/cashondelivery/active</item> <item name="28" xsi:type="string">payment/paypal_billing_agreement/title</item> <item name="29" xsi:type="string">payment/paypal_billing_agreement/active</item> <item name="30" xsi:type="string">analytics/general/vertical</item> <item name="1000" xsi:type="string">cms/pagebuilder/enabled</item><item name="1001" xsi:type="string">cms/pagebuilder/google_maps_api_key</item><item name="1002" xsi:type="string">cms/pagebuilder/column_grid_default</item><item name="1003" xsi:type="string">cms/pagebuilder/column_grid_max</item></argument> </arguments> </type><type name="Magento\Analytics\Model\Config\Source\Vertical"> <arguments> <argument name="verticals" xsi:type="array"> <item name="0" xsi:type="string" translatable="true">Apps and Games</item> <item name="1" xsi:type="string" translatable="true">Athletic/Sporting Goods</item> <item name="2" xsi:type="string" translatable="true">Art and Design</item> <item name="3" xsi:type="string" translatable="true">Auto Parts</item> <item name="4" xsi:type="string" translatable="true">Baby/Children&#x2019;s Apparel, Gear and Toys</item> <item name="5" xsi:type="string" translatable="true">Beauty and Cosmetics</item> <item name="6" xsi:type="string" translatable="true">Books, Music and Magazines</item> <item name="7" xsi:type="string" translatable="true">Crafts and Stationery</item> <item name="8" xsi:type="string" translatable="true">Consumer Electronics</item> <item name="9" xsi:type="string" translatable="true">Deal Site</item> <item name="10" xsi:type="string" translatable="true">Fashion Apparel and Accessories</item> <item name="11" xsi:type="string" translatable="true">Food, Beverage and Grocery</item> <item name="12" xsi:type="string" translatable="true">Home Goods and Furniture</item> <item name="13" xsi:type="string" translatable="true">Home Improvement</item> <item name="14" xsi:type="string" translatable="true">Jewelry and Watches</item> <item name="15" xsi:type="string" translatable="true">Mass Merchant</item> <item name="16" xsi:type="string" translatable="true">Office Supplies</item> <item name="17" xsi:type="string" translatable="true">Outdoor and Camping Gear</item> <item name="18" xsi:type="string" translatable="true">Pet Goods</item> <item name="19" xsi:type="string" translatable="true">Pharma and Medical Devices</item> <item name="20" xsi:type="string" translatable="true">Technology B2B</item> <item name="21" xsi:type="string" translatable="true">Other</item> </argument> </arguments> </type><type name="Magento\Config\Model\Config\Backend\Baseurl"> <plugin name="updateAnalyticsSubscription" type="Magento\Analytics\Model\Plugin\BaseUrlConfigPlugin"/> </type><virtualType name="SignUpResponseResolver" type="Magento\Analytics\Model\Connector\Http\ResponseResolver"> <arguments> <argument name="responseHandlers" xsi:type="array"> <item name="201" xsi:type="object">\Magento\Analytics\Model\Connector\ResponseHandler\SignUp</item> </argument> </arguments> </virtualType><virtualType name="UpdateResponseResolver" type="Magento\Analytics\Model\Connector\Http\ResponseResolver"> <arguments> <argument name="responseHandlers" xsi:type="array"> <item name="201" xsi:type="object">Magento\Analytics\Model\Connector\ResponseHandler\Update</item> <item name="401" xsi:type="object">Magento\Analytics\Model\Connector\ResponseHandler\ReSignUp</item> </argument> </arguments> </virtualType><virtualType name="OtpResponseResolver" type="Magento\Analytics\Model\Connector\Http\ResponseResolver"> <arguments> <argument name="responseHandlers" xsi:type="array"> <item name="201" xsi:type="object">Magento\Analytics\Model\Connector\ResponseHandler\OTP</item> <item name="401" xsi:type="object">Magento\Analytics\Model\Connector\ResponseHandler\ReSignUp</item> </argument> </arguments> </virtualType><virtualType name="NotifyDataChangedResponseResolver" type="Magento\Analytics\Model\Connector\Http\ResponseResolver"> <arguments> <argument name="responseHandlers" xsi:type="array"> <item name="401" xsi:type="object">Magento\Analytics\Model\Connector\ResponseHandler\ReSignUp</item> </argument> </arguments> </virtualType><type name="Magento\Analytics\Model\Connector\SignUpCommand"> <arguments> <argument name="responseResolver" xsi:type="object">SignUpResponseResolver</argument> </arguments> </type><type name="Magento\Analytics\Model\Connector\UpdateCommand"> <arguments> <argument name="responseResolver" xsi:type="object">UpdateResponseResolver</argument> </arguments> </type><type name="Magento\Analytics\Model\Connector\OTPRequest"> <arguments> <argument name="responseResolver" xsi:type="object">OtpResponseResolver</argument> </arguments> </type><type name="Magento\Analytics\Model\Connector\NotifyDataChangedCommand"> <arguments> <argument name="responseResolver" xsi:type="object">NotifyDataChangedResponseResolver</argument> </arguments> </type><type name="Magento\Analytics\ReportXml\ConnectionFactory"> <arguments> <argument name="connectionFactory" xsi:type="object">Magento\Framework\Model\ResourceModel\Type\Db\ConnectionFactory</argument> </arguments> </type><type name="Magento\Integration\Model\Validator\BearerTokenValidator"> <plugin name="allow_bearer_token" type="Magento\Analytics\Plugin\BearerTokenValidatorPlugin"/> </type><preference for="Magento\Payment\Model\Cart\SalesModel\Order" type="Magento\CustomerBalance\Model\Cart\SalesModel\Order"/><preference for="Magento\Payment\Model\Cart\SalesModel\Quote" type="Magento\CustomerBalance\Model\Cart\SalesModel\Quote"/><preference for="Magento\CustomerBalance\Api\BalanceManagementInterface" type="Magento\CustomerBalance\Model\BalanceManagement"/><type name="Magento\Framework\Module\Manager"> <arguments> <argument name="outputConfigPaths" xsi:type="array"> <item name="Magento_CustomerBalance" xsi:type="const">Magento\CustomerBalance\Helper\Data::XML_PATH_ENABLED</item> <item name="Magento_Reward" xsi:type="const">Magento\Reward\Helper\Data::XML_PATH_ENABLED</item></argument> </arguments> </type><type name="Magento\Quote\Model\Quote\TotalsCollector"> <plugin name="quoteCustomerSegmentUpdater" type="Magento\CustomerBalance\Model\Plugin\TotalsCollector"/> <plugin name="quoteGiftCardAmountUpdater" type="Magento\GiftCardAccount\Model\Plugin\TotalsCollector"/><plugin name="in-store-pickup-set-shipping-description" type="Magento\InventoryInStorePickupQuote\Plugin\Quote\Address\SetShippingDescription"/><plugin name="quoteRewardAmountUpdater" type="Magento\Reward\Model\Plugin\TotalsCollector"/></type><type name="Magento\Sales\Api\OrderRepositoryInterface"> <plugin name="get_customer_balance" type="Magento\CustomerBalance\Model\Plugin\OrderRepository"/> <plugin name="save_order_tax" type="Magento\Tax\Model\Plugin\OrderSave"/><plugin name="gift_card_account" type="Magento\GiftCardAccount\Model\Plugin\OrderRepository"/><plugin name="save_gift_message" type="Magento\GiftMessage\Model\Plugin\OrderSave"/><plugin name="get_gift_message" type="Magento\GiftMessage\Model\Plugin\OrderGet"/><plugin name="get_order_gift_wrapping" type="Magento\GiftWrapping\Model\Plugin\OrderGiftWrapping"/><plugin name="get_order_item_gift_wrapping" type="Magento\GiftWrapping\Model\Plugin\OrderItemGiftWrapping"/><plugin name="get_pickup_location_for_order" type="Magento\InventoryInStorePickupSales\Plugin\Sales\Order\GetPickupLocationForOrderPlugin"/><plugin name="save_pickup_location_for_order" type="Magento\InventoryInStorePickupSales\Plugin\Sales\Order\SavePickupLocationForOrderPlugin"/><plugin name="rewardCreditmemoUpdater" type="Magento\Reward\Model\Plugin\OrderRepository"/></type><type name="Magento\Sales\Api\InvoiceRepositoryInterface"> <plugin name="get_customer_balance" type="Magento\CustomerBalance\Model\Plugin\InvoiceRepository"/> <plugin name="gift_card_account" type="Magento\GiftCardAccount\Model\Plugin\InvoiceRepository"/><plugin name="get_invoice_gift_wrapping" type="Magento\GiftWrapping\Model\Plugin\InvoiceGiftWrapping"/></type><type name="Magento\Sales\Api\CreditmemoRepositoryInterface"> <plugin name="get_customer_balance" type="Magento\CustomerBalance\Model\Plugin\CreditmemoRepository"/> <plugin name="gift_card_account" type="Magento\GiftCardAccount\Model\Plugin\CreditmemoRepository"/><plugin name="get_credit_memo_gift_wrapping" type="Magento\GiftWrapping\Model\Plugin\CreditMemoGiftWrapping"/><plugin name="deduct_source_item_quantity_on_refund" type="Magento\InventorySales\Plugin\Sales\OrderManagement\DeductSourceItemQuantityOnRefundPlugin"/></type><type name="Magento\Sales\Model\Order"> <plugin name="can_creditmemo_with_store_credit" type="Magento\CustomerBalance\Plugin\CreditMemoResolver"/> <plugin name="express_order_invoice" type="Magento\Paypal\Plugin\OrderCanInvoice"/></type><type name="Magento\CustomerSegment\Helper\Data"> <arguments> <argument name="segmentCollection" xsi:type="object">Magento\CustomerSegment\Model\ResourceModel\Segment\Collection</argument> </arguments> </type><type name="Magento\CustomerSegment\Model\Customer"> <arguments> <argument name="visitor" xsi:type="object">Magento\Customer\Model\Visitor\Proxy</argument> <argument name="customerSession" xsi:type="object">Magento\Customer\Model\Session\Proxy</argument> </arguments> </type><type name="Magento\CustomerSegment\Observer\ProcessEventGenericObserver"> <arguments> <argument name="eventDataObjectNames" xsi:type="array"> <item name="customer_login" xsi:type="string">customer</item> </argument> </arguments> </type><type name="Magento\CatalogWidget\Model\Rule\Condition\Combine"> <arguments> <argument name="excludedAttributes" xsi:type="array"> <item name="0" xsi:type="string">quantity_and_stock_status</item> </argument> </arguments> </type><type name="Magento\Customer\Model\AuthenticationInterface"> <plugin name="authenticateRehash" type="Migration\Plugin\Customer\Model\AuthenticationPlugin"/> </type><type name="Magento\Deploy\Model\Deployer"> <arguments> <argument name="alternativeSources" xsi:type="array"> <item name="css" xsi:type="object">AlternativeSourceProcessors</item> </argument> </arguments> </type><type name="Magento\Deploy\Model\Deploy\LocaleDeploy"> <arguments> <argument name="alternativeSources" xsi:type="array"> <item name="css" xsi:type="object">AlternativeSourceProcessors</item> </argument> </arguments> </type><type name="Magento\Deploy\Console\Command\App\ConfigImportCommand"> <arguments> <argument name="adminhtmlAreaProcessor" xsi:type="object">Magento\Config\Console\Command\EmulatedAdminhtmlAreaProcessor\Proxy</argument> <argument name="areaList" xsi:type="object">Magento\Framework\App\AreaList\Proxy</argument> </arguments> </type><type name="Magento\Deploy\Model\Filesystem"> <arguments> <argument name="shell" xsi:type="object">Magento\Framework\App\Shell</argument> </arguments> </type><type name="Magento\Deploy\Console\Command\App\SensitiveConfigSet\CollectorFactory"> <arguments> <argument name="types" xsi:type="array"> <item name="interactive" xsi:type="string">Magento\Deploy\Console\Command\App\SensitiveConfigSet\InteractiveCollector</item> <item name="simple" xsi:type="string">Magento\Deploy\Console\Command\App\SensitiveConfigSet\SimpleCollector</item> </argument> </arguments> </type><preference for="Magento\Deploy\Package\BundleInterface" type="Magento\Deploy\Package\Bundle\RequireJs"/><type name="Magento\Deploy\Source\SourcePool"> <arguments> <argument name="sources" xsi:type="array"> <item name="lib" xsi:type="object">Magento\Deploy\Source\Lib</item> <item name="modules" xsi:type="object">Magento\Deploy\Source\Modules</item> <item name="themes" xsi:type="object">Magento\Deploy\Source\Themes</item> </argument> </arguments> </type><type name="Magento\Deploy\Package\Package"> <arguments> <argument name="preProcessors" xsi:type="array"> <item name="less" xsi:type="object">Magento\Deploy\Package\Processor\PreProcessor\Less</item> <item name="css" xsi:type="object">Magento\Deploy\Package\Processor\PreProcessor\Css</item> </argument> <argument name="postProcessors" xsi:type="array"> <item name="map" xsi:type="object">Magento\Deploy\Package\Processor\PostProcessor\Map</item> <item name="cssUrls" xsi:type="object">Magento\Deploy\Package\Processor\PostProcessor\CssUrls</item> </argument> </arguments> </type><preference for="Magento\Framework\Logger\Handler\Debug" type="Magento\Developer\Model\Logger\Handler\Debug"/><preference for="Magento\Framework\Logger\Handler\Syslog" type="Magento\Developer\Model\Logger\Handler\Syslog"/><type name="Magento\Framework\View\Result\Page"> <arguments> <argument name="pageConfigRendererFactory" xsi:type="object">Magento\Developer\Model\View\Page\Config\RendererFactory</argument> </arguments> </type><type name="Magento\Developer\Console\Command\XmlCatalogGenerateCommand"> <arguments> <argument name="formats" xsi:type="array"> <item name="phpstorm" xsi:type="object">Magento\Developer\Model\XmlCatalog\Format\PhpStorm</item> <item name="vscode" xsi:type="object">Magento\Developer\Model\XmlCatalog\Format\VsCode</item> </argument> </arguments> </type><type name="Magento\Developer\Model\View\Page\Config\RendererFactory"> <arguments> <argument name="rendererTypes" xsi:type="array"> <item name="client_side_compilation" xsi:type="string">Magento\Developer\Model\View\Page\Config\ClientSideLessCompilation\Renderer</item> <item name="server_side_compilation" xsi:type="string">Magento\Framework\View\Page\Config\Renderer</item> </argument> </arguments> </type><virtualType name="AssetMaterializationStrategyFactoryForSourceThemeDeploy" type="Magento\Framework\App\View\Asset\MaterializationStrategy\Factory"> <arguments> <argument name="strategiesList" xsi:type="array"> <item name="symlink" xsi:type="object">Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink</item> <item name="copy" xsi:type="object">Magento\Framework\App\View\Asset\MaterializationStrategy\Copy</item> </argument> </arguments> </virtualType><virtualType name="AssetPublisherForSymlink" type="Magento\Framework\App\View\Asset\Publisher"> <arguments> <argument name="materializationStrategyFactory" xsi:type="object">AssetMaterializationStrategyFactoryForSourceThemeDeploy</argument> </arguments> </virtualType><virtualType name="FileGeneratorPublicationDecoratorForSourceThemeDeploy" type="Magento\Developer\Model\Css\PreProcessor\FileGenerator\PublicationDecorator"> <arguments> <argument name="hasRelatedPublishing" xsi:type="boolean">true</argument> <argument name="assetRepository" xsi:type="object">AssetRepositoryForSourceThemeDeploy</argument> <argument name="assetPublisher" xsi:type="object">AssetPublisherForSymlink</argument> </arguments> </virtualType><virtualType name="PreProcessorInstructionImportForSourceThemeDeploy" type="Magento\Framework\Css\PreProcessor\Instruction\Import"> <arguments> <argument name="relatedFileGenerator" xsi:type="object">FileGeneratorPublicationDecoratorForSourceThemeDeploy</argument> </arguments> </virtualType><virtualType name="AssetPreProcessorPoolForSourceThemeDeploy" type="Magento\Framework\View\Asset\PreProcessor\Pool"> <arguments> <argument name="preprocessors" xsi:type="array"> <item name="less" xsi:type="array"> <item name="magento_import" xsi:type="array"> <item name="class" xsi:type="string">Magento\Framework\Css\PreProcessor\Instruction\MagentoImport</item> </item> <item name="import" xsi:type="array"> <item name="after" xsi:type="string">magento_import</item> <item name="class" xsi:type="string">PreProcessorInstructionImportForSourceThemeDeploy</item> </item> </item> </argument> </arguments> </virtualType><virtualType name="AssetSourceForSourceThemeDeploy" type="Magento\Framework\View\Asset\Source"> <arguments> <argument name="preProcessorPool" xsi:type="object">AssetPreProcessorPoolForSourceThemeDeploy</argument> </arguments> </virtualType><virtualType name="AssetRepositoryForSourceThemeDeploy" type="Magento\Framework\View\Asset\Repository"> <arguments> <argument name="assetSource" xsi:type="object">AssetSourceForSourceThemeDeploy</argument> </arguments> </virtualType><type name="Magento\Developer\Console\Command\SourceThemeDeployCommand"> <arguments> <argument name="assetPublisher" xsi:type="object">AssetPublisherForSymlink</argument> <argument name="assetRepository" xsi:type="object">AssetRepositoryForSourceThemeDeploy</argument> </arguments> </type><virtualType name="cssMinificationAdapter" type="Magento\Framework\Code\Minifier\Adapter\Css\CSSmin"/><virtualType name="jsMinificationAdapter" type="Magento\Framework\Code\Minifier\Adapter\Js\JShrink"/><virtualType name="cssMinificationProcessor" type="Magento\Framework\View\Asset\PreProcessor\Minify"> <arguments> <argument name="adapter" xsi:type="object">cssMinificationAdapter</argument> </arguments> </virtualType><virtualType name="jsMinificationProcessor" type="Magento\Framework\View\Asset\PreProcessor\Minify"> <arguments> <argument name="adapter" xsi:type="object">jsMinificationAdapter</argument> </arguments> </virtualType><virtualType name="FileGeneratorPublicationDecoratorForBaseFlow" type="Magento\Developer\Model\Css\PreProcessor\FileGenerator\PublicationDecorator"> <arguments> <argument name="hasRelatedPublishing" xsi:type="boolean">false</argument> <argument name="assetPublisher" xsi:type="object">AssetPublisherForSymlink</argument> </arguments> </virtualType><virtualType name="PreProcessorInstructionImportForBaseFlow" type="Magento\Framework\Css\PreProcessor\Instruction\Import"> <arguments> <argument name="relatedFileGenerator" xsi:type="object">FileGeneratorPublicationDecoratorForBaseFlow</argument> </arguments> </virtualType><type name="Magento\Developer\Model\View\Asset\PreProcessor\FrontendCompilation"> <arguments> <argument name="alternativeSource" xsi:type="object">AlternativeSourceProcessors</argument> <argument name="lockerProcess" xsi:type="object">Magento\Framework\View\Asset\LockerProcess</argument> <argument name="lockName" xsi:type="string">frontend-compilation-source</argument> </arguments> </type><type name="Magento\Developer\Model\View\Asset\PreProcessor\PreprocessorStrategy"> <arguments> <argument name="alternativeSource" xsi:type="object">AlternativeSourceProcessors</argument> </arguments> </type><virtualType name="AssetPreProcessorPool" type="Magento\Framework\View\Asset\PreProcessor\Pool"> <arguments> <argument name="preprocessors" xsi:type="array"> <item name="less" xsi:type="array"> <item name="magento_import" xsi:type="array"> <item name="class" xsi:type="string">Magento\Framework\Css\PreProcessor\Instruction\MagentoImport</item> </item> <item name="import" xsi:type="array"> <item name="after" xsi:type="string">magento_import</item> <item name="class" xsi:type="string">PreProcessorInstructionImportForBaseFlow</item> </item> </item> <item name="css" xsi:type="array"> <item name="preprocessorStrategy" xsi:type="array"> <item name="class" xsi:type="string">Magento\Developer\Model\View\Asset\PreProcessor\PreprocessorStrategy</item> </item> <item name="variable_notation" xsi:type="array"> <item name="after" xsi:type="string">preprocessorStrategy</item> <item name="class" xsi:type="string">Magento\Framework\View\Asset\PreProcessor\VariableNotation</item> </item> <item name="module_notation" xsi:type="array"> <item name="after" xsi:type="string">variable_notation</item> <item name="class" xsi:type="string">Magento\Framework\View\Asset\PreProcessor\ModuleNotation</item> </item> <item name="css_min" xsi:type="array"> <item name="after" xsi:type="string">module_notation</item> <item name="class" xsi:type="string">cssMinificationProcessor</item> </item> </item> <item name="js" xsi:type="array"> <item name="js_min" xsi:type="array"> <item name="class" xsi:type="string">jsMinificationProcessor</item> </item> <item name="js_translation" xsi:type="array"> <item name="class" xsi:type="string">Magento\Translation\Model\Js\PreProcessor</item> </item></item> <item name="json" xsi:type="array"> <item name="json_generation" xsi:type="array"> <item name="class" xsi:type="string">Magento\Translation\Model\Json\PreProcessor</item> </item> </item></argument> </arguments> </virtualType><type name="Magento\Framework\View\Asset\Source"> <arguments> <argument name="preProcessorPool" xsi:type="object">AssetPreProcessorPool</argument> </arguments> </type><type name="Magento\Framework\Css\PreProcessor\Instruction\MagentoImport"> <arguments> <argument name="fileSource" xsi:type="object">Magento\Framework\Css\PreProcessor\File\Collector\Aggregated</argument> </arguments> </type><type name="Magento\Framework\Css\PreProcessor\File\Collector\Aggregated"> <arguments> <argument name="libraryFiles" xsi:type="object">Magento\Framework\Css\PreProcessor\File\Collector\Library</argument> <argument name="baseFiles" xsi:type="object">cssSourceBaseFilesSorted</argument> <argument name="overriddenBaseFiles" xsi:type="object">cssSourceOverriddenBaseFiles</argument> </arguments> </type><virtualType name="cssSourceBaseFilesSorted" type="Magento\Framework\View\File\Collector\Decorator\ModuleDependency"> <arguments> <argument name="subject" xsi:type="object">cssSourceBaseFilesFiltered</argument> </arguments> </virtualType><virtualType name="cssSourceBaseFilesFiltered" type="Magento\Framework\View\File\Collector\Decorator\ModuleOutput"> <arguments> <argument name="subject" xsi:type="object">cssSourceBaseFiles</argument> </arguments> </virtualType><virtualType name="cssSourceBaseFiles" type="Magento\Framework\View\File\Collector\Base"> <arguments> <argument name="subDir" xsi:type="string">web</argument> </arguments> </virtualType><virtualType name="cssSourceOverriddenBaseFiles" type="Magento\Framework\View\File\Collector\Override\Base"> <arguments> <argument name="subDir" xsi:type="string">web</argument> </arguments> </virtualType><type name="Magento\Developer\Model\TemplateEngine\Plugin\DebugHints"> <arguments> <argument name="debugHintsPath" xsi:type="string">dev/debug/template_hints_storefront</argument> <argument name="debugHintsWithParam" xsi:type="string">dev/debug/template_hints_storefront_show_with_parameter</argument> <argument name="debugHintsParameter" xsi:type="string">dev/debug/template_hints_parameter_value</argument> </arguments> </type><type name="Magento\Checkout\Block\Cart\LayoutProcessor"> <plugin name="checkout_cart_shipping_dhl" type="Magento\Dhl\Model\Plugin\Checkout\Block\Cart\Shipping"/> <plugin name="checkout_cart_shipping_plugin" type="Magento\OfflineShipping\Model\Plugin\Checkout\Block\Cart\Shipping"/></type><preference for="Magento\TargetRule\Model\ResourceModel\Index\IndexInterface" type="Magento\TargetRule\Model\ResourceModel\Index\Index"/><virtualType name="Magento\TargetRule\Model\ResourceModel\RelatedIndex" type="Magento\TargetRule\Model\ResourceModel\Index\Index"> <arguments> <argument name="type" xsi:type="string">1</argument> </arguments> </virtualType><virtualType name="Magento\TargetRule\Model\ResourceModel\UpsellIndex" type="Magento\TargetRule\Model\ResourceModel\Index\Index"> <arguments> <argument name="type" xsi:type="string">2</argument> </arguments> </virtualType><virtualType name="Magento\TargetRule\Model\ResourceModel\CrosssellIndex" type="Magento\TargetRule\Model\ResourceModel\Index\Index"> <arguments> <argument name="type" xsi:type="string">3</argument> </arguments> </virtualType><type name="Magento\TargetRule\Model\ResourceModel\IndexPool"> <arguments> <argument name="types" xsi:type="array"> <item name="1" xsi:type="string">Magento\TargetRule\Model\ResourceModel\RelatedIndex</item> <item name="2" xsi:type="string">Magento\TargetRule\Model\ResourceModel\UpsellIndex</item> <item name="3" xsi:type="string">Magento\TargetRule\Model\ResourceModel\CrosssellIndex</item> </argument> </arguments> </type><type name="Magento\TargetRule\Model\Index"> <arguments> <argument name="session" xsi:type="object">Magento\Customer\Model\Session\Proxy</argument> </arguments> </type><type name="Magento\TargetRule\Model\ResourceModel\Index"> <arguments> <argument name="session" xsi:type="object">Magento\Customer\Model\Session\Proxy</argument> </arguments> </type><type name="Magento\Catalog\Model\Category"> <plugin name="targetRuleCategoryInvalidate" type="Magento\TargetRule\Model\Indexer\TargetRule\Plugin\Category"/> <plugin name="categoryChange" type="Magento\CatalogPermissions\Model\Indexer\Plugin\Category"/><plugin name="catalogStagingCategoryPlugin" type="Magento\CatalogStaging\Plugin\Model\Category"/></type><type name="Magento\CustomerSegment\Model\Segment"> <plugin name="targetRuleCustomerSegmentInvalidate" type="Magento\TargetRule\Model\Indexer\TargetRule\Plugin\CustomerSegment"/> </type><type name="Magento\TargetRule\Model\Indexer\TargetRule\AbstractProcessor"> <arguments> <argument name="statusContainer" xsi:type="object" shared="true">Magento\TargetRule\Model\Indexer\TargetRule\Status\Container</argument> </arguments> </type><preference for="Magento\AdvancedRule\Model\Condition\FilterGroupInterface" type="Magento\AdvancedRule\Model\Condition\FilterGroup"/><preference for="Magento\AdvancedRule\Model\Condition\FilterInterface" type="Magento\AdvancedRule\Model\Condition\Filter"/><preference for="Magento\AdvancedSearch\Model\Client\ClientFactoryInterface" type="Magento\AdvancedSearch\Model\Client\ClientFactory"/><type name="Magento\AdvancedSearch\Block\Recommendations"> <arguments> <argument name="searchDataProvider" xsi:type="object">Magento\AdvancedSearch\Model\Recommendations\DataProvider</argument> <argument name="title" xsi:type="string" translatable="true">Related search terms</argument> </arguments> </type><type name="Magento\AdvancedSearch\Block\Suggestions"> <arguments> <argument name="searchDataProvider" xsi:type="object">Magento\AdvancedSearch\Model\SuggestedQueries</argument> <argument name="title" xsi:type="string" translatable="true">Did you mean</argument> </arguments> </type><type name="Magento\AdvancedSearch\Model\Client\ClientResolver"> <arguments> <argument name="path" xsi:type="const">Magento\CatalogSearch\Model\ResourceModel\EngineInterface::CONFIG_ENGINE_PATH</argument> <argument name="scopeType" xsi:type="const">\Magento\Store\Model\ScopeInterface::SCOPE_STORE</argument> <argument name="clientFactories" xsi:type="array"> <item name="elasticsearch5" xsi:type="string">\Magento\Elasticsearch\Elasticsearch5\Model\Client\ElasticsearchFactory</item> <item name="elasticsearch6" xsi:type="string">\Magento\Elasticsearch6\Model\Client\ElasticsearchFactory</item><item name="elasticsearch7" xsi:type="string">\Magento\Elasticsearch7\Model\Client\ElasticsearchFactory</item></argument><argument name="clientOptions" xsi:type="array"> <item name="elasticsearch5" xsi:type="string">Magento\Elasticsearch\Model\Config</item> <item name="elasticsearch6" xsi:type="string">\Magento\Elasticsearch\Model\Config</item><item name="elasticsearch7" xsi:type="string">\Magento\Elasticsearch\Model\Config</item></argument></arguments> </type><type name="Magento\AdvancedSearch\Model\SuggestedQueries"> <arguments> <argument name="data" xsi:type="array"> <item name="mysql" xsi:type="string">Magento\AdvancedSearch\Model\DataProvider\Suggestions</item> <item name="elasticsearch5" xsi:type="string">Magento\Elasticsearch\Model\DataProvider\Suggestions</item><item name="elasticsearch6" xsi:type="string">Magento\Elasticsearch6\Model\DataProvider\Suggestions</item><item name="elasticsearch7" xsi:type="string">Magento\Elasticsearch7\Model\DataProvider\Suggestions</item></argument> </arguments> </type><type name="Magento\AdvancedSearch\Model\ResourceModel\Index"> <arguments> <argument name="tableResolver" xsi:type="object"> Magento\Catalog\Model\Indexer\Product\Price\PriceTableResolver </argument> </arguments> </type><preference for="Magento\AdvancedSearch\Model\Adapter\DataMapper\AdditionalFieldsProviderInterface" type="Magento\AdvancedSearch\Model\Adapter\DataMapper\AdditionalFieldsProvider"/><preference for="Magento\Elasticsearch\Model\Adapter\FieldMapperInterface" type="Magento\Elasticsearch\Model\Adapter\FieldMapper\FieldMapperResolver"/><preference for="Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\ResolverInterface" type="Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\CompositeResolver"/><preference for="Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\ResolverInterface" type="Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Resolver\CompositeResolver"/><preference for="Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldIndex\ResolverInterface" type="Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldIndex\IndexResolver"/><preference for="Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldIndex\ConverterInterface" type="Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldIndex\Converter"/><preference for="Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\ConverterInterface" type="Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Converter"/><preference for="Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProviderInterface" type="categoryPermissionsCompositeFieldProvider"/><preference for="Magento\Framework\Search\Dynamic\DataProviderInterface" type="Magento\Elasticsearch\SearchAdapter\Dynamic\DataProvider"/><preference for="Magento\Elasticsearch\Model\DataProvider\Base\GetSuggestionFrequencyInterface" type="Magento\Elasticsearch\Model\DataProvider\Base\GetSuggestionFrequency"/><type name="Magento\Catalog\Model\Indexer\Category\Product\Action\Rows"> <plugin name="catalogsearchFulltextProductAssignment" type="Magento\Elasticsearch\Model\Indexer\Fulltext\Plugin\Category\Product\Action\Rows"/> </type><type name="Magento\Elasticsearch\Model\Config"> <arguments> <argument name="engineList" xsi:type="array"> <item name="elasticsearch5" xsi:type="string">elasticsearch5</item> <item name="elasticsearch6" xsi:type="string">elasticsearch6</item><item name="elasticsearch7" xsi:type="string">elasticsearch7</item></argument> </arguments> </type><virtualType name="Magento\Elasticsearch\Model\Layer\Search\Context" type="Magento\Catalog\Model\Layer\Search\Context"> <arguments> <argument name="collectionProvider" xsi:type="object">elasticsearchLayerSearchItemCollectionProvider</argument> <argument name="stateKey" xsi:type="object">Magento\CatalogSearch\Model\Layer\Search\StateKey</argument> </arguments> </virtualType><virtualType name="Magento\Elasticsearch\Model\Layer\Category\Context" type="Magento\Catalog\Model\Layer\Category\Context"> <arguments> <argument name="collectionProvider" xsi:type="object">elasticsearchLayerCategoryItemCollectionProvider</argument> </arguments> </virtualType><virtualType name="elasticsearchFulltextSearchCollection" type="Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection"> <arguments> <argument name="searchRequestName" xsi:type="string">quick_search_container</argument> <argument name="searchCriteriaResolverFactory" xsi:type="object">elasticsearchSearchCriteriaResolverFactory</argument> <argument name="searchResultApplierFactory" xsi:type="object">elasticsearchSearchResultApplier\Factory</argument> <argument name="totalRecordsResolverFactory" xsi:type="object">elasticsearchTotalRecordsResolver\Factory</argument> <argument name="defaultFilterStrategyApplyChecker" xsi:type="object">Magento\Elasticsearch\Model\ResourceModel\Fulltext\Collection\DefaultFilterStrategyApplyChecker</argument> </arguments> </virtualType><virtualType name="elasticsearchFulltextSearchCollectionFactory" type="Magento\CatalogSearch\Model\ResourceModel\Fulltext\SearchCollectionFactory"> <arguments> <argument name="instanceName" xsi:type="string">elasticsearchFulltextSearchCollection</argument> </arguments> </virtualType><virtualType name="elasticsearchLayerSearchItemCollectionProvider" type="Magento\Elasticsearch\Model\Layer\Search\ItemCollectionProvider"> <arguments> <argument name="factories" xsi:type="array"> <item name="mysql" xsi:type="object">Magento\CatalogSearch\Model\ResourceModel\Fulltext\SearchCollectionFactory</item> <item name="elasticsearch5" xsi:type="object">elasticsearchFulltextSearchCollectionFactory</item> <item name="elasticsearch6" xsi:type="object">elasticsearchFulltextSearchCollectionFactory</item><item name="elasticsearch7" xsi:type="object">elasticsearchFulltextSearchCollectionFactory</item></argument> </arguments> </virtualType><virtualType name="elasticsearchCategoryCollection" type="Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection"> <arguments> <argument name="searchRequestName" xsi:type="string">catalog_view_container</argument> <argument name="searchCriteriaResolverFactory" xsi:type="object">elasticsearchSearchCriteriaResolverFactory</argument> <argument name="searchResultApplierFactory" xsi:type="object">elasticsearchSearchResultApplier\Factory</argument> <argument name="totalRecordsResolverFactory" xsi:type="object">elasticsearchTotalRecordsResolver\Factory</argument> <argument name="defaultFilterStrategyApplyChecker" xsi:type="object">Magento\Elasticsearch\Model\ResourceModel\Fulltext\Collection\DefaultFilterStrategyApplyChecker</argument> </arguments> </virtualType><virtualType name="elasticsearchCategoryCollectionFactory" type="Magento\CatalogSearch\Model\ResourceModel\Fulltext\SearchCollectionFactory"> <arguments> <argument name="instanceName" xsi:type="string">elasticsearchCategoryCollection</argument> </arguments> </virtualType><virtualType name="elasticsearchLayerCategoryItemCollectionProvider" type="Magento\Elasticsearch\Model\Layer\Category\ItemCollectionProvider"> <arguments> <argument name="factories" xsi:type="array"> <item name="mysql" xsi:type="object">Magento\CatalogSearch\Model\ResourceModel\Fulltext\CollectionFactory</item> <item name="elasticsearch5" xsi:type="object">elasticsearchCategoryCollectionFactory</item> <item name="elasticsearch6" xsi:type="object">elasticsearchCategoryCollectionFactory</item><item name="elasticsearch7" xsi:type="object">elasticsearchCategoryCollectionFactory</item></argument> </arguments> </virtualType><virtualType name="elasticsearchAdvancedCollection" type="Magento\CatalogSearch\Model\ResourceModel\Advanced\Collection"> <arguments> <argument name="searchRequestName" xsi:type="string">advanced_search_container</argument> <argument name="searchCriteriaResolverFactory" xsi:type="object">elasticsearchSearchCriteriaResolverFactory</argument> <argument name="searchResultApplierFactory" xsi:type="object">elasticsearchSearchResultApplier\Factory</argument> <argument name="totalRecordsResolverFactory" xsi:type="object">elasticsearchTotalRecordsResolver\Factory</argument> <argument name="defaultFilterStrategyApplyChecker" xsi:type="object">Magento\Elasticsearch\Model\ResourceModel\Fulltext\Collection\DefaultFilterStrategyApplyChecker</argument> </arguments> </virtualType><virtualType name="elasticsearchAdvancedCollectionFactory" type="Magento\CatalogSearch\Model\ResourceModel\Advanced\CollectionFactory"> <arguments> <argument name="instanceName" xsi:type="string">elasticsearchAdvancedCollection</argument> </arguments> </virtualType><type name="Magento\CatalogSearch\Model\Search\ItemCollectionProvider"> <arguments> <argument name="factories" xsi:type="array"> <item name="elasticsearch5" xsi:type="object">elasticsearchAdvancedCollectionFactory</item> <item name="elasticsearch6" xsi:type="object">elasticsearchAdvancedCollectionFactory</item><item name="elasticsearch7" xsi:type="object">elasticsearchAdvancedCollectionFactory</item><item name="default" xsi:type="object">elasticsearchAdvancedCollectionFactory</item></argument> </arguments> </type><type name="Magento\CatalogSearch\Model\Advanced\ProductCollectionPrepareStrategyProvider"> <arguments> <argument name="strategies" xsi:type="array"> <item name="default" xsi:type="object">Magento\Elasticsearch\Model\Advanced\ProductCollectionPrepareStrategy</item> <item name="elasticsearch5" xsi:type="object">Magento\Elasticsearch\Model\Advanced\ProductCollectionPrepareStrategy</item> <item name="elasticsearch6" xsi:type="object">Magento\Elasticsearch\Model\Advanced\ProductCollectionPrepareStrategy</item><item name="elasticsearch7" xsi:type="object">Magento\Elasticsearch\Model\Advanced\ProductCollectionPrepareStrategy</item></argument> </arguments> </type><virtualType name="elasticsearchSearchCriteriaResolverFactory" type="Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection\SearchCriteriaResolverFactory"> <arguments> <argument name="instanceName" xsi:type="string">Magento\Elasticsearch\Model\ResourceModel\Fulltext\Collection\SearchCriteriaResolver</argument> </arguments> </virtualType><virtualType name="elasticsearchSearchResultApplier\Factory" type="Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection\SearchResultApplierFactory"> <arguments> <argument name="instanceName" xsi:type="string">Magento\Elasticsearch\Model\ResourceModel\Fulltext\Collection\SearchResultApplier</argument> </arguments> </virtualType><virtualType name="elasticsearchTotalRecordsResolver\Factory" type="Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection\TotalRecordsResolverFactory"> <arguments> <argument name="instanceName" xsi:type="string">Magento\Elasticsearch\Model\ResourceModel\Fulltext\Collection\TotalRecordsResolver</argument> </arguments> </virtualType><type name="Magento\Elasticsearch\Model\Adapter\FieldMapper\FieldMapperResolver"> <arguments> <argument name="fieldMappers" xsi:type="array"> <item name="product" xsi:type="string">Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\ProductFieldMapperProxy</item> </argument> </arguments> </type><virtualType name="additionalFieldsProviderForElasticsearch" type="Magento\AdvancedSearch\Model\Adapter\DataMapper\AdditionalFieldsProvider"> <arguments> <argument name="fieldsProviders" xsi:type="array"> <item name="categories" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Adapter\BatchDataMapper\CategoryFieldsProviderProxy</item> <item name="prices" xsi:type="object">Magento\Elasticsearch\Model\Adapter\BatchDataMapper\PriceFieldsProvider</item> </argument> </arguments> </virtualType><type name="Magento\Elasticsearch\Model\Adapter\BatchDataMapper\ProductDataMapper"> <arguments> <argument name="additionalFieldsProvider" xsi:type="object">additionalFieldsProviderForElasticsearch</argument> <argument name="filterableAttributeTypes" xsi:type="array"> <item name="boolean" xsi:type="string">boolean</item> <item name="multiselect" xsi:type="string">multiselect</item> <item name="select" xsi:type="string">select</item> </argument> </arguments> </type><preference for="Magento\Elasticsearch\Model\Adapter\BatchDataMapperInterface" type="Magento\Elasticsearch\Model\Adapter\BatchDataMapper\DataMapperResolver"/><type name="Magento\Elasticsearch\Model\Adapter\BatchDataMapper\DataMapperFactory"> <arguments> <argument name="dataMappers" xsi:type="array"> <item name="product" xsi:type="string">Magento\Elasticsearch\Model\Adapter\BatchDataMapper\ProductDataMapper</item> </argument> </arguments> </type><preference for="Magento\Elasticsearch\Model\Adapter\Index\BuilderInterface" type="Magento\Elasticsearch\Model\Adapter\Index\Builder"/><preference for="Magento\Elasticsearch\Model\Adapter\Index\Config\EsConfigInterface" type="Magento\Elasticsearch\Model\Adapter\Index\Config\EsConfig"/><type name="Magento\Search\Model\Adminhtml\System\Config\Source\Engine"> <arguments> <argument name="engines" xsi:type="array"> <item sortOrder="10" name="elasticsearch5" xsi:type="string">Elasticsearch 5.0+ (Deprecated)</item> <item sortOrder="20" name="elasticsearch6" xsi:type="string">Elasticsearch 6.x (Deprecated)</item><item sortOrder="30" name="elasticsearch7" xsi:type="string">Elasticsearch 7</item></argument> </arguments> </type><type name="Magento\Elasticsearch\Elasticsearch5\Model\Adapter\BatchDataMapper\CategoryFieldsProviderProxy"> <arguments> <argument name="categoryFieldsProviders" xsi:type="array"> <item name="elasticsearch5" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Adapter\BatchDataMapper\CategoryFieldsProvider</item> <item name="elasticsearch6" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Adapter\BatchDataMapper\CategoryFieldsProvider</item><item name="elasticsearch7" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Adapter\BatchDataMapper\CategoryFieldsProvider</item></argument> </arguments> </type><type name="Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\ProductFieldMapperProxy"> <arguments> <argument name="productFieldMappers" xsi:type="array"> <item name="elasticsearch5" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\ProductFieldMapper</item> <item name="elasticsearch6" xsi:type="object">Magento\Elasticsearch6\Model\Adapter\FieldMapper\ProductFieldMapper</item><item name="elasticsearch7" xsi:type="object">Magento\Elasticsearch7\Model\Adapter\FieldMapper\ProductFieldMapper</item></argument> </arguments> </type><type name="Magento\CatalogSearch\Model\Indexer\IndexerHandlerFactory"> <arguments> <argument name="handlers" xsi:type="array"> <item name="elasticsearch5" xsi:type="string">Magento\Elasticsearch\Model\Indexer\IndexerHandler</item> <item name="elasticsearch6" xsi:type="string">Magento\Elasticsearch\Model\Indexer\IndexerHandler</item><item name="elasticsearch7" xsi:type="string">Magento\Elasticsearch\Model\Indexer\IndexerHandler</item></argument> </arguments> </type><type name="Magento\CatalogSearch\Model\Indexer\IndexStructureFactory"> <arguments> <argument name="structures" xsi:type="array"> <item name="elasticsearch5" xsi:type="string">Magento\Elasticsearch\Model\Indexer\IndexStructure</item> <item name="elasticsearch6" xsi:type="string">Magento\Elasticsearch\Model\Indexer\IndexStructure</item><item name="elasticsearch7" xsi:type="string">Magento\Elasticsearch\Model\Indexer\IndexStructure</item></argument> </arguments> </type><type name="Magento\CatalogSearch\Model\ResourceModel\EngineProvider"> <arguments> <argument name="engines" xsi:type="array"> <item name="elasticsearch5" xsi:type="string">Magento\Elasticsearch\Model\ResourceModel\Engine</item> <item name="elasticsearch6" xsi:type="string">Magento\Elasticsearch\Model\ResourceModel\Engine</item><item name="elasticsearch7" xsi:type="string">Magento\Elasticsearch\Model\ResourceModel\Engine</item></argument> </arguments> </type><type name="Magento\Search\Model\AdapterFactory"> <arguments> <argument name="adapters" xsi:type="array"> <item name="elasticsearch5" xsi:type="string">Magento\Elasticsearch\Elasticsearch5\SearchAdapter\Adapter</item> <item name="elasticsearch6" xsi:type="string">Magento\Elasticsearch\Elasticsearch5\SearchAdapter\Adapter</item><item name="elasticsearch7" xsi:type="string">\Magento\Elasticsearch7\SearchAdapter\Adapter</item></argument> </arguments> </type><virtualType name="Magento\Elasticsearch\SearchAdapter\ProductEntityMetadata" type="Magento\Framework\Search\EntityMetadata"> <arguments> <argument name="entityId" xsi:type="string">_id</argument> </arguments> </virtualType><type name="Magento\Elasticsearch\SearchAdapter\DocumentFactory"> <arguments> <argument name="entityMetadata" xsi:type="object">Magento\Elasticsearch\SearchAdapter\ProductEntityMetadata</argument> </arguments> </type><type name="Magento\Elasticsearch\SearchAdapter\ConnectionManager"> <arguments> <argument name="clientFactory" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Client\ClientFactoryProxy</argument> <argument name="clientConfig" xsi:type="object">Magento\Elasticsearch\Model\Config</argument> </arguments> </type><virtualType name="Magento\Elasticsearch\Elasticsearch5\SearchAdapter\ConnectionManager" type="Magento\Elasticsearch\SearchAdapter\ConnectionManager"> <arguments> <argument name="clientFactory" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Client\ClientFactoryProxy</argument> <argument name="clientConfig" xsi:type="object">Magento\Elasticsearch\Model\Config</argument> </arguments> </virtualType><virtualType name="Magento\Elasticsearch\Elasticsearch5\Model\Client\ElasticsearchFactory" type="Magento\AdvancedSearch\Model\Client\ClientFactory"> <arguments> <argument name="clientClass" xsi:type="string">Magento\Elasticsearch\Elasticsearch5\Model\Client\Elasticsearch</argument> </arguments> </virtualType><type name="Magento\Elasticsearch\Elasticsearch5\Model\Client\ClientFactoryProxy"> <arguments> <argument name="clientFactories" xsi:type="array"> <item name="elasticsearch5" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Client\ElasticsearchFactory</item> <item name="elasticsearch6" xsi:type="object">Magento\Elasticsearch6\Model\Client\ElasticsearchFactory</item><item name="elasticsearch7" xsi:type="object">Magento\Elasticsearch7\Model\Client\ElasticsearchFactory</item></argument> </arguments> </type><type name="Magento\Elasticsearch\Elasticsearch5\SearchAdapter\Adapter"> <arguments> <argument name="connectionManager" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\SearchAdapter\ConnectionManager</argument> </arguments> </type><type name="Magento\Framework\Search\Dynamic\IntervalFactory"> <arguments> <argument name="intervals" xsi:type="array"> <item name="elasticsearch5" xsi:type="string">Magento\Elasticsearch\Elasticsearch5\SearchAdapter\Aggregation\Interval</item> <item name="elasticsearch6" xsi:type="string">Magento\Elasticsearch\Elasticsearch5\SearchAdapter\Aggregation\Interval</item><item name="elasticsearch7" xsi:type="string">Magento\Elasticsearch\Elasticsearch5\SearchAdapter\Aggregation\Interval</item></argument> </arguments> </type><type name="Magento\Framework\Search\Dynamic\DataProviderFactory"> <arguments> <argument name="dataProviders" xsi:type="array"> <item name="elasticsearch5" xsi:type="string">Magento\Elasticsearch\SearchAdapter\Dynamic\DataProvider</item> <item name="elasticsearch6" xsi:type="string">Magento\Elasticsearch\SearchAdapter\Dynamic\DataProvider</item><item name="elasticsearch7" xsi:type="string">Magento\Elasticsearch\SearchAdapter\Dynamic\DataProvider</item></argument> </arguments> </type><type name="Magento\Elasticsearch\SearchAdapter\Aggregation\Builder"> <arguments> <argument name="dataProviderContainer" xsi:type="array"> <item name="catalogsearch_fulltext" xsi:type="object">Magento\Elasticsearch\SearchAdapter\Dynamic\DataProvider</item> </argument> <argument name="aggregationContainer" xsi:type="array"> <item name="termBucket" xsi:type="object">Magento\Elasticsearch\SearchAdapter\Aggregation\Builder\Term</item> <item name="dynamicBucket" xsi:type="object">Magento\Elasticsearch\SearchAdapter\Aggregation\Builder\Dynamic</item> </argument> </arguments> </type><type name="Magento\Framework\Indexer\Config\DependencyInfoProvider"> <plugin name="indexerDependencyUpdaterPlugin" type="Magento\Elasticsearch\Model\Indexer\Plugin\DependencyUpdaterPlugin"/> </type><type name="Magento\Elasticsearch\SearchAdapter\Query\Preprocessor\Stopwords"> <arguments> <argument name="stopwordsModule" xsi:type="string">Magento_Elasticsearch</argument> <argument name="stopwordsDirectory" xsi:type="string">stopwords</argument> </arguments> </type><virtualType name="Magento\Elasticsearch\Model\Adapter\Index\Config\Reader" type="Magento\Framework\Config\Reader\Filesystem"> <arguments> <argument name="converter" xsi:type="object">Magento\Elasticsearch\Model\Adapter\Index\Config\Converter</argument> <argument name="schemaLocator" xsi:type="object">Magento\Elasticsearch\Model\Adapter\Index\Config\SchemaLocator</argument> <argument name="fileName" xsi:type="string">esconfig.xml</argument> </arguments> </virtualType><type name="Magento\Elasticsearch\Model\Adapter\Index\Config\EsConfig"> <arguments> <argument name="reader" xsi:type="object">Magento\Elasticsearch\Model\Adapter\Index\Config\Reader</argument> <argument name="cacheId" xsi:type="string">elasticsearch_index_config</argument> </arguments> </type><type name="Magento\Elasticsearch\SearchAdapter\Dynamic\DataProvider"> <arguments> <argument name="indexerId" xsi:type="const">\Magento\CatalogSearch\Model\Indexer\Fulltext::INDEXER_ID</argument> </arguments> </type><type name="Magento\Elasticsearch\Elasticsearch5\Model\Adapter\BatchDataMapper\CategoryFieldsProvider"> <arguments> <argument name="fieldNameResolver" xsi:type="object">elasticsearch5FieldNameResolver</argument> </arguments> </type><type name="Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\CompositeResolver"> <arguments> <argument name="items" xsi:type="array"> <item name="notEav" xsi:type="object">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\NotEavAttribute</item> <item name="special" xsi:type="object">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\SpecialAttribute</item> <item name="price" xsi:type="object">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\Price</item> <item name="categoryName" xsi:type="object">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\CategoryName</item> <item name="position" xsi:type="object">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\Position</item> <item name="default" xsi:type="object">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\DefaultResolver</item> </argument> </arguments> </type><virtualType name="elasticsearch5FieldNameResolver" type="\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\CompositeResolver"> <arguments> <argument name="items" xsi:type="array"> <item name="notEav" xsi:type="object" sortOrder="10">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\NotEavAttribute</item> <item name="special" xsi:type="object" sortOrder="20">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\SpecialAttribute</item> <item name="price" xsi:type="object" sortOrder="30">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\Price</item> <item name="categoryName" xsi:type="object" sortOrder="40">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\CategoryName</item> <item name="position" xsi:type="object" sortOrder="50">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\Position</item> <item name="default" xsi:type="object" sortOrder="100">elasticsearch5FieldNameDefaultResolver</item> </argument> </arguments> </virtualType><virtualType name="elasticsearch5FieldNameDefaultResolver" type="Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\DefaultResolver"> <arguments> <argument name="fieldTypeResolver" xsi:type="object">\Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Resolver\CompositeResolver</argument> <argument name="fieldTypeConverter" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Converter</argument> </arguments> </virtualType><type name="Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Resolver\CompositeResolver"> <arguments> <argument name="items" xsi:type="array"> <item name="integer" xsi:type="object" sortOrder="10">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Resolver\IntegerType</item> <item name="datetime" xsi:type="object" sortOrder="20">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Resolver\DateTimeType</item> <item name="float" xsi:type="object" sortOrder="30">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Resolver\FloatType</item> <item name="default" xsi:type="object" sortOrder="100">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Resolver\DefaultResolver</item> </argument> </arguments> </type><type name="Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Resolver\CompositeResolver"> <arguments> <argument name="items" xsi:type="array"> <item name="keyword" xsi:type="object" sortOrder="10">\Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Resolver\KeywordType</item> <item name="integer" xsi:type="object" sortOrder="20">\Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Resolver\IntegerType</item> <item name="datetime" xsi:type="object" sortOrder="30">elasticsearch5FieldTypeDateTimeResolver</item> <item name="float" xsi:type="object" sortOrder="40">elasticsearch5FieldTypeFloatResolver</item> <item name="default" xsi:type="object" sortOrder="100">elasticsearch5FieldTypeDefaultResolver</item> </argument> </arguments> </type><type name="Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\CompositeFieldProvider"> <arguments> <argument name="providers" xsi:type="array"> <item name="static" xsi:type="object">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\StaticField</item> <item name="dynamic" xsi:type="object">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\DynamicField</item> </argument> </arguments> </type><virtualType name="elasticsearch5FieldProvider" type="Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\CompositeFieldProvider"> <arguments> <argument name="providers" xsi:type="array"> <item name="static" xsi:type="object">elasticsearch5StaticFieldProvider</item> <item name="dynamic" xsi:type="object">elasticsearch5DynamicFieldProvider</item> </argument> </arguments> </virtualType><virtualType name="elasticsearch5StaticFieldProvider" type="\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\StaticField"> <arguments> <argument name="fieldTypeConverter" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Converter</argument> <argument name="indexTypeConverter" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldIndex\Converter</argument> <argument name="fieldIndexResolver" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldIndex\IndexResolver</argument> <argument name="fieldTypeResolver" xsi:type="object">\Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Resolver\CompositeResolver</argument> <argument name="fieldNameResolver" xsi:type="object">elasticsearch5FieldNameResolver</argument> </arguments> </virtualType><virtualType name="elasticsearch5DynamicFieldProvider" type="\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\DynamicField"> <arguments> <argument name="fieldTypeConverter" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Converter</argument> <argument name="indexTypeConverter" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldIndex\Converter</argument> </arguments> </virtualType><type name="Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Resolver\KeywordType"> <arguments> <argument name="fieldTypeConverter" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Converter</argument> </arguments> </type><type name="Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Resolver\IntegerType"> <arguments> <argument name="fieldTypeConverter" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Converter</argument> </arguments> </type><virtualType name="elasticsearch5FieldTypeDateTimeResolver" type="\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Resolver\DateTimeType"> <arguments> <argument name="fieldTypeConverter" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Converter</argument> </arguments> </virtualType><virtualType name="elasticsearch5FieldTypeFloatResolver" type="\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Resolver\FloatType"> <arguments> <argument name="fieldTypeConverter" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Converter</argument> </arguments> </virtualType><virtualType name="elasticsearch5FieldTypeDefaultResolver" type="\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Resolver\DefaultResolver"> <arguments> <argument name="fieldTypeConverter" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Converter</argument> </arguments> </virtualType><type name="Magento\Elasticsearch\Model\Adapter\Elasticsearch"> <arguments> <argument name="staticFieldProvider" xsi:type="object">elasticsearch5StaticFieldProvider</argument> </arguments> </type><type name="Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\ProductFieldMapper"> <arguments> <argument name="fieldProvider" xsi:type="object">elasticsearch5FieldProvider</argument> <argument name="fieldNameResolver" xsi:type="object">elasticsearch5FieldNameResolver</argument> </arguments> </type><type name="Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldIndex\IndexResolver"> <arguments> <argument name="converter" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldIndex\Converter</argument> <argument name="fieldTypeConverter" xsi:type="object">Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Converter</argument> <argument name="fieldTypeResolver" xsi:type="object">\Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\Product\FieldProvider\FieldType\Resolver\CompositeResolver</argument> </arguments> </type><type name="Magento\Search\Model\Search\PageSizeProvider"> <arguments> <argument name="pageSizeBySearchEngine" xsi:type="array"> <item name="elasticsearch5" xsi:type="number">10000</item> <item name="elasticsearch6" xsi:type="number">10000</item><item name="elasticsearch7" xsi:type="number">10000</item></argument> </arguments> </type><type name="Magento\Elasticsearch\SearchAdapter\Query\ValueTransformerPool"> <arguments> <argument name="valueTransformers" xsi:type="array"> <item name="default" xsi:type="object">Magento\Elasticsearch\SearchAdapter\Query\ValueTransformer\TextTransformer</item> <item name="date" xsi:type="object">Magento\Elasticsearch\SearchAdapter\Query\ValueTransformer\DateTransformer</item> <item name="float" xsi:type="object">Magento\Elasticsearch\SearchAdapter\Query\ValueTransformer\FloatTransformer</item> <item name="double" xsi:type="object">Magento\Elasticsearch\SearchAdapter\Query\ValueTransformer\FloatTransformer</item> <item name="integer" xsi:type="object">Magento\Elasticsearch\SearchAdapter\Query\ValueTransformer\IntegerTransformer</item> </argument> </arguments> </type><type name="Magento\Elasticsearch\SearchAdapter\Query\ValueTransformer\TextTransformer"> <arguments> <argument name="preprocessors" xsi:type="array"> <item name="stopwordsPreprocessor" xsi:type="object">Magento\Elasticsearch\SearchAdapter\Query\Preprocessor\Stopwords</item> </argument> </arguments> </type><type name="Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\StaticField"> <arguments> <argument name="excludedAttributes" xsi:type="array"> <item name="price" xsi:type="string">price</item> </argument> </arguments> </type><type name="Magento\Elasticsearch\Setup\InstallConfig"> <arguments> <argument name="searchConfigMapping" xsi:type="array"> <item name="elasticsearch-host" xsi:type="string">elasticsearch5_server_hostname</item> <item name="elasticsearch-port" xsi:type="string">elasticsearch5_server_port</item> <item name="elasticsearch-timeout" xsi:type="string">elasticsearch5_server_timeout</item> <item name="elasticsearch-index-prefix" xsi:type="string">elasticsearch5_index_prefix</item> <item name="elasticsearch-enable-auth" xsi:type="string">elasticsearch5_enable_auth</item> <item name="elasticsearch-username" xsi:type="string">elasticsearch5_username</item> <item name="elasticsearch-password" xsi:type="string">elasticsearch5_password</item> </argument> </arguments> </type><type name="Magento\Search\Setup\CompositeInstallConfig"> <arguments> <argument name="installConfigList" xsi:type="array"> <item name="elasticsearch5" xsi:type="object">Magento\Elasticsearch\Setup\InstallConfig</item> <item name="elasticsearch6" xsi:type="object">Magento\Elasticsearch6\Setup\InstallConfig</item><item name="elasticsearch7" xsi:type="object">Magento\Elasticsearch7\Setup\InstallConfig</item></argument> </arguments> </type><type name="Magento\Search\Model\SearchEngine\Validator"> <arguments> <argument name="excludedEngineList" xsi:type="array"> <item name="elasticsearch" xsi:type="string">Elasticsearch 2</item> </argument> <argument name="engineValidators" xsi:type="array"> <item name="elasticsearch5" xsi:type="object">Magento\Elasticsearch\Setup\Validator</item> <item name="elasticsearch6" xsi:type="object">Magento\Elasticsearch\Setup\Validator</item><item name="elasticsearch7" xsi:type="object">Magento\Elasticsearch\Setup\Validator</item></argument> </arguments> </type><type name="Magento\Elasticsearch\Model\Indexer\Fulltext\Plugin\Category\Product\Attribute"> <arguments> <argument name="dimensionProvider" xsi:type="object" shared="false">Magento\Store\Model\StoreDimensionProvider</argument> </arguments> </type><type name="Magento\Search\Model\ResourceModel\SynonymGroup"> <plugin name="synonymReaderPlugin" type="Magento\Elasticsearch\Model\Indexer\Fulltext\Plugin\Search\Model\SynonymReaderPlugin"/> </type><type name="Magento\Elasticsearch\Model\Indexer\IndexerHandler"> <arguments> <argument name="cacheContext" xsi:type="object">Magento\Framework\Indexer\CacheContext\Proxy</argument> </arguments> </type><virtualType name="Magento\Elasticsearch6\Model\Client\ElasticsearchFactory" type="Magento\AdvancedSearch\Model\Client\ClientFactory"> <arguments> <argument name="clientClass" xsi:type="string">Magento\Elasticsearch6\Model\Client\Elasticsearch</argument> </arguments> </virtualType><type name="Magento\Elasticsearch6\Model\Client\Elasticsearch"> <arguments> <argument name="fieldsMappingPreprocessors" xsi:type="array"> <item name="elasticsearch6_copy_searchable_fields_to_search_field" xsi:type="object">Magento\Elasticsearch\Model\Adapter\FieldMapper\CopySearchableFieldsToSearchField</item> <item name="elasticsearch6_add_default_search_field" xsi:type="object">Magento\Elasticsearch\Model\Adapter\FieldMapper\AddDefaultSearchField</item> </argument> </arguments> </type><virtualType name="Magento\Elasticsearch6\Model\DataProvider\Suggestions" type="Magento\Elasticsearch\Model\DataProvider\Base\Suggestions"> <arguments> <argument name="fieldProvider" xsi:type="object">elasticsearch5FieldProvider</argument> </arguments> </virtualType><virtualType name="elasticsearch6FieldNameResolver" type="\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\CompositeResolver"> <arguments> <argument name="items" xsi:type="array"> <item name="notEav" xsi:type="object" sortOrder="10">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\NotEavAttribute</item> <item name="special" xsi:type="object" sortOrder="20">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\SpecialAttribute</item> <item name="price" xsi:type="object" sortOrder="30">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\Price</item> <item name="categoryName" xsi:type="object" sortOrder="40">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\CategoryName</item> <item name="position" xsi:type="object" sortOrder="50">\Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\Position</item> <item name="default" xsi:type="object" sortOrder="100">\Magento\Elasticsearch6\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\DefaultResolver</item> </argument> </arguments> </virtualType><virtualType name="Magento\Elasticsearch6\Model\Adapter\FieldMapper\ProductFieldMapper" type="Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldMapper\ProductFieldMapper"> <arguments> <argument name="fieldProvider" xsi:type="object">elasticsearch5FieldProvider</argument> <argument name="fieldNameResolver" xsi:type="object">elasticsearch6FieldNameResolver</argument> </arguments> </virtualType><virtualType name="Magento\Elasticsearch6\Setup\InstallConfig" type="Magento\Elasticsearch\Setup\InstallConfig"> <arguments> <argument name="searchConfigMapping" xsi:type="array"> <item name="elasticsearch-host" xsi:type="string">elasticsearch6_server_hostname</item> <item name="elasticsearch-port" xsi:type="string">elasticsearch6_server_port</item> <item name="elasticsearch-timeout" xsi:type="string">elasticsearch6_server_timeout</item> <item name="elasticsearch-index-prefix" xsi:type="string">elasticsearch6_index_prefix</item> <item name="elasticsearch-enable-auth" xsi:type="string">elasticsearch6_enable_auth</item> <item name="elasticsearch-username" xsi:type="string">elasticsearch6_username</item> <item name="elasticsearch-password" xsi:type="string">elasticsearch6_password</item> </argument> </arguments> </virtualType><preference for="Magento\WebsiteRestriction\Model\ConfigInterface" type="Magento\WebsiteRestriction\Model\Config"/><type name="Magento\WebsiteRestriction\Model\Config"> <arguments> <argument name="reader" xsi:type="object">Magento\WebsiteRestriction\Model\Config\Reader\Proxy</argument> </arguments> </type><type name="Magento\CatalogGraphQl\DataProvider\Product\SearchCriteriaBuilder"> <plugin name="product_search_criteria_filter" type="Magento\ElasticsearchCatalogPermissionsGraphQl\Plugin\CatalogGraphQl\ProductSearchCriteriaFilter"/> </type><preference for="Magento\Framework\Mail\TemplateInterface" type="Magento\Email\Model\Template"/><preference for="Magento\Framework\Mail\Template\FactoryInterface" type="Magento\Framework\Mail\Template\Factory"/><preference for="Magento\Framework\Mail\TransportInterface" type="Magento\Email\Model\Transport"/><preference for="Magento\Framework\Mail\MessageInterface" type="Magento\Framework\Mail\Message"/><preference for="Magento\Framework\Mail\Template\SenderResolverInterface" type="Magento\Email\Model\Template\SenderResolver"/><type name="Magento\Email\Model\BackendTemplate"> <arguments> <argument name="urlModel" xsi:type="object" shared="false">Magento\Backend\Model\Url</argument> </arguments> </type><type name="Magento\Email\Model\Template"> <arguments> <argument name="urlModel" xsi:type="object">Magento\Framework\Url</argument> </arguments> </type><type name="Magento\Framework\Mail\TransportInterface"> <plugin name="WindowsSmtpConfig" type="Magento\Email\Model\Plugin\WindowsSmtpConfig"/> <plugin name="EmailDisable" type="Magento\Email\Model\Mail\TransportInterfacePlugin"/> </type><type name="Magento\Email\Model\AbstractTemplate"> <plugin name="EmailTemplateLinkUrl" type="Magento\Email\Model\Plugin\GetUrl"/> </type><type name="Magento\Framework\Filter\Template"> <arguments> <argument name="directiveProcessors" xsi:type="array"> <item name="depend" sortOrder="100" xsi:type="object">Magento\Framework\Filter\DirectiveProcessor\DependDirective</item> <item name="if" sortOrder="200" xsi:type="object">Magento\Framework\Filter\DirectiveProcessor\IfDirective</item> <item name="template" sortOrder="300" xsi:type="object">Magento\Framework\Filter\DirectiveProcessor\TemplateDirective</item> <item name="legacy" sortOrder="400" xsi:type="object">Magento\Framework\Filter\DirectiveProcessor\LegacyDirective</item> </argument> </arguments> </type><type name="Magento\Framework\Filter\DirectiveProcessor\Filter\FilterPool"> <arguments> <argument name="filters" xsi:type="array"> <item name="nl2br" xsi:type="object">Magento\Framework\Filter\DirectiveProcessor\Filter\NewlineToBreakFilter</item> <item name="escape" xsi:type="object">Magento\Framework\Filter\DirectiveProcessor\Filter\EscapeFilter</item> </argument> </arguments> </type><type name="\Magento\EncryptionKey\Setup\Patch\Data\SodiumChachaPatch"> <arguments> <argument name="structure" xsi:type="object">Magento\Config\Model\Config\Structure\Proxy</argument> </arguments> </type><type name="Magento\Theme\Model\Favicon\Favicon"> <plugin name="enterprise_favicon" type="Magento\Enterprise\Model\Plugin\Favicon"/> </type><preference for="Magento\Framework\App\ProductMetadataInterface" type="Magento\Enterprise\Model\ProductMetadata"/><type name="Magento\Shipping\Block\DataProviders\Tracking\DeliveryDateTitle"> <plugin name="update_delivery_date_title" type="Magento\Fedex\Plugin\Block\DataProviders\Tracking\ChangeTitle"/> <plugin name="ups_update_delivery_date_title" type="Magento\Ups\Plugin\Block\DataProviders\Tracking\ChangeTitle"/></type><type name="Magento\Shipping\Block\Tracking\Popup"> <plugin name="update_delivery_date_value" type="Magento\Fedex\Plugin\Block\Tracking\PopupDeliveryDate"/> </type><preference for="Magento\Tax\Api\TaxRuleRepositoryInterface" type="Magento\Tax\Model\TaxRuleRepository"/><preference for="Magento\Tax\Api\TaxCalculationInterface" type="Magento\Tax\Model\TaxCalculation"/><type name="Magento\Tax\Helper\Data"> <arguments> <argument name="taxConfig" xsi:type="object">Magento\Tax\Model\Config\Proxy</argument> </arguments> </type><type name="Magento\Tax\Model\ResourceModel\Calculation"> <arguments> <argument name="taxData" xsi:type="object">Magento\Tax\Helper\Data\Proxy</argument> </arguments> </type><type name="Magento\Framework\Pricing\Adjustment\Pool"> <arguments> <argument name="adjustments" xsi:type="array"> <item name="tax" xsi:type="array"> <item name="className" xsi:type="string">Magento\Tax\Pricing\Adjustment</item> <item name="sortOrder" xsi:type="string">20</item> </item> <item name="weee" xsi:type="array"> <item name="className" xsi:type="string">Magento\Weee\Pricing\Adjustment</item> <item name="sortOrder" xsi:type="string">25</item> </item><item name="weee_tax" xsi:type="array"> <item name="className" xsi:type="string">Magento\Weee\Pricing\TaxAdjustment</item> <item name="sortOrder" xsi:type="string">35</item> </item></argument> </arguments> </type><preference for="Magento\Tax\Api\Data\TaxRateSearchResultsInterface" type="Magento\Tax\Model\TaxRateSearchResults"/><preference for="Magento\Tax\Api\Data\TaxClassSearchResultsInterface" type="Magento\Tax\Model\TaxClassSearchResults"/><preference for="Magento\Tax\Api\OrderTaxManagementInterface" type="Magento\Tax\Model\Sales\Order\TaxManagement"/><preference for="Magento\Tax\Api\Data\OrderTaxDetailsAppliedTaxInterface" type="Magento\Tax\Model\Sales\Order\Tax"/><preference for="Magento\Tax\Api\Data\OrderTaxDetailsInterface" type="Magento\Tax\Model\Sales\Order\Details"/><preference for="Magento\Tax\Api\Data\OrderTaxDetailsItemInterface" type="Magento\Sales\Model\Order\Tax\Item"/><preference for="Magento\Tax\Api\TaxClassManagementInterface" type="Magento\Tax\Model\TaxClass\Management"/><preference for="Magento\Tax\Api\TaxClassRepositoryInterface" type="Magento\Tax\Model\TaxClass\Repository"/><preference for="Magento\Tax\Api\Data\TaxClassInterface" type="Magento\Tax\Model\ClassModel"/><preference for="Magento\Tax\Api\Data\TaxRuleInterface" type="Magento\Tax\Model\Calculation\Rule"/><preference for="Magento\Tax\Api\Data\TaxRuleSearchResultsInterface" type="Magento\Tax\Model\TaxRuleSearchResults"/><preference for="Magento\Tax\Api\TaxRateManagementInterface" type="Magento\Tax\Model\TaxRateManagement"/><preference for="Magento\Tax\Api\TaxRateRepositoryInterface" type="Magento\Tax\Model\Calculation\RateRepository"/><preference for="Magento\Tax\Api\Data\TaxRateTitleInterface" type="Magento\Tax\Model\Calculation\Rate\Title"/><preference for="Magento\Tax\Api\Data\TaxRateInterface" type="Magento\Tax\Model\Calculation\Rate"/><preference for="Magento\Tax\Api\Data\QuoteDetailsInterface" type="Magento\Tax\Model\Sales\Quote\QuoteDetails"/><preference for="Magento\Tax\Api\Data\QuoteDetailsItemInterface" type="Magento\Tax\Model\Sales\Quote\ItemDetails"/><preference for="Magento\Tax\Api\Data\TaxClassKeyInterface" type="Magento\Tax\Model\TaxClass\Key"/><preference for="Magento\Tax\Api\Data\AppliedTaxInterface" type="Magento\Tax\Model\TaxDetails\AppliedTax"/><preference for="Magento\Tax\Api\Data\AppliedTaxRateInterface" type="Magento\Tax\Model\TaxDetails\AppliedTaxRate"/><preference for="Magento\Tax\Api\Data\TaxDetailsInterface" type="Magento\Tax\Model\TaxDetails\TaxDetails"/><preference for="Magento\Tax\Api\Data\TaxDetailsItemInterface" type="Magento\Tax\Model\TaxDetails\ItemDetails"/><preference for="Magento\Tax\Api\Data\GrandTotalDetailsInterface" type="Magento\Tax\Model\Calculation\GrandTotalDetails"/><preference for="Magento\Tax\Api\Data\GrandTotalRatesInterface" type="Magento\Tax\Model\Calculation\GrandTotalRates"/><preference for="Magento\Tax\Api\TaxAddressManagerInterface" type="Magento\Tax\Model\TaxAddressManager"/><type name="Magento\Quote\Model\Quote\Address\ToOrder"> <plugin name="add_tax_to_order" type="Magento\Tax\Model\Quote\ToOrderConverter"/> <plugin name="set_pickup_location_to_order_during_address_conversion" type="Magento\InventoryInStorePickupQuote\Plugin\Quote\SetPickupLocationToOrder" sortOrder="20"/></type><type name="Magento\Quote\Model\Cart\TotalsConverter"> <plugin name="add_tax_details" type="Magento\Tax\Model\Quote\GrandTotalDetailsPlugin" sortOrder="1"/> <plugin name="giftCardAmountTotal" type="Magento\GiftCardAccount\Model\Plugin\TotalsConverter"/><plugin name="gift_wrapping_total" type="Magento\GiftWrapping\Model\Plugin\TotalsConverter"/><plugin sortOrder="2" name="classy_llama_ava_tax_grand_total_details_sorter" type="ClassyLlama\AvaTax\Plugin\Model\Quote\GrandTotalDetailsSorter"/></type><type name="Magento\Tax\Model\ResourceModel\Report\Tax\Createdat"> <arguments> <argument name="connectionName" xsi:type="string">sales</argument> </arguments> </type><type name="Magento\Tax\Model\ResourceModel\Report\Tax\Updatedat"> <arguments> <argument name="connectionName" xsi:type="string">sales</argument> </arguments> </type><type name="Magento\Tax\Model\ResourceModel\Sales\Order\Tax"> <arguments> <argument name="connectionName" xsi:type="string">sales</argument> </arguments> </type><type name="Magento\Tax\Model\TaxRuleRepository"> <arguments> <argument name="collectionProcessor" xsi:type="object">Magento\Tax\Model\Api\SearchCriteria\TaxRuleCollectionProcessor</argument> </arguments> </type><type name="Magento\Tax\Model\Calculation\RateRepository"> <arguments> <argument name="collectionProcessor" xsi:type="object">Magento\Tax\Model\Api\SearchCriteria\TaxRateCollectionProcessor</argument> </arguments> </type><virtualType name="Magento\Tax\Model\Api\SearchCriteria\TaxRateCollectionProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor"> <arguments> <argument name="processors" xsi:type="array"> <item name="filters" xsi:type="object">Magento\Tax\Model\Api\SearchCriteria\CollectionProcessor\TaxRateFilterProcessor</item> <item name="sorting" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\SortingProcessor</item> <item name="pagination" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\PaginationProcessor</item> </argument> </arguments> </virtualType><virtualType name="Magento\Tax\Model\Api\SearchCriteria\CollectionProcessor\TaxRateFilterProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\FilterProcessor"> <arguments> <argument name="fieldMapping" xsi:type="array"> <item name="tax_calculation_rate_id" xsi:type="string">main_table.tax_calculation_rate_id</item> <item name="tax_country_id" xsi:type="string">main_table.tax_country_id</item> <item name="tax_region_id" xsi:type="string">main_table.tax_region_id</item> <item name="code" xsi:type="string">main_table.code</item> <item name="rate" xsi:type="string">main_table.rate</item> <item name="zip_is_range" xsi:type="string">main_table.zip_is_range</item> <item name="zip_from" xsi:type="string">main_table.zip_from</item> <item name="zip_to" xsi:type="string">main_table.zip_to</item> <item name="region_name" xsi:type="string">region_table.code</item> </argument> </arguments> </virtualType><virtualType name="Magento\Tax\Model\Api\SearchCriteria\CollectionProcessor\TaxRuleJoinProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\JoinProcessor"> <arguments> <argument name="customJoins" xsi:type="array"> <item name="rate.tax_calculation_rate_id" xsi:type="object">Magento\Tax\Model\Api\SearchCriteria\JoinProcessor\Rate</item> <item name="rc.code" xsi:type="object">Magento\Tax\Model\Api\SearchCriteria\JoinProcessor\RateCode</item> <item name="ctc.customer_tax_class_id" xsi:type="object">Magento\Tax\Model\Api\SearchCriteria\JoinProcessor\CustomerTaxClass</item> <item name="ptc.product_tax_class_id" xsi:type="object">Magento\Tax\Model\Api\SearchCriteria\JoinProcessor\ProductTaxClass</item> <item name="cd.customer_tax_class_id" xsi:type="object">Magento\Tax\Model\Api\SearchCriteria\JoinProcessor\CalculationData</item> <item name="cd.product_tax_class_id" xsi:type="object">Magento\Tax\Model\Api\SearchCriteria\JoinProcessor\CalculationData</item> </argument> <argument name="fieldMapping" xsi:type="array"> <item name="id" xsi:type="string">tax_calculation_rule_id</item> <item name="tax_rate_ids" xsi:type="string">tax_calculation_rate_id</item> <item name="customer_tax_class_ids" xsi:type="string">cd.customer_tax_class_id</item> <item name="product_tax_class_ids" xsi:type="string">cd.product_tax_class_id</item> <item name="tax_calculation_rate_id" xsi:type="string">rate.tax_calculation_rate_id</item> </argument> </arguments> </virtualType><virtualType name="Magento\Tax\Model\Api\SearchCriteria\CollectionProcessor\TaxRuleSortingProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\SortingProcessor"> <arguments> <argument name="fieldMapping" xsi:type="array"> <item name="id" xsi:type="string">tax_calculation_rule_id</item> <item name="code" xsi:type="string">main_table.code</item> <item name="tax_rate_ids" xsi:type="string">tax_calculation_rate_id</item> <item name="customer_tax_class_ids" xsi:type="string">cd.customer_tax_class_id</item> <item name="product_tax_class_ids" xsi:type="string">cd.product_tax_class_id</item> <item name="tax_calculation_rate_id" xsi:type="string">rate.tax_calculation_rate_id</item> </argument> </arguments> </virtualType><virtualType name="Magento\Tax\Model\Api\SearchCriteria\CollectionProcessor\TaxRuleFilterProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\FilterProcessor"> <arguments> <argument name="fieldMapping" xsi:type="array"> <item name="id" xsi:type="string">tax_calculation_rule_id</item> <item name="code" xsi:type="string">main_table.code</item> <item name="tax_rate_ids" xsi:type="string">tax_calculation_rate_id</item> <item name="customer_tax_class_ids" xsi:type="string">cd.customer_tax_class_id</item> <item name="product_tax_class_ids" xsi:type="string">cd.product_tax_class_id</item> <item name="tax_calculation_rate_id" xsi:type="string">rate.tax_calculation_rate_id</item> </argument> </arguments> </virtualType><virtualType name="Magento\Tax\Model\Api\SearchCriteria\TaxRuleCollectionProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor"> <arguments> <argument name="processors" xsi:type="array"> <item name="joins" xsi:type="object">Magento\Tax\Model\Api\SearchCriteria\CollectionProcessor\TaxRuleJoinProcessor</item> <item name="filters" xsi:type="object">Magento\Tax\Model\Api\SearchCriteria\CollectionProcessor\TaxRuleFilterProcessor</item> <item name="sorting" xsi:type="object">Magento\Tax\Model\Api\SearchCriteria\CollectionProcessor\TaxRuleSortingProcessor</item> <item name="pagination" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\PaginationProcessor</item> </argument> </arguments> </virtualType><type name="Magento\GiftCardAccount\Model\Pool"> <arguments> <argument name="giftCardCodeParams" xsi:type="array"> <item name="separator" xsi:type="string">-</item> <item name="charset" xsi:type="array"> <item name="alphanum" xsi:type="string">ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789</item> <item name="alpha" xsi:type="string">ABCDEFGHIJKLMNOPQRSTUVWXYZ</item> <item name="num" xsi:type="string">0123456789</item> </item> </argument> </arguments> </type><type name="Magento\Sales\Controller\Adminhtml\Order\Edit\Index"> <plugin name="order_edit" type="Magento\GiftCardAccount\Controller\Adminhtml\Order\Edit\Plugin" sortOrder="10"/> </type><preference for="Magento\GiftCardAccount\Api\Data\GiftCardAccountInterface" type="Magento\GiftCardAccount\Model\Giftcardaccount"/><preference for="Magento\GiftCardAccount\Api\GiftCardAccountRepositoryInterface" type="Magento\GiftCardAccount\Model\GiftCardAccountRepository"/><preference for="Magento\GiftCardAccount\Api\GiftCardAccountManagementInterface" type="Magento\GiftCardAccount\Model\Service\GiftCardAccountManagement"/><preference for="Magento\GiftCardAccount\Model\Spi\GiftCardAccountResourceInterface" type="Magento\GiftCardAccount\Model\ResourceModel\Giftcardaccount"/><preference for="Magento\GiftCardAccount\Api\GuestGiftCardAccountManagementInterface" type="Magento\GiftCardAccount\Model\GuestCart\GiftCardAccountManagement"/><preference for="Magento\GiftCardAccount\Api\Data\GiftCardAccountSearchResultInterface" type="Magento\Framework\Api\SearchResults"/><preference for="Magento\GiftCardAccount\Model\Spi\UsageAttemptsManagerInterface" type="Magento\GiftCardAccount\Model\UsageAttempt\UsageAttemptsManager"/><preference for="Magento\GiftCardAccount\Model\Spi\UsageAttemptFactoryInterface" type="Magento\GiftCardAccount\Model\UsageAttempt\UsageAttemptFactory"/><preference for="Magento\GiftCardAccount\Model\Spi\GiftCardAccountManagerInterface" type="Magento\GiftCardAccount\Model\Manager"/><preference for="Magento\GiftCardAccount\Api\GiftCardRedeemerInterface" type="Magento\GiftCardAccount\Model\Redeemer"/><preference for="Magento\Sitemap\Model\SitemapItemInterface" type="Magento\Sitemap\Model\SitemapItem"/><preference for="Magento\Sitemap\Model\ItemProvider\ItemProviderInterface" type="Magento\Sitemap\Model\ItemProvider\Composite"/><preference for="Magento\Sitemap\Model\SitemapConfigReaderInterface" type="Magento\Sitemap\Model\SitemapConfigReader"/><type name="Magento\Sitemap\Model\Sitemap"> <arguments> <argument name="resource" xsi:type="object">Magento\Sitemap\Model\ResourceModel\Sitemap</argument> <argument name="filesystem" xsi:type="object">fullRemoteFilesystem</argument></arguments> </type><type name="Magento\Sitemap\Model\ItemProvider\Composite"> <arguments> <argument name="itemProviders" xsi:type="array"> <item name="storeUrlProvider" xsi:type="object">Magento\Sitemap\Model\ItemProvider\StoreUrl</item> <item name="categoryProvider" xsi:type="object">Magento\Sitemap\Model\ItemProvider\Category</item> <item name="cmsPageProvider" xsi:type="object">Magento\Sitemap\Model\ItemProvider\CmsPage</item> <item name="productProvider" xsi:type="object">Magento\Sitemap\Model\ItemProvider\Product</item> </argument> </arguments> </type><type name="Magento\Sitemap\Model\ItemProvider\StoreUrl"> <arguments> <argument name="configReader" xsi:type="object">Magento\Sitemap\Model\ItemProvider\StoreUrlConfigReader</argument> </arguments> </type><type name="Magento\Sitemap\Model\ItemProvider\Category"> <arguments> <argument name="configReader" xsi:type="object">Magento\Sitemap\Model\ItemProvider\CategoryConfigReader</argument> </arguments> </type><type name="Magento\Sitemap\Model\ItemProvider\Product"> <arguments> <argument name="configReader" xsi:type="object">Magento\Sitemap\Model\ItemProvider\ProductConfigReader</argument> </arguments> </type><type name="Magento\Sitemap\Model\ItemProvider\CmsPage"> <arguments> <argument name="configReader" xsi:type="object">Magento\Sitemap\Model\ItemProvider\CmsPageConfigReader</argument> </arguments> </type><type name="Magento\CatalogEvent\Model\Event" shared="false"/><preference for="Magento\GiftMessage\Api\CartRepositoryInterface" type="Magento\GiftMessage\Model\CartRepository"/><preference for="Magento\GiftMessage\Api\ItemRepositoryInterface" type="Magento\GiftMessage\Model\ItemRepository"/><preference for="Magento\GiftMessage\Api\GuestCartRepositoryInterface" type="Magento\GiftMessage\Model\GuestCartRepository"/><preference for="Magento\GiftMessage\Api\GuestItemRepositoryInterface" type="Magento\GiftMessage\Model\GuestItemRepository"/><preference for="Magento\GiftMessage\Api\OrderRepositoryInterface" type="Magento\GiftMessage\Model\OrderRepository"/><preference for="Magento\GiftMessage\Api\OrderItemRepositoryInterface" type="Magento\GiftMessage\Model\OrderItemRepository"/><preference for="Magento\GiftMessage\Api\Data\MessageInterface" type="Magento\GiftMessage\Model\Message"/><type name="Magento\GiftMessage\Model\Plugin\QuoteItem" shared="false"/><preference for="Magento\UrlRewrite\Model\StorageInterface" type="Magento\UrlRewrite\Model\Storage\DbStorage"/><preference for="Magento\UrlRewrite\Model\UrlFinderInterface" type="Magento\UrlRewrite\Model\Storage\DbStorage"/><preference for="Magento\UrlRewrite\Model\UrlPersistInterface" type="Magento\UrlRewrite\Model\Storage\DbStorage"/><virtualType name="Magento\UrlRewrite\Ui\Component\UrlRewrite\DataProvider\SearchResult" type="Magento\Framework\View\Element\UiComponent\DataProvider\SearchResult"> <arguments> <argument name="mainTable" xsi:type="string">url_rewrite</argument> <argument name="resourceModel" xsi:type="string">Magento\UrlRewrite\Model\ResourceModel\UrlRewrite</argument> <argument name="identifierName" xsi:type="string">url_rewrite_id</argument> </arguments> </virtualType><preference for="Magento\GiftWrapping\Api\WrappingRepositoryInterface" type="Magento\GiftWrapping\Model\WrappingRepository"/><preference for="Magento\GiftWrapping\Api\Data\WrappingInterface" type="Magento\GiftWrapping\Model\Wrapping"/><preference for="Magento\GiftWrapping\Api\Data\WrappingSearchResultsInterface" type="Magento\Framework\Api\SearchResults"/><type name="Magento\GiftWrapping\Model\WrappingRepository"> <arguments> <argument name="collectionProcessor" xsi:type="object">Magento\GiftWrapping\Api\SearchCriteria\WrappingCollectionProcessor</argument> </arguments> </type><virtualType name="Magento\GiftWrapping\Api\SearchCriteria\WrappingCollectionProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor"> <arguments> <argument name="processors" xsi:type="array"> <item name="filters" xsi:type="object">Magento\GiftWrapping\Model\Api\SearchCriteria\CollectionProcessor\WrappingFilterProcessor</item> </argument> </arguments> </virtualType><virtualType name="Magento\GiftWrapping\Model\Api\SearchCriteria\CollectionProcessor\WrappingFilterProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\FilterProcessor"> <arguments> <argument name="customFilters" xsi:type="array"> <item name="website_ids" xsi:type="object">Magento\GiftWrapping\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor\WrappingWebsitesFilter</item> <item name="status" xsi:type="object">Magento\GiftWrapping\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor\WrappingStatusFilter</item> <item name="store_id" xsi:type="object">Magento\GiftWrapping\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor\WrappingStoreFilter</item> </argument> </arguments> </virtualType><type name="Magento\GoogleAdwords\Observer\SetConversionValueObserver"> <arguments> <argument name="collection" xsi:type="object">Magento\Sales\Model\ResourceModel\Order\Collection\Proxy</argument> </arguments> </type><type name="Magento\Banner\Model\Config"> <arguments> <argument name="bannerTypes" xsi:type="array"> <item name="content" xsi:type="string" translatable="true">Content Area</item> <item name="footer" xsi:type="string" translatable="true">Footer</item> <item name="header" xsi:type="string" translatable="true">Header</item> <item name="leftcol" xsi:type="string" translatable="true">Left Column</item> <item name="rightcol" xsi:type="string" translatable="true">Right Column</item> </argument> </arguments> </type><virtualType name="storeColumn" type="Magento\Store\Ui\Component\Listing\Column\Store"> <arguments> <argument name="storeKey" xsi:type="string">stores</argument> </arguments> </virtualType><preference for="Magento\AsyncOrder\Api\AsyncPaymentInformationCustomerPublisherInterface" type="Magento\AsyncOrder\Model\AsyncPaymentInformationCustomerPublisher"/><preference for="Magento\AsyncOrder\Api\AsyncPaymentInformationGuestPublisherInterface" type="Magento\AsyncOrder\Model\AsyncPaymentInformationGuestPublisher"/><preference for="Magento\AsyncOrder\Api\Data\AsyncOrderMessageInterface" type="Magento\AsyncOrder\Model\Entity\AsyncOrderMessage"/><preference for="Magento\AsyncOrder\Api\Data\OrderInterface" type="Magento\AsyncOrder\Model\Order"/><type name="Magento\AsyncOrder\Model\OrderManagement"> <arguments> <argument name="paymentMethods" xsi:type="array"> <item name="hosted_pro" xsi:type="string">hosted_pro</item> <item name="payflow_advanced" xsi:type="string">payflow_advanced</item> <item name="payflow_link" xsi:type="string">payflow_link</item> </argument> </arguments> </type><type name="Magento\Backend\Block\Dashboard\Orders\Grid"> <plugin name="orders_grid_plugin" type="Magento\AsyncOrder\Plugin\Block\Dashboard\Orders\Grid" sortOrder="50"/> </type><type name="Magento\Sales\Helper\Guest"> <plugin name="redirect_guest_on_received_order" type="Magento\AsyncOrder\Plugin\Helper\GuestPlugin"/> </type><type name="Magento\Sales\Observer\GridSyncInsertObserver"> <arguments> <argument name="globalConfig" xsi:type="object">Magento\AsyncOrder\Model\AsyncGlobalConfig</argument> </arguments> </type><type name="Magento\Sales\Model\OrderIncrementIdChecker"> <plugin name="after_increment_id_check" type="Magento\AsyncOrder\Plugin\Model\OrderIncrementIdCheckerPlugin" sortOrder="50"/> </type><type name="Magento\Sales\Model\Order\OrderCustomerExtractor"> <plugin name="after_extract" type="Magento\AsyncOrder\Plugin\Model\OrderCustomerExtractorPlugin" sortOrder="50"/> </type><type name="Magento\CheckoutStaging\Plugin\PaymentInformationManagementPlugin"> <arguments> <argument name="quoteRepository" xsi:type="object">Magento\AsyncOrder\Model\CartRepository</argument> </arguments> </type><type name="Magento\CheckoutStaging\Plugin\GuestPaymentInformationManagementPlugin"> <arguments> <argument name="cartRepository" xsi:type="object">Magento\AsyncOrder\Model\CartRepository</argument> </arguments> </type><type name="Magento\AsyncOrder\Model\CustomerOrderProcessor"> <arguments> <argument name="customerPaymentInformationManagement" xsi:type="object">asyncCustomerPaymentInformationManagement</argument> </arguments> </type><virtualType name="asyncCustomerPaymentInformationManagement" type="Magento\Checkout\Model\PaymentInformationManagement"> <arguments> <argument name="cartRepository" xsi:type="object">Magento\AsyncOrder\Model\CartRepository</argument> </arguments> </virtualType><type name="Magento\AsyncOrder\Model\GuestOrderProcessor"> <arguments> <argument name="guestPaymentInformationManagement" xsi:type="object">asyncGuestPaymentInformationManagement</argument> </arguments> </type><virtualType name="asyncGuestPaymentInformationManagement" type="Magento\Checkout\Model\GuestPaymentInformationManagement"> <arguments> <argument name="cartRepository" xsi:type="object">Magento\AsyncOrder\Model\CartRepository</argument> </arguments> </virtualType><type name="Magento\Checkout\Model\PaymentInformationManagement"> <arguments> <argument name="cartManagement" xsi:type="object">asyncCartManagement</argument> </arguments> </type><type name="Magento\Quote\Model\GuestCart\GuestCartManagement"> <arguments> <argument name="quoteManagement" xsi:type="object">asyncCartManagement</argument> </arguments> </type><virtualType name="asyncCartManagement" type="Magento\Quote\Model\QuoteManagement"> <arguments> <argument name="quoteRepository" xsi:type="object">Magento\AsyncOrder\Model\CartRepository</argument> </arguments> </virtualType><type name="Magento\Payment\Observer\SalesOrderBeforeSaveObserver"> <plugin name="skip_order_payment_verification" type="Magento\AsyncOrder\Plugin\OrderPaymentVerificationPlugin"/> </type><preference for="Magento\GroupedProduct\Api\Data\GroupedOptionsInterface" type="Magento\GroupedProduct\Model\Quote\Item\GroupedOptions"/><type name="Magento\Quote\Model\Quote\Item\RelatedProducts"> <arguments> <argument name="relatedProductTypes" xsi:type="array"> <item name="grouped" xsi:type="const">Magento\GroupedProduct\Model\Product\Type\Grouped::TYPE_CODE</item> </argument> </arguments> </type><virtualType name="Magento\GroupedProduct\Pricing\Price\Collection" type="Magento\Framework\Pricing\Price\Collection"> <arguments> <argument name="pool" xsi:type="object">Magento\GroupedProduct\Pricing\Price\Pool</argument> </arguments> </virtualType><type name="Magento\Catalog\Model\Product\Initialization\Helper\ProductLinks"> <plugin name="GroupedProduct" type="Magento\GroupedProduct\Model\Product\Initialization\Helper\ProductLinks\Plugin\Grouped"/> </type><type name="Magento\Catalog\Model\ResourceModel\Product\Link"> <plugin name="groupedProductLinkProcessor" type="Magento\GroupedProduct\Model\ResourceModel\Product\Link\RelationPersister"/> </type><type name="Magento\CatalogInventory\Plugin\MassUpdateProductAttribute"> <arguments> <argument name="parentItemProcessorPool" xsi:type="array"> <item name="grouped" xsi:type="object"> Magento\GroupedProduct\Model\Inventory\ParentItemProcessor</item> </argument> </arguments> </type><type name="Magento\GroupedProduct\Model\Product\Type\Grouped"> <plugin name="outOfStockFilter" type="Magento\GroupedCatalogInventory\Plugin\OutOfStockFilter"/> </type><type name="Magento\CatalogGraphQl\Model\Resolver\Products\Query\Filter"> <arguments> <argument name="postProcessors" xsi:type="array"> <item name="grouped_processor" xsi:type="object">Magento\GroupedProductGraphQl\Model\Resolver\Products\Query\GroupedItemsPostProcessor</item> </argument> </arguments> </type><preference for="\Magento\VisualMerchandiser\Api\RuleFactoryPoolInterface" type="\Magento\VisualMerchandiser\Model\RuleFactoryPool"/><type name="\Magento\VisualMerchandiser\Model\RuleFactoryPool"> <arguments> <argument name="rules" xsi:type="array"> <item name="Boolean" xsi:type="object">\Magento\VisualMerchandiser\Model\Rules\Rule\BooleanFactory</item> <item name="CategoryId" xsi:type="object">\Magento\VisualMerchandiser\Model\Rules\Rule\CategoryIdFactory</item> <item name="CreatedAt" xsi:type="object">\Magento\VisualMerchandiser\Model\Rules\Rule\CreatedAtFactory</item> <item name="DaysAgo" xsi:type="object">\Magento\VisualMerchandiser\Model\Rules\Rule\DaysAgoFactory</item> <item name="Literal" xsi:type="object">\Magento\VisualMerchandiser\Model\Rules\Rule\LiteralFactory</item> <item name="QuantityAndStockStatus" xsi:type="object">\Magento\VisualMerchandiser\Model\Rules\Rule\QuantityAndStockStatusFactory</item> <item name="Source" xsi:type="object">\Magento\VisualMerchandiser\Model\Rules\Rule\SourceFactory</item> <item name="UpdatedAt" xsi:type="object">\Magento\VisualMerchandiser\Model\Rules\Rule\UpdatedAtFactory</item> </argument> </arguments> </type><preference for="Magento\RemoteStorage\Driver\Adapter\Cache\CacheInterface" type="Magento\RemoteStorage\Driver\Adapter\Cache\Generic"/><preference for="Magento\RemoteStorage\Driver\Adapter\CachedAdapterInterface" type="Magento\RemoteStorage\Driver\Adapter\CachedAdapter"/><preference for="Magento\RemoteStorage\Driver\Adapter\MetadataProviderInterface" type="Magento\RemoteStorage\Driver\Adapter\MetadataProvider"/><preference for="Magento\RemoteStorage\Driver\Adapter\MetadataProviderFactoryInterface" type="Magento\RemoteStorage\Driver\Adapter\MetadataProviderFactory"/><preference for="Magento\Framework\Filesystem\DriverPool" type="Magento\RemoteStorage\Driver\DriverPool"/><preference for="Magento\Framework\File\Uploader" type="Magento\RemoteStorage\Model\File\Uploader"/><virtualType name="remoteWriteFactory" type="Magento\Framework\Filesystem\Directory\WriteFactory"> <arguments> <argument name="driverPool" xsi:type="object">Magento\RemoteStorage\Driver\DriverPool</argument> </arguments> </virtualType><virtualType name="remoteReadFactory" type="Magento\Framework\Filesystem\Directory\ReadFactory"> <arguments> <argument name="driverPool" xsi:type="object">Magento\RemoteStorage\Driver\DriverPool</argument> </arguments> </virtualType><type name="Magento\RemoteStorage\Filesystem"> <arguments> <argument name="writeFactory" xsi:type="object"> Magento\RemoteStorage\Model\Filesystem\Directory\WriteFactory </argument> <argument name="readFactory" xsi:type="object">remoteReadFactory</argument> </arguments> </type><virtualType name="customRemoteFilesystem" type="Magento\RemoteStorage\Filesystem"> <arguments> <argument name="directoryCodes" xsi:type="array"> <item name="media" xsi:type="const">Magento\Framework\App\Filesystem\DirectoryList::MEDIA</item> <item name="var_import_export" xsi:type="const">Magento\Framework\App\Filesystem\DirectoryList::VAR_IMPORT_EXPORT</item> </argument> </arguments> </virtualType><virtualType name="fullRemoteFilesystem" type="Magento\RemoteStorage\Filesystem"/><virtualType name="stdFilesystem" type="Magento\Framework\Filesystem"/><preference for="Magento\Framework\Filesystem" type="customRemoteFilesystem"/><type name="Magento\Framework\Filesystem\Directory\TargetDirectory"> <arguments> <argument name="filesystem" xsi:type="object">fullRemoteFilesystem</argument> <argument name="driverCode" xsi:type="const">Magento\RemoteStorage\Driver\DriverPool::REMOTE</argument> </arguments> </type><type name="Magento\Sitemap\Controller\Adminhtml\Sitemap\Save"> <arguments> <argument name="filesystem" xsi:type="object">fullRemoteFilesystem</argument> </arguments> </type><type name="Magento\Sitemap\Block\Adminhtml\Grid\Renderer\Link"> <arguments> <argument name="filesystem" xsi:type="object">fullRemoteFilesystem</argument> </arguments> </type><type name="Magento\Sitemap\Controller\Adminhtml\Sitemap\Delete"> <arguments> <argument name="filesystem" xsi:type="object">fullRemoteFilesystem</argument> </arguments> </type><type name="Magento\Framework\App\MaintenanceMode"> <arguments> <argument name="filesystem" xsi:type="object">fullRemoteFilesystem</argument> </arguments> <plugin name="amqp_maintenance_mode" type="Magento\MessageQueue\Model\Plugin\ResourceModel\Lock"/></type><type name="Magento\MediaStorage\Model\File\Storage\SynchronizationFactory"> <plugin name="remoteMediaStorageSynchronizationFactory" type="Magento\RemoteStorage\Plugin\File\Storage\SynchronizationFactory"/> </type><type name="Magento\MediaGalleryMetadata\Model\IptcEmbed"> <plugin name="remoteIptcEmbed" type="Magento\RemoteStorage\Plugin\MediaGalleryMetadata\IptcEmbed"/> </type><type name="Magento\MediaGalleryMetadata\Model\ExifReader"> <plugin name="remoteExifReader" type="Magento\RemoteStorage\Plugin\MediaGalleryMetadata\ExifReader"/> </type><type name="Magento\MediaGallerySynchronization\Model\Filesystem\GetFileInfo"> <plugin name="remoteGetFileInfo" type="Magento\RemoteStorage\Plugin\Filesystem\GetFileInfo"/> </type><type name="Magento\Framework\Data\Collection\Filesystem"> <arguments> <argument name="filesystem" xsi:type="object">fullRemoteFilesystem</argument> </arguments> </type><type name="Magento\Framework\File\Mime"> <arguments> <argument name="filesystem" xsi:type="object">fullRemoteFilesystem</argument> </arguments> </type><type name="Magento\Framework\File\Name"> <arguments> <argument name="filesystem" xsi:type="object">fullRemoteFilesystem</argument> </arguments> </type><type name="Magento\Catalog\Model\Product\Option\Type\File\ExistingValidate"> <plugin name="remoteValidatorInfo" type="Magento\RemoteStorage\Plugin\ExistingValidate" sortOrder="10"/> </type><type name="Magento\Framework\Image\Adapter\AbstractAdapter"> <plugin name="remoteImageFile" type="Magento\RemoteStorage\Plugin\Image" sortOrder="10"/> </type><type name="Magento\Framework\Archive\Zip"> <plugin name="remoteZipArchive" type="Magento\RemoteStorage\Plugin\Zip" sortOrder="10"/> </type><type name="Magento\Catalog\Model\Category\FileInfo"> <arguments> <argument name="filesystem" xsi:type="object">fullRemoteFilesystem</argument> </arguments> </type><type name="Magento\ImportExport\Model\Import\ImageDirectoryBaseProvider"> <arguments> <argument name="filesystem" xsi:type="object">fullRemoteFilesystem</argument> </arguments> </type><type name="Magento\ImportExport\Helper\Report"> <arguments> <argument name="filesystem" xsi:type="object">fullRemoteFilesystem</argument> </arguments> </type><type name="Magento\CatalogImportExport\Model\Import\Uploader"> <arguments> <argument name="filesystem" xsi:type="object">fullRemoteFilesystem</argument> </arguments> </type><type name="Magento\DownloadableImportExport\Helper\Uploader"> <arguments> <argument name="filesystem" xsi:type="object">fullRemoteFilesystem</argument> </arguments> </type><type name="Magento\RemoteStorage\Model\Synchronizer"> <arguments> <argument name="filesystem" xsi:type="object">customRemoteFilesystem</argument> </arguments> </type><preference for="Magento\CatalogPermissions\App\ConfigInterface" type="Magento\CatalogPermissions\App\Config"/><preference for="Magento\CatalogPermissions\Model\Indexer\UpdateIndexInterface" type="Magento\CatalogPermissions\Model\Indexer\InvalidateIndex"/><type name="Magento\CatalogPermissions\Helper\Data"> <arguments> <argument name="customerSession" xsi:type="object">Magento\Customer\Model\Session\Proxy</argument> </arguments> </type><type name="Magento\Catalog\Model\Layer\FilterList"> <plugin name="catalogPermissionsFilterListRemovePrice" type="Magento\CatalogPermissions\Model\Plugin\Catalog\Model\Layer\FilterList"/> </type><type name="Magento\CatalogPermissions\Model\Indexer\Plugin\MviewState"> <arguments> <argument name="state" xsi:type="object" shared="false">Magento\Framework\Mview\View\StateInterface</argument> <argument name="changelog" xsi:type="object" shared="false">Magento\Framework\Mview\View\ChangelogInterface</argument> </arguments> </type><type name="Magento\CatalogPermissions\Model\Indexer\Plugin\Category"> <arguments> <argument name="authorization" xsi:type="object">Magento\Framework\AuthorizationInterface\Proxy</argument> </arguments> </type><type name="Magento\Framework\Pricing\Render\PriceBox"> <plugin name="can_show_price_plugin" type="Magento\CatalogPermissions\Plugin\Framework\Pricing\Render\CanShowPricePlugin"/> <plugin name="price_box_staging_plugin" type="Magento\CatalogStaging\Plugin\Catalog\Pricing\Render\PriceBox"/></type><preference for="Magento\InstantPurchase\Model\InstantPurchaseInterface" type="Magento\InstantPurchase\Model\InstantPurchaseChooser"/><preference for="Magento\InstantPurchase\Model\PaymentMethodChoose\PaymentTokenChooserInterface" type="Magento\InstantPurchase\Model\PaymentMethodChoose\LastCreatedPaymentTokenChooser"/><preference for="Magento\InstantPurchase\Model\ShippingAddressChoose\ShippingAddressChooserInterface" type="Magento\InstantPurchase\Model\ShippingAddressChoose\DefaultShippingAddressChooser"/><preference for="Magento\InstantPurchase\Model\BillingAddressChoose\BillingAddressChooserInterface" type="Magento\InstantPurchase\Model\BillingAddressChoose\DefaultBillingAddressChooser"/><preference for="Magento\InstantPurchase\Model\ShippingMethodChoose\ShippingMethodChooserInterface" type="Magento\InstantPurchase\Model\ShippingMethodChoose\CheapestMethodChooser"/><preference for="Magento\InstantPurchase\PaymentMethodIntegration\AvailabilityCheckerInterface" type="Magento\InstantPurchase\PaymentMethodIntegration\StaticAvailabilityChecker"/><preference for="Magento\InstantPurchase\PaymentMethodIntegration\PaymentTokenFormatterInterface" type="Magento\InstantPurchase\PaymentMethodIntegration\SimplePaymentTokenFormatter"/><preference for="Magento\InstantPurchase\PaymentMethodIntegration\PaymentAdditionalInformationProviderInterface" type="Magento\InstantPurchase\PaymentMethodIntegration\StaticAdditionalInformationProvider"/><type name="Magento\InstantPurchase\Model\ShippingMethodChoose\DeferredShippingMethodChooserPool"> <arguments> <argument name="choosers" xsi:type="array"> <item name="cheapest" xsi:type="object">Magento\InstantPurchase\Model\ShippingMethodChoose\CheapestMethodDeferredChooser</item> </argument> </arguments> </type><preference for="Magento\InventoryApi\Api\SourceRepositoryInterface" type="Magento\Inventory\Model\SourceRepository"/><preference for="Magento\InventoryApi\Api\Data\SourceInterface" type="Magento\Inventory\Model\Source"/><preference for="Magento\InventoryApi\Api\Data\SourceCarrierLinkInterface" type="Magento\Inventory\Model\SourceCarrierLink"/><preference for="Magento\InventoryApi\Api\Data\SourceSearchResultsInterface" type="Magento\Inventory\Model\SourceSearchResults"/><preference for="Magento\InventoryApi\Api\GetSourcesAssignedToStockOrderedByPriorityInterface" type="Magento\Inventory\Model\Source\Command\GetSourcesAssignedToStockOrderedByPriorityCache"/><preference for="Magento\InventoryApi\Api\GetSourceItemsBySkuInterface" type="Magento\Inventory\Model\SourceItem\Command\GetSourceItemsBySku"/><preference for="Magento\InventoryApi\Model\GetSourceCodesBySkusInterface" type="Magento\Inventory\Model\GetSourceCodesBySkus"/><preference for="Magento\InventoryApi\Model\SourceCarrierLinkManagementInterface" type="Magento\Inventory\Model\SourceCarrierLinkManagement"/><preference for="Magento\Inventory\Model\Source\Command\GetInterface" type="Magento\Inventory\Model\Source\Command\Get"/><preference for="Magento\Inventory\Model\Source\Command\GetListInterface" type="Magento\Inventory\Model\Source\Command\GetList"/><preference for="Magento\Inventory\Model\Source\Command\SaveInterface" type="Magento\Inventory\Model\Source\Command\Save"/><type name="Magento\InventoryApi\Model\SourceValidatorChain"> <arguments> <argument name="validators" xsi:type="array"> <item name="name" xsi:type="object">Magento\Inventory\Model\Source\Validator\NameValidator</item> <item name="code" xsi:type="object">Magento\Inventory\Model\Source\Validator\CodeValidator</item> <item name="postcode" xsi:type="object">Magento\Inventory\Model\Source\Validator\PostcodeValidator</item> <item name="country" xsi:type="object">Magento\Inventory\Model\Source\Validator\CountryValidator</item> <item name="default_source_disable_validator" xsi:type="object">Magento\InventoryCatalog\Model\Source\Validator\DefaultSourceDisableValidator</item><item name="city" xsi:type="object">Magento\InventoryInStorePickup\Model\Source\Validator\CityValidator</item><item name="street" xsi:type="object">Magento\InventoryInStorePickup\Model\Source\Validator\StreetValidator</item><item name="phone" xsi:type="object">Magento\InventoryInStorePickup\Model\Source\Validator\PhoneValidator</item><item name="default_source_use_as_pickup_location_validator" xsi:type="object">Magento\InventoryInStorePickup\Model\Source\Validator\DefaultSourceUseForPickupLocationValidator</item><item name="carrier_links" xsi:type="object">Magento\InventoryShipping\Model\Source\Validator\CarrierLinksValidator</item></argument> </arguments> </type><preference for="Magento\InventoryApi\Api\SourceItemRepositoryInterface" type="Magento\Inventory\Model\SourceItemRepository"/><preference for="Magento\InventoryApi\Api\SourceItemsSaveInterface" type="Magento\Inventory\Model\SourceItem\Command\SourceItemsSave"/><preference for="Magento\InventoryApi\Api\SourceItemsDeleteInterface" type="Magento\Inventory\Model\SourceItem\Command\SourceItemsDelete"/><preference for="Magento\InventoryApi\Api\Data\SourceItemInterface" type="Magento\Inventory\Model\SourceItem"/><preference for="Magento\InventoryApi\Api\Data\SourceItemSearchResultsInterface" type="Magento\Inventory\Model\SourceItemSearchResults"/><preference for="Magento\Inventory\Model\SourceItem\Command\GetListInterface" type="Magento\Inventory\Model\SourceItem\Command\GetList"/><type name="Magento\Inventory\Model\SourceItem\Validator\StatusValidator"> <arguments> <argument name="allowedSourceItemStatuses" xsi:type="array"> <item xsi:type="const" name="in_stock">Magento\InventoryApi\Api\Data\SourceItemInterface::STATUS_IN_STOCK</item> <item xsi:type="const" name="out_of_stock">Magento\InventoryApi\Api\Data\SourceItemInterface::STATUS_OUT_OF_STOCK</item> </argument> </arguments> </type><type name="Magento\InventoryApi\Model\SourceItemValidatorChain"> <arguments> <argument name="validators" xsi:type="array"> <item name="sku" xsi:type="object">Magento\Inventory\Model\SourceItem\Validator\SkuValidator</item> <item name="source_code" xsi:type="object">Magento\Inventory\Model\SourceItem\Validator\SourceCodeValidator</item> <item name="quantity" xsi:type="object">Magento\Inventory\Model\SourceItem\Validator\QuantityValidator</item> <item name="status" xsi:type="object">Magento\Inventory\Model\SourceItem\Validator\StatusValidator</item> <item name="shipmentType" xsi:type="object">Magento\InventoryBundleProduct\Model\SourceItem\Validator\ShipmentTypeValidator</item></argument> </arguments> </type><preference for="Magento\InventoryApi\Api\StockRepositoryInterface" type="Magento\Inventory\Model\StockRepository"/><preference for="Magento\InventoryApi\Api\Data\StockInterface" type="Magento\Inventory\Model\Stock"/><preference for="Magento\InventoryApi\Api\Data\StockSearchResultsInterface" type="Magento\Inventory\Model\StockSearchResults"/><preference for="Magento\Inventory\Model\Stock\Command\DeleteByIdInterface" type="Magento\Inventory\Model\Stock\Command\DeleteById"/><preference for="Magento\Inventory\Model\Stock\Command\GetInterface" type="Magento\Inventory\Model\Stock\Command\GetCache"/><preference for="Magento\Inventory\Model\Stock\Command\GetListInterface" type="Magento\Inventory\Model\Stock\Command\GetList"/><preference for="Magento\Inventory\Model\Stock\Command\SaveInterface" type="Magento\Inventory\Model\Stock\Command\Save"/><type name="Magento\InventoryApi\Model\StockValidatorChain"> <arguments> <argument name="validators" xsi:type="array"> <item name="name" xsi:type="object">Magento\Inventory\Model\Stock\Validator\NameValidator</item> <item name="sales_channels" xsi:type="object">Magento\InventorySales\Model\Stock\Validator\SalesChannelsValidator</item></argument> </arguments> </type><preference for="Magento\InventoryApi\Api\Data\StockSourceLinkInterface" type="Magento\Inventory\Model\StockSourceLink"/><preference for="Magento\InventoryApi\Api\Data\StockSourceLinkSearchResultsInterface" type="Magento\Inventory\Model\StockSourceLinkSearchResults"/><preference for="Magento\InventoryApi\Api\GetStockSourceLinksInterface" type="Magento\Inventory\Model\StockSourceLink\Command\GetStockSourceLinks"/><preference for="Magento\InventoryApi\Api\StockSourceLinksSaveInterface" type="Magento\Inventory\Model\StockSourceLink\Command\StockSourceLinksSave"/><preference for="Magento\InventoryApi\Api\StockSourceLinksDeleteInterface" type="Magento\Inventory\Model\StockSourceLink\Command\StockSourceLinksDelete"/><type name="Magento\InventoryApi\Model\StockSourceLinkValidatorChain"> <arguments> <argument name="validators" xsi:type="array"> <item name="source_code" xsi:type="object">Magento\Inventory\Model\StockSourceLink\Validator\SourceCodeValidator</item> <item name="stock_id" xsi:type="object">Magento\Inventory\Model\StockSourceLink\Validator\StockIdValidator</item> <item name="priority" xsi:type="object">Magento\Inventory\Model\StockSourceLink\Validator\PriorityValidator</item> <item name="default_stock_default_source" xsi:type="object"> Magento\InventoryCatalog\Model\StockSourceLink\Validator\AssignToDefaultStockDefaultSourceValidator </item></argument> </arguments> </type><type name="Magento\Inventory\Model\StockSourceLink\Validator\StockSourceLinksValidator"> <arguments> <argument name="stockSourceLinkValidator" xsi:type="object">Magento\InventoryApi\Model\StockSourceLinkValidatorChain</argument> </arguments> </type><preference for="Magento\InventoryApi\Model\IsProductAssignedToStockInterface" type="Magento\Inventory\Model\ResourceModel\IsProductAssignedToStock"/><type name="Magento\Inventory\Model\ResourceModel\IsProductAssignedToStock"> <plugin name="cache_product_stock_assignment_check" type="Magento\Inventory\Plugin\Inventory\Model\ResourceModel\IsProductAssignedToStockCache"/> </type><type name="Magento\Setup\Fixtures\FixtureRegistry"> <arguments> <argument name="fixtures" xsi:type="array"> <item name="stocks" xsi:type="string">Magento\Inventory\Test\Performance\Fixtures\Stocks</item> </argument> </arguments> </type><type name="Magento\AdvancedCheckout\Model\AreProductsSalableForRequestedQty"> <plugin name="inventory_advanced_checkout_is_in_stock" type="Magento\InventoryAdvancedCheckout\Plugin\Model\AreProductsSalablePlugin"/> </type><preference for="Magento\InventoryApi\Model\StockSourceLinkValidatorInterface" type="Magento\InventoryApi\Model\StockSourceLinkValidatorChain"/><preference for="Magento\InventoryApi\Model\StockValidatorInterface" type="Magento\InventoryApi\Model\StockValidatorChain"/><preference for="Magento\InventoryApi\Model\SourceItemValidatorInterface" type="Magento\InventoryApi\Model\SourceItemValidatorChain"/><preference for="Magento\InventoryApi\Model\SourceValidatorInterface" type="Magento\InventoryApi\Model\SourceValidatorChain"/><type name="Magento\BundleImportExport\Model\Import\Product\Type\Bundle"> <plugin name="process_shipment_type_plugin" type="Magento\InventoryBundleImportExport\Plugin\BundleImportExport\Model\Import\Product\Type\Bundle\ProcessShipmentTypePlugin"/> </type><type name="Magento\InventoryConfigurationApi\Model\IsSourceItemManagementAllowedForProductTypeInterface"> <plugin name="disable_bundle_type" type="Magento\InventoryBundleProduct\Plugin\InventoryConfigurationApi\IsSourceItemManagementAllowedForProductType\DisableBundleTypePlugin"/> <plugin name="disable_grouped_type" type="Magento\InventoryGroupedProduct\Plugin\InventoryConfigurationApi\IsSourceItemManagementAllowedForProductType\DisableGroupedTypePlugin"/></type><type name="Magento\Bundle\Model\ResourceModel\Selection\Collection"> <plugin name="adapt_add_quantity_filter" type="Magento\InventoryBundleProduct\Plugin\Bundle\Model\ResourceModel\Selection\Collection\AdaptAddQuantityFilterPlugin"/> </type><type name="Magento\Bundle\Api\ProductLinkManagementInterface"> <plugin name="validate_source_items_before_add_bundle_selection" type="Magento\InventoryBundleProduct\Plugin\Bundle\Model\LinkManagement\ValidateSourceItemsBeforeAddBundleSelectionPlugin"/> <plugin name="validate_source_items_before_save_bundle_selection" type="Magento\InventoryBundleProduct\Plugin\Bundle\Model\LinkManagement\ValidateSourceItemsBeforeSaveBundleSelectionPlugin"/> <plugin name="reindex_source_items_after_add_bundle_selection" type="Magento\InventoryBundleProductIndexer\Plugin\Bundle\Model\LinkManagement\ReindexSourceItemsAfterAddBundleSelectionPlugin"/><plugin name="reindex_source_items_after_save_bundle_selection" type="Magento\InventoryBundleProductIndexer\Plugin\Bundle\Model\LinkManagement\ReindexSourceItemsAfterSaveBundleSelectionPlugin"/><plugin name="reindex_source_items_after_remove_bundle_selection" type="Magento\InventoryBundleProductIndexer\Plugin\Bundle\Model\LinkManagement\ReindexSourceItemsAfterRemoveBundleSelectionPlugin"/></type><type name="Magento\CatalogInventory\Helper\Stock"> <plugin name="adapt_assign_stock_status_to_bundle_product" type="Magento\InventoryBundleProduct\Plugin\CatalogInventory\Helper\Stock\AdaptAssignStatusToProductPlugin"/> <plugin name="adapt_add_in_stock_filter_to_collection" type="Magento\InventoryCatalog\Plugin\CatalogInventory\Helper\Stock\AdaptAddInStockFilterToCollectionPlugin"/><plugin name="adapt_add_stock_status_to_products" type="Magento\InventoryCatalog\Plugin\CatalogInventory\Helper\Stock\AdaptAddStockStatusToProductsPlugin"/><plugin name="adapt_assign_status_to_product" type="Magento\InventoryCatalog\Plugin\CatalogInventory\Helper\Stock\AdaptAssignStatusToProductPlugin"/></type><type name="Magento\Inventory\Model\SourceItem\Command\DecrementSourceItemQty"> <plugin name="update_parent_bundle_product_stock_status_in_legacy_stock" type="Magento\InventoryBundleProduct\Plugin\InventoryApi\UpdateParentStockStatusInLegacyStockPlugin" sortOrder="100"/> <plugin name="synchronize_legacy_catalog_inventory_at_source_item_decrement_quantity" type="Magento\InventoryCatalog\Plugin\InventoryApi\SynchronizeLegacyStockAfterDecrementStockPlugin" sortOrder="50"/><plugin name="update_parent_configurable_product_stock_status_in_legacy_stock" type="Magento\InventoryConfigurableProduct\Plugin\InventoryApi\UpdateParentStockStatusInLegacyStockPlugin"/><plugin name="reindex_after_decrement_source_item_quantity" type="Magento\InventoryIndexer\Plugin\InventoryApi\ReindexAfterDecrementSourceItemQty"/><plugin name="update_parent_grouped_product_stock_status_in_legacy_stock" type="Magento\InventoryGroupedProduct\Plugin\InventoryApi\UpdateParentStockStatusInLegacyStockPlugin" sortOrder="101"/></type><type name="Magento\InventoryIndexer\Indexer\Stock\Strategy\Sync"> <plugin name="bundle_product_index_full" type="Magento\InventoryBundleProductIndexer\Plugin\InventoryIndexer\Indexer\Stock\Strategy\Sync\ReindexFullPlugin"/> <plugin name="bundle_product_index_list" type="Magento\InventoryBundleProductIndexer\Plugin\InventoryIndexer\Indexer\Stock\Strategy\Sync\ReindexListPlugin"/> <plugin name="update_product_prices_plugin" type="Magento\InventoryCatalog\Plugin\InventoryIndexer\Indexer\Stock\Strategy\Sync\PriceIndexUpdatePlugin"/><plugin name="configurable_product_full_index" type="Magento\InventoryConfigurableProductIndexer\Plugin\InventoryIndexer\Indexer\Stock\Strategy\Sync\ReindexFullPlugin"/><plugin name="configurable_product_index_list" type="Magento\InventoryConfigurableProductIndexer\Plugin\InventoryIndexer\Indexer\Stock\Strategy\Sync\ReindexListPlugin"/><plugin name="grouped_product_index_list" type="Magento\InventoryGroupedProductIndexer\Plugin\InventoryIndexer\Indexer\Stock\Strategy\Sync\ReindexListPlugin"/><plugin name="grouped_product_index_full" type="Magento\InventoryGroupedProductIndexer\Plugin\InventoryIndexer\Indexer\Stock\Strategy\Sync\ReindexFullPlugin"/><plugin name="invalidate_products_cache" type="Magento\InventoryCache\Plugin\InventoryIndexer\Indexer\Stock\Strategy\Sync\CacheFlush"/></type><type name="Magento\InventoryIndexer\Indexer\SourceItem\Strategy\Sync"> <plugin name="bundle_product_index" type="Magento\InventoryBundleProductIndexer\Plugin\InventoryIndexer\Indexer\SourceItem\Strategy\Sync\SourceItemIndexerPlugin" sortOrder="20"/> <plugin name="priceIndexUpdater" type="Magento\InventoryCatalog\Plugin\InventoryIndexer\Indexer\SourceItem\Strategy\Sync\PriceIndexUpdater"/><plugin name="fulltextIndexUpdater" type="Magento\InventoryCatalogSearch\Plugin\InventoryIndexer\Indexer\SourceItem\Strategy\Sync\FulltextIndexUpdater" sortOrder="10"/><plugin name="configurable_product_index" type="Magento\InventoryConfigurableProductIndexer\Plugin\InventoryIndexer\Indexer\SourceItem\Strategy\Sync\SourceItemIndexerPlugin" sortOrder="10"/><plugin name="grouped_product_index" type="Magento\InventoryGroupedProductIndexer\Plugin\InventoryIndexer\Indexer\SourceItem\Strategy\Sync\SourceItemIndexerPlugin"/><plugin name="invalidate_products_cache" type="Magento\InventoryCache\Plugin\InventoryIndexer\Indexer\SourceItem\Strategy\Sync\CacheFlush"/></type><type name="Magento\InventoryBundleProductIndexer\Indexer\Stock\StockIndexer"> <arguments> <argument name="indexHandler" xsi:type="object">Magento\InventoryIndexer\Indexer\IndexHandler</argument> <argument name="indexStructure" xsi:type="object">Magento\InventoryIndexer\Indexer\IndexStructure</argument> </arguments> </type><type name="Magento\InventoryBundleProductIndexer\Indexer\SourceItem\SourceItemIndexer"> <arguments> <argument name="indexHandler" xsi:type="object">Magento\InventoryIndexer\Indexer\IndexHandler</argument> <argument name="indexStructure" xsi:type="object">Magento\InventoryIndexer\Indexer\IndexStructure</argument> </arguments> </type><preference for="Magento\InventoryCatalogApi\Api\DefaultStockProviderInterface" type="Magento\InventoryCatalog\Model\DefaultStockProvider"/><preference for="Magento\InventoryCatalogApi\Api\DefaultSourceProviderInterface" type="Magento\InventoryCatalog\Model\DefaultSourceProvider"/><preference for="Magento\InventoryCatalogApi\Model\GetProductIdsBySkusInterface" type="Magento\InventoryCatalog\Model\GetProductIdsBySkusCache"/><preference for="Magento\InventoryCatalogApi\Model\GetProductTypesBySkusInterface" type="Magento\InventoryCatalog\Model\ResourceModel\GetProductTypesBySkusCache"/><preference for="Magento\InventoryCatalogApi\Model\GetSkusByProductIdsInterface" type="Magento\InventoryCatalog\Model\GetSkusByProductIdsCache"/><preference for="Magento\InventoryCatalogApi\Model\GetParentSkusOfChildrenSkusInterface" type="Magento\InventoryCatalog\Model\GetParentSkusOfChildrenSkus"/><preference for="Magento\InventoryCatalogApi\Model\IsSingleSourceModeInterface" type="Magento\InventoryCatalog\Model\IsSingleSourceModeCache"/><preference for="Magento\InventoryCatalogApi\Model\SourceItemsProcessorInterface" type="Magento\InventoryCatalog\Model\SourceItemsProcessor"/><type name="Magento\InventoryApi\Api\StockRepositoryInterface"> <plugin name="prevent_default_stock_deleting" type="Magento\InventoryCatalog\Plugin\InventoryApi\StockRepository\PreventDeleting\DefaultStockPlugin"/> <plugin name="load_sales_channels_on_get_list" type="Magento\InventorySales\Plugin\InventoryApi\StockRepository\LoadSalesChannelsOnGetListPlugin"/><plugin name="load_sales_channels_on_get" type="Magento\InventorySales\Plugin\InventoryApi\StockRepository\LoadSalesChannelsOnGetPlugin"/><plugin name="save_sales_channels_links" type="Magento\InventorySales\Plugin\InventoryApi\StockRepository\SaveSalesChannelsLinksPlugin" sortOrder="20"/><plugin name="prevent_deleting_assigned_to_sales_channels_stock" type="Magento\InventorySales\Plugin\InventoryApi\StockRepository\PreventDeletingAssignedToSalesChannelsStockPlugin"/></type><type name="Magento\InventoryApi\Api\SourceItemsSaveInterface"> <plugin name="set_data_to_legacy_catalog_inventory_at_source_items_save" type="Magento\InventoryCatalog\Plugin\InventoryApi\SetDataToLegacyCatalogInventoryAtSourceItemsSavePlugin"/> <plugin name="update_configurable_product_parent_stock_status" type="Magento\InventoryConfigurableProduct\Plugin\InventoryApi\UpdateConfigurableProductParentStockStatus"/><plugin name="reindex_after_source_items_save" type="Magento\InventoryIndexer\Plugin\InventoryApi\ReindexAfterSourceItemsSavePlugin"/></type><type name="Magento\CatalogInventory\Model\Indexer\ProductPriceIndexFilter"> <plugin name="change_select_for_price_modifier" type="Magento\InventoryCatalog\Plugin\CatalogInventory\Model\Indexer\ModifySelectInProductPriceIndexFilter"/> </type><type name="Magento\InventoryApi\Api\SourceItemsDeleteInterface"> <plugin name="set_to_zero_legacy_catalog_inventory_at_source_items_delete" type="Magento\InventoryCatalog\Plugin\InventoryApi\SetToZeroLegacyCatalogInventoryAtSourceItemsDeletePlugin"/> <plugin name="reindex_after_source_items_delete" type="Magento\InventoryIndexer\Plugin\InventoryApi\ReindexAfterSourceItemsDeletePlugin"/><plugin name="inventory_low_quantity_notification_source_item_delete" type="Magento\InventoryLowQuantityNotification\Plugin\InventoryApi\SourceItemsDeleteInterfacePlugin"/></type><type name="Magento\CatalogInventory\Model\ResourceModel\QtyCounterInterface"> <plugin name="update_source_item_at_legacy_qty_counter" type="Magento\InventoryCatalog\Plugin\CatalogInventory\UpdateSourceItemAtLegacyQtyCounterPlugin"/> </type><type name="Magento\CatalogInventory\Model\ResourceModel\Stock\Status"> <plugin name="adapt_add_stock_data_to_collection" type="Magento\InventoryCatalog\Plugin\CatalogInventory\Model\ResourceModel\Stock\Status\AdaptAddStockDataToCollectionPlugin"/> <plugin name="adapt_add_stock_status_to_select" type="Magento\InventoryCatalog\Plugin\CatalogInventory\Model\ResourceModel\Stock\Status\AdaptAddStockStatusToSelectPlugin"/> <plugin name="adapt_add_is_in_stock_filter_to_collection" type="Magento\InventoryCatalog\Plugin\CatalogInventory\Model\ResourceModel\Stock\Status\AdaptAddIsInStockFilterToCollectionPlugin"/> </type><type name="Magento\InventorySalesApi\Api\GetStockBySalesChannelInterface"> <plugin name="adapt_stock_resolver_to_admin_website" type="Magento\InventoryCatalog\Plugin\InventorySalesApi\StockResolver\AdaptStockResolverToAdminWebsitePlugin"/> </type><type name="Magento\InventoryApi\Api\StockSourceLinksDeleteInterface"> <plugin name="prevent_delete_default_stock_links" type="Magento\InventoryCatalog\Plugin\InventoryApi\StockSourceLinksDelete\PreventDeleteDefaultStockLinksPlugin"/> <plugin name="invalidate_after_stock_source_links_delete" type="Magento\InventoryIndexer\Plugin\InventoryApi\InvalidateAfterStockSourceLinksDeletePlugin"/></type><type name="Magento\InventoryCatalog\Setup\Operation\UpdateInventorySourceItem"> <arguments> <argument name="tableNameSourceItem" xsi:type="const">Magento\Inventory\Model\ResourceModel\SourceItem::TABLE_NAME_SOURCE_ITEM</argument> </arguments> </type><type name="Magento\InventoryCatalog\Model\UpdateSourceItemBasedOnLegacyStockItem"> <arguments> <argument name="sourceItemsSave" xsi:type="object">Magento\Inventory\Model\SourceItem\Command\SourceItemsSaveWithoutLegacySynchronization</argument> </arguments> </type><type name="Magento\Inventory\Model\SourceItem\Command\SourceItemsSaveWithoutLegacySynchronization"> <plugin name="set_data_to_legacy_catalog_inventory_at_source_items_save" disabled="true"/> </type><type name="Magento\CatalogInventory\Api\StockRegistryInterface"> <plugin name="adapt_get_stock_status" type="Magento\InventoryCatalog\Plugin\CatalogInventory\Api\StockRegistry\AdaptGetStockStatusPlugin"/> <plugin name="adapt_get_stock_status_by_sku" type="Magento\InventoryCatalog\Plugin\CatalogInventory\Api\StockRegistry\AdaptGetStockStatusBySkuPlugin"/> <plugin name="adapt_get_product_stock_status" type="Magento\InventoryCatalog\Plugin\CatalogInventory\Api\StockRegistry\AdaptGetProductStockStatusPlugin"/> <plugin name="adapt_get_product_stock_status_by_sku" type="Magento\InventoryCatalog\Plugin\CatalogInventory\Api\StockRegistry\AdaptGetProductStockStatusBySkuPlugin"/> <plugin name="adapt_update_product_stock_status_by_sku" type="Magento\InventoryCatalog\Plugin\CatalogInventory\Api\StockRegistry\AdaptUpdateStockStatusBySkuPlugin"/> <plugin name="inventory_catalog_add_qty_to_legacy_stock" type="Magento\InventoryCatalog\Plugin\CatalogInventory\Api\StockRegistry\SetQtyToLegacyStock"/> <plugin name="inventory_catalog_add_qty_to_legacy_stock_configurable" type="Magento\InventoryConfigurableProduct\Plugin\CatalogInventory\Api\StockRegistry\SetQtyToLegacyStock"/></type><preference for="Magento\InventoryCatalogApi\Api\BulkSourceAssignInterface" type="Magento\InventoryCatalog\Model\BulkSourceAssign"/><preference for="Magento\InventoryCatalogApi\Api\BulkSourceUnassignInterface" type="Magento\InventoryCatalog\Model\BulkSourceUnassign"/><preference for="Magento\InventoryCatalogApi\Api\BulkInventoryTransferInterface" type="Magento\InventoryCatalog\Model\BulkInventoryTransfer"/><preference for="Magento\InventoryCatalogApi\Api\BulkPartialInventoryTransferInterface" type="Magento\InventoryCatalog\Model\BulkPartialInventoryTransfer"/><preference for="Magento\InventoryCatalogApi\Api\Data\PartialInventoryTransferItemInterface" type="Magento\InventoryCatalog\Model\PartialInventoryTransferItem"/><type name="\Magento\InventoryCatalogApi\Model\BulkSourceAssignValidatorChain"> <arguments> <argument name="validators" xsi:type="array"> <item name="sources" xsi:type="object">Magento\InventoryCatalog\Model\Source\Validator\Bulk\AssignSourcesValidator</item> </argument> </arguments> </type><type name="\Magento\InventoryCatalogApi\Model\BulkSourceUnassignValidatorChain"> <arguments> <argument name="validators" xsi:type="array"> <item name="sources" xsi:type="object">Magento\InventoryCatalog\Model\Source\Validator\Bulk\UnassignSourcesValidator</item> </argument> </arguments> </type><type name="\Magento\InventoryCatalogApi\Model\BulkInventoryTransferValidatorChain"> <arguments> <argument name="validators" xsi:type="array"> <item name="sources" xsi:type="object">Magento\InventoryCatalog\Model\Source\Validator\Bulk\TransferSourceValidator</item> </argument> </arguments> </type><type name="\Magento\InventoryCatalogApi\Model\PartialInventoryTransferValidatorChain"> <arguments> <argument name="validators" xsi:type="array"> <item name="sources" xsi:type="object">Magento\InventoryCatalog\Model\Source\Validator\PartialTransferSourceValidator</item> <item name="items" xsi:type="object">Magento\InventoryCatalog\Model\Source\Validator\PartialTransferItemsValidator</item> </argument> </arguments> </type><type name="Magento\Catalog\Controller\Adminhtml\Product\Initialization\StockDataFilter"> <plugin name="allow_negative_min_qty" type="Magento\InventoryCatalog\Plugin\Catalog\Controller\Adminhtml\Product\Initialization\StockDataFilter\AllowNegativeMinQtyPlugin"/> </type><type name="Magento\CatalogInventory\Api\Data\StockItemInterface"> <plugin name="adapt_min_qty_to_backorders" type="Magento\InventoryCatalog\Plugin\CatalogInventory\Api\Data\StockItemInterface\AdaptMinQtyToBackordersPlugin"/> </type><type name="Magento\CatalogInventory\Model\Spi\StockStateProviderInterface"> <plugin name="adapt_verify_stock_to_negative_min_qty" type="Magento\InventoryCatalog\Plugin\CatalogInventory\Model\Spi\StockStateProvider\AdaptVerifyStockToNegativeMinQtyPlugin"/> <plugin name="check_quote_item_qty" type="Magento\InventorySales\Plugin\StockStateProvider\CheckQuoteItemQtyPlugin" sortOrder="20"/></type><type name="Magento\CatalogInventory\Model\ResourceModel\StockStatusFilterInterface"> <plugin name="inventory_catalog_stock_status_filter" type="Magento\InventoryCatalog\Plugin\CatalogInventory\Model\ResourceModel\StockStatusFilterPlugin"/> </type><type name="Magento\CatalogInventory\Model\Source\Stock"> <plugin name="inventory_catalog_add_sort_by_stock_qty_to_collection" type="Magento\InventoryCatalog\Plugin\CatalogInventory\Model\Source\StockPlugin"/> </type><type name="Magento\Catalog\Block\Product\ProductList\Toolbar"> <plugin name="update_toolbar_count" type="Magento\InventoryCatalog\Plugin\Catalog\Block\ProductList\UpdateToolbarCount"/> </type><preference for="Magento\InventorySalesApi\Api\Data\SalesChannelInterface" type="Magento\InventorySales\Model\SalesChannel"/><preference for="Magento\InventorySalesApi\Model\GetAssignedSalesChannelsForStockInterface" type="Magento\InventorySales\Model\GetAssignedSalesChannelsForStock"/><preference for="Magento\InventorySalesApi\Model\ReplaceSalesChannelsForStockInterface" type="Magento\InventorySales\Model\ResourceModel\ReplaceSalesChannelsDataForStock"/><preference for="Magento\InventorySalesApi\Model\GetAssignedStockIdForWebsiteInterface" type="Magento\InventorySales\Model\ResourceModel\GetAssignedStockIdForWebsiteCache"/><preference for="Magento\InventorySalesApi\Model\DeleteSalesChannelToStockLinkInterface" type="Magento\InventorySales\Model\ResourceModel\DeleteSalesChannelToStockLink"/><preference for="Magento\InventorySalesApi\Api\StockResolverInterface" type="Magento\InventorySales\Model\StockResolver"/><preference for="Magento\InventorySalesApi\Api\GetStockBySalesChannelInterface" type="Magento\InventorySales\Model\GetStockBySalesChannelCache"/><type name="Magento\CatalogInventory\Api\StockStateInterface"> <plugin name="check_quote_item_qty" type="Magento\InventorySales\Plugin\StockState\CheckQuoteItemQtyPlugin"/> <plugin name="suggest_qty" type="Magento\InventorySales\Plugin\StockState\SuggestQtyPlugin"/> </type><type name="Magento\InventoryReservationsApi\Model\AppendReservationsInterface"> <plugin name="prevent_append_reservation_on_not_manage_items_in_stock" type="Magento\InventorySales\Plugin\InventoryReservationsApi\PreventAppendReservationOnNotManageItemsInStockPlugin"/> </type><preference for="Magento\InventorySalesApi\Api\Data\ItemToSellInterface" type="Magento\InventorySales\Model\ItemToSell"/><preference for="Magento\InventorySalesApi\Api\Data\SalesEventInterface" type="Magento\InventorySales\Model\SalesEvent"/><preference for="Magento\InventorySalesApi\Api\PlaceReservationsForSalesEventInterface" type="Magento\InventorySales\Model\PlaceReservationsForSalesEvent"/><preference for="Magento\InventorySalesApi\Api\GetProductSalableQtyInterface" type="Magento\InventorySales\Model\GetProductSalableQty"/><preference for="Magento\InventorySalesApi\Model\GetStockItemDataInterface" type="Magento\InventoryIndexer\Model\ResourceModel\GetStockItemData"/><preference for="Magento\InventorySales\Model\ResourceModel\IsStockItemSalableCondition\GetIsStockItemSalableConditionInterface" type="Magento\InventorySales\Model\ResourceModel\IsStockItemSalableCondition\IsStockItemSalableConditionChain"/><preference for="Magento\InventorySalesApi\Model\GetIsQtySalableInterface" type="Magento\InventorySales\Model\GetIsQtySalable"/><preference for="Magento\InventorySalesApi\Model\GetSalableQtyInterface" type="Magento\InventorySales\Model\GetSalableQty"/><type name="Magento\InventorySales\Model\ResourceModel\IsStockItemSalableCondition\IsStockItemSalableConditionChain"> <arguments> <argument name="conditions" xsi:type="array"> <item name="backorders" xsi:type="object">Magento\InventorySales\Model\ResourceModel\IsStockItemSalableCondition\BackordersCondition</item> <item name="manage_stock" xsi:type="object">Magento\InventorySales\Model\ResourceModel\IsStockItemSalableCondition\ManageStockCondition</item> <!-- min_qty condition includes source_item_status check (need to proper work of min_qty) --> <item name="min_qty" xsi:type="object">Magento\InventorySales\Model\ResourceModel\IsStockItemSalableCondition\MinQtyStockWithReservationsCondition</item> <item name="non_existing_legacy_sku" xsi:type="object">Magento\InventorySales\Model\ResourceModel\IsStockItemSalableCondition\SkuIsAbsentInCatalogCondition</item> </argument> </arguments> </type><preference for="Magento\InventorySalesApi\Api\AreProductsSalableInterface" type="Magento\InventorySales\Model\AreProductsSalable"/><preference for="Magento\InventorySalesApi\Api\IsProductSalableInterface" type="Magento\InventorySales\Model\IsProductSalableCondition\IsProductSalableConditionChain"/><type name="Magento\InventorySales\Model\IsProductSalableCondition\IsProductSalableConditionChain"> <arguments> <argument name="conditions" xsi:type="array"> <item name="stock_item_is_in_stock" xsi:type="array"> <item name="required" xsi:type="boolean">true</item> <item name="object" xsi:type="object">Magento\InventorySales\Model\IsProductSalableCondition\IsSetInStockStatusForCompositeProductCondition</item> </item> <item name="is_any_source_item_in_stock" xsi:type="array"> <item name="required" xsi:type="boolean">true</item> <item name="object" xsi:type="object">Magento\InventorySales\Model\IsProductSalableCondition\IsAnySourceItemInStockCondition</item> </item> <item name="back_order" xsi:type="array"> <item name="sort_order" xsi:type="number">10</item> <item name="object" xsi:type="object">Magento\InventorySales\Model\IsProductSalableCondition\BackOrderCondition</item> </item> <item name="manage_stock" xsi:type="array"> <item name="sort_order" xsi:type="number">20</item> <item name="object" xsi:type="object">Magento\InventorySales\Model\IsProductSalableCondition\ManageStockCondition</item> </item> <item name="is_salable_with_reservations" xsi:type="array"> <item name="sort_order" xsi:type="number">30</item> <item name="object" xsi:type="object">Magento\InventorySales\Model\IsProductSalableCondition\IsSalableWithReservationsCondition</item> </item> </argument> </arguments> </type><preference for="Magento\InventorySalesApi\Api\IsProductSalableForRequestedQtyInterface" type="IsProductSalableForRequestedQtyConditionChainOnAddToCart"/><preference for="Magento\InventorySalesApi\Api\AreProductsSalableForRequestedQtyInterface" type="Magento\InventorySales\Model\AreProductsSalableForRequestedQty"/><virtualType name="IsProductSalableForRequestedQtyConditionChainOnAddToCart" type="Magento\InventorySales\Model\IsProductSalableForRequestedQtyCondition\IsProductSalableForRequestedQtyConditionChain"> <arguments> <argument name="conditions" xsi:type="array"> <item name="is_correct_qty" xsi:type="array"> <item name="required" xsi:type="boolean">true</item> <item name="object" xsi:type="object">Magento\InventorySales\Model\IsProductSalableForRequestedQtyCondition\IsCorrectQtyCondition</item> </item> <item name="is_any_source_item_in_stock" xsi:type="array"> <item name="required" xsi:type="boolean">true</item> <item name="object" xsi:type="object">Magento\InventorySales\Model\IsProductSalableForRequestedQtyCondition\IsAnySourceItemInStockCondition</item> </item> <item name="back_order" xsi:type="array"> <item name="sort_order" xsi:type="number">10</item> <item name="object" xsi:type="object">Magento\InventorySales\Model\IsProductSalableForRequestedQtyCondition\BackOrderCondition</item> </item> <item name="manage_stock" xsi:type="array"> <item name="sort_order" xsi:type="number">20</item> <item name="object" xsi:type="object">Magento\InventorySales\Model\IsProductSalableForRequestedQtyCondition\ManageStockCondition</item> </item> <item name="is_salable_with_reservations" xsi:type="array"> <item name="sort_order" xsi:type="number">30</item> <item name="object" xsi:type="object">Magento\InventorySales\Model\IsProductSalableForRequestedQtyCondition\IsSalableWithReservationsCondition</item> </item> </argument> </arguments> </virtualType><preference for="Magento\InventorySalesApi\Api\Data\ProductSalableResultInterface" type="Magento\InventorySales\Model\IsProductSalableForRequestedQtyCondition\ProductSalableResult"/><preference for="Magento\InventorySalesApi\Api\Data\ProductSalabilityErrorInterface" type="Magento\InventorySales\Model\IsProductSalableForRequestedQtyCondition\ProductSalabilityError"/><virtualType name="IsProductSalableForRequestedQtyConditionChainOnPlaceOrder" type="Magento\InventorySales\Model\IsProductSalableForRequestedQtyCondition\IsProductSalableForRequestedQtyConditionChain"> <arguments> <argument name="conditions" xsi:type="array"> <item name="back_order" xsi:type="array"> <item name="sort_order" xsi:type="number">10</item> <item name="object" xsi:type="object">Magento\InventorySales\Model\IsProductSalableForRequestedQtyCondition\BackOrderCondition</item> </item> <item name="manage_stock" xsi:type="array"> <item name="sort_order" xsi:type="number">20</item> <item name="object" xsi:type="object">Magento\InventorySales\Model\IsProductSalableForRequestedQtyCondition\ManageStockCondition</item> </item> <item name="is_salable_with_reservations" xsi:type="array"> <item name="sort_order" xsi:type="number">30</item> <item name="object" xsi:type="object">Magento\InventorySales\Model\IsProductSalableForRequestedQtyCondition\IsSalableWithReservationsCondition</item> </item> </argument> </arguments> </virtualType><type name="Magento\InventorySales\Model\AreProductsSalableForRequestedQty"> <arguments> <argument name="isProductSalableForRequestedQty" xsi:type="object">IsProductSalableForRequestedQtyConditionChainOnPlaceOrder</argument> </arguments> </type><type name="Magento\CatalogInventory\Model\StockManagement"> <plugin name="process_back_item_qty" type="Magento\InventorySales\Plugin\CatalogInventory\StockManagement\ProcessBackItemQtyPlugin"/> <plugin name="process_revert_products_sale" type="Magento\InventorySales\Plugin\CatalogInventory\StockManagement\ProcessRevertProductsSalePlugin"/> </type><type name="Magento\CatalogInventory\Api\RegisterProductSaleInterface"> <plugin name="process_register_products_sale" type="Magento\InventorySales\Plugin\CatalogInventory\StockManagement\ProcessRegisterProductsSalePlugin"/> </type><type name="Magento\Sales\Api\OrderManagementInterface"> <plugin name="inventory_reservations_placement" type="Magento\InventorySales\Plugin\Sales\OrderManagement\AppendReservationsAfterOrderPlacementPlugin"/> </type><preference for="Magento\InventorySalesApi\Model\ReturnProcessor\Request\ItemsToRefundInterface" type="Magento\InventorySales\Model\ReturnProcessor\Request\ItemsToRefund"/><preference for="Magento\InventorySalesApi\Model\ReturnProcessor\ProcessRefundItemsInterface" type="Magento\InventorySales\Model\ReturnProcessor\ProcessRefundItems"/><type name="Magento\SalesInventory\Model\Order\ReturnProcessor"> <plugin name="process_return_product_qty_on_credit_memo" type="Magento\InventorySales\Plugin\SalesInventory\ProcessReturnQtyOnCreditMemoPlugin"/> </type><type name="Magento\InventorySalesApi\Model\ReturnProcessor\GetSourceDeductedOrderItemsChain"> <arguments> <argument name="sourceDeductedItemsSelector" xsi:type="array"> <item name="source_deducted__virtual_invoice_items" xsi:type="object">Magento\InventorySales\Model\ReturnProcessor\GetInvoicedItemsPerSourceByPriority</item> <item name="source_deducted_shipping_items" xsi:type="object">Magento\InventoryShipping\Model\ReturnProcessor\GetShippedItemsPerSourceByPriority</item></argument> </arguments> </type><preference for="Magento\InventorySalesApi\Model\StockByWebsiteIdResolverInterface" type="Magento\InventorySales\Model\StockByWebsiteIdResolver"/><type name="Magento\InventorySales\Plugin\Store\Model\ResourceModel\Website\AssignWebsiteToDefaultStockPlugin"> <arguments> <argument name="getAssignedStockIdForWebsite" xsi:type="object">Magento\InventorySales\Model\ResourceModel\GetAssignedStockIdForWebsite</argument> </arguments> </type><type name="Magento\InventoryConfigurationApi\Api\GetStockItemConfigurationInterface"> <plugin name="load_stock_item_is_in_stock" type="Magento\InventoryCatalog\Plugin\InventoryConfigurationApi\GetStockItemConfiguration\LoadIsInStockPlugin"/> </type><preference for="Magento\InventorySalesApi\Model\GetSkuFromOrderItemInterface" type="Magento\InventorySales\Model\GetSkuFromOrderItem"/><preference for="Magento\InventorySalesApi\Api\Data\IsProductSalableForRequestedQtyRequestInterface" type="Magento\InventorySales\Model\IsProductSalableForRequestedQtyRequest"/><preference for="Magento\InventorySalesApi\Api\Data\IsProductSalableForRequestedQtyResultInterface" type="Magento\InventorySales\Model\IsProductSalableForRequestedQtyResult"/><preference for="Magento\InventorySalesApi\Api\Data\IsProductSalableResultInterface" type="Magento\InventorySales\Model\IsProductSalableResult"/><preference for="Magento\InventoryCatalogApi\Model\BulkSourceAssignValidatorInterface" type="Magento\InventoryCatalogApi\Model\BulkSourceAssignValidatorChain"/><preference for="Magento\InventoryCatalogApi\Model\BulkSourceUnassignValidatorInterface" type="Magento\InventoryCatalogApi\Model\BulkSourceUnassignValidatorChain"/><preference for="Magento\InventoryCatalogApi\Model\BulkInventoryTransferValidatorInterface" type="Magento\InventoryCatalogApi\Model\BulkInventoryTransferValidatorChain"/><preference for="Magento\InventoryCatalogApi\Model\PartialInventoryTransferValidatorInterface" type="Magento\InventoryCatalogApi\Model\PartialInventoryTransferValidatorChain"/><type name="Magento\CatalogSearch\Model\Indexer\Fulltext\Action\GetSearchableProductsSelect"> <plugin name="stock_filters_by_child_products" type="Magento\InventoryCatalogSearch\Plugin\CatalogSearch\Model\Indexer\ChildProductFilterByInventoryStockPlugin"/> </type><type name="Magento\InventoryCatalogSearch\Model\Indexer\FilterProductByStock"> <arguments> <argument name="selectModifiersPool" xsi:type="array"> <item name="bundleSelectModifier" xsi:type="object">Magento\InventoryCatalogSearchBundleProduct\Model\CatalogSearch\Indexer\BundleChildStockStatusModifier</item> <item name="configurableSelectModifier" xsi:type="object">Magento\InventoryCatalogSearchConfigurableProduct\Model\CatalogSearch\Indexer\ConfigurableChildStockStatusModifier</item></argument> </arguments> </type><type name="Magento\InventorySalesApi\Model\GetSkuFromOrderItemInterface"> <plugin name="get_configurable_option_sku_from_order" type="Magento\InventoryConfigurableProduct\Plugin\Sales\GetSkuFromOrderItem"/> </type><type name="Magento\CatalogInventory\Observer\ParentItemProcessorInterface"> <plugin name="adapt_parent_stock_processor" type="Magento\InventoryConfigurableProduct\Plugin\CatalogInventory\Observer\ParentItemProcessor\AdaptParentItemProcessorPlugin"/> </type><type name="Magento\InventoryIndexer\Indexer\Stock\IndexDataProviderByStockId"> <arguments> <argument name="selectBuilders" xsi:type="array"> <item name="configurable" xsi:type="object">Magento\InventoryConfigurableProductIndexer\Indexer\SelectBuilder</item> <item name="default" xsi:type="object">Magento\InventoryIndexer\Indexer\SelectBuilder</item></argument> </arguments> </type><type name="Magento\InventoryConfigurableProductIndexer\Indexer\SourceItem\SourceItemIndexer"> <arguments> <argument name="indexHandler" xsi:type="object">Magento\InventoryIndexer\Indexer\IndexHandler</argument> <argument name="indexStructure" xsi:type="object">Magento\InventoryIndexer\Indexer\IndexStructure</argument> <argument name="batchSize" xsi:type="string">100</argument> </arguments> </type><type name="Magento\InventoryConfigurableProductIndexer\Indexer\Stock\StockIndexer"> <arguments> <argument name="indexHandler" xsi:type="object">Magento\InventoryIndexer\Indexer\IndexHandler</argument> <argument name="indexStructure" xsi:type="object">Magento\InventoryIndexer\Indexer\IndexStructure</argument> <argument name="batchSize" xsi:type="string">100</argument> </arguments> </type><type name="Magento\InventoryConfigurableProductIndexer\Indexer\SourceItem\SiblingSkuListInStockProvider"> <arguments> <argument name="tableNameSourceItem" xsi:type="const">Magento\Inventory\Model\ResourceModel\SourceItem::TABLE_NAME_SOURCE_ITEM</argument> <argument name="tableNameStockSourceLink" xsi:type="const">Magento\Inventory\Model\ResourceModel\StockSourceLink::TABLE_NAME_STOCK_SOURCE_LINK</argument> </arguments> </type><preference for="Magento\InventoryConfigurationApi\Api\GetStockItemConfigurationInterface" type="Magento\InventoryConfiguration\Model\GetStockItemConfiguration"/><preference for="Magento\InventoryConfigurationApi\Api\SaveStockItemConfigurationInterface" type="Magento\InventoryConfiguration\Model\SaveStockItemConfiguration"/><preference for="Magento\InventoryConfigurationApi\Api\Data\StockItemConfigurationInterface" type="Magento\InventoryConfiguration\Model\StockItemConfiguration"/><preference for="Magento\InventoryConfigurationApi\Model\IsSourceItemManagementAllowedForProductTypeInterface" type="Magento\InventoryConfiguration\Model\IsSourceItemManagementAllowedForProductType"/><preference for="Magento\InventoryConfigurationApi\Model\IsSourceItemManagementAllowedForSkuInterface" type="Magento\InventoryConfiguration\Model\IsSourceItemManagementAllowedForSku"/><preference for="Magento\InventoryConfigurationApi\Model\GetAllowedProductTypesForSourceItemManagementInterface" type="Magento\InventoryConfiguration\Model\GetAllowedProductTypesForSourceItemManagement"/><type name="Magento\CatalogInventory\Model\System\Config\Backend\Minqty"> <plugin name="allow_negative_min_qty_in_config" type="Magento\InventoryConfiguration\Plugin\CatalogInventory\Model\System\Config\Backend\Minqty\AllowNegativeMinQtyInConfigPlugin"/> </type><type name="Magento\InventoryConfiguration\Model\GetLegacyStockItem"> <plugin name="cache_legacy_stock_item" type="Magento\InventoryConfiguration\Plugin\InventoryConfiguration\Model\GetLegacyStockItemCache"/> </type><preference for="Magento\InventoryDistanceBasedSourceSelectionApi\Api\GetDistanceProviderCodeInterface" type="Magento\InventoryDistanceBasedSourceSelection\Model\GetDistanceProviderCode"/><preference for="Magento\InventoryDistanceBasedSourceSelectionApi\Api\Data\LatLngInterface" type="Magento\InventoryDistanceBasedSourceSelection\Model\LatLng"/><type name="Magento\InventorySourceSelectionApi\Model\SourceSelectionService"> <arguments> <argument name="sourceSelectionMethods" xsi:type="array"> <item name="distance" xsi:type="string">Magento\InventoryDistanceBasedSourceSelection\Model\Algorithms\DistanceBasedAlgorithm</item> <item name="priority" xsi:type="string">Magento\InventorySourceSelection\Model\Algorithms\PriorityBasedAlgorithm</item></argument> </arguments> </type><type name="Magento\InventorySourceSelectionApi\Model\GetSourceSelectionAlgorithmList"> <arguments> <argument name="availableAlgorithms" xsi:type="array"> <item name="distance" xsi:type="array"> <item xsi:type="string" name="code">distance</item> <item xsi:type="string" name="title" translatable="true">Distance Priority</item> <item xsi:type="string" name="description" translatable="true">Algorithm which provides Source Selections based on shipping address distance from the source</item> </item> <item name="priority" xsi:type="array"> <item xsi:type="string" name="code">priority</item> <item xsi:type="string" name="title" translatable="true">Source Priority</item> <item xsi:type="string" name="description" translatable="true">Algorithm which provides Source Selections based on predefined priority of Source</item> </item></argument> </arguments> </type><type name="Magento\InventoryDistanceBasedSourceSelectionApi\Model\GetDistance"> <arguments> <argument name="providers" xsi:type="array"> <item name="google" xsi:type="object">Magento\InventoryDistanceBasedSourceSelection\Model\DistanceProvider\GoogleMap\GetDistance</item> <item name="offline" xsi:type="object">Magento\InventoryDistanceBasedSourceSelection\Model\DistanceProvider\Offline\GetDistance</item> </argument> </arguments> </type><type name="Magento\InventoryDistanceBasedSourceSelectionApi\Model\GetLatLngFromAddress"> <arguments> <argument name="providers" xsi:type="array"> <item name="google" xsi:type="object">Magento\InventoryDistanceBasedSourceSelection\Model\DistanceProvider\GoogleMap\GetLatLngFromAddress</item> <item name="offline" xsi:type="object">Magento\InventoryDistanceBasedSourceSelection\Model\DistanceProvider\Offline\GetLatLngFromAddress</item> </argument> </arguments> </type><type name="Magento\InventoryDistanceBasedSourceSelectionApi\Model\GetLatsLngsFromAddress"> <arguments> <argument name="providers" xsi:type="array"> <item name="google" xsi:type="object">Magento\InventoryDistanceBasedSourceSelection\Model\DistanceProvider\GoogleMap\GetLatsLngsFromAddress</item> <item name="offline" xsi:type="object">Magento\InventoryDistanceBasedSourceSelection\Model\DistanceProvider\Offline\GetLatsLngsFromAddress</item> </argument> </arguments> </type><type name="Magento\InventoryApi\Api\SourceRepositoryInterface"> <plugin sortOrder="10" name="updateSourceLatitudeAndLongitude" type="Magento\InventoryDistanceBasedSourceSelection\Plugin\FillSourceLatitudeAndLongitude"/> <plugin name="invalidate_after_enabling_or_disabling_source" type="Magento\InventoryIndexer\Plugin\InventoryApi\InvalidateAfterEnablingOrDisablingSourcePlugin"/><plugin name="load_in_store_pickup_on_get_list" type="Magento\InventoryInStorePickup\Plugin\InventoryApi\SourceRepository\LoadInStorePickupOnGetListPlugin"/><plugin name="load_in_store_pickup_on_get" type="Magento\InventoryInStorePickup\Plugin\InventoryApi\SourceRepository\LoadInStorePickupOnGetPlugin"/><plugin name="save_in_store_pickup_links" type="Magento\InventoryInStorePickup\Plugin\InventoryApi\SourceRepository\SaveInStorePickupPlugin"/></type><type name="Magento\InventoryDistanceBasedSourceSelection\Model\ImportGeoNames"> <arguments> <argument name="geoNamesBaseUrl" xsi:type="string">http://download.geonames.org/export/zip/</argument> </arguments> </type><preference for="Magento\InventoryDistanceBasedSourceSelectionApi\Api\GetDistanceInterface" type="Magento\InventoryDistanceBasedSourceSelectionApi\Model\GetDistance"/><preference for="Magento\InventoryDistanceBasedSourceSelectionApi\Api\GetLatLngFromAddressInterface" type="Magento\InventoryDistanceBasedSourceSelectionApi\Model\GetLatLngFromAddress"/><preference for="Magento\InventoryDistanceBasedSourceSelectionApi\Api\GetLatsLngsFromAddressInterface" type="Magento\InventoryDistanceBasedSourceSelectionApi\Model\GetLatsLngsFromAddress"/><preference for="Magento\InventoryMultiDimensionalIndexerApi\Model\IndexHandlerInterface" type="Magento\InventoryIndexer\Indexer\IndexHandler"/><preference for="Magento\InventoryMultiDimensionalIndexerApi\Model\IndexStructureInterface" type="Magento\InventoryIndexer\Indexer\IndexStructure"/><type name="Magento\InventoryIndexer\Indexer\SourceItem\SourceItemReindexStrategy"> <arguments> <argument name="strategies" xsi:type="array"> <item name="async" xsi:type="string">Magento\InventoryIndexer\Indexer\SourceItem\Strategy\Async</item> <item name="sync" xsi:type="string">Magento\InventoryIndexer\Indexer\SourceItem\Strategy\Sync</item> </argument> </arguments> </type><type name="Magento\InventoryIndexer\Indexer\Stock\StockReindexStrategy"> <arguments> <argument name="strategies" xsi:type="array"> <item name="async" xsi:type="string">Magento\InventoryIndexer\Indexer\Stock\Strategy\Async</item> <item name="sync" xsi:type="string">Magento\InventoryIndexer\Indexer\Stock\Strategy\Sync</item> </argument> </arguments> </type><type name="Magento\InventoryIndexer\Indexer\IndexHandler"> <arguments> <argument name="batchSize" xsi:type="string">100</argument> </arguments> </type><type name="Magento\InventoryIndexer\Indexer\SourceItem\SourceItemIndexer"> <arguments> <argument name="indexStructureHandler" xsi:type="object">Magento\InventoryIndexer\Indexer\IndexStructure</argument> <argument name="indexHandler" xsi:type="object">Magento\InventoryIndexer\Indexer\IndexHandler</argument> </arguments> </type><type name="Magento\InventoryIndexer\Indexer\Stock\StockIndexer"> <arguments> <argument name="indexStructureHandler" xsi:type="object">Magento\InventoryIndexer\Indexer\IndexStructure</argument> <argument name="indexHandler" xsi:type="object">Magento\InventoryIndexer\Indexer\IndexHandler</argument> </arguments> </type><type name="Magento\InventoryIndexer\Model\ResourceModel\GetProductIdsBySourceItemIds"> <arguments> <argument name="productTableName" xsi:type="string">catalog_product_entity</argument> </arguments> </type><type name="Magento\InventoryIndexer\Indexer\SelectBuilder"> <arguments> <argument name="productTableName" xsi:type="string">catalog_product_entity</argument> </arguments> </type><type name="Magento\InventoryApi\Api\StockSourceLinksSaveInterface"> <plugin name="invalidate_after_stock_source_links_save" type="Magento\InventoryIndexer\Plugin\InventoryApi\InvalidateAfterStockSourceLinksSavePlugin"/> </type><preference for="Magento\InventoryIndexer\Model\StockIndexTableNameResolverInterface" type="Magento\InventoryIndexer\Model\StockIndexTableNameResolver"/><type name="Magento\InventoryIndexer\Model\StockIndexTableNameResolver"> <arguments> <argument name="dimensionName" xsi:type="string">stock_</argument> </arguments> </type><type name="Magento\InventorySales\Model\PlaceReservationsForSalesEvent"> <plugin name="schedule_reservation_place" type="Magento\InventoryIndexer\Plugin\InventorySales\EnqueueAfterPlaceReservationsForSalesEvent"/> </type><type name="Magento\InventoryIndexer\Model\ResourceModel\GetProductIdsByStockIds"> <arguments> <argument name="productTableName" xsi:type="string">catalog_product_entity</argument> </arguments> </type><virtualType name="Magento\InventoryIndexer\Model\AreProductsSalable" type="Magento\InventorySales\Model\AreProductsSalable"> <arguments> <argument name="isProductSalable" xsi:type="object">Magento\InventoryIndexer\Model\IsProductSalable</argument> </arguments> </virtualType><type name="Magento\InventoryIndexer\Indexer\SourceItem\GetSalableStatuses"> <arguments> <argument name="areProductsSalable" xsi:type="object">Magento\InventoryIndexer\Model\AreProductsSalable</argument> </arguments> </type><preference for="Magento\InventorySalesApi\Model\ReturnProcessor\GetSourceDeductedOrderItemsInterface" type="Magento\InventorySalesApi\Model\ReturnProcessor\GetSourceDeductedOrderItemsChain"/><type name="Magento\InventoryCatalog\Model\UpdateInventory"> <plugin name="updateParentLegacyStockStatus" type="Magento\InventoryGroupedProduct\Plugin\InventoryCatalog\Model\UpdateParentStockStatusPlugin"/> </type><type name="Magento\Catalog\Model\Product\Link"> <plugin name="process_source_items_after_save_links" type="Magento\InventoryGroupedProductAdminUi\Plugin\Catalog\Model\Product\Link\ProcessSourceItemsAfterSaveAssociatedLinks"/> </type><type name="Magento\InventoryGroupedProductIndexer\Indexer\Stock\StockIndexer"> <arguments> <argument name="indexHandler" xsi:type="object">Magento\InventoryIndexer\Indexer\IndexHandler</argument> <argument name="indexStructure" xsi:type="object">Magento\InventoryIndexer\Indexer\IndexStructure</argument> </arguments> </type><type name="Magento\InventoryGroupedProductIndexer\Indexer\SourceItem\SourceItemIndexer"> <arguments> <argument name="indexHandler" xsi:type="object">Magento\InventoryIndexer\Indexer\IndexHandler</argument> <argument name="indexStructure" xsi:type="object">Magento\InventoryIndexer\Indexer\IndexStructure</argument> </arguments> </type><type name="Magento\InventoryGroupedProductIndexer\Indexer\SourceItem\SiblingSkuListInStockProvider"> <arguments> <argument name="tableNameSourceItem" xsi:type="const">Magento\Inventory\Model\ResourceModel\SourceItem::TABLE_NAME_SOURCE_ITEM</argument> <argument name="tableNameStockSourceLink" xsi:type="const">Magento\Inventory\Model\ResourceModel\StockSourceLink::TABLE_NAME_STOCK_SOURCE_LINK</argument> </arguments> </type><preference for="Magento\InventoryImportExport\Model\Import\Validator\ValidatorInterface" type="Magento\InventoryImportExport\Model\Import\Validator\ValidatorChain"/><type name="Magento\InventoryImportExport\Model\Import\Validator\ValidatorChain"> <arguments> <argument name="validators" xsi:type="array"> <item name="sku" xsi:type="object">Magento\InventoryImportExport\Model\Import\Validator\SkuValidator</item> <item name="source" xsi:type="object">Magento\InventoryImportExport\Model\Import\Validator\SourceValidator</item> <item name="qty" xsi:type="object">Magento\InventoryImportExport\Model\Import\Validator\QtyValidator</item> </argument> </arguments> </type><type name="Magento\InventoryImportExport\Model\Import\Sources"> <arguments> <argument name="commands" xsi:type="array"> <item name="delete" xsi:type="object">Magento\InventoryImportExport\Model\Import\Command\Delete</item> <item name="append" xsi:type="object">Magento\InventoryImportExport\Model\Import\Command\Append</item> <item name="replace" xsi:type="object">Magento\InventoryImportExport\Model\Import\Command\Replace</item> </argument> </arguments> </type><preference for="Magento\InventoryImportExport\Model\Export\SourceItemCollectionFactoryInterface" type="Magento\InventoryImportExport\Model\Export\SourceItemCollectionFactory"/><preference for="Magento\InventoryImportExport\Model\Export\ColumnProviderInterface" type="Magento\InventoryImportExport\Model\Export\ColumnProvider"/><type name="Magento\InventoryImportExport\Model\Export\FilterProcessorAggregator"> <arguments> <argument name="handler" xsi:type="array"> <item name="int" xsi:type="object">Magento\InventoryImportExport\Model\Export\Filter\IntFilter</item> <!-- IntFilter is also used for 'decimal' type --> <item name="decimal" xsi:type="object">Magento\InventoryImportExport\Model\Export\Filter\IntFilter</item> <item name="varchar" xsi:type="object">Magento\InventoryImportExport\Model\Export\Filter\VarcharFilter</item> </argument> </arguments> </type><preference for="Magento\InventoryInStorePickupApi\Model\SearchCriteriaResolverInterface" type="Magento\InventoryInStorePickupApi\Model\SearchCriteriaResolverChain"/><preference for="Magento\InventoryInStorePickupApi\Model\SearchResult\ExtractorInterface" type="Magento\InventoryInStorePickupApi\Model\SearchResult\Extractor"/><type name="Magento\InventoryInStorePickupApi\Model\Mapper"> <arguments> <argument name="map" xsi:type="array"> <item name="source_code" xsi:type="string">pickup_location_code</item> <item name="email" xsi:type="string">email</item> <item name="fax" xsi:type="string">fax</item> <item name="contact_name" xsi:type="string">contact_name</item> <item name="description" xsi:type="string">description</item> <item name="latitude" xsi:type="string">latitude</item> <item name="longitude" xsi:type="string">longitude</item> <item name="country_id" xsi:type="string">country_id</item> <item name="region_id" xsi:type="string">region_id</item> <item name="region" xsi:type="string">region</item> <item name="city" xsi:type="string">city</item> <item name="street" xsi:type="string">street</item> <item name="postcode" xsi:type="string">postcode</item> <item name="phone" xsi:type="string">phone</item> <item name="extension_attributes.frontend_name" xsi:type="string">name</item><item name="extension_attributes.frontend_description" xsi:type="string">description</item></argument> <argument name="preProcessors" xsi:type="array"> <item name="extension_attributes.frontend_description" xsi:type="object">Magento\InventoryInStorePickup\Model\PickupLocation\Mapper\PreProcessor\FrontendDescription</item> </argument></arguments> </type><type name="Magento\InventoryInStorePickupApi\Model\SearchCriteria\SearchCriteriaBuilderDecorator"> <arguments> <argument name="criteriaBuilder" shared="false" xsi:type="object">Magento\Framework\Api\SearchCriteriaBuilder</argument> </arguments> </type><preference for="Magento\InventorySourceSelectionApi\Api\GetSourceSelectionAlgorithmListInterface" type="Magento\InventorySourceSelectionApi\Model\GetSourceSelectionAlgorithmList"/><preference for="Magento\InventorySourceSelectionApi\Api\SourceSelectionServiceInterface" type="Magento\InventorySourceSelectionApi\Model\SourceSelectionService"/><preference for="Magento\InventorySourceSelectionApi\Model\GetSourceItemQtyAvailableInterface" type="Magento\InventorySourceSelectionApi\Model\GetSourceItemQtyAvailableService"/><type name="Magento\InventorySourceSelectionApi\Model\Algorithms\Result\GetDefaultSortedSourcesResult"> <arguments> <!-- Argument searchCriteriaBuilder is deprecated and it should not be used anymore --> <argument name="searchCriteriaBuilder" xsi:type="null"/> <!-- Argument sourceItemRepository is deprecated and it should not be used anymore --> <argument name="sourceItemRepository" xsi:type="null"/> </arguments> </type><preference for="Magento\InventoryInStorePickupApi\Api\Data\PickupLocationInterface" type="Magento\InventoryInStorePickup\Model\PickupLocation"/><preference for="Magento\InventoryInStorePickupApi\Api\GetPickupLocationsInterface" type="Magento\InventoryInStorePickup\Model\GetPickupLocations"/><preference for="Magento\InventoryInStorePickupApi\Model\GetPickupLocationInterface" type="Magento\InventoryInStorePickup\Model\GetPickupLocation"/><preference for="Magento\InventoryInStorePickupApi\Api\Data\SearchResultInterface" type="Magento\InventoryInStorePickup\Model\SearchResult"/><preference for="Magento\InventoryInStorePickupApi\Model\SearchResult\ExtractStrategyInterface" type="Magento\InventoryInStorePickup\Model\SearchResult\ExtractStrategy"/><type name="Magento\InventoryInStorePickupApi\Model\SearchCriteriaResolverInterface"> <arguments> <argument name="resolvers" xsi:type="array"> <item name="resolve-default-filters" xsi:type="object">Magento\InventoryInStorePickup\Model\SearchCriteria\ResolveDefaultFilters</item> <item name="resolve-filter-set" xsi:type="object">Magento\InventoryInStorePickup\Model\SearchCriteria\ResolveFilters</item> <item name="resolve-distance-filter" xsi:type="object">Magento\InventoryInStorePickup\Model\SearchCriteria\ResolveArea</item> <item name="resolve-scope-filter" xsi:type="object">Magento\InventoryInStorePickup\Model\SearchCriteria\ResolveScopeFilter</item> <item name="resolve-meta" xsi:type="object">Magento\InventoryInStorePickup\Model\SearchCriteria\ResolveMeta</item> <item name="resolve-products-assignment-intersection" xsi:type="object">Magento\InventoryInStorePickup\Model\SearchCriteria\ResolveIntersection</item> </argument> </arguments> </type><preference for="Magento\InventoryInStorePickupApi\Api\Data\SearchRequest\AreaInterface" type="Magento\InventoryInStorePickup\Model\SearchRequest\Area"/><preference for="Magento\InventoryInStorePickupApi\Api\Data\SearchRequest\FiltersInterface" type="Magento\InventoryInStorePickup\Mod