<?xml version="1.0" encoding="UTF-8"?>
<!--
/**
 * @author Amasty Team
 * @copyright Copyright (c) 2023 Amasty (https://www.amasty.com)
 * @package Free Gift Base for Magento 2
 */-->
<form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Ui:etc/ui_configuration.xsd">
    <fieldset name="actions">
        <field name="discount_qty">
            <argument name="data" xsi:type="array">
                <item name="config" xsi:type="array">
                    <item name="sortOrder" xsi:type="number">10</item>
                </item>
            </argument>
        </field>
        <field name="ampromorule[apply_tax]" sortOrder="25" formElement="checkbox">
            <argument name="data" xsi:type="array">
                <item name="config" xsi:type="array">
                    <item name="source" xsi:type="string">sales_rule</item>
                    <item name="default" xsi:type="number">0</item>
                </item>
            </argument>
            <settings>
                <dataType>boolean</dataType>
                <tooltip>
                    <description translate="true">The setting regulates the collection of tax when
                        Free Gifts are being represented as a product with $0 price.
                        Other settings for tax calculated on Free Gifts are ignored.
                    </description>
                </tooltip>
                <label translate="true">Apply tax on original price of promo items added for free</label>
                <dataScope>extension_attributes.ampromo_rule.apply_tax</dataScope>
            </settings>
            <formElements>
                <checkbox>
                    <settings>
                        <valueMap>
                            <map name="false" xsi:type="string">0</map>
                            <map name="true" xsi:type="string">1</map>
                        </valueMap>
                        <prefer>toggle</prefer>
                    </settings>
                </checkbox>
            </formElements>
        </field>
        <field name="ampromorule[apply_shipping]">
            <argument name="data" xsi:type="array">
                <item name="config" xsi:type="array">
                    <item name="dataType" xsi:type="string">boolean</item>
                    <item name="formElement" xsi:type="string">checkbox</item>
                    <item name="prefer" xsi:type="string">toggle</item>
                    <item name="valueMap" xsi:type="array">
                        <item name="true" xsi:type="number">1</item>
                        <item name="false" xsi:type="number">0</item>
                    </item>
                    <item name="default" xsi:type="number">0</item>
                    <item name="label" xsi:type="string" translate="true">Apply shipping on promo items added for free</item>
                    <item name="source" xsi:type="string">sales_rule</item>
                    <item name="dataScope" xsi:type="string">extension_attributes.ampromo_rule.apply_shipping</item>
                    <item name="sortOrder" xsi:type="number">26</item>
                </item>
            </argument>
        </field>
        <field name="ampromorule[sku]">
            <argument name="data" xsi:type="array">
                <item name="config" xsi:type="array">
                    <item name="label" xsi:type="string" translate="true">Promo Items</item>
                    <item name="dataType" xsi:type="string">text</item>
                    <item name="formElement" xsi:type="string">input</item>
                    <item name="source" xsi:type="string">sales_rule</item>
                    <item name="dataScope" xsi:type="string">extension_attributes.ampromo_rule.sku</item>
                    <item name="notice" xsi:type="string" translate="true">Comma separated list of the SKUs</item>
                    <item name="sortOrder" xsi:type="number">9</item>
                </item>
            </argument>
        </field>
        <field name="ampromorule[type]">
            <argument name="data" xsi:type="array">
                <item name="config" xsi:type="array">
                    <item name="label" xsi:type="string" translate="true">Type</item>
                    <item name="dataType" xsi:type="string">number</item>
                    <item name="formElement" xsi:type="string">select</item>
                    <item name="source" xsi:type="string">sales_rule</item>
                    <item name="dataScope" xsi:type="string">extension_attributes.ampromo_rule.type</item>
                    <item name="options" xsi:type="array">
                        <item name="0" xsi:type="array">
                            <item name="value" xsi:type="number">0</item>
                            <item name="label" xsi:type="string" translate="true">All SKUs below</item>
                        </item>
                        <item name="1" xsi:type="array">
                            <item name="value" xsi:type="number">1</item>
                            <item name="label" xsi:type="string" translate="true">One of the SKUs below</item>
                        </item>
                    </item>
                    <item name="sortOrder" xsi:type="number">8</item>
                </item>
            </argument>
        </field>
        <field name="stop_rules_processing">
            <argument name="data" xsi:type="array">
                <item name="config" xsi:type="array">
                    <item name="sortOrder" xsi:type="number">31</item>
                    <item name="default" xsi:type="number">0</item>
                </item>
            </argument>
        </field>
    </fieldset>
    <fieldset name="ampromorule_items_price">
        <argument name="data" xsi:type="array">
            <item name="config" xsi:type="array">
                <item name="label" xsi:type="string" translate="true">Promo Items With Discount</item>
                <item name="collapsible" xsi:type="boolean">true</item>
                <item name="sortOrder" xsi:type="string">35</item>
            </item>
        </argument>
        <field name="ampromorule_items_discount">
            <argument name="data" xsi:type="array">
                <item name="config" xsi:type="array">
                    <item name="dataType" xsi:type="string">string</item>
                    <item name="label" xsi:type="string" translate="true">Promo Items Discount</item>
                    <item name="formElement" xsi:type="string">input</item>
                    <item name="visible" xsi:type="boolean">true</item>
                    <item name="required" xsi:type="boolean">false</item>
                    <item name="sortOrder" xsi:type="number">10</item>
                    <item name="notice" xsi:type="string" translate="true"><![CDATA[Set fixed price (e.g. 20), fixed discount (e.g. -20) or a percent discount (e.g. 50%). Leave empty if you want to add product for free.]]></item>
                    <item name="source" xsi:type="string">sales_rule</item>
                    <item name="dataScope" xsi:type="string">extension_attributes.ampromo_rule.items_discount</item>
                </item>
            </argument>
        </field>
        <field name="ampromorule_minimal_items_price">
            <argument name="data" xsi:type="array">
                <item name="config" xsi:type="array">
                    <item name="dataType" xsi:type="string">string</item>
                    <item name="label" xsi:type="string" translate="true">Minimal Price</item>
                    <item name="formElement" xsi:type="string">input</item>
                    <item name="visible" xsi:type="boolean">true</item>
                    <item name="required" xsi:type="boolean">false</item>
                    <item name="sortOrder" xsi:type="number">20</item>
                    <item name="source" xsi:type="string">sales_rule</item>
                    <item name="dataScope" xsi:type="string">extension_attributes.ampromo_rule.minimal_items_price</item>
                    <item name="validation" xsi:type="array">
                        <item name="validate-number validate-zero-or-greater" xsi:type="boolean">true</item>
                    </item>
                </item>
            </argument>
        </field>
    </fieldset>
    <fieldset name="promo_banners_highlights">
        <fieldset name="top_banner">
            <field name="top_banner_show_gift_images">
                <argument name="data" xsi:type="array">
                    <item name="config" xsi:type="array">
                        <item name="dataType" xsi:type="string">boolean</item>
                        <item name="formElement" xsi:type="string">checkbox</item>
                        <item name="component" xsi:type="string">Amasty_Promo/js/form/element/gift-image-toggle</item>
                        <item name="prefer" xsi:type="string">toggle</item>
                        <item name="valueMap" xsi:type="array">
                            <item name="true" xsi:type="number">1</item>
                            <item name="false" xsi:type="number">0</item>
                        </item>
                        <item name="default" xsi:type="number">0</item>
                        <item name="label" xsi:type="string" translate="true">Show Gift images</item>
                        <item name="source" xsi:type="string">sales_rule</item>
                        <item name="dataScope" xsi:type="string">extension_attributes.ampromo_rule.top_banner_show_gift_images</item>
                        <item name="sortOrder" xsi:type="number">50</item>
                    </item>
                </argument>
            </field>
        </fieldset>
        <fieldset name="after_description_banner">
            <field name="after_product_banner_show_gift_images">
                <argument name="data" xsi:type="array">
                    <item name="config" xsi:type="array">
                        <item name="dataType" xsi:type="string">boolean</item>
                        <item name="formElement" xsi:type="string">checkbox</item>
                        <item name="component" xsi:type="string">Amasty_Promo/js/form/element/gift-image-toggle</item>
                        <item name="prefer" xsi:type="string">toggle</item>
                        <item name="valueMap" xsi:type="array">
                            <item name="true" xsi:type="number">1</item>
                            <item name="false" xsi:type="number">0</item>
                        </item>
                        <item name="default" xsi:type="number">0</item>
                        <item name="label" xsi:type="string" translate="true">Show Gift images</item>
                        <item name="source" xsi:type="string">sales_rule</item>
                        <item name="dataScope" xsi:type="string">extension_attributes.ampromo_rule.after_product_banner_show_gift_images</item>
                        <item name="sortOrder" xsi:type="number">50</item>
                    </item>
                </argument>
            </field>
        </fieldset>
    </fieldset>
</form>