Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
 
 
 
 
 
 

195 строки
11 KiB

  1. <?xml version="1.0"?>
  2. <!--
  3. /**
  4. * Copyright © Magento, Inc. All rights reserved.
  5. * See COPYING.txt for license details.
  6. */
  7. -->
  8. <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
  9. <preference for="Magento\Catalog\Model\Product\Option\Type\Date" type="Magento\CatalogGraphQl\Model\Product\Option\DateType" />
  10. <type name="Magento\CatalogGraphQl\Model\ProductInterfaceTypeResolverComposite">
  11. <arguments>
  12. <argument name="productTypeNameResolvers" xsi:type="array">
  13. <item name="catalog_type_resolver" xsi:type="object">Magento\CatalogGraphQl\Model\CatalogProductTypeResolver</item>
  14. </argument>
  15. </arguments>
  16. </type>
  17. <type name="Magento\CatalogGraphQl\Model\ProductLinkTypeResolverComposite">
  18. <arguments>
  19. <argument name="productLinksTypeNameResolvers" xsi:type="array">
  20. <item name="catalog_product_link_type_resolver" xsi:type="object">Magento\CatalogGraphQl\Model\ProductLinksTypeResolver</item>
  21. </argument>
  22. </arguments>
  23. </type>
  24. <type name="Magento\CatalogGraphQl\Model\LayerFilterItemTypeResolverComposite">
  25. <arguments>
  26. <argument name="typeResolvers" xsi:type="array">
  27. <item name="layer_filter_item" xsi:type="object">Magento\CatalogGraphQl\Model\LayerFilterItemTypeResolver</item>
  28. </argument>
  29. </arguments>
  30. </type>
  31. <type name="Magento\CatalogGraphQl\Model\AggregationOptionTypeResolverComposite">
  32. <arguments>
  33. <argument name="typeResolvers" xsi:type="array">
  34. <item name="aggregation_option" xsi:type="object">Magento\CatalogGraphQl\Model\AggregationOptionTypeResolver</item>
  35. </argument>
  36. </arguments>
  37. </type>
  38. <type name="Magento\Framework\GraphQl\Schema\Type\Entity\DefaultMapper">
  39. <arguments>
  40. <argument name="map" xsi:type="array">
  41. <item name="catalog_product" xsi:type="array">
  42. <item name="product" xsi:type="string">ProductInterface</item>
  43. <item name="simple" xsi:type="string">SimpleProduct</item>
  44. <item name="virtual" xsi:type="string">VirtualProduct</item>
  45. </item>
  46. <item name="customizable_options" xsi:type="array">
  47. <item name="field" xsi:type="string">CustomizableFieldOption</item>
  48. <item name="date" xsi:type="string">CustomizableDateOption</item>
  49. <item name="date_time" xsi:type="string">CustomizableDateOption</item>
  50. <item name="time" xsi:type="string">CustomizableDateOption</item>
  51. <item name="file" xsi:type="string">CustomizableFileOption</item>
  52. <item name="area" xsi:type="string">CustomizableAreaOption</item>
  53. <item name="drop_down" xsi:type="string">CustomizableDropDownOption</item>
  54. <item name="multiple" xsi:type="string">CustomizableMultipleOption</item>
  55. <item name="radio" xsi:type="string">CustomizableRadioOption</item>
  56. <item name="checkbox" xsi:type="string">CustomizableCheckboxOption</item>
  57. </item>
  58. <item name="sort_attributes" xsi:type="array">
  59. <item name="product_sort_attributes" xsi:type="string">ProductAttributeSortInput</item>
  60. </item>
  61. <item name="filter_attributes" xsi:type="array">
  62. <item name="product_filter_attributes" xsi:type="string">ProductAttributeFilterInput</item>
  63. </item>
  64. </argument>
  65. </arguments>
  66. </type>
  67. <type name="Magento\CatalogGraphQl\Model\Layer\Context">
  68. <arguments>
  69. <argument name="collectionProvider" xsi:type="object">Magento\CatalogGraphQl\Model\Layer\CollectionProvider</argument>
  70. <argument name="stateKey" xsi:type="object">Magento\Catalog\Model\Layer\Category\StateKey</argument>
  71. <argument name="collectionFilter" xsi:type="object">Magento\Catalog\Model\Layer\Category\CollectionFilter</argument>
  72. </arguments>
  73. </type>
  74. <type name="Magento\Catalog\Model\Layer\Search">
  75. <arguments>
  76. <argument name="context" xsi:type="object">Magento\CatalogGraphQl\Model\Layer\Context</argument>
  77. </arguments>
  78. </type>
  79. <type name="Magento\CatalogGraphQl\Model\Layer\CollectionProvider">
  80. <arguments>
  81. <argument name="collectionProcessor" xsi:type="object">Magento\Catalog\Model\Api\SearchCriteria\ProductCollectionProcessor</argument>
  82. </arguments>
  83. </type>
  84. <virtualType name="Magento\Catalog\Model\Api\SearchCriteria\CollectionProcessor\ProductFilterProcessor" type="Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor">
  85. <arguments>
  86. <argument name="customFilters" xsi:type="array">
  87. <item name="price" xsi:type="object">Magento\Catalog\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor\ProductPriceFilter</item>
  88. <item name="min_price" xsi:type="object">Magento\Catalog\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor\ProductPriceFilter</item>
  89. <item name="max_price" xsi:type="object">Magento\Catalog\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor\ProductPriceFilter</item>
  90. <item name="category_id" xsi:type="object">Magento\CatalogGraphQl\Model\Resolver\Products\SearchCriteria\CollectionProcessor\FilterProcessor\CategoryFilter</item>
  91. </argument>
  92. </arguments>
  93. </virtualType>
  94. <type name="Magento\StoreGraphQl\Model\Resolver\Store\StoreConfigDataProvider">
  95. <arguments>
  96. <argument name="extendedConfigData" xsi:type="array">
  97. <item name="product_url_suffix" xsi:type="string">catalog/seo/product_url_suffix</item>
  98. <item name="category_url_suffix" xsi:type="string">catalog/seo/category_url_suffix</item>
  99. <item name="title_separator" xsi:type="string">catalog/seo/title_separator</item>
  100. <item name="list_mode" xsi:type="string">catalog/frontend/list_mode</item>
  101. <item name="grid_per_page_values" xsi:type="string">catalog/frontend/grid_per_page_values</item>
  102. <item name="list_per_page_values" xsi:type="string">catalog/frontend/list_per_page_values</item>
  103. <item name="grid_per_page" xsi:type="string">catalog/frontend/grid_per_page</item>
  104. <item name="list_per_page" xsi:type="string">catalog/frontend/list_per_page</item>
  105. <item name="catalog_default_sort_by" xsi:type="string">catalog/frontend/default_sort_by</item>
  106. </argument>
  107. </arguments>
  108. </type>
  109. <type name="Magento\CatalogGraphQl\DataProvider\Product\LayeredNavigation\LayerBuilder">
  110. <arguments>
  111. <argument name="builders" xsi:type="array">
  112. <item name="price_bucket" xsi:type="object">Magento\CatalogGraphQl\DataProvider\Product\LayeredNavigation\Builder\Price</item>
  113. <item name="category_bucket" xsi:type="object">Magento\CatalogGraphQl\DataProvider\Product\LayeredNavigation\Builder\Category</item>
  114. <item name="attribute_bucket" xsi:type="object">Magento\CatalogGraphQl\DataProvider\Product\LayeredNavigation\Builder\Attribute</item>
  115. </argument>
  116. </arguments>
  117. </type>
  118. <type name="Magento\CatalogGraphQl\Model\Resolver\Product\Price\ProviderPool">
  119. <arguments>
  120. <argument name="providers" xsi:type="array">
  121. <item name="default" xsi:type="object">Magento\CatalogGraphQl\Model\Resolver\Product\Price\Provider</item>
  122. </argument>
  123. </arguments>
  124. </type>
  125. <type name="Magento\CatalogGraphQl\Model\Resolver\Products\DataProvider\Product\CollectionProcessor\AttributeProcessor">
  126. <arguments>
  127. <argument name="fieldToAttributeMap" xsi:type="array">
  128. <item name="price_range" xsi:type="array">
  129. <item name="price" xsi:type="string">price</item>
  130. </item>
  131. <item name="thumbnail" xsi:type="array">
  132. <item name="label" xsi:type="array">
  133. <item name="attribute" xsi:type="string">thumbnail_label</item>
  134. <item name="fallback_attribute" xsi:type="string">name</item>
  135. </item>
  136. <item name="url" xsi:type="string">thumbnail</item>
  137. </item>
  138. <item name="small_image" xsi:type="array">
  139. <item name="label" xsi:type="array">
  140. <item name="attribute" xsi:type="string">small_image_label</item>
  141. <item name="fallback_attribute" xsi:type="string">name</item>
  142. </item>
  143. <item name="url" xsi:type="string">small_image</item>
  144. </item>
  145. <item name="image" xsi:type="array">
  146. <item name="label" xsi:type="array">
  147. <item name="attribute" xsi:type="string">image_label</item>
  148. <item name="fallback_attribute" xsi:type="string">name</item>
  149. </item>
  150. <item name="url" xsi:type="string">image</item>
  151. </item>
  152. <item name="media_gallery" xsi:type="array">
  153. <item name="label" xsi:type="array">
  154. <item name="attribute" xsi:type="string">image_label</item>
  155. <item name="fallback_attribute" xsi:type="string">name</item>
  156. </item>
  157. </item>
  158. </argument>
  159. </arguments>
  160. </type>
  161. <type name="Magento\Catalog\Block\Product\ImageFactory">
  162. <plugin name="designLoader" type="Magento\CatalogGraphQl\Plugin\DesignLoader" />
  163. </type>
  164. <type name="Magento\CatalogGraphQl\Model\Config\CategoryAttributeReader">
  165. <arguments>
  166. <argument name="categoryAttributeResolvers" xsi:type="array">
  167. <item name="image" xsi:type="string">Magento\CatalogGraphQl\Model\Resolver\Category\Image</item>
  168. </argument>
  169. </arguments>
  170. </type>
  171. <type name="Magento\Catalog\Helper\Data">
  172. <arguments>
  173. <argument name="templateFilterModel" xsi:type="string">Magento\Widget\Model\Template\FilterEmulate</argument>
  174. </arguments>
  175. </type>
  176. <type name="Magento\WishlistGraphQl\Model\Resolver\Type\WishlistItemType">
  177. <arguments>
  178. <argument name="supportedTypes" xsi:type="array">
  179. <item name="simple" xsi:type="string">SimpleWishlistItem</item>
  180. <item name="virtual" xsi:type="string">VirtualWishlistItem</item>
  181. </argument>
  182. </arguments>
  183. </type>
  184. <type name="Magento\Catalog\Api\ProductRepositoryInterface">
  185. <plugin name="availableProductsFilter" type="Magento\CatalogGraphQl\Plugin\AvailableProductsFilter" />
  186. </type>
  187. </config>