dto_generator:
  entities:
    logic:
      XCart\Logic\Entity\Storefront\Country:
        doctrineEntity: XLite\Model\Country
        generate_get_one: true
        use_doctrine_get_one: true
        generate_get_collection: true
        use_doctrine_get_collection: true
        idType: manual
        fields:
          id:
            id: true
            type: string
          code:
            type: string
          name:
            type: string
          regions:
            type: XCart\Logic\Entity\Storefront\Region[]
          states:
            type: XCart\Logic\Entity\Storefront\State[]

    dto:
      XCart\DTO\Doctrine\Storefront\Country\Filter:
        type: doctrine_entity_filter
        fields:
          enabled:
            type: BooleanValue
            nullable: true

    logic_request:
      XCart\Logic\Action\Storefront\Country\GetOne\DTO\Request:
        type: get_one
        entity: XCart\Logic\Entity\Storefront\Country
        traits:
          - XCart\Logic\Action\Storefront\Country\GetOne\Request\CountryCodeRequestTrait

  transformers:
    - from: XLite\Model\Country
      to: XCart\Logic\Entity\Storefront\Country
      pattern: predefined
