Components

12 Twig Components
44 Render Count
80 ms Render Time
114.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 52.71ms
sylius_shop:main_image
[Anonymous]
@SyliusShop/shared/components/main_image.html.twig
9 9.79ms
sylius_shop:catalog_promotions
[Anonymous]
@SyliusShop/shared/components/catalog_promotions.html.twig
9 8.16ms
sylius_shop:product:card:price
"Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent"
@SyliusUi/components/default.html.twig
9 2.34ms
sylius_shop:common:currency_switcher
"Sylius\Bundle\ShopBundle\Twig\Component\Common\CurrencySwitcherComponent"
@SyliusUi/components/default.html.twig
1 1.11ms
sylius_shop:common:locale_switcher
"Sylius\Bundle\ShopBundle\Twig\Component\Common\LocaleSwitcherComponent"
@SyliusUi/components/default.html.twig
1 0.70ms
sylius_shop:cart:widget
"Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent"
@SyliusUi/components/default.html.twig
1 4.49ms
sylius_shop:common:taxon_menu
"Sylius\Bundle\ShopBundle\Twig\Component\Common\TaxonMenuComponent"
@SyliusUi/components/default.html.twig
1 14.52ms
sylius_shop:product:show:breadcrumbs
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 0.97ms
sylius_shop:product:show:taxonomy
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 0.89ms
sylius_shop:product:show:header
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 1.63ms
sylius_shop:cart:widget:offcanvas
"Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent"
@SyliusUi/components/default.html.twig
1 2.80ms

Render calls

sylius_shop:common:currency_switcher Sylius\Bundle\ShopBundle\Twig\Component\Common\CurrencySwitcherComponent 114.0 MiB 1.11 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13650
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13643 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13649 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13648 …}
    +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 {#14270
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#13541 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13650
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13643 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13649 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13648 …}
    +prefixes: [
      "sylius_shop.base.header.top_bar"
    ]
  }
}
sylius_shop:common:locale_switcher Sylius\Bundle\ShopBundle\Twig\Component\Common\LocaleSwitcherComponent 114.0 MiB 0.70 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#14347
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#14343 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#14345 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#14346 …}
    +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 {#14356
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #localeProvider: Sylius\Component\Core\Provider\ChannelBasedLocaleProvider {#4528 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#14347
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#14343 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#14345 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#14346 …}
    +prefixes: [
      "sylius_shop.base.header.top_bar"
    ]
  }
}
sylius_shop:cart:widget Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent 114.0 MiB 4.49 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#14438
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#14417 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#14437 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#14436 …}
    +prefixes: [
      "sylius_shop.base.header.content"
    ]
  }
  "template" => "@SyliusShop/shared/components/header/cart.html.twig"
]
Attributes
[]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent {#14453
  +cart: App\Entity\Order\Order {#14520 …}
  #cartContext: Sylius\Component\Order\Context\CompositeCartContext {#1322 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#14438
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#14417 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#14437 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#14436 …}
    +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 114.0 MiB 14.52 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#14706
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#14694 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#14700 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#14692 …}
    +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 {#14715
  #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 {#14706
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#14694 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#14700 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#14692 …}
    +prefixes: [
      "sylius_shop.base.header.navbar"
    ]
  }
}
sylius_shop:product:show:breadcrumbs Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 114.0 MiB 0.97 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28421
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28417 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28418 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28420 …}
    +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 {#28430
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28421
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28417 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28418 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28420 …}
    +prefixes: [
      "sylius_shop.product.index.content"
    ]
  }
}
sylius_shop:product:show:taxonomy Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 114.0 MiB 0.89 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28534
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28530 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28531 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28533 …}
    +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 {#28542
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28534
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28530 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28531 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28533 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.sidebar"
    ]
  }
}
sylius_shop:product:show:header Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 114.0 MiB 1.63 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28619
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28615 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28616 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28618 …}
    +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 {#28627
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28619
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28615 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28616 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28618 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 114.0 MiB 11.06 ms
Input props
[
  "product" => App\Entity\Product\Product {#7949
    #id: 3052
    #code: "moulin-peugeot-hostellerie-4361"
    #attributes: Doctrine\ORM\PersistentCollection {#8635 …}
    #variants: Doctrine\ORM\PersistentCollection {#8776 …}
    #options: Doctrine\ORM\PersistentCollection {#8763 …}
    #associations: Doctrine\ORM\PersistentCollection {#8703 …}
    #createdAt: DateTime @1758632747 {#8058
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#7959
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8762 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8765
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7949}
        #id: 3052
        #name: "Moulin Peugeot Hostellerie"
        #slug: "moulin-peugeot-hostellerie-4361"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Efficacit&eacute; du m&eacute;canisme.</li>\n
          <li>M&eacute;canisme garanti &agrave; vie.</li>\n
          <li><strong>Fabriqu&eacute; en France.</strong></li>\n
          </ul></div><h1>Description Moulin Peugeot Hostellerie</h1><div class="col is-12">Son excellente ergonomie et l'efficacit&eacute; de ses m&eacute;canismes ont rapidement permis au moulin Peugeot Hostellerie de s'imposer dans toutes les cuisines des grands chefs. De plus il vous est propos&eacute; &agrave; un prix particuli&egrave;rement attractit compte tenu de sa taille.&nbsp;</div><h1>Caractéristiques Moulin Peugeot Hostellerie</h1><div class="col is-12">M&eacute;canisme poivre ou sel garanti &agrave; vie. Corps bois teint&eacute;. &nbsp;Corps garantis 5 ans. &nbsp;Molette de r&eacute;glage de la mouture.&nbsp;Bille inox avec symbole grav&eacute; "P". Hauteur 22 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 {#8768 …}
    #channels: Doctrine\ORM\PersistentCollection {#8337 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8059 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8338 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28684
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28717 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28723 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28710 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29152
  +product: App\Entity\Product\Product {#7949
    #id: 3052
    #code: "moulin-peugeot-hostellerie-4361"
    #attributes: Doctrine\ORM\PersistentCollection {#8635 …}
    #variants: Doctrine\ORM\PersistentCollection {#8776 …}
    #options: Doctrine\ORM\PersistentCollection {#8763 …}
    #associations: Doctrine\ORM\PersistentCollection {#8703 …}
    #createdAt: DateTime @1758632747 {#8058
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#7959
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8762 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8765
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7949}
        #id: 3052
        #name: "Moulin Peugeot Hostellerie"
        #slug: "moulin-peugeot-hostellerie-4361"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Efficacit&eacute; du m&eacute;canisme.</li>\n
          <li>M&eacute;canisme garanti &agrave; vie.</li>\n
          <li><strong>Fabriqu&eacute; en France.</strong></li>\n
          </ul></div><h1>Description Moulin Peugeot Hostellerie</h1><div class="col is-12">Son excellente ergonomie et l'efficacit&eacute; de ses m&eacute;canismes ont rapidement permis au moulin Peugeot Hostellerie de s'imposer dans toutes les cuisines des grands chefs. De plus il vous est propos&eacute; &agrave; un prix particuli&egrave;rement attractit compte tenu de sa taille.&nbsp;</div><h1>Caractéristiques Moulin Peugeot Hostellerie</h1><div class="col is-12">M&eacute;canisme poivre ou sel garanti &agrave; vie. Corps bois teint&eacute;. &nbsp;Corps garantis 5 ans. &nbsp;Molette de r&eacute;glage de la mouture.&nbsp;Bille inox avec symbole grav&eacute; "P". Hauteur 22 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 {#8768 …}
    #channels: Doctrine\ORM\PersistentCollection {#8337 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8059 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8338 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#8779 …}
  +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 {#28684
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28717 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28723 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28710 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 2.24 ms
Input props
[
  "product" => App\Entity\Product\Product {#7949
    #id: 3052
    #code: "moulin-peugeot-hostellerie-4361"
    #attributes: Doctrine\ORM\PersistentCollection {#8635 …}
    #variants: Doctrine\ORM\PersistentCollection {#8776 …}
    #options: Doctrine\ORM\PersistentCollection {#8763 …}
    #associations: Doctrine\ORM\PersistentCollection {#8703 …}
    #createdAt: DateTime @1758632747 {#8058
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#7959
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8762 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8765
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7949}
        #id: 3052
        #name: "Moulin Peugeot Hostellerie"
        #slug: "moulin-peugeot-hostellerie-4361"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Efficacit&eacute; du m&eacute;canisme.</li>\n
          <li>M&eacute;canisme garanti &agrave; vie.</li>\n
          <li><strong>Fabriqu&eacute; en France.</strong></li>\n
          </ul></div><h1>Description Moulin Peugeot Hostellerie</h1><div class="col is-12">Son excellente ergonomie et l'efficacit&eacute; de ses m&eacute;canismes ont rapidement permis au moulin Peugeot Hostellerie de s'imposer dans toutes les cuisines des grands chefs. De plus il vous est propos&eacute; &agrave; un prix particuli&egrave;rement attractit compte tenu de sa taille.&nbsp;</div><h1>Caractéristiques Moulin Peugeot Hostellerie</h1><div class="col is-12">M&eacute;canisme poivre ou sel garanti &agrave; vie. Corps bois teint&eacute;. &nbsp;Corps garantis 5 ans. &nbsp;Molette de r&eacute;glage de la mouture.&nbsp;Bille inox avec symbole grav&eacute; "P". Hauteur 22 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 {#8768 …}
    #channels: Doctrine\ORM\PersistentCollection {#8337 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8059 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8338 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin Peugeot Hostellerie"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29312
  -props: [
    "product" => App\Entity\Product\Product {#7949
      #id: 3052
      #code: "moulin-peugeot-hostellerie-4361"
      #attributes: Doctrine\ORM\PersistentCollection {#8635 …}
      #variants: Doctrine\ORM\PersistentCollection {#8776 …}
      #options: Doctrine\ORM\PersistentCollection {#8763 …}
      #associations: Doctrine\ORM\PersistentCollection {#8703 …}
      #createdAt: DateTime @1758632747 {#8058
        date: 2025-09-23 21:05:47.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632747 {#7959
        date: 2025-09-23 21:05:47.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8762 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8765
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#7949}
          #id: 3052
          #name: "Moulin Peugeot Hostellerie"
          #slug: "moulin-peugeot-hostellerie-4361"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Efficacit&eacute; du m&eacute;canisme.</li>\n
            <li>M&eacute;canisme garanti &agrave; vie.</li>\n
            <li><strong>Fabriqu&eacute; en France.</strong></li>\n
            </ul></div><h1>Description Moulin Peugeot Hostellerie</h1><div class="col is-12">Son excellente ergonomie et l'efficacit&eacute; de ses m&eacute;canismes ont rapidement permis au moulin Peugeot Hostellerie de s'imposer dans toutes les cuisines des grands chefs. De plus il vous est propos&eacute; &agrave; un prix particuli&egrave;rement attractit compte tenu de sa taille.&nbsp;</div><h1>Caractéristiques Moulin Peugeot Hostellerie</h1><div class="col is-12">M&eacute;canisme poivre ou sel garanti &agrave; vie. Corps bois teint&eacute;. &nbsp;Corps garantis 5 ans. &nbsp;Molette de r&eacute;glage de la mouture.&nbsp;Bille inox avec symbole grav&eacute; "P". Hauteur 22 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 {#8768 …}
      #channels: Doctrine\ORM\PersistentCollection {#8337 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8059 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8338 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 1.65 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29389
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29385 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29386 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29388 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#8779 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#9050
    #collection: Doctrine\Common\Collections\ArrayCollection {#9049 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#8896 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38587 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38639 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29389
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29385 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29386 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29388 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin Peugeot Hostellerie"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#9050
    #collection: Doctrine\Common\Collections\ArrayCollection {#9049 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#8896 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38587 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38639 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29393
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29389
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29385 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29386 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29388 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#8779 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#9050
      #collection: Doctrine\Common\Collections\ArrayCollection {#9049 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#8896 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38587 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38639 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.60 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29461
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29451 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29459 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29460 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#8779 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29470
  +variant: App\Entity\Product\ProductVariant {#8779 …}
  +price: "31,00\u{A0}"
  +originalPrice: "34,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#10111 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#13541 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#10108 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29461
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29451 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29459 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29460 …}
    +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 114.0 MiB 5.26 ms
Input props
[
  "product" => App\Entity\Product\Product {#9068
    #id: 3077
    #code: "moulin-peugeot-chaumont-4374"
    #attributes: Doctrine\ORM\PersistentCollection {#9075 …}
    #variants: Doctrine\ORM\PersistentCollection {#9091 …}
    #options: Doctrine\ORM\PersistentCollection {#9079 …}
    #associations: Doctrine\ORM\PersistentCollection {#9077 …}
    #createdAt: DateTime @1758632750 {#9051
      date: 2025-09-23 21:05:50.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632750 {#9048
      date: 2025-09-23 21:05:50.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9082 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9083
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9068}
        #id: 3077
        #name: "Moulin Peugeot Chaumont"
        #slug: "moulin-peugeot-chaumont-4374"
        #description: """
          <div class="col is-12"><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></div><h1>Description Moulin Peugeot Chaumont</h1><div class="col is-12">Le moulin Peugeot Chaumont joue la transparence pour vous offrir le meilleur. Qu'il soit &agrave; poivre ou &agrave; sel, son m&eacute;canisme s'av&egrave;re tr&egrave;s fiable (garanti &agrave; vie) et tr&egrave;s efficace.</div><h1>Caractéristiques Moulin Peugeot Chaumont</h1><div class="col is-12"><span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; background-color: #fafafa;">Corps en acrylique. M&eacute;canisme anti-corrosion. Syst&egrave;me de r&eacute;glage de la mouture. M&eacute;canismes garantis &agrave; vie.</span></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 {#9085 …}
    #channels: Doctrine\ORM\PersistentCollection {#9073 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9069 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9071 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28684
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28717 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28723 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28710 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29290
  +product: App\Entity\Product\Product {#9068
    #id: 3077
    #code: "moulin-peugeot-chaumont-4374"
    #attributes: Doctrine\ORM\PersistentCollection {#9075 …}
    #variants: Doctrine\ORM\PersistentCollection {#9091 …}
    #options: Doctrine\ORM\PersistentCollection {#9079 …}
    #associations: Doctrine\ORM\PersistentCollection {#9077 …}
    #createdAt: DateTime @1758632750 {#9051
      date: 2025-09-23 21:05:50.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632750 {#9048
      date: 2025-09-23 21:05:50.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9082 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9083
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9068}
        #id: 3077
        #name: "Moulin Peugeot Chaumont"
        #slug: "moulin-peugeot-chaumont-4374"
        #description: """
          <div class="col is-12"><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></div><h1>Description Moulin Peugeot Chaumont</h1><div class="col is-12">Le moulin Peugeot Chaumont joue la transparence pour vous offrir le meilleur. Qu'il soit &agrave; poivre ou &agrave; sel, son m&eacute;canisme s'av&egrave;re tr&egrave;s fiable (garanti &agrave; vie) et tr&egrave;s efficace.</div><h1>Caractéristiques Moulin Peugeot Chaumont</h1><div class="col is-12"><span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; background-color: #fafafa;">Corps en acrylique. M&eacute;canisme anti-corrosion. Syst&egrave;me de r&eacute;glage de la mouture. M&eacute;canismes garantis &agrave; vie.</span></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 {#9085 …}
    #channels: Doctrine\ORM\PersistentCollection {#9073 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9069 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9071 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#9092 …}
  +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 {#28684
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28717 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28723 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28710 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.93 ms
Input props
[
  "product" => App\Entity\Product\Product {#9068
    #id: 3077
    #code: "moulin-peugeot-chaumont-4374"
    #attributes: Doctrine\ORM\PersistentCollection {#9075 …}
    #variants: Doctrine\ORM\PersistentCollection {#9091 …}
    #options: Doctrine\ORM\PersistentCollection {#9079 …}
    #associations: Doctrine\ORM\PersistentCollection {#9077 …}
    #createdAt: DateTime @1758632750 {#9051
      date: 2025-09-23 21:05:50.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632750 {#9048
      date: 2025-09-23 21:05:50.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9082 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9083
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9068}
        #id: 3077
        #name: "Moulin Peugeot Chaumont"
        #slug: "moulin-peugeot-chaumont-4374"
        #description: """
          <div class="col is-12"><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></div><h1>Description Moulin Peugeot Chaumont</h1><div class="col is-12">Le moulin Peugeot Chaumont joue la transparence pour vous offrir le meilleur. Qu'il soit &agrave; poivre ou &agrave; sel, son m&eacute;canisme s'av&egrave;re tr&egrave;s fiable (garanti &agrave; vie) et tr&egrave;s efficace.</div><h1>Caractéristiques Moulin Peugeot Chaumont</h1><div class="col is-12"><span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; background-color: #fafafa;">Corps en acrylique. M&eacute;canisme anti-corrosion. Syst&egrave;me de r&eacute;glage de la mouture. M&eacute;canismes garantis &agrave; vie.</span></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 {#9085 …}
    #channels: Doctrine\ORM\PersistentCollection {#9073 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9069 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9071 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin Peugeot Chaumont"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29597
  -props: [
    "product" => App\Entity\Product\Product {#9068
      #id: 3077
      #code: "moulin-peugeot-chaumont-4374"
      #attributes: Doctrine\ORM\PersistentCollection {#9075 …}
      #variants: Doctrine\ORM\PersistentCollection {#9091 …}
      #options: Doctrine\ORM\PersistentCollection {#9079 …}
      #associations: Doctrine\ORM\PersistentCollection {#9077 …}
      #createdAt: DateTime @1758632750 {#9051
        date: 2025-09-23 21:05:50.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632750 {#9048
        date: 2025-09-23 21:05:50.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#9082 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#9083
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#9068}
          #id: 3077
          #name: "Moulin Peugeot Chaumont"
          #slug: "moulin-peugeot-chaumont-4374"
          #description: """
            <div class="col is-12"><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></div><h1>Description Moulin Peugeot Chaumont</h1><div class="col is-12">Le moulin Peugeot Chaumont joue la transparence pour vous offrir le meilleur. Qu'il soit &agrave; poivre ou &agrave; sel, son m&eacute;canisme s'av&egrave;re tr&egrave;s fiable (garanti &agrave; vie) et tr&egrave;s efficace.</div><h1>Caractéristiques Moulin Peugeot Chaumont</h1><div class="col is-12"><span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; background-color: #fafafa;">Corps en acrylique. M&eacute;canisme anti-corrosion. Syst&egrave;me de r&eacute;glage de la mouture. M&eacute;canismes garantis &agrave; vie.</span></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 {#9085 …}
      #channels: Doctrine\ORM\PersistentCollection {#9073 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#9069 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#9071 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.82 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29643
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29581 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29590 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29642 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#9092 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#9105
    #collection: Doctrine\Common\Collections\ArrayCollection {#9106 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#9104 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38659 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38661 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29643
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29581 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29590 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29642 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin Peugeot Chaumont"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#9105
    #collection: Doctrine\Common\Collections\ArrayCollection {#9106 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#9104 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38659 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38661 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29649
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29643
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29581 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29590 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29642 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#9092 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#9105
      #collection: Doctrine\Common\Collections\ArrayCollection {#9106 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#9104 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38659 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38661 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.22 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29699
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29690 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29697 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29698 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#9092 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29702
  +variant: App\Entity\Product\ProductVariant {#9092 …}
  +price: "31,00\u{A0}"
  +originalPrice: "34,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#10111 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#13541 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#10108 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29699
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29690 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29697 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29698 …}
    +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 114.0 MiB 5.18 ms
Input props
[
  "product" => App\Entity\Product\Product {#9125
    #id: 3045
    #code: "moulin-peugeot-paris-laque-noir-u-select-4024"
    #attributes: Doctrine\ORM\PersistentCollection {#9132 …}
    #variants: Doctrine\ORM\PersistentCollection {#9145 …}
    #options: Doctrine\ORM\PersistentCollection {#9136 …}
    #associations: Doctrine\ORM\PersistentCollection {#9134 …}
    #createdAt: DateTime @1758632747 {#9108
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#9107
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9139 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9140
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9125}
        #id: 3045
        #name: "Moulin Peugeot Paris laqué noir U'Select"
        #slug: "moulin-peugeot-paris-laque-noir-u-select-4024"
        #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>Corps bois laqu&eacute;.</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Quingey (Doubs Franche-Comt&eacute;)</strong></li>\n
          </ul>\n
          <strong></strong> \n
          <ul>\n
          </ul></div><h1>Description Moulin Peugeot Paris laqué noir U'Select</h1><div class="col is-12">Le moulin Peugeot Paris laqu&eacute; noir sera un atout pr&eacute;cieux dans la r&eacute;alisation de vos plats en cuisine. Sa finition particuli&egrave;rement soign&eacute;e lui permet d'&ecirc;tre pr&eacute;sent&eacute; directement &agrave; table. Il est &eacute;quip&eacute; d'un m&eacute;canisme de r&eacute;glage Uselect permettant de s&eacute;lectionner avec pr&eacute;cision la finesse de la mouture d&eacute;sir&eacute;e.</div><h1>Caractéristiques Moulin Peugeot Paris laqué noir U'Select</h1><div class="col is-12"><span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; background-color: #fafafa;">Corps bois laqu&eacute;. Syst&egrave;me de fermeture par vis laiton grav&eacute;e poivre ou sel. Syst&egrave;me Uselect &nbsp;de r&eacute;glage de mouture. Garantie &agrave; vie.</span></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 {#9142 …}
    #channels: Doctrine\ORM\PersistentCollection {#9130 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9126 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9128 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28684
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28717 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28723 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28710 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29588
  +product: App\Entity\Product\Product {#9125
    #id: 3045
    #code: "moulin-peugeot-paris-laque-noir-u-select-4024"
    #attributes: Doctrine\ORM\PersistentCollection {#9132 …}
    #variants: Doctrine\ORM\PersistentCollection {#9145 …}
    #options: Doctrine\ORM\PersistentCollection {#9136 …}
    #associations: Doctrine\ORM\PersistentCollection {#9134 …}
    #createdAt: DateTime @1758632747 {#9108
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#9107
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9139 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9140
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9125}
        #id: 3045
        #name: "Moulin Peugeot Paris laqué noir U'Select"
        #slug: "moulin-peugeot-paris-laque-noir-u-select-4024"
        #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>Corps bois laqu&eacute;.</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Quingey (Doubs Franche-Comt&eacute;)</strong></li>\n
          </ul>\n
          <strong></strong> \n
          <ul>\n
          </ul></div><h1>Description Moulin Peugeot Paris laqué noir U'Select</h1><div class="col is-12">Le moulin Peugeot Paris laqu&eacute; noir sera un atout pr&eacute;cieux dans la r&eacute;alisation de vos plats en cuisine. Sa finition particuli&egrave;rement soign&eacute;e lui permet d'&ecirc;tre pr&eacute;sent&eacute; directement &agrave; table. Il est &eacute;quip&eacute; d'un m&eacute;canisme de r&eacute;glage Uselect permettant de s&eacute;lectionner avec pr&eacute;cision la finesse de la mouture d&eacute;sir&eacute;e.</div><h1>Caractéristiques Moulin Peugeot Paris laqué noir U'Select</h1><div class="col is-12"><span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; background-color: #fafafa;">Corps bois laqu&eacute;. Syst&egrave;me de fermeture par vis laiton grav&eacute;e poivre ou sel. Syst&egrave;me Uselect &nbsp;de r&eacute;glage de mouture. Garantie &agrave; vie.</span></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 {#9142 …}
    #channels: Doctrine\ORM\PersistentCollection {#9130 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9126 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9128 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#9470 …}
  +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 {#28684
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28717 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28723 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28710 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.93 ms
Input props
[
  "product" => App\Entity\Product\Product {#9125
    #id: 3045
    #code: "moulin-peugeot-paris-laque-noir-u-select-4024"
    #attributes: Doctrine\ORM\PersistentCollection {#9132 …}
    #variants: Doctrine\ORM\PersistentCollection {#9145 …}
    #options: Doctrine\ORM\PersistentCollection {#9136 …}
    #associations: Doctrine\ORM\PersistentCollection {#9134 …}
    #createdAt: DateTime @1758632747 {#9108
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#9107
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9139 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9140
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9125}
        #id: 3045
        #name: "Moulin Peugeot Paris laqué noir U'Select"
        #slug: "moulin-peugeot-paris-laque-noir-u-select-4024"
        #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>Corps bois laqu&eacute;.</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Quingey (Doubs Franche-Comt&eacute;)</strong></li>\n
          </ul>\n
          <strong></strong> \n
          <ul>\n
          </ul></div><h1>Description Moulin Peugeot Paris laqué noir U'Select</h1><div class="col is-12">Le moulin Peugeot Paris laqu&eacute; noir sera un atout pr&eacute;cieux dans la r&eacute;alisation de vos plats en cuisine. Sa finition particuli&egrave;rement soign&eacute;e lui permet d'&ecirc;tre pr&eacute;sent&eacute; directement &agrave; table. Il est &eacute;quip&eacute; d'un m&eacute;canisme de r&eacute;glage Uselect permettant de s&eacute;lectionner avec pr&eacute;cision la finesse de la mouture d&eacute;sir&eacute;e.</div><h1>Caractéristiques Moulin Peugeot Paris laqué noir U'Select</h1><div class="col is-12"><span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; background-color: #fafafa;">Corps bois laqu&eacute;. Syst&egrave;me de fermeture par vis laiton grav&eacute;e poivre ou sel. Syst&egrave;me Uselect &nbsp;de r&eacute;glage de mouture. Garantie &agrave; vie.</span></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 {#9142 …}
    #channels: Doctrine\ORM\PersistentCollection {#9130 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9126 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9128 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin Peugeot Paris laqué noir U'Select"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29819
  -props: [
    "product" => App\Entity\Product\Product {#9125
      #id: 3045
      #code: "moulin-peugeot-paris-laque-noir-u-select-4024"
      #attributes: Doctrine\ORM\PersistentCollection {#9132 …}
      #variants: Doctrine\ORM\PersistentCollection {#9145 …}
      #options: Doctrine\ORM\PersistentCollection {#9136 …}
      #associations: Doctrine\ORM\PersistentCollection {#9134 …}
      #createdAt: DateTime @1758632747 {#9108
        date: 2025-09-23 21:05:47.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632747 {#9107
        date: 2025-09-23 21:05:47.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#9139 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#9140
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#9125}
          #id: 3045
          #name: "Moulin Peugeot Paris laqué noir U'Select"
          #slug: "moulin-peugeot-paris-laque-noir-u-select-4024"
          #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>Corps bois laqu&eacute;.</li>\n
            <li><strong>Fabrication fran&ccedil;aise. Quingey (Doubs Franche-Comt&eacute;)</strong></li>\n
            </ul>\n
            <strong></strong> \n
            <ul>\n
            </ul></div><h1>Description Moulin Peugeot Paris laqué noir U'Select</h1><div class="col is-12">Le moulin Peugeot Paris laqu&eacute; noir sera un atout pr&eacute;cieux dans la r&eacute;alisation de vos plats en cuisine. Sa finition particuli&egrave;rement soign&eacute;e lui permet d'&ecirc;tre pr&eacute;sent&eacute; directement &agrave; table. Il est &eacute;quip&eacute; d'un m&eacute;canisme de r&eacute;glage Uselect permettant de s&eacute;lectionner avec pr&eacute;cision la finesse de la mouture d&eacute;sir&eacute;e.</div><h1>Caractéristiques Moulin Peugeot Paris laqué noir U'Select</h1><div class="col is-12"><span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; background-color: #fafafa;">Corps bois laqu&eacute;. Syst&egrave;me de fermeture par vis laiton grav&eacute;e poivre ou sel. Syst&egrave;me Uselect &nbsp;de r&eacute;glage de mouture. Garantie &agrave; vie.</span></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 {#9142 …}
      #channels: Doctrine\ORM\PersistentCollection {#9130 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#9126 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#9128 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.82 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29871
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29803 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29812 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29870 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#9470 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#9480
    #collection: Doctrine\Common\Collections\ArrayCollection {#9481 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#9479 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38673 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38675 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29871
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29803 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29812 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29870 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin Peugeot Paris laqué noir U'Select"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#9480
    #collection: Doctrine\Common\Collections\ArrayCollection {#9481 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#9479 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38673 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38675 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29877
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29871
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29803 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29812 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29870 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#9470 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#9480
      #collection: Doctrine\Common\Collections\ArrayCollection {#9481 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#9479 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38673 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38675 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.21 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29927
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29918 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29925 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29926 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#9470 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29930
  +variant: App\Entity\Product\ProductVariant {#9470 …}
  +price: "42,00\u{A0}"
  +originalPrice: "46,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#10111 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#13541 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#10108 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29927
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29918 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29925 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29926 …}
    +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 114.0 MiB 5.06 ms
Input props
[
  "product" => App\Entity\Product\Product {#9179
    #id: 3046
    #code: "moulin-peugeot-paris-laque-blanc-u-select-4025"
    #attributes: Doctrine\ORM\PersistentCollection {#9186 …}
    #variants: Doctrine\ORM\PersistentCollection {#9199 …}
    #options: Doctrine\ORM\PersistentCollection {#9190 …}
    #associations: Doctrine\ORM\PersistentCollection {#9188 …}
    #createdAt: DateTime @1758632747 {#9162
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#9161
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9193 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9194
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9179}
        #id: 3046
        #name: "Moulin Peugeot Paris laqué blanc U'Select"
        #slug: "moulin-peugeot-paris-laque-blanc-u-select-4025"
        #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>Corps bois laqu&eacute;.</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Quingey (Doubs Franche-Comt&eacute;)</strong></li>\n
          </ul></div><h1>Description Moulin Peugeot Paris laqué blanc U'Select</h1><div class="col is-12">Le moulin Peugeot Paris laqu&eacute; blanc sera un atout pr&eacute;cieux dans la r&eacute;alisation de vos plats en cuisine. Sa finition particuli&egrave;rement soign&eacute;e lui permet d'&ecirc;tre pr&eacute;sent&eacute; directement &agrave; table. Il est &eacute;quip&eacute; d'un m&eacute;canisme de r&eacute;glage Uselect permettant de s&eacute;lectionner avec pr&eacute;cision la finesse de la mouture d&eacute;sir&eacute;e.</div><h1>Caractéristiques Moulin Peugeot Paris laqué blanc U'Select</h1><div class="col is-12"><span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; background-color: #fafafa;">Corps bois laqu&eacute;. Syst&egrave;me de fermeture par vis laiton grav&eacute;e poivre ou sel. Syst&egrave;me Uselect &nbsp;de r&eacute;glage de mouture. Garantie &agrave; vie.</span></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 {#9196 …}
    #channels: Doctrine\ORM\PersistentCollection {#9184 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9180 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9182 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28684
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28717 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28723 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28710 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29810
  +product: App\Entity\Product\Product {#9179
    #id: 3046
    #code: "moulin-peugeot-paris-laque-blanc-u-select-4025"
    #attributes: Doctrine\ORM\PersistentCollection {#9186 …}
    #variants: Doctrine\ORM\PersistentCollection {#9199 …}
    #options: Doctrine\ORM\PersistentCollection {#9190 …}
    #associations: Doctrine\ORM\PersistentCollection {#9188 …}
    #createdAt: DateTime @1758632747 {#9162
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#9161
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9193 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9194
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9179}
        #id: 3046
        #name: "Moulin Peugeot Paris laqué blanc U'Select"
        #slug: "moulin-peugeot-paris-laque-blanc-u-select-4025"
        #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>Corps bois laqu&eacute;.</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Quingey (Doubs Franche-Comt&eacute;)</strong></li>\n
          </ul></div><h1>Description Moulin Peugeot Paris laqué blanc U'Select</h1><div class="col is-12">Le moulin Peugeot Paris laqu&eacute; blanc sera un atout pr&eacute;cieux dans la r&eacute;alisation de vos plats en cuisine. Sa finition particuli&egrave;rement soign&eacute;e lui permet d'&ecirc;tre pr&eacute;sent&eacute; directement &agrave; table. Il est &eacute;quip&eacute; d'un m&eacute;canisme de r&eacute;glage Uselect permettant de s&eacute;lectionner avec pr&eacute;cision la finesse de la mouture d&eacute;sir&eacute;e.</div><h1>Caractéristiques Moulin Peugeot Paris laqué blanc U'Select</h1><div class="col is-12"><span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; background-color: #fafafa;">Corps bois laqu&eacute;. Syst&egrave;me de fermeture par vis laiton grav&eacute;e poivre ou sel. Syst&egrave;me Uselect &nbsp;de r&eacute;glage de mouture. Garantie &agrave; vie.</span></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 {#9196 …}
    #channels: Doctrine\ORM\PersistentCollection {#9184 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9180 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9182 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#9200 …}
  +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 {#28684
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28717 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28723 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28710 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.97 ms
Input props
[
  "product" => App\Entity\Product\Product {#9179
    #id: 3046
    #code: "moulin-peugeot-paris-laque-blanc-u-select-4025"
    #attributes: Doctrine\ORM\PersistentCollection {#9186 …}
    #variants: Doctrine\ORM\PersistentCollection {#9199 …}
    #options: Doctrine\ORM\PersistentCollection {#9190 …}
    #associations: Doctrine\ORM\PersistentCollection {#9188 …}
    #createdAt: DateTime @1758632747 {#9162
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#9161
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9193 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9194
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9179}
        #id: 3046
        #name: "Moulin Peugeot Paris laqué blanc U'Select"
        #slug: "moulin-peugeot-paris-laque-blanc-u-select-4025"
        #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>Corps bois laqu&eacute;.</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Quingey (Doubs Franche-Comt&eacute;)</strong></li>\n
          </ul></div><h1>Description Moulin Peugeot Paris laqué blanc U'Select</h1><div class="col is-12">Le moulin Peugeot Paris laqu&eacute; blanc sera un atout pr&eacute;cieux dans la r&eacute;alisation de vos plats en cuisine. Sa finition particuli&egrave;rement soign&eacute;e lui permet d'&ecirc;tre pr&eacute;sent&eacute; directement &agrave; table. Il est &eacute;quip&eacute; d'un m&eacute;canisme de r&eacute;glage Uselect permettant de s&eacute;lectionner avec pr&eacute;cision la finesse de la mouture d&eacute;sir&eacute;e.</div><h1>Caractéristiques Moulin Peugeot Paris laqué blanc U'Select</h1><div class="col is-12"><span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; background-color: #fafafa;">Corps bois laqu&eacute;. Syst&egrave;me de fermeture par vis laiton grav&eacute;e poivre ou sel. Syst&egrave;me Uselect &nbsp;de r&eacute;glage de mouture. Garantie &agrave; vie.</span></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 {#9196 …}
    #channels: Doctrine\ORM\PersistentCollection {#9184 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9180 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9182 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin Peugeot Paris laqué blanc U'Select"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30047
  -props: [
    "product" => App\Entity\Product\Product {#9179
      #id: 3046
      #code: "moulin-peugeot-paris-laque-blanc-u-select-4025"
      #attributes: Doctrine\ORM\PersistentCollection {#9186 …}
      #variants: Doctrine\ORM\PersistentCollection {#9199 …}
      #options: Doctrine\ORM\PersistentCollection {#9190 …}
      #associations: Doctrine\ORM\PersistentCollection {#9188 …}
      #createdAt: DateTime @1758632747 {#9162
        date: 2025-09-23 21:05:47.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632747 {#9161
        date: 2025-09-23 21:05:47.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#9193 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#9194
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#9179}
          #id: 3046
          #name: "Moulin Peugeot Paris laqué blanc U'Select"
          #slug: "moulin-peugeot-paris-laque-blanc-u-select-4025"
          #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>Corps bois laqu&eacute;.</li>\n
            <li><strong>Fabrication fran&ccedil;aise. Quingey (Doubs Franche-Comt&eacute;)</strong></li>\n
            </ul></div><h1>Description Moulin Peugeot Paris laqué blanc U'Select</h1><div class="col is-12">Le moulin Peugeot Paris laqu&eacute; blanc sera un atout pr&eacute;cieux dans la r&eacute;alisation de vos plats en cuisine. Sa finition particuli&egrave;rement soign&eacute;e lui permet d'&ecirc;tre pr&eacute;sent&eacute; directement &agrave; table. Il est &eacute;quip&eacute; d'un m&eacute;canisme de r&eacute;glage Uselect permettant de s&eacute;lectionner avec pr&eacute;cision la finesse de la mouture d&eacute;sir&eacute;e.</div><h1>Caractéristiques Moulin Peugeot Paris laqué blanc U'Select</h1><div class="col is-12"><span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; background-color: #fafafa;">Corps bois laqu&eacute;. Syst&egrave;me de fermeture par vis laiton grav&eacute;e poivre ou sel. Syst&egrave;me Uselect &nbsp;de r&eacute;glage de mouture. Garantie &agrave; vie.</span></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 {#9196 …}
      #channels: Doctrine\ORM\PersistentCollection {#9184 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#9180 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#9182 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.80 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30105
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30031 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30040 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30104 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#9200 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#9210
    #collection: Doctrine\Common\Collections\ArrayCollection {#9211 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#9209 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38687 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38689 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30105
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30031 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30040 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30104 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin Peugeot Paris laqué blanc U'Select"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#9210
    #collection: Doctrine\Common\Collections\ArrayCollection {#9211 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#9209 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38687 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38689 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30111
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30105
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30031 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30040 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30104 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#9200 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#9210
      #collection: Doctrine\Common\Collections\ArrayCollection {#9211 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#9209 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38687 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38689 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.21 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30161
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30152 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30159 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30160 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#9200 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30164
  +variant: App\Entity\Product\ProductVariant {#9200 …}
  +price: "33,00\u{A0}"
  +originalPrice: "36,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#10111 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#13541 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#10108 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30161
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30152 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30159 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30160 …}
    +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 114.0 MiB 5.22 ms
Input props
[
  "product" => App\Entity\Product\Product {#9230
    #id: 3047
    #code: "moulin-peugeot-paris-rouge-passion-u-select-4340"
    #attributes: Doctrine\ORM\PersistentCollection {#9237 …}
    #variants: Doctrine\ORM\PersistentCollection {#9250 …}
    #options: Doctrine\ORM\PersistentCollection {#9241 …}
    #associations: Doctrine\ORM\PersistentCollection {#9239 …}
    #createdAt: DateTime @1758632747 {#9213
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#9212
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9244 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9245
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9230}
        #id: 3047
        #name: "Moulin Peugeot Paris Rouge Passion U'Select"
        #slug: "moulin-peugeot-paris-rouge-passion-u-select-4340"
        #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>Corps bois laqu&eacute;.</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Quingey (Doubs Franche-Comt&eacute;)</strong></li>\n
          </ul></div><h1>Description Moulin Peugeot Paris Rouge Passion U'Select</h1><div class="col is-12">Le Moulin Peugeot Paris Rouge Passion U'Select&nbsp;sera &agrave; l'aise en cuisine gr&acirc;ce &agrave; son efficacit&eacute;. Il mettra &eacute;galement en valeur votre table gr&acirc;ce &agrave; sa finition particuli&egrave;rement soign&eacute;e. Il est &eacute;quip&eacute; d'un m&eacute;canisme de r&eacute;glage Uselect permettant de s&eacute;lectionner avec pr&eacute;cision la finesse de la mouture d&eacute;sir&eacute;e.</div><h1>Caractéristiques Moulin Peugeot Paris Rouge Passion U'Select</h1><div class="col is-12"><span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; background-color: #fafafa;">Corps bois laqu&eacute;. Syst&egrave;me de fermeture par vis laiton grav&eacute;e poivre ou sel. Syst&egrave;me Uselect &nbsp;de r&eacute;glage de mouture. Garantie &agrave; vie.</span></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 {#9247 …}
    #channels: Doctrine\ORM\PersistentCollection {#9235 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9231 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9233 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28684
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28717 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28723 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28710 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30038
  +product: App\Entity\Product\Product {#9230
    #id: 3047
    #code: "moulin-peugeot-paris-rouge-passion-u-select-4340"
    #attributes: Doctrine\ORM\PersistentCollection {#9237 …}
    #variants: Doctrine\ORM\PersistentCollection {#9250 …}
    #options: Doctrine\ORM\PersistentCollection {#9241 …}
    #associations: Doctrine\ORM\PersistentCollection {#9239 …}
    #createdAt: DateTime @1758632747 {#9213
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#9212
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9244 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9245
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9230}
        #id: 3047
        #name: "Moulin Peugeot Paris Rouge Passion U'Select"
        #slug: "moulin-peugeot-paris-rouge-passion-u-select-4340"
        #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>Corps bois laqu&eacute;.</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Quingey (Doubs Franche-Comt&eacute;)</strong></li>\n
          </ul></div><h1>Description Moulin Peugeot Paris Rouge Passion U'Select</h1><div class="col is-12">Le Moulin Peugeot Paris Rouge Passion U'Select&nbsp;sera &agrave; l'aise en cuisine gr&acirc;ce &agrave; son efficacit&eacute;. Il mettra &eacute;galement en valeur votre table gr&acirc;ce &agrave; sa finition particuli&egrave;rement soign&eacute;e. Il est &eacute;quip&eacute; d'un m&eacute;canisme de r&eacute;glage Uselect permettant de s&eacute;lectionner avec pr&eacute;cision la finesse de la mouture d&eacute;sir&eacute;e.</div><h1>Caractéristiques Moulin Peugeot Paris Rouge Passion U'Select</h1><div class="col is-12"><span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; background-color: #fafafa;">Corps bois laqu&eacute;. Syst&egrave;me de fermeture par vis laiton grav&eacute;e poivre ou sel. Syst&egrave;me Uselect &nbsp;de r&eacute;glage de mouture. Garantie &agrave; vie.</span></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 {#9247 …}
    #channels: Doctrine\ORM\PersistentCollection {#9235 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9231 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9233 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#9251 …}
  +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 {#28684
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28717 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28723 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28710 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 1.04 ms
Input props
[
  "product" => App\Entity\Product\Product {#9230
    #id: 3047
    #code: "moulin-peugeot-paris-rouge-passion-u-select-4340"
    #attributes: Doctrine\ORM\PersistentCollection {#9237 …}
    #variants: Doctrine\ORM\PersistentCollection {#9250 …}
    #options: Doctrine\ORM\PersistentCollection {#9241 …}
    #associations: Doctrine\ORM\PersistentCollection {#9239 …}
    #createdAt: DateTime @1758632747 {#9213
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#9212
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9244 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9245
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9230}
        #id: 3047
        #name: "Moulin Peugeot Paris Rouge Passion U'Select"
        #slug: "moulin-peugeot-paris-rouge-passion-u-select-4340"
        #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>Corps bois laqu&eacute;.</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Quingey (Doubs Franche-Comt&eacute;)</strong></li>\n
          </ul></div><h1>Description Moulin Peugeot Paris Rouge Passion U'Select</h1><div class="col is-12">Le Moulin Peugeot Paris Rouge Passion U'Select&nbsp;sera &agrave; l'aise en cuisine gr&acirc;ce &agrave; son efficacit&eacute;. Il mettra &eacute;galement en valeur votre table gr&acirc;ce &agrave; sa finition particuli&egrave;rement soign&eacute;e. Il est &eacute;quip&eacute; d'un m&eacute;canisme de r&eacute;glage Uselect permettant de s&eacute;lectionner avec pr&eacute;cision la finesse de la mouture d&eacute;sir&eacute;e.</div><h1>Caractéristiques Moulin Peugeot Paris Rouge Passion U'Select</h1><div class="col is-12"><span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; background-color: #fafafa;">Corps bois laqu&eacute;. Syst&egrave;me de fermeture par vis laiton grav&eacute;e poivre ou sel. Syst&egrave;me Uselect &nbsp;de r&eacute;glage de mouture. Garantie &agrave; vie.</span></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 {#9247 …}
    #channels: Doctrine\ORM\PersistentCollection {#9235 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9231 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9233 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin Peugeot Paris Rouge Passion U'Select"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30281
  -props: [
    "product" => App\Entity\Product\Product {#9230
      #id: 3047
      #code: "moulin-peugeot-paris-rouge-passion-u-select-4340"
      #attributes: Doctrine\ORM\PersistentCollection {#9237 …}
      #variants: Doctrine\ORM\PersistentCollection {#9250 …}
      #options: Doctrine\ORM\PersistentCollection {#9241 …}
      #associations: Doctrine\ORM\PersistentCollection {#9239 …}
      #createdAt: DateTime @1758632747 {#9213
        date: 2025-09-23 21:05:47.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632747 {#9212
        date: 2025-09-23 21:05:47.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#9244 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#9245
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#9230}
          #id: 3047
          #name: "Moulin Peugeot Paris Rouge Passion U'Select"
          #slug: "moulin-peugeot-paris-rouge-passion-u-select-4340"
          #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>Corps bois laqu&eacute;.</li>\n
            <li><strong>Fabrication fran&ccedil;aise. Quingey (Doubs Franche-Comt&eacute;)</strong></li>\n
            </ul></div><h1>Description Moulin Peugeot Paris Rouge Passion U'Select</h1><div class="col is-12">Le Moulin Peugeot Paris Rouge Passion U'Select&nbsp;sera &agrave; l'aise en cuisine gr&acirc;ce &agrave; son efficacit&eacute;. Il mettra &eacute;galement en valeur votre table gr&acirc;ce &agrave; sa finition particuli&egrave;rement soign&eacute;e. Il est &eacute;quip&eacute; d'un m&eacute;canisme de r&eacute;glage Uselect permettant de s&eacute;lectionner avec pr&eacute;cision la finesse de la mouture d&eacute;sir&eacute;e.</div><h1>Caractéristiques Moulin Peugeot Paris Rouge Passion U'Select</h1><div class="col is-12"><span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; background-color: #fafafa;">Corps bois laqu&eacute;. Syst&egrave;me de fermeture par vis laiton grav&eacute;e poivre ou sel. Syst&egrave;me Uselect &nbsp;de r&eacute;glage de mouture. Garantie &agrave; vie.</span></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 {#9247 …}
      #channels: Doctrine\ORM\PersistentCollection {#9235 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#9231 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#9233 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.77 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30342
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30265 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30274 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30341 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#9251 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#9264
    #collection: Doctrine\Common\Collections\ArrayCollection {#9265 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#9263 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38701 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38703 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30342
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30265 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30274 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30341 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin Peugeot Paris Rouge Passion U'Select"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#9264
    #collection: Doctrine\Common\Collections\ArrayCollection {#9265 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#9263 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38701 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38703 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30348
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30342
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30265 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30274 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30341 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#9251 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#9264
      #collection: Doctrine\Common\Collections\ArrayCollection {#9265 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#9263 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38701 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38703 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.21 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30398
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30389 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30396 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30397 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#9251 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30401
  +variant: App\Entity\Product\ProductVariant {#9251 …}
  +price: "33,00\u{A0}"
  +originalPrice: "39,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#10111 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#13541 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#10108 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30398
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30389 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30396 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30397 …}
    +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 114.0 MiB 5.13 ms
Input props
[
  "product" => App\Entity\Product\Product {#9284
    #id: 3053
    #code: "moulin-bistro-antique-peugeot-5077"
    #attributes: Doctrine\ORM\PersistentCollection {#9291 …}
    #variants: Doctrine\ORM\PersistentCollection {#9304 …}
    #options: Doctrine\ORM\PersistentCollection {#9295 …}
    #associations: Doctrine\ORM\PersistentCollection {#9293 …}
    #createdAt: DateTime @1758632747 {#9267
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#9266
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9298 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9299
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9284}
        #id: 3053
        #name: "Moulin Bistro Antique Peugeot"
        #slug: "moulin-bistro-antique-peugeot-5077"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Pi&egrave;ce unique travaill&eacute;e &agrave; la main.</li>\n
          <li>En bois de h&ecirc;tre.&nbsp;</li>\n
          <li>R&eacute;glage de mouture.</li>\n
          <li>M&eacute;canisme en acier garanti &agrave; vie.</li>\n
          </ul></div><h1>Description Moulin Bistro Antique Peugeot</h1><div class="col is-12">Le moulin bistro Antique Peugeot vous permet de pr&eacute;senter &eacute;l&eacute;gamment votre poivre et sel. Aux charmes d'autrefois, les moulins sont en bois de h&ecirc;tre patin&eacute; par le temps. Ce sont des pi&egrave;ces unique qui sont travaill&eacute;es &agrave; la main. Un r&eacute;glage de la mouture est possible gr&acirc;ce &agrave; l'&eacute;crou laiton grav&eacute;e.</div><h1>Caractéristiques Moulin Bistro Antique Peugeot</h1><div class="col is-12">En bois de h&ecirc;tre. Hauteur 10 cm. Disponible pour poivre et sel.</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 {#9301 …}
    #channels: Doctrine\ORM\PersistentCollection {#9289 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9285 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9287 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28684
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28717 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28723 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28710 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30272
  +product: App\Entity\Product\Product {#9284
    #id: 3053
    #code: "moulin-bistro-antique-peugeot-5077"
    #attributes: Doctrine\ORM\PersistentCollection {#9291 …}
    #variants: Doctrine\ORM\PersistentCollection {#9304 …}
    #options: Doctrine\ORM\PersistentCollection {#9295 …}
    #associations: Doctrine\ORM\PersistentCollection {#9293 …}
    #createdAt: DateTime @1758632747 {#9267
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#9266
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9298 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9299
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9284}
        #id: 3053
        #name: "Moulin Bistro Antique Peugeot"
        #slug: "moulin-bistro-antique-peugeot-5077"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Pi&egrave;ce unique travaill&eacute;e &agrave; la main.</li>\n
          <li>En bois de h&ecirc;tre.&nbsp;</li>\n
          <li>R&eacute;glage de mouture.</li>\n
          <li>M&eacute;canisme en acier garanti &agrave; vie.</li>\n
          </ul></div><h1>Description Moulin Bistro Antique Peugeot</h1><div class="col is-12">Le moulin bistro Antique Peugeot vous permet de pr&eacute;senter &eacute;l&eacute;gamment votre poivre et sel. Aux charmes d'autrefois, les moulins sont en bois de h&ecirc;tre patin&eacute; par le temps. Ce sont des pi&egrave;ces unique qui sont travaill&eacute;es &agrave; la main. Un r&eacute;glage de la mouture est possible gr&acirc;ce &agrave; l'&eacute;crou laiton grav&eacute;e.</div><h1>Caractéristiques Moulin Bistro Antique Peugeot</h1><div class="col is-12">En bois de h&ecirc;tre. Hauteur 10 cm. Disponible pour poivre et sel.</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 {#9301 …}
    #channels: Doctrine\ORM\PersistentCollection {#9289 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9285 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9287 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#9305 …}
  +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 {#28684
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28717 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28723 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28710 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.85 ms
Input props
[
  "product" => App\Entity\Product\Product {#9284
    #id: 3053
    #code: "moulin-bistro-antique-peugeot-5077"
    #attributes: Doctrine\ORM\PersistentCollection {#9291 …}
    #variants: Doctrine\ORM\PersistentCollection {#9304 …}
    #options: Doctrine\ORM\PersistentCollection {#9295 …}
    #associations: Doctrine\ORM\PersistentCollection {#9293 …}
    #createdAt: DateTime @1758632747 {#9267
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#9266
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9298 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9299
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9284}
        #id: 3053
        #name: "Moulin Bistro Antique Peugeot"
        #slug: "moulin-bistro-antique-peugeot-5077"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Pi&egrave;ce unique travaill&eacute;e &agrave; la main.</li>\n
          <li>En bois de h&ecirc;tre.&nbsp;</li>\n
          <li>R&eacute;glage de mouture.</li>\n
          <li>M&eacute;canisme en acier garanti &agrave; vie.</li>\n
          </ul></div><h1>Description Moulin Bistro Antique Peugeot</h1><div class="col is-12">Le moulin bistro Antique Peugeot vous permet de pr&eacute;senter &eacute;l&eacute;gamment votre poivre et sel. Aux charmes d'autrefois, les moulins sont en bois de h&ecirc;tre patin&eacute; par le temps. Ce sont des pi&egrave;ces unique qui sont travaill&eacute;es &agrave; la main. Un r&eacute;glage de la mouture est possible gr&acirc;ce &agrave; l'&eacute;crou laiton grav&eacute;e.</div><h1>Caractéristiques Moulin Bistro Antique Peugeot</h1><div class="col is-12">En bois de h&ecirc;tre. Hauteur 10 cm. Disponible pour poivre et sel.</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 {#9301 …}
    #channels: Doctrine\ORM\PersistentCollection {#9289 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9285 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9287 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin Bistro Antique Peugeot"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30518
  -props: [
    "product" => App\Entity\Product\Product {#9284
      #id: 3053
      #code: "moulin-bistro-antique-peugeot-5077"
      #attributes: Doctrine\ORM\PersistentCollection {#9291 …}
      #variants: Doctrine\ORM\PersistentCollection {#9304 …}
      #options: Doctrine\ORM\PersistentCollection {#9295 …}
      #associations: Doctrine\ORM\PersistentCollection {#9293 …}
      #createdAt: DateTime @1758632747 {#9267
        date: 2025-09-23 21:05:47.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632747 {#9266
        date: 2025-09-23 21:05:47.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#9298 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#9299
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#9284}
          #id: 3053
          #name: "Moulin Bistro Antique Peugeot"
          #slug: "moulin-bistro-antique-peugeot-5077"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Pi&egrave;ce unique travaill&eacute;e &agrave; la main.</li>\n
            <li>En bois de h&ecirc;tre.&nbsp;</li>\n
            <li>R&eacute;glage de mouture.</li>\n
            <li>M&eacute;canisme en acier garanti &agrave; vie.</li>\n
            </ul></div><h1>Description Moulin Bistro Antique Peugeot</h1><div class="col is-12">Le moulin bistro Antique Peugeot vous permet de pr&eacute;senter &eacute;l&eacute;gamment votre poivre et sel. Aux charmes d'autrefois, les moulins sont en bois de h&ecirc;tre patin&eacute; par le temps. Ce sont des pi&egrave;ces unique qui sont travaill&eacute;es &agrave; la main. Un r&eacute;glage de la mouture est possible gr&acirc;ce &agrave; l'&eacute;crou laiton grav&eacute;e.</div><h1>Caractéristiques Moulin Bistro Antique Peugeot</h1><div class="col is-12">En bois de h&ecirc;tre. Hauteur 10 cm. Disponible pour poivre et sel.</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 {#9301 …}
      #channels: Doctrine\ORM\PersistentCollection {#9289 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#9285 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#9287 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.82 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30564
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30502 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30511 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30563 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#9305 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#9315
    #collection: Doctrine\Common\Collections\ArrayCollection {#9316 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#9314 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38715 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38717 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30564
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30502 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30511 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30563 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin Bistro Antique Peugeot"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#9315
    #collection: Doctrine\Common\Collections\ArrayCollection {#9316 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#9314 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38715 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38717 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30570
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30564
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30502 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30511 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30563 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#9305 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#9315
      #collection: Doctrine\Common\Collections\ArrayCollection {#9316 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#9314 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38715 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38717 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.24 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30620
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30611 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30618 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30619 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#9305 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30623
  +variant: App\Entity\Product\ProductVariant {#9305 …}
  +price: "34,00\u{A0}"
  +originalPrice: "37,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#10111 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#13541 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#10108 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30620
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30611 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30618 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30619 …}
    +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 114.0 MiB 5.52 ms
Input props
[
  "product" => App\Entity\Product\Product {#9339
    #id: 3111
    #code: "moulin-oslo-graphite-combi-poivre-saliere-peugeot-7567"
    #attributes: Doctrine\ORM\PersistentCollection {#9346 …}
    #variants: Doctrine\ORM\PersistentCollection {#9362 …}
    #options: Doctrine\ORM\PersistentCollection {#9350 …}
    #associations: Doctrine\ORM\PersistentCollection {#9348 …}
    #createdAt: DateTime @1758632755 {#9318
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632755 {#9317
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9353 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9354
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9339}
        #id: 3111
        #name: "Moulin Oslo Graphite Combi Poivre & salière Peugeot"
        #slug: "moulin-oslo-graphite-combi-poivre-saliere-peugeot-7567"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Bois PEFC, issu de for&ecirc;ts fran&ccedil;aises.</li>\n
          <li>M&eacute;canisme &agrave; poivre garanti sans limitation de dur&eacute;e.</li>\n
          <li>Teinte et vernis hydrosolubles.</li>\n
          <li><strong>Fabrication fran&ccedil;aise.</strong></li>\n
          </ul>\n
          <ul>\n
          </ul></div><h1>Descriptif Moulin Oslo Graphite Combi Poivre & salière Peugeot</h1><div class="col is-12">Le combi Oslo Graphite Peugeot associe de fa&ccedil;on ing&eacute;nieuse les fonctions de moulin &agrave; poivre et de sali&egrave;re. Son m&eacute;canisme classique &agrave; poivre est dissimul&eacute; dans le corps en bois teint&eacute; graphite vernis (hydrosoluble) et l&eacute;g&egrave;rement m&eacute;tallis&eacute; et le r&eacute;ceptacle sup&eacute;rieur en acrylique re&ccedil;oit le sel. Simple et efficace il tiendra son r&ocirc;le &agrave; merveille sur vos tables.</div><h1>Caractéristiques Moulin Oslo Graphite Combi Poivre & salière Peugeot</h1><div class="col is-12">- Bois et acrylique.<br />- Bois PEFC, issu de for&ecirc;ts fran&ccedil;aises.<br />- Teinte et vernis hydrosoluble.<br />- M&eacute;canisme poivre garanti sans limitation de dur&eacute;e.<br />- Moulin garanti 5 ans.<br />- R&eacute;glage classique.<br />- Taille : 11 cm.<br />- Pour moudre poivres noirs, blancs, verts, rouges, baies roses (15% maxi dans un m&eacute;lange de poivre) et graines de coriandre.<br />- 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 {#9356 …}
    #channels: Doctrine\ORM\PersistentCollection {#9344 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9340 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9342 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28684
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28717 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28723 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28710 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30509
  +product: App\Entity\Product\Product {#9339
    #id: 3111
    #code: "moulin-oslo-graphite-combi-poivre-saliere-peugeot-7567"
    #attributes: Doctrine\ORM\PersistentCollection {#9346 …}
    #variants: Doctrine\ORM\PersistentCollection {#9362 …}
    #options: Doctrine\ORM\PersistentCollection {#9350 …}
    #associations: Doctrine\ORM\PersistentCollection {#9348 …}
    #createdAt: DateTime @1758632755 {#9318
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632755 {#9317
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9353 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9354
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9339}
        #id: 3111
        #name: "Moulin Oslo Graphite Combi Poivre & salière Peugeot"
        #slug: "moulin-oslo-graphite-combi-poivre-saliere-peugeot-7567"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Bois PEFC, issu de for&ecirc;ts fran&ccedil;aises.</li>\n
          <li>M&eacute;canisme &agrave; poivre garanti sans limitation de dur&eacute;e.</li>\n
          <li>Teinte et vernis hydrosolubles.</li>\n
          <li><strong>Fabrication fran&ccedil;aise.</strong></li>\n
          </ul>\n
          <ul>\n
          </ul></div><h1>Descriptif Moulin Oslo Graphite Combi Poivre & salière Peugeot</h1><div class="col is-12">Le combi Oslo Graphite Peugeot associe de fa&ccedil;on ing&eacute;nieuse les fonctions de moulin &agrave; poivre et de sali&egrave;re. Son m&eacute;canisme classique &agrave; poivre est dissimul&eacute; dans le corps en bois teint&eacute; graphite vernis (hydrosoluble) et l&eacute;g&egrave;rement m&eacute;tallis&eacute; et le r&eacute;ceptacle sup&eacute;rieur en acrylique re&ccedil;oit le sel. Simple et efficace il tiendra son r&ocirc;le &agrave; merveille sur vos tables.</div><h1>Caractéristiques Moulin Oslo Graphite Combi Poivre & salière Peugeot</h1><div class="col is-12">- Bois et acrylique.<br />- Bois PEFC, issu de for&ecirc;ts fran&ccedil;aises.<br />- Teinte et vernis hydrosoluble.<br />- M&eacute;canisme poivre garanti sans limitation de dur&eacute;e.<br />- Moulin garanti 5 ans.<br />- R&eacute;glage classique.<br />- Taille : 11 cm.<br />- Pour moudre poivres noirs, blancs, verts, rouges, baies roses (15% maxi dans un m&eacute;lange de poivre) et graines de coriandre.<br />- 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 {#9356 …}
    #channels: Doctrine\ORM\PersistentCollection {#9344 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9340 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9342 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#9363 …}
  +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 {#28684
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28717 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28723 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28710 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 1.00 ms
Input props
[
  "product" => App\Entity\Product\Product {#9339
    #id: 3111
    #code: "moulin-oslo-graphite-combi-poivre-saliere-peugeot-7567"
    #attributes: Doctrine\ORM\PersistentCollection {#9346 …}
    #variants: Doctrine\ORM\PersistentCollection {#9362 …}
    #options: Doctrine\ORM\PersistentCollection {#9350 …}
    #associations: Doctrine\ORM\PersistentCollection {#9348 …}
    #createdAt: DateTime @1758632755 {#9318
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632755 {#9317
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9353 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9354
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9339}
        #id: 3111
        #name: "Moulin Oslo Graphite Combi Poivre & salière Peugeot"
        #slug: "moulin-oslo-graphite-combi-poivre-saliere-peugeot-7567"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Bois PEFC, issu de for&ecirc;ts fran&ccedil;aises.</li>\n
          <li>M&eacute;canisme &agrave; poivre garanti sans limitation de dur&eacute;e.</li>\n
          <li>Teinte et vernis hydrosolubles.</li>\n
          <li><strong>Fabrication fran&ccedil;aise.</strong></li>\n
          </ul>\n
          <ul>\n
          </ul></div><h1>Descriptif Moulin Oslo Graphite Combi Poivre & salière Peugeot</h1><div class="col is-12">Le combi Oslo Graphite Peugeot associe de fa&ccedil;on ing&eacute;nieuse les fonctions de moulin &agrave; poivre et de sali&egrave;re. Son m&eacute;canisme classique &agrave; poivre est dissimul&eacute; dans le corps en bois teint&eacute; graphite vernis (hydrosoluble) et l&eacute;g&egrave;rement m&eacute;tallis&eacute; et le r&eacute;ceptacle sup&eacute;rieur en acrylique re&ccedil;oit le sel. Simple et efficace il tiendra son r&ocirc;le &agrave; merveille sur vos tables.</div><h1>Caractéristiques Moulin Oslo Graphite Combi Poivre & salière Peugeot</h1><div class="col is-12">- Bois et acrylique.<br />- Bois PEFC, issu de for&ecirc;ts fran&ccedil;aises.<br />- Teinte et vernis hydrosoluble.<br />- M&eacute;canisme poivre garanti sans limitation de dur&eacute;e.<br />- Moulin garanti 5 ans.<br />- R&eacute;glage classique.<br />- Taille : 11 cm.<br />- Pour moudre poivres noirs, blancs, verts, rouges, baies roses (15% maxi dans un m&eacute;lange de poivre) et graines de coriandre.<br />- 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 {#9356 …}
    #channels: Doctrine\ORM\PersistentCollection {#9344 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9340 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9342 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin Oslo Graphite Combi Poivre & salière Peugeot"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30740
  -props: [
    "product" => App\Entity\Product\Product {#9339
      #id: 3111
      #code: "moulin-oslo-graphite-combi-poivre-saliere-peugeot-7567"
      #attributes: Doctrine\ORM\PersistentCollection {#9346 …}
      #variants: Doctrine\ORM\PersistentCollection {#9362 …}
      #options: Doctrine\ORM\PersistentCollection {#9350 …}
      #associations: Doctrine\ORM\PersistentCollection {#9348 …}
      #createdAt: DateTime @1758632755 {#9318
        date: 2025-09-23 21:05:55.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632755 {#9317
        date: 2025-09-23 21:05:55.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#9353 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#9354
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#9339}
          #id: 3111
          #name: "Moulin Oslo Graphite Combi Poivre & salière Peugeot"
          #slug: "moulin-oslo-graphite-combi-poivre-saliere-peugeot-7567"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Bois PEFC, issu de for&ecirc;ts fran&ccedil;aises.</li>\n
            <li>M&eacute;canisme &agrave; poivre garanti sans limitation de dur&eacute;e.</li>\n
            <li>Teinte et vernis hydrosolubles.</li>\n
            <li><strong>Fabrication fran&ccedil;aise.</strong></li>\n
            </ul>\n
            <ul>\n
            </ul></div><h1>Descriptif Moulin Oslo Graphite Combi Poivre & salière Peugeot</h1><div class="col is-12">Le combi Oslo Graphite Peugeot associe de fa&ccedil;on ing&eacute;nieuse les fonctions de moulin &agrave; poivre et de sali&egrave;re. Son m&eacute;canisme classique &agrave; poivre est dissimul&eacute; dans le corps en bois teint&eacute; graphite vernis (hydrosoluble) et l&eacute;g&egrave;rement m&eacute;tallis&eacute; et le r&eacute;ceptacle sup&eacute;rieur en acrylique re&ccedil;oit le sel. Simple et efficace il tiendra son r&ocirc;le &agrave; merveille sur vos tables.</div><h1>Caractéristiques Moulin Oslo Graphite Combi Poivre & salière Peugeot</h1><div class="col is-12">- Bois et acrylique.<br />- Bois PEFC, issu de for&ecirc;ts fran&ccedil;aises.<br />- Teinte et vernis hydrosoluble.<br />- M&eacute;canisme poivre garanti sans limitation de dur&eacute;e.<br />- Moulin garanti 5 ans.<br />- R&eacute;glage classique.<br />- Taille : 11 cm.<br />- Pour moudre poivres noirs, blancs, verts, rouges, baies roses (15% maxi dans un m&eacute;lange de poivre) et graines de coriandre.<br />- 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 {#9356 …}
      #channels: Doctrine\ORM\PersistentCollection {#9344 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#9340 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#9342 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.88 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30792
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30724 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30733 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30791 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#9363 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#9373
    #collection: Doctrine\Common\Collections\ArrayCollection {#9374 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#9372 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38729 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38731 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30792
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30724 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30733 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30791 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin Oslo Graphite Combi Poivre & salière Peugeot"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#9373
    #collection: Doctrine\Common\Collections\ArrayCollection {#9374 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#9372 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38729 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38731 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30798
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30792
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30724 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30733 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30791 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#9363 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#9373
      #collection: Doctrine\Common\Collections\ArrayCollection {#9374 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#9372 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38729 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38731 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.22 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30848
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30839 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30846 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30847 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#9363 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30851
  +variant: App\Entity\Product\ProductVariant {#9363 …}
  +price: "34,00\u{A0}"
  +originalPrice: "37,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#10111 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#13541 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#10108 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30848
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30839 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30846 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30847 …}
    +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 114.0 MiB 5.06 ms
Input props
[
  "product" => App\Entity\Product\Product {#9379
    #id: 3120
    #code: "moulin-bistro-inox-chef-peugeot-5722"
    #attributes: Doctrine\ORM\PersistentCollection {#9386 …}
    #variants: Doctrine\ORM\PersistentCollection {#9402 …}
    #options: Doctrine\ORM\PersistentCollection {#9390 …}
    #associations: Doctrine\ORM\PersistentCollection {#9388 …}
    #createdAt: DateTime @1758632761 {#9375
      date: 2025-09-23 21:06:01.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632761 {#9376
      date: 2025-09-23 21:06:01.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9393 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9394
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9379}
        #id: 3120
        #name: "Moulin Bistro Inox Chef Peugeot"
        #slug: "moulin-bistro-inox-chef-peugeot-5722"
        #description: """
          <div class="col is-12"><div>\n
          <ul>\n
          <li>Tout Inox</li>\n
          <li>M&eacute;canisme garanti &agrave; vie.</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Quingey (Doubs Franche-Comt&eacute;)</strong></li>\n
          </ul>\n
          </div></div><h1>Descriptif Moulin Bistro Inox Chef Peugeot</h1><div class="col is-12">Mod&egrave;le historique cr&eacute;&eacute; en 1874, le moulin Bistro de Peugeot est un hommage &agrave; l'univers de la gastronomie. Les moulins &agrave; poivre ou &agrave; sel de la collection Chef sont particuli&egrave;rement &eacute;l&eacute;gants. Habill&eacute;s d'inox, ils brillent de mille feux sur toutes les tables. Tout autant design que fonctionnel, le Bistro Chef est fabriqu&eacute; en France et son m&eacute;canisme est garanti &agrave; vie.</div><h1>Caractéristiques Moulin Bistro Inox Chef Peugeot</h1><div class="col is-12">Acier inoxydable.<br />m&eacute;canisme garanti &agrave; vie.<br />Taille : 10 cm.&nbsp;<br />Fabriqu&eacute; en France&nbsp;</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 {#9396 …}
    #channels: Doctrine\ORM\PersistentCollection {#9384 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9380 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9382 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28684
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28717 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28723 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28710 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30731
  +product: App\Entity\Product\Product {#9379
    #id: 3120
    #code: "moulin-bistro-inox-chef-peugeot-5722"
    #attributes: Doctrine\ORM\PersistentCollection {#9386 …}
    #variants: Doctrine\ORM\PersistentCollection {#9402 …}
    #options: Doctrine\ORM\PersistentCollection {#9390 …}
    #associations: Doctrine\ORM\PersistentCollection {#9388 …}
    #createdAt: DateTime @1758632761 {#9375
      date: 2025-09-23 21:06:01.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632761 {#9376
      date: 2025-09-23 21:06:01.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9393 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9394
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9379}
        #id: 3120
        #name: "Moulin Bistro Inox Chef Peugeot"
        #slug: "moulin-bistro-inox-chef-peugeot-5722"
        #description: """
          <div class="col is-12"><div>\n
          <ul>\n
          <li>Tout Inox</li>\n
          <li>M&eacute;canisme garanti &agrave; vie.</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Quingey (Doubs Franche-Comt&eacute;)</strong></li>\n
          </ul>\n
          </div></div><h1>Descriptif Moulin Bistro Inox Chef Peugeot</h1><div class="col is-12">Mod&egrave;le historique cr&eacute;&eacute; en 1874, le moulin Bistro de Peugeot est un hommage &agrave; l'univers de la gastronomie. Les moulins &agrave; poivre ou &agrave; sel de la collection Chef sont particuli&egrave;rement &eacute;l&eacute;gants. Habill&eacute;s d'inox, ils brillent de mille feux sur toutes les tables. Tout autant design que fonctionnel, le Bistro Chef est fabriqu&eacute; en France et son m&eacute;canisme est garanti &agrave; vie.</div><h1>Caractéristiques Moulin Bistro Inox Chef Peugeot</h1><div class="col is-12">Acier inoxydable.<br />m&eacute;canisme garanti &agrave; vie.<br />Taille : 10 cm.&nbsp;<br />Fabriqu&eacute; en France&nbsp;</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 {#9396 …}
    #channels: Doctrine\ORM\PersistentCollection {#9384 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9380 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9382 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#9403 …}
  +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 {#28684
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28717 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28723 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28710 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.88 ms
Input props
[
  "product" => App\Entity\Product\Product {#9379
    #id: 3120
    #code: "moulin-bistro-inox-chef-peugeot-5722"
    #attributes: Doctrine\ORM\PersistentCollection {#9386 …}
    #variants: Doctrine\ORM\PersistentCollection {#9402 …}
    #options: Doctrine\ORM\PersistentCollection {#9390 …}
    #associations: Doctrine\ORM\PersistentCollection {#9388 …}
    #createdAt: DateTime @1758632761 {#9375
      date: 2025-09-23 21:06:01.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632761 {#9376
      date: 2025-09-23 21:06:01.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9393 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9394
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9379}
        #id: 3120
        #name: "Moulin Bistro Inox Chef Peugeot"
        #slug: "moulin-bistro-inox-chef-peugeot-5722"
        #description: """
          <div class="col is-12"><div>\n
          <ul>\n
          <li>Tout Inox</li>\n
          <li>M&eacute;canisme garanti &agrave; vie.</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Quingey (Doubs Franche-Comt&eacute;)</strong></li>\n
          </ul>\n
          </div></div><h1>Descriptif Moulin Bistro Inox Chef Peugeot</h1><div class="col is-12">Mod&egrave;le historique cr&eacute;&eacute; en 1874, le moulin Bistro de Peugeot est un hommage &agrave; l'univers de la gastronomie. Les moulins &agrave; poivre ou &agrave; sel de la collection Chef sont particuli&egrave;rement &eacute;l&eacute;gants. Habill&eacute;s d'inox, ils brillent de mille feux sur toutes les tables. Tout autant design que fonctionnel, le Bistro Chef est fabriqu&eacute; en France et son m&eacute;canisme est garanti &agrave; vie.</div><h1>Caractéristiques Moulin Bistro Inox Chef Peugeot</h1><div class="col is-12">Acier inoxydable.<br />m&eacute;canisme garanti &agrave; vie.<br />Taille : 10 cm.&nbsp;<br />Fabriqu&eacute; en France&nbsp;</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 {#9396 …}
    #channels: Doctrine\ORM\PersistentCollection {#9384 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9380 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9382 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin Bistro Inox Chef Peugeot"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30968
  -props: [
    "product" => App\Entity\Product\Product {#9379
      #id: 3120
      #code: "moulin-bistro-inox-chef-peugeot-5722"
      #attributes: Doctrine\ORM\PersistentCollection {#9386 …}
      #variants: Doctrine\ORM\PersistentCollection {#9402 …}
      #options: Doctrine\ORM\PersistentCollection {#9390 …}
      #associations: Doctrine\ORM\PersistentCollection {#9388 …}
      #createdAt: DateTime @1758632761 {#9375
        date: 2025-09-23 21:06:01.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632761 {#9376
        date: 2025-09-23 21:06:01.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#9393 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#9394
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#9379}
          #id: 3120
          #name: "Moulin Bistro Inox Chef Peugeot"
          #slug: "moulin-bistro-inox-chef-peugeot-5722"
          #description: """
            <div class="col is-12"><div>\n
            <ul>\n
            <li>Tout Inox</li>\n
            <li>M&eacute;canisme garanti &agrave; vie.</li>\n
            <li><strong>Fabrication fran&ccedil;aise. Quingey (Doubs Franche-Comt&eacute;)</strong></li>\n
            </ul>\n
            </div></div><h1>Descriptif Moulin Bistro Inox Chef Peugeot</h1><div class="col is-12">Mod&egrave;le historique cr&eacute;&eacute; en 1874, le moulin Bistro de Peugeot est un hommage &agrave; l'univers de la gastronomie. Les moulins &agrave; poivre ou &agrave; sel de la collection Chef sont particuli&egrave;rement &eacute;l&eacute;gants. Habill&eacute;s d'inox, ils brillent de mille feux sur toutes les tables. Tout autant design que fonctionnel, le Bistro Chef est fabriqu&eacute; en France et son m&eacute;canisme est garanti &agrave; vie.</div><h1>Caractéristiques Moulin Bistro Inox Chef Peugeot</h1><div class="col is-12">Acier inoxydable.<br />m&eacute;canisme garanti &agrave; vie.<br />Taille : 10 cm.&nbsp;<br />Fabriqu&eacute; en France&nbsp;</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 {#9396 …}
      #channels: Doctrine\ORM\PersistentCollection {#9384 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#9380 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#9382 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.79 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31014
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30952 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30961 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31013 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#9403 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#9413
    #collection: Doctrine\Common\Collections\ArrayCollection {#9414 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#9412 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38743 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38745 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31014
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30952 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30961 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31013 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin Bistro Inox Chef Peugeot"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#9413
    #collection: Doctrine\Common\Collections\ArrayCollection {#9414 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#9412 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38743 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38745 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#31020
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31014
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30952 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30961 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31013 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#9403 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#9413
      #collection: Doctrine\Common\Collections\ArrayCollection {#9414 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#9412 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38743 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38745 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.19 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31070
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31061 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#31068 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31069 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#9403 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#31073
  +variant: App\Entity\Product\ProductVariant {#9403 …}
  +price: "34,00\u{A0}"
  +originalPrice: "37,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#10111 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#13541 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#10108 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31070
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31061 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#31068 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31069 …}
    +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 114.0 MiB 5.22 ms
Input props
[
  "product" => App\Entity\Product\Product {#9433
    #id: 3044
    #code: "moulin-peugeot-oleron-3776"
    #attributes: Doctrine\ORM\PersistentCollection {#9440 …}
    #variants: Doctrine\ORM\PersistentCollection {#9453 …}
    #options: Doctrine\ORM\PersistentCollection {#9444 …}
    #associations: Doctrine\ORM\PersistentCollection {#9442 …}
    #createdAt: DateTime @1758632747 {#9416
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#9415
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9447 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9448
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9433}
        #id: 3044
        #name: "Moulin Peugeot Oleron"
        #slug: "moulin-peugeot-oleron-3776"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Esth&eacute;tique sobre convenant &agrave; tous les styles.</li>\n
          <li>M&eacute;canismes garantis &agrave; vie.</li>\n
          <li>2 coloris au choix.</li>\n
          </ul></div><h1>Description Moulin Peugeot Oleron</h1><div class="col is-12">Le moulin Peugeot Ol&eacute;ron a un&nbsp;corps acrylique transparent l&eacute;g&egrave;rement torsad&eacute; &eacute;voquant le mouvement et jouant subtilement avec la lumi&egrave;re.&nbsp;Le moulin Peugeot Ol&eacute;ron propose&nbsp;3 m&eacute;canismes : poivre, sel sec et piment.&nbsp;\n
          <div></div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Une ligne de moulins dont le corps transparent l&eacute;g&egrave;rement torsad&eacute; &eacute;voque le mouvement et joue subtilement avec la lumi&egrave;re.&nbsp;</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">- Peugeot propose des m&eacute;canismes sp&eacute;cifiquement con&ccedil;us pour chaque &eacute;pice, la gamme Ol&eacute;ron offre 3 m&eacute;canismes : M&eacute;canisme &agrave; poivre, m&eacute;canisme &agrave; sel sec et m&eacute;canisme &agrave; piment.&nbsp;&nbsp;le corps transparent l&eacute;g&egrave;rement torsad&eacute; &eacute;voque le mouvement et joue subtilement avec la lumi&egrave;re.&nbsp;</div></div><h1>Caractéristiques Moulin Peugeot Oleron</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Hauteur 8 cm. M&eacute;canismes poivre ou sel (sec uniquement) garantis &agrave; vie. R&eacute;glage de la mouture. Plusieurs couleurs au choix suivant m&eacute;canisme.</div>\n
          <div>Hauteur 15 cm. Corps acrylique. Haut bois. Vis inox. Garantie 2 ans. M&eacute;canismes poivre, sel sec, sel humide ou piment garantis &agrave; vie. R&eacute;glage de la mouture. Existe en bois naturel ou chocolat.</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 {#9450 …}
    #channels: Doctrine\ORM\PersistentCollection {#9438 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9434 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9436 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28684
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28717 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28723 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28710 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30959
  +product: App\Entity\Product\Product {#9433
    #id: 3044
    #code: "moulin-peugeot-oleron-3776"
    #attributes: Doctrine\ORM\PersistentCollection {#9440 …}
    #variants: Doctrine\ORM\PersistentCollection {#9453 …}
    #options: Doctrine\ORM\PersistentCollection {#9444 …}
    #associations: Doctrine\ORM\PersistentCollection {#9442 …}
    #createdAt: DateTime @1758632747 {#9416
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#9415
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9447 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9448
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9433}
        #id: 3044
        #name: "Moulin Peugeot Oleron"
        #slug: "moulin-peugeot-oleron-3776"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Esth&eacute;tique sobre convenant &agrave; tous les styles.</li>\n
          <li>M&eacute;canismes garantis &agrave; vie.</li>\n
          <li>2 coloris au choix.</li>\n
          </ul></div><h1>Description Moulin Peugeot Oleron</h1><div class="col is-12">Le moulin Peugeot Ol&eacute;ron a un&nbsp;corps acrylique transparent l&eacute;g&egrave;rement torsad&eacute; &eacute;voquant le mouvement et jouant subtilement avec la lumi&egrave;re.&nbsp;Le moulin Peugeot Ol&eacute;ron propose&nbsp;3 m&eacute;canismes : poivre, sel sec et piment.&nbsp;\n
          <div></div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Une ligne de moulins dont le corps transparent l&eacute;g&egrave;rement torsad&eacute; &eacute;voque le mouvement et joue subtilement avec la lumi&egrave;re.&nbsp;</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">- Peugeot propose des m&eacute;canismes sp&eacute;cifiquement con&ccedil;us pour chaque &eacute;pice, la gamme Ol&eacute;ron offre 3 m&eacute;canismes : M&eacute;canisme &agrave; poivre, m&eacute;canisme &agrave; sel sec et m&eacute;canisme &agrave; piment.&nbsp;&nbsp;le corps transparent l&eacute;g&egrave;rement torsad&eacute; &eacute;voque le mouvement et joue subtilement avec la lumi&egrave;re.&nbsp;</div></div><h1>Caractéristiques Moulin Peugeot Oleron</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Hauteur 8 cm. M&eacute;canismes poivre ou sel (sec uniquement) garantis &agrave; vie. R&eacute;glage de la mouture. Plusieurs couleurs au choix suivant m&eacute;canisme.</div>\n
          <div>Hauteur 15 cm. Corps acrylique. Haut bois. Vis inox. Garantie 2 ans. M&eacute;canismes poivre, sel sec, sel humide ou piment garantis &agrave; vie. R&eacute;glage de la mouture. Existe en bois naturel ou chocolat.</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 {#9450 …}
    #channels: Doctrine\ORM\PersistentCollection {#9438 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9434 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9436 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#9454 …}
  +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 {#28684
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28717 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28723 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28710 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.96 ms
Input props
[
  "product" => App\Entity\Product\Product {#9433
    #id: 3044
    #code: "moulin-peugeot-oleron-3776"
    #attributes: Doctrine\ORM\PersistentCollection {#9440 …}
    #variants: Doctrine\ORM\PersistentCollection {#9453 …}
    #options: Doctrine\ORM\PersistentCollection {#9444 …}
    #associations: Doctrine\ORM\PersistentCollection {#9442 …}
    #createdAt: DateTime @1758632747 {#9416
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#9415
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#9447 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#9448
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#9433}
        #id: 3044
        #name: "Moulin Peugeot Oleron"
        #slug: "moulin-peugeot-oleron-3776"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Esth&eacute;tique sobre convenant &agrave; tous les styles.</li>\n
          <li>M&eacute;canismes garantis &agrave; vie.</li>\n
          <li>2 coloris au choix.</li>\n
          </ul></div><h1>Description Moulin Peugeot Oleron</h1><div class="col is-12">Le moulin Peugeot Ol&eacute;ron a un&nbsp;corps acrylique transparent l&eacute;g&egrave;rement torsad&eacute; &eacute;voquant le mouvement et jouant subtilement avec la lumi&egrave;re.&nbsp;Le moulin Peugeot Ol&eacute;ron propose&nbsp;3 m&eacute;canismes : poivre, sel sec et piment.&nbsp;\n
          <div></div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Une ligne de moulins dont le corps transparent l&eacute;g&egrave;rement torsad&eacute; &eacute;voque le mouvement et joue subtilement avec la lumi&egrave;re.&nbsp;</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">- Peugeot propose des m&eacute;canismes sp&eacute;cifiquement con&ccedil;us pour chaque &eacute;pice, la gamme Ol&eacute;ron offre 3 m&eacute;canismes : M&eacute;canisme &agrave; poivre, m&eacute;canisme &agrave; sel sec et m&eacute;canisme &agrave; piment.&nbsp;&nbsp;le corps transparent l&eacute;g&egrave;rement torsad&eacute; &eacute;voque le mouvement et joue subtilement avec la lumi&egrave;re.&nbsp;</div></div><h1>Caractéristiques Moulin Peugeot Oleron</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Hauteur 8 cm. M&eacute;canismes poivre ou sel (sec uniquement) garantis &agrave; vie. R&eacute;glage de la mouture. Plusieurs couleurs au choix suivant m&eacute;canisme.</div>\n
          <div>Hauteur 15 cm. Corps acrylique. Haut bois. Vis inox. Garantie 2 ans. M&eacute;canismes poivre, sel sec, sel humide ou piment garantis &agrave; vie. R&eacute;glage de la mouture. Existe en bois naturel ou chocolat.</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 {#9450 …}
    #channels: Doctrine\ORM\PersistentCollection {#9438 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#9434 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#9436 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin Peugeot Oleron"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#31190
  -props: [
    "product" => App\Entity\Product\Product {#9433
      #id: 3044
      #code: "moulin-peugeot-oleron-3776"
      #attributes: Doctrine\ORM\PersistentCollection {#9440 …}
      #variants: Doctrine\ORM\PersistentCollection {#9453 …}
      #options: Doctrine\ORM\PersistentCollection {#9444 …}
      #associations: Doctrine\ORM\PersistentCollection {#9442 …}
      #createdAt: DateTime @1758632747 {#9416
        date: 2025-09-23 21:05:47.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632747 {#9415
        date: 2025-09-23 21:05:47.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#9447 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#9448
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#9433}
          #id: 3044
          #name: "Moulin Peugeot Oleron"
          #slug: "moulin-peugeot-oleron-3776"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Esth&eacute;tique sobre convenant &agrave; tous les styles.</li>\n
            <li>M&eacute;canismes garantis &agrave; vie.</li>\n
            <li>2 coloris au choix.</li>\n
            </ul></div><h1>Description Moulin Peugeot Oleron</h1><div class="col is-12">Le moulin Peugeot Ol&eacute;ron a un&nbsp;corps acrylique transparent l&eacute;g&egrave;rement torsad&eacute; &eacute;voquant le mouvement et jouant subtilement avec la lumi&egrave;re.&nbsp;Le moulin Peugeot Ol&eacute;ron propose&nbsp;3 m&eacute;canismes : poivre, sel sec et piment.&nbsp;\n
            <div></div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Une ligne de moulins dont le corps transparent l&eacute;g&egrave;rement torsad&eacute; &eacute;voque le mouvement et joue subtilement avec la lumi&egrave;re.&nbsp;</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">- Peugeot propose des m&eacute;canismes sp&eacute;cifiquement con&ccedil;us pour chaque &eacute;pice, la gamme Ol&eacute;ron offre 3 m&eacute;canismes : M&eacute;canisme &agrave; poivre, m&eacute;canisme &agrave; sel sec et m&eacute;canisme &agrave; piment.&nbsp;&nbsp;le corps transparent l&eacute;g&egrave;rement torsad&eacute; &eacute;voque le mouvement et joue subtilement avec la lumi&egrave;re.&nbsp;</div></div><h1>Caractéristiques Moulin Peugeot Oleron</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Hauteur 8 cm. M&eacute;canismes poivre ou sel (sec uniquement) garantis &agrave; vie. R&eacute;glage de la mouture. Plusieurs couleurs au choix suivant m&eacute;canisme.</div>\n
            <div>Hauteur 15 cm. Corps acrylique. Haut bois. Vis inox. Garantie 2 ans. M&eacute;canismes poivre, sel sec, sel humide ou piment garantis &agrave; vie. R&eacute;glage de la mouture. Existe en bois naturel ou chocolat.</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 {#9450 …}
      #channels: Doctrine\ORM\PersistentCollection {#9438 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#9434 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#9436 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.81 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31242
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31174 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#31183 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31241 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#9454 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#9464
    #collection: Doctrine\Common\Collections\ArrayCollection {#9465 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#9463 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38757 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38759 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31242
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31174 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#31183 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31241 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin Peugeot Oleron"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#9464
    #collection: Doctrine\Common\Collections\ArrayCollection {#9465 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#9463 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38757 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38759 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#31248
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31242
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31174 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#31183 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31241 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#9454 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#9464
      #collection: Doctrine\Common\Collections\ArrayCollection {#9465 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#9463 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38757 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38759 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.23 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31298
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31289 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#31296 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31297 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#9454 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#31301
  +variant: App\Entity\Product\ProductVariant {#9454 …}
  +price: "35,00\u{A0}"
  +originalPrice: "38,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#10111 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#13541 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#10108 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31298
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31289 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#31296 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31297 …}
    +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 114.0 MiB 2.80 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28383
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13606 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28405 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13616 …}
    +prefixes: [
      "sylius_shop.base.offcanvas"
    ]
  }
  "template" => "@SyliusShop/shared/layout/base/offcanvas/cart.html.twig"
]
Attributes
[]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent {#31620
  +cart: App\Entity\Order\Order {#14520 …}
  #cartContext: Sylius\Component\Order\Context\CompositeCartContext {#1322 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28383
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13606 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28405 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13616 …}
    +prefixes: [
      "sylius_shop.base.offcanvas"
    ]
  }
  +template: "@SyliusShop/shared/layout/base/offcanvas/cart.html.twig"
  #repository: Sylius\Bundle\CoreBundle\Doctrine\ORM\OrderRepository {#4980 …}
}