Redirect 301 redirect from GET @n/a (88e74e)

GET https://store.nostradamnit.com/haley-1.html?currency=GBP

Serializer

19 Handled
68.42 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 {#4678
  -pager: Propel\Runtime\Util\PropelModelPager {#4739
    #query: Thelia\Model\CategoryQuery {#4867 …}
    #page: 1
    #maxPerPage: 30
    #lastPage: 1
    #nbResults: 2
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#4726 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\Category {#4710
      +i18ns: Thelia\Api\Resource\I18nCollection {#4680 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Category {#4730 …}
      +id: 1
      +parent: 0
      +visible: true
      +position: 1
      +defaultTemplateId: 1
      +createdAt: DateTime @1794052482 {#4731
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052482 {#4725
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
    }
    Thelia\Api\Resource\Category {#4659
      +i18ns: Thelia\Api\Resource\I18nCollection {#4677 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Category {#3791 …}
      +id: 2
      +parent: 0
      +visible: true
      +position: 2
      +defaultTemplateId: 1
      +createdAt: DateTime @1794052482 {#3782
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052482 {#3793
        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 {#4904
    #parameters: ApiPlatform\Metadata\Parameters {#4903 …}
    #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 {#4678
      -pager: Propel\Runtime\Util\PropelModelPager {#4739
        #query: Thelia\Model\CategoryQuery {#4867 …}
        #page: 1
        #maxPerPage: 30
        #lastPage: 1
        #nbResults: 2
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#4726 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\Category {#4710
          +i18ns: Thelia\Api\Resource\I18nCollection {#4680 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Category {#4730 …}
          +id: 1
          +parent: 0
          +visible: true
          +position: 1
          +defaultTemplateId: 1
          +createdAt: DateTime @1794052482 {#4731
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052482 {#4725
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
        }
        Thelia\Api\Resource\Category {#4659
          +i18ns: Thelia\Api\Resource\I18nCollection {#4677 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Category {#3791 …}
          +id: 2
          +parent: 0
          +visible: true
          +position: 2
          +defaultTemplateId: 1
          +createdAt: DateTime @1794052482 {#3782
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052482 {#3793
            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 {#4381
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#4378 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#4380 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#4379 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#4375 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#4376 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#4377 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#4374 …}
    #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.34 ms)
3.61 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#4967
  -pager: Propel\Runtime\Util\PropelModelPager {#5064
    #query: Thelia\Model\CategoryQuery {#5085 …}
    #page: 1
    #maxPerPage: 30
    #lastPage: 1
    #nbResults: 4
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#5052 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\Category {#5006
      +i18ns: Thelia\Api\Resource\I18nCollection {#5004 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Category {#3745 …}
      +id: 3
      +parent: 2
      +visible: true
      +position: 1
      +defaultTemplateId: 1
      +createdAt: DateTime @1794052482 {#3807
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052482 {#3806
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
    }
    Thelia\Api\Resource\Category {#4990
      +i18ns: Thelia\Api\Resource\I18nCollection {#5000 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Category {#5031 …}
      +id: 5
      +parent: 1
      +visible: true
      +position: 1
      +defaultTemplateId: 1
      +createdAt: DateTime @1794052483 {#5030
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052483 {#5083
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
    }
    Thelia\Api\Resource\Category {#4976
      +i18ns: Thelia\Api\Resource\I18nCollection {#4982 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Category {#5023 …}
      +id: 4
      +parent: 2
      +visible: true
      +position: 2
      +defaultTemplateId: 1
      +createdAt: DateTime @1794052482 {#5022
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052482 {#5021
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
    }
    Thelia\Api\Resource\Category {#4962
      +i18ns: Thelia\Api\Resource\I18nCollection {#4968 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Category {#5019 …}
      +id: 6
      +parent: 1
      +visible: true
      +position: 2
      +defaultTemplateId: 1
      +createdAt: DateTime @1794052483 {#5018
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052483 {#5017
        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 {#4904
    #parameters: ApiPlatform\Metadata\Parameters {#4903 …}
    #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 {#4967
      -pager: Propel\Runtime\Util\PropelModelPager {#5064
        #query: Thelia\Model\CategoryQuery {#5085 …}
        #page: 1
        #maxPerPage: 30
        #lastPage: 1
        #nbResults: 4
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#5052 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\Category {#5006
          +i18ns: Thelia\Api\Resource\I18nCollection {#5004 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Category {#3745 …}
          +id: 3
          +parent: 2
          +visible: true
          +position: 1
          +defaultTemplateId: 1
          +createdAt: DateTime @1794052482 {#3807
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052482 {#3806
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
        }
        Thelia\Api\Resource\Category {#4990
          +i18ns: Thelia\Api\Resource\I18nCollection {#5000 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Category {#5031 …}
          +id: 5
          +parent: 1
          +visible: true
          +position: 1
          +defaultTemplateId: 1
          +createdAt: DateTime @1794052483 {#5030
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#5083
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
        }
        Thelia\Api\Resource\Category {#4976
          +i18ns: Thelia\Api\Resource\I18nCollection {#4982 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Category {#5023 …}
          +id: 4
          +parent: 2
          +visible: true
          +position: 2
          +defaultTemplateId: 1
          +createdAt: DateTime @1794052482 {#5022
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052482 {#5021
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
        }
        Thelia\Api\Resource\Category {#4962
          +i18ns: Thelia\Api\Resource\I18nCollection {#4968 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Category {#5019 …}
          +id: 6
          +parent: 1
          +visible: true
          +position: 2
          +defaultTemplateId: 1
          +createdAt: DateTime @1794052483 {#5018
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#5017
            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 {#4869
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#5127 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#5145 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#5164 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#5103 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#5120 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#5132 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#5097 …}
    #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.25 ms)
1.15 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#4314
  -pager: Propel\Runtime\Util\PropelModelPager {#4313
    #query: Thelia\Model\CategoryQuery {#4409 …}
    #page: 0
    #maxPerPage: 30
    #lastPage: 0
    #nbResults: 0
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#4325 …}
    #con: null
  }
  storage: []
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/categories"
  "operation" => ApiPlatform\Metadata\GetCollection {#4904
    #parameters: ApiPlatform\Metadata\Parameters {#4903 …}
    #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 {#4314
      -pager: Propel\Runtime\Util\PropelModelPager {#4313
        #query: Thelia\Model\CategoryQuery {#4409 …}
        #page: 0
        #maxPerPage: 30
        #lastPage: 0
        #nbResults: 0
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#4325 …}
        #con: null
      }
      storage: []
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#5087
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#4947 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#5035 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#4960 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#4981 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#4422 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#5044 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#5012 …}
    #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.01 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#6127
  -pager: Propel\Runtime\Util\PropelModelPager {#6182
    #query: Thelia\Model\FolderQuery {#6125 …}
    #page: 0
    #maxPerPage: 30
    #lastPage: 0
    #nbResults: 0
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#6223 …}
    #con: null
  }
  storage: []
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/folders"
  "operation" => ApiPlatform\Metadata\GetCollection {#6104
    #parameters: ApiPlatform\Metadata\Parameters {#6105 …}
    #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 {#6127
      -pager: Propel\Runtime\Util\PropelModelPager {#6182
        #query: Thelia\Model\FolderQuery {#6125 …}
        #page: 0
        #maxPerPage: 30
        #lastPage: 0
        #nbResults: 0
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#6223 …}
        #con: null
      }
      storage: []
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#6069
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#6074 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#6072 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#6073 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#6077 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#6076 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#6075 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#6078 …}
    #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 {#6449
  -pager: Propel\Runtime\Util\PropelModelPager {#6272
    #query: Thelia\Model\ContentQuery {#6266 …}
    #page: 1
    #maxPerPage: 30
    #lastPage: 1
    #nbResults: 3
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#6400 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\Content {#6377
      +i18ns: Thelia\Api\Resource\I18nCollection {#6427 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Content {#6403 …}
      +id: 6
      +visible: true
      +position: null
      +contentFolders: [
        Thelia\Api\Resource\ContentFolder {#6445
          +content: Thelia\Api\Resource\Content {#6464 …}
          +folder: Thelia\Api\Resource\Folder {#6500 …}
          +defaultFolder: true
          +position: 1
          +createdAt: DateTime @1794052482 {#6430
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052482 {#6431
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ContentFolder {#6429 …}
        }
      ]
      +publishAt: null
      +unpublishAt: null
      +createdAt: DateTime @1794052482 {#6406
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052482 {#6383
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
    }
    Thelia\Api\Resource\Content {#6450
      +i18ns: Thelia\Api\Resource\I18nCollection {#6413 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Content {#6364 …}
      +id: 7
      +visible: true
      +position: null
      +contentFolders: [
        Thelia\Api\Resource\ContentFolder {#6499
          +content: Thelia\Api\Resource\Content {#6537 …}
          +folder: Thelia\Api\Resource\Folder {#6553 …}
          +defaultFolder: true
          +position: 2
          +createdAt: DateTime @1794052482 {#6433
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052482 {#6434
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ContentFolder {#6432 …}
        }
      ]
      +publishAt: null
      +unpublishAt: null
      +createdAt: DateTime @1794052482 {#6392
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052482 {#6362
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
    }
    Thelia\Api\Resource\Content {#6407
      +i18ns: Thelia\Api\Resource\I18nCollection {#6501 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Content {#6390 …}
      +id: 8
      +visible: true
      +position: null
      +contentFolders: [
        Thelia\Api\Resource\ContentFolder {#6539
          +content: Thelia\Api\Resource\Content {#6588 …}
          +folder: Thelia\Api\Resource\Folder {#6604 …}
          +defaultFolder: true
          +position: 3
          +createdAt: DateTime @1794052482 {#6436
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052482 {#6437
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ContentFolder {#6435 …}
        }
      ]
      +publishAt: null
      +unpublishAt: null
      +createdAt: DateTime @1794052482 {#6395
        date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052482 {#6404
        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 {#6246
    #parameters: ApiPlatform\Metadata\Parameters {#6247 …}
    #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 {#6449
      -pager: Propel\Runtime\Util\PropelModelPager {#6272
        #query: Thelia\Model\ContentQuery {#6266 …}
        #page: 1
        #maxPerPage: 30
        #lastPage: 1
        #nbResults: 3
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#6400 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\Content {#6377
          +i18ns: Thelia\Api\Resource\I18nCollection {#6427 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Content {#6403 …}
          +id: 6
          +visible: true
          +position: null
          +contentFolders: [
            Thelia\Api\Resource\ContentFolder {#6445
              +content: Thelia\Api\Resource\Content {#6464 …}
              +folder: Thelia\Api\Resource\Folder {#6500 …}
              +defaultFolder: true
              +position: 1
              +createdAt: DateTime @1794052482 {#6430
                date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052482 {#6431
                date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ContentFolder {#6429 …}
            }
          ]
          +publishAt: null
          +unpublishAt: null
          +createdAt: DateTime @1794052482 {#6406
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052482 {#6383
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
        }
        Thelia\Api\Resource\Content {#6450
          +i18ns: Thelia\Api\Resource\I18nCollection {#6413 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Content {#6364 …}
          +id: 7
          +visible: true
          +position: null
          +contentFolders: [
            Thelia\Api\Resource\ContentFolder {#6499
              +content: Thelia\Api\Resource\Content {#6537 …}
              +folder: Thelia\Api\Resource\Folder {#6553 …}
              +defaultFolder: true
              +position: 2
              +createdAt: DateTime @1794052482 {#6433
                date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052482 {#6434
                date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ContentFolder {#6432 …}
            }
          ]
          +publishAt: null
          +unpublishAt: null
          +createdAt: DateTime @1794052482 {#6392
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052482 {#6362
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
        }
        Thelia\Api\Resource\Content {#6407
          +i18ns: Thelia\Api\Resource\I18nCollection {#6501 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Content {#6390 …}
          +id: 8
          +visible: true
          +position: null
          +contentFolders: [
            Thelia\Api\Resource\ContentFolder {#6539
              +content: Thelia\Api\Resource\Content {#6588 …}
              +folder: Thelia\Api\Resource\Folder {#6604 …}
              +defaultFolder: true
              +position: 3
              +createdAt: DateTime @1794052482 {#6436
                date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052482 {#6437
                date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ContentFolder {#6435 …}
            }
          ]
          +publishAt: null
          +unpublishAt: null
          +createdAt: DateTime @1794052482 {#6395
            date: 2026-11-07 12:54:42.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052482 {#6404
            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 {#6123
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#6207 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#6213 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#6210 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#6126 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#6189 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#6204 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#6187 …}
    #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.39 ms)
2.95 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#7036
  -pager: Propel\Runtime\Util\PropelModelPager {#6986
    #query: Thelia\Model\LangQuery {#6980 …}
    #page: 1
    #maxPerPage: 30
    #lastPage: 1
    #nbResults: 4
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#6990 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\Lang {#7028
      +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 {#3316
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052452 {#3317
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\Lang {#3315 …}
    }
    Thelia\Api\Resource\Lang {#7018
      +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 {#3364
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052452 {#3363
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\Lang {#3365 …}
    }
    Thelia\Api\Resource\Lang {#7032
      +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 {#3863
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052452 {#3864
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\Lang {#3862 …}
    }
    Thelia\Api\Resource\Lang {#7038
      +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 {#3866
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052452 {#3867
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\Lang {#3865 …}
    }
  ]
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/languages"
  "operation" => ApiPlatform\Metadata\GetCollection {#6953
    #parameters: ApiPlatform\Metadata\Parameters {#6954 …}
    #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 {#7036
      -pager: Propel\Runtime\Util\PropelModelPager {#6986
        #query: Thelia\Model\LangQuery {#6980 …}
        #page: 1
        #maxPerPage: 30
        #lastPage: 1
        #nbResults: 4
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#6990 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\Lang {#7028
          +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 {#3316
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052452 {#3317
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\Lang {#3315 …}
        }
        Thelia\Api\Resource\Lang {#7018
          +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 {#3364
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052452 {#3363
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\Lang {#3365 …}
        }
        Thelia\Api\Resource\Lang {#7032
          +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 {#3863
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052452 {#3864
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\Lang {#3862 …}
        }
        Thelia\Api\Resource\Lang {#7038
          +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 {#3866
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052452 {#3867
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\Lang {#3865 …}
        }
      ]
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#6920
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#6923 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#6921 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#6922 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#6926 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#6925 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#6924 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#6927 …}
    #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.15 ms) 1.51 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#7459
  -pager: Propel\Runtime\Util\PropelModelPager {#7380
    #query: Thelia\Model\CurrencyQuery {#7300 …}
    #page: 1
    #maxPerPage: 30
    #lastPage: 1
    #nbResults: 3
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#7412 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\Currency {#7435
      +i18ns: Thelia\Api\Resource\I18nCollection {#7437 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Currency {#3912 …}
      +id: 1
      +code: "EUR"
      +isocodeNumeric: "978"
      +symbol: "€"
      +format: "%n %s"
      +rate: 1.0
      +position: 1
      +visible: true
      +byDefault: true
      +createdAt: DateTime @1794052452 {#3898
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052452 {#3902
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
    }
    Thelia\Api\Resource\Currency {#7430
      +i18ns: Thelia\Api\Resource\I18nCollection {#7448 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Currency {#7416 …}
      +id: 2
      +code: "USD"
      +isocodeNumeric: "840"
      +symbol: "$"
      +format: "%s%n"
      +rate: 1.26
      +position: 2
      +visible: true
      +byDefault: false
      +createdAt: DateTime @1794052452 {#7411
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052452 {#7398
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
    }
    Thelia\Api\Resource\Currency {#7449
      +i18ns: Thelia\Api\Resource\I18nCollection {#7460 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Currency {#2948 …}
      +id: 3
      +code: "GBP"
      +isocodeNumeric: "826"
      +symbol: "£"
      +format: "%s%n"
      +rate: 0.89
      +position: 3
      +visible: true
      +byDefault: false
      +createdAt: DateTime @1794052452 {#2949
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052452 {#2950
        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 {#7279
    #parameters: ApiPlatform\Metadata\Parameters {#7280 …}
    #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 {#7459
      -pager: Propel\Runtime\Util\PropelModelPager {#7380
        #query: Thelia\Model\CurrencyQuery {#7300 …}
        #page: 1
        #maxPerPage: 30
        #lastPage: 1
        #nbResults: 3
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#7412 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\Currency {#7435
          +i18ns: Thelia\Api\Resource\I18nCollection {#7437 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Currency {#3912 …}
          +id: 1
          +code: "EUR"
          +isocodeNumeric: "978"
          +symbol: "€"
          +format: "%n %s"
          +rate: 1.0
          +position: 1
          +visible: true
          +byDefault: true
          +createdAt: DateTime @1794052452 {#3898
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052452 {#3902
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
        }
        Thelia\Api\Resource\Currency {#7430
          +i18ns: Thelia\Api\Resource\I18nCollection {#7448 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Currency {#7416 …}
          +id: 2
          +code: "USD"
          +isocodeNumeric: "840"
          +symbol: "$"
          +format: "%s%n"
          +rate: 1.26
          +position: 2
          +visible: true
          +byDefault: false
          +createdAt: DateTime @1794052452 {#7411
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052452 {#7398
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
        }
        Thelia\Api\Resource\Currency {#7449
          +i18ns: Thelia\Api\Resource\I18nCollection {#7460 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Currency {#2948 …}
          +id: 3
          +code: "GBP"
          +isocodeNumeric: "826"
          +symbol: "£"
          +format: "%s%n"
          +rate: 0.89
          +position: 3
          +visible: true
          +byDefault: false
          +createdAt: DateTime @1794052452 {#2949
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052452 {#2950
            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 {#7246
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#7249 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#7247 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#7248 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#7252 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#7251 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#7250 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#7253 …}
    #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.33 ms) 2.07 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#8065
  -pager: Propel\Runtime\Util\PropelModelPager {#8064
    #query: HeaderHighlights\Model\HeaderHighlightsImageQuery {#7993 …}
    #page: 0
    #maxPerPage: 30
    #lastPage: 0
    #nbResults: 0
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#8094 …}
    #con: null
  }
  storage: []
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/header-highlights"
  "operation" => ApiPlatform\Metadata\GetCollection {#7968
    #parameters: ApiPlatform\Metadata\Parameters {#7969 …}
    #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 {#8065
      -pager: Propel\Runtime\Util\PropelModelPager {#8064
        #query: HeaderHighlights\Model\HeaderHighlightsImageQuery {#7993 …}
        #page: 0
        #maxPerPage: 30
        #lastPage: 0
        #nbResults: 0
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#8094 …}
        #con: null
      }
      storage: []
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#7947
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#4386 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#7810 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#4389 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#7961 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#7960 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#4458 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#7962 …}
    #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 {#8755
  +i18ns: Thelia\Api\Resource\I18nCollection {#8316 …}
  #resourceAddons: [
    "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#8338
      +libraryImages: []
      -context: [
        "path_info" => "/api/front/products/23"
        "operation" => ApiPlatform\Metadata\Get {#8117
          #parameters: ApiPlatform\Metadata\Parameters {#8103 …}
          #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 {#8104
              #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" => "23"
        ]
        "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#23@960270736c79c3e26e655b9e8bc5a0c1" => true
        ]
        "__path" => [
          "Thelia\Api\Resource\Product"
        ]
        "__depth" => 1
        "enable_max_depth" => true
        "max_depth" => 10
      ]
    }
  ]
  -propelModel: Thelia\Model\Product {#3629 …}
  +id: 23
  +taxRule: Thelia\Api\Resource\TaxRule {#8843 …}
  +ref: "PROD023"
  +visible: true
  +position: 0
  +template: null
  +brand: Thelia\Api\Resource\Brand {#8745 …}
  +virtual: false
  +shippingSurcharge: 0.0
  +shippingSurchargeMode: 0
  +freeShipping: false
  +createdAt: DateTime @1793361283 {#3628
    date: 2026-10-30 12:54:43.0 Europe/Paris (+01:00)
  }
  +updatedAt: DateTime @1794052485 {#3627
    date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
  }
  +productCategories: [
    Thelia\Api\Resource\ProductCategory {#8582
      +category: Thelia\Api\Resource\Category {#8715 …}
      +product: Thelia\Api\Resource\Product {#8713 …}
      +defaultCategory: true
      +position: 1
      +createdAt: DateTime @1794052485 {#3730
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052485 {#3731
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductCategory {#3729 …}
    }
  ]
  +productSaleElements: [
    Thelia\Api\Resource\ProductSaleElements {#8807
      +id: 78
      +product: ? Thelia\Api\Resource\Product
      +ref: "PROD023-0"
      +quantity: 23
      +visible: true
      +position: 1
      +promo: false
      +displayInitialPrice: null
      +newness: true
      +weight: 21.8
      +isDefault: true
      +eanCode: null
      +mpn: null
      +manufacturerBrand: null
      +gtinSharedWith: []
      +productPrices: [
        Thelia\Api\Resource\ProductPrice {#8700
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8766 …}
          +currency: Thelia\Api\Resource\Currency {#8913 …}
          +price: 82.77
          +promoPrice: 0.0
          +fromDefaultCurrency: true
          +createdAt: DateTime @1794052485 {#3721
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#3981
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductPrice {#3979 …}
        }
      ]
      +attributeCombinations: [
        Thelia\Api\Resource\AttributeCombination {#8943
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8772 …}
          +attribute: Thelia\Api\Resource\Attribute {#8844 …}
          +attributeAv: Thelia\Api\Resource\AttributeAv {#8971 …}
          +position: null
          +createdAt: DateTime @1794052485 {#4118
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#4119
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\AttributeCombination {#4120 …}
        }
      ]
      +createdAt: DateTime @1794052485 {#3922
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052485 {#3937
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductSaleElements {#3936 …}
    }
    Thelia\Api\Resource\ProductSaleElements {#8730
      +id: 79
      +product: ? Thelia\Api\Resource\Product
      +ref: "PROD023-1"
      +quantity: 24
      +visible: true
      +position: 2
      +promo: false
      +displayInitialPrice: null
      +newness: false
      +weight: 21.9
      +isDefault: false
      +eanCode: null
      +mpn: null
      +manufacturerBrand: null
      +gtinSharedWith: []
      +productPrices: [
        Thelia\Api\Resource\ProductPrice {#8581
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8951 …}
          +currency: Thelia\Api\Resource\Currency {#8871 …}
          +price: 82.77
          +promoPrice: 0.0
          +fromDefaultCurrency: true
          +createdAt: DateTime @1794052485 {#3980
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#3977
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductPrice {#3975 …}
        }
      ]
      +attributeCombinations: [
        Thelia\Api\Resource\AttributeCombination {#8960
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8945 …}
          +attribute: Thelia\Api\Resource\Attribute {#9000 …}
          +attributeAv: Thelia\Api\Resource\AttributeAv {#8997 …}
          +position: null
          +createdAt: DateTime @1794052485 {#4121
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#4122
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\AttributeCombination {#4123 …}
        }
      ]
      +createdAt: DateTime @1794052485 {#4051
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052485 {#4049
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductSaleElements {#3919 …}
    }
    Thelia\Api\Resource\ProductSaleElements {#8813
      +id: 80
      +product: ? Thelia\Api\Resource\Product
      +ref: "PROD023-2"
      +quantity: 25
      +visible: true
      +position: 3
      +promo: false
      +displayInitialPrice: null
      +newness: false
      +weight: 22.0
      +isDefault: false
      +eanCode: null
      +mpn: null
      +manufacturerBrand: null
      +gtinSharedWith: []
      +productPrices: [
        Thelia\Api\Resource\ProductPrice {#8791
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9064 …}
          +currency: Thelia\Api\Resource\Currency {#9037 …}
          +price: 82.77
          +promoPrice: 0.0
          +fromDefaultCurrency: true
          +createdAt: DateTime @1794052485 {#3987
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#3984
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductPrice {#3982 …}
        }
      ]
      +attributeCombinations: [
        Thelia\Api\Resource\AttributeCombination {#9073
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9058 …}
          +attribute: Thelia\Api\Resource\Attribute {#9107 …}
          +attributeAv: Thelia\Api\Resource\AttributeAv {#9104 …}
          +position: null
          +createdAt: DateTime @1794052485 {#4124
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#4125
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\AttributeCombination {#4126 …}
        }
      ]
      +createdAt: DateTime @1794052485 {#3913
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052485 {#3914
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductSaleElements {#3932 …}
    }
    Thelia\Api\Resource\ProductSaleElements {#8786
      +id: 81
      +product: ? Thelia\Api\Resource\Product
      +ref: "PROD023-3"
      +quantity: 26
      +visible: true
      +position: 4
      +promo: false
      +displayInitialPrice: null
      +newness: false
      +weight: 22.1
      +isDefault: false
      +eanCode: null
      +mpn: null
      +manufacturerBrand: null
      +gtinSharedWith: []
      +productPrices: [
        Thelia\Api\Resource\ProductPrice {#8778
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9171 …}
          +currency: Thelia\Api\Resource\Currency {#9144 …}
          +price: 82.77
          +promoPrice: 0.0
          +fromDefaultCurrency: true
          +createdAt: DateTime @1794052485 {#3983
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#3989
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductPrice {#3985 …}
        }
      ]
      +attributeCombinations: [
        Thelia\Api\Resource\AttributeCombination {#9180
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9165 …}
          +attribute: Thelia\Api\Resource\Attribute {#9214 …}
          +attributeAv: Thelia\Api\Resource\AttributeAv {#9211 …}
          +position: null
          +createdAt: DateTime @1794052485 {#4127
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#4130
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\AttributeCombination {#4128 …}
        }
      ]
      +createdAt: DateTime @1794052485 {#3911
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052485 {#3908
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductSaleElements {#3910 …}
    }
    Thelia\Api\Resource\ProductSaleElements {#8777
      +id: 82
      +product: ? Thelia\Api\Resource\Product
      +ref: "PROD023-4"
      +quantity: 27
      +visible: true
      +position: 5
      +promo: false
      +displayInitialPrice: null
      +newness: true
      +weight: 22.2
      +isDefault: false
      +eanCode: null
      +mpn: null
      +manufacturerBrand: null
      +gtinSharedWith: []
      +productPrices: [
        Thelia\Api\Resource\ProductPrice {#8889
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9278 …}
          +currency: Thelia\Api\Resource\Currency {#9251 …}
          +price: 82.77
          +promoPrice: 0.0
          +fromDefaultCurrency: true
          +createdAt: DateTime @1794052485 {#3986
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#3991
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductPrice {#3988 …}
        }
      ]
      +attributeCombinations: [
        Thelia\Api\Resource\AttributeCombination {#9287
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9272 …}
          +attribute: Thelia\Api\Resource\Attribute {#9321 …}
          +attributeAv: Thelia\Api\Resource\AttributeAv {#9318 …}
          +position: null
          +createdAt: DateTime @1794052485 {#4132
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#4131
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\AttributeCombination {#4129 …}
        }
      ]
      +createdAt: DateTime @1794052485 {#3906
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052485 {#3907
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductSaleElements {#3909 …}
    }
    Thelia\Api\Resource\ProductSaleElements {#8921
      +id: 83
      +product: ? Thelia\Api\Resource\Product
      +ref: "PROD023-5"
      +quantity: 28
      +visible: true
      +position: 6
      +promo: false
      +displayInitialPrice: null
      +newness: false
      +weight: 22.3
      +isDefault: false
      +eanCode: null
      +mpn: null
      +manufacturerBrand: null
      +gtinSharedWith: []
      +productPrices: [
        Thelia\Api\Resource\ProductPrice {#9021
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9385 …}
          +currency: Thelia\Api\Resource\Currency {#9358 …}
          +price: 82.77
          +promoPrice: 0.0
          +fromDefaultCurrency: true
          +createdAt: DateTime @1794052485 {#3993
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#3990
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductPrice {#3995 …}
        }
      ]
      +attributeCombinations: [
        Thelia\Api\Resource\AttributeCombination {#9394
          +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9379 …}
          +attribute: Thelia\Api\Resource\Attribute {#9428 …}
          +attributeAv: Thelia\Api\Resource\AttributeAv {#9425 …}
          +position: null
          +createdAt: DateTime @1794052485 {#4133
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#4136
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\AttributeCombination {#4134 …}
        }
      ]
      +createdAt: DateTime @1794052485 {#3905
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052485 {#3904
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductSaleElements {#3903 …}
    }
  ]
  +featureProducts: [
    Thelia\Api\Resource\FeatureProduct {#8985
      +id: 41
      +product: ? Thelia\Api\Resource\Product
      +feature: Thelia\Api\Resource\Feature {#9433 …}
      +featureAv: Thelia\Api\Resource\FeatureAv {#9438 …}
      +free_text_value: ? string
      +is_free_text: false
      +locale: null
      +position: null
      +createdAt: DateTime @1794052485 {#8653
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052485 {#8655
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\FeatureProduct {#8568 …}
    }
  ]
  +productAssociatedContents: []
}
Format: none
[
  "path_info" => "/api/front/products/23"
  "operation" => ApiPlatform\Metadata\Get {#8117
    #parameters: ApiPlatform\Metadata\Parameters {#8103 …}
    #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 {#8104
        #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" => "23"
  ]
  "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 {#8755
      +i18ns: Thelia\Api\Resource\I18nCollection {#8316 …}
      #resourceAddons: [
        "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#8338
          +libraryImages: []
          -context: [
            "path_info" => "/api/front/products/23"
            "operation" => ApiPlatform\Metadata\Get {#8117}
            "uri_variables" => [
              "id" => "23"
            ]
            "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#23@960270736c79c3e26e655b9e8bc5a0c1" => true
            ]
            "__path" => [
              "Thelia\Api\Resource\Product"
            ]
            "__depth" => 1
            "enable_max_depth" => true
            "max_depth" => 10
          ]
        }
      ]
      -propelModel: Thelia\Model\Product {#3629 …}
      +id: 23
      +taxRule: Thelia\Api\Resource\TaxRule {#8843 …}
      +ref: "PROD023"
      +visible: true
      +position: 0
      +template: null
      +brand: Thelia\Api\Resource\Brand {#8745 …}
      +virtual: false
      +shippingSurcharge: 0.0
      +shippingSurchargeMode: 0
      +freeShipping: false
      +createdAt: DateTime @1793361283 {#3628
        date: 2026-10-30 12:54:43.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052485 {#3627
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +productCategories: [
        Thelia\Api\Resource\ProductCategory {#8582
          +category: Thelia\Api\Resource\Category {#8715 …}
          +product: Thelia\Api\Resource\Product {#8713 …}
          +defaultCategory: true
          +position: 1
          +createdAt: DateTime @1794052485 {#3730
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#3731
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductCategory {#3729 …}
        }
      ]
      +productSaleElements: [
        Thelia\Api\Resource\ProductSaleElements {#8807
          +id: 78
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD023-0"
          +quantity: 23
          +visible: true
          +position: 1
          +promo: false
          +displayInitialPrice: null
          +newness: true
          +weight: 21.8
          +isDefault: true
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#8700
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8766 …}
              +currency: Thelia\Api\Resource\Currency {#8913 …}
              +price: 82.77
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052485 {#3721
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052485 {#3981
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#3979 …}
            }
          ]
          +attributeCombinations: [
            Thelia\Api\Resource\AttributeCombination {#8943
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8772 …}
              +attribute: Thelia\Api\Resource\Attribute {#8844 …}
              +attributeAv: Thelia\Api\Resource\AttributeAv {#8971 …}
              +position: null
              +createdAt: DateTime @1794052485 {#4118
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052485 {#4119
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\AttributeCombination {#4120 …}
            }
          ]
          +createdAt: DateTime @1794052485 {#3922
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#3937
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#3936 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#8730
          +id: 79
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD023-1"
          +quantity: 24
          +visible: true
          +position: 2
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 21.9
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#8581
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8951 …}
              +currency: Thelia\Api\Resource\Currency {#8871 …}
              +price: 82.77
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052485 {#3980
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052485 {#3977
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#3975 …}
            }
          ]
          +attributeCombinations: [
            Thelia\Api\Resource\AttributeCombination {#8960
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#8945 …}
              +attribute: Thelia\Api\Resource\Attribute {#9000 …}
              +attributeAv: Thelia\Api\Resource\AttributeAv {#8997 …}
              +position: null
              +createdAt: DateTime @1794052485 {#4121
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052485 {#4122
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\AttributeCombination {#4123 …}
            }
          ]
          +createdAt: DateTime @1794052485 {#4051
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#4049
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#3919 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#8813
          +id: 80
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD023-2"
          +quantity: 25
          +visible: true
          +position: 3
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 22.0
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#8791
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9064 …}
              +currency: Thelia\Api\Resource\Currency {#9037 …}
              +price: 82.77
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052485 {#3987
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052485 {#3984
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#3982 …}
            }
          ]
          +attributeCombinations: [
            Thelia\Api\Resource\AttributeCombination {#9073
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9058 …}
              +attribute: Thelia\Api\Resource\Attribute {#9107 …}
              +attributeAv: Thelia\Api\Resource\AttributeAv {#9104 …}
              +position: null
              +createdAt: DateTime @1794052485 {#4124
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052485 {#4125
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\AttributeCombination {#4126 …}
            }
          ]
          +createdAt: DateTime @1794052485 {#3913
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#3914
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#3932 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#8786
          +id: 81
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD023-3"
          +quantity: 26
          +visible: true
          +position: 4
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 22.1
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#8778
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9171 …}
              +currency: Thelia\Api\Resource\Currency {#9144 …}
              +price: 82.77
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052485 {#3983
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052485 {#3989
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#3985 …}
            }
          ]
          +attributeCombinations: [
            Thelia\Api\Resource\AttributeCombination {#9180
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9165 …}
              +attribute: Thelia\Api\Resource\Attribute {#9214 …}
              +attributeAv: Thelia\Api\Resource\AttributeAv {#9211 …}
              +position: null
              +createdAt: DateTime @1794052485 {#4127
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052485 {#4130
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\AttributeCombination {#4128 …}
            }
          ]
          +createdAt: DateTime @1794052485 {#3911
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#3908
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#3910 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#8777
          +id: 82
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD023-4"
          +quantity: 27
          +visible: true
          +position: 5
          +promo: false
          +displayInitialPrice: null
          +newness: true
          +weight: 22.2
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#8889
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9278 …}
              +currency: Thelia\Api\Resource\Currency {#9251 …}
              +price: 82.77
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052485 {#3986
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052485 {#3991
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#3988 …}
            }
          ]
          +attributeCombinations: [
            Thelia\Api\Resource\AttributeCombination {#9287
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9272 …}
              +attribute: Thelia\Api\Resource\Attribute {#9321 …}
              +attributeAv: Thelia\Api\Resource\AttributeAv {#9318 …}
              +position: null
              +createdAt: DateTime @1794052485 {#4132
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052485 {#4131
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\AttributeCombination {#4129 …}
            }
          ]
          +createdAt: DateTime @1794052485 {#3906
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#3907
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#3909 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#8921
          +id: 83
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD023-5"
          +quantity: 28
          +visible: true
          +position: 6
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 22.3
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#9021
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9385 …}
              +currency: Thelia\Api\Resource\Currency {#9358 …}
              +price: 82.77
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052485 {#3993
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052485 {#3990
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#3995 …}
            }
          ]
          +attributeCombinations: [
            Thelia\Api\Resource\AttributeCombination {#9394
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#9379 …}
              +attribute: Thelia\Api\Resource\Attribute {#9428 …}
              +attributeAv: Thelia\Api\Resource\AttributeAv {#9425 …}
              +position: null
              +createdAt: DateTime @1794052485 {#4133
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052485 {#4136
                date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\AttributeCombination {#4134 …}
            }
          ]
          +createdAt: DateTime @1794052485 {#3905
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#3904
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#3903 …}
        }
      ]
      +featureProducts: [
        Thelia\Api\Resource\FeatureProduct {#8985
          +id: 41
          +product: ? Thelia\Api\Resource\Product
          +feature: Thelia\Api\Resource\Feature {#9433 …}
          +featureAv: Thelia\Api\Resource\FeatureAv {#9438 …}
          +free_text_value: ? string
          +is_free_text: false
          +locale: null
          +position: null
          +createdAt: DateTime @1794052485 {#8653
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#8655
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\FeatureProduct {#8568 …}
        }
      ]
      +productAssociatedContents: []
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#8111
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#8048 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#8108 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#8105 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#8006 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#7996 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#8082 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#8066 …}
    #content: null
    #languages: null
    #charsets: null
    #encodings: null
    #acceptableContentTypes: null
    #pathInfo: "/api/front/products/23"
    #requestUri: "/api/front/products/23"
    #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 (26.96 ms)
27.17 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#10662
  -pager: Propel\Runtime\Util\PropelModelPager {#10598
    #query: Thelia\Model\ProductAssociationTypeQuery {#10618 …}
    #page: 1
    #maxPerPage: 30
    #lastPage: 1
    #nbResults: 3
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#10583 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\ProductAssociationType {#10553
      +i18ns: Thelia\Api\Resource\I18nCollection {#10551 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductAssociationType {#10634 …}
      +id: 1
      +code: "accessory"
      +visible: true
      +reciprocal: false
      +position: 1
      +createdAt: DateTime @1794052452 {#10587
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052452 {#10536
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
    }
    Thelia\Api\Resource\ProductAssociationType {#10627
      +i18ns: Thelia\Api\Resource\I18nCollection {#10567 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductAssociationType {#10538 …}
      +id: 2
      +code: "cross_selling"
      +visible: true
      +reciprocal: true
      +position: 2
      +createdAt: DateTime @1794052452 {#10539
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052452 {#10540
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
    }
    Thelia\Api\Resource\ProductAssociationType {#10659
      +i18ns: Thelia\Api\Resource\I18nCollection {#10661 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\ProductAssociationType {#10541 …}
      +id: 3
      +code: "up_selling"
      +visible: true
      +reciprocal: false
      +position: 3
      +createdAt: DateTime @1794052452 {#10542
        date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052452 {#10543
        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 {#10523
    #parameters: ApiPlatform\Metadata\Parameters {#10524 …}
    #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 {#10662
      -pager: Propel\Runtime\Util\PropelModelPager {#10598
        #query: Thelia\Model\ProductAssociationTypeQuery {#10618 …}
        #page: 1
        #maxPerPage: 30
        #lastPage: 1
        #nbResults: 3
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#10583 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\ProductAssociationType {#10553
          +i18ns: Thelia\Api\Resource\I18nCollection {#10551 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductAssociationType {#10634 …}
          +id: 1
          +code: "accessory"
          +visible: true
          +reciprocal: false
          +position: 1
          +createdAt: DateTime @1794052452 {#10587
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052452 {#10536
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
        }
        Thelia\Api\Resource\ProductAssociationType {#10627
          +i18ns: Thelia\Api\Resource\I18nCollection {#10567 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductAssociationType {#10538 …}
          +id: 2
          +code: "cross_selling"
          +visible: true
          +reciprocal: true
          +position: 2
          +createdAt: DateTime @1794052452 {#10539
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052452 {#10540
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
        }
        Thelia\Api\Resource\ProductAssociationType {#10659
          +i18ns: Thelia\Api\Resource\I18nCollection {#10661 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductAssociationType {#10541 …}
          +id: 3
          +code: "up_selling"
          +visible: true
          +reciprocal: false
          +position: 3
          +createdAt: DateTime @1794052452 {#10542
            date: 2026-11-07 12:54:12.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052452 {#10543
            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 {#10326
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#10476 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#10469 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#9572 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#10482 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#10496 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#10494 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#10499 …}
    #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.23 ms)
2.20 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#10813
  -pager: Propel\Runtime\Util\PropelModelPager {#10726
    #query: Thelia\Model\BrandQuery {#10741 …}
    #page: 1
    #maxPerPage: 30
    #lastPage: 1
    #nbResults: 1
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#10825 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\Brand {#10712
      +i18ns: Thelia\Api\Resource\I18nCollection {#10827 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Brand {#4235 …}
      +id: 1
      +visible: true
      +products: ? array
      +position: 1
    }
  ]
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/brands"
  "operation" => ApiPlatform\Metadata\GetCollection {#9643
    #parameters: ApiPlatform\Metadata\Parameters {#9642 …}
    #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" => 23
    "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 {#10813
      -pager: Propel\Runtime\Util\PropelModelPager {#10726
        #query: Thelia\Model\BrandQuery {#10741 …}
        #page: 1
        #maxPerPage: 30
        #lastPage: 1
        #nbResults: 1
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#10825 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\Brand {#10712
          +i18ns: Thelia\Api\Resource\I18nCollection {#10827 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Brand {#4235 …}
          +id: 1
          +visible: true
          +products: ? array
          +position: 1
        }
      ]
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#10565
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#10761 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#10756 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#10751 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#10755 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#10760 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#10750 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#10775 …}
    #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 (1.22 ms) 1.23 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#11137
  -pager: Propel\Runtime\Util\PropelModelPager {#11051
    #query: Thelia\Model\SaleQuery {#11013 …}
    #page: 1
    #maxPerPage: 100
    #lastPage: 1
    #nbResults: 2
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#11096 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\Sale {#11121
      +i18ns: Thelia\Api\Resource\I18nCollection {#11123 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Sale {#11073 …}
      -preloadedProductIds: [
        1
        2
        3
        4
        5
      ]
      +id: 1
      +active: true
      +startDate: DateTime @1791324000 {#11086
        date: 2026-10-07 00:00:00.0 Europe/Paris (+02:00)
      }
      +endDate: DateTime @1796598000 {#11072
        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 {#11127
      +i18ns: Thelia\Api\Resource\I18nCollection {#11125 …}
      #resourceAddons: []
      -propelModel: Thelia\Model\Sale {#11102 …}
      -preloadedProductIds: [
        1
        2
        3
        4
        5
      ]
      +id: 2
      +active: true
      +startDate: DateTime @1791324000 {#11103
        date: 2026-10-07 00:00:00.0 Europe/Paris (+02:00)
      }
      +endDate: DateTime @1796598000 {#11104
        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 {#10991
    #parameters: ApiPlatform\Metadata\Parameters {#10992 …}
    #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 {#11137
      -pager: Propel\Runtime\Util\PropelModelPager {#11051
        #query: Thelia\Model\SaleQuery {#11013 …}
        #page: 1
        #maxPerPage: 100
        #lastPage: 1
        #nbResults: 2
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#11096 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\Sale {#11121
          +i18ns: Thelia\Api\Resource\I18nCollection {#11123 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Sale {#11073 …}
          -preloadedProductIds: [
            1
            2
            3
            4
            5
          ]
          +id: 1
          +active: true
          +startDate: DateTime @1791324000 {#11086
            date: 2026-10-07 00:00:00.0 Europe/Paris (+02:00)
          }
          +endDate: DateTime @1796598000 {#11072
            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 {#11127
          +i18ns: Thelia\Api\Resource\I18nCollection {#11125 …}
          #resourceAddons: []
          -propelModel: Thelia\Model\Sale {#11102 …}
          -preloadedProductIds: [
            1
            2
            3
            4
            5
          ]
          +id: 2
          +active: true
          +startDate: DateTime @1791324000 {#11103
            date: 2026-10-07 00:00:00.0 Europe/Paris (+02:00)
          }
          +endDate: DateTime @1796598000 {#11104
            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 {#10973
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#10971 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#10972 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#10950 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#10969 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#10965 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#10967 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#10943 …}
    #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.64 ms)
3.12 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#11592
  -pager: Propel\Runtime\Util\PropelModelPager {#11441
    #query: Thelia\Model\ProductImageQuery {#11423 …}
    #page: 1
    #maxPerPage: 30
    #lastPage: 1
    #nbResults: 6
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#11458 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\ProductImage {#11507
      +i18ns: Thelia\Api\Resource\I18nCollection {#11508 …}
      #resourceAddons: []
      -propelModel: null
      +id: 78
      +product: Thelia\Api\Resource\Product {#11521 …}
      +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
      +visible: true
      +decorative: false
      +position: 1
      +createdAt: DateTime @1794052485 {#3693
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052485 {#3694
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +file: "PROD023-1.jpg"
      +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod023-1.jpg"
      -propelModel: Thelia\Model\ProductImage {#3692 …}
    }
    Thelia\Api\Resource\ProductImage {#11513
      +i18ns: Thelia\Api\Resource\I18nCollection {#11511 …}
      #resourceAddons: []
      -propelModel: null
      +id: 79
      +product: Thelia\Api\Resource\Product {#11552 …}
      +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
      +visible: true
      +decorative: false
      +position: 2
      +createdAt: DateTime @1794052485 {#11471
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052485 {#11472
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +file: "PROD023-2.jpg"
      +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod023-2.jpg"
      -propelModel: Thelia\Model\ProductImage {#11470 …}
    }
    Thelia\Api\Resource\ProductImage {#11519
      +i18ns: Thelia\Api\Resource\I18nCollection {#11520 …}
      #resourceAddons: []
      -propelModel: null
      +id: 80
      +product: Thelia\Api\Resource\Product {#11627 …}
      +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
      +visible: true
      +decorative: false
      +position: 3
      +createdAt: DateTime @1794052485 {#11463
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052485 {#11502
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +file: "PROD023-3.jpg"
      +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod023-3.jpg"
      -propelModel: Thelia\Model\ProductImage {#11451 …}
    }
    Thelia\Api\Resource\ProductImage {#11647
      +i18ns: Thelia\Api\Resource\I18nCollection {#11551 …}
      #resourceAddons: []
      -propelModel: null
      +id: 81
      +product: Thelia\Api\Resource\Product {#11594 …}
      +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
      +visible: true
      +decorative: false
      +position: 4
      +createdAt: DateTime @1794052485 {#11486
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052485 {#11485
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +file: "PROD023-4.jpg"
      +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod023-4.jpg"
      -propelModel: Thelia\Model\ProductImage {#11504 …}
    }
    Thelia\Api\Resource\ProductImage {#11615
      +i18ns: Thelia\Api\Resource\I18nCollection {#11628 …}
      #resourceAddons: []
      -propelModel: null
      +id: 82
      +product: Thelia\Api\Resource\Product {#11654 …}
      +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
      +visible: true
      +decorative: false
      +position: 5
      +createdAt: DateTime @1794052485 {#11488
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052485 {#11489
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +file: "PROD023-5.jpg"
      +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod023-5.jpg"
      -propelModel: Thelia\Model\ProductImage {#11487 …}
    }
    Thelia\Api\Resource\ProductImage {#11582
      +i18ns: Thelia\Api\Resource\I18nCollection {#11595 …}
      #resourceAddons: []
      -propelModel: null
      +id: 83
      +product: Thelia\Api\Resource\Product {#11687 …}
      +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
      +visible: true
      +decorative: false
      +position: 6
      +createdAt: DateTime @1794052485 {#11491
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052485 {#11492
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +file: "PROD023-6.jpg"
      +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod023-6.jpg"
      -propelModel: Thelia\Model\ProductImage {#11490 …}
    }
  ]
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/product_images"
  "operation" => ApiPlatform\Metadata\GetCollection {#11399
    #parameters: ApiPlatform\Metadata\Parameters {#11400 …}
    #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" => 23
    "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 {#11592
      -pager: Propel\Runtime\Util\PropelModelPager {#11441
        #query: Thelia\Model\ProductImageQuery {#11423 …}
        #page: 1
        #maxPerPage: 30
        #lastPage: 1
        #nbResults: 6
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#11458 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\ProductImage {#11507
          +i18ns: Thelia\Api\Resource\I18nCollection {#11508 …}
          #resourceAddons: []
          -propelModel: null
          +id: 78
          +product: Thelia\Api\Resource\Product {#11521 …}
          +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
          +visible: true
          +decorative: false
          +position: 1
          +createdAt: DateTime @1794052485 {#3693
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#3694
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +file: "PROD023-1.jpg"
          +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod023-1.jpg"
          -propelModel: Thelia\Model\ProductImage {#3692 …}
        }
        Thelia\Api\Resource\ProductImage {#11513
          +i18ns: Thelia\Api\Resource\I18nCollection {#11511 …}
          #resourceAddons: []
          -propelModel: null
          +id: 79
          +product: Thelia\Api\Resource\Product {#11552 …}
          +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
          +visible: true
          +decorative: false
          +position: 2
          +createdAt: DateTime @1794052485 {#11471
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#11472
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +file: "PROD023-2.jpg"
          +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod023-2.jpg"
          -propelModel: Thelia\Model\ProductImage {#11470 …}
        }
        Thelia\Api\Resource\ProductImage {#11519
          +i18ns: Thelia\Api\Resource\I18nCollection {#11520 …}
          #resourceAddons: []
          -propelModel: null
          +id: 80
          +product: Thelia\Api\Resource\Product {#11627 …}
          +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
          +visible: true
          +decorative: false
          +position: 3
          +createdAt: DateTime @1794052485 {#11463
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#11502
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +file: "PROD023-3.jpg"
          +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod023-3.jpg"
          -propelModel: Thelia\Model\ProductImage {#11451 …}
        }
        Thelia\Api\Resource\ProductImage {#11647
          +i18ns: Thelia\Api\Resource\I18nCollection {#11551 …}
          #resourceAddons: []
          -propelModel: null
          +id: 81
          +product: Thelia\Api\Resource\Product {#11594 …}
          +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
          +visible: true
          +decorative: false
          +position: 4
          +createdAt: DateTime @1794052485 {#11486
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#11485
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +file: "PROD023-4.jpg"
          +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod023-4.jpg"
          -propelModel: Thelia\Model\ProductImage {#11504 …}
        }
        Thelia\Api\Resource\ProductImage {#11615
          +i18ns: Thelia\Api\Resource\I18nCollection {#11628 …}
          #resourceAddons: []
          -propelModel: null
          +id: 82
          +product: Thelia\Api\Resource\Product {#11654 …}
          +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
          +visible: true
          +decorative: false
          +position: 5
          +createdAt: DateTime @1794052485 {#11488
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#11489
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +file: "PROD023-5.jpg"
          +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod023-5.jpg"
          -propelModel: Thelia\Model\ProductImage {#11487 …}
        }
        Thelia\Api\Resource\ProductImage {#11582
          +i18ns: Thelia\Api\Resource\I18nCollection {#11595 …}
          #resourceAddons: []
          -propelModel: null
          +id: 83
          +product: Thelia\Api\Resource\Product {#11687 …}
          +fileToUpload: ? Symfony\Component\HttpFoundation\File\UploadedFile
          +visible: true
          +decorative: false
          +position: 6
          +createdAt: DateTime @1794052485 {#11491
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#11492
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +file: "PROD023-6.jpg"
          +fileUrl: "https://store.nostradamnit.com/cache/images/product/prod023-6.jpg"
          -propelModel: Thelia\Model\ProductImage {#11490 …}
        }
      ]
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#11254
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#10946 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#11304 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#11011 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#11278 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#11294 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#11287 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#11344 …}
    #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.38 ms)
4.54 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#11953
  -pager: Propel\Runtime\Util\PropelModelPager {#11923
    #query: Thelia\Model\ProductVideoQuery {#11931 …}
    #page: 0
    #maxPerPage: 30
    #lastPage: 0
    #nbResults: 0
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#11929 …}
    #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 {#11839
    #parameters: ApiPlatform\Metadata\Parameters {#11840 …}
    #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" => 23
    "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 {#11953
      -pager: Propel\Runtime\Util\PropelModelPager {#11923
        #query: Thelia\Model\ProductVideoQuery {#11931 …}
        #page: 0
        #maxPerPage: 30
        #lastPage: 0
        #nbResults: 0
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#11929 …}
        #con: null
      }
      storage: []
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#11421
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#11801 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#11764 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#11729 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#11805 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#11550 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#11803 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#11806 …}
    #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 {#12024
  -pager: Propel\Runtime\Util\PropelModelPager {#12127
    #query: Thelia\Model\ProductSaleElementsProductImageQuery {#12135 …}
    #page: 0
    #maxPerPage: 30
    #lastPage: 0
    #nbResults: 0
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#12020 …}
    #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 {#11890
    #parameters: ApiPlatform\Metadata\Parameters {#11892 …}
    #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" => [
      78
      79
      80
      81
      82
      83
    ]
    "productSaleElements.product.id" => 23
    "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 {#12024
      -pager: Propel\Runtime\Util\PropelModelPager {#12127
        #query: Thelia\Model\ProductSaleElementsProductImageQuery {#12135 …}
        #page: 0
        #maxPerPage: 30
        #lastPage: 0
        #nbResults: 0
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#12020 …}
        #con: null
      }
      storage: []
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#11885
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#11870 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#11928 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#11873 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#11859 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#11858 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#11935 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#11850 …}
    #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 {#15419
  -pager: Propel\Runtime\Util\PropelModelPager {#14585
    #query: Thelia\Model\AccessoryQuery {#14640 …}
    #page: 1
    #maxPerPage: 12
    #lastPage: 1
    #nbResults: 2
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#14790 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\ProductAssociation {#14609
      +id: 45
      +product: Thelia\Api\Resource\Product {#14863 …}
      +associatedProduct: Thelia\Api\Resource\Product {#14893 …}
      +type: Thelia\Api\Resource\ProductAssociationType {#14895 …}
      +position: 1
      +createdAt: DateTime @1794052485 {#14809
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052485 {#14816
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\Accessory {#14810 …}
    }
    Thelia\Api\Resource\ProductAssociation {#15511
      +id: 46
      +product: Thelia\Api\Resource\Product {#14825 …}
      +associatedProduct: Thelia\Api\Resource\Product {#15129 …}
      +type: Thelia\Api\Resource\ProductAssociationType {#14832 …}
      +position: 2
      +createdAt: DateTime @1794052485 {#14798
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      +updatedAt: DateTime @1794052485 {#14797
        date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
      }
      #resourceAddons: []
      -propelModel: Thelia\Model\Accessory {#14815 …}
    }
  ]
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/product_associations"
  "operation" => ApiPlatform\Metadata\GetCollection {#14547
    #parameters: ApiPlatform\Metadata\Parameters {#14548 …}
    #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" => 23
    "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 {#15419
      -pager: Propel\Runtime\Util\PropelModelPager {#14585
        #query: Thelia\Model\AccessoryQuery {#14640 …}
        #page: 1
        #maxPerPage: 12
        #lastPage: 1
        #nbResults: 2
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#14790 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\ProductAssociation {#14609
          +id: 45
          +product: Thelia\Api\Resource\Product {#14863 …}
          +associatedProduct: Thelia\Api\Resource\Product {#14893 …}
          +type: Thelia\Api\Resource\ProductAssociationType {#14895 …}
          +position: 1
          +createdAt: DateTime @1794052485 {#14809
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#14816
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\Accessory {#14810 …}
        }
        Thelia\Api\Resource\ProductAssociation {#15511
          +id: 46
          +product: Thelia\Api\Resource\Product {#14825 …}
          +associatedProduct: Thelia\Api\Resource\Product {#15129 …}
          +type: Thelia\Api\Resource\ProductAssociationType {#14832 …}
          +position: 2
          +createdAt: DateTime @1794052485 {#14798
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052485 {#14797
            date: 2026-11-07 12:54:45.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\Accessory {#14815 …}
        }
      ]
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#14520
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#14518 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#14519 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#14515 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#14526 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#14525 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#14524 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#14527 …}
    #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.57 ms)
9.08 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#16732
  -pager: Propel\Runtime\Util\PropelModelPager {#16731
    #query: Thelia\Model\AccessoryQuery {#16659 …}
    #page: 0
    #maxPerPage: 12
    #lastPage: 0
    #nbResults: 0
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#16852 …}
    #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 {#14547
    #parameters: ApiPlatform\Metadata\Parameters {#14548 …}
    #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" => 23
    "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 {#16732
      -pager: Propel\Runtime\Util\PropelModelPager {#16731
        #query: Thelia\Model\AccessoryQuery {#16659 …}
        #page: 0
        #maxPerPage: 12
        #lastPage: 0
        #nbResults: 0
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#16852 …}
        #con: null
      }
      storage: []
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#16639
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#16638 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#16632 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#16602 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#16645 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#16644 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#16643 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#16646 …}
    #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.01 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#16917
  -pager: Propel\Runtime\Util\PropelModelPager {#16916
    #query: Thelia\Model\AccessoryQuery {#16850 …}
    #page: 0
    #maxPerPage: 12
    #lastPage: 0
    #nbResults: 0
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#17037 …}
    #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 {#14547
    #parameters: ApiPlatform\Metadata\Parameters {#14548 …}
    #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" => 23
    "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 {#16917
      -pager: Propel\Runtime\Util\PropelModelPager {#16916
        #query: Thelia\Model\AccessoryQuery {#16850 …}
        #page: 0
        #maxPerPage: 12
        #lastPage: 0
        #nbResults: 0
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#17037 …}
        #con: null
      }
      storage: []
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#16705
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#16704 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#16709 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#16761 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#16664 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#16840 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#16833 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#16811 …}
    #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.01 ms
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator
Thelia\Api\Bridge\Propel\State\Pagination\PropelPaginator {#17904
  -pager: Propel\Runtime\Util\PropelModelPager {#17148
    #query: Thelia\Model\ProductQuery {#16669 …}
    #page: 1
    #maxPerPage: 5
    #lastPage: 3
    #nbResults: 14
    #currentMaxLink: 1
    #maxRecordLimit: 0
    #results: Propel\Runtime\Collection\ObjectCollection {#17175 …}
    #con: null
  }
  storage: [
    Thelia\Api\Resource\Product {#17172
      +i18ns: Thelia\Api\Resource\I18nCollection {#17259 …}
      #resourceAddons: [
        "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#17200
          +libraryImages: []
          -context: [
            "path_info" => "/api/front/products"
            "operation" => ApiPlatform\Metadata\GetCollection {#8119
              #parameters: ApiPlatform\Metadata\Parameters {#8118 …}
              #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" => 3
              "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#1@c7d8fd62e8b2fa9c402d9c887a25e909" => true
            ]
            "__path" => [
              "Thelia\Api\Resource\Product"
            ]
            "__depth" => 1
            "enable_max_depth" => true
            "max_depth" => 10
          ]
        }
      ]
      -propelModel: Thelia\Model\Product {#17145 …}
      +id: 1
      +taxRule: ? Thelia\Api\Resource\TaxRule
      +ref: "PROD001"
      +visible: true
      +position: 0
      +template: null
      +brand: null
      +virtual: false
      +shippingSurcharge: 0.0
      +shippingSurchargeMode: 0
      +freeShipping: false
      +createdAt: DateTime @1791456883 {#17095
        date: 2026-10-08 12:54:43.0 Europe/Paris (+02:00)
      }
      +updatedAt: DateTime @1794052483 {#17093
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +productCategories: [
        Thelia\Api\Resource\ProductCategory {#17359
          +category: Thelia\Api\Resource\Category {#17346 …}
          +product: Thelia\Api\Resource\Product {#17525 …}
          +defaultCategory: true
          +position: 1
          +createdAt: DateTime @1794052483 {#17231
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17232
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductCategory {#17230 …}
        }
      ]
      +productSaleElements: [
        Thelia\Api\Resource\ProductSaleElements {#17471
          +id: 1
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD001-0"
          +quantity: 43
          +visible: true
          +position: 1
          +promo: true
          +displayInitialPrice: null
          +newness: false
          +weight: 16.6
          +isDefault: true
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17464
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17495 …}
              +currency: Thelia\Api\Resource\Currency {#17512 …}
              +price: 198.47
              +promoPrice: 177.11
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17378
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17379
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17377 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#17256
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17282
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17257 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#17356
          +id: 2
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD001-1"
          +quantity: 44
          +visible: true
          +position: 2
          +promo: true
          +displayInitialPrice: null
          +newness: false
          +weight: 16.7
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17354
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17579 …}
              +currency: Thelia\Api\Resource\Currency {#17552 …}
              +price: 198.47
              +promoPrice: 177.11
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17381
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17382
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17380 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#17270
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17285
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17264 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#17448
          +id: 3
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD001-2"
          +quantity: 45
          +visible: true
          +position: 3
          +promo: true
          +displayInitialPrice: null
          +newness: true
          +weight: 16.8
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17518
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17634 …}
              +currency: Thelia\Api\Resource\Currency {#17607 …}
              +price: 198.47
              +promoPrice: 177.11
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17384
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17385
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17383 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#17271
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17267
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17292 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#17510
          +id: 4
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD001-3"
          +quantity: 46
          +visible: true
          +position: 4
          +promo: true
          +displayInitialPrice: null
          +newness: false
          +weight: 16.9
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17501
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17689 …}
              +currency: Thelia\Api\Resource\Currency {#17662 …}
              +price: 198.47
              +promoPrice: 177.11
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17387
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17388
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17386 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#17289
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17280
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17268 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#17504
          +id: 5
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD001-4"
          +quantity: 47
          +visible: true
          +position: 5
          +promo: true
          +displayInitialPrice: null
          +newness: false
          +weight: 17.0
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17573
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17744 …}
              +currency: Thelia\Api\Resource\Currency {#17717 …}
              +price: 198.47
              +promoPrice: 177.11
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17390
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17391
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17389 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#17283
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17281
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17291 …}
        }
      ]
      +featureProducts: []
      +productAssociatedContents: ? array
    }
    Thelia\Api\Resource\Product {#17203
      +i18ns: Thelia\Api\Resource\I18nCollection {#17211 …}
      #resourceAddons: [
        "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#17205
          +libraryImages: []
          -context: [
            "path_info" => "/api/front/products"
            "operation" => ApiPlatform\Metadata\GetCollection {#8119}
            "uri_variables" => []
            "resource_class" => "Thelia\Api\Resource\Product"
            "filters" => [
              "page" => 1
              "itemsPerPage" => 5
              "visible" => true
              "productCategories.category.id" => 3
              "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#11@c7d8fd62e8b2fa9c402d9c887a25e909" => true
            ]
            "__path" => [
              "Thelia\Api\Resource\Product"
            ]
            "__depth" => 1
            "enable_max_depth" => true
            "max_depth" => 10
          ]
        }
      ]
      -propelModel: Thelia\Model\Product {#17063 …}
      +id: 11
      +taxRule: ? Thelia\Api\Resource\TaxRule
      +ref: "PROD011"
      +visible: true
      +position: 0
      +template: null
      +brand: null
      +virtual: false
      +shippingSurcharge: 0.0
      +shippingSurchargeMode: 0
      +freeShipping: false
      +createdAt: DateTime @1792320883 {#17099
        date: 2026-10-18 12:54:43.0 Europe/Paris (+02:00)
      }
      +updatedAt: DateTime @1794052483 {#17100
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +productCategories: [
        Thelia\Api\Resource\ProductCategory {#17716
          +category: Thelia\Api\Resource\Category {#17735 …}
          +product: Thelia\Api\Resource\Product {#17739 …}
          +defaultCategory: true
          +position: 1
          +createdAt: DateTime @1794052483 {#17234
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17235
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductCategory {#17233 …}
        }
      ]
      +productSaleElements: [
        Thelia\Api\Resource\ProductSaleElements {#17805
          +id: 45
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD011-0"
          +quantity: 40
          +visible: true
          +position: 1
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 4.7
          +isDefault: true
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17816
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17853 …}
              +currency: Thelia\Api\Resource\Currency {#17834 …}
              +price: 66.75
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17393
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17394
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17392 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#17299
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17300
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17298 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#17738
          +id: 46
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD011-1"
          +quantity: 41
          +visible: true
          +position: 2
          +promo: false
          +displayInitialPrice: null
          +newness: true
          +weight: 4.8
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17740
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17908 …}
              +currency: Thelia\Api\Resource\Currency {#17881 …}
              +price: 66.75
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17396
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17397
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17395 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#17302
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17303
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17301 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#17796
          +id: 47
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD011-2"
          +quantity: 42
          +visible: true
          +position: 3
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 4.9
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17828
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17963 …}
              +currency: Thelia\Api\Resource\Currency {#17936 …}
              +price: 66.75
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17399
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17400
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17398 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#17305
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17306
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17304 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#17836
          +id: 48
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD011-3"
          +quantity: 43
          +visible: true
          +position: 4
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 5.0
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#17847
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18018 …}
              +currency: Thelia\Api\Resource\Currency {#17991 …}
              +price: 66.75
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17402
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17403
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17401 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#17308
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17309
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17307 …}
        }
      ]
      +featureProducts: []
      +productAssociatedContents: ? array
    }
    Thelia\Api\Resource\Product {#17207
      +i18ns: Thelia\Api\Resource\I18nCollection {#17201 …}
      #resourceAddons: [
        "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#17362
          +libraryImages: []
          -context: [
            "path_info" => "/api/front/products"
            "operation" => ApiPlatform\Metadata\GetCollection {#8119}
            "uri_variables" => []
            "resource_class" => "Thelia\Api\Resource\Product"
            "filters" => [
              "page" => 1
              "itemsPerPage" => 5
              "visible" => true
              "productCategories.category.id" => 3
              "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#13@c7d8fd62e8b2fa9c402d9c887a25e909" => true
            ]
            "__path" => [
              "Thelia\Api\Resource\Product"
            ]
            "__depth" => 1
            "enable_max_depth" => true
            "max_depth" => 10
          ]
        }
      ]
      -propelModel: Thelia\Model\Product {#17160 …}
      +id: 13
      +taxRule: ? Thelia\Api\Resource\TaxRule
      +ref: "PROD013"
      +visible: true
      +position: 0
      +template: null
      +brand: null
      +virtual: false
      +shippingSurcharge: 0.0
      +shippingSurchargeMode: 0
      +freeShipping: false
      +createdAt: DateTime @1792493683 {#17159
        date: 2026-10-20 12:54:43.0 Europe/Paris (+02:00)
      }
      +updatedAt: DateTime @1794052483 {#17153
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +productCategories: [
        Thelia\Api\Resource\ProductCategory {#17990
          +category: Thelia\Api\Resource\Category {#18009 …}
          +product: Thelia\Api\Resource\Product {#18013 …}
          +defaultCategory: true
          +position: 1
          +createdAt: DateTime @1794052483 {#17237
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17238
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductCategory {#17236 …}
        }
      ]
      +productSaleElements: [
        Thelia\Api\Resource\ProductSaleElements {#18079
          +id: 50
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD013-0"
          +quantity: 24
          +visible: true
          +position: 1
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 9.3
          +isDefault: true
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#18090
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18127 …}
              +currency: Thelia\Api\Resource\Currency {#18108 …}
              +price: 87.22
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052483 {#17405
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17406
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17404 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052483 {#17311
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17312
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17310 …}
        }
      ]
      +featureProducts: []
      +productAssociatedContents: ? array
    }
    Thelia\Api\Resource\Product {#17210
      +i18ns: Thelia\Api\Resource\I18nCollection {#17643 …}
      #resourceAddons: [
        "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#17718
          +libraryImages: []
          -context: [
            "path_info" => "/api/front/products"
            "operation" => ApiPlatform\Metadata\GetCollection {#8119}
            "uri_variables" => []
            "resource_class" => "Thelia\Api\Resource\Product"
            "filters" => [
              "page" => 1
              "itemsPerPage" => 5
              "visible" => true
              "productCategories.category.id" => 3
              "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#14@c7d8fd62e8b2fa9c402d9c887a25e909" => true
            ]
            "__path" => [
              "Thelia\Api\Resource\Product"
            ]
            "__depth" => 1
            "enable_max_depth" => true
            "max_depth" => 10
          ]
        }
      ]
      -propelModel: Thelia\Model\Product {#17155 …}
      +id: 14
      +taxRule: ? Thelia\Api\Resource\TaxRule
      +ref: "PROD014"
      +visible: true
      +position: 0
      +template: null
      +brand: null
      +virtual: false
      +shippingSurcharge: 0.0
      +shippingSurchargeMode: 0
      +freeShipping: false
      +createdAt: DateTime @1792580083 {#17156
        date: 2026-10-21 12:54:43.0 Europe/Paris (+02:00)
      }
      +updatedAt: DateTime @1794052483 {#17199
        date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
      }
      +productCategories: [
        Thelia\Api\Resource\ProductCategory {#18106
          +category: Thelia\Api\Resource\Category {#18118 …}
          +product: Thelia\Api\Resource\Product {#18122 …}
          +defaultCategory: true
          +position: 1
          +createdAt: DateTime @1794052483 {#17240
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052483 {#17241
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductCategory {#17239 …}
        }
      ]
      +productSaleElements: [
        Thelia\Api\Resource\ProductSaleElements {#18188
          +id: 51
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD014-0"
          +quantity: 9
          +visible: true
          +position: 1
          +promo: false
          +displayInitialPrice: null
          +newness: true
          +weight: 23.2
          +isDefault: true
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#18199
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18236 …}
              +currency: Thelia\Api\Resource\Currency {#18217 …}
              +price: 99.68
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052484 {#17408
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052484 {#17409
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17407 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052484 {#17314
            date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052484 {#17315
            date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17313 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#18121
          +id: 52
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD014-1"
          +quantity: 10
          +visible: true
          +position: 2
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 23.3
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#18123
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18291 …}
              +currency: Thelia\Api\Resource\Currency {#18264 …}
              +price: 99.68
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052484 {#17411
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052484 {#17412
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17410 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052484 {#17317
            date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052484 {#17318
            date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17316 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#18179
          +id: 53
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD014-2"
          +quantity: 11
          +visible: true
          +position: 3
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 23.4
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#18211
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18346 …}
              +currency: Thelia\Api\Resource\Currency {#18319 …}
              +price: 99.68
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052484 {#17414
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052484 {#17415
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17413 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052484 {#17320
            date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052484 {#17321
            date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17319 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#18219
          +id: 54
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD014-3"
          +quantity: 12
          +visible: true
          +position: 4
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 23.5
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#18230
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18401 …}
              +currency: Thelia\Api\Resource\Currency {#18374 …}
              +price: 99.68
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052484 {#17417
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052484 {#17418
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17416 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052484 {#17323
            date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052484 {#17324
            date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17322 …}
        }
      ]
      +featureProducts: []
      +productAssociatedContents: ? array
    }
    Thelia\Api\Resource\Product {#17204
      +i18ns: Thelia\Api\Resource\I18nCollection {#17917 …}
      #resourceAddons: [
        "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#17992
          +libraryImages: []
          -context: [
            "path_info" => "/api/front/products"
            "operation" => ApiPlatform\Metadata\GetCollection {#8119}
            "uri_variables" => []
            "resource_class" => "Thelia\Api\Resource\Product"
            "filters" => [
              "page" => 1
              "itemsPerPage" => 5
              "visible" => true
              "productCategories.category.id" => 3
              "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#15@c7d8fd62e8b2fa9c402d9c887a25e909" => true
            ]
            "__path" => [
              "Thelia\Api\Resource\Product"
            ]
            "__depth" => 1
            "enable_max_depth" => true
            "max_depth" => 10
          ]
        }
      ]
      -propelModel: Thelia\Model\Product {#17173 …}
      +id: 15
      +taxRule: ? Thelia\Api\Resource\TaxRule
      +ref: "PROD015"
      +visible: true
      +position: 0
      +template: null
      +brand: null
      +virtual: false
      +shippingSurcharge: 0.0
      +shippingSurchargeMode: 0
      +freeShipping: false
      +createdAt: DateTime @1792666483 {#17198
        date: 2026-10-22 12:54:43.0 Europe/Paris (+02:00)
      }
      +updatedAt: DateTime @1794052484 {#17197
        date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
      }
      +productCategories: [
        Thelia\Api\Resource\ProductCategory {#18373
          +category: Thelia\Api\Resource\Category {#18392 …}
          +product: Thelia\Api\Resource\Product {#18396 …}
          +defaultCategory: true
          +position: 1
          +createdAt: DateTime @1794052484 {#17243
            date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052484 {#17244
            date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductCategory {#17242 …}
        }
        Thelia\Api\Resource\ProductCategory {#18462
          +category: Thelia\Api\Resource\Category {#18428 …}
          +product: Thelia\Api\Resource\Product {#18429 …}
          +defaultCategory: null
          +position: 2
          +createdAt: DateTime @1794052484 {#17246
            date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052484 {#17247
            date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductCategory {#17245 …}
        }
      ]
      +productSaleElements: [
        Thelia\Api\Resource\ProductSaleElements {#18504
          +id: 55
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD015-0"
          +quantity: 13
          +visible: true
          +position: 1
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 9.6
          +isDefault: true
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#18514
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18551 …}
              +currency: Thelia\Api\Resource\Currency {#18532 …}
              +price: 302.6
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052484 {#17420
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052484 {#17421
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17419 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052484 {#17326
            date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052484 {#17327
            date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17325 …}
        }
        Thelia\Api\Resource\ProductSaleElements {#18466
          +id: 56
          +product: ? Thelia\Api\Resource\Product
          +ref: "PROD015-1"
          +quantity: 14
          +visible: true
          +position: 2
          +promo: false
          +displayInitialPrice: null
          +newness: false
          +weight: 9.7
          +isDefault: false
          +eanCode: null
          +mpn: null
          +manufacturerBrand: null
          +gtinSharedWith: []
          +productPrices: [
            Thelia\Api\Resource\ProductPrice {#18471
              +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18606 …}
              +currency: Thelia\Api\Resource\Currency {#18579 …}
              +price: 302.6
              +promoPrice: 0.0
              +fromDefaultCurrency: true
              +createdAt: DateTime @1794052484 {#17423
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052484 {#17424
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductPrice {#17422 …}
            }
          ]
          +attributeCombinations: []
          +createdAt: DateTime @1794052484 {#17329
            date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
          }
          +updatedAt: DateTime @1794052484 {#17330
            date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
          }
          #resourceAddons: []
          -propelModel: Thelia\Model\ProductSaleElements {#17328 …}
        }
      ]
      +featureProducts: []
      +productAssociatedContents: ? array
    }
  ]
  flag::STD_PROP_LIST: false
  flag::ARRAY_AS_PROPS: false
}
Format: none
[
  "path_info" => "/api/front/products"
  "operation" => ApiPlatform\Metadata\GetCollection {#8119
    #parameters: ApiPlatform\Metadata\Parameters {#8118 …}
    #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" => 3
    "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 {#17904
      -pager: Propel\Runtime\Util\PropelModelPager {#17148
        #query: Thelia\Model\ProductQuery {#16669 …}
        #page: 1
        #maxPerPage: 5
        #lastPage: 3
        #nbResults: 14
        #currentMaxLink: 1
        #maxRecordLimit: 0
        #results: Propel\Runtime\Collection\ObjectCollection {#17175 …}
        #con: null
      }
      storage: [
        Thelia\Api\Resource\Product {#17172
          +i18ns: Thelia\Api\Resource\I18nCollection {#17259 …}
          #resourceAddons: [
            "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#17200
              +libraryImages: []
              -context: [
                "path_info" => "/api/front/products"
                "operation" => ApiPlatform\Metadata\GetCollection {#8119}
                "uri_variables" => []
                "resource_class" => "Thelia\Api\Resource\Product"
                "filters" => [
                  "page" => 1
                  "itemsPerPage" => 5
                  "visible" => true
                  "productCategories.category.id" => 3
                  "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#1@c7d8fd62e8b2fa9c402d9c887a25e909" => true
                ]
                "__path" => [
                  "Thelia\Api\Resource\Product"
                ]
                "__depth" => 1
                "enable_max_depth" => true
                "max_depth" => 10
              ]
            }
          ]
          -propelModel: Thelia\Model\Product {#17145 …}
          +id: 1
          +taxRule: ? Thelia\Api\Resource\TaxRule
          +ref: "PROD001"
          +visible: true
          +position: 0
          +template: null
          +brand: null
          +virtual: false
          +shippingSurcharge: 0.0
          +shippingSurchargeMode: 0
          +freeShipping: false
          +createdAt: DateTime @1791456883 {#17095
            date: 2026-10-08 12:54:43.0 Europe/Paris (+02:00)
          }
          +updatedAt: DateTime @1794052483 {#17093
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +productCategories: [
            Thelia\Api\Resource\ProductCategory {#17359
              +category: Thelia\Api\Resource\Category {#17346 …}
              +product: Thelia\Api\Resource\Product {#17525 …}
              +defaultCategory: true
              +position: 1
              +createdAt: DateTime @1794052483 {#17231
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17232
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductCategory {#17230 …}
            }
          ]
          +productSaleElements: [
            Thelia\Api\Resource\ProductSaleElements {#17471
              +id: 1
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD001-0"
              +quantity: 43
              +visible: true
              +position: 1
              +promo: true
              +displayInitialPrice: null
              +newness: false
              +weight: 16.6
              +isDefault: true
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17464
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17495 …}
                  +currency: Thelia\Api\Resource\Currency {#17512 …}
                  +price: 198.47
                  +promoPrice: 177.11
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17378
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17379
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17377 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#17256
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17282
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17257 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#17356
              +id: 2
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD001-1"
              +quantity: 44
              +visible: true
              +position: 2
              +promo: true
              +displayInitialPrice: null
              +newness: false
              +weight: 16.7
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17354
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17579 …}
                  +currency: Thelia\Api\Resource\Currency {#17552 …}
                  +price: 198.47
                  +promoPrice: 177.11
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17381
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17382
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17380 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#17270
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17285
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17264 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#17448
              +id: 3
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD001-2"
              +quantity: 45
              +visible: true
              +position: 3
              +promo: true
              +displayInitialPrice: null
              +newness: true
              +weight: 16.8
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17518
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17634 …}
                  +currency: Thelia\Api\Resource\Currency {#17607 …}
                  +price: 198.47
                  +promoPrice: 177.11
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17384
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17385
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17383 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#17271
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17267
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17292 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#17510
              +id: 4
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD001-3"
              +quantity: 46
              +visible: true
              +position: 4
              +promo: true
              +displayInitialPrice: null
              +newness: false
              +weight: 16.9
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17501
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17689 …}
                  +currency: Thelia\Api\Resource\Currency {#17662 …}
                  +price: 198.47
                  +promoPrice: 177.11
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17387
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17388
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17386 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#17289
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17280
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17268 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#17504
              +id: 5
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD001-4"
              +quantity: 47
              +visible: true
              +position: 5
              +promo: true
              +displayInitialPrice: null
              +newness: false
              +weight: 17.0
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17573
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17744 …}
                  +currency: Thelia\Api\Resource\Currency {#17717 …}
                  +price: 198.47
                  +promoPrice: 177.11
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17390
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17391
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17389 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#17283
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17281
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17291 …}
            }
          ]
          +featureProducts: []
          +productAssociatedContents: ? array
        }
        Thelia\Api\Resource\Product {#17203
          +i18ns: Thelia\Api\Resource\I18nCollection {#17211 …}
          #resourceAddons: [
            "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#17205
              +libraryImages: []
              -context: [
                "path_info" => "/api/front/products"
                "operation" => ApiPlatform\Metadata\GetCollection {#8119}
                "uri_variables" => []
                "resource_class" => "Thelia\Api\Resource\Product"
                "filters" => [
                  "page" => 1
                  "itemsPerPage" => 5
                  "visible" => true
                  "productCategories.category.id" => 3
                  "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#11@c7d8fd62e8b2fa9c402d9c887a25e909" => true
                ]
                "__path" => [
                  "Thelia\Api\Resource\Product"
                ]
                "__depth" => 1
                "enable_max_depth" => true
                "max_depth" => 10
              ]
            }
          ]
          -propelModel: Thelia\Model\Product {#17063 …}
          +id: 11
          +taxRule: ? Thelia\Api\Resource\TaxRule
          +ref: "PROD011"
          +visible: true
          +position: 0
          +template: null
          +brand: null
          +virtual: false
          +shippingSurcharge: 0.0
          +shippingSurchargeMode: 0
          +freeShipping: false
          +createdAt: DateTime @1792320883 {#17099
            date: 2026-10-18 12:54:43.0 Europe/Paris (+02:00)
          }
          +updatedAt: DateTime @1794052483 {#17100
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +productCategories: [
            Thelia\Api\Resource\ProductCategory {#17716
              +category: Thelia\Api\Resource\Category {#17735 …}
              +product: Thelia\Api\Resource\Product {#17739 …}
              +defaultCategory: true
              +position: 1
              +createdAt: DateTime @1794052483 {#17234
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17235
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductCategory {#17233 …}
            }
          ]
          +productSaleElements: [
            Thelia\Api\Resource\ProductSaleElements {#17805
              +id: 45
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD011-0"
              +quantity: 40
              +visible: true
              +position: 1
              +promo: false
              +displayInitialPrice: null
              +newness: false
              +weight: 4.7
              +isDefault: true
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17816
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17853 …}
                  +currency: Thelia\Api\Resource\Currency {#17834 …}
                  +price: 66.75
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17393
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17394
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17392 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#17299
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17300
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17298 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#17738
              +id: 46
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD011-1"
              +quantity: 41
              +visible: true
              +position: 2
              +promo: false
              +displayInitialPrice: null
              +newness: true
              +weight: 4.8
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17740
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17908 …}
                  +currency: Thelia\Api\Resource\Currency {#17881 …}
                  +price: 66.75
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17396
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17397
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17395 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#17302
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17303
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17301 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#17796
              +id: 47
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD011-2"
              +quantity: 42
              +visible: true
              +position: 3
              +promo: false
              +displayInitialPrice: null
              +newness: false
              +weight: 4.9
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17828
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#17963 …}
                  +currency: Thelia\Api\Resource\Currency {#17936 …}
                  +price: 66.75
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17399
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17400
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17398 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#17305
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17306
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17304 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#17836
              +id: 48
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD011-3"
              +quantity: 43
              +visible: true
              +position: 4
              +promo: false
              +displayInitialPrice: null
              +newness: false
              +weight: 5.0
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#17847
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18018 …}
                  +currency: Thelia\Api\Resource\Currency {#17991 …}
                  +price: 66.75
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17402
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17403
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17401 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#17308
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17309
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17307 …}
            }
          ]
          +featureProducts: []
          +productAssociatedContents: ? array
        }
        Thelia\Api\Resource\Product {#17207
          +i18ns: Thelia\Api\Resource\I18nCollection {#17201 …}
          #resourceAddons: [
            "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#17362
              +libraryImages: []
              -context: [
                "path_info" => "/api/front/products"
                "operation" => ApiPlatform\Metadata\GetCollection {#8119}
                "uri_variables" => []
                "resource_class" => "Thelia\Api\Resource\Product"
                "filters" => [
                  "page" => 1
                  "itemsPerPage" => 5
                  "visible" => true
                  "productCategories.category.id" => 3
                  "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#13@c7d8fd62e8b2fa9c402d9c887a25e909" => true
                ]
                "__path" => [
                  "Thelia\Api\Resource\Product"
                ]
                "__depth" => 1
                "enable_max_depth" => true
                "max_depth" => 10
              ]
            }
          ]
          -propelModel: Thelia\Model\Product {#17160 …}
          +id: 13
          +taxRule: ? Thelia\Api\Resource\TaxRule
          +ref: "PROD013"
          +visible: true
          +position: 0
          +template: null
          +brand: null
          +virtual: false
          +shippingSurcharge: 0.0
          +shippingSurchargeMode: 0
          +freeShipping: false
          +createdAt: DateTime @1792493683 {#17159
            date: 2026-10-20 12:54:43.0 Europe/Paris (+02:00)
          }
          +updatedAt: DateTime @1794052483 {#17153
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +productCategories: [
            Thelia\Api\Resource\ProductCategory {#17990
              +category: Thelia\Api\Resource\Category {#18009 …}
              +product: Thelia\Api\Resource\Product {#18013 …}
              +defaultCategory: true
              +position: 1
              +createdAt: DateTime @1794052483 {#17237
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17238
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductCategory {#17236 …}
            }
          ]
          +productSaleElements: [
            Thelia\Api\Resource\ProductSaleElements {#18079
              +id: 50
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD013-0"
              +quantity: 24
              +visible: true
              +position: 1
              +promo: false
              +displayInitialPrice: null
              +newness: false
              +weight: 9.3
              +isDefault: true
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#18090
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18127 …}
                  +currency: Thelia\Api\Resource\Currency {#18108 …}
                  +price: 87.22
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052483 {#17405
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052483 {#17406
                    date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17404 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052483 {#17311
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17312
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17310 …}
            }
          ]
          +featureProducts: []
          +productAssociatedContents: ? array
        }
        Thelia\Api\Resource\Product {#17210
          +i18ns: Thelia\Api\Resource\I18nCollection {#17643 …}
          #resourceAddons: [
            "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#17718
              +libraryImages: []
              -context: [
                "path_info" => "/api/front/products"
                "operation" => ApiPlatform\Metadata\GetCollection {#8119}
                "uri_variables" => []
                "resource_class" => "Thelia\Api\Resource\Product"
                "filters" => [
                  "page" => 1
                  "itemsPerPage" => 5
                  "visible" => true
                  "productCategories.category.id" => 3
                  "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#14@c7d8fd62e8b2fa9c402d9c887a25e909" => true
                ]
                "__path" => [
                  "Thelia\Api\Resource\Product"
                ]
                "__depth" => 1
                "enable_max_depth" => true
                "max_depth" => 10
              ]
            }
          ]
          -propelModel: Thelia\Model\Product {#17155 …}
          +id: 14
          +taxRule: ? Thelia\Api\Resource\TaxRule
          +ref: "PROD014"
          +visible: true
          +position: 0
          +template: null
          +brand: null
          +virtual: false
          +shippingSurcharge: 0.0
          +shippingSurchargeMode: 0
          +freeShipping: false
          +createdAt: DateTime @1792580083 {#17156
            date: 2026-10-21 12:54:43.0 Europe/Paris (+02:00)
          }
          +updatedAt: DateTime @1794052483 {#17199
            date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
          }
          +productCategories: [
            Thelia\Api\Resource\ProductCategory {#18106
              +category: Thelia\Api\Resource\Category {#18118 …}
              +product: Thelia\Api\Resource\Product {#18122 …}
              +defaultCategory: true
              +position: 1
              +createdAt: DateTime @1794052483 {#17240
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052483 {#17241
                date: 2026-11-07 12:54:43.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductCategory {#17239 …}
            }
          ]
          +productSaleElements: [
            Thelia\Api\Resource\ProductSaleElements {#18188
              +id: 51
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD014-0"
              +quantity: 9
              +visible: true
              +position: 1
              +promo: false
              +displayInitialPrice: null
              +newness: true
              +weight: 23.2
              +isDefault: true
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#18199
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18236 …}
                  +currency: Thelia\Api\Resource\Currency {#18217 …}
                  +price: 99.68
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052484 {#17408
                    date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052484 {#17409
                    date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17407 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052484 {#17314
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052484 {#17315
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17313 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#18121
              +id: 52
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD014-1"
              +quantity: 10
              +visible: true
              +position: 2
              +promo: false
              +displayInitialPrice: null
              +newness: false
              +weight: 23.3
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#18123
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18291 …}
                  +currency: Thelia\Api\Resource\Currency {#18264 …}
                  +price: 99.68
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052484 {#17411
                    date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052484 {#17412
                    date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17410 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052484 {#17317
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052484 {#17318
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17316 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#18179
              +id: 53
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD014-2"
              +quantity: 11
              +visible: true
              +position: 3
              +promo: false
              +displayInitialPrice: null
              +newness: false
              +weight: 23.4
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#18211
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18346 …}
                  +currency: Thelia\Api\Resource\Currency {#18319 …}
                  +price: 99.68
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052484 {#17414
                    date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052484 {#17415
                    date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17413 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052484 {#17320
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052484 {#17321
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17319 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#18219
              +id: 54
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD014-3"
              +quantity: 12
              +visible: true
              +position: 4
              +promo: false
              +displayInitialPrice: null
              +newness: false
              +weight: 23.5
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#18230
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18401 …}
                  +currency: Thelia\Api\Resource\Currency {#18374 …}
                  +price: 99.68
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052484 {#17417
                    date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052484 {#17418
                    date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17416 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052484 {#17323
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052484 {#17324
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17322 …}
            }
          ]
          +featureProducts: []
          +productAssociatedContents: ? array
        }
        Thelia\Api\Resource\Product {#17204
          +i18ns: Thelia\Api\Resource\I18nCollection {#17917 …}
          #resourceAddons: [
            "ProductLibraryImagesAddon" => TheliaLibrary\Api\Resource\Addon\ProductLibraryImagesAddon {#17992
              +libraryImages: []
              -context: [
                "path_info" => "/api/front/products"
                "operation" => ApiPlatform\Metadata\GetCollection {#8119}
                "uri_variables" => []
                "resource_class" => "Thelia\Api\Resource\Product"
                "filters" => [
                  "page" => 1
                  "itemsPerPage" => 5
                  "visible" => true
                  "productCategories.category.id" => 3
                  "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#15@c7d8fd62e8b2fa9c402d9c887a25e909" => true
                ]
                "__path" => [
                  "Thelia\Api\Resource\Product"
                ]
                "__depth" => 1
                "enable_max_depth" => true
                "max_depth" => 10
              ]
            }
          ]
          -propelModel: Thelia\Model\Product {#17173 …}
          +id: 15
          +taxRule: ? Thelia\Api\Resource\TaxRule
          +ref: "PROD015"
          +visible: true
          +position: 0
          +template: null
          +brand: null
          +virtual: false
          +shippingSurcharge: 0.0
          +shippingSurchargeMode: 0
          +freeShipping: false
          +createdAt: DateTime @1792666483 {#17198
            date: 2026-10-22 12:54:43.0 Europe/Paris (+02:00)
          }
          +updatedAt: DateTime @1794052484 {#17197
            date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
          }
          +productCategories: [
            Thelia\Api\Resource\ProductCategory {#18373
              +category: Thelia\Api\Resource\Category {#18392 …}
              +product: Thelia\Api\Resource\Product {#18396 …}
              +defaultCategory: true
              +position: 1
              +createdAt: DateTime @1794052484 {#17243
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052484 {#17244
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductCategory {#17242 …}
            }
            Thelia\Api\Resource\ProductCategory {#18462
              +category: Thelia\Api\Resource\Category {#18428 …}
              +product: Thelia\Api\Resource\Product {#18429 …}
              +defaultCategory: null
              +position: 2
              +createdAt: DateTime @1794052484 {#17246
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052484 {#17247
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductCategory {#17245 …}
            }
          ]
          +productSaleElements: [
            Thelia\Api\Resource\ProductSaleElements {#18504
              +id: 55
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD015-0"
              +quantity: 13
              +visible: true
              +position: 1
              +promo: false
              +displayInitialPrice: null
              +newness: false
              +weight: 9.6
              +isDefault: true
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#18514
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18551 …}
                  +currency: Thelia\Api\Resource\Currency {#18532 …}
                  +price: 302.6
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052484 {#17420
                    date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052484 {#17421
                    date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17419 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052484 {#17326
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052484 {#17327
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17325 …}
            }
            Thelia\Api\Resource\ProductSaleElements {#18466
              +id: 56
              +product: ? Thelia\Api\Resource\Product
              +ref: "PROD015-1"
              +quantity: 14
              +visible: true
              +position: 2
              +promo: false
              +displayInitialPrice: null
              +newness: false
              +weight: 9.7
              +isDefault: false
              +eanCode: null
              +mpn: null
              +manufacturerBrand: null
              +gtinSharedWith: []
              +productPrices: [
                Thelia\Api\Resource\ProductPrice {#18471
                  +productSaleElements: Thelia\Api\Resource\ProductSaleElements {#18606 …}
                  +currency: Thelia\Api\Resource\Currency {#18579 …}
                  +price: 302.6
                  +promoPrice: 0.0
                  +fromDefaultCurrency: true
                  +createdAt: DateTime @1794052484 {#17423
                    date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
                  }
                  +updatedAt: DateTime @1794052484 {#17424
                    date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
                  }
                  #resourceAddons: []
                  -propelModel: Thelia\Model\ProductPrice {#17422 …}
                }
              ]
              +attributeCombinations: []
              +createdAt: DateTime @1794052484 {#17329
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              +updatedAt: DateTime @1794052484 {#17330
                date: 2026-11-07 12:54:44.0 Europe/Paris (+01:00)
              }
              #resourceAddons: []
              -propelModel: Thelia\Model\ProductSaleElements {#17328 …}
            }
          ]
          +featureProducts: []
          +productAssociatedContents: ? array
        }
      ]
      flag::STD_PROP_LIST: false
      flag::ARRAY_AS_PROPS: false
    }
  ]
  "request" => Symfony\Component\HttpFoundation\Request {#16890
    +attributes: Symfony\Component\HttpFoundation\ParameterBag {#16889 …}
    +request: Symfony\Component\HttpFoundation\InputBag {#16894 …}
    +query: Symfony\Component\HttpFoundation\InputBag {#16946 …}
    +server: Symfony\Component\HttpFoundation\ServerBag {#16672 …}
    +files: Symfony\Component\HttpFoundation\FileBag {#17025 …}
    +cookies: Symfony\Component\HttpFoundation\InputBag {#17018 …}
    +headers: Symfony\Component\HttpFoundation\HeaderBag {#16996 …}
    #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.14 ms)
9.72 ms

denormalize 0

Nothing was denormalized.

encode 0

Nothing was encoded.

decode 0

Nothing was decoded.