<?xml version="1.0"?>
<!--
/**
 * @author Amasty Team
 * @copyright Copyright (c) Amasty (https://www.amasty.com)
 * @package Inventory Export Entity for Magento 2 (System)
 */-->
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:noNamespaceSchemaLocation="urn:amasty:module:Amasty_ExportCore:etc/am_export.xsd">
    <entity code="inventory_stock">
        <name>MSI Inventory Stock</name>
        <group>Inventory</group>
        <enabledChecker class="Amasty\ExportCore\Export\Config\IsModuleEnabled">
            <arguments>
                <argument name="moduleName" xsi:type="string">Magento_Inventory</argument>
            </arguments>
        </enabledChecker>
        <collectionFactory class="Magento\Inventory\Model\ResourceModel\Stock\CollectionFactory"/>
        <fieldsConfig>
            <fieldsClass class="Amasty\ExportCore\Export\FieldsClass\Describe"/>
        </fieldsConfig>
    </entity>
    <relation code="inventory_source_stock">
        <parent_entity>inventory_source</parent_entity>
        <child_entity>inventory_stock</child_entity>
        <sub_entity_field_name>inventory_stock</sub_entity_field_name>
        <type>many_to_many</type>
        <arguments>
            <argument name="connect_table_name" xsi:type="string">inventory_source_stock_link</argument>
            <argument name="parent_field_name" xsi:type="string">source_code</argument>
            <argument name="connect_parent_field_name" xsi:type="string">source_code</argument>
            <argument name="child_field_name" xsi:type="string">stock_id</argument>
            <argument name="connect_child_field_name" xsi:type="string">stock_id</argument>
        </arguments>
    </relation>
    <relation code="stock_inventory_source">
        <parent_entity>inventory_stock</parent_entity>
        <child_entity>inventory_source</child_entity>
        <sub_entity_field_name>inventory_source</sub_entity_field_name>
        <type>many_to_many</type>
        <arguments>
            <argument name="connect_table_name" xsi:type="string">inventory_source_stock_link</argument>
            <argument name="parent_field_name" xsi:type="string">stock_id</argument>
            <argument name="connect_parent_field_name" xsi:type="string">stock_id</argument>
            <argument name="child_field_name" xsi:type="string">source_code</argument>
            <argument name="connect_child_field_name" xsi:type="string">source_code</argument>
        </arguments>
    </relation>
</config>
