Components

17 Twig Components
139 Render Count
113 ms Render Time
70.5 MiB Memory Usage

Components

Name Metadata Render Count Render Time
media:icon
"App\Twig\Components\Media\Icon"
components/media/icon.html.twig
74 2.90ms
ui:badge
"App\Twig\Components\Ui\Badge"
components/ui/badge.html.twig
13 0.85ms
card:exercise-h
"App\Twig\Components\Card\ExerciseCardH"
components/card/exercise-h.html.twig
10 68.53ms
training:exercise:image
"App\Twig\Components\Training\Exercise\ExerciseImage"
components/training/exercise/image.html.twig
10 22.95ms
training:difficulty-badge
"App\Twig\Components\Training\DifficultyBadge"
components/training/difficulity-badge.html.twig
10 0.65ms
app:lang-selector
"App\Twig\Components\App\LangSelector"
components/app/lang-selector.html.twig
4 3.74ms
ui:dropdown
"App\Twig\Components\Ui\Dropdown"
components/ui/dropdown.html.twig
4 2.46ms
utils:lang-selector
[Anonymous]
components/utils/lang-selector.html.twig
3 3.81ms
ad:horizontal:fluid
"App\Twig\Components\Ad\AdHorizontalFluid"
components/ad/horizontal-fluid.html.twig
3 0.54ms
menu:main
"App\Twig\Components\Menu\MainMenu"
components/menu/main.html.twig
1 38.00ms
menu:connexion-menu
"App\Twig\Components\Menu\ConnexionMenu"
components/menu/user-menu.html.twig
1 8.80ms
menu:breadcrumb
"App\Twig\Components\Menu\Breadcrumb"
components/menu/breadcrumb.html.twig
1 0.57ms
media:image
"App\Twig\Components\Media\Image"
components/media/image.html.twig
1 0.97ms
ui:accordion
"App\Twig\Components\Ui\Accordion"
components/ui/accordion.html.twig
1 0.85ms
app:page-sharer
"App\Twig\Components\App\PageSharer"
components/app/page-sharer.html.twig
1 1.38ms
ad:wide-skyscraper
"App\Twig\Components\Ad\AdWideSkyscraper"
components/ad/wide-skyscraper.html.twig
1 0.33ms
utils:theme-switcher
[Anonymous]
components/utils/theme-switcher.html.twig
1 0.48ms

Render calls

menu:main App\Twig\Components\Menu\MainMenu 64.5 MiB 38.00 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Menu\MainMenu {#5124
  -routingManager: App\BusinessLogic\Training\Exercise\Url\ExerciseRoutingManager {#217 …}
  -em: Doctrine\ORM\EntityManager {#593 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableAdapter {#2237 …}
  -kernel: App\Kernel {#14 …}
  -mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#510 …}
}
media:icon App\Twig\Components\Media\Icon 58.5 MiB 0.41 ms
Input props
[
  "name" => "fitmetrics-biceps"
  "class" => "header--logo-dark header--logo dark:hidden h-[52px] w-[96px] max-w-[96px] sm:h-[56px] sm:w-[104px] sm:max-w-[104px] object-contain object-left"
  "data-front--header-target" => "logoDark"
]
Attributes
[
  "class" => "header--logo-dark header--logo dark:hidden h-[52px] w-[96px] max-w-[96px] sm:h-[56px] sm:w-[104px] sm:max-w-[104px] object-contain object-left"
  "data-front--header-target" => "logoDark"
]
Component
App\Twig\Components\Media\Icon {#5171
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 58.5 MiB 0.04 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "header--logo-white header--logo hidden dark:block h-[52px] w-[96px] max-w-[96px] sm:h-[56px] sm:w-[104px] sm:max-w-[104px] object-contain object-left"
  "data-front--header-target" => "logoWhite"
]
Attributes
[
  "class" => "header--logo-white header--logo hidden dark:block h-[52px] w-[96px] max-w-[96px] sm:h-[56px] sm:w-[104px] sm:max-w-[104px] object-contain object-left"
  "data-front--header-target" => "logoWhite"
]
Component
App\Twig\Components\Media\Icon {#5182
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
utils:lang-selector
[Anonymous]
58.5 MiB 2.26 ms
Input props
[
  "size" => "compact"
  "showTranslateIcon" => false
]
Attributes
[
  "size" => "compact"
  "showTranslateIcon" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#5233
  -props: [
    "size" => "compact"
    "showTranslateIcon" => false
  ]
}
app:lang-selector App\Twig\Components\App\LangSelector 58.5 MiB 1.77 ms
Input props
[
  "defaultOpenLeft" => false
  "size" => "compact"
  "showTranslateIcon" => false
]
Attributes
[
  "size" => "compact"
]
Component
App\Twig\Components\App\LangSelector {#5260
  +routeName: null
  +params: null
  +withQuery: true
  +defaultOpenLeft: false
  +showTranslateIcon: false
  -seoPage: App\BusinessLogic\App\Seo\SeoPage {#219 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#911 …}
  -router: Symfony\Bundle\FrameworkBundle\Routing\Router {#725 …}
}
ui:dropdown App\Twig\Components\Ui\Dropdown 58.5 MiB 0.85 ms
Input props
[
  "label" => "lang.name.fr"
  "defaultOpenLeft" => false
  "locales" => [
    "fr"
    "en"
    "de"
    "it"
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Dropdown {#5295
  +label: "lang.name.fr"
  +contentClass: null
  +defaultOpen: false
  +defaultOpenLeft: false
  +locales: [
    "fr"
    "en"
    "de"
    "it"
  ]
}
media:icon App\Twig\Components\Media\Icon 58.5 MiB 0.05 ms
Input props
[
  "name" => "chevron-down"
  "class" => "fill-black dark:fill-white w-4 h-4 dropdown-icon"
]
Attributes
[
  "class" => "fill-black dark:fill-white w-4 h-4 dropdown-icon"
]
Component
App\Twig\Components\Media\Icon {#5338
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 58.5 MiB 0.04 ms
Input props
[
  "name" => "check"
  "class" => "w-[15px] h-[15px] dark:fill-white"
]
Attributes
[
  "class" => "w-[15px] h-[15px] dark:fill-white"
]
Component
App\Twig\Components\Media\Icon {#5384
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.04 ms
Input props
[
  "name" => "fitmetrics-biceps"
  "class" => "block header--logo-dark header--logo w-full dark:hidden h-[50px] scale-150"
  "data-front--header-target" => "logoDark"
]
Attributes
[
  "class" => "block header--logo-dark header--logo w-full dark:hidden h-[50px] scale-150"
  "data-front--header-target" => "logoDark"
]
Component
App\Twig\Components\Media\Icon {#5401
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.03 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "hidden header--logo-white header--logo w-full dark:block h-[50px] scale-150"
  "data-front--header-target" => "logoWhite"
]
Attributes
[
  "class" => "hidden header--logo-white header--logo w-full dark:block h-[50px] scale-150"
  "data-front--header-target" => "logoWhite"
]
Component
App\Twig\Components\Media\Icon {#5423
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.04 ms
Input props
[
  "name" => "search"
  "class" => "h-7 w-7 mr-4 fill-current"
]
Attributes
[
  "class" => "h-7 w-7 mr-4 fill-current"
]
Component
App\Twig\Components\Media\Icon {#5451
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "search"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.03 ms
Input props
[
  "name" => "flexed-biceps"
  "class" => "h-7 w-7 mr-4 fill-current"
]
Attributes
[
  "class" => "h-7 w-7 mr-4 fill-current"
]
Component
App\Twig\Components\Media\Icon {#5467
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "flexed-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.03 ms
Input props
[
  "name" => "barbell"
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#5491
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "barbell"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.03 ms
Input props
[
  "name" => "category"
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#5515
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "category"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.03 ms
Input props
[
  "name" => "fire"
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#5539
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "fire"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.03 ms
Input props
[
  "name" => "discipline "
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#5563
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "discipline "
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.03 ms
Input props
[
  "name" => "stats-chart"
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#5587
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "stats-chart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.03 ms
Input props
[
  "name" => "latest"
  "class" => "h-7 w-7 mr-4 fill-current"
]
Attributes
[
  "class" => "h-7 w-7 mr-4 fill-current"
]
Component
App\Twig\Components\Media\Icon {#5611
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "latest"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.04 ms
Input props
[
  "name" => "random"
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#5635
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "random"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.04 ms
Input props
[
  "name" => "chevron-down"
  "class" => "w-7 h-7 fill-black dark:fill-white transition group-hover:rotate-180"
]
Attributes
[
  "class" => "w-7 h-7 fill-black dark:fill-white transition group-hover:rotate-180"
]
Component
App\Twig\Components\Media\Icon {#6162
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
utils:lang-selector
[Anonymous]
60.5 MiB 0.76 ms
Input props
[
  "defaultOpenLeft" => true
  "size" => "compact"
]
Attributes
[
  "defaultOpenLeft" => true
  "size" => "compact"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#6200
  -props: [
    "defaultOpenLeft" => true
    "size" => "compact"
  ]
}
app:lang-selector App\Twig\Components\App\LangSelector 60.5 MiB 0.65 ms
Input props
[
  "defaultOpenLeft" => true
  "size" => "compact"
  "showTranslateIcon" => true
]
Attributes
[
  "size" => "compact"
]
Component
App\Twig\Components\App\LangSelector {#6237
  +routeName: null
  +params: null
  +withQuery: true
  +defaultOpenLeft: true
  +showTranslateIcon: true
  -seoPage: App\BusinessLogic\App\Seo\SeoPage {#219 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#911 …}
  -router: Symfony\Bundle\FrameworkBundle\Routing\Router {#725 …}
}
ui:dropdown App\Twig\Components\Ui\Dropdown 60.5 MiB 0.53 ms
Input props
[
  "label" => "lang.name.fr"
  "defaultOpenLeft" => true
  "locales" => [
    "fr"
    "en"
    "de"
    "it"
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Dropdown {#6259
  +label: "lang.name.fr"
  +contentClass: null
  +defaultOpen: false
  +defaultOpenLeft: true
  +locales: [
    "fr"
    "en"
    "de"
    "it"
  ]
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.04 ms
Input props
[
  "name" => "g-translate"
  "class" => "fill-black dark:fill-white w-[18px] h-[18px]"
]
Attributes
[
  "class" => "fill-black dark:fill-white w-[18px] h-[18px]"
]
Component
App\Twig\Components\Media\Icon {#6290
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "g-translate"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.03 ms
Input props
[
  "name" => "chevron-down"
  "class" => "fill-black dark:fill-white w-[18px] h-[18px] dropdown-icon"
]
Attributes
[
  "class" => "fill-black dark:fill-white w-[18px] h-[18px] dropdown-icon"
]
Component
App\Twig\Components\Media\Icon {#6312
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.03 ms
Input props
[
  "name" => "check"
  "class" => "w-[15px] h-[15px] dark:fill-white"
]
Attributes
[
  "class" => "w-[15px] h-[15px] dark:fill-white"
]
Component
App\Twig\Components\Media\Icon {#6359
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
menu:connexion-menu App\Twig\Components\Menu\ConnexionMenu 64.5 MiB 8.80 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Menu\ConnexionMenu {#6231
  -authenticationUtils: Symfony\Component\Security\Http\Authentication\AuthenticationUtils {#6341 …}
  -formFactory: Symfony\Component\Form\FormFactory {#3152 …}
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.04 ms
Input props
[
  "name" => "close"
  "class" => "w-[26px] h-[26px] md:w-[15px] md:h-[15px] cursor-pointer"
]
Attributes
[
  "class" => "w-[26px] h-[26px] md:w-[15px] md:h-[15px] cursor-pointer"
]
Component
App\Twig\Components\Media\Icon {#6487
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.03 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "hidden dark:block h-[80px] w-[300px]"
]
Attributes
[
  "class" => "hidden dark:block h-[80px] w-[300px]"
]
Component
App\Twig\Components\Media\Icon {#6503
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.03 ms
Input props
[
  "name" => "fitmetrics-biceps"
  "class" => "block dark:hidden h-[80px] w-[300px]"
]
Attributes
[
  "class" => "block dark:hidden h-[80px] w-[300px]"
]
Component
App\Twig\Components\Media\Icon {#6533
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.04 ms
Input props
[
  "name" => "google"
  "class" => "h-[24px] w-[20px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "h-[24px] w-[20px]"
]
Component
App\Twig\Components\Media\Icon {#6565
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "google"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.03 ms
Input props
[
  "name" => "apple"
  "class" => "h-[24px] w-[20px] fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "h-[24px] w-[20px] fill-white"
]
Component
App\Twig\Components\Media\Icon {#6584
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "apple"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
app:lang-selector App\Twig\Components\App\LangSelector 64.5 MiB 0.65 ms
Input props
[
  "defaultOpenLeft" => true
  "size" => "compact"
  "showTranslateIcon" => true
]
Attributes
[
  "size" => "compact"
]
Component
App\Twig\Components\App\LangSelector {#6696
  +routeName: null
  +params: null
  +withQuery: true
  +defaultOpenLeft: true
  +showTranslateIcon: true
  -seoPage: App\BusinessLogic\App\Seo\SeoPage {#219 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#911 …}
  -router: Symfony\Bundle\FrameworkBundle\Routing\Router {#725 …}
}
ui:dropdown App\Twig\Components\Ui\Dropdown 64.5 MiB 0.53 ms
Input props
[
  "label" => "lang.name.fr"
  "defaultOpenLeft" => true
  "locales" => [
    "fr"
    "en"
    "de"
    "it"
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Dropdown {#6725
  +label: "lang.name.fr"
  +contentClass: null
  +defaultOpen: false
  +defaultOpenLeft: true
  +locales: [
    "fr"
    "en"
    "de"
    "it"
  ]
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.04 ms
Input props
[
  "name" => "g-translate"
  "class" => "fill-black dark:fill-white w-[18px] h-[18px]"
]
Attributes
[
  "class" => "fill-black dark:fill-white w-[18px] h-[18px]"
]
Component
App\Twig\Components\Media\Icon {#6756
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "g-translate"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "chevron-down"
  "class" => "fill-black dark:fill-white w-[18px] h-[18px] dropdown-icon"
]
Attributes
[
  "class" => "fill-black dark:fill-white w-[18px] h-[18px] dropdown-icon"
]
Component
App\Twig\Components\Media\Icon {#6778
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "check"
  "class" => "w-[15px] h-[15px] dark:fill-white"
]
Attributes
[
  "class" => "w-[15px] h-[15px] dark:fill-white"
]
Component
App\Twig\Components\Media\Icon {#6825
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.04 ms
Input props
[
  "name" => "fitmetrics-biceps"
  "class" => "h-14 w-full object-contain object-center dark:hidden"
]
Attributes
[
  "class" => "h-14 w-full object-contain object-center dark:hidden"
]
Component
App\Twig\Components\Media\Icon {#6680
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "hidden h-14 w-full object-contain object-center dark:block"
]
Attributes
[
  "class" => "hidden h-14 w-full object-contain object-center dark:block"
]
Component
App\Twig\Components\Media\Icon {#6850
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.04 ms
Input props
[
  "name" => "flexed-biceps"
  "class" => "h-5 w-5 shrink-0 fill-current text-zinc-500 dark:text-white/70"
]
Attributes
[
  "class" => "h-5 w-5 shrink-0 fill-current text-zinc-500 dark:text-white/70"
]
Component
App\Twig\Components\Media\Icon {#6866
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "flexed-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "fire"
  "class" => "h-5 w-5 shrink-0 fill-current text-zinc-500 dark:text-white/70"
]
Attributes
[
  "class" => "h-5 w-5 shrink-0 fill-current text-zinc-500 dark:text-white/70"
]
Component
App\Twig\Components\Media\Icon {#6904
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "fire"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "category"
  "class" => "h-5 w-5 shrink-0 fill-current text-zinc-500 dark:text-white/70"
]
Attributes
[
  "class" => "h-5 w-5 shrink-0 fill-current text-zinc-500 dark:text-white/70"
]
Component
App\Twig\Components\Media\Icon {#6928
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "category"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "barbell"
  "class" => "h-5 w-5 shrink-0 fill-current text-zinc-500 dark:text-white/70"
]
Attributes
[
  "class" => "h-5 w-5 shrink-0 fill-current text-zinc-500 dark:text-white/70"
]
Component
App\Twig\Components\Media\Icon {#6952
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "barbell"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "discipline"
  "class" => "h-5 w-5 shrink-0 fill-current text-zinc-500 dark:text-white/70"
]
Attributes
[
  "class" => "h-5 w-5 shrink-0 fill-current text-zinc-500 dark:text-white/70"
]
Component
App\Twig\Components\Media\Icon {#6976
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "discipline"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "stats-chart"
  "class" => "h-5 w-5 shrink-0 fill-current text-zinc-500 dark:text-white/70"
]
Attributes
[
  "class" => "h-5 w-5 shrink-0 fill-current text-zinc-500 dark:text-white/70"
]
Component
App\Twig\Components\Media\Icon {#7000
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "stats-chart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "latest"
  "class" => "h-5 w-5 shrink-0 fill-current text-zinc-500 dark:text-white/70"
]
Attributes
[
  "class" => "h-5 w-5 shrink-0 fill-current text-zinc-500 dark:text-white/70"
]
Component
App\Twig\Components\Media\Icon {#7024
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "latest"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "random"
  "class" => "h-5 w-5 shrink-0 fill-current text-zinc-500 dark:text-white/70"
]
Attributes
[
  "class" => "h-5 w-5 shrink-0 fill-current text-zinc-500 dark:text-white/70"
]
Component
App\Twig\Components\Media\Icon {#7048
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "random"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "favorites"
  "class" => "h-5 w-5 shrink-0 fill-current text-zinc-500 dark:text-white/70"
]
Attributes
[
  "class" => "h-5 w-5 shrink-0 fill-current text-zinc-500 dark:text-white/70"
]
Component
App\Twig\Components\Media\Icon {#7072
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "more"
  "class" => "h-5 w-5 shrink-0 fill-current text-zinc-500 dark:text-white/70"
]
Attributes
[
  "class" => "h-5 w-5 shrink-0 fill-current text-zinc-500 dark:text-white/70"
]
Component
App\Twig\Components\Media\Icon {#7096
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "more"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.04 ms
Input props
[
  "name" => "fitmetrics-biceps"
  "class" => "h-16 w-full"
]
Attributes
[
  "class" => "h-16 w-full"
]
Component
App\Twig\Components\Media\Icon {#6636
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
menu:breadcrumb App\Twig\Components\Menu\Breadcrumb 64.5 MiB 0.57 ms
Input props
[
  "builder" => App\BusinessLogic\App\Menu\BreadcrumbBuilder {#3150
    -items: [
      [
        "label" => "menu.home"
        "url" => "/fr/"
      ]
      [
        "label" => "menu.exercises"
        "url" => "/fr/exercices"
      ]
      [
        "label" => "label.categories"
        "url" => "/fr/exercices/categories"
      ]
      [
        "label" => "Récupération et relaxation"
        "url" => null
      ]
    ]
  }
]
Attributes
[]
Component
App\Twig\Components\Menu\Breadcrumb {#7166
  +items: [
    [
      "label" => "menu.home"
      "url" => "/fr/"
    ]
    [
      "label" => "menu.exercises"
      "url" => "/fr/exercices"
    ]
    [
      "label" => "label.categories"
      "url" => "/fr/exercices/categories"
    ]
    [
      "label" => "Récupération et relaxation"
      "url" => null
    ]
  ]
  +builder: App\BusinessLogic\App\Menu\BreadcrumbBuilder {#3150
    -items: [
      [
        "label" => "menu.home"
        "url" => "/fr/"
      ]
      [
        "label" => "menu.exercises"
        "url" => "/fr/exercices"
      ]
      [
        "label" => "label.categories"
        "url" => "/fr/exercices/categories"
      ]
      [
        "label" => "Récupération et relaxation"
        "url" => null
      ]
    ]
  }
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.04 ms
Input props
[
  "name" => "chevron-right"
  "class" => "w-[10px] h-[10px] fill-black dark:fill-white"
]
Attributes
[
  "class" => "w-[10px] h-[10px] fill-black dark:fill-white"
]
Component
App\Twig\Components\Media\Icon {#7196
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "chevron-right"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "chevron-right"
  "class" => "w-[10px] h-[10px] fill-black dark:fill-white"
]
Attributes
[
  "class" => "w-[10px] h-[10px] fill-black dark:fill-white"
]
Component
App\Twig\Components\Media\Icon {#7218
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "chevron-right"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.03 ms
Input props
[
  "name" => "chevron-right"
  "class" => "w-[10px] h-[10px] fill-black dark:fill-white"
]
Attributes
[
  "class" => "w-[10px] h-[10px] fill-black dark:fill-white"
]
Component
App\Twig\Components\Media\Icon {#7241
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "chevron-right"
  +title: null
  +symbolDefsName: null
}
media:image App\Twig\Components\Media\Image 64.5 MiB 0.97 ms
Input props
[
  "media" => App\Entity\Media\MediaImage {#3283
    #uploadedFile: Symfony\Component\HttpFoundation\File\File {#3382 …}
    #file: Vich\UploaderBundle\Entity\File {#3334 …}
    #credits: Doctrine\ORM\PersistentCollection {#3284 …}
    -source: "ChatGPT"
    -zone: null
    -urlExternal: null
    #id: 2430
    -notes: null
    #translations: Doctrine\ORM\PersistentCollection {#3355 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -tiersId: null
    -tiersName: null
    #createdAt: DateTimeImmutable @1746740042 {#3280
      date: 2025-05-08 23:34:02.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1778028433 {#3363
      date: 2026-05-06 02:47:13.563672 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: App\Entity\User {#3223 …}
  }
  "class" => "rounded-xl object-cover aspect-square w-[150px] md:w-[250px]"
  "alt" => "Meilleurs exercices pour récupération et relaxation"
  "smWidth" => 250
  "smHeight" => 250
  "lgWidth" => 250
  "lgHeight" => 250
]
Attributes
[
  "class" => "rounded-xl object-cover aspect-square w-[150px] md:w-[250px]"
]
Component
App\Twig\Components\Media\Image {#7264
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Meilleurs exercices pour récupération et relaxation"
  +pictureClass: null
  +smWidth: 250
  +smHeight: 250
  +lgWidth: 250
  +lgHeight: 250
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: App\Entity\Media\MediaImage {#3283
    #uploadedFile: Symfony\Component\HttpFoundation\File\File {#3382 …}
    #file: Vich\UploaderBundle\Entity\File {#3334 …}
    #credits: Doctrine\ORM\PersistentCollection {#3284 …}
    -source: "ChatGPT"
    -zone: null
    -urlExternal: null
    #id: 2430
    -notes: null
    #translations: Doctrine\ORM\PersistentCollection {#3355 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -tiersId: null
    -tiersName: null
    #createdAt: DateTimeImmutable @1746740042 {#3280
      date: 2025-05-08 23:34:02.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1778028433 {#3363
      date: 2026-05-06 02:47:13.563672 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: App\Entity\User {#3223 …}
  }
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#510 …}
}
ui:accordion App\Twig\Components\Ui\Accordion 64.5 MiB 0.85 ms
Input props
[
  "type" => "medium"
  "class" => "animate-fadeIn mt-2"
  "textClass" => "text-yellow"
  "summaryClass" => "text-yellow"
  "defaultOpen" => false
  "chevronClass" => "w-[20px] h-[20px] text-yellow"
]
Attributes
[
  "class" => "animate-fadeIn mt-2"
]
Component
App\Twig\Components\Ui\Accordion {#7310
  +stimulusTarget: null
  +stimulusAction: null
  +title: null
  +content: ""
  +defaultOpen: false
  +type: "medium"
  +chevronClass: "w-[20px] h-[20px] text-yellow"
  +contentContainerClass: null
  +summaryClass: "text-yellow"
  +textClass: "text-yellow"
  +titleSpacebetween: false
  +groupName: "accordion"
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.04 ms
Input props
[
  "name" => "chevron-up-circle"
  "class" => "w-[20px] h-[20px] text-yellow"
]
Attributes
[
  "class" => "w-[20px] h-[20px] text-yellow"
]
Component
App\Twig\Components\Media\Icon {#7398
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "chevron-up-circle"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 64.5 MiB 8.88 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#3718
    #id: 1575
    #token: "68a0d3e446901"
    -images: Doctrine\ORM\PersistentCollection {#3786 …}
    -videos: Doctrine\ORM\PersistentCollection {#3780 …}
    -muscles: Doctrine\ORM\PersistentCollection {#3805 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#3700 …}
    -categories: Doctrine\ORM\PersistentCollection {#3707 …}
    -materials: Doctrine\ORM\PersistentCollection {#4033 …}
    -status: null
    -statusInternal: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4031 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4035 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4037 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4046 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4058 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4074 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4150 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4234 …}
    -side: false
    #createdAt: DateTimeImmutable @1755370468 {#3800
      date: 2025-08-16 20:54:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769263909 {#3714
      date: 2026-01-24 15:11:49.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4256 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 86
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "pelvic tilt"
    -metaphoneName: "PLFKTLT"
  }
  "shortName" => false
  "id" => "exercise-card-68a0d3e446901"
]
Attributes
[
  "id" => "exercise-card-68a0d3e446901"
]
Component
App\Twig\Components\Card\ExerciseCardH {#7447
  +exercise: App\Entity\Training\Exercise {#3718
    #id: 1575
    #token: "68a0d3e446901"
    -images: Doctrine\ORM\PersistentCollection {#3786 …}
    -videos: Doctrine\ORM\PersistentCollection {#3780 …}
    -muscles: Doctrine\ORM\PersistentCollection {#3805 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#3700 …}
    -categories: Doctrine\ORM\PersistentCollection {#3707 …}
    -materials: Doctrine\ORM\PersistentCollection {#4033 …}
    -status: null
    -statusInternal: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4031 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4035 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4037 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4046 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4058 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4074 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4150 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4234 …}
    -side: false
    #createdAt: DateTimeImmutable @1755370468 {#3800
      date: 2025-08-16 20:54:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769263909 {#3714
      date: 2026-01-24 15:11:49.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4256 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 86
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "pelvic tilt"
    -metaphoneName: "PLFKTLT"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 64.5 MiB 2.60 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#3718
    #id: 1575
    #token: "68a0d3e446901"
    -images: Doctrine\ORM\PersistentCollection {#3786 …}
    -videos: Doctrine\ORM\PersistentCollection {#3780 …}
    -muscles: Doctrine\ORM\PersistentCollection {#3805 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#3700 …}
    -categories: Doctrine\ORM\PersistentCollection {#3707 …}
    -materials: Doctrine\ORM\PersistentCollection {#4033 …}
    -status: null
    -statusInternal: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4031 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4035 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4037 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4046 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4058 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4074 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4150 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4234 …}
    -side: false
    #createdAt: DateTimeImmutable @1755370468 {#3800
      date: 2025-08-16 20:54:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769263909 {#3714
      date: 2026-01-24 15:11:49.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4256 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 86
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "pelvic tilt"
    -metaphoneName: "PLFKTLT"
  }
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
  "alt" => "Image Bascule du bassin"
  "smWidth" => 320
  "smHeight" => 180
  "lgWidth" => 250
  "lgHeight" => 140
  "pictureClass" => "md:max-w-min"
]
Attributes
[
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
]
Component
App\Twig\Components\Training\Exercise\ExerciseImage {#7480
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Bascule du bassin"
  +pictureClass: "md:max-w-min"
  +smWidth: 320
  +smHeight: 180
  +lgWidth: 250
  +lgHeight: 140
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: null
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#510 …}
  +exercise: App\Entity\Training\Exercise {#3718
    #id: 1575
    #token: "68a0d3e446901"
    -images: Doctrine\ORM\PersistentCollection {#3786 …}
    -videos: Doctrine\ORM\PersistentCollection {#3780 …}
    -muscles: Doctrine\ORM\PersistentCollection {#3805 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#3700 …}
    -categories: Doctrine\ORM\PersistentCollection {#3707 …}
    -materials: Doctrine\ORM\PersistentCollection {#4033 …}
    -status: null
    -statusInternal: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4031 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4035 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4037 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4046 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4058 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4074 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4150 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4234 …}
    -side: false
    #createdAt: DateTimeImmutable @1755370468 {#3800
      date: 2025-08-16 20:54:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769263909 {#3714
      date: 2026-01-24 15:11:49.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4256 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 86
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "pelvic tilt"
    -metaphoneName: "PLFKTLT"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7503 …}
}
ui:badge App\Twig\Components\Ui\Badge 64.5 MiB 0.24 ms
Input props
[
  "name" => "Abdominaux"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#7640
  +name: "Abdominaux"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 64.5 MiB 0.24 ms
Input props
[
  "difficulty" => "beginner"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#7656
  +difficulty: "beginner"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.04 ms
Input props
[
  "name" => "favorites"
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#7599
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 66.5 MiB 7.72 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4258
    #id: 1587
    #token: "68a3748ed7df1"
    -images: Doctrine\ORM\PersistentCollection {#4259 …}
    -videos: Doctrine\ORM\PersistentCollection {#4261 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4263 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4265 …}
    -categories: Doctrine\ORM\PersistentCollection {#4267 …}
    -materials: Doctrine\ORM\PersistentCollection {#4269 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4271 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4273 …}
    -mainExercise: App\Entity\Training\Exercise {#4282 …}
    -variants: Doctrine\ORM\PersistentCollection {#4283 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4286 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4287 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4289 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4291 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4293 …}
    -side: true
    #createdAt: DateTimeImmutable @1755542671 {#4254
      date: 2025-08-18 20:44:31.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769208972 {#4257
      date: 2026-01-23 23:56:12.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4295 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 58
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "dynamic flexor hip stretch"
    -metaphoneName: "TNMKFLKSRHPSTRX"
  }
  "shortName" => false
  "id" => "exercise-card-68a3748ed7df1"
]
Attributes
[
  "id" => "exercise-card-68a3748ed7df1"
]
Component
App\Twig\Components\Card\ExerciseCardH {#7483
  +exercise: App\Entity\Training\Exercise {#4258
    #id: 1587
    #token: "68a3748ed7df1"
    -images: Doctrine\ORM\PersistentCollection {#4259 …}
    -videos: Doctrine\ORM\PersistentCollection {#4261 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4263 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4265 …}
    -categories: Doctrine\ORM\PersistentCollection {#4267 …}
    -materials: Doctrine\ORM\PersistentCollection {#4269 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4271 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4273 …}
    -mainExercise: App\Entity\Training\Exercise {#4282 …}
    -variants: Doctrine\ORM\PersistentCollection {#4283 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4286 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4287 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4289 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4291 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4293 …}
    -side: true
    #createdAt: DateTimeImmutable @1755542671 {#4254
      date: 2025-08-18 20:44:31.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769208972 {#4257
      date: 2026-01-23 23:56:12.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4295 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 58
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "dynamic flexor hip stretch"
    -metaphoneName: "TNMKFLKSRHPSTRX"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 64.5 MiB 2.42 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4258
    #id: 1587
    #token: "68a3748ed7df1"
    -images: Doctrine\ORM\PersistentCollection {#4259 …}
    -videos: Doctrine\ORM\PersistentCollection {#4261 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4263 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4265 …}
    -categories: Doctrine\ORM\PersistentCollection {#4267 …}
    -materials: Doctrine\ORM\PersistentCollection {#4269 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4271 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4273 …}
    -mainExercise: App\Entity\Training\Exercise {#4282 …}
    -variants: Doctrine\ORM\PersistentCollection {#4283 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4286 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4287 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4289 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4291 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4293 …}
    -side: true
    #createdAt: DateTimeImmutable @1755542671 {#4254
      date: 2025-08-18 20:44:31.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769208972 {#4257
      date: 2026-01-23 23:56:12.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4295 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 58
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "dynamic flexor hip stretch"
    -metaphoneName: "TNMKFLKSRHPSTRX"
  }
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
  "alt" => "Image Étirement dynamique des fléchisseurs de hanche"
  "smWidth" => 320
  "smHeight" => 180
  "lgWidth" => 250
  "lgHeight" => 140
  "pictureClass" => "md:max-w-min"
]
Attributes
[
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
]
Component
App\Twig\Components\Training\Exercise\ExerciseImage {#7771
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Étirement dynamique des fléchisseurs de hanche"
  +pictureClass: "md:max-w-min"
  +smWidth: 320
  +smHeight: 180
  +lgWidth: 250
  +lgHeight: 140
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: null
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#510 …}
  +exercise: App\Entity\Training\Exercise {#4258
    #id: 1587
    #token: "68a3748ed7df1"
    -images: Doctrine\ORM\PersistentCollection {#4259 …}
    -videos: Doctrine\ORM\PersistentCollection {#4261 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4263 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4265 …}
    -categories: Doctrine\ORM\PersistentCollection {#4267 …}
    -materials: Doctrine\ORM\PersistentCollection {#4269 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4271 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4273 …}
    -mainExercise: App\Entity\Training\Exercise {#4282 …}
    -variants: Doctrine\ORM\PersistentCollection {#4283 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4286 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4287 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4289 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4291 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4293 …}
    -side: true
    #createdAt: DateTimeImmutable @1755542671 {#4254
      date: 2025-08-18 20:44:31.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769208972 {#4257
      date: 2026-01-23 23:56:12.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4295 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 58
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "dynamic flexor hip stretch"
    -metaphoneName: "TNMKFLKSRHPSTRX"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7503 …}
}
ui:badge App\Twig\Components\Ui\Badge 66.5 MiB 0.06 ms
Input props
[
  "name" => "Quadriceps"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#7912
  +name: "Quadriceps"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 66.5 MiB 0.05 ms
Input props
[
  "name" => "Fessiers"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#7948
  +name: "Fessiers"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 66.5 MiB 0.05 ms
Input props
[
  "difficulty" => "beginner"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#7930
  +difficulty: "beginner"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 66.5 MiB 0.04 ms
Input props
[
  "name" => "favorites"
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#7796
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 66.5 MiB 6.46 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4299
    #id: 1590
    #token: "68a3748f08c7f"
    -images: Doctrine\ORM\PersistentCollection {#4300 …}
    -videos: Doctrine\ORM\PersistentCollection {#4302 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4304 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4306 …}
    -categories: Doctrine\ORM\PersistentCollection {#4308 …}
    -materials: Doctrine\ORM\PersistentCollection {#4310 …}
    -status: null
    -statusInternal: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4312 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4314 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4316 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4286 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4318 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4320 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4322 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4324 …}
    -side: true
    #createdAt: DateTimeImmutable @1755542671 {#4297
      date: 2025-08-18 20:44:31.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1768992025 {#4298
      date: 2026-01-21 11:40:25.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4326 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 56
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "glute seated stretch"
    -metaphoneName: "KLTSTTSTRX"
  }
  "shortName" => false
  "id" => "exercise-card-68a3748f08c7f"
]
Attributes
[
  "id" => "exercise-card-68a3748f08c7f"
]
Component
App\Twig\Components\Card\ExerciseCardH {#7994
  +exercise: App\Entity\Training\Exercise {#4299
    #id: 1590
    #token: "68a3748f08c7f"
    -images: Doctrine\ORM\PersistentCollection {#4300 …}
    -videos: Doctrine\ORM\PersistentCollection {#4302 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4304 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4306 …}
    -categories: Doctrine\ORM\PersistentCollection {#4308 …}
    -materials: Doctrine\ORM\PersistentCollection {#4310 …}
    -status: null
    -statusInternal: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4312 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4314 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4316 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4286 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4318 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4320 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4322 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4324 …}
    -side: true
    #createdAt: DateTimeImmutable @1755542671 {#4297
      date: 2025-08-18 20:44:31.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1768992025 {#4298
      date: 2026-01-21 11:40:25.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4326 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 56
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "glute seated stretch"
    -metaphoneName: "KLTSTTSTRX"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 66.5 MiB 2.54 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4299
    #id: 1590
    #token: "68a3748f08c7f"
    -images: Doctrine\ORM\PersistentCollection {#4300 …}
    -videos: Doctrine\ORM\PersistentCollection {#4302 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4304 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4306 …}
    -categories: Doctrine\ORM\PersistentCollection {#4308 …}
    -materials: Doctrine\ORM\PersistentCollection {#4310 …}
    -status: null
    -statusInternal: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4312 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4314 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4316 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4286 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4318 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4320 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4322 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4324 …}
    -side: true
    #createdAt: DateTimeImmutable @1755542671 {#4297
      date: 2025-08-18 20:44:31.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1768992025 {#4298
      date: 2026-01-21 11:40:25.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4326 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 56
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "glute seated stretch"
    -metaphoneName: "KLTSTTSTRX"
  }
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
  "alt" => "Image Etirement des fessiers assis"
  "smWidth" => 320
  "smHeight" => 180
  "lgWidth" => 250
  "lgHeight" => 140
  "pictureClass" => "md:max-w-min"
]
Attributes
[
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
]
Component
App\Twig\Components\Training\Exercise\ExerciseImage {#8033
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Etirement des fessiers assis"
  +pictureClass: "md:max-w-min"
  +smWidth: 320
  +smHeight: 180
  +lgWidth: 250
  +lgHeight: 140
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: null
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#510 …}
  +exercise: App\Entity\Training\Exercise {#4299
    #id: 1590
    #token: "68a3748f08c7f"
    -images: Doctrine\ORM\PersistentCollection {#4300 …}
    -videos: Doctrine\ORM\PersistentCollection {#4302 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4304 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4306 …}
    -categories: Doctrine\ORM\PersistentCollection {#4308 …}
    -materials: Doctrine\ORM\PersistentCollection {#4310 …}
    -status: null
    -statusInternal: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4312 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4314 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4316 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4286 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4318 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4320 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4322 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4324 …}
    -side: true
    #createdAt: DateTimeImmutable @1755542671 {#4297
      date: 2025-08-18 20:44:31.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1768992025 {#4298
      date: 2026-01-21 11:40:25.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4326 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 56
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "glute seated stretch"
    -metaphoneName: "KLTSTTSTRX"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7503 …}
}
ui:badge App\Twig\Components\Ui\Badge 66.5 MiB 0.05 ms
Input props
[
  "name" => "Fessiers"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#8142
  +name: "Fessiers"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 66.5 MiB 0.04 ms
Input props
[
  "difficulty" => "beginner"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#8121
  +difficulty: "beginner"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 66.5 MiB 0.04 ms
Input props
[
  "name" => "favorites"
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#8058
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 66.5 MiB 7.11 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4331
    #id: 1605
    #token: "68a72ebfcf3e7"
    -images: Doctrine\ORM\PersistentCollection {#4332 …}
    -videos: Doctrine\ORM\PersistentCollection {#4334 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4336 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4338 …}
    -categories: Doctrine\ORM\PersistentCollection {#4340 …}
    -materials: Doctrine\ORM\PersistentCollection {#4342 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4344 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4346 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4348 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4351 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4352 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4354 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4356 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4358 …}
    -side: true
    #createdAt: DateTimeImmutable @1755786943 {#4328
      date: 2025-08-21 16:35:43.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1777742948 {#4329
      date: 2026-05-02 19:29:08.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#4361 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4362 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1755805538 {#4330
      date: 2025-08-21 21:45:38.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 61
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "flexion stretch wrist"
    -metaphoneName: "FLKSNSTRXRST"
  }
  "shortName" => false
  "id" => "exercise-card-68a72ebfcf3e7"
]
Attributes
[
  "id" => "exercise-card-68a72ebfcf3e7"
]
Component
App\Twig\Components\Card\ExerciseCardH {#8188
  +exercise: App\Entity\Training\Exercise {#4331
    #id: 1605
    #token: "68a72ebfcf3e7"
    -images: Doctrine\ORM\PersistentCollection {#4332 …}
    -videos: Doctrine\ORM\PersistentCollection {#4334 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4336 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4338 …}
    -categories: Doctrine\ORM\PersistentCollection {#4340 …}
    -materials: Doctrine\ORM\PersistentCollection {#4342 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4344 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4346 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4348 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4351 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4352 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4354 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4356 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4358 …}
    -side: true
    #createdAt: DateTimeImmutable @1755786943 {#4328
      date: 2025-08-21 16:35:43.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1777742948 {#4329
      date: 2026-05-02 19:29:08.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#4361 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4362 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1755805538 {#4330
      date: 2025-08-21 21:45:38.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 61
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "flexion stretch wrist"
    -metaphoneName: "FLKSNSTRXRST"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 66.5 MiB 2.57 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4331
    #id: 1605
    #token: "68a72ebfcf3e7"
    -images: Doctrine\ORM\PersistentCollection {#4332 …}
    -videos: Doctrine\ORM\PersistentCollection {#4334 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4336 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4338 …}
    -categories: Doctrine\ORM\PersistentCollection {#4340 …}
    -materials: Doctrine\ORM\PersistentCollection {#4342 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4344 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4346 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4348 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4351 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4352 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4354 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4356 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4358 …}
    -side: true
    #createdAt: DateTimeImmutable @1755786943 {#4328
      date: 2025-08-21 16:35:43.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1777742948 {#4329
      date: 2026-05-02 19:29:08.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#4361 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4362 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1755805538 {#4330
      date: 2025-08-21 21:45:38.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 61
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "flexion stretch wrist"
    -metaphoneName: "FLKSNSTRXRST"
  }
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
  "alt" => "Image Étirement de flexion du poignet"
  "smWidth" => 320
  "smHeight" => 180
  "lgWidth" => 250
  "lgHeight" => 140
  "pictureClass" => "md:max-w-min"
]
Attributes
[
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
]
Component
App\Twig\Components\Training\Exercise\ExerciseImage {#8227
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Étirement de flexion du poignet"
  +pictureClass: "md:max-w-min"
  +smWidth: 320
  +smHeight: 180
  +lgWidth: 250
  +lgHeight: 140
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: null
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#510 …}
  +exercise: App\Entity\Training\Exercise {#4331
    #id: 1605
    #token: "68a72ebfcf3e7"
    -images: Doctrine\ORM\PersistentCollection {#4332 …}
    -videos: Doctrine\ORM\PersistentCollection {#4334 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4336 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4338 …}
    -categories: Doctrine\ORM\PersistentCollection {#4340 …}
    -materials: Doctrine\ORM\PersistentCollection {#4342 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4344 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4346 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4348 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4351 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4352 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4354 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4356 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4358 …}
    -side: true
    #createdAt: DateTimeImmutable @1755786943 {#4328
      date: 2025-08-21 16:35:43.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1777742948 {#4329
      date: 2026-05-02 19:29:08.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#4361 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4362 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1755805538 {#4330
      date: 2025-08-21 21:45:38.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 61
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "flexion stretch wrist"
    -metaphoneName: "FLKSNSTRXRST"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7503 …}
}
ui:badge App\Twig\Components\Ui\Badge 66.5 MiB 0.05 ms
Input props
[
  "name" => "Avant-bras"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#8359
  +name: "Avant-bras"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 66.5 MiB 0.04 ms
Input props
[
  "difficulty" => "beginner"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#8341
  +difficulty: "beginner"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 66.5 MiB 0.04 ms
Input props
[
  "name" => "favorites"
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#8252
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
ad:horizontal:fluid App\Twig\Components\Ad\AdHorizontalFluid 66.5 MiB 0.44 ms
Input props
[
  "class" => "ad-listing max-w-[343.33px] md:max-w-none"
]
Attributes
[
  "class" => "ad-listing max-w-[343.33px] md:max-w-none"
]
Component
App\Twig\Components\Ad\AdHorizontalFluid {#8412
  +includeScript: true
  +labelClass: null
  +containerClass: ""
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#1173 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#730 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#219 …}
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 66.5 MiB 7.05 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4366
    #id: 1638
    #token: "68b35cd73f9f8"
    -images: Doctrine\ORM\PersistentCollection {#4367 …}
    -videos: Doctrine\ORM\PersistentCollection {#4369 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4371 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4373 …}
    -categories: Doctrine\ORM\PersistentCollection {#4375 …}
    -materials: Doctrine\ORM\PersistentCollection {#4377 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4379 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4381 …}
    -mainExercise: App\Entity\Training\Exercise {#4384 …}
    -variants: Doctrine\ORM\PersistentCollection {#4385 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4388 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4389 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4391 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4393 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4395 …}
    -side: true
    #createdAt: DateTimeImmutable @1756585175 {#4364
      date: 2025-08-30 22:19:35.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769197952 {#4365
      date: 2026-01-23 20:52:32.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4397 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 57
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "calf standing stretch"
    -metaphoneName: "KLFSTNTNKSTRX"
  }
  "shortName" => false
  "id" => "exercise-card-68b35cd73f9f8"
]
Attributes
[
  "id" => "exercise-card-68b35cd73f9f8"
]
Component
App\Twig\Components\Card\ExerciseCardH {#8405
  +exercise: App\Entity\Training\Exercise {#4366
    #id: 1638
    #token: "68b35cd73f9f8"
    -images: Doctrine\ORM\PersistentCollection {#4367 …}
    -videos: Doctrine\ORM\PersistentCollection {#4369 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4371 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4373 …}
    -categories: Doctrine\ORM\PersistentCollection {#4375 …}
    -materials: Doctrine\ORM\PersistentCollection {#4377 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4379 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4381 …}
    -mainExercise: App\Entity\Training\Exercise {#4384 …}
    -variants: Doctrine\ORM\PersistentCollection {#4385 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4388 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4389 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4391 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4393 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4395 …}
    -side: true
    #createdAt: DateTimeImmutable @1756585175 {#4364
      date: 2025-08-30 22:19:35.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769197952 {#4365
      date: 2026-01-23 20:52:32.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4397 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 57
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "calf standing stretch"
    -metaphoneName: "KLFSTNTNKSTRX"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 66.5 MiB 2.53 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4366
    #id: 1638
    #token: "68b35cd73f9f8"
    -images: Doctrine\ORM\PersistentCollection {#4367 …}
    -videos: Doctrine\ORM\PersistentCollection {#4369 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4371 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4373 …}
    -categories: Doctrine\ORM\PersistentCollection {#4375 …}
    -materials: Doctrine\ORM\PersistentCollection {#4377 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4379 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4381 …}
    -mainExercise: App\Entity\Training\Exercise {#4384 …}
    -variants: Doctrine\ORM\PersistentCollection {#4385 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4388 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4389 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4391 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4393 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4395 …}
    -side: true
    #createdAt: DateTimeImmutable @1756585175 {#4364
      date: 2025-08-30 22:19:35.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769197952 {#4365
      date: 2026-01-23 20:52:32.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4397 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 57
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "calf standing stretch"
    -metaphoneName: "KLFSTNTNKSTRX"
  }
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
  "alt" => "Image Étirement du mollet debout"
  "smWidth" => 320
  "smHeight" => 180
  "lgWidth" => 250
  "lgHeight" => 140
  "pictureClass" => "md:max-w-min"
]
Attributes
[
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
]
Component
App\Twig\Components\Training\Exercise\ExerciseImage {#8479
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Étirement du mollet debout"
  +pictureClass: "md:max-w-min"
  +smWidth: 320
  +smHeight: 180
  +lgWidth: 250
  +lgHeight: 140
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: null
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#510 …}
  +exercise: App\Entity\Training\Exercise {#4366
    #id: 1638
    #token: "68b35cd73f9f8"
    -images: Doctrine\ORM\PersistentCollection {#4367 …}
    -videos: Doctrine\ORM\PersistentCollection {#4369 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4371 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4373 …}
    -categories: Doctrine\ORM\PersistentCollection {#4375 …}
    -materials: Doctrine\ORM\PersistentCollection {#4377 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4379 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4381 …}
    -mainExercise: App\Entity\Training\Exercise {#4384 …}
    -variants: Doctrine\ORM\PersistentCollection {#4385 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4388 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4389 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4391 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4393 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4395 …}
    -side: true
    #createdAt: DateTimeImmutable @1756585175 {#4364
      date: 2025-08-30 22:19:35.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769197952 {#4365
      date: 2026-01-23 20:52:32.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4397 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 57
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "calf standing stretch"
    -metaphoneName: "KLFSTNTNKSTRX"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7503 …}
}
ui:badge App\Twig\Components\Ui\Badge 66.5 MiB 0.05 ms
Input props
[
  "name" => "Mollets"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#8610
  +name: "Mollets"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 66.5 MiB 0.04 ms
Input props
[
  "difficulty" => "beginner"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#8592
  +difficulty: "beginner"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 66.5 MiB 0.04 ms
Input props
[
  "name" => "favorites"
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#8504
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 68.5 MiB 6.85 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4402
    #id: 1651
    #token: "68bf02aa97675"
    -images: Doctrine\ORM\PersistentCollection {#4403 …}
    -videos: Doctrine\ORM\PersistentCollection {#4405 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4407 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4409 …}
    -categories: Doctrine\ORM\PersistentCollection {#4411 …}
    -materials: Doctrine\ORM\PersistentCollection {#4413 …}
    -status: null
    -statusInternal: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4415 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4417 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4419 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4422 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4423 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4425 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4427 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4429 …}
    -side: false
    #createdAt: DateTimeImmutable @1757348522 {#4399
      date: 2025-09-08 18:22:02.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1774249906 {#4400
      date: 2026-03-23 08:11:46.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4431 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1757348710 {#4401
      date: 2025-09-08 18:25:10.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 98
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "chin tuck"
    -metaphoneName: "XNTK"
  }
  "shortName" => false
  "id" => "exercise-card-68bf02aa97675"
]
Attributes
[
  "id" => "exercise-card-68bf02aa97675"
]
Component
App\Twig\Components\Card\ExerciseCardH {#8656
  +exercise: App\Entity\Training\Exercise {#4402
    #id: 1651
    #token: "68bf02aa97675"
    -images: Doctrine\ORM\PersistentCollection {#4403 …}
    -videos: Doctrine\ORM\PersistentCollection {#4405 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4407 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4409 …}
    -categories: Doctrine\ORM\PersistentCollection {#4411 …}
    -materials: Doctrine\ORM\PersistentCollection {#4413 …}
    -status: null
    -statusInternal: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4415 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4417 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4419 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4422 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4423 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4425 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4427 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4429 …}
    -side: false
    #createdAt: DateTimeImmutable @1757348522 {#4399
      date: 2025-09-08 18:22:02.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1774249906 {#4400
      date: 2026-03-23 08:11:46.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4431 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1757348710 {#4401
      date: 2025-09-08 18:25:10.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 98
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "chin tuck"
    -metaphoneName: "XNTK"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 68.5 MiB 2.50 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4402
    #id: 1651
    #token: "68bf02aa97675"
    -images: Doctrine\ORM\PersistentCollection {#4403 …}
    -videos: Doctrine\ORM\PersistentCollection {#4405 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4407 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4409 …}
    -categories: Doctrine\ORM\PersistentCollection {#4411 …}
    -materials: Doctrine\ORM\PersistentCollection {#4413 …}
    -status: null
    -statusInternal: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4415 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4417 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4419 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4422 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4423 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4425 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4427 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4429 …}
    -side: false
    #createdAt: DateTimeImmutable @1757348522 {#4399
      date: 2025-09-08 18:22:02.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1774249906 {#4400
      date: 2026-03-23 08:11:46.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4431 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1757348710 {#4401
      date: 2025-09-08 18:25:10.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 98
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "chin tuck"
    -metaphoneName: "XNTK"
  }
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
  "alt" => "Image Rentrée du menton"
  "smWidth" => 320
  "smHeight" => 180
  "lgWidth" => 250
  "lgHeight" => 140
  "pictureClass" => "md:max-w-min"
]
Attributes
[
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
]
Component
App\Twig\Components\Training\Exercise\ExerciseImage {#8695
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Rentrée du menton"
  +pictureClass: "md:max-w-min"
  +smWidth: 320
  +smHeight: 180
  +lgWidth: 250
  +lgHeight: 140
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: null
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#510 …}
  +exercise: App\Entity\Training\Exercise {#4402
    #id: 1651
    #token: "68bf02aa97675"
    -images: Doctrine\ORM\PersistentCollection {#4403 …}
    -videos: Doctrine\ORM\PersistentCollection {#4405 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4407 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4409 …}
    -categories: Doctrine\ORM\PersistentCollection {#4411 …}
    -materials: Doctrine\ORM\PersistentCollection {#4413 …}
    -status: null
    -statusInternal: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4415 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4417 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4419 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4422 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4423 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4425 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4427 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4429 …}
    -side: false
    #createdAt: DateTimeImmutable @1757348522 {#4399
      date: 2025-09-08 18:22:02.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1774249906 {#4400
      date: 2026-03-23 08:11:46.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4431 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1757348710 {#4401
      date: 2025-09-08 18:25:10.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 98
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "chin tuck"
    -metaphoneName: "XNTK"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7503 …}
}
ui:badge App\Twig\Components\Ui\Badge 68.5 MiB 0.05 ms
Input props
[
  "name" => "Cou"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#8827
  +name: "Cou"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 68.5 MiB 0.04 ms
Input props
[
  "difficulty" => "beginner"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#8809
  +difficulty: "beginner"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.04 ms
Input props
[
  "name" => "favorites"
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#8720
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 68.5 MiB 3.82 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4436
    #id: 1656
    #token: "68d029866ae99"
    -images: Doctrine\ORM\PersistentCollection {#4437 …}
    -videos: Doctrine\ORM\PersistentCollection {#4439 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4441 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4443 …}
    -categories: Doctrine\ORM\PersistentCollection {#4445 …}
    -materials: Doctrine\ORM\PersistentCollection {#4447 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4449 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4451 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4453 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4456 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4457 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4459 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4461 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4463 …}
    -side: true
    #createdAt: DateTimeImmutable @1758472582 {#4433
      date: 2025-09-21 18:36:22.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1773738973 {#4434
      date: 2026-03-17 10:16:13.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4465 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1759068939 {#4435
      date: 2025-09-28 16:15:39.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 53
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "arm circles single"
    -metaphoneName: "ARMSRKLSSNKL"
  }
  "shortName" => false
  "id" => "exercise-card-68d029866ae99"
]
Attributes
[
  "id" => "exercise-card-68d029866ae99"
]
Component
App\Twig\Components\Card\ExerciseCardH {#8873
  +exercise: App\Entity\Training\Exercise {#4436
    #id: 1656
    #token: "68d029866ae99"
    -images: Doctrine\ORM\PersistentCollection {#4437 …}
    -videos: Doctrine\ORM\PersistentCollection {#4439 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4441 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4443 …}
    -categories: Doctrine\ORM\PersistentCollection {#4445 …}
    -materials: Doctrine\ORM\PersistentCollection {#4447 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4449 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4451 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4453 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4456 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4457 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4459 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4461 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4463 …}
    -side: true
    #createdAt: DateTimeImmutable @1758472582 {#4433
      date: 2025-09-21 18:36:22.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1773738973 {#4434
      date: 2026-03-17 10:16:13.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4465 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1759068939 {#4435
      date: 2025-09-28 16:15:39.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 53
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "arm circles single"
    -metaphoneName: "ARMSRKLSSNKL"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 68.5 MiB 0.16 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4436
    #id: 1656
    #token: "68d029866ae99"
    -images: Doctrine\ORM\PersistentCollection {#4437 …}
    -videos: Doctrine\ORM\PersistentCollection {#4439 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4441 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4443 …}
    -categories: Doctrine\ORM\PersistentCollection {#4445 …}
    -materials: Doctrine\ORM\PersistentCollection {#4447 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4449 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4451 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4453 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4456 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4457 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4459 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4461 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4463 …}
    -side: true
    #createdAt: DateTimeImmutable @1758472582 {#4433
      date: 2025-09-21 18:36:22.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1773738973 {#4434
      date: 2026-03-17 10:16:13.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4465 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1759068939 {#4435
      date: 2025-09-28 16:15:39.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 53
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "arm circles single"
    -metaphoneName: "ARMSRKLSSNKL"
  }
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
  "alt" => "Image Cercles de bras à un bras"
  "smWidth" => 320
  "smHeight" => 180
  "lgWidth" => 250
  "lgHeight" => 140
  "pictureClass" => "md:max-w-min"
]
Attributes
[
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
]
Component
App\Twig\Components\Training\Exercise\ExerciseImage {#8957
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Cercles de bras à un bras"
  +pictureClass: "md:max-w-min"
  +smWidth: 320
  +smHeight: 180
  +lgWidth: 250
  +lgHeight: 140
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: null
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#510 …}
  +exercise: App\Entity\Training\Exercise {#4436
    #id: 1656
    #token: "68d029866ae99"
    -images: Doctrine\ORM\PersistentCollection {#4437 …}
    -videos: Doctrine\ORM\PersistentCollection {#4439 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4441 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4443 …}
    -categories: Doctrine\ORM\PersistentCollection {#4445 …}
    -materials: Doctrine\ORM\PersistentCollection {#4447 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4449 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4451 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4453 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4456 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4457 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4459 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4461 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4463 …}
    -side: true
    #createdAt: DateTimeImmutable @1758472582 {#4433
      date: 2025-09-21 18:36:22.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1773738973 {#4434
      date: 2026-03-17 10:16:13.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4465 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: DateTimeImmutable @1759068939 {#4435
      date: 2025-09-28 16:15:39.0 Europe/Zurich (+02:00)
    }
    -publishedBy: null
    -notes: null
    -viewCounter: 53
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "arm circles single"
    -metaphoneName: "ARMSRKLSSNKL"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7503 …}
}
ui:badge App\Twig\Components\Ui\Badge 68.5 MiB 0.05 ms
Input props
[
  "name" => "Épaules"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#9018
  +name: "Épaules"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 68.5 MiB 0.05 ms
Input props
[
  "difficulty" => "beginner"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#9000
  +difficulty: "beginner"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.04 ms
Input props
[
  "name" => "favorites"
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#8951
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 68.5 MiB 7.20 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4469
    #id: 1660
    #token: "68d84409d2a46"
    -images: Doctrine\ORM\PersistentCollection {#4470 …}
    -videos: Doctrine\ORM\PersistentCollection {#4472 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4474 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4476 …}
    -categories: Doctrine\ORM\PersistentCollection {#4478 …}
    -materials: Doctrine\ORM\PersistentCollection {#4480 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4482 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4484 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4486 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4489 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4490 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4492 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4494 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4496 …}
    -side: true
    #createdAt: DateTimeImmutable @1759003657 {#4467
      date: 2025-09-27 22:07:37.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1772517485 {#4468
      date: 2026-03-03 06:58:05.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4498 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 55
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "spinal stretch twist"
    -metaphoneName: "SPNLSTRXTWST"
  }
  "shortName" => false
  "id" => "exercise-card-68d84409d2a46"
]
Attributes
[
  "id" => "exercise-card-68d84409d2a46"
]
Component
App\Twig\Components\Card\ExerciseCardH {#9064
  +exercise: App\Entity\Training\Exercise {#4469
    #id: 1660
    #token: "68d84409d2a46"
    -images: Doctrine\ORM\PersistentCollection {#4470 …}
    -videos: Doctrine\ORM\PersistentCollection {#4472 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4474 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4476 …}
    -categories: Doctrine\ORM\PersistentCollection {#4478 …}
    -materials: Doctrine\ORM\PersistentCollection {#4480 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4482 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4484 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4486 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4489 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4490 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4492 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4494 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4496 …}
    -side: true
    #createdAt: DateTimeImmutable @1759003657 {#4467
      date: 2025-09-27 22:07:37.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1772517485 {#4468
      date: 2026-03-03 06:58:05.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4498 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 55
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "spinal stretch twist"
    -metaphoneName: "SPNLSTRXTWST"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 68.5 MiB 2.56 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4469
    #id: 1660
    #token: "68d84409d2a46"
    -images: Doctrine\ORM\PersistentCollection {#4470 …}
    -videos: Doctrine\ORM\PersistentCollection {#4472 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4474 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4476 …}
    -categories: Doctrine\ORM\PersistentCollection {#4478 …}
    -materials: Doctrine\ORM\PersistentCollection {#4480 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4482 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4484 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4486 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4489 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4490 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4492 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4494 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4496 …}
    -side: true
    #createdAt: DateTimeImmutable @1759003657 {#4467
      date: 2025-09-27 22:07:37.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1772517485 {#4468
      date: 2026-03-03 06:58:05.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4498 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 55
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "spinal stretch twist"
    -metaphoneName: "SPNLSTRXTWST"
  }
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
  "alt" => "Image Étirement en torsion de la colonne vertébrale"
  "smWidth" => 320
  "smHeight" => 180
  "lgWidth" => 250
  "lgHeight" => 140
  "pictureClass" => "md:max-w-min"
]
Attributes
[
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
]
Component
App\Twig\Components\Training\Exercise\ExerciseImage {#9103
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Étirement en torsion de la colonne vertébrale"
  +pictureClass: "md:max-w-min"
  +smWidth: 320
  +smHeight: 180
  +lgWidth: 250
  +lgHeight: 140
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: null
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#510 …}
  +exercise: App\Entity\Training\Exercise {#4469
    #id: 1660
    #token: "68d84409d2a46"
    -images: Doctrine\ORM\PersistentCollection {#4470 …}
    -videos: Doctrine\ORM\PersistentCollection {#4472 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4474 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4476 …}
    -categories: Doctrine\ORM\PersistentCollection {#4478 …}
    -materials: Doctrine\ORM\PersistentCollection {#4480 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4482 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4484 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4486 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4489 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4490 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4492 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4494 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4496 …}
    -side: true
    #createdAt: DateTimeImmutable @1759003657 {#4467
      date: 2025-09-27 22:07:37.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1772517485 {#4468
      date: 2026-03-03 06:58:05.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4498 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 55
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "spinal stretch twist"
    -metaphoneName: "SPNLSTRXTWST"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7503 …}
}
ui:badge App\Twig\Components\Ui\Badge 68.5 MiB 0.05 ms
Input props
[
  "name" => "Abdominaux"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#9222
  +name: "Abdominaux"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 68.5 MiB 0.05 ms
Input props
[
  "name" => "Dos"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#9258
  +name: "Dos"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 68.5 MiB 0.04 ms
Input props
[
  "difficulty" => "beginner"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#9240
  +difficulty: "beginner"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.04 ms
Input props
[
  "name" => "favorites"
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#9128
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
ad:horizontal:fluid App\Twig\Components\Ad\AdHorizontalFluid 68.5 MiB 0.04 ms
Input props
[
  "class" => "ad-listing max-w-[343.33px] md:max-w-none"
]
Attributes
[
  "class" => "ad-listing max-w-[343.33px] md:max-w-none"
]
Component
App\Twig\Components\Ad\AdHorizontalFluid {#9310
  +includeScript: true
  +labelClass: null
  +containerClass: ""
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#1173 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#730 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#219 …}
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 68.5 MiB 7.24 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4502
    #id: 1666
    #token: "68e2a467a6185"
    -images: Doctrine\ORM\PersistentCollection {#4503 …}
    -videos: Doctrine\ORM\PersistentCollection {#4505 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4507 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4509 …}
    -categories: Doctrine\ORM\PersistentCollection {#4511 …}
    -materials: Doctrine\ORM\PersistentCollection {#4513 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4515 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4517 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4519 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4522 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4523 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4525 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4527 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4529 …}
    -side: false
    #createdAt: DateTimeImmutable @1759683688 {#4500
      date: 2025-10-05 19:01:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1772607260 {#4501
      date: 2026-03-04 07:54:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4361 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4531 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 70
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "extension seated thoracic"
    -metaphoneName: "EKSTNXNSTT0RSK"
  }
  "shortName" => false
  "id" => "exercise-card-68e2a467a6185"
]
Attributes
[
  "id" => "exercise-card-68e2a467a6185"
]
Component
App\Twig\Components\Card\ExerciseCardH {#9304
  +exercise: App\Entity\Training\Exercise {#4502
    #id: 1666
    #token: "68e2a467a6185"
    -images: Doctrine\ORM\PersistentCollection {#4503 …}
    -videos: Doctrine\ORM\PersistentCollection {#4505 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4507 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4509 …}
    -categories: Doctrine\ORM\PersistentCollection {#4511 …}
    -materials: Doctrine\ORM\PersistentCollection {#4513 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4515 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4517 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4519 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4522 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4523 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4525 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4527 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4529 …}
    -side: false
    #createdAt: DateTimeImmutable @1759683688 {#4500
      date: 2025-10-05 19:01:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1772607260 {#4501
      date: 2026-03-04 07:54:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4361 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4531 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 70
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "extension seated thoracic"
    -metaphoneName: "EKSTNXNSTT0RSK"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 68.5 MiB 2.57 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4502
    #id: 1666
    #token: "68e2a467a6185"
    -images: Doctrine\ORM\PersistentCollection {#4503 …}
    -videos: Doctrine\ORM\PersistentCollection {#4505 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4507 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4509 …}
    -categories: Doctrine\ORM\PersistentCollection {#4511 …}
    -materials: Doctrine\ORM\PersistentCollection {#4513 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4515 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4517 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4519 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4522 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4523 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4525 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4527 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4529 …}
    -side: false
    #createdAt: DateTimeImmutable @1759683688 {#4500
      date: 2025-10-05 19:01:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1772607260 {#4501
      date: 2026-03-04 07:54:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4361 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4531 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 70
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "extension seated thoracic"
    -metaphoneName: "EKSTNXNSTT0RSK"
  }
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
  "alt" => "Image Extension thoracique assise"
  "smWidth" => 320
  "smHeight" => 180
  "lgWidth" => 250
  "lgHeight" => 140
  "pictureClass" => "md:max-w-min"
]
Attributes
[
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
]
Component
App\Twig\Components\Training\Exercise\ExerciseImage {#5609
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Extension thoracique assise"
  +pictureClass: "md:max-w-min"
  +smWidth: 320
  +smHeight: 180
  +lgWidth: 250
  +lgHeight: 140
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: null
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#510 …}
  +exercise: App\Entity\Training\Exercise {#4502
    #id: 1666
    #token: "68e2a467a6185"
    -images: Doctrine\ORM\PersistentCollection {#4503 …}
    -videos: Doctrine\ORM\PersistentCollection {#4505 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4507 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4509 …}
    -categories: Doctrine\ORM\PersistentCollection {#4511 …}
    -materials: Doctrine\ORM\PersistentCollection {#4513 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4515 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4517 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4519 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4522 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4523 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4525 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4527 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4529 …}
    -side: false
    #createdAt: DateTimeImmutable @1759683688 {#4500
      date: 2025-10-05 19:01:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1772607260 {#4501
      date: 2026-03-04 07:54:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4361 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4531 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 70
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "extension seated thoracic"
    -metaphoneName: "EKSTNXNSTT0RSK"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7503 …}
}
ui:badge App\Twig\Components\Ui\Badge 68.5 MiB 0.05 ms
Input props
[
  "name" => "Dos"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#9389
  +name: "Dos"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 68.5 MiB 0.05 ms
Input props
[
  "name" => "Trapèzes"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#9426
  +name: "Trapèzes"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 68.5 MiB 0.05 ms
Input props
[
  "difficulty" => "beginner"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#9408
  +difficulty: "beginner"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.04 ms
Input props
[
  "name" => "favorites"
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#6563
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 68.5 MiB 6.20 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4535
    #id: 1670
    #token: "68e2a467ecd37"
    -images: Doctrine\ORM\PersistentCollection {#4536 …}
    -videos: Doctrine\ORM\PersistentCollection {#4538 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4540 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4542 …}
    -categories: Doctrine\ORM\PersistentCollection {#4544 …}
    -materials: Doctrine\ORM\PersistentCollection {#4546 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4548 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4550 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4552 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4555 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4556 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4558 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4560 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4562 …}
    -side: true
    #createdAt: DateTimeImmutable @1759683688 {#4533
      date: 2025-10-05 19:01:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769242081 {#4534
      date: 2026-01-24 09:08:01.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4361 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4564 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 47
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "bend seated side"
    -metaphoneName: "BNTSTTST"
  }
  "shortName" => false
  "id" => "exercise-card-68e2a467ecd37"
]
Attributes
[
  "id" => "exercise-card-68e2a467ecd37"
]
Component
App\Twig\Components\Card\ExerciseCardH {#9472
  +exercise: App\Entity\Training\Exercise {#4535
    #id: 1670
    #token: "68e2a467ecd37"
    -images: Doctrine\ORM\PersistentCollection {#4536 …}
    -videos: Doctrine\ORM\PersistentCollection {#4538 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4540 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4542 …}
    -categories: Doctrine\ORM\PersistentCollection {#4544 …}
    -materials: Doctrine\ORM\PersistentCollection {#4546 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4548 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4550 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4552 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4555 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4556 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4558 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4560 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4562 …}
    -side: true
    #createdAt: DateTimeImmutable @1759683688 {#4533
      date: 2025-10-05 19:01:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769242081 {#4534
      date: 2026-01-24 09:08:01.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4361 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4564 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 47
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "bend seated side"
    -metaphoneName: "BNTSTTST"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 68.5 MiB 2.51 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4535
    #id: 1670
    #token: "68e2a467ecd37"
    -images: Doctrine\ORM\PersistentCollection {#4536 …}
    -videos: Doctrine\ORM\PersistentCollection {#4538 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4540 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4542 …}
    -categories: Doctrine\ORM\PersistentCollection {#4544 …}
    -materials: Doctrine\ORM\PersistentCollection {#4546 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4548 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4550 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4552 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4555 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4556 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4558 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4560 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4562 …}
    -side: true
    #createdAt: DateTimeImmutable @1759683688 {#4533
      date: 2025-10-05 19:01:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769242081 {#4534
      date: 2026-01-24 09:08:01.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4361 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4564 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 47
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "bend seated side"
    -metaphoneName: "BNTSTTST"
  }
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
  "alt" => "Image Flexion latérale assise"
  "smWidth" => 320
  "smHeight" => 180
  "lgWidth" => 250
  "lgHeight" => 140
  "pictureClass" => "md:max-w-min"
]
Attributes
[
  "class" => "object-cover md:rounded-l-lg rounded-t-lg md:rounded-tr-none w-full h-full min-w-[250px] md:w-1/3 relative before:absolute before:inset-0 before:bg-black before:bg-opacity-20"
]
Component
App\Twig\Components\Training\Exercise\ExerciseImage {#9511
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Flexion latérale assise"
  +pictureClass: "md:max-w-min"
  +smWidth: 320
  +smHeight: 180
  +lgWidth: 250
  +lgHeight: 140
  +defaultSize: 350
  +crop: true
  +fetchPriority: "auto"
  +sizeScalingFactor: 1.5
  +referrerPolicy: "same-origin"
  +media: null
  #mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#510 …}
  +exercise: App\Entity\Training\Exercise {#4535
    #id: 1670
    #token: "68e2a467ecd37"
    -images: Doctrine\ORM\PersistentCollection {#4536 …}
    -videos: Doctrine\ORM\PersistentCollection {#4538 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4540 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4542 …}
    -categories: Doctrine\ORM\PersistentCollection {#4544 …}
    -materials: Doctrine\ORM\PersistentCollection {#4546 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4548 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4550 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4552 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4555 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4556 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4558 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4560 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4562 …}
    -side: true
    #createdAt: DateTimeImmutable @1759683688 {#4533
      date: 2025-10-05 19:01:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769242081 {#4534
      date: 2026-01-24 09:08:01.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4361 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4564 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 47
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "bend seated side"
    -metaphoneName: "BNTSTTST"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7503 …}
}
ui:badge App\Twig\Components\Ui\Badge 68.5 MiB 0.05 ms
Input props
[
  "name" => "Abdominaux"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#9620
  +name: "Abdominaux"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 68.5 MiB 0.04 ms
Input props
[
  "difficulty" => "beginner"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#9599
  +difficulty: "beginner"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "favorites"
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-8 w-8 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#9536
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
app:page-sharer App\Twig\Components\App\PageSharer 70.5 MiB 1.38 ms
Input props
[
  "class" => "mx-auto max-w-3xl p-4"
]
Attributes
[
  "class" => "mx-auto max-w-3xl p-4"
]
Component
App\Twig\Components\App\PageSharer {#763
  +shareUrl: "https://test.fitmetrics.ch/fr/exercices/categorie/75-recuperation-et-relaxation?open-account-panel-popup=1&page=15"
  +title: "Exercices - Récupération et relaxation - FitMetrics"
  +description: "La récupération et la relaxation sont essentielles pour optimiser les performances, prévenir les blessures et favoriser l'équilibre physique et mental. Ces pratiques incluent l’auto-massage, les étirements passifs, la respiration contrôlée, ou encore des techniques comme le foam roller ou les bains froids. Elles améliorent la circulation, réduisent les tensions musculaires et favorisent la restauration neuromusculaire. La récupération active aide à limiter les courbatures, tandis que la relaxation améliore la qualité du sommeil et la gestion du stress. Indispensables après l’effort comme en phase de repos, elles s’intègrent à tous les programmes d'entraînement pour un corps plus résilient, équilibré et performant."
  +quote: null
  +hashtags: [
    "fitmetrics"
  ]
  +alignMobileLeft: false
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#911 …}
  -seoPage: App\BusinessLogic\App\Seo\SeoPage {#219 …}
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.04 ms
Input props
[
  "name" => "check"
  "class" => "w-5 h-5 text-white fill-white"
]
Attributes
[
  "class" => "w-5 h-5 text-white fill-white"
]
Component
App\Twig\Components\Media\Icon {#9708
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.04 ms
Input props
[
  "name" => "reddit"
  "class" => "w-6 h-6 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-6 h-6 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#9736
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "reddit"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "twitter"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#9761
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "twitter"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "threads"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#9784
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "threads"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "facebook"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#9807
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "facebook"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "linkedin"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#9830
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "linkedin"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "whatsapp"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#9853
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "whatsapp"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "email"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#9876
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "email"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
ad:wide-skyscraper App\Twig\Components\Ad\AdWideSkyscraper 70.5 MiB 0.33 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Ad\AdWideSkyscraper {#9712
  +includeScript: true
  +labelClass: null
  +containerClass: ""
  +adClass: null
  +showBgColor: false
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#1173 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#730 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#219 …}
  +right: true
  +left: true
}
ad:horizontal:fluid App\Twig\Components\Ad\AdHorizontalFluid 70.5 MiB 0.05 ms
Input props
[
  "containerClass" => "content-container my-4"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdHorizontalFluid {#9929
  +includeScript: true
  +labelClass: null
  +containerClass: "content-container my-4"
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#1173 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#730 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#219 …}
}
utils:lang-selector
[Anonymous]
70.5 MiB 0.79 ms
Input props
[
  "size" => "large"
]
Attributes
[
  "size" => "large"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#9966
  -props: [
    "size" => "large"
  ]
}
app:lang-selector App\Twig\Components\App\LangSelector 70.5 MiB 0.68 ms
Input props
[
  "defaultOpenLeft" => false
  "size" => "large"
  "showTranslateIcon" => true
]
Attributes
[
  "size" => "large"
]
Component
App\Twig\Components\App\LangSelector {#9988
  +routeName: null
  +params: null
  +withQuery: true
  +defaultOpenLeft: false
  +showTranslateIcon: true
  -seoPage: App\BusinessLogic\App\Seo\SeoPage {#219 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#911 …}
  -router: Symfony\Bundle\FrameworkBundle\Routing\Router {#725 …}
}
ui:dropdown App\Twig\Components\Ui\Dropdown 70.5 MiB 0.55 ms
Input props
[
  "label" => "lang.name.fr"
  "defaultOpenLeft" => false
  "locales" => [
    "fr"
    "en"
    "de"
    "it"
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Dropdown {#10010
  +label: "lang.name.fr"
  +contentClass: null
  +defaultOpen: false
  +defaultOpenLeft: false
  +locales: [
    "fr"
    "en"
    "de"
    "it"
  ]
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "g-translate"
  "class" => "fill-black dark:fill-white w-5 h-5"
]
Attributes
[
  "class" => "fill-black dark:fill-white w-5 h-5"
]
Component
App\Twig\Components\Media\Icon {#10041
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "g-translate"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "chevron-down"
  "class" => "fill-black dark:fill-white w-5 h-5 dropdown-icon"
]
Attributes
[
  "class" => "fill-black dark:fill-white w-5 h-5 dropdown-icon"
]
Component
App\Twig\Components\Media\Icon {#10063
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.04 ms
Input props
[
  "name" => "check"
  "class" => "w-[15px] h-[15px] dark:fill-white"
]
Attributes
[
  "class" => "w-[15px] h-[15px] dark:fill-white"
]
Component
App\Twig\Components\Media\Icon {#10110
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
utils:theme-switcher
[Anonymous]
70.5 MiB 0.48 ms
Input props
[
  "size" => "large"
]
Attributes
[
  "size" => "large"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#9989
  -props: [
    "size" => "large"
  ]
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.04 ms
Input props
[
  "name" => "fitmetrics-biceps"
  "class" => "h-12 sm:h-16 max-w-[116px] mr-3 dark:hidden"
]
Attributes
[
  "class" => "h-12 sm:h-16 max-w-[116px] mr-3 dark:hidden"
]
Component
App\Twig\Components\Media\Icon {#10131
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "h-12 sm:h-16 max-w-[116px] mr-3 hidden dark:block"
]
Attributes
[
  "class" => "h-12 sm:h-16 max-w-[116px] mr-3 hidden dark:block"
]
Component
App\Twig\Components\Media\Icon {#10165
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "heart"
  "class" => "heart h-5 w-5 text-[#eb2a2a]"
]
Attributes
[
  "class" => "heart h-5 w-5 text-[#eb2a2a]"
]
Component
App\Twig\Components\Media\Icon {#10188
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "heart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "whatsapp"
  "class" => "w-[28px] h-[28px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[28px] h-[28px]"
]
Component
App\Twig\Components\Media\Icon {#10211
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "whatsapp"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "instagram"
  "class" => "w-[28px] h-[28px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[28px] h-[28px]"
]
Component
App\Twig\Components\Media\Icon {#10234
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "instagram"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "threads"
  "class" => "w-[28px] h-[28px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[28px] h-[28px]"
]
Component
App\Twig\Components\Media\Icon {#10257
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "threads"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "tiktok"
  "class" => "w-[29px] h-[29px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[29px] h-[29px]"
]
Component
App\Twig\Components\Media\Icon {#10280
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "tiktok"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "facebook"
  "class" => "w-[19px] h-[28px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[19px] h-[28px]"
]
Component
App\Twig\Components\Media\Icon {#10303
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "facebook"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "youtube"
  "class" => "w-[28px] h-[24px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[28px] h-[24px]"
]
Component
App\Twig\Components\Media\Icon {#10326
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5174 …}
  +name: "youtube"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}