<?xml version="1.0"?>

<!--

 This file is part of the Sylius package.

 (c) Paweł Jędrzejewski

 For the full copyright and license information, please view the LICENSE
 file that was distributed with this source code.

-->

<constraint-mapping xmlns="http://symfony.com/schema/dic/constraint-mapping"
                    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                    xsi:schemaLocation="http://symfony.com/schema/dic/constraint-mapping
                                        http://symfony.com/schema/dic/constraint-mapping/constraint-mapping-1.0.xsd">

    <class name="Sylius\Component\Order\Model\Order">
        <property name="items">
            <constraint name="Valid" />
        </property>
    </class>

    <class name="Sylius\Component\Order\Model\OrderItem">
        <property name="quantity">
            <constraint name="NotBlank">
                <option name="message">sylius.order_item.quantity.not_blank</option>
                <option name="groups">sylius</option>
            </constraint>
            <constraint name="Type">
                <option name="type">integer</option>
                <option name="message">sylius.order_item.quantity.integer</option>
                <option name="groups">sylius</option>
            </constraint>
            <constraint name="Range">
                <option name="min">1</option>
                <option name="minMessage">sylius.order_item.quantity.min</option>
                <option name="groups">sylius</option>
            </constraint>
        </property>
    </class>

    <class name="Sylius\Component\Order\Model\Adjustment">
        <property name="label">
            <constraint name="NotBlank">
                <option name="message">sylius.adjustment.label.not_blank</option>
                <option name="groups">sylius</option>
            </constraint>
        </property>
        <property name="amount">
            <constraint name="NotBlank">
                <option name="message">sylius.adjustment.amount.not_blank</option>
                <option name="groups">sylius</option>
            </constraint>
            <constraint name="Type">
                <option name="type">integer</option>
                <option name="message">sylius.adjustment.amount.integer</option>
                <option name="groups">sylius</option>
            </constraint>
        </property>
    </class>

</constraint-mapping>
