Components

12 Twig Components
44 Render Count
67 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 38.99ms
sylius_shop:main_image
[Anonymous]
@SyliusShop/shared/components/main_image.html.twig
9 7.85ms
sylius_shop:catalog_promotions
[Anonymous]
@SyliusShop/shared/components/catalog_promotions.html.twig
9 6.19ms
sylius_shop:product:card:price
"Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent"
@SyliusUi/components/default.html.twig
9 1.51ms
sylius_shop:common:currency_switcher
"Sylius\Bundle\ShopBundle\Twig\Component\Common\CurrencySwitcherComponent"
@SyliusUi/components/default.html.twig
1 1.14ms
sylius_shop:common:locale_switcher
"Sylius\Bundle\ShopBundle\Twig\Component\Common\LocaleSwitcherComponent"
@SyliusUi/components/default.html.twig
1 0.71ms
sylius_shop:cart:widget
"Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent"
@SyliusUi/components/default.html.twig
1 4.42ms
sylius_shop:common:taxon_menu
"Sylius\Bundle\ShopBundle\Twig\Component\Common\TaxonMenuComponent"
@SyliusUi/components/default.html.twig
1 15.41ms
sylius_shop:product:show:breadcrumbs
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 1.09ms
sylius_shop:product:show:taxonomy
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 1.26ms
sylius_shop:product:show:header
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 2.00ms
sylius_shop:cart:widget:offcanvas
"Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent"
@SyliusUi/components/default.html.twig
1 2.32ms

Render calls

sylius_shop:common:currency_switcher Sylius\Bundle\ShopBundle\Twig\Component\Common\CurrencySwitcherComponent 114.0 MiB 1.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#12850
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12843 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#12849 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12848 …}
    +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 {#13470
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12741 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#12850
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12843 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#12849 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12848 …}
    +prefixes: [
      "sylius_shop.base.header.top_bar"
    ]
  }
}
sylius_shop:common:locale_switcher Sylius\Bundle\ShopBundle\Twig\Component\Common\LocaleSwitcherComponent 114.0 MiB 0.71 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13547
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13543 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13545 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13546 …}
    +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 {#13556
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #localeProvider: Sylius\Component\Core\Provider\ChannelBasedLocaleProvider {#4528 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13547
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13543 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13545 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13546 …}
    +prefixes: [
      "sylius_shop.base.header.top_bar"
    ]
  }
}
sylius_shop:cart:widget Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent 114.0 MiB 4.42 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13638
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13617 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13637 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13636 …}
    +prefixes: [
      "sylius_shop.base.header.content"
    ]
  }
  "template" => "@SyliusShop/shared/components/header/cart.html.twig"
]
Attributes
[]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent {#13653
  +cart: App\Entity\Order\Order {#13720 …}
  #cartContext: Sylius\Component\Order\Context\CompositeCartContext {#1322 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13638
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13617 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13637 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13636 …}
    +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 15.41 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13906
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13894 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13900 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13892 …}
    +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 {#13915
  #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 {#13906
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13894 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13900 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13892 …}
    +prefixes: [
      "sylius_shop.base.header.navbar"
    ]
  }
}
sylius_shop:product:show:breadcrumbs Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 114.0 MiB 1.09 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28069
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28065 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28066 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28068 …}
    +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 {#28078
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28069
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28065 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28066 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28068 …}
    +prefixes: [
      "sylius_shop.product.index.content"
    ]
  }
}
sylius_shop:product:show:taxonomy Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 114.0 MiB 1.26 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28182
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28178 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28179 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28181 …}
    +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 {#28190
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28182
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28178 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28179 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28181 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.sidebar"
    ]
  }
}
sylius_shop:product:show:header Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 114.0 MiB 2.00 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28280
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28276 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28277 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28279 …}
    +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 {#28288
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28280
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28276 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28277 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28279 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 114.0 MiB 8.31 ms
Input props
[
  "product" => App\Entity\Product\Product {#7949
    #id: 2564
    #code: "tire-bouchon-barrel-peugeot-5972"
    #attributes: Doctrine\ORM\PersistentCollection {#8638 …}
    #variants: Doctrine\ORM\PersistentCollection {#6065 …}
    #options: Doctrine\ORM\PersistentCollection {#6071 …}
    #associations: Doctrine\ORM\PersistentCollection {#5132 …}
    #createdAt: DateTime @1758632577 {#8058
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#7959
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#6048 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#6055
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7949}
        #id: 2564
        #name: "Tire-Bouchon Barrel Peugeot"
        #slug: "tire-bouchon-barrel-peugeot-5972"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Syst&egrave;me d'ouverture vis sans fin, sans effort.</li>\n
          <li>Bois de noyer PEFC.</li>\n
          <li>Fabriqu&eacute; en France.</li>\n
          </ul></div><h1>Descriptif Tire-Bouchon Barrel Peugeot</h1><div class="col is-12">Le Tire-Bouchon Barrel Peugeot est &eacute;quip&eacute; d'un syst&egrave;me d'ouverture &agrave; vis sans fin permettant un d&eacute;bouchage de vos meilleures bouteilles sans effort. Son design reprenant les codes de la tonnellerie traditionnelle, il interpellera vos convives par son originalit&eacute; !</div><h1>Caractéristiques Tire-Bouchon Barrel Peugeot</h1><div class="col is-12">Bois de noyer PEFC. Partie interne en abs. Poign&eacute;e en zamac. Vrille en acier tremp&eacute; pour un glissement ais&eacute;e et une r&eacute;sistance accrue. Hauteur 18 cm. Livr&eacute; en coffret. Garantie 2 ans. 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 {#6052 …}
    #channels: Doctrine\ORM\PersistentCollection {#8338 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8088 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8349 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8305 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28345
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28378 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28384 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28371 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#28813
  +product: App\Entity\Product\Product {#7949
    #id: 2564
    #code: "tire-bouchon-barrel-peugeot-5972"
    #attributes: Doctrine\ORM\PersistentCollection {#8638 …}
    #variants: Doctrine\ORM\PersistentCollection {#6065 …}
    #options: Doctrine\ORM\PersistentCollection {#6071 …}
    #associations: Doctrine\ORM\PersistentCollection {#5132 …}
    #createdAt: DateTime @1758632577 {#8058
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#7959
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#6048 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#6055
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7949}
        #id: 2564
        #name: "Tire-Bouchon Barrel Peugeot"
        #slug: "tire-bouchon-barrel-peugeot-5972"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Syst&egrave;me d'ouverture vis sans fin, sans effort.</li>\n
          <li>Bois de noyer PEFC.</li>\n
          <li>Fabriqu&eacute; en France.</li>\n
          </ul></div><h1>Descriptif Tire-Bouchon Barrel Peugeot</h1><div class="col is-12">Le Tire-Bouchon Barrel Peugeot est &eacute;quip&eacute; d'un syst&egrave;me d'ouverture &agrave; vis sans fin permettant un d&eacute;bouchage de vos meilleures bouteilles sans effort. Son design reprenant les codes de la tonnellerie traditionnelle, il interpellera vos convives par son originalit&eacute; !</div><h1>Caractéristiques Tire-Bouchon Barrel Peugeot</h1><div class="col is-12">Bois de noyer PEFC. Partie interne en abs. Poign&eacute;e en zamac. Vrille en acier tremp&eacute; pour un glissement ais&eacute;e et une r&eacute;sistance accrue. Hauteur 18 cm. Livr&eacute; en coffret. Garantie 2 ans. 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 {#6052 …}
    #channels: Doctrine\ORM\PersistentCollection {#8338 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8088 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8349 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8305 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#6050 …}
  +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 {#28345
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28378 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28384 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28371 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 1.80 ms
Input props
[
  "product" => App\Entity\Product\Product {#7949
    #id: 2564
    #code: "tire-bouchon-barrel-peugeot-5972"
    #attributes: Doctrine\ORM\PersistentCollection {#8638 …}
    #variants: Doctrine\ORM\PersistentCollection {#6065 …}
    #options: Doctrine\ORM\PersistentCollection {#6071 …}
    #associations: Doctrine\ORM\PersistentCollection {#5132 …}
    #createdAt: DateTime @1758632577 {#8058
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#7959
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#6048 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#6055
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7949}
        #id: 2564
        #name: "Tire-Bouchon Barrel Peugeot"
        #slug: "tire-bouchon-barrel-peugeot-5972"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Syst&egrave;me d'ouverture vis sans fin, sans effort.</li>\n
          <li>Bois de noyer PEFC.</li>\n
          <li>Fabriqu&eacute; en France.</li>\n
          </ul></div><h1>Descriptif Tire-Bouchon Barrel Peugeot</h1><div class="col is-12">Le Tire-Bouchon Barrel Peugeot est &eacute;quip&eacute; d'un syst&egrave;me d'ouverture &agrave; vis sans fin permettant un d&eacute;bouchage de vos meilleures bouteilles sans effort. Son design reprenant les codes de la tonnellerie traditionnelle, il interpellera vos convives par son originalit&eacute; !</div><h1>Caractéristiques Tire-Bouchon Barrel Peugeot</h1><div class="col is-12">Bois de noyer PEFC. Partie interne en abs. Poign&eacute;e en zamac. Vrille en acier tremp&eacute; pour un glissement ais&eacute;e et une r&eacute;sistance accrue. Hauteur 18 cm. Livr&eacute; en coffret. Garantie 2 ans. 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 {#6052 …}
    #channels: Doctrine\ORM\PersistentCollection {#8338 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8088 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8349 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8305 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Tire-Bouchon Barrel Peugeot"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#28973
  -props: [
    "product" => App\Entity\Product\Product {#7949
      #id: 2564
      #code: "tire-bouchon-barrel-peugeot-5972"
      #attributes: Doctrine\ORM\PersistentCollection {#8638 …}
      #variants: Doctrine\ORM\PersistentCollection {#6065 …}
      #options: Doctrine\ORM\PersistentCollection {#6071 …}
      #associations: Doctrine\ORM\PersistentCollection {#5132 …}
      #createdAt: DateTime @1758632577 {#8058
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632577 {#7959
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#6048 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#6055
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#7949}
          #id: 2564
          #name: "Tire-Bouchon Barrel Peugeot"
          #slug: "tire-bouchon-barrel-peugeot-5972"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Syst&egrave;me d'ouverture vis sans fin, sans effort.</li>\n
            <li>Bois de noyer PEFC.</li>\n
            <li>Fabriqu&eacute; en France.</li>\n
            </ul></div><h1>Descriptif Tire-Bouchon Barrel Peugeot</h1><div class="col is-12">Le Tire-Bouchon Barrel Peugeot est &eacute;quip&eacute; d'un syst&egrave;me d'ouverture &agrave; vis sans fin permettant un d&eacute;bouchage de vos meilleures bouteilles sans effort. Son design reprenant les codes de la tonnellerie traditionnelle, il interpellera vos convives par son originalit&eacute; !</div><h1>Caractéristiques Tire-Bouchon Barrel Peugeot</h1><div class="col is-12">Bois de noyer PEFC. Partie interne en abs. Poign&eacute;e en zamac. Vrille en acier tremp&eacute; pour un glissement ais&eacute;e et une r&eacute;sistance accrue. Hauteur 18 cm. Livr&eacute; en coffret. Garantie 2 ans. 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 {#6052 …}
      #channels: Doctrine\ORM\PersistentCollection {#8338 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8088 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8349 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8305 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 1.30 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29047
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29043 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29044 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29046 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#6050 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#8055
    #collection: Doctrine\Common\Collections\ArrayCollection {#8293 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#6761 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38237 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38289 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29047
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29043 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29044 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29046 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Tire-Bouchon Barrel Peugeot"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#8055
    #collection: Doctrine\Common\Collections\ArrayCollection {#8293 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#6761 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38237 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38289 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29051
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29047
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29043 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29044 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29046 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#6050 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#8055
      #collection: Doctrine\Common\Collections\ArrayCollection {#8293 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#6761 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38237 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38289 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.37 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29119
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29109 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29117 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29118 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#6050 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29128
  +variant: App\Entity\Product\ProductVariant {#6050 …}
  +price: "49,00\u{A0}"
  +originalPrice: "49,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9311 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12741 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9308 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29119
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29109 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29117 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29118 …}
    +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 4.13 ms
Input props
[
  "product" => App\Entity\Product\Product {#8039
    #id: 1436
    #code: "passoire-conique-professionnelle-de-buyer-732"
    #attributes: Doctrine\ORM\PersistentCollection {#8285 …}
    #variants: Doctrine\ORM\PersistentCollection {#8426 …}
    #options: Doctrine\ORM\PersistentCollection {#8326 …}
    #associations: Doctrine\ORM\PersistentCollection {#8539 …}
    #createdAt: DateTime @1758632348 {#8309
      date: 2025-09-23 20:59:08.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632348 {#8056
      date: 2025-09-23 20:59:08.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8075 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8063
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8039}
        #id: 1436
        #name: "Passoire conique professionnelle De Buyer"
        #slug: "passoire-conique-professionnelle-de-buyer-732"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Perforations petites et r&eacute;guli&egrave;res permettant d&rsquo;&eacute;goutter m&ecirc;me le riz.</li>\n
          <li>Bord roul&eacute; ouvert hygi&eacute;nique.</li>\n
          <li>Trou d'accrochage pour un rangement facile.</li>\n
          <li>2 tailles.</li>\n
          <li><strong>Fabriqu&eacute;e en France.</strong></li>\n
          </ul></div><h1>Description Passoire conique professionnelle De Buyer</h1><div class="col is-12">La Passoire conique professionnelle De Buyer permet d'&eacute;goutter efficacement tous vos aliments m&ecirc;me le riz, les trous &eacute;tant id&eacute;alement calibr&eacute;s. Sa forme parfaitement &eacute;tudi&eacute;e lui permet d'&ecirc;tre tr&egrave;s stable pos&eacute;e sur un r&eacute;cipient.</div><h1>Caractéristiques Passoire conique professionnelle De Buyer</h1><div class="col is-12">Inox 18/10. Avec queue et crochet. Peut &ecirc;tre positionn&eacute;e sur un r&eacute;cipient lors de l'&eacute;gouttage.</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 {#8048 …}
    #channels: Doctrine\ORM\PersistentCollection {#8271 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8043 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8045 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#7966 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28345
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28378 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28384 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28371 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#28951
  +product: App\Entity\Product\Product {#8039
    #id: 1436
    #code: "passoire-conique-professionnelle-de-buyer-732"
    #attributes: Doctrine\ORM\PersistentCollection {#8285 …}
    #variants: Doctrine\ORM\PersistentCollection {#8426 …}
    #options: Doctrine\ORM\PersistentCollection {#8326 …}
    #associations: Doctrine\ORM\PersistentCollection {#8539 …}
    #createdAt: DateTime @1758632348 {#8309
      date: 2025-09-23 20:59:08.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632348 {#8056
      date: 2025-09-23 20:59:08.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8075 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8063
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8039}
        #id: 1436
        #name: "Passoire conique professionnelle De Buyer"
        #slug: "passoire-conique-professionnelle-de-buyer-732"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Perforations petites et r&eacute;guli&egrave;res permettant d&rsquo;&eacute;goutter m&ecirc;me le riz.</li>\n
          <li>Bord roul&eacute; ouvert hygi&eacute;nique.</li>\n
          <li>Trou d'accrochage pour un rangement facile.</li>\n
          <li>2 tailles.</li>\n
          <li><strong>Fabriqu&eacute;e en France.</strong></li>\n
          </ul></div><h1>Description Passoire conique professionnelle De Buyer</h1><div class="col is-12">La Passoire conique professionnelle De Buyer permet d'&eacute;goutter efficacement tous vos aliments m&ecirc;me le riz, les trous &eacute;tant id&eacute;alement calibr&eacute;s. Sa forme parfaitement &eacute;tudi&eacute;e lui permet d'&ecirc;tre tr&egrave;s stable pos&eacute;e sur un r&eacute;cipient.</div><h1>Caractéristiques Passoire conique professionnelle De Buyer</h1><div class="col is-12">Inox 18/10. Avec queue et crochet. Peut &ecirc;tre positionn&eacute;e sur un r&eacute;cipient lors de l'&eacute;gouttage.</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 {#8048 …}
    #channels: Doctrine\ORM\PersistentCollection {#8271 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8043 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8045 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#7966 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#8423 …}
  +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 {#28345
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28378 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28384 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28371 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.73 ms
Input props
[
  "product" => App\Entity\Product\Product {#8039
    #id: 1436
    #code: "passoire-conique-professionnelle-de-buyer-732"
    #attributes: Doctrine\ORM\PersistentCollection {#8285 …}
    #variants: Doctrine\ORM\PersistentCollection {#8426 …}
    #options: Doctrine\ORM\PersistentCollection {#8326 …}
    #associations: Doctrine\ORM\PersistentCollection {#8539 …}
    #createdAt: DateTime @1758632348 {#8309
      date: 2025-09-23 20:59:08.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632348 {#8056
      date: 2025-09-23 20:59:08.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8075 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8063
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8039}
        #id: 1436
        #name: "Passoire conique professionnelle De Buyer"
        #slug: "passoire-conique-professionnelle-de-buyer-732"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Perforations petites et r&eacute;guli&egrave;res permettant d&rsquo;&eacute;goutter m&ecirc;me le riz.</li>\n
          <li>Bord roul&eacute; ouvert hygi&eacute;nique.</li>\n
          <li>Trou d'accrochage pour un rangement facile.</li>\n
          <li>2 tailles.</li>\n
          <li><strong>Fabriqu&eacute;e en France.</strong></li>\n
          </ul></div><h1>Description Passoire conique professionnelle De Buyer</h1><div class="col is-12">La Passoire conique professionnelle De Buyer permet d'&eacute;goutter efficacement tous vos aliments m&ecirc;me le riz, les trous &eacute;tant id&eacute;alement calibr&eacute;s. Sa forme parfaitement &eacute;tudi&eacute;e lui permet d'&ecirc;tre tr&egrave;s stable pos&eacute;e sur un r&eacute;cipient.</div><h1>Caractéristiques Passoire conique professionnelle De Buyer</h1><div class="col is-12">Inox 18/10. Avec queue et crochet. Peut &ecirc;tre positionn&eacute;e sur un r&eacute;cipient lors de l'&eacute;gouttage.</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 {#8048 …}
    #channels: Doctrine\ORM\PersistentCollection {#8271 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8043 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8045 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#7966 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Passoire conique professionnelle De Buyer"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29255
  -props: [
    "product" => App\Entity\Product\Product {#8039
      #id: 1436
      #code: "passoire-conique-professionnelle-de-buyer-732"
      #attributes: Doctrine\ORM\PersistentCollection {#8285 …}
      #variants: Doctrine\ORM\PersistentCollection {#8426 …}
      #options: Doctrine\ORM\PersistentCollection {#8326 …}
      #associations: Doctrine\ORM\PersistentCollection {#8539 …}
      #createdAt: DateTime @1758632348 {#8309
        date: 2025-09-23 20:59:08.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632348 {#8056
        date: 2025-09-23 20:59:08.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8075 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8063
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8039}
          #id: 1436
          #name: "Passoire conique professionnelle De Buyer"
          #slug: "passoire-conique-professionnelle-de-buyer-732"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Perforations petites et r&eacute;guli&egrave;res permettant d&rsquo;&eacute;goutter m&ecirc;me le riz.</li>\n
            <li>Bord roul&eacute; ouvert hygi&eacute;nique.</li>\n
            <li>Trou d'accrochage pour un rangement facile.</li>\n
            <li>2 tailles.</li>\n
            <li><strong>Fabriqu&eacute;e en France.</strong></li>\n
            </ul></div><h1>Description Passoire conique professionnelle De Buyer</h1><div class="col is-12">La Passoire conique professionnelle De Buyer permet d'&eacute;goutter efficacement tous vos aliments m&ecirc;me le riz, les trous &eacute;tant id&eacute;alement calibr&eacute;s. Sa forme parfaitement &eacute;tudi&eacute;e lui permet d'&ecirc;tre tr&egrave;s stable pos&eacute;e sur un r&eacute;cipient.</div><h1>Caractéristiques Passoire conique professionnelle De Buyer</h1><div class="col is-12">Inox 18/10. Avec queue et crochet. Peut &ecirc;tre positionn&eacute;e sur un r&eacute;cipient lors de l'&eacute;gouttage.</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 {#8048 …}
      #channels: Doctrine\ORM\PersistentCollection {#8271 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8043 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8045 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#7966 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.63 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29301
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29239 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29248 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29300 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#8423 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#8483
    #collection: Doctrine\Common\Collections\ArrayCollection {#8491 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#8484 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38309 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38311 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29301
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29239 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29248 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29300 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Passoire conique professionnelle De Buyer"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#8483
    #collection: Doctrine\Common\Collections\ArrayCollection {#8491 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#8484 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38309 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38311 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29307
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29301
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29239 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29248 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29300 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#8423 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#8483
      #collection: Doctrine\Common\Collections\ArrayCollection {#8491 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#8484 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38309 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38311 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29357
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29348 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29355 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29356 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#8423 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29360
  +variant: App\Entity\Product\ProductVariant {#8423 …}
  +price: "65,00\u{A0}"
  +originalPrice: "65,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9311 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12741 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9308 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29357
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29348 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29355 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29356 …}
    +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 3.70 ms
Input props
[
  "product" => App\Entity\Product\Product {#8498
    #id: 1440
    #code: "passoire-inox-de-buyer-6490"
    #attributes: Doctrine\ORM\PersistentCollection {#8600 …}
    #variants: Doctrine\ORM\PersistentCollection {#8612 …}
    #options: Doctrine\ORM\PersistentCollection {#8603 …}
    #associations: Doctrine\ORM\PersistentCollection {#8602 …}
    #createdAt: DateTime @1758632348 {#8492
      date: 2025-09-23 20:59:08.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632348 {#8493
      date: 2025-09-23 20:59:08.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8607 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8595
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8498}
        #id: 1440
        #name: "Passoire inox De Buyer"
        #slug: "passoire-inox-de-buyer-6490"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Pour tout &eacute;goutter, m&ecirc;me le riz !</li>\n
          <li>2 anses pour une manipulation simple et s&ucirc;re.</li>\n
          <li><strong>Fabriqu&eacute;e en France.</strong></li>\n
          </ul>\n
          <br /></div><h1>Description Passoire inox De Buyer</h1><div class="col is-12">La passoire inox De Buyer est un accessoire de qualit&eacute; professionnelle, en acier inoxydable, parfaite pour &eacute;goutter tout type d&rsquo;aliments. Elle b&eacute;n&eacute;ficie de perforations petites et r&eacute;guli&egrave;res permettant d&rsquo;&eacute;goutter m&ecirc;me le riz.</div><h1>Caractéristiques Passoire inox De Buyer</h1><div class="col is-12">Diam&egrave;tre 24 cm. Inox 18/10. Bord roul&eacute; ouvert hygi&eacute;nique. 2 anses et 1 pied. Surface int&eacute;rieure lisse qui ne retient pas l&rsquo;eau de cuisson. 2 anses pour une manipulation simple et s&ucirc;re . Passoire sur&eacute;lev&eacute;e. Entretien : passe au lave-vaisselle.</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 {#8609 …}
    #channels: Doctrine\ORM\PersistentCollection {#8591 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8043 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8590 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8592 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28345
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28378 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28384 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28371 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29246
  +product: App\Entity\Product\Product {#8498
    #id: 1440
    #code: "passoire-inox-de-buyer-6490"
    #attributes: Doctrine\ORM\PersistentCollection {#8600 …}
    #variants: Doctrine\ORM\PersistentCollection {#8612 …}
    #options: Doctrine\ORM\PersistentCollection {#8603 …}
    #associations: Doctrine\ORM\PersistentCollection {#8602 …}
    #createdAt: DateTime @1758632348 {#8492
      date: 2025-09-23 20:59:08.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632348 {#8493
      date: 2025-09-23 20:59:08.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8607 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8595
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8498}
        #id: 1440
        #name: "Passoire inox De Buyer"
        #slug: "passoire-inox-de-buyer-6490"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Pour tout &eacute;goutter, m&ecirc;me le riz !</li>\n
          <li>2 anses pour une manipulation simple et s&ucirc;re.</li>\n
          <li><strong>Fabriqu&eacute;e en France.</strong></li>\n
          </ul>\n
          <br /></div><h1>Description Passoire inox De Buyer</h1><div class="col is-12">La passoire inox De Buyer est un accessoire de qualit&eacute; professionnelle, en acier inoxydable, parfaite pour &eacute;goutter tout type d&rsquo;aliments. Elle b&eacute;n&eacute;ficie de perforations petites et r&eacute;guli&egrave;res permettant d&rsquo;&eacute;goutter m&ecirc;me le riz.</div><h1>Caractéristiques Passoire inox De Buyer</h1><div class="col is-12">Diam&egrave;tre 24 cm. Inox 18/10. Bord roul&eacute; ouvert hygi&eacute;nique. 2 anses et 1 pied. Surface int&eacute;rieure lisse qui ne retient pas l&rsquo;eau de cuisson. 2 anses pour une manipulation simple et s&ucirc;re . Passoire sur&eacute;lev&eacute;e. Entretien : passe au lave-vaisselle.</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 {#8609 …}
    #channels: Doctrine\ORM\PersistentCollection {#8591 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8043 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8590 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8592 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#8613 …}
  +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 {#28345
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28378 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28384 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28371 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.72 ms
Input props
[
  "product" => App\Entity\Product\Product {#8498
    #id: 1440
    #code: "passoire-inox-de-buyer-6490"
    #attributes: Doctrine\ORM\PersistentCollection {#8600 …}
    #variants: Doctrine\ORM\PersistentCollection {#8612 …}
    #options: Doctrine\ORM\PersistentCollection {#8603 …}
    #associations: Doctrine\ORM\PersistentCollection {#8602 …}
    #createdAt: DateTime @1758632348 {#8492
      date: 2025-09-23 20:59:08.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632348 {#8493
      date: 2025-09-23 20:59:08.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8607 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8595
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8498}
        #id: 1440
        #name: "Passoire inox De Buyer"
        #slug: "passoire-inox-de-buyer-6490"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Pour tout &eacute;goutter, m&ecirc;me le riz !</li>\n
          <li>2 anses pour une manipulation simple et s&ucirc;re.</li>\n
          <li><strong>Fabriqu&eacute;e en France.</strong></li>\n
          </ul>\n
          <br /></div><h1>Description Passoire inox De Buyer</h1><div class="col is-12">La passoire inox De Buyer est un accessoire de qualit&eacute; professionnelle, en acier inoxydable, parfaite pour &eacute;goutter tout type d&rsquo;aliments. Elle b&eacute;n&eacute;ficie de perforations petites et r&eacute;guli&egrave;res permettant d&rsquo;&eacute;goutter m&ecirc;me le riz.</div><h1>Caractéristiques Passoire inox De Buyer</h1><div class="col is-12">Diam&egrave;tre 24 cm. Inox 18/10. Bord roul&eacute; ouvert hygi&eacute;nique. 2 anses et 1 pied. Surface int&eacute;rieure lisse qui ne retient pas l&rsquo;eau de cuisson. 2 anses pour une manipulation simple et s&ucirc;re . Passoire sur&eacute;lev&eacute;e. Entretien : passe au lave-vaisselle.</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 {#8609 …}
    #channels: Doctrine\ORM\PersistentCollection {#8591 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8043 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8590 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8592 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Passoire inox De Buyer"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29477
  -props: [
    "product" => App\Entity\Product\Product {#8498
      #id: 1440
      #code: "passoire-inox-de-buyer-6490"
      #attributes: Doctrine\ORM\PersistentCollection {#8600 …}
      #variants: Doctrine\ORM\PersistentCollection {#8612 …}
      #options: Doctrine\ORM\PersistentCollection {#8603 …}
      #associations: Doctrine\ORM\PersistentCollection {#8602 …}
      #createdAt: DateTime @1758632348 {#8492
        date: 2025-09-23 20:59:08.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632348 {#8493
        date: 2025-09-23 20:59:08.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8607 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8595
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8498}
          #id: 1440
          #name: "Passoire inox De Buyer"
          #slug: "passoire-inox-de-buyer-6490"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Pour tout &eacute;goutter, m&ecirc;me le riz !</li>\n
            <li>2 anses pour une manipulation simple et s&ucirc;re.</li>\n
            <li><strong>Fabriqu&eacute;e en France.</strong></li>\n
            </ul>\n
            <br /></div><h1>Description Passoire inox De Buyer</h1><div class="col is-12">La passoire inox De Buyer est un accessoire de qualit&eacute; professionnelle, en acier inoxydable, parfaite pour &eacute;goutter tout type d&rsquo;aliments. Elle b&eacute;n&eacute;ficie de perforations petites et r&eacute;guli&egrave;res permettant d&rsquo;&eacute;goutter m&ecirc;me le riz.</div><h1>Caractéristiques Passoire inox De Buyer</h1><div class="col is-12">Diam&egrave;tre 24 cm. Inox 18/10. Bord roul&eacute; ouvert hygi&eacute;nique. 2 anses et 1 pied. Surface int&eacute;rieure lisse qui ne retient pas l&rsquo;eau de cuisson. 2 anses pour une manipulation simple et s&ucirc;re . Passoire sur&eacute;lev&eacute;e. Entretien : passe au lave-vaisselle.</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 {#8609 …}
      #channels: Doctrine\ORM\PersistentCollection {#8591 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8043 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8590 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8592 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.60 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29523
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29461 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29470 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29522 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#8613 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#8681
    #collection: Doctrine\Common\Collections\ArrayCollection {#8682 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#8680 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38323 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38325 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29523
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29461 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29470 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29522 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Passoire inox De Buyer"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#8681
    #collection: Doctrine\Common\Collections\ArrayCollection {#8682 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#8680 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38323 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38325 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29529
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29523
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29461 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29470 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29522 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#8613 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#8681
      #collection: Doctrine\Common\Collections\ArrayCollection {#8682 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#8680 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38323 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38325 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29579
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29570 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29577 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29578 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#8613 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29582
  +variant: App\Entity\Product\ProductVariant {#8613 …}
  +price: "69,00\u{A0}"
  +originalPrice: "69,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9311 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12741 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9308 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29579
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29570 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29577 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29578 …}
    +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 3.87 ms
Input props
[
  "product" => App\Entity\Product\Product {#8687
    #id: 2341
    #code: "piston-a-patisserie-le-tube-de-buyer-3414"
    #attributes: Doctrine\ORM\PersistentCollection {#8697 …}
    #variants: Doctrine\ORM\PersistentCollection {#8713 …}
    #options: Doctrine\ORM\PersistentCollection {#8701 …}
    #associations: Doctrine\ORM\PersistentCollection {#8699 …}
    #createdAt: DateTime @1758632522 {#8683
      date: 2025-09-23 21:02:02.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632522 {#8684
      date: 2025-09-23 21:02:02.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8704 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8705
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8687}
        #id: 2341
        #name: "Piston à pâtisserie Le Tube DE BUYER"
        #slug: "piston-a-patisserie-le-tube-de-buyer-3414"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Plus facile &agrave; remplir qu'une poche.</li>\n
          <li>Travail pr&eacute;cis et net.</li>\n
          <li>Nettoyage facile.</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Val d'Ajol (Vosges)</strong></li>\n
          </ul></div><h1>Description Piston à pâtisserie Le Tube DE BUYER</h1><div class="col is-12"><p>Le Piston &agrave; p&acirc;tisserie Le Tube DE BUYER permet de doser facilement les p&acirc;tes, les cr&egrave;mes, les mousses... Il&nbsp;vous permettra de r&eacute;aliser un travail facile, rapide, pr&eacute;cis et soign&eacute; !</p></div><h1>Caractéristiques Piston à pâtisserie Le Tube DE BUYER</h1><div class="col is-12"><p>Capacit&eacute;: 0.75L. Molette r&eacute;glable. Poign&eacute;e ergonomique et manche confort anti-glisse. Livr&eacute; avec 2 douilles: une unie 8 mm et une cannel&eacute;e 8mm en tritan sans bpa + 1 kit sabl&eacute; 13 disques. Dimensions: Longueur: 38.4 cm. Largeur: 10.5 cm. Poid: 0.44 kg. Livr&eacute; avec une notice.</p></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8707 …}
    #channels: Doctrine\ORM\PersistentCollection {#8695 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8689 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8691 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8693 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28345
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28378 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28384 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28371 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29468
  +product: App\Entity\Product\Product {#8687
    #id: 2341
    #code: "piston-a-patisserie-le-tube-de-buyer-3414"
    #attributes: Doctrine\ORM\PersistentCollection {#8697 …}
    #variants: Doctrine\ORM\PersistentCollection {#8713 …}
    #options: Doctrine\ORM\PersistentCollection {#8701 …}
    #associations: Doctrine\ORM\PersistentCollection {#8699 …}
    #createdAt: DateTime @1758632522 {#8683
      date: 2025-09-23 21:02:02.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632522 {#8684
      date: 2025-09-23 21:02:02.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8704 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8705
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8687}
        #id: 2341
        #name: "Piston à pâtisserie Le Tube DE BUYER"
        #slug: "piston-a-patisserie-le-tube-de-buyer-3414"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Plus facile &agrave; remplir qu'une poche.</li>\n
          <li>Travail pr&eacute;cis et net.</li>\n
          <li>Nettoyage facile.</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Val d'Ajol (Vosges)</strong></li>\n
          </ul></div><h1>Description Piston à pâtisserie Le Tube DE BUYER</h1><div class="col is-12"><p>Le Piston &agrave; p&acirc;tisserie Le Tube DE BUYER permet de doser facilement les p&acirc;tes, les cr&egrave;mes, les mousses... Il&nbsp;vous permettra de r&eacute;aliser un travail facile, rapide, pr&eacute;cis et soign&eacute; !</p></div><h1>Caractéristiques Piston à pâtisserie Le Tube DE BUYER</h1><div class="col is-12"><p>Capacit&eacute;: 0.75L. Molette r&eacute;glable. Poign&eacute;e ergonomique et manche confort anti-glisse. Livr&eacute; avec 2 douilles: une unie 8 mm et une cannel&eacute;e 8mm en tritan sans bpa + 1 kit sabl&eacute; 13 disques. Dimensions: Longueur: 38.4 cm. Largeur: 10.5 cm. Poid: 0.44 kg. Livr&eacute; avec une notice.</p></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8707 …}
    #channels: Doctrine\ORM\PersistentCollection {#8695 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8689 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8691 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8693 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#8714 …}
  +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 {#28345
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28378 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28384 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28371 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.77 ms
Input props
[
  "product" => App\Entity\Product\Product {#8687
    #id: 2341
    #code: "piston-a-patisserie-le-tube-de-buyer-3414"
    #attributes: Doctrine\ORM\PersistentCollection {#8697 …}
    #variants: Doctrine\ORM\PersistentCollection {#8713 …}
    #options: Doctrine\ORM\PersistentCollection {#8701 …}
    #associations: Doctrine\ORM\PersistentCollection {#8699 …}
    #createdAt: DateTime @1758632522 {#8683
      date: 2025-09-23 21:02:02.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632522 {#8684
      date: 2025-09-23 21:02:02.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8704 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8705
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8687}
        #id: 2341
        #name: "Piston à pâtisserie Le Tube DE BUYER"
        #slug: "piston-a-patisserie-le-tube-de-buyer-3414"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Plus facile &agrave; remplir qu'une poche.</li>\n
          <li>Travail pr&eacute;cis et net.</li>\n
          <li>Nettoyage facile.</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Val d'Ajol (Vosges)</strong></li>\n
          </ul></div><h1>Description Piston à pâtisserie Le Tube DE BUYER</h1><div class="col is-12"><p>Le Piston &agrave; p&acirc;tisserie Le Tube DE BUYER permet de doser facilement les p&acirc;tes, les cr&egrave;mes, les mousses... Il&nbsp;vous permettra de r&eacute;aliser un travail facile, rapide, pr&eacute;cis et soign&eacute; !</p></div><h1>Caractéristiques Piston à pâtisserie Le Tube DE BUYER</h1><div class="col is-12"><p>Capacit&eacute;: 0.75L. Molette r&eacute;glable. Poign&eacute;e ergonomique et manche confort anti-glisse. Livr&eacute; avec 2 douilles: une unie 8 mm et une cannel&eacute;e 8mm en tritan sans bpa + 1 kit sabl&eacute; 13 disques. Dimensions: Longueur: 38.4 cm. Largeur: 10.5 cm. Poid: 0.44 kg. Livr&eacute; avec une notice.</p></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8707 …}
    #channels: Doctrine\ORM\PersistentCollection {#8695 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8689 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8691 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8693 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Piston à pâtisserie Le Tube DE BUYER"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29699
  -props: [
    "product" => App\Entity\Product\Product {#8687
      #id: 2341
      #code: "piston-a-patisserie-le-tube-de-buyer-3414"
      #attributes: Doctrine\ORM\PersistentCollection {#8697 …}
      #variants: Doctrine\ORM\PersistentCollection {#8713 …}
      #options: Doctrine\ORM\PersistentCollection {#8701 …}
      #associations: Doctrine\ORM\PersistentCollection {#8699 …}
      #createdAt: DateTime @1758632522 {#8683
        date: 2025-09-23 21:02:02.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632522 {#8684
        date: 2025-09-23 21:02:02.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8704 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8705
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8687}
          #id: 2341
          #name: "Piston à pâtisserie Le Tube DE BUYER"
          #slug: "piston-a-patisserie-le-tube-de-buyer-3414"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Plus facile &agrave; remplir qu'une poche.</li>\n
            <li>Travail pr&eacute;cis et net.</li>\n
            <li>Nettoyage facile.</li>\n
            <li><strong>Fabrication fran&ccedil;aise. Val d'Ajol (Vosges)</strong></li>\n
            </ul></div><h1>Description Piston à pâtisserie Le Tube DE BUYER</h1><div class="col is-12"><p>Le Piston &agrave; p&acirc;tisserie Le Tube DE BUYER permet de doser facilement les p&acirc;tes, les cr&egrave;mes, les mousses... Il&nbsp;vous permettra de r&eacute;aliser un travail facile, rapide, pr&eacute;cis et soign&eacute; !</p></div><h1>Caractéristiques Piston à pâtisserie Le Tube DE BUYER</h1><div class="col is-12"><p>Capacit&eacute;: 0.75L. Molette r&eacute;glable. Poign&eacute;e ergonomique et manche confort anti-glisse. Livr&eacute; avec 2 douilles: une unie 8 mm et une cannel&eacute;e 8mm en tritan sans bpa + 1 kit sabl&eacute; 13 disques. Dimensions: Longueur: 38.4 cm. Largeur: 10.5 cm. Poid: 0.44 kg. Livr&eacute; avec une notice.</p></div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8707 …}
      #channels: Doctrine\ORM\PersistentCollection {#8695 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8689 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8691 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8693 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.64 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29754
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29683 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29692 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29753 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#8714 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#8724
    #collection: Doctrine\Common\Collections\ArrayCollection {#8725 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#8723 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38337 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38339 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29754
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29683 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29692 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29753 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Piston à pâtisserie Le Tube DE BUYER"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#8724
    #collection: Doctrine\Common\Collections\ArrayCollection {#8725 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#8723 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38337 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38339 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29760
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29754
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29683 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29692 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29753 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#8714 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#8724
      #collection: Doctrine\Common\Collections\ArrayCollection {#8725 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#8723 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38337 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38339 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.15 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29810
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29801 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29808 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29809 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#8714 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29813
  +variant: App\Entity\Product\ProductVariant {#8714 …}
  +price: "78,00\u{A0}"
  +originalPrice: "94,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9311 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12741 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9308 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29810
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29801 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29808 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29809 …}
    +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 3.95 ms
Input props
[
  "product" => App\Entity\Product\Product {#8730
    #id: 1725
    #code: "la-cheese-box-emile-henry-8125"
    #attributes: Doctrine\ORM\PersistentCollection {#8740 …}
    #variants: Doctrine\ORM\PersistentCollection {#8756 …}
    #options: Doctrine\ORM\PersistentCollection {#8744 …}
    #associations: Doctrine\ORM\PersistentCollection {#8742 …}
    #createdAt: DateTime @1758632400 {#8726
      date: 2025-09-23 21:00:00.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632400 {#8727
      date: 2025-09-23 21:00:00.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8747 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8748
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8730}
        #id: 1725
        #name: "La Cheese Box Emile Henry"
        #slug: "la-cheese-box-emile-henry-8125"
        #description: """
          <div class="col is-12"><ul>\n
          <li>C&eacute;ramique de haute qualit&eacute;.&nbsp;</li>\n
          <li>Couvercle servant en m&ecirc;me de plateau.</li>\n
          <li>Grand stockage.&nbsp;</li>\n
          <li><strong>Fabriqu&eacute;e en France.&nbsp;</strong></li>\n
          </ul></div><h1>Description La Cheese Box Emile Henry</h1><div class="col is-12">La Cheese Box Emile Henry est r&eacute;alis&eacute;e en c&eacute;ramique de haute qualit&eacute;, elle permet de conserver tous vos fromages. Son couvercle peut devenir un plateau de service une fois retourn&eacute;, il permet de poser et de servir les fromages. &Eacute;l&eacute;gante, cette bo&icirc;te est id&eacute;ale pour la conservation au frais de tous vos fromages.</div><h1>Caractéristiques La Cheese Box Emile Henry</h1><div class="col is-12"><ul>\n
          <li>C&eacute;ramique haute r&eacute;sistance.&nbsp;</li>\n
          <li>Conserver et servir.&nbsp;</li>\n
          <li>Grande contenance : 3,5 L.&nbsp;</li>\n
          <li>Poign&eacute;es lat&eacute;rales.&nbsp;</li>\n
          <li>Dimensions : L 30,5 x l 20,5 x H 11,2 cm.&nbsp;</li>\n
          <li>Poids : 2,5 kg.&nbsp;</li>\n
          <li>Fabrication fran&ccedil;aise.&nbsp;</li>\n
          </ul></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 {#8750 …}
    #channels: Doctrine\ORM\PersistentCollection {#8738 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8732 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8734 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8736 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28345
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28378 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28384 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28371 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29690
  +product: App\Entity\Product\Product {#8730
    #id: 1725
    #code: "la-cheese-box-emile-henry-8125"
    #attributes: Doctrine\ORM\PersistentCollection {#8740 …}
    #variants: Doctrine\ORM\PersistentCollection {#8756 …}
    #options: Doctrine\ORM\PersistentCollection {#8744 …}
    #associations: Doctrine\ORM\PersistentCollection {#8742 …}
    #createdAt: DateTime @1758632400 {#8726
      date: 2025-09-23 21:00:00.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632400 {#8727
      date: 2025-09-23 21:00:00.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8747 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8748
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8730}
        #id: 1725
        #name: "La Cheese Box Emile Henry"
        #slug: "la-cheese-box-emile-henry-8125"
        #description: """
          <div class="col is-12"><ul>\n
          <li>C&eacute;ramique de haute qualit&eacute;.&nbsp;</li>\n
          <li>Couvercle servant en m&ecirc;me de plateau.</li>\n
          <li>Grand stockage.&nbsp;</li>\n
          <li><strong>Fabriqu&eacute;e en France.&nbsp;</strong></li>\n
          </ul></div><h1>Description La Cheese Box Emile Henry</h1><div class="col is-12">La Cheese Box Emile Henry est r&eacute;alis&eacute;e en c&eacute;ramique de haute qualit&eacute;, elle permet de conserver tous vos fromages. Son couvercle peut devenir un plateau de service une fois retourn&eacute;, il permet de poser et de servir les fromages. &Eacute;l&eacute;gante, cette bo&icirc;te est id&eacute;ale pour la conservation au frais de tous vos fromages.</div><h1>Caractéristiques La Cheese Box Emile Henry</h1><div class="col is-12"><ul>\n
          <li>C&eacute;ramique haute r&eacute;sistance.&nbsp;</li>\n
          <li>Conserver et servir.&nbsp;</li>\n
          <li>Grande contenance : 3,5 L.&nbsp;</li>\n
          <li>Poign&eacute;es lat&eacute;rales.&nbsp;</li>\n
          <li>Dimensions : L 30,5 x l 20,5 x H 11,2 cm.&nbsp;</li>\n
          <li>Poids : 2,5 kg.&nbsp;</li>\n
          <li>Fabrication fran&ccedil;aise.&nbsp;</li>\n
          </ul></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 {#8750 …}
    #channels: Doctrine\ORM\PersistentCollection {#8738 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8732 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8734 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8736 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#8757 …}
  +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 {#28345
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28378 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28384 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28371 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.84 ms
Input props
[
  "product" => App\Entity\Product\Product {#8730
    #id: 1725
    #code: "la-cheese-box-emile-henry-8125"
    #attributes: Doctrine\ORM\PersistentCollection {#8740 …}
    #variants: Doctrine\ORM\PersistentCollection {#8756 …}
    #options: Doctrine\ORM\PersistentCollection {#8744 …}
    #associations: Doctrine\ORM\PersistentCollection {#8742 …}
    #createdAt: DateTime @1758632400 {#8726
      date: 2025-09-23 21:00:00.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632400 {#8727
      date: 2025-09-23 21:00:00.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8747 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8748
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8730}
        #id: 1725
        #name: "La Cheese Box Emile Henry"
        #slug: "la-cheese-box-emile-henry-8125"
        #description: """
          <div class="col is-12"><ul>\n
          <li>C&eacute;ramique de haute qualit&eacute;.&nbsp;</li>\n
          <li>Couvercle servant en m&ecirc;me de plateau.</li>\n
          <li>Grand stockage.&nbsp;</li>\n
          <li><strong>Fabriqu&eacute;e en France.&nbsp;</strong></li>\n
          </ul></div><h1>Description La Cheese Box Emile Henry</h1><div class="col is-12">La Cheese Box Emile Henry est r&eacute;alis&eacute;e en c&eacute;ramique de haute qualit&eacute;, elle permet de conserver tous vos fromages. Son couvercle peut devenir un plateau de service une fois retourn&eacute;, il permet de poser et de servir les fromages. &Eacute;l&eacute;gante, cette bo&icirc;te est id&eacute;ale pour la conservation au frais de tous vos fromages.</div><h1>Caractéristiques La Cheese Box Emile Henry</h1><div class="col is-12"><ul>\n
          <li>C&eacute;ramique haute r&eacute;sistance.&nbsp;</li>\n
          <li>Conserver et servir.&nbsp;</li>\n
          <li>Grande contenance : 3,5 L.&nbsp;</li>\n
          <li>Poign&eacute;es lat&eacute;rales.&nbsp;</li>\n
          <li>Dimensions : L 30,5 x l 20,5 x H 11,2 cm.&nbsp;</li>\n
          <li>Poids : 2,5 kg.&nbsp;</li>\n
          <li>Fabrication fran&ccedil;aise.&nbsp;</li>\n
          </ul></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 {#8750 …}
    #channels: Doctrine\ORM\PersistentCollection {#8738 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8732 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8734 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8736 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "La Cheese Box Emile Henry"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29930
  -props: [
    "product" => App\Entity\Product\Product {#8730
      #id: 1725
      #code: "la-cheese-box-emile-henry-8125"
      #attributes: Doctrine\ORM\PersistentCollection {#8740 …}
      #variants: Doctrine\ORM\PersistentCollection {#8756 …}
      #options: Doctrine\ORM\PersistentCollection {#8744 …}
      #associations: Doctrine\ORM\PersistentCollection {#8742 …}
      #createdAt: DateTime @1758632400 {#8726
        date: 2025-09-23 21:00:00.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632400 {#8727
        date: 2025-09-23 21:00:00.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8747 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8748
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8730}
          #id: 1725
          #name: "La Cheese Box Emile Henry"
          #slug: "la-cheese-box-emile-henry-8125"
          #description: """
            <div class="col is-12"><ul>\n
            <li>C&eacute;ramique de haute qualit&eacute;.&nbsp;</li>\n
            <li>Couvercle servant en m&ecirc;me de plateau.</li>\n
            <li>Grand stockage.&nbsp;</li>\n
            <li><strong>Fabriqu&eacute;e en France.&nbsp;</strong></li>\n
            </ul></div><h1>Description La Cheese Box Emile Henry</h1><div class="col is-12">La Cheese Box Emile Henry est r&eacute;alis&eacute;e en c&eacute;ramique de haute qualit&eacute;, elle permet de conserver tous vos fromages. Son couvercle peut devenir un plateau de service une fois retourn&eacute;, il permet de poser et de servir les fromages. &Eacute;l&eacute;gante, cette bo&icirc;te est id&eacute;ale pour la conservation au frais de tous vos fromages.</div><h1>Caractéristiques La Cheese Box Emile Henry</h1><div class="col is-12"><ul>\n
            <li>C&eacute;ramique haute r&eacute;sistance.&nbsp;</li>\n
            <li>Conserver et servir.&nbsp;</li>\n
            <li>Grande contenance : 3,5 L.&nbsp;</li>\n
            <li>Poign&eacute;es lat&eacute;rales.&nbsp;</li>\n
            <li>Dimensions : L 30,5 x l 20,5 x H 11,2 cm.&nbsp;</li>\n
            <li>Poids : 2,5 kg.&nbsp;</li>\n
            <li>Fabrication fran&ccedil;aise.&nbsp;</li>\n
            </ul></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 {#8750 …}
      #channels: Doctrine\ORM\PersistentCollection {#8738 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8732 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8734 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8736 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.60 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29991
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29914 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29923 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29990 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#8757 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#8767
    #collection: Doctrine\Common\Collections\ArrayCollection {#8768 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#8766 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38351 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38353 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29991
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29914 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29923 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29990 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "La Cheese Box Emile Henry"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#8767
    #collection: Doctrine\Common\Collections\ArrayCollection {#8768 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#8766 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38351 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38353 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29997
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29991
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29914 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29923 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29990 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#8757 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#8767
      #collection: Doctrine\Common\Collections\ArrayCollection {#8768 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#8766 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38351 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38353 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30047
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30038 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30045 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30046 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#8757 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30050
  +variant: App\Entity\Product\ProductVariant {#8757 …}
  +price: "79,00\u{A0}"
  +originalPrice: "79,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9311 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12741 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9308 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30047
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30038 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30045 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30046 …}
    +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 3.87 ms
Input props
[
  "product" => App\Entity\Product\Product {#8801
    #id: 3169
    #code: "pelle-balayette-grand-complet-andree-jardin-6068"
    #attributes: Doctrine\ORM\PersistentCollection {#8811 …}
    #variants: Doctrine\ORM\PersistentCollection {#8827 …}
    #options: Doctrine\ORM\PersistentCollection {#8815 …}
    #associations: Doctrine\ORM\PersistentCollection {#8813 …}
    #createdAt: DateTime @1758632807 {#8769
      date: 2025-09-23 21:06:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632807 {#8770
      date: 2025-09-23 21:06:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8818 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8819
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8801}
        #id: 3169
        #name: "Pelle + Balayette Grand Complet Andrée Jardin"
        #slug: "pelle-balayette-grand-complet-andree-jardin-6068"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Id&eacute;al pour les petits espaces.</li>\n
          <li>El&eacute;gant et fonctionnel.</li>\n
          <li><strong>Fabriqu&eacute;e en France.</strong></li>\n
          </ul></div><h1>Descriptif Pelle + Balayette Grand Complet Andrée Jardin</h1><div class="col is-12">Toujours &agrave; port&eacute;e de main et &agrave; proximit&eacute; de votre plan de travail, Le Grand Complet Andr&eacute;e Jardin saura vous assister dans les petits accidents de la vie. Avec sa hauteur de 90 cm, il n'est plus n&eacute;cessaire de se pencher pour s'en saisir et s'en servir.</div><h1>Caractéristiques Pelle + Balayette Grand Complet Andrée Jardin</h1><div class="col is-12">- Bois de h&ecirc;tre laqu&eacute;.<br />- Fibres de crin et synth&eacute;tiques.<br />- T&ocirc;le laqu&eacute;e.<br />- Dimensions : 22 x 20 x 90 cm.<br />- Ref 3130 : pelle et manche noire.<br />- Ref 3150 : pelle et manche cr&egrave;me.</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 {#8821 …}
    #channels: Doctrine\ORM\PersistentCollection {#8809 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8803 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8805 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8807 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28345
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28378 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28384 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28371 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29921
  +product: App\Entity\Product\Product {#8801
    #id: 3169
    #code: "pelle-balayette-grand-complet-andree-jardin-6068"
    #attributes: Doctrine\ORM\PersistentCollection {#8811 …}
    #variants: Doctrine\ORM\PersistentCollection {#8827 …}
    #options: Doctrine\ORM\PersistentCollection {#8815 …}
    #associations: Doctrine\ORM\PersistentCollection {#8813 …}
    #createdAt: DateTime @1758632807 {#8769
      date: 2025-09-23 21:06:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632807 {#8770
      date: 2025-09-23 21:06:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8818 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8819
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8801}
        #id: 3169
        #name: "Pelle + Balayette Grand Complet Andrée Jardin"
        #slug: "pelle-balayette-grand-complet-andree-jardin-6068"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Id&eacute;al pour les petits espaces.</li>\n
          <li>El&eacute;gant et fonctionnel.</li>\n
          <li><strong>Fabriqu&eacute;e en France.</strong></li>\n
          </ul></div><h1>Descriptif Pelle + Balayette Grand Complet Andrée Jardin</h1><div class="col is-12">Toujours &agrave; port&eacute;e de main et &agrave; proximit&eacute; de votre plan de travail, Le Grand Complet Andr&eacute;e Jardin saura vous assister dans les petits accidents de la vie. Avec sa hauteur de 90 cm, il n'est plus n&eacute;cessaire de se pencher pour s'en saisir et s'en servir.</div><h1>Caractéristiques Pelle + Balayette Grand Complet Andrée Jardin</h1><div class="col is-12">- Bois de h&ecirc;tre laqu&eacute;.<br />- Fibres de crin et synth&eacute;tiques.<br />- T&ocirc;le laqu&eacute;e.<br />- Dimensions : 22 x 20 x 90 cm.<br />- Ref 3130 : pelle et manche noire.<br />- Ref 3150 : pelle et manche cr&egrave;me.</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 {#8821 …}
    #channels: Doctrine\ORM\PersistentCollection {#8809 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8803 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8805 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8807 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#8828 …}
  +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 {#28345
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28378 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28384 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28371 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.67 ms
Input props
[
  "product" => App\Entity\Product\Product {#8801
    #id: 3169
    #code: "pelle-balayette-grand-complet-andree-jardin-6068"
    #attributes: Doctrine\ORM\PersistentCollection {#8811 …}
    #variants: Doctrine\ORM\PersistentCollection {#8827 …}
    #options: Doctrine\ORM\PersistentCollection {#8815 …}
    #associations: Doctrine\ORM\PersistentCollection {#8813 …}
    #createdAt: DateTime @1758632807 {#8769
      date: 2025-09-23 21:06:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632807 {#8770
      date: 2025-09-23 21:06:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8818 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8819
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8801}
        #id: 3169
        #name: "Pelle + Balayette Grand Complet Andrée Jardin"
        #slug: "pelle-balayette-grand-complet-andree-jardin-6068"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Id&eacute;al pour les petits espaces.</li>\n
          <li>El&eacute;gant et fonctionnel.</li>\n
          <li><strong>Fabriqu&eacute;e en France.</strong></li>\n
          </ul></div><h1>Descriptif Pelle + Balayette Grand Complet Andrée Jardin</h1><div class="col is-12">Toujours &agrave; port&eacute;e de main et &agrave; proximit&eacute; de votre plan de travail, Le Grand Complet Andr&eacute;e Jardin saura vous assister dans les petits accidents de la vie. Avec sa hauteur de 90 cm, il n'est plus n&eacute;cessaire de se pencher pour s'en saisir et s'en servir.</div><h1>Caractéristiques Pelle + Balayette Grand Complet Andrée Jardin</h1><div class="col is-12">- Bois de h&ecirc;tre laqu&eacute;.<br />- Fibres de crin et synth&eacute;tiques.<br />- T&ocirc;le laqu&eacute;e.<br />- Dimensions : 22 x 20 x 90 cm.<br />- Ref 3130 : pelle et manche noire.<br />- Ref 3150 : pelle et manche cr&egrave;me.</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 {#8821 …}
    #channels: Doctrine\ORM\PersistentCollection {#8809 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8803 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8805 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8807 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Pelle + Balayette Grand Complet Andrée Jardin"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30167
  -props: [
    "product" => App\Entity\Product\Product {#8801
      #id: 3169
      #code: "pelle-balayette-grand-complet-andree-jardin-6068"
      #attributes: Doctrine\ORM\PersistentCollection {#8811 …}
      #variants: Doctrine\ORM\PersistentCollection {#8827 …}
      #options: Doctrine\ORM\PersistentCollection {#8815 …}
      #associations: Doctrine\ORM\PersistentCollection {#8813 …}
      #createdAt: DateTime @1758632807 {#8769
        date: 2025-09-23 21:06:47.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632807 {#8770
        date: 2025-09-23 21:06:47.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8818 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8819
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8801}
          #id: 3169
          #name: "Pelle + Balayette Grand Complet Andrée Jardin"
          #slug: "pelle-balayette-grand-complet-andree-jardin-6068"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Id&eacute;al pour les petits espaces.</li>\n
            <li>El&eacute;gant et fonctionnel.</li>\n
            <li><strong>Fabriqu&eacute;e en France.</strong></li>\n
            </ul></div><h1>Descriptif Pelle + Balayette Grand Complet Andrée Jardin</h1><div class="col is-12">Toujours &agrave; port&eacute;e de main et &agrave; proximit&eacute; de votre plan de travail, Le Grand Complet Andr&eacute;e Jardin saura vous assister dans les petits accidents de la vie. Avec sa hauteur de 90 cm, il n'est plus n&eacute;cessaire de se pencher pour s'en saisir et s'en servir.</div><h1>Caractéristiques Pelle + Balayette Grand Complet Andrée Jardin</h1><div class="col is-12">- Bois de h&ecirc;tre laqu&eacute;.<br />- Fibres de crin et synth&eacute;tiques.<br />- T&ocirc;le laqu&eacute;e.<br />- Dimensions : 22 x 20 x 90 cm.<br />- Ref 3130 : pelle et manche noire.<br />- Ref 3150 : pelle et manche cr&egrave;me.</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 {#8821 …}
      #channels: Doctrine\ORM\PersistentCollection {#8809 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8803 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8805 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8807 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.60 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30213
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30151 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30160 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30212 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#8828 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#8838
    #collection: Doctrine\Common\Collections\ArrayCollection {#8839 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#8837 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38365 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38367 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30213
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30151 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30160 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30212 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Pelle + Balayette Grand Complet Andrée Jardin"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#8838
    #collection: Doctrine\Common\Collections\ArrayCollection {#8839 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#8837 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38365 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38367 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30219
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30213
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30151 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30160 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30212 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#8828 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#8838
      #collection: Doctrine\Common\Collections\ArrayCollection {#8839 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#8837 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38365 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38367 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.17 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30269
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30260 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30267 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30268 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#8828 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30272
  +variant: App\Entity\Product\ProductVariant {#8828 …}
  +price: "85,00\u{A0}"
  +originalPrice: "85,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9311 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12741 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9308 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30269
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30260 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30267 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30268 …}
    +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 3.62 ms
Input props
[
  "product" => App\Entity\Product\Product {#8858
    #id: 2572
    #code: "tire-bouchon-electrique-rechargeable-elis-reverse-peugeot-7932"
    #attributes: Doctrine\ORM\PersistentCollection {#8865 …}
    #variants: Doctrine\ORM\PersistentCollection {#8878 …}
    #options: Doctrine\ORM\PersistentCollection {#8869 …}
    #associations: Doctrine\ORM\PersistentCollection {#8867 …}
    #createdAt: DateTime @1758632577 {#8841
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8840
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8872 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8873
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8858}
        #id: 2572
        #name: "Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot"
        #slug: "tire-bouchon-electrique-rechargeable-elis-reverse-peugeot-7932"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Automatique.</li>\n
          <li>Rechargeable.</li>\n
          <li>Fabrication Fran&ccedil;aise.</li>\n
          </ul></div><h1>Descriptif Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot</h1><div class="col is-12">Le Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot conjugue &agrave; la perfection la chaleur du bois et l'innovation technologique. Il s'adapte &agrave; tous les goulots et &agrave; tous les bouchons qu'ils soient en li&egrave;ge ou en plastique. R&eacute;alis&eacute; en bois de H&ecirc;tre, son corps a &eacute;t&eacute; fa&ccedil;onn&eacute; avec le plus grand soin en France. Son fonctionnement est enti&egrave;rement automatique, une simple pression sur le goulot d&eacute;bouche la bouteille et une rotation de 90&deg; de l'ustensile &eacute;jecte le bouchon. Livr&eacute; avec un coupe-capsule et un chargeur, ses batteries Lithium-ion assurent en moyenne plus de 50 d&eacute;bouchages en une seule charge.</div><h1>Caractéristiques Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot</h1><div class="col is-12">- Automatique.<br />- Rechargeable.<br />- Bois de H&ecirc;tre.<br />- Taille : 21 cm.<br />- Livr&eacute; avec coupe-capsule et chargeur.<br />- Batteries Lithium ion.<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 {#8875 …}
    #channels: Doctrine\ORM\PersistentCollection {#8863 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8088 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8859 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8861 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28345
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28378 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28384 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28371 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30158
  +product: App\Entity\Product\Product {#8858
    #id: 2572
    #code: "tire-bouchon-electrique-rechargeable-elis-reverse-peugeot-7932"
    #attributes: Doctrine\ORM\PersistentCollection {#8865 …}
    #variants: Doctrine\ORM\PersistentCollection {#8878 …}
    #options: Doctrine\ORM\PersistentCollection {#8869 …}
    #associations: Doctrine\ORM\PersistentCollection {#8867 …}
    #createdAt: DateTime @1758632577 {#8841
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8840
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8872 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8873
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8858}
        #id: 2572
        #name: "Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot"
        #slug: "tire-bouchon-electrique-rechargeable-elis-reverse-peugeot-7932"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Automatique.</li>\n
          <li>Rechargeable.</li>\n
          <li>Fabrication Fran&ccedil;aise.</li>\n
          </ul></div><h1>Descriptif Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot</h1><div class="col is-12">Le Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot conjugue &agrave; la perfection la chaleur du bois et l'innovation technologique. Il s'adapte &agrave; tous les goulots et &agrave; tous les bouchons qu'ils soient en li&egrave;ge ou en plastique. R&eacute;alis&eacute; en bois de H&ecirc;tre, son corps a &eacute;t&eacute; fa&ccedil;onn&eacute; avec le plus grand soin en France. Son fonctionnement est enti&egrave;rement automatique, une simple pression sur le goulot d&eacute;bouche la bouteille et une rotation de 90&deg; de l'ustensile &eacute;jecte le bouchon. Livr&eacute; avec un coupe-capsule et un chargeur, ses batteries Lithium-ion assurent en moyenne plus de 50 d&eacute;bouchages en une seule charge.</div><h1>Caractéristiques Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot</h1><div class="col is-12">- Automatique.<br />- Rechargeable.<br />- Bois de H&ecirc;tre.<br />- Taille : 21 cm.<br />- Livr&eacute; avec coupe-capsule et chargeur.<br />- Batteries Lithium ion.<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 {#8875 …}
    #channels: Doctrine\ORM\PersistentCollection {#8863 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8088 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8859 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8861 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#8879 …}
  +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 {#28345
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28378 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28384 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28371 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.71 ms
Input props
[
  "product" => App\Entity\Product\Product {#8858
    #id: 2572
    #code: "tire-bouchon-electrique-rechargeable-elis-reverse-peugeot-7932"
    #attributes: Doctrine\ORM\PersistentCollection {#8865 …}
    #variants: Doctrine\ORM\PersistentCollection {#8878 …}
    #options: Doctrine\ORM\PersistentCollection {#8869 …}
    #associations: Doctrine\ORM\PersistentCollection {#8867 …}
    #createdAt: DateTime @1758632577 {#8841
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8840
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8872 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8873
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8858}
        #id: 2572
        #name: "Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot"
        #slug: "tire-bouchon-electrique-rechargeable-elis-reverse-peugeot-7932"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Automatique.</li>\n
          <li>Rechargeable.</li>\n
          <li>Fabrication Fran&ccedil;aise.</li>\n
          </ul></div><h1>Descriptif Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot</h1><div class="col is-12">Le Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot conjugue &agrave; la perfection la chaleur du bois et l'innovation technologique. Il s'adapte &agrave; tous les goulots et &agrave; tous les bouchons qu'ils soient en li&egrave;ge ou en plastique. R&eacute;alis&eacute; en bois de H&ecirc;tre, son corps a &eacute;t&eacute; fa&ccedil;onn&eacute; avec le plus grand soin en France. Son fonctionnement est enti&egrave;rement automatique, une simple pression sur le goulot d&eacute;bouche la bouteille et une rotation de 90&deg; de l'ustensile &eacute;jecte le bouchon. Livr&eacute; avec un coupe-capsule et un chargeur, ses batteries Lithium-ion assurent en moyenne plus de 50 d&eacute;bouchages en une seule charge.</div><h1>Caractéristiques Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot</h1><div class="col is-12">- Automatique.<br />- Rechargeable.<br />- Bois de H&ecirc;tre.<br />- Taille : 21 cm.<br />- Livr&eacute; avec coupe-capsule et chargeur.<br />- Batteries Lithium ion.<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 {#8875 …}
    #channels: Doctrine\ORM\PersistentCollection {#8863 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8088 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8859 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8861 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30389
  -props: [
    "product" => App\Entity\Product\Product {#8858
      #id: 2572
      #code: "tire-bouchon-electrique-rechargeable-elis-reverse-peugeot-7932"
      #attributes: Doctrine\ORM\PersistentCollection {#8865 …}
      #variants: Doctrine\ORM\PersistentCollection {#8878 …}
      #options: Doctrine\ORM\PersistentCollection {#8869 …}
      #associations: Doctrine\ORM\PersistentCollection {#8867 …}
      #createdAt: DateTime @1758632577 {#8841
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632577 {#8840
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8872 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8873
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8858}
          #id: 2572
          #name: "Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot"
          #slug: "tire-bouchon-electrique-rechargeable-elis-reverse-peugeot-7932"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Automatique.</li>\n
            <li>Rechargeable.</li>\n
            <li>Fabrication Fran&ccedil;aise.</li>\n
            </ul></div><h1>Descriptif Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot</h1><div class="col is-12">Le Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot conjugue &agrave; la perfection la chaleur du bois et l'innovation technologique. Il s'adapte &agrave; tous les goulots et &agrave; tous les bouchons qu'ils soient en li&egrave;ge ou en plastique. R&eacute;alis&eacute; en bois de H&ecirc;tre, son corps a &eacute;t&eacute; fa&ccedil;onn&eacute; avec le plus grand soin en France. Son fonctionnement est enti&egrave;rement automatique, une simple pression sur le goulot d&eacute;bouche la bouteille et une rotation de 90&deg; de l'ustensile &eacute;jecte le bouchon. Livr&eacute; avec un coupe-capsule et un chargeur, ses batteries Lithium-ion assurent en moyenne plus de 50 d&eacute;bouchages en une seule charge.</div><h1>Caractéristiques Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot</h1><div class="col is-12">- Automatique.<br />- Rechargeable.<br />- Bois de H&ecirc;tre.<br />- Taille : 21 cm.<br />- Livr&eacute; avec coupe-capsule et chargeur.<br />- Batteries Lithium ion.<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 {#8875 …}
      #channels: Doctrine\ORM\PersistentCollection {#8863 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8088 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8859 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8861 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.59 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30444
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30373 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30382 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30443 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#8879 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#8889
    #collection: Doctrine\Common\Collections\ArrayCollection {#8890 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#8888 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38379 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38381 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30444
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30373 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30382 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30443 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#8889
    #collection: Doctrine\Common\Collections\ArrayCollection {#8890 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#8888 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38379 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38381 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30450
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30444
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30373 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30382 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30443 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#8879 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#8889
      #collection: Doctrine\Common\Collections\ArrayCollection {#8890 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#8888 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38379 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38381 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30500
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30491 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30498 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30499 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#8879 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30503
  +variant: App\Entity\Product\ProductVariant {#8879 …}
  +price: "89,00\u{A0}"
  +originalPrice: "99,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9311 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12741 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9308 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30500
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30491 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30498 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30499 …}
    +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 3.88 ms
Input props
[
  "product" => App\Entity\Product\Product {#8895
    #id: 1098
    #code: "vinaigrier-emile-henry-8203"
    #attributes: Doctrine\ORM\PersistentCollection {#8905 …}
    #variants: Doctrine\ORM\PersistentCollection {#8921 …}
    #options: Doctrine\ORM\PersistentCollection {#8909 …}
    #associations: Doctrine\ORM\PersistentCollection {#8907 …}
    #createdAt: DateTime @1758632308 {#8891
      date: 2025-09-23 20:58:28.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632308 {#8892
      date: 2025-09-23 20:58:28.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8912 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8913
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8895}
        #id: 1098
        #name: "Vinaigrier Emile Henry"
        #slug: "vinaigrier-emile-henry-8203"
        #description: """
          <div class="col is-12"><ul>\n
          <li>C&eacute;ramique &eacute;maill&eacute;e exempte de plomb.</li>\n
          <li>Compatible four, micro-ondes, lave-vaisselle et cong&eacute;lateur.</li>\n
          <li><strong>Fabriqu&eacute; en France.</strong></li>\n
          </ul></div><h1>Descriptif Vinaigrier Emile Henry</h1><div class="col is-12">Quoi de plus simple que de faire son propre vinaigre avec le Vinaigrier Emile Henry r&eacute;alis&eacute; en c&eacute;ramique &eacute;maill&eacute; r&eacute;sistant &agrave; l'acidit&eacute;. Il suffit d'y placer une m&egrave;re de vinaigre et de l'alimenter avec des fonds de bouteilles de vin pour pouvoir d&eacute;guster votre vinaigre en quelques semaines. Le Vinaigrier Emile Henry poss&egrave;de un couvercle amovible pour le remplir et acc&eacute;der &agrave; la m&egrave;re facilement, un robinet en bois mont&eacute; sur un bouchon en li&egrave;ge et une coupelle de 10 cm de diam&egrave;tre pour recueillir la juste dose de vinaigre n&eacute;cessaire &agrave; votre pr&eacute;paration. Le vinaigrier, le couvercle et la coupelle se nettoient facilement au lave-vaisselle.</div><h1>Caractéristiques Vinaigrier Emile Henry</h1><div class="col is-12">- C&eacute;ramique &eacute;maill&eacute;e exempte de plomb.<br />- Dimensions : 15 x 15 x 19 cm.<br />- Capacit&eacute; : 2,5 litres.<br />- Garantie 10 ans (sauf casse accidentelle).<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 {#8915 …}
    #channels: Doctrine\ORM\PersistentCollection {#8903 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8897 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8899 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8901 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28345
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28378 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28384 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28371 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30380
  +product: App\Entity\Product\Product {#8895
    #id: 1098
    #code: "vinaigrier-emile-henry-8203"
    #attributes: Doctrine\ORM\PersistentCollection {#8905 …}
    #variants: Doctrine\ORM\PersistentCollection {#8921 …}
    #options: Doctrine\ORM\PersistentCollection {#8909 …}
    #associations: Doctrine\ORM\PersistentCollection {#8907 …}
    #createdAt: DateTime @1758632308 {#8891
      date: 2025-09-23 20:58:28.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632308 {#8892
      date: 2025-09-23 20:58:28.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8912 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8913
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8895}
        #id: 1098
        #name: "Vinaigrier Emile Henry"
        #slug: "vinaigrier-emile-henry-8203"
        #description: """
          <div class="col is-12"><ul>\n
          <li>C&eacute;ramique &eacute;maill&eacute;e exempte de plomb.</li>\n
          <li>Compatible four, micro-ondes, lave-vaisselle et cong&eacute;lateur.</li>\n
          <li><strong>Fabriqu&eacute; en France.</strong></li>\n
          </ul></div><h1>Descriptif Vinaigrier Emile Henry</h1><div class="col is-12">Quoi de plus simple que de faire son propre vinaigre avec le Vinaigrier Emile Henry r&eacute;alis&eacute; en c&eacute;ramique &eacute;maill&eacute; r&eacute;sistant &agrave; l'acidit&eacute;. Il suffit d'y placer une m&egrave;re de vinaigre et de l'alimenter avec des fonds de bouteilles de vin pour pouvoir d&eacute;guster votre vinaigre en quelques semaines. Le Vinaigrier Emile Henry poss&egrave;de un couvercle amovible pour le remplir et acc&eacute;der &agrave; la m&egrave;re facilement, un robinet en bois mont&eacute; sur un bouchon en li&egrave;ge et une coupelle de 10 cm de diam&egrave;tre pour recueillir la juste dose de vinaigre n&eacute;cessaire &agrave; votre pr&eacute;paration. Le vinaigrier, le couvercle et la coupelle se nettoient facilement au lave-vaisselle.</div><h1>Caractéristiques Vinaigrier Emile Henry</h1><div class="col is-12">- C&eacute;ramique &eacute;maill&eacute;e exempte de plomb.<br />- Dimensions : 15 x 15 x 19 cm.<br />- Capacit&eacute; : 2,5 litres.<br />- Garantie 10 ans (sauf casse accidentelle).<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 {#8915 …}
    #channels: Doctrine\ORM\PersistentCollection {#8903 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8897 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8899 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8901 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#8922 …}
  +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 {#28345
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28378 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28384 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28371 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.86 ms
Input props
[
  "product" => App\Entity\Product\Product {#8895
    #id: 1098
    #code: "vinaigrier-emile-henry-8203"
    #attributes: Doctrine\ORM\PersistentCollection {#8905 …}
    #variants: Doctrine\ORM\PersistentCollection {#8921 …}
    #options: Doctrine\ORM\PersistentCollection {#8909 …}
    #associations: Doctrine\ORM\PersistentCollection {#8907 …}
    #createdAt: DateTime @1758632308 {#8891
      date: 2025-09-23 20:58:28.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632308 {#8892
      date: 2025-09-23 20:58:28.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8912 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8913
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8895}
        #id: 1098
        #name: "Vinaigrier Emile Henry"
        #slug: "vinaigrier-emile-henry-8203"
        #description: """
          <div class="col is-12"><ul>\n
          <li>C&eacute;ramique &eacute;maill&eacute;e exempte de plomb.</li>\n
          <li>Compatible four, micro-ondes, lave-vaisselle et cong&eacute;lateur.</li>\n
          <li><strong>Fabriqu&eacute; en France.</strong></li>\n
          </ul></div><h1>Descriptif Vinaigrier Emile Henry</h1><div class="col is-12">Quoi de plus simple que de faire son propre vinaigre avec le Vinaigrier Emile Henry r&eacute;alis&eacute; en c&eacute;ramique &eacute;maill&eacute; r&eacute;sistant &agrave; l'acidit&eacute;. Il suffit d'y placer une m&egrave;re de vinaigre et de l'alimenter avec des fonds de bouteilles de vin pour pouvoir d&eacute;guster votre vinaigre en quelques semaines. Le Vinaigrier Emile Henry poss&egrave;de un couvercle amovible pour le remplir et acc&eacute;der &agrave; la m&egrave;re facilement, un robinet en bois mont&eacute; sur un bouchon en li&egrave;ge et une coupelle de 10 cm de diam&egrave;tre pour recueillir la juste dose de vinaigre n&eacute;cessaire &agrave; votre pr&eacute;paration. Le vinaigrier, le couvercle et la coupelle se nettoient facilement au lave-vaisselle.</div><h1>Caractéristiques Vinaigrier Emile Henry</h1><div class="col is-12">- C&eacute;ramique &eacute;maill&eacute;e exempte de plomb.<br />- Dimensions : 15 x 15 x 19 cm.<br />- Capacit&eacute; : 2,5 litres.<br />- Garantie 10 ans (sauf casse accidentelle).<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 {#8915 …}
    #channels: Doctrine\ORM\PersistentCollection {#8903 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8897 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8899 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8901 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Vinaigrier Emile Henry"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30620
  -props: [
    "product" => App\Entity\Product\Product {#8895
      #id: 1098
      #code: "vinaigrier-emile-henry-8203"
      #attributes: Doctrine\ORM\PersistentCollection {#8905 …}
      #variants: Doctrine\ORM\PersistentCollection {#8921 …}
      #options: Doctrine\ORM\PersistentCollection {#8909 …}
      #associations: Doctrine\ORM\PersistentCollection {#8907 …}
      #createdAt: DateTime @1758632308 {#8891
        date: 2025-09-23 20:58:28.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632308 {#8892
        date: 2025-09-23 20:58:28.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8912 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8913
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8895}
          #id: 1098
          #name: "Vinaigrier Emile Henry"
          #slug: "vinaigrier-emile-henry-8203"
          #description: """
            <div class="col is-12"><ul>\n
            <li>C&eacute;ramique &eacute;maill&eacute;e exempte de plomb.</li>\n
            <li>Compatible four, micro-ondes, lave-vaisselle et cong&eacute;lateur.</li>\n
            <li><strong>Fabriqu&eacute; en France.</strong></li>\n
            </ul></div><h1>Descriptif Vinaigrier Emile Henry</h1><div class="col is-12">Quoi de plus simple que de faire son propre vinaigre avec le Vinaigrier Emile Henry r&eacute;alis&eacute; en c&eacute;ramique &eacute;maill&eacute; r&eacute;sistant &agrave; l'acidit&eacute;. Il suffit d'y placer une m&egrave;re de vinaigre et de l'alimenter avec des fonds de bouteilles de vin pour pouvoir d&eacute;guster votre vinaigre en quelques semaines. Le Vinaigrier Emile Henry poss&egrave;de un couvercle amovible pour le remplir et acc&eacute;der &agrave; la m&egrave;re facilement, un robinet en bois mont&eacute; sur un bouchon en li&egrave;ge et une coupelle de 10 cm de diam&egrave;tre pour recueillir la juste dose de vinaigre n&eacute;cessaire &agrave; votre pr&eacute;paration. Le vinaigrier, le couvercle et la coupelle se nettoient facilement au lave-vaisselle.</div><h1>Caractéristiques Vinaigrier Emile Henry</h1><div class="col is-12">- C&eacute;ramique &eacute;maill&eacute;e exempte de plomb.<br />- Dimensions : 15 x 15 x 19 cm.<br />- Capacit&eacute; : 2,5 litres.<br />- Garantie 10 ans (sauf casse accidentelle).<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 {#8915 …}
      #channels: Doctrine\ORM\PersistentCollection {#8903 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8897 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8899 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8901 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.60 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30678
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30604 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30613 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30677 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#8922 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#8932
    #collection: Doctrine\Common\Collections\ArrayCollection {#8933 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#8931 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38393 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38395 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30678
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30604 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30613 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30677 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Vinaigrier Emile Henry"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#8932
    #collection: Doctrine\Common\Collections\ArrayCollection {#8933 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#8931 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38393 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38395 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30684
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30678
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30604 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30613 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30677 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#8922 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#8932
      #collection: Doctrine\Common\Collections\ArrayCollection {#8933 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#8931 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38393 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38395 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30734
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30725 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30732 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30733 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#8922 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30737
  +variant: App\Entity\Product\ProductVariant {#8922 …}
  +price: "99,00\u{A0}"
  +originalPrice: "99,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9311 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12741 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9308 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30734
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30725 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30732 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30733 …}
    +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 3.67 ms
Input props
[
  "product" => App\Entity\Product\Product {#8938
    #id: 1101
    #code: "vinaigrier-digoin-4242"
    #attributes: Doctrine\ORM\PersistentCollection {#8948 …}
    #variants: Doctrine\ORM\PersistentCollection {#8961 …}
    #options: Doctrine\ORM\PersistentCollection {#8952 …}
    #associations: Doctrine\ORM\PersistentCollection {#8950 …}
    #createdAt: DateTime @1758632309 {#8934
      date: 2025-09-23 20:58:29.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632309 {#8935
      date: 2025-09-23 20:58:29.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8955 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8956
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8938}
        #id: 1101
        #name: "Vinaigrier Digoin"
        #slug: "vinaigrier-digoin-4242"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Etanch&eacute;it&eacute; du pot garantie &agrave; vie.</li>\n
          <li>Livr&eacute; avec robinet complet.</li>\n
          <li><strong>Fabrication &nbsp;fran&ccedil;aise. A Digoin (Sa&ocirc;ne et Loire Bourgogne)</strong></li>\n
          </ul></div><h1>Description Vinaigrier Digoin</h1><div class="col is-12">Le vinaigrier Digoin est issu de 150 ans de savoir faire. Con&ccedil;u avec un gr&egrave;s de haute qualit&eacute;, son &eacute;tanch&eacute;it&eacute; est tout simplement garanti &agrave; vie. Le gr&egrave;s &eacute;maill&eacute; de ce <a title="accessoire de cuisine" rel="follow" href="http://www.cuisinstore.com/accessoires-de-cuisine-f4-p1.html">mat&eacute;riel de cuisine</a> est depuis toujours le mat&eacute;riau id&eacute;al pour la fabrication et la conservation du vinaigre. En effet, le gr&egrave;s est tr&egrave;s r&eacute;sistant aux acides et prot&egrave;ge totalement de la lumi&egrave;re.&nbsp;<br />En ajoutant herbes ou aromates, vous obtiendrez un vinaigre maison &agrave; votre go&ucirc;t.</div><h1>Caractéristiques Vinaigrier Digoin</h1><div class="col is-12">Gr&egrave;s &eacute;maill&eacute; haute qualit&eacute;. Contenance 4 litres. Dimensions: Hauteur 25 cm et largeur: 20 cm. Robinet en buis. Bouchon en li&egrave;ge (non garanti). 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 {#8958 …}
    #channels: Doctrine\ORM\PersistentCollection {#8946 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8940 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8942 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8944 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28345
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28378 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28384 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28371 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30611
  +product: App\Entity\Product\Product {#8938
    #id: 1101
    #code: "vinaigrier-digoin-4242"
    #attributes: Doctrine\ORM\PersistentCollection {#8948 …}
    #variants: Doctrine\ORM\PersistentCollection {#8961 …}
    #options: Doctrine\ORM\PersistentCollection {#8952 …}
    #associations: Doctrine\ORM\PersistentCollection {#8950 …}
    #createdAt: DateTime @1758632309 {#8934
      date: 2025-09-23 20:58:29.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632309 {#8935
      date: 2025-09-23 20:58:29.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8955 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8956
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8938}
        #id: 1101
        #name: "Vinaigrier Digoin"
        #slug: "vinaigrier-digoin-4242"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Etanch&eacute;it&eacute; du pot garantie &agrave; vie.</li>\n
          <li>Livr&eacute; avec robinet complet.</li>\n
          <li><strong>Fabrication &nbsp;fran&ccedil;aise. A Digoin (Sa&ocirc;ne et Loire Bourgogne)</strong></li>\n
          </ul></div><h1>Description Vinaigrier Digoin</h1><div class="col is-12">Le vinaigrier Digoin est issu de 150 ans de savoir faire. Con&ccedil;u avec un gr&egrave;s de haute qualit&eacute;, son &eacute;tanch&eacute;it&eacute; est tout simplement garanti &agrave; vie. Le gr&egrave;s &eacute;maill&eacute; de ce <a title="accessoire de cuisine" rel="follow" href="http://www.cuisinstore.com/accessoires-de-cuisine-f4-p1.html">mat&eacute;riel de cuisine</a> est depuis toujours le mat&eacute;riau id&eacute;al pour la fabrication et la conservation du vinaigre. En effet, le gr&egrave;s est tr&egrave;s r&eacute;sistant aux acides et prot&egrave;ge totalement de la lumi&egrave;re.&nbsp;<br />En ajoutant herbes ou aromates, vous obtiendrez un vinaigre maison &agrave; votre go&ucirc;t.</div><h1>Caractéristiques Vinaigrier Digoin</h1><div class="col is-12">Gr&egrave;s &eacute;maill&eacute; haute qualit&eacute;. Contenance 4 litres. Dimensions: Hauteur 25 cm et largeur: 20 cm. Robinet en buis. Bouchon en li&egrave;ge (non garanti). 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 {#8958 …}
    #channels: Doctrine\ORM\PersistentCollection {#8946 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8940 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8942 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8944 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#8962 …}
  +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 {#28345
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28378 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28384 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28371 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.73 ms
Input props
[
  "product" => App\Entity\Product\Product {#8938
    #id: 1101
    #code: "vinaigrier-digoin-4242"
    #attributes: Doctrine\ORM\PersistentCollection {#8948 …}
    #variants: Doctrine\ORM\PersistentCollection {#8961 …}
    #options: Doctrine\ORM\PersistentCollection {#8952 …}
    #associations: Doctrine\ORM\PersistentCollection {#8950 …}
    #createdAt: DateTime @1758632309 {#8934
      date: 2025-09-23 20:58:29.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632309 {#8935
      date: 2025-09-23 20:58:29.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8955 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8956
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8938}
        #id: 1101
        #name: "Vinaigrier Digoin"
        #slug: "vinaigrier-digoin-4242"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Etanch&eacute;it&eacute; du pot garantie &agrave; vie.</li>\n
          <li>Livr&eacute; avec robinet complet.</li>\n
          <li><strong>Fabrication &nbsp;fran&ccedil;aise. A Digoin (Sa&ocirc;ne et Loire Bourgogne)</strong></li>\n
          </ul></div><h1>Description Vinaigrier Digoin</h1><div class="col is-12">Le vinaigrier Digoin est issu de 150 ans de savoir faire. Con&ccedil;u avec un gr&egrave;s de haute qualit&eacute;, son &eacute;tanch&eacute;it&eacute; est tout simplement garanti &agrave; vie. Le gr&egrave;s &eacute;maill&eacute; de ce <a title="accessoire de cuisine" rel="follow" href="http://www.cuisinstore.com/accessoires-de-cuisine-f4-p1.html">mat&eacute;riel de cuisine</a> est depuis toujours le mat&eacute;riau id&eacute;al pour la fabrication et la conservation du vinaigre. En effet, le gr&egrave;s est tr&egrave;s r&eacute;sistant aux acides et prot&egrave;ge totalement de la lumi&egrave;re.&nbsp;<br />En ajoutant herbes ou aromates, vous obtiendrez un vinaigre maison &agrave; votre go&ucirc;t.</div><h1>Caractéristiques Vinaigrier Digoin</h1><div class="col is-12">Gr&egrave;s &eacute;maill&eacute; haute qualit&eacute;. Contenance 4 litres. Dimensions: Hauteur 25 cm et largeur: 20 cm. Robinet en buis. Bouchon en li&egrave;ge (non garanti). 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 {#8958 …}
    #channels: Doctrine\ORM\PersistentCollection {#8946 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8940 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8942 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8944 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Vinaigrier Digoin"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30854
  -props: [
    "product" => App\Entity\Product\Product {#8938
      #id: 1101
      #code: "vinaigrier-digoin-4242"
      #attributes: Doctrine\ORM\PersistentCollection {#8948 …}
      #variants: Doctrine\ORM\PersistentCollection {#8961 …}
      #options: Doctrine\ORM\PersistentCollection {#8952 …}
      #associations: Doctrine\ORM\PersistentCollection {#8950 …}
      #createdAt: DateTime @1758632309 {#8934
        date: 2025-09-23 20:58:29.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632309 {#8935
        date: 2025-09-23 20:58:29.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8955 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8956
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8938}
          #id: 1101
          #name: "Vinaigrier Digoin"
          #slug: "vinaigrier-digoin-4242"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Etanch&eacute;it&eacute; du pot garantie &agrave; vie.</li>\n
            <li>Livr&eacute; avec robinet complet.</li>\n
            <li><strong>Fabrication &nbsp;fran&ccedil;aise. A Digoin (Sa&ocirc;ne et Loire Bourgogne)</strong></li>\n
            </ul></div><h1>Description Vinaigrier Digoin</h1><div class="col is-12">Le vinaigrier Digoin est issu de 150 ans de savoir faire. Con&ccedil;u avec un gr&egrave;s de haute qualit&eacute;, son &eacute;tanch&eacute;it&eacute; est tout simplement garanti &agrave; vie. Le gr&egrave;s &eacute;maill&eacute; de ce <a title="accessoire de cuisine" rel="follow" href="http://www.cuisinstore.com/accessoires-de-cuisine-f4-p1.html">mat&eacute;riel de cuisine</a> est depuis toujours le mat&eacute;riau id&eacute;al pour la fabrication et la conservation du vinaigre. En effet, le gr&egrave;s est tr&egrave;s r&eacute;sistant aux acides et prot&egrave;ge totalement de la lumi&egrave;re.&nbsp;<br />En ajoutant herbes ou aromates, vous obtiendrez un vinaigre maison &agrave; votre go&ucirc;t.</div><h1>Caractéristiques Vinaigrier Digoin</h1><div class="col is-12">Gr&egrave;s &eacute;maill&eacute; haute qualit&eacute;. Contenance 4 litres. Dimensions: Hauteur 25 cm et largeur: 20 cm. Robinet en buis. Bouchon en li&egrave;ge (non garanti). 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 {#8958 …}
      #channels: Doctrine\ORM\PersistentCollection {#8946 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8940 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8942 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8944 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.62 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30906
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30838 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30847 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30905 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#8962 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#8972
    #collection: Doctrine\Common\Collections\ArrayCollection {#8973 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#8971 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38407 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38409 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30906
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30838 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30847 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30905 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Vinaigrier Digoin"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#8972
    #collection: Doctrine\Common\Collections\ArrayCollection {#8973 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#8971 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38407 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38409 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30912
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30906
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30838 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30847 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30905 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#8962 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#8972
      #collection: Doctrine\Common\Collections\ArrayCollection {#8973 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#8971 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38407 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38409 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30962
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30953 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30960 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30961 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#8962 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30965
  +variant: App\Entity\Product\ProductVariant {#8962 …}
  +price: "99,00\u{A0}"
  +originalPrice: "99,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9311 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12741 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9308 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30962
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30953 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30960 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30961 …}
    +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.32 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28031
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12806 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28053 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12816 …}
    +prefixes: [
      "sylius_shop.base.offcanvas"
    ]
  }
  "template" => "@SyliusShop/shared/layout/base/offcanvas/cart.html.twig"
]
Attributes
[]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent {#31282
  +cart: App\Entity\Order\Order {#13720 …}
  #cartContext: Sylius\Component\Order\Context\CompositeCartContext {#1322 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28031
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12806 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28053 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12816 …}
    +prefixes: [
      "sylius_shop.base.offcanvas"
    ]
  }
  +template: "@SyliusShop/shared/layout/base/offcanvas/cart.html.twig"
  #repository: Sylius\Bundle\CoreBundle\Doctrine\ORM\OrderRepository {#4980 …}
}