GET https://sylius-cuisinstore.preprod.eu/fr_FR/taxons/coin-cuisine-soldes-1672?page=6&sorting%5BcreatedAt%5D=desc

Components

12 Twig Components
44 Render Count
77 ms Render Time
108.0 MiB Memory Usage

Components

Name Metadata Render Count Render Time
sylius_shop:product:card
"Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent"
@SyliusUi/components/default.html.twig
9 50.93ms
sylius_shop:main_image
[Anonymous]
@SyliusShop/shared/components/main_image.html.twig
9 8.80ms
sylius_shop:catalog_promotions
[Anonymous]
@SyliusShop/shared/components/catalog_promotions.html.twig
9 7.49ms
sylius_shop:product:card:price
"Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent"
@SyliusUi/components/default.html.twig
9 1.44ms
sylius_shop:common:currency_switcher
"Sylius\Bundle\ShopBundle\Twig\Component\Common\CurrencySwitcherComponent"
@SyliusUi/components/default.html.twig
1 1.14ms
sylius_shop:common:locale_switcher
"Sylius\Bundle\ShopBundle\Twig\Component\Common\LocaleSwitcherComponent"
@SyliusUi/components/default.html.twig
1 0.72ms
sylius_shop:cart:widget
"Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent"
@SyliusUi/components/default.html.twig
1 4.59ms
sylius_shop:common:taxon_menu
"Sylius\Bundle\ShopBundle\Twig\Component\Common\TaxonMenuComponent"
@SyliusUi/components/default.html.twig
1 14.49ms
sylius_shop:product:show:breadcrumbs
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 0.93ms
sylius_shop:product:show:taxonomy
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 0.75ms
sylius_shop:product:show:header
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 1.87ms
sylius_shop:cart:widget:offcanvas
"Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent"
@SyliusUi/components/default.html.twig
1 1.97ms

Render calls

sylius_shop:common:currency_switcher Sylius\Bundle\ShopBundle\Twig\Component\Common\CurrencySwitcherComponent 108.0 MiB 1.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#12605
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12598 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#12604 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12603 …}
    +prefixes: [
      "sylius_shop.base.header.top_bar"
    ]
  }
  "template" => "@SyliusShop/shared/layout/base/header/top_bar/currency_switcher.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/shared/layout/base/header/top_bar/currency_switcher.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Common\CurrencySwitcherComponent {#13225
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12496 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#12605
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12598 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#12604 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12603 …}
    +prefixes: [
      "sylius_shop.base.header.top_bar"
    ]
  }
}
sylius_shop:common:locale_switcher Sylius\Bundle\ShopBundle\Twig\Component\Common\LocaleSwitcherComponent 108.0 MiB 0.72 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13302
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13298 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13300 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13301 …}
    +prefixes: [
      "sylius_shop.base.header.top_bar"
    ]
  }
  "template" => "@SyliusShop/shared/layout/base/header/top_bar/locale_switcher.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/shared/layout/base/header/top_bar/locale_switcher.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Common\LocaleSwitcherComponent {#13311
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #localeProvider: Sylius\Component\Core\Provider\ChannelBasedLocaleProvider {#4528 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13302
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13298 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13300 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13301 …}
    +prefixes: [
      "sylius_shop.base.header.top_bar"
    ]
  }
}
sylius_shop:cart:widget Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent 108.0 MiB 4.59 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13393
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13372 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13392 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13391 …}
    +prefixes: [
      "sylius_shop.base.header.content"
    ]
  }
  "template" => "@SyliusShop/shared/components/header/cart.html.twig"
]
Attributes
[]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent {#13408
  +cart: App\Entity\Order\Order {#13475 …}
  #cartContext: Sylius\Component\Order\Context\CompositeCartContext {#1322 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13393
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13372 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13392 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13391 …}
    +prefixes: [
      "sylius_shop.base.header.content"
    ]
  }
  +template: "@SyliusShop/shared/components/header/cart.html.twig"
  #repository: Sylius\Bundle\CoreBundle\Doctrine\ORM\OrderRepository {#4980 …}
}
sylius_shop:common:taxon_menu Sylius\Bundle\ShopBundle\Twig\Component\Common\TaxonMenuComponent 108.0 MiB 14.49 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13661
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13649 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13655 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13647 …}
    +prefixes: [
      "sylius_shop.base.header.navbar"
    ]
  }
  "template" => "@SyliusShop/shared/layout/base/header/navbar/menu.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/shared/layout/base/header/navbar/menu.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Common\TaxonMenuComponent {#13670
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13661
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13649 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13655 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13647 …}
    +prefixes: [
      "sylius_shop.base.header.navbar"
    ]
  }
}
sylius_shop:product:show:breadcrumbs Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 108.0 MiB 0.93 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27459
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27455 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27456 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27458 …}
    +prefixes: [
      "sylius_shop.product.index.content"
    ]
  }
  "template" => "@SyliusShop/product/index/content/breadcrumbs.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/index/content/breadcrumbs.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent {#27468
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27459
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27455 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27456 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27458 …}
    +prefixes: [
      "sylius_shop.product.index.content"
    ]
  }
}
sylius_shop:product:show:taxonomy Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 108.0 MiB 0.75 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27572
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27568 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27569 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27571 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.sidebar"
    ]
  }
  "template" => "@SyliusShop/product/index/content/body/sidebar/taxonomy.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/index/content/body/sidebar/taxonomy.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent {#27580
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27572
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27568 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27569 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27571 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.sidebar"
    ]
  }
}
sylius_shop:product:show:header Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 108.0 MiB 1.87 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27650
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27646 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27647 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27649 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
  "template" => "@SyliusShop/product/index/content/body/main/header.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/index/content/body/main/header.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent {#27658
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27650
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27646 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27647 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27649 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 108.0 MiB 10.18 ms
Input props
[
  "product" => App\Entity\Product\Product {#7969
    #id: 3107
    #code: "moulin-peugeot-daman-2011"
    #attributes: Doctrine\ORM\PersistentCollection {#8178 …}
    #variants: Doctrine\ORM\PersistentCollection {#8401 …}
    #options: Doctrine\ORM\PersistentCollection {#8529 …}
    #associations: Doctrine\ORM\PersistentCollection {#8469 …}
    #createdAt: DateTime @1758632755 {#7659
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632755 {#7725
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8528 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8531
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7969}
        #id: 3107
        #name: "Moulin Peugeot Daman"
        #slug: "moulin-peugeot-daman-2011"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&eacute;canisme garanti &agrave; vie. </li>\n
          <li>Syst&egrave;me&nbsp;USELECT. </li>\n
          <li>Couvercle de remplissage aimant&eacute;, se referme tout seul !</li>\n
          </ul></div><h1>Description  Moulin Peugeot Daman</h1><div class="col is-12">Le moulin peugeot DAMAN b&eacute;n&eacute;ficie d'une esth&eacute;tique travaill&eacute;e et d'un m&eacute;canisme garanti &agrave; vie. &nbsp;Il&nbsp;poss&egrave;de un couvercle de remplissage aimant&eacute;, se referme tout seul !<a href="&lt;/body"></a></div><h1>Description  mécanisme Moulin Peugeot Daman</h1><div class="col is-12"><p>Vous retrouvez dans les m&eacute;canismes moulin PEUGEOT tout le savoir faire technologique et industriel d&eacute;velopp&eacute; depuis plus de 160 ans. Inusable et d&rsquo;une efficacit&eacute; redoutable, le m&eacute;canisme moulin PEUGEOT est constitu&eacute; de double rang&eacute;e de dents capturant les grains en les entra&icirc;nant vers le bas pour les broyer parfaitement. Aux traditionnels m&eacute;canismes poivre et sel sont venus s&rsquo;ajouter des m&eacute;canismes exclusifs pour le sel de Gu&eacute;randes, les &eacute;pices, le piment et la muscade. Leur fiabilit&eacute; n&rsquo;est plus &agrave; prouver ce qui permet &agrave; PEUGEOT de pouvoir donner &agrave; ses m&eacute;canismes une garantie &agrave; vie. Les corps des moulins con&ccedil;us dans une grande vari&eacute;t&eacute; de mat&eacute;riaux (bois, inox, pvc..) sont tous con&ccedil;us avec soin pour une ergonomie optimale et pour s&rsquo;harmoniser avec tous les styles<br /><a href="&lt;/body"></a></p></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8534 …}
    #channels: Doctrine\ORM\PersistentCollection {#8037 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#7902 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8040 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#28183
  +product: App\Entity\Product\Product {#7969
    #id: 3107
    #code: "moulin-peugeot-daman-2011"
    #attributes: Doctrine\ORM\PersistentCollection {#8178 …}
    #variants: Doctrine\ORM\PersistentCollection {#8401 …}
    #options: Doctrine\ORM\PersistentCollection {#8529 …}
    #associations: Doctrine\ORM\PersistentCollection {#8469 …}
    #createdAt: DateTime @1758632755 {#7659
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632755 {#7725
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8528 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8531
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7969}
        #id: 3107
        #name: "Moulin Peugeot Daman"
        #slug: "moulin-peugeot-daman-2011"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&eacute;canisme garanti &agrave; vie. </li>\n
          <li>Syst&egrave;me&nbsp;USELECT. </li>\n
          <li>Couvercle de remplissage aimant&eacute;, se referme tout seul !</li>\n
          </ul></div><h1>Description  Moulin Peugeot Daman</h1><div class="col is-12">Le moulin peugeot DAMAN b&eacute;n&eacute;ficie d'une esth&eacute;tique travaill&eacute;e et d'un m&eacute;canisme garanti &agrave; vie. &nbsp;Il&nbsp;poss&egrave;de un couvercle de remplissage aimant&eacute;, se referme tout seul !<a href="&lt;/body"></a></div><h1>Description  mécanisme Moulin Peugeot Daman</h1><div class="col is-12"><p>Vous retrouvez dans les m&eacute;canismes moulin PEUGEOT tout le savoir faire technologique et industriel d&eacute;velopp&eacute; depuis plus de 160 ans. Inusable et d&rsquo;une efficacit&eacute; redoutable, le m&eacute;canisme moulin PEUGEOT est constitu&eacute; de double rang&eacute;e de dents capturant les grains en les entra&icirc;nant vers le bas pour les broyer parfaitement. Aux traditionnels m&eacute;canismes poivre et sel sont venus s&rsquo;ajouter des m&eacute;canismes exclusifs pour le sel de Gu&eacute;randes, les &eacute;pices, le piment et la muscade. Leur fiabilit&eacute; n&rsquo;est plus &agrave; prouver ce qui permet &agrave; PEUGEOT de pouvoir donner &agrave; ses m&eacute;canismes une garantie &agrave; vie. Les corps des moulins con&ccedil;us dans une grande vari&eacute;t&eacute; de mat&eacute;riaux (bois, inox, pvc..) sont tous con&ccedil;us avec soin pour une ergonomie optimale et pour s&rsquo;harmoniser avec tous les styles<br /><a href="&lt;/body"></a></p></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8534 …}
    #channels: Doctrine\ORM\PersistentCollection {#8037 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#7902 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8040 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#28445 …}
  +slug: null
  #productRepository: Sylius\Bundle\CoreBundle\Doctrine\ORM\ProductRepository {#6914 …}
  #productVariantResolver: Sylius\Component\Product\Resolver\CompositeProductVariantResolver {#5455 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
108.0 MiB 1.92 ms
Input props
[
  "product" => App\Entity\Product\Product {#7969
    #id: 3107
    #code: "moulin-peugeot-daman-2011"
    #attributes: Doctrine\ORM\PersistentCollection {#8178 …}
    #variants: Doctrine\ORM\PersistentCollection {#8401 …}
    #options: Doctrine\ORM\PersistentCollection {#8529 …}
    #associations: Doctrine\ORM\PersistentCollection {#8469 …}
    #createdAt: DateTime @1758632755 {#7659
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632755 {#7725
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8528 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8531
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7969}
        #id: 3107
        #name: "Moulin Peugeot Daman"
        #slug: "moulin-peugeot-daman-2011"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&eacute;canisme garanti &agrave; vie. </li>\n
          <li>Syst&egrave;me&nbsp;USELECT. </li>\n
          <li>Couvercle de remplissage aimant&eacute;, se referme tout seul !</li>\n
          </ul></div><h1>Description  Moulin Peugeot Daman</h1><div class="col is-12">Le moulin peugeot DAMAN b&eacute;n&eacute;ficie d'une esth&eacute;tique travaill&eacute;e et d'un m&eacute;canisme garanti &agrave; vie. &nbsp;Il&nbsp;poss&egrave;de un couvercle de remplissage aimant&eacute;, se referme tout seul !<a href="&lt;/body"></a></div><h1>Description  mécanisme Moulin Peugeot Daman</h1><div class="col is-12"><p>Vous retrouvez dans les m&eacute;canismes moulin PEUGEOT tout le savoir faire technologique et industriel d&eacute;velopp&eacute; depuis plus de 160 ans. Inusable et d&rsquo;une efficacit&eacute; redoutable, le m&eacute;canisme moulin PEUGEOT est constitu&eacute; de double rang&eacute;e de dents capturant les grains en les entra&icirc;nant vers le bas pour les broyer parfaitement. Aux traditionnels m&eacute;canismes poivre et sel sont venus s&rsquo;ajouter des m&eacute;canismes exclusifs pour le sel de Gu&eacute;randes, les &eacute;pices, le piment et la muscade. Leur fiabilit&eacute; n&rsquo;est plus &agrave; prouver ce qui permet &agrave; PEUGEOT de pouvoir donner &agrave; ses m&eacute;canismes une garantie &agrave; vie. Les corps des moulins con&ccedil;us dans une grande vari&eacute;t&eacute; de mat&eacute;riaux (bois, inox, pvc..) sont tous con&ccedil;us avec soin pour une ergonomie optimale et pour s&rsquo;harmoniser avec tous les styles<br /><a href="&lt;/body"></a></p></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8534 …}
    #channels: Doctrine\ORM\PersistentCollection {#8037 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#7902 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8040 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin Peugeot Daman"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#28856
  -props: [
    "product" => App\Entity\Product\Product {#7969
      #id: 3107
      #code: "moulin-peugeot-daman-2011"
      #attributes: Doctrine\ORM\PersistentCollection {#8178 …}
      #variants: Doctrine\ORM\PersistentCollection {#8401 …}
      #options: Doctrine\ORM\PersistentCollection {#8529 …}
      #associations: Doctrine\ORM\PersistentCollection {#8469 …}
      #createdAt: DateTime @1758632755 {#7659
        date: 2025-09-23 21:05:55.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632755 {#7725
        date: 2025-09-23 21:05:55.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8528 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8531
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#7969}
          #id: 3107
          #name: "Moulin Peugeot Daman"
          #slug: "moulin-peugeot-daman-2011"
          #description: """
            <div class="col is-12"><ul>\n
            <li>M&eacute;canisme garanti &agrave; vie. </li>\n
            <li>Syst&egrave;me&nbsp;USELECT. </li>\n
            <li>Couvercle de remplissage aimant&eacute;, se referme tout seul !</li>\n
            </ul></div><h1>Description  Moulin Peugeot Daman</h1><div class="col is-12">Le moulin peugeot DAMAN b&eacute;n&eacute;ficie d'une esth&eacute;tique travaill&eacute;e et d'un m&eacute;canisme garanti &agrave; vie. &nbsp;Il&nbsp;poss&egrave;de un couvercle de remplissage aimant&eacute;, se referme tout seul !<a href="&lt;/body"></a></div><h1>Description  mécanisme Moulin Peugeot Daman</h1><div class="col is-12"><p>Vous retrouvez dans les m&eacute;canismes moulin PEUGEOT tout le savoir faire technologique et industriel d&eacute;velopp&eacute; depuis plus de 160 ans. Inusable et d&rsquo;une efficacit&eacute; redoutable, le m&eacute;canisme moulin PEUGEOT est constitu&eacute; de double rang&eacute;e de dents capturant les grains en les entra&icirc;nant vers le bas pour les broyer parfaitement. Aux traditionnels m&eacute;canismes poivre et sel sont venus s&rsquo;ajouter des m&eacute;canismes exclusifs pour le sel de Gu&eacute;randes, les &eacute;pices, le piment et la muscade. Leur fiabilit&eacute; n&rsquo;est plus &agrave; prouver ce qui permet &agrave; PEUGEOT de pouvoir donner &agrave; ses m&eacute;canismes une garantie &agrave; vie. Les corps des moulins con&ccedil;us dans une grande vari&eacute;t&eacute; de mat&eacute;riaux (bois, inox, pvc..) sont tous con&ccedil;us avec soin pour une ergonomie optimale et pour s&rsquo;harmoniser avec tous les styles<br /><a href="&lt;/body"></a></p></div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8534 …}
      #channels: Doctrine\ORM\PersistentCollection {#8037 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
      #reviews: Doctrine\ORM\PersistentCollection {#7902 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8040 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
108.0 MiB 1.38 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29003
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28938 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28933 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28999 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#28445 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#28791
    #collection: Doctrine\Common\Collections\ArrayCollection {#28790 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#28628 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38487 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38539 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29003
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28938 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28933 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28999 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin Peugeot Daman"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#28791
    #collection: Doctrine\Common\Collections\ArrayCollection {#28790 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#28628 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38487 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38539 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29002
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29003
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28938 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#28933 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28999 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#28445 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#28791
      #collection: Doctrine\Common\Collections\ArrayCollection {#28790 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#28628 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38487 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38539 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 108.0 MiB 0.37 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29072
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29062 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29070 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29071 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#28445 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29081
  +variant: App\Entity\Product\ProductVariant {#28445 …}
  +price: "92,00\u{A0}"
  +originalPrice: "109,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9066 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12496 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9063 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29072
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29062 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29070 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29071 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 108.0 MiB 5.29 ms
Input props
[
  "product" => App\Entity\Product\Product {#8543
    #id: 3108
    #code: "moulin-peugeot-ouessant-4362"
    #attributes: Doctrine\ORM\PersistentCollection {#8550 …}
    #variants: Doctrine\ORM\PersistentCollection {#8552 …}
    #options: Doctrine\ORM\PersistentCollection {#8556 …}
    #associations: Doctrine\ORM\PersistentCollection {#8554 …}
    #createdAt: DateTime @1758632755 {#8541
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632755 {#8542
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8559 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8560
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8543}
        #id: 3108
        #name: "Moulin Peugeot Ouessant"
        #slug: "moulin-peugeot-ouessant-4362"
        #description: """
          <div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Efficacit&eacute; des m&eacute;canismes.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Tr&egrave;s belle finition.&nbsp;</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">M&eacute;canisme garanti &agrave; vie.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Fabriqu&eacute; en France.</div>\n
          <div>\n
          <ul>\n
          <li>Efficacit&eacute; des m&eacute;canismes.</li>\n
          <li>Tr&egrave;s belle finition.&nbsp;</li>\n
          <li>M&eacute;canisme garanti &agrave; vie.</li>\n
          <li><strong>Fabriqu&eacute; en France.</strong></li>\n
          </ul>\n
          </div></div><h1>Description Moulin Peugeot Ouessant</h1><div class="col is-12">Le moulin Peugeot Ouessant, c'est une touche d'inox sur un corps transparent qui &eacute;voque le mouvement du m&eacute;canisme. Existe en sel, poivre ou piment.</div><h1>Caractéristiques Moulin Peugeot Ouessant</h1><div class="col is-12">M&eacute;canismes garantis &agrave; vie. Corps acrylique garanti 5 ans.. Molette de r&eacute;glage de la mouture. Bille inox avec symbole grav&eacute; "P" ou "S". Chapeau en inox. Hauteur 14 cm.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8562 …}
    #channels: Doctrine\ORM\PersistentCollection {#8548 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8544 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8546 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#28834
  +product: App\Entity\Product\Product {#8543
    #id: 3108
    #code: "moulin-peugeot-ouessant-4362"
    #attributes: Doctrine\ORM\PersistentCollection {#8550 …}
    #variants: Doctrine\ORM\PersistentCollection {#8552 …}
    #options: Doctrine\ORM\PersistentCollection {#8556 …}
    #associations: Doctrine\ORM\PersistentCollection {#8554 …}
    #createdAt: DateTime @1758632755 {#8541
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632755 {#8542
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8559 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8560
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8543}
        #id: 3108
        #name: "Moulin Peugeot Ouessant"
        #slug: "moulin-peugeot-ouessant-4362"
        #description: """
          <div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Efficacit&eacute; des m&eacute;canismes.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Tr&egrave;s belle finition.&nbsp;</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">M&eacute;canisme garanti &agrave; vie.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Fabriqu&eacute; en France.</div>\n
          <div>\n
          <ul>\n
          <li>Efficacit&eacute; des m&eacute;canismes.</li>\n
          <li>Tr&egrave;s belle finition.&nbsp;</li>\n
          <li>M&eacute;canisme garanti &agrave; vie.</li>\n
          <li><strong>Fabriqu&eacute; en France.</strong></li>\n
          </ul>\n
          </div></div><h1>Description Moulin Peugeot Ouessant</h1><div class="col is-12">Le moulin Peugeot Ouessant, c'est une touche d'inox sur un corps transparent qui &eacute;voque le mouvement du m&eacute;canisme. Existe en sel, poivre ou piment.</div><h1>Caractéristiques Moulin Peugeot Ouessant</h1><div class="col is-12">M&eacute;canismes garantis &agrave; vie. Corps acrylique garanti 5 ans.. Molette de r&eacute;glage de la mouture. Bille inox avec symbole grav&eacute; "P" ou "S". Chapeau en inox. Hauteur 14 cm.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8562 …}
    #channels: Doctrine\ORM\PersistentCollection {#8548 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8544 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8546 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29154 …}
  +slug: null
  #productRepository: Sylius\Bundle\CoreBundle\Doctrine\ORM\ProductRepository {#6914 …}
  #productVariantResolver: Sylius\Component\Product\Resolver\CompositeProductVariantResolver {#5455 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
108.0 MiB 0.91 ms
Input props
[
  "product" => App\Entity\Product\Product {#8543
    #id: 3108
    #code: "moulin-peugeot-ouessant-4362"
    #attributes: Doctrine\ORM\PersistentCollection {#8550 …}
    #variants: Doctrine\ORM\PersistentCollection {#8552 …}
    #options: Doctrine\ORM\PersistentCollection {#8556 …}
    #associations: Doctrine\ORM\PersistentCollection {#8554 …}
    #createdAt: DateTime @1758632755 {#8541
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632755 {#8542
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8559 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8560
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8543}
        #id: 3108
        #name: "Moulin Peugeot Ouessant"
        #slug: "moulin-peugeot-ouessant-4362"
        #description: """
          <div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Efficacit&eacute; des m&eacute;canismes.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Tr&egrave;s belle finition.&nbsp;</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">M&eacute;canisme garanti &agrave; vie.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Fabriqu&eacute; en France.</div>\n
          <div>\n
          <ul>\n
          <li>Efficacit&eacute; des m&eacute;canismes.</li>\n
          <li>Tr&egrave;s belle finition.&nbsp;</li>\n
          <li>M&eacute;canisme garanti &agrave; vie.</li>\n
          <li><strong>Fabriqu&eacute; en France.</strong></li>\n
          </ul>\n
          </div></div><h1>Description Moulin Peugeot Ouessant</h1><div class="col is-12">Le moulin Peugeot Ouessant, c'est une touche d'inox sur un corps transparent qui &eacute;voque le mouvement du m&eacute;canisme. Existe en sel, poivre ou piment.</div><h1>Caractéristiques Moulin Peugeot Ouessant</h1><div class="col is-12">M&eacute;canismes garantis &agrave; vie. Corps acrylique garanti 5 ans.. Molette de r&eacute;glage de la mouture. Bille inox avec symbole grav&eacute; "P" ou "S". Chapeau en inox. Hauteur 14 cm.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8562 …}
    #channels: Doctrine\ORM\PersistentCollection {#8548 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8544 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8546 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin Peugeot Ouessant"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29225
  -props: [
    "product" => App\Entity\Product\Product {#8543
      #id: 3108
      #code: "moulin-peugeot-ouessant-4362"
      #attributes: Doctrine\ORM\PersistentCollection {#8550 …}
      #variants: Doctrine\ORM\PersistentCollection {#8552 …}
      #options: Doctrine\ORM\PersistentCollection {#8556 …}
      #associations: Doctrine\ORM\PersistentCollection {#8554 …}
      #createdAt: DateTime @1758632755 {#8541
        date: 2025-09-23 21:05:55.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632755 {#8542
        date: 2025-09-23 21:05:55.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8559 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8560
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8543}
          #id: 3108
          #name: "Moulin Peugeot Ouessant"
          #slug: "moulin-peugeot-ouessant-4362"
          #description: """
            <div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Efficacit&eacute; des m&eacute;canismes.</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Tr&egrave;s belle finition.&nbsp;</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">M&eacute;canisme garanti &agrave; vie.</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Fabriqu&eacute; en France.</div>\n
            <div>\n
            <ul>\n
            <li>Efficacit&eacute; des m&eacute;canismes.</li>\n
            <li>Tr&egrave;s belle finition.&nbsp;</li>\n
            <li>M&eacute;canisme garanti &agrave; vie.</li>\n
            <li><strong>Fabriqu&eacute; en France.</strong></li>\n
            </ul>\n
            </div></div><h1>Description Moulin Peugeot Ouessant</h1><div class="col is-12">Le moulin Peugeot Ouessant, c'est une touche d'inox sur un corps transparent qui &eacute;voque le mouvement du m&eacute;canisme. Existe en sel, poivre ou piment.</div><h1>Caractéristiques Moulin Peugeot Ouessant</h1><div class="col is-12">M&eacute;canismes garantis &agrave; vie. Corps acrylique garanti 5 ans.. Molette de r&eacute;glage de la mouture. Bille inox avec symbole grav&eacute; "P" ou "S". Chapeau en inox. Hauteur 14 cm.</div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8562 …}
      #channels: Doctrine\ORM\PersistentCollection {#8548 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8544 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8546 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
108.0 MiB 0.70 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29304
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29209 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29282 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29206 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29154 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29162
    #collection: Doctrine\Common\Collections\ArrayCollection {#29171 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29150 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38559 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38561 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29304
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29209 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29282 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29206 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin Peugeot Ouessant"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29162
    #collection: Doctrine\Common\Collections\ArrayCollection {#29171 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29150 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38559 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38561 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29307
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29304
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29209 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29282 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29206 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29154 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29162
      #collection: Doctrine\Common\Collections\ArrayCollection {#29171 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29150 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38559 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38561 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 108.0 MiB 0.13 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29358
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29349 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29356 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29357 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29154 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29361
  +variant: App\Entity\Product\ProductVariant {#29154 …}
  +price: "38,00\u{A0}"
  +originalPrice: "42,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9066 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12496 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9063 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29358
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29349 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29356 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29357 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 108.0 MiB 4.87 ms
Input props
[
  "product" => App\Entity\Product\Product {#8566
    #id: 3079
    #code: "moulin-electrique-peugeot-zest-1224"
    #attributes: Doctrine\ORM\PersistentCollection {#8573 …}
    #variants: Doctrine\ORM\PersistentCollection {#8575 …}
    #options: Doctrine\ORM\PersistentCollection {#8579 …}
    #associations: Doctrine\ORM\PersistentCollection {#8577 …}
    #createdAt: DateTime @1758632751 {#8564
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8565
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8582 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8583
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8566}
        #id: 3079
        #name: "Moulin électrique Peugeot Zest"
        #slug: "moulin-electrique-peugeot-zest-1224"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Design contemporain.</li>\n
          <li>Excellent rapport qualit&eacute;-prix.</li>\n
          <li><strong>Fabriqu&eacute; en France.&nbsp;</strong></li>\n
          </ul></div><h1>Description Moulin électrique Peugeot Zest</h1><div class="col is-12">Son prix tr&egrave;s comp&eacute;titif n'emp&ecirc;che pas le moulin Zest &eacute;lectrique Peugeot de b&eacute;n&eacute;ficier de toute la qualit&eacute; &nbsp;de la marque. Ses m&eacute;canismes poivre ou sel sont garantis &agrave; vie, gage de fiabilit&eacute;, et leur efficacit&eacute; l&eacute;gendaire n'est plus &agrave; prouver.</div><h1>Caractéristiques Moulin électrique Peugeot Zest</h1><div class="col is-12">M&eacute;canisme poivre ou sel garantis &agrave; vie. Livr&eacute; avec 4 piles. Hauteur 18 cm. Fabriqu&eacute; en France.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8585 …}
    #channels: Doctrine\ORM\PersistentCollection {#8571 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8567 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8569 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29216
  +product: App\Entity\Product\Product {#8566
    #id: 3079
    #code: "moulin-electrique-peugeot-zest-1224"
    #attributes: Doctrine\ORM\PersistentCollection {#8573 …}
    #variants: Doctrine\ORM\PersistentCollection {#8575 …}
    #options: Doctrine\ORM\PersistentCollection {#8579 …}
    #associations: Doctrine\ORM\PersistentCollection {#8577 …}
    #createdAt: DateTime @1758632751 {#8564
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8565
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8582 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8583
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8566}
        #id: 3079
        #name: "Moulin électrique Peugeot Zest"
        #slug: "moulin-electrique-peugeot-zest-1224"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Design contemporain.</li>\n
          <li>Excellent rapport qualit&eacute;-prix.</li>\n
          <li><strong>Fabriqu&eacute; en France.&nbsp;</strong></li>\n
          </ul></div><h1>Description Moulin électrique Peugeot Zest</h1><div class="col is-12">Son prix tr&egrave;s comp&eacute;titif n'emp&ecirc;che pas le moulin Zest &eacute;lectrique Peugeot de b&eacute;n&eacute;ficier de toute la qualit&eacute; &nbsp;de la marque. Ses m&eacute;canismes poivre ou sel sont garantis &agrave; vie, gage de fiabilit&eacute;, et leur efficacit&eacute; l&eacute;gendaire n'est plus &agrave; prouver.</div><h1>Caractéristiques Moulin électrique Peugeot Zest</h1><div class="col is-12">M&eacute;canisme poivre ou sel garantis &agrave; vie. Livr&eacute; avec 4 piles. Hauteur 18 cm. Fabriqu&eacute; en France.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8585 …}
    #channels: Doctrine\ORM\PersistentCollection {#8571 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8567 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8569 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29424 …}
  +slug: null
  #productRepository: Sylius\Bundle\CoreBundle\Doctrine\ORM\ProductRepository {#6914 …}
  #productVariantResolver: Sylius\Component\Product\Resolver\CompositeProductVariantResolver {#5455 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
108.0 MiB 0.91 ms
Input props
[
  "product" => App\Entity\Product\Product {#8566
    #id: 3079
    #code: "moulin-electrique-peugeot-zest-1224"
    #attributes: Doctrine\ORM\PersistentCollection {#8573 …}
    #variants: Doctrine\ORM\PersistentCollection {#8575 …}
    #options: Doctrine\ORM\PersistentCollection {#8579 …}
    #associations: Doctrine\ORM\PersistentCollection {#8577 …}
    #createdAt: DateTime @1758632751 {#8564
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8565
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8582 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8583
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8566}
        #id: 3079
        #name: "Moulin électrique Peugeot Zest"
        #slug: "moulin-electrique-peugeot-zest-1224"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Design contemporain.</li>\n
          <li>Excellent rapport qualit&eacute;-prix.</li>\n
          <li><strong>Fabriqu&eacute; en France.&nbsp;</strong></li>\n
          </ul></div><h1>Description Moulin électrique Peugeot Zest</h1><div class="col is-12">Son prix tr&egrave;s comp&eacute;titif n'emp&ecirc;che pas le moulin Zest &eacute;lectrique Peugeot de b&eacute;n&eacute;ficier de toute la qualit&eacute; &nbsp;de la marque. Ses m&eacute;canismes poivre ou sel sont garantis &agrave; vie, gage de fiabilit&eacute;, et leur efficacit&eacute; l&eacute;gendaire n'est plus &agrave; prouver.</div><h1>Caractéristiques Moulin électrique Peugeot Zest</h1><div class="col is-12">M&eacute;canisme poivre ou sel garantis &agrave; vie. Livr&eacute; avec 4 piles. Hauteur 18 cm. Fabriqu&eacute; en France.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8585 …}
    #channels: Doctrine\ORM\PersistentCollection {#8571 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8567 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8569 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin électrique Peugeot Zest"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29498
  -props: [
    "product" => App\Entity\Product\Product {#8566
      #id: 3079
      #code: "moulin-electrique-peugeot-zest-1224"
      #attributes: Doctrine\ORM\PersistentCollection {#8573 …}
      #variants: Doctrine\ORM\PersistentCollection {#8575 …}
      #options: Doctrine\ORM\PersistentCollection {#8579 …}
      #associations: Doctrine\ORM\PersistentCollection {#8577 …}
      #createdAt: DateTime @1758632751 {#8564
        date: 2025-09-23 21:05:51.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632751 {#8565
        date: 2025-09-23 21:05:51.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8582 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8583
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8566}
          #id: 3079
          #name: "Moulin électrique Peugeot Zest"
          #slug: "moulin-electrique-peugeot-zest-1224"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Design contemporain.</li>\n
            <li>Excellent rapport qualit&eacute;-prix.</li>\n
            <li><strong>Fabriqu&eacute; en France.&nbsp;</strong></li>\n
            </ul></div><h1>Description Moulin électrique Peugeot Zest</h1><div class="col is-12">Son prix tr&egrave;s comp&eacute;titif n'emp&ecirc;che pas le moulin Zest &eacute;lectrique Peugeot de b&eacute;n&eacute;ficier de toute la qualit&eacute; &nbsp;de la marque. Ses m&eacute;canismes poivre ou sel sont garantis &agrave; vie, gage de fiabilit&eacute;, et leur efficacit&eacute; l&eacute;gendaire n'est plus &agrave; prouver.</div><h1>Caractéristiques Moulin électrique Peugeot Zest</h1><div class="col is-12">M&eacute;canisme poivre ou sel garantis &agrave; vie. Livr&eacute; avec 4 piles. Hauteur 18 cm. Fabriqu&eacute; en France.</div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8585 …}
      #channels: Doctrine\ORM\PersistentCollection {#8571 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8567 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8569 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
108.0 MiB 0.79 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29563
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29482 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29552 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29479 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29424 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29432
    #collection: Doctrine\Common\Collections\ArrayCollection {#29444 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29420 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38573 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38575 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29563
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29482 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29552 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29479 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin électrique Peugeot Zest"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29432
    #collection: Doctrine\Common\Collections\ArrayCollection {#29444 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29420 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38573 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38575 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29568
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29563
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29482 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29552 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29479 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29424 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29432
      #collection: Doctrine\Common\Collections\ArrayCollection {#29444 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29420 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38573 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38575 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 108.0 MiB 0.13 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29617
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29608 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29615 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29616 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29424 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29620
  +variant: App\Entity\Product\ProductVariant {#29424 …}
  +price: "40,00\u{A0}"
  +originalPrice: "44,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9066 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12496 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9063 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29617
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29608 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29615 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29616 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 108.0 MiB 4.90 ms
Input props
[
  "product" => App\Entity\Product\Product {#8589
    #id: 3080
    #code: "moulin-electrique-peugeot-zeli-1612"
    #attributes: Doctrine\ORM\PersistentCollection {#8596 …}
    #variants: Doctrine\ORM\PersistentCollection {#8598 …}
    #options: Doctrine\ORM\PersistentCollection {#8602 …}
    #associations: Doctrine\ORM\PersistentCollection {#8600 …}
    #createdAt: DateTime @1758632751 {#8587
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8588
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8605 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8606
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8589}
        #id: 3080
        #name: "Moulin électrique PEUGEOT ZELI"
        #slug: "moulin-electrique-peugeot-zeli-1612"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Se manipule d'une seule main.</li>\n
          <li>M&eacute;canismes de broyage garantis &agrave; vie.</li>\n
          <li>Qualit&eacute; Peugeot.</li>\n
          </ul>\n
          &nbsp;</div><h1>Description moulin électrique PEUGEOT ZELI</h1><div class="col is-12"><p>Reprenant les m&eacute;canismes sel ou poivre dont l&rsquo;efficacit&eacute; n&rsquo;est plus &agrave; prouver, ces moulins sont &eacute;quip&eacute;s en plus d&rsquo;un moteur &eacute;lectrique pour votre plus grand confort ! Une simple pression pour moudre sel ou poivre ce qui permet de les tenir d&rsquo;une seule main, tr&egrave;s pratique lorsque l&rsquo;on cuisine ! </p></div><h1>Caractéristiques moulin électrique PEUGEOT ZELI</h1><div class="col is-12">Corps ABS nickel&eacute; bross&eacute;. Mini lampe int&eacute;gr&eacute;e + 1 de rechange. Fonctionne avec 6 piles 1.5 v fournie. Molette de r&eacute;glage de mouture pour le m&eacute;canisme poivre uniquement. M&eacute;canisme de broyage garanti &agrave; vie. Hauteur&nbsp;14 cm.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8608 …}
    #channels: Doctrine\ORM\PersistentCollection {#8594 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8590 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8592 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29489
  +product: App\Entity\Product\Product {#8589
    #id: 3080
    #code: "moulin-electrique-peugeot-zeli-1612"
    #attributes: Doctrine\ORM\PersistentCollection {#8596 …}
    #variants: Doctrine\ORM\PersistentCollection {#8598 …}
    #options: Doctrine\ORM\PersistentCollection {#8602 …}
    #associations: Doctrine\ORM\PersistentCollection {#8600 …}
    #createdAt: DateTime @1758632751 {#8587
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8588
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8605 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8606
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8589}
        #id: 3080
        #name: "Moulin électrique PEUGEOT ZELI"
        #slug: "moulin-electrique-peugeot-zeli-1612"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Se manipule d'une seule main.</li>\n
          <li>M&eacute;canismes de broyage garantis &agrave; vie.</li>\n
          <li>Qualit&eacute; Peugeot.</li>\n
          </ul>\n
          &nbsp;</div><h1>Description moulin électrique PEUGEOT ZELI</h1><div class="col is-12"><p>Reprenant les m&eacute;canismes sel ou poivre dont l&rsquo;efficacit&eacute; n&rsquo;est plus &agrave; prouver, ces moulins sont &eacute;quip&eacute;s en plus d&rsquo;un moteur &eacute;lectrique pour votre plus grand confort ! Une simple pression pour moudre sel ou poivre ce qui permet de les tenir d&rsquo;une seule main, tr&egrave;s pratique lorsque l&rsquo;on cuisine ! </p></div><h1>Caractéristiques moulin électrique PEUGEOT ZELI</h1><div class="col is-12">Corps ABS nickel&eacute; bross&eacute;. Mini lampe int&eacute;gr&eacute;e + 1 de rechange. Fonctionne avec 6 piles 1.5 v fournie. Molette de r&eacute;glage de mouture pour le m&eacute;canisme poivre uniquement. M&eacute;canisme de broyage garanti &agrave; vie. Hauteur&nbsp;14 cm.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8608 …}
    #channels: Doctrine\ORM\PersistentCollection {#8594 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8590 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8592 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29683 …}
  +slug: null
  #productRepository: Sylius\Bundle\CoreBundle\Doctrine\ORM\ProductRepository {#6914 …}
  #productVariantResolver: Sylius\Component\Product\Resolver\CompositeProductVariantResolver {#5455 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
108.0 MiB 0.80 ms
Input props
[
  "product" => App\Entity\Product\Product {#8589
    #id: 3080
    #code: "moulin-electrique-peugeot-zeli-1612"
    #attributes: Doctrine\ORM\PersistentCollection {#8596 …}
    #variants: Doctrine\ORM\PersistentCollection {#8598 …}
    #options: Doctrine\ORM\PersistentCollection {#8602 …}
    #associations: Doctrine\ORM\PersistentCollection {#8600 …}
    #createdAt: DateTime @1758632751 {#8587
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8588
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8605 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8606
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8589}
        #id: 3080
        #name: "Moulin électrique PEUGEOT ZELI"
        #slug: "moulin-electrique-peugeot-zeli-1612"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Se manipule d'une seule main.</li>\n
          <li>M&eacute;canismes de broyage garantis &agrave; vie.</li>\n
          <li>Qualit&eacute; Peugeot.</li>\n
          </ul>\n
          &nbsp;</div><h1>Description moulin électrique PEUGEOT ZELI</h1><div class="col is-12"><p>Reprenant les m&eacute;canismes sel ou poivre dont l&rsquo;efficacit&eacute; n&rsquo;est plus &agrave; prouver, ces moulins sont &eacute;quip&eacute;s en plus d&rsquo;un moteur &eacute;lectrique pour votre plus grand confort ! Une simple pression pour moudre sel ou poivre ce qui permet de les tenir d&rsquo;une seule main, tr&egrave;s pratique lorsque l&rsquo;on cuisine ! </p></div><h1>Caractéristiques moulin électrique PEUGEOT ZELI</h1><div class="col is-12">Corps ABS nickel&eacute; bross&eacute;. Mini lampe int&eacute;gr&eacute;e + 1 de rechange. Fonctionne avec 6 piles 1.5 v fournie. Molette de r&eacute;glage de mouture pour le m&eacute;canisme poivre uniquement. M&eacute;canisme de broyage garanti &agrave; vie. Hauteur&nbsp;14 cm.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8608 …}
    #channels: Doctrine\ORM\PersistentCollection {#8594 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8590 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8592 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin électrique PEUGEOT ZELI"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29754
  -props: [
    "product" => App\Entity\Product\Product {#8589
      #id: 3080
      #code: "moulin-electrique-peugeot-zeli-1612"
      #attributes: Doctrine\ORM\PersistentCollection {#8596 …}
      #variants: Doctrine\ORM\PersistentCollection {#8598 …}
      #options: Doctrine\ORM\PersistentCollection {#8602 …}
      #associations: Doctrine\ORM\PersistentCollection {#8600 …}
      #createdAt: DateTime @1758632751 {#8587
        date: 2025-09-23 21:05:51.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632751 {#8588
        date: 2025-09-23 21:05:51.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8605 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8606
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8589}
          #id: 3080
          #name: "Moulin électrique PEUGEOT ZELI"
          #slug: "moulin-electrique-peugeot-zeli-1612"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Se manipule d'une seule main.</li>\n
            <li>M&eacute;canismes de broyage garantis &agrave; vie.</li>\n
            <li>Qualit&eacute; Peugeot.</li>\n
            </ul>\n
            &nbsp;</div><h1>Description moulin électrique PEUGEOT ZELI</h1><div class="col is-12"><p>Reprenant les m&eacute;canismes sel ou poivre dont l&rsquo;efficacit&eacute; n&rsquo;est plus &agrave; prouver, ces moulins sont &eacute;quip&eacute;s en plus d&rsquo;un moteur &eacute;lectrique pour votre plus grand confort ! Une simple pression pour moudre sel ou poivre ce qui permet de les tenir d&rsquo;une seule main, tr&egrave;s pratique lorsque l&rsquo;on cuisine ! </p></div><h1>Caractéristiques moulin électrique PEUGEOT ZELI</h1><div class="col is-12">Corps ABS nickel&eacute; bross&eacute;. Mini lampe int&eacute;gr&eacute;e + 1 de rechange. Fonctionne avec 6 piles 1.5 v fournie. Molette de r&eacute;glage de mouture pour le m&eacute;canisme poivre uniquement. M&eacute;canisme de broyage garanti &agrave; vie. Hauteur&nbsp;14 cm.</div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8608 …}
      #channels: Doctrine\ORM\PersistentCollection {#8594 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8590 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8592 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
108.0 MiB 0.71 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29827
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29738 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29805 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29735 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29683 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29691
    #collection: Doctrine\Common\Collections\ArrayCollection {#29700 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29679 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38587 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38589 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29827
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29738 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29805 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29735 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin électrique PEUGEOT ZELI"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29691
    #collection: Doctrine\Common\Collections\ArrayCollection {#29700 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29679 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38587 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38589 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29830
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29827
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29738 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29805 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29735 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29683 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29691
      #collection: Doctrine\Common\Collections\ArrayCollection {#29700 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29679 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38587 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38589 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 108.0 MiB 0.13 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29881
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29872 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29879 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29880 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29683 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29884
  +variant: App\Entity\Product\ProductVariant {#29683 …}
  +price: "89,00\u{A0}"
  +originalPrice: "114,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9066 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12496 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9063 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29881
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29872 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29879 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29880 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 108.0 MiB 4.95 ms
Input props
[
  "product" => App\Entity\Product\Product {#8612
    #id: 3081
    #code: "moulin-electrique-peugeot-elis-sense-2987"
    #attributes: Doctrine\ORM\PersistentCollection {#8619 …}
    #variants: Doctrine\ORM\PersistentCollection {#8621 …}
    #options: Doctrine\ORM\PersistentCollection {#8625 …}
    #associations: Doctrine\ORM\PersistentCollection {#8623 …}
    #createdAt: DateTime @1758632751 {#8610
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8611
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8628 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8629
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8612}
        #id: 3081
        #name: "Moulin électrique PEUGEOT  Elis Sense"
        #slug: "moulin-electrique-peugeot-elis-sense-2987"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Mise en marche par effleurement.</li>\n
          <li>Fonctionne d'une seule main.</li>\n
          <li>Eclairage par led.</li>\n
          <li>Syst&egrave;me U'Select.</li>\n
          </ul></div><h1>Description moulin PEUGEOT électrique Elis sense</h1><div class="col is-12">Le moulin PEUGEOT &eacute;lectrique Elis sense est &eacute;quip&eacute; des m&eacute;canismes traditionnels PEUGEOT sel ou poivre dont l&rsquo;efficacit&eacute; n&rsquo;est plus &agrave;  prouver.&nbsp;Un simple effleurement suffit pour d&eacute;clencher le m&eacute;canisme pour moudre sel ou poivre  ce qui permet de tenir le moulin d&rsquo;une seule main, tr&egrave;s pratique lorsque l&rsquo;on  cuisine !<br />Le moulin PEUGEOT &eacute;lectrique Elis sense est muni &agrave; sa base d'un &eacute;clairage par led bleut&eacute;e permettant de voir la quantit&eacute; de condiment que l&rsquo;on ajoute.</div><h1>Caractéristiques moulin PEUGEOT électrique Elis Sense</h1><div class="col is-12">Corps inox.. Fonctionne avec 6 piles  1.5 v fournie. M&eacute;canisme USELECT (pr&eacute;r&eacute;glage de la mouture &agrave;  plusieurs positions) garanti &agrave; vie.  Hauteur 20 cm. LED lumineuse bleut&eacute;e. Livr&eacute; avec coupelle carr&eacute;e et 1 fiole de sel ou poivre avec entonnoir int&eacute;gr&eacute;.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8631 …}
    #channels: Doctrine\ORM\PersistentCollection {#8617 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8613 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8615 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29745
  +product: App\Entity\Product\Product {#8612
    #id: 3081
    #code: "moulin-electrique-peugeot-elis-sense-2987"
    #attributes: Doctrine\ORM\PersistentCollection {#8619 …}
    #variants: Doctrine\ORM\PersistentCollection {#8621 …}
    #options: Doctrine\ORM\PersistentCollection {#8625 …}
    #associations: Doctrine\ORM\PersistentCollection {#8623 …}
    #createdAt: DateTime @1758632751 {#8610
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8611
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8628 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8629
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8612}
        #id: 3081
        #name: "Moulin électrique PEUGEOT  Elis Sense"
        #slug: "moulin-electrique-peugeot-elis-sense-2987"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Mise en marche par effleurement.</li>\n
          <li>Fonctionne d'une seule main.</li>\n
          <li>Eclairage par led.</li>\n
          <li>Syst&egrave;me U'Select.</li>\n
          </ul></div><h1>Description moulin PEUGEOT électrique Elis sense</h1><div class="col is-12">Le moulin PEUGEOT &eacute;lectrique Elis sense est &eacute;quip&eacute; des m&eacute;canismes traditionnels PEUGEOT sel ou poivre dont l&rsquo;efficacit&eacute; n&rsquo;est plus &agrave;  prouver.&nbsp;Un simple effleurement suffit pour d&eacute;clencher le m&eacute;canisme pour moudre sel ou poivre  ce qui permet de tenir le moulin d&rsquo;une seule main, tr&egrave;s pratique lorsque l&rsquo;on  cuisine !<br />Le moulin PEUGEOT &eacute;lectrique Elis sense est muni &agrave; sa base d'un &eacute;clairage par led bleut&eacute;e permettant de voir la quantit&eacute; de condiment que l&rsquo;on ajoute.</div><h1>Caractéristiques moulin PEUGEOT électrique Elis Sense</h1><div class="col is-12">Corps inox.. Fonctionne avec 6 piles  1.5 v fournie. M&eacute;canisme USELECT (pr&eacute;r&eacute;glage de la mouture &agrave;  plusieurs positions) garanti &agrave; vie.  Hauteur 20 cm. LED lumineuse bleut&eacute;e. Livr&eacute; avec coupelle carr&eacute;e et 1 fiole de sel ou poivre avec entonnoir int&eacute;gr&eacute;.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8631 …}
    #channels: Doctrine\ORM\PersistentCollection {#8617 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8613 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8615 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29947 …}
  +slug: null
  #productRepository: Sylius\Bundle\CoreBundle\Doctrine\ORM\ProductRepository {#6914 …}
  #productVariantResolver: Sylius\Component\Product\Resolver\CompositeProductVariantResolver {#5455 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
108.0 MiB 0.81 ms
Input props
[
  "product" => App\Entity\Product\Product {#8612
    #id: 3081
    #code: "moulin-electrique-peugeot-elis-sense-2987"
    #attributes: Doctrine\ORM\PersistentCollection {#8619 …}
    #variants: Doctrine\ORM\PersistentCollection {#8621 …}
    #options: Doctrine\ORM\PersistentCollection {#8625 …}
    #associations: Doctrine\ORM\PersistentCollection {#8623 …}
    #createdAt: DateTime @1758632751 {#8610
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8611
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8628 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8629
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8612}
        #id: 3081
        #name: "Moulin électrique PEUGEOT  Elis Sense"
        #slug: "moulin-electrique-peugeot-elis-sense-2987"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Mise en marche par effleurement.</li>\n
          <li>Fonctionne d'une seule main.</li>\n
          <li>Eclairage par led.</li>\n
          <li>Syst&egrave;me U'Select.</li>\n
          </ul></div><h1>Description moulin PEUGEOT électrique Elis sense</h1><div class="col is-12">Le moulin PEUGEOT &eacute;lectrique Elis sense est &eacute;quip&eacute; des m&eacute;canismes traditionnels PEUGEOT sel ou poivre dont l&rsquo;efficacit&eacute; n&rsquo;est plus &agrave;  prouver.&nbsp;Un simple effleurement suffit pour d&eacute;clencher le m&eacute;canisme pour moudre sel ou poivre  ce qui permet de tenir le moulin d&rsquo;une seule main, tr&egrave;s pratique lorsque l&rsquo;on  cuisine !<br />Le moulin PEUGEOT &eacute;lectrique Elis sense est muni &agrave; sa base d'un &eacute;clairage par led bleut&eacute;e permettant de voir la quantit&eacute; de condiment que l&rsquo;on ajoute.</div><h1>Caractéristiques moulin PEUGEOT électrique Elis Sense</h1><div class="col is-12">Corps inox.. Fonctionne avec 6 piles  1.5 v fournie. M&eacute;canisme USELECT (pr&eacute;r&eacute;glage de la mouture &agrave;  plusieurs positions) garanti &agrave; vie.  Hauteur 20 cm. LED lumineuse bleut&eacute;e. Livr&eacute; avec coupelle carr&eacute;e et 1 fiole de sel ou poivre avec entonnoir int&eacute;gr&eacute;.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8631 …}
    #channels: Doctrine\ORM\PersistentCollection {#8617 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8613 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8615 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin électrique PEUGEOT  Elis Sense"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30018
  -props: [
    "product" => App\Entity\Product\Product {#8612
      #id: 3081
      #code: "moulin-electrique-peugeot-elis-sense-2987"
      #attributes: Doctrine\ORM\PersistentCollection {#8619 …}
      #variants: Doctrine\ORM\PersistentCollection {#8621 …}
      #options: Doctrine\ORM\PersistentCollection {#8625 …}
      #associations: Doctrine\ORM\PersistentCollection {#8623 …}
      #createdAt: DateTime @1758632751 {#8610
        date: 2025-09-23 21:05:51.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632751 {#8611
        date: 2025-09-23 21:05:51.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8628 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8629
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8612}
          #id: 3081
          #name: "Moulin électrique PEUGEOT  Elis Sense"
          #slug: "moulin-electrique-peugeot-elis-sense-2987"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Mise en marche par effleurement.</li>\n
            <li>Fonctionne d'une seule main.</li>\n
            <li>Eclairage par led.</li>\n
            <li>Syst&egrave;me U'Select.</li>\n
            </ul></div><h1>Description moulin PEUGEOT électrique Elis sense</h1><div class="col is-12">Le moulin PEUGEOT &eacute;lectrique Elis sense est &eacute;quip&eacute; des m&eacute;canismes traditionnels PEUGEOT sel ou poivre dont l&rsquo;efficacit&eacute; n&rsquo;est plus &agrave;  prouver.&nbsp;Un simple effleurement suffit pour d&eacute;clencher le m&eacute;canisme pour moudre sel ou poivre  ce qui permet de tenir le moulin d&rsquo;une seule main, tr&egrave;s pratique lorsque l&rsquo;on  cuisine !<br />Le moulin PEUGEOT &eacute;lectrique Elis sense est muni &agrave; sa base d'un &eacute;clairage par led bleut&eacute;e permettant de voir la quantit&eacute; de condiment que l&rsquo;on ajoute.</div><h1>Caractéristiques moulin PEUGEOT électrique Elis Sense</h1><div class="col is-12">Corps inox.. Fonctionne avec 6 piles  1.5 v fournie. M&eacute;canisme USELECT (pr&eacute;r&eacute;glage de la mouture &agrave;  plusieurs positions) garanti &agrave; vie.  Hauteur 20 cm. LED lumineuse bleut&eacute;e. Livr&eacute; avec coupelle carr&eacute;e et 1 fiole de sel ou poivre avec entonnoir int&eacute;gr&eacute;.</div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8631 …}
      #channels: Doctrine\ORM\PersistentCollection {#8617 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8613 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8615 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
108.0 MiB 0.74 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30100
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30002 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30078 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29999 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29947 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29955
    #collection: Doctrine\Common\Collections\ArrayCollection {#29964 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29943 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38601 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38603 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30100
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30002 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30078 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29999 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin électrique PEUGEOT  Elis Sense"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29955
    #collection: Doctrine\Common\Collections\ArrayCollection {#29964 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29943 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38601 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38603 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30103
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30100
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30002 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30078 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29999 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29947 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29955
      #collection: Doctrine\Common\Collections\ArrayCollection {#29964 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29943 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38601 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38603 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 108.0 MiB 0.13 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30154
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30145 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30152 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30153 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29947 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30157
  +variant: App\Entity\Product\ProductVariant {#29947 …}
  +price: "169,00\u{A0}"
  +originalPrice: "189,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9066 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12496 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9063 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30154
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30145 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30152 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30153 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 108.0 MiB 4.56 ms
Input props
[
  "product" => App\Entity\Product\Product {#8639
    #id: 3082
    #code: "coffret-elis-sense-peugeot-3253"
    #attributes: Doctrine\ORM\PersistentCollection {#8646 …}
    #variants: Doctrine\ORM\PersistentCollection {#8648 …}
    #options: Doctrine\ORM\PersistentCollection {#8652 …}
    #associations: Doctrine\ORM\PersistentCollection {#8650 …}
    #createdAt: DateTime @1758632751 {#8637
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8636
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8655 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8656
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8639}
        #id: 3082
        #name: "Coffret Elis Sense PEUGEOT"
        #slug: "coffret-elis-sense-peugeot-3253"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Pr&eacute;sentation dans un &eacute;l&eacute;gant coffret.</li>\n
          <li>Contient 2 recharges (poivre et sel) et 1 support de table.</li>\n
          <li>Derni&egrave;re g&eacute;n&eacute;ration moulin &eacute;lectrique PEUGEOT.</li>\n
          </ul></div><h1>Description coffret Elis Sense PEUGEOT</h1><div class="col is-12">Le coffret moulin Elis Sense PEUGEOT comprend 2 moulins électriques Elis Sense PEUGEOT et 2 recharges (poivre et sel) et 1 présentoir de table.</div><h1>Caractéristiques moulin électrique PEUGEOT Sense</h1><div class="col is-12">Corps inox.. Fonctionne avec 6 piles 1.5 v fournie. Mécanisme USELECT (préréglage de la mouture à plusieurs positions) garanti à vie. Hauteur 20 cm. LED lumineuse bleutée. Livré avec coupelle carrée et 1 fiole de sel ou poivre avec entonnoir intégré.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8658 …}
    #channels: Doctrine\ORM\PersistentCollection {#8644 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8640 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8642 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30009
  +product: App\Entity\Product\Product {#8639
    #id: 3082
    #code: "coffret-elis-sense-peugeot-3253"
    #attributes: Doctrine\ORM\PersistentCollection {#8646 …}
    #variants: Doctrine\ORM\PersistentCollection {#8648 …}
    #options: Doctrine\ORM\PersistentCollection {#8652 …}
    #associations: Doctrine\ORM\PersistentCollection {#8650 …}
    #createdAt: DateTime @1758632751 {#8637
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8636
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8655 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8656
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8639}
        #id: 3082
        #name: "Coffret Elis Sense PEUGEOT"
        #slug: "coffret-elis-sense-peugeot-3253"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Pr&eacute;sentation dans un &eacute;l&eacute;gant coffret.</li>\n
          <li>Contient 2 recharges (poivre et sel) et 1 support de table.</li>\n
          <li>Derni&egrave;re g&eacute;n&eacute;ration moulin &eacute;lectrique PEUGEOT.</li>\n
          </ul></div><h1>Description coffret Elis Sense PEUGEOT</h1><div class="col is-12">Le coffret moulin Elis Sense PEUGEOT comprend 2 moulins électriques Elis Sense PEUGEOT et 2 recharges (poivre et sel) et 1 présentoir de table.</div><h1>Caractéristiques moulin électrique PEUGEOT Sense</h1><div class="col is-12">Corps inox.. Fonctionne avec 6 piles 1.5 v fournie. Mécanisme USELECT (préréglage de la mouture à plusieurs positions) garanti à vie. Hauteur 20 cm. LED lumineuse bleutée. Livré avec coupelle carrée et 1 fiole de sel ou poivre avec entonnoir intégré.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8658 …}
    #channels: Doctrine\ORM\PersistentCollection {#8644 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8640 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8642 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#30220 …}
  +slug: null
  #productRepository: Sylius\Bundle\CoreBundle\Doctrine\ORM\ProductRepository {#6914 …}
  #productVariantResolver: Sylius\Component\Product\Resolver\CompositeProductVariantResolver {#5455 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
108.0 MiB 0.87 ms
Input props
[
  "product" => App\Entity\Product\Product {#8639
    #id: 3082
    #code: "coffret-elis-sense-peugeot-3253"
    #attributes: Doctrine\ORM\PersistentCollection {#8646 …}
    #variants: Doctrine\ORM\PersistentCollection {#8648 …}
    #options: Doctrine\ORM\PersistentCollection {#8652 …}
    #associations: Doctrine\ORM\PersistentCollection {#8650 …}
    #createdAt: DateTime @1758632751 {#8637
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8636
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8655 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8656
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8639}
        #id: 3082
        #name: "Coffret Elis Sense PEUGEOT"
        #slug: "coffret-elis-sense-peugeot-3253"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Pr&eacute;sentation dans un &eacute;l&eacute;gant coffret.</li>\n
          <li>Contient 2 recharges (poivre et sel) et 1 support de table.</li>\n
          <li>Derni&egrave;re g&eacute;n&eacute;ration moulin &eacute;lectrique PEUGEOT.</li>\n
          </ul></div><h1>Description coffret Elis Sense PEUGEOT</h1><div class="col is-12">Le coffret moulin Elis Sense PEUGEOT comprend 2 moulins électriques Elis Sense PEUGEOT et 2 recharges (poivre et sel) et 1 présentoir de table.</div><h1>Caractéristiques moulin électrique PEUGEOT Sense</h1><div class="col is-12">Corps inox.. Fonctionne avec 6 piles 1.5 v fournie. Mécanisme USELECT (préréglage de la mouture à plusieurs positions) garanti à vie. Hauteur 20 cm. LED lumineuse bleutée. Livré avec coupelle carrée et 1 fiole de sel ou poivre avec entonnoir intégré.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8658 …}
    #channels: Doctrine\ORM\PersistentCollection {#8644 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8640 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8642 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Coffret Elis Sense PEUGEOT"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30294
  -props: [
    "product" => App\Entity\Product\Product {#8639
      #id: 3082
      #code: "coffret-elis-sense-peugeot-3253"
      #attributes: Doctrine\ORM\PersistentCollection {#8646 …}
      #variants: Doctrine\ORM\PersistentCollection {#8648 …}
      #options: Doctrine\ORM\PersistentCollection {#8652 …}
      #associations: Doctrine\ORM\PersistentCollection {#8650 …}
      #createdAt: DateTime @1758632751 {#8637
        date: 2025-09-23 21:05:51.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632751 {#8636
        date: 2025-09-23 21:05:51.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8655 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8656
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8639}
          #id: 3082
          #name: "Coffret Elis Sense PEUGEOT"
          #slug: "coffret-elis-sense-peugeot-3253"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Pr&eacute;sentation dans un &eacute;l&eacute;gant coffret.</li>\n
            <li>Contient 2 recharges (poivre et sel) et 1 support de table.</li>\n
            <li>Derni&egrave;re g&eacute;n&eacute;ration moulin &eacute;lectrique PEUGEOT.</li>\n
            </ul></div><h1>Description coffret Elis Sense PEUGEOT</h1><div class="col is-12">Le coffret moulin Elis Sense PEUGEOT comprend 2 moulins électriques Elis Sense PEUGEOT et 2 recharges (poivre et sel) et 1 présentoir de table.</div><h1>Caractéristiques moulin électrique PEUGEOT Sense</h1><div class="col is-12">Corps inox.. Fonctionne avec 6 piles 1.5 v fournie. Mécanisme USELECT (préréglage de la mouture à plusieurs positions) garanti à vie. Hauteur 20 cm. LED lumineuse bleutée. Livré avec coupelle carrée et 1 fiole de sel ou poivre avec entonnoir intégré.</div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8658 …}
      #channels: Doctrine\ORM\PersistentCollection {#8644 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8640 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8642 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
108.0 MiB 0.73 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30287
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30278 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30351 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30275 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30220 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30228
    #collection: Doctrine\Common\Collections\ArrayCollection {#30240 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30216 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38615 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38617 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30287
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30278 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30351 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30275 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Coffret Elis Sense PEUGEOT"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30228
    #collection: Doctrine\Common\Collections\ArrayCollection {#30240 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30216 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38615 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38617 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30355
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30287
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30278 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30351 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30275 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#30220 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#30228
      #collection: Doctrine\Common\Collections\ArrayCollection {#30240 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#30216 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38615 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38617 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 108.0 MiB 0.13 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30405
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30396 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30403 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30404 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30220 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30408
  +variant: App\Entity\Product\ProductVariant {#30220 …}
  +price: "162,00\u{A0}"
  +originalPrice: "189,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9066 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12496 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9063 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30405
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30396 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30403 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30404 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 108.0 MiB 5.20 ms
Input props
[
  "product" => App\Entity\Product\Product {#8662
    #id: 3083
    #code: "moulin-electrique-peugeot-alaska-3509"
    #attributes: Doctrine\ORM\PersistentCollection {#8669 …}
    #variants: Doctrine\ORM\PersistentCollection {#8671 …}
    #options: Doctrine\ORM\PersistentCollection {#8675 …}
    #associations: Doctrine\ORM\PersistentCollection {#8673 …}
    #createdAt: DateTime @1758632751 {#8660
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8661
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8678 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8679
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8662}
        #id: 3083
        #name: "Moulin électrique Peugeot Alaska"
        #slug: "moulin-electrique-peugeot-alaska-3509"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Forme &eacute;pur&eacute;e tr&egrave;s design.</li>\n
          <li>Fonctionne d'une seule main.</li>\n
          <li>M&eacute;canisme garanti &agrave; vie.&nbsp;</li>\n
          </ul></div><h1>Description moulin électrique Peugeot Alaska</h1><div class="col is-12">Gr&acirc;ce &agrave; son moteur &eacute;lectrique, le moulin Alaska PEUGEOT s'utilise d'une seule main. <span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; text-align: left; background-color: #fafafa;">Son design &eacute;pur&eacute; s'accorde &agrave; tous les styles de cuisine.</span></div><h1>Caractéristiques moulin électrique Peugeot Alaska</h1><div class="col is-12"><p>Mati&egrave;re : Polycarbonate. Dimensions : Hauteur : 17 cm, Diam&egrave;tre : 5.5 cm. Coloris : blanc. Mouture r&eacute;glable. Eclairage pour un dosage pr&eacute;cis. Livr&eacute; avec 6 piles et 1 ampoule de rechange. M&eacute;canisme garanti &agrave; vie. Moteur &eacute;lectrique garanti 2 ans.</p></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8681 …}
    #channels: Doctrine\ORM\PersistentCollection {#8667 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8663 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8665 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30285
  +product: App\Entity\Product\Product {#8662
    #id: 3083
    #code: "moulin-electrique-peugeot-alaska-3509"
    #attributes: Doctrine\ORM\PersistentCollection {#8669 …}
    #variants: Doctrine\ORM\PersistentCollection {#8671 …}
    #options: Doctrine\ORM\PersistentCollection {#8675 …}
    #associations: Doctrine\ORM\PersistentCollection {#8673 …}
    #createdAt: DateTime @1758632751 {#8660
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8661
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8678 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8679
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8662}
        #id: 3083
        #name: "Moulin électrique Peugeot Alaska"
        #slug: "moulin-electrique-peugeot-alaska-3509"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Forme &eacute;pur&eacute;e tr&egrave;s design.</li>\n
          <li>Fonctionne d'une seule main.</li>\n
          <li>M&eacute;canisme garanti &agrave; vie.&nbsp;</li>\n
          </ul></div><h1>Description moulin électrique Peugeot Alaska</h1><div class="col is-12">Gr&acirc;ce &agrave; son moteur &eacute;lectrique, le moulin Alaska PEUGEOT s'utilise d'une seule main. <span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; text-align: left; background-color: #fafafa;">Son design &eacute;pur&eacute; s'accorde &agrave; tous les styles de cuisine.</span></div><h1>Caractéristiques moulin électrique Peugeot Alaska</h1><div class="col is-12"><p>Mati&egrave;re : Polycarbonate. Dimensions : Hauteur : 17 cm, Diam&egrave;tre : 5.5 cm. Coloris : blanc. Mouture r&eacute;glable. Eclairage pour un dosage pr&eacute;cis. Livr&eacute; avec 6 piles et 1 ampoule de rechange. M&eacute;canisme garanti &agrave; vie. Moteur &eacute;lectrique garanti 2 ans.</p></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8681 …}
    #channels: Doctrine\ORM\PersistentCollection {#8667 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8663 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8665 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#30471 …}
  +slug: null
  #productRepository: Sylius\Bundle\CoreBundle\Doctrine\ORM\ProductRepository {#6914 …}
  #productVariantResolver: Sylius\Component\Product\Resolver\CompositeProductVariantResolver {#5455 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
108.0 MiB 0.84 ms
Input props
[
  "product" => App\Entity\Product\Product {#8662
    #id: 3083
    #code: "moulin-electrique-peugeot-alaska-3509"
    #attributes: Doctrine\ORM\PersistentCollection {#8669 …}
    #variants: Doctrine\ORM\PersistentCollection {#8671 …}
    #options: Doctrine\ORM\PersistentCollection {#8675 …}
    #associations: Doctrine\ORM\PersistentCollection {#8673 …}
    #createdAt: DateTime @1758632751 {#8660
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8661
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8678 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8679
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8662}
        #id: 3083
        #name: "Moulin électrique Peugeot Alaska"
        #slug: "moulin-electrique-peugeot-alaska-3509"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Forme &eacute;pur&eacute;e tr&egrave;s design.</li>\n
          <li>Fonctionne d'une seule main.</li>\n
          <li>M&eacute;canisme garanti &agrave; vie.&nbsp;</li>\n
          </ul></div><h1>Description moulin électrique Peugeot Alaska</h1><div class="col is-12">Gr&acirc;ce &agrave; son moteur &eacute;lectrique, le moulin Alaska PEUGEOT s'utilise d'une seule main. <span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; text-align: left; background-color: #fafafa;">Son design &eacute;pur&eacute; s'accorde &agrave; tous les styles de cuisine.</span></div><h1>Caractéristiques moulin électrique Peugeot Alaska</h1><div class="col is-12"><p>Mati&egrave;re : Polycarbonate. Dimensions : Hauteur : 17 cm, Diam&egrave;tre : 5.5 cm. Coloris : blanc. Mouture r&eacute;glable. Eclairage pour un dosage pr&eacute;cis. Livr&eacute; avec 6 piles et 1 ampoule de rechange. M&eacute;canisme garanti &agrave; vie. Moteur &eacute;lectrique garanti 2 ans.</p></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8681 …}
    #channels: Doctrine\ORM\PersistentCollection {#8667 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8663 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8665 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin électrique Peugeot Alaska"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30542
  -props: [
    "product" => App\Entity\Product\Product {#8662
      #id: 3083
      #code: "moulin-electrique-peugeot-alaska-3509"
      #attributes: Doctrine\ORM\PersistentCollection {#8669 …}
      #variants: Doctrine\ORM\PersistentCollection {#8671 …}
      #options: Doctrine\ORM\PersistentCollection {#8675 …}
      #associations: Doctrine\ORM\PersistentCollection {#8673 …}
      #createdAt: DateTime @1758632751 {#8660
        date: 2025-09-23 21:05:51.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632751 {#8661
        date: 2025-09-23 21:05:51.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8678 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8679
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8662}
          #id: 3083
          #name: "Moulin électrique Peugeot Alaska"
          #slug: "moulin-electrique-peugeot-alaska-3509"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Forme &eacute;pur&eacute;e tr&egrave;s design.</li>\n
            <li>Fonctionne d'une seule main.</li>\n
            <li>M&eacute;canisme garanti &agrave; vie.&nbsp;</li>\n
            </ul></div><h1>Description moulin électrique Peugeot Alaska</h1><div class="col is-12">Gr&acirc;ce &agrave; son moteur &eacute;lectrique, le moulin Alaska PEUGEOT s'utilise d'une seule main. <span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; text-align: left; background-color: #fafafa;">Son design &eacute;pur&eacute; s'accorde &agrave; tous les styles de cuisine.</span></div><h1>Caractéristiques moulin électrique Peugeot Alaska</h1><div class="col is-12"><p>Mati&egrave;re : Polycarbonate. Dimensions : Hauteur : 17 cm, Diam&egrave;tre : 5.5 cm. Coloris : blanc. Mouture r&eacute;glable. Eclairage pour un dosage pr&eacute;cis. Livr&eacute; avec 6 piles et 1 ampoule de rechange. M&eacute;canisme garanti &agrave; vie. Moteur &eacute;lectrique garanti 2 ans.</p></div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8681 …}
      #channels: Doctrine\ORM\PersistentCollection {#8667 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8663 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8665 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
108.0 MiB 0.95 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30621
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30526 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30599 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30523 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30471 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30479
    #collection: Doctrine\Common\Collections\ArrayCollection {#30488 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30467 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38629 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38631 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30621
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30526 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30599 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30523 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin électrique Peugeot Alaska"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30479
    #collection: Doctrine\Common\Collections\ArrayCollection {#30488 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30467 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38629 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38631 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30624
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30621
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30526 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30599 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30523 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#30471 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#30479
      #collection: Doctrine\Common\Collections\ArrayCollection {#30488 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#30467 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38629 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38631 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 108.0 MiB 0.13 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30675
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30666 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30673 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30674 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30471 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30678
  +variant: App\Entity\Product\ProductVariant {#30471 …}
  +price: "101,00\u{A0}"
  +originalPrice: "112,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9066 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12496 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9063 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30675
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30666 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30673 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30674 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 108.0 MiB 5.28 ms
Input props
[
  "product" => App\Entity\Product\Product {#8685
    #id: 3075
    #code: "moulin-peugeot-molene-3964"
    #attributes: Doctrine\ORM\PersistentCollection {#8692 …}
    #variants: Doctrine\ORM\PersistentCollection {#8694 …}
    #options: Doctrine\ORM\PersistentCollection {#8698 …}
    #associations: Doctrine\ORM\PersistentCollection {#8696 …}
    #createdAt: DateTime @1758632750 {#8683
      date: 2025-09-23 21:05:50.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632750 {#8684
      date: 2025-09-23 21:05:50.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8701 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8702
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8685}
        #id: 3075
        #name: "Moulin Peugeot Molène"
        #slug: "moulin-peugeot-molene-3964"
        #description: """
          <div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">M&eacute;canisme garanti &agrave; vie.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">R&eacute;glage de la mouture.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Corps acrylique haute qualit&eacute;.</div>\n
          <div>\n
          <ul>\n
          <li>M&eacute;canisme garanti &agrave; vie.</li>\n
          <li>R&eacute;glage de la mouture.</li>\n
          <li>Corps acrylique haute qualit&eacute;.</li>\n
          </ul>\n
          </div></div><h1>Description moulin Peugeot Molène</h1><div class="col is-12">Le moulin Peugeot Mol&egrave;ne permet de moudre efficacement sel et poivre. L'&eacute;l&eacute;gance de son design avec sa t&ecirc;te color&eacute;e permet de pr&eacute;senter votre moulin directement &agrave; table. Il b&eacute;n&eacute;ficie d'un m&eacute;canisme fiable et efficace garanti &agrave; vie.</div><h1>Caractéristiques moulin Peugeot Molène</h1><div class="col is-12">Corps en acrylique. Hauteur 14 cm. Bouton inox. M&eacute;canisme inox anti-corrosion. Syst&egrave;me de r&eacute;glage de la mouture pour chaque usage. M&eacute;canisme garanti &agrave; vie. Livr&eacute; rempli.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8704 …}
    #channels: Doctrine\ORM\PersistentCollection {#8690 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8686 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8688 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30533
  +product: App\Entity\Product\Product {#8685
    #id: 3075
    #code: "moulin-peugeot-molene-3964"
    #attributes: Doctrine\ORM\PersistentCollection {#8692 …}
    #variants: Doctrine\ORM\PersistentCollection {#8694 …}
    #options: Doctrine\ORM\PersistentCollection {#8698 …}
    #associations: Doctrine\ORM\PersistentCollection {#8696 …}
    #createdAt: DateTime @1758632750 {#8683
      date: 2025-09-23 21:05:50.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632750 {#8684
      date: 2025-09-23 21:05:50.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8701 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8702
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8685}
        #id: 3075
        #name: "Moulin Peugeot Molène"
        #slug: "moulin-peugeot-molene-3964"
        #description: """
          <div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">M&eacute;canisme garanti &agrave; vie.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">R&eacute;glage de la mouture.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Corps acrylique haute qualit&eacute;.</div>\n
          <div>\n
          <ul>\n
          <li>M&eacute;canisme garanti &agrave; vie.</li>\n
          <li>R&eacute;glage de la mouture.</li>\n
          <li>Corps acrylique haute qualit&eacute;.</li>\n
          </ul>\n
          </div></div><h1>Description moulin Peugeot Molène</h1><div class="col is-12">Le moulin Peugeot Mol&egrave;ne permet de moudre efficacement sel et poivre. L'&eacute;l&eacute;gance de son design avec sa t&ecirc;te color&eacute;e permet de pr&eacute;senter votre moulin directement &agrave; table. Il b&eacute;n&eacute;ficie d'un m&eacute;canisme fiable et efficace garanti &agrave; vie.</div><h1>Caractéristiques moulin Peugeot Molène</h1><div class="col is-12">Corps en acrylique. Hauteur 14 cm. Bouton inox. M&eacute;canisme inox anti-corrosion. Syst&egrave;me de r&eacute;glage de la mouture pour chaque usage. M&eacute;canisme garanti &agrave; vie. Livr&eacute; rempli.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8704 …}
    #channels: Doctrine\ORM\PersistentCollection {#8690 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8686 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8688 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#30741 …}
  +slug: null
  #productRepository: Sylius\Bundle\CoreBundle\Doctrine\ORM\ProductRepository {#6914 …}
  #productVariantResolver: Sylius\Component\Product\Resolver\CompositeProductVariantResolver {#5455 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
108.0 MiB 0.74 ms
Input props
[
  "product" => App\Entity\Product\Product {#8685
    #id: 3075
    #code: "moulin-peugeot-molene-3964"
    #attributes: Doctrine\ORM\PersistentCollection {#8692 …}
    #variants: Doctrine\ORM\PersistentCollection {#8694 …}
    #options: Doctrine\ORM\PersistentCollection {#8698 …}
    #associations: Doctrine\ORM\PersistentCollection {#8696 …}
    #createdAt: DateTime @1758632750 {#8683
      date: 2025-09-23 21:05:50.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632750 {#8684
      date: 2025-09-23 21:05:50.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8701 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8702
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8685}
        #id: 3075
        #name: "Moulin Peugeot Molène"
        #slug: "moulin-peugeot-molene-3964"
        #description: """
          <div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">M&eacute;canisme garanti &agrave; vie.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">R&eacute;glage de la mouture.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Corps acrylique haute qualit&eacute;.</div>\n
          <div>\n
          <ul>\n
          <li>M&eacute;canisme garanti &agrave; vie.</li>\n
          <li>R&eacute;glage de la mouture.</li>\n
          <li>Corps acrylique haute qualit&eacute;.</li>\n
          </ul>\n
          </div></div><h1>Description moulin Peugeot Molène</h1><div class="col is-12">Le moulin Peugeot Mol&egrave;ne permet de moudre efficacement sel et poivre. L'&eacute;l&eacute;gance de son design avec sa t&ecirc;te color&eacute;e permet de pr&eacute;senter votre moulin directement &agrave; table. Il b&eacute;n&eacute;ficie d'un m&eacute;canisme fiable et efficace garanti &agrave; vie.</div><h1>Caractéristiques moulin Peugeot Molène</h1><div class="col is-12">Corps en acrylique. Hauteur 14 cm. Bouton inox. M&eacute;canisme inox anti-corrosion. Syst&egrave;me de r&eacute;glage de la mouture pour chaque usage. M&eacute;canisme garanti &agrave; vie. Livr&eacute; rempli.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8704 …}
    #channels: Doctrine\ORM\PersistentCollection {#8690 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8686 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8688 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin Peugeot Molène"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30812
  -props: [
    "product" => App\Entity\Product\Product {#8685
      #id: 3075
      #code: "moulin-peugeot-molene-3964"
      #attributes: Doctrine\ORM\PersistentCollection {#8692 …}
      #variants: Doctrine\ORM\PersistentCollection {#8694 …}
      #options: Doctrine\ORM\PersistentCollection {#8698 …}
      #associations: Doctrine\ORM\PersistentCollection {#8696 …}
      #createdAt: DateTime @1758632750 {#8683
        date: 2025-09-23 21:05:50.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632750 {#8684
        date: 2025-09-23 21:05:50.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8701 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8702
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8685}
          #id: 3075
          #name: "Moulin Peugeot Molène"
          #slug: "moulin-peugeot-molene-3964"
          #description: """
            <div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">M&eacute;canisme garanti &agrave; vie.</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">R&eacute;glage de la mouture.</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Corps acrylique haute qualit&eacute;.</div>\n
            <div>\n
            <ul>\n
            <li>M&eacute;canisme garanti &agrave; vie.</li>\n
            <li>R&eacute;glage de la mouture.</li>\n
            <li>Corps acrylique haute qualit&eacute;.</li>\n
            </ul>\n
            </div></div><h1>Description moulin Peugeot Molène</h1><div class="col is-12">Le moulin Peugeot Mol&egrave;ne permet de moudre efficacement sel et poivre. L'&eacute;l&eacute;gance de son design avec sa t&ecirc;te color&eacute;e permet de pr&eacute;senter votre moulin directement &agrave; table. Il b&eacute;n&eacute;ficie d'un m&eacute;canisme fiable et efficace garanti &agrave; vie.</div><h1>Caractéristiques moulin Peugeot Molène</h1><div class="col is-12">Corps en acrylique. Hauteur 14 cm. Bouton inox. M&eacute;canisme inox anti-corrosion. Syst&egrave;me de r&eacute;glage de la mouture pour chaque usage. M&eacute;canisme garanti &agrave; vie. Livr&eacute; rempli.</div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8704 …}
      #channels: Doctrine\ORM\PersistentCollection {#8690 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8686 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8688 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
108.0 MiB 0.76 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30918
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30796 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30863 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30793 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30741 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30749
    #collection: Doctrine\Common\Collections\ArrayCollection {#30758 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30737 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38643 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38645 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30918
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30796 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30863 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30793 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin Peugeot Molène"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30749
    #collection: Doctrine\Common\Collections\ArrayCollection {#30758 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30737 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38643 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38645 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30923
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30918
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30796 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30863 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30793 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#30741 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#30749
      #collection: Doctrine\Common\Collections\ArrayCollection {#30758 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#30737 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38643 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38645 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 108.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30972
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30963 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30970 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30971 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30741 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30975
  +variant: App\Entity\Product\ProductVariant {#30741 …}
  +price: "26,00\u{A0}"
  +originalPrice: "31,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9066 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12496 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9063 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30972
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30963 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30970 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30971 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 108.0 MiB 5.71 ms
Input props
[
  "product" => App\Entity\Product\Product {#8708
    #id: 3072
    #code: "moulin-peugeot-vittel-519"
    #attributes: Doctrine\ORM\PersistentCollection {#8715 …}
    #variants: Doctrine\ORM\PersistentCollection {#8717 …}
    #options: Doctrine\ORM\PersistentCollection {#8721 …}
    #associations: Doctrine\ORM\PersistentCollection {#8719 …}
    #createdAt: DateTime @1758632749 {#8706
      date: 2025-09-23 21:05:49.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632749 {#8707
      date: 2025-09-23 21:05:49.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8724 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8725
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8708}
        #id: 3072
        #name: "Moulin Peugeot Vittel"
        #slug: "moulin-peugeot-vittel-519"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&eacute;canisme garanti &agrave; vie.</li>\n
          <li>R&eacute;glage de la mouture.</li>\n
          <li>Corps acrylique haute qualit&eacute;.</li>\n
          </ul></div><h1>Description moulin Peugeot Vittel</h1><div class="col is-12">Le moulin Peugeot Vittel permet de moudre efficacement sel et poivre. L'&eacute;l&eacute;gance de son design permet d'envisager de pr&eacute;senter votre moulin &nbsp;directement &agrave; table. Il b&eacute;n&eacute;ficie d'un m&eacute;canisme fiable et efficace garanti &agrave; vie.</div><h1>Caractéristiques moulin Peugeot Vittel</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Corps en acrylique - M&eacute;canisme anti-corrosion - Syst&egrave;me de r&eacute;glage de la mouture pour chaque usage - M&eacute;canisme garanti &agrave; vie</div>\n
          <div>Corps en acrylique. M&eacute;canisme anti-corrosion. Syst&egrave;me de r&eacute;glage de la mouture pour chaque usage. M&eacute;canisme garanti &agrave; vie</div>\n
          <div></div></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8727 …}
    #channels: Doctrine\ORM\PersistentCollection {#8713 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8709 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8711 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30803
  +product: App\Entity\Product\Product {#8708
    #id: 3072
    #code: "moulin-peugeot-vittel-519"
    #attributes: Doctrine\ORM\PersistentCollection {#8715 …}
    #variants: Doctrine\ORM\PersistentCollection {#8717 …}
    #options: Doctrine\ORM\PersistentCollection {#8721 …}
    #associations: Doctrine\ORM\PersistentCollection {#8719 …}
    #createdAt: DateTime @1758632749 {#8706
      date: 2025-09-23 21:05:49.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632749 {#8707
      date: 2025-09-23 21:05:49.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8724 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8725
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8708}
        #id: 3072
        #name: "Moulin Peugeot Vittel"
        #slug: "moulin-peugeot-vittel-519"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&eacute;canisme garanti &agrave; vie.</li>\n
          <li>R&eacute;glage de la mouture.</li>\n
          <li>Corps acrylique haute qualit&eacute;.</li>\n
          </ul></div><h1>Description moulin Peugeot Vittel</h1><div class="col is-12">Le moulin Peugeot Vittel permet de moudre efficacement sel et poivre. L'&eacute;l&eacute;gance de son design permet d'envisager de pr&eacute;senter votre moulin &nbsp;directement &agrave; table. Il b&eacute;n&eacute;ficie d'un m&eacute;canisme fiable et efficace garanti &agrave; vie.</div><h1>Caractéristiques moulin Peugeot Vittel</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Corps en acrylique - M&eacute;canisme anti-corrosion - Syst&egrave;me de r&eacute;glage de la mouture pour chaque usage - M&eacute;canisme garanti &agrave; vie</div>\n
          <div>Corps en acrylique. M&eacute;canisme anti-corrosion. Syst&egrave;me de r&eacute;glage de la mouture pour chaque usage. M&eacute;canisme garanti &agrave; vie</div>\n
          <div></div></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8727 …}
    #channels: Doctrine\ORM\PersistentCollection {#8713 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8709 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8711 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#31038 …}
  +slug: null
  #productRepository: Sylius\Bundle\CoreBundle\Doctrine\ORM\ProductRepository {#6914 …}
  #productVariantResolver: Sylius\Component\Product\Resolver\CompositeProductVariantResolver {#5455 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
108.0 MiB 1.01 ms
Input props
[
  "product" => App\Entity\Product\Product {#8708
    #id: 3072
    #code: "moulin-peugeot-vittel-519"
    #attributes: Doctrine\ORM\PersistentCollection {#8715 …}
    #variants: Doctrine\ORM\PersistentCollection {#8717 …}
    #options: Doctrine\ORM\PersistentCollection {#8721 …}
    #associations: Doctrine\ORM\PersistentCollection {#8719 …}
    #createdAt: DateTime @1758632749 {#8706
      date: 2025-09-23 21:05:49.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632749 {#8707
      date: 2025-09-23 21:05:49.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8724 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8725
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8708}
        #id: 3072
        #name: "Moulin Peugeot Vittel"
        #slug: "moulin-peugeot-vittel-519"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&eacute;canisme garanti &agrave; vie.</li>\n
          <li>R&eacute;glage de la mouture.</li>\n
          <li>Corps acrylique haute qualit&eacute;.</li>\n
          </ul></div><h1>Description moulin Peugeot Vittel</h1><div class="col is-12">Le moulin Peugeot Vittel permet de moudre efficacement sel et poivre. L'&eacute;l&eacute;gance de son design permet d'envisager de pr&eacute;senter votre moulin &nbsp;directement &agrave; table. Il b&eacute;n&eacute;ficie d'un m&eacute;canisme fiable et efficace garanti &agrave; vie.</div><h1>Caractéristiques moulin Peugeot Vittel</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Corps en acrylique - M&eacute;canisme anti-corrosion - Syst&egrave;me de r&eacute;glage de la mouture pour chaque usage - M&eacute;canisme garanti &agrave; vie</div>\n
          <div>Corps en acrylique. M&eacute;canisme anti-corrosion. Syst&egrave;me de r&eacute;glage de la mouture pour chaque usage. M&eacute;canisme garanti &agrave; vie</div>\n
          <div></div></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8727 …}
    #channels: Doctrine\ORM\PersistentCollection {#8713 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8709 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8711 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin Peugeot Vittel"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#31109
  -props: [
    "product" => App\Entity\Product\Product {#8708
      #id: 3072
      #code: "moulin-peugeot-vittel-519"
      #attributes: Doctrine\ORM\PersistentCollection {#8715 …}
      #variants: Doctrine\ORM\PersistentCollection {#8717 …}
      #options: Doctrine\ORM\PersistentCollection {#8721 …}
      #associations: Doctrine\ORM\PersistentCollection {#8719 …}
      #createdAt: DateTime @1758632749 {#8706
        date: 2025-09-23 21:05:49.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632749 {#8707
        date: 2025-09-23 21:05:49.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8724 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8725
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8708}
          #id: 3072
          #name: "Moulin Peugeot Vittel"
          #slug: "moulin-peugeot-vittel-519"
          #description: """
            <div class="col is-12"><ul>\n
            <li>M&eacute;canisme garanti &agrave; vie.</li>\n
            <li>R&eacute;glage de la mouture.</li>\n
            <li>Corps acrylique haute qualit&eacute;.</li>\n
            </ul></div><h1>Description moulin Peugeot Vittel</h1><div class="col is-12">Le moulin Peugeot Vittel permet de moudre efficacement sel et poivre. L'&eacute;l&eacute;gance de son design permet d'envisager de pr&eacute;senter votre moulin &nbsp;directement &agrave; table. Il b&eacute;n&eacute;ficie d'un m&eacute;canisme fiable et efficace garanti &agrave; vie.</div><h1>Caractéristiques moulin Peugeot Vittel</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Corps en acrylique - M&eacute;canisme anti-corrosion - Syst&egrave;me de r&eacute;glage de la mouture pour chaque usage - M&eacute;canisme garanti &agrave; vie</div>\n
            <div>Corps en acrylique. M&eacute;canisme anti-corrosion. Syst&egrave;me de r&eacute;glage de la mouture pour chaque usage. M&eacute;canisme garanti &agrave; vie</div>\n
            <div></div></div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8727 …}
      #channels: Doctrine\ORM\PersistentCollection {#8713 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7721 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8709 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8711 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
108.0 MiB 0.74 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31235
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31093 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#31169 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31090 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#31038 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#31046
    #collection: Doctrine\Common\Collections\ArrayCollection {#31055 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#31034 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38657 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38659 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31235
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31093 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#31169 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31090 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin Peugeot Vittel"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#31046
    #collection: Doctrine\Common\Collections\ArrayCollection {#31055 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#31034 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38657 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38659 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#31238
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31235
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31093 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#31169 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31090 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#31038 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#31046
      #collection: Doctrine\Common\Collections\ArrayCollection {#31055 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#31034 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38657 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38659 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 108.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31289
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31280 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#31287 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31288 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#31038 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#31292
  +variant: App\Entity\Product\ProductVariant {#31038 …}
  +price: "35,00\u{A0}"
  +originalPrice: "39,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9066 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12496 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9063 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31289
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31280 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#31287 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31288 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:cart:widget:offcanvas Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent 108.0 MiB 1.97 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27421
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12561 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27443 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12571 …}
    +prefixes: [
      "sylius_shop.base.offcanvas"
    ]
  }
  "template" => "@SyliusShop/shared/layout/base/offcanvas/cart.html.twig"
]
Attributes
[]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent {#31612
  +cart: App\Entity\Order\Order {#13475 …}
  #cartContext: Sylius\Component\Order\Context\CompositeCartContext {#1322 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27421
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12561 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27443 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12571 …}
    +prefixes: [
      "sylius_shop.base.offcanvas"
    ]
  }
  +template: "@SyliusShop/shared/layout/base/offcanvas/cart.html.twig"
  #repository: Sylius\Bundle\CoreBundle\Doctrine\ORM\OrderRepository {#4980 …}
}