GET https://store.nostradamnit.com/owen-1.html

Serializer

19 Handled
48.24 ms Total time

default 19

serialize 0

Nothing was serialized.

deserialize 0

Nothing was deserialized.

normalize 19

Data Context Normalizer Time Caller
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#4355
  -pager: Propel\Runtime\Util\PropelModelPager {#4416
    #query: Thelia\Model\CategoryQuery {#4544 …}
    #page: 1
    #maxPerPage: 30
    #lastPage: 1
    #nbResults: 2
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#4403 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\Category {#4387
      +i18ns: Thelia\Api\Resource\I18nCollection {#4357 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Category {#3387 …}
      +id: 1
      +parent: 0
      +visible: true
      +position: 1
      +defaultTemplateId: 1
      +createdAt: DateTime @1794052482 {#3396
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052482 {#3385
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
    }
    Thelia\Api\Resource\Category {#4336
      +i18ns: Thelia\Api\Resource\I18nCollection {#4354 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Category {#4407 …}
      +id: 2
      +parent: 0
      +visible: true
      +position: 2
      +defaultTemplateId: 1
      +createdAt: DateTime @1794052482 {#4408
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052482 {#4402
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
    }
  ]
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/categories"
  "operation" => ApiPlatform\Metadata\GetCollection {#4581
    #parameters: ApiPlatform\Metadata\Parameters {#4580 …}
    #shortName: "Category2"
    #class: "Thelia\Api\Resource\Category"
    #description: null
    #urlGenerationStrategy: null
    #deprecationReason: null
    #normalizationContext: [
      "groups" => [
        "front:category:read"
      ]
    ]
    #denormalizationContext: null
    #collectDenormalizationErrors: null
    #validationContext: null
    #filters: [
      "annotated_thelia_api_resource_category_thelia_api_bridge_propel_filter_not_in_filter"
      "annotated_thelia_api_resource_category_thelia_api_bridge_propel_filter_search_filter"
      "annotated_thelia_api_resource_category_thelia_api_bridge_propel_filter_order_filter"
      "annotated_thelia_api_resource_category_thelia_api_bridge_propel_filter_boolean_filter"
    ]
    #mercure: null
    #messenger: null
    #input: null
    #output: null
    #order: null
    #fetchPartial: null
    #forceEager: null
    #paginationEnabled: null
    #paginationType: null
    #paginationItemsPerPage: null
    #paginationMaximumItemsPerPage: 100
    #paginationPartial: null
    #paginationClientEnabled: null
    #paginationClientItemsPerPage: true
    #paginationClientPartial: null
    #paginationFetchJoinCollection: null
    #paginationUseOutputWalkers: null
    #security: null
    #securityMessage: null
    #securityPostDenormalize: null
    #securityPostDenormalizeMessage: null
    #securityPostValidation: null
    #securityPostValidationMessage: null
    #provider: "Thelia\Api\Bridge\Propel\State\PropelCollectionProvider"
    #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
    #stateOptions: null
    #rules: null
    #policy: null
    #middleware: null
    #queryParameterValidationEnabled: null
    #strictQueryParameterValidation: null
    #hideHydraOperation: null
    #jsonStream: null
    #map: null
    #extraProperties: [
      "deduplicate_resource_short_names" => true
      "user_defined_uri_template" => true
      "is_alternate_resource_metadata" => true
    ]
    #paginationViaCursor: null
    #read: null
    #deserialize: null
    #validate: null
    #write: null
    #serialize: null
    #contentNegotiation: null
    #priority: 0
    #name: "_api_/front/categories_get_collection"
    #formats: null
    #inputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #outputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #method: "GET"
    #uriTemplate: "/front/categories"
    #types: null
    #uriVariables: []
    #routePrefix: null
    #routeName: null
    #defaults: null
    #requirements: null
    #options: null
    #stateless: false
    #sunset: null
    #acceptPatch: null
    #status: null
    #host: null
    #schemes: null
    #condition: null
    #controller: "api_platform.symfony.main_controller"
    #headers: null
    #cacheHeaders: [
      "vary" => [
        "Content-Type"
        "Authorization"
        "Origin"
      ]
    ]
    #hydraContext: null
    #openapi: null
    #exceptionToStatus: null
    #links: null
    #errors: null
    -itemUriTemplate: null
  }
  "uri_variables" => []
  "resource_class" => "Thelia\Api\Resource\Category"
  "filters" => [
    "parent" => 0
    "visible" => true
    "order" => [
      "position" => "asc"
    ]
    "locale" => "fr_FR"
  ]
  "groups" => [
    "front:category:read"
  ]
  "exclude_from_cache_key" => [
    "root_operation"
    "operation"
    "object"
    "data"
    "property_metadata"
    "circular_reference_limit_counters"
    "debug_trace_id"
    "extra_variables"
    "request"
  ]
  "extra_variables" => [
    "object" => Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#4355
      -pager: Propel\Runtime\Util\PropelModelPager {#4416
        #query: Thelia\Model\CategoryQuery {#4544 …}
        #page: 1
        #maxPerPage: 30
        #lastPage: 1
        #nbResults: 2
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#4403 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\Category {#4387
          +i18ns: Thelia\Api\Resource\I18nCollection {#4357 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Category {#3387 …}
          +id: 1
          +parent: 0
          +visible: true
          +position: 1
          +defaultTemplateId: 1
          +createdAt: DateTime @1794052482 {#3396
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052482 {#3385
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
        }
        Thelia\Api\Resource\Category {#4336
          +i18ns: Thelia\Api\Resource\I18nCollection {#4354 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Category {#4407 …}
          +id: 2
          +parent: 0
          +visible: true
          +position: 2
          +defaultTemplateId: 1
          +createdAt: DateTime @1794052482 {#4408
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052482 {#4402
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
        }
      ]
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#3996
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#3999 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#3997 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#3998 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#4002 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#4001 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#4000 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#4003 …}
    #content: null
    #languages: null
    #charsets: null
    #encodings: null
    #acceptableContentTypes: null
    #pathInfo: "/api/front/categories"
    #requestUri: "/api/front/categories"
    #baseUrl: ""
    #basePath: null
    #method: "GET"
    #format: null
    #session: null
    #locale: null
    #defaultLocale: "en"
    -preferredFormat: null
    -isHostValid: true
    -isForwardedValid: true
    -isSafeContentPreferred: ? bool
    -trustedValuesCache: []
    -isIisRewrite: false
    basePath: ""
    format: "html"
  }
]
ItemNormalizer (0.32 ms)
3.68 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#4644
  -pager: Propel\Runtime\Util\PropelModelPager {#4741
    #query: Thelia\Model\CategoryQuery {#4762 …}
    #page: 1
    #maxPerPage: 30
    #lastPage: 1
    #nbResults: 4
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#4729 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\Category {#4683
      +i18ns: Thelia\Api\Resource\I18nCollection {#4681 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Category {#4708 …}
      +id: 3
      +parent: 2
      +visible: true
      +position: 1
      +defaultTemplateId: 1
      +createdAt: DateTime @1794052482 {#4707
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052482 {#4760
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
    }
    Thelia\Api\Resource\Category {#4667
      +i18ns: Thelia\Api\Resource\I18nCollection {#4677 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Category {#3370 …}
      +id: 5
      +parent: 1
      +visible: true
      +position: 1
      +defaultTemplateId: 1
      +createdAt: DateTime @1794052483 {#3371
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052483 {#3372
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
    }
    Thelia\Api\Resource\Category {#4653
      +i18ns: Thelia\Api\Resource\I18nCollection {#4659 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Category {#4700 …}
      +id: 4
      +parent: 2
      +visible: true
      +position: 2
      +defaultTemplateId: 1
      +createdAt: DateTime @1794052482 {#4699
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052482 {#4698
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
    }
    Thelia\Api\Resource\Category {#4639
      +i18ns: Thelia\Api\Resource\I18nCollection {#4645 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Category {#4696 …}
      +id: 6
      +parent: 1
      +visible: true
      +position: 2
      +defaultTemplateId: 1
      +createdAt: DateTime @1794052483 {#4695
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052483 {#4694
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
    }
  ]
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/categories"
  "operation" => ApiPlatform\Metadata\GetCollection {#4581
    #parameters: ApiPlatform\Metadata\Parameters {#4580 …}
    #shortName: "Category2"
    #class: "Thelia\Api\Resource\Category"
    #description: null
    #urlGenerationStrategy: null
    #deprecationReason: null
    #normalizationContext: [
      "groups" => [
        "front:category:read"
      ]
    ]
    #denormalizationContext: null
    #collectDenormalizationErrors: null
    #validationContext: null
    #filters: [
      "annotated_thelia_api_resource_category_thelia_api_bridge_propel_filter_not_in_filter"
      "annotated_thelia_api_resource_category_thelia_api_bridge_propel_filter_search_filter"
      "annotated_thelia_api_resource_category_thelia_api_bridge_propel_filter_order_filter"
      "annotated_thelia_api_resource_category_thelia_api_bridge_propel_filter_boolean_filter"
    ]
    #mercure: null
    #messenger: null
    #input: null
    #output: null
    #order: null
    #fetchPartial: null
    #forceEager: null
    #paginationEnabled: null
    #paginationType: null
    #paginationItemsPerPage: null
    #paginationMaximumItemsPerPage: 100
    #paginationPartial: null
    #paginationClientEnabled: null
    #paginationClientItemsPerPage: true
    #paginationClientPartial: null
    #paginationFetchJoinCollection: null
    #paginationUseOutputWalkers: null
    #security: null
    #securityMessage: null
    #securityPostDenormalize: null
    #securityPostDenormalizeMessage: null
    #securityPostValidation: null
    #securityPostValidationMessage: null
    #provider: "Thelia\Api\Bridge\Propel\State\PropelCollectionProvider"
    #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
    #stateOptions: null
    #rules: null
    #policy: null
    #middleware: null
    #queryParameterValidationEnabled: null
    #strictQueryParameterValidation: null
    #hideHydraOperation: null
    #jsonStream: null
    #map: null
    #extraProperties: [
      "deduplicate_resource_short_names" => true
      "user_defined_uri_template" => true
      "is_alternate_resource_metadata" => true
    ]
    #paginationViaCursor: null
    #read: null
    #deserialize: null
    #validate: null
    #write: null
    #serialize: null
    #contentNegotiation: null
    #priority: 0
    #name: "_api_/front/categories_get_collection"
    #formats: null
    #inputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #outputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #method: "GET"
    #uriTemplate: "/front/categories"
    #types: null
    #uriVariables: []
    #routePrefix: null
    #routeName: null
    #defaults: null
    #requirements: null
    #options: null
    #stateless: false
    #sunset: null
    #acceptPatch: null
    #status: null
    #host: null
    #schemes: null
    #condition: null
    #controller: "api_platform.symfony.main_controller"
    #headers: null
    #cacheHeaders: [
      "vary" => [
        "Content-Type"
        "Authorization"
        "Origin"
      ]
    ]
    #hydraContext: null
    #openapi: null
    #exceptionToStatus: null
    #links: null
    #errors: null
    -itemUriTemplate: null
  }
  "uri_variables" => []
  "resource_class" => "Thelia\Api\Resource\Category"
  "filters" => [
    "parent" => [
      1
      2
    ]
    "order" => [
      "position" => "asc"
    ]
    "visible" => true
    "locale" => "fr_FR"
  ]
  "groups" => [
    "front:category:read"
  ]
  "exclude_from_cache_key" => [
    "root_operation"
    "operation"
    "object"
    "data"
    "property_metadata"
    "circular_reference_limit_counters"
    "debug_trace_id"
    "extra_variables"
    "request"
  ]
  "extra_variables" => [
    "object" => Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#4644
      -pager: Propel\Runtime\Util\PropelModelPager {#4741
        #query: Thelia\Model\CategoryQuery {#4762 …}
        #page: 1
        #maxPerPage: 30
        #lastPage: 1
        #nbResults: 4
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#4729 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\Category {#4683
          +i18ns: Thelia\Api\Resource\I18nCollection {#4681 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Category {#4708 …}
          +id: 3
          +parent: 2
          +visible: true
          +position: 1
          +defaultTemplateId: 1
          +createdAt: DateTime @1794052482 {#4707
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052482 {#4760
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
        }
        Thelia\Api\Resource\Category {#4667
          +i18ns: Thelia\Api\Resource\I18nCollection {#4677 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Category {#3370 …}
          +id: 5
          +parent: 1
          +visible: true
          +position: 1
          +defaultTemplateId: 1
          +createdAt: DateTime @1794052483 {#3371
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3372
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
        }
        Thelia\Api\Resource\Category {#4653
          +i18ns: Thelia\Api\Resource\I18nCollection {#4659 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Category {#4700 …}
          +id: 4
          +parent: 2
          +visible: true
          +position: 2
          +defaultTemplateId: 1
          +createdAt: DateTime @1794052482 {#4699
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052482 {#4698
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
        }
        Thelia\Api\Resource\Category {#4639
          +i18ns: Thelia\Api\Resource\I18nCollection {#4645 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Category {#4696 …}
          +id: 6
          +parent: 1
          +visible: true
          +position: 2
          +defaultTemplateId: 1
          +createdAt: DateTime @1794052483 {#4695
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#4694
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
        }
      ]
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#4546
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#4804 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#4822 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#4841 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#4780 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#4797 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#4809 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#4774 …}
    #content: null
    #languages: null
    #charsets: null
    #encodings: null
    #acceptableContentTypes: null
    #pathInfo: "/api/front/categories"
    #requestUri: "/api/front/categories"
    #baseUrl: ""
    #basePath: null
    #method: "GET"
    #format: null
    #session: null
    #locale: null
    #defaultLocale: "en"
    -preferredFormat: null
    -isHostValid: true
    -isForwardedValid: true
    -isSafeContentPreferred: ? bool
    -trustedValuesCache: []
    -isIisRewrite: false
    basePath: ""
    format: "html"
  }
]
ItemNormalizer (0.28 ms)
1.23 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#4045
  -pager: Propel\Runtime\Util\PropelModelPager {#4044
    #query: Thelia\Model\CategoryQuery {#4023 …}
    #page: 0
    #maxPerPage: 30
    #lastPage: 0
    #nbResults: 0
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#4056 …}
    #con: null
  }
  storage: []
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/categories"
  "operation" => ApiPlatform\Metadata\GetCollection {#4581
    #parameters: ApiPlatform\Metadata\Parameters {#4580 …}
    #shortName: "Category2"
    #class: "Thelia\Api\Resource\Category"
    #description: null
    #urlGenerationStrategy: null
    #deprecationReason: null
    #normalizationContext: [
      "groups" => [
        "front:category:read"
      ]
    ]
    #denormalizationContext: null
    #collectDenormalizationErrors: null
    #validationContext: null
    #filters: [
      "annotated_thelia_api_resource_category_thelia_api_bridge_propel_filter_not_in_filter"
      "annotated_thelia_api_resource_category_thelia_api_bridge_propel_filter_search_filter"
      "annotated_thelia_api_resource_category_thelia_api_bridge_propel_filter_order_filter"
      "annotated_thelia_api_resource_category_thelia_api_bridge_propel_filter_boolean_filter"
    ]
    #mercure: null
    #messenger: null
    #input: null
    #output: null
    #order: null
    #fetchPartial: null
    #forceEager: null
    #paginationEnabled: null
    #paginationType: null
    #paginationItemsPerPage: null
    #paginationMaximumItemsPerPage: 100
    #paginationPartial: null
    #paginationClientEnabled: null
    #paginationClientItemsPerPage: true
    #paginationClientPartial: null
    #paginationFetchJoinCollection: null
    #paginationUseOutputWalkers: null
    #security: null
    #securityMessage: null
    #securityPostDenormalize: null
    #securityPostDenormalizeMessage: null
    #securityPostValidation: null
    #securityPostValidationMessage: null
    #provider: "Thelia\Api\Bridge\Propel\State\PropelCollectionProvider"
    #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
    #stateOptions: null
    #rules: null
    #policy: null
    #middleware: null
    #queryParameterValidationEnabled: null
    #strictQueryParameterValidation: null
    #hideHydraOperation: null
    #jsonStream: null
    #map: null
    #extraProperties: [
      "deduplicate_resource_short_names" => true
      "user_defined_uri_template" => true
      "is_alternate_resource_metadata" => true
    ]
    #paginationViaCursor: null
    #read: null
    #deserialize: null
    #validate: null
    #write: null
    #serialize: null
    #contentNegotiation: null
    #priority: 0
    #name: "_api_/front/categories_get_collection"
    #formats: null
    #inputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #outputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #method: "GET"
    #uriTemplate: "/front/categories"
    #types: null
    #uriVariables: []
    #routePrefix: null
    #routeName: null
    #defaults: null
    #requirements: null
    #options: null
    #stateless: false
    #sunset: null
    #acceptPatch: null
    #status: null
    #host: null
    #schemes: null
    #condition: null
    #controller: "api_platform.symfony.main_controller"
    #headers: null
    #cacheHeaders: [
      "vary" => [
        "Content-Type"
        "Authorization"
        "Origin"
      ]
    ]
    #hydraContext: null
    #openapi: null
    #exceptionToStatus: null
    #links: null
    #errors: null
    -itemUriTemplate: null
  }
  "uri_variables" => []
  "resource_class" => "Thelia\Api\Resource\Category"
  "filters" => [
    "parent" => [
      3
      4
      5
      6
    ]
    "order" => [
      "position" => "asc"
    ]
    "visible" => true
    "locale" => "fr_FR"
  ]
  "groups" => [
    "front:category:read"
  ]
  "exclude_from_cache_key" => [
    "root_operation"
    "operation"
    "object"
    "data"
    "property_metadata"
    "circular_reference_limit_counters"
    "debug_trace_id"
    "extra_variables"
    "request"
  ]
  "extra_variables" => [
    "object" => Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#4045
      -pager: Propel\Runtime\Util\PropelModelPager {#4044
        #query: Thelia\Model\CategoryQuery {#4023 …}
        #page: 0
        #maxPerPage: 30
        #lastPage: 0
        #nbResults: 0
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#4056 …}
        #con: null
      }
      storage: []
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#4764
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#4624 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#4712 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#4637 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#4658 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#4012 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#4721 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#4689 …}
    #content: null
    #languages: null
    #charsets: null
    #encodings: null
    #acceptableContentTypes: null
    #pathInfo: "/api/front/categories"
    #requestUri: "/api/front/categories"
    #baseUrl: ""
    #basePath: null
    #method: "GET"
    #format: null
    #session: null
    #locale: null
    #defaultLocale: "en"
    -preferredFormat: null
    -isHostValid: true
    -isForwardedValid: true
    -isSafeContentPreferred: ? bool
    -trustedValuesCache: []
    -isIisRewrite: false
    basePath: ""
    format: "html"
  }
]
0.00 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#5804
  -pager: Propel\Runtime\Util\PropelModelPager {#5859
    #query: Thelia\Model\FolderQuery {#5802 …}
    #page: 0
    #maxPerPage: 30
    #lastPage: 0
    #nbResults: 0
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#5900 …}
    #con: null
  }
  storage: []
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/folders"
  "operation" => ApiPlatform\Metadata\GetCollection {#5781
    #parameters: ApiPlatform\Metadata\Parameters {#5782 …}
    #shortName: "Folder2"
    #class: "Thelia\Api\Resource\Folder"
    #description: null
    #urlGenerationStrategy: null
    #deprecationReason: null
    #normalizationContext: [
      "groups" => [
        "front:folder:read"
      ]
    ]
    #denormalizationContext: null
    #collectDenormalizationErrors: null
    #validationContext: null
    #filters: [
      "annotated_thelia_api_resource_folder_thelia_api_bridge_propel_filter_search_filter"
      "annotated_thelia_api_resource_folder_thelia_api_bridge_propel_filter_not_in_filter"
      "annotated_thelia_api_resource_folder_thelia_api_bridge_propel_filter_order_filter"
      "annotated_thelia_api_resource_folder_thelia_api_bridge_propel_filter_boolean_filter"
    ]
    #mercure: null
    #messenger: null
    #input: null
    #output: null
    #order: null
    #fetchPartial: null
    #forceEager: null
    #paginationEnabled: null
    #paginationType: null
    #paginationItemsPerPage: null
    #paginationMaximumItemsPerPage: 100
    #paginationPartial: null
    #paginationClientEnabled: null
    #paginationClientItemsPerPage: true
    #paginationClientPartial: null
    #paginationFetchJoinCollection: null
    #paginationUseOutputWalkers: null
    #security: null
    #securityMessage: null
    #securityPostDenormalize: null
    #securityPostDenormalizeMessage: null
    #securityPostValidation: null
    #securityPostValidationMessage: null
    #provider: "Thelia\Api\Bridge\Propel\State\PropelCollectionProvider"
    #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
    #stateOptions: null
    #rules: null
    #policy: null
    #middleware: null
    #queryParameterValidationEnabled: null
    #strictQueryParameterValidation: null
    #hideHydraOperation: null
    #jsonStream: null
    #map: null
    #extraProperties: [
      "deduplicate_resource_short_names" => true
      "user_defined_uri_template" => true
      "is_alternate_resource_metadata" => true
    ]
    #paginationViaCursor: null
    #read: null
    #deserialize: null
    #validate: null
    #write: null
    #serialize: null
    #contentNegotiation: null
    #priority: 0
    #name: "_api_/front/folders_get_collection"
    #formats: null
    #inputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #outputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #method: "GET"
    #uriTemplate: "/front/folders"
    #types: null
    #uriVariables: []
    #routePrefix: null
    #routeName: null
    #defaults: null
    #requirements: null
    #options: null
    #stateless: false
    #sunset: null
    #acceptPatch: null
    #status: null
    #host: null
    #schemes: null
    #condition: null
    #controller: "api_platform.symfony.main_controller"
    #headers: null
    #cacheHeaders: [
      "vary" => [
        "Content-Type"
        "Authorization"
        "Origin"
      ]
    ]
    #hydraContext: null
    #openapi: null
    #exceptionToStatus: null
    #links: null
    #errors: null
    -itemUriTemplate: null
  }
  "uri_variables" => []
  "resource_class" => "Thelia\Api\Resource\Folder"
  "filters" => [
    "parent" => 2
    "visible" => true
    "locale" => "fr_FR"
  ]
  "groups" => [
    "front:folder:read"
  ]
  "exclude_from_cache_key" => [
    "root_operation"
    "operation"
    "object"
    "data"
    "property_metadata"
    "circular_reference_limit_counters"
    "debug_trace_id"
    "extra_variables"
    "request"
  ]
  "extra_variables" => [
    "object" => Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#5804
      -pager: Propel\Runtime\Util\PropelModelPager {#5859
        #query: Thelia\Model\FolderQuery {#5802 …}
        #page: 0
        #maxPerPage: 30
        #lastPage: 0
        #nbResults: 0
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#5900 …}
        #con: null
      }
      storage: []
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#5746
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#5751 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#5749 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#5750 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#5754 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#5753 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#5752 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#5755 …}
    #content: null
    #languages: null
    #charsets: null
    #encodings: null
    #acceptableContentTypes: null
    #pathInfo: "/api/front/folders"
    #requestUri: "/api/front/folders"
    #baseUrl: ""
    #basePath: null
    #method: "GET"
    #format: null
    #session: null
    #locale: null
    #defaultLocale: "en"
    -preferredFormat: null
    -isHostValid: true
    -isForwardedValid: true
    -isSafeContentPreferred: ? bool
    -trustedValuesCache: []
    -isIisRewrite: false
    basePath: ""
    format: "html"
  }
]
0.01 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#6126
  -pager: Propel\Runtime\Util\PropelModelPager {#5949
    #query: Thelia\Model\ContentQuery {#5943 …}
    #page: 1
    #maxPerPage: 30
    #lastPage: 1
    #nbResults: 3
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#6077 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\Content {#6054
      +i18ns: Thelia\Api\Resource\I18nCollection {#6104 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Content {#6080 …}
      +id: 6
      +visible: true
      +position: null
      +contentFolders: [
        Thelia\Api\Resource\ContentFolder {#6122
          +content: Thelia\Api\Resource\Content {#6141 …}
          +folder: Thelia\Api\Resource\Folder {#6177 …}
          +defaultFolder: true
          +position: 1
          +createdAt: DateTime @1794052482 {#6107
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052482 {#6108
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ContentFolder {#6106 …}
        }
      ]
      +publishAt: null
      +unpublishAt: null
      +createdAt: DateTime @1794052482 {#6083
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052482 {#6060
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
    }
    Thelia\Api\Resource\Content {#6127
      +i18ns: Thelia\Api\Resource\I18nCollection {#6090 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Content {#6041 …}
      +id: 7
      +visible: true
      +position: null
      +contentFolders: [
        Thelia\Api\Resource\ContentFolder {#6176
          +content: Thelia\Api\Resource\Content {#6214 …}
          +folder: Thelia\Api\Resource\Folder {#6230 …}
          +defaultFolder: true
          +position: 2
          +createdAt: DateTime @1794052482 {#6110
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052482 {#6111
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ContentFolder {#6109 …}
        }
      ]
      +publishAt: null
      +unpublishAt: null
      +createdAt: DateTime @1794052482 {#6069
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052482 {#6039
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
    }
    Thelia\Api\Resource\Content {#6084
      +i18ns: Thelia\Api\Resource\I18nCollection {#6178 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Content {#6067 …}
      +id: 8
      +visible: true
      +position: null
      +contentFolders: [
        Thelia\Api\Resource\ContentFolder {#6216
          +content: Thelia\Api\Resource\Content {#6265 …}
          +folder: Thelia\Api\Resource\Folder {#6281 …}
          +defaultFolder: true
          +position: 3
          +createdAt: DateTime @1794052482 {#6113
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052482 {#6114
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ContentFolder {#6112 …}
        }
      ]
      +publishAt: null
      +unpublishAt: null
      +createdAt: DateTime @1794052482 {#6072
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052482 {#6081
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
    }
  ]
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/contents"
  "operation" => ApiPlatform\Metadata\GetCollection {#5923
    #parameters: ApiPlatform\Metadata\Parameters {#5924 …}
    #shortName: "Content2"
    #class: "Thelia\Api\Resource\Content"
    #description: null
    #urlGenerationStrategy: null
    #deprecationReason: null
    #normalizationContext: [
      "groups" => [
        "front:content:read"
      ]
    ]
    #denormalizationContext: null
    #collectDenormalizationErrors: null
    #validationContext: null
    #filters: [
      "annotated_thelia_api_resource_content_thelia_api_bridge_propel_filter_search_filter"
      "annotated_thelia_api_resource_content_thelia_api_bridge_propel_filter_not_in_filter"
      "annotated_thelia_api_resource_content_thelia_api_bridge_propel_filter_boolean_filter"
      "annotated_thelia_api_resource_content_thelia_api_bridge_propel_filter_order_filter"
    ]
    #mercure: null
    #messenger: null
    #input: null
    #output: null
    #order: null
    #fetchPartial: null
    #forceEager: null
    #paginationEnabled: null
    #paginationType: null
    #paginationItemsPerPage: null
    #paginationMaximumItemsPerPage: 100
    #paginationPartial: null
    #paginationClientEnabled: null
    #paginationClientItemsPerPage: true
    #paginationClientPartial: null
    #paginationFetchJoinCollection: null
    #paginationUseOutputWalkers: null
    #security: null
    #securityMessage: null
    #securityPostDenormalize: null
    #securityPostDenormalizeMessage: null
    #securityPostValidation: null
    #securityPostValidationMessage: null
    #provider: "Thelia\Api\Bridge\Propel\State\PropelCollectionProvider"
    #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
    #stateOptions: null
    #rules: null
    #policy: null
    #middleware: null
    #queryParameterValidationEnabled: null
    #strictQueryParameterValidation: null
    #hideHydraOperation: null
    #jsonStream: null
    #map: null
    #extraProperties: [
      "deduplicate_resource_short_names" => true
      "user_defined_uri_template" => true
      "is_alternate_resource_metadata" => true
    ]
    #paginationViaCursor: null
    #read: null
    #deserialize: null
    #validate: null
    #write: null
    #serialize: null
    #contentNegotiation: null
    #priority: 0
    #name: "_api_/front/contents_get_collection"
    #formats: null
    #inputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #outputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #method: "GET"
    #uriTemplate: "/front/contents"
    #types: null
    #uriVariables: []
    #routePrefix: null
    #routeName: null
    #defaults: null
    #requirements: null
    #options: null
    #stateless: false
    #sunset: null
    #acceptPatch: null
    #status: null
    #host: null
    #schemes: null
    #condition: null
    #controller: "api_platform.symfony.main_controller"
    #headers: null
    #cacheHeaders: [
      "vary" => [
        "Content-Type"
        "Authorization"
        "Origin"
      ]
    ]
    #hydraContext: null
    #openapi: null
    #exceptionToStatus: null
    #links: null
    #errors: null
    -itemUriTemplate: null
  }
  "uri_variables" => []
  "resource_class" => "Thelia\Api\Resource\Content"
  "filters" => [
    "contentFolders.folder.id" => 2
    "visible" => true
    "locale" => "fr_FR"
  ]
  "groups" => [
    "front:content:read"
  ]
  "exclude_from_cache_key" => [
    "root_operation"
    "operation"
    "object"
    "data"
    "property_metadata"
    "circular_reference_limit_counters"
    "debug_trace_id"
    "extra_variables"
    "request"
  ]
  "extra_variables" => [
    "object" => Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#6126
      -pager: Propel\Runtime\Util\PropelModelPager {#5949
        #query: Thelia\Model\ContentQuery {#5943 …}
        #page: 1
        #maxPerPage: 30
        #lastPage: 1
        #nbResults: 3
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#6077 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\Content {#6054
          +i18ns: Thelia\Api\Resource\I18nCollection {#6104 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Content {#6080 …}
          +id: 6
          +visible: true
          +position: null
          +contentFolders: [
            Thelia\Api\Resource\ContentFolder {#6122
              +content: Thelia\Api\Resource\Content {#6141 …}
              +folder: Thelia\Api\Resource\Folder {#6177 …}
              +defaultFolder: true
              +position: 1
              +createdAt: DateTime @1794052482 {#6107
                date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052482 {#6108
                date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ContentFolder {#6106 …}
            }
          ]
          +publishAt: null
          +unpublishAt: null
          +createdAt: DateTime @1794052482 {#6083
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052482 {#6060
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
        }
        Thelia\Api\Resource\Content {#6127
          +i18ns: Thelia\Api\Resource\I18nCollection {#6090 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Content {#6041 …}
          +id: 7
          +visible: true
          +position: null
          +contentFolders: [
            Thelia\Api\Resource\ContentFolder {#6176
              +content: Thelia\Api\Resource\Content {#6214 …}
              +folder: Thelia\Api\Resource\Folder {#6230 …}
              +defaultFolder: true
              +position: 2
              +createdAt: DateTime @1794052482 {#6110
                date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052482 {#6111
                date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ContentFolder {#6109 …}
            }
          ]
          +publishAt: null
          +unpublishAt: null
          +createdAt: DateTime @1794052482 {#6069
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052482 {#6039
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
        }
        Thelia\Api\Resource\Content {#6084
          +i18ns: Thelia\Api\Resource\I18nCollection {#6178 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Content {#6067 …}
          +id: 8
          +visible: true
          +position: null
          +contentFolders: [
            Thelia\Api\Resource\ContentFolder {#6216
              +content: Thelia\Api\Resource\Content {#6265 …}
              +folder: Thelia\Api\Resource\Folder {#6281 …}
              +defaultFolder: true
              +position: 3
              +createdAt: DateTime @1794052482 {#6113
                date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052482 {#6114
                date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ContentFolder {#6112 …}
            }
          ]
          +publishAt: null
          +unpublishAt: null
          +createdAt: DateTime @1794052482 {#6072
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052482 {#6081
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
        }
      ]
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#5800
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#5884 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#5890 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#5887 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#5803 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#5866 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#5881 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#5864 …}
    #content: null
    #languages: null
    #charsets: null
    #encodings: null
    #acceptableContentTypes: null
    #pathInfo: "/api/front/contents"
    #requestUri: "/api/front/contents"
    #baseUrl: ""
    #basePath: null
    #method: "GET"
    #format: null
    #session: null
    #locale: null
    #defaultLocale: "en"
    -preferredFormat: null
    -isHostValid: true
    -isForwardedValid: true
    -isSafeContentPreferred: ? bool
    -trustedValuesCache: []
    -isIisRewrite: false
    basePath: ""
    format: "html"
  }
]
ItemNormalizer (0.42 ms)
3.28 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#6713
  -pager: Propel\Runtime\Util\PropelModelPager {#6663
    #query: Thelia\Model\LangQuery {#6657 …}
    #page: 1
    #maxPerPage: 30
    #lastPage: 1
    #nbResults: 4
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#6667 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\Lang {#6705
      +id: 1
      +title: "Français"
      +code: "fr"
      +locale: "fr_FR"
      +url: ""
      +dateFormat: "d/m/Y"
      +timeFormat: "H:i:s"
      +datetimeFormat: "d/m/Y H:i:s"
      +decimalSeparator: ","
      +thousandsSeparator: " "
      +active: true
      +visible: true
      +decimals: "2"
      +byDefault: false
      +position: null
      +createdAt: DateTime @1794052452 {#3012
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052452 {#3013
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\Lang {#3011 …}
    }
    Thelia\Api\Resource\Lang {#6695
      +id: 2
      +title: "English"
      +code: "en"
      +locale: "en_US"
      +url: ""
      +dateFormat: "m-d-Y"
      +timeFormat: "h:i:s"
      +datetimeFormat: "m-d-Y h:i:s"
      +decimalSeparator: "."
      +thousandsSeparator: " "
      +active: true
      +visible: true
      +decimals: "2"
      +byDefault: true
      +position: null
      +createdAt: DateTime @1794052452 {#2961
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052452 {#2962
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\Lang {#2960 …}
    }
    Thelia\Api\Resource\Lang {#6709
      +id: 3
      +title: "Castellano"
      +code: "es"
      +locale: "es_ES"
      +url: ""
      +dateFormat: "m-d-Y"
      +timeFormat: "h:i:s"
      +datetimeFormat: "m-d-Y h:i:s"
      +decimalSeparator: ","
      +thousandsSeparator: "."
      +active: true
      +visible: true
      +decimals: "2"
      +byDefault: false
      +position: null
      +createdAt: DateTime @1794052452 {#3490
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052452 {#3491
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\Lang {#3489 …}
    }
    Thelia\Api\Resource\Lang {#6715
      +id: 4
      +title: "Italiano"
      +code: "it"
      +locale: "it_IT"
      +url: ""
      +dateFormat: "d/m/Y"
      +timeFormat: "H:i:s"
      +datetimeFormat: "d/m/y H:i:s"
      +decimalSeparator: ","
      +thousandsSeparator: " "
      +active: true
      +visible: true
      +decimals: "2"
      +byDefault: false
      +position: null
      +createdAt: DateTime @1794052452 {#3493
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052452 {#3494
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\Lang {#3492 …}
    }
  ]
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/languages"
  "operation" => ApiPlatform\Metadata\GetCollection {#6630
    #parameters: ApiPlatform\Metadata\Parameters {#6631 …}
    #shortName: "Lang2"
    #class: "Thelia\Api\Resource\Lang"
    #description: null
    #urlGenerationStrategy: null
    #deprecationReason: null
    #normalizationContext: [
      "groups" => [
        "front:lang:read"
      ]
    ]
    #denormalizationContext: null
    #collectDenormalizationErrors: null
    #validationContext: null
    #filters: [
      "annotated_thelia_api_resource_lang_thelia_api_bridge_propel_filter_boolean_filter"
      "annotated_thelia_api_resource_lang_thelia_api_bridge_propel_filter_order_filter"
      "annotated_thelia_api_resource_lang_thelia_api_bridge_propel_filter_search_filter"
      "annotated_thelia_api_resource_lang_thelia_api_bridge_propel_filter_not_in_filter"
    ]
    #mercure: null
    #messenger: null
    #input: null
    #output: null
    #order: null
    #fetchPartial: null
    #forceEager: null
    #paginationEnabled: null
    #paginationType: null
    #paginationItemsPerPage: null
    #paginationMaximumItemsPerPage: 100
    #paginationPartial: null
    #paginationClientEnabled: null
    #paginationClientItemsPerPage: true
    #paginationClientPartial: null
    #paginationFetchJoinCollection: null
    #paginationUseOutputWalkers: null
    #security: null
    #securityMessage: null
    #securityPostDenormalize: null
    #securityPostDenormalizeMessage: null
    #securityPostValidation: null
    #securityPostValidationMessage: null
    #provider: "Thelia\Api\Bridge\Propel\State\PropelCollectionProvider"
    #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
    #stateOptions: null
    #rules: null
    #policy: null
    #middleware: null
    #queryParameterValidationEnabled: null
    #strictQueryParameterValidation: null
    #hideHydraOperation: null
    #jsonStream: null
    #map: null
    #extraProperties: [
      "deduplicate_resource_short_names" => true
      "user_defined_uri_template" => true
      "is_alternate_resource_metadata" => true
    ]
    #paginationViaCursor: null
    #read: null
    #deserialize: null
    #validate: null
    #write: null
    #serialize: null
    #contentNegotiation: null
    #priority: 0
    #name: "_api_/front/languages_get_collection"
    #formats: null
    #inputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #outputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #method: "GET"
    #uriTemplate: "/front/languages"
    #types: null
    #uriVariables: []
    #routePrefix: null
    #routeName: null
    #defaults: null
    #requirements: null
    #options: null
    #stateless: false
    #sunset: null
    #acceptPatch: null
    #status: null
    #host: null
    #schemes: null
    #condition: null
    #controller: "api_platform.symfony.main_controller"
    #headers: null
    #cacheHeaders: [
      "vary" => [
        "Content-Type"
        "Authorization"
        "Origin"
      ]
    ]
    #hydraContext: null
    #openapi: null
    #exceptionToStatus: null
    #links: null
    #errors: null
    -itemUriTemplate: null
  }
  "uri_variables" => []
  "resource_class" => "Thelia\Api\Resource\Lang"
  "filters" => [
    "active" => true
    "locale" => "fr_FR"
  ]
  "groups" => [
    "front:lang:read"
  ]
  "exclude_from_cache_key" => [
    "root_operation"
    "operation"
    "object"
    "data"
    "property_metadata"
    "circular_reference_limit_counters"
    "debug_trace_id"
    "extra_variables"
    "request"
  ]
  "extra_variables" => [
    "object" => Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#6713
      -pager: Propel\Runtime\Util\PropelModelPager {#6663
        #query: Thelia\Model\LangQuery {#6657 …}
        #page: 1
        #maxPerPage: 30
        #lastPage: 1
        #nbResults: 4
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#6667 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\Lang {#6705
          +id: 1
          +title: "Français"
          +code: "fr"
          +locale: "fr_FR"
          +url: ""
          +dateFormat: "d/m/Y"
          +timeFormat: "H:i:s"
          +datetimeFormat: "d/m/Y H:i:s"
          +decimalSeparator: ","
          +thousandsSeparator: " "
          +active: true
          +visible: true
          +decimals: "2"
          +byDefault: false
          +position: null
          +createdAt: DateTime @1794052452 {#3012
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052452 {#3013
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\Lang {#3011 …}
        }
        Thelia\Api\Resource\Lang {#6695
          +id: 2
          +title: "English"
          +code: "en"
          +locale: "en_US"
          +url: ""
          +dateFormat: "m-d-Y"
          +timeFormat: "h:i:s"
          +datetimeFormat: "m-d-Y h:i:s"
          +decimalSeparator: "."
          +thousandsSeparator: " "
          +active: true
          +visible: true
          +decimals: "2"
          +byDefault: true
          +position: null
          +createdAt: DateTime @1794052452 {#2961
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052452 {#2962
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\Lang {#2960 …}
        }
        Thelia\Api\Resource\Lang {#6709
          +id: 3
          +title: "Castellano"
          +code: "es"
          +locale: "es_ES"
          +url: ""
          +dateFormat: "m-d-Y"
          +timeFormat: "h:i:s"
          +datetimeFormat: "m-d-Y h:i:s"
          +decimalSeparator: ","
          +thousandsSeparator: "."
          +active: true
          +visible: true
          +decimals: "2"
          +byDefault: false
          +position: null
          +createdAt: DateTime @1794052452 {#3490
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052452 {#3491
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\Lang {#3489 …}
        }
        Thelia\Api\Resource\Lang {#6715
          +id: 4
          +title: "Italiano"
          +code: "it"
          +locale: "it_IT"
          +url: ""
          +dateFormat: "d/m/Y"
          +timeFormat: "H:i:s"
          +datetimeFormat: "d/m/y H:i:s"
          +decimalSeparator: ","
          +thousandsSeparator: " "
          +active: true
          +visible: true
          +decimals: "2"
          +byDefault: false
          +position: null
          +createdAt: DateTime @1794052452 {#3493
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052452 {#3494
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\Lang {#3492 …}
        }
      ]
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#6597
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#6600 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#6598 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#6599 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#6603 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#6602 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#6601 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#6604 …}
    #content: null
    #languages: null
    #charsets: null
    #encodings: null
    #acceptableContentTypes: null
    #pathInfo: "/api/front/languages"
    #requestUri: "/api/front/languages"
    #baseUrl: ""
    #basePath: null
    #method: "GET"
    #format: null
    #session: null
    #locale: null
    #defaultLocale: "en"
    -preferredFormat: null
    -isHostValid: true
    -isForwardedValid: true
    -isSafeContentPreferred: ? bool
    -trustedValuesCache: []
    -isIisRewrite: false
    basePath: ""
    format: "html"
  }
]
ItemNormalizer (0.10 ms) 1.06 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#7175
  -pager: Propel\Runtime\Util\PropelModelPager {#7093
    #query: Thelia\Model\CurrencyQuery {#6977 …}
    #page: 1
    #maxPerPage: 30
    #lastPage: 1
    #nbResults: 3
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#7125 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\Currency {#7151
      +i18ns: Thelia\Api\Resource\I18nCollection {#7153 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Currency {#3630 …}
      +id: 1
      +code: "EUR"
      +isocodeNumeric: "978"
      +symbol: "€"
      +format: "%n %s"
      +rate: 1.0
      +position: 1
      +visible: true
      +byDefault: true
      +createdAt: DateTime @1794052452 {#3634
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052452 {#3635
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
    }
    Thelia\Api\Resource\Currency {#7146
      +i18ns: Thelia\Api\Resource\I18nCollection {#7164 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Currency {#7129 …}
      +id: 2
      +code: "USD"
      +isocodeNumeric: "840"
      +symbol: "$"
      +format: "%s%n"
      +rate: 1.26
      +position: 2
      +visible: true
      +byDefault: false
      +createdAt: DateTime @1794052452 {#7124
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052452 {#7111
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
    }
    Thelia\Api\Resource\Currency {#7165
      +i18ns: Thelia\Api\Resource\I18nCollection {#7176 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Currency {#7134 …}
      +id: 3
      +code: "GBP"
      +isocodeNumeric: "826"
      +symbol: "£"
      +format: "%s%n"
      +rate: 0.89
      +position: 3
      +visible: true
      +byDefault: false
      +createdAt: DateTime @1794052452 {#7133
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052452 {#7135
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
    }
  ]
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/currencies"
  "operation" => ApiPlatform\Metadata\GetCollection {#6956
    #parameters: ApiPlatform\Metadata\Parameters {#6957 …}
    #shortName: "Currency2"
    #class: "Thelia\Api\Resource\Currency"
    #description: null
    #urlGenerationStrategy: null
    #deprecationReason: null
    #normalizationContext: [
      "groups" => [
        "front:currency:read"
      ]
    ]
    #denormalizationContext: null
    #collectDenormalizationErrors: null
    #validationContext: null
    #filters: [
      "annotated_thelia_api_resource_currency_thelia_api_bridge_propel_filter_order_filter"
      "annotated_thelia_api_resource_currency_thelia_api_bridge_propel_filter_boolean_filter"
      "annotated_thelia_api_resource_currency_thelia_api_bridge_propel_filter_search_filter"
      "annotated_thelia_api_resource_currency_thelia_api_bridge_propel_filter_not_in_filter"
    ]
    #mercure: null
    #messenger: null
    #input: null
    #output: null
    #order: null
    #fetchPartial: null
    #forceEager: null
    #paginationEnabled: null
    #paginationType: null
    #paginationItemsPerPage: null
    #paginationMaximumItemsPerPage: 100
    #paginationPartial: null
    #paginationClientEnabled: null
    #paginationClientItemsPerPage: true
    #paginationClientPartial: null
    #paginationFetchJoinCollection: null
    #paginationUseOutputWalkers: null
    #security: null
    #securityMessage: null
    #securityPostDenormalize: null
    #securityPostDenormalizeMessage: null
    #securityPostValidation: null
    #securityPostValidationMessage: null
    #provider: "Thelia\Api\Bridge\Propel\State\PropelCollectionProvider"
    #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
    #stateOptions: null
    #rules: null
    #policy: null
    #middleware: null
    #queryParameterValidationEnabled: null
    #strictQueryParameterValidation: null
    #hideHydraOperation: null
    #jsonStream: null
    #map: null
    #extraProperties: [
      "deduplicate_resource_short_names" => true
      "user_defined_uri_template" => true
      "is_alternate_resource_metadata" => true
    ]
    #paginationViaCursor: null
    #read: null
    #deserialize: null
    #validate: null
    #write: null
    #serialize: null
    #contentNegotiation: null
    #priority: 0
    #name: "_api_/front/currencies_get_collection"
    #formats: null
    #inputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #outputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #method: "GET"
    #uriTemplate: "/front/currencies"
    #types: null
    #uriVariables: []
    #routePrefix: null
    #routeName: null
    #defaults: null
    #requirements: null
    #options: null
    #stateless: false
    #sunset: null
    #acceptPatch: null
    #status: null
    #host: null
    #schemes: null
    #condition: null
    #controller: "api_platform.symfony.main_controller"
    #headers: null
    #cacheHeaders: [
      "vary" => [
        "Content-Type"
        "Authorization"
        "Origin"
      ]
    ]
    #hydraContext: null
    #openapi: null
    #exceptionToStatus: null
    #links: null
    #errors: null
    -itemUriTemplate: null
  }
  "uri_variables" => []
  "resource_class" => "Thelia\Api\Resource\Currency"
  "filters" => [
    "visible" => true
    "locale" => "fr_FR"
  ]
  "groups" => [
    "front:currency:read"
  ]
  "exclude_from_cache_key" => [
    "root_operation"
    "operation"
    "object"
    "data"
    "property_metadata"
    "circular_reference_limit_counters"
    "debug_trace_id"
    "extra_variables"
    "request"
  ]
  "extra_variables" => [
    "object" => Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#7175
      -pager: Propel\Runtime\Util\PropelModelPager {#7093
        #query: Thelia\Model\CurrencyQuery {#6977 …}
        #page: 1
        #maxPerPage: 30
        #lastPage: 1
        #nbResults: 3
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#7125 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\Currency {#7151
          +i18ns: Thelia\Api\Resource\I18nCollection {#7153 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Currency {#3630 …}
          +id: 1
          +code: "EUR"
          +isocodeNumeric: "978"
          +symbol: "€"
          +format: "%n %s"
          +rate: 1.0
          +position: 1
          +visible: true
          +byDefault: true
          +createdAt: DateTime @1794052452 {#3634
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052452 {#3635
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
        }
        Thelia\Api\Resource\Currency {#7146
          +i18ns: Thelia\Api\Resource\I18nCollection {#7164 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Currency {#7129 …}
          +id: 2
          +code: "USD"
          +isocodeNumeric: "840"
          +symbol: "$"
          +format: "%s%n"
          +rate: 1.26
          +position: 2
          +visible: true
          +byDefault: false
          +createdAt: DateTime @1794052452 {#7124
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052452 {#7111
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
        }
        Thelia\Api\Resource\Currency {#7165
          +i18ns: Thelia\Api\Resource\I18nCollection {#7176 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Currency {#7134 …}
          +id: 3
          +code: "GBP"
          +isocodeNumeric: "826"
          +symbol: "£"
          +format: "%s%n"
          +rate: 0.89
          +position: 3
          +visible: true
          +byDefault: false
          +createdAt: DateTime @1794052452 {#7133
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052452 {#7135
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
        }
      ]
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#6923
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#6926 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#6924 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#6925 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#6929 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#6928 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#6927 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#6930 …}
    #content: null
    #languages: null
    #charsets: null
    #encodings: null
    #acceptableContentTypes: null
    #pathInfo: "/api/front/currencies"
    #requestUri: "/api/front/currencies"
    #baseUrl: ""
    #basePath: null
    #method: "GET"
    #format: null
    #session: null
    #locale: null
    #defaultLocale: "en"
    -preferredFormat: null
    -isHostValid: true
    -isForwardedValid: true
    -isSafeContentPreferred: ? bool
    -trustedValuesCache: []
    -isIisRewrite: false
    basePath: ""
    format: "html"
  }
]
ItemNormalizer (0.19 ms) 1.34 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#7796
  -pager: Propel\Runtime\Util\PropelModelPager {#7795
    #query: HeaderHighlights\Model\HeaderHighlightsImageQuery {#7724 …}
    #page: 0
    #maxPerPage: 30
    #lastPage: 0
    #nbResults: 0
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#7825 …}
    #con: null
  }
  storage: []
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/header-highlights"
  "operation" => ApiPlatform\Metadata\GetCollection {#7699
    #parameters: ApiPlatform\Metadata\Parameters {#7700 …}
    #shortName: "HeaderHighlightsImage"
    #class: "HeaderHighlights\Api\Resource\HeaderHighlightsImage"
    #description: null
    #urlGenerationStrategy: null
    #deprecationReason: null
    #normalizationContext: [
      "groups" => [
        "header:highlights:image:read"
      ]
    ]
    #denormalizationContext: null
    #collectDenormalizationErrors: null
    #validationContext: null
    #filters: [
      "annotated_header_highlights_api_resource_header_highlights_image_thelia_api_bridge_propel_filter_search_filter"
      "annotated_header_highlights_api_resource_header_highlights_image_thelia_api_bridge_propel_filter_boolean_filter"
      "annotated_header_highlights_api_resource_header_highlights_image_thelia_api_bridge_propel_filter_order_filter"
    ]
    #mercure: null
    #messenger: null
    #input: null
    #output: null
    #order: null
    #fetchPartial: null
    #forceEager: null
    #paginationEnabled: null
    #paginationType: null
    #paginationItemsPerPage: null
    #paginationMaximumItemsPerPage: 100
    #paginationPartial: null
    #paginationClientEnabled: null
    #paginationClientItemsPerPage: true
    #paginationClientPartial: null
    #paginationFetchJoinCollection: null
    #paginationUseOutputWalkers: null
    #security: null
    #securityMessage: null
    #securityPostDenormalize: null
    #securityPostDenormalizeMessage: null
    #securityPostValidation: null
    #securityPostValidationMessage: null
    #provider: "Thelia\Api\Bridge\Propel\State\PropelCollectionProvider"
    #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
    #stateOptions: null
    #rules: null
    #policy: null
    #middleware: null
    #queryParameterValidationEnabled: null
    #strictQueryParameterValidation: null
    #hideHydraOperation: null
    #jsonStream: null
    #map: null
    #extraProperties: [
      "deduplicate_resource_short_names" => true
      "user_defined_uri_template" => true
    ]
    #paginationViaCursor: null
    #read: null
    #deserialize: null
    #validate: null
    #write: null
    #serialize: null
    #contentNegotiation: null
    #priority: 0
    #name: "api_header_highlights_get_collection"
    #formats: null
    #inputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #outputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #method: "GET"
    #uriTemplate: "/header-highlights"
    #types: null
    #uriVariables: []
    #routePrefix: null
    #routeName: null
    #defaults: null
    #requirements: null
    #options: null
    #stateless: false
    #sunset: null
    #acceptPatch: null
    #status: null
    #host: null
    #schemes: null
    #condition: null
    #controller: "api_platform.symfony.main_controller"
    #headers: null
    #cacheHeaders: [
      "vary" => [
        "Content-Type"
        "Authorization"
        "Origin"
      ]
    ]
    #hydraContext: null
    #openapi: null
    #exceptionToStatus: null
    #links: null
    #errors: null
    -itemUriTemplate: null
  }
  "uri_variables" => []
  "resource_class" => "HeaderHighlights\Api\Resource\HeaderHighlightsImage"
  "filters" => [
    "locale" => "fr_FR"
  ]
  "groups" => [
    "header:highlights:image:read"
  ]
  "exclude_from_cache_key" => [
    "root_operation"
    "operation"
    "object"
    "data"
    "property_metadata"
    "circular_reference_limit_counters"
    "debug_trace_id"
    "extra_variables"
    "request"
  ]
  "extra_variables" => [
    "object" => Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#7796
      -pager: Propel\Runtime\Util\PropelModelPager {#7795
        #query: HeaderHighlights\Model\HeaderHighlightsImageQuery {#7724 …}
        #page: 0
        #maxPerPage: 30
        #lastPage: 0
        #nbResults: 0
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#7825 …}
        #con: null
      }
      storage: []
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#7678
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#3991 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#7541 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#3988 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#7692 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#7691 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#4135 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#7693 …}
    #content: null
    #languages: null
    #charsets: null
    #encodings: null
    #acceptableContentTypes: null
    #pathInfo: "/api/header-highlights"
    #requestUri: "/api/header-highlights"
    #baseUrl: ""
    #basePath: null
    #method: "GET"
    #format: null
    #session: null
    #locale: null
    #defaultLocale: "en"
    -preferredFormat: null
    -isHostValid: true
    -isForwardedValid: true
    -isSafeContentPreferred: ? bool
    -trustedValuesCache: []
    -isIisRewrite: false
    basePath: ""
    format: "html"
  }
]
0.01 ms
Thelia\Api\Resource\Product
Thelia\Api\Resource\Product {#8360
  +i18ns: Thelia\Api\Resource\I18nCollection {#8066 …}
  #resourceAddons: [
    "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#8058
      +libraryImages: []
      -context: [
        "path_info" => "/api/front/products/5"
        "operation" => ApiPlatform\Metadata\Get {#7848
          #parameters: ApiPlatform\Metadata\Parameters {#7834 …}
          #shortName: "Product2"
          #class: "Thelia\Api\Resource\Product"
          #description: null
          #urlGenerationStrategy: null
          #deprecationReason: null
          #normalizationContext: [
            "groups" => [
              "front:product:read"
              "front:product:read:single"
            ]
          ]
          #denormalizationContext: null
          #collectDenormalizationErrors: null
          #validationContext: null
          #filters: [
            "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_search_filter"
            "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_boolean_filter"
            "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_order_filter"
            "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_custom_filters_thelia_filter"
            "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_not_in_filter"
            "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_custom_filters_product_filter_product_price_order_filter"
            "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_custom_filters_product_filter_product_title_order_filter"
            "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_custom_filters_product_filter_depth_product_filter"
            "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_range_filter"
            "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_date_filter"
          ]
          #mercure: null
          #messenger: null
          #input: null
          #output: null
          #order: null
          #fetchPartial: null
          #forceEager: null
          #paginationEnabled: null
          #paginationType: null
          #paginationItemsPerPage: null
          #paginationMaximumItemsPerPage: 100
          #paginationPartial: null
          #paginationClientEnabled: null
          #paginationClientItemsPerPage: true
          #paginationClientPartial: null
          #paginationFetchJoinCollection: null
          #paginationUseOutputWalkers: null
          #security: null
          #securityMessage: null
          #securityPostDenormalize: null
          #securityPostDenormalizeMessage: null
          #securityPostValidation: null
          #securityPostValidationMessage: null
          #provider: "Thelia\Api\Bridge\Propel\State\PropelItemProvider"
          #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
          #stateOptions: null
          #rules: null
          #policy: null
          #middleware: null
          #queryParameterValidationEnabled: null
          #strictQueryParameterValidation: null
          #hideHydraOperation: null
          #jsonStream: null
          #map: null
          #extraProperties: [
            "deduplicate_resource_short_names" => true
            "user_defined_uri_template" => true
            "is_alternate_resource_metadata" => true
          ]
          #paginationViaCursor: null
          #read: null
          #deserialize: null
          #validate: null
          #write: null
          #serialize: null
          #contentNegotiation: null
          #priority: 1
          #name: "_api_/front/products/{id}_get"
          #formats: null
          #inputFormats: [
            "json" => [
              "application/json"
              "application/json"
              "application/json"
            ]
            "jsonld" => [
              "application/ld+json"
              "application/ld+json"
              "application/ld+json"
            ]
            "html" => [
              "text/html"
              "text/html"
              "text/html"
            ]
          ]
          #outputFormats: [
            "json" => [
              "application/json"
              "application/json"
              "application/json"
            ]
            "jsonld" => [
              "application/ld+json"
              "application/ld+json"
              "application/ld+json"
            ]
            "html" => [
              "text/html"
              "text/html"
              "text/html"
            ]
          ]
          #method: "GET"
          #uriTemplate: "/front/products/{id}"
          #types: null
          #uriVariables: [
            "id" => ApiPlatform\Metadata\Link {#7835
              #key: null
              #schema: null
              #openApi: null
              #provider: null
              #filter: null
              #property: null
              #description: null
              #properties: null
              #required: null
              #priority: null
              #hydra: null
              #constraints: null
              #security: null
              #securityMessage: null
              #extraProperties: []
              #filterContext: null
              #nativeType: null
              #castToArray: null
              #castToNativeType: null
              #castFn: null
              #default: null
              #filterClass: null
              -parameterName: "id"
              -fromProperty: null
              -toProperty: null
              -fromClass: "Thelia\Api\Resource\Product"
              -toClass: null
              -identifiers: [
                "id"
              ]
              -compositeIdentifier: null
              -expandedValue: null
              -securityObjectName: null
            }
          ]
          #routePrefix: null
          #routeName: null
          #defaults: null
          #requirements: null
          #options: null
          #stateless: false
          #sunset: null
          #acceptPatch: null
          #status: null
          #host: null
          #schemes: null
          #condition: null
          #controller: "api_platform.symfony.main_controller"
          #headers: null
          #cacheHeaders: [
            "vary" => [
              "Content-Type"
              "Authorization"
              "Origin"
            ]
          ]
          #hydraContext: null
          #openapi: null
          #exceptionToStatus: null
          #links: null
          #errors: null
        }
        "uri_variables" => [
          "id" => "5"
        ]
        "resource_class" => "Thelia\Api\Resource\Product"
        "filters" => [
          "locale" => "fr_FR"
        ]
        "groups" => [
          "front:product:read"
          "front:product:read:single"
        ]
        "exclude_from_cache_key" => [
          "root_operation"
          "operation"
          "object"
          "data"
          "property_metadata"
          "circular_reference_limit_counters"
          "debug_trace_id"
          "extra_variables"
          "request"
        ]
        "__visited" => [
          "Thelia\Api\Resource\Product#5@960270736c79c3e26e655b9e8bc5a0c1" => true
        ]
        "__path" => [
          "Thelia\Api\Resource\Product"
        ]
        "__depth" => 1
        "enable_max_depth" => true
        "max_depth" => 10
      ]
    }
  ]
  -propelModel: Thelia\Model\Product {#3244 …}
  +id: 5
  +taxRule: Thelia\Api\Resource\TaxRule {#8474 …}
  +ref: "PROD005"
  +visible: true
  +position: 0
  +template: null
  +brand: Thelia\Api\Resource\Brand {#8511 …}
  +virtual: false
  +shippingSurcharge: 0.0
  +shippingSurchargeMode: 0
  +freeShipping: false
  +createdAt: DateTime @1791802483 {#3243
    date: 2026-10-12 12:54:43.0 Europe/Paris (+02:00)
  }
  +updatedAt: DateTime @1794052483 {#3242
    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
  }
  +productCategories: [
    Thelia\Api\Resource\ProductCategory {#8443
      +category: Thelia\Api\Resource\Category {#8540 …}
      +product: Thelia\Api\Resource\Product {#8542 …}
      +defaultCategory: true
      +position: 1
      +createdAt: DateTime @1794052483 {#3345
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052483 {#3346
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductCategory {#3344 …}
    }
  ]
  +productSaleElements: [
    Thelia\Api\Resource\ProductSaleElements {#8564
      +id: 17
      +product: ? Thelia\Api\Resource\Product
      +ref: "PROD005-0"
      +quantity: 32
      +visible: true
      +position: 1
      +promo: false
      +displayInitialPrice: null
      +newness: false
      +weight: 13.7
      +isDefault: true
      +eanCode: null
      +mpn: null
      +manufacturerBrand: null
      +gtinSharedWith: []
      +productPrices: [
        Thelia\Api\Resource\ProductPrice {#8597
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8611 …}
          +currency: Thelia\Api\Resource\Currency {#8621 …}
          +price: 395.0
          +promoPrice: 0.0
          +fromDefaultCurrency: true
          +createdAt: DateTime @1794052483 {#3651
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3650
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductPrice {#3648 …}
        }
      ]
      +attributeCombinations: [
        Thelia\Api\Resource\AttributeCombination {#8620
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8605 …}
          +attribute: Thelia\Api\Resource\Attribute {#8654 …}
          +attributeAv: Thelia\Api\Resource\AttributeAv {#8651 …}
          +position: null
          +createdAt: DateTime @1794052483 {#3949
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3948
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\AttributeCombination {#3950 …}
        }
      ]
      +createdAt: DateTime @1794052483 {#3601
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052483 {#3600
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductSaleElements {#3598 …}
    }
    Thelia\Api\Resource\ProductSaleElements {#8515
      +id: 18
      +product: ? Thelia\Api\Resource\Product
      +ref: "PROD005-1"
      +quantity: 33
      +visible: true
      +position: 2
      +promo: false
      +displayInitialPrice: null
      +newness: true
      +weight: 13.8
      +isDefault: false
      +eanCode: null
      +mpn: null
      +manufacturerBrand: null
      +gtinSharedWith: []
      +productPrices: [
        Thelia\Api\Resource\ProductPrice {#8608
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8714 …}
          +currency: Thelia\Api\Resource\Currency {#8724 …}
          +price: 395.0
          +promoPrice: 0.0
          +fromDefaultCurrency: true
          +createdAt: DateTime @1794052483 {#3652
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3655
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductPrice {#3653 …}
        }
      ]
      +attributeCombinations: [
        Thelia\Api\Resource\AttributeCombination {#8723
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8708 …}
          +attribute: Thelia\Api\Resource\Attribute {#8757 …}
          +attributeAv: Thelia\Api\Resource\AttributeAv {#8754 …}
          +position: null
          +createdAt: DateTime @1794052483 {#3946
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3945
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\AttributeCombination {#3947 …}
        }
      ]
      +createdAt: DateTime @1794052483 {#3608
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052483 {#3606
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductSaleElements {#3604 …}
    }
    Thelia\Api\Resource\ProductSaleElements {#8586
      +id: 19
      +product: ? Thelia\Api\Resource\Product
      +ref: "PROD005-2"
      +quantity: 34
      +visible: true
      +position: 3
      +promo: false
      +displayInitialPrice: null
      +newness: false
      +weight: 13.9
      +isDefault: false
      +eanCode: null
      +mpn: null
      +manufacturerBrand: null
      +gtinSharedWith: []
      +productPrices: [
        Thelia\Api\Resource\ProductPrice {#8711
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8811 …}
          +currency: Thelia\Api\Resource\Currency {#8821 …}
          +price: 395.0
          +promoPrice: 0.0
          +fromDefaultCurrency: true
          +createdAt: DateTime @1794052483 {#3817
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3794
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductPrice {#3802 …}
        }
      ]
      +attributeCombinations: [
        Thelia\Api\Resource\AttributeCombination {#8820
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8805 …}
          +attribute: Thelia\Api\Resource\Attribute {#8854 …}
          +attributeAv: Thelia\Api\Resource\AttributeAv {#8851 …}
          +position: null
          +createdAt: DateTime @1794052483 {#3943
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3942
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\AttributeCombination {#3944 …}
        }
      ]
      +createdAt: DateTime @1794052483 {#3615
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052483 {#3612
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductSaleElements {#3610 …}
    }
    Thelia\Api\Resource\ProductSaleElements {#8664
      +id: 20
      +product: ? Thelia\Api\Resource\Product
      +ref: "PROD005-3"
      +quantity: 35
      +visible: true
      +position: 4
      +promo: false
      +displayInitialPrice: null
      +newness: false
      +weight: 14.0
      +isDefault: false
      +eanCode: null
      +mpn: null
      +manufacturerBrand: null
      +gtinSharedWith: []
      +productPrices: [
        Thelia\Api\Resource\ProductPrice {#8808
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8908 …}
          +currency: Thelia\Api\Resource\Currency {#8918 …}
          +price: 395.0
          +promoPrice: 0.0
          +fromDefaultCurrency: true
          +createdAt: DateTime @1794052483 {#3672
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3669
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductPrice {#3804 …}
        }
      ]
      +attributeCombinations: [
        Thelia\Api\Resource\AttributeCombination {#8917
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8902 …}
          +attribute: Thelia\Api\Resource\Attribute {#8951 …}
          +attributeAv: Thelia\Api\Resource\AttributeAv {#8948 …}
          +position: null
          +createdAt: DateTime @1794052483 {#3940
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3939
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\AttributeCombination {#3941 …}
        }
      ]
      +createdAt: DateTime @1794052483 {#3611
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052483 {#3617
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductSaleElements {#3613 …}
    }
    Thelia\Api\Resource\ProductSaleElements {#8767
      +id: 21
      +product: ? Thelia\Api\Resource\Product
      +ref: "PROD005-4"
      +quantity: 36
      +visible: true
      +position: 5
      +promo: false
      +displayInitialPrice: null
      +newness: false
      +weight: 14.1
      +isDefault: false
      +eanCode: null
      +mpn: null
      +manufacturerBrand: null
      +gtinSharedWith: []
      +productPrices: [
        Thelia\Api\Resource\ProductPrice {#8905
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9005 …}
          +currency: Thelia\Api\Resource\Currency {#9015 …}
          +price: 395.0
          +promoPrice: 0.0
          +fromDefaultCurrency: true
          +createdAt: DateTime @1794052483 {#3671
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3676
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductPrice {#3674 …}
        }
      ]
      +attributeCombinations: [
        Thelia\Api\Resource\AttributeCombination {#9014
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8999 …}
          +attribute: Thelia\Api\Resource\Attribute {#9048 …}
          +attributeAv: Thelia\Api\Resource\AttributeAv {#9045 …}
          +position: null
          +createdAt: DateTime @1794052483 {#3937
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3936
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\AttributeCombination {#3938 …}
        }
      ]
      +createdAt: DateTime @1794052483 {#3614
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052483 {#3619
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductSaleElements {#3616 …}
    }
    Thelia\Api\Resource\ProductSaleElements {#8864
      +id: 22
      +product: ? Thelia\Api\Resource\Product
      +ref: "PROD005-5"
      +quantity: 37
      +visible: true
      +position: 6
      +promo: false
      +displayInitialPrice: null
      +newness: true
      +weight: 14.2
      +isDefault: false
      +eanCode: null
      +mpn: null
      +manufacturerBrand: null
      +gtinSharedWith: []
      +productPrices: [
        Thelia\Api\Resource\ProductPrice {#9002
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9102 …}
          +currency: Thelia\Api\Resource\Currency {#9112 …}
          +price: 395.0
          +promoPrice: 0.0
          +fromDefaultCurrency: true
          +createdAt: DateTime @1794052483 {#3678
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3675
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductPrice {#3673 …}
        }
      ]
      +attributeCombinations: [
        Thelia\Api\Resource\AttributeCombination {#9111
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9096 …}
          +attribute: Thelia\Api\Resource\Attribute {#9145 …}
          +attributeAv: Thelia\Api\Resource\AttributeAv {#9142 …}
          +position: null
          +createdAt: DateTime @1794052483 {#3934
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3933
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\AttributeCombination {#3935 …}
        }
      ]
      +createdAt: DateTime @1794052483 {#3621
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052483 {#3618
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductSaleElements {#3623 …}
    }
  ]
  +featureProducts: [
    Thelia\Api\Resource\FeatureProduct {#8961
      +id: 7
      +product: ? Thelia\Api\Resource\Product
      +feature: Thelia\Api\Resource\Feature {#8959 …}
      +featureAv: Thelia\Api\Resource\FeatureAv {#9157 …}
      +free_text_value: ? string
      +is_free_text: false
      +locale: null
      +position: null
      +createdAt: DateTime @1794052483 {#8396
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052483 {#8394
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\FeatureProduct {#8299 …}
    }
    Thelia\Api\Resource\FeatureProduct {#8765
      +id: 8
      +product: ? Thelia\Api\Resource\Product
      +feature: Thelia\Api\Resource\Feature {#9208 …}
      +featureAv: Thelia\Api\Resource\FeatureAv {#9209 …}
      +free_text_value: ? string
      +is_free_text: false
      +locale: null
      +position: null
      +createdAt: DateTime @1794052483 {#8309
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052483 {#8285
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\FeatureProduct {#8398 …}
    }
  ]
  +productAssociatedContents: [
    Thelia\Api\Resource\ProductAssociatedContent {#9053
      +id: 3
      +product: ? Thelia\Api\Resource\Product
      +content: Thelia\Api\Resource\Content {#9032 …}
      +position: 1
      +createdAt: DateTime @1794052483 {#8302
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052483 {#8303
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductAssociatedContent {#8347 …}
    }
  ]
}
Format: none
[
  "path_info" => "/api/front/products/5"
  "operation" => ApiPlatform\Metadata\Get {#7848
    #parameters: ApiPlatform\Metadata\Parameters {#7834 …}
    #shortName: "Product2"
    #class: "Thelia\Api\Resource\Product"
    #description: null
    #urlGenerationStrategy: null
    #deprecationReason: null
    #normalizationContext: [
      "groups" => [
        "front:product:read"
        "front:product:read:single"
      ]
    ]
    #denormalizationContext: null
    #collectDenormalizationErrors: null
    #validationContext: null
    #filters: [
      "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_search_filter"
      "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_boolean_filter"
      "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_order_filter"
      "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_custom_filters_thelia_filter"
      "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_not_in_filter"
      "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_custom_filters_product_filter_product_price_order_filter"
      "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_custom_filters_product_filter_product_title_order_filter"
      "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_custom_filters_product_filter_depth_product_filter"
      "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_range_filter"
      "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_date_filter"
    ]
    #mercure: null
    #messenger: null
    #input: null
    #output: null
    #order: null
    #fetchPartial: null
    #forceEager: null
    #paginationEnabled: null
    #paginationType: null
    #paginationItemsPerPage: null
    #paginationMaximumItemsPerPage: 100
    #paginationPartial: null
    #paginationClientEnabled: null
    #paginationClientItemsPerPage: true
    #paginationClientPartial: null
    #paginationFetchJoinCollection: null
    #paginationUseOutputWalkers: null
    #security: null
    #securityMessage: null
    #securityPostDenormalize: null
    #securityPostDenormalizeMessage: null
    #securityPostValidation: null
    #securityPostValidationMessage: null
    #provider: "Thelia\Api\Bridge\Propel\State\PropelItemProvider"
    #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
    #stateOptions: null
    #rules: null
    #policy: null
    #middleware: null
    #queryParameterValidationEnabled: null
    #strictQueryParameterValidation: null
    #hideHydraOperation: null
    #jsonStream: null
    #map: null
    #extraProperties: [
      "deduplicate_resource_short_names" => true
      "user_defined_uri_template" => true
      "is_alternate_resource_metadata" => true
    ]
    #paginationViaCursor: null
    #read: null
    #deserialize: null
    #validate: null
    #write: null
    #serialize: null
    #contentNegotiation: null
    #priority: 1
    #name: "_api_/front/products/{id}_get"
    #formats: null
    #inputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #outputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #method: "GET"
    #uriTemplate: "/front/products/{id}"
    #types: null
    #uriVariables: [
      "id" => ApiPlatform\Metadata\Link {#7835
        #key: null
        #schema: null
        #openApi: null
        #provider: null
        #filter: null
        #property: null
        #description: null
        #properties: null
        #required: null
        #priority: null
        #hydra: null
        #constraints: null
        #security: null
        #securityMessage: null
        #extraProperties: []
        #filterContext: null
        #nativeType: null
        #castToArray: null
        #castToNativeType: null
        #castFn: null
        #default: null
        #filterClass: null
        -parameterName: "id"
        -fromProperty: null
        -toProperty: null
        -fromClass: "Thelia\Api\Resource\Product"
        -toClass: null
        -identifiers: [
          "id"
        ]
        -compositeIdentifier: null
        -expandedValue: null
        -securityObjectName: null
      }
    ]
    #routePrefix: null
    #routeName: null
    #defaults: null
    #requirements: null
    #options: null
    #stateless: false
    #sunset: null
    #acceptPatch: null
    #status: null
    #host: null
    #schemes: null
    #condition: null
    #controller: "api_platform.symfony.main_controller"
    #headers: null
    #cacheHeaders: [
      "vary" => [
        "Content-Type"
        "Authorization"
        "Origin"
      ]
    ]
    #hydraContext: null
    #openapi: null
    #exceptionToStatus: null
    #links: null
    #errors: null
  }
  "uri_variables" => [
    "id" => "5"
  ]
  "resource_class" => "Thelia\Api\Resource\Product"
  "filters" => [
    "locale" => "fr_FR"
  ]
  "groups" => [
    "front:product:read"
    "front:product:read:single"
  ]
  "exclude_from_cache_key" => [
    "root_operation"
    "operation"
    "object"
    "data"
    "property_metadata"
    "circular_reference_limit_counters"
    "debug_trace_id"
    "extra_variables"
    "request"
  ]
  "extra_variables" => [
    "object" => Thelia\Api\Resource\Product {#8360
      +i18ns: Thelia\Api\Resource\I18nCollection {#8066 …}
      #resourceAddons: [
        "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#8058
          +libraryImages: []
          -context: [
            "path_info" => "/api/front/products/5"
            "operation" => ApiPlatform\Metadata\Get {#7848}
            "uri_variables" => [
              "id" => "5"
            ]
            "resource_class" => "Thelia\Api\Resource\Product"
            "filters" => [
              "locale" => "fr_FR"
            ]
            "groups" => [
              "front:product:read"
              "front:product:read:single"
            ]
            "exclude_from_cache_key" => [
              "root_operation"
              "operation"
              "object"
              "data"
              "property_metadata"
              "circular_reference_limit_counters"
              "debug_trace_id"
              "extra_variables"
              "request"
            ]
            "__visited" => [
              "Thelia\Api\Resource\Product#5@960270736c79c3e26e655b9e8bc5a0c1" => true
            ]
            "__path" => [
              "Thelia\Api\Resource\Product"
            ]
            "__depth" => 1
            "enable_max_depth" => true
            "max_depth" => 10
          ]
        }
      ]
      -propelModel: Thelia\Model\Product {#3244 …}
      +id: 5
      +taxRule: Thelia\Api\Resource\TaxRule {#8474 …}
      +ref: "PROD005"
      +visible: true
      +position: 0
      +template: null
      +brand: Thelia\Api\Resource\Brand {#8511 …}
      +virtual: false
      +shippingSurcharge: 0.0
      +shippingSurchargeMode: 0
      +freeShipping: false
      +createdAt: DateTime @1791802483 {#3243
        date: 2026-10-12 12:54:43.0 Europe/Paris (+02:00)
      }
      +updatedAt: DateTime @1794052483 {#3242
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +productCategories: [
        Thelia\Api\Resource\ProductCategory {#8443
          +category: Thelia\Api\Resource\Category {#8540 …}
          +product: Thelia\Api\Resource\Product {#8542 …}
          +defaultCategory: true
          +position: 1
          +createdAt: DateTime @1794052483 {#3345
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3346
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductCategory {#3344 …}
        }
      ]
      +productSaleElements: [
        Thelia\Api\Resource\ProductSaleElements {#8564
          +id: 17
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD005-0"
          +quantity: 32
          +visible: true
          +position: 1
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 13.7
          +isDefault: true
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#8597
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8611 …}
              +currency: Thelia\Api\Resource\Currency {#8621 …}
              +price: 395.0
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#3651
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3650
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#3648 …}
            }
          ]
          +attributeCombinations: [
            Thelia\Api\Resource\AttributeCombination {#8620
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8605 …}
              +attribute: Thelia\Api\Resource\Attribute {#8654 …}
              +attributeAv: Thelia\Api\Resource\AttributeAv {#8651 …}
              +position: null
              +createdAt: DateTime @1794052483 {#3949
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3948
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\AttributeCombination {#3950 …}
            }
          ]
          +createdAt: DateTime @1794052483 {#3601
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3600
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#3598 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#8515
          +id: 18
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD005-1"
          +quantity: 33
          +visible: true
          +position: 2
          +promo: false
          +displayInitialPrice: null
          +newness: true
          +weight: 13.8
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#8608
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8714 …}
              +currency: Thelia\Api\Resource\Currency {#8724 …}
              +price: 395.0
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#3652
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3655
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#3653 …}
            }
          ]
          +attributeCombinations: [
            Thelia\Api\Resource\AttributeCombination {#8723
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8708 …}
              +attribute: Thelia\Api\Resource\Attribute {#8757 …}
              +attributeAv: Thelia\Api\Resource\AttributeAv {#8754 …}
              +position: null
              +createdAt: DateTime @1794052483 {#3946
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3945
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\AttributeCombination {#3947 …}
            }
          ]
          +createdAt: DateTime @1794052483 {#3608
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3606
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#3604 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#8586
          +id: 19
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD005-2"
          +quantity: 34
          +visible: true
          +position: 3
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 13.9
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#8711
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8811 …}
              +currency: Thelia\Api\Resource\Currency {#8821 …}
              +price: 395.0
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#3817
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3794
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#3802 …}
            }
          ]
          +attributeCombinations: [
            Thelia\Api\Resource\AttributeCombination {#8820
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8805 …}
              +attribute: Thelia\Api\Resource\Attribute {#8854 …}
              +attributeAv: Thelia\Api\Resource\AttributeAv {#8851 …}
              +position: null
              +createdAt: DateTime @1794052483 {#3943
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3942
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\AttributeCombination {#3944 …}
            }
          ]
          +createdAt: DateTime @1794052483 {#3615
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3612
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#3610 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#8664
          +id: 20
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD005-3"
          +quantity: 35
          +visible: true
          +position: 4
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 14.0
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#8808
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8908 …}
              +currency: Thelia\Api\Resource\Currency {#8918 …}
              +price: 395.0
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#3672
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3669
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#3804 …}
            }
          ]
          +attributeCombinations: [
            Thelia\Api\Resource\AttributeCombination {#8917
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8902 …}
              +attribute: Thelia\Api\Resource\Attribute {#8951 …}
              +attributeAv: Thelia\Api\Resource\AttributeAv {#8948 …}
              +position: null
              +createdAt: DateTime @1794052483 {#3940
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3939
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\AttributeCombination {#3941 …}
            }
          ]
          +createdAt: DateTime @1794052483 {#3611
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3617
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#3613 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#8767
          +id: 21
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD005-4"
          +quantity: 36
          +visible: true
          +position: 5
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 14.1
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#8905
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9005 …}
              +currency: Thelia\Api\Resource\Currency {#9015 …}
              +price: 395.0
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#3671
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3676
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#3674 …}
            }
          ]
          +attributeCombinations: [
            Thelia\Api\Resource\AttributeCombination {#9014
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8999 …}
              +attribute: Thelia\Api\Resource\Attribute {#9048 …}
              +attributeAv: Thelia\Api\Resource\AttributeAv {#9045 …}
              +position: null
              +createdAt: DateTime @1794052483 {#3937
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3936
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\AttributeCombination {#3938 …}
            }
          ]
          +createdAt: DateTime @1794052483 {#3614
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3619
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#3616 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#8864
          +id: 22
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD005-5"
          +quantity: 37
          +visible: true
          +position: 6
          +promo: false
          +displayInitialPrice: null
          +newness: true
          +weight: 14.2
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#9002
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9102 …}
              +currency: Thelia\Api\Resource\Currency {#9112 …}
              +price: 395.0
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#3678
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3675
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#3673 …}
            }
          ]
          +attributeCombinations: [
            Thelia\Api\Resource\AttributeCombination {#9111
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9096 …}
              +attribute: Thelia\Api\Resource\Attribute {#9145 …}
              +attributeAv: Thelia\Api\Resource\AttributeAv {#9142 …}
              +position: null
              +createdAt: DateTime @1794052483 {#3934
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3933
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\AttributeCombination {#3935 …}
            }
          ]
          +createdAt: DateTime @1794052483 {#3621
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3618
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#3623 …}
        }
      ]
      +featureProducts: [
        Thelia\Api\Resource\FeatureProduct {#8961
          +id: 7
          +product: ? Thelia\Api\Resource\Product
          +feature: Thelia\Api\Resource\Feature {#8959 …}
          +featureAv: Thelia\Api\Resource\FeatureAv {#9157 …}
          +free_text_value: ? string
          +is_free_text: false
          +locale: null
          +position: null
          +createdAt: DateTime @1794052483 {#8396
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#8394
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\FeatureProduct {#8299 …}
        }
        Thelia\Api\Resource\FeatureProduct {#8765
          +id: 8
          +product: ? Thelia\Api\Resource\Product
          +feature: Thelia\Api\Resource\Feature {#9208 …}
          +featureAv: Thelia\Api\Resource\FeatureAv {#9209 …}
          +free_text_value: ? string
          +is_free_text: false
          +locale: null
          +position: null
          +createdAt: DateTime @1794052483 {#8309
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#8285
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\FeatureProduct {#8398 …}
        }
      ]
      +productAssociatedContents: [
        Thelia\Api\Resource\ProductAssociatedContent {#9053
          +id: 3
          +product: ? Thelia\Api\Resource\Product
          +content: Thelia\Api\Resource\Content {#9032 …}
          +position: 1
          +createdAt: DateTime @1794052483 {#8302
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#8303
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductAssociatedContent {#8347 …}
        }
      ]
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#7842
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#7779 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#7839 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#7836 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#7737 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#7727 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#7813 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#7797 …}
    #content: null
    #languages: null
    #charsets: null
    #encodings: null
    #acceptableContentTypes: null
    #pathInfo: "/api/front/products/5"
    #requestUri: "/api/front/products/5"
    #baseUrl: ""
    #basePath: null
    #method: "GET"
    #format: null
    #session: null
    #locale: null
    #defaultLocale: "en"
    -preferredFormat: null
    -isHostValid: true
    -isForwardedValid: true
    -isSafeContentPreferred: ? bool
    -trustedValuesCache: []
    -isIisRewrite: false
    basePath: ""
    format: "html"
  }
]
ItemNormalizer (13.34 ms)
13.44 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#10492
  -pager: Propel\Runtime\Util\PropelModelPager {#10405
    #query: Thelia\Model\ProductAssociationTypeQuery {#10379 …}
    #page: 1
    #maxPerPage: 30
    #lastPage: 1
    #nbResults: 3
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#10420 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\ProductAssociationType {#10454
      +i18ns: Thelia\Api\Resource\I18nCollection {#10456 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductAssociationType {#10435 …}
      +id: 1
      +code: "accessory"
      +visible: true
      +reciprocal: false
      +position: 1
      +createdAt: DateTime @1794052452 {#10416
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052452 {#10439
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
    }
    Thelia\Api\Resource\ProductAssociationType {#10473
      +i18ns: Thelia\Api\Resource\I18nCollection {#10475 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductAssociationType {#10441 …}
      +id: 2
      +code: "cross_selling"
      +visible: true
      +reciprocal: true
      +position: 2
      +createdAt: DateTime @1794052452 {#10442
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052452 {#10443
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
    }
    Thelia\Api\Resource\ProductAssociationType {#10489
      +i18ns: Thelia\Api\Resource\I18nCollection {#10491 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductAssociationType {#10444 …}
      +id: 3
      +code: "up_selling"
      +visible: true
      +reciprocal: false
      +position: 3
      +createdAt: DateTime @1794052452 {#10445
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052452 {#10446
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
    }
  ]
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/product_association_types"
  "operation" => ApiPlatform\Metadata\GetCollection {#10354
    #parameters: ApiPlatform\Metadata\Parameters {#10355 …}
    #shortName: "ProductAssociationType2"
    #class: "Thelia\Api\Resource\ProductAssociationType"
    #description: """
      The types a relation between two products can carry, and the blocks a product\n
      sheet offers because of them.\n
      \n
      Every write goes through ProductAssociationTypeProcessor rather than the Propel\n
      persist processor: the guards a merchant meets in the back office are the ones\n
      the core holds — the accessory type may not be deleted, a type still carrying\n
      relations may not either, and a code never changes once set. Persisting straight\n
      to Propel here would let the API walk past all three.\n
      \n
      The `code` is what the core, the front-office blocks and the migration address a\n
      type by. It is writable on creation and ignored afterwards; the translatable\n
      title is what a merchant rewords instead.
      """
    #urlGenerationStrategy: null
    #deprecationReason: null
    #normalizationContext: [
      "groups" => [
        "front:product_association_type:read"
      ]
    ]
    #denormalizationContext: null
    #collectDenormalizationErrors: null
    #validationContext: null
    #filters: [
      "annotated_thelia_api_resource_product_association_type_thelia_api_bridge_propel_filter_order_filter"
      "annotated_thelia_api_resource_product_association_type_thelia_api_bridge_propel_filter_boolean_filter"
      "annotated_thelia_api_resource_product_association_type_thelia_api_bridge_propel_filter_search_filter"
    ]
    #mercure: null
    #messenger: null
    #input: null
    #output: null
    #order: null
    #fetchPartial: null
    #forceEager: null
    #paginationEnabled: null
    #paginationType: null
    #paginationItemsPerPage: null
    #paginationMaximumItemsPerPage: 100
    #paginationPartial: null
    #paginationClientEnabled: null
    #paginationClientItemsPerPage: true
    #paginationClientPartial: null
    #paginationFetchJoinCollection: null
    #paginationUseOutputWalkers: null
    #security: null
    #securityMessage: null
    #securityPostDenormalize: null
    #securityPostDenormalizeMessage: null
    #securityPostValidation: null
    #securityPostValidationMessage: null
    #provider: "Thelia\Api\Bridge\Propel\State\PropelCollectionProvider"
    #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
    #stateOptions: null
    #rules: null
    #policy: null
    #middleware: null
    #queryParameterValidationEnabled: null
    #strictQueryParameterValidation: null
    #hideHydraOperation: null
    #jsonStream: null
    #map: null
    #extraProperties: [
      "deduplicate_resource_short_names" => true
      "user_defined_uri_template" => true
      "is_alternate_resource_metadata" => true
    ]
    #paginationViaCursor: null
    #read: null
    #deserialize: null
    #validate: null
    #write: null
    #serialize: null
    #contentNegotiation: null
    #priority: 0
    #name: "_api_/front/product_association_types_get_collection"
    #formats: null
    #inputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #outputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #method: "GET"
    #uriTemplate: "/front/product_association_types"
    #types: null
    #uriVariables: []
    #routePrefix: null
    #routeName: null
    #defaults: null
    #requirements: null
    #options: null
    #stateless: false
    #sunset: null
    #acceptPatch: null
    #status: null
    #host: null
    #schemes: null
    #condition: null
    #controller: "api_platform.symfony.main_controller"
    #headers: null
    #cacheHeaders: [
      "vary" => [
        "Content-Type"
        "Authorization"
        "Origin"
      ]
    ]
    #hydraContext: null
    #openapi: null
    #exceptionToStatus: null
    #links: null
    #errors: null
    -itemUriTemplate: null
  }
  "uri_variables" => []
  "resource_class" => "Thelia\Api\Resource\ProductAssociationType"
  "filters" => [
    "order" => [
      "position" => "asc"
    ]
    "locale" => "fr_FR"
  ]
  "groups" => [
    "front:product_association_type:read"
  ]
  "exclude_from_cache_key" => [
    "root_operation"
    "operation"
    "object"
    "data"
    "property_metadata"
    "circular_reference_limit_counters"
    "debug_trace_id"
    "extra_variables"
    "request"
  ]
  "extra_variables" => [
    "object" => Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#10492
      -pager: Propel\Runtime\Util\PropelModelPager {#10405
        #query: Thelia\Model\ProductAssociationTypeQuery {#10379 …}
        #page: 1
        #maxPerPage: 30
        #lastPage: 1
        #nbResults: 3
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#10420 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\ProductAssociationType {#10454
          +i18ns: Thelia\Api\Resource\I18nCollection {#10456 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductAssociationType {#10435 …}
          +id: 1
          +code: "accessory"
          +visible: true
          +reciprocal: false
          +position: 1
          +createdAt: DateTime @1794052452 {#10416
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052452 {#10439
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
        }
        Thelia\Api\Resource\ProductAssociationType {#10473
          +i18ns: Thelia\Api\Resource\I18nCollection {#10475 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductAssociationType {#10441 …}
          +id: 2
          +code: "cross_selling"
          +visible: true
          +reciprocal: true
          +position: 2
          +createdAt: DateTime @1794052452 {#10442
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052452 {#10443
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
        }
        Thelia\Api\Resource\ProductAssociationType {#10489
          +i18ns: Thelia\Api\Resource\I18nCollection {#10491 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductAssociationType {#10444 …}
          +id: 3
          +code: "up_selling"
          +visible: true
          +reciprocal: false
          +position: 3
          +createdAt: DateTime @1794052452 {#10445
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052452 {#10446
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
        }
      ]
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#10292
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#10312 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#10310 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#9344 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#10306 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#10327 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#10325 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#10330 …}
    #content: null
    #languages: null
    #charsets: null
    #encodings: null
    #acceptableContentTypes: null
    #pathInfo: "/api/front/product_association_types"
    #requestUri: "/api/front/product_association_types"
    #baseUrl: ""
    #basePath: null
    #method: "GET"
    #format: null
    #session: null
    #locale: null
    #defaultLocale: "en"
    -preferredFormat: null
    -isHostValid: true
    -isForwardedValid: true
    -isSafeContentPreferred: ? bool
    -trustedValuesCache: []
    -isIisRewrite: false
    basePath: ""
    format: "html"
  }
]
ItemNormalizer (0.34 ms)
2.03 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#10644
  -pager: Propel\Runtime\Util\PropelModelPager {#10600
    #query: Thelia\Model\BrandQuery {#10585 …}
    #page: 1
    #maxPerPage: 30
    #lastPage: 1
    #nbResults: 1
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#10656 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\Brand {#10614
      +i18ns: Thelia\Api\Resource\I18nCollection {#10658 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Brand {#3925 …}
      +id: 3
      +visible: true
      +products: ? array
      +position: 3
    }
  ]
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/brands"
  "operation" => ApiPlatform\Metadata\GetCollection {#9465
    #parameters: ApiPlatform\Metadata\Parameters {#9466 …}
    #shortName: "Brand2"
    #class: "Thelia\Api\Resource\Brand"
    #description: null
    #urlGenerationStrategy: null
    #deprecationReason: null
    #normalizationContext: [
      "groups" => [
        "front:brand:read"
      ]
    ]
    #denormalizationContext: null
    #collectDenormalizationErrors: null
    #validationContext: null
    #filters: [
      "annotated_thelia_api_resource_brand_thelia_api_bridge_propel_filter_search_filter"
      "annotated_thelia_api_resource_brand_thelia_api_bridge_propel_filter_order_filter"
      "annotated_thelia_api_resource_brand_thelia_api_bridge_propel_filter_boolean_filter"
    ]
    #mercure: null
    #messenger: null
    #input: null
    #output: null
    #order: null
    #fetchPartial: null
    #forceEager: null
    #paginationEnabled: null
    #paginationType: null
    #paginationItemsPerPage: null
    #paginationMaximumItemsPerPage: 100
    #paginationPartial: null
    #paginationClientEnabled: null
    #paginationClientItemsPerPage: true
    #paginationClientPartial: null
    #paginationFetchJoinCollection: null
    #paginationUseOutputWalkers: null
    #security: null
    #securityMessage: null
    #securityPostDenormalize: null
    #securityPostDenormalizeMessage: null
    #securityPostValidation: null
    #securityPostValidationMessage: null
    #provider: "Thelia\Api\Bridge\Propel\State\PropelCollectionProvider"
    #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
    #stateOptions: null
    #rules: null
    #policy: null
    #middleware: null
    #queryParameterValidationEnabled: null
    #strictQueryParameterValidation: null
    #hideHydraOperation: null
    #jsonStream: null
    #map: null
    #extraProperties: [
      "deduplicate_resource_short_names" => true
      "user_defined_uri_template" => true
      "is_alternate_resource_metadata" => true
    ]
    #paginationViaCursor: null
    #read: null
    #deserialize: null
    #validate: null
    #write: null
    #serialize: null
    #contentNegotiation: null
    #priority: 0
    #name: "_api_/front/brands_get_collection"
    #formats: null
    #inputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #outputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #method: "GET"
    #uriTemplate: "/front/brands"
    #types: null
    #uriVariables: []
    #routePrefix: null
    #routeName: null
    #defaults: null
    #requirements: null
    #options: null
    #stateless: false
    #sunset: null
    #acceptPatch: null
    #status: null
    #host: null
    #schemes: null
    #condition: null
    #controller: "api_platform.symfony.main_controller"
    #headers: null
    #cacheHeaders: [
      "vary" => [
        "Content-Type"
        "Authorization"
        "Origin"
      ]
    ]
    #hydraContext: null
    #openapi: null
    #exceptionToStatus: null
    #links: null
    #errors: null
    -itemUriTemplate: null
  }
  "uri_variables" => []
  "resource_class" => "Thelia\Api\Resource\Brand"
  "filters" => [
    "products.id" => 5
    "visible" => true
    "locale" => "fr_FR"
  ]
  "groups" => [
    "front:brand:read"
  ]
  "exclude_from_cache_key" => [
    "root_operation"
    "operation"
    "object"
    "data"
    "property_metadata"
    "circular_reference_limit_counters"
    "debug_trace_id"
    "extra_variables"
    "request"
  ]
  "extra_variables" => [
    "object" => Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#10644
      -pager: Propel\Runtime\Util\PropelModelPager {#10600
        #query: Thelia\Model\BrandQuery {#10585 …}
        #page: 1
        #maxPerPage: 30
        #lastPage: 1
        #nbResults: 1
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#10656 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\Brand {#10614
          +i18ns: Thelia\Api\Resource\I18nCollection {#10658 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Brand {#3925 …}
          +id: 3
          +visible: true
          +products: ? array
          +position: 3
        }
      ]
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#10369
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#10565 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#10570 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#10575 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#10571 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#10566 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#10576 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#10551 …}
    #content: null
    #languages: null
    #charsets: null
    #encodings: null
    #acceptableContentTypes: null
    #pathInfo: "/api/front/brands"
    #requestUri: "/api/front/brands"
    #baseUrl: ""
    #basePath: null
    #method: "GET"
    #format: null
    #session: null
    #locale: null
    #defaultLocale: "en"
    -preferredFormat: null
    -isHostValid: true
    -isForwardedValid: true
    -isSafeContentPreferred: ? bool
    -trustedValuesCache: []
    -isIisRewrite: false
    basePath: ""
    format: "html"
  }
]
ItemNormalizer (0.88 ms) 0.89 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#10968
  -pager: Propel\Runtime\Util\PropelModelPager {#10882
    #query: Thelia\Model\SaleQuery {#10844 …}
    #page: 1
    #maxPerPage: 100
    #lastPage: 1
    #nbResults: 2
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#10927 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\Sale {#10952
      +i18ns: Thelia\Api\Resource\I18nCollection {#10954 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Sale {#10904 …}
      -preloadedProductIds: [
        1
        2
        3
        4
        5
      ]
      +id: 1
      +active: true
      +startDate: DateTime @1791324000 {#10917
        date: 2026-10-07 00:00:00.0 Europe/Paris (+02:00)
      }
      +endDate: DateTime @1796598000 {#10903
        date: 2026-12-07 00:00:00.0 Europe/Paris (+01:00)
      }
      +displayInitialPrice: true
      +priceOffsetType: 20
      +audienceMode: 0
      +hideProducts: false
      +countdownMode: 0
      +countdownLeadHours: null
    }
    Thelia\Api\Resource\Sale {#10958
      +i18ns: Thelia\Api\Resource\I18nCollection {#10956 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Sale {#10933 …}
      -preloadedProductIds: [
        1
        2
        3
        4
        5
      ]
      +id: 2
      +active: true
      +startDate: DateTime @1791324000 {#10934
        date: 2026-10-07 00:00:00.0 Europe/Paris (+02:00)
      }
      +endDate: DateTime @1796598000 {#10935
        date: 2026-12-07 00:00:00.0 Europe/Paris (+01:00)
      }
      +displayInitialPrice: true
      +priceOffsetType: 10
      +audienceMode: 0
      +hideProducts: false
      +countdownMode: 0
      +countdownLeadHours: null
    }
  ]
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/sales"
  "operation" => ApiPlatform\Metadata\GetCollection {#10822
    #parameters: ApiPlatform\Metadata\Parameters {#10823 …}
    #shortName: "Sale2"
    #class: "Thelia\Api\Resource\Sale"
    #description: """
      A sale operation, read only.\n
      \n
      The front block is what a theme builds the page of an operation from: its\n
      texts, its window, the products it covers, and whether a countdown to its end\n
      is due right now. The countdown is answered as a number of seconds rather than\n
      as a date so that a theme has nothing to work out — and nothing to get wrong\n
      about the shop's timezone.\n
      \n
      What is deliberately absent, in the front groups and everywhere near them: the\n
      customers a reserved operation is open to. That list is the operation's private\n
      guest list, and a customer reading their own operation must not be handed the\n
      names of the others.\n
      \n
      Nothing writes through here. The back office drives an operation through its\n
      events — they are what recomputes the catalog prices of a public one — and a\n
      write endpoint would let a caller change an operation without any of that\n
      happening.
      """
    #urlGenerationStrategy: null
    #deprecationReason: null
    #normalizationContext: [
      "groups" => [
        "front:sale:read"
      ]
    ]
    #denormalizationContext: null
    #collectDenormalizationErrors: null
    #validationContext: null
    #filters: [
      "annotated_thelia_api_resource_sale_thelia_api_bridge_propel_filter_search_filter"
      "annotated_thelia_api_resource_sale_thelia_api_bridge_propel_filter_boolean_filter"
      "annotated_thelia_api_resource_sale_thelia_api_bridge_propel_filter_order_filter"
    ]
    #mercure: null
    #messenger: null
    #input: null
    #output: null
    #order: null
    #fetchPartial: null
    #forceEager: null
    #paginationEnabled: null
    #paginationType: null
    #paginationItemsPerPage: null
    #paginationMaximumItemsPerPage: 100
    #paginationPartial: null
    #paginationClientEnabled: null
    #paginationClientItemsPerPage: true
    #paginationClientPartial: null
    #paginationFetchJoinCollection: null
    #paginationUseOutputWalkers: null
    #security: null
    #securityMessage: null
    #securityPostDenormalize: null
    #securityPostDenormalizeMessage: null
    #securityPostValidation: null
    #securityPostValidationMessage: null
    #provider: "Thelia\Api\Bridge\Propel\State\PropelCollectionProvider"
    #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
    #stateOptions: null
    #rules: null
    #policy: null
    #middleware: null
    #queryParameterValidationEnabled: null
    #strictQueryParameterValidation: null
    #hideHydraOperation: null
    #jsonStream: null
    #map: null
    #extraProperties: [
      "deduplicate_resource_short_names" => true
      "user_defined_uri_template" => true
      "is_alternate_resource_metadata" => true
    ]
    #paginationViaCursor: null
    #read: null
    #deserialize: null
    #validate: null
    #write: null
    #serialize: null
    #contentNegotiation: null
    #priority: 0
    #name: "_api_/front/sales_get_collection"
    #formats: null
    #inputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #outputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #method: "GET"
    #uriTemplate: "/front/sales"
    #types: null
    #uriVariables: []
    #routePrefix: null
    #routeName: null
    #defaults: null
    #requirements: null
    #options: null
    #stateless: false
    #sunset: null
    #acceptPatch: null
    #status: null
    #host: null
    #schemes: null
    #condition: null
    #controller: "api_platform.symfony.main_controller"
    #headers: null
    #cacheHeaders: [
      "vary" => [
        "Content-Type"
        "Authorization"
        "Origin"
      ]
    ]
    #hydraContext: null
    #openapi: null
    #exceptionToStatus: null
    #links: null
    #errors: null
    -itemUriTemplate: null
  }
  "uri_variables" => []
  "resource_class" => "Thelia\Api\Resource\Sale"
  "filters" => [
    "active" => true
    "itemsPerPage" => 1000
    "locale" => "fr_FR"
  ]
  "groups" => [
    "front:sale:read"
  ]
  "exclude_from_cache_key" => [
    "root_operation"
    "operation"
    "object"
    "data"
    "property_metadata"
    "circular_reference_limit_counters"
    "debug_trace_id"
    "extra_variables"
    "request"
  ]
  "extra_variables" => [
    "object" => Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#10968
      -pager: Propel\Runtime\Util\PropelModelPager {#10882
        #query: Thelia\Model\SaleQuery {#10844 …}
        #page: 1
        #maxPerPage: 100
        #lastPage: 1
        #nbResults: 2
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#10927 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\Sale {#10952
          +i18ns: Thelia\Api\Resource\I18nCollection {#10954 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Sale {#10904 …}
          -preloadedProductIds: [
            1
            2
            3
            4
            5
          ]
          +id: 1
          +active: true
          +startDate: DateTime @1791324000 {#10917
            date: 2026-10-07 00:00:00.0 Europe/Paris (+02:00)
          }
          +endDate: DateTime @1796598000 {#10903
            date: 2026-12-07 00:00:00.0 Europe/Paris (+01:00)
          }
          +displayInitialPrice: true
          +priceOffsetType: 20
          +audienceMode: 0
          +hideProducts: false
          +countdownMode: 0
          +countdownLeadHours: null
        }
        Thelia\Api\Resource\Sale {#10958
          +i18ns: Thelia\Api\Resource\I18nCollection {#10956 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Sale {#10933 …}
          -preloadedProductIds: [
            1
            2
            3
            4
            5
          ]
          +id: 2
          +active: true
          +startDate: DateTime @1791324000 {#10934
            date: 2026-10-07 00:00:00.0 Europe/Paris (+02:00)
          }
          +endDate: DateTime @1796598000 {#10935
            date: 2026-12-07 00:00:00.0 Europe/Paris (+01:00)
          }
          +displayInitialPrice: true
          +priceOffsetType: 10
          +audienceMode: 0
          +hideProducts: false
          +countdownMode: 0
          +countdownLeadHours: null
        }
      ]
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#10798
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#10803 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#10802 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#10793 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#10806 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#10805 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#10804 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#10807 …}
    #content: null
    #languages: null
    #charsets: null
    #encodings: null
    #acceptableContentTypes: null
    #pathInfo: "/api/front/sales"
    #requestUri: "/api/front/sales"
    #baseUrl: ""
    #basePath: null
    #method: "GET"
    #format: null
    #session: null
    #locale: null
    #defaultLocale: "en"
    -preferredFormat: null
    -isHostValid: true
    -isForwardedValid: true
    -isSafeContentPreferred: ? bool
    -trustedValuesCache: []
    -isIisRewrite: false
    basePath: ""
    format: "html"
  }
]
ItemNormalizer (0.36 ms)
1.89 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#11453
  -pager: Propel\Runtime\Util\PropelModelPager {#11270
    #query: Thelia\Model\ProductImageQuery {#11254 …}
    #page: 1
    #maxPerPage: 30
    #lastPage: 1
    #nbResults: 6
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#11289 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\ProductImage {#11338
      +i18ns: Thelia\Api\Resource\I18nCollection {#11339 …}
      #resourceAddons: []
      -propelModel: null
      +id: 16
      +product: Thelia\Api\Resource\Product {#11352 …}
      +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
      +visible: true
      +decorative: false
      +position: 1
      +createdAt: DateTime @1794052483 {#3308
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052483 {#3309
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +file: "PROD005-1.jpg"
      +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod005-1.jpg"
      -propelModel: Thelia\Model\ProductImage {#3307 …}
    }
    Thelia\Api\Resource\ProductImage {#11344
      +i18ns: Thelia\Api\Resource\I18nCollection {#11342 …}
      #resourceAddons: []
      -propelModel: null
      +id: 17
      +product: Thelia\Api\Resource\Product {#11383 …}
      +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
      +visible: true
      +decorative: false
      +position: 2
      +createdAt: DateTime @1794052483 {#11302
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052483 {#11303
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +file: "PROD005-2.jpg"
      +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod005-2.jpg"
      -propelModel: Thelia\Model\ProductImage {#11301 …}
    }
    Thelia\Api\Resource\ProductImage {#11350
      +i18ns: Thelia\Api\Resource\I18nCollection {#11351 …}
      #resourceAddons: []
      -propelModel: null
      +id: 18
      +product: Thelia\Api\Resource\Product {#11418 …}
      +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
      +visible: true
      +decorative: false
      +position: 3
      +createdAt: DateTime @1794052483 {#11294
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052483 {#11333
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +file: "PROD005-3.jpg"
      +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod005-3.jpg"
      -propelModel: Thelia\Model\ProductImage {#11282 …}
    }
    Thelia\Api\Resource\ProductImage {#11388
      +i18ns: Thelia\Api\Resource\I18nCollection {#11382 …}
      #resourceAddons: []
      -propelModel: null
      +id: 19
      +product: Thelia\Api\Resource\Product {#11451 …}
      +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
      +visible: true
      +decorative: false
      +position: 4
      +createdAt: DateTime @1794052483 {#11317
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052483 {#11316
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +file: "PROD005-4.jpg"
      +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod005-4.jpg"
      -propelModel: Thelia\Model\ProductImage {#11335 …}
    }
    Thelia\Api\Resource\ProductImage {#11430
      +i18ns: Thelia\Api\Resource\I18nCollection {#11417 …}
      #resourceAddons: []
      -propelModel: null
      +id: 20
      +product: Thelia\Api\Resource\Product {#11484 …}
      +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
      +visible: true
      +decorative: false
      +position: 5
      +createdAt: DateTime @1794052483 {#11319
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052483 {#11320
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +file: "PROD005-5.jpg"
      +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod005-5.jpg"
      -propelModel: Thelia\Model\ProductImage {#11318 …}
    }
    Thelia\Api\Resource\ProductImage {#11463
      +i18ns: Thelia\Api\Resource\I18nCollection {#11450 …}
      #resourceAddons: []
      -propelModel: null
      +id: 21
      +product: Thelia\Api\Resource\Product {#11517 …}
      +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
      +visible: true
      +decorative: false
      +position: 6
      +createdAt: DateTime @1794052483 {#11322
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052483 {#11323
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +file: "PROD005-6.jpg"
      +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod005-6.jpg"
      -propelModel: Thelia\Model\ProductImage {#11321 …}
    }
  ]
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/product_images"
  "operation" => ApiPlatform\Metadata\GetCollection {#11230
    #parameters: ApiPlatform\Metadata\Parameters {#11231 …}
    #shortName: "ProductImage2"
    #class: "Thelia\Api\Resource\ProductImage"
    #description: null
    #urlGenerationStrategy: null
    #deprecationReason: null
    #normalizationContext: [
      "groups" => [
        "front:product_image:read"
      ]
    ]
    #denormalizationContext: null
    #collectDenormalizationErrors: null
    #validationContext: null
    #filters: [
      "annotated_thelia_api_resource_product_image_thelia_api_bridge_propel_filter_search_filter"
      "annotated_thelia_api_resource_product_image_thelia_api_bridge_propel_filter_order_filter"
      "annotated_thelia_api_resource_product_image_thelia_api_bridge_propel_filter_boolean_filter"
      "annotated_thelia_api_resource_product_image_thelia_api_bridge_propel_filter_not_in_filter"
    ]
    #mercure: null
    #messenger: null
    #input: null
    #output: null
    #order: null
    #fetchPartial: null
    #forceEager: null
    #paginationEnabled: null
    #paginationType: null
    #paginationItemsPerPage: null
    #paginationMaximumItemsPerPage: 100
    #paginationPartial: null
    #paginationClientEnabled: null
    #paginationClientItemsPerPage: true
    #paginationClientPartial: null
    #paginationFetchJoinCollection: null
    #paginationUseOutputWalkers: null
    #security: null
    #securityMessage: null
    #securityPostDenormalize: null
    #securityPostDenormalizeMessage: null
    #securityPostValidation: null
    #securityPostValidationMessage: null
    #provider: "Thelia\Api\Bridge\Propel\State\PropelCollectionProvider"
    #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
    #stateOptions: null
    #rules: null
    #policy: null
    #middleware: null
    #queryParameterValidationEnabled: null
    #strictQueryParameterValidation: null
    #hideHydraOperation: null
    #jsonStream: null
    #map: null
    #extraProperties: [
      "deduplicate_resource_short_names" => true
      "user_defined_uri_template" => true
      "is_alternate_resource_metadata" => true
    ]
    #paginationViaCursor: null
    #read: null
    #deserialize: null
    #validate: null
    #write: null
    #serialize: null
    #contentNegotiation: null
    #priority: 0
    #name: "_api_/front/product_images_get_collection"
    #formats: null
    #inputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #outputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #method: "GET"
    #uriTemplate: "/front/product_images"
    #types: null
    #uriVariables: []
    #routePrefix: null
    #routeName: null
    #defaults: null
    #requirements: null
    #options: null
    #stateless: false
    #sunset: null
    #acceptPatch: null
    #status: null
    #host: null
    #schemes: null
    #condition: null
    #controller: "api_platform.symfony.main_controller"
    #headers: null
    #cacheHeaders: [
      "vary" => [
        "Content-Type"
        "Authorization"
        "Origin"
      ]
    ]
    #hydraContext: null
    #openapi: null
    #exceptionToStatus: null
    #links: null
    #errors: null
    -itemUriTemplate: null
  }
  "uri_variables" => []
  "resource_class" => "Thelia\Api\Resource\ProductImage"
  "filters" => [
    "product.id" => 5
    "visible" => true
    "order" => [
      "position" => "asc"
    ]
    "locale" => "fr_FR"
  ]
  "groups" => [
    "front:product_image:read"
  ]
  "exclude_from_cache_key" => [
    "root_operation"
    "operation"
    "object"
    "data"
    "property_metadata"
    "circular_reference_limit_counters"
    "debug_trace_id"
    "extra_variables"
    "request"
  ]
  "extra_variables" => [
    "object" => Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#11453
      -pager: Propel\Runtime\Util\PropelModelPager {#11270
        #query: Thelia\Model\ProductImageQuery {#11254 …}
        #page: 1
        #maxPerPage: 30
        #lastPage: 1
        #nbResults: 6
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#11289 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\ProductImage {#11338
          +i18ns: Thelia\Api\Resource\I18nCollection {#11339 …}
          #resourceAddons: []
          -propelModel: null
          +id: 16
          +product: Thelia\Api\Resource\Product {#11352 …}
          +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
          +visible: true
          +decorative: false
          +position: 1
          +createdAt: DateTime @1794052483 {#3308
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3309
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +file: "PROD005-1.jpg"
          +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod005-1.jpg"
          -propelModel: Thelia\Model\ProductImage {#3307 …}
        }
        Thelia\Api\Resource\ProductImage {#11344
          +i18ns: Thelia\Api\Resource\I18nCollection {#11342 …}
          #resourceAddons: []
          -propelModel: null
          +id: 17
          +product: Thelia\Api\Resource\Product {#11383 …}
          +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
          +visible: true
          +decorative: false
          +position: 2
          +createdAt: DateTime @1794052483 {#11302
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#11303
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +file: "PROD005-2.jpg"
          +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod005-2.jpg"
          -propelModel: Thelia\Model\ProductImage {#11301 …}
        }
        Thelia\Api\Resource\ProductImage {#11350
          +i18ns: Thelia\Api\Resource\I18nCollection {#11351 …}
          #resourceAddons: []
          -propelModel: null
          +id: 18
          +product: Thelia\Api\Resource\Product {#11418 …}
          +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
          +visible: true
          +decorative: false
          +position: 3
          +createdAt: DateTime @1794052483 {#11294
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#11333
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +file: "PROD005-3.jpg"
          +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod005-3.jpg"
          -propelModel: Thelia\Model\ProductImage {#11282 …}
        }
        Thelia\Api\Resource\ProductImage {#11388
          +i18ns: Thelia\Api\Resource\I18nCollection {#11382 …}
          #resourceAddons: []
          -propelModel: null
          +id: 19
          +product: Thelia\Api\Resource\Product {#11451 …}
          +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
          +visible: true
          +decorative: false
          +position: 4
          +createdAt: DateTime @1794052483 {#11317
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#11316
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +file: "PROD005-4.jpg"
          +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod005-4.jpg"
          -propelModel: Thelia\Model\ProductImage {#11335 …}
        }
        Thelia\Api\Resource\ProductImage {#11430
          +i18ns: Thelia\Api\Resource\I18nCollection {#11417 …}
          #resourceAddons: []
          -propelModel: null
          +id: 20
          +product: Thelia\Api\Resource\Product {#11484 …}
          +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
          +visible: true
          +decorative: false
          +position: 5
          +createdAt: DateTime @1794052483 {#11319
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#11320
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +file: "PROD005-5.jpg"
          +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod005-5.jpg"
          -propelModel: Thelia\Model\ProductImage {#11318 …}
        }
        Thelia\Api\Resource\ProductImage {#11463
          +i18ns: Thelia\Api\Resource\I18nCollection {#11450 …}
          #resourceAddons: []
          -propelModel: null
          +id: 21
          +product: Thelia\Api\Resource\Product {#11517 …}
          +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
          +visible: true
          +decorative: false
          +position: 6
          +createdAt: DateTime @1794052483 {#11322
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#11323
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +file: "PROD005-6.jpg"
          +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod005-6.jpg"
          -propelModel: Thelia\Model\ProductImage {#11321 …}
        }
      ]
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#11085
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#10790 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#11135 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#10842 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#11109 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#11125 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#11118 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#11175 …}
    #content: null
    #languages: null
    #charsets: null
    #encodings: null
    #acceptableContentTypes: null
    #pathInfo: "/api/front/product_images"
    #requestUri: "/api/front/product_images"
    #baseUrl: ""
    #basePath: null
    #method: "GET"
    #format: null
    #session: null
    #locale: null
    #defaultLocale: "en"
    -preferredFormat: null
    -isHostValid: true
    -isForwardedValid: true
    -isSafeContentPreferred: ? bool
    -trustedValuesCache: []
    -isIisRewrite: false
    basePath: ""
    format: "html"
  }
]
ItemNormalizer (0.32 ms)
3.10 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#11799
  -pager: Propel\Runtime\Util\PropelModelPager {#11771
    #query: Thelia\Model\ProductVideoQuery {#11695 …}
    #page: 0
    #maxPerPage: 30
    #lastPage: 0
    #nbResults: 0
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#11777 …}
    #con: null
  }
  storage: []
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/product_videos"
  "operation" => ApiPlatform\Metadata\GetCollection {#11670
    #parameters: ApiPlatform\Metadata\Parameters {#11671 …}
    #shortName: "ProductVideo2"
    #class: "Thelia\Api\Resource\ProductVideo"
    #description: """
      A video on a product sheet.\n
      \n
      A merchant attaches one by pasting the address of a platform page, or by\n
      uploading a file the shop stores itself. The address is a write-only field:\n
      what the shop keeps of it is the platform and the identifier, and `embedUrl`\n
      is built back from those two. A crafted address therefore never reaches the\n
      frame the front office renders.\n
      \n
      `fileUrl` addresses the stored file of a hosted video, and stays null for a\n
      platform video; `embedUrl` is the other way round. Both are served in the\n
      collection as well as on the single read, because a gallery reads the\n
      collection and would otherwise ask for every video one by one.
      """
    #urlGenerationStrategy: null
    #deprecationReason: null
    #normalizationContext: [
      "groups" => [
        "front:product_video:read"
      ]
      "skip_null_values" => false
    ]
    #denormalizationContext: null
    #collectDenormalizationErrors: null
    #validationContext: null
    #filters: [
      "annotated_thelia_api_resource_product_video_thelia_api_bridge_propel_filter_order_filter"
      "annotated_thelia_api_resource_product_video_thelia_api_bridge_propel_filter_boolean_filter"
      "annotated_thelia_api_resource_product_video_thelia_api_bridge_propel_filter_search_filter"
      "annotated_thelia_api_resource_product_video_thelia_api_bridge_propel_filter_not_in_filter"
    ]
    #mercure: null
    #messenger: null
    #input: null
    #output: null
    #order: null
    #fetchPartial: null
    #forceEager: null
    #paginationEnabled: null
    #paginationType: null
    #paginationItemsPerPage: null
    #paginationMaximumItemsPerPage: 100
    #paginationPartial: null
    #paginationClientEnabled: null
    #paginationClientItemsPerPage: true
    #paginationClientPartial: null
    #paginationFetchJoinCollection: null
    #paginationUseOutputWalkers: null
    #security: null
    #securityMessage: null
    #securityPostDenormalize: null
    #securityPostDenormalizeMessage: null
    #securityPostValidation: null
    #securityPostValidationMessage: null
    #provider: "Thelia\Api\Bridge\Propel\State\PropelCollectionProvider"
    #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
    #stateOptions: null
    #rules: null
    #policy: null
    #middleware: null
    #queryParameterValidationEnabled: null
    #strictQueryParameterValidation: null
    #hideHydraOperation: null
    #jsonStream: null
    #map: null
    #extraProperties: [
      "deduplicate_resource_short_names" => true
      "user_defined_uri_template" => true
      "is_alternate_resource_metadata" => true
    ]
    #paginationViaCursor: null
    #read: null
    #deserialize: null
    #validate: null
    #write: null
    #serialize: null
    #contentNegotiation: null
    #priority: 0
    #name: "_api_/front/product_videos_get_collection"
    #formats: null
    #inputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #outputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #method: "GET"
    #uriTemplate: "/front/product_videos"
    #types: null
    #uriVariables: []
    #routePrefix: null
    #routeName: null
    #defaults: null
    #requirements: null
    #options: null
    #stateless: false
    #sunset: null
    #acceptPatch: null
    #status: null
    #host: null
    #schemes: null
    #condition: null
    #controller: "api_platform.symfony.main_controller"
    #headers: null
    #cacheHeaders: [
      "vary" => [
        "Content-Type"
        "Authorization"
        "Origin"
      ]
    ]
    #hydraContext: null
    #openapi: null
    #exceptionToStatus: null
    #links: null
    #errors: null
    -itemUriTemplate: null
  }
  "uri_variables" => []
  "resource_class" => "Thelia\Api\Resource\ProductVideo"
  "filters" => [
    "product.id" => 5
    "visible" => true
    "order" => [
      "position" => "asc"
    ]
    "locale" => "fr_FR"
  ]
  "groups" => [
    "front:product_video:read"
  ]
  "exclude_from_cache_key" => [
    "root_operation"
    "operation"
    "object"
    "data"
    "property_metadata"
    "circular_reference_limit_counters"
    "debug_trace_id"
    "extra_variables"
    "request"
  ]
  "extra_variables" => [
    "object" => Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#11799
      -pager: Propel\Runtime\Util\PropelModelPager {#11771
        #query: Thelia\Model\ProductVideoQuery {#11695 …}
        #page: 0
        #maxPerPage: 30
        #lastPage: 0
        #nbResults: 0
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#11777 …}
        #con: null
      }
      storage: []
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#11252
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#11634 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#11580 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#11615 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#11636 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#11631 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#11633 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#11637 …}
    #content: null
    #languages: null
    #charsets: null
    #encodings: null
    #acceptableContentTypes: null
    #pathInfo: "/api/front/product_videos"
    #requestUri: "/api/front/product_videos"
    #baseUrl: ""
    #basePath: null
    #method: "GET"
    #format: null
    #session: null
    #locale: null
    #defaultLocale: "en"
    -preferredFormat: null
    -isHostValid: true
    -isForwardedValid: true
    -isSafeContentPreferred: ? bool
    -trustedValuesCache: []
    -isIisRewrite: false
    basePath: ""
    format: "html"
  }
]
0.01 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#11845
  -pager: Propel\Runtime\Util\PropelModelPager {#11815
    #query: Thelia\Model\ProductSaleElementsProductImageQuery {#11808 …}
    #page: 0
    #maxPerPage: 30
    #lastPage: 0
    #nbResults: 0
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#11849 …}
    #con: null
  }
  storage: []
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/product_sale_elements_product_image"
  "operation" => ApiPlatform\Metadata\GetCollection {#11791
    #parameters: ApiPlatform\Metadata\Parameters {#11792 …}
    #shortName: "ProductSaleElementsProductImage2"
    #class: "Thelia\Api\Resource\ProductSaleElementsProductImage"
    #description: null
    #urlGenerationStrategy: null
    #deprecationReason: null
    #normalizationContext: [
      "groups" => [
        "front:product_sale_elements_product_image:read"
      ]
    ]
    #denormalizationContext: null
    #collectDenormalizationErrors: null
    #validationContext: null
    #filters: [
      "annotated_thelia_api_resource_product_sale_elements_product_image_thelia_api_bridge_propel_filter_order_filter"
      "annotated_thelia_api_resource_product_sale_elements_product_image_thelia_api_bridge_propel_filter_search_filter"
    ]
    #mercure: null
    #messenger: null
    #input: null
    #output: null
    #order: null
    #fetchPartial: null
    #forceEager: null
    #paginationEnabled: null
    #paginationType: null
    #paginationItemsPerPage: null
    #paginationMaximumItemsPerPage: 100
    #paginationPartial: null
    #paginationClientEnabled: null
    #paginationClientItemsPerPage: true
    #paginationClientPartial: null
    #paginationFetchJoinCollection: null
    #paginationUseOutputWalkers: null
    #security: null
    #securityMessage: null
    #securityPostDenormalize: null
    #securityPostDenormalizeMessage: null
    #securityPostValidation: null
    #securityPostValidationMessage: null
    #provider: "Thelia\Api\Bridge\Propel\State\PropelCollectionProvider"
    #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
    #stateOptions: null
    #rules: null
    #policy: null
    #middleware: null
    #queryParameterValidationEnabled: null
    #strictQueryParameterValidation: null
    #hideHydraOperation: null
    #jsonStream: null
    #map: null
    #extraProperties: [
      "deduplicate_resource_short_names" => true
      "user_defined_uri_template" => true
      "is_alternate_resource_metadata" => true
    ]
    #paginationViaCursor: null
    #read: null
    #deserialize: null
    #validate: null
    #write: null
    #serialize: null
    #contentNegotiation: null
    #priority: 0
    #name: "_api_/front/product_sale_elements_product_image_get_collection"
    #formats: null
    #inputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #outputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #method: "GET"
    #uriTemplate: "/front/product_sale_elements_product_image"
    #types: null
    #uriVariables: []
    #routePrefix: null
    #routeName: null
    #defaults: null
    #requirements: null
    #options: null
    #stateless: false
    #sunset: null
    #acceptPatch: null
    #status: null
    #host: null
    #schemes: null
    #condition: null
    #controller: "api_platform.symfony.main_controller"
    #headers: null
    #cacheHeaders: [
      "vary" => [
        "Content-Type"
        "Authorization"
        "Origin"
      ]
    ]
    #hydraContext: null
    #openapi: null
    #exceptionToStatus: null
    #links: null
    #errors: null
    -itemUriTemplate: null
  }
  "uri_variables" => []
  "resource_class" => "Thelia\Api\Resource\ProductSaleElementsProductImage"
  "filters" => [
    "productImageId" => [
      16
      17
      18
      19
      20
      21
    ]
    "productSaleElements.product.id" => 5
    "locale" => "fr_FR"
  ]
  "groups" => [
    "front:product_sale_elements_product_image:read"
  ]
  "exclude_from_cache_key" => [
    "root_operation"
    "operation"
    "object"
    "data"
    "property_metadata"
    "circular_reference_limit_counters"
    "debug_trace_id"
    "extra_variables"
    "request"
  ]
  "extra_variables" => [
    "object" => Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#11845
      -pager: Propel\Runtime\Util\PropelModelPager {#11815
        #query: Thelia\Model\ProductSaleElementsProductImageQuery {#11808 …}
        #page: 0
        #maxPerPage: 30
        #lastPage: 0
        #nbResults: 0
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#11849 …}
        #con: null
      }
      storage: []
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#11693
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#11752 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#11776 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#11755 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#11737 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#11738 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#11699 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#11734 …}
    #content: null
    #languages: null
    #charsets: null
    #encodings: null
    #acceptableContentTypes: null
    #pathInfo: "/api/front/product_sale_elements_product_image"
    #requestUri: "/api/front/product_sale_elements_product_image"
    #baseUrl: ""
    #basePath: null
    #method: "GET"
    #format: null
    #session: null
    #locale: null
    #defaultLocale: "en"
    -preferredFormat: null
    -isHostValid: true
    -isForwardedValid: true
    -isSafeContentPreferred: ? bool
    -trustedValuesCache: []
    -isIisRewrite: false
    basePath: ""
    format: "html"
  }
]
0.01 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#15256
  -pager: Propel\Runtime\Util\PropelModelPager {#14439
    #query: Thelia\Model\AccessoryQuery {#14362 …}
    #page: 1
    #maxPerPage: 12
    #lastPage: 1
    #nbResults: 2
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#14561 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\ProductAssociation {#14410
      +id: 9
      +product: Thelia\Api\Resource\Product {#14661 …}
      +associatedProduct: Thelia\Api\Resource\Product {#14691 …}
      +type: Thelia\Api\Resource\ProductAssociationType {#14693 …}
      +position: 1
      +createdAt: DateTime @1794052485 {#14542
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052485 {#14535
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\Accessory {#14541 …}
    }
    Thelia\Api\Resource\ProductAssociation {#15268
      +id: 10
      +product: Thelia\Api\Resource\Product {#14623 …}
      +associatedProduct: Thelia\Api\Resource\Product {#14971 …}
      +type: Thelia\Api\Resource\ProductAssociationType {#14630 …}
      +position: 2
      +createdAt: DateTime @1794052485 {#14553
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052485 {#14554
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\Accessory {#14536 …}
    }
  ]
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/product_associations"
  "operation" => ApiPlatform\Metadata\GetCollection {#14345
    #parameters: ApiPlatform\Metadata\Parameters {#14346 …}
    #shortName: "ProductAssociation2"
    #class: "Thelia\Api\Resource\ProductAssociation"
    #description: """
      A relation between two products, told apart from the others by its type.\n
      \n
      `product` is the sheet the relation is read from and `associatedProduct` the one\n
      it points at. Both are the `product` table, so the Propel relations are named\n
      after their columns rather than after the table, hence the relation aliases:\n
      without them the eager loading extension finds no `useProductQuery()` on\n
      AccessoryQuery and skips the join in silence.\n
      \n
      Filtering on `product.id` and `type.code` and ordering on `position` is what\n
      lets a theme read one block of a product sheet in a single call.\n
      \n
      Writes go through ProductAssociationProcessor, which calls the product facade:\n
      the events fire, the reciprocal row of a reciprocal type is written, and a\n
      product related to itself is refused. Persisting straight to Propel would do\n
      none of it.\n
      \n
      `position` is read-only here. Reordering a block already has its own event and\n
      its own back-office screen, and nothing asks the API for it yet.\n
      \n
      Both products come out whole rather than as a bare IRI, carrying what a card\n
      of a block shows: the wording, the rewritten url and the sale elements, the\n
      default one told apart by `isDefault`. A theme therefore renders a block out\n
      of this one read. Prices are not part of it: they are not serialized on the\n
      sale element anywhere in this API, and a front resolves them on its own.\n
      \n
      The collection is paginated on the defaults the core sets for the whole API\n
      (`Config/Resources/packages/api_platform.php`): thirty rows a page, `page` to\n
      walk them, and `itemsPerPage` for the caller to ask for another size, capped\n
      at a hundred. A block of a product sheet holds far fewer than thirty, so a\n
      theme reads one in a single call without naming any of them; an integration\n
      walking every relation of a catalogue is the one that pages.
      """
    #urlGenerationStrategy: null
    #deprecationReason: null
    #normalizationContext: [
      "groups" => [
        "front:product_association:read"
      ]
    ]
    #denormalizationContext: null
    #collectDenormalizationErrors: null
    #validationContext: null
    #filters: [
      "annotated_thelia_api_resource_product_association_thelia_api_bridge_propel_filter_order_filter"
      "annotated_thelia_api_resource_product_association_thelia_api_bridge_propel_filter_search_filter"
    ]
    #mercure: null
    #messenger: null
    #input: null
    #output: null
    #order: null
    #fetchPartial: null
    #forceEager: null
    #paginationEnabled: null
    #paginationType: null
    #paginationItemsPerPage: null
    #paginationMaximumItemsPerPage: 100
    #paginationPartial: null
    #paginationClientEnabled: null
    #paginationClientItemsPerPage: true
    #paginationClientPartial: null
    #paginationFetchJoinCollection: null
    #paginationUseOutputWalkers: null
    #security: null
    #securityMessage: null
    #securityPostDenormalize: null
    #securityPostDenormalizeMessage: null
    #securityPostValidation: null
    #securityPostValidationMessage: null
    #provider: "Thelia\Api\Bridge\Propel\State\PropelCollectionProvider"
    #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
    #stateOptions: null
    #rules: null
    #policy: null
    #middleware: null
    #queryParameterValidationEnabled: null
    #strictQueryParameterValidation: null
    #hideHydraOperation: null
    #jsonStream: null
    #map: null
    #extraProperties: [
      "deduplicate_resource_short_names" => true
      "user_defined_uri_template" => true
      "is_alternate_resource_metadata" => true
    ]
    #paginationViaCursor: null
    #read: null
    #deserialize: null
    #validate: null
    #write: null
    #serialize: null
    #contentNegotiation: null
    #priority: 0
    #name: "_api_/front/product_associations_get_collection"
    #formats: null
    #inputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #outputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #method: "GET"
    #uriTemplate: "/front/product_associations"
    #types: null
    #uriVariables: []
    #routePrefix: null
    #routeName: null
    #defaults: null
    #requirements: null
    #options: null
    #stateless: false
    #sunset: null
    #acceptPatch: null
    #status: null
    #host: null
    #schemes: null
    #condition: null
    #controller: "api_platform.symfony.main_controller"
    #headers: null
    #cacheHeaders: [
      "vary" => [
        "Content-Type"
        "Authorization"
        "Origin"
      ]
    ]
    #hydraContext: null
    #openapi: null
    #exceptionToStatus: null
    #links: null
    #errors: null
    -itemUriTemplate: null
  }
  "uri_variables" => []
  "resource_class" => "Thelia\Api\Resource\ProductAssociation"
  "filters" => [
    "page" => 1
    "itemsPerPage" => 12
    "product.id" => 5
    "type.code" => "accessory"
    "order" => [
      "position" => "asc"
    ]
    "locale" => "fr_FR"
  ]
  "groups" => [
    "front:product_association:read"
  ]
  "exclude_from_cache_key" => [
    "root_operation"
    "operation"
    "object"
    "data"
    "property_metadata"
    "circular_reference_limit_counters"
    "debug_trace_id"
    "extra_variables"
    "request"
  ]
  "extra_variables" => [
    "object" => Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#15256
      -pager: Propel\Runtime\Util\PropelModelPager {#14439
        #query: Thelia\Model\AccessoryQuery {#14362 …}
        #page: 1
        #maxPerPage: 12
        #lastPage: 1
        #nbResults: 2
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#14561 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\ProductAssociation {#14410
          +id: 9
          +product: Thelia\Api\Resource\Product {#14661 …}
          +associatedProduct: Thelia\Api\Resource\Product {#14691 …}
          +type: Thelia\Api\Resource\ProductAssociationType {#14693 …}
          +position: 1
          +createdAt: DateTime @1794052485 {#14542
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#14535
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\Accessory {#14541 …}
        }
        Thelia\Api\Resource\ProductAssociation {#15268
          +id: 10
          +product: Thelia\Api\Resource\Product {#14623 …}
          +associatedProduct: Thelia\Api\Resource\Product {#14971 …}
          +type: Thelia\Api\Resource\ProductAssociationType {#14630 …}
          +position: 2
          +createdAt: DateTime @1794052485 {#14553
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#14554
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\Accessory {#14536 …}
        }
      ]
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#14318
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#14316 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#14317 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#14313 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#14324 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#14323 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#14322 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#14325 …}
    #content: null
    #languages: null
    #charsets: null
    #encodings: null
    #acceptableContentTypes: null
    #pathInfo: "/api/front/product_associations"
    #requestUri: "/api/front/product_associations"
    #baseUrl: ""
    #basePath: null
    #method: "GET"
    #format: null
    #session: null
    #locale: null
    #defaultLocale: "en"
    -preferredFormat: null
    -isHostValid: true
    -isForwardedValid: true
    -isSafeContentPreferred: ? bool
    -trustedValuesCache: []
    -isIisRewrite: false
    basePath: ""
    format: "html"
  }
]
ItemNormalizer (2.72 ms)
7.06 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#16454
  -pager: Propel\Runtime\Util\PropelModelPager {#16453
    #query: Thelia\Model\AccessoryQuery {#16381 …}
    #page: 0
    #maxPerPage: 12
    #lastPage: 0
    #nbResults: 0
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#16574 …}
    #con: null
  }
  storage: []
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/product_associations"
  "operation" => ApiPlatform\Metadata\GetCollection {#14345
    #parameters: ApiPlatform\Metadata\Parameters {#14346 …}
    #shortName: "ProductAssociation2"
    #class: "Thelia\Api\Resource\ProductAssociation"
    #description: """
      A relation between two products, told apart from the others by its type.\n
      \n
      `product` is the sheet the relation is read from and `associatedProduct` the one\n
      it points at. Both are the `product` table, so the Propel relations are named\n
      after their columns rather than after the table, hence the relation aliases:\n
      without them the eager loading extension finds no `useProductQuery()` on\n
      AccessoryQuery and skips the join in silence.\n
      \n
      Filtering on `product.id` and `type.code` and ordering on `position` is what\n
      lets a theme read one block of a product sheet in a single call.\n
      \n
      Writes go through ProductAssociationProcessor, which calls the product facade:\n
      the events fire, the reciprocal row of a reciprocal type is written, and a\n
      product related to itself is refused. Persisting straight to Propel would do\n
      none of it.\n
      \n
      `position` is read-only here. Reordering a block already has its own event and\n
      its own back-office screen, and nothing asks the API for it yet.\n
      \n
      Both products come out whole rather than as a bare IRI, carrying what a card\n
      of a block shows: the wording, the rewritten url and the sale elements, the\n
      default one told apart by `isDefault`. A theme therefore renders a block out\n
      of this one read. Prices are not part of it: they are not serialized on the\n
      sale element anywhere in this API, and a front resolves them on its own.\n
      \n
      The collection is paginated on the defaults the core sets for the whole API\n
      (`Config/Resources/packages/api_platform.php`): thirty rows a page, `page` to\n
      walk them, and `itemsPerPage` for the caller to ask for another size, capped\n
      at a hundred. A block of a product sheet holds far fewer than thirty, so a\n
      theme reads one in a single call without naming any of them; an integration\n
      walking every relation of a catalogue is the one that pages.
      """
    #urlGenerationStrategy: null
    #deprecationReason: null
    #normalizationContext: [
      "groups" => [
        "front:product_association:read"
      ]
    ]
    #denormalizationContext: null
    #collectDenormalizationErrors: null
    #validationContext: null
    #filters: [
      "annotated_thelia_api_resource_product_association_thelia_api_bridge_propel_filter_order_filter"
      "annotated_thelia_api_resource_product_association_thelia_api_bridge_propel_filter_search_filter"
    ]
    #mercure: null
    #messenger: null
    #input: null
    #output: null
    #order: null
    #fetchPartial: null
    #forceEager: null
    #paginationEnabled: null
    #paginationType: null
    #paginationItemsPerPage: null
    #paginationMaximumItemsPerPage: 100
    #paginationPartial: null
    #paginationClientEnabled: null
    #paginationClientItemsPerPage: true
    #paginationClientPartial: null
    #paginationFetchJoinCollection: null
    #paginationUseOutputWalkers: null
    #security: null
    #securityMessage: null
    #securityPostDenormalize: null
    #securityPostDenormalizeMessage: null
    #securityPostValidation: null
    #securityPostValidationMessage: null
    #provider: "Thelia\Api\Bridge\Propel\State\PropelCollectionProvider"
    #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
    #stateOptions: null
    #rules: null
    #policy: null
    #middleware: null
    #queryParameterValidationEnabled: null
    #strictQueryParameterValidation: null
    #hideHydraOperation: null
    #jsonStream: null
    #map: null
    #extraProperties: [
      "deduplicate_resource_short_names" => true
      "user_defined_uri_template" => true
      "is_alternate_resource_metadata" => true
    ]
    #paginationViaCursor: null
    #read: null
    #deserialize: null
    #validate: null
    #write: null
    #serialize: null
    #contentNegotiation: null
    #priority: 0
    #name: "_api_/front/product_associations_get_collection"
    #formats: null
    #inputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #outputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #method: "GET"
    #uriTemplate: "/front/product_associations"
    #types: null
    #uriVariables: []
    #routePrefix: null
    #routeName: null
    #defaults: null
    #requirements: null
    #options: null
    #stateless: false
    #sunset: null
    #acceptPatch: null
    #status: null
    #host: null
    #schemes: null
    #condition: null
    #controller: "api_platform.symfony.main_controller"
    #headers: null
    #cacheHeaders: [
      "vary" => [
        "Content-Type"
        "Authorization"
        "Origin"
      ]
    ]
    #hydraContext: null
    #openapi: null
    #exceptionToStatus: null
    #links: null
    #errors: null
    -itemUriTemplate: null
  }
  "uri_variables" => []
  "resource_class" => "Thelia\Api\Resource\ProductAssociation"
  "filters" => [
    "page" => 1
    "itemsPerPage" => 12
    "product.id" => 5
    "type.code" => "cross_selling"
    "order" => [
      "position" => "asc"
    ]
    "locale" => "fr_FR"
  ]
  "groups" => [
    "front:product_association:read"
  ]
  "exclude_from_cache_key" => [
    "root_operation"
    "operation"
    "object"
    "data"
    "property_metadata"
    "circular_reference_limit_counters"
    "debug_trace_id"
    "extra_variables"
    "request"
  ]
  "extra_variables" => [
    "object" => Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#16454
      -pager: Propel\Runtime\Util\PropelModelPager {#16453
        #query: Thelia\Model\AccessoryQuery {#16381 …}
        #page: 0
        #maxPerPage: 12
        #lastPage: 0
        #nbResults: 0
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#16574 …}
        #con: null
      }
      storage: []
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#16361
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#16360 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#16354 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#16324 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#16367 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#16366 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#16365 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#16368 …}
    #content: null
    #languages: null
    #charsets: null
    #encodings: null
    #acceptableContentTypes: null
    #pathInfo: "/api/front/product_associations"
    #requestUri: "/api/front/product_associations"
    #baseUrl: ""
    #basePath: null
    #method: "GET"
    #format: null
    #session: null
    #locale: null
    #defaultLocale: "en"
    -preferredFormat: null
    -isHostValid: true
    -isForwardedValid: true
    -isSafeContentPreferred: ? bool
    -trustedValuesCache: []
    -isIisRewrite: false
    basePath: ""
    format: "html"
  }
]
0.00 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#16639
  -pager: Propel\Runtime\Util\PropelModelPager {#16638
    #query: Thelia\Model\AccessoryQuery {#16572 …}
    #page: 0
    #maxPerPage: 12
    #lastPage: 0
    #nbResults: 0
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#16759 …}
    #con: null
  }
  storage: []
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/product_associations"
  "operation" => ApiPlatform\Metadata\GetCollection {#14345
    #parameters: ApiPlatform\Metadata\Parameters {#14346 …}
    #shortName: "ProductAssociation2"
    #class: "Thelia\Api\Resource\ProductAssociation"
    #description: """
      A relation between two products, told apart from the others by its type.\n
      \n
      `product` is the sheet the relation is read from and `associatedProduct` the one\n
      it points at. Both are the `product` table, so the Propel relations are named\n
      after their columns rather than after the table, hence the relation aliases:\n
      without them the eager loading extension finds no `useProductQuery()` on\n
      AccessoryQuery and skips the join in silence.\n
      \n
      Filtering on `product.id` and `type.code` and ordering on `position` is what\n
      lets a theme read one block of a product sheet in a single call.\n
      \n
      Writes go through ProductAssociationProcessor, which calls the product facade:\n
      the events fire, the reciprocal row of a reciprocal type is written, and a\n
      product related to itself is refused. Persisting straight to Propel would do\n
      none of it.\n
      \n
      `position` is read-only here. Reordering a block already has its own event and\n
      its own back-office screen, and nothing asks the API for it yet.\n
      \n
      Both products come out whole rather than as a bare IRI, carrying what a card\n
      of a block shows: the wording, the rewritten url and the sale elements, the\n
      default one told apart by `isDefault`. A theme therefore renders a block out\n
      of this one read. Prices are not part of it: they are not serialized on the\n
      sale element anywhere in this API, and a front resolves them on its own.\n
      \n
      The collection is paginated on the defaults the core sets for the whole API\n
      (`Config/Resources/packages/api_platform.php`): thirty rows a page, `page` to\n
      walk them, and `itemsPerPage` for the caller to ask for another size, capped\n
      at a hundred. A block of a product sheet holds far fewer than thirty, so a\n
      theme reads one in a single call without naming any of them; an integration\n
      walking every relation of a catalogue is the one that pages.
      """
    #urlGenerationStrategy: null
    #deprecationReason: null
    #normalizationContext: [
      "groups" => [
        "front:product_association:read"
      ]
    ]
    #denormalizationContext: null
    #collectDenormalizationErrors: null
    #validationContext: null
    #filters: [
      "annotated_thelia_api_resource_product_association_thelia_api_bridge_propel_filter_order_filter"
      "annotated_thelia_api_resource_product_association_thelia_api_bridge_propel_filter_search_filter"
    ]
    #mercure: null
    #messenger: null
    #input: null
    #output: null
    #order: null
    #fetchPartial: null
    #forceEager: null
    #paginationEnabled: null
    #paginationType: null
    #paginationItemsPerPage: null
    #paginationMaximumItemsPerPage: 100
    #paginationPartial: null
    #paginationClientEnabled: null
    #paginationClientItemsPerPage: true
    #paginationClientPartial: null
    #paginationFetchJoinCollection: null
    #paginationUseOutputWalkers: null
    #security: null
    #securityMessage: null
    #securityPostDenormalize: null
    #securityPostDenormalizeMessage: null
    #securityPostValidation: null
    #securityPostValidationMessage: null
    #provider: "Thelia\Api\Bridge\Propel\State\PropelCollectionProvider"
    #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
    #stateOptions: null
    #rules: null
    #policy: null
    #middleware: null
    #queryParameterValidationEnabled: null
    #strictQueryParameterValidation: null
    #hideHydraOperation: null
    #jsonStream: null
    #map: null
    #extraProperties: [
      "deduplicate_resource_short_names" => true
      "user_defined_uri_template" => true
      "is_alternate_resource_metadata" => true
    ]
    #paginationViaCursor: null
    #read: null
    #deserialize: null
    #validate: null
    #write: null
    #serialize: null
    #contentNegotiation: null
    #priority: 0
    #name: "_api_/front/product_associations_get_collection"
    #formats: null
    #inputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #outputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #method: "GET"
    #uriTemplate: "/front/product_associations"
    #types: null
    #uriVariables: []
    #routePrefix: null
    #routeName: null
    #defaults: null
    #requirements: null
    #options: null
    #stateless: false
    #sunset: null
    #acceptPatch: null
    #status: null
    #host: null
    #schemes: null
    #condition: null
    #controller: "api_platform.symfony.main_controller"
    #headers: null
    #cacheHeaders: [
      "vary" => [
        "Content-Type"
        "Authorization"
        "Origin"
      ]
    ]
    #hydraContext: null
    #openapi: null
    #exceptionToStatus: null
    #links: null
    #errors: null
    -itemUriTemplate: null
  }
  "uri_variables" => []
  "resource_class" => "Thelia\Api\Resource\ProductAssociation"
  "filters" => [
    "page" => 1
    "itemsPerPage" => 12
    "product.id" => 5
    "type.code" => "up_selling"
    "order" => [
      "position" => "asc"
    ]
    "locale" => "fr_FR"
  ]
  "groups" => [
    "front:product_association:read"
  ]
  "exclude_from_cache_key" => [
    "root_operation"
    "operation"
    "object"
    "data"
    "property_metadata"
    "circular_reference_limit_counters"
    "debug_trace_id"
    "extra_variables"
    "request"
  ]
  "extra_variables" => [
    "object" => Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#16639
      -pager: Propel\Runtime\Util\PropelModelPager {#16638
        #query: Thelia\Model\AccessoryQuery {#16572 …}
        #page: 0
        #maxPerPage: 12
        #lastPage: 0
        #nbResults: 0
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#16759 …}
        #con: null
      }
      storage: []
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#16427
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#16426 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#16431 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#16483 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#16386 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#16562 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#16555 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#16533 …}
    #content: null
    #languages: null
    #charsets: null
    #encodings: null
    #acceptableContentTypes: null
    #pathInfo: "/api/front/product_associations"
    #requestUri: "/api/front/product_associations"
    #baseUrl: ""
    #basePath: null
    #method: "GET"
    #format: null
    #session: null
    #locale: null
    #defaultLocale: "en"
    -preferredFormat: null
    -isHostValid: true
    -isForwardedValid: true
    -isSafeContentPreferred: ? bool
    -trustedValuesCache: []
    -isIisRewrite: false
    basePath: ""
    format: "html"
  }
]
0.00 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#17374
  -pager: Propel\Runtime\Util\PropelModelPager {#16870
    #query: Thelia\Model\ProductQuery {#16391 …}
    #page: 1
    #maxPerPage: 5
    #lastPage: 2
    #nbResults: 10
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#16897 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\Product {#16917
      +i18ns: Thelia\Api\Resource\I18nCollection {#16970 …}
      #resourceAddons: [
        "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#16904
          +libraryImages: []
          -context: [
            "path_info" => "/api/front/products"
            "operation" => ApiPlatform\Metadata\GetCollection {#7850
              #parameters: ApiPlatform\Metadata\Parameters {#7849 …}
              #shortName: "Product2"
              #class: "Thelia\Api\Resource\Product"
              #description: null
              #urlGenerationStrategy: null
              #deprecationReason: null
              #normalizationContext: [
                "groups" => [
                  "front:product:read"
                ]
              ]
              #denormalizationContext: null
              #collectDenormalizationErrors: null
              #validationContext: null
              #filters: [
                "BestSellers\Api\Filter\BestSellersSalesOrderFilter"
                "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_search_filter"
                "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_boolean_filter"
                "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_order_filter"
                "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_custom_filters_thelia_filter"
                "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_not_in_filter"
                "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_custom_filters_product_filter_product_price_order_filter"
                "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_custom_filters_product_filter_product_title_order_filter"
                "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_custom_filters_product_filter_depth_product_filter"
                "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_range_filter"
                "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_date_filter"
              ]
              #mercure: null
              #messenger: null
              #input: null
              #output: null
              #order: null
              #fetchPartial: null
              #forceEager: null
              #paginationEnabled: null
              #paginationType: null
              #paginationItemsPerPage: null
              #paginationMaximumItemsPerPage: 100
              #paginationPartial: null
              #paginationClientEnabled: null
              #paginationClientItemsPerPage: true
              #paginationClientPartial: null
              #paginationFetchJoinCollection: null
              #paginationUseOutputWalkers: null
              #security: null
              #securityMessage: null
              #securityPostDenormalize: null
              #securityPostDenormalizeMessage: null
              #securityPostValidation: null
              #securityPostValidationMessage: null
              #provider: "Thelia\Api\Bridge\Propel\State\PropelCollectionProvider"
              #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
              #stateOptions: null
              #rules: null
              #policy: null
              #middleware: null
              #queryParameterValidationEnabled: null
              #strictQueryParameterValidation: null
              #hideHydraOperation: null
              #jsonStream: null
              #map: null
              #extraProperties: [
                "deduplicate_resource_short_names" => true
                "user_defined_uri_template" => true
                "is_alternate_resource_metadata" => true
              ]
              #paginationViaCursor: null
              #read: null
              #deserialize: null
              #validate: null
              #write: null
              #serialize: null
              #contentNegotiation: null
              #priority: 0
              #name: "_api_/front/products_get_collection"
              #formats: null
              #inputFormats: [
                "json" => [
                  "application/json"
                  "application/json"
                  "application/json"
                ]
                "jsonld" => [
                  "application/ld+json"
                  "application/ld+json"
                  "application/ld+json"
                ]
                "html" => [
                  "text/html"
                  "text/html"
                  "text/html"
                ]
              ]
              #outputFormats: [
                "json" => [
                  "application/json"
                  "application/json"
                  "application/json"
                ]
                "jsonld" => [
                  "application/ld+json"
                  "application/ld+json"
                  "application/ld+json"
                ]
                "html" => [
                  "text/html"
                  "text/html"
                  "text/html"
                ]
              ]
              #method: "GET"
              #uriTemplate: "/front/products"
              #types: null
              #uriVariables: []
              #routePrefix: null
              #routeName: null
              #defaults: null
              #requirements: null
              #options: null
              #stateless: false
              #sunset: null
              #acceptPatch: null
              #status: null
              #host: null
              #schemes: null
              #condition: null
              #controller: "api_platform.symfony.main_controller"
              #headers: null
              #cacheHeaders: [
                "vary" => [
                  "Content-Type"
                  "Authorization"
                  "Origin"
                ]
              ]
              #hydraContext: null
              #openapi: null
              #exceptionToStatus: null
              #links: null
              #errors: null
              -itemUriTemplate: null
            }
            "uri_variables" => []
            "resource_class" => "Thelia\Api\Resource\Product"
            "filters" => [
              "page" => 1
              "itemsPerPage" => 5
              "visible" => true
              "productCategories.category.id" => 5
              "locale" => "fr_FR"
            ]
            "groups" => [
              "front:product:read"
            ]
            "exclude_from_cache_key" => [
              "root_operation"
              "operation"
              "object"
              "data"
              "property_metadata"
              "circular_reference_limit_counters"
              "debug_trace_id"
              "extra_variables"
              "request"
            ]
            "__visited" => [
              "Thelia\Api\Resource\Product#3@c7d8fd62e8b2fa9c402d9c887a25e909" => true
            ]
            "__path" => [
              "Thelia\Api\Resource\Product"
            ]
            "__depth" => 1
            "enable_max_depth" => true
            "max_depth" => 10
          ]
        }
      ]
      -propelModel: Thelia\Model\Product {#16867 …}
      +id: 3
      +taxRule: ? Thelia\Api\Resource\TaxRule
      +ref: "PROD003"
      +visible: true
      +position: 0
      +template: null
      +brand: null
      +virtual: false
      +shippingSurcharge: 0.0
      +shippingSurchargeMode: 0
      +freeShipping: false
      +createdAt: DateTime @1791629683 {#16817
        date: 2026-10-10 12:54:43.0 Europe/Paris (+02:00)
      }
      +updatedAt: DateTime @1794052483 {#16815
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +productCategories: [
        Thelia\Api\Resource\ProductCategory {#17055
          +category: Thelia\Api\Resource\Category {#17042 …}
          +product: Thelia\Api\Resource\Product {#17221 …}
          +defaultCategory: true
          +position: 1
          +createdAt: DateTime @1794052483 {#16949
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#16950
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductCategory {#16948 …}
        }
      ]
      +productSaleElements: [
        Thelia\Api\Resource\ProductSaleElements {#17161
          +id: 12
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD003-0"
          +quantity: 7
          +visible: true
          +position: 1
          +promo: true
          +displayInitialPrice: null
          +newness: false
          +weight: 22.0
          +isDefault: true
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17211
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17197 …}
              +currency: Thelia\Api\Resource\Currency {#17187 …}
              +price: 653.0
              +promoPrice: 610.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17074
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17075
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17073 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#16967
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#16994
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#16968 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#17050
          +id: 13
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD003-1"
          +quantity: 8
          +visible: true
          +position: 2
          +promo: true
          +displayInitialPrice: null
          +newness: false
          +weight: 22.1
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17205
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17253 …}
              +currency: Thelia\Api\Resource\Currency {#17263 …}
              +price: 653.0
              +promoPrice: 610.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17077
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17078
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17076 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#16979
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#8125
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#16975 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#17142
          +id: 14
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD003-2"
          +quantity: 9
          +visible: true
          +position: 3
          +promo: true
          +displayInitialPrice: null
          +newness: true
          +weight: 22.2
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17226
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17298 …}
              +currency: Thelia\Api\Resource\Currency {#17308 …}
              +price: 653.0
              +promoPrice: 610.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17080
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17081
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17079 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#16978
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#16989
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#16997 …}
        }
      ]
      +featureProducts: []
      +productAssociatedContents: ? array
    }
    Thelia\Api\Resource\Product {#16894
      +i18ns: Thelia\Api\Resource\I18nCollection {#16929 …}
      #resourceAddons: [
        "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#16922
          +libraryImages: []
          -context: [
            "path_info" => "/api/front/products"
            "operation" => ApiPlatform\Metadata\GetCollection {#7850}
            "uri_variables" => []
            "resource_class" => "Thelia\Api\Resource\Product"
            "filters" => [
              "page" => 1
              "itemsPerPage" => 5
              "visible" => true
              "productCategories.category.id" => 5
              "locale" => "fr_FR"
            ]
            "groups" => [
              "front:product:read"
            ]
            "exclude_from_cache_key" => [
              "root_operation"
              "operation"
              "object"
              "data"
              "property_metadata"
              "circular_reference_limit_counters"
              "debug_trace_id"
              "extra_variables"
              "request"
            ]
            "__visited" => [
              "Thelia\Api\Resource\Product#4@c7d8fd62e8b2fa9c402d9c887a25e909" => true
            ]
            "__path" => [
              "Thelia\Api\Resource\Product"
            ]
            "__depth" => 1
            "enable_max_depth" => true
            "max_depth" => 10
          ]
        }
      ]
      -propelModel: Thelia\Model\Product {#16785 …}
      +id: 4
      +taxRule: ? Thelia\Api\Resource\TaxRule
      +ref: "PROD004"
      +visible: true
      +position: 0
      +template: null
      +brand: null
      +virtual: false
      +shippingSurcharge: 0.0
      +shippingSurchargeMode: 0
      +freeShipping: false
      +createdAt: DateTime @1791716083 {#16821
        date: 2026-10-11 12:54:43.0 Europe/Paris (+02:00)
      }
      +updatedAt: DateTime @1794052483 {#16822
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +productCategories: [
        Thelia\Api\Resource\ProductCategory {#17260
          +category: Thelia\Api\Resource\Category {#17273 …}
          +product: Thelia\Api\Resource\Product {#17293 …}
          +defaultCategory: true
          +position: 1
          +createdAt: DateTime @1794052483 {#16952
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#16953
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductCategory {#16951 …}
        }
      ]
      +productSaleElements: [
        Thelia\Api\Resource\ProductSaleElements {#17349
          +id: 15
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD004-0"
          +quantity: 20
          +visible: true
          +position: 1
          +promo: true
          +displayInitialPrice: null
          +newness: false
          +weight: 8.5
          +isDefault: true
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17383
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17397 …}
              +currency: Thelia\Api\Resource\Currency {#17407 …}
              +price: 956.0
              +promoPrice: 899.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17083
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17084
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17082 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#16995
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#16998
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#16999 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#17327
          +id: 16
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD004-1"
          +quantity: 21
          +visible: true
          +position: 2
          +promo: true
          +displayInitialPrice: null
          +newness: false
          +weight: 8.6
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17389
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17442 …}
              +currency: Thelia\Api\Resource\Currency {#17452 …}
              +price: 956.0
              +promoPrice: 899.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17086
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17087
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17085 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#16991
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#16992
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#16996 …}
        }
      ]
      +featureProducts: []
      +productAssociatedContents: ? array
    }
    Thelia\Api\Resource\Product {#16925
      +i18ns: Thelia\Api\Resource\I18nCollection {#16903 …}
      #resourceAddons: [
        "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#17058
          +libraryImages: []
          -context: [
            "path_info" => "/api/front/products"
            "operation" => ApiPlatform\Metadata\GetCollection {#7850}
            "uri_variables" => []
            "resource_class" => "Thelia\Api\Resource\Product"
            "filters" => [
              "page" => 1
              "itemsPerPage" => 5
              "visible" => true
              "productCategories.category.id" => 5
              "locale" => "fr_FR"
            ]
            "groups" => [
              "front:product:read"
            ]
            "exclude_from_cache_key" => [
              "root_operation"
              "operation"
              "object"
              "data"
              "property_metadata"
              "circular_reference_limit_counters"
              "debug_trace_id"
              "extra_variables"
              "request"
            ]
            "__visited" => [
              "Thelia\Api\Resource\Product#5@c7d8fd62e8b2fa9c402d9c887a25e909" => true
            ]
            "__path" => [
              "Thelia\Api\Resource\Product"
            ]
            "__depth" => 1
            "enable_max_depth" => true
            "max_depth" => 10
          ]
        }
      ]
      -propelModel: Thelia\Model\Product {#3244 …}
      +id: 5
      +taxRule: ? Thelia\Api\Resource\TaxRule
      +ref: "PROD005"
      +visible: true
      +position: 0
      +template: null
      +brand: null
      +virtual: false
      +shippingSurcharge: 0.0
      +shippingSurchargeMode: 0
      +freeShipping: false
      +createdAt: DateTime @1791802483 {#3243
        date: 2026-10-12 12:54:43.0 Europe/Paris (+02:00)
      }
      +updatedAt: DateTime @1794052483 {#3242
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +productCategories: [
        Thelia\Api\Resource\ProductCategory {#17404
          +category: Thelia\Api\Resource\Category {#17417 …}
          +product: Thelia\Api\Resource\Product {#17437 …}
          +defaultCategory: true
          +position: 1
          +createdAt: DateTime @1794052483 {#3345
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3346
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductCategory {#3344 …}
        }
      ]
      +productSaleElements: [
        Thelia\Api\Resource\ProductSaleElements {#17493
          +id: 17
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD005-0"
          +quantity: 32
          +visible: true
          +position: 1
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 13.7
          +isDefault: true
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17527
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17541 …}
              +currency: Thelia\Api\Resource\Currency {#17551 …}
              +price: 395.0
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#3651
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3650
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#3648 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#3601
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3600
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#3598 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#17471
          +id: 18
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD005-1"
          +quantity: 33
          +visible: true
          +position: 2
          +promo: false
          +displayInitialPrice: null
          +newness: true
          +weight: 13.8
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17533
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17586 …}
              +currency: Thelia\Api\Resource\Currency {#17596 …}
              +price: 395.0
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#3652
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3655
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#3653 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#3608
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3606
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#3604 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#17516
          +id: 19
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD005-2"
          +quantity: 34
          +visible: true
          +position: 3
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 13.9
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17559
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17631 …}
              +currency: Thelia\Api\Resource\Currency {#17641 …}
              +price: 395.0
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#3817
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3794
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#3802 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#3615
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3612
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#3610 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#17550
          +id: 20
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD005-3"
          +quantity: 35
          +visible: true
          +position: 4
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 14.0
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17604
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17676 …}
              +currency: Thelia\Api\Resource\Currency {#17686 …}
              +price: 395.0
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#3672
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3669
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#3804 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#3611
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3617
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#3613 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#17595
          +id: 21
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD005-4"
          +quantity: 36
          +visible: true
          +position: 5
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 14.1
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17649
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17721 …}
              +currency: Thelia\Api\Resource\Currency {#17731 …}
              +price: 395.0
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#3671
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3676
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#3674 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#3614
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3619
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#3616 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#17640
          +id: 22
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD005-5"
          +quantity: 37
          +visible: true
          +position: 6
          +promo: false
          +displayInitialPrice: null
          +newness: true
          +weight: 14.2
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17694
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17766 …}
              +currency: Thelia\Api\Resource\Currency {#17776 …}
              +price: 395.0
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#3678
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3675
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#3673 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#3621
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#3618
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#3623 …}
        }
      ]
      +featureProducts: []
      +productAssociatedContents: ? array
    }
    Thelia\Api\Resource\Product {#16928
      +i18ns: Thelia\Api\Resource\I18nCollection {#17235 …}
      #resourceAddons: [
        "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#17281
          +libraryImages: []
          -context: [
            "path_info" => "/api/front/products"
            "operation" => ApiPlatform\Metadata\GetCollection {#7850}
            "uri_variables" => []
            "resource_class" => "Thelia\Api\Resource\Product"
            "filters" => [
              "page" => 1
              "itemsPerPage" => 5
              "visible" => true
              "productCategories.category.id" => 5
              "locale" => "fr_FR"
            ]
            "groups" => [
              "front:product:read"
            ]
            "exclude_from_cache_key" => [
              "root_operation"
              "operation"
              "object"
              "data"
              "property_metadata"
              "circular_reference_limit_counters"
              "debug_trace_id"
              "extra_variables"
              "request"
            ]
            "__visited" => [
              "Thelia\Api\Resource\Product#8@c7d8fd62e8b2fa9c402d9c887a25e909" => true
            ]
            "__path" => [
              "Thelia\Api\Resource\Product"
            ]
            "__depth" => 1
            "enable_max_depth" => true
            "max_depth" => 10
          ]
        }
      ]
      -propelModel: Thelia\Model\Product {#16882 …}
      +id: 8
      +taxRule: ? Thelia\Api\Resource\TaxRule
      +ref: "PROD008"
      +visible: true
      +position: 0
      +template: null
      +brand: null
      +virtual: false
      +shippingSurcharge: 0.0
      +shippingSurchargeMode: 0
      +freeShipping: false
      +createdAt: DateTime @1792061683 {#16881
        date: 2026-10-15 12:54:43.0 Europe/Paris (+02:00)
      }
      +updatedAt: DateTime @1794052483 {#16875
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +productCategories: [
        Thelia\Api\Resource\ProductCategory {#17728
          +category: Thelia\Api\Resource\Category {#17741 …}
          +product: Thelia\Api\Resource\Product {#17761 …}
          +defaultCategory: true
          +position: 1
          +createdAt: DateTime @1794052483 {#16955
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#16956
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductCategory {#16954 …}
        }
      ]
      +productSaleElements: [
        Thelia\Api\Resource\ProductSaleElements {#17817
          +id: 33
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD008-0"
          +quantity: 19
          +visible: true
          +position: 1
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 2.8
          +isDefault: true
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17851
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17865 …}
              +currency: Thelia\Api\Resource\Currency {#17875 …}
              +price: 489.0
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17089
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17090
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17088 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#17005
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17006
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#16990 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#17795
          +id: 34
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD008-1"
          +quantity: 20
          +visible: true
          +position: 2
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 2.9
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17857
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17910 …}
              +currency: Thelia\Api\Resource\Currency {#17920 …}
              +price: 489.0
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17092
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17093
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17091 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#17008
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17009
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17007 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#17840
          +id: 35
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD008-2"
          +quantity: 21
          +visible: true
          +position: 3
          +promo: false
          +displayInitialPrice: null
          +newness: true
          +weight: 3.0
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17883
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17955 …}
              +currency: Thelia\Api\Resource\Currency {#17965 …}
              +price: 489.0
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17095
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17096
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17094 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#17011
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17012
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17010 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#17874
          +id: 36
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD008-3"
          +quantity: 22
          +visible: true
          +position: 4
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 3.1
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17928
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18000 …}
              +currency: Thelia\Api\Resource\Currency {#18010 …}
              +price: 489.0
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17098
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17099
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17097 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#17014
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17015
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17013 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#17919
          +id: 37
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD008-4"
          +quantity: 23
          +visible: true
          +position: 5
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 3.2
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17973
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18045 …}
              +currency: Thelia\Api\Resource\Currency {#18055 …}
              +price: 489.0
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17101
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17102
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17100 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#17017
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17018
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17016 …}
        }
      ]
      +featureProducts: []
      +productAssociatedContents: ? array
    }
    Thelia\Api\Resource\Product {#16923
      +i18ns: Thelia\Api\Resource\I18nCollection {#17373 …}
      #resourceAddons: [
        "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#17425
          +libraryImages: []
          -context: [
            "path_info" => "/api/front/products"
            "operation" => ApiPlatform\Metadata\GetCollection {#7850}
            "uri_variables" => []
            "resource_class" => "Thelia\Api\Resource\Product"
            "filters" => [
              "page" => 1
              "itemsPerPage" => 5
              "visible" => true
              "productCategories.category.id" => 5
              "locale" => "fr_FR"
            ]
            "groups" => [
              "front:product:read"
            ]
            "exclude_from_cache_key" => [
              "root_operation"
              "operation"
              "object"
              "data"
              "property_metadata"
              "circular_reference_limit_counters"
              "debug_trace_id"
              "extra_variables"
              "request"
            ]
            "__visited" => [
              "Thelia\Api\Resource\Product#9@c7d8fd62e8b2fa9c402d9c887a25e909" => true
            ]
            "__path" => [
              "Thelia\Api\Resource\Product"
            ]
            "__depth" => 1
            "enable_max_depth" => true
            "max_depth" => 10
          ]
        }
      ]
      -propelModel: Thelia\Model\Product {#16877 …}
      +id: 9
      +taxRule: ? Thelia\Api\Resource\TaxRule
      +ref: "PROD009"
      +visible: true
      +position: 0
      +template: null
      +brand: null
      +virtual: false
      +shippingSurcharge: 0.0
      +shippingSurchargeMode: 0
      +freeShipping: false
      +createdAt: DateTime @1792148083 {#16878
        date: 2026-10-16 12:54:43.0 Europe/Paris (+02:00)
      }
      +updatedAt: DateTime @1794052483 {#16921
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +productCategories: [
        Thelia\Api\Resource\ProductCategory {#18007
          +category: Thelia\Api\Resource\Category {#18020 …}
          +product: Thelia\Api\Resource\Product {#18040 …}
          +defaultCategory: true
          +position: 1
          +createdAt: DateTime @1794052483 {#16958
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#16959
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductCategory {#16957 …}
        }
      ]
      +productSaleElements: [
        Thelia\Api\Resource\ProductSaleElements {#18096
          +id: 38
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD009-0"
          +quantity: 45
          +visible: true
          +position: 1
          +promo: false
          +displayInitialPrice: null
          +newness: true
          +weight: 11.4
          +isDefault: true
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#18130
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18144 …}
              +currency: Thelia\Api\Resource\Currency {#18154 …}
              +price: 520.0
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17104
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17105
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17103 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#17020
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17021
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17019 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#18074
          +id: 39
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD009-1"
          +quantity: 46
          +visible: true
          +position: 2
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 11.5
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#18136
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18189 …}
              +currency: Thelia\Api\Resource\Currency {#18199 …}
              +price: 520.0
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17107
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17108
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17106 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#17023
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17024
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17022 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#18119
          +id: 40
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD009-2"
          +quantity: 47
          +visible: true
          +position: 3
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 11.6
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#18162
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18234 …}
              +currency: Thelia\Api\Resource\Currency {#18244 …}
              +price: 520.0
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17110
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17111
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17109 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#17026
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17027
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17025 …}
        }
      ]
      +featureProducts: []
      +productAssociatedContents: ? array
    }
  ]
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/products"
  "operation" => ApiPlatform\Metadata\GetCollection {#7850
    #parameters: ApiPlatform\Metadata\Parameters {#7849 …}
    #shortName: "Product2"
    #class: "Thelia\Api\Resource\Product"
    #description: null
    #urlGenerationStrategy: null
    #deprecationReason: null
    #normalizationContext: [
      "groups" => [
        "front:product:read"
      ]
    ]
    #denormalizationContext: null
    #collectDenormalizationErrors: null
    #validationContext: null
    #filters: [
      "BestSellers\Api\Filter\BestSellersSalesOrderFilter"
      "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_search_filter"
      "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_boolean_filter"
      "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_order_filter"
      "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_custom_filters_thelia_filter"
      "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_not_in_filter"
      "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_custom_filters_product_filter_product_price_order_filter"
      "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_custom_filters_product_filter_product_title_order_filter"
      "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_custom_filters_product_filter_depth_product_filter"
      "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_range_filter"
      "annotated_thelia_api_resource_product_thelia_api_bridge_propel_filter_date_filter"
    ]
    #mercure: null
    #messenger: null
    #input: null
    #output: null
    #order: null
    #fetchPartial: null
    #forceEager: null
    #paginationEnabled: null
    #paginationType: null
    #paginationItemsPerPage: null
    #paginationMaximumItemsPerPage: 100
    #paginationPartial: null
    #paginationClientEnabled: null
    #paginationClientItemsPerPage: true
    #paginationClientPartial: null
    #paginationFetchJoinCollection: null
    #paginationUseOutputWalkers: null
    #security: null
    #securityMessage: null
    #securityPostDenormalize: null
    #securityPostDenormalizeMessage: null
    #securityPostValidation: null
    #securityPostValidationMessage: null
    #provider: "Thelia\Api\Bridge\Propel\State\PropelCollectionProvider"
    #processor: "Thelia\Api\Bridge\Propel\State\PropelPersistProcessor"
    #stateOptions: null
    #rules: null
    #policy: null
    #middleware: null
    #queryParameterValidationEnabled: null
    #strictQueryParameterValidation: null
    #hideHydraOperation: null
    #jsonStream: null
    #map: null
    #extraProperties: [
      "deduplicate_resource_short_names" => true
      "user_defined_uri_template" => true
      "is_alternate_resource_metadata" => true
    ]
    #paginationViaCursor: null
    #read: null
    #deserialize: null
    #validate: null
    #write: null
    #serialize: null
    #contentNegotiation: null
    #priority: 0
    #name: "_api_/front/products_get_collection"
    #formats: null
    #inputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #outputFormats: [
      "json" => [
        "application/json"
        "application/json"
        "application/json"
      ]
      "jsonld" => [
        "application/ld+json"
        "application/ld+json"
        "application/ld+json"
      ]
      "html" => [
        "text/html"
        "text/html"
        "text/html"
      ]
    ]
    #method: "GET"
    #uriTemplate: "/front/products"
    #types: null
    #uriVariables: []
    #routePrefix: null
    #routeName: null
    #defaults: null
    #requirements: null
    #options: null
    #stateless: false
    #sunset: null
    #acceptPatch: null
    #status: null
    #host: null
    #schemes: null
    #condition: null
    #controller: "api_platform.symfony.main_controller"
    #headers: null
    #cacheHeaders: [
      "vary" => [
        "Content-Type"
        "Authorization"
        "Origin"
      ]
    ]
    #hydraContext: null
    #openapi: null
    #exceptionToStatus: null
    #links: null
    #errors: null
    -itemUriTemplate: null
  }
  "uri_variables" => []
  "resource_class" => "Thelia\Api\Resource\Product"
  "filters" => [
    "page" => 1
    "itemsPerPage" => 5
    "visible" => true
    "productCategories.category.id" => 5
    "locale" => "fr_FR"
  ]
  "groups" => [
    "front:product:read"
  ]
  "exclude_from_cache_key" => [
    "root_operation"
    "operation"
    "object"
    "data"
    "property_metadata"
    "circular_reference_limit_counters"
    "debug_trace_id"
    "extra_variables"
    "request"
  ]
  "extra_variables" => [
    "object" => Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#17374
      -pager: Propel\Runtime\Util\PropelModelPager {#16870
        #query: Thelia\Model\ProductQuery {#16391 …}
        #page: 1
        #maxPerPage: 5
        #lastPage: 2
        #nbResults: 10
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#16897 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\Product {#16917
          +i18ns: Thelia\Api\Resource\I18nCollection {#16970 …}
          #resourceAddons: [
            "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#16904
              +libraryImages: []
              -context: [
                "path_info" => "/api/front/products"
                "operation" => ApiPlatform\Metadata\GetCollection {#7850}
                "uri_variables" => []
                "resource_class" => "Thelia\Api\Resource\Product"
                "filters" => [
                  "page" => 1
                  "itemsPerPage" => 5
                  "visible" => true
                  "productCategories.category.id" => 5
                  "locale" => "fr_FR"
                ]
                "groups" => [
                  "front:product:read"
                ]
                "exclude_from_cache_key" => [
                  "root_operation"
                  "operation"
                  "object"
                  "data"
                  "property_metadata"
                  "circular_reference_limit_counters"
                  "debug_trace_id"
                  "extra_variables"
                  "request"
                ]
                "__visited" => [
                  "Thelia\Api\Resource\Product#3@c7d8fd62e8b2fa9c402d9c887a25e909" => true
                ]
                "__path" => [
                  "Thelia\Api\Resource\Product"
                ]
                "__depth" => 1
                "enable_max_depth" => true
                "max_depth" => 10
              ]
            }
          ]
          -propelModel: Thelia\Model\Product {#16867 …}
          +id: 3
          +taxRule: ? Thelia\Api\Resource\TaxRule
          +ref: "PROD003"
          +visible: true
          +position: 0
          +template: null
          +brand: null
          +virtual: false
          +shippingSurcharge: 0.0
          +shippingSurchargeMode: 0
          +freeShipping: false
          +createdAt: DateTime @1791629683 {#16817
            date: 2026-10-10 12:54:43.0 Europe/Paris (+02:00)
          }
          +updatedAt: DateTime @1794052483 {#16815
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +productCategories: [
            Thelia\Api\Resource\ProductCategory {#17055
              +category: Thelia\Api\Resource\Category {#17042 …}
              +product: Thelia\Api\Resource\Product {#17221 …}
              +defaultCategory: true
              +position: 1
              +createdAt: DateTime @1794052483 {#16949
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#16950
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductCategory {#16948 …}
            }
          ]
          +productSaleElements: [
            Thelia\Api\Resource\ProductSaleElements {#17161
              +id: 12
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD003-0"
              +quantity: 7
              +visible: true
              +position: 1
              +promo: true
              +displayInitialPrice: null
              +newness: false
              +weight: 22.0
              +isDefault: true
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17211
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17197 …}
                  +currency: Thelia\Api\Resource\Currency {#17187 …}
                  +price: 653.0
                  +promoPrice: 610.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17074
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17075
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17073 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#16967
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#16994
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#16968 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#17050
              +id: 13
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD003-1"
              +quantity: 8
              +visible: true
              +position: 2
              +promo: true
              +displayInitialPrice: null
              +newness: false
              +weight: 22.1
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17205
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17253 …}
                  +currency: Thelia\Api\Resource\Currency {#17263 …}
                  +price: 653.0
                  +promoPrice: 610.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17077
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17078
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17076 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#16979
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#8125
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#16975 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#17142
              +id: 14
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD003-2"
              +quantity: 9
              +visible: true
              +position: 3
              +promo: true
              +displayInitialPrice: null
              +newness: true
              +weight: 22.2
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17226
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17298 …}
                  +currency: Thelia\Api\Resource\Currency {#17308 …}
                  +price: 653.0
                  +promoPrice: 610.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17080
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17081
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17079 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#16978
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#16989
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#16997 …}
            }
          ]
          +featureProducts: []
          +productAssociatedContents: ? array
        }
        Thelia\Api\Resource\Product {#16894
          +i18ns: Thelia\Api\Resource\I18nCollection {#16929 …}
          #resourceAddons: [
            "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#16922
              +libraryImages: []
              -context: [
                "path_info" => "/api/front/products"
                "operation" => ApiPlatform\Metadata\GetCollection {#7850}
                "uri_variables" => []
                "resource_class" => "Thelia\Api\Resource\Product"
                "filters" => [
                  "page" => 1
                  "itemsPerPage" => 5
                  "visible" => true
                  "productCategories.category.id" => 5
                  "locale" => "fr_FR"
                ]
                "groups" => [
                  "front:product:read"
                ]
                "exclude_from_cache_key" => [
                  "root_operation"
                  "operation"
                  "object"
                  "data"
                  "property_metadata"
                  "circular_reference_limit_counters"
                  "debug_trace_id"
                  "extra_variables"
                  "request"
                ]
                "__visited" => [
                  "Thelia\Api\Resource\Product#4@c7d8fd62e8b2fa9c402d9c887a25e909" => true
                ]
                "__path" => [
                  "Thelia\Api\Resource\Product"
                ]
                "__depth" => 1
                "enable_max_depth" => true
                "max_depth" => 10
              ]
            }
          ]
          -propelModel: Thelia\Model\Product {#16785 …}
          +id: 4
          +taxRule: ? Thelia\Api\Resource\TaxRule
          +ref: "PROD004"
          +visible: true
          +position: 0
          +template: null
          +brand: null
          +virtual: false
          +shippingSurcharge: 0.0
          +shippingSurchargeMode: 0
          +freeShipping: false
          +createdAt: DateTime @1791716083 {#16821
            date: 2026-10-11 12:54:43.0 Europe/Paris (+02:00)
          }
          +updatedAt: DateTime @1794052483 {#16822
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +productCategories: [
            Thelia\Api\Resource\ProductCategory {#17260
              +category: Thelia\Api\Resource\Category {#17273 …}
              +product: Thelia\Api\Resource\Product {#17293 …}
              +defaultCategory: true
              +position: 1
              +createdAt: DateTime @1794052483 {#16952
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#16953
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductCategory {#16951 …}
            }
          ]
          +productSaleElements: [
            Thelia\Api\Resource\ProductSaleElements {#17349
              +id: 15
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD004-0"
              +quantity: 20
              +visible: true
              +position: 1
              +promo: true
              +displayInitialPrice: null
              +newness: false
              +weight: 8.5
              +isDefault: true
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17383
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17397 …}
                  +currency: Thelia\Api\Resource\Currency {#17407 …}
                  +price: 956.0
                  +promoPrice: 899.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17083
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17084
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17082 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#16995
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#16998
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#16999 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#17327
              +id: 16
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD004-1"
              +quantity: 21
              +visible: true
              +position: 2
              +promo: true
              +displayInitialPrice: null
              +newness: false
              +weight: 8.6
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17389
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17442 …}
                  +currency: Thelia\Api\Resource\Currency {#17452 …}
                  +price: 956.0
                  +promoPrice: 899.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17086
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17087
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17085 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#16991
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#16992
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#16996 …}
            }
          ]
          +featureProducts: []
          +productAssociatedContents: ? array
        }
        Thelia\Api\Resource\Product {#16925
          +i18ns: Thelia\Api\Resource\I18nCollection {#16903 …}
          #resourceAddons: [
            "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#17058
              +libraryImages: []
              -context: [
                "path_info" => "/api/front/products"
                "operation" => ApiPlatform\Metadata\GetCollection {#7850}
                "uri_variables" => []
                "resource_class" => "Thelia\Api\Resource\Product"
                "filters" => [
                  "page" => 1
                  "itemsPerPage" => 5
                  "visible" => true
                  "productCategories.category.id" => 5
                  "locale" => "fr_FR"
                ]
                "groups" => [
                  "front:product:read"
                ]
                "exclude_from_cache_key" => [
                  "root_operation"
                  "operation"
                  "object"
                  "data"
                  "property_metadata"
                  "circular_reference_limit_counters"
                  "debug_trace_id"
                  "extra_variables"
                  "request"
                ]
                "__visited" => [
                  "Thelia\Api\Resource\Product#5@c7d8fd62e8b2fa9c402d9c887a25e909" => true
                ]
                "__path" => [
                  "Thelia\Api\Resource\Product"
                ]
                "__depth" => 1
                "enable_max_depth" => true
                "max_depth" => 10
              ]
            }
          ]
          -propelModel: Thelia\Model\Product {#3244 …}
          +id: 5
          +taxRule: ? Thelia\Api\Resource\TaxRule
          +ref: "PROD005"
          +visible: true
          +position: 0
          +template: null
          +brand: null
          +virtual: false
          +shippingSurcharge: 0.0
          +shippingSurchargeMode: 0
          +freeShipping: false
          +createdAt: DateTime @1791802483 {#3243
            date: 2026-10-12 12:54:43.0 Europe/Paris (+02:00)
          }
          +updatedAt: DateTime @1794052483 {#3242
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +productCategories: [
            Thelia\Api\Resource\ProductCategory {#17404
              +category: Thelia\Api\Resource\Category {#17417 …}
              +product: Thelia\Api\Resource\Product {#17437 …}
              +defaultCategory: true
              +position: 1
              +createdAt: DateTime @1794052483 {#3345
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3346
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductCategory {#3344 …}
            }
          ]
          +productSaleElements: [
            Thelia\Api\Resource\ProductSaleElements {#17493
              +id: 17
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD005-0"
              +quantity: 32
              +visible: true
              +position: 1
              +promo: false
              +displayInitialPrice: null
              +newness: false
              +weight: 13.7
              +isDefault: true
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17527
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17541 …}
                  +currency: Thelia\Api\Resource\Currency {#17551 …}
                  +price: 395.0
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#3651
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#3650
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#3648 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#3601
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3600
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#3598 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#17471
              +id: 18
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD005-1"
              +quantity: 33
              +visible: true
              +position: 2
              +promo: false
              +displayInitialPrice: null
              +newness: true
              +weight: 13.8
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17533
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17586 …}
                  +currency: Thelia\Api\Resource\Currency {#17596 …}
                  +price: 395.0
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#3652
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#3655
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#3653 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#3608
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3606
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#3604 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#17516
              +id: 19
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD005-2"
              +quantity: 34
              +visible: true
              +position: 3
              +promo: false
              +displayInitialPrice: null
              +newness: false
              +weight: 13.9
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17559
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17631 …}
                  +currency: Thelia\Api\Resource\Currency {#17641 …}
                  +price: 395.0
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#3817
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#3794
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#3802 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#3615
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3612
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#3610 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#17550
              +id: 20
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD005-3"
              +quantity: 35
              +visible: true
              +position: 4
              +promo: false
              +displayInitialPrice: null
              +newness: false
              +weight: 14.0
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17604
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17676 …}
                  +currency: Thelia\Api\Resource\Currency {#17686 …}
                  +price: 395.0
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#3672
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#3669
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#3804 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#3611
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3617
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#3613 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#17595
              +id: 21
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD005-4"
              +quantity: 36
              +visible: true
              +position: 5
              +promo: false
              +displayInitialPrice: null
              +newness: false
              +weight: 14.1
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17649
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17721 …}
                  +currency: Thelia\Api\Resource\Currency {#17731 …}
                  +price: 395.0
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#3671
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#3676
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#3674 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#3614
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3619
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#3616 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#17640
              +id: 22
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD005-5"
              +quantity: 37
              +visible: true
              +position: 6
              +promo: false
              +displayInitialPrice: null
              +newness: true
              +weight: 14.2
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17694
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17766 …}
                  +currency: Thelia\Api\Resource\Currency {#17776 …}
                  +price: 395.0
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#3678
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#3675
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#3673 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#3621
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#3618
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#3623 …}
            }
          ]
          +featureProducts: []
          +productAssociatedContents: ? array
        }
        Thelia\Api\Resource\Product {#16928
          +i18ns: Thelia\Api\Resource\I18nCollection {#17235 …}
          #resourceAddons: [
            "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#17281
              +libraryImages: []
              -context: [
                "path_info" => "/api/front/products"
                "operation" => ApiPlatform\Metadata\GetCollection {#7850}
                "uri_variables" => []
                "resource_class" => "Thelia\Api\Resource\Product"
                "filters" => [
                  "page" => 1
                  "itemsPerPage" => 5
                  "visible" => true
                  "productCategories.category.id" => 5
                  "locale" => "fr_FR"
                ]
                "groups" => [
                  "front:product:read"
                ]
                "exclude_from_cache_key" => [
                  "root_operation"
                  "operation"
                  "object"
                  "data"
                  "property_metadata"
                  "circular_reference_limit_counters"
                  "debug_trace_id"
                  "extra_variables"
                  "request"
                ]
                "__visited" => [
                  "Thelia\Api\Resource\Product#8@c7d8fd62e8b2fa9c402d9c887a25e909" => true
                ]
                "__path" => [
                  "Thelia\Api\Resource\Product"
                ]
                "__depth" => 1
                "enable_max_depth" => true
                "max_depth" => 10
              ]
            }
          ]
          -propelModel: Thelia\Model\Product {#16882 …}
          +id: 8
          +taxRule: ? Thelia\Api\Resource\TaxRule
          +ref: "PROD008"
          +visible: true
          +position: 0
          +template: null
          +brand: null
          +virtual: false
          +shippingSurcharge: 0.0
          +shippingSurchargeMode: 0
          +freeShipping: false
          +createdAt: DateTime @1792061683 {#16881
            date: 2026-10-15 12:54:43.0 Europe/Paris (+02:00)
          }
          +updatedAt: DateTime @1794052483 {#16875
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +productCategories: [
            Thelia\Api\Resource\ProductCategory {#17728
              +category: Thelia\Api\Resource\Category {#17741 …}
              +product: Thelia\Api\Resource\Product {#17761 …}
              +defaultCategory: true
              +position: 1
              +createdAt: DateTime @1794052483 {#16955
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#16956
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductCategory {#16954 …}
            }
          ]
          +productSaleElements: [
            Thelia\Api\Resource\ProductSaleElements {#17817
              +id: 33
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD008-0"
              +quantity: 19
              +visible: true
              +position: 1
              +promo: false
              +displayInitialPrice: null
              +newness: false
              +weight: 2.8
              +isDefault: true
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17851
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17865 …}
                  +currency: Thelia\Api\Resource\Currency {#17875 …}
                  +price: 489.0
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17089
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17090
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17088 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#17005
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17006
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#16990 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#17795
              +id: 34
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD008-1"
              +quantity: 20
              +visible: true
              +position: 2
              +promo: false
              +displayInitialPrice: null
              +newness: false
              +weight: 2.9
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17857
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17910 …}
                  +currency: Thelia\Api\Resource\Currency {#17920 …}
                  +price: 489.0
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17092
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17093
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17091 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#17008
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17009
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17007 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#17840
              +id: 35
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD008-2"
              +quantity: 21
              +visible: true
              +position: 3
              +promo: false
              +displayInitialPrice: null
              +newness: true
              +weight: 3.0
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17883
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17955 …}
                  +currency: Thelia\Api\Resource\Currency {#17965 …}
                  +price: 489.0
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17095
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17096
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17094 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#17011
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17012
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17010 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#17874
              +id: 36
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD008-3"
              +quantity: 22
              +visible: true
              +position: 4
              +promo: false
              +displayInitialPrice: null
              +newness: false
              +weight: 3.1
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17928
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18000 …}
                  +currency: Thelia\Api\Resource\Currency {#18010 …}
                  +price: 489.0
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17098
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17099
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17097 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#17014
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17015
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17013 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#17919
              +id: 37
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD008-4"
              +quantity: 23
              +visible: true
              +position: 5
              +promo: false
              +displayInitialPrice: null
              +newness: false
              +weight: 3.2
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17973
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18045 …}
                  +currency: Thelia\Api\Resource\Currency {#18055 …}
                  +price: 489.0
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17101
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17102
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17100 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#17017
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17018
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17016 …}
            }
          ]
          +featureProducts: []
          +productAssociatedContents: ? array
        }
        Thelia\Api\Resource\Product {#16923
          +i18ns: Thelia\Api\Resource\I18nCollection {#17373 …}
          #resourceAddons: [
            "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#17425
              +libraryImages: []
              -context: [
                "path_info" => "/api/front/products"
                "operation" => ApiPlatform\Metadata\GetCollection {#7850}
                "uri_variables" => []
                "resource_class" => "Thelia\Api\Resource\Product"
                "filters" => [
                  "page" => 1
                  "itemsPerPage" => 5
                  "visible" => true
                  "productCategories.category.id" => 5
                  "locale" => "fr_FR"
                ]
                "groups" => [
                  "front:product:read"
                ]
                "exclude_from_cache_key" => [
                  "root_operation"
                  "operation"
                  "object"
                  "data"
                  "property_metadata"
                  "circular_reference_limit_counters"
                  "debug_trace_id"
                  "extra_variables"
                  "request"
                ]
                "__visited" => [
                  "Thelia\Api\Resource\Product#9@c7d8fd62e8b2fa9c402d9c887a25e909" => true
                ]
                "__path" => [
                  "Thelia\Api\Resource\Product"
                ]
                "__depth" => 1
                "enable_max_depth" => true
                "max_depth" => 10
              ]
            }
          ]
          -propelModel: Thelia\Model\Product {#16877 …}
          +id: 9
          +taxRule: ? Thelia\Api\Resource\TaxRule
          +ref: "PROD009"
          +visible: true
          +position: 0
          +template: null
          +brand: null
          +virtual: false
          +shippingSurcharge: 0.0
          +shippingSurchargeMode: 0
          +freeShipping: false
          +createdAt: DateTime @1792148083 {#16878
            date: 2026-10-16 12:54:43.0 Europe/Paris (+02:00)
          }
          +updatedAt: DateTime @1794052483 {#16921
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +productCategories: [
            Thelia\Api\Resource\ProductCategory {#18007
              +category: Thelia\Api\Resource\Category {#18020 …}
              +product: Thelia\Api\Resource\Product {#18040 …}
              +defaultCategory: true
              +position: 1
              +createdAt: DateTime @1794052483 {#16958
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#16959
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductCategory {#16957 …}
            }
          ]
          +productSaleElements: [
            Thelia\Api\Resource\ProductSaleElements {#18096
              +id: 38
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD009-0"
              +quantity: 45
              +visible: true
              +position: 1
              +promo: false
              +displayInitialPrice: null
              +newness: true
              +weight: 11.4
              +isDefault: true
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#18130
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18144 …}
                  +currency: Thelia\Api\Resource\Currency {#18154 …}
                  +price: 520.0
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17104
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17105
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17103 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#17020
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17021
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17019 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#18074
              +id: 39
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD009-1"
              +quantity: 46
              +visible: true
              +position: 2
              +promo: false
              +displayInitialPrice: null
              +newness: false
              +weight: 11.5
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#18136
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18189 …}
                  +currency: Thelia\Api\Resource\Currency {#18199 …}
                  +price: 520.0
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17107
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17108
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17106 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#17023
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17024
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17022 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#18119
              +id: 40
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD009-2"
              +quantity: 47
              +visible: true
              +position: 3
              +promo: false
              +displayInitialPrice: null
              +newness: false
              +weight: 11.6
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#18162
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18234 …}
                  +currency: Thelia\Api\Resource\Currency {#18244 …}
                  +price: 520.0
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17110
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17111
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17109 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#17026
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17027
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17025 …}
            }
          ]
          +featureProducts: []
          +productAssociatedContents: ? array
        }
      ]
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#16612
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#16611 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#16616 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#16668 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#16394 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#16747 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#16740 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#16718 …}
    #content: null
    #languages: null
    #charsets: null
    #encodings: null
    #acceptableContentTypes: null
    #pathInfo: "/api/front/products"
    #requestUri: "/api/front/products"
    #baseUrl: ""
    #basePath: null
    #method: "GET"
    #format: null
    #session: null
    #locale: null
    #defaultLocale: "en"
    -preferredFormat: null
    -isHostValid: true
    -isForwardedValid: true
    -isSafeContentPreferred: ? bool
    -trustedValuesCache: []
    -isIisRewrite: false
    basePath: ""
    format: "html"
  }
]
ItemNormalizer (1.43 ms)
9.21 ms

denormalize 0

Nothing was denormalized.

encode 0

Nothing was encoded.

decode 0

Nothing was decoded.